feat: add electron and cups

This commit is contained in:
2025-12-20 20:08:28 +01:00
parent 6d0a849fe4
commit 30ff5d01c2
3 changed files with 74 additions and 0 deletions

41
cups.recipe.py Normal file
View File

@@ -0,0 +1,41 @@
pkgname = "cups"
pkgver = "2.4.16"
source = f"https://github.com/OpenPrinting/cups/releases/download/v{pkgver}/cups-{pkgver}-source.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["gnutls", "dbus", "Linux-PAM", "xdg-utils", "avahi"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}-source.tar.gz",
# 64-bit build
f"cd {builddir} && ./configure --libdir=/usr/lib --with-rcdir=/tmp/cupsinit --with-rundir=/run/cups --with-system-groups=lpadmin --with-docdir=/usr/share/cups/doc-{pkgver}",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install && mkdir -p {destdir}/usr/share/doc && ln -svnf ../cups/doc-{pkgver} {destdir}/usr/share/doc/cups-{pkgver} && "
f"rm -rf {destdir}/tmp/cupsinit && echo \"ServerName /run/cups/cups.sock\" > {destdir}/etc/cups/client.conf",
f"mkdir -p {destdir}/etc/pam.d && wget https://rocketleaguechatp.duckdns.org/cups -O {destdir}/etc/pam.d/cups",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",
# Make tarball + manifests
f"mkdir -p {outputdir} && cd {destdir} && tar --transform 's|^\\.||' -I zstd -cf {outputdir}/{pkgname}-{pkgver}.tar.zst .",
f"mkdir -p {manifestdir} && tar -tf {outputdir}/{pkgname}-{pkgver}.tar.zst | grep -v '/$' > {manifestdir}/{pkgname}.txt",
# Cleanup
f"rm -rf {fembuilddir}"
]
triggers = [
f"gtk-update-icon-cache -qtf /usr/share/icons/hicolor",
f"useradd -c \"Print Service User\" -d /var/spool/cups -g lp -s /bin/false -u 9 lp || true",
f"groupadd -g 19 lpadmin || true",
f"usermod -a -G lpadmin $(cat /var/lib/fempkg/username)",
]

31
electron.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "electron"
pkgver = "39.2.7"
Pkgver = pkgver[:2]
source = f"https://github.com/electron/electron/releases/download/v{pkgver}/electron-v{pkgver}-linux-x64.zip"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["NSS", "gtk3", "alsa-lib", "cups"]
build = [
# Extract
f"mkdir -p {destdir}/usr/{{lib,bin}} && unzip /var/lib/fempkg/pkgs/{pkgname}-v{pkgver}-linux-x64.zip -d {destdir}/usr/lib/{pkgname}-{Pkgver}",
# 64-bit build
f"chmod 4755 {destdir}/usr/lib/electron-{Pkgver}/chrome-sandbox",
f"ln -s /usr/lib/electron-39/electron {destdir}/usr/bin/electron",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {destdir}/usr/lib/electron-{Pkgver}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {destdir}/usr/lib/electron-{Pkgver}/LICENSES.chromium.html {destdir}/usr/share/licenses/{pkgname}/LICENSES.chromium.html",
# Make tarball + manifests
f"mkdir -p {outputdir} && cd {destdir} && tar --transform 's|^\\.||' -I zstd -cf {outputdir}/{pkgname}-{pkgver}.tar.zst .",
f"mkdir -p {manifestdir} && tar -tf {outputdir}/{pkgname}-{pkgver}.tar.zst | grep -v '/$' > {manifestdir}/{pkgname}.txt",
# Cleanup
f"rm -rf {fembuilddir}"
]

View File

@@ -42,6 +42,7 @@ coreutils.recipe.py
cpio.recipe.py cpio.recipe.py
cryptsetup.recipe.py cryptsetup.recipe.py
cuda.recipe.py cuda.recipe.py
cups.recipe.py
curl.recipe.py curl.recipe.py
cyrus-sasl.recipe.py cyrus-sasl.recipe.py
dav1d.recipe.py dav1d.recipe.py
@@ -61,6 +62,7 @@ dynamic-cursors.recipe.py
e2fsprogs.recipe.py e2fsprogs.recipe.py
efibootmgr.recipe.py efibootmgr.recipe.py
efivar.recipe.py efivar.recipe.py
electron.recipe.py
Elegant-mojave-float-left-light.recipe.py Elegant-mojave-float-left-light.recipe.py
elogind.recipe.py elogind.recipe.py
expat.recipe.py expat.recipe.py