From 5393d68bf9ca38cb34f244ae0a2363f802c9feeb Mon Sep 17 00:00:00 2001 From: Aiden Gerbrandt Date: Mon, 15 Dec 2025 19:37:30 -0600 Subject: [PATCH] Added arch update and snapshot info --- Arch.md | 5 +++++ ArchSetup.md | 22 ++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/Arch.md b/Arch.md index 5b61ff9..fc0afbb 100644 --- a/Arch.md +++ b/Arch.md @@ -12,6 +12,11 @@ tags: - Graphical Software Management tools are not compatible and the command line must be used - Packages are installed with `pacman -S ` - `pacman -Syu` will update all the software on your system +- It's worth checking the [Arch News](https://archlinux.org/news/) before running an update, or if you have any issues with an update. The Arch maintainers will always put known update issues there and how to resolve them. +- Due to the fast moving pace of Arch you should aim to update your system at least once per week + - It shouldn't be a problem if you take longer, but it helps minimize risk. + - It's usually smart to not do system updates right before you need the computer for an important + - [System Snapshots](ArchSetup.md#bootable-system-snapshots) can help reduce this issue by having the option to just rollback ### pacnew Sometimes while updating you system you may get a warning about a ".pacnew" file being created. diff --git a/ArchSetup.md b/ArchSetup.md index a9a32a5..be5cf7a 100644 --- a/ArchSetup.md +++ b/ArchSetup.md @@ -15,3 +15,25 @@ The wiki is wrong and your ${GRUB_MODULES} needs to be in "" 5. Enable Secure Boot and import your MOK.cer into shim's MOK list. **Note:** If you ever re-install the GRUB `grubx64.efi` file (to get a newer version of GRUB for example), make sure to do so with the modules as described above, and you will need to re-sign the file with `sbsign`. + +## Bootable System Snapshots +### Setup +**Note:** For the below to work Arch must be installed on a btrfs filesystem with seperate root (@) and home (@home) subvolumes. (This is the default for EndeavourOS when you select btrfs.) And you must be using GRUB as your bootloader. + +1. Install the following packages: + - `btrfs-progs` - Utilies for btrfs + - `grub-btrfs` - automatically adds Snapshots to the GRUB menu + - `timeshift` - creates and manages snapshots + - `inotify-tools` - used by grub-btrfs to spot new snapshots +2. Open timeshift and go through the setup, I recommend not including @home in snapshots. +3. Run `sudo systemctl edit --full grub-btrfsd` and adjust the `ExecStart=` line to be `ExecStart=/usr/bin/grub-btrfsd --syslog --timeshift-auto` +4. Enable grub-btrfs with `sudo systemctl enable --now grub-btrfsd` +5. Install `timeshift-autosnap` from the AUR +6. Edit the timeshift-autosnap config as desired, but be sure to disable it updating GRUB and that will conflict with `grub-btrfs` + +### Usage +When you preform a system update a snapshots should automatically be created. +You can also manually create snapshots from the timeshift program. + +If you boot into a snapshot or otherwise want to use a snapshot, first open timeshift and `restore` the snapshot you want to use (or are booted into) and then reboot. +This will properly restore the system to that snapshot.