[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
slackwarearm:slackwareinstaller [2023/09/28 08:12 (UTC)] mozesslackwarearm:slackwareinstaller [2023/11/21 15:46 (UTC)] (current) mozes
Line 18: Line 18:
  
  
-=== Naked Installer: Generic Initial RAM Disk ===+==== Naked Installer: Generic Initial RAM Disk ====
  
 The AiO and Bare Installer packages target specific Hardware Models and enable booting from the SD card directly into the Slackware Installer. The AiO and Bare Installer packages target specific Hardware Models and enable booting from the SD card directly into the Slackware Installer.
  
-The [[https://slackware.uk/slackwarearm/slackwareaarch64-current/installer/|Naked Installer]] is not packaged for any specific Hardware Model.+The [[https://slackware.uk/slackwarearm/slackwareaarch64-current/installer/|Naked Installer]] is not packaged for any specific Hardware Model.  The other Installer packages (Bare & AiO) contain this Naked image unmodified within a file system on within the disk image. 
 It's usually used to develop support for (presently) unsupported Hardware Models. It's usually used to develop support for (presently) unsupported Hardware Models.
 //Installation within QEMU uses this Installer package.// //Installation within QEMU uses this Installer package.//
 +
 +This Installer image can also be used to boot a Hardware Model [[https://slackware.uk/slackwarearm/slackwareaarch64-current/installer/tftp/|over TFTP]].
  
 The Naked Installer initrd image is used (unmodified) within the Bare Installers. The Naked Installer initrd image is used (unmodified) within the Bare Installers.
  
-Created by the Slackware ARM [[https://slackware.uk/slackwarearm/slackwareaarch64-current/source/k/kernel.SlackBuild|Kernel build process]].+Created by ^ Refresh/update cadence ^ 
 +Slackware ARM [[https://slackware.uk/slackwarearm/slackwareaarch64-current/source/k/kernel.SlackBuild|Kernel build process]] | Coupled to Kernel package upgrade (typically fortnightly or more frequently for -current) |
  
-=== Bare Installers for Supported Hardware Models ===+ 
 + 
 +==== Bare Installers for Supported Hardware Models ====
  
 [[https://slackware.uk/slackwarearm/platform/aarch64/bootware/installer/|Bare Installers]] are identical to the AiO Installers, except that they don't contain the package set. [[https://slackware.uk/slackwarearm/platform/aarch64/bootware/installer/|Bare Installers]] are identical to the AiO Installers, except that they don't contain the package set.
Line 38: Line 44:
 Each image is packaged for a particular Hardware Model. Each image is packaged for a particular Hardware Model.
  
-They are updated more frequently, with every kernel update (typically once every 2 weeks for -current).+These Installers package the //Naked Installer// in a format bootable on a specific set of supported Hardware Models.
  
 Users may choose to use the Bare Installers when: Users may choose to use the Bare Installers when:
Line 45: Line 51:
   * The user already has the Slackware ARM repository locally and does not want to download the larger AiO image.   * The user already has the Slackware ARM repository locally and does not want to download the larger AiO image.
  
 +^ Created by ^ Refresh/update cadence ^
 +| [[https://slackware.uk/slackwarearm/platform/aarch64/bootware/src/sdcards.build|Installer Image building system]] | Coupled to Kernel package upgrade (typically fortnightly or more frequently for -current) |
  
-Created by the [[https://slackware.uk/slackwarearm/platform/aarch64/bootware/src/sdcards.build|Installer Image building system]]. These Installers package the //Naked Installer// in a format bootable on a specific set of supported Hardware Models. 
  
-=== All in One (AiO) Installer for Supported Hardware Models ===+==== All in One (AiO) Installer for Supported Hardware Models ====
  
-[[https://slackware.uk/slackwarearm/platform/aarch64/bootware/installer-aio/|AiO (All in One)]]: This Installer package is what is used within the [[https://docs.slackware.com/slackwarearm:inst|Installation guides.]]+The All in One Installers are modified //Bare Installer// images, including an additional partition containing the Slackware packages/installation media. 
 + 
 +The Slackware package set are included within the downloadable image.  This enables offline installation and the easiest installation option. 
 +This mimics a stable release of Slackware - a frozen set of packages are installed, and users upgrade (and continue to update) the OS using ''slackpkg'' post installation. 
 + 
 +The [[https://slackware.uk/slackwarearm/platform/aarch64/bootware/installer-aio/|AiO (All in One) Installers]] are the prescribed installation package, as laid out in the [[https://docs.slackware.com/slackwarearm:inst|Installation guides]]
  
-The Slackware package set are included within the downloadable image.  This enables offline installation. 
-The Installer image is typically refreshed once a month.  Users will use ''slackpkg'' to update the OS after the installation. 
  
 The AiO images are approximately 5GB (compressed) in size. The AiO images are approximately 5GB (compressed) in size.
 Each image is packaged for a particular Hardware Model. Each image is packaged for a particular Hardware Model.
  
-All users are encouraged to use the AiO Installers for supported Hardware Models.+**All users are encouraged to use the AiO Installers for supported Hardware Models.**
  
-Created by the All in One build system (//currently unavailable//) These are modified //Bare Installer// images, including an additional partition containing the Slackware packages/installation media.+ 
 +Created by ^ Refresh/update cadence ^ 
 +| [[https://slackware.uk/slackwarearm/platform/aarch64/bootware/src/|All in One build system (not presently available)]] | Typically once a month |
  
  
Line 72: Line 84:
  
 <note tip>If logging in over SSH, the root password is empty by default.  To set an Installer root password, you can mount the Bare or AiO Installer image and edit ''/boot/extlinux/extlinux.conf'' Use the Kernel cmdline operator ''instrootpw'' parameter (see inline documentation within the extlinux.conf file)</note> <note tip>If logging in over SSH, the root password is empty by default.  To set an Installer root password, you can mount the Bare or AiO Installer image and edit ''/boot/extlinux/extlinux.conf'' Use the Kernel cmdline operator ''instrootpw'' parameter (see inline documentation within the extlinux.conf file)</note>
 +
 +
 +
 +====== Slackware Installer: Post Installation scripts ======
 +
 +The Slackware ARM installer supports an additional set of post installation scripts which help with the the various setup and configuration options.
 +
 +====  Slackware ARM post installation script execution flow ====
 + 
 +=== Primary Launcher ===
 +   
 +<code>
 +# Script: /usr/lib/setup/armedslack-run-postinstall-scripts
 +# Sourced from: /usr/lib/setup/SeTconfig
 +# Runs immediately prior to running the regular non-ARM scripts
 +</code>
 +
 +Runs everything within: ''/usr/lib/setup/armedslack-postinstall-scripts''
 +
 +Example:
 +<code>
 +$ ls /usr/lib/setup/armedslack-postinstall-scripts/
 +000-env-postinst-setup  001-hwm-os-configure*  os-initrd-mgr*  removeinstaller*  setconsole*
 +</code>
 +
 +They will be executed in order.
 +
 +==== Examining some post install scripts ====
 +
 +=== Post install scripts: Hardware Model Helper scripts ===
 +
 +Hardware Model configuration helper script: ''/usr/lib/setup/armedslack-postinstall-scripts/001-hwm-os-configure''
 +
 +This script executes everything found within: ''/usr/share/hwm-configure/platform/aarch64/installer/helper.scr/''
 +
 +<code>
 +for platformscr in hwm-configure/platform/aarch64/installer/helper.scr/*; do echo $platformscr;done
 +hwm-configure/platform/aarch64/installer/helper.scr/000-grub-configure
 +hwm-configure/platform/aarch64/installer/helper.scr/rk3399
 +hwm-configure/platform/aarch64/installer/helper.scr/rpi
 +</code>
 +
 +<code>
 +# Script......: /usr/share/hwm-configure/platform/aarch64/installer/helper.scr/rpi
 +# Called from : /usr/lib/setup/armedslack-hwm-os-configure
 +</code>
 +
 +Fixes up the extlinux.conf for RPis to enable FDT within the RPi native BL.
 +Dependency: hwm-configure/platform/aarch64/installer/helper.scr/u-boot-configure
 +As this creates the u-boot extlinux.conf config.
 +
 +This will run in the correct order due to the file naming scheme.
 +
 +
 +=== Post Install scripts: Remove Installer ===
 +   
 +<code>
 +/usr/lib/setup/armedslack-postinstall-scripts/removeinstaller
 +# Called from: /usr/lib/setup/armedslack-run-postinstall-scripts
 +</code>
 +
 +** Notes: this needs to run AFTER the u-boot-configure script due to it removing the OS boot stanza template.
 +
 +It will run afterwards due to the ordering provided by the file naming scheme
 +within ''/usr/lib/setup/armedslack-run-postinstall-scripts''
 +
 +
 slackwarearm:slackwareinstaller ()