Compare commits

...

61 Commits

Author SHA1 Message Date
e8aee09f53 feat: add file-roller 2025-12-24 13:32:27 +01:00
8a01b427cd feat : add obs-studio 2025-12-24 13:26:46 +01:00
dcbd17c66c feat: add vscodium 2025-12-24 13:25:11 +01:00
c0ad59033c abseil-cpp: remove useless space 2025-12-24 10:55:39 +01:00
1384e0a46f feat: low effort adb 2025-12-23 23:10:18 +01:00
c4cc0244bd feat: add nautilus 2025-12-23 22:35:04 +01:00
b520629c5a feat: add ayugram-desktop 2025-12-23 17:28:18 +01:00
02ba2e87bb gdkpixbuf: fix dep name 2025-12-23 14:29:04 +01:00
798002717e remove useless duplicate libjpeg-turbo 2025-12-23 14:28:01 +01:00
1e96f804bd feat: add firefox 2025-12-23 14:09:52 +01:00
b0acefd8f7 icu: add firefox rebuild 2025-12-22 20:57:32 +01:00
6f98824039 qt6: remove useless patch 2025-12-22 20:57:25 +01:00
e86a60b9b2 libpng: add animated-png support 2025-12-22 16:03:31 +01:00
12cf7d0ea3 icu: add more rebuilds 2025-12-22 16:03:20 +01:00
ec5f07fbf0 feat: add discord 2025-12-22 12:58:12 +01:00
bf0ab1c661 heroic: add setuid to chrome sandbox 2025-12-22 12:42:26 +01:00
af3c5949bd feat: add kde connect 2025-12-22 11:36:46 +01:00
d5fe6b8c96 qt6: add some rebuilds 2025-12-22 08:56:01 +01:00
cd7effb54c qt6t: fix /opt bombs 2025-12-22 08:54:58 +01:00
0b92bd1482 feat: add nodejs 2025-12-21 18:21:19 +01:00
51f5415450 feat: add heroic games launcher 2025-12-21 18:20:20 +01:00
fa32490431 nvidia: download just pappalaugh cuz if no nvidia why download full source 2025-12-21 09:40:53 +01:00
2cb9caabf6 linux: auto remake grub config 2025-12-21 09:38:23 +01:00
69d8e596ad feat: add a useless pnpm package which just installs it with npm 2025-12-20 20:21:22 +01:00
328894810d cups: fix tmp & add gitignore 2025-12-20 20:15:11 +01:00
30ff5d01c2 feat: add electron and cups 2025-12-20 20:08:28 +01:00
6d0a849fe4 feat: add gpu-screen-recorder-gtk and its 3000 dependencies 2025-12-19 21:28:13 +01:00
21b9340ac0 update linux and nvidia 2025-12-19 13:54:27 +01:00
413143e3a5 where did this even come from 2025-12-19 13:54:10 +01:00
64556ac26a ffmpeg: add nvidia stuff 2025-12-19 13:53:50 +01:00
cfd8ef9b3c feat: add librewolf 2025-12-18 21:31:07 +01:00
bb1e23e8de hypr: add some plugins 2025-12-18 16:47:13 +01:00
a38f7bc107 hypr: smol notice for me 2025-12-18 16:11:38 +01:00
4a3f90633b hypr: remove udis86 as not needed by working url 2025-12-18 15:50:20 +01:00
c4e6285eb4 unknown final boss 2025-12-18 14:35:07 +01:00
cb419eeaca hypr: move muparse dep to hyprland-libs 2025-12-18 13:47:39 +01:00
99ad9b1dae hyprland: add muparser as a dep 2025-12-18 13:43:06 +01:00
d80f12aabe feat: add muparser 2025-12-18 13:42:56 +01:00
3c2fbcd762 am i deadass 2025-12-17 22:14:03 +01:00
1ff87aa001 nvidia: fix version 2025-12-17 22:07:59 +01:00
9652e144a7 feat: add linux-firmware 2025-12-17 21:26:30 +01:00
5e9ee0a79b qt6: add some reminders for myself 2025-12-17 21:02:49 +01:00
747708c84b pcre2: fix DESTDIR install 2025-12-17 21:02:40 +01:00
a8af6bfe0f nvidia: update driver 2025-12-17 21:02:31 +01:00
02d3e7ebec hypr: fix and update stuff 2025-12-17 21:02:19 +01:00
755b8b7008 caelestia-shell: fix /opt/qt6 symlink shenanigans 2025-12-17 21:02:06 +01:00
0c8b1f691f remove non-existent deps on pygobject 2025-12-17 15:15:47 +01:00
604e9ca87b icu: fix /usr / 2025-12-17 14:14:43 +01:00
c4817e7c26 coreutils: make /usr/sbin be a directory.. not a file 2025-12-17 14:06:14 +01:00
d59da69ee4 python: working pip and old files deletion 2025-12-17 14:05:35 +01:00
7187205bc5 update fempkg 2025-12-16 22:02:28 +01:00
a1f46f61c2 update vim 2025-12-16 21:33:07 +01:00
4d99a0186f fix filename in fempkg keys and actually make the recipe work 2025-12-16 15:55:51 +01:00
a0ab294e18 linux: auto rebuild initramfs and delete old ones 2025-12-16 15:48:22 +01:00
dff51cf7e4 Linux: use versioned vmlinuz 2025-12-16 15:33:59 +01:00
70ccd8ab03 remove accidental cmake dep (i still dont know deps tho) 2025-12-16 15:31:40 +01:00
5bf921524d feat: dracut, grub theme and plymouth 2025-12-16 08:35:06 +01:00
50f41d3b74 grub: gfxterm and more quiet boot 2025-12-15 22:24:21 +01:00
aef4365361 Opsec is real 2025-12-14 23:06:07 +01:00
8a274c2fe2 better good opsec 2025-12-14 22:01:24 +01:00
6ead75e280 Add opsec recipe 2025-12-14 16:44:06 +01:00
86 changed files with 1962 additions and 96 deletions

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
index.txt
lfs-repo.code-workspace

View File

@@ -0,0 +1,28 @@
pkgname = "Elegant-mojave-float-left-light"
pkgver = "2025-03-25"
source = f"https://rocketleaguechatp.duckdns.org/Elegant-mojave-float-left-light-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = []
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {fembuilddir} && mkdir -p {destdir}/boot/grub/themes/ && cp -pvra {pkgname} {destdir}/boot/grub/themes/",
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}"
]

View File

@@ -6,7 +6,7 @@ fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["libndp", "curl", "dhcpcd", "iptables", "libpsl", "newt", "NSS", "polkit", "pygobject", "elogind", "vala", "wpa_supplicant"]
deps = ["libndp", "curl", "dhcpcd", "iptables", "libpsl", "newt", "NSS", "polkit", "elogind", "vala", "wpa_supplicant"]
build = [
# Extract

View File

@@ -1,5 +1,5 @@
pkgname = "abseil-cpp"
pkgver = "20250814.1"
pkgver = "20250814.1"
source = f"https://github.com/abseil/abseil-cpp/releases/download/{pkgver}/abseil-cpp-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"

31
alsa-plugins.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "alsa-plugins"
pkgver = "1.2.12"
source = f"https://www.alsa-project.org/files/pub/plugins/alsa-plugins-{pkgver}.tar.bz2"
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 = ["alsa-lib", "ffmpeg", "pulseaudio"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.bz2",
# 64-bit build
f"cd {builddir} && ./configure --sysconfdir=/etc",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/COPYING.GPL {destdir}/usr/share/licenses/{pkgname}/LICENSE.GPL",
# 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}"
]

14
android-udev.recipe.py Normal file
View File

@@ -0,0 +1,14 @@
pkgname = "android-udev"
pkgver = "1.0"
source = f"https://rocketleaguechatp.duckdns.org/pappalaugh.jpg"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
deps = ["udev"]
build = [
f"wget https://raw.githubusercontent.com/M0Rf30/android-udev-rules/refs/heads/main/51-android.rules -O /usr/lib/udev/rules.d/51-android.rules",
]
triggers = [
f"groupadd adbusers || true && usermod -aG adbusers $(cat /var/lib/fempkg/username) || true"
]

30
ayatana-ido3.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "ayatana-ido3"
pkgver = "0.10.4"
source = f"https://github.com/AyatanaIndicators/ayatana-ido/archive/refs/tags/{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/ayatana-ido-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["cmake"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -G Ninja ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"cp -pv {builddir}/COPYING* {destdir}/usr/share/licenses/{pkgname}/",
# 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}"
]

35
ayugram-desktop.recipe.py Normal file
View File

@@ -0,0 +1,35 @@
pkgname = "ayugram-desktop"
pkgver = "6.2.4"
source = f"https://rocketleaguechatp.duckdns.org/ayugram.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 = ["glibc", "openssl", "curl", "openldap", "cyrus-sasl", "libjpeg-turbo", "freetype", "harfbuzz", "cairo", "gdkpixbuf", "e2fsprogs"]
build = [
# Extract
f"mkdir -p {fembuilddir} {destdir}/usr/lib/ayugram && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/ayugram.tar.gz -C "
f"{destdir}/usr/lib/ayugram/",
# 64-bit build
f"mkdir -p {destdir}/usr/bin && ln -sf /usr/lib/ayugram/AppRun {destdir}/usr/bin/AyuGram && mkdir -p {destdir}/usr/share/applications",
f"wget https://rocketleaguechatp.duckdns.org/com.ayugram.desktop.desktop -O {destdir}/usr/share/applications/com.ayugram.desktop.desktop",
f"mkdir -p {destdir}/usr/share/icons/hicolor && cp -pvra {destdir}/usr/lib/ayugram/usr/share/icons/hicolor/* {destdir}"
f"/usr/share/icons/hicolor/ && rm -rf {destdir}/usr/lib/ayugram/share",
f"mkdir -p {destdir}/usr/share/dbus-1/services && wget https://rocketleaguechatp.duckdns.org/com.ayugram.desktop.service -O {destdir}"
f"/usr/share/dbus-1/services/com.ayugram.desktop.service",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"wget https://raw.githubusercontent.com/AyuGram/AyuGramDesktop/refs/heads/dev/LICENSE -O {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}"
]

View File

@@ -1,5 +1,6 @@
pkgname = "caelestia-shell"
pkgver = "1.3.4"
qtver = "6.10.1"
source = f"https://github.com/caelestia-dots/shell.git"
source_type = "git"
builddir = f"/tmp/fempkgbuild/shell"
@@ -15,6 +16,7 @@ build = [
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/ -DINSTALL_QSCONFDIR=/etc/xdg/quickshell/caelestia -DINSTALL_QMLDIR=/opt/qt6/qml ..",
f"cd {builddir}/build && ninja",
f"mkdir -p {destdir}/opt/qt-{qtver} && ln -sf qt-{qtver} {destdir}/opt/qt6",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"cd {builddir} && wget https://rocketleaguechatp.duckdns.org/app2unit-caelestia.patch && patch -p1 -d {destdir}/etc/xdg/quickshell/caelestia < app2unit-caelestia.patch",

View File

@@ -18,7 +18,7 @@ build = [
f"cd {builddir} && autoreconf -fv && automake -af && FORCE_UNSAFE_CONFIGURE=1 ./configure --prefix=/usr --enable-no-install-program=kill,uptime",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"cd {builddir} && mv -v {destdir}/usr/bin/chroot {destdir}/usr/sbin",
f"cd {builddir} && mkdir -pv {destdir}/usr/sbin &&mv -v {destdir}/usr/bin/chroot {destdir}/usr/sbin/chroot",
f"cd {builddir} && install -d -m 755 {destdir}/usr/share/man/man8",
f"cd {builddir} && mv -v {destdir}/usr/share/man/man1/chroot.1 {destdir}/usr/share/man/man8/chroot.8",
f"cd {builddir} && sed -i 's/\"1\"/\"8\"/' {destdir}/usr/share/man/man8/chroot.8",

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 && 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)",
]

29
dbus-glib.recipe.py Normal file
View File

@@ -0,0 +1,29 @@
pkgname = "dbus-glib"
pkgver = "0.114"
source = f"https://gitlab.freedesktop.org/dbus/dbus-glib.git"
builddir = f"/tmp/fempkgbuild/{pkgname}"
fembuilddir = builddir
source_type = "git"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["gtk-doc", "glib", "expat", "glibc", "expat"]
build = [
# 64-bit build
f"cd {builddir} && git checkout {pkgname}-{pkgver} && autoreconf -fi && ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --with-gtk=3 --enable-gtk-doc",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

View File

@@ -0,0 +1,30 @@
pkgname = "desktop-file-utils"
pkgver = "0.28"
source = f"https://rocketleaguechatp.duckdns.org/desktop-file-utils-{pkgver}.tar.xz"
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 = ["glib"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

22
discord.recipe.py Normal file
View File

@@ -0,0 +1,22 @@
pkgname = "discord"
pkgver = "0.0.119"
source = f"https://dl.discordapp.net/apps/linux/{pkgver}/discord-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/Discord"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
deps = ["xdg-utils", "pulseaudio", "libappindicator", "NSS", "NSPR", "xorg-libs", "libnotify", "gtk3"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz && rm -rf /usr/lib/discord || true",
# 64-bit build
f"cd {builddir} && mkdir -p /usr/lib/discord && mv * /usr/lib/discord/ && ln -sf /usr/lib/discord/Discord /usr/bin/discord",
f"cd {builddir} && chmod u+s /usr/lib/discord/chrome-sandbox && rm -rf /usr/lib/discord/postinst.sh",
f"cd {builddir} && mkdir -p /usr/share/applications && mv /usr/lib/discord/discord.desktop /usr/share/applications/discord.desktop",
f"desktop-file-edit /usr/share/applications/discord.desktop --set-key=Exec \"--set-value=discord\"",
f"mkdir -p /usr/share/icons/hicolor/256x256/apps && mv /usr/lib/discord/discord.png /usr/share/icons/hicolor/256x256/apps/discord.png",
# Cleanup
f"rm -rf {fembuilddir}"
]

30
dracut.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "dracut"
pkgver = "060"
source = f"https://rocketleaguechatp.duckdns.org/dracut-{pkgver}.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 = []
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr --sysconfdir=/etc --disable-documentation",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

30
dynamic-cursors.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "dynamic-cursors"
pkgver = "0.52.0"
source = f"https://github.com/VirtCode/hypr-dynamic-cursors.git"
source_type = "git"
builddir = f"/tmp/fempkgbuild/hypr-dynamic-cursors"
fembuilddir = builddir
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["hyprland"]
build = [
# 64-bit build
f"cd {builddir} && git checkout 8c1679b87c54e97145cae83e622956d720e88bef",
f"su gabry -c 'XDG_RUNTIME_DIR=/run/user/$EUID hyprpm update || true'",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && install -v -d -m755 {destdir}/usr/share/hypr/plugins && install -v -m775 out/dynamic-cursors.so {destdir}/usr/share/hypr/plugins/",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE.md {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}"
]

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}"
]

32
exiv2.recipe.py Normal file
View File

@@ -0,0 +1,32 @@
pkgname = "exiv2"
pkgver = "0.28.7"
source = f"https://github.com/Exiv2/exiv2/archive/v{pkgver}/exiv2-{pkgver}.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 = ["cmake", "curl", "brotli", "inih"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -D EXIV2_ENABLE_VIDEO=yes "
f"-D EXIV2_ENABLE_WEBREADY=yes -D EXIV2_ENABLE_CURL=yes -D EXIV2_BUILD_SAMPLES=no -D CMAKE_SKIP_INSTALL_RPATH=ON -G Ninja .. ",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE.txt {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}"
]

View File

@@ -7,13 +7,15 @@ outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["cmake"]
deps = ["gpg"]
build = [
# Extract
f"mkdir -p {fembuilddir}",
# 64-bit build
f"cd {fembuilddir} && mkdir -p /var/lib/fempkg/keys && cp -pvra fempkg_pubkey.asc /var/lib/fempkg/keys/fempkg_pubkey.asc",
f"cd {fembuilddir} && mkdir -p /var/lib/fempkg/keys && cp -pvra /var/lib/fempkg/pkgs/fempkg_pubkey.asc /var/lib/fempkg/keys/fempkg_pubkey.asc",
f"gpg --import /var/lib/fempkg/keys/fempkg_pubkey.asc",
# Cleanup
f"rm -rf {fembuilddir}"

View File

@@ -1,8 +1,8 @@
pkgname = "fempkg"
pkgver = "1.3.2"
pkgver = "1.3.3"
atomic = True
source = f"https://rocketleaguechatp.duckdns.org/fempkg-{pkgver}.tar"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
source = f"https://gitea.rocketleaguechatp.duckdns.org/FemboyOS/fempkg/archive/{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
@@ -12,17 +12,17 @@ deps = []
build = [
# Extract
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar",
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgver}.tar.gz",
# 64-bit build
f"cd {fembuilddir} && install -d -m 755 {destdir}/usr/bin"
f"cd {fembuilddir} && install -Dm755 fempkg {destdir}/usr/bin/fempkg",
f"cd {fembuilddir} && install -Dm644 build.py {destdir}/usr/bin/build.py",
f"cd {fembuilddir} && install -Dm644 db.py {destdir}/usr/bin/db.py",
f"cd {fembuilddir} && install -Dm644 utils.py {destdir}/usr/bin/utils.py",
f"cd {builddir} && install -d -m 755 {destdir}/usr/bin"
f"cd {builddir} && install -Dm755 fempkg {destdir}/usr/bin/fempkg",
f"cd {builddir} && install -Dm644 build.py {destdir}/usr/bin/build.py",
f"cd {builddir} && install -Dm644 db.py {destdir}/usr/bin/db.py",
f"cd {builddir} && install -Dm644 utils.py {destdir}/usr/bin/utils.py",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {fembuilddir}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",
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 .",

View File

@@ -41,6 +41,8 @@ build = [
"--enable-libwebp "
"--enable-libdrm "
"--enable-gnutls "
"--enable-nvdec "
"--enable-nvenc "
"--ignore-tests=enhanced-flv-av1,enhanced-flv-multitrack "
f"--docdir=/usr/share/doc/{pkgname}-{pkgver}",

29
ffnv-codec.recipe.py Normal file
View File

@@ -0,0 +1,29 @@
pkgname = "ffnv-codec"
pkgver = "13.0.19.0"
source = f"https://github.com/FFmpeg/nv-codec-headers/releases/download/n{pkgver}/nv-codec-headers-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/nv-codec-headers-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = []
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/nv-codec-headers-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && make PREFIX=/usr DESTDIR={destdir} install && mkdir -p {destdir}/usr/lib32/pkgconfig && ln -sf /usr/lib/pkgconfig/ffnvcodec.pc "
f"{destdir}/usr/lib32/pkgconfig/ffnvcodec.pc",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"wget https://mit-license.org/license.txt -O {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}"
]

37
file-roller.recipe.py Normal file
View File

@@ -0,0 +1,37 @@
pkgname = "file-roller"
pkgver = "44.6"
Pkgver = pkgver[:2]
source = f"https://download.gnome.org/sources/file-roller/{Pkgver}/file-roller-{pkgver}.tar.xz"
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 = ["gtk4", "itstool", "cpio", "desktop-file-utils", "json-glib", "libarchive", "libadwaita", "libportal", "nautilus"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D packagekit=false ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install && chmod -v 0755 {destdir}/usr/libexec/file-roller/isoinfo.sh",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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"glib-compile-schemas /usr/share/glib-2.0/schemas",
f"gtk-update-icon-cache -qtf /usr/share/icons/hicolor",
f"update-desktop-database -q",
]

41
firefox.recipe.py Normal file
View File

@@ -0,0 +1,41 @@
pkgname = "firefox"
pkgver = "140.6.0esr"
Pkgver = pkgver[:7]
source = f"https://archive.mozilla.org/pub/firefox/releases/{pkgver}/source/firefox-{pkgver}.source.tar.xz"
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"
exports = "export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none && export MOZBUILD_STATE_PATH=${PWD}/mozbuild"
deps = ["cbindgen", "gtk3", "llvm", "libnotify", "libarchive", "nodejs",
"pulseaudio", "startup-notification", "dav1d", "icu", "libaom", "libwebp",
"nasm", "NSS", "curl", "ffmpeg", "geoclue", "wget"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.source.tar.xz && "
f"wget https://www.linuxfromscratch.org/patches/blfs/svn/firefox-{pkgver}-ffmpeg-8.0.patch && wget "
f"https://www.linuxfromscratch.org/patches/blfs/svn/firefox-{pkgver}-python_3.14_fixes-1.patch",
# 64-bit build
f"cd {builddir} && patch -Np1 -i ../firefox-{pkgver}-ffmpeg-8.0.patch && patch -Np1 -i ../firefox-{pkgver}-python_3.14_fixes-1.patch && "
f"wget https://rocketleaguechatp.duckdns.org/mozconfig && sed -i '/VIRAMA = 47/a CLASS_CHARACTER,' intl/lwbrk/LineBreaker.cpp && {exports} && ./mach build",
f"cd {builddir} && export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none && DESTDIR={destdir} ./mach install",
f"mkdir -pv {destdir}/usr/share/applications mkdir -pv {destdir}/usr/share/pixmaps && wget "
f"https://rocketleaguechatp.duckdns.org/firefox.desktop -O {destdir}/usr/share/applications/firefox.desktop",
f"ln -sfv /usr/lib/firefox/browser/chrome/icons/default/default128.png {destdir}/usr/share/pixmaps/firefox.png",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/toolkit/content/license.html {destdir}/usr/share/licenses/{pkgname}/license.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

@@ -7,7 +7,7 @@ fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["glib", "libjpegturbo", "libpng", "shared-mime-info", "libtiff"]
deps = ["glib", "libjpeg-turbo", "libpng", "shared-mime-info", "libtiff"]
build = [
# Extract

31
gexiv2.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "gexiv2"
pkgver = "0.14.6"
Pkgver = pkgver[:4]
source = f"https://download.gnome.org/sources/gexiv2/{Pkgver}/gexiv2-{pkgver}.tar.xz"
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 = ["exiv2", "vala"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

31
gnome-autoar.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "gnome-autoar"
pkgver = "0.4.5"
Pkgver = pkgver[:3] # meow :3
source = f"https://download.gnome.org/sources/gnome-autoar/{Pkgver}/gnome-autoar-{pkgver}.tar.xz"
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 = ["libarchive", "gtk3", "vala"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D vapi=true -D tests=true ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

31
gnome-common.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "gnome-common"
pkgver = "3.18.0"
Pkgver = pkgver[:4]
source = f"https://download.gnome.org/sources/{pkgname}/{Pkgver}/gnome-common-{pkgver}.tar.xz"
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 = ["gtk-doc"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/COPYING",
# 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

@@ -0,0 +1,30 @@
pkgname = "gpu-screen-recorder-gtk"
pkgver = "5.7.8"
source = f"https://repo.dec05eba.com/gpu-screen-recorder-gtk"
source_type = "git"
builddir = f"/tmp/fempkgbuild/{pkgname}"
fembuilddir = builddir
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["gpu-screen-recorder", "gtk3", "libayatana-appindicator", "desktop-file-utils"]
build = [
# 64-bit build
f"cd {builddir} && mkdir -pv build && cd build && meson setup --prefix=/usr --buildtype=release ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"cd {builddir} && install -v -d -m755 {destdir}/usr/share/applications && install -v -m644 com.dec05eba.gpu_screen_recorder.desktop "
f"{destdir}/usr/share/applications/com.dec05eba.gpu_screen_recorder.desktop",
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",
f"rm -rf {builddir}"
]

View File

@@ -7,19 +7,27 @@ outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
unsets = "unset {{C,CPP,CXX,LD}}FLAGS"
unifont_ver = "17.0.01"
deps = []
deps = ["freetype"]
build = [
# Extract
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz && wget "
f"https://unifoundry.com/pub/unifont/unifont-{unifont_ver}/font-builds/unifont-{unifont_ver}.pcf.gz",
# 64-bit build
f"cd {builddir} && mkdir -pv {destdir}/usr/share/fonts/unifont && zcat ../unifont-{unifont_ver}.pcf.gz > {destdir}/usr/share/fonts/unifont/unifont.pcf",
f"cd {builddir} && {unsets} && echo depends bli part_gpt > grub-core/extra_deps.lst",
f"cd {builddir} && {unsets} && ./configure --prefix=/usr --sysconfdir=/etc --disable-efiemu --with-platform=efi --target=x86_64 --disable-werror",
f"cd {builddir} && {unsets} && make -j$(nproc)",
f"cd {builddir} && sed -i -E '/^\\s*message=\"\\$\\(\\s*gettext_printf\\s*\"Loading Linux.*\"\\s*\\$\\{{version\\}}\\)\"/d; "
f"/^\\s*message=\"\\$\\(\\s*gettext_printf\\s*\"Loading initial ramdisk.*\"\\s*\\)\"/d' 10_linux",
f"cd {builddir} && {unsets} && make DESTDIR={destdir} install",
f"cd {builddir} && {unsets} && install -d -m 755 {destdir}/usr/share/bash-completion/completions && mv -v {destdir}/etc/bash_completion.d/grub {destdir}/usr/share/bash-completion/completions",
f"cd {builddir} && install -vm755 grub-mkfont {destdir}/usr/bin/ &&"
f"cd {builddir} && install -vm755 grub-mount {destdir}/usr/bin/",
f"mkdir -p {destdir}/boot/grub/fonts && wget https://rocketleaguechatp.duckdns.org/unifont.pf2 -O {destdir}/boot/grub/fonts/unicode.pf2",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE",

31
gtk-doc.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "gtk-doc"
pkgver = "1.35.1"
Pkgver = pkgver[:4]
source = f"https://download.gnome.org/sources/gtk-doc/{Pkgver}/gtk-doc-{pkgver}.tar.xz"
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 = ["itstool"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir -pv build && cd build && meson setup --prefix=/usr --buildtype=release ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"cp -pv {builddir}/COPYING* {destdir}/usr/share/licenses/{pkgname}/",
# 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

@@ -7,7 +7,7 @@ fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["gdkpixbuf", "graphene", "iso-codes", "libepoxy", "libxkbcommon", "pango", "pygobject", "wayland-protocols", "glib", "glslc", "webrtc-audio-processing"]
deps = ["gdkpixbuf", "graphene", "iso-codes", "libepoxy", "libxkbcommon", "pango", "wayland-protocols", "glib", "glslc", "webrtc-audio-processing"]
build = [
# Extract

38
gvfs.recipe.py Normal file
View File

@@ -0,0 +1,38 @@
pkgname = "gvfs"
pkgver = "1.58.0"
Pkgver = pkgver[:4]
source = f"https://download.gnome.org/sources/gvfs/{Pkgver}/gvfs-{pkgver}.tar.xz"
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 = ["dbus", "glib", "gcr4", "libusb", "libsecret", "gtk3", "libcdio", "libgudev", "libsoup", "elogind", "udisks", "libmtp", "ssh"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D onedrive=false "
f"-D fuse=false -D gphoto2=false -D afc=false -D bluray=false -D nfs=false -D mtp=true -D smb=false -D tmpfilesdir=no "
f"-D dnssd=false -D goa=false -D google=false -D systemduserunitdir=no ..", # we are competing quickshell
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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"glib-compile-schemas /usr/share/glib-2.0/schemas"
]

View File

@@ -0,0 +1,36 @@
pkgname = "heroic-games-launcher"
pkgver = "2.18.1"
source = f"https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/archive/refs/tags/v{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/HeroicGamesLauncher-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["electron", "pnpm", "nodejs"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/v{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && pnpm install",
f"cd {builddir} && pnpm dist:linux tar.xz",
f"cd {builddir} && mkdir -p {destdir}/usr/lib/{pkgname} {destdir}/usr/bin && mv dist/linux-unpacked/* {destdir}/usr/lib/{pkgname} && "
f"ln -sf /usr/lib/{pkgname}/heroic {destdir}/usr/bin/heroic",
f"desktop-file-edit {builddir}/flatpak/com.heroicgameslauncher.hgl.desktop --set-key=Exec \"--set-value=heroic %u\"",
f"mkdir -p {destdir}/usr/share/applications && install -v -m644 {builddir}/flatpak/com.heroicgameslauncher.hgl.desktop {destdir}"
f"/usr/share/applications/com.heroicgameslauncher.hgl.desktop",
f"chmod u+s {destdir}/usr/lib/{pkgname}/chrome-sandbox",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

30
hyprexpo.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "hyprexpo"
pkgver = "0.52.0"
source = f"https://github.com/hyprwm/hyprland-plugins.git"
source_type = "git"
builddir = f"/tmp/fempkgbuild/hyprland-plugins"
fembuilddir = builddir
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["hyprland"]
build = [
# 64-bit build
f"cd {builddir} && git checkout 8c1212e96b81aa5f11fe21ca27defa2aad5b3cf3",
f"su gabry -c 'XDG_RUNTIME_DIR=/run/user/$EUID hyprpm update || true'",
f"cd {builddir}/hyprexpo && make -j$(nproc)",
f"cd {builddir}/hyprexpo && install -v -d -m755 {destdir}/usr/share/hypr/plugins && install -v -m775 hyprexpo.so {destdir}/usr/share/hypr/plugins/",
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}"
]

View File

@@ -1,5 +1,5 @@
pkgname = "hyprland-libs"
pkgver = "0.52.1"
pkgver = "0.52.2"
source = f"https://github.com/hyprwm/Hyprland/releases/download/v{pkgver}/source-v{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/hyprland-source"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
@@ -9,7 +9,7 @@ destdir = f"{fembuilddir}/DESTDIR"
deps = [
"cairo", "cmake", "mesa", "libdisplay-info", "libdrm", "libinput",
"libjxl", "libpng", "librsvg", "libwebp", "libzip", "libglvnd", "pixman",
"pugixml", "qt6", "seatd", "tomlplusplus", "wayland", "wayland-protocols", "hwdata"
"pugixml", "qt6", "seatd", "tomlplusplus", "wayland", "wayland-protocols", "hwdata", "muparser",
]
build = [

View File

@@ -1,6 +1,6 @@
pkgname = "hyprland"
pkgver = "0.52.1"
source = f"https://github.com/hyprwm/Hyprland/archive/v{pkgver}/Hyprland-{pkgver}.tar.gz"
pkgname = "hyprland" # TODO wen update also update hyprland-libs and coressponding plugins
pkgver = "0.52.2"
source = f"https://github.com/hyprwm/Hyprland/releases/download/v{pkgver}/source-v{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/hyprland-source"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
@@ -11,13 +11,13 @@ deps = [
"cairo", "cmake", "mesa", "libdisplay-info", "libdrm", "libinput",
"libjxl", "libpng", "librsvg", "libwebp", "libzip", "libglvnd", "pixman",
"pugixml", "qt6", "seatd", "tomlplusplus", "wayland", "wayland-protocols", "hwdata",
"glaze", "libliftoff", "re2", "xcb-util-errors", "xwayland", "cpio"
"glaze", "libliftoff", "re2", "xcb-util-errors", "xwayland", "cpio", "hyprland-libs"
]
build = [
# Extract
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/source-v{pkgver}.tar.gz && "
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/source-v{pkgver}.tar.gz",
f"cd {builddir} && mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_SKIP_INSTALL_RPATH=ON -W no-dev -G Ninja .. && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"""cd {builddir} && cat > {destdir}/usr/share/wayland-sessions/hyprland.desktop << EOF

View File

@@ -15,7 +15,7 @@ build = [
# 64-bit build
f"cd {builddir}/source && ./configure --prefix=/usr",
f"cd {builddir}/source && make -j$(nproc)",
f"cd {builddir}/source && make prefix={destdir} install",
f"cd {builddir}/source && make prefix={destdir}/usr install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",
@@ -29,5 +29,5 @@ build = [
]
triggers = [
{"rebuild_package": ["libical", "libxml2", "harfbuzz", "nodejs", "libqalculate"]}
{"rebuild_package": ["libical", "libxml2", "harfbuzz", "nodejs", "libqalculate", "llvm", "qt6", "firefox", "tinysparql", "localsearch"]}
]

View File

@@ -3,6 +3,8 @@ accountsservice.recipe.py
acl.recipe.py
adw-gtk3-theme.recipe.py
alsa-lib.recipe.py
alsa-plugins.recipe.py
android-udev.recipe.py
appstream-glib.recipe.py
appstream.recipe.py
aspell.recipe.py
@@ -12,6 +14,8 @@ aubio.recipe.py
autoconf.recipe.py
automake.recipe.py
avahi.recipe.py
ayatana-ido3.recipe.py
ayugram-desktop.recipe.py
bash.recipe.py
bc.recipe.py
binutils.recipe.py
@@ -41,23 +45,32 @@ coreutils.recipe.py
cpio.recipe.py
cryptsetup.recipe.py
cuda.recipe.py
cups.recipe.py
curl.recipe.py
cyrus-sasl.recipe.py
dav1d.recipe.py
dbus-glib.recipe.py
dbus.recipe.py
ddcutil.recipe.py
dejagnu.recipe.py
depot_tools.recipe.py
desktop-file-utils.recipe.py
dhcpcd.recipe.py
diffutils.recipe.py
discord.recipe.py
dosfstools.recipe.py
doxygen.recipe.py
dracut.recipe.py
duktape.recipe.py
dvd+rw-tools.recipe.py
dynamic-cursors.recipe.py
e2fsprogs.recipe.py
efibootmgr.recipe.py
efivar.recipe.py
electron.recipe.py
Elegant-mojave-float-left-light.recipe.py
elogind.recipe.py
exiv2.recipe.py
expat.recipe.py
expect.recipe.py
extra-cmake-modules.recipe.py
@@ -66,12 +79,15 @@ fastfetch.recipe.py
fcron.recipe.py
femboyos-postpatches.recipe.py
femctl.recipe.py
femkpg-keys.recipe.py
fempkg-keys.recipe.py
fempkg.recipe.py
ffmpeg.recipe.py
ffnv-codec.recipe.py
fftw.recipe.py
file.recipe.py
file-roller.recipe.py
findutils.recipe.py
firefox.recipe.py
fish.recipe.py
flatpak.recipe.py
flatpost.recipe.py
@@ -92,6 +108,7 @@ gdkpixbuf.recipe.py
geoclue.recipe.py
geocode-glib.recipe.py
gettext.recipe.py
gexiv2.recipe.py
giflib.recipe.py
git.recipe.py
glaze.recipe.py
@@ -104,6 +121,8 @@ glslc.recipe.py
glu.recipe.py
gmmlib.recipe.py
gmp.recipe.py
gnome-autoar.recipe.py
gnome-common.recipe.py
gnome-desktop.recipe.py
gnome-keyring.recipe.py
gnome-settings-daemon.recipe.py
@@ -113,6 +132,7 @@ gperf.recipe.py
gpgmepp.recipe.py
gpgme.recipe.py
gpg.recipe.py
gpu-screen-recorder-gtk.recipe.py
gpu-screen-recorder.recipe.py
graphene.recipe.py
grep.recipe.py
@@ -123,12 +143,16 @@ gst-plugins-base.recipe.py
gstreamer.recipe.py
gtk3.recipe.py
gtk4.recipe.py
gtk-doc.recipe.py
gtkmm4.recipe.py
gvfs.recipe.py
gzip.recipe.py
harfbuzz.recipe.py
heroic-games-launcher.recipe.py
hicolor-icon-theme.recipe.py
highway.recipe.py
hwdata.recipe.py
hyprexpo.recipe.py
hyprland-libs.recipe.py
hyprland.recipe.py
hyprpicker.recipe.py
@@ -139,6 +163,8 @@ inih.recipe.py
iniparser.recipe.py
inotify-tools.recipe.py
intelmedia.recipe.py
intel-mediasdk.recipe.py
intel-onevpl.recipe.py
intelvaapi.recipe.py
intltool.recipe.py
iproute2.recipe.py
@@ -155,17 +181,24 @@ json-glib.recipe.py
k3b.recipe.py
kapidox.recipe.py
kbd.recipe.py
kde-connect.recipe.py
keyutils.recipe.py
kf6.recipe.py
kirigami-addons.recipe.py
kmod.recipe.py
lcms2.recipe.py
less.recipe.py
lfs-repo.code-workspace
libadwaita.recipe.py
libaio.recipe.py
libaom.recipe.py
libappindicator.recipe.py
libarchive.recipe.py
libass.recipe.py
libassuan.recipe.py
libatasmart.recipe.py
libayatana-appindicator.recipe.py
libayatana-indicator.recipe.py
libblockdev.recipe.py
libburn.recipe.py
libbytesize.recipe.py
@@ -173,8 +206,11 @@ libcairomm.recipe.py
libcanberra.recipe.py
libcap.recipe.py
libcava.recipe.py
libcdio.recipe.py
libclc.recipe.py
libdaemon.recipe.py
libdatachannel.recipe.py
libdbusmenu.recipe.py
libdisplay-info.recipe.py
libdrm.recipe.py
libdvdread.recipe.py
@@ -192,13 +228,14 @@ libical.recipe.py
libidn2.recipe.py
libinput.recipe.py
libjpeg-turbo.recipe.py
libjpegturbo.recipe.py
libjuice.recipe.py
libjxl.recipe.py
libkcddb.recipe.py
libksba.recipe.py
libliftoff.recipe.py
libmad.recipe.py
libmbim.recipe.py
libmtp.recipe.py
libmusicbrainz.recipe.py
libndp.recipe.py
libnl.recipe.py
@@ -213,6 +250,7 @@ libpsl.recipe.py
libqalculate.recipe.py
libqmi.recipe.py
libqrencode.recipe.py
librewolf.recipe.py
librsvg.recipe.py
libsamplerate.recipe.py
libseccomp.recipe.py
@@ -231,6 +269,7 @@ libuv.recipe.py
libva.recipe.py
libvdpau.recipe.py
libvorbis.recipe.py
libvpl.recipe.py
libwacom.recipe.py
libwebp.recipe.py
libxau.recipe.py
@@ -244,11 +283,14 @@ libxmlb.recipe.py
libyaml.recipe.py
libzip.recipe.py
links.recipe.py
linux-firmware.recipe.py
Linux-PAM.recipe.py
linux.recipe.py
llvm.recipe.py
lmdb.recipe.py
lm-sensors.recipe.py
localsearch.recipe.py
luajit.recipe.py
lua.recipe.py
LVM2.recipe.py
lz4.recipe.py
@@ -257,13 +299,16 @@ make.recipe.py
man-db.recipe.py
man-pages.recipe.py
material-design-icons.recipe.py
mbedtls.recipe.py
mesa.recipe.py
MIME-Base32.recipe.py
ModemManager.recipe.py
mpc.recipe.py
mpfr.recipe.py
mtdev.recipe.py
muparser.recipe.py
nasm.recipe.py
nautilus.recipe.py
ncurses.recipe.py
neon.recipe.py
nettle.recipe.py
@@ -271,6 +316,7 @@ NetworkManager.recipe.py
newt.recipe.py
nghttp2.recipe.py
ninja.recipe.py
nlohmann-json.recipe.py
nodejs.recipe.py
npth.recipe.py
NSPR.recipe.py
@@ -291,13 +337,17 @@ parted.recipe.py
patchelf.recipe.py
patch.recipe.py
pavucontrol.recipe.py
pciutils.recipe.py
pcre2.recipe.py
perl.recipe.py
pipewire.recipe.py
pixman.recipe.py
pkgconf.recipe.py
plasma-wayland-protocols.recipe.py
platform-tools.recipe.py
plymouth.recipe.py
pm-utils.recipe.py
pnpm.recipe.py
polkit-gnome.recipe.py
polkit-qt.recipe.py
polkit.recipe.py
@@ -306,6 +356,7 @@ power-profiles-daemon.recipe.py
procps-ng.recipe.py
psmisc.recipe.py
pugixml.recipe.py
pulseaudio-qt.recipe.py
pulseaudio.recipe.py
__pycache__
pycairo.recipe.py
@@ -318,6 +369,7 @@ re2.recipe.py
readline.recipe.py
rustbindgen.recipe.py
rustc.recipe.py
sassc.recipe.py
sbc.recipe.py
scdoc.recipe.py
sdbus-cpp.recipe.py
@@ -335,15 +387,18 @@ spirv-tools.recipe.py
sqlite.recipe.py
ssh.recipe.py
starship.recipe.py
startup-notification.recipe.py
sudo.recipe.py
SVT-AV1.recipe.py
swappy.recipe.py
swig.recipe.py
sysklogd.recipe.py
sysvinit.recipe.py
taglib.recipe.py
tar.recipe.py
tcl.recipe.py
texinfo.recipe.py
tinysparql.recipe.py
tomlplusplus.recipe.py
udev.recipe.py
udisks.recipe.py
@@ -351,11 +406,13 @@ umockdev.recipe.py
upower.recipe.py
URI.recipe.py
utfcpp.recipe.py
uthash.recipe.py
util-linux.recipe.py
util-macros.recipe.py
v4l-utils.recipe.py
vala.recipe.py
vim.recipe.py
vscodium.recipe.py
vulkan-headers.recipe.py
vulkan-loader.recipe.py
wayland-protocols.recipe.py

38
intel-mediasdk.recipe.py Normal file
View File

@@ -0,0 +1,38 @@
pkgname = "intel-mediasdk"
pkgver = "23.2.2"
source = f"https://github.com/Intel-Media-SDK/MediaSDK/archive/refs/tags/intel-mediasdk-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/MediaSDK-intel-mediasdk-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["cmake", "gmmlib", "intelmedia", "libdrm", "libva", "xorg-libs", "wayland"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# GCC-15 patches
f"cd {builddir} && sed -i '/<string.h>/a #include <cstdint>' api/mfx_dispatch/linux/mfxparser.cpp && "
f"sed -i '/<math.h>/a #include <cstdint>' samples/sample_vpp/src/sample_vpp_frc_adv.cpp",
#configure
f"cd {builddir} && mkdir -pv build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release "
f"-D CMAKE_SKIP_INSTALL_RPATH=ON -D CMAKE_POLICY_VERSION_MINIMUM=3.5 -D BUILD_ALL=ON -D BUILD_TOOLS=ON " # quickshell MIGHT be in danger
f"-D ENABLE_ITT=OFF -D ENABLE_OPENCL=OFF -D ENABLE_WAYLAND=ON -D ENABLE_X11_DRI3=ON -D MFX_APPS_DIR=/usr/lib/mfx -W no-dev .. ",
#build
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
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}"
]

33
intel-onevpl.recipe.py Normal file
View File

@@ -0,0 +1,33 @@
pkgname = "intel-onevpl"
pkgver = "25.4.5"
source = f"https://github.com/intel/vpl-gpu-rt/archive/refs/tags/intel-onevpl-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/vpl-gpu-rt-intel-onevpl-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["cmake", "gmmlib", "intelmedia", "libdrm", "libva"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
#configure
f"cd {builddir} && mkdir -pv build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release "
f"-D CMAKE_SKIP_INSTALL_RPATH=ON -D BUILD_TESTS=OFF -D MFX_ENABLE_AENC=ON -W no-dev ..",
#build
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
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}"
]

30
kde-connect.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "kde-connect"
pkgver = "25.12.0"
source = f"https://invent.kde.org/network/kdeconnect-kde/-/archive/v{pkgver}/kdeconnect-kde-v{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/kdeconnect-kde-v{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["kf6", "qt6", "pulseaudio-qt", "kirigami-addons"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/kdeconnect-kde-v{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTING=OFF -W no-dev ..",
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"cp -pv {builddir}/LICENSES/* {destdir}/usr/share/licenses/{pkgname}/",
# 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}"
]

30
kirigami-addons.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "kirigami-addons"
pkgver = "1.10.0"
source = f"https://download.kde.org/stable/kirigami-addons/kirigami-addons-{pkgver}.tar.xz"
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 = ["kf6", "vulkan-loader"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTING=OFF ..",
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"cp -pv {builddir}/LICENSES/* {destdir}/usr/share/licenses/{pkgname}/",
# 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}"
]

7
lfs-repo.code-workspace Normal file
View File

@@ -0,0 +1,7 @@
{
"folders": [
{
"path": "."
}
]
}

31
libadwaita.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "libadwaita"
pkgver = "1.8.2"
Pkgver = pkgver[:3] # meow :3 # hold on what a coincidence xd
source = f"https://download.gnome.org/sources/libadwaita/{Pkgver}/libadwaita-{pkgver}.tar.xz"
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 = ["appstream", "gtk4", "vala", "sassc"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

33
libappindicator.recipe.py Normal file
View File

@@ -0,0 +1,33 @@
pkgname = "libappindicator"
pkgver = "12.10.1+20.10.20200706.1" # WHAT are these versions dowg
source = f"https://old-releases.ubuntu.com/ubuntu/pool/universe/liba/libappindicator/libappindicator_{pkgver}.orig.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 = ["dbus-glib", "libdbusmenu", "vala", "gtk-doc", "glib", "gnome-common"]
build = [
# Extract
f"mkdir -p {fembuilddir}/{pkgname}-{pkgver} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}_{pkgver}.orig.tar.gz -C {pkgname}-{pkgver}",
f"cd {fembuilddir} && wget https://gitlab.archlinux.org/archlinux/packaging/packages/libappindicator/-/raw/main/libappindicator-fix-unfallback.patch",
# 64-bit build
f"cd {builddir} && patch -Np0 -i ../libappindicator-fix-unfallback.patch && NOCONFIGURE=1 ./autogen.sh && ./configure --prefix=/usr "
f"--sysconfdir=/etc --localstatedir=/var --with-gtk=3 --enable-gtk-doc",
f"cd {builddir} && sed -i -e 's/ -shared / -Wl,-O1,--as-needed\\0/g' libtool && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/COPYING.LGPL.2.1 {destdir}/usr/share/licenses/{pkgname}/LICENSE.LGPL.2.1",
# 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

@@ -0,0 +1,30 @@
pkgname = "libayatana-appindicator"
pkgver = "0.5.94"
source = f"https://github.com/AyatanaIndicators/libayatana-appindicator/archive/refs/tags/{pkgver}.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 = ["libayatana-indicator", "cmake", "glibc", "libdbusmenu"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -DENABLE_BINDINGS_MONO=off -G Ninja ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"cp -pv {builddir}/COPYING* {destdir}/usr/share/licenses/{pkgname}/",
# 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

@@ -0,0 +1,30 @@
pkgname = "libayatana-indicator"
pkgver = "0.9.4"
source = f"https://github.com/AyatanaIndicators/libayatana-indicator/archive/refs/tags/{pkgver}.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 = ["ayatana-ido3"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -G Ninja ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

35
libcdio.recipe.py Normal file
View File

@@ -0,0 +1,35 @@
pkgname = "libcdio"
pkgver = "2.1.0"
pa_ver = "10.2+2.0.2"
source = f"https://ftpmirror.gnu.org/libcdio/libcdio-{pkgver}.tar.bz2"
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 = ["appstream", "gtk4", "vala", "sassc"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.bz2 && "
f"wget https://ftpmirror.gnu.org/libcdio/libcdio-paranoia-{pa_ver}.tar.bz2",
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr --disable-static",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"cd {builddir} && tar -xf ../libcdio-paranoia-{pa_ver}.tar.bz2 && cd libcdio-paranoia-{pa_ver} && ./configure --prefix=/usr --disable-static",
f"cd {builddir}/libcdio-paranoia-{pa_ver} && make -j$(nproc) && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/libcdio-paranoia-{pa_ver}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE.libcdio-paranoia",
# 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}"
]

37
libdatachannel.recipe.py Normal file
View File

@@ -0,0 +1,37 @@
pkgname = "libdatachannel"
pkgver = "0.24.0"
source = f"https://github.com/paullouisageneau/libdatachannel/archive/v{pkgver}/libdatachannel-{pkgver}.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 = ["cmake", "libjuice"]
build = [
# Extract & download additional submodules
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz && "
f"wget https://github.com/SergiusTheBest/plog/archive/94899e0b926ac1b0f4750bfbd495167b4a6ae9ef.tar.gz "
f"https://github.com/sctplab/usrsctp/archive/fec583d54493f879d2ae44a743423bf8a04371ab.tar.gz",
# extract and rename submodules
f"cd {builddir} && tar -xvf ../94899e0b926ac1b0f4750bfbd495167b4a6ae9ef.tar.gz && tar -xvf ../fec583d54493f879d2ae44a743423bf8a04371ab.tar.gz",
f"cd {builddir} && mv -T plog-* deps/plog && mv -T usrsctp-* deps/usrsctp",
# configure
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -D CMAKE_SKIP_INSTALL_RPATH=ON "
f"-D USE_GNUTLS=0 -D USE_NICE=0 -D USE_SYSTEM_JUICE=1 -D USE_SYSTEM_SRTP=1 -D NO_EXAMPLES=1 -D NO_TESTS=1 -Wno-dev -G Ninja ..",
# build & install
f"cd {builddir}/build && ninja && DESTDIR={destdir} ninja install",
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}"
]

32
libdbusmenu.recipe.py Normal file
View File

@@ -0,0 +1,32 @@
pkgname = "libdbusmenu"
pkgver = "18.10.20180917"
source = f"https://deb.debian.org/debian/pool/main/libd/libdbusmenu/libdbusmenu_{pkgver}~bzr492+repack1.orig.tar.xz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}~bzr492"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
exports = "export HAVE_VALGRIND_TRUE='#' && export HAVE_VALGRIND_FALSE=''"
deps = ["gnome-common", "gtk-doc"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}_{pkgver}~bzr492+repack1.orig.tar.xz",
# 64-bit build
f"cd {builddir} && NOCONFIGURE=1 ./autogen.sh && {exports} && ./configure --prefix=/usr --disable-{{dumper,static,tests}} --with-gtk=3 --disable-vala && "
f"sed -i -e 's/ -shared / -Wl,-O1,--as-needed\\0/g' libtool",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"cp -pv {builddir}/COPYING* {destdir}/usr/share/licenses/{pkgname}/",
# 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

@@ -6,7 +6,7 @@ fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["geocode-glib", "glib", "gtk3", "libsoup", "pygobject", "libxml2", "vala"]
deps = ["geocode-glib", "glib", "gtk3", "libsoup", "libxml2", "vala"]
build = [
# Extract

View File

@@ -1,31 +0,0 @@
pkgname = "libjpegturbo"
pkgver = "3.0.1"
source = f"https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/libjpeg-turbo-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["cmake"]
build = [
# Extract
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/libjpeg-turbo-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=RELEASE -D ENABLE_STATIC=FALSE -D CMAKE_INSTALL_DEFAULT_LIBDIR=lib -D CMAKE_POLICY_VERSION_MINIMUM=3.5 -D CMAKE_SKIP_INSTALL_RPATH=ON -D CMAKE_INSTALL_DOCDIR=/usr/share/doc/libjpeg-turbo-{pkgver} ..",
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE.md {destdir}/usr/share/licenses/{pkgname}/LICENSE.md",
f"install -v -m644 {builddir}/README.ijg {destdir}/usr/share/licenses/{pkgname}/README.ijg",
f"install -v -m644 {builddir}/README.md {destdir}/usr/share/licenses/{pkgname}/README.md",
# 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 {builddir} {fembuilddir}"
]

32
libjuice.recipe.py Normal file
View File

@@ -0,0 +1,32 @@
pkgname = "libjuice"
pkgver = "1.7.0"
source = f"https://github.com/paullouisageneau/libjuice/archive/v{pkgver}/libjuice-{pkgver}.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 = ["cmake"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release "
f"-D CMAKE_SKIP_INSTALL_RPATH=ON -G Ninja ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
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}"
]

30
libmtp.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "libmtp"
pkgver = "1.1.22"
source = f"https://rocketleaguechatp.duckdns.org/libmtp-{pkgver}.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 = ["glibc", "libusb", "libgcrypt"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr --with-udev=/usr/lib/udev",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

View File

@@ -1,6 +1,6 @@
pkgname = "libpng"
pkgver = "1.6.50"
source = f"https://downloads.sourceforge.net/libpng/libpng-{pkgver}.tar.xz"
pkgver = "1.6.52"
source = f"https://rocketleaguechatp.duckdns.org/libpng-{pkgver}.tar.xz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
@@ -10,10 +10,10 @@ deps = []
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz && wget https://downloads.sourceforge.net/sourceforge/libpng-apng/libpng-1.6.51-apng.patch.gz",
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr --disable-static",
f"cd {builddir} && gzip -cd ../libpng-1.6.51-apng.patch.gz | patch -p1 && ./configure --prefix=/usr --disable-static",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"cd {builddir} && mkdir -p {destdir}/usr/share/doc/libpng-{pkgver}",

33
librewolf.recipe.py Normal file
View File

@@ -0,0 +1,33 @@
pkgname = "librewolf"
pkgver = "146.0-2"
source = f"https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/{pkgver}/librewolf-{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 = [] # hello
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} && echo \"ac_add_options --prefix=/usr\" >> mozconfig",
f"cd {builddir} && ./mach build",
f"cd {builddir} && DESTDIR={destdir} ./mach install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/toolkit/content/license.html {destdir}/usr/share/licenses/{pkgname}/license.html",
f"mkdir -p {destdir}/usr/share/applications && wget https://aur.archlinux.org/cgit/aur.git/plain/librewolf.desktop?h=librewolf -O "
f"{destdir}/usr/share/applications/librewolf.desktop",
# 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}"
]

33
libvpl.recipe.py Normal file
View File

@@ -0,0 +1,33 @@
pkgname = "libvpl"
pkgver = "2.15.0"
source = f"https://github.com/intel/libvpl/archive/refs/tags/v{pkgver}/libvpl-{pkgver}.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 = ["cmake", "gmmlib", "intelmedia", "libdrm", "libva"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
#configure
f"cd {builddir} && mkdir -pv build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_INSTALL_SYSCONFDIR=/etc "
f"-D CMAKE_BUILD_TYPE=Release -D CMAKE_SKIP_INSTALL_RPATH=ON -D BUILD_EXAMPLES=OFF -D BUILD_TESTS=ON -W no-dev ..",
#build
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
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}"
]

25
linux-firmware.recipe.py Normal file
View File

@@ -0,0 +1,25 @@
pkgname = "linux-firmware"
pkgver = "20251125-2"
source = f"https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"
builddir = f"/tmp/fempkgbuild/{pkgname}"
fembuilddir = builddir
source_type = "git"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = []
build = [
# 64-bit build
f"cd {builddir} && install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/ && cp -pv LICENSE* {destdir}/usr/share/licenses/{pkgname}/",
f"cd {builddir} && ./copy-firmware.sh {destdir}/usr/lib/firmware",
# 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

@@ -1,6 +1,6 @@
# TODO when updating kernel version update version in nvidia package
pkgname = "linux"
pkgver = "6.18.1"
pkgver = "6.18.2"
source = f"https://www.kernel.org/pub/linux/kernel/v6.x/linux-{pkgver}.tar.xz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
@@ -28,7 +28,7 @@ build = [
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make INSTALL_MOD_PATH={destdir}/usr modules_install",
f"mkdir -pv {destdir}/boot",
f"cd {builddir} && cp -vf arch/x86/boot/bzImage {destdir}/boot/vmlinuz",
f"cd {builddir} && cp -vf arch/x86/boot/bzImage {destdir}/boot/vmlinuz-{pkgver}",
f"cd {builddir} && cp -vf System.map {destdir}/boot/System.map",
f"cd {builddir} && cat .config > {destdir}/boot/config-{pkgver}",
@@ -50,5 +50,8 @@ build = [
triggers = [
f"find /usr/lib/modules -mindepth 1 -maxdepth 1 -type d ! -name '{pkgver}' -exec rm -rf {{}} +",
f"find /boot -maxdepth 1 ! -name 'config-{pkgver}' -name 'config-*' -exec rm -rf {{}} +",
{"rebuild_package": ["nvidia"]}
{"rebuild_package": ["nvidia"]},
f"dracut -f -v /boot/initramfs-{pkgver}.img {pkgver}",
f"find /boot -mindepth 1 -maxdepth 1 -type f ! -name 'initramfs-{pkgver}.img' -name 'initramfs-*.img' -exec rm -rf {{}} +",
f"grub-mkconfig -o /boot/grub/grub.cfg",
]

35
localsearch.recipe.py Normal file
View File

@@ -0,0 +1,35 @@
pkgname = "localsearch"
pkgver = "3.10.2"
Pkgver = pkgver[:4]
source = f"https://download.gnome.org/sources/localsearch/{Pkgver}/localsearch-{pkgver}.tar.xz"
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 = ["gexiv2", "gst-plugins-base", "tinysparql", "giflib", "ffmpeg", "libseccomp", "libwebp", "upower", "cmake", "icu"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D systemd_user_services=false "
f"-D man=false -D functional_tests=false ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/COPYING.GPL {destdir}/usr/share/licenses/{pkgname}/LICENSE.GPL",
f"install -v -m644 {builddir}/COPYING.LGPL {destdir}/usr/share/licenses/{pkgname}/LICENSE.LGPL",
# 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}"
]

29
luajit.recipe.py Normal file
View File

@@ -0,0 +1,29 @@
pkgname = "luajit"
pkgver = "20250816"
source = f"https://anduin.linuxfromscratch.org/BLFS/luajit/luajit-{pkgver}.tar.xz"
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 = []
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && make PREFIX=/usr amalg -j$(nproc)",
f"cd {builddir} && make PREFIX=/usr DESTDIR={destdir} install && rm -v {destdir}/usr/lib/libluajit-5.1.a",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYRIGHT {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}"
]

33
mbedtls.recipe.py Normal file
View File

@@ -0,0 +1,33 @@
pkgname = "mbedtls"
pkgver = "3.6.5"
source = f"https://github.com/Mbed-TLS/mbedtls/releases/download/mbedtls-{pkgver}/mbedtls-{pkgver}.tar.bz2"
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 = ["cmake"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.bz2",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release "
f"-D CMAKE_SKIP_RPATH=ON -D USE_SHARED_MBEDTLS_LIBRARY=ON -D USE_STATIC_MBEDTLS_LIBRARY=OFF -D ENABLE_TESTING=OFF -G Ninja ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR=$PWD/tmpdestdir ninja install && cd tmpdestdir/usr/bin && for i in *; do mv -v {{,mbedtls_}}$i; "
f"done && cd {builddir}/build && mkdir -p {destdir}/usr && cp -vR tmpdestdir/usr/* {destdir}/usr",
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}"
]

30
muparser.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "muparser"
pkgver = "2.3.5"
source = f"https://github.com/beltoforion/muparser/archive/v{pkgver}/muparser-{pkgver}.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 = ["cmake"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release ..",
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
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}"
]

37
nautilus.recipe.py Normal file
View File

@@ -0,0 +1,37 @@
pkgname = "nautilus"
pkgver = "49.2"
Pkgver = pkgver[:2]
source = f"https://download.gnome.org/sources/nautilus/{Pkgver}/nautilus-{pkgver}.tar.xz"
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 = ["gexiv2", "gnome-autoar", "gnome-desktop", "libadwaita", "libportal", "libseccomp", "tinysparql",
"desktop-file-utils", "glib", "gst-plugins-base", "gvfs"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D cloudproviders=false",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -d -m755 {destdir}/usr/share/applications && wget https://rocketleaguechatp.duckdns.org/nautilus.desktop -O {destdir}/usr/share/applications/nautilus.desktop",
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"glib-compile-schemas /usr/share/glib-2.0/schemas"
]

33
nlohmann-json.recipe.py Normal file
View File

@@ -0,0 +1,33 @@
pkgname = "nlohmann-json"
pkgver = "3.12.0"
source = f"https://github.com/nlohmann/json/archive/v{pkgver}/json-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/json-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["cmake"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/json-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTING=OFF -D "
f"JSON_BuildTests=OFF -G Ninja ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE.MIT {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"cp -pv {builddir}/LICENSES/* {destdir}/usr/share/licenses/{pkgname}/",
# 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

@@ -17,6 +17,9 @@ build = [
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install && install -d -m 755 {destdir}/usr/share/doc && ln -sf node {destdir}/usr/share/doc/node-{pkgver}",
f"rm -rf {destdir}/usr/bin/{{npm,npx,corepack}} && for i in {{npm,npx}}; do ln -sf /lib/node_modules/npm/bin/$i-cli.js {destdir}/usr/bin/$i; done && "
f"ln -sf /lib/node_modules/corepack/dist/corepack.js {destdir}/usr/bin/corepack", # fix symlinks
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",

View File

@@ -1,9 +1,10 @@
pkgname = "nvidia"
pkgver = "580.105.08"
kernel_ver = "6.18.1"
source = f"https://rocketleaguechatp.duckdns.org/kernel-source-prep-{kernel_ver}.tar.xz"
pkgver = "580.119.02"
kernel_ver = "6.18.2"
source = f"https://rocketleaguechatp.duckdns.org/pappalaugh.jpg"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
krl_src = f"https://rocketleaguechatp.duckdns.org/kernel-source-prep-{kernel_ver}.tar.xz"
deps = ["linux"]
@@ -12,14 +13,14 @@ build = [
f"mkdir -p {builddir} && cd {fembuilddir} && mkdir -pv /var/tmp/fempkg/build/linux/linux-{kernel_ver}",
# 64-bit build
f"cd {builddir} && if [ -f \"/var/lib/fempkg/nvidia\" ]; then "
f"cd {builddir} && if [ -f \"/var/lib/fempkg/nvidia\" ]; then wget {krl_src} -O /var/lib/fempkg/pkgs/kernel-source-prep-{kernel_ver}.tar.xz && "
f"tar -xvf /var/lib/fempkg/pkgs/kernel-source-prep-{kernel_ver}.tar.xz -C /var/tmp/fempkg/build/linux/linux-{kernel_ver}/ && "
f"wget https://us.download.nvidia.com/XFree86/Linux-x86_64/{pkgver}/NVIDIA-Linux-x86_64-{pkgver}.run "
f"https://glfs-book.github.io/glfs/download/NVIDIA/install-NVIDIA-1 https://glfs-book.github.io/glfs/download/NVIDIA/manifest-NVIDIA-1 && "
f"sh NVIDIA-Linux-x86_64-{pkgver}.run -x && cd NVIDIA-Linux-x86_64-{pkgver}/kernel && make KERNEL_UNAME={kernel_ver} NV_EXCLUDE_KERNEL_MODULES= "
f"-j$(nproc) && make KERNEL_UNAME={kernel_ver} modules_install && cd .. && rm -rvf /usr/lib/firmware/nvidia/[0-9]* && "
f"mkdir -pv /usr/lib/firmware/nvidia/{pkgver} && cp -v firmware/*.bin /usr/lib/firmware/nvidia/{pkgver} && install -vdm755 /usr/share/nvidia && "
f"install -vDm755 ../install-NVIDIA-1 /usr/sbin/nvidia-install && install -vDm644 ../manifest-NVIDIA-1 /usr/share/nvidia/manifest; "
f"install -vDm755 ../install-NVIDIA-1 /usr/sbin/nvidia-install && install -vDm644 ../manifest-NVIDIA-1 /usr/share/nvidia/manifest && /sbin/nvidia-install; "
f"else echo \"Nvidia isn't enabled in fempkg's settings... Skipping\"; fi",
# Cleanup

View File

@@ -1,18 +1,40 @@
pkgname = "obs-studio"
pkgver = "31.1.2"
pkgver = "31.1.2"
source = f"https://github.com/obsproject/obs-studio/releases/download/{pkgver}/OBS-Studio-{pkgver}-Sources.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}-sources"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
deps = ["cmake"]
outputdir = "/home/gabry/lfs-repo/binpkg"
manifestdir = "/home/gabry/lfs-repo/manifests"
destdir = f"{fembuilddir}/DESTDIR"
deps = ["alsa-plugins" ,"cmake", "curl", "ffmpeg", "freetype", "fontconfig", "glib", "jansson", "libdrm", "libva", "libxkbcommon", "mbedtls",
"mesa", "libglvnd", "pciutils", "qt6", "uthash", "vulkan-loader", "xorg-libs", "x264", "atspi2core", "cups", "ffnv-codec",
"libdatachannel", "pipewire", "xdg-desktop-portal", "pulseaudio", "swig", "luajit", "v4l-utils", "nlohmann-json"]
build = [
# Extract
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/OBS-Studio-{pkgver}-Sources.tar.gz",
f"mkdir /tmp/fempkg/build {fembuilddir} || true && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/OBS-Studio-{pkgver}-Sources.tar.gz && "
f"wget https://glfs-book.github.io/slfs/patches/obs/obs-studio-{pkgver}-qt6.10-1.patch https://cdn-fastly.obsproject.com/downloads/"
f"cef_binary_6533_linux_x86_64.tar.xz",
# apply qt6.10.x,ffmpeg 8.x patch and add CEF
f"cd {builddir} && patch -Np1 -i ../obs-studio-{pkgver}-qt6.10-1.patch && sed -i 's/FF_/AV_/g' plugins/obs-ffmpeg/obs-ffmpeg-vaapi.c && "
f"tar -xf ../cef_binary_6533_linux_x86_64.tar.xz && mv cef_binary_6533_linux_x86_64 cef-6533",
f"cd {builddir} && mkdir -pv build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release "
f"-D CMAKE_SKIP_INSTALL_RPATH=ON -D ENABLE_BROWSER=ON -D CEF_ROOT_DIR=../cef-6533 -D ENABLE_AJA=OFF -D ENABLE_JACK=OFF "
f"-D ENABLE_WEBSOCKET=OFF -D ENABLE_SPEEXDSP=OFF -D ENABLE_VLC=OFF -D ENABLE_NEW_MPEGTS_OUTPUT=OFF -D OBS_COMPILE_DEPRECATION_AS_WARNING=ON "
f"-G Ninja -Wno-dev .. ", # WHO is gonna win atp
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTING=OFF -G Ninja ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && ninja install",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/cef-6533/LICENSE.txt {destdir}/usr/share/licenses/{pkgname}/LICENSE.CEF",
# 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 {builddir} {fembuilddir}"

View File

@@ -1,8 +1,27 @@
pkgname = "opsec"
pkgver = "1.0"
source = f"https://github.com/dosfstools/dosfstools/releases/download/v{pkgver}/dosfstools-{pkgver}.tar.gz"
deps = []
source = f"https://rocketleaguechatp.duckdns.org/opsec.tar.xz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
deps = ["perl"]
build = [
f"echo \"This package isnt made yet lmao ask @alerktt on telegram for when hes gonna finally make it zowg :explodes:\""
# extract opsecco
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}.tar.xz",
# build aircrack cuz no bins
f"cd {builddir}/src && git clone https://github.com/aircrack-ng/aircrack-ng --depth=1",
f"cd {builddir}/src/aircrack-ng && ./autogen.sh --prefix=/usr && make -j$(nproc) && mkdir -p {builddir}/aircrack && rm -rf *.la && make DESTDIR=$PWD/DESTDIR install",
f"cd {builddir}/src/aircrack-ng && wget https://github.com/jbruechert/rsync-static/releases/download/continuous/rsync-x86 && chmod +x rsync-x86",
f"cd {builddir}/src/aircrack-ng && ./rsync-x86 -a --remove-source-files DESTDIR/usr/ /opt/opsec/",
f"mv {builddir} /opt/opsec",
f"mv /opt/opsec/lib/* /usr/lib/",
f"echo \"pathappend /opt/opsec/bin PATH\" > /etc/profile.d/opsec.sh",
f"chmod +x /etc/profile.d/opsec.sh",
#clean
f"rm -rf {fembuilddir}",
f"rm -rf /opt/opsec/src",
f"/sbin/ldconfig",
f"echo bins are in /opt/opsec/bin btw"
]

30
pciutils.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "pciutils"
pkgver = "3.14.0"
source = f"https://mj.ucw.cz/download/linux/pci/pciutils-{pkgver}.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 = ["hwdata"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && sed -r '/INSTALL/{{/PCI_IDS|update-pciids /d; s/update-pciids.8//}}' -i Makefile",
f"cd {builddir} && make PREFIX=/usr SHAREDIR=/usr/share/hwdata SHARED=yes -j$(nproc)",
f"cd {builddir} && make PREFIX=/usr DESTDIR={destdir} SHAREDIR=/usr/share/hwdata SHARED=yes install install-lib && chmod -v 755 {destdir}/usr/lib/libpci.so",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

View File

@@ -17,7 +17,7 @@ build = [
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr --docdir=/usr/share/doc/pcre2-{pkgver} --enable-unicode --enable-jit --enable-pcre2-16 --enable-pcre2-32 --enable-pcre2grep-libz --enable-pcre2grep-libbz2 --enable-pcre2test-libreadline --disable-static",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make install",
f"cd {builddir} && make DESTDIR={destdir} install",
# Clean for 32-bit
f"cd {builddir} && make distclean",

18
platform-tools.recipe.py Normal file
View File

@@ -0,0 +1,18 @@
pkgname = "platform-tools"
pkgver = "1.0"
source = f"https://dl.google.com/android/repository/platform-tools-latest-linux.zip"
builddir = f"/tmp/fempkg/build/{pkgname}/platform-tools"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"
deps = ["udev", "android-udev"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && unzip /var/lib/fempkg/pkgs/platform-tools-latest-linux.zip",
# 64-bit build
f"cd {builddir} && cp -pvra {{adb,fastboot}} /usr/bin/",
# Cleanup
f"rm -rf {fembuilddir}"
]

33
plymouth.recipe.py Normal file
View File

@@ -0,0 +1,33 @@
pkgname = "plymouth"
pkgver = "24.004.60"
source = f"https://rocketleaguechatp.duckdns.org/plymouth-{pkgver}.tar.xz"
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 = ["cmake"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup .. --prefix=/usr --sysconfdir=/etc --localstatedir=/var "
f"-Dsystemd-integration=false -Dupstart-monitoring=false -Ddocs=false -Dgtk=disabled -Ddrm=true -Dpango=enabled -Dfreetype=enabled "
f"-Dudev=enabled",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

11
pnpm.recipe.py Normal file
View File

@@ -0,0 +1,11 @@
pkgname = "pnpm"
pkgver = "10"
source = f"https://rocketleaguechatp.duckdns.org/pappalaugh.jpg" # this is genuinly the most low effort package i ever did
deps = ["nodejs"]
build = [
"npm install -g pnpm"
]

30
pulseaudio-qt.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "pulseaudio-qt"
pkgver = "1.7.0"
source = f"https://download.kde.org/stable/pulseaudio-qt/pulseaudio-qt-{pkgver}.tar.xz"
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 = ["kf6", "pulseaudio"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX -D CMAKE_PREFIX_PATH=$QT6DIR -D CMAKE_SKIP_INSTALL_RPATH=ON -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTING=OFF .. ",
f"cd {builddir}/build && make -j$(nproc)",
f"cd {builddir}/build && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"cp -pv {builddir}/LICENSES/* {destdir}/usr/share/licenses/{pkgname}/",
# 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

@@ -32,12 +32,14 @@ build = [
]
triggers = [
f"cd /tmp && find /usr/lib -maxdepth 1 -type d -name \"python3*\" ! -name \"python{Pkgver}\" -exec rm -rf {{}} +",
f"python3 -m ensurepip",
f"rm -rf /usr/bin/python3.13 /usr/bin/pip3.13 || true",
f"cd /tmp && pip3 install requests build installer materialyoucolor pillow setuptools wheel meson dbus-python meson_python "
f"flit-core packaging markupsafe Jinja2 pluggy PyYAML pathspec Mako trove-classifiers editables hatchling python-dbusmock "
f"brotli pyproject_metadata Cython pyparsing ply docutils PyGObject Pygments tqdm httplib2==0.21.0 certifi chardet charset_normalizer "
f"doxypypy doxyqml idna urllib3",
{"rebuild_package": ["caelestia-cli", "kapidox", "glib", "libxml2", "newt", "pycairo", "xcb-proto"]},
f"cd /tmp && find /usr/lib -maxdepth 1 -type d -name \"python3*\" ! -name \"python{Pkgver}\" -exec rm -rf {{}} +"
]
# TODO when a minor version, ie 3.13.0 to 3.14.0 drops specfiy the python version in the newt package config line

View File

@@ -1,4 +1,4 @@
# TODO update sddm and qca qtver wen updating qt6 ver
# TODO update sddm qca caelestia shell qt6ct qtver wen updating qt6 ver
pkgname = "qt6"
pkgver = "6.10.1"
Pkgver = pkgver[:4]
@@ -13,11 +13,7 @@ destdir = f"{fembuilddir}/DESTDIR"
build = [
# Extract and patch source
f"mkdir -p /var/fempkg/ /var/fempkg/build {fembuilddir} || true && "
f"cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/qt-everywhere-src-{pkgver}.tar.xz && "
f"cd {builddir} && wget https://raw.githubusercontent.com/immortalwrt/packages/refs/heads/master/utils/qt6tools/patches/010-no-clang.patch",
# Apply patch
f"cd {builddir}/qttools && patch -p1 < ../010-no-clang.patch",
f"cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/qt-everywhere-src-{pkgver}.tar.xz",
f"""cd {builddir} && sed -e '/!p->receivedExpose/i \\
if (e->isExposed) {{\\
@@ -110,5 +106,5 @@ EOF""",
triggers = [
f'cd /tmp && find /opt -maxdepth 1 -type d -name "qt-6*" ! -name "qt-{pkgver}" ! -name "qt6" -exec rm -rf {{}} +',
{"rebuild_package": ["sddm", "quickshell"]}
{"rebuild_package": ["sddm", "quickshell", "qt6ct", "qca"]}
]

View File

@@ -1,5 +1,6 @@
pkgname = "qt6ct"
pkgver = "0.11"
pkgver = "0.11"
qtver = "6.10.1"
source = f"https://www.opencode.net/trialuser/qt6ct"
builddir = f"/tmp/fempkgbuild/{pkgname}"
source_type = "git"
@@ -15,6 +16,7 @@ build = [
# 64-bit build
f"cd {builddir} && git checkout 0.11 && wget https://rocketleaguechatp.duckdns.org/qt6ct-shenanigans.patch -O qt6ct-shenanigans.patch && patch -p1 < ./qt6ct-shenanigans.patch && mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/usr ..",
f"cd {builddir}/build && make -j$(nproc)",
f"mkdir -p {destdir}/opt/qt-{qtver} && ln -sf qt-{qtver} {destdir}/opt/qt6",
f"cd {builddir}/build && make DESTDIR={destdir} install && install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/ && "
f"install -Dm644 ../COPYING {destdir}/usr/share/licenses/qt6ct/LICENSE",

34
sassc.recipe.py Normal file
View File

@@ -0,0 +1,34 @@
pkgname = "sassc"
pkgver = "3.6.2"
libsass_ver = "3.6.6"
source = f"https://github.com/sass/sassc/archive/{pkgver}/sassc-{pkgver}.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 = ["appstream", "gtk4", "vala", "sassc"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz && "
f"wget https://github.com/sass/libsass/archive/{libsass_ver}/libsass-{libsass_ver}.tar.gz && cd {builddir} && "
f"tar -xf ../libsass-{libsass_ver}.tar.gz",
# build libsass
f"cd {builddir}/libsass-{libsass_ver} && autoreconf -fi && ./configure --prefix=/usr --disable-static",
f"cd {builddir}/libsass-{libsass_ver} && make -j$(nproc) && make DESTDIR={destdir} install",
f"cd {builddir} && autoreconf -fi && ./configure --prefix=/usr && make -j$(nproc) && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/libsass-{libsass_ver}/LICENSE {destdir}/usr/share/licenses/{pkgname}/LICENSE.libsass",
# 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

@@ -0,0 +1,30 @@
pkgname = "startup-notification"
pkgver = "0.12"
source = f"https://rocketleaguechatp.duckdns.org/startup-notification-{pkgver}.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 = ["xcb-util", "xorg-libs"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr --disable-static",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {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}"
]

30
swig.recipe.py Normal file
View File

@@ -0,0 +1,30 @@
pkgname = "swig"
pkgver = "4.4.1"
source = f"https://rocketleaguechatp.duckdns.org/swig-{pkgver}.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 = []
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && ./configure --prefix=/usr",
f"cd {builddir} && make -j$(nproc)",
f"cd {builddir} && make DESTDIR={destdir} install && mkdir -p {destdir}/usr/share/doc && cp -v -R Doc -T {destdir}/usr/share/doc/swig-{pkgver}",
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}"
]

37
tinysparql.recipe.py Normal file
View File

@@ -0,0 +1,37 @@
pkgname = "tinysparql"
pkgver = "3.10.1"
Pkgver = pkgver[:4]
source = f"https://download.gnome.org/sources/tinysparql/{Pkgver}/tinysparql-{pkgver}.tar.xz"
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 = ["json-glib", "glib", "vala", "icu", "libsoup", "python"]
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.xz",
# Documentation location patch
f"cd {builddir} && sed -e \"s/'generate'/&, '--no-namespace-dir'/\" -e \"/--output-dir/s/@OUTPUT@/&\\/tinysparql-{pkgver}/\""
f" -i docs/reference/meson.build",
# 64-bit build
f"cd {builddir} && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D man=false -D systemd_user_services=false ..",
f"cd {builddir}/build && ninja",
f"cd {builddir}/build && DESTDIR={destdir} ninja install",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"install -v -m644 {builddir}/COPYING {destdir}/usr/share/licenses/{pkgname}/LICENSE",
f"install -v -m644 {builddir}/COPYING.GPL {destdir}/usr/share/licenses/{pkgname}/LICENSE.GPL",
f"install -v -m644 {builddir}/COPYING.LGPL {destdir}/usr/share/licenses/{pkgname}/LICENSE.LGPL",
# 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}"
]

28
uthash.recipe.py Normal file
View File

@@ -0,0 +1,28 @@
pkgname = "uthash"
pkgver = "2.3.0"
source = f"https://github.com/troydhanson/uthash/archive/v{pkgver}/uthash-{pkgver}.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 = [] # good hello and
build = [
# Extract
f"mkdir -p {fembuilddir} && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/{pkgname}-{pkgver}.tar.gz",
# 64-bit build
f"cd {builddir} && mkdir -p {destdir}/usr/include && cp -av include/* {destdir}/usr/include",
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}"
]

View File

@@ -1,5 +1,5 @@
pkgname = "vim"
pkgver = "9.1.1914"
pkgver = "9.1.1989"
source = f"https://github.com/vim/vim/archive/v{pkgver}/vim-{pkgver}.tar.gz"
builddir = f"/tmp/fempkg/build/{pkgname}/{pkgname}-{pkgver}"
fembuilddir = f"/tmp/fempkg/build/{pkgname}"

31
vscodium.recipe.py Normal file
View File

@@ -0,0 +1,31 @@
pkgname = "vscodium"
pkgver = "1.106.37943"
source = f"https://github.com/VSCodium/vscodium/releases/download/{pkgver}/VSCodium-linux-x64-{pkgver}.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 = []
build = [
# Extract
f"mkdir -p {fembuilddir} {destdir}/usr/lib/codium && cd {fembuilddir} && tar -xvf /var/lib/fempkg/pkgs/VSCodium-linux-x64-{pkgver}.tar.gz "
f"-C {destdir}/usr/lib/codium && mkdir {destdir}/usr/bin",
# 64-bit build
f"ln -sf /usr/lib/codium/codium {destdir}/usr/bin/codium",
f"mkdir -p {destdir}/usr/share/applications && wget https://rocketleaguechatp.duckdns.org/vscodium.desktop "
f"-O {destdir}/usr/share/applications/vscodium.desktop",
f"install -v -d -m755 {destdir}/usr/share/licenses/{pkgname}/",
f"wget https://raw.githubusercontent.com/VSCodium/vscodium/refs/heads/master/LICENSE -O {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}"
]