sh: Switch yay to paru
Removed outdated `syu` symlink which just hooks into topgrade. Replaced it with simple function that tries for topgrade, paru, yay, pacman, in that order. Can still be invoked with simple `syu` command, but *only* through interactive terminal use. Switched git pre-commit hook to default to paru instead of yay when compiling installed package lists for dotfile commits.
This commit is contained in:
parent
d2e44d330d
commit
8cb3252cf1
4 changed files with 38 additions and 5 deletions
|
@ -6,7 +6,7 @@ COMMIT_SOURCE="$2"
|
|||
BOOTSTRAPDIR="bootstrap"
|
||||
pkgfileloc="$(git rev-parse --show-toplevel)/$BOOTSTRAPDIR/packages.txt"
|
||||
pkgignoreloc="$(git rev-parse --show-toplevel)/$BOOTSTRAPDIR/packages_ignore.txt"
|
||||
listgen="yay"
|
||||
listgen="paru"
|
||||
|
||||
err() {
|
||||
printf "\x1b[33mCAUTION:\x1b[0m %s\n" "$*"
|
||||
|
@ -18,7 +18,7 @@ if [ ! -f "$pkgfileloc" ]; then
|
|||
fi
|
||||
|
||||
if ! type "$listgen" >/dev/null 2>&1; then
|
||||
err "Yay not installed on machine, can not reliably determine package differences!"
|
||||
err "List generator not installed on machine, can not reliably determine package differences!"
|
||||
fi
|
||||
|
||||
# get commited packages, remove empty lines
|
||||
|
@ -30,7 +30,7 @@ sed -e '/^[#$]/d' <"$pkgfileloc" | sort >"$pkgcommited"
|
|||
# q removes extraneous info
|
||||
# e only lists explicitly installed
|
||||
# tt removes those that are depended on, but NOT those optionally depended on
|
||||
pkgcurrent=$(yay -Qqett | sort)
|
||||
pkgcurrent=$("$listgen" -Qqett | sort)
|
||||
# remove those listed in package_ignore.txt
|
||||
if [ -f "$pkgignoreloc" ]; then
|
||||
pkgcurrent=$(echo "$pkgcurrent" | comm -23 - "$pkgignoreloc")
|
||||
|
|
|
@ -82,6 +82,7 @@ ntp
|
|||
os-prober
|
||||
pacman-contrib
|
||||
pandoc-citeproc
|
||||
paru
|
||||
pass
|
||||
pavolume
|
||||
pdfjs
|
||||
|
@ -151,7 +152,6 @@ xclip
|
|||
xorg-xev
|
||||
xorg-xinit
|
||||
xorg-xinput
|
||||
yay
|
||||
youtube-dlc
|
||||
|
||||
# zsh plugins
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
/usr/bin/topgrade
|
34
sh/.config/sh/alias.d/syu.sh
Normal file
34
sh/.config/sh/alias.d/syu.sh
Normal file
|
@ -0,0 +1,34 @@
|
|||
#!/usr/bin/env sh
|
||||
# Updates your system using topgrade if it exists,
|
||||
# falls back to paru or yay.
|
||||
# If only pacman exists, will use that but whine about it
|
||||
|
||||
# Also makes yay call paru since that is the new hotness
|
||||
# (or at least I want to try it)
|
||||
|
||||
type paru >/dev/null 2>&1 && {
|
||||
alias yay=paru
|
||||
}
|
||||
|
||||
syu() {
|
||||
type topgrade >/dev/null 2>&1 && {
|
||||
topgrade
|
||||
return
|
||||
}
|
||||
|
||||
type paru >/dev/null 2>&1 && {
|
||||
paru
|
||||
return
|
||||
}
|
||||
|
||||
type yay >/dev/null 2>&1 && {
|
||||
yay
|
||||
return
|
||||
}
|
||||
|
||||
type pacman >/dev/null 2>&1 && {
|
||||
echo "Did not find paru, or yay installed. Updates will not be applied to aur packages."
|
||||
sudo pacman -Syu
|
||||
return
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue