From 83d02d4bc4c483c77d8d482dbfca81ff0a75eb76 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Tue, 29 Nov 2022 01:30:25 -0500 Subject: [PATCH] Switch all live media variants to use livesys-scripts Reference: https://fedoraproject.org/wiki/Changes/ModernizeLiveMedia --- custom/qa-test-day.ks | 2 +- fedora-live-base.ks | 223 +------------------------------ fedora-live-cinnamon.ks | 28 +--- fedora-live-design_suite.ks | 4 +- fedora-live-i3.ks | 35 +---- fedora-live-jam_kde.ks | 12 +- fedora-live-kde-base.ks | 84 +----------- fedora-live-lxde.ks | 42 +----- fedora-live-lxqt.ks | 38 +----- fedora-live-mate_compiz.ks | 39 +----- fedora-live-robotics.ks | 23 +--- fedora-live-security.ks | 47 +------ fedora-live-soas.ks | 34 +---- fedora-live-workstation.ks | 86 +----------- fedora-live-xfce.ks | 50 +------ l10n/fedora-livecd-lxde-ja_JP.ks | 2 +- 16 files changed, 40 insertions(+), 709 deletions(-) diff --git a/custom/qa-test-day.ks b/custom/qa-test-day.ks index 9c44096..d4d1bf0 100644 --- a/custom/qa-test-day.ks +++ b/custom/qa-test-day.ks @@ -111,7 +111,7 @@ firefox # "EOF" is quoted so that variables are not expanded. Search for "here-document" # in man bash. -cat >> /etc/rc.d/init.d/livesys << "EOF" +cat >> /var/lib/livesys/livesys-session-extra << "EOF" # Create Test Day welcome screen # Note that shebang must be written this way, else it is considered as comment diff --git a/fedora-live-base.ks b/fedora-live-base.ks index 212fda3..7aa09ad 100644 --- a/fedora-live-base.ks +++ b/fedora-live-base.ks @@ -49,225 +49,14 @@ dracut-live # anaconda needs the locales available to run for different locales glibc-all-langpacks -# no longer in @core since 2018-10, but needed for livesys script -initscripts -chkconfig +# provide the livesys scripts +livesys-scripts %end %post -# FIXME: it'd be better to get this installed from a package -cat > /etc/rc.d/init.d/livesys << EOF -#!/bin/bash -# -# live: Init script for live image -# -# chkconfig: 345 00 99 -# description: Init script for live image. -### BEGIN INIT INFO -# X-Start-Before: display-manager chronyd -### END INIT INFO - -. /etc/init.d/functions - -if ! strstr "\`cat /proc/cmdline\`" rd.live.image || [ "\$1" != "start" ]; then - exit 0 -fi - -if [ -e /.liveimg-configured ] ; then - configdone=1 -fi - -exists() { - which \$1 >/dev/null 2>&1 || return - \$* -} - -livedir="LiveOS" -for arg in \`cat /proc/cmdline\` ; do - if [ "\${arg##rd.live.dir=}" != "\${arg}" ]; then - livedir=\${arg##rd.live.dir=} - continue - fi - if [ "\${arg##live_dir=}" != "\${arg}" ]; then - livedir=\${arg##live_dir=} - fi -done - -# enable swapfile if it exists -if ! strstr "\`cat /proc/cmdline\`" noswap && [ -f /run/initramfs/live/\${livedir}/swap.img ] ; then - action "Enabling swap file" swapon /run/initramfs/live/\${livedir}/swap.img -fi - -mountPersistentHome() { - # support label/uuid - if [ "\${homedev##LABEL=}" != "\${homedev}" -o "\${homedev##UUID=}" != "\${homedev}" ]; then - homedev=\`/sbin/blkid -o device -t "\$homedev"\` - fi - - # if we're given a file rather than a blockdev, loopback it - if [ "\${homedev##mtd}" != "\${homedev}" ]; then - # mtd devs don't have a block device but get magic-mounted with -t jffs2 - mountopts="-t jffs2" - elif [ ! -b "\$homedev" ]; then - loopdev=\`losetup -f\` - if [ "\${homedev##/run/initramfs/live}" != "\${homedev}" ]; then - action "Remounting live store r/w" mount -o remount,rw /run/initramfs/live - fi - losetup \$loopdev \$homedev - homedev=\$loopdev - fi - - # if it's encrypted, we need to unlock it - if [ "\$(/sbin/blkid -s TYPE -o value \$homedev 2>/dev/null)" = "crypto_LUKS" ]; then - echo - echo "Setting up encrypted /home device" - plymouth ask-for-password --command="cryptsetup luksOpen \$homedev EncHome" - homedev=/dev/mapper/EncHome - fi - - # and finally do the mount - mount \$mountopts \$homedev /home - # if we have /home under what's passed for persistent home, then - # we should make that the real /home. useful for mtd device on olpc - if [ -d /home/home ]; then mount --bind /home/home /home ; fi - [ -x /sbin/restorecon ] && /sbin/restorecon /home - if [ -d /home/liveuser ]; then USERADDARGS="-M" ; fi -} - -findPersistentHome() { - for arg in \`cat /proc/cmdline\` ; do - if [ "\${arg##persistenthome=}" != "\${arg}" ]; then - homedev=\${arg##persistenthome=} - fi - done -} - -if strstr "\`cat /proc/cmdline\`" persistenthome= ; then - findPersistentHome -elif [ -e /run/initramfs/live/\${livedir}/home.img ]; then - homedev=/run/initramfs/live/\${livedir}/home.img -fi - -# if we have a persistent /home, then we want to go ahead and mount it -if ! strstr "\`cat /proc/cmdline\`" nopersistenthome && [ -n "\$homedev" ] ; then - action "Mounting persistent /home" mountPersistentHome -fi - -if [ -n "\$configdone" ]; then - exit 0 -fi - -# add liveuser user with no passwd -action "Adding live user" useradd \$USERADDARGS -c "Live System User" liveuser -passwd -d liveuser > /dev/null -usermod -aG wheel liveuser > /dev/null - -# Remove root password lock -passwd -d root > /dev/null - -# turn off firstboot for livecd boots -systemctl --no-reload disable firstboot-text.service 2> /dev/null || : -systemctl --no-reload disable firstboot-graphical.service 2> /dev/null || : -systemctl stop firstboot-text.service 2> /dev/null || : -systemctl stop firstboot-graphical.service 2> /dev/null || : - -# don't use prelink on a running live image -sed -i 's/PRELINKING=yes/PRELINKING=no/' /etc/sysconfig/prelink &>/dev/null || : - -# turn off mdmonitor by default -systemctl --no-reload disable mdmonitor.service 2> /dev/null || : -systemctl --no-reload disable mdmonitor-takeover.service 2> /dev/null || : -systemctl stop mdmonitor.service 2> /dev/null || : -systemctl stop mdmonitor-takeover.service 2> /dev/null || : - -# don't start cron/at as they tend to spawn things which are -# disk intensive that are painful on a live image -systemctl --no-reload disable crond.service 2> /dev/null || : -systemctl --no-reload disable atd.service 2> /dev/null || : -systemctl stop crond.service 2> /dev/null || : -systemctl stop atd.service 2> /dev/null || : - -# turn off abrtd on a live image -systemctl --no-reload disable abrtd.service 2> /dev/null || : -systemctl stop abrtd.service 2> /dev/null || : - -# Don't sync the system clock when running live (RHBZ #1018162) -sed -i 's/rtcsync//' /etc/chrony.conf - -# Mark things as configured -touch /.liveimg-configured - -# add static hostname to work around xauth bug -# https://bugzilla.redhat.com/show_bug.cgi?id=679486 -# the hostname must be something else than 'localhost' -# https://bugzilla.redhat.com/show_bug.cgi?id=1370222 -hostnamectl set-hostname "localhost-live" - -EOF - -# bah, hal starts way too late -cat > /etc/rc.d/init.d/livesys-late << EOF -#!/bin/bash -# -# live: Late init script for live image -# -# chkconfig: 345 99 01 -# description: Late init script for live image. - -. /etc/init.d/functions - -if ! strstr "\`cat /proc/cmdline\`" rd.live.image || [ "\$1" != "start" ] || [ -e /.liveimg-late-configured ] ; then - exit 0 -fi - -exists() { - which \$1 >/dev/null 2>&1 || return - \$* -} - -touch /.liveimg-late-configured - -# read some variables out of /proc/cmdline -for o in \`cat /proc/cmdline\` ; do - case \$o in - ks=*) - ks="--kickstart=\${o#ks=}" - ;; - xdriver=*) - xdriver="\${o#xdriver=}" - ;; - esac -done - -# if liveinst or textinst is given, start anaconda -if strstr "\`cat /proc/cmdline\`" liveinst ; then - plymouth --quit - /usr/sbin/liveinst \$ks -fi -if strstr "\`cat /proc/cmdline\`" textinst ; then - plymouth --quit - /usr/sbin/liveinst --text \$ks -fi - -# configure X, allowing user to override xdriver -if [ -n "\$xdriver" ]; then - cat > /etc/X11/xorg.conf.d/00-xdriver.conf <> /etc/rc.d/init.d/livesys << EOF - -# set up lightdm autologin -sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf -sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf -#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf - -# set Cinnamon as default session, otherwise login will fail -sed -i 's/^#user-session=.*/user-session=cinnamon/' /etc/lightdm/lightdm.conf - -# no updater applet in live environment -rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop - -# Show harddisk install on the desktop -sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop -mkdir /home/liveuser/Desktop -cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop - -# and mark it as executable -chmod +x /home/liveuser/Desktop/liveinst.desktop - -# this goes at the end after all other changes. -chown -R liveuser:liveuser /home/liveuser -restorecon -R /home/liveuser - -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="cinnamon"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-design_suite.ks b/fedora-live-design_suite.ks index d75fe01..ddcfe76 100644 --- a/fedora-live-design_suite.ks +++ b/fedora-live-design_suite.ks @@ -62,8 +62,10 @@ if [ -f `which powerline-daemon` ]; then fi FOE +cat >> /var/lib/livesys/livesys-session-extra << FOE #Override the favorite desktop application in Dash -sed -i "s/favorite-apps=."'*'"/favorite-apps=['firefox.desktop', 'shotwell.desktop', 'gimp.desktop', 'darktable.desktop','krita.desktop', 'inkscape.desktop', 'blender.desktop', 'libreoffice-writer.desktop', 'scribus.desktop', 'pitivi.desktop', 'nautilus.desktop', 'bijiben.desktop', 'anaconda.desktop', 'list-design-tutorials.desktop']/" /etc/rc.d/init.d/livesys +sed -i "s/favorite-apps=."'*'"/favorite-apps=['firefox.desktop', 'shotwell.desktop', 'gimp.desktop', 'darktable.desktop','krita.desktop', 'inkscape.desktop', 'blender.desktop', 'libreoffice-writer.desktop', 'scribus.desktop', 'pitivi.desktop', 'nautilus.desktop', 'bijiben.desktop', 'anaconda.desktop', 'list-design-tutorials.desktop']/" /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override +FOE # rebuild schema cache with any overrides we installed glib-compile-schemas /usr/share/glib-2.0/schemas diff --git a/fedora-live-i3.ks b/fedora-live-i3.ks index a2d454a..af8e30f 100644 --- a/fedora-live-i3.ks +++ b/fedora-live-i3.ks @@ -14,7 +14,7 @@ %include fedora-i3-common.ks %post -# xfce configuration +# i3 configuration # create /etc/sysconfig/desktop (needed for installation) @@ -23,37 +23,8 @@ PREFERRED=/usr/bin/i3 DISPLAYMANAGER=/usr/sbin/lightdm EOF -cat >> /etc/rc.d/init.d/livesys << EOF - -# deactivate xfconf-migration (#683161) -rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || : - -# set up lightdm autologin -sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf -sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf -#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf - -# set i3 as default session, otherwise login will fail -sed -i 's/^#user-session=.*/user-session=i3/' /etc/lightdm/lightdm.conf - -# Show harddisk install on the desktop -sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop -mkdir /home/liveuser/Desktop - -# this goes at the end after all other changes. -chown -R liveuser:liveuser /home/liveuser -restorecon -R /home/liveuser - -# setting the wallpaper -echo "/usr/bin/feh --bg-scale /usr/share/backgrounds/default.png" >> /home/liveuser/.profile - -# echoing type liveinst to start the installer -echo "echo 'Please type liveinst and press Enter to start the installer'" >> /home/liveuser/.bashrc - -# fixing the installer non opening bug -echo "xhost si:localuser:root" >> /home/liveuser/.profile - -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="i3"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-jam_kde.ks b/fedora-live-jam_kde.ks index 9d6e858..d697fae 100644 --- a/fedora-live-jam_kde.ks +++ b/fedora-live-jam_kde.ks @@ -63,22 +63,20 @@ thunderbird %post +# Override livesys-kde settings +cat >> /var/lib/livesys/livesys-session-extra << EOF + #setup kickoff favorites /bin/mkdir -p /etc/skel/.config JAMFAVORITES=/usr/share/applications/firefox.desktop,/usr/share/applications/mozilla-thunderbird.desktop,/usr/share/applications/studio-controls.desktop,/usr/share/applications/ardour6.desktop,/usr/share/applications/carla.desktop,/usr/share/applications/org.kde.konsole.desktop,/usr/share/applications/org.kde.dolphin.desktop,/usr/share/applications/systemsettings.desktop JAMFAVORITESLIVE=/usr/share/applications/liveinst.desktop,$JAMFAVORITES -cat <> /etc/skel/.config/kickoffrc +cat <> /etc/skel/.config/kickoffrc [Favorites] FavoriteURLs=$JAMFAVORITES -EOF +FOE -# Override fedora-live-kde-base.ks settings -sed -i /etc/rc.d/init.d/livesys -res"#^(FavoriteURLs=).*#\1${JAMFAVORITESLIVE}#" - - -cat >> /etc/rc.d/init.d/livesys << EOF /usr/sbin/usermod -a -G jackuser,audio liveuser EOF diff --git a/fedora-live-kde-base.ks b/fedora-live-kde-base.ks index a9ec74b..ff253c6 100644 --- a/fedora-live-kde-base.ks +++ b/fedora-live-kde-base.ks @@ -19,85 +19,7 @@ cat > /root/.config/gtk-3.0/settings.ini << EOF gtk-theme-name = Adwaita EOF -# add initscript -cat >> /etc/rc.d/init.d/livesys << EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="kde"/' /etc/sysconfig/livesys -# are we *not* able to use wayland sessions? -if strstr "\`cat /proc/cmdline\`" nomodeset ; then -PLASMA_SESSION_FILE="plasmax11.desktop" -else -PLASMA_SESSION_FILE="plasma.desktop" -fi - -# set up autologin for user liveuser -if [ -f /etc/sddm.conf ]; then -sed -i 's/^#User=.*/User=liveuser/' /etc/sddm.conf -sed -i "s/^#Session=.*/Session=\${PLASMA_SESSION_FILE}/" /etc/sddm.conf -else -cat > /etc/sddm.conf << SDDM_EOF -[Autologin] -User=liveuser -Session=\${PLASMA_SESSION_FILE} -SDDM_EOF -fi - -# add liveinst.desktop to favorites menu -mkdir -p /home/liveuser/.config/ -cat > /home/liveuser/.config/kickoffrc << MENU_EOF -[Favorites] -FavoriteURLs=/usr/share/applications/firefox.desktop,/usr/share/applications/org.kde.dolphin.desktop,/usr/share/applications/systemsettings.desktop,/usr/share/applications/org.kde.konsole.desktop,/usr/share/applications/liveinst.desktop -MENU_EOF - -# show liveinst.desktop on desktop and in menu -sed -i 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop -# set executable bit disable KDE security warning -chmod +x /usr/share/applications/liveinst.desktop -mkdir /home/liveuser/Desktop -cp -a /usr/share/applications/liveinst.desktop /home/liveuser/Desktop/ - -# Set akonadi backend -mkdir -p /home/liveuser/.config/akonadi -cat > /home/liveuser/.config/akonadi/akonadiserverrc << AKONADI_EOF -[%General] -Driver=QSQLITE3 -AKONADI_EOF - -# "Disable plasma-discover-notifier" -mkdir -p /home/liveuser/.config/autostart -cp -a /etc/xdg/autostart/org.kde.discover.notifier.desktop /home/liveuser/.config/autostart/ -echo 'Hidden=true' >> /home/liveuser/.config/autostart/org.kde.discover.notifier.desktop - -# Disable baloo -cat > /home/liveuser/.config/baloofilerc << BALOO_EOF -[Basic Settings] -Indexing-Enabled=false -BALOO_EOF - -# Disable kres-migrator -cat > /home/liveuser/.kde/share/config/kres-migratorrc << KRES_EOF -[Migration] -Enabled=false -KRES_EOF - -# Disable kwallet migrator -cat > /home/liveuser/.config/kwalletrc << KWALLET_EOL -[Migration] -alreadyMigrated=true -KWALLET_EOL - -# Disable automount of 'known' devices -# https://bugzilla.redhat.com/show_bug.cgi?id=2073708 -cat > /home/liveuser/.config/kded_device_automounterrc << AUTOMOUNTER_EOF -[General] -AutomountEnabled=false -AutomountOnLogin=false -AutomountOnPlugin=false -AUTOMOUNTER_EOF - -# make sure to set the right permissions and selinux contexts -chown -R liveuser:liveuser /home/liveuser/ -restorecon -R /home/liveuser/ - -EOF - -%end +%endif diff --git a/fedora-live-lxde.ks b/fedora-live-lxde.ks index da3b5f2..ba2d3ca 100644 --- a/fedora-live-lxde.ks +++ b/fedora-live-lxde.ks @@ -19,46 +19,8 @@ PREFERRED=/usr/bin/startlxde DISPLAYMANAGER=/usr/sbin/lxdm EOF -cat >> /etc/rc.d/init.d/livesys << EOF -# disable screensaver locking and make sure gamin gets started -cat > /etc/xdg/lxsession/LXDE/autostart << FOE -/usr/libexec/gam_server -@lxpanel --profile LXDE -@pcmanfm --desktop --profile LXDE -/usr/libexec/notification-daemon -FOE - -# set up preferred apps -cat > /etc/xdg/libfm/pref-apps.conf << FOE -[Preferred Applications] -WebBrowser=firefox.desktop -MailClient=sylpheed.desktop -FOE - -# set up auto-login for liveuser -sed -i 's/# autologin=.*/autologin=liveuser/g' /etc/lxdm/lxdm.conf - -# Show harddisk install on the desktop -sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop -mkdir /home/liveuser/Desktop -cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop - -# create default config for clipit, otherwise it displays a dialog on startup -mkdir -p /home/liveuser/.config/clipit -cat > /home/liveuser/.config/clipit/clipitrc << FOE -[rc] -use_copy=true -save_uris=true -save_history=false -statics_show=true -single_line=true -FOE - -# this goes at the end after all other changes. -chown -R liveuser:liveuser /home/liveuser -restorecon -R /home/liveuser - -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="lxde"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-lxqt.ks b/fedora-live-lxqt.ks index 6eec04d..3bb6586 100644 --- a/fedora-live-lxqt.ks +++ b/fedora-live-lxqt.ks @@ -16,42 +16,8 @@ dracut-config-generic %end %post -# add initscript -cat >> /etc/rc.d/init.d/livesys << EOF - -# set up autologin for user liveuser -if [ -f /etc/sddm.conf ]; then -sed -i 's/^#User=.*/User=liveuser/' /etc/sddm.conf -sed -i 's/^#Session=.*/Session=lxqt.desktop/' /etc/sddm.conf -else -cat > /etc/sddm.conf << SDDM_EOF -[Autologin] -User=liveuser -Session=lxqt.desktop -SDDM_EOF -fi - -# show liveinst.desktop on desktop and in menu -sed -i 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop -mkdir /home/liveuser/Desktop -cp -a /usr/share/applications/liveinst.desktop /home/liveuser/Desktop/ - -# set up preferred apps -cat > /etc/xdg/libfm/pref-apps.conf << FOE -[Preferred Applications] -WebBrowser=qupzilla.desktop -FOE - -# no updater applet in live environment -rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop - -dnf -y remove dracut-config-generic - -# make sure to set the right permissions and selinux contexts -chown -R liveuser:liveuser /home/liveuser/ -restorecon -R /home/liveuser/ - -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="lxqt"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-mate_compiz.ks b/fedora-live-mate_compiz.ks index e5b2d21..596c126 100644 --- a/fedora-live-mate_compiz.ks +++ b/fedora-live-mate_compiz.ks @@ -10,42 +10,7 @@ part / --size 8192 %post -cat >> /etc/rc.d/init.d/livesys << EOF - - -# make the installer show up -if [ -f /usr/share/applications/liveinst.desktop ]; then - # Show harddisk install in shell dash - sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop "" -fi -mkdir /home/liveuser/Desktop -cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop - -# and mark it as executable -chmod +x /home/liveuser/Desktop/liveinst.desktop - -# rebuild schema cache with any overrides we installed -glib-compile-schemas /usr/share/glib-2.0/schemas - -# set up lightdm autologin -sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf -sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf -#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf - -# set MATE as default session, otherwise login will fail -sed -i 's/^#user-session=.*/user-session=mate/' /etc/lightdm/lightdm.conf - -# Turn off PackageKit-command-not-found while uninstalled -if [ -f /etc/PackageKit/CommandNotFound.conf ]; then - sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf -fi - -# no updater applet in live environment -rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop - -# make sure to set the right permissions and selinux contexts -chown -R liveuser:liveuser /home/liveuser/ -restorecon -R /home/liveuser/ -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="mate"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-robotics.ks b/fedora-live-robotics.ks index b13eb13..aa6d224 100644 --- a/fedora-live-robotics.ks +++ b/fedora-live-robotics.ks @@ -90,9 +90,9 @@ mercurial %end -# Rip the post-configuration from the live-desktop, set default shortcuts to IDEs %post -cat >> /etc/rc.d/init.d/livesys << EOF +# Extend the post-configuration from the live-desktop, set default shortcuts to IDEs +cat >> /var/lib/livesys/livesys-session-extra << EOF # disable screensaver locking cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.screensaver.gschema.override << FOE [org.gnome.desktop.screensaver] @@ -105,13 +105,6 @@ cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.lockdown.gschema.override < disable-lock-screen=true FOE -# disable updates plugin -cat >> /usr/share/glib-2.0/schemas/org.gnome.software.gschema.override << FOE -[org.gnome.software] -allow-updates=false -download-updates=false -FOE - # make the installer show up if [ -f /usr/share/applications/liveinst.desktop ]; then # Show harddisk install in shell dash @@ -129,17 +122,5 @@ fi # rebuild schema cache with any overrides we installed glib-compile-schemas /usr/share/glib-2.0/schemas -# set up auto-login -cat > /etc/gdm/custom.conf << FOE -[daemon] -AutomaticLoginEnable=True -AutomaticLogin=liveuser -FOE - -# Turn off PackageKit-command-not-found while uninstalled -if [ -f /etc/PackageKit/CommandNotFound.conf ]; then - sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf -fi - EOF %end diff --git a/fedora-live-security.ks b/fedora-live-security.ks index d113e88..86f1c2d 100644 --- a/fedora-live-security.ks +++ b/fedora-live-security.ks @@ -102,50 +102,7 @@ PREFERRED=/usr/bin/startxfce4 DISPLAYMANAGER=/usr/sbin/lightdm EOF -cat >> /etc/rc.d/init.d/livesys << EOF - -mkdir -p /home/liveuser/.config/xfce4 - -cat > /home/liveuser/.config/xfce4/helpers.rc << FOE -MailReader=sylpheed-claws -FileManager=Thunar -WebBrowser=midori -FOE - -# disable screensaver locking (#674410) -cat >> /home/liveuser/.xscreensaver << FOE -mode: off -lock: False -dpmsEnabled: False -FOE - -# deactivate xfconf-migration (#683161) -rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || : - -# deactivate xfce4-panel first-run dialog (#693569) -mkdir -p /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml -cp /etc/xdg/xfce4/panel/default.xml /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml - -# set up lightdm autologin -sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf -sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf -#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf - -# set Xfce as default session, otherwise login will fail -sed -i 's/^#user-session=.*/user-session=xfce/' /etc/lightdm/lightdm.conf - -# Show harddisk install on the desktop -sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop -mkdir /home/liveuser/Desktop -cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop - -# and mark it as executable (new Xfce security feature) -chmod +x /home/liveuser/Desktop/liveinst.desktop - -# this goes at the end after all other changes. -chown -R liveuser:liveuser /home/liveuser -restorecon -R /home/liveuser - -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="xfce"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-soas.ks b/fedora-live-soas.ks index c3f3d81..8233167 100644 --- a/fedora-live-soas.ks +++ b/fedora-live-soas.ks @@ -13,37 +13,7 @@ %post -cat >> /etc/rc.d/init.d/livesys << EOF -# set up lightdm autologin -sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf -sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf -#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf - -# set Sugar as default session, otherwise login will fail -sed -i 's/^#user-session=.*/user-session=sugar/' /etc/lightdm/lightdm.conf -EOF - -cat >> /etc/rc.d/init.d/livesys-late << EOF - -# disable screensaver locking -cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.screensaver.gschema.override << FOE -[org.gnome.desktop.screensaver] -lock-enabled=false -FOE - -# and hide the lock screen option -cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.lockdown.gschema.override << FOE -[org.gnome.desktop.lockdown] -disable-lock-screen=true -FOE - -# rebuild schema cache with any overrides we installed -glib-compile-schemas /usr/share/glib-2.0/schemas - -EOF - -chmod 755 /etc/rc.d/init.d/livesys-late -/sbin/restorecon /etc/rc.d/init.d/livesys-late -/sbin/chkconfig --add livesys-late +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="soas"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-workstation.ks b/fedora-live-workstation.ks index aa3aeaa..9cb5073 100644 --- a/fedora-live-workstation.ks +++ b/fedora-live-workstation.ks @@ -14,89 +14,7 @@ part / --size 7750 %post -cat >> /etc/rc.d/init.d/livesys << EOF - - -# disable gnome-software automatically downloading updates -cat >> /usr/share/glib-2.0/schemas/org.gnome.software.gschema.override << FOE -[org.gnome.software] -allow-updates=false -download-updates=false -FOE - -# don't autostart gnome-software session service -rm -f /etc/xdg/autostart/org.gnome.Software.desktop - -# disable the gnome-software shell search provider -cat >> /usr/share/gnome-shell/search-providers/org.gnome.Software-search-provider.ini << FOE -DefaultDisabled=true -FOE - -# don't run gnome-initial-setup -mkdir ~liveuser/.config -touch ~liveuser/.config/gnome-initial-setup-done - -# suppress anaconda spokes redundant with gnome-initial-setup -cat >> /etc/sysconfig/anaconda << FOE -[NetworkSpoke] -visited=1 - -[PasswordSpoke] -visited=1 - -[UserSpoke] -visited=1 -FOE - -# make the installer show up -if [ -f /usr/share/applications/liveinst.desktop ]; then - # Show harddisk install in shell dash - sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop "" - # need to move it to anaconda.desktop to make shell happy - mv /usr/share/applications/liveinst.desktop /usr/share/applications/anaconda.desktop - - cat >> /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override << FOE -[org.gnome.shell] -favorite-apps=['firefox.desktop', 'org.gnome.Calendar.desktop', 'rhythmbox.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'anaconda.desktop'] -FOE - - # Make the welcome screen show up - if [ -f /usr/share/anaconda/gnome/fedora-welcome.desktop ]; then - mkdir -p ~liveuser/.config/autostart - cp /usr/share/anaconda/gnome/fedora-welcome.desktop /usr/share/applications/ - cp /usr/share/anaconda/gnome/fedora-welcome.desktop ~liveuser/.config/autostart/ - fi - - # Disable GNOME welcome tour so it doesn't overlap with Fedora welcome screen - cat >> /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override << FOE -welcome-dialog-last-shown-version='4294967295' -FOE - - # Copy Anaconda branding in place - if [ -d /usr/share/lorax/product/usr/share/anaconda ]; then - cp -a /usr/share/lorax/product/* / - fi -fi - -# rebuild schema cache with any overrides we installed -glib-compile-schemas /usr/share/glib-2.0/schemas - -# set up auto-login -cat > /etc/gdm/custom.conf << FOE -[daemon] -AutomaticLoginEnable=True -AutomaticLogin=liveuser -FOE - -# Turn off PackageKit-command-not-found while uninstalled -if [ -f /etc/PackageKit/CommandNotFound.conf ]; then - sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf -fi - -# make sure to set the right permissions and selinux contexts -chown -R liveuser:liveuser /home/liveuser/ -restorecon -R /home/liveuser/ - -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys %end diff --git a/fedora-live-xfce.ks b/fedora-live-xfce.ks index a749820..1506163 100644 --- a/fedora-live-xfce.ks +++ b/fedora-live-xfce.ks @@ -26,54 +26,8 @@ PREFERRED=/usr/bin/startxfce4 DISPLAYMANAGER=/usr/sbin/lightdm EOF -cat >> /etc/rc.d/init.d/livesys << EOF - -mkdir -p /home/liveuser/.config/xfce4 - -cat > /home/liveuser/.config/xfce4/helpers.rc << FOE -MailReader=sylpheed-claws -FileManager=Thunar -WebBrowser=firefox -FOE - -# disable screensaver locking (#674410) -cat >> /home/liveuser/.xscreensaver << FOE -mode: off -lock: False -dpmsEnabled: False -FOE - -# deactivate xfconf-migration (#683161) -rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || : - -# deactivate xfce4-panel first-run dialog (#693569) -mkdir -p /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml -cp /etc/xdg/xfce4/panel/default.xml /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml - -# set up lightdm autologin -sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf -sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf -#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf - -# set Xfce as default session, otherwise login will fail -sed -i 's/^#user-session=.*/user-session=xfce/' /etc/lightdm/lightdm.conf - -# Show harddisk install on the desktop -sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop -mkdir /home/liveuser/Desktop -cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop - -# no updater applet in live environment -rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop - -# and mark it as executable (new Xfce security feature) -chmod +x /home/liveuser/Desktop/liveinst.desktop - -# this goes at the end after all other changes. -chown -R liveuser:liveuser /home/liveuser -restorecon -R /home/liveuser - -EOF +# set livesys session type +sed -i 's/^livesys_session=.*/livesys_session="xfce"/' /etc/sysconfig/livesys %end diff --git a/l10n/fedora-livecd-lxde-ja_JP.ks b/l10n/fedora-livecd-lxde-ja_JP.ks index a95716a..36414d8 100644 --- a/l10n/fedora-livecd-lxde-ja_JP.ks +++ b/l10n/fedora-livecd-lxde-ja_JP.ks @@ -26,7 +26,7 @@ imsettings %end %post -cat >> /etc/rc.d/init.d/livesys << EOF +cat >> /var/lib/livesys/livesys-session-extra << EOF #### setting env and start ibus-deamon #### #mkdir /home/liveuser cat >> /home/liveuser/.bash_profile << FOE