From 168f1d46569e796423f6a86cb1917b0d8cd06b8c Mon Sep 17 00:00:00 2001 From: Daniel Weipert Date: Thu, 11 May 2023 14:00:57 +0200 Subject: [pacman] add hook for linux-lts-versioned-bin update to create unversioned lts entries in /boot --- .config/pacman/bin/linux-lts-versioned-bin-hook | 30 +++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100755 .config/pacman/bin/linux-lts-versioned-bin-hook (limited to '.config/pacman/bin/linux-lts-versioned-bin-hook') diff --git a/.config/pacman/bin/linux-lts-versioned-bin-hook b/.config/pacman/bin/linux-lts-versioned-bin-hook new file mode 100755 index 0000000..ebb9b01 --- /dev/null +++ b/.config/pacman/bin/linux-lts-versioned-bin-hook @@ -0,0 +1,30 @@ +#! /usr/bin/python + +import sys, os, re + +boot_dir = '/boot' + +lts_vm_files = list( + filter( + re.compile(r'vmlinuz-([\d\.\-]+)-lts$').match, + os.listdir(boot_dir) + ) +) + +if not lts_vm_files: + print(f'No versioned kernel files found in {boot_dir}') + sys.exit(1) + +highest_lts_version_file = lts_vm_files[-1] +version_name = re.search(r'vmlinuz-([\d\.\-]+)-lts$', highest_lts_version_file).group(1) + +symlink_map = { + f'{boot_dir}/initramfs-{version_name}-lts.img': f'{boot_dir}/initramfs-linux-lts.img', + f'{boot_dir}/initramfs-{version_name}-lts-fallback.img': f'{boot_dir}/initramfs-linux-lts-fallback.img', + f'{boot_dir}/vmlinuz-{version_name}-lts': f'{boot_dir}/vmlinuz-linux-lts', +} +for src, dst in symlink_map.items(): + os.path.islink(dst) and os.unlink(dst) + os.symlink(src, dst) + +sys.exit(0) -- cgit v1.2.3