Update install.sh

This commit is contained in:
2024-05-23 18:40:24 +02:00
parent 3f99af1ff2
commit 96dc7a5374

View File

@@ -39,7 +39,7 @@
# Start the install *_:*:_*:*:_*_*:*:_*::*_*::*_*:_*::*_*:*:**_:*:*_*:*:_*:*_:*:# # Start the install *_:*:_*:*:_*_*:*:_*::*_*::*_*:_*::*_*:*:_:*:*_*:*:_*:*_:*:#
# Whiptail colors # Whiptail colors
export NEWT_COLORS=' export NEWT_COLORS='
@@ -111,12 +111,13 @@ PROGRAMS=$(whiptail --title "The Install selection" --checklist --separate-outpu
"2" "Is this a laptop we are installing on!" OFF \ "2" "Is this a laptop we are installing on!" OFF \
"3" "Install XRDP Remote desktop" OFF \ "3" "Install XRDP Remote desktop" OFF \
"4" "Install Thunar file manager" ON \ "4" "Install Thunar file manager" ON \
"5" "Install Google Chrome" ON \ "5" "Install Google Chrome Webbrowser" ON \
"6" "Install Neovim Text Editor" ON \ "6" "Install Neovim Text Editor" ON \
"7" "Install VS Code Editor" OFF \ "7" "Install VS Code Editor" OFF \
"8" "Install SMB/CIFS Storage Client" ON \ "8" "Install SMB/CIFS Storage Client" ON \
"9" "Install NFS Storage Client" OFF \ "9" "Install NFS Storage Client" OFF \
"10" "Install Ceph Storage Client" OFF 3>&1 1>&2 2>&3) "10" "Install Ceph Storage Client" OFF \
"11" "Install Firefox Webbrowser" OFF 3>&1 1>&2 2>&3)
# See the actual installation below - Install selection choose what to install End # See the actual installation below - Install selection choose what to install End
@@ -213,9 +214,12 @@ echo -e "${YELLOW} Qtile Core Dependencies apt install ${NC}"
sudo apt install -y python3-pip python3-xcffib python3-cairocffi python3-cffi libpangocairo-1.0-0 python-dbus-dev libxkbcommon-dev libxkbcommon-x11-dev python3-venv python3-psutil feh sudo apt install -y python3-pip python3-xcffib python3-cairocffi python3-cffi libpangocairo-1.0-0 python-dbus-dev libxkbcommon-dev libxkbcommon-x11-dev python3-venv python3-psutil feh
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
echo -e "${YELLOW} Set User folders via xdg-user-dirs-update. ${NC}" echo -e "${YELLOW} Set User folders via xdg-user-dirs-update & xdg-mime default. ${NC}"
xdg-user-dirs-update xdg-user-dirs-update
xdg-mime default nsxiv.desktop image/jpeg
xdg-mime default nsxiv.desktop image/png
# Picom (Yshui) install # Picom (Yshui) install
#sudo apt install -y libconfig-dev libdbus-1-dev libegl-dev libev-dev libgl-dev libepoxy-dev libpcre2-dev libpixman-1-dev libx11-xcb-dev libxcb1-dev libxcb-composite0-dev libxcb-damage0-dev libxcb-dpms0-dev libxcb-glx0-dev libxcb-image0-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-shape0-dev libxcb-util-dev libxcb-xfixes0-dev libxext-dev meson ninja-build uthash-dev #sudo apt install -y libconfig-dev libdbus-1-dev libegl-dev libev-dev libgl-dev libepoxy-dev libpcre2-dev libpixman-1-dev libx11-xcb-dev libxcb1-dev libxcb-composite0-dev libxcb-damage0-dev libxcb-dpms0-dev libxcb-glx0-dev libxcb-image0-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-shape0-dev libxcb-util-dev libxcb-xfixes0-dev libxext-dev meson ninja-build uthash-dev
@@ -252,11 +256,17 @@ if [ ! -f ~/.config/qtile/autostart.sh ]; then
cat << QTILEAUTOSTART > ~/.config/qtile/autostart.sh cat << QTILEAUTOSTART > ~/.config/qtile/autostart.sh
#!/bin/sh #!/bin/sh
pgrep -x picom > /dev/null || picom -b & pgrep -x picom > /dev/null || picom -b &
if [ -f ~/.fehbg ]; then
. ~/.fehbg
else
feh --bg-scale "$(find ~/Wallpapers -type f | shuf -n 1)"
fi
amixer set Master 10% & amixer set Master 10% &
dunst & dunst &
numlockx on & numlockx on &
mpd & mpd &
#nitrogen --restore & #nitrogen --restore &
if [ -f ~/.fehbg ]; then . ~/.fehbg fi &
# lock computer automatically after X time of minutes. # lock computer automatically after X time of minutes.
xautolock -time 120 -locker "xsecurelock" -detectsleep -secure & xautolock -time 120 -locker "xsecurelock" -detectsleep -secure &
@@ -2287,6 +2297,9 @@ do
"10") "10")
sudo apt install -y ceph-commen sudo apt install -y ceph-commen
;; ;;
"11")
sudo apt install -y firefox-esr
;;
esac esac
done done
@@ -2306,7 +2319,7 @@ cat << "QTILECONFIG" > ~/.config/qtile/config.py
import os import os
import subprocess import subprocess
from libqtile import bar, layout, qtile, widget, hook from libqtile import bar, layout, qtile, widget, hook
from libqtile.config import Click, Drag, Group, Key, Match, Screen, ScratchPad, DropDown from libqtile.config import Click, Drag, Group, Key, Match, Screen, ScratchPad, DropDown, re
from libqtile.lazy import lazy from libqtile.lazy import lazy
from libqtile.utils import guess_terminal # terminal = guess_terminal() from libqtile.utils import guess_terminal # terminal = guess_terminal()
#from libqtile.dgroups import simple_key_binder #from libqtile.dgroups import simple_key_binder
@@ -2484,16 +2497,16 @@ for vt in range(1, 8):
# nf-md-pac_man 󰮯 nf-md-ghost 󰊠 nf-fa-circle  nf-cod-circle_large  nf-cod-circle_filled  nf-md-circle_small 󰧟 nf-md-circle_medium 󰧞 # nf-md-pac_man 󰮯 nf-md-ghost 󰊠 nf-fa-circle  nf-cod-circle_large  nf-cod-circle_filled  nf-md-circle_small 󰧟 nf-md-circle_medium 󰧞
groups = [ groups = [
Group("1", label="󰮯", layout="monadtall"), Group("1", label="", layout="monadtall", matches=[Match(wm_class=re.compile(r"^(Google\-chrome)$"))]),
Group("2", label="󰧞", layout="monadtall"), Group("2", label="", layout="monadtall"),
Group("3", label="", layout="monadtall"), Group("3", label="", layout="monadtall"),
Group("4", label="󰧞", layout="monadtall"), Group("4", label="", layout="monadtall"),
Group("5", label="󰊠", layout="monadtall"), Group("5", label="", layout="monadtall"),
Group("6", label="󰧞", layout="monadtall"), Group("6", label="", layout="monadtall"),
Group("7", label="󰧞", layout="monadtall"), Group("7", label="", layout="monadtall"),
Group("8", label="", layout="monadtall"), Group("8", label="", layout="monadtall"),
Group("9", label="󰧞", layout="monadtall"), Group("9", label="", layout="monadtall", matches=[Match(wm_class=re.compile(r"^(Firefox\-esr)$"))]),
Group("0", label="", layout="bsp"), Group("0", label="", layout="bsp"),
] ]
for i in groups: for i in groups:
@@ -2548,18 +2561,18 @@ def init_layout_theme():
layout_theme = init_layout_theme() layout_theme = init_layout_theme()
layouts = [ layouts = [
layout.MonadTall(**layout_theme), layout.MonadTall(layout_theme),
layout.Max(**layout_theme), layout.Max(layout_theme),
layout.Bsp(**layout_theme), layout.Bsp(layout_theme),
# layout.Columns(**layout_theme), # layout.Columns(layout_theme),
# layout.Stack(num_stacks=2), # layout.Stack(num_stacks=2),
# layout.Matrix(**layout_theme), # layout.Matrix(layout_theme),
# layout.MonadWide(**layout_theme), # layout.MonadWide(layout_theme),
# layout.RatioTile(**layout_theme), # layout.RatioTile(layout_theme),
# layout.Tile(**layout_theme), # layout.Tile(layout_theme),
# layout.TreeTab(**layout_theme), # layout.TreeTab(layout_theme),
# layout.VerticalTile(**layout_theme), # layout.VerticalTile(layout_theme),
# layout.Zoomy(**layout_theme), # layout.Zoomy(layout_theme),
] ]
widget_defaults = dict( widget_defaults = dict(
@@ -2577,8 +2590,7 @@ screens = [
[ [
widget.CurrentLayoutIcon(scale=0.7, padding=10), widget.CurrentLayoutIcon(scale=0.7, padding=10),
widget.Spacer(length=5), widget.Spacer(length=5),
widget.GroupBox(fontsize=16, highlight_method="text", highlight_color="#12181c", urgent_border="#ffffff", active="#ffffff", inactive="#465159", rounded="False", borderwidth=0), widget.GroupBox(fontsize=17, highlight_method="text", this_current_screen_border="#f7f7f7", highlight_color=colors["base0B"], this_screen_border=colors["base04"], urgent_border=colors["base03"], active=colors["base05"], inactive=colors["base03"], rounded="False", borderwidth=0), widget.Spacer(length=9),
widget.Spacer(length=9),
widget.Prompt(), widget.Prompt(),
widget.Spacer(), widget.Spacer(),
widget.WindowName(width=bar.CALCULATED, max_chars=120), widget.WindowName(width=bar.CALCULATED, max_chars=120),
@@ -2586,7 +2598,7 @@ screens = [
widget.Systray(fmt="󱊖 {}", icon_size=20), widget.Systray(fmt="󱊖 {}", icon_size=20),
# NB Wayland is incompatible with Systray, consider using StatusNotifier # NB Wayland is incompatible with Systray, consider using StatusNotifier
# widget.StatusNotifier(), # widget.StatusNotifier(),
widget.Wallpaper(directory="~/Wallpapers/", label="", random_selection="True"), #widget.Wallpaper(directory="~/Wallpapers/", label="", random_selection="True"),
#widget.NetGraph(type='line', line_width=1), #widget.NetGraph(type='line', line_width=1),
#widget.Net(prefix='M'), #widget.Net(prefix='M'),
widget.ThermalSensor(format='CPU: {temp:.0f}{unit}'), widget.ThermalSensor(format='CPU: {temp:.0f}{unit}'),
@@ -2595,11 +2607,11 @@ screens = [
widget.Clock(fmt=" {}",format="%H:%M %A %d-%m-%Y %p"), widget.Clock(fmt=" {}",format="%H:%M %A %d-%m-%Y %p"),
#widget.QuickExit(default_text="LOGOUT", countdown_format=" {} "), #widget.QuickExit(default_text="LOGOUT", countdown_format=" {} "),
widget.Spacer(length=20), widget.Spacer(length=20),
], 28, # Define bar height ], 30, # Define bar height
background=["#000000CC"], # Bar background color can also take transparency with "hex color code" or .75 background=["#011F2B"], # Bar background color can also take transparency with "hex color code" or .75
margin=[5, 5, 0, 5], # Space around bar as int or list of ints [N E S W] margin=[5, 5, 0, 5], # Space around bar as int or list of ints [N E S W]
border_width=[0, 0, 0, 0], # Width of border as int of list of ints [N E S W] border_width=[0, 0, 0, 0], # Width of border as int of list of ints [N E S W]
border_color=["074173", "000000", "074173", "000000"] # Border colour as str or list of str [N E S W] border_color=["f7f7f7", "f7f7f7", "f7f7f7", "f7f7f7"] # Border colour as str or list of str [N E S W]
), ),
# You can uncomment this variable if you see that on X11 floating resize/moving is laggy # You can uncomment this variable if you see that on X11 floating resize/moving is laggy
# By default we handle these events delayed to already improve performance, however your system might still be struggling # By default we handle these events delayed to already improve performance, however your system might still be struggling
@@ -2623,7 +2635,7 @@ follow_mouse_focus = True
bring_front_click = False bring_front_click = False
floats_kept_above = True floats_kept_above = True
cursor_warp = False cursor_warp = False
floating_layout = layout.Floating(**layout_theme, floating_layout = layout.Floating(layout_theme,
float_rules=[ float_rules=[
# Run the utility xprop to see the wm class and name of an X client. # Run the utility xprop to see the wm class and name of an X client.
*layout.Floating.default_float_rules, *layout.Floating.default_float_rules,
@@ -2643,12 +2655,21 @@ reconfigure_screens = True
# focus, should we respect this or not? # focus, should we respect this or not?
auto_minimize = True auto_minimize = True
# Remember to add, "import os" and "import subprocess" # Remember to add, "hook" "import os" "import subprocess" "Match"
@hook.subscribe.startup_once @hook.subscribe.startup_once
def autostart(): def autostart():
autostartscript = os.path.expanduser("~/.config/qtile/autostart.sh") autostartscript = os.path.expanduser("~/.config/qtile/autostart.sh")
subprocess.run([autostartscript]) subprocess.run([autostartscript])
@hook.subscribe.client_new
def move_window_to_group(client):
for group in groups:
if any(client.match(match) for match in group.matches):
client.togroup(group.name)
client.qtile.groups_map[group.name].toscreen()
break
# When using the Wayland backend, this can be used to configure input devices. # When using the Wayland backend, this can be used to configure input devices.
wl_input_rules = None wl_input_rules = None