1
0
Fork 0
mirror of git://slackware.nl/current.git synced 2025-01-25 07:58:40 +01:00
slackware-current/source/a/mkinitrd/setup.01.mkinitrd
Patrick J Volkerding bca17f28cc Thu Jul 25 20:22:54 UTC 2024
Enjoy your shiny new vmlinuz-6.9.11-generic!
Thanks again to LuckyCyborg for teaching me about the path of least resistance.
a/grub-2.12-x86_64-14.txz:  Rebuilt.
  Don't mention 09_slackware_linux in the /etc/default/grub comments.
a/kernel-generic-6.9.11-x86_64-1.txz:  Upgraded.
a/kernel-huge-6.9.11-x86_64-1.txz:  Upgraded.
a/kernel-modules-6.9.11-x86_64-1.txz:  Upgraded.
a/mkinitrd-1.4.11-x86_64-35.txz:  Rebuilt.
d/kernel-headers-6.9.11-x86-1.txz:  Upgraded.
d/rust-1.80.0-x86_64-1.txz:  Upgraded.
k/kernel-source-6.9.11-noarch-1.txz:  Upgraded.
l/xapian-core-1.4.26-x86_64-1.txz:  Upgraded.
isolinux/initrd.img:  Rebuilt.
kernels/*:  Upgraded.
usb-and-pxe-installers/usbboot.img:  Rebuilt.
2024-07-25 23:16:46 +02:00

51 lines
1.9 KiB
Bash

#!/bin/sh
#BLURB="Generate /boot/initrd.gz for the generic kernel"
# Load defaults:
if [ -r etc/default/geninitrd ]; then
. etc/default/geninitrd
fi
if [ -z "$KERNEL_SYMLINK" ]; then
KERNEL_SYMLINK="boot/vmlinuz-generic"
elif [ "$(echo $KERNEL_SYMLINK | cut -b 1)" = "/" ]; then # trim to make a relative path
KERNEL_SYMLINK="$(echo $KERNEL_SYMLINK | cut -b 2-)"
fi
# Find the kernel version:
if [ -r $KERNEL_SYMLINK ]; then
KERNEL_VERSION=$(strings $KERNEL_SYMLINK | grep '([^ ]*@[^ ]*) #' | cut -f1 -d' ')
fi
# Assume the kernel "name" aka flavor is just the second part of the symlink name:
KERNEL_NAME="$(echo $KERNEL_SYMLINK | rev | cut -f 1 -d - | rev)"
# Sometimes mkinitrd_command_generator.sh does not detect LVM properly. Until I
# get to the bottom of that, it's safer to just always include LVM support.
LVM_OPTION="-L"
# Generate the initrd:
if [ ! -z $KERNEL_VERSION ]; then
dialog --title "GENERATING INITIAL RAMDISK" --infobox \
"Generating an initial ramdisk for use with the $KERNEL_VERSION 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 \
installed kernel." 8 70
chroot . /usr/share/mkinitrd/mkinitrd_command_generator.sh -k $KERNEL_VERSION -a "$LVM_OPTION -o /boot/initrd-${KERNEL_VERSION}-${KERNEL_NAME}.img" | chroot . bash 1> /dev/null 2> /dev/null
fi
if [ "$GENINITRD_NAMED_SYMLINK" = "true" ]; then
( cd boot
rm -f initrd-${KERNEL_NAME}.img
ln -sf initrd-${KERNEL_VERSION}-${KERNEL_NAME}.img initrd-${KERNEL_NAME}.img
)
fi
if [ "$GENINITRD_INITRD_GZ_SYMLINK" = "true" ]; then
( cd boot
rm -f initrd.gz
ln -sf initrd-${KERNEL_VERSION}-${KERNEL_NAME}.img initrd.gz
)
fi