From 70cf9d1de447eaae3222fa5248dd2ef00079e869 Mon Sep 17 00:00:00 2001 From: EnumDev Date: Fri, 2 May 2025 21:39:39 +0300 Subject: [PATCH] Add BPM hook and script for generating initramfs files automatically --- pkg.info | 1 + source-files/10-dracut.bpmhook | 5 +++++ source-files/generate-initramfs | 6 ++++++ source.sh | 6 ++++++ 4 files changed, 18 insertions(+) create mode 100644 source-files/10-dracut.bpmhook create mode 100644 source-files/generate-initramfs diff --git a/pkg.info b/pkg.info index d31fdb0..4283f47 100644 --- a/pkg.info +++ b/pkg.info @@ -1,6 +1,7 @@ name: dracut description: Event driven initramfs infrastructure version: 106 +revision: 2 url: https://github.com/dracut-ng/dracut-ng license: GPL2-or-later architecture: any diff --git a/source-files/10-dracut.bpmhook b/source-files/10-dracut.bpmhook new file mode 100644 index 0000000..7922887 --- /dev/null +++ b/source-files/10-dracut.bpmhook @@ -0,0 +1,5 @@ +trigger_operations: ["install", "upgrade", "remove"] +target_type: "path" +targets: ["boot/vmlinu*"] +depends: ["dracut"] +run: "/usr/bin/generate-initramfs" diff --git a/source-files/generate-initramfs b/source-files/generate-initramfs new file mode 100644 index 0000000..2c572a8 --- /dev/null +++ b/source-files/generate-initramfs @@ -0,0 +1,6 @@ +#!/bin/sh + +for kernel in /usr/lib/modules/*; do + kernel=$(basename "$kernel") + dracut -f --kver "$kver" +done diff --git a/source.sh b/source.sh index 6d878e5..aa286e4 100644 --- a/source.sh +++ b/source.sh @@ -24,6 +24,12 @@ build() { package() { make DESTDIR="$BPM_OUTPUT" install + # Install generate-initramfs script + install -Dm755 "$BPM_WORKDIR"/generate-initramfs "$BPM_OUTPUT"/usr/bin/generate-initramfs + + # Install BPM hook + install -Dm644 "$BPM_WORKDIR"/10-dracut.bpmhook "$BPM_OUTPUT"/var/lib/bpm/hooks/10-dracut.bpmhook + # Install package license install -Dm644 "$BPM_SOURCE"/COPYING "$BPM_OUTPUT"/usr/share/licenses/dracut/COPYING }