From c4cc0244bda252f4efde20bdb8da091b7336c0bd Mon Sep 17 00:00:00 2001 From: gabry Date: Tue, 23 Dec 2025 22:35:04 +0100 Subject: [PATCH] feat: add nautilus --- exiv2.recipe.py | 32 ++++++++++++++++++++++++++++++++ gexiv2.recipe.py | 31 +++++++++++++++++++++++++++++++ gnome-autoar.recipe.py | 31 +++++++++++++++++++++++++++++++ gvfs.recipe.py | 38 ++++++++++++++++++++++++++++++++++++++ icu.recipe.py | 2 +- index.txt | 11 +++++++++++ libadwaita.recipe.py | 31 +++++++++++++++++++++++++++++++ libcdio.recipe.py | 35 +++++++++++++++++++++++++++++++++++ libmtp.recipe.py | 30 ++++++++++++++++++++++++++++++ localsearch.recipe.py | 35 +++++++++++++++++++++++++++++++++++ nautilus.recipe.py | 37 +++++++++++++++++++++++++++++++++++++ sassc.recipe.py | 34 ++++++++++++++++++++++++++++++++++ tinysparql.recipe.py | 37 +++++++++++++++++++++++++++++++++++++ 13 files changed, 383 insertions(+), 1 deletion(-) create mode 100644 exiv2.recipe.py create mode 100644 gexiv2.recipe.py create mode 100644 gnome-autoar.recipe.py create mode 100644 gvfs.recipe.py create mode 100644 libadwaita.recipe.py create mode 100644 libcdio.recipe.py create mode 100644 libmtp.recipe.py create mode 100644 localsearch.recipe.py create mode 100644 nautilus.recipe.py create mode 100644 sassc.recipe.py create mode 100644 tinysparql.recipe.py diff --git a/exiv2.recipe.py b/exiv2.recipe.py new file mode 100644 index 0000000..72db4b6 --- /dev/null +++ b/exiv2.recipe.py @@ -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}" +] diff --git a/gexiv2.recipe.py b/gexiv2.recipe.py new file mode 100644 index 0000000..5d04dc7 --- /dev/null +++ b/gexiv2.recipe.py @@ -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}" +] diff --git a/gnome-autoar.recipe.py b/gnome-autoar.recipe.py new file mode 100644 index 0000000..f8825bc --- /dev/null +++ b/gnome-autoar.recipe.py @@ -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}" +] diff --git a/gvfs.recipe.py b/gvfs.recipe.py new file mode 100644 index 0000000..44e0738 --- /dev/null +++ b/gvfs.recipe.py @@ -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" +] diff --git a/icu.recipe.py b/icu.recipe.py index 2c27c94..afaf0c6 100644 --- a/icu.recipe.py +++ b/icu.recipe.py @@ -29,5 +29,5 @@ build = [ ] triggers = [ - {"rebuild_package": ["libical", "libxml2", "harfbuzz", "nodejs", "libqalculate", "llvm", "qt6", "firefox"]} + {"rebuild_package": ["libical", "libxml2", "harfbuzz", "nodejs", "libqalculate", "llvm", "qt6", "firefox", "tinysparql", "localsearch"]} ] \ No newline at end of file diff --git a/index.txt b/index.txt index 6cb48aa..5bc3812 100644 --- a/index.txt +++ b/index.txt @@ -68,6 +68,7 @@ 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 @@ -103,6 +104,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 @@ -115,6 +117,7 @@ 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 @@ -138,6 +141,7 @@ 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 @@ -179,6 +183,7 @@ 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 @@ -195,6 +200,7 @@ libcairomm.recipe.py libcanberra.recipe.py libcap.recipe.py libcava.recipe.py +libcdio.recipe.py libclc.recipe.py libdaemon.recipe.py libdbusmenu.recipe.py @@ -221,6 +227,7 @@ libksba.recipe.py libliftoff.recipe.py libmad.recipe.py libmbim.recipe.py +libmtp.recipe.py libmusicbrainz.recipe.py libndp.recipe.py libnl.recipe.py @@ -273,6 +280,7 @@ linux.recipe.py llvm.recipe.py lmdb.recipe.py lm-sensors.recipe.py +localsearch.recipe.py lua.recipe.py LVM2.recipe.py lz4.recipe.py @@ -289,6 +297,7 @@ mpfr.recipe.py mtdev.recipe.py muparser.recipe.py nasm.recipe.py +nautilus.recipe.py ncurses.recipe.py neon.recipe.py nettle.recipe.py @@ -346,6 +355,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 @@ -373,6 +383,7 @@ taglib.recipe.py tar.recipe.py tcl.recipe.py texinfo.recipe.py +tinysparql.recipe.py tomlplusplus.recipe.py udev.recipe.py udisks.recipe.py diff --git a/libadwaita.recipe.py b/libadwaita.recipe.py new file mode 100644 index 0000000..c03c216 --- /dev/null +++ b/libadwaita.recipe.py @@ -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}" +] diff --git a/libcdio.recipe.py b/libcdio.recipe.py new file mode 100644 index 0000000..edaa942 --- /dev/null +++ b/libcdio.recipe.py @@ -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}" +] \ No newline at end of file diff --git a/libmtp.recipe.py b/libmtp.recipe.py new file mode 100644 index 0000000..36ef53d --- /dev/null +++ b/libmtp.recipe.py @@ -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}" +] diff --git a/localsearch.recipe.py b/localsearch.recipe.py new file mode 100644 index 0000000..6921c23 --- /dev/null +++ b/localsearch.recipe.py @@ -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}" +] diff --git a/nautilus.recipe.py b/nautilus.recipe.py new file mode 100644 index 0000000..3b5db66 --- /dev/null +++ b/nautilus.recipe.py @@ -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" +] diff --git a/sassc.recipe.py b/sassc.recipe.py new file mode 100644 index 0000000..192b161 --- /dev/null +++ b/sassc.recipe.py @@ -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}" +] diff --git a/tinysparql.recipe.py b/tinysparql.recipe.py new file mode 100644 index 0000000..ccd6395 --- /dev/null +++ b/tinysparql.recipe.py @@ -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}" +]