From a4db2548600feb26f63d4f7d7944615132ee7853 Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Sun, 16 Apr 2017 15:24:55 +0200 Subject: Add new supported Live variant STUDIOWARE --- grub.tpl | 2 +- make_slackware_live.conf | 4 + make_slackware_live.sh | 51 +++++++++++- menu.tpl | 2 +- pkglists/studioware.conf | 14 ++++ pkglists/studioware.lst | 206 +++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 273 insertions(+), 6 deletions(-) create mode 100644 pkglists/studioware.conf create mode 100644 pkglists/studioware.lst diff --git a/grub.tpl b/grub.tpl index 65bca62..6c87a06 100644 --- a/grub.tpl +++ b/grub.tpl @@ -44,7 +44,7 @@ if loadfont $grubdir/theme/dejavusansmono12.pf2 ; then fi menuentry "Start @CDISTRO@@DIRSUFFIX@ @SL_VERSION@ @LIVEDE@ Live @VERSION@ ($sl_lang)" --hotkey b { - linux ($root)/boot/generic load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 kbd=$sl_kbd tz=$sl_tz locale=$sl_locale xkb=$sl_xkb + linux ($root)/boot/generic @KAPPEND@ load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 kbd=$sl_kbd tz=$sl_tz locale=$sl_locale xkb=$sl_xkb initrd ($root)/boot/initrd.img } diff --git a/make_slackware_live.conf b/make_slackware_live.conf index 6fec3e6..f9c98ac 100644 --- a/make_slackware_live.conf +++ b/make_slackware_live.conf @@ -83,6 +83,10 @@ # The ISO main directory: #LIVEMAIN="cinelerra" +# OPTIONAL: +# Custom kernel boot parameters for your Live OS: +#KAPPEND="threadirqs" + # OPTIONAL: # Add your own Live OS customizations to the function custom_config() : #custom_config() { diff --git a/make_slackware_live.sh b/make_slackware_live.sh index 73d0d90..1f8975d 100755 --- a/make_slackware_live.sh +++ b/make_slackware_live.sh @@ -94,7 +94,7 @@ DISTRO=${DISTRO:-"slackware"} LIVE_HOSTNAME=${LIVE_HOSTNAME:-"darkstar"} # What type of Live image? -# Choices are: SLACKWARE, XFCE, KDE4, PLASMA5, MATE, CINNAMON, DLACK +# Choices are: SLACKWARE, XFCE, KDE4, PLASMA5, MATE, CINNAMON, DLACK, STUDIOWARE LIVEDE=${LIVEDE:-"SLACKWARE"} # What runlevel to use if adding a DE like: XFCE, KDE4, PLASMA5 etc... @@ -186,10 +186,20 @@ SEQ_CIN="tagfile:a,ap,d,e,f,k,l,n,t,tcl,x,xap,xfce,y pkglist:slackextra,cinnamon # - each will become a squashfs module: SEQ_DLACK="tagfile:a,ap,d,e,f,k,l,n,t,tcl,x,xap pkglist:slackextra,systemd,dlackware" +# List of Slackware package series with StudioWare (full install): +# - each will become a squashfs module: +SEQ_STUDW="tagfile:a,ap,d,e,f,k,kde,l,n,t,tcl,x,xap,xfce,y pkglist:slackextra,studioware,slackpkgplus" + # 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:mmc-core:sdhci:usb-storage:hid:usbhid:i2c-hid:hid-generic:hid-apple: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:ntfs"} +# If any Live variant needs additional 'append' parameters, define them here: +case "$LIVEDE" in + STUDIOWARE) KAPPEND=${KAPPEND:-"threadirqs"} ;; + *) ;; +esac + # Firmware for wired network cards required for NFS root support: NETFIRMWARE="3com acenic adaptec bnx tigon e100 sun kaweth tr_smctr cxgb3" @@ -478,6 +488,7 @@ function gen_bootmenu() { -e "s/@LIVEDE@/$(echo $LIVEDE |sed 's/BASE//')/g" \ -e "s/@SL_VERSION@/$SL_VERSION/g" \ -e "s/@VERSION@/$VERSION/g" \ + -e "s/@KAPPEND@/$KAPPEND/g" \ > ${MENUROOTDIR}/vesamenu.cfg for LANCOD in $(cat ${LIVE_TOOLDIR}/languages |grep -Ev "(^ *#|^$)" |cut -d: -f1) @@ -513,6 +524,7 @@ EOL -e "s/@LIVEDE@/$(echo $LIVEDE |sed 's/BASE//')/g" \ -e "s/@SL_VERSION@/$SL_VERSION/g" \ -e "s/@VERSION@/$VERSION/g" \ + -e "s/@KAPPEND@/$KAPPEND/g" \ > ${MENUROOTDIR}/menu_${LANCOD}.cfg # Generate custom language selection submenu for selected keyboard: @@ -527,7 +539,7 @@ EOL fi cat <> ${MENUROOTDIR}/lang_${LANCOD}.cfg kernel /boot/generic - append initrd=/boot/initrd.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 kbd=$KBD tz=$(cat ${LIVE_TOOLDIR}/languages |grep "^$SUBCOD:" |cut -d: -f4) locale=$(cat ${LIVE_TOOLDIR}/languages |grep "^$SUBCOD:" |cut -d: -f5) xkb=$(cat ${LIVE_TOOLDIR}/languages |grep "^$SUBCOD:" |cut -d: -f6) + append initrd=/boot/initrd.img $KAPPEND load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 kbd=$KBD tz=$(cat ${LIVE_TOOLDIR}/languages |grep "^$SUBCOD:" |cut -d: -f4) locale=$(cat ${LIVE_TOOLDIR}/languages |grep "^$SUBCOD:" |cut -d: -f5) xkb=$(cat ${LIVE_TOOLDIR}/languages |grep "^$SUBCOD:" |cut -d: -f6) EOL done @@ -566,6 +578,7 @@ function gen_uefimenu() { -e "s/@LIVEDE@/$(echo $LIVEDE |sed 's/BASE//')/g" \ -e "s/@SL_VERSION@/$SL_VERSION/g" \ -e "s/@VERSION@/$VERSION/g" \ + -e "s/@KAPPEND@/$KAPPEND/g" \ > ${GRUBDIR}/grub.cfg # Set a default keyboard selection: @@ -968,6 +981,7 @@ case "$LIVEDE" in MATE) MSEQ="${SEQ_MSB}" ;; CINNAMON) MSEQ="${SEQ_CIN}" ;; DLACK) MSEQ="${SEQ_DLACK}" ;; + STUDIOWARE) MSEQ="${SEQ_STUDW}" ;; *) if [ -n "${SEQ_CUSTOM}" ]; then # Custom distribution with a predefined package list: MSEQ="${SEQ_CUSTOM}" @@ -1272,14 +1286,15 @@ ALLOW32BIT=off USEBL=1 WGETOPTS="--timeout=20 --tries=2" GREYLIST=on -PKGS_PRIORITY=( restricted alienbob ktown mate ) -REPOPLUS=( slackpkgplus restricted alienbob ktown mate ) +PKGS_PRIORITY=( restricted alienbob ktown mate studioware ) +REPOPLUS=( slackpkgplus restricted alienbob ktown mate studioware ) MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/ MIRRORPLUS['restricted']=http://bear.alienbase.nl/mirrors/people/alien/restricted_sbrepos/${SL_VERSION}/${SL_ARCH}/ MIRRORPLUS['alienbob']=http://bear.alienbase.nl/mirrors/people/alien/sbrepos/${SL_VERSION}/${SL_ARCH}/ #MIRRORPLUS['ktown_testing']=http://bear.alienbase.nl/mirrors/alien-kde/${SL_VERSION}/testing/${SL_ARCH}/ MIRRORPLUS['ktown']=http://bear.alienbase.nl/mirrors/alien-kde/${SL_VERSION}/latest/${SL_ARCH}/ MIRRORPLUS['mate']=http://slackware.uk/msb/${SL_VERSION}/latest/${SL_ARCH}/ +MIRRORPLUS['studioware']=http://slackware.uk/studioware/${SL_VERSION}/ EOPL fi @@ -1662,6 +1677,34 @@ if [ "$LIVEDE" = "DLACK" ]; then fi # End LIVEDE = DLACK +if [ "$LIVEDE" = "STUDIOWARE" ]; then + + # -------------------------------------------------------------------------- # + echo "-- Configuring STUDIOWARE." + # -------------------------------------------------------------------------- # + + # Create group and user for the Avahi service: + chroot ${LIVE_ROOTDIR} /usr/sbin/groupadd -g 214 avahi + chroot ${LIVE_ROOTDIR} /usr/sbin/useradd -c "Avahi Service Account" -u 214 -g 214 -d /dev/null -s /bin/false avahi + echo "avahi:$(openssl rand -base64 12)" | chroot ${LIVE_ROOTDIR} /usr/sbin/chpasswd + + # RT Scheduling and Locked Memory: + cat << "EOT" > ${LIVE_ROOTDIR}/etc/initscript +# Set umask to safe level: +umask 022 +# Disable core dumps: +ulimit -c 0 +# Allow unlimited size to be locked into memory: +ulimit -l unlimited +# Address issue of jackd failing to start with realtime scheduling: +ulimit -r 65 + +# Execute the program. +eval exec "$4" +EOT + +fi # End LIVEDE = STUDIOWARE + # You can define the function 'custom_config()' by uncommenting it in # the configuration file 'make_slackware_live.conf'. if type custom_config 1>/dev/null 2>/dev/null ; then diff --git a/menu.tpl b/menu.tpl index e7c051b..706009b 100644 --- a/menu.tpl +++ b/menu.tpl @@ -43,7 +43,7 @@ label live menu label Start @LIVEDE@ Live menu default kernel /boot/generic - append initrd=/boot/initrd.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 kbd=@KBD@ + append initrd=/boot/initrd.img @KAPPEND@ load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 kbd=@KBD@ text help @CDISTRO@@DIRSUFFIX@-@SL_VERSION@, kernel @KVER@. Add 'load=nvidia' to the commandline diff --git a/pkglists/studioware.conf b/pkglists/studioware.conf new file mode 100644 index 0000000..424cc7e --- /dev/null +++ b/pkglists/studioware.conf @@ -0,0 +1,14 @@ +# If 'SL_REPO_URL' is a rsync:// URL and 'SL_REPO' points to a non-existent +# or empty directory, then the content of 'SL_REPO_URL' will be rsync-ed +# to the local directory 'SL_REPO'. + +# Studioware only has packages for 64bit Slackware 14.2: +SL_REPO_URL="rsync://slackware.uk/studioware/14.2}" +SL_REPO="/var/cache/liveslak/studioware/14.2" + +# Package root directory: +SL_PKGROOT=${SL_REPO} + +# Patches root directory: +SL_PATCHROOT="" + diff --git a/pkglists/studioware.lst b/pkglists/studioware.lst new file mode 100644 index 0000000..4c3462c --- /dev/null +++ b/pkglists/studioware.lst @@ -0,0 +1,206 @@ +# +# Make sure to include 'openjdk' package (e.g. from alienbob repository) +# +DisplayCAL +GraphicsMagick +ORBit2 +SimpleSysexxer +a2jmidid +aeolus +amsynth +ardour +ardour5 +argyllcms +aubio +audacity +avahi +avidemux +bristol +calf +caps +chromaprint +cinelerra +clalsadrv +clearlooks-classic-themes +clthreads +clxclient +cppunit +darktable +dcraw +denemo +desktop-menus +digikam +drumgizmo +drumkv1 +dssi +dvdauthor +dvgrab +ecasound +ecm +eigen +enblend-enfuse +evince +faac +faad2 +ffmpeg +flickcurl +flowcanvas +fluidsynth +fluxbox-menus +fontforge +frei0r-plugins +frescobaldi +ganv +gavl +giada +gigedit +glade +gnome-common +gnome-mime-data +gnome-python-gconf +gnome-vfs +gnonlin +goocanvas +gst-plugins-jack +gst-python +gst1-plugins-bad +gtk-engines +gtkimageview +gtksourceview +guile1.8 +guitarix2 +hexter +hugin +hydrogen +iccprofiles +imlib2 +invada-studio-plugins +jack +jack-rack +jackbeat +jam +jamin +jansson +jokosher +json-glib +kaptain +kdenlive +ladish +ladspa_sdk +lame +lash +lcms26 +lensfun +libavc1394 +libbonobo +libdaemon +libdca +libdv +libgig +libglademm +libgnome +libgnomecanvas +libgnomecanvasmm +libiec61883 +libkface +libkgeomap4 +libkvkontakte +liblo +liblqr +liblrdf +liblscp +libpano13 +libpgf +libquicktime +libshout +libsigc++-legacy12 +libslv2 +libsmf +lilv +lilypond +linuxsampler +lmms +lv2 +meterbridge +mftrace +milkytracker +mixxx +mjpegtools +mlt +mscore +muse +mxml +non +ntk +numactl +numpy +openAV-ArtyFX +opencv +openjdk +openshot +patchage +pd +phat +photoprint +portaudio +portmidi +potrace +protobuf +pugixml +pyexiv2 +pygoocanvas +pysetuptools +python-ly +python-poppler-qt4 +pyxdg +qastools +qjackctl +qsampler +qsynth +qtractor +rakarrack +rapid-photo-downloader +raptor +raul +rawstudio +rosegarden +rt-tests +rtaudio +rtmidi +rubberband +samplv1 +scrollkeeper +separate+ +sepkg +seq24 +serd +set_rlimits +sooperlooper +sord +specimen +sratom +stops +studioware-scripts +suil +sunvox +swh-plugins +swh-plugins-lv2 +synthv1 +t1utils +tap-plugins +terminatorX +timemachine +ufraw +vamp-plugin-sdk +vigra +vkeybd +wxGTK +wxGTK3 +wxPython3 +x264 +xjadeo +xvidcore +yoshimi +zita-resampler +zynaddsubfx +zziplib -- cgit v1.2.3