Compare commits
10 Commits
Author | SHA1 | Date | |
---|---|---|---|
9c6b20fea3 | |||
9a514cc3ca | |||
![]() |
4f3899f6c6 | ||
![]() |
0efd3bdfa9 | ||
![]() |
f5d07a597f | ||
![]() |
c48893ded2 | ||
![]() |
781f6de35a | ||
![]() |
6131156806 | ||
![]() |
c9fbed1f2d | ||
![]() |
0ec222726b |
13
Makefile
13
Makefile
@@ -17,13 +17,15 @@ RC = \
|
||||
data/rc/pacman-init \
|
||||
data/rc/artix-live
|
||||
|
||||
RUNIT_SV = $(wildcard data/runit/*.sh)
|
||||
|
||||
GRUB_DEFAULT = \
|
||||
data/grub2-portable-efi
|
||||
|
||||
GRUB_D = \
|
||||
data/99_zzz-portable-efi
|
||||
|
||||
all: $(BIN) $(RC) $(XBIN) ${GRUB_D}
|
||||
all: $(BIN) $(RC) $(RUNIT_SV) $(XBIN) ${GRUB_D}
|
||||
|
||||
edit = sed -e "s|@datadir[@]|$(DESTDIR)$(PREFIX)/share/artools|g" \
|
||||
-e "s|@sysconfdir[@]|$(DESTDIR)$(SYSCONFDIR)/artools|g" \
|
||||
@@ -53,6 +55,10 @@ install_rc:
|
||||
install -dm0755 $(DESTDIR)$(SYSCONFDIR)/init.d
|
||||
install -m0755 ${RC} $(DESTDIR)$(SYSCONFDIR)/init.d
|
||||
|
||||
install_runit:
|
||||
install -dm0755 $(DESTDIR)$(SYSCONFDIR)/runit/core-services
|
||||
install -m0755 ${RUNIT_SV} $(DESTDIR)$(SYSCONFDIR)/runit/core-services
|
||||
|
||||
install_portable_efi:
|
||||
install -dm0755 $(DESTDIR)$(SYSCONFDIR)/default
|
||||
install -m0755 $(GRUB_DEFAULT) $(DESTDIR)$(SYSCONFDIR)/default
|
||||
@@ -72,9 +78,12 @@ uninstall_portable_efi:
|
||||
uninstall_rc:
|
||||
for f in ${RC}; do rm -f $(DESTDIR)$(SYSCONFDIR)/init.d/$$f; done
|
||||
|
||||
uninstall_runit:
|
||||
for f in ${RUNIT_SV}; do rm -f $(DESTDIR)$(SYSCONFDIR)/runit/sv/$$f; done
|
||||
|
||||
install: install_base install_rc install_portable_efi
|
||||
|
||||
uninstall: uninstall_base uninstall_rc uninstall_portable_efi
|
||||
uninstall: uninstall_base uninstall_rc uninstall_runit uninstall_portable_efi
|
||||
|
||||
dist:
|
||||
git archive --format=tar --prefix=live-services-$(Version)/ $(Version) | gzip -9 > live-services-$(Version).tar.gz
|
||||
|
@@ -3,7 +3,7 @@
|
||||
LIBDIR='@libdir@'
|
||||
DATADIR='@datadir@'
|
||||
SYSCONFDIR='@sysconfdir@'
|
||||
LOGFILE='/var/log/cromnix-live.log'
|
||||
LOGFILE='/var/log/artix-live.log'
|
||||
|
||||
export LC_MESSAGES=C
|
||||
export LANG=C
|
||||
@@ -41,9 +41,9 @@ livetimer=$(get_timer_ms)
|
||||
configure_sudoers_d
|
||||
echo "Configured sudoers: $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
|
||||
livetimer=$(get_timer_ms)
|
||||
configure_machine_id
|
||||
echo "Configured machine-id: $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
# livetimer=$(get_timer_ms)
|
||||
# configure_machine_id
|
||||
# echo "Configured machine-id: $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
|
||||
livetimer=$(get_timer_ms)
|
||||
configure_accountsservice "${username}"
|
||||
@@ -53,6 +53,10 @@ livetimer=$(get_timer_ms)
|
||||
configure_displaymanager
|
||||
echo "Configured displaymanager: $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
|
||||
livetimer=$(get_timer_ms)
|
||||
configure_calamares
|
||||
echo "Configured calamares netinstall ${netinstall} $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
|
||||
livetimer=$(get_timer_ms)
|
||||
configure_user_root /
|
||||
echo "Configured root user: $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
|
@@ -3,21 +3,15 @@
|
||||
# autologin
|
||||
autologin=true
|
||||
|
||||
# login shell
|
||||
login_shell=/bin/bash
|
||||
|
||||
# live username
|
||||
username=cromnix
|
||||
username=artix
|
||||
|
||||
# live password
|
||||
password=cromnix
|
||||
password=artix
|
||||
|
||||
# live group membership
|
||||
addgroups='video,power,disk,storage,optical,network,lp,scanner,wheel'
|
||||
|
||||
# iso name
|
||||
iso_name=cromnix
|
||||
|
||||
# default_desktop_file
|
||||
default_desktop_file=lxqt
|
||||
|
||||
|
@@ -12,6 +12,6 @@ depend() {
|
||||
start() {
|
||||
ebegin "Running pacman initialization"
|
||||
/usr/bin/pacman-key --init &> /dev/null
|
||||
/usr/bin/pacman-key --populate archlinux cromnix &> /dev/null
|
||||
/usr/bin/pacman-key --populate archlinux artix &> /dev/null
|
||||
eend $?
|
||||
}
|
||||
|
2
data/runit/89-artix-live.sh
Normal file
2
data/runit/89-artix-live.sh
Normal file
@@ -0,0 +1,2 @@
|
||||
msg "Initializing artix-live script"
|
||||
artix-live
|
6
data/runit/90-pacman-init.sh
Normal file
6
data/runit/90-pacman-init.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
msg "Mounting temporary gnupg directory"
|
||||
mount -t tmpfs -o size=10M,mode=0755 tmpfs /etc/pacman.d/gnupg
|
||||
|
||||
msg "Initializing pacman"
|
||||
pacman-key --init
|
||||
pacman-key --populate archlinux artix
|
320
lib/util-live.sh
320
lib/util-live.sh
@@ -10,76 +10,76 @@
|
||||
# GNU General Public License for more details.
|
||||
|
||||
kernel_cmdline(){
|
||||
for param in $(cat /proc/cmdline); do
|
||||
case "${param}" in
|
||||
$1=*) echo "${param##*=}"; return 0 ;;
|
||||
$1) return 0 ;;
|
||||
*) continue ;;
|
||||
esac
|
||||
done
|
||||
[ -n "${2}" ] && echo "${2}"
|
||||
return 1
|
||||
for param in $(cat /proc/cmdline); do
|
||||
case "${param}" in
|
||||
$1=*) echo "${param##*=}"; return 0 ;;
|
||||
$1) return 0 ;;
|
||||
*) continue ;;
|
||||
esac
|
||||
done
|
||||
[ -n "${2}" ] && echo "${2}"
|
||||
return 1
|
||||
}
|
||||
|
||||
get_lang(){
|
||||
echo $(kernel_cmdline lang)
|
||||
echo $(kernel_cmdline lang)
|
||||
}
|
||||
|
||||
get_keytable(){
|
||||
echo $(kernel_cmdline keytable)
|
||||
echo $(kernel_cmdline keytable)
|
||||
}
|
||||
|
||||
get_tz(){
|
||||
echo $(kernel_cmdline tz)
|
||||
echo $(kernel_cmdline tz)
|
||||
}
|
||||
|
||||
get_cal_mode(){
|
||||
echo $(kernel_cmdline netinstall)
|
||||
}
|
||||
|
||||
get_timer_ms(){
|
||||
echo $(date +%s%3N)
|
||||
echo $(date +%s%3N)
|
||||
}
|
||||
|
||||
# $1: start timer
|
||||
elapsed_time_ms(){
|
||||
echo $(echo $1 $(get_timer_ms) | awk '{ printf "%0.3f",($2-$1)/1000 }')
|
||||
echo $(echo $1 $(get_timer_ms) | awk '{ printf "%0.3f",($2-$1)/1000 }')
|
||||
}
|
||||
|
||||
load_live_config(){
|
||||
|
||||
[[ -f $1 ]] || return 1
|
||||
[[ -f $1 ]] || return 1
|
||||
|
||||
live_conf="$1"
|
||||
live_conf="$1"
|
||||
|
||||
[[ -r ${live_conf} ]] && source ${live_conf}
|
||||
[[ -r ${live_conf} ]] && source ${live_conf}
|
||||
|
||||
[[ -z ${autologin} ]] && autologin=true
|
||||
[[ -z ${autologin} ]] && autologin=true
|
||||
|
||||
[[ -z ${username} ]] && username="cromnix"
|
||||
[[ -z ${username} ]] && username="artix"
|
||||
|
||||
[[ -z ${password} ]] && password="cromnix"
|
||||
[[ -z ${password} ]] && password="artix"
|
||||
|
||||
[[ -z ${addgroups} ]] && addgroups=""
|
||||
[[ -z ${addgroups} ]] && addgroups="video,power,storage,optical,network,lp,scanner,wheel,users,audio"
|
||||
|
||||
[[ -z ${login_shell} ]] && login_shell="/bin/bash"
|
||||
echo "Loaded ${live_conf}: $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
|
||||
echo "Loaded ${live_conf}: $(elapsed_time_ms ${livetimer})ms" >> "${LOGFILE}"
|
||||
|
||||
return 0
|
||||
return 0
|
||||
}
|
||||
|
||||
is_valid_de(){
|
||||
if [[ ${default_desktop_executable} != "none" ]] && \
|
||||
[[ ${default_desktop_file} != "none" ]]; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
if [[ ${default_desktop_executable} != "none" ]] && \
|
||||
[[ ${default_desktop_file} != "none" ]]; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
load_desktop_map(){
|
||||
local _space="s| ||g" _clean=':a;N;$!ba;s/\n/ /g' _com_rm="s|#.*||g" \
|
||||
file=${DATADIR}/desktop.map
|
||||
local desktop_map=$(sed "$_com_rm" "$file" \
|
||||
| sed "$_space" \
|
||||
| sed "$_clean")
|
||||
local desktop_map=$(sed "$_com_rm" "$file" | sed "$_space" | sed "$_clean")
|
||||
echo ${desktop_map}
|
||||
}
|
||||
|
||||
@@ -98,28 +98,28 @@ detect_desktop_env(){
|
||||
}
|
||||
|
||||
configure_accountsservice(){
|
||||
local path=/var/lib/AccountsService/users
|
||||
if [ -d "${path}" ] ; then
|
||||
echo "[User]" > ${path}/$1
|
||||
echo "XSession=${default_desktop_file}" >> ${path}/$1
|
||||
if [[ -f "/var/lib/AccountsService/icons/$1.png" ]];then
|
||||
echo "Icon=/var/lib/AccountsService/icons/$1.png" >> ${path}/$1
|
||||
fi
|
||||
fi
|
||||
local path=/var/lib/AccountsService/users
|
||||
if [ -d "${path}" ] ; then
|
||||
echo "[User]" > ${path}/$1
|
||||
echo "XSession=${default_desktop_file}" >> ${path}/$1
|
||||
if [[ -f "/var/lib/AccountsService/icons/$1.png" ]];then
|
||||
echo "Icon=/var/lib/AccountsService/icons/$1.png" >> ${path}/$1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
set_lightdm_greeter(){
|
||||
local greeters=$(ls /usr/share/xgreeters/*greeter.desktop) name
|
||||
for g in ${greeters[@]};do
|
||||
name=${g##*/}
|
||||
name=${name%%.*}
|
||||
case ${name} in
|
||||
lightdm-gtk-greeter) break ;;
|
||||
lightdm-*-greeter)
|
||||
sed -i -e "s/^.*greeter-session=.*/greeter-session=${name}/" /etc/lightdm/lightdm.conf
|
||||
;;
|
||||
esac
|
||||
done
|
||||
local greeters=$(ls /usr/share/xgreeters/*greeter.desktop) name
|
||||
for g in ${greeters[@]};do
|
||||
name=${g##*/}
|
||||
name=${name%%.*}
|
||||
case ${name} in
|
||||
lightdm-gtk-greeter) break ;;
|
||||
lightdm-*-greeter)
|
||||
sed -i -e "s/^.*greeter-session=.*/greeter-session=${name}/" /etc/lightdm/lightdm.conf
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
set_lightdm_vt(){
|
||||
@@ -127,117 +127,113 @@ configure_accountsservice(){
|
||||
}
|
||||
|
||||
configure_displaymanager(){
|
||||
# Try to detect desktop environment
|
||||
# Configure display manager
|
||||
if [[ -f /usr/bin/lightdm ]];then
|
||||
groupadd -r autologin
|
||||
set_lightdm_vt
|
||||
set_lightdm_greeter
|
||||
if $(is_valid_de); then
|
||||
sed -i -e "s/^.*user-session=.*/user-session=$default_desktop_file/" /etc/lightdm/lightdm.conf
|
||||
fi
|
||||
if ${autologin};then
|
||||
gpasswd -a ${username} autologin &> /dev/null
|
||||
sed -i -e "s/^.*autologin-user=.*/autologin-user=${username}/" /etc/lightdm/lightdm.conf
|
||||
sed -i -e "s/^.*autologin-user-timeout=.*/autologin-user-timeout=0/" /etc/lightdm/lightdm.conf
|
||||
sed -i -e "s/^.*pam-autologin-service=.*/pam-autologin-service=lightdm-autologin/" /etc/lightdm/lightdm.conf
|
||||
fi
|
||||
elif [[ -f /usr/bin/gdm ]];then
|
||||
configure_accountsservice "gdm"
|
||||
if ${autologin};then
|
||||
sed -i -e "s/\[daemon\]/\[daemon\]\nAutomaticLogin=${username}\nAutomaticLoginEnable=True/" /etc/gdm/custom.conf
|
||||
fi
|
||||
elif [[ -f /usr/bin/mdm ]];then
|
||||
if $(is_valid_de); then
|
||||
sed -i "s|default.desktop|$default_desktop_file.desktop|g" /etc/mdm/custom.conf
|
||||
fi
|
||||
elif [[ -f /usr/bin/sddm ]];then
|
||||
if $(is_valid_de); then
|
||||
sed -i -e "s|^Session=.*|Session=$default_desktop_file.desktop|" /etc/sddm.conf
|
||||
fi
|
||||
if ${autologin};then
|
||||
sed -i -e "s|^User=.*|User=${username}|" /etc/sddm.conf
|
||||
fi
|
||||
elif [[ -f /usr/bin/lxdm ]];then
|
||||
if $(is_valid_de); then
|
||||
sed -i -e "s|^.*session=.*|session=/usr/bin/$default_desktop_executable|" /etc/lxdm/lxdm.conf
|
||||
fi
|
||||
if ${autologin};then
|
||||
sed -i -e "s/^.*autologin=.*/autologin=${username}/" /etc/lxdm/lxdm.conf
|
||||
fi
|
||||
fi
|
||||
# Try to detect desktop environment
|
||||
# Configure display manager
|
||||
if [[ -f /usr/bin/lightdm ]];then
|
||||
groupadd -r autologin
|
||||
set_lightdm_vt
|
||||
set_lightdm_greeter
|
||||
if $(is_valid_de); then
|
||||
sed -i -e "s/^.*user-session=.*/user-session=$default_desktop_file/" /etc/lightdm/lightdm.conf
|
||||
fi
|
||||
if ${autologin};then
|
||||
gpasswd -a ${username} autologin &> /dev/null
|
||||
sed -i -e "s/^.*autologin-user=.*/autologin-user=${username}/" /etc/lightdm/lightdm.conf
|
||||
sed -i -e "s/^.*autologin-user-timeout=.*/autologin-user-timeout=0/" /etc/lightdm/lightdm.conf
|
||||
sed -i -e "s/^.*pam-autologin-service=.*/pam-autologin-service=lightdm-autologin/" /etc/lightdm/lightdm.conf
|
||||
fi
|
||||
elif [[ -f /usr/bin/gdm ]];then
|
||||
configure_accountsservice "gdm"
|
||||
if ${autologin};then
|
||||
sed -i -e "s/\[daemon\]/\[daemon\]\nAutomaticLogin=${username}\nAutomaticLoginEnable=True/" /etc/gdm/custom.conf
|
||||
fi
|
||||
elif [[ -f /usr/bin/sddm ]];then
|
||||
if $(is_valid_de); then
|
||||
sed -i -e "s|^Session=.*|Session=$default_desktop_file.desktop|" /etc/sddm.conf
|
||||
fi
|
||||
if ${autologin};then
|
||||
sed -i -e "s|^User=.*|User=${username}|" /etc/sddm.conf
|
||||
fi
|
||||
elif [[ -f /usr/bin/lxdm ]];then
|
||||
if $(is_valid_de); then
|
||||
sed -i -e "s|^.*session=.*|session=/usr/bin/$default_desktop_executable|" /etc/lxdm/lxdm.conf
|
||||
fi
|
||||
if ${autologin};then
|
||||
sed -i -e "s/^.*autologin=.*/autologin=${username}/" /etc/lxdm/lxdm.conf
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
gen_pw(){
|
||||
echo $(perl -e 'print crypt($ARGV[0], "password")' ${password})
|
||||
echo $(perl -e 'print crypt($ARGV[0], "password")' ${password})
|
||||
}
|
||||
|
||||
configure_user(){
|
||||
# set up user and password
|
||||
if [[ -n ${password} ]];then
|
||||
useradd -m -G ${addgroups} -p $(gen_pw) -s ${login_shell} ${username}
|
||||
else
|
||||
useradd -m -G ${addgroups} -s ${login_shell} ${username}
|
||||
fi
|
||||
# set up user and password
|
||||
if [[ -n ${password} ]];then
|
||||
useradd -m -G ${addgroups} -p $(gen_pw) -s /bin/bash ${username}
|
||||
else
|
||||
useradd -m -G ${addgroups} -s /bin/bash ${username}
|
||||
fi
|
||||
}
|
||||
|
||||
find_legacy_keymap(){
|
||||
local file="${DATADIR}/kbd-model.map"
|
||||
while read -r line || [[ -n $line ]]; do
|
||||
if [[ -z $line ]] || [[ $line == \#* ]]; then
|
||||
continue
|
||||
fi
|
||||
local file="${DATADIR}/kbd-model.map"
|
||||
while read -r line || [[ -n $line ]]; do
|
||||
if [[ -z $line ]] || [[ $line == \#* ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
mapping=( $line ); # parses columns
|
||||
if [[ ${#mapping[@]} != 5 ]]; then
|
||||
continue
|
||||
fi
|
||||
mapping=( $line ); # parses columns
|
||||
if [[ ${#mapping[@]} != 5 ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
if [[ "${keytable}" != "${mapping[0]}" ]]; then
|
||||
continue
|
||||
fi
|
||||
if [[ "${keytable}" != "${mapping[0]}" ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
if [[ "${mapping[3]}" = "-" ]]; then
|
||||
mapping[3]=""
|
||||
fi
|
||||
if [[ "${mapping[3]}" = "-" ]]; then
|
||||
mapping[3]=""
|
||||
fi
|
||||
|
||||
X11_LAYOUT=${mapping[1]}
|
||||
X11_MODEL=${mapping[2]}
|
||||
X11_VARIANT=${mapping[3]}
|
||||
x11_OPTIONS=${mapping[4]}
|
||||
done < $file
|
||||
X11_LAYOUT=${mapping[1]}
|
||||
X11_MODEL=${mapping[2]}
|
||||
X11_VARIANT=${mapping[3]}
|
||||
x11_OPTIONS=${mapping[4]}
|
||||
done < $file
|
||||
}
|
||||
|
||||
write_x11_config(){
|
||||
# find a x11 layout that matches the keymap
|
||||
# in isolinux if you select a keyboard layout and a language that doesnt match this layout,
|
||||
# it will provide the correct keymap, but not kblayout value
|
||||
local X11_LAYOUT=
|
||||
local X11_MODEL="pc105"
|
||||
local X11_VARIANT=""
|
||||
local X11_OPTIONS="terminate:ctrl_alt_bksp"
|
||||
# find a x11 layout that matches the keymap
|
||||
# in isolinux if you select a keyboard layout and a language that doesnt match this layout,
|
||||
# it will provide the correct keymap, but not kblayout value
|
||||
local X11_LAYOUT=
|
||||
local X11_MODEL="pc105"
|
||||
local X11_VARIANT=""
|
||||
local X11_OPTIONS="terminate:ctrl_alt_bksp"
|
||||
|
||||
find_legacy_keymap
|
||||
find_legacy_keymap
|
||||
|
||||
# layout not found, use KBLAYOUT
|
||||
if [[ -z "$X11_LAYOUT" ]]; then
|
||||
X11_LAYOUT="${keytable}"
|
||||
fi
|
||||
# layout not found, use KBLAYOUT
|
||||
if [[ -z "$X11_LAYOUT" ]]; then
|
||||
X11_LAYOUT="${keytable}"
|
||||
fi
|
||||
|
||||
# create X11 keyboard layout config
|
||||
mkdir -p "/etc/X11/xorg.conf.d"
|
||||
# create X11 keyboard layout config
|
||||
mkdir -p "/etc/X11/xorg.conf.d"
|
||||
|
||||
local XORGKBLAYOUT="/etc/X11/xorg.conf.d/00-keyboard.conf"
|
||||
local XORGKBLAYOUT="/etc/X11/xorg.conf.d/00-keyboard.conf"
|
||||
|
||||
echo "" >> "$XORGKBLAYOUT"
|
||||
echo "Section \"InputClass\"" > "$XORGKBLAYOUT"
|
||||
echo " Identifier \"system-keyboard\"" >> "$XORGKBLAYOUT"
|
||||
echo " MatchIsKeyboard \"on\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbLayout\" \"$X11_LAYOUT\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbModel\" \"$X11_MODEL\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbVariant\" \"$X11_VARIANT\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbOptions\" \"$X11_OPTIONS\"" >> "$XORGKBLAYOUT"
|
||||
echo "EndSection" >> "$XORGKBLAYOUT"
|
||||
echo "" >> "$XORGKBLAYOUT"
|
||||
echo "Section \"InputClass\"" > "$XORGKBLAYOUT"
|
||||
echo " Identifier \"system-keyboard\"" >> "$XORGKBLAYOUT"
|
||||
echo " MatchIsKeyboard \"on\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbLayout\" \"$X11_LAYOUT\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbModel\" \"$X11_MODEL\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbVariant\" \"$X11_VARIANT\"" >> "$XORGKBLAYOUT"
|
||||
echo " Option \"XkbOptions\" \"$X11_OPTIONS\"" >> "$XORGKBLAYOUT"
|
||||
echo "EndSection" >> "$XORGKBLAYOUT"
|
||||
}
|
||||
|
||||
configure_language(){
|
||||
@@ -271,32 +267,32 @@ configure_language(){
|
||||
echo "Configured timezone: ${timezone}" >> "${LOGFILE}"
|
||||
}
|
||||
|
||||
configure_machine_id(){
|
||||
if [ -e "/etc/machine-id" ] ; then
|
||||
# delete existing machine-id
|
||||
echo "Deleting existing machine-id ..." >> "${LOGFILE}"
|
||||
rm /etc/machine-id
|
||||
fi
|
||||
# set unique machine-id
|
||||
echo "Setting machine-id ..." >> "${LOGFILE}"
|
||||
dbus-uuidgen --ensure=/etc/machine-id
|
||||
ln -sf /etc/machine-id /var/lib/dbus/machine-id
|
||||
configure_calamares(){
|
||||
if [[ -f /usr/bin/calamares ]];then
|
||||
netinstall=$(get_cal_mode)
|
||||
if [[ "${netinstall}" == 'no' ]];then
|
||||
sed -e "/- netinstall/d" \
|
||||
-e "s|- chrootcfg|- unpackfs|" -i /etc/calamares/settings.conf
|
||||
|
||||
sed -e '$ d' -i /etc/calamares/modules/welcome.conf
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
configure_sudoers_d(){
|
||||
echo "%wheel ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/g_wheel
|
||||
echo "root ALL=(ALL) ALL" > /etc/sudoers.d/u_root
|
||||
echo "%wheel ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/g_wheel
|
||||
echo "root ALL=(ALL) ALL" > /etc/sudoers.d/u_root
|
||||
}
|
||||
|
||||
configure_swap(){
|
||||
local swapdev="$(fdisk -l 2>/dev/null | grep swap | cut -d' ' -f1)"
|
||||
if [ -e "${swapdev}" ]; then
|
||||
swapon ${swapdev}
|
||||
fi
|
||||
local swapdev="$(fdisk -l 2>/dev/null | grep swap | cut -d' ' -f1)"
|
||||
if [ -e "${swapdev}" ]; then
|
||||
swapon ${swapdev}
|
||||
fi
|
||||
}
|
||||
|
||||
configure_user_root(){
|
||||
# set up root password
|
||||
echo "root:${password}" | chroot $1 chpasswd
|
||||
cp /etc/skel/.{bash_profile,bashrc,bash_logout} /root/
|
||||
# set up root password
|
||||
echo "root:${password}" | chroot $1 chpasswd
|
||||
cp /etc/skel/.{bash_profile,bashrc,bash_logout} /root/
|
||||
}
|
||||
|
Reference in New Issue
Block a user