diff options
Diffstat (limited to 'make_slackware_live.sh')
-rwxr-xr-x | make_slackware_live.sh | 43 |
1 files changed, 32 insertions, 11 deletions
diff --git a/make_slackware_live.sh b/make_slackware_live.sh index 0e79070..6083ff7 100755 --- a/make_slackware_live.sh +++ b/make_slackware_live.sh @@ -129,6 +129,9 @@ MARKER=${MARKER:-"SLACKWARELIVE"} # The filesystem label we will be giving our ISO: MEDIALABEL=${MEDIALABEL:-"LIVESLAK"} +# For x86_64 you can add multilib: +MULTILIB=${MULTILIB:-"NO"} + # The name of the directory used for storing persistence data: PERSISTENCE=${PERSISTENCE:-"persistence"} @@ -169,7 +172,7 @@ SEQ_CIN="tagfile:a,ap,d,e,f,k,l,n,t,tcl,x,xap,xfce,y pkglist:slackextra,cinnamon # List of kernel modules required for a live medium to boot properly; # Lots of HID modules added to support keyboard input for LUKS password entry: -KMODS=${KMODS:-"squashfs:overlay:loop:xhci-pci:ohci-pci:ehci-pci:xhci-hcd:uhci-hcd:ehci-hcd:usb-storage:hid:usbhid:hid-generic:hid-cherry:hid-logitech:hid-logitech-dj:hid-logitech-hidpp:hid-lenovo:hid-microsoft:jbd:mbcache:ext3:ext4:isofs:fat:nls_cp437:nls_iso8859-1:msdos:vfat"} +KMODS=${KMODS:-"squashfs:overlay:loop:xhci-pci:ohci-pci:ehci-pci:xhci-hcd:uhci-hcd:ehci-hcd:usb-storage:hid:usbhid:i2c-hid:hid-generic:hid-cherry:hid-logitech:hid-logitech-dj:hid-logitech-hidpp:hid-lenovo:hid-microsoft:hid_multitouch:jbd:mbcache:ext3:ext4:isofs:fat:nls_cp437:nls_iso8859-1:msdos:vfat"} # Firmware for wired network cards required for NFS root support: NETFIRMWARE="3com acenic adaptec bnx tigon e100 sun kaweth tr_smctr cxgb3" @@ -596,7 +599,7 @@ EOL # Action! # --------------------------------------------------------------------------- -while getopts "a:d:efhm:r:s:t:vz:HO:R:X" Option +while getopts "a:d:efhm:r:s:t:vz:H:MO:R:X" Option do case $Option in h ) @@ -629,6 +632,7 @@ do echo " -v Show debug/error output." echo " -z version Define your ${DISTRO^} version (default: $SL_VERSION)." echo " -H hostname Hostname of the Live OS (default: $LIVE_HOSTNAME)." + echo " -M Add multilib (x86_64 only)." echo " -O outfile Custom filename for the ISO." echo " -R runlevel Runlevel to boot into (default: $RUNLEVEL)." echo " -X Use xorriso instead of mkisofs/isohybrid." @@ -656,6 +660,8 @@ do ;; H ) LIVE_HOSTNAME="${OPTARG}" ;; + M ) MULTILIB="YES" + ;; O ) OUTFILE="${OPTARG}" OUTPUT="$(cd $(dirname "${OUTFILE}"); pwd)" ;; @@ -692,6 +698,11 @@ if [ $RUNLEVEL -ne 3 -a $RUNLEVEL -ne 4 ]; then exit 1 fi +if [ "$SL_ARCH" != "x86_64" -a "$MULTILIB" = "YES" ]; then + echo ">> Multilib is only supported on x86_64 architecture." + exit 1 +fi + # Directory suffix, arch dependent: if [ "$SL_ARCH" = "x86_64" ]; then DIRSUFFIX="64" @@ -800,8 +811,15 @@ case "$LIVEDE" in ;; esac +# Do we need to include multilib? +if [ "$MULTILIB" = "YES" ]; then + echo "-- Adding multilib." + MSEQ="${MSEQ} pkglist:multilib" +fi + # Do we need to create/include additional module(s) defined by a pkglist: if [ -n "$SEQ_ADDMOD" ]; then + echo "-- Adding ${SEQ_ADDMOD}." MSEQ="${MSEQ} pkglist:${SEQ_ADDMOD}" fi @@ -1266,15 +1284,18 @@ echo "-- Configuring KDE4." # Adjust some usability issues with the default desktop layout: if [ -f ${LIVE_ROOTDIR}/usr/share/apps/plasma/layout-templates/org.kde.plasma-desktop.defaultPanel/contents/layout.js ]; then - sed -i \ - -e '/showActivityManager/a konsole = panel.addWidget("quicklaunch")' \ - -e '/showActivityManager/a dolphin = panel.addWidget("quicklaunch")' \ - -e '/showActivityManager/a firefox = panel.addWidget("quicklaunch")' \ - -e '$a firefox.writeConfig("iconUrls","file:///usr/share/applications/mozilla-firefox.desktop")' \ - -e '$a dolphin.writeConfig("iconUrls","file:////usr/share/applications/kde4/dolphin.desktop")' \ - -e '$a konsole.writeConfig("iconUrls","file:///usr/share/applications/kde4/konsole.desktop")' \ - -e '/tasks.writeConfig/d' \ - ${LIVE_ROOTDIR}/usr/share/apps/plasma/layout-templates/org.kde.plasma-desktop.defaultPanel/contents/layout.js + # Only apply to an unmodified file (Slackware 14.2 already implements it): + if grep -q 'tasks.writeConfig' ${LIVE_ROOTDIR}/usr/share/apps/plasma/layout-templates/org.kde.plasma-desktop.defaultPanel/contents/layout.js ]; then + sed -i \ + -e '/showActivityManager/a konsole = panel.addWidget("quicklaunch")' \ + -e '/showActivityManager/a dolphin = panel.addWidget("quicklaunch")' \ + -e '/showActivityManager/a firefox = panel.addWidget("quicklaunch")' \ + -e '$a firefox.writeConfig("iconUrls","file:///usr/share/applications/mozilla-firefox.desktop")' \ + -e '$a dolphin.writeConfig("iconUrls","file:////usr/share/applications/kde4/dolphin.desktop")' \ + -e '$a konsole.writeConfig("iconUrls","file:///usr/share/applications/kde4/konsole.desktop")' \ + -e '/tasks.writeConfig/d' \ + ${LIVE_ROOTDIR}/usr/share/apps/plasma/layout-templates/org.kde.plasma-desktop.defaultPanel/contents/layout.js + fi fi # Prepare some KDE4 defaults for the 'live' user and any new users. |