Snapper systemd-boot integration

I’m using systemd-boot and I’ve installed snapper and btrfs-assistant, I’m trying to get snapshots to show up in the systemd-boot menu. Currently it only shows arch/fallback and zen/fallback kernels, no snapshots. Can someone point me in the right direction?

1 Like

There is no support for that. If you want to boot off snapshots, you are better off using grub. It actually mentions this in the installer.

1 Like

You could write a little script which creates the boot config file…that’s what I do, but I am not using snapper.

1 Like

I’m not at that level yet, still in the beginning of my Linux journey and just getting started with Arch (or arch based distros).

I read the discovery article for time shift, I guess I should have figured it was the same with snapper.

Does it work with rEFInd?

That is fine. To be honest, I initially thought this feature is really cool and I really want it, but ever since I have set it up I don’t think I ever booted into a snapshot for real. Usually all I need is a couple of files or I was able to sort things out manually.

Maybe it’s time will come :slight_smile:

There is something created for refind but I haven’t seen anyone here using it so you would probably have to figure out on your own how to get it working

1 Like

do i recognise that name from the solus forums?
if so i guess you are like me, heard that arch breaks a lot? maybe (like me) tried manjaro had had breakages as well?

well ive been on EOS for a year now, the first 11 months or so on btrfs/snapper/snapshots cos i expected breakage. didnt happen once. i dumped the whole concept and went ext4/systemd-boot

no problems and no worries

1 Like

I understand you want to have a way to restore a previous snapshot and boot to it given you are using systemd-boot.

The only way I actually did it, having BTRFS Assistant installed and configured and taking snapshots, then you can restore an earlier snapshot from

Once booted you can restore to an earlier snapshot and reboot.
Though I hope someone can come up with this feature or a little script to have it.
Please let me know if this helps.

I really hope you can help with that!
It would be a great contribution to EndeavourOS to have a possibility to boot to previous snapshots.

I’d be happy to share my script, but I have to say my scripting skills are limited and the whole thing is very opinionated, means it’s written for my environment only and not with broader use in mind.
But in simple terms what I do is the following:

  1. Create a snapshot every hour
  2. Make the snapshot r/w
  3. Create/Rename a file in /boot/loader/entries with the snapshot details:

Systemd-boot is beautifully simple in this respect.

$ ll /boot/loader/entries
total 24K
-rwxr-xr-x 1 root root 317 Okt  5  2021 arch.conf
-rwxr-xr-x 1 root root 351 Feb 18 20:32 Hourly_2023-02-18-20_32.conf
-rwxr-xr-x 1 root root 325 Okt  5  2021 lts.conf

thomas at hermes in ~
$ cat /boot/loader/entries/Hourly_2023-02-18-20_32.conf 
title Arch Linux
linux /vmlinuz-linux
initrd /intel-ucode.img
initrd /initramfs-linux.img
options cryptdevice=UUID=5f5a8caa-fea4-4858-963d-a5fedd746e09:luksOS:allow-discards root=/dev/mapper/luksOS rootflags=subvol=snapshots/Hourly_@_2023-02-18-20:32 rd.luks.options=discard rw resume=/dev/mapper/luksOS resume_offset=29160981 intel_iommu=on iommu=pt

1 Like

Adding them to the boot menu is easy.

The problem is, if your kernel is updated, they won’t boot.

1 Like

That’s true, every since I learned that :slight_smile: I copy /boot into my backups so I always have a matching configuration.

Yup, from the Solus forums and was even a package maintainer for a while. There have been some issues with Solus, so I’ve transferred to :enos: I’ve heard how Arch breaks, but I’ve run Garuda, Arco, and EOS before without issue.

I prefer btrfs to ext4 (no real reason other than snapshots), but I also have a grub adversion.

I really appreciate it. This is one of the beauties of EndeavourOS community.

We have great experts here. I am sure by brainstorming we can do something about it and find a way to do it.

Previous comment. I believe it can be done. It is all about programming/logic/algorithm.

Same here. New technology and feature rich.
So far using it for over 6 months without a glitch. I could even restore a previous snapshot while using BTRFS, Snapper and BTRFS Assistant.

1 Like