Shorten some main function names, remove specifics for user wm configs
This commit is contained in:
parent
ba91ed8b79
commit
529166b83c
@ -19,43 +19,43 @@ readonly DBG="/tmp/debuglog" # Built-in error log
|
||||
main()
|
||||
{
|
||||
if [[ $CURRENT_MENU != "main" ]]; then
|
||||
SELECTED=1
|
||||
CURRENT_MENU="main"
|
||||
if [[ $SAVED ]]; then
|
||||
SELECTED=$((SAVED + 1))
|
||||
unset SAVED
|
||||
else
|
||||
SELECTED=1
|
||||
fi
|
||||
CURRENT_MENU="main"
|
||||
elif (( SELECTED < 9 )); then
|
||||
elif (( SELECTED < 8 )); then
|
||||
((SELECTED++)) # increment the highlighted menu item
|
||||
fi
|
||||
|
||||
tput civis
|
||||
SELECTED=$(dialog --cr-wrap --stdout --backtitle "$BT" \
|
||||
--title " $_PrepTitle " --default-item $SELECTED --menu "$_PrepBody" 0 0 0 \
|
||||
"1" "$_PrepShowDev" "2" "$_PrepParts" "3" "$_PrepLUKS" "4" "$_PrepLVM" \
|
||||
"5" "$_PrepMount" "6" "$_PrepConfig" "7" "Check Choices" "8" "$_PrepInstall" \
|
||||
"9" "$_Done")
|
||||
--title " $_PrepTitle " --default-item $SELECTED \
|
||||
--menu "$_PrepBody" 0 0 0 \
|
||||
"1" "$_PrepShowDev" "2" "$_PrepParts" \
|
||||
"3" "$_PrepLUKS" "4" "$_PrepLVM" \
|
||||
"5" "$_PrepMount" "6" "$_PrepConfig" \
|
||||
"7" "Check Choices" "8" "$_PrepInstall")
|
||||
|
||||
# if trying to install the system, make sure the partitions are mounted
|
||||
# and that the needed config variables and user variables have been set up
|
||||
if [[ $SELECTED ]]; then
|
||||
if [[ $SELECTED -eq 8 || $SELECTED -eq 6 ]]; then
|
||||
{ [[ $SELECTED -eq 8 ]] && preinstall_checks 1 || preinstall_checks; } || return 1
|
||||
elif [[ ($SELECTED -eq 2 || $SELECTED -eq 5) && $WARN != true ]]; then
|
||||
if (( SELECTED == 8 )); then
|
||||
preinstall_checks 1 || return 1
|
||||
elif (( SELECTED == 6 )); then
|
||||
preinstall_checks || return 1
|
||||
elif (( SELECTED == 2 || SELECTED == 5 )) && [[ $WARN != true ]]; then
|
||||
msgbox "$_PrepTitle" "$_WarnMount" && WARN=true
|
||||
fi
|
||||
fi
|
||||
|
||||
# setting $SELECTED to ($SELECTED - 1) when failing keeps the highlight
|
||||
case $SELECTED in
|
||||
1) device_tree ;;
|
||||
2) partition || SELECTED=1 ;;
|
||||
3) luks_menu || SELECTED=2 ;;
|
||||
4) lvm_menu || SELECTED=3 ;;
|
||||
5) select_partitions || SELECTED=4 ;;
|
||||
6) configure_settings || SELECTED=5 ;;
|
||||
7) display_settings ;;
|
||||
2) partition || SELECTED=$((SELECTED - 1)) ;;
|
||||
3) luks_menu || SELECTED=$((SELECTED - 1)) ;;
|
||||
4) lvm_menu || SELECTED=$((SELECTED - 1)) ;;
|
||||
5) mnt_menu || SELECTED=$((SELECTED - 1)) ;;
|
||||
6) cfg_menu || SELECTED=$((SELECTED - 1)) ;;
|
||||
7) show_cfg ;;
|
||||
8) install ;;
|
||||
*) yesno "$_CloseInst" "$_CloseInstBody" "Exit" "Back" && die
|
||||
esac
|
||||
|
@ -39,22 +39,22 @@ declare -g MKINIT_HOOKS="shutdown"
|
||||
|
||||
# match the wm name with the actual session name used for xinit
|
||||
declare -gA WM_SESSIONS=(
|
||||
[i3-gaps]='i3'
|
||||
[dwm]='dwm'
|
||||
[openbox]='openbox-session'
|
||||
[i3-gaps]='i3'
|
||||
[bspwm]='bspwm'
|
||||
[xfce4]='startxfce4'
|
||||
[gnome]='gnome-session'
|
||||
[openbox]='openbox-session'
|
||||
[cinnamon]='cinnamon-session'
|
||||
)
|
||||
|
||||
# additional packages installed for the given window manager
|
||||
declare -gA WM_EXT=(
|
||||
[bspwm]="sxhkd libmpdclient archlabs-skel-bspwm jsoncpp archlabs-screenlock archlabs-polybar rofi"
|
||||
[gnome]="gnome-extra"
|
||||
[bspwm]="sxhkd libmpdclient archlabs-skel-bspwm jsoncpp archlabs-screenlock archlabs-polybar rofi"
|
||||
[i3-gaps]="i3status perl-anyevent-i3 libmpdclient archlabs-skel-i3-gaps jsoncpp archlabs-screenlock archlabs-polybar rofi"
|
||||
[xfce4]="xfce4-goodies xfce4-pulseaudio-plugin archlabs-skel-xfce4"
|
||||
[openbox]="archlabs-obkey obconf archlabs-kickshaw tint2 archlabs-oblogout jgmenu archlabs-skel-openbox tint2 archlabs-skippy-xd conky thunar termite libmpdclient jsoncpp archlabs-screenlock archlabs-paranoid archlabs-polybar rofi zenity"
|
||||
[openbox]="archlabs-obkey obconf archlabs-kickshaw archlabs-oblogout jgmenu archlabs-skel-openbox tint2 archlabs-skippy-xd conky libmpdclient jsoncpp archlabs-screenlock archlabs-paranoid archlabs-polybar rofi zenity"
|
||||
)
|
||||
|
||||
# files the user can edit during the final stage of install
|
||||
@ -73,73 +73,94 @@ declare -gA EDIT_FILES=(
|
||||
|
||||
# }
|
||||
|
||||
msgbox()
|
||||
show_cfg()
|
||||
{
|
||||
tput civis
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --msgbox "$2\n" 0 0
|
||||
local cmd mnt pkgs
|
||||
cmd="${BCMDS[$BOOTLDR]}"
|
||||
mnt="${BMNTS[$SYS-$BOOTLDR]}"
|
||||
msgbox "$_PrepTitle" "
|
||||
|
||||
---------- PARTITION CONFIGURATION ------------
|
||||
|
||||
Root: ${ROOT_PART:-None}
|
||||
Boot: ${BOOT_PART:-${BOOT_DEVICE:-None}}
|
||||
|
||||
Swap: ${SWAP_PART:-None}
|
||||
Size: ${SWAP_SIZE:-None}
|
||||
|
||||
Extra: ${EXTRA_MNTS:-${EXTRA_MNT:-None}}
|
||||
Hooks: ${MKINIT_HOOKS:-None}
|
||||
|
||||
LVM: ${LVM:-None}
|
||||
LUKS: ${LUKS:-None}
|
||||
|
||||
|
||||
---------- BOOTLOADER CONFIGURATION -----------
|
||||
|
||||
Loader: ${BOOTLDR:-None}
|
||||
Mount: ${mnt:-None}
|
||||
Command: ${cmd:-None}
|
||||
|
||||
|
||||
------------ SYSTEM CONFIGURATION -------------
|
||||
|
||||
Locale: ${LOCALE:-None}
|
||||
Keymap: ${KEYMAP:-None}
|
||||
Hostname: ${HOSTNAME:-None}
|
||||
Timezone: ${ZONE:-None}/${SUBZONE:-None}
|
||||
|
||||
|
||||
------------ LOGIN CONFIGURATION --------------
|
||||
|
||||
User: ${NEWUSER:-None}
|
||||
Shell: ${MYSHELL:-None}
|
||||
Session: ${LOGIN_WM:-None}
|
||||
Autologin: ${AUTOLOGIN:-None}
|
||||
Management: ${LOGIN_TYPE:-None}
|
||||
|
||||
|
||||
------------ PACKAGES AND MIRRORS -------------
|
||||
|
||||
Kernel: ${KERNEL:-None}
|
||||
Sessions: ${INSTALL_WMS:-None}
|
||||
Mirrors: ${MIRROR_CMD:-None}
|
||||
Packages: $(print4 "${PACKAGES:-None}")
|
||||
"
|
||||
}
|
||||
|
||||
menubox()
|
||||
cfg_menu()
|
||||
{
|
||||
local title="$1"
|
||||
local body="$2"
|
||||
local h=$3
|
||||
local w=$4
|
||||
local n=$5
|
||||
shift 5
|
||||
local response
|
||||
if ! response="$(dialog --cr-wrap --stdout --backtitle "$BT" --title " $title " --menu "$body" $h $w $n "$@")"; then
|
||||
tput cnorm
|
||||
if ! HOSTNAME="$(getinput "$_ConfHost" "$_HostNameBody" "${DIST,,}")"; then
|
||||
return 1
|
||||
fi
|
||||
printf "%s" "$response"
|
||||
}
|
||||
|
||||
checkbox()
|
||||
{
|
||||
local title="$1"
|
||||
local body="$2"
|
||||
local h=$3
|
||||
local w=$4
|
||||
local n=$5
|
||||
shift 5
|
||||
local response
|
||||
if ! response="$(dialog --cr-wrap --stdout --backtitle "$BT" --title " $title " --checklist "$body" $h $w $n "$@")"; then
|
||||
tput civis
|
||||
if ! LOCALE="$(menubox "$_ConfLocale" "$_LocaleBody" 25 70 20 $LOCALES)"; then
|
||||
return 1
|
||||
fi
|
||||
printf "%s" "$response"
|
||||
}
|
||||
|
||||
getinput()
|
||||
{
|
||||
local answer
|
||||
if ! answer="$(dialog --cr-wrap --max-input 63 --stdout --no-cancel --backtitle "$BT" --title " $1 " --inputbox "$2" 0 0 "$3")" || [[ $answer == '' ]]; then
|
||||
select_timezone || return 1
|
||||
user_creation || return 1
|
||||
|
||||
tput civis
|
||||
if ! MYSHELL="$(menubox "$_ShellTitle" "$_ShellBody" 0 0 0 '/usr/bin/zsh' '-' '/bin/bash' '-' '/usr/bin/mksh' '-')"; then
|
||||
return 1
|
||||
fi
|
||||
printf "%s" "$answer"
|
||||
}
|
||||
|
||||
infobox()
|
||||
{
|
||||
local sec="$3"
|
||||
tput civis
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --infobox "$2\n" 0 0
|
||||
sleep ${sec:-2}
|
||||
}
|
||||
|
||||
yesno()
|
||||
{
|
||||
# usage: yesno <title> <text> [<yes_label> <no_label> [<no>]]
|
||||
# three options: one --default-no and custom labels, one just custom labels, and one basic.
|
||||
tput civis
|
||||
if [[ $# -eq 5 && $5 == "no" ]]; then
|
||||
dialog --cr-wrap --backtitle "$BT" --defaultno --title " $1 " \
|
||||
--yes-label "$3" --no-label "$4" --yesno "$2\n" 0 0
|
||||
elif [[ $# -eq 4 ]]; then
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --yes-label "$3" \
|
||||
--no-label "$4" --yesno "$2\n" 0 0
|
||||
else
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --yesno "$2\n" 0 0
|
||||
if ! KERNEL="$(menubox "$_KernelTitle" "$_KernelBody" 0 0 0 'linux' '-' 'linux-lts' '-')"; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
select_mirrorcmd || return 1
|
||||
|
||||
yesno "$_DevelTitle" "$_DevelBody" && BASEDEV=true || BASEDEV=false
|
||||
|
||||
select_wm_or_de || return 1
|
||||
select_packages || return 1
|
||||
|
||||
export CONFIG_DONE=true
|
||||
return 0
|
||||
}
|
||||
|
||||
select_language()
|
||||
@ -199,13 +220,10 @@ user_creation()
|
||||
return 1
|
||||
fi
|
||||
|
||||
local user
|
||||
local user pass pass2 rpass rpass2
|
||||
user="$(awk -F'~' '{print $1}' <<< "$values")"
|
||||
local pass pass2
|
||||
pass="$(awk -F'~' '{print $2}' <<< "$values")"
|
||||
pass2="$(awk -F'~' '{print $3}' <<< "$values")"
|
||||
|
||||
local rpass rpass2
|
||||
rpass="$(awk -F'~' '{print $5}' <<< "$values")"
|
||||
rpass2="$(awk -F'~' '{print $6}' <<< "$values")"
|
||||
|
||||
@ -213,7 +231,9 @@ user_creation()
|
||||
[[ $rpass == "" && $rpass2 == "" ]] && { rpass="$pass"; rpass2="$pass2"; }
|
||||
|
||||
# make sure a username was entered and that the passwords match
|
||||
if [[ ${#user} -eq 0 || $user =~ \ |\' || $user =~ [^a-z0-9] || $pass == "" || "$pass" != "$pass2" || "$rpass" != "$rpass2" ]]; then
|
||||
if [[ ${#user} -eq 0 || $user =~ \ |\' || $user =~ [^a-z0-9] ||
|
||||
$pass == "" || "$pass" != "$pass2" || "$rpass" != "$rpass2" ]]
|
||||
then
|
||||
if [[ $pass == "" || "$pass" != "$pass2" || "$rpass" != "$rpass2" ]]; then
|
||||
# password was left empty or doesn't match
|
||||
if [[ $pass == "" ]]; then
|
||||
@ -330,7 +350,7 @@ select_wm_or_de()
|
||||
done
|
||||
|
||||
# choose how to log in
|
||||
select_login_method || return 1
|
||||
select_login || return 1
|
||||
|
||||
# choose which WM/DE to start at login, only for xinit
|
||||
if [[ $LOGIN_TYPE == 'xinit' ]]; then
|
||||
@ -352,7 +372,7 @@ select_wm_or_de()
|
||||
declare -g PACKAGES="$WM_PACKAGES"
|
||||
}
|
||||
|
||||
select_login_method()
|
||||
select_login()
|
||||
{
|
||||
if ! LOGIN_TYPE="$(menubox "$_WMLogin" "$_LoginTypeBody" 0 0 0 \
|
||||
"xinit" "Console login without a display manager" \
|
||||
@ -378,11 +398,11 @@ select_packages()
|
||||
fi
|
||||
|
||||
tput civis
|
||||
SELECTED=$(dialog --cr-wrap --stdout --backtitle "$BT" \
|
||||
--title " $_Packages " --default-item $SELECTED --menu "$_PackageMenu" 0 0 0 \
|
||||
"1" "Web Browsers" "2" "Text Editors" "3" "Terminal Emulators" \
|
||||
"4" "Music and Video Players" "5" "Mail and Chat" "6" "Office and Editing" \
|
||||
"7" "Management and Fonts" "8" "Miscellaneous" "9" "$_Done")
|
||||
SELECTED=$(dialog --cr-wrap --stdout --backtitle "$BT" --title " $_Packages " \
|
||||
--default-item $SELECTED --menu "$_PackageMenu" 0 0 0 \
|
||||
"1" "Browsers" "2" "Editors" "3" "Terminals" \
|
||||
"4" "Multimedia" "5" "Chat/Mail" "6" "Professional" \
|
||||
"7" "System" "8" "Miscellaneous" "9" "$_Done")
|
||||
|
||||
if [[ $SELECTED -lt 9 ]]; then
|
||||
case $SELECTED in
|
||||
@ -457,96 +477,6 @@ select_mirrorcmd()
|
||||
return 0
|
||||
}
|
||||
|
||||
display_settings()
|
||||
{
|
||||
local cmd mnt pkgs
|
||||
cmd="${BCMDS[$BOOTLDR]}"
|
||||
mnt="${BMNTS[$SYS-$BOOTLDR]}"
|
||||
msgbox "$_PrepTitle" "
|
||||
|
||||
---------- PARTITION CONFIGURATION ------------
|
||||
|
||||
Root: ${ROOT_PART:-None}
|
||||
Boot: ${BOOT_PART:-${BOOT_DEVICE:-None}}
|
||||
|
||||
Swap: ${SWAP_PART:-None}
|
||||
Size: ${SWAP_SIZE:-None}
|
||||
|
||||
Extra: ${EXTRA_MNTS:-${EXTRA_MNT:-None}}
|
||||
Hooks: ${MKINIT_HOOKS:-None}
|
||||
|
||||
LVM: ${LVM:-None}
|
||||
LUKS: ${LUKS:-None}
|
||||
|
||||
|
||||
---------- BOOTLOADER CONFIGURATION -----------
|
||||
|
||||
Loader: ${BOOTLDR:-None}
|
||||
Mount: ${mnt:-None}
|
||||
Command: ${cmd:-None}
|
||||
|
||||
|
||||
------------ SYSTEM CONFIGURATION -------------
|
||||
|
||||
Locale: ${LOCALE:-None}
|
||||
Keymap: ${KEYMAP:-None}
|
||||
Hostname: ${HOSTNAME:-None}
|
||||
Timezone: ${ZONE:-None}/${SUBZONE:-None}
|
||||
|
||||
|
||||
------------ LOGIN CONFIGURATION --------------
|
||||
|
||||
User: ${NEWUSER:-None}
|
||||
Shell: ${MYSHELL:-None}
|
||||
Session: ${LOGIN_WM:-None}
|
||||
Autologin: ${AUTOLOGIN:-None}
|
||||
Management: ${LOGIN_TYPE:-None}
|
||||
|
||||
|
||||
------------ PACKAGES AND MIRRORS -------------
|
||||
|
||||
Kernel: ${KERNEL:-None}
|
||||
Sessions: ${INSTALL_WMS:-None}
|
||||
Mirrors: ${MIRROR_CMD:-None}
|
||||
Packages: $(print4 "${PACKAGES:-None}")
|
||||
"
|
||||
}
|
||||
|
||||
configure_settings()
|
||||
{
|
||||
tput cnorm
|
||||
if ! HOSTNAME="$(getinput "$_ConfHost" "$_HostNameBody" "${DIST,,}")"; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
tput civis
|
||||
if ! LOCALE="$(menubox "$_ConfLocale" "$_LocaleBody" 25 70 20 $LOCALES)"; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
select_timezone || return 1
|
||||
user_creation || return 1
|
||||
|
||||
tput civis
|
||||
if ! MYSHELL="$(menubox "$_ShellTitle" "$_ShellBody" 0 0 0 '/usr/bin/zsh' '-' '/bin/bash' '-' '/usr/bin/mksh' '-')"; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
if ! KERNEL="$(menubox "$_KernelTitle" "$_KernelBody" 0 0 0 'linux' '-' 'linux-lts' '-')"; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
select_mirrorcmd || return 1
|
||||
|
||||
yesno "$_DevelTitle" "$_DevelBody" && BASEDEV=true || BASEDEV=false
|
||||
|
||||
select_wm_or_de || return 1
|
||||
select_packages || return 1
|
||||
|
||||
export CONFIG_DONE=true
|
||||
return 0
|
||||
}
|
||||
|
||||
edit_configs()
|
||||
{
|
||||
if [[ $CURRENT_MENU != "edit" ]]; then
|
||||
@ -561,9 +491,10 @@ edit_configs()
|
||||
|
||||
SELECTED=$(dialog --cr-wrap --stdout --backtitle "$BT" \
|
||||
--title " $_EditTitle " --default-item $SELECTED --menu "$_EditBody" 0 0 0 \
|
||||
"1" "$exitstr" "2" "Keyboard" "3" "Locale" "4" "Hostname" \
|
||||
"5" "Sudoers" "6" "Mkinitcpio.conf" "7" "Fstab" "8" "Crypttab" \
|
||||
"9" "${BOOTLDR^}" "10" "Pacman.conf" "11" "${LOGIN_TYPE^}")
|
||||
"1" "$exitstr" "2" "${EDIT_FILES[2]}" "3" "${EDIT_FILES[3]}" \
|
||||
"4" "${EDIT_FILES[4]}" "5" "${EDIT_FILES[5]}" "6" "${EDIT_FILES[6]}" \
|
||||
"7" "${EDIT_FILES[7]}" "8" "${EDIT_FILES[8]}" "9" "${EDIT_FILES[9]}" \
|
||||
"10" "${EDIT_FILES[10]}" "11" "${EDIT_FILES[11]}")
|
||||
|
||||
if [[ ! $SELECTED || $SELECTED -eq 1 ]]; then
|
||||
[[ $DEBUG == true && -r $DBG ]] && vim $DBG
|
||||
@ -590,6 +521,78 @@ edit_configs()
|
||||
msgbox "$_ErrTitle" "$_NoFileErr"
|
||||
fi
|
||||
fi
|
||||
edit_system_configs
|
||||
edit_configs
|
||||
}
|
||||
|
||||
|
||||
# dialog helper functions
|
||||
|
||||
msgbox()
|
||||
{
|
||||
tput civis
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --msgbox "$2\n" 0 0
|
||||
}
|
||||
|
||||
menubox()
|
||||
{
|
||||
local title="$1"
|
||||
local body="$2"
|
||||
local h=$3
|
||||
local w=$4
|
||||
local n=$5
|
||||
shift 5
|
||||
local response
|
||||
if ! response="$(dialog --cr-wrap --stdout --backtitle "$BT" --title " $title " --menu "$body" $h $w $n "$@")"; then
|
||||
return 1
|
||||
fi
|
||||
printf "%s" "$response"
|
||||
}
|
||||
|
||||
checkbox()
|
||||
{
|
||||
local title="$1"
|
||||
local body="$2"
|
||||
local h=$3
|
||||
local w=$4
|
||||
local n=$5
|
||||
shift 5
|
||||
local response
|
||||
if ! response="$(dialog --cr-wrap --stdout --backtitle "$BT" --title " $title " --checklist "$body" $h $w $n "$@")"; then
|
||||
return 1
|
||||
fi
|
||||
printf "%s" "$response"
|
||||
}
|
||||
|
||||
getinput()
|
||||
{
|
||||
local answer
|
||||
if ! answer="$(dialog --cr-wrap --max-input 63 --stdout --no-cancel --backtitle "$BT" --title " $1 " --inputbox "$2" 0 0 "$3")" || [[ $answer == '' ]]; then
|
||||
return 1
|
||||
fi
|
||||
printf "%s" "$answer"
|
||||
}
|
||||
|
||||
infobox()
|
||||
{
|
||||
local sec="$3"
|
||||
tput civis
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --infobox "$2\n" 0 0
|
||||
sleep ${sec:-2}
|
||||
}
|
||||
|
||||
yesno()
|
||||
{
|
||||
# usage: yesno <title> <text> [<yes_label> <no_label> [<no>]]
|
||||
# three options: one --default-no and custom labels, one just custom labels, and one basic.
|
||||
tput civis
|
||||
if [[ $# -eq 5 && $5 == "no" ]]; then
|
||||
dialog --cr-wrap --backtitle "$BT" --defaultno --title " $1 " \
|
||||
--yes-label "$3" --no-label "$4" --yesno "$2\n" 0 0
|
||||
elif [[ $# -eq 4 ]]; then
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --yes-label "$3" \
|
||||
--no-label "$4" --yesno "$2\n" 0 0
|
||||
else
|
||||
dialog --cr-wrap --backtitle "$BT" --title " $1 " --yesno "$2\n" 0 0
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -189,12 +189,6 @@ create_user()
|
||||
chrun "chpasswd <<< '$NEWUSER:$USER_PASS'"
|
||||
chrun "chown -Rf $NEWUSER:users /home/$NEWUSER"
|
||||
|
||||
# remove configs for window managers that were never installed
|
||||
[[ $INSTALL_WMS =~ i3-gaps ]] || rm -rf $MNT/home/$NEWUSER/.config/i3
|
||||
[[ $INSTALL_WMS =~ bspwm ]] || rm -rf $MNT/home/$NEWUSER/.config/{bspwm,sxhkd}
|
||||
[[ $INSTALL_WMS =~ openbox ]] || rm -rf $MNT/home/$NEWUSER/.config/{openbox,skippy-xd,jgmenu,conky,tint2}
|
||||
[[ $INSTALL_WMS =~ (openbox|i3-gaps|bspwm) ]] || rm -rf $MNT/home/$NEWUSER/.config/polybar
|
||||
|
||||
# for neovim set up ~/.config/nvim
|
||||
if [[ $PACKAGES =~ neovim ]]; then
|
||||
mkdir -p $MNT/home/$NEWUSER/.config/nvim
|
||||
@ -315,15 +309,18 @@ package_operations()
|
||||
fi
|
||||
|
||||
# for only gnome or cinnamon we don't need the xfce provided stuff
|
||||
[[ $INSTALL_WMS =~ (gnome|cinnamon) ]] && rmpkg+=" $(pacman -Qssq 'xfce4*' 2>/dev/null)"
|
||||
[[ $INSTALL_WMS =~ (gnome|cinnamon) ]] &&
|
||||
rmpkg+=" $(pacman -Qssq 'xfce4*' 2>/dev/null)"
|
||||
|
||||
# when not using grub bootloader remove it's package and configurations
|
||||
if [[ $BOOTLDR != 'grub' ]]; then
|
||||
rmpkg+=" grub"
|
||||
rm -f $MNT/etc/default/grub
|
||||
find $MNT/boot/ -name 'grub*' -exec rm -rf '{}' \; >/dev/null 2>&1
|
||||
elif [[ $BOOTLDR != 'syslinux' ]]; then
|
||||
# do the same when not using syslinux as the bootloader
|
||||
fi
|
||||
|
||||
# do the same when not using syslinux as the bootloader
|
||||
if [[ $BOOTLDR != 'syslinux' ]]; then
|
||||
find $MNT/boot/ -name 'syslinux*' -exec rm -rf '{}' \; >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
@ -333,7 +330,7 @@ package_operations()
|
||||
if [[ $BASEDEV == true ]]; then
|
||||
chrun "pacman -S iputils --noconfirm" 2>/dev/null
|
||||
chrun "pacman -S base-devel git --needed --noconfirm" 2>/dev/null
|
||||
elif [[ $BASEDEV == false && $INSTALL_WMS =~ dwm ]]; then
|
||||
elif [[ $INSTALL_WMS =~ dwm ]]; then
|
||||
chrun "pacman -S iputils git make --noconfirm" 2>/dev/null
|
||||
else
|
||||
# iputils is needed and should always be installed
|
||||
|
@ -17,7 +17,7 @@ readonly LOCALES="$(awk '/\.UTF-8/ { gsub(/# .*|#/, "")
|
||||
readonly CMAPS="$(find /usr/share/kbd/keymaps -name '*.map.gz' |
|
||||
awk '{gsub(/\.map\.gz|.*\//, ""); print $1 " -"}')"
|
||||
|
||||
select_partitions()
|
||||
mnt_menu()
|
||||
{
|
||||
# prepare partition list PARTS for dialog
|
||||
lvm_detect
|
||||
|
@ -22,7 +22,7 @@ declare -gA PKG_EXT=(
|
||||
[noto-fonts]="noto-fonts-emoji"
|
||||
[kdenlive]="kdebase-runtime dvdauthor frei0r-plugins breeze breeze-gtk"
|
||||
[vlc]="qt5ct qt5-styleplugins"
|
||||
[kdenlive]="qt5ct qt5-styleplugins" # duplicates are stripped with `uniq` later
|
||||
[kdenlive]="qt5ct qt5-styleplugins" # duplicates are stripped with `uniq` later
|
||||
[qbittorrent]="qt5ct qt5-styleplugins"
|
||||
[qutebrowser]="qt5ct qt5-styleplugins"
|
||||
)
|
||||
|
Reference in New Issue
Block a user