-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackages.sh
More file actions
executable file
·30 lines (22 loc) · 1.41 KB
/
packages.sh
File metadata and controls
executable file
·30 lines (22 loc) · 1.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env bash
# Check script.log for error logs. Pipefail set. No clobber set.
set -Eeuo pipefail
set -o noclobber
# exec >script.log 2>&1
exec 2>script.log
echo -e "\nThis error log is generated by packages.sh\n" >&2
install='clipgrab dropbox chromium telegram-desktop signal-desktop whatsapp-for-linux haruna inkscape obs-studio img2pdf yt-dlp tagspaces-bin kamoso ghostwriter gsfonts ocenaudio-bin xaos youtube-music-desktop kdialog base-devel git tree update-grub reflector rsync curl ttf-jetbrains-mono gparted veracrypt keepassxc vim dolphin-plugins pavucontrol appimagelauncher nvidia-settings kde-applications ffmpegthumbs kdeplasma-addons qt6-imageformats stacer-bin nvidia-prime glxinfo virtualgl zip unzip unrar foremost bluez bluez-utils bluedevil ttf-meslo-nerd-font-powerlevel10k neofetch fastfetch lolcat taplo-cli jq cmatrix plasma6-applets-window-title plasma-applet-window-buttons ttf-ibm-plex konsave zsh zsh-theme-powerlevel10k procreate-thumbnailer-git rustup emacs just github-desktop-bin texstudio ollama'
remove='vi'
# packages from org file.
read -r -a install_pkgs <<< "$install"
read -r -a remove_pkgs <<< "$remove"
if (( ${#install_pkgs[@]} )); then
echo "Installing packages:"
printf ' + %s\n' "${install_pkgs[@]}"
yay -S --needed "${install_pkgs[@]}"
fi
if (( ${#remove_pkgs[@]} )); then
echo "Removing packages:"
printf ' - %s\n' "${remove_pkgs[@]}"
yay -Rns "${remove_pkgs[@]}"
fi