Prepare for sway. Remove old comments

This commit is contained in:
RealStickman 2022-06-05 16:23:05 +02:00
parent 1317fb627c
commit e733d5d11c
4 changed files with 59 additions and 419 deletions

View File

@ -1,14 +1,14 @@
#!/bin/bash
# TODO make this work
# NOTE ignore errors from missing "||". Try getting the line below to work
#set -euo pipefail
set -euo pipefail
# get current directory
setupdir=$(pwd)
# get script directory
scriptloc="$BASH_SOURCE"
setupdir=$(dirname "$scriptloc")
#setupdir=$(pwd)
#change to home (does not show in terminal)
cd "$HOME"
#change to home directory
#cd "$HOME"
# check if multilib repo is enabled
if ! pacman -Sl multilib &> /dev/null; then
@ -17,35 +17,28 @@ if ! pacman -Sl multilib &> /dev/null; then
fi
# fix install problems
echo Updating repos and packages
sudo pacman -Syu
echo Installing pip
sudo pacman -S --needed python-pip
#in_xfce=0
#in_i3gaps=0
echo Select packages to install
cmd=(dialog --separate-output --checklist "Select Desktop environment/Window manager:" 22 76 16)
options=(0 "[DE] xfce4" off # any option can be set to default to "on"
100 "[WM] i3-gaps" off)
options=(100 "[WM] i3-gaps" off
101 "[WM] sway" off)
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
clear
for choice in $choices
do
case $choice in
0)
#in_xfce=1
echo "xfce4" >> "$setupdir/selectedpkgs.txt"
;;
100)
#in_i3gaps=1
echo "i3-gaps" >> "$setupdir/selectedpkgs.txt"
;;
101)
printf '%s\n' 'sway' 'swaylock' 'swayidle' >> "$setupdir/selectedpkgs.txt"
esac
done
#in_firefox=0
#in_chromium=0
#in_tor=0
cmd=(dialog --separate-output --checklist "Select browsers:" 22 76 16)
options=(0 "Firefox" on # any option can be set to default to "on"
10 "Chromium" off
@ -56,40 +49,17 @@ for choice in $choices
do
case $choice in
0)
#in_firefox=1
echo "firefox" >> "$setupdir/selectedpkgs.txt"
;;
10)
#in_chromium=1
echo "chromium" >> "$setupdir/selectedpkgs.txt"
;;
20)
#in_tor=1
echo "torbrowser-launcher" >> "$setupdir/selectedpkgs.txt"
;;
esac
done
#in_virtmanager=0
#in_vmware15=0
#in_steam=0
#in_lutris=0
#in_blender=0
#in_krita=0
#in_youtubedl=0
#in_discord=0
#in_handbrake=0
#in_gimp=0
#in_audacity=0
#in_mangohud=0
#in_easystrokes=0
#in_liferea=0
#in_fractal=0
#in_bettergram=0
#in_waifu2x=0
#in_telegram=0
#in_element=0
cmd=(dialog --separate-output --checklist "Select other programs:" 22 76 16)
options=(0 "VirtManager" off # any option can be set to default to "on"
1 "VMWare Workstation" off
@ -99,15 +69,14 @@ options=(0 "VirtManager" off # any option can be set to default to "on"
13 "Cemu" off
20 "Krita" off
21 "Gimp" off
#30 "Youtube-dl" off
31 "YT-dlp" on
31 "YT-dlp" off
32 "Megatools" off
40 "Handbrake" off
41 "Audacity" off
50 "Easystroke" on
60 "Discord" on
61 "Element" on
62 "Telegram" on
50 "Easystroke" off
60 "Discord" off
61 "Element" off
62 "Telegram" off
70 "TestSSL" off)
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
clear
@ -115,19 +84,15 @@ for choice in $choices
do
case $choice in
0)
#in_virtmanager=1
printf '%s\n' 'qemu' 'virt-manager' 'ebtables' 'dnsmasq' >> "$setupdir/selectedpkgs.txt"
;;
1)
#in_vmware15=1
echo "vmware-workstation" >> "$setupdir/aurselectedpkgs.txt"
;;
10)
#in_steam=1
printf '%s\n' 'steam' 'steam-native-runtime' >> "$setupdir/selectedpkgs.txt"
;;
11)
#in_lutris=1
echo "lutris" >> "$setupdir/selectedpkgs.txt"
;;
12)
@ -137,17 +102,11 @@ do
echo "cemu" >> "$setupdir/aurselectedpkgs.txt"
;;
20)
#in_krita=1
echo "krita" >> "$setupdir/selectedpkgs.txt"
;;
21)
#in_gimp=1
echo "gimp" >> "$setupdir/selectedpkgs.txt"
;;
30)
#in_youtubedl=1
echo "youtube-dl" >> "$setupdir/selectedpkgs.txt"
;;
31)
printf '%s\n' 'yt-dlp' 'yt-dlp-drop-in' >> "$setupdir/aurselectedpkgs.txt"
;;
@ -155,30 +114,22 @@ do
echo "megatools-bin" >> "$setupdir/aurselectedpkgs.txt"
;;
40)
#in_handbrake=1
echo "handbrake" >> "$setupdir/selectedpkgs.txt"
;;
41)
# TODO
#in_audacity=1
#echo "audacity" >> "$setupdir/selectedpkgs.txt"
echo "The situation with audacity is unknown right now. Check for FOSS no-telemetry forks"
echo "audacity" >> "$setupdir/selectedpkgs.txt"
;;
50)
#in_easystrokes=1
echo "easystroke" >> "$setupdir/aurselectedpkgs.txt"
;;
60)
#in_discord=1
#echo "discord" >> "$setupdir/selectedpkgs.txt"
echo "discord_arch_electron" >> "$setupdir/aurselectedpkgs.txt"
echo "discord" >> "$setupdir/selectedpkgs.txt"
#echo "discord_arch_electron" >> "$setupdir/aurselectedpkgs.txt"
;;
61)
#in_element=1
echo "element-desktop" >> "$setupdir/selectedpkgs.txt"
;;
62)
#in_telegram=1
echo "telegram-desktop" >> "$setupdir/selectedpkgs.txt"
;;
70)
@ -190,7 +141,8 @@ done
in_acpufreq=0
cmd=(dialog --separate-output --checklist "Performance and Battery life" 22 76 16)
options=(0 "auto-cpufreq" off)
options=(0 "auto-cpufreq" off
1 "corectrl" off)
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
clear
for choice in $choices
@ -202,14 +154,12 @@ do
# TODO Handle rest of installation
;;
1)
#in_corectrl=1
echo "corectrl" >> "$setupdir/aurselectedpkgs.txt"
;;
esac
done
in_doomemacs=0
#in_vscodium=0
in_podman=0
cmd=(dialog --separate-output --checklist "Devtools" 22 76 16)
@ -229,7 +179,6 @@ do
# TODO handle rest of installation
;;
1)
#in_vscodium=1
echo "vscodium-bin" >> "$setupdir/aurselectedpkgs.txt"
;;
10)
@ -238,9 +187,6 @@ do
esac
done
#in_teams=0
#in_slack=0
cmd=(dialog --separate-output --checklist "School and work communication" 22 76 16)
options=(0 "Teams" off
1 "Slack" off
@ -251,11 +197,9 @@ for choice in $choices
do
case $choice in
0)
#in_teams=1
echo "teams" >> "$setupdir/aurselectedpkgs.txt"
;;
1)
#in_slack=1
#echo "slack-desktop" >> "$setupdir/aurselectedpkgs.txt"
echo "slack-electron" >> "$setupdir/aurselectedpkgs.txt"
;;
@ -265,8 +209,6 @@ do
esac
done
#in_pkgstats=0
cmd=(dialog --separate-output --checklist "Report installed packages?" 22 76 16)
options=(0 "pkgstats" off)
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
@ -275,12 +217,12 @@ for choice in $choices
do
case $choice in
0)
#in_pkgstats=1
echo "pkgstats" >> "$setupdir/selectedpkgs.txt"
;;
esac
done
: '
# Packages installed on different systems
in_arco_pc=0
in_arco_hp=0
@ -301,48 +243,37 @@ do
;;
esac
done
'
#uninstalling unused packages
echo Uninstalling unused packages
sudo pacman -Rns - < "$setupdir/packages/uninstall.txt"
# || true to pass set -e (error when encountering packages not installed)
sudo pacman -Rns - < "$setupdir/packages/uninstall.txt" &>/dev/null || true
echo Uninstalled unused packages
# find all repos
sudo pacman -Sy
#update stuff
echo Updating packages
sudo pacman -Syu
echo Updated packages
#pacman programs
echo Installing default pacman programs
sudo pacman -S --needed - < "$setupdir/packages/officialpkgs.txt"
echo Installed official programs
# pip
echo Installing python programs
pip install --user autotrash
echo Installed python programs
# setup autotrash
"$HOME/.local/bin/autotrash" -d 5 --install
systemctl --user start autotrash
systemctl --user enable autotrash.timer
#echo Installing python programs
# AUR package exists
#pip install --user autotrash
#echo Installed python programs
: '
# REVIEW Patched neofetch version to remove Color codes
git clone https://github.com/RealStickman/neofetch
cd neofetch
sudo make install
cd ..
rm -rf neofetch
'
# install paru-bin with yay, or download paru from github
if [[ $(pacman -Q | grep yay) ]] && [[ ! $(pacman -Q | grep paru) ]]; then
echo "Installing paru"
yay -S paru-bin
elif [[ ! $(pacman -Q | grep yay) ]] && [[ ! $(pacman -Q | grep paru) ]]; then
echo "Installing paru from git"
# install paru-bin if not already present
if [[ ! $(pacman -Q | grep paru-bin) ]]; then
echo "Installing paru-bin"
git clone https://aur.archlinux.org/paru-bin.git
cd paru-bin
makepkg -si
@ -382,245 +313,6 @@ sudo pacman -S --needed - < "$setupdir/selectedpkgs.txt"
echo Installing from AUR
paru -S --needed - < "$setupdir/aurselectedpkgs.txt"
: '
if [ $in_vmware15 -eq 1 ]; then
echo "Installing VMWare Workstation 15"
paru -S --needed vmware-workstation15
else
echo "Skipping VMWare Workstation 15"
fi
'
#DEs & WMs
: '
if [ $in_xfce -eq 1 ]; then
echo "Installing xfce"
sudo pacman -S --needed xfce4
else
echo "Skipping xfce"
fi
'
: '
if [ $in_i3gaps -eq 1 ]; then
echo "Installing i3-gaps"
sudo pacman -S --needed i3-gaps
else
echo "Skipping i3-gaps"
fi
'
: '
#browsers
if [ $in_firefox -eq 1 ]; then
echo "Installing Firefox"
sudo pacman -S --needed firefox
else
echo "Skipping Firefox"
fi
'
: '
if [ $in_chromium -eq 1 ]; then
echo "Installing Chromium"
sudo pacman -S --needed chromium
else
echo "Skipping Chromium"
fi
'
: '
if [ $in_netsurf -eq 1 ]; then
echo "Installing Netsurf"
sudo pacman -S --needed netsurf
else
echo "Skipping Netsurf"
fi
'
: '
if [ $in_icecat -eq 1 ]; then
echo "Installing Icecat"
paru -S --needed icecat-bin
else
echo "Skipping Icecat"
fi
'
: '
if [ $in_tor -eq 1 ]; then
echo "Installing Tor"
sudo pacman -S --needed torbrowser-launcher
else
echo "Skipping Tor"
fi
'
#other programs
: '
if [ $in_virtmanager -eq 1 ]; then
echo "Installing VirtManager"
sudo pacman -S --needed qemu virt-manager
else
echo "Skipping VirtManager"
fi
'
: '
if [ $in_steam -eq 1 ]; then
echo "Installing Steam"
sudo pacman -S --needed steam steam-native-runtime
else
echo "Skipping Steam"
fi
'
: '
if [ $in_lutris -eq 1 ]; then
echo "Installing Lutris"
sudo pacman -S --needed lutris
else
echo "Skipping Lutris"
fi
'
: '
if [ $in_blender -eq 1 ]; then
echo "Installing Blender"
sudo pacman -S --needed blender
else
echo "Skipping Blender"
fi
'
: '
if [ $in_krita -eq 1 ]; then
echo "Installing Krita"
sudo pacman -S --needed krita
else
echo "Skipping Krita"
fi
'
: '
if [ $in_youtubedl -eq 1 ]; then
echo "Installing Youtube-dl"
sudo pacman -S --needed youtube-dl
else
echo "Skipping Youtube-dl"
fi
'
: '
if [ $in_discord -eq 1 ]; then
echo "Installing Discord"
#sudo pacman -S --needed discord
paru -S discord_arch_electron
else
echo "Skipping Discord"
fi
'
: '
if [ $in_handbrake -eq 1 ]; then
echo "Installing Handbrake"
sudo pacman -S --needed handbrake
else
echo "Skipping Handbrake"
fi
'
: '
if [ $in_gimp -eq 1 ]; then
echo "Installing Gimp"
sudo pacman -S --needed gimp
else
echo "Skipping Gimp"
fi
'
: '
if [ $in_audacity -eq 1 ]; then
echo "Installing Audacity"
sudo pacman -S --needed audacity
else
echo "Skipping Audacity"
fi
'
: '
if [ $in_mangohud -eq 1 ]; then
echo "Installing MangoHud"
git clone --recurse-submodules https://github.com/flightlessmango/MangoHud.git
./MangoHud/build.sh install
else
echo "Skipping MangoHud"
fi
'
: '
if [ $in_easystrokes -eq 1 ]; then
echo "Installing Easystrokes"
paru -S --needed easystroke
else
echo "Skipping Easystrokes"
fi
'
: '
if [ $in_liferea -eq 1 ]; then
echo "Installing Liferea"
paru -S --needed liferea
else
echo "Skipping Liferea"
fi
'
: '
if [ $in_fractal -eq 1 ]; then
echo "Installing Fractal"
sudo pacman -S --needed fractal
else
echo "Skipping Fractal"
fi
'
: '
if [ $in_bettergram -eq 1 ]; then
echo "Installing Bettergram"
paru -S --needed bettergram
else
echo "Skipping Bettergram"
fi
'
: '
if [ $in_waifu2x -eq 1 ]; then
echo "Installing Waifu2x"
paru -S --needed waifu2x-ncnn-vulkan
else
echo "Skipping Waifu2x"
fi
'
: '
if [ $in_telegram -eq 1 ]; then
echo "Installing Telegram"
sudo pacman -S --needed telegram-desktop
else
echo "Skipping Telegram"
fi
'
: '
if [ $in_element -eq 1 ]; then
echo "Installing Element"
sudo pacman -S --needed element-desktop
else
echo "Skipping Element"
fi
'
#performance and battery life
if [ $in_acpufreq -eq 1 ]; then
echo "Installing auto-cpufreq"
@ -628,8 +320,6 @@ if [ $in_acpufreq -eq 1 ]; then
sudo auto-cpufreq --install
sudo systemctl start auto-cpufreq
sudo systemctl enable auto-cpufreq
else
echo "Skipping auto-cpufreq"
fi
#devtools
@ -641,19 +331,8 @@ if [ $in_doomemacs -eq 1 ]; then
git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.d
~/.emacs.d/bin/doom install
export PATH="$PATH":$HOME/.emacs.d/bin
else
echo "Skipping doom-emacs"
fi
: '
if [ $in_vscodium -eq 1 ]; then
echo "Installing vscodium"
paru -S --needed vscodium-bin
else
echo "Skipping vscodium"
fi
'
if [ $in_podman -eq 1 ]; then
echo "Installing podman"
sudo pacman -S --needed podman podman-dnsname fuse-overlayfs
@ -661,40 +340,8 @@ if [ $in_podman -eq 1 ]; then
sudo usermod --add-subuids 100000-165536 --add-subgids 100000-165536 "$USER"
sudo groupadd -f podman
sudo usermod -aG podman "$USER"
else
echo "Skipping podman"
fi
: '
#other social stuff
if [ $in_teams -eq 1 ]; then
echo "Installing teams"
paru -S --needed teams
else
echo "Skipping teams"
fi
'
: '
if [ $in_slack -eq 1 ]; then
echo "Installing slack"
#paru -S --needed slack-desktop
paru -s --needed slack-electron
else
echo "Skipping slack"
fi
'
: '
#stats
if [ $in_pkgstats -eq 1 ]; then
echo "Installing pkgstats"
sudo pacman -S --needed pkgstats
else
echo "Skipping pkgstats"
fi
'
# other system configs
# arco pc
if [ $in_arco_pc -eq 1 ]; then
@ -711,22 +358,24 @@ fi
##############################
##### Configuration #####
##############################
echo Configuring packages
#change shell
chsh -s /usr/bin/fish "$USER"
#enable vnstat
sudo systemctl enable vnstat
sudo systemctl start vnstat
sudo systemctl enable --now vnstat
# setup autotrash
autotrash -d 5 --install
systemctl --user start autotrash
systemctl --user enable autotrash.timer
# enable lockscreen for systemd
sudo systemctl enable betterlockscreen@$USER
#sudo systemctl enable betterlockscreen@$USER
# enable firewall
echo "Enabling Firewall"
#sudo ufw enable
#sudo systemctl enable ufw
#sudo systemctl start ufw
sudo systemctl enable --now firewalld
sudo firewall-cmd --zone=public --permanent --remove-service=ssh
@ -735,35 +384,39 @@ sudo systemctl enable lightdm
# regenerate locale
# Fixes rofi not launching
sudo locale-gen
#sudo locale-gen
# update fonts cache
fc-cache -f
# download grub theme
git clone https://github.com/xenlism/Grub-themes.git
cd "Grub-themes/xenlism-grub-arch-1080p/"
sudo bash install.sh
#git clone https://github.com/xenlism/Grub-themes.git
#cd "Grub-themes/xenlism-grub-arch-1080p/"
#sudo bash install.sh
# go back
cd ../../
#cd ../../
#Changes to home folder automatically now, no need to be extra careful anymore.
# TODO make config script independent of download location
cd "$HOME"
git clone https://gitlab.com/RealStickman-arch/config
echo Finished downloading config
# Download git repos
bash ~/config/scripts/sc-git-pull
#cleanup
rm -rf ~/setup
rm -rf "$setupdir"
echo Removed setup files
#downloading config
echo Setting config
bash ~/config/install.sh
# Download git repos
bash ~/config/scripts/sc-git-pull
if [[ $(pacman -Q pkgstats 2>/dev/null > /dev/null) ]]; then
pkgstats
sudo systemctl enable --now pkgstats.timer
fi
echo Finished everything

View File

@ -1,10 +0,0 @@
alsa-card-profiles
alsa-utils
lib32-libpulse
libcanberra-pulse
libpulse
pavucontrol
pulseaudio
pulseaudio-alsa
pulseaudio-bluetooth
pulseeffects-legacy

View File

@ -1,5 +1,4 @@
autotrash
betterlockscreen
bitwarden
btrfsmaintenance
downgrade

View File

@ -1,6 +1,5 @@
acpilight
age
arandr
bandwhich
base-devel
brotli
@ -90,7 +89,6 @@ python-pip
qt5-imageformats
reflector
restic
rofi
rsync
seahorse
smartmontools
@ -111,6 +109,7 @@ vnstat
webkit2gtk
wget
wireguard-tools
wofi
xdg-user-dirs
xf86-input-elographics
xf86-input-evdev
@ -121,6 +120,5 @@ xf86-video-ati
xf86-video-fbdev
xf86-video-intel
xf86-video-nouveau
xfce4-power-manager
xfsprogs
xorg-xrdb