summaryrefslogtreecommitdiff
path: root/source/a/mkinitrd/setup.01.mkinitrd
diff options
context:
space:
mode:
authorPatrick J Volkerding <volkerdi@slackware.com>2019-01-23 22:02:34 +0000
committerEric Hameleers <alien@slackware.com>2019-01-24 08:59:49 +0100
commit7ad185bd2d8fe579a2a8f288a911298e9b022c39 (patch)
treea8cbf78fcc324729395ad16b52022366dfcde01c /source/a/mkinitrd/setup.01.mkinitrd
parentf4a16dfaa3822cd84790612cfb5f6794e7397ea1 (diff)
downloadcurrent-7ad185bd2d8fe579a2a8f288a911298e9b022c39.tar.gz
Wed Jan 23 22:02:34 UTC 201920190123220234
a/bash-5.0.002-x86_64-2.txz: Rebuilt. Rebuilt with --libdir=/usr/lib${LIBDIRSUFFIX}. Thanks to RandomTroll. a/btrfs-progs-4.20.1-x86_64-1.txz: Upgraded. a/mkinitrd-1.4.11-x86_64-9.txz: Rebuilt. Automatically generate an initial ramdisk from the installer. Added 'geninitrd' script to generate an initial ramdisk for the kernel that /boot/vmlinuz-generic (and/or /boot/vmlinuz-generic-smp) points to. ap/man-db-2.8.5-x86_64-2.txz: Rebuilt. Comment out all the options in /etc/profile.d/man-db.{csh,sh} and let the user decide whether or not to choose anything. d/python-pip-19.0.1-x86_64-1.txz: Upgraded. l/mozilla-nss-3.41.1-x86_64-1.txz: Upgraded. n/dhcpcd-7.1.0-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/a/mkinitrd/setup.01.mkinitrd')
-rw-r--r--source/a/mkinitrd/setup.01.mkinitrd38
1 files changed, 38 insertions, 0 deletions
diff --git a/source/a/mkinitrd/setup.01.mkinitrd b/source/a/mkinitrd/setup.01.mkinitrd
new file mode 100644
index 00000000..b8004470
--- /dev/null
+++ b/source/a/mkinitrd/setup.01.mkinitrd
@@ -0,0 +1,38 @@
+#!/bin/sh
+#BLURB="Generate /boot/initrd.gz for the generic kernel"
+
+# First, clear the existing initrd-tree:
+if [ -f $(readlink -f boot/vmlinuz-generic) -o -f $(readlink -f boot/vmlinuz-generic-smp) ]; then
+ rm -rf boot/initrd-tree
+fi
+
+# Next, if boot/vmlinuz-generic is a symlink to a kernel, generate a ramdisk
+# using the modules for that kernel:
+if [ -f $(readlink -f boot/vmlinuz-generic) ]; then
+ KERNEL_SYMLINK="boot/vmlinuz-generic"
+ KERNEL_VERSION="$(readlink -f $KERNEL_SYMLINK | sed "s/-smp/_smp/g" | rev | cut -f 1 -d - | rev | sed "s/_smp/-smp/g")"
+dialog --title "GENERATING INITIAL RAMDISK" --infobox \
+ "Generating an initial ramdisk for use with the $KERNEL_VERSION generic \
+kernel. The initial ramdisk contains kernel modules needed to mount the \
+root partition, and must be regenerated whenever the kernel is updated. To \
+regenerate the initrd, select this setup script from within pkgtool, or run \
+'geninitrd' which will produce an initial ramdisk (/boot/initrd.gz) for the \
+kernel pointed to by the /$KERNEL_SYMLINK symlink." 9 68
+ chroot . /usr/share/mkinitrd/mkinitrd_command_generator.sh -k $KERNEL_VERSION | sed "s/-c -k/-k/g" | chroot . bash 1> /dev/null 2> /dev/null
+fi
+
+# If boot/vmlinuz-generic-smp is a symlink to a kernel, also include the
+# modules for that kernel:
+if [ -f $(readlink -f boot/vmlinuz-generic-smp) ]; then
+ KERNEL_SYMLINK="boot/vmlinuz-generic-smp"
+ KERNEL_VERSION="$(readlink -f $KERNEL_SYMLINK | sed "s/-smp/_smp/g" | rev | cut -f 1 -d - | rev | sed "s/_smp/-smp/g")"
+dialog --title "GENERATING INITIAL RAMDISK" --infobox \
+ "Generating an initial ramdisk for use with the $KERNEL_VERSION generic \
+kernel. The initial ramdisk contains kernel modules needed to mount the \
+root partition, and must be regenerated whenever the kernel is updated. To \
+regenerate the initrd, select this setup script from within pkgtool, or run \
+'geninitrd' which will produce an initial ramdisk (/boot/initrd.gz) for the \
+kernel pointed to by the /$KERNEL_SYMLINK symlink." 9 68
+ chroot . /usr/share/mkinitrd/mkinitrd_command_generator.sh -k $KERNEL_VERSION | sed "s/-c -k/-k/g" | chroot . bash 1> /dev/null 2> /dev/null
+fi
+