Add start.sh
This commit is contained in:
125
start.sh
Normal file
125
start.sh
Normal file
@@ -0,0 +1,125 @@
|
||||
#!/bin/bash
|
||||
|
||||
# whiptail colors
|
||||
export NEWT_COLORS='
|
||||
root=white,gray
|
||||
window=white,lightgray
|
||||
border=black,lightgray
|
||||
shadow=white,black
|
||||
button=white,blue
|
||||
actbutton=black,red
|
||||
compactbutton=black,
|
||||
title=black,
|
||||
roottext=black,magenta
|
||||
textbox=black,lightgray
|
||||
acttextbox=gray,white
|
||||
entry=lightgray,gray
|
||||
disentry=gray,lightgray
|
||||
checkbox=black,lightgray
|
||||
actcheckbox=white,blue
|
||||
emptyscale=,black
|
||||
fullscale=,red
|
||||
listbox=black,lightgray
|
||||
actlistbox=lightgray,gray
|
||||
actsellistbox=white,blue'
|
||||
|
||||
echo "-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-"
|
||||
echo " "
|
||||
echo " Enter your user password, to continue if necessary"
|
||||
echo " "
|
||||
echo "-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-"
|
||||
|
||||
# Start install
|
||||
sudo apt update && sudo apt install -y git wget curl whiptail
|
||||
|
||||
# Install start screen
|
||||
if (whiptail --title "Installation of the Martin Qtile desktop" --yesno "Do you want to start the installation ?" 10 60); then
|
||||
echo "Okay, let's start"
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Core System
|
||||
sudo apt install -y xserver-xorg xinit arandr autorandr
|
||||
sudo apt install -y sddm --no-install-recommends
|
||||
|
||||
# Qtile Core Dependencies
|
||||
sudo apt install -y python3-pip python3-xcffib python3-cairocffi python3-cffi libpangocairo-1.0-0
|
||||
|
||||
|
||||
# Set User folders via xdg-user-dirs-update.
|
||||
xdg-user-dirs-update
|
||||
|
||||
|
||||
# Yshui Picom 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
|
||||
cd /tmp
|
||||
git clone https://github.com/yshui/picom
|
||||
cd picom
|
||||
meson setup --buildtype=release build && ninja -C build && sudo ninja -C build install
|
||||
|
||||
mkdir -p ~/.config/picom
|
||||
cp picom.sample.conf ~/.config/picom/picom.conf
|
||||
|
||||
|
||||
# Qtile Pip Installing From Source
|
||||
cd /tmp
|
||||
git clone https://github.com/qtile/qtile.git && cd qtile && pip install . --break-system-packages
|
||||
|
||||
sudo mkdir -p /usr/share/xsessions/
|
||||
sudo bash -c 'cat << EOF >> /usr/share/xsessions/qtile.desktop
|
||||
[Desktop Entry]
|
||||
Name=Qtile
|
||||
Comment=Qtile Session
|
||||
Exec=qtile start
|
||||
Type=Application
|
||||
Keywords=wm;tiling
|
||||
EOF'
|
||||
|
||||
|
||||
# Edit GRUB BOOT TIMEOUT
|
||||
sudo sed -i 's+GRUB_TIMEOUT=5+GRUB_TIMEOUT=1+g' /etc/default/grub && sudo update-grub
|
||||
|
||||
|
||||
# XRDP Install yes-no
|
||||
questions=("Do you want to install XRDP")
|
||||
commands=("sudo apt install -y xrdp && echo "qtile start" > .xsession && sudo systemctl restart xrdp.service")
|
||||
|
||||
# Array to store user choices
|
||||
choices=()
|
||||
|
||||
# Loop through questions
|
||||
for i in "${!questions[@]}"; do
|
||||
# Display the question using whiptail
|
||||
choice=$(whiptail --title "Question $((i+1))" --yesno "${questions[$i]}" 10 60 3>&1 1>&2 2>&3)
|
||||
|
||||
# Check the exit status of whiptail
|
||||
if [ $? -eq 0 ]; then
|
||||
choices+=("yes")
|
||||
else
|
||||
choices+=("no")
|
||||
fi
|
||||
done
|
||||
|
||||
# Execute commands based on user choices
|
||||
for i in "${!choices[@]}"; do
|
||||
case ${choices[$i]} in
|
||||
"yes" )
|
||||
echo "Executing $((i+1))..."
|
||||
# Replace the command below with the actual command you want to execute
|
||||
eval "${commands[$i]}"
|
||||
;;
|
||||
"no" )
|
||||
echo "Skipping $((i+1))."
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
##### ##### ##### ##### ##### ##### ##### ##### ##### ##### ##### ##### ##### #####
|
||||
|
||||
# Install closing screen
|
||||
if (whiptail --title "Installation Complete" --yesno "Installation is complete, Do you want to restart the computer?" 10 60); then
|
||||
sudo reboot
|
||||
else
|
||||
echo "You chose not to restart the computer, Installation complete."
|
||||
fi
|
||||
Reference in New Issue
Block a user