Install sudo pacman -S timeshift grub-btrfs timeshift-autosnap sudo systemctl enable --now cronie.service # Disable quota feature if you are using btrfs sudo btrfs quota disable /home sudo btrfs quota disable / Manage timeshift-autosnap vim /etc/timeshift-autosnap.conf Timeshift rollback # In Archlinux Live ## Mount mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme0n1p2 /mnt mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvme0n1p2 /mnt/home mount /dev/nvme0n1p3 /mnt/boot # Get btrfs sbuvolume btrfs subvolume list /mnt ----- (Bottom of the list) ID 4130 gen 178955 top level 5 path @home ID 4131 gen 178955 top level 5 path @ ----- # Change `/etc/fstab` subvoid vim /mnt/etc/fstab ----- # /dev/nvme0n1p2 UUID=9a3cbacc-ea5c-4f43-81e7-4e9354d818a8 / btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=4131,subvol=/@ 0 0 UUID=9a3cbacc-ea5c-4f43-81e7-4e9354d818a8 /home btrfs rw,noatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=4130,subvol=/@home 0 0 ----- # Get the rootfs package version of linux & linux-headers arch-chroot /mnt pacman -Qi linux pacman -Qi linux-headers # Download aria2c -x 8 "https://archive.archlinux.org/packages/l/linux-headers/linux-headers-6.7.8.arch1-1-x86_64.pkg.tar.zst" aria2c -x 8 "https://archive.archlinux.org/packages/l/linux/linux-6.7.8.arch1-1-x86_64.pkg.tar.zst" # Disable Timeshift hooks cd /usr/share/libalpm/hooks sudo mv 00-timeshift-autosnap.hook 00-timeshift-autosnap.hook.bak # Install linux & linux-headers packages sudo pacman -U ./linux-6.7.8.arch1-1-x86_64.pkg.tar.zst ./linux-headers-6.7.8.arch1-1-x86_64.pkg.tar.zst # Install grub (Optional) mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme0n1p2 /mnt mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvme0n1p2 /mnt/home mount /dev/nvme0n1p3 /mnt/boot arch-chroot /mnt pacman -S grub efibootmgr os-prober grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH grub-mkconfig -o /boot/grub/grub.cfg