🔒 Repository is read-only – file editing is disabled.

PaganLinux/tmp-fix-batch3.py main

46 linii Raw ← Powrót
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")