diff options
-rw-r--r-- | .SRCINFO | 8 | ||||
-rw-r--r-- | 60-kernel-install-remove.hook | 24 | ||||
-rw-r--r-- | 90-kernel-install-add.hook | 24 | ||||
-rw-r--r-- | PKGBUILD | 8 | ||||
-rw-r--r-- | kernel-install.sh | 34 |
5 files changed, 45 insertions, 53 deletions
@@ -1,6 +1,6 @@ pkgbase = pacman-hook-kernel-install pkgdesc = Pacman hooks for kernel-install. - pkgver = 0.11.0 + pkgver = 0.12.0 pkgrel = 1 url = https://man.archlinux.org/man/kernel-install.8 arch = any @@ -10,8 +10,8 @@ pkgbase = pacman-hook-kernel-install source = 90-kernel-install-add.hook source = 60-kernel-install-remove.hook source = kernel-install.sh - sha256sums = 7544af3b61b8fc16e4374447a086707d6b3e23cf2d2cc9d4dbf1168d81e72523 - sha256sums = 7794b90baac33380a195d65017fcc51420ef141d2f95a5c94abe06b2999a787d - sha256sums = 4e7e6134473aa47e2c130b095b6faa2c5d72b2fb4d0dff66f50d048da6c0ec2d + sha256sums = 1acd13999d9cb8fa2c46e040598f62636e8d3969622220eb4cf564f4a380ddd4 + sha256sums = 23b046f9ef43d888691d425c95841317de6104dab31bcccf62fbc4f34317ff26 + sha256sums = e79a3c74e0fdc3ab9d9f1967b38aa6ca7f10d189bc4975da661b0f20a75cfcc2 pkgname = pacman-hook-kernel-install diff --git a/60-kernel-install-remove.hook b/60-kernel-install-remove.hook index 2f8a29a47a23..52e45ef5039c 100644 --- a/60-kernel-install-remove.hook +++ b/60-kernel-install-remove.hook @@ -3,29 +3,23 @@ Type = Path Operation = Upgrade Operation = Remove Target = usr/lib/modules/*/vmlinuz +Target = usr/lib/modules/*/extramodules/* [Trigger] Type = Path Operation = Install Operation = Upgrade Operation = Remove -Target = usr/lib/kernel/install.* -Target = etc/kernel/install.* +Target = boot/*-ucode.img +Target = usr/lib/initcpio/* +Target = usr/lib/initcpio/*/* +Target = usr/lib/dracut/* +Target = usr/lib/dracut/*/* +Target = usr/lib/dracut/*/*/* +Target = usr/lib/kernel/* +Target = usr/lib/kernel/*/* Target = usr/src/*/dkms.conf -[Trigger] -Type = Package -Operation = Install -Operation = Upgrade -Operation = Remove -Target = systemd -Target = amd-ucode -Target = intel-ucode -Target = plymouth -Target = cryptsetup -Target = dracut -Target = mkinitcpio - [Action] Description = Removing kernel and initrd from $BOOT... (kernel-install) When = PostTransaction diff --git a/90-kernel-install-add.hook b/90-kernel-install-add.hook index b09fa18443d4..75f091e8b276 100644 --- a/90-kernel-install-add.hook +++ b/90-kernel-install-add.hook @@ -3,29 +3,23 @@ Type = Path Operation = Install Operation = Upgrade Target = usr/lib/modules/*/vmlinuz +Target = usr/lib/modules/*/extramodules/* [Trigger] Type = Path Operation = Install Operation = Upgrade Operation = Remove -Target = usr/lib/kernel/install.* -Target = etc/kernel/install.* +Target = boot/*-ucode.img +Target = usr/lib/initcpio/* +Target = usr/lib/initcpio/*/* +Target = usr/lib/dracut/* +Target = usr/lib/dracut/*/* +Target = usr/lib/dracut/*/*/* +Target = usr/lib/kernel/* +Target = usr/lib/kernel/*/* Target = usr/src/*/dkms.conf -[Trigger] -Type = Package -Operation = Install -Operation = Upgrade -Operation = Remove -Target = systemd -Target = amd-ucode -Target = intel-ucode -Target = plymouth -Target = cryptsetup -Target = dracut -Target = mkinitcpio - [Action] Description = Installing kernel and initrd to $BOOT... (kernel-install) When = PostTransaction @@ -3,7 +3,7 @@ # Contributor: Sebastian Wiesner <sebastian@swsnr.de> pkgname=pacman-hook-kernel-install -pkgver=0.11.0 +pkgver=0.12.0 pkgrel=1 pkgdesc="Pacman hooks for kernel-install." url='https://man.archlinux.org/man/kernel-install.8' @@ -23,6 +23,6 @@ package() { } # sums -sha256sums=('7544af3b61b8fc16e4374447a086707d6b3e23cf2d2cc9d4dbf1168d81e72523' - '7794b90baac33380a195d65017fcc51420ef141d2f95a5c94abe06b2999a787d' - '4e7e6134473aa47e2c130b095b6faa2c5d72b2fb4d0dff66f50d048da6c0ec2d') +sha256sums=('1acd13999d9cb8fa2c46e040598f62636e8d3969622220eb4cf564f4a380ddd4' + '23b046f9ef43d888691d425c95841317de6104dab31bcccf62fbc4f34317ff26' + 'e79a3c74e0fdc3ab9d9f1967b38aa6ca7f10d189bc4975da661b0f20a75cfcc2') diff --git a/kernel-install.sh b/kernel-install.sh index bf5bc3464bf4..de503f85c16d 100644 --- a/kernel-install.sh +++ b/kernel-install.sh @@ -3,32 +3,36 @@ set -euo pipefail shopt -s inherit_errexit nullglob -extract_kernel_version() { - local heads - heads="${1%/vmlinuz}" - echo "${heads##*/}" -} +cd / + +all_kernels=0 +versions=() -all_kernel_images=0 -kernel_images=() +add_file() { + local kver="$1" + kver="${kver##usr/lib/modules/}" + kver="${kver%%/*}" + versions+=("$kver") +} while read -r path; do case "$path" in - usr/lib/modules/*/vmlinuz) - kernel_images+=("/$path") + usr/lib/modules/*/vmlinuz | usr/lib/modules/*/extramodules/*) + add_file "$path" ;; *) - all_kernel_images=1 + all_kernels=1 ;; esac done -((all_kernel_images)) && for file in /usr/lib/modules/*/vmlinuz; do +((all_kernels)) && for file in usr/lib/modules/*/vmlinuz; do pacman -Qqo "$file" 1>/dev/null 2>/dev/null && - kernel_images+=("$file") + add_file "$file" done -for kernel_image in "${kernel_images[@]}"; do - echo +kernel-install "$@" "$(extract_kernel_version "$kernel_image")" "$kernel_image" - kernel-install "$@" "$(extract_kernel_version "$kernel_image")" "$kernel_image" || true +for kver in "${versions[@]}"; do + kimage="/usr/lib/modules/$kver/vmlinuz" + echo +kernel-install "$@" "$kver" "$kimage" + kernel-install "$@" "$kver" "$kimage" || true done |