mirror of
https://github.com/Derisis13/barusu.git
synced 2025-12-06 19:42:48 +01:00
37 lines
1.9 KiB
Markdown
37 lines
1.9 KiB
Markdown
# Barusu - a python tool to back up your apt packages, flatpaks and dconf settings
|
|
|
|
## Usage:
|
|
|
|
barusu [opts]
|
|
Options:
|
|
`-h --help`: show help and exit
|
|
`-d --backup-dir [directory]`: set the directory for the backup/restoration (default is $XDG_DATA_HOME/barusu if $XDG_DATA_HOME is defined, else ~/.local/share/barusu)
|
|
`-r --restore`: run the restoration (from backupdir). You must be root to restore, as you'll install packages. If you are backing up from a directory different from `~/.backup` you need to use the `-d`/`--backup-dir` option BEFORE the `-r`/`--restore`
|
|
`-a --action [afd]`: select actions to perform (default is all). Valid actions: `a` - back up apt packages, `d` - back up dconf settings, `f7 - back up flatpak apps
|
|
## Installation
|
|
|
|
After downloading run in the directory you downloaded barusu to: `python3 setup.py install`
|
|
|
|
## Using with cron/anacron
|
|
|
|
In a terminal run: `crontab -e` (you might need to choose an editor to continue)
|
|
Once you see your crontab in your editor paste the following line at the end:
|
|
```
|
|
0 3 * * * barusu
|
|
```
|
|
This will run barusu every 3:00, but if the computer is off, your daily backup is missed.
|
|
|
|
Alternatively you can set up anacron (usually not installed by default)
|
|
|
|
## How it works:
|
|
|
|
backup:
|
|
1. It uses `dpkg` to get a list of all installed packages.
|
|
2. It dumps all settings using `dconf`
|
|
3. The result is three files in `$XDG_DATA_HOME/barusu` (unless specified otherwise): `packages.txt`, `flatpaks.txt` and `dconf_out.txt` (and a hidden `.backupdone` file for internal usage of the program)
|
|
|
|
restore:
|
|
(you must call the script as root when restoring!)
|
|
You have to specify actions similar to backuping, they get executed in the following order: apt -> dconf -> flatpak
|
|
It is possible to provide an alternative backup folder using option `-d` or `backup-dir` as with backups, but you need to specify the folder BEFORE the `-r`/`--restore` option
|