https://github.com/nekromoff/kde-migrant
KDE Migrant allows you to migrate your existing KDE/Plasma/apps configuration to a new computer. Good when changing computers or cloning one user configuration for other users.
https://github.com/nekromoff/kde-migrant
backup configuration configuration-files configuration-management customization flatpak kde kde-desktop kde-plasma kde-plasma-6 migration settings snapcraft tool ubuntu
Last synced: about 2 months ago
JSON representation
KDE Migrant allows you to migrate your existing KDE/Plasma/apps configuration to a new computer. Good when changing computers or cloning one user configuration for other users.
- Host: GitHub
- URL: https://github.com/nekromoff/kde-migrant
- Owner: nekromoff
- License: mit
- Created: 2025-02-25T22:09:04.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-07-28T21:31:12.000Z (3 months ago)
- Last Synced: 2025-07-28T23:24:57.445Z (3 months ago)
- Topics: backup, configuration, configuration-files, configuration-management, customization, flatpak, kde, kde-desktop, kde-plasma, kde-plasma-6, migration, settings, snapcraft, tool, ubuntu
- Language: PHP
- Homepage:
- Size: 24.4 KB
- Stars: 53
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# KDE Migrant 🧳
KDE Migrant allows you to migrate your existing KDE configuration to a new computer. Good when changing computers or cloning one user configuration for other users.
A single file browser and command-line script that allows you to backup your full or partial KDE configuration including apps, dotfiles and any customizations. It works for KDE Plasma widgets as well.
It creates a ZIP file that you can transfer to a different computer to unzip it.
## Installation
1. Clone via git or download a ZIP file.
2. Unzip to a root directory on your Apache/NGINX server## 1. CLI: Gather user home directory structure
Run from command line:```php migrant.php scan```
or run `scan` as a different user:
```sudo -u [user] php migrant.php scan```
## 2. Browser: Configure which settings to back up
1. Open `migrant.php` in your browser (e.g.: http://localhost/kde-migrant/migrant.php)
2. Select configuration folders and files to back up (or select whole categories such as KDE, Plasma, Flatpaks, Snaps)
3. Confirm to create backup configurationNote: Files or folders larger than 100 KB will have filesize information on red background shown next to them.
## 3. CLI: Run backup process
Dry run to simulate backup based on existing configuration:
```php migrant.php dryrun```
Run backup based on existing configuration:
```php migrant.php backup```
or run `backup` as a different user:
```sudo -u [user] php migrant.php backup```
**migrant.zip file will be created.**
## 4. Transfer migrant.zip to target computer
And extract it there.
## Screenshots
### CLI: Running scan to gather home directory structure (for correct access permissions):
### Browser: Select folders and files to back up / migrate:

### Browser: Configuration created
### CLI: Usage and help
## FAQ
> Is it possible to add different folders to back up (e.g. not located in user home directory)?Yes, edit `migrant.php` and edit these constants: `FOLDERS_SCAN` and `FILES_SCAN`. Add paths to scan. Note that user has to have read access to them in order to back them up.
> How can I change matching pattern for one-click group such as `KDE` checkbox on top?
Edit `KDE_MATCH` constant and add your pattern separated by `|` pipe character. E.g. add `|user` to include all folders+files containing `user` in their name.
## Please ⭐ star 🌟 this repo, if you like it and use it.