moonpiedumplings
Posts
Yes, but there is something important to remember.
By default, most Linux installs put there kernels in /boot, which is not on the btrfs partition. This is not an issue on distros that keep multiple kernel versions, but it can cause issues on distros that only provide one kernel version (Arch and Arch based distros).
Because the kernels are not stored on the btrfs partition, they are not restored by btrfs snapshots. And if the rest of the system, including kernel modules, are a mismatched version due to restoration, then it means your system is unbootable.
A simpler fix is to install ArchLinux’s linux-tls package, which is the stable version of Linux that doesn’t update constantly.
But what I do to get around this, I put /boot on the btrfs partition, and /boot/efi is the seperate efi partition where grub is installed. Then, kernels are restored when I restore a snapshot.
Got a framework. Migrated all my data over using rustic.
It was fairly easy. I used rustic to back up my entire home directory to a USB flash drive.
The trick is to ensure that all applications (except KDE) are closed. Firefox, for example, really hates if you try to actively sync or copy over it’s profile directories while it is running.
And then I also nuked my podman user data. (podman system reset). Podman sometimes makes the ownership of it’s files weird, but also the container images take up a lot of space that I don’t really care about actually backing up. It’s okay if those aren’t on the new laptop.
Then I backed up to the usb flash drive:
rustic init -r /path/to/repo — this will prompt you for a password
rustic backup -r /path/to/repo /home/moonpie
One cool thing about the backups is that they are deduplicated and compressed. So I backed up 120 gb of data, but it was compressed to 80 gb.
restic snapshots -r /path/to/repo
The snapshots are deduplicated as well. Data that doesn’t change between snapshot versions, doesn’t take up any extra space.
rustic restore -r /path/to/repo snapshotid /
The / is needed because rustic restores to paths underneath the thing. It gave me a bunch of permission errors about not being able to read stuff not in my home directory, but eventually it restored all of my data.
And then yeah. All my data. Except Wifi passwords, which I had stored as unencrypted for all users, because I didn’t like having to unlock the KDE wallet to get to Wifi passwords when connecting. I had (and have) LUKS encryption so I didn’t worry about that too much. But it means that data not in my home directory was not copied over.
It was surprisingly smooth, and now I have all my data and firefox profiles and stuff on the new machine.
- oauth, and control sign ups via there. Don’t let people sign up via forgejo itself.
- anubis, yeah. Or similar.
- forgejo actions is an optional component… and forgejo users can bring their own actions server. Of course, it’s a risk to them since the server owner could execute code in actions. But yeah.