From c42ec8ec67cf35f3def55531bb2df9d15947b777 Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Thu, 29 Oct 2020 16:25:52 -0400 Subject: try to avoid running mkinitramfs redundantly --- src/mkinitramfs-samizdat | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/mkinitramfs-samizdat b/src/mkinitramfs-samizdat index 4852daa..4b46ce4 100755 --- a/src/mkinitramfs-samizdat +++ b/src/mkinitramfs-samizdat @@ -11,16 +11,31 @@ loudly() "$@") } +up_to_date() +{ + local found system_initrd + system_initrd=${1%$OUTPUT_TAG} + [ -e "$1" ] || return + found=$(find "$samizdat_initramfs_conf_dir" \ + "$samizdat_initrd_files_dir" \ + "$system_initrd" \ + -type f -newer "$1" -print -quit) || return + [ -z "$found" ] +} + f() { OUTPUT=/boot/initrd.img-$1${OUTPUT_TAG} + ([ -z "$OUTPUT_TAG" ] || ! up_to_date "$OUTPUT") && /usr/sbin/mkinitramfs \ - -d /usr/local/lib/samizdat-rhizome/initramfs-tools/ \ + -d "$samizdat_initramfs_conf_dir" \ -o "$OUTPUT" \ -k "$1" || return loudly ln -sf "${OUTPUT#/}" /initrd.img } +. samizdat-paths.sh + OUTPUT_TAG=.samizdat while [ $# -gt 0 ] do -- cgit v1.2.3