2020-02-21 14:58:26 +01:00
|
|
|
#!/bin/bash
|
2020-02-28 22:33:35 +01:00
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
set -euo pipefail
|
2020-10-12 07:16:00 +02:00
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
# get script directory
|
2022-06-05 20:08:41 +02:00
|
|
|
scriptloc=$(realpath "$BASH_SOURCE")
|
2022-06-05 16:23:05 +02:00
|
|
|
setupdir=$(dirname "$scriptloc")
|
|
|
|
#setupdir=$(pwd)
|
2021-01-29 16:53:04 +01:00
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
#change to home directory
|
|
|
|
#cd "$HOME"
|
2020-02-28 22:33:35 +01:00
|
|
|
|
2022-03-20 12:23:09 +01:00
|
|
|
# check if multilib repo is enabled
|
|
|
|
if ! pacman -Sl multilib &> /dev/null; then
|
|
|
|
echo "Please enable the multilib repository first"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2022-06-05 16:32:35 +02:00
|
|
|
# NOTE on unattended pacman installing
|
|
|
|
# Option 1: Will assume the default choice
|
|
|
|
#--noconfirm
|
|
|
|
# Option 2: Will always choose "yes", locale override needed to work all the time (might fail for other locales)
|
|
|
|
#yes | LC_ALL=en_US.UTF-8 pacman ...
|
|
|
|
|
2022-03-20 11:27:27 +01:00
|
|
|
# fix install problems
|
2022-06-05 16:23:05 +02:00
|
|
|
echo Updating repos and packages
|
2022-06-05 19:37:17 +02:00
|
|
|
sudo pacman -Syu --noconfirm
|
2022-06-05 16:23:05 +02:00
|
|
|
echo Installing pip
|
2022-06-05 16:32:35 +02:00
|
|
|
sudo pacman -S --needed --noconfirm python-pip
|
2022-06-05 16:23:05 +02:00
|
|
|
echo Select packages to install
|
2020-03-02 13:31:03 +01:00
|
|
|
|
2020-06-12 16:23:06 +02:00
|
|
|
cmd=(dialog --separate-output --checklist "Select Desktop environment/Window manager:" 22 76 16)
|
2022-06-05 16:23:05 +02:00
|
|
|
options=(100 "[WM] i3-gaps" off
|
|
|
|
101 "[WM] sway" off)
|
2020-06-12 16:23:06 +02:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
2020-08-28 21:46:34 +02:00
|
|
|
clear
|
2020-06-12 16:23:06 +02:00
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
2021-03-15 14:31:35 +01:00
|
|
|
100)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "i3-gaps" >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
;;
|
2022-06-05 16:23:05 +02:00
|
|
|
101)
|
2022-06-05 20:54:39 +02:00
|
|
|
printf '%s\n' 'sway' 'swaylock' 'swayidle' 'seatd' >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
esac
|
|
|
|
done
|
2020-05-07 08:43:48 +02:00
|
|
|
|
2020-06-14 18:00:55 +02:00
|
|
|
cmd=(dialog --separate-output --checklist "Select browsers:" 22 76 16)
|
2021-03-15 14:31:06 +01:00
|
|
|
options=(0 "Firefox" on # any option can be set to default to "on"
|
|
|
|
10 "Chromium" off
|
2022-03-18 19:14:21 +01:00
|
|
|
20 "Torbrowser" off)
|
2020-06-14 18:00:55 +02:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
2020-08-28 21:46:34 +02:00
|
|
|
clear
|
2020-06-14 18:00:55 +02:00
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
2021-03-15 14:31:06 +01:00
|
|
|
0)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "firefox" >> "$setupdir/selectedpkgs.txt"
|
2020-06-14 18:00:55 +02:00
|
|
|
;;
|
2021-03-15 14:31:06 +01:00
|
|
|
10)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "chromium" >> "$setupdir/selectedpkgs.txt"
|
2020-06-14 18:00:55 +02:00
|
|
|
;;
|
2021-03-15 14:31:06 +01:00
|
|
|
20)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "torbrowser-launcher" >> "$setupdir/selectedpkgs.txt"
|
2020-06-21 22:16:27 +02:00
|
|
|
;;
|
2020-06-14 18:00:55 +02:00
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
|
|
|
cmd=(dialog --separate-output --checklist "Select other programs:" 22 76 16)
|
2021-03-15 14:30:36 +01:00
|
|
|
options=(0 "VirtManager" off # any option can be set to default to "on"
|
2022-03-18 19:14:21 +01:00
|
|
|
1 "VMWare Workstation" off
|
2021-03-15 14:26:47 +01:00
|
|
|
10 "Steam" off
|
|
|
|
11 "Lutris" off
|
2021-05-14 13:37:24 +02:00
|
|
|
12 "Citra" off
|
2021-05-15 13:48:29 +02:00
|
|
|
13 "Cemu" off
|
2021-03-15 14:26:47 +01:00
|
|
|
20 "Krita" off
|
|
|
|
21 "Gimp" off
|
2022-06-05 16:23:05 +02:00
|
|
|
31 "YT-dlp" off
|
2021-12-29 09:05:24 +01:00
|
|
|
32 "Megatools" off
|
2021-03-15 14:26:47 +01:00
|
|
|
40 "Handbrake" off
|
|
|
|
41 "Audacity" off
|
2022-06-05 16:23:05 +02:00
|
|
|
50 "Easystroke" off
|
|
|
|
60 "Discord" off
|
|
|
|
61 "Element" off
|
|
|
|
62 "Telegram" off
|
2022-01-04 13:41:47 +01:00
|
|
|
70 "TestSSL" off)
|
2020-06-12 16:23:06 +02:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
2020-08-28 21:46:34 +02:00
|
|
|
clear
|
2020-06-12 16:23:06 +02:00
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
2021-03-15 14:30:36 +01:00
|
|
|
0)
|
2021-07-19 20:43:59 +02:00
|
|
|
printf '%s\n' 'qemu' 'virt-manager' 'ebtables' 'dnsmasq' >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
;;
|
2021-03-20 14:00:52 +01:00
|
|
|
1)
|
2022-03-18 19:14:21 +01:00
|
|
|
echo "vmware-workstation" >> "$setupdir/aurselectedpkgs.txt"
|
2021-03-20 14:00:52 +01:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
10)
|
2021-01-29 16:53:04 +01:00
|
|
|
printf '%s\n' 'steam' 'steam-native-runtime' >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
11)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "lutris" >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
;;
|
2021-05-14 13:37:24 +02:00
|
|
|
12)
|
|
|
|
echo "citra-qt-git" >> "$setupdir/aurselectedpkgs.txt"
|
|
|
|
;;
|
2021-05-15 13:48:29 +02:00
|
|
|
13)
|
|
|
|
echo "cemu" >> "$setupdir/aurselectedpkgs.txt"
|
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
20)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "krita" >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
21)
|
|
|
|
echo "gimp" >> "$setupdir/selectedpkgs.txt"
|
|
|
|
;;
|
2021-10-18 17:36:46 +02:00
|
|
|
31)
|
|
|
|
printf '%s\n' 'yt-dlp' 'yt-dlp-drop-in' >> "$setupdir/aurselectedpkgs.txt"
|
|
|
|
;;
|
2021-12-29 09:05:24 +01:00
|
|
|
32)
|
|
|
|
echo "megatools-bin" >> "$setupdir/aurselectedpkgs.txt"
|
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
40)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "handbrake" >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
41)
|
2022-06-05 16:23:05 +02:00
|
|
|
echo "audacity" >> "$setupdir/selectedpkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
50)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "easystroke" >> "$setupdir/aurselectedpkgs.txt"
|
2020-06-17 10:04:27 +02:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
60)
|
2022-06-05 16:23:05 +02:00
|
|
|
echo "discord" >> "$setupdir/selectedpkgs.txt"
|
|
|
|
#echo "discord_arch_electron" >> "$setupdir/aurselectedpkgs.txt"
|
2020-11-05 20:27:04 +01:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
61)
|
|
|
|
echo "element-desktop" >> "$setupdir/selectedpkgs.txt"
|
2020-07-30 17:01:12 +02:00
|
|
|
;;
|
2021-03-15 14:26:47 +01:00
|
|
|
62)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "telegram-desktop" >> "$setupdir/selectedpkgs.txt"
|
2020-11-25 15:58:55 +01:00
|
|
|
;;
|
2022-01-04 13:41:47 +01:00
|
|
|
70)
|
|
|
|
echo "testssl.sh" >> "$setupdir/selectedpkgs.txt"
|
|
|
|
;;
|
2020-06-12 16:23:06 +02:00
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
2020-08-29 13:52:27 +02:00
|
|
|
in_acpufreq=0
|
|
|
|
|
|
|
|
cmd=(dialog --separate-output --checklist "Performance and Battery life" 22 76 16)
|
2022-06-05 16:23:05 +02:00
|
|
|
options=(0 "auto-cpufreq" off
|
|
|
|
1 "corectrl" off)
|
2020-08-29 13:52:27 +02:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
|
|
|
clear
|
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
2021-03-15 14:32:13 +01:00
|
|
|
0)
|
2020-08-29 13:52:27 +02:00
|
|
|
in_acpufreq=1
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "auto-cpufreq-git" >> "$setupdir/aurselectedpkgs.txt"
|
2020-11-23 15:00:29 +01:00
|
|
|
# TODO Handle rest of installation
|
2020-08-29 13:52:27 +02:00
|
|
|
;;
|
2021-08-22 16:20:06 +02:00
|
|
|
1)
|
|
|
|
echo "corectrl" >> "$setupdir/aurselectedpkgs.txt"
|
|
|
|
;;
|
2020-08-29 13:52:27 +02:00
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
2020-09-18 19:28:12 +02:00
|
|
|
in_doomemacs=0
|
2021-03-31 15:21:23 +02:00
|
|
|
in_podman=0
|
2020-09-07 19:50:09 +02:00
|
|
|
|
2021-03-31 15:21:23 +02:00
|
|
|
cmd=(dialog --separate-output --checklist "Devtools" 22 76 16)
|
2021-03-15 14:32:50 +01:00
|
|
|
options=(0 "doom-emacs" off
|
2021-03-31 15:21:23 +02:00
|
|
|
1 "vscodium" off
|
|
|
|
10 "Podman" off)
|
2020-09-07 19:50:09 +02:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
|
|
|
clear
|
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
2021-03-15 14:32:50 +01:00
|
|
|
0)
|
2020-09-18 19:28:12 +02:00
|
|
|
in_doomemacs=1
|
2020-11-23 15:00:29 +01:00
|
|
|
# TODO sort pacman and AUR packages
|
2022-01-20 09:01:00 +01:00
|
|
|
# pychecker not in AUR anymore
|
2022-03-08 08:21:18 +01:00
|
|
|
printf '%s\n' 'git' 'emacs' 'ripgrep' 'fd' 'pandoc' 'shellcheck' 'python-pipenv' 'python-isort' 'python-pytest' 'python-rednose' 'pychecker' 'texlive-core' 'pyright' >> "$setupdir/aurselectedpkgs.txt"
|
2020-11-23 15:00:29 +01:00
|
|
|
# TODO handle rest of installation
|
2020-09-07 19:50:09 +02:00
|
|
|
;;
|
2021-03-15 14:32:50 +01:00
|
|
|
1)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "vscodium-bin" >> "$setupdir/aurselectedpkgs.txt"
|
2020-09-09 21:01:58 +02:00
|
|
|
;;
|
2021-03-31 15:21:23 +02:00
|
|
|
10)
|
|
|
|
in_podman=1
|
|
|
|
;;
|
2020-09-07 19:50:09 +02:00
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
2020-11-13 08:02:58 +01:00
|
|
|
cmd=(dialog --separate-output --checklist "School and work communication" 22 76 16)
|
2021-03-15 14:34:10 +01:00
|
|
|
options=(0 "Teams" off
|
|
|
|
1 "Slack" off
|
|
|
|
10 "OneNote" off)
|
2020-11-13 07:58:44 +01:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
|
|
|
clear
|
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
2021-03-15 14:34:10 +01:00
|
|
|
0)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "teams" >> "$setupdir/aurselectedpkgs.txt"
|
2020-11-13 07:58:44 +01:00
|
|
|
;;
|
2021-03-15 14:34:10 +01:00
|
|
|
1)
|
2021-02-22 19:53:11 +01:00
|
|
|
#echo "slack-desktop" >> "$setupdir/aurselectedpkgs.txt"
|
|
|
|
echo "slack-electron" >> "$setupdir/aurselectedpkgs.txt"
|
2020-11-13 07:58:44 +01:00
|
|
|
;;
|
2021-03-15 14:34:10 +01:00
|
|
|
10)
|
|
|
|
echo "p3x-onenote" >> "$setupdir/aurselectedpkgs.txt"
|
|
|
|
;;
|
2020-11-13 07:58:44 +01:00
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
2020-07-17 21:14:06 +02:00
|
|
|
cmd=(dialog --separate-output --checklist "Report installed packages?" 22 76 16)
|
2021-03-15 14:34:30 +01:00
|
|
|
options=(0 "pkgstats" off)
|
2020-07-17 21:14:06 +02:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
2020-08-28 21:46:34 +02:00
|
|
|
clear
|
2020-07-17 21:14:06 +02:00
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
2021-03-15 14:34:30 +01:00
|
|
|
0)
|
2021-01-29 16:53:04 +01:00
|
|
|
echo "pkgstats" >> "$setupdir/selectedpkgs.txt"
|
2020-07-17 21:14:06 +02:00
|
|
|
;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
: '
|
2020-12-25 18:24:51 +01:00
|
|
|
# Packages installed on different systems
|
|
|
|
in_arco_pc=0
|
|
|
|
in_arco_hp=0
|
2020-11-07 10:39:59 +01:00
|
|
|
|
2020-12-25 18:24:51 +01:00
|
|
|
cmd=(dialog --separate-output --checklist "Install system specific packages?" 22 76 16)
|
|
|
|
options=(1 "Arco PC" off
|
2021-03-15 14:34:49 +01:00
|
|
|
2 "Arco HP" off)
|
2020-11-07 10:39:59 +01:00
|
|
|
choices=$("${cmd[@]}" "${options[@]}" 2>&1 >/dev/tty)
|
|
|
|
clear
|
|
|
|
for choice in $choices
|
|
|
|
do
|
|
|
|
case $choice in
|
|
|
|
1)
|
2020-12-25 18:24:51 +01:00
|
|
|
in_arco_pc=1
|
|
|
|
;;
|
|
|
|
2)
|
|
|
|
in_arco_hp=1
|
2020-11-07 10:39:59 +01:00
|
|
|
;;
|
|
|
|
esac
|
|
|
|
done
|
2022-06-05 16:23:05 +02:00
|
|
|
'
|
2020-11-07 10:39:59 +01:00
|
|
|
|
2020-08-28 21:46:34 +02:00
|
|
|
#uninstalling unused packages
|
|
|
|
echo Uninstalling unused packages
|
2022-06-05 16:23:05 +02:00
|
|
|
# || true to pass set -e (error when encountering packages not installed)
|
2022-06-05 19:37:17 +02:00
|
|
|
sudo pacman -Rns --noconfirm - < "$setupdir/packages/uninstall.txt" 2>/dev/null || true
|
2020-08-28 21:46:34 +02:00
|
|
|
echo Uninstalled unused packages
|
|
|
|
|
|
|
|
#pacman programs
|
2020-06-12 16:23:06 +02:00
|
|
|
echo Installing default pacman programs
|
2022-06-05 16:41:01 +02:00
|
|
|
sudo pacman -S --needed - < "$setupdir/packages/officialpkgs.txt" 2>/dev/null
|
2022-06-05 19:37:17 +02:00
|
|
|
# TODO for jack, use pipewire-jack (2)
|
|
|
|
# TODO for pipewire-session-manager, use wireplumber (2)
|
|
|
|
# TODO for phonon-qt5-backend, use phonon-qt5-gstreamer (1)
|
2020-06-12 16:23:06 +02:00
|
|
|
echo Installed official programs
|
2020-05-07 08:43:48 +02:00
|
|
|
|
2021-01-09 08:54:40 +01:00
|
|
|
# pip
|
2022-06-05 16:23:05 +02:00
|
|
|
#echo Installing python programs
|
|
|
|
# AUR package exists
|
|
|
|
#pip install --user autotrash
|
|
|
|
#echo Installed python programs
|
2021-01-09 08:54:40 +01:00
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
: '
|
2020-10-31 10:30:26 +01:00
|
|
|
# REVIEW Patched neofetch version to remove Color codes
|
|
|
|
git clone https://github.com/RealStickman/neofetch
|
2020-11-05 20:08:50 +01:00
|
|
|
cd neofetch
|
2020-10-31 10:30:26 +01:00
|
|
|
sudo make install
|
2020-11-05 20:08:50 +01:00
|
|
|
cd ..
|
2020-11-04 21:53:55 +01:00
|
|
|
rm -rf neofetch
|
2022-06-05 16:23:05 +02:00
|
|
|
'
|
2020-10-31 10:30:26 +01:00
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
# install paru-bin if not already present
|
|
|
|
if [[ ! $(pacman -Q | grep paru-bin) ]]; then
|
|
|
|
echo "Installing paru-bin"
|
2022-03-25 21:45:55 +01:00
|
|
|
git clone https://aur.archlinux.org/paru-bin.git
|
|
|
|
cd paru-bin
|
2021-03-09 11:39:24 +01:00
|
|
|
makepkg -si
|
2021-03-09 11:45:34 +01:00
|
|
|
cd ..
|
2021-03-09 11:39:24 +01:00
|
|
|
fi
|
|
|
|
|
2021-03-18 20:16:41 +01:00
|
|
|
# audio
|
|
|
|
echo Installing audio programs
|
2022-06-05 19:37:17 +02:00
|
|
|
paru -S --needed --noconfirm - < "$setupdir/packages/audiopkgs.txt" 2>/dev/null
|
2021-03-18 20:16:41 +01:00
|
|
|
echo Installed audio programs
|
|
|
|
|
2020-05-07 08:43:48 +02:00
|
|
|
#AUR
|
2020-06-12 16:23:06 +02:00
|
|
|
echo Installing default AUR programs
|
2022-06-05 19:37:17 +02:00
|
|
|
paru -S --needed - < "$setupdir/packages/aurpkgs.txt" 2>/dev/null
|
|
|
|
# TODO for btrfsmaintenance, use btrfsmaintenance (1)
|
|
|
|
# TODO for jellyfin-media-player, use jellyfin-media-player (1)
|
|
|
|
# TODO for java-environment, use jdk-openjdk (1)
|
|
|
|
# TODO for cargo, use rust (1)
|
|
|
|
# TODO for ttf-iosevka, use ttf-iosevka (1)
|
|
|
|
# TODO for ttf-ms-fonts, use ttf-ms-fonts (1)
|
|
|
|
# TODO for ttf-vista-fonts, use ttf-vista-fonts (1)
|
|
|
|
# TODO for wps-office, use wps-office (1)
|
2022-06-05 19:49:24 +02:00
|
|
|
# TODO for ffmpeg-normalize, use ffmpeg-normalize (1)
|
2022-06-05 19:59:36 +02:00
|
|
|
# TODO for nohang, use nohang (1)
|
2020-06-12 16:23:06 +02:00
|
|
|
echo Installed AUR programs
|
2020-03-01 10:38:40 +01:00
|
|
|
|
2021-02-17 20:45:31 +01:00
|
|
|
# theming
|
|
|
|
echo Installing themes and icons
|
2021-02-17 20:49:39 +01:00
|
|
|
paru -S --needed - < "$setupdir/packages/theme-packages.txt"
|
2021-02-17 20:45:31 +01:00
|
|
|
echo Installed themes and icons
|
|
|
|
|
2020-02-29 16:00:06 +01:00
|
|
|
#install wine
|
2020-06-12 16:23:06 +02:00
|
|
|
echo Installing wine
|
2021-02-17 20:49:39 +01:00
|
|
|
sudo pacman -S --needed - < "$setupdir/packages/winepkgs.txt"
|
2020-06-12 16:23:06 +02:00
|
|
|
echo Installed wine
|
2020-02-29 13:18:14 +01:00
|
|
|
|
2020-08-28 21:46:34 +02:00
|
|
|
###################
|
|
|
|
#selected programs#
|
|
|
|
###################
|
|
|
|
echo Installing selected programs
|
|
|
|
|
2021-03-15 15:05:00 +01:00
|
|
|
# install selected packages
|
|
|
|
echo Installing from official repository
|
2022-06-05 19:45:08 +02:00
|
|
|
# NOTE || true to continue if no packages have been selected
|
|
|
|
sudo pacman -S --needed - < "$setupdir/selectedpkgs.txt" || true
|
2021-03-15 15:05:00 +01:00
|
|
|
|
|
|
|
# install selected aur packages
|
|
|
|
echo Installing from AUR
|
2022-06-05 19:45:08 +02:00
|
|
|
# NOTE || true to continue if no packages have been selected
|
|
|
|
paru -S --needed - < "$setupdir/aurselectedpkgs.txt" || true
|
2021-03-15 15:05:00 +01:00
|
|
|
|
2020-08-29 13:52:27 +02:00
|
|
|
#performance and battery life
|
|
|
|
if [ $in_acpufreq -eq 1 ]; then
|
|
|
|
echo "Installing auto-cpufreq"
|
2020-12-19 21:32:22 +01:00
|
|
|
paru -S --needed auto-cpufreq-git
|
2020-08-29 13:52:27 +02:00
|
|
|
sudo auto-cpufreq --install
|
|
|
|
sudo systemctl start auto-cpufreq
|
|
|
|
sudo systemctl enable auto-cpufreq
|
|
|
|
fi
|
|
|
|
|
2021-03-31 15:21:23 +02:00
|
|
|
#devtools
|
2020-09-18 19:28:12 +02:00
|
|
|
if [ $in_doomemacs -eq 1 ]; then
|
2020-09-07 19:50:09 +02:00
|
|
|
echo "Installing doom-emacs"
|
2021-05-06 10:37:29 +02:00
|
|
|
paru -S --needed git emacs ripgrep fd pandoc shellcheck python-pipenv python-isort python-pytest python-rednose pychecker texlive-core powershell-bin
|
2022-05-12 15:35:54 +02:00
|
|
|
pip install grip
|
2022-05-22 12:57:52 +02:00
|
|
|
npm i bash-language-server
|
2020-09-07 19:50:09 +02:00
|
|
|
git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.d
|
|
|
|
~/.emacs.d/bin/doom install
|
2020-09-07 19:58:16 +02:00
|
|
|
export PATH="$PATH":$HOME/.emacs.d/bin
|
2020-09-07 19:50:09 +02:00
|
|
|
fi
|
|
|
|
|
2021-03-31 15:21:23 +02:00
|
|
|
if [ $in_podman -eq 1 ]; then
|
|
|
|
echo "Installing podman"
|
2022-05-12 15:35:54 +02:00
|
|
|
sudo pacman -S --needed podman podman-dnsname fuse-overlayfs
|
2021-03-31 15:21:23 +02:00
|
|
|
sudo touch /etc/subuid /etc/subgid
|
|
|
|
sudo usermod --add-subuids 100000-165536 --add-subgids 100000-165536 "$USER"
|
2021-03-31 15:33:58 +02:00
|
|
|
sudo groupadd -f podman
|
|
|
|
sudo usermod -aG podman "$USER"
|
2021-03-31 15:21:23 +02:00
|
|
|
fi
|
|
|
|
|
2022-06-05 19:49:24 +02:00
|
|
|
: '
|
2020-12-25 18:24:51 +01:00
|
|
|
# other system configs
|
|
|
|
# arco pc
|
|
|
|
if [ $in_arco_pc -eq 1 ]; then
|
|
|
|
echo "Installing arco pc packages"
|
2021-05-31 10:46:04 +02:00
|
|
|
paru -S --needed - < "$setupdir/packages/lupusregina-packages.txt"
|
2020-12-25 18:24:51 +01:00
|
|
|
fi
|
|
|
|
|
|
|
|
# arco hp
|
|
|
|
if [ $in_arco_hp -eq 1 ]; then
|
2021-03-01 09:42:38 +01:00
|
|
|
echo "Installing arch hp packages"
|
|
|
|
paru -S --needed - < "$setupdir/packages/arch-hp-packages.txt"
|
2020-11-07 10:39:59 +01:00
|
|
|
fi
|
2022-06-05 19:49:24 +02:00
|
|
|
'
|
2020-11-07 10:39:59 +01:00
|
|
|
|
2021-03-15 15:05:00 +01:00
|
|
|
##############################
|
|
|
|
##### Configuration #####
|
|
|
|
##############################
|
2022-06-05 16:23:05 +02:00
|
|
|
echo Configuring packages
|
2021-03-15 13:59:25 +01:00
|
|
|
|
2020-09-27 14:06:50 +02:00
|
|
|
#change shell
|
2020-09-27 14:07:43 +02:00
|
|
|
chsh -s /usr/bin/fish "$USER"
|
2020-09-27 14:06:50 +02:00
|
|
|
|
2020-09-02 10:51:45 +02:00
|
|
|
#enable vnstat
|
2022-06-05 16:23:05 +02:00
|
|
|
sudo systemctl enable --now vnstat
|
|
|
|
|
2022-06-05 20:04:53 +02:00
|
|
|
# NOTE unsets set -e temporarily
|
|
|
|
set +e
|
2022-06-05 16:23:05 +02:00
|
|
|
# setup autotrash
|
2022-06-05 19:59:36 +02:00
|
|
|
# NOTE without this directory autotrash.service fails to run
|
|
|
|
mkdir -p "$HOME/.local/share/Trash/info"
|
2022-06-05 16:23:05 +02:00
|
|
|
autotrash -d 5 --install
|
2022-06-05 20:04:53 +02:00
|
|
|
systemctl --user enable autotrash.timer
|
|
|
|
set -e
|
2020-09-02 10:51:45 +02:00
|
|
|
|
2021-03-09 08:53:57 +01:00
|
|
|
# enable lockscreen for systemd
|
2022-06-05 16:23:05 +02:00
|
|
|
#sudo systemctl enable betterlockscreen@$USER
|
2021-03-09 08:53:57 +01:00
|
|
|
|
2020-11-17 15:34:39 +01:00
|
|
|
# enable firewall
|
|
|
|
echo "Enabling Firewall"
|
2021-11-06 14:06:55 +01:00
|
|
|
sudo systemctl enable --now firewalld
|
2021-11-06 14:08:16 +01:00
|
|
|
sudo firewall-cmd --zone=public --permanent --remove-service=ssh
|
2020-11-17 15:34:39 +01:00
|
|
|
|
2021-01-23 19:54:05 +01:00
|
|
|
# enable lightdm
|
|
|
|
sudo systemctl enable lightdm
|
|
|
|
|
2021-03-17 15:54:09 +01:00
|
|
|
# regenerate locale
|
|
|
|
# Fixes rofi not launching
|
2022-06-05 16:23:05 +02:00
|
|
|
#sudo locale-gen
|
2021-03-17 15:54:09 +01:00
|
|
|
|
2022-06-05 21:20:29 +02:00
|
|
|
: '
|
2022-06-05 21:02:01 +02:00
|
|
|
if [[ $(pacman -Q | grep sway) ]]; then
|
2022-06-05 20:54:39 +02:00
|
|
|
sudo systemctl enable --now seatd.service
|
2022-06-05 21:04:53 +02:00
|
|
|
sudo gpasswd -a "$USER" seat 1>/dev/null
|
2022-06-05 20:54:39 +02:00
|
|
|
fi
|
2022-06-05 21:20:29 +02:00
|
|
|
'
|
2022-06-05 20:54:39 +02:00
|
|
|
|
2020-12-20 21:05:09 +01:00
|
|
|
# update fonts cache
|
|
|
|
fc-cache -f
|
|
|
|
|
2021-01-04 17:24:43 +01:00
|
|
|
# download grub theme
|
2022-06-05 16:23:05 +02:00
|
|
|
#git clone https://github.com/xenlism/Grub-themes.git
|
|
|
|
#cd "Grub-themes/xenlism-grub-arch-1080p/"
|
|
|
|
#sudo bash install.sh
|
2021-03-04 13:55:36 +01:00
|
|
|
# go back
|
2022-06-05 16:23:05 +02:00
|
|
|
#cd ../../
|
2021-01-04 17:24:43 +01:00
|
|
|
|
2020-02-28 22:40:18 +01:00
|
|
|
#Changes to home folder automatically now, no need to be extra careful anymore.
|
2022-06-05 16:23:05 +02:00
|
|
|
# TODO make config script independent of download location
|
|
|
|
cd "$HOME"
|
2022-06-05 20:11:05 +02:00
|
|
|
# NOTE remove directory if it exists already and redownload
|
|
|
|
rm -rf config
|
2021-01-29 16:46:23 +01:00
|
|
|
git clone https://gitlab.com/RealStickman-arch/config
|
2020-04-16 08:51:26 +02:00
|
|
|
echo Finished downloading config
|
2020-02-29 13:18:14 +01:00
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
|
2020-11-17 21:09:57 +01:00
|
|
|
|
2020-02-29 13:18:14 +01:00
|
|
|
#cleanup
|
2022-06-05 20:09:19 +02:00
|
|
|
rm -rf "$setupdir"
|
|
|
|
echo Removed setup files
|
2020-02-29 13:18:14 +01:00
|
|
|
|
|
|
|
#downloading config
|
2020-04-16 08:51:26 +02:00
|
|
|
echo Setting config
|
2022-06-05 20:22:16 +02:00
|
|
|
# TODO temporary
|
|
|
|
cd config
|
|
|
|
git checkout wayland
|
2020-06-15 20:50:25 +02:00
|
|
|
bash ~/config/install.sh
|
2021-01-29 19:58:32 +01:00
|
|
|
|
2022-06-05 16:23:05 +02:00
|
|
|
# Download git repos
|
|
|
|
bash ~/config/scripts/sc-git-pull
|
|
|
|
|
2021-01-29 20:01:04 +01:00
|
|
|
if [[ $(pacman -Q pkgstats 2>/dev/null > /dev/null) ]]; then
|
2022-06-05 16:23:05 +02:00
|
|
|
sudo systemctl enable --now pkgstats.timer
|
2021-01-29 19:58:32 +01:00
|
|
|
fi
|
|
|
|
|
2020-07-30 11:00:22 +02:00
|
|
|
echo Finished everything
|
2020-11-17 21:09:57 +01:00
|
|
|
exit 0
|