[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
Next revisionBoth sides next revision
slackware:liveslak [2018/11/04 13:55 (UTC)] – Updates to sync it with the git version. alienbobslackware:liveslak [2020/12/06 19:49 (UTC)] – Update Wiki to the liveslak documentation for the 1.3.8 release. alienbob
Line 32: Line 32:
  
 The "liveslak" scripts can generate a variety of Slackware flavors: The "liveslak" scripts can generate a variety of Slackware flavors:
-  - a complete 64bit Slackware-current Live Edition (in a 3.GB ISO);+  - a complete 64bit Slackware-current Live Edition (in a 4.GB ISO);
   - a slimmed-down XFCE ISO (700 MB) with XDM as the graphical login manager.  It fits on a CDROM medium or a 1 GB USB stick;   - a slimmed-down XFCE ISO (700 MB) with XDM as the graphical login manager.  It fits on a CDROM medium or a 1 GB USB stick;
-  -  a ISO image (4.GB) of Slackware64-current containing Plasma 5 instead of KDE 4, with an addition of several other packages from the alienBOB repositories: vlc, libreoffice, calibre, qbittorrent, ffmpeg, chromium, openjdkveracrypt+  - a ISO image (4.GB) of Slackware64-current containing Plasma 5 instead of KDE 4
-  - a Mate variant (2.2 GB) where KDE 4 has been replaced by Mate (a Gnome 2 fork);+  - a Digital Audio Workstation (DAW) based on a custom Slackware package set plus Plasma5containing a rich software collection for musiciansproducers and live performance artists
 +  - a Mate variant (3.2 GB) where KDE 4 has been replaced by Mate (a Gnome 2 fork);
   - a Cinnamon flavour (a fork of the Gnome 3 Shell replacing Slackware's KDE 4).   - a Cinnamon flavour (a fork of the Gnome 3 Shell replacing Slackware's KDE 4).
   - a [[https://github.com/Dlackware/dlackware|Dlackware]] variant, which is Gnome3 + PAM + systemd on top of Slackware and stripped of KDE4.   - a [[https://github.com/Dlackware/dlackware|Dlackware]] variant, which is Gnome3 + PAM + systemd on top of Slackware and stripped of KDE4.
Line 49: Line 50:
   * Darren's http://slackware.uk/people/alien-slacklive/ (%%rsync://slackware.uk/people/alien-slacklive/%%)   * Darren's http://slackware.uk/people/alien-slacklive/ (%%rsync://slackware.uk/people/alien-slacklive/%%)
   * Willy's http://repo.ukdw.ac.id/slackware-live/   * Willy's http://repo.ukdw.ac.id/slackware-live/
-  * Ryan's https://seattleslack.ryanpcmcquen.org/mirrors/slackware-live/ 
   * Shasta's http://ftp.slackware.pl/pub/slackware-live/ (%%rsync://ftp.slackware.pl/slackware-live/%%)   * Shasta's http://ftp.slackware.pl/pub/slackware-live/ (%%rsync://ftp.slackware.pl/slackware-live/%%)
  
Line 75: Line 75:
  
 Syslinux shows a graphical boot menu with a nice Slackware-themed background and several options: Syslinux shows a graphical boot menu with a nice Slackware-themed background and several options:
-  * Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)+  * Start (SLACKWARE | PLASMA5 | XFCE | MATE | DAW) Live (depending on which of the ISOs you boot)
   * Non-US Keyboard selection   * Non-US Keyboard selection
   * Non-US Language selection   * Non-US Language selection
Line 89: Line 89:
 On UEFI computers, Grub2 handles the boot and it will show a menu similar (and similarly themed) to the Syslinux menu: On UEFI computers, Grub2 handles the boot and it will show a menu similar (and similarly themed) to the Syslinux menu:
  
-  * Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)+  * Start (SLACKWARE | PLASMA5 | XFCE | MATE | DAW) Live (depending on which of the ISOs you boot)
   * Non-US Keyboard selection   * Non-US Keyboard selection
   * Non-US Language selection   * Non-US Language selection
Line 111: Line 111:
   -c|--crypt size|perc       Add a LUKS encrypted /home ; parameter is the   -c|--crypt size|perc       Add a LUKS encrypted /home ; parameter is the
                              requested size of the container in kB, MB, GB,                              requested size of the container in kB, MB, GB,
-                             or as a percentage of free space. +                             or as a percentage of free space 
-                             Examples: '-c 125M', '-c 1.3G', '-c 20%'.+                             (integer numbers only)
 +                             Examples: '-c 125M', '-c 2G', '-c 20%'.
   -d|--devices               List removable devices on this computer.   -d|--devices               List removable devices on this computer.
   -f|--force                 Ignore most warnings (except the back-out).   -f|--force                 Ignore most warnings (except the back-out).
Line 129: Line 130:
                              Use a LUKS-encrypted 'persistence' file instead                              Use a LUKS-encrypted 'persistence' file instead
                              of a directory (for use on FAT filesystem).                              of a directory (for use on FAT filesystem).
 +                             Format for size/percentage is the same
 +                             as for the '-c' parameter.
   -P|--persistfile           Use an unencrypted 'persistence' file instead   -P|--persistfile           Use an unencrypted 'persistence' file instead
                              of a directory (for use on FAT filesystem).                              of a directory (for use on FAT filesystem).
Line 146: Line 149:
  
 You might have noticed that the "-P" parameter does not accept a size parameter.  This is because the unencrypted container file is created as a 'sparse' file that starts at zero size and is allowed to grow dynmically to a maximum of 90% of the initial free space on the Linux partition of the USB stick. You might have noticed that the "-P" parameter does not accept a size parameter.  This is because the unencrypted container file is created as a 'sparse' file that starts at zero size and is allowed to grow dynmically to a maximum of 90% of the initial free space on the Linux partition of the USB stick.
 +
 +
 +==== Using the Live OS to install Slackware to hard disk ====
 +
 +All variants of Slackware Live Edition contain a script "setup2hd", a tweaked version of the regular Slackware setup program.
 +The "setup2hd" script supports regular Slackware network installations. In addition it allows you to install the Slackware release on which the Live OS is based, to the computer's local hard disk.  You must boot the Live OS first, and then start ''setup2hd'' either in an X Terminal in your graphical Desktop Environment (aka Runlevel 4), or from the console in Runlevel 3.  The fact that you can start "setup2hd" from a graphical terminal means that during installation, you can continue browsing, listening to music, watching video, reading an e-book or whatever else makes you pass the time.
 +
 +The "setup2hd" script has some capabilities that the original Slackware 'setup' lacks:
 +  * It will launch fdisk/gdisk if you forgot to create Linux partitions in advance;
 +  * It will allow you to create a regular user account and set its password;
 +  * It will prompt you to set the root password in a graphical dialog.
 +
  
 ==== Updating the kernel (and more) on a USB stick ==== ==== Updating the kernel (and more) on a USB stick ====
Line 343: Line 358:
   OS parameters; or specify 'write' to write current OS parameters   OS parameters; or specify 'write' to write current OS parameters
   to disk.   to disk.
 +
 +domain=your_custom_domain =>
 +  Specify a custom domain name.  Defaults to 'example.net'.
  
 hostname=your_custom_hostname[,qualifier] => hostname=your_custom_hostname[,qualifier] =>
Line 387: Line 405:
  
 toram => toram =>
-  copy the OS from the media to to RAM before running it.+  Copy the OS from the media to to RAM before running it.
   You can remove the boot media after booting.   You can remove the boot media after booting.
 +
 +toram=all =>
 +  Prevent writes to disk since we are supposed to run from RAM;
 +  equivalent to parameter "toram".
 +
 +toram=os =>
 +  Load OS modules into RAM, but write persistent data to USB.
  
 === Troubleshooting === === Troubleshooting ===
Line 473: Line 498:
     * the desktop environment is pre-configured for first use,     * the desktop environment is pre-configured for first use,
     * the liveslak scripts "makemod", "iso2usb.sh" and "upslak.sh" are copied to "/usr/local/sbin/" in the ISO for your convenience,     * the liveslak scripts "makemod", "iso2usb.sh" and "upslak.sh" are copied to "/usr/local/sbin/" in the ISO for your convenience,
-    * if the Live system contains a huge kernel (all ISO variants except XFCE) then the "setup2hd" script and the Slackware installer files are copied to "/usr/local/sbin" and "/usr/share/liveslak" respectively,+    * the "setup2hd" script and the Slackware installer files are copied to "/usr/local/sbin" and "/usr/share/liveslak" respectively.
     * slackpkg is configured,     * slackpkg is configured,
     * a locate database is created,     * a locate database is created,
Line 561: Line 586:
 The fourth script: The fourth script:
  
-The "setup2hd" script enables you to install the running Live OS to the computer's local hard disk.  The "setup2hd" is a modified Slackware installer, so you will be comfortable with the process.  There is no 'SOURCE' selection because the script knows where to find the squashfs modules.  After you select the target partition(s), every active module of the Live OS variant (SLACKWARE, PLASMA5, MATE, ...) is extracted to the hard drive.  After extraction has completed, the script summarizes how many modules have been extracted.  It will also show an example command to extract any remaining inactive or disabled modules manually.  The final step in the installation is again the stock Slackware installer which kicks off the Slackware configuration scripts.+The "setup2hd" script is a modified Slackware installer, so you will be comfortable with the process.  The 'SOURCE' section offers two types of choices:  a regular Slackware network installation using a NFS, HTTP, FTP or Samba server, as well as a choice of installing the Live OS which you are running. The script knows where to find the squashfs modules, so the "Install Live OS" selection will not prompt further inputs. 
 +  * The Slackware network installation is identical to that of the official Slackware installation medium. 
 +  * If you chose to install the Live OS, then after you select the target partition(s), every active module of the Live OS variant (SLACKWARE, PLASMA5, MATE, ...) is extracted to the hard drive.  After extraction has completed, the script summarizes how many modules have been extracted.  It will also show an example command to extract any remaining inactive or disabled modules manually.  The final step in the installation is again the stock Slackware installer which kicks off the Slackware configuration scripts.
  
  
Line 650: Line 677:
   * README.txt - this documentation.   * README.txt - this documentation.
   * addons/ - squashfs modules placed in this directory will be loaded into the Live filesystem when the OS boots.   * addons/ - squashfs modules placed in this directory will be loaded into the Live filesystem when the OS boots.
 +  * contrib/ - contributed scripts that are not used directly for the creation and usage of a Live ISO.
   * graphics/ - squashfs modules for proprietary GPU support (Nvidia) can be placed here. The module(s) will be copied to addons/ by the "make_slackware_live.sh" script for any Live Desktop Environment (except pure Slackware) that might profit from proprietary driver support.   * graphics/ - squashfs modules for proprietary GPU support (Nvidia) can be placed here. The module(s) will be copied to addons/ by the "make_slackware_live.sh" script for any Live Desktop Environment (except pure Slackware) that might profit from proprietary driver support.
   * local64/ , local/ - these directories can contain Slackware packages considered 'local' i.e. not belonging to any repository.  The package(s) will be converted to squashfs module(s) by the "make_slackware_live.sh" script, copied to the "addons/" subdirectory in the ISO and loaded into the Live filesystem when the OS boots.   * local64/ , local/ - these directories can contain Slackware packages considered 'local' i.e. not belonging to any repository.  The package(s) will be converted to squashfs module(s) by the "make_slackware_live.sh" script, copied to the "addons/" subdirectory in the ISO and loaded into the Live filesystem when the OS boots.
 +  * media/ - scripts and images that are specific to a Live variant.
   * optional/ - squashfs modules placed in this directory will not automatically be loaded into the Live filesystem when the OS boots.  You need to pass "load=[mod]" boot parameter to load any of these.   * optional/ - squashfs modules placed in this directory will not automatically be loaded into the Live filesystem when the OS boots.  You need to pass "load=[mod]" boot parameter to load any of these.
 +  * patches/ - patches for Slackware scripts that need modifications to run inside a Live OS.
   * pkglists/ - definition files of 3rd party repositories (*.conf) and the package lists to be used from those repositories (*.lst) must be placed in this directory.   * pkglists/ - definition files of 3rd party repositories (*.conf) and the package lists to be used from those repositories (*.lst) must be placed in this directory.
 +  * setup2hd/ - script templates used by the ''setup2hd'' disk installer.
   * skel/ - contains compressed tarballs (whose filenames must match wildcard "skel*.txz"). These files will be extracted to the "/etc/skel" directory in the Live filesystem.   * skel/ - contains compressed tarballs (whose filenames must match wildcard "skel*.txz"). These files will be extracted to the "/etc/skel" directory in the Live filesystem.
   * syslinux/  - contains the skeleton for boot support on BIOS computers.  Some of its files are dynamically generated by the "make_slackware_live.sh" script.   * syslinux/  - contains the skeleton for boot support on BIOS computers.  Some of its files are dynamically generated by the "make_slackware_live.sh" script.
Line 676: Line 707:
   * pxeserver.tpl - template to generate the script that starts a PXE server allowing other computers to boot Slackware Live over the network.   * pxeserver.tpl - template to generate the script that starts a PXE server allowing other computers to boot Slackware Live over the network.
   * setup2hd.tpl  - template to generate the script you use to install your Slackware Live to a harddisk.   * setup2hd.tpl  - template to generate the script you use to install your Slackware Live to a harddisk.
-  * setup2hd.local - here a developer of a custom Live OS can override the default post-installation routine by (re-)defining the function "live_post_install()" in the ''setup2hd'' script.+  * setup2hd.local.tpl - here a developer of a custom Live OS can override the default post-installation routine by (re-)defining the function "live_post_install()" in the ''setup2hd'' script
 +  * upslak.sh - a script which allows you to tweak the content of a USB Live stick.
  
  
Line 702: Line 734:
  -r series[,series] Refresh only one or a few package series.  -r series[,series] Refresh only one or a few package series.
  -s slackrepo_dir   Directory containing Slackware repository.  -s slackrepo_dir   Directory containing Slackware repository.
- -t <doc|mandoc>    Trim the ISO (remove man and/or doc).+ -t <none|doc|mandoc|bloat> 
 +                    Trim the ISO (remove man and/or doc and/or bloat).
  -v                 Show debug/error output.  -v                 Show debug/error output.
  -z version         Define your Slackware version (default: current).  -z version         Define your Slackware version (default: current).
Line 729: Line 762:
  
  
-==== Using the Customization Feature of the Live OS ====+==== Using the Customization Features of the Live OS ====
  
 +
 +=== Master configuration file ===
  
 You can create your own custom Live OS by changing its characteristics in the configuration file "''make_slackware_live.conf''". You can create your own custom Live OS by changing its characteristics in the configuration file "''make_slackware_live.conf''".
 Among the things you can change are: Among the things you can change are:
-  * The name of the Desktop variant (the script itself knows "//SLACKWARE//", "//PLASMA5//", "//XFCE//", "//MATE//", "//CINNAMON//", "//STUDIOWARE//" and  "//DLACK//"),+  * The name of the Desktop variant (the script itself knows "//SLACKWARE//", "//PLASMA5//", "//DAW//", "//XFCE//", "//MATE//", "//CINNAMON//", "//STUDIOWARE//" and  "//DLACK//"),
   * The list(s) of packages used for your custom distribution,   * The list(s) of packages used for your custom distribution,
 +  * The full name of the user (by default that is "//Slackware Live User//"),
   * The name of the useraccount (by default that is "//live//"),   * The name of the useraccount (by default that is "//live//"),
   * The name of the distribution (by default that is "//slackware//"),   * The name of the distribution (by default that is "//slackware//"),
Line 783: Line 819:
 #} #}
 </code> </code>
 +
 +=== Custom background images ===
 +
 +The Plasma5 based Live variants allow customization of the background image used for the login greeter, the desktop wallpaper and the lock screen. The image you want to use for this purpose, must have a 16:9 aspect ratio and its dimensions should at least be 1920x1080 pixels. You  must store the custom image inside the liveslak source tree: in the subdirectory ''./media/<variant>/bg/'' where "<variant>" is the lower-case name of the Live variant (variant 'PLASMA5' equals directory 'plasma5', 'DAW' becomes 'daw', etc).
 +
 +The "make_slackware_live.sh" script will look there for a file named either "background.jpg" or "background.png". If you want, that file can be a symlink to the actual bitmap file. The image will be converted into a set of wallpaper images of different aspect ratios and sizes. The different aspect ratios like 16:9, 16:10 and 4:3 will be achieved by cropping the images if needed, to avoid distortion. The image set will be installed as a Plasma5 wallpaper called "Slackware Live", and configured to be the default Live OS background.
 +
 +
 ==== Internals of Slackware Live Edition ==== ==== Internals of Slackware Live Edition ====
  
Line 913: Line 957:
 ====== Sources ====== ====== Sources ======
 <!-- If you copy information from another source, then specify that source --> <!-- If you copy information from another source, then specify that source -->
-  * Original source: [[http://git.alienbase.nl/liveslak/tree/README.txt]]+  * Original source: [[https://git.slackware.nl/liveslak/tree/README.txt]] 
 +  * Project landing page: [[https://liveslak.org/]]
 <!-- Authors are allowed to give credit to themselves! --> <!-- Authors are allowed to give credit to themselves! -->
   * Originally written by [[wiki:user:alienbob | Eric Hameleers]]   * Originally written by [[wiki:user:alienbob | Eric Hameleers]]
-<!-- * Contrbutions by [[wiki:user:yyy | User Y]] -->+<!-- * Contributions by [[wiki:user:yyy | User Y]] -->
  
 <!-- Please do not modify anything below, except adding new tags.--> <!-- Please do not modify anything below, except adding new tags.-->
 <!-- You must also remove the tag-word "template" below. Otherwise your page will not show up in the Table of Contents --> <!-- You must also remove the tag-word "template" below. Otherwise your page will not show up in the Table of Contents -->
-{{tag>slackware live author_alienbob}}+{{tag>slackware live overlayfs squashfs author_alienbob}}
 slackware:liveslak ()