Compare commits
1 Commits
Author | SHA1 | Date | |
---|---|---|---|
2995207e6b |
@@ -2,30 +2,6 @@
|
||||
|
||||
#{{{ calamares
|
||||
|
||||
write_users_conf(){
|
||||
local yaml
|
||||
yaml=$(write_yaml_header)
|
||||
yaml+=$(write_yaml_map 0 'defaultGroups')
|
||||
local IFS=','
|
||||
for g in "${ADDGROUPS[@]}"; do
|
||||
yaml+=$(write_yaml_seq 2 "$g")
|
||||
done
|
||||
unset IFS
|
||||
yaml+=$(write_yaml_map 0 'autologinGroup' 'autologin')
|
||||
yaml+=$(write_yaml_map 0 'doAutologin' 'false')
|
||||
yaml+=$(write_yaml_map 0 'sudoersGroup' 'wheel')
|
||||
yaml+=$(write_yaml_map 0 'setRootPassword' 'true')
|
||||
yaml+=$(write_yaml_map 0 'availableShells' '/bin/bash, /bin/zsh')
|
||||
# yaml+=$(write_yaml_map 0 'passwordRequirements')
|
||||
# yaml+=$(write_yaml_map 2 'minLength' '-1')
|
||||
# yaml+=$(write_yaml_map 2 'maxLength' '-1')
|
||||
# yaml+=$(write_yaml_map 2 'libpwquality')
|
||||
# yaml+=$(write_yaml_seq 4 "minlen=8")
|
||||
# yaml+=$(write_yaml_seq 4 "minclass=80")
|
||||
yaml+=$(write_empty_line)
|
||||
printf '%s' "${yaml}"
|
||||
}
|
||||
|
||||
write_services_conf(){
|
||||
local key1="$1" val1="$2" key2="$3" val2="$4"
|
||||
local yaml
|
||||
@@ -86,7 +62,6 @@ configure_calamares(){
|
||||
local mods="$1/etc/calamares/modules"
|
||||
if [[ -d "$mods" ]];then
|
||||
msg2 "Configuring: Calamares"
|
||||
write_users_conf > "$mods"/users.conf
|
||||
write_services_"${INITSYS}"_conf "$mods"
|
||||
write_postcfg > "$mods"/postcfg.conf
|
||||
write_unpackfs > "$mods"/unpackfs.conf
|
||||
|
@@ -2,46 +2,23 @@
|
||||
|
||||
#{{{ session
|
||||
|
||||
configure_hosts(){
|
||||
sed -e "s|localhost.localdomain|localhost.localdomain ${HOST_NAME}|" -i "$1"/etc/hosts
|
||||
}
|
||||
|
||||
configure_logind(){
|
||||
local conf=$1/etc/elogind/logind.conf
|
||||
if [[ -e "$conf" ]];then
|
||||
msg2 "Configuring: logind"
|
||||
sed -i 's/#\(HandleSuspendKey=\)suspend/\1ignore/' "$conf"
|
||||
sed -i 's/#\(HandleLidSwitch=\)suspend/\1ignore/' "$conf"
|
||||
sed -i 's/#\(HandleHibernateKey=\)hibernate/\1ignore/' "$conf"
|
||||
fi
|
||||
}
|
||||
|
||||
configure_services(){
|
||||
local mnt="$1"
|
||||
add_svc_"${INITSYS}" "$mnt" "${SERVICES[*]} ${SERVICES_LIVE[*]}"
|
||||
add_svc_"${INITSYS}" "$mnt" "${SERVICES[*]}"
|
||||
}
|
||||
|
||||
configure_system(){
|
||||
local mnt="$1"
|
||||
configure_logind "$mnt"
|
||||
echo "${HOST_NAME}" > "$mnt"/etc/hostname
|
||||
}
|
||||
|
||||
write_live_session_conf(){
|
||||
local conf=''
|
||||
conf+=$(printf '%s\n' '# live session configuration')
|
||||
conf+=$(printf "\nAUTOLOGIN=%s\n" "${AUTOLOGIN}")
|
||||
conf+=$(printf "\nUSER_NAME=%s\n" "${USER_NAME}")
|
||||
conf+=$(printf "\nPASSWORD=%s\n" "${PASSWORD}")
|
||||
conf+=$(printf "\nADDGROUPS='%s'\n" "${ADDGROUPS}")
|
||||
printf '%s' "$conf"
|
||||
}
|
||||
|
||||
configure_chroot(){
|
||||
local fs="$1"
|
||||
msg "Configuring [%s]" "${fs##*/}"
|
||||
configure_hosts "$fs"
|
||||
configure_system "$fs"
|
||||
configure_services "$fs"
|
||||
configure_calamares "$fs"
|
||||
[[ ! -d "$fs/etc/artools" ]] && mkdir -p "$fs/etc/artools"
|
||||
|
@@ -5,11 +5,7 @@
|
||||
show_profile(){
|
||||
msg2 "iso_file: %s" "${iso_file}"
|
||||
msg2 "AUTOLOGIN: %s" "${AUTOLOGIN}"
|
||||
msg2 "HOST_NAME: %s" "${HOST_NAME}"
|
||||
msg2 "USER_NAME: %s" "${USER_NAME}"
|
||||
msg2 "PASSWORD: %s" "${PASSWORD}"
|
||||
msg2 "ADDGROUPS: %s" "${ADDGROUPS}"
|
||||
msg2 "SERVICES_LIVE: %s" "${SERVICES_LIVE[*]}"
|
||||
msg2 "SERVICES: %s" "${SERVICES[*]}"
|
||||
}
|
||||
|
||||
@@ -28,32 +24,14 @@ load_profile(){
|
||||
# shellcheck disable=1090
|
||||
[[ -r "$profile_dir/${profile}"/profile.conf ]] && . "$profile_dir/${profile}"/profile.conf
|
||||
|
||||
DISPLAYMANAGER=${DISPLAYMANAGER:-'none'}
|
||||
|
||||
AUTOLOGIN=${AUTOLOGIN:-"true"}
|
||||
[[ ${DISPLAYMANAGER} == 'none' ]] && AUTOLOGIN="false"
|
||||
|
||||
HOST_NAME=${HOST_NAME:-'artix'}
|
||||
|
||||
USER_NAME=${USER_NAME:-'artix'}
|
||||
AUTOLOGIN=${AUTOLOGIN:-true}
|
||||
|
||||
PASSWORD=${PASSWORD:-'artix'}
|
||||
|
||||
ADDGROUPS=${ADDGROUPS:-"video,power,optical,network,lp,scanner,wheel,users,log"}
|
||||
|
||||
if [[ -z "${SERVICES[*]}" ]];then
|
||||
SERVICES=('acpid' 'bluetoothd' 'cronie' 'cupsd' 'syslog-ng' 'connmand')
|
||||
fi
|
||||
|
||||
if [[ ${DISPLAYMANAGER} != "none" ]];then
|
||||
case "${INITSYS}" in
|
||||
'openrc') SERVICES+=('xdm') ;;
|
||||
'runit'|'s6') SERVICES+=("${DISPLAYMANAGER}") ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
SERVICES_LIVE=('artix-live' 'pacman-init')
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@@ -2,19 +2,11 @@
|
||||
|
||||
#{{{ services
|
||||
|
||||
set_xdm(){
|
||||
if [[ -f "$1"/etc/conf.d/xdm ]];then
|
||||
local conf='DISPLAYMANAGER="'${DISPLAYMANAGER}'"'
|
||||
sed -i -e "s|^.*DISPLAYMANAGER=.*|${conf}|" "$1"/etc/conf.d/xdm
|
||||
fi
|
||||
}
|
||||
|
||||
add_svc_openrc(){
|
||||
local mnt="$1" names="$2" rlvl="${3:-default}"
|
||||
for svc in $names; do
|
||||
if [[ -f $mnt/etc/init.d/$svc ]];then
|
||||
msg2 "Setting [%s]: %s" "${INITSYS}" "$svc"
|
||||
[[ $svc == "xdm" ]] && set_xdm "$mnt"
|
||||
msg2 "Setting %s: [%s]" "${INITSYS}" "$svc"
|
||||
chroot "$mnt" rc-update add "$svc" "$rlvl" &>/dev/null
|
||||
fi
|
||||
done
|
||||
@@ -24,7 +16,7 @@ add_svc_runit(){
|
||||
local mnt="$1" names="$2" rlvl="${3:-default}"
|
||||
for svc in $names; do
|
||||
if [[ -d $mnt/etc/runit/sv/$svc ]]; then
|
||||
msg2 "Setting [%s]: %s" "${INITSYS}" "$svc"
|
||||
msg2 "Setting %s: [%s]" "${INITSYS}" "$svc"
|
||||
chroot "$mnt" ln -s /etc/runit/sv/"$svc" /etc/runit/runsvdir/"$rlvl" &>/dev/null
|
||||
fi
|
||||
done
|
||||
@@ -37,18 +29,18 @@ add_svc_s6(){
|
||||
chroot "$mnt" s6-rc-db -c /etc/s6/rc/compiled type "$svc" &> /dev/null || error=true
|
||||
ret="$?"
|
||||
if [ $ret -eq 0 ] && [[ "$error" == false ]]; then
|
||||
msg2 "Setting [%s]: %s" "${INITSYS}" "$svc"
|
||||
msg2 "Setting %s: [%s]" "${INITSYS}" "$svc"
|
||||
chroot "$mnt" s6-rc-bundle-update -c /etc/s6/rc/compiled add "$rlvl" "$svc"
|
||||
fi
|
||||
done
|
||||
|
||||
# force artix-live as a dependency if these display managers exist
|
||||
for displaymanager in gdm lightdm-srv lxdm sddm; do
|
||||
if [ -f "${work_dir}"/rootfs/etc/s6/sv/$displaymanager/dependencies ]; then
|
||||
echo "artix-live" >> "${work_dir}"rootfs/etc/s6/sv/$displaymanager/dependencies
|
||||
fi
|
||||
done
|
||||
chroot "$mnt" sh /usr/share/libalpm/scripts/s6-rc-db-update-hook
|
||||
# for displaymanager in gdm lightdm-srv lxdm sddm; do
|
||||
# if [ -f "${work_dir}"/rootfs/etc/s6/sv/$displaymanager/dependencies ]; then
|
||||
# echo "artix-live" >> "${work_dir}"rootfs/etc/s6/sv/$displaymanager/dependencies
|
||||
# fi
|
||||
# done
|
||||
# chroot "$mnt" sh /usr/share/libalpm/scripts/s6-rc-db-update-hook
|
||||
|
||||
# rebuild s6-linux-init binaries
|
||||
chroot "$mnt" rm -r /etc/s6/current
|
||||
|
Reference in New Issue
Block a user