Post: mxadm intro

This commit is contained in:
Jez Cope 2021-08-04 17:18:32 +01:00
parent 4bf3fcfddd
commit 08cf0580fb
1 changed files with 36 additions and 0 deletions

View File

@ -0,0 +1,36 @@
---
title: "mxadm: a small CLI Matrix room admin tool"
slug: introducing-mxadm
date: 2021-08-04T17:11:49+01:00
type: post
tags:
- Rust
- Matrix
- Open source
- Communication
---
I've enjoyed learning [Rust](https://www.rust-lang.org/) (the programming language) recently, but having only really used it for [solving programming puzzles](/blog/day-15) I've been looking for an excuse to use it for something more practical.
At the same time, I've been using and learning about [Matrix](https://matrix.org) (the chat/messaging platform), and running some small rooms there I've been a bit frustrated that some pretty common admin things don't have a good user interface in any of the available clients.
So…
I decided to write a little command-line tool to do a few simple tasks, and it's now released as `mxadm`! It's on [crates.io](https://crates.io), so if you have Rust and [cargo](https://doc.rust-lang.org/cargo/) available, installing it is as simple as running `cargo install mxadm`.
I've only taught it to do a few things so far:
- List your joined rooms
- Add/delete a room alias
- Tombstone a room (i.e. redirect it to a new room)
I'll add more as I need them, and I'm open to suggestions too.
It uses [matrix-rust-sdk, the Matrix Client-Server SDK for Rust](https://github.com/matrix-org/matrix-rust-sdk), which is built on the lower-level [Ruma](https://www.ruma.io/) library, along with [anyhow](https://github.com/dtolnay/anyhow) for error handling. The kind folks in the [#matrix-rust-sdk:matrix.org](https://matrix.to/#/#matrix-rust-sdk:matrix.org) have been particularly kind in helping me get started using it.
More details from:
- [mxadm on lib.rs](https://lib.rs/crates/mxadm)
- [Source code on tildegit](https://tildegit.org/petrichor/mxadm)
Suggestions, code reviews, pull requests all welcome, though it will probably take me a while to act on them. Enjoy!