diff options
author | Patrick J Volkerding <volkerdi@slackware.com> | 2019-03-03 22:03:39 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2019-03-04 08:59:47 +0100 |
commit | 3b234388a5f545f071422864e1a274ba45a696a0 (patch) | |
tree | f37b678ba513e480f69334f445c0fe35ec4bb925 /source/a/mkinitrd/setup.01.mkinitrd | |
parent | d26b7f6e82486c7fe02690ce5706b0660867c70b (diff) | |
download | current-3b234388a5f545f071422864e1a274ba45a696a0.tar.gz |
Sun Mar 3 22:03:39 UTC 201920190303220339
a/mkinitrd-1.4.11-x86_64-12.txz: Rebuilt.
Updated to busybox-1.30.1.
mkinitrd: allow a colon-delimited list of kernel versions with -k
mkinitrd_command_generator.sh: allow a colon-delimited list of kernel
versions with -k
setup.01.mkinitrd: simplify script by using -k with a version list
ap/pamixer-1.4-x86_64-1.txz: Upgraded.
d/python-2.7.16-x86_64-1.txz: Upgraded.
Updated to the latest 2.7.x release, which fixes a few security issues.
For more information, see:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-1752
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14647
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5010
(* Security fix *)
d/vala-0.42.6-x86_64-1.txz: Upgraded.
l/gegl-0.4.14-x86_64-1.txz: Upgraded.
l/libsecret-0.18.8-x86_64-1.txz: Upgraded.
l/xapian-core-1.4.11-x86_64-1.txz: Upgraded.
x/mkfontscale-1.2.0-x86_64-1.txz: Upgraded.
x/xditview-1.0.5-x86_64-1.txz: Upgraded.
x/xdm-1.1.12-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/a/mkinitrd/setup.01.mkinitrd')
-rw-r--r-- | source/a/mkinitrd/setup.01.mkinitrd | 76 |
1 files changed, 22 insertions, 54 deletions
diff --git a/source/a/mkinitrd/setup.01.mkinitrd b/source/a/mkinitrd/setup.01.mkinitrd index 8bddb5c5..31e87144 100644 --- a/source/a/mkinitrd/setup.01.mkinitrd +++ b/source/a/mkinitrd/setup.01.mkinitrd @@ -1,69 +1,37 @@ #!/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 +# Start with the version for vmlinuz-generic-smp: +KERNEL_SYMLINK="boot/vmlinuz-generic-smp" +if [ -L $KERNEL_SYMLINK ]; then + KERNEL_VERSION_LIST=$(strings $KERNEL_SYMLINK | grep '([^ ]*@[^ ]*) #' | cut -f1 -d' ') fi -# Next, if boot/vmlinuz-generic is a symlink to a kernel, generate a ramdisk -# using the modules for that kernel: +# Next add the version for vmlinuz-generic: KERNEL_SYMLINK="boot/vmlinuz-generic" if [ -L $KERNEL_SYMLINK ]; then - KERNEL_VERSION="$(readlink -f $KERNEL_SYMLINK | sed "s/-smp/_smp/g" | rev | cut -f 1 -d - | rev | sed "s/_smp/-smp/g")" - # Sanity check. Not sure how/why, but there are reports we can arrive here - # without a $KERNEL_VERSION. The only way I see how is if the symlink were - # pointing to file with a malformed name - # (i.e. not ${KERNEL_SYMLINK}-${KERNEL_VERSION}). - # If ${KERNEL_VERSION} is blank, we'll bail out here. - # Any information on known cases that might cause this would be appreciated. - if [ ! "$KERNEL_VERSION" = "" ]; then - 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 + if [ -z $KERNEL_VERSION_LIST ]; then + KERNEL_VERSION_LIST=$(strings $KERNEL_SYMLINK | grep '([^ ]*@[^ ]*) #' | cut -f1 -d' ') else - dialog --title "INTERNAL ERROR" --msgbox \ - "An internal error was detected. Please report the following information: \n\ -KERNEL_SYMLINK = $KERNEL_SYMLINK \n\ -KERNEL_SYMLINK (points to) = $(readlink -f $KERNEL_SYMLINK) \n\ -KERNEL_VERSION (is blank) \n\ -ls -l \$KERNEL_SYMLINK: \n\ -$(ls -l $KERNEL_SYMLINK)" 0 0 + KERNEL_VERSION_LIST="$KERNEL_VERSION_LIST:$(strings $KERNEL_SYMLINK | grep '([^ ]*@[^ ]*) #' | cut -f1 -d' ')" fi fi -# If boot/vmlinuz-generic-smp is a symlink to a kernel, also include the -# modules for that kernel: -KERNEL_SYMLINK="boot/vmlinuz-generic-smp" -if [ -L $KERNEL_SYMLINK ]; then - KERNEL_VERSION="$(readlink -f $KERNEL_SYMLINK | sed "s/-smp/_smp/g" | rev | cut -f 1 -d - | rev | sed "s/_smp/-smp/g")" - # Sanity check. Not sure how/why, but there are reports we can arrive here - # without a $KERNEL_VERSION. The only way I see how is if the symlink were - # pointing to file with a malformed name - # (i.e. not ${KERNEL_SYMLINK}-${KERNEL_VERSION}). - # If ${KERNEL_VERSION} is blank, we'll bail out here. - # Any information on known cases that might cause this would be appreciated. - if [ ! "$KERNEL_VERSION" = "" ]; then - 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 \ +# Proper plural(s): +if echo $KERNEL_VERSION_LIST | grep -q : ; then + KERNEL=kernels +else + KERNEL=kernel +fi + +# Generate the initrd: +if [ ! -z $KERNEL_VERSION_LIST ]; then + dialog --title "GENERATING INITIAL RAMDISK" --infobox \ + "Generating an initial ramdisk for use with the $KERNEL_VERSION_LIST 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 - else - dialog --title "INTERNAL ERROR" --msgbox \ - "An internal error was detected. Please report the following information: \n\ -KERNEL_SYMLINK = $KERNEL_SYMLINK \n\ -KERNEL_SYMLINK (points to) = $(readlink -f $KERNEL_SYMLINK) \n\ -KERNEL_VERSION (is blank) \n\ -ls -l \$KERNEL_SYMLINK: \n\ -$(ls -l $KERNEL_SYMLINK)" 0 0 - fi +installed generic ${KERNEL}." 9 68 + chroot . /usr/share/mkinitrd/mkinitrd_command_generator.sh -k $KERNEL_VERSION_LIST | chroot . bash 1> /dev/null 2> /dev/null fi |