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"
|
BOOTSTRAPDIR="bootstrap"
|
||||||
pkgfileloc="$(git rev-parse --show-toplevel)/$BOOTSTRAPDIR/packages.txt"
|
pkgfileloc="$(git rev-parse --show-toplevel)/$BOOTSTRAPDIR/packages.txt"
|
||||||
pkgignoreloc="$(git rev-parse --show-toplevel)/$BOOTSTRAPDIR/packages_ignore.txt"
|
pkgignoreloc="$(git rev-parse --show-toplevel)/$BOOTSTRAPDIR/packages_ignore.txt"
|
||||||
listgen="yay"
|
listgen="paru"
|
||||||
|
|
||||||
err() {
|
err() {
|
||||||
printf "\x1b[33mCAUTION:\x1b[0m %s\n" "$*"
|
printf "\x1b[33mCAUTION:\x1b[0m %s\n" "$*"
|
||||||
|
@ -18,7 +18,7 @@ if [ ! -f "$pkgfileloc" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! type "$listgen" >/dev/null 2>&1; then
|
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
|
fi
|
||||||
|
|
||||||
# get commited packages, remove empty lines
|
# get commited packages, remove empty lines
|
||||||
|
@ -30,7 +30,7 @@ sed -e '/^[#$]/d' <"$pkgfileloc" | sort >"$pkgcommited"
|
||||||
# q removes extraneous info
|
# q removes extraneous info
|
||||||
# e only lists explicitly installed
|
# e only lists explicitly installed
|
||||||
# tt removes those that are depended on, but NOT those optionally depended on
|
# 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
|
# remove those listed in package_ignore.txt
|
||||||
if [ -f "$pkgignoreloc" ]; then
|
if [ -f "$pkgignoreloc" ]; then
|
||||||
pkgcurrent=$(echo "$pkgcurrent" | comm -23 - "$pkgignoreloc")
|
pkgcurrent=$(echo "$pkgcurrent" | comm -23 - "$pkgignoreloc")
|
||||||
|
|
|
@ -82,6 +82,7 @@ ntp
|
||||||
os-prober
|
os-prober
|
||||||
pacman-contrib
|
pacman-contrib
|
||||||
pandoc-citeproc
|
pandoc-citeproc
|
||||||
|
paru
|
||||||
pass
|
pass
|
||||||
pavolume
|
pavolume
|
||||||
pdfjs
|
pdfjs
|
||||||
|
@ -151,7 +152,6 @@ xclip
|
||||||
xorg-xev
|
xorg-xev
|
||||||
xorg-xinit
|
xorg-xinit
|
||||||
xorg-xinput
|
xorg-xinput
|
||||||
yay
|
|
||||||
youtube-dlc
|
youtube-dlc
|
||||||
|
|
||||||
# zsh plugins
|
# 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