summaryrefslogtreecommitdiff
path: root/kogaionlive.sh
diff options
context:
space:
mode:
Diffstat (limited to 'kogaionlive.sh')
-rw-r--r--kogaionlive.sh169
1 files changed, 0 insertions, 169 deletions
diff --git a/kogaionlive.sh b/kogaionlive.sh
deleted file mode 100644
index 8d4ec00..0000000
--- a/kogaionlive.sh
+++ /dev/null
@@ -1,169 +0,0 @@
-#!/bin/bash
-
-. /sbin/kogaion-functions.sh
-
-CMDLINE=$(cat /proc/cmdline 2> /dev/null)
-
-setup_password() {
- local cmdline_autoscramble_exist=$(echo ${CMDLINE} | grep autoscramble)
- if [ -n "${cmdline_autoscramble_exist}" ]; then
- echo "Autoscrambling root and live user passwords"
- echo root:\`pwgen -s 16\` | chpasswd > /dev/null 2>&1
- echo ${LIVE_USER}:\`pwgen -s 16\` | chpasswd > /dev/null 2>&1
- fi
-}
-
-setup_x() {
- [ -x /sbin/gpu-configuration ] && /sbin/gpu-configuration
-}
-
-setup_settingsd() {
- if [ -e /usr/share/eselect/modules/settingsd.eselect ]; then
- eselect settingsd set systemd > /dev/null
- fi
-}
-
-setup_desktop() {
- # create LIVE_USER if it does not exist
- kogaion_setup_live_user "${LIVE_USER}" "1000"
- if [ "${?}" = "1" ]; then
- # if user is already available, then setup skel
- # Copy ${LIVE_USER} directory
- rm -rf /home/${LIVE_USER}
- cp /etc/skel /home/${LIVE_USER} -Rp
- chown ${LIVE_USER}:users /home/${LIVE_USER} -R
- fi
-
- local liveinst_desktop="/usr/share/applications/calamares.desktop"
- local liveinst_desktop_name="$(basename ${liveinst_desktop})"
- if [ -f "${liveinst_desktop}" ]; then
- [[ -d "/home/${LIVE_USER}/Desktop" ]] || \
- mkdir -p "/home/${LIVE_USER}/Desktop"
- cp "${liveinst_desktop}" "/home/${LIVE_USER}/Desktop"
- chown ${LIVE_USER}:users "/home/${LIVE_USER}/Desktop" -R
- chmod +x "/home/${LIVE_USER}/Desktop/${liveinst_desktop_name}"
- rm -f /etc/skel/Desktop/Anaconda*.desktop \
- /home/${LIVE_USER}/Desktop/Anaconda*.desktop
- fi
-
- # Disable memory eating services
- rm -f /etc/xdg/autostart/hplip-systray.desktop \
- /etc/xdg/autostart/beagle-search-autostart.desktop \
- /etc/xdg/autostart/tracker*.desktop \
- /etc/xdg/autostart/magneto.desktop \
- /etc/xdg/autostart/beagled-autostart.desktop \
- /usr/share/autostart/magneto.desktop \
- /usr/share/autostart/nepomukserver.desktop
-
- # Remove broken entries in /etc/mtab
- if [ ! -L /etc/mtab ]; then
- sed -i '/.*newroot.*/d' /etc/mtab
- fi
-
- # create /overlay, this way df -h won't bitch
- [[ -d "/overlay" ]] || mkdir /overlay
-
- return 0
-}
-
-setup_keymap() {
- local keymap_toset=
- local keymap_toset_model=
-
- for word in ${CMDLINE}; do
- case ${word} in
- console-setup/layoutcode=*)
- keymap_toset="${word/*=}"
- ;;
- console-setup/modelcode=*)
- keymap_toset_model="-${word/*=}"
- ;;
- KEYMAP=*)
- keymap_toset="${word/*=}"
- ;;
- keymap=*)
- keymap_toset="${word/*=}"
- ;;
- vconsole.keymap=*)
- keymap_toset="${word/*=}"
- ;;
- vconsole.keymap.model=*)
- keymap_toset_model="-${word/*=}"
- ;;
- esac
- done
-
- if [ -n "${keymap_toset}" ]; then
- aggregated_keymap="${keymap_toset}${keymap_toset_model}"
- /sbin/keyboard-setup-2 "${aggregated_keymap}" all &> /dev/null
- fi
-}
-
-setup_locale() {
- for word in ${CMDLINE}; do
- case ${word} in
- locale=*)
- lang_toset="${word/*=}"
- ;;
- LANG=*)
- lang_toset="${word/*=}"
- ;;
- lang=*)
- lang_toset="${word/*=}"
- ;;
- esac
- done
- if [ -n "${lang_toset}" ]; then
- files=(
- "/etc/env.d/02locale"
- "/etc/locale.conf"
- )
- for path in "${files[@]}"; do
- if [ -e "$path" ]; then
- sed -i "s/^LC_ALL=.*/LC_ALL=${lang_toset}.UTF-8/g" \
- "${path}"
- sed -i "s/^LANG=.*/LANG=${lang_toset}.UTF-8/g" "${path}"
- sed -i "s/^LANGUAGE=.*/LANGUAGE=${lang_toset}.UTF-8/g" \
- "${path}"
- else
- echo "LC_ALL=${lang_toset}.UTF-8" > "${path}"
- echo "LANG=${lang_toset}.UTF-8" >> "${path}"
- echo "LANGUAGE=${lang_toset}.UTF-8" >> "${path}"
- fi
- done
-
- sed -i "s/^export LC_ALL=.*/export LC_ALL=${lang_toset}.UTF-8/g" \
- "/etc/profile.env"
- sed -i "s/^export LANG=.*/export LANG=${lang_toset}.UTF-8/g" \
- "/etc/profile.env"
- sed -i "s/^export LANGUAGE=.*/export LANGUAGE=${lang_toset}.UTF-8/g" \
- "/etc/profile.env"
-
- fi
-}
-
-
-main() {
- . /sbin/kogaion-functions.sh
-
- # Perform configuration only in live mode
- if ! kogaion_is_live; then
- echo "Skipping Live system configuration"
- return 0
- fi
-
- setup_settingsd
- setup_desktop
- setup_password
- setup_keymap
- setup_x
- # MOVED HERE TO AVOID RACE CONDITIONS ON WRITING
- # /etc/profile.env variables
- setup_locale
- kogaion_setup_autologin
- kogaion_setup_motd
- kogaion_setup_vt_autologin
- kogaion_setup_oem_livecd
-}
-
-main