Skip to content

Latest commit

 

History

History
53 lines (36 loc) · 1.6 KB

File metadata and controls

53 lines (36 loc) · 1.6 KB

matrix migrate

CLI to migrate one matrix account to a new one. Similar to the EMS migrator but:

  1. is a nice little CLI tool, based on matrix-rust-sdk
  2. allows for restarts (refreshes at the beginning)
  3. it runs the operations async and is thus a lot faster
  4. SSO authentication is supported

Note: It currently only migrates the rooms listing and power_levels, no user settings or profile data.

Install and use

You need a recent [Rust] installation. Then you can either clone the repository and use cargo run or use cargo-install:

cargo install --git https://github.com/acterglobal/matrix-migrate

and then can run it by just doing

matrix-migrate

Usage note

Password authentication requires both the user and password for the user from and to either as command line parameters, or preferably as environment variables (FROM_USER=, FROM_PASSWORD).

If no from and/or to password is provided, it will try to log in with the server's SSO flow. The SSO URL is printed directly to the terminal so it stays visible even with stricter log levels.

It uses matrix discovery but if that doesn't work for you, you can provide custom homeservers, too.

It starts with a reduced sync that fetches room state needed for migration, which avoids downloading timeline data and works better against stricter servers.

Optional timeout (in seconds) can be added; if omitted, the sync timeout defaults to 10 seconds.

Changelog

Unreleased

  • Add support for matching up power_levels, needs latest matrix-rust-sdk-git