1
0
Fork 0
mirror of git://slackware.nl/current.git synced 2025-01-26 08:03:16 +01:00
slackware-current/source/installer
Patrick J Volkerding 1d3ade18ad Wed Jan 12 22:04:33 UTC 2022
Good hello, and welcome to the third and final release candidate for Slackware
15.0. We're 99% frozen at this point and are mostly looking for regression or
other bug reports that might be able to be addressed before this goes stable.
Of course, the management here reserves the right to make exceptions... that
5.15.15 kernel version has a nice ring to it. If your requests didn't make it
into this iteration, perhaps we will revisit them for the next -current cycle.
Some were just a little too late but will more than likely be needed next time
(I'm looking at Didier's grubconfig), while others are just out of scope for
the main tree where I like to abide by YAGNI as much as possible.
Anyway, let's get some testing done and we'll be there soon. Enjoy! :-)
a/aaa_base-15.0-x86_64-2.txz:  Rebuilt.
  The Linux Counter has shut down, so remove the registration email.
  Update the welcome email for Slackware 15.0.
a/aaa_libraries-15.0-x86_64-13.txz:  Rebuilt.
  Upgraded: libsigsegv.so.2.0.7.
a/eudev-3.2.11-x86_64-1.txz:  Upgraded.
a/haveged-1.9.17-x86_64-1.txz:  Upgraded.
a/hdparm-9.63-x86_64-1.txz:  Upgraded.
a/kernel-firmware-20220111_13dca28-noarch-1.txz:  Upgraded.
a/kernel-generic-5.15.14-x86_64-1.txz:  Upgraded.
a/kernel-huge-5.15.14-x86_64-1.txz:  Upgraded.
a/kernel-modules-5.15.14-x86_64-1.txz:  Upgraded.
ap/vim-8.2.4065-x86_64-1.txz:  Upgraded.
d/kernel-headers-5.15.14-x86-1.txz:  Upgraded.
d/strace-5.16-x86_64-1.txz:  Upgraded.
d/vala-0.54.6-x86_64-1.txz:  Upgraded.
k/kernel-source-5.15.14-noarch-1.txz:  Upgraded.
  VMD m -> y
  Thanks to dr.s.
kde/attica-5.90.0-x86_64-1.txz:  Upgraded.
kde/baloo-5.90.0-x86_64-1.txz:  Upgraded.
kde/bluez-qt-5.90.0-x86_64-1.txz:  Upgraded.
kde/breeze-icons-5.90.0-noarch-1.txz:  Upgraded.
kde/extra-cmake-modules-5.90.0-x86_64-1.txz:  Upgraded.
kde/frameworkintegration-5.90.0-x86_64-1.txz:  Upgraded.
kde/kactivities-5.90.0-x86_64-1.txz:  Upgraded.
kde/kactivities-stats-5.90.0-x86_64-1.txz:  Upgraded.
kde/kapidox-5.90.0-x86_64-1.txz:  Upgraded.
kde/karchive-5.90.0-x86_64-1.txz:  Upgraded.
kde/kauth-5.90.0-x86_64-1.txz:  Upgraded.
kde/kbookmarks-5.90.0-x86_64-1.txz:  Upgraded.
kde/kcalendarcore-5.90.0-x86_64-1.txz:  Upgraded.
kde/kcmutils-5.90.0-x86_64-1.txz:  Upgraded.
kde/kcodecs-5.90.0-x86_64-1.txz:  Upgraded.
kde/kcompletion-5.90.0-x86_64-1.txz:  Upgraded.
kde/kconfig-5.90.0-x86_64-1.txz:  Upgraded.
kde/kconfigwidgets-5.90.0-x86_64-1.txz:  Upgraded.
kde/kcontacts-5.90.0-x86_64-1.txz:  Upgraded.
kde/kcoreaddons-5.90.0-x86_64-1.txz:  Upgraded.
kde/kcrash-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdav-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdbusaddons-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdeclarative-5.90.0-x86_64-1.txz:  Upgraded.
kde/kded-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdelibs4support-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdesignerplugin-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdesu-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdewebkit-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdnssd-5.90.0-x86_64-1.txz:  Upgraded.
kde/kdoctools-5.90.0-x86_64-1.txz:  Upgraded.
kde/kemoticons-5.90.0-x86_64-1.txz:  Upgraded.
kde/kfilemetadata-5.90.0-x86_64-1.txz:  Upgraded.
kde/kglobalaccel-5.90.0-x86_64-1.txz:  Upgraded.
kde/kguiaddons-5.90.0-x86_64-1.txz:  Upgraded.
kde/kholidays-5.90.0-x86_64-1.txz:  Upgraded.
kde/khtml-5.90.0-x86_64-1.txz:  Upgraded.
kde/ki18n-5.90.0-x86_64-1.txz:  Upgraded.
kde/kiconthemes-5.90.0-x86_64-1.txz:  Upgraded.
kde/kidletime-5.90.0-x86_64-1.txz:  Upgraded.
kde/kimageformats-5.90.0-x86_64-1.txz:  Upgraded.
kde/kinit-5.90.0-x86_64-1.txz:  Upgraded.
kde/kio-5.90.0-x86_64-1.txz:  Upgraded.
kde/kirigami2-5.90.0-x86_64-1.txz:  Upgraded.
kde/kitemmodels-5.90.0-x86_64-1.txz:  Upgraded.
kde/kitemviews-5.90.0-x86_64-1.txz:  Upgraded.
kde/kjobwidgets-5.90.0-x86_64-1.txz:  Upgraded.
kde/kjs-5.90.0-x86_64-1.txz:  Upgraded.
kde/kjsembed-5.90.0-x86_64-1.txz:  Upgraded.
kde/kmediaplayer-5.90.0-x86_64-1.txz:  Upgraded.
kde/knewstuff-5.90.0-x86_64-1.txz:  Upgraded.
kde/knotifications-5.90.0-x86_64-1.txz:  Upgraded.
kde/knotifyconfig-5.90.0-x86_64-1.txz:  Upgraded.
kde/kpackage-5.90.0-x86_64-1.txz:  Upgraded.
kde/kparts-5.90.0-x86_64-1.txz:  Upgraded.
kde/kpeople-5.90.0-x86_64-1.txz:  Upgraded.
kde/kplotting-5.90.0-x86_64-1.txz:  Upgraded.
kde/kpty-5.90.0-x86_64-1.txz:  Upgraded.
kde/kquickcharts-5.90.0-x86_64-1.txz:  Upgraded.
kde/kross-5.90.0-x86_64-1.txz:  Upgraded.
kde/krunner-5.90.0-x86_64-1.txz:  Upgraded.
kde/kservice-5.90.0-x86_64-1.txz:  Upgraded.
kde/ktexteditor-5.90.0-x86_64-1.txz:  Upgraded.
kde/ktextwidgets-5.90.0-x86_64-1.txz:  Upgraded.
kde/kunitconversion-5.90.0-x86_64-1.txz:  Upgraded.
kde/kwallet-5.90.0-x86_64-1.txz:  Upgraded.
kde/kwayland-5.90.0-x86_64-1.txz:  Upgraded.
kde/kwidgetsaddons-5.90.0-x86_64-1.txz:  Upgraded.
kde/kwindowsystem-5.90.0-x86_64-1.txz:  Upgraded.
kde/kxmlgui-5.90.0-x86_64-1.txz:  Upgraded.
kde/kxmlrpcclient-5.90.0-x86_64-1.txz:  Upgraded.
kde/latte-dock-0.10.7-x86_64-1.txz:  Upgraded.
kde/modemmanager-qt-5.90.0-x86_64-1.txz:  Upgraded.
kde/networkmanager-qt-5.90.0-x86_64-1.txz:  Upgraded.
kde/oxygen-icons5-5.90.0-noarch-1.txz:  Upgraded.
kde/plasma-framework-5.90.0-x86_64-1.txz:  Upgraded.
kde/plasma-workspace-5.23.5-x86_64-2.txz:  Rebuilt.
  [PATCH] [libtaskmanager] Increase buffer for pipewire format negotiation.
  Thanks to ZhaoLin1457.
  [PATCH] runners/shell: Port from KToolInvocation::invokeTerminal
  to KTerminalLauncherJob.
  Thanks to gmgf.
kde/prison-5.90.0-x86_64-1.txz:  Upgraded.
kde/purpose-5.90.0-x86_64-1.txz:  Upgraded.
kde/qqc2-desktop-style-5.90.0-x86_64-1.txz:  Upgraded.
kde/solid-5.90.0-x86_64-1.txz:  Upgraded.
kde/sonnet-5.90.0-x86_64-1.txz:  Upgraded.
kde/syndication-5.90.0-x86_64-1.txz:  Upgraded.
kde/syntax-highlighting-5.90.0-x86_64-1.txz:  Upgraded.
kde/threadweaver-5.90.0-x86_64-1.txz:  Upgraded.
l/SDL2-2.0.20-x86_64-1.txz:  Upgraded.
l/SDL2_ttf-2.0.18-x86_64-1.txz:  Upgraded.
l/libsigsegv-2.14-x86_64-1.txz:  Upgraded.
l/pango-1.48.11-x86_64-1.txz:  Upgraded.
l/python-urllib3-1.26.8-x86_64-1.txz:  Upgraded.
n/getmail-6.18.6-x86_64-1.txz:  Upgraded.
n/iproute2-5.16.0-x86_64-1.txz:  Upgraded.
n/metamail-2.7-x86_64-10.txz:  Rebuilt.
  Fixed misnamed mimencode man page. Thanks to mbeninca.
n/mtr-0.95-x86_64-1.txz:  Upgraded.
n/socat-1.7.4.3-x86_64-1.txz:  Upgraded.
xap/freerdp-2.5.0-x86_64-1.txz:  Upgraded.
xap/gnuplot-5.4.3-x86_64-1.txz:  Upgraded.
xap/mozilla-firefox-91.5.0esr-x86_64-1.txz:  Upgraded.
  This release contains security fixes and improvements.
  For more information, see:
    https://www.mozilla.org/en-US/firefox/91.5.0/releasenotes/
    https://www.mozilla.org/security/advisories/mfsa2022-02/
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22746
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22743
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22742
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22741
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22740
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22738
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22737
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-4140
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22748
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22745
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22744
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22747
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22739
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22751
  (* Security fix *)
xap/mozilla-thunderbird-91.5.0-x86_64-1.txz:  Upgraded.
  This release contains security fixes and improvements.
  For more information, see:
    https://www.mozilla.org/en-US/thunderbird/91.5.0/releasenotes/
    https://www.mozilla.org/en-US/security/advisories/mfsa2022-03/
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22746
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22743
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22742
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22741
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22740
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22738
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22737
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-4140
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22748
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22745
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22744
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22747
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22739
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22751
  (* Security fix *)
xap/vim-gvim-8.2.4065-x86_64-1.txz:  Upgraded.
isolinux/initrd.img:  Rebuilt.
kernels/*:  Upgraded.
usb-and-pxe-installers/usbboot.img:  Rebuilt.
2022-01-13 08:59:55 +01:00
..
sources Thu Dec 16 21:34:10 UTC 2021 2021-12-17 08:59:54 +01:00
build_installer.sh Wed Jan 12 22:04:33 UTC 2022 2022-01-13 08:59:55 +01:00
ChangeLog.txt Wed Jan 12 22:04:33 UTC 2022 2022-01-13 08:59:55 +01:00
installer.SlackBuild Mon May 28 19:12:29 UTC 2018 2018-05-31 23:39:35 +02:00
module-blacklist Sat Feb 29 19:20:21 UTC 2020 2020-03-01 08:59:47 +01:00
README Mon May 28 19:12:29 UTC 2018 2018-05-31 23:39:35 +02:00
repack_installer.SlackBuild Sat Dec 7 00:22:04 UTC 2019 2019-12-07 08:59:52 +01:00

The build_installer.sh script
=============================

The 'build_installer.sh' script has the following characteristics:

* It works for all Slackware ARCH'es (tested with i586 and x86_64)
* It can be started from any directory, because resulting output files will
  be written to the current directory.  This means that the script directory
  can be on a read-only filesystem.
* It can update a pre-existing initrd.img file with kernel modules
  for a new kernel in one single command
* It can build a complete Slackware installer set (initrd.img , usbboot.img
  and pxelinux.cfg_default files) from scratch
* It can create a tarball containing a 'skeleton' for an initrd, which does
  not contain any ARCH specific binary code; only the directory structure,
  symlinks, configuration files and scripts.  This skeleton can be used as a
  base for creating a new initrd from scratch, in which case no previous
  initrd.img file needs to be present to obtain the scripts etc from.  The
  skeleton file will be called 'skeleton_initrd.tar.gz' and will be written to
  the current directory.

Command line parameters and detailed usage
==========================================

Running "./build_installer.sh -h" shows this message:

# ----------------------------------------------------------------------------#
Usage: build_installer.sh <parameters>
Parameters:
  -h|--help              Show this help
  -c|--compressmods      Compress the kernel modules inside the initrd.img
  -m|--multiple          Multiple initrd files (for SMP and non-SMP kernels)
  -n|--netmods           Add network modules to the initrd
  -nc|--no-compressmods  Do _not_ compress kernel modules
  -nm|--no-multiple      Do _not_ create multiple initrd files
  -nn|--no-netmods       Do _not_ add network modules to the initrd
  -np|--no-pcmciamods    Do _not_ add pcmcia modules to the initrd
  -nr|--no-recompile     Do _not_ recompile /re-add binaries
  -nu|--no-usbboot       Do _not_ create a USB boot image
  -p|--pcmciamods        Add pcmcia modules to the initrd
  -q|--quiet             Be (fairly) quiet during progress
  -r|--recompile         Recompile /re-add binaries (busybox,bash,dropbear as
                         well as any required bin/lib from Slackware packages)
  -s|--skeleton          Stop after creating a skeleton_initrd.tar.gz
                         (which only contains directories and scripts) 
  -u|--usbboot           Create a USB boot image
  -v|--verbose           Be (very) verbose during progress
  -I|--initrd <file>     Specify location of the initrd.img file
  -S|--slackroot <dir>   Specify location of the Slackware directory tree

Actions to be taken (ARCH=x86_64):
* Be (very) verbose during progress
* Recompile /re-add binaries
* Add network modules to the initrd
* Add pcmcia modules to the initrd
* Compress all kernel modules
* Do _not_ split the initrd
* Create a USB boot image

Use Slackware root: 
  /mnt/nfs/door/non-public/slackware-current
Use initrd file: 
  /mnt/nfs/door/non-public/slackware-current/isolinux/initrd.img

# Note: [1] If you want to build your own specific bash, busybox and dropbear #
#           instead of using the sources provided by the Slackware tree,      #
#           you should have these sources ready below                         #
#           ./sources/{bash,busybox,dropbear}                                 #
#           Delete the directory if you don't want to use it!                 #
#       [2] If you want to use your own _skeleton_ initrd (containing only    #
#           the directory layout plus all the scripts) you just make it       #
#           available as ./sources/initrd/skeleton_initrd.tar.gz              #
#                                                                             #
#          The script will look for the directory 'sources' first in your     #
#          working directory, and next in the script's directory (whatever is #
#          found in your working directory takes precedence).                 #
# ----------------------------------------------------------------------------#


The default actions performed by the script may be different for each ARCH -
they are parametrized in the script and can be modified by adding commandline
switches to the script's invocation.  The examples below use explicit
switches to make them are valid commands for all ARCHes.

Examples of  usage
==================

(1) Specify a different ARCH than the default, and point the script to a
    non-default root directory of the Slackware tree:

    # ARCH=i486 SLACKROOT=~ftp/pub/slackware-current ./build_installer.sh

(2) Slackware gets a new kernel, and the initrd needs to be updated with
    new modules:

    # ./build_installer.sh -n -p -nr -u

    This command adds updated net/pcmcia modules to the initrd.img (and removes
    old modules of course), will not recompile any of the binary software inside
    (notably bash, busybox and dropbear) and will create a USB boot image as
    the final action.  Output files are created in the current directory.

(3) Strip Slackware's existing initrd.img until it's skeleton remains:

    # ./build_installer.sh -s

    This command takes the file '$SLACKROOT/isolinux/initrd.img' and writes
    the resulting 'skeleton_initrd.tar.gz' to the current directory.
    NOTE: If you ever need to create a skeleton tarball, be sure to use a 32bit
          slackware tree's initrd.img file for this.  That way, the pathname
          'slackware' will be present in the tarball, and the build_installer.sh
          script will be able to translate that to an ARCH-specific directory
          name like for instance "slackware64" for the x86_64 platform.
          Even on x86_64 you can run this command:

          # ARCH=i486 SLACKROOT=/stuff/slackware32 ./build_installer.sh -s

          to use a 32bit initrd.img file as the source.

(4) Create a new initrd.img file from scratch, using a pre-existing skeleton
    initrd tarball, and my own busybox sources/patches (while using the sources
    for bash and dropbear that are present in the slackware directory tree):

    # mkdir -p ./sources/{busybox,initrd}
    # cp /home/slackware64/installer/skeleton_initrd.tar.gz ./sources/initrd/
    # cp -a my_busybox_stuff/* ./sources/busybox/
    # ARCH=x86_64 ./build_installer.sh -c -n -p -u 

    This will build initrd.img from the ground up, compiling binaries for bash,
    busybox and dropbear (used in the installer) from their sources and
    extracting library/binary files from several of the Slackware packages
    found in the slackware directory tree. Network and pcmcia kernel modules
    will be added and compressed (cutting down the client's RAM requirements
    with 9 MB during installation), and finally a USB bootable image named
    'usbboot.img' will be created.