dotfiles/run_onchange-install-packages.sh.tmpl
Sebastian Schulze 235d6283d2
Some checks are pending
/ Build my emacs config (push) Waiting to run
/ doom (push) Waiting to run
[install-packages] Add a few more missing packages
2024-12-19 21:32:45 +01:00

224 lines
3.9 KiB
Bash

#!/usr/bin/env bash
if [ -n "$CI" ]; then
echo "Not running this step in CI for now"
exit 0
fi
## (save-excursion (search-forward "ADD=(")(forward-line)(set-mark-command nil)(forward-sentence)(forward-line -1)(end-of-line)(call-interactively 'sort-lines)(save-buffer))
ADD=(
"adobe-source-code-pro-fonts"
"aspell"
"aspell-de"
"aspell-en"
"aws-cli-v2"
"babashka-bin"
"bat"
"bemenu"
"bibata-cursor-theme"
"bitwarden"
"blesh"
"borg"
"borgmatic"
"brightnessctl"
"brother-dcp-9022cdw"
"cantarell-fonts"
"chromium"
"clang"
"clipman"
"cloc"
"curl"
"curlie"
"dbus"
"dbus-broker-units"
"direnv"
"distrobox"
"dmenu"
"dpkg"
"dragon-drop"
"editorconfig-core-c"
"egl-wayland"
"emacs-libvterm-git"
"emacs-wayland"
"enchant"
"entr"
"eza"
"fd"
"ffmpeg"
"ffmpegthumbnailer"
"flatpak"
"foot"
"fwupd"
"fzf"
"ghostscript"
"gimp"
"git"
"git-credential-gopass"
"git-delta"
"glab"
"glibc-locales"
"gnupg"
"gnuplot"
"gopass"
"gopls"
"grim"
"grimshot"
"guile"
"guile-colorized"
"guile-readline"
"gvfs"
"hledger"
"htop"
"httpie"
"hyprpicker"
"i3status-rust"
"imagemagick"
"imv"
"ipcalc"
"isync"
"j4-dmenu-desktop"
"jq"
"k9s"
"khal"
"khard"
"ledger"
"libqalculate"
"libreoffice"
"libvterm"
"mako"
"mediainfo"
"meson"
"mpv"
"msmtp"
"mtr"
"mu"
"ncmpcpp"
"ncspot"
"nextcloud-client"
"noto-fonts"
"noto-fonts-cjk"
"noto-fonts-emoji"
"noto-fonts-extra"
"obsidian"
"opendoas"
"openssh"
"openssl"
"otf-departure-mono"
"otf-font-awesome"
"otf-ibm-plex"
"otf-monaspace-nerd"
"otf-openmoji"
"pandoc"
"pass"
"patchelf"
"pavucontrol"
"pinentry"
"pinentry-bemenu"
"pinentry-emacs"
"playerctl"
"pngquant"
"podman"
"polkit-gnome"
"prettier"
"prusa-slicer"
"pwgen"
"python-mpmath"
"python-tldextract"
"python-virtualenv"
"qt5-wayland"
"qt6-wayland"
"qutebrowser"
"ripgrep"
"rlwrap"
"rpm-tools"
"ruby"
"scdoc"
"scrcpy"
"scrot"
"shellcheck"
"shfmt"
"signal-desktop"
"slurp"
"socat"
"sqlite"
"starship"
"superslicer-bin"
"swappy"
"sway-contrib"
"sway-dynamic-names"
"sway-git"
"swaybg"
"swayidle"
"swaylock"
"swayr"
"syncthing"
"tig"
"tmux"
"todoman"
"tree"
"tree-sitter"
"ttc-iosevka-aile-super"
"ttc-iosevka-curly-slab-super"
"ttc-iosevka-curly-super"
"ttc-iosevka-etoile-super"
"ttc-iosevka-slab-super"
"ttf-bitstream-vera"
"ttf-dejavu"
"ttf-iosevka-nerd"
"ttf-jetbrains-mono"
"ttf-jetbrains-mono-nerd"
"ttf-joypixels"
"ttf-liberation"
"ttf-nerd-fonts-input"
"ttf-nerd-fonts-symbols"
"ttf-nerd-fonts-symbols-common"
"ttf-nerd-fonts-symbols-mono"
"ttf-opensans"
"ttf-roboto"
"ttf-victor-mono-nerd"
"upower"
"vdirsyncer"
"vim"
"wayprompt"
"wdisplays"
"wf-recorder"
"wireguard-dkms"
"wireguard-tools"
"wl-clipboard"
"wlsunset"
"wmenu"
"wol"
"wtype"
"xcursor-themes"
"xorg-xwayland"
"yaru-theme"
"yasm"
"ydotool"
"ykclient"
"yq"
"yt-dlp"
"yubikey-oath-dmenu"
"yubikey-personalization"
"zathura"
"zathura-pdf-poppler"
"zoxide"
"zsa-wally-cli"
)
REMOVE=(
firefox
)
LOG=$(mktemp)
yay --sync
yay -S --needed --noconfirm "${ADD[@]}"
exit 0
for PACKAGE in "${ADD[@]}"; do
if ! yay -Qs "^${PACKAGE}$" >/dev/null; then
echo "Installing: ${PACKAGE}"
if ! yay -S --noconfirm "${PACKAGE}" >>"${LOG}"; then
echo "Failed to install ${PACKAGE}"
fi
else
echo "Already installed: ${PACKAGE}"
fi
done