Modify install script to be less hands-on

This commit is contained in:
RealStickman 2023-05-21 16:08:00 +02:00
parent 3f9736c350
commit 135ace00d0
4 changed files with 53 additions and 23 deletions

View File

@ -3,9 +3,26 @@
All my config files, scripts and other in one place. All my config files, scripts and other in one place.
Mostly focused on ArchLinux, although there is also a NixOS configuration and independent Python programs. Mostly focused on ArchLinux, although there is also a NixOS configuration and independent Python programs.
## ArchLinux
- [arch-config](./arch-config) - [arch-config](./arch-config)
- [arch-setup](./arch-setup) - [arch-setup](./arch-setup)
- [arch-themes](./arch-themes) - [arch-themes](./arch-themes)
### First time installation
Enable the `multilib` repository in `/etc/pacman.conf`
```sh
git clone https://gitea.exu.li/realstickman/configs.git
cd configs/arch-setup
./install.sh
```
### Config updates
## Other
- [easyffmpeg](./easyffmpeg) - [easyffmpeg](./easyffmpeg)
- [music-normalize](./music-normalize) - [music-normalize](./music-normalize)
- [nixos-config](./nixos-config) - [nixos-config](./nixos-config)

View File

@ -16,9 +16,22 @@ if ! pacman -Sl multilib &>/dev/null; then
exit 1 exit 1
fi fi
# 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 ...
#
# excpect & send
# fix install problems # fix install problems
sudo pacman -Syu echo Updating keyring
sudo pacman -S --needed python-pip sudo pacman -Sy --noconfirm archlinux-keyring
echo Updating repos and packages
sudo pacman -Syu --noconfirm
echo Installing pip
sudo pacman -S --needed --noconfirm python-pip
echo Select packages to install
cmd=(dialog --separate-output --checklist "Select Desktop environment/Window manager:" 22 76 16) 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" options=(0 "[DE] xfce4" off # any option can be set to default to "on"
@ -213,20 +226,12 @@ done
#uninstalling unused packages #uninstalling unused packages
echo Uninstalling unused packages echo Uninstalling unused packages
sudo pacman -Rns - <"$setupdir/packages/uninstall.txt" sudo pacman -Rns --noconfirm - <"$setupdir/packages/uninstall.txt"
echo Uninstalled unused packages echo Uninstalled unused packages
# find all repos
sudo pacman -Sy
#update stuff
echo Updating packages
sudo pacman -Syu
echo Updated packages
#pacman programs #pacman programs
echo Installing default pacman programs echo Installing default pacman programs
sudo pacman -S --needed - <"$setupdir/packages/officialpkgs.txt" sudo pacman -S --needed --noconfirm - <"$setupdir/packages/officialpkgs.txt"
echo Installed official programs echo Installed official programs
# install paru-bin with yay, or download paru from github # install paru-bin with yay, or download paru from github
@ -243,7 +248,7 @@ fi
# audio # audio
echo Installing audio programs echo Installing audio programs
paru -S --needed - <"$setupdir/packages/audiopkgs.txt" paru -S --needed --noconfirm - <"$setupdir/packages/audiopkgs.txt"
echo Installed audio programs echo Installed audio programs
#AUR #AUR
@ -253,12 +258,12 @@ echo Installed AUR programs
# theming # theming
echo Installing themes and icons echo Installing themes and icons
paru -S --needed - <"$setupdir/packages/theme-packages.txt" paru -S --needed --noconfirm - <"$setupdir/packages/theme-packages.txt"
echo Installed themes and icons echo Installed themes and icons
#install wine #install wine
echo Installing wine echo Installing wine
sudo pacman -S --needed - <"$setupdir/packages/winepkgs.txt" sudo pacman -S --noconfirm --needed - <"$setupdir/packages/winepkgs.txt"
echo Installed wine echo Installed wine
################### ###################
@ -267,12 +272,18 @@ echo Installed wine
echo Installing selected programs echo Installing selected programs
# install selected packages # install selected packages
echo Installing from official repository if [ -f "$setupdir/selectedpkgs.txt" ]; then
sudo pacman -S --needed - <"$setupdir/selectedpkgs.txt" echo Installing from official repository
# NOTE || true to continue if no packages have been selected
sudo pacman -S --needed --noconfirm - <"$setupdir/selectedpkgs.txt" || true
fi
# install selected aur packages # install selected aur packages
echo Installing from AUR if [ -f "$setupdir/aurselectedpkgs.txt" ]; then
paru -S --needed - <"$setupdir/aurselectedpkgs.txt" echo Installing from AUR
# NOTE || true to continue if no packages have been selected
paru -S --needed --noconfirm - <"$setupdir/aurselectedpkgs.txt" || true
fi
#devtools #devtools
if [ $in_doomemacs -eq 1 ]; then if [ $in_doomemacs -eq 1 ]; then

View File

@ -83,8 +83,10 @@ os-prober
os-prober os-prober
p7zip p7zip
pacman-contrib pacman-contrib
phonon-qt5-gstreamer
picom picom
piper piper
pipewire-jack
playerctl playerctl
polkit-gnome polkit-gnome
python-dbus python-dbus
@ -119,6 +121,7 @@ webkit2gtk
wget wget
whois whois
wireguard-tools wireguard-tools
wireplumber
xdg-user-dirs xdg-user-dirs
xdotool xdotool
xf86-input-elographics xf86-input-elographics

View File

@ -1,12 +1,11 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -euo pipefail set -euo pipefail
cd "$HOME/GitProjects/setup/packages/" cd "$HOME/GitProjects/configs/arch-setup/packages/"
readarray -d '' packagefiles < <(find "$HOME/GitProjects/configs/arch-setup/packages/" -name "*\.txt" -print0)
readarray -d '' packagefiles < <(find "$HOME/GitProjects/setup/packages/" -name "*\.txt" -print0)
for file in "${packagefiles[@]}"; do for file in "${packagefiles[@]}"; do
echo "Sorting $file" echo "Sorting $file"
cat "$file" | sort > "${file}.tmp" && mv "${file}.tmp" "$file" cat "$file" | sort >"${file}.tmp" && mv "${file}.tmp" "$file"
done done