summaryrefslogtreecommitdiff
path: root/src/initrd.sh
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2019-10-06 18:01:35 -0400
committerAndrew Cady <d@jerkface.net>2019-10-06 20:57:52 -0400
commitc2ccec9cb9ea406c23a353da6693c7cae0c1a86c (patch)
tree4e8cb398f148f45fd2873469515471c1c06f214e /src/initrd.sh
parent0e7afc5e9c747c58ace6af05e1befb72a5cfb782 (diff)
Avoid unnecessary initramfs rebuilds
Fixes a bug, plus adds a line of output that explains why a rebuild was needed.
Diffstat (limited to 'src/initrd.sh')
-rwxr-xr-xsrc/initrd.sh11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/initrd.sh b/src/initrd.sh
index b99aa4e..1414c89 100755
--- a/src/initrd.sh
+++ b/src/initrd.sh
@@ -19,7 +19,8 @@ force_rebuild()
19 19
20rebuild() 20rebuild()
21{ 21{
22 [ ! -f "$apt_dependencies" ] || sudo apt-get install -q=10 --no-upgrade -y $(cat "$apt_dependencies") 22 [ ! -f "$apt_dependencies" ] ||
23 sudo apt-get install -q=10 --no-upgrade -y $(cat "$apt_dependencies")
23 24
24 set -ex 25 set -ex
25 cp -f /boot/vmlinuz-"${kernel_version}" "$vmlinuz" 26 cp -f /boot/vmlinuz-"${kernel_version}" "$vmlinuz"
@@ -30,6 +31,10 @@ rebuild()
30 31
31if [ ! -e "$initrd" -o ! -e "$vmlinuz" ]; then 32if [ ! -e "$initrd" -o ! -e "$vmlinuz" ]; then
32 rebuild 33 rebuild
33elif [ "$(find_source_dirs -newer "$initrd" -print -quit)" ]; then 34else
34 rebuild 35 found=$(find_source_dirs -newer "$initrd" -print -quit)
36 if [ "$found" ]; then
37 echo "initrd.sh: rebuild forced: found modified source: $found"
38 rebuild
39 fi
35fi 40fi