🔒 Repository is read-only – file editing is disabled.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546
#!/usr/bin/env python3
import re, sys, yaml
def patch(path, old, new):
fp = "/var/lib/pagan-sync/recipes/" + path
s = open(fp, encoding="utf-8").read()
if old not in s:
print(f"FAIL {path}: pattern not found")
sys.exit(1)
s = s.replace(old, new, 1)
open(fp, "w", encoding="utf-8").write(s)
yaml.safe_load(s)
print("OK", path)
# systemd: meson setup z wnetrza katalogu zrodlowego
patch("core/systemd/PAGBUILD.yaml",
"meson setup --prefix /usr --buildtype plain --libexecdir lib --sbindir bin -D b_pie=true systemd-261.2 builddir",
"meson setup --prefix /usr --buildtype plain --libexecdir lib --sbindir bin -D b_pie=true .. builddir")
# xorg-libpciaccess: meson source arg po rename -> pkgname-pkgver
patch("gui/xorg-libpciaccess/PAGBUILD.yaml",
"meson setup --prefix /usr --buildtype plain --libexecdir lib --sbindir bin -D b_pie=true libpciaccess-0.19 builddir",
"meson setup --prefix /usr --buildtype plain --libexecdir lib --sbindir bin -D b_pie=true ${pkgname}-${pkgver} builddir")
# xorg-libdrm: usun mv (alias w pagbuild zrobi symlink), meson z wnetrza
patch("gui/xorg-libdrm/PAGBUILD.yaml",
""" SRC_DIR=$(ls -d *libdrm* 2>/dev/null | head -n1)
if [ -n "$SRC_DIR" ] && [ "$SRC_DIR" != "${pkgname}-${pkgver}" ]; then
mv "$SRC_DIR" ${pkgname}-${pkgver}
fi
meson setup --prefix /usr --buildtype plain --libexecdir lib --sbindir bin -D b_pie=true ${pkgname}-${pkgver} builddir""",
""" cd ${pkgname}-${pkgver}
meson setup --prefix /usr --buildtype plain --libexecdir lib --sbindir bin -D b_pie=true .. builddir""")
# xorg-util-macros: install w fazie package z wnetrza katalogu
patch("gui/xorg-util-macros/PAGBUILD.yaml",
"""package: |
make DESTDIR="${PKGDIR}" install""",
"""package: |
cd ${pkgname}-${pkgver}
make DESTDIR="${PKGDIR}" install""")
# liblinear: glob zamiast sztywnej nazwy .so.5
patch("utils/liblinear/PAGBUILD.yaml",
" install -vm755 liblinear.so.5 ${PKGDIR}/usr/lib",
" install -vm755 liblinear.so.* ${PKGDIR}/usr/lib")