Skip to content

CLI to migrate your matrix account from one to the other

Notifications You must be signed in to change notification settings

vidister/matrix-migrate

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

matrix migrate fork

This is a fork of acterglobal's matrix-migrate tool.

It implements features such as:

  • --dry-run flag to display what changes would be made
  • Selection/Excluding of rooms using --rooms or --rooms-excluded
  • --leave-rooms for cleanup after migration
    • Removes the old user from the rooms
    • Restores the is_direct flag, so DMs are not displayed as chat rooms
  • Increases sync timeout and allows to override it using --timeout

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

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 https://matrix.org/acterglobal/matrix-migrate

and then can run it by just doing

matrix-migrate

Usage note

It 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). It uses matrix discovery but if that doesn't work for you you can provide custom homeservers, too.

It will start with a full-sync of the room state, so depending on the size of your matrix account(s), this may take a moment.

Changelog

Unreleased

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

About

CLI to migrate your matrix account from one to the other

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 92.9%
  • Nix 7.1%