Simplify and cleanup a few things
This commit is contained in:
parent
4d3c93c034
commit
516881ae41
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
# shellcheck disable=SC2086,SC2046
|
# shellcheck disable=SC2086,SC2046
|
||||||
|
|
||||||
VER=2.1.24
|
VER=2.1.25
|
||||||
|
|
||||||
# default values {
|
# default values {
|
||||||
|
|
||||||
@ -114,7 +114,7 @@ declare -A LOGIN_PKGS=(
|
|||||||
# they can be added here eg. [package]="extra"
|
# they can be added here eg. [package]="extra"
|
||||||
declare -A PKG_EXT=(
|
declare -A PKG_EXT=(
|
||||||
[vlc]='qt4' [mpd]='mpc' [mupdf]='mupdf-tools'
|
[vlc]='qt4' [mpd]='mpc' [mupdf]='mupdf-tools'
|
||||||
[rxvt-unicode]='urxvt-perls' [zathura]='zathura-pdf-poppler' [noto-fonts]='noto-fonts-emoji' [cairo-dock]='cairo-dock-plug-ins' [qt5ct]='qt5-styleplugins'
|
[zathura]='zathura-pdf-poppler' [noto-fonts]='noto-fonts-emoji' [cairo-dock]='cairo-dock-plug-ins' [qt5ct]='qt5-styleplugins'
|
||||||
[vlc]='qt5ct qt5-styleplugins' [qutebrowser]='qt5ct qt5-styleplugins' [qbittorrent]='qt5ct qt5-styleplugins' [transmission-qt]='qt5ct qt5-styleplugins'
|
[vlc]='qt5ct qt5-styleplugins' [qutebrowser]='qt5ct qt5-styleplugins' [qbittorrent]='qt5ct qt5-styleplugins' [transmission-qt]='qt5ct qt5-styleplugins'
|
||||||
[bluez]='bluez-libs bluez-utils bluez-tools bluez-plugins bluez-hid2hci' [kdenlive]='dvdauthor frei0r-plugins breeze breeze-gtk qt5ct qt5-styleplugins'
|
[bluez]='bluez-libs bluez-utils bluez-tools bluez-plugins bluez-hid2hci' [kdenlive]='dvdauthor frei0r-plugins breeze breeze-gtk qt5ct qt5-styleplugins'
|
||||||
) # }
|
) # }
|
||||||
@ -255,7 +255,7 @@ select_show()
|
|||||||
------------ USER CONFIGURATION ---------------
|
------------ USER CONFIGURATION ---------------
|
||||||
|
|
||||||
Username: ${NEWUSER:-none}
|
Username: ${NEWUSER:-none}
|
||||||
Login Shell: ${MYSHELL:-none}
|
Login Shell: ${NEWSHELL:-none}
|
||||||
Login Session: ${LOGIN_WM:-none}
|
Login Session: ${LOGIN_WM:-none}
|
||||||
Autologin: ${AUTOLOGIN:-none}
|
Autologin: ${AUTOLOGIN:-none}
|
||||||
Login Type: ${LOGIN_TYPE:-none}
|
Login Type: ${LOGIN_TYPE:-none}
|
||||||
@ -307,7 +307,7 @@ select_config()
|
|||||||
|
|
||||||
until [[ $CONFIG_DONE ]]; do
|
until [[ $CONFIG_DONE ]]; do
|
||||||
case $i in
|
case $i in
|
||||||
0) dlg MYSHELL menu "Shell" "\nChoose which shell to use." \
|
0) dlg NEWSHELL menu "Shell" "\nChoose which shell to use." \
|
||||||
zsh 'A very advanced and programmable command interpreter (shell) for UNIX' \
|
zsh 'A very advanced and programmable command interpreter (shell) for UNIX' \
|
||||||
bash 'The GNU Bourne Again shell, standard in many GNU/Linux distributions' \
|
bash 'The GNU Bourne Again shell, standard in many GNU/Linux distributions' \
|
||||||
mksh 'The MirBSD Korn Shell - an enhanced version of the public domain ksh' || return 1
|
mksh 'The MirBSD Korn Shell - an enhanced version of the public domain ksh' || return 1
|
||||||
@ -331,7 +331,7 @@ select_config()
|
|||||||
(( i++ )) # progress through to the next choice
|
(( i++ )) # progress through to the next choice
|
||||||
done
|
done
|
||||||
|
|
||||||
case $MYSHELL in
|
case $NEWSHELL in
|
||||||
bash) LOGINRC='.bash_profile' ;;
|
bash) LOGINRC='.bash_profile' ;;
|
||||||
zsh) LOGINRC='.zprofile' ;;
|
zsh) LOGINRC='.zprofile' ;;
|
||||||
mksh) LOGINRC='.profile' ;;
|
mksh) LOGINRC='.profile' ;;
|
||||||
@ -1128,7 +1128,7 @@ select_mntopts()
|
|||||||
opts+="$i - off "
|
opts+="$i - off "
|
||||||
done
|
done
|
||||||
|
|
||||||
yesno "$title" "\nPerform automatic mount with default options?\n" && return 1
|
yesno "$title" "\nPerform automatic mount with default options?\n" "Automatic" "Custom" && return 1
|
||||||
until [[ $MNT_OPTS ]]; do
|
until [[ $MNT_OPTS ]]; do
|
||||||
dlg MNT_OPTS check "$title" "$_mount" $opts
|
dlg MNT_OPTS check "$title" "$_mount" $opts
|
||||||
[[ $MNT_OPTS ]] || return 1 # no options is auto mount
|
[[ $MNT_OPTS ]] || return 1 # no options is auto mount
|
||||||
@ -1312,16 +1312,16 @@ install_user()
|
|||||||
|
|
||||||
chrun "chpasswd <<< 'root:$ROOT_PASS'" 2> "$ERR" 2>&1
|
chrun "chpasswd <<< 'root:$ROOT_PASS'" 2> "$ERR" 2>&1
|
||||||
errshow 1 "chrun 'chpasswd <<< \"root:$ROOT_PASS\"'"
|
errshow 1 "chrun 'chpasswd <<< \"root:$ROOT_PASS\"'"
|
||||||
if [[ $MYSHELL != 'zsh' ]]; then # root uses zsh by default
|
if [[ $NEWSHELL != 'zsh' ]]; then # root uses zsh by default
|
||||||
chrun "usermod -s /bin/$MYSHELL root" 2> "$ERR" 2>&1
|
chrun "usermod -s /bin/$NEWSHELL root" 2> "$ERR" 2>&1
|
||||||
errshow 1 "chrun 'usermod -s /bin/$MYSHELL root'"
|
errshow 1 "chrun 'usermod -s /bin/$NEWSHELL root'"
|
||||||
# copy the default mkshrc to /root if it was selected
|
# copy the default mkshrc to /root if it was selected
|
||||||
[[ $MYSHELL == 'mksh' ]] && cp -fv "$MNT/etc/skel/.mkshrc" "$MNT/root/.mkshrc"
|
[[ $NEWSHELL == 'mksh' ]] && cp -fv "$MNT/etc/skel/.mkshrc" "$MNT/root/.mkshrc"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Creating new user $NEWUSER and setting password"
|
echo "Creating new user $NEWUSER and setting password"
|
||||||
chrun "useradd -m -u 1000 -g users -G $groups -s /bin/$MYSHELL $NEWUSER" 2> "$ERR" 2>&1
|
chrun "useradd -m -u 1000 -g users -G $groups -s /bin/$NEWSHELL $NEWUSER" 2> "$ERR" 2>&1
|
||||||
errshow 1 "chrun 'useradd -m -u 1000 -g users -G $groups -s /bin/$MYSHELL $NEWUSER'"
|
errshow 1 "chrun 'useradd -m -u 1000 -g users -G $groups -s /bin/$NEWSHELL $NEWUSER'"
|
||||||
chrun "chpasswd <<< '$NEWUSER:$USER_PASS'" 2> "$ERR" 2>&1
|
chrun "chpasswd <<< '$NEWUSER:$USER_PASS'" 2> "$ERR" 2>&1
|
||||||
errshow 1 "chrun 'chpasswd <<< \"$NEWUSER:$USER_PASS\"'"
|
errshow 1 "chrun 'chpasswd <<< \"$NEWUSER:$USER_PASS\"'"
|
||||||
|
|
||||||
@ -1357,15 +1357,18 @@ install_cleanup()
|
|||||||
{
|
{
|
||||||
local user="$1"
|
local user="$1"
|
||||||
|
|
||||||
# remove tint2 and jgmenu configs if bspwm and openbox aren't being installed
|
# remove tint2 configs if bspwm and openbox aren't being installed
|
||||||
[[ $INSTALL_WMS =~ (bspwm|openbox) ]] || rm -rf "$MNT/home/$user/.config/"{jgmenu,tint2}
|
[[ $INSTALL_WMS =~ (bspwm|openbox) ]] || rm -rf "$MNT/home/$user/.config/tint2"
|
||||||
|
|
||||||
|
# remove jgmenu configs if bspwm, fluxbox, and openbox aren't being installed
|
||||||
|
[[ $INSTALL_WMS =~ (fluxbox|bspwm|openbox) ]] || rm -rf "$MNT/home/$user/.config/jgmenu"
|
||||||
|
|
||||||
# remove geany configs if it wasn't installed
|
# remove geany configs if it wasn't installed
|
||||||
[[ $USER_PKGS != *geany* ]] && rm -rf "$MNT/home/$user/.config/geany"
|
[[ $USER_PKGS != *geany* ]] && rm -rf "$MNT/home/$user/.config/geany"
|
||||||
|
|
||||||
# remove shell stuff for unused shells
|
# remove shell stuff for unused shells
|
||||||
[[ $MYSHELL != 'bash' ]] && rm -rf "$MNT/home/$user/.bash"*
|
[[ $NEWSHELL != 'bash' ]] && rm -rf "$MNT/home/$user/.bash"*
|
||||||
[[ $MYSHELL != 'zsh' ]] && rm -rf "$MNT/home/$user/.z"*
|
[[ $NEWSHELL != 'zsh' ]] && rm -rf "$MNT/home/$user/.z"*
|
||||||
|
|
||||||
# cleanup default jwmrc
|
# cleanup default jwmrc
|
||||||
if [[ $INSTALL_WMS == *jwm* ]]; then
|
if [[ $INSTALL_WMS == *jwm* ]]; then
|
||||||
@ -1445,7 +1448,7 @@ install_packages()
|
|||||||
|
|
||||||
pacman -Qq archlabs-installer > /dev/null 2>&1 && rmpkg+="archlabs-installer "
|
pacman -Qq archlabs-installer > /dev/null 2>&1 && rmpkg+="archlabs-installer "
|
||||||
|
|
||||||
if [[ $MYSHELL == 'zsh' ]]; then
|
if [[ $NEWSHELL == 'zsh' ]]; then
|
||||||
inpkg+="zsh-completions "
|
inpkg+="zsh-completions "
|
||||||
else
|
else
|
||||||
rmpkg+="zsh "
|
rmpkg+="zsh "
|
||||||
@ -1455,8 +1458,8 @@ install_packages()
|
|||||||
|
|
||||||
# update and install crucial packages first to avoid issues
|
# update and install crucial packages first to avoid issues
|
||||||
al_repo "$MNT/etc/pacman.conf"
|
al_repo "$MNT/etc/pacman.conf"
|
||||||
chrun "pacman -Syyu $BASE_PKGS ${LOGIN_PKGS[$LOGIN_TYPE]} $MYSHELL --noconfirm --needed" 2> "$ERR" 2>&1
|
chrun "pacman -Syyu $BASE_PKGS ${LOGIN_PKGS[$LOGIN_TYPE]} $NEWSHELL --noconfirm --needed" 2> "$ERR" 2>&1
|
||||||
errshow 1 "chrun 'pacman -Syyu $BASE_PKGS ${LOGIN_PKGS[$LOGIN_TYPE]} $MYSHELL --noconfirm --needed'"
|
errshow 1 "chrun 'pacman -Syyu $BASE_PKGS ${LOGIN_PKGS[$LOGIN_TYPE]} $NEWSHELL --noconfirm --needed'"
|
||||||
|
|
||||||
# remove the packages we don't want on the installed system
|
# remove the packages we don't want on the installed system
|
||||||
[[ $rmpkg ]] && chrun "pacman -Rnsc $rmpkg --noconfirm"
|
[[ $rmpkg ]] && chrun "pacman -Rnsc $rmpkg --noconfirm"
|
||||||
@ -2610,7 +2613,8 @@ dwm_xsession()
|
|||||||
Name=Dwm
|
Name=Dwm
|
||||||
Comment=Dynamic Window Manager
|
Comment=Dynamic Window Manager
|
||||||
Exec=dwm
|
Exec=dwm
|
||||||
Type=XSession
|
TryExec=dwm
|
||||||
|
Type=Application
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user