Holland requires some patching to work with Python 3.11.
I have thrown together this zsh function to do a clean rebuild (note yay -Rcs
):
pacman_upgrade_holland () {
local PKGBUILD=$(mktemp)
local patch=$(mktemp)
trap "rm -f $PKGBUILD $patch" EXIT
cat >! $PKGBUILD <<'EOF'
--- /home/acc/.cache/yay/holland/PKGBUILD 2023-09-24 18:13:15.130979110 -0700
+++ /home/acc/bak/PKGBUILD 2023-09-24 18:45:18.591404175 -0700
@@ -23,6 +23,7 @@
prepare() {
cd "${srcdir}"
find -name setup.cfg -delete
+ patch -d "${srcdir}/${pkgname}-${pkgver}" -i $patch -p0
}
build() {
EOF
cat >! $patch <<'EOF'
--- holland/core/command/command.py.orig 2021-12-02 10:23:56.000000000 -0800
+++ holland/core/command/command.py 2023-09-24 17:36:30.828740377 -0700
@@ -86,6 +86,10 @@
description = " "
def __init__(self):
+ if self.name in SUBPARSER.choices:
+ self.optparser = SUBPARSER.choices[self.name]
+ return
+
self.optparser = SUBPARSER.add_parser(
self.name,
help="%s %s" % (self.name, self.description),
EOF
yay -Rcs --noconfirm holland 2> /dev/null
pacman_install \
--answerclean All \
--answeredit All \
--cleanmenu \
--editmenu \
--editor patch \
--editorflags "-Nbfi\ $PKGBUILD" \
--noconfirm \
--rebuild \
holland{,-{mysql{,dump},pgdump}}
}
Pinned Comments