From 27ca68f176ddcedf62b2a3a5d1c3ec19c5620ff6 Mon Sep 17 00:00:00 2001 From: natemaia Date: Sun, 3 May 2020 19:31:31 -0700 Subject: [PATCH] Add lxqt as an option --- archlabs-installer | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/archlabs-installer b/archlabs-installer index 594d9f7..a4b6a5a 100755 --- a/archlabs-installer +++ b/archlabs-installer @@ -7,7 +7,7 @@ # shellcheck disable=SC2086,SC2046,SC2254 -VER=2.1.42 +VER=2.1.43 # default values { @@ -208,6 +208,7 @@ declare -A WM_SESSIONS=( [gnome]='gnome-session' [i3-gaps]='i3' [jwm]='jwm' +[lxqt]='startlxqt' [openbox]='openbox-session' [plasma]='startplasma-x11' [xfce4]='startxfce4' @@ -224,6 +225,7 @@ declare -A WM_EXT=( [gnome]='gnome-tweaks' [i3-gaps]='archlabs-skel-i3-gaps' [jwm]='' +[lxqt]='breeze-icons picom libpulse network-manager-applet' [openbox]='archlabs-skel-openbox' [plasma]='kde-applications-meta powerdevil' [xfce4]='archlabs-skel-xfce4 xfce4-goodies' @@ -464,7 +466,7 @@ select_login() "xinit" "Console login with no graphical display manager" \ "lightdm" "Lightweight display manager (deepin and xfce default)" \ "gdm" "Gnome display manager (gnome default, go figure)" \ - "sddm" "Simple desktop display manager (plasma default)" || return 1 + "sddm" "Simple desktop display manager (plasma and lxqt default)" || return 1 case $LOGIN_TYPE in gdm|sddm) @@ -657,12 +659,15 @@ select_bootldr() select_sessions() { + typeset -a pkgs + LOGIN_CHOICES='' dlg INSTALL_WMS check "Sessions" "$_sessions\n" \ i3-gaps "A fork of i3wm with more features including gaps" "$(ofn i3-gaps "$INSTALL_WMS")" \ openbox "A lightweight, powerful, and highly configurable stacking wm" "$(ofn openbox "$INSTALL_WMS")" \ dwm "A dynamic WM for X that manages windows in tiled, floating, or monocle layouts" "$(ofn dwm "$INSTALL_WMS")" \ bspwm "A tiling wm that represents windows as the leaves of a binary tree" "$(ofn bspwm "$INSTALL_WMS")" \ + lxqt "A port of the lightweight desktop environment (LXDE) to Qt" "$(ofn lxqt "$INSTALL_WMS")" \ jwm "A lightweight window manager for Xorg written in C" "$(ofn jwm "$INSTALL_WMS")" \ xfce4 "A lightweight and modular desktop environment based on gtk+2/3" "$(ofn xfce4 "$INSTALL_WMS")" \ awesome "A customized Awesome WM session created by @elanapan" "$(ofn awesome "$INSTALL_WMS")" \ @@ -675,7 +680,7 @@ select_sessions() [[ $INSTALL_WMS ]] || return 0 for i in ${INSTALL_WMS/dwm/}; do - USERWM_PKGS+=("$i") + pkgs+=("$i") done for i in $INSTALL_WMS; do @@ -688,14 +693,14 @@ select_sessions() fi if [[ ${WM_EXT[$i]} ]]; then for j in ${WM_EXT[$i]}; do - [[ ${USERWM_PKGS[*]} != *"$j"* ]] && USERWM_PKGS+=("$j") + pkgs+=("$j") done fi done select_login || return 1 - for pkg in "${USERWM_PKGS[@]}"; do + for pkg in "${pkgs[@]}"; do [[ ${SES_PKGS[*]} != *"$pkg"* ]] && SES_PKGS+=("$pkg") done @@ -1672,7 +1677,7 @@ install_cleanup() [[ $LOGIN_WM == 'dwm' ]] && sed -i '/super/d; /picom/d' "$MNT/home/$user/.xprofile" "$MNT/root/.xprofile" # remove some commands from ~/.xprofile when using self contained sessions - if [[ $LOGIN_WM =~ ($SELF_CONTAINED_SES) || ($LOGIN_TYPE != 'xinit' && ${USERWM_PKGS[*]} =~ ($SELF_CONTAINED)) ]]; then + if [[ $LOGIN_WM =~ ($SELF_CONTAINED_SES) || ($LOGIN_TYPE != 'xinit' && $INSTALL_WMS =~ ($SELF_CONTAINED)) ]]; then sed -i '/super/d; /nitrogen/d; /picom/d' "$MNT/home/$user/.xprofile" "$MNT/root/.xprofile" fi @@ -3057,6 +3062,9 @@ elif (( UID != 0 )); then elif ! grep -qwm 1 'lm' /proc/cpuinfo; then msg "Not x86_64 Architecture" "\nThis installer only supports x86_64 architectures.\n\nExiting..\n" 2 die 1 +elif [[ ! -d $MNT ]]; then + msg "No Mount Directory" "\nThe installer expects an existing directory for mounting.\n\nExiting..\n" 2 + die 1 fi # trap ^C to perform cleanup