It is time to test the next round of Garuda Assistant enhancements. In our last round of testing we got some great feedback that allowed us to make the product better with the support of the community.
What is on tap next? A simple UI for snapper to enable a easy transition to snapper.
Why might someone want to use snapper instead of timeshift?
- snapper supports taking snapshots of any mounted subvolume, not only
@
or@home
. - snapper allows you to name your snapshots however you like
- snapper supports both flat and nested subvolume layouts
- snapper creates read-only snapshots
- tools have been created for snapper which allow snapshot replication to external hosts/devices to allow snapshots to be used as part of a backup strategy
- snapper doesn't require the root of the btrfs partition to be mounted
The additions to Garuda Assistant hope to address two of the reasons people may prefer timeshift over snapper.
- snapper doesn't include a GUI interface(Although there are 3rd party options)
- snapper doesn't provide an easy way to restore a snapshot
There are also some things that work the same for both solutions
- They both take snapshots
- They both are supported by grub-btrfs
- They both have add-ons for taking automatic, manual and scheduled snapshots
- They both can manage snapshot retention
OK, with the introduction out of the way, here is what the new/updated screens look like:
To try out the new version, you can simply install garuda-assistant-git
. Please note the that snapper functionality is all hidden unless snapper
is installed.
The next question you might have is how to convert from timeshift to snapper. It is actually fairly simple.
First remove timeshift
sudo pacman -Rc timeshift
Now update and install snapper
sudo pacman -Syu snapper
Create a default config for snapper
sudo snapper create-config /
Next replace the contents of /etc/systemd/system/grub-btrfs.path
with the below. You can create it if it doesn't exist already
[Unit]
Description=Monitors for new snapshots
DefaultDependencies=no
[Path]
PathModified=/.snapshots
[Install]
WantedBy=multi-user.target
Make sure it is enabled
sudo systemctl daemon-reload
sudo systemctl reenable grub-btrfs.path
Finally install snap-pac
to automatically take snapshots during pacman operations.
sudo pacman -S snap-pac
From here, you can use Garuda Assistant for the rest.
You should probably enable the snapper-timeline and snapper-cleanup timers on the btrfs tab.
Next you can create configs on the Snapper Settings tab for any other subvolumes you want snapshots for and configure the settings to suit your preferences.
On the Snapper tab you can take manual snapshots and delete snapshots.
Lastly, the btrfs subvolumes tab allows you to restore a snapper snapshot. If you want to restore the snapshot for the root you will need to boot off of a snapshot first.
Notes:
- Since the snapshots are read-only, you will get some minor errors when you boot off of a snapshot.
- Please feel free to provide constructive feedback on the usability of the interface.
- While I tested as thoroughly as I could, there is definitely some risk of breakage, especially when restoring snapshots. Because of this I recommend that you....