From 08cf0580fb6a73b8c36bc65b21fe1b8d4620094b Mon Sep 17 00:00:00 2001 From: Jez Cope Date: Wed, 4 Aug 2021 17:18:32 +0100 Subject: [PATCH] Post: mxadm intro --- content/post/2021-08-04-mxadm.md | 36 ++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 content/post/2021-08-04-mxadm.md diff --git a/content/post/2021-08-04-mxadm.md b/content/post/2021-08-04-mxadm.md new file mode 100644 index 0000000..661b819 --- /dev/null +++ b/content/post/2021-08-04-mxadm.md @@ -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!