X-Git-Url: https://git.grml.org/?a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fscripts%2FGRMLBASE%2F15-initsetup;h=efd9e64b44d3561c905a7b0ffa0388c9270a27d3;hb=5a77db439a8a43d9f07e5f4ec5e4ac500fea8be8;hp=dadd5ae94f4136a767dcac2d67c574821fa29ae1;hpb=02b32aa7fe4022fdefc80552539ecba4f1067492;p=grml-live.git diff --git a/etc/grml/fai/config/scripts/GRMLBASE/15-initsetup b/etc/grml/fai/config/scripts/GRMLBASE/15-initsetup index dadd5ae..efd9e64 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/15-initsetup +++ b/etc/grml/fai/config/scripts/GRMLBASE/15-initsetup @@ -1,20 +1,63 @@ -#!/bin/sh -# Filename: /etc/grml/fai/config/scripts/GRMLBASE/15-initsetup +#!/bin/bash +# Filename: ${GRML_FAI_CONFIG}/config/scripts/GRMLBASE/15-initsetup # Purpose: configure init system for the live-system # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2 or any later version. -# Latest change: Sun Sep 16 22:57:36 CEST 2007 [mika] ################################################################################ set -u set -e +. "$GRML_LIVE_CONFIG" -if grep -q 'small' $target/etc/grml_version ; then - cp $target/etc/runlevel.conf.livecd.small $target/etc/runlevel.conf +systemd_setup() { + fcopy -M -i -B -v -r /etc/systemd + + echo "Enabling user '$USERNAME' for autologin" + sed -i "s/\$USERNAME/$USERNAME/" "$target"/etc/systemd/system/getty@tty*.service.d/override.conf + + # workaround for #992847 to workaround /lib/systemd -> /usr/lib/systemd transition + $ROOTCMD rm -f /etc/systemd/system/syslog.service + + $ROOTCMD systemctl preset-all + $ROOTCMD systemctl set-default grml-boot.target +} + +file_rc_setup() { + if ! [ -r "${target}"/etc/runlevel.conf ] ; then + echo 'Warning: /etc/runlevel.conf does not exist...' + echo '... assuming we do not have file-rc, skipping 15-initsetup' + exit 0 + fi + + # keep a backup of the original runlevel.conf file for reference + if [ -r "${target}"/etc/runlevel.conf.original ] ; then + # make sure to store old backup files if they differ as well + if ! cmp "${target}"/etc/runlevel.conf "${target}"/etc/runlevel.conf.original >/dev/null ; then + cp "${target}"/etc/runlevel.conf.original "${target}/etc/runlevel.conf.original.$(date +%Y%m%d_%k:%M:%S)" + fi + fi + + cp "${target}"/etc/runlevel.conf "${target}"/etc/runlevel.conf.original + + # provide Grml's default file-rc configuration + fcopy -v /etc/runlevel.conf + + # provide Grml's inittab configuration + fcopy -v /etc/inittab + sed -i "s/\$USERNAME\$/${USERNAME}/" "${target}"/etc/inittab + + # provide Grml's bootlocal init scripts + fcopy -v -mroot,root,0755 /etc/init.d/bootlocal.first + fcopy -v -mroot,root,0755 /etc/init.d/bootlocal.middle + fcopy -v -mroot,root,0755 /etc/init.d/bootlocal.last +} + +if ifclass FILE_RC ; then + file_rc_setup else - cp $target/etc/runlevel.conf.livecd $target/etc/runlevel.conf + systemd_setup fi ## END OF FILE ################################################################# -# vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=3 +# vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=2