Splux Linux

source-based Linux using SPS

sps-core · log · files · refs · tags · releases · people · languages · GitHub · commit

bf457d8


core: add PAM, shadow, tzdata, and a bootable userland

Date
Commitbf457d812006741a42e083b4565532ae8ddd68ab
GitHubmirror

Parents

Stat

 README.md               |  2 +-
 base/busybox/recipe     | 13 ++++++++++
 base/dialog/recipe      | 14 ++++++++++
 base/eudev/recipe       | 14 ++++++++++
 base/kbd/recipe         | 13 ++++++++++
 base/kmod/recipe        | 16 ++++++++++++
 base/man-pages/recipe   | 13 ++++++++++
 base/pciutils/recipe    | 13 ++++++++++
 base/shadow/recipe      | 14 ++++++++++
 base/tzcode/recipe      | 12 +++++++++
 base/tzdata/recipe      | 16 ++++++++++++
 base/usbutils/recipe    | 14 ++++++++++
 boot/grub/recipe        | 13 ++++++++++
 devel/autoconf/recipe   | 15 +++++++++++
 devel/automake/recipe   | 15 +++++++++++
 devel/cmake/recipe      | 15 +++++++++++
 devel/gettext/recipe    | 14 ++++++++++
 devel/gperf/recipe      | 13 ++++++++++
 devel/libtool/recipe    | 14 ++++++++++
 devel/meson/recipe      | 14 ++++++++++
 devel/ninja/recipe      | 16 ++++++++++++
 devel/pkgconf/recipe    | 13 ++++++++++
 fs/btrfs-progs/recipe   | 17 ++++++++++++
 fs/cryptsetup/recipe    | 19 ++++++++++++++
 fs/dosfstools/recipe    | 13 ++++++++++
 fs/e2fsprogs/recipe     | 14 ++++++++++
 fs/lvm2/recipe          | 13 ++++++++++
 fs/mdadm/recipe         | 12 +++++++++
 fs/xfsprogs/recipe      | 14 ++++++++++
 kernel/linux/recipe     | 17 ++++++++++++
 lang/python/recipe      | 20 ++++++++++++++
 libs/acl/recipe         | 14 ++++++++++
 libs/attr/recipe        | 13 ++++++++++
 libs/dbus/recipe        | 14 ++++++++++
 libs/expat/recipe       | 13 ++++++++++
 libs/glib/recipe        | 17 ++++++++++++
 libs/gmp/recipe         | 13 ++++++++++
 libs/json-c/recipe      | 15 +++++++++++
 libs/libargon2/recipe   | 12 +++++++++
 libs/libffi/recipe      | 13 ++++++++++
 libs/libmnl/recipe      | 13 ++++++++++
 libs/libnftnl/recipe    | 14 ++++++++++
 libs/libpng/recipe      | 14 ++++++++++
 libs/libusb/recipe      | 13 ++++++++++
 libs/libxml2/recipe     | 15 +++++++++++
 libs/libxslt/recipe     | 14 ++++++++++
 libs/linux-pam/recipe   | 15 +++++++++++
 libs/lzo/recipe         | 13 ++++++++++
 libs/popt/recipe        | 13 ++++++++++
 meta/base-system/recipe | 69 +++++++++++++++++++++++++++++++++++++++++++++++++
 net/dhcpcd/recipe       | 13 ++++++++++
 net/iproute2/recipe     | 13 ++++++++++
 net/iputils/recipe      | 13 ++++++++++
 53 files changed, 790 insertions(+), 1 deletion(-)

Diff

diff --git a/README.md b/README.md
index 16e878c..65f4018 100644
--- a/README.md
+++ b/README.md
@@ -10,7 +10,7 @@ identity; the category is not part of the name. Core uses these categories as
 packages are added:
 
 ```text
-base/  devel/  libs/  net/
+base/  boot/  devel/  fs/  kernel/  lang/  libs/  meta/  net/
 ```
 
 Category directories are created only when they contain a package.
diff --git a/base/busybox/recipe b/base/busybox/recipe
new file mode 100644
index 0000000..740cf54
--- /dev/null
+++ b/base/busybox/recipe
@@ -0,0 +1,13 @@
+name        busybox
+version     1.37.0
+release     1
+description busybox: tiny utilities
+
+source      https://busybox.net/downloads/busybox-1.37.0.tar.bz2
+hash        sha256:3311dff32e746499f4df0d5df04d7eb396382d7e108bb9250e7b519b837043a4
+
+depend      filesystem
+
+configure   make defconfig
+build       make -j"$MAKEJOBS"
+install     make CONFIG_PREFIX="$PKG" install
diff --git a/base/dialog/recipe b/base/dialog/recipe
new file mode 100644
index 0000000..7224ea8
--- /dev/null
+++ b/base/dialog/recipe
@@ -0,0 +1,14 @@
+name        dialog
+version     1.3-20260721
+release     1
+description dialog: TUI dialog boxes
+
+source      https://invisible-island.net/archives/dialog/dialog-1.3-20260721.tgz
+hash        sha256:62bdf59057d4f760a1cc2217827f07887b4a3eebf694c25eacd4803d2171cdc6
+
+depend      filesystem
+depend      ncurses
+
+configure   ./configure --prefix=/usr --with-ncursesw --enable-widec --with-package=dialog
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/base/eudev/recipe b/base/eudev/recipe
new file mode 100644
index 0000000..502e07e
--- /dev/null
+++ b/base/eudev/recipe
@@ -0,0 +1,14 @@
+name        eudev
+version     3.2.14
+release     1
+description eudev: device manager
+
+source      https://github.com/eudev-project/eudev/releases/download/v3.2.14/eudev-3.2.14.tar.gz
+hash        sha256:8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc1927f006f
+
+depend      filesystem
+depend      kmod
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/base/kbd/recipe b/base/kbd/recipe
new file mode 100644
index 0000000..5c95393
--- /dev/null
+++ b/base/kbd/recipe
@@ -0,0 +1,13 @@
+name        kbd
+version     2.7.1
+release     1
+description kbd: keyboard and console tools
+
+source      https://mirrors.edge.kernel.org/pub/linux/utils/kbd/kbd-2.7.1.tar.xz
+hash        sha256:f167d899d92b56ccf12f6f49355173f93870a95f15d8aeebf5fdcd28a621aca8
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/base/kmod/recipe b/base/kmod/recipe
new file mode 100644
index 0000000..ac929b0
--- /dev/null
+++ b/base/kmod/recipe
@@ -0,0 +1,16 @@
+name        kmod
+version     34.2
+release     1
+description kmod: kernel module tools
+
+source      https://mirrors.edge.kernel.org/pub/linux/utils/kernel/kmod/kmod-34.2.tar.xz
+hash        sha256:5a5d5073070cc7e0c7a7a3c6ec2a0e1780850c8b47b3e3892226b93ffcb9cb54
+
+depend      filesystem
+depend      zlib
+depend      xz
+depend      zstd
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/base/man-pages/recipe b/base/man-pages/recipe
new file mode 100644
index 0000000..963518f
--- /dev/null
+++ b/base/man-pages/recipe
@@ -0,0 +1,13 @@
+name        man-pages
+version     6.15
+release     1
+arch        any
+description man-pages: Linux man pages
+
+source      https://www.kernel.org/pub/linux/docs/man-pages/man-pages-6.15.tar.xz
+hash        sha256:03d8ebf618bd5df57cb4bf355efa3f4cd3a00b771efd623d4fd042b5dceb4465
+
+depend      filesystem
+
+build       true
+install     make prefix=/usr DESTDIR="$PKG" install
diff --git a/base/pciutils/recipe b/base/pciutils/recipe
new file mode 100644
index 0000000..a842769
--- /dev/null
+++ b/base/pciutils/recipe
@@ -0,0 +1,13 @@
+name        pciutils
+version     3.13.0
+release     1
+description pciutils: lspci and setpci
+
+source      https://mirrors.edge.kernel.org/pub/software/utils/pciutils/pciutils-3.13.0.tar.xz
+hash        sha256:77f11f78298502634d1af50308f15a5788629f6cf45cba376f5009aea4cb4926
+
+depend      filesystem
+depend      zlib
+
+build       make -j"$MAKEJOBS" PREFIX=/usr SHAREDIR=/usr/share/hwdata SHARED=yes
+install     make PREFIX=/usr SHAREDIR=/usr/share/hwdata SHARED=yes DESTDIR="$PKG" install install-lib
diff --git a/base/shadow/recipe b/base/shadow/recipe
new file mode 100644
index 0000000..c6a6238
--- /dev/null
+++ b/base/shadow/recipe
@@ -0,0 +1,14 @@
+name        shadow
+version     4.20.2
+release     1
+description shadow: user and group account tools
+
+source      https://github.com/shadow-maint/shadow/releases/download/4.20.2/shadow-4.20.2.tar.xz
+hash        sha256:b89f432b75ae55a2d852b446d0365484795fdf533ab97d550e325fa15594a224
+
+depend      filesystem
+depend      linux-pam
+
+configure   ./configure --prefix=/usr --sysconfdir=/etc --disable-static --with-libpam --without-selinux --without-libbsd --with-group-name-max-length=32 --without-nscd
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/base/tzcode/recipe b/base/tzcode/recipe
new file mode 100644
index 0000000..4a10412
--- /dev/null
+++ b/base/tzcode/recipe
@@ -0,0 +1,12 @@
+name        tzcode
+version     2026c
+release     1
+description tzcode: timezone compiler
+
+source      https://data.iana.org/time-zones/releases/tzcode2026c.tar.gz
+hash        sha256:b1cffc3ace4c4c7cd0efba2f7add86ec3d0b79da48bcf03582671fd3c8feace8
+
+depend      filesystem
+
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG" PREFIX=/usr prefix=/usr
diff --git a/base/tzdata/recipe b/base/tzdata/recipe
new file mode 100644
index 0000000..78143d3
--- /dev/null
+++ b/base/tzdata/recipe
@@ -0,0 +1,16 @@
+name        tzdata
+version     2026c
+release     1
+arch        any
+description tzdata: IANA timezone data
+
+source      https://data.iana.org/time-zones/releases/tzdata2026c.tar.gz
+hash        sha256:e4a178a4477f3d0ea77cc31828ff72aa38feff8d61aa13e7e99e142e9d902be4
+
+depend      filesystem
+depend      tzcode
+
+build       true
+install     mkdir -p "$PKG/usr/share/zoneinfo/posix" "$PKG/usr/share/zoneinfo/right"
+install     for tz in etcetera southamerica northamerica europe africa antarctica asia australasia backward factory; do [ -f "$tz" ] && zic -d "$PKG/usr/share/zoneinfo" "$tz"; done
+install     if [ -f zone.tab ]; then cp zone.tab zone1970.tab iso3166.tab "$PKG/usr/share/zoneinfo/"; fi
diff --git a/base/usbutils/recipe b/base/usbutils/recipe
new file mode 100644
index 0000000..8c19439
--- /dev/null
+++ b/base/usbutils/recipe
@@ -0,0 +1,14 @@
+name        usbutils
+version     018
+release     1
+description usbutils: lsusb
+
+source      https://mirrors.edge.kernel.org/pub/linux/utils/usb/usbutils/usbutils-018.tar.xz
+hash        sha256:83f68b59b58547589c00266e82671864627593ab4362d8c807f50eea923cad93
+
+depend      filesystem
+depend      libusb
+
+configure   meson setup build --prefix=/usr --buildtype=release
+build       meson compile -C build
+install     DESTDIR="$PKG" meson install -C build --no-rebuild
diff --git a/boot/grub/recipe b/boot/grub/recipe
new file mode 100644
index 0000000..788ea36
--- /dev/null
+++ b/boot/grub/recipe
@@ -0,0 +1,13 @@
+name        grub
+version     2.12
+release     1
+description grub: bootloader files (does not run grub-install)
+
+source      https://ftp.gnu.org/gnu/grub/grub-2.12.tar.xz
+hash        sha256:f3c97391f7c4eaa677a78e090c7e97e6dc47b16f655f04683ebd37bef7fe0faa
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --sysconfdir=/etc --disable-werror --disable-efiemu
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/devel/autoconf/recipe b/devel/autoconf/recipe
new file mode 100644
index 0000000..a5f978c
--- /dev/null
+++ b/devel/autoconf/recipe
@@ -0,0 +1,15 @@
+name        autoconf
+version     2.72
+release     1
+description autoconf: GNU configure generator
+
+source      https://ftp.gnu.org/gnu/autoconf/autoconf-2.72.tar.xz
+hash        sha256:ba885c1319578d6c94d46e9b0dceb4014caafe2490e437a0dbca3f270a223f5a
+
+depend      filesystem
+depend      m4
+depend      perl
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/devel/automake/recipe b/devel/automake/recipe
new file mode 100644
index 0000000..54efba3
--- /dev/null
+++ b/devel/automake/recipe
@@ -0,0 +1,15 @@
+name        automake
+version     1.18.1
+release     1
+description automake: GNU Makefile generator
+
+source      https://ftp.gnu.org/gnu/automake/automake-1.18.1.tar.xz
+hash        sha256:168aa363278351b89af56684448f525a5bce5079d0b6842bd910fdd3f1646887
+
+depend      filesystem
+depend      autoconf
+depend      perl
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/devel/cmake/recipe b/devel/cmake/recipe
new file mode 100644
index 0000000..912f41f
--- /dev/null
+++ b/devel/cmake/recipe
@@ -0,0 +1,15 @@
+name        cmake
+version     4.4.3
+release     1
+description cmake: cross-platform build system
+
+source      https://github.com/Kitware/CMake/releases/download/v4.4.3/cmake-4.4.3.tar.gz
+hash        sha256:c46400618b4f1f2b43507f24fb22f3ae830c3416cf23b776e16e1d413aa892f0
+
+depend      filesystem
+depend      openssl
+depend      ncurses
+
+configure   ./bootstrap --prefix=/usr --parallel="$MAKEJOBS" -- -DCMAKE_USE_OPENSSL=ON
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/devel/gettext/recipe b/devel/gettext/recipe
new file mode 100644
index 0000000..4c5d034
--- /dev/null
+++ b/devel/gettext/recipe
@@ -0,0 +1,14 @@
+name        gettext
+version     0.26
+release     1
+description gettext: GNU internationalization tools
+
+source      https://ftp.gnu.org/gnu/gettext/gettext-0.26.tar.xz
+hash        sha256:d1fb86e260cfe7da6031f94d2e44c0da55903dbae0a2fa0fae78c91ae1b56f00
+
+depend      filesystem
+depend      ncurses
+
+configure   ./configure --prefix=/usr --disable-static --without-emacs
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/devel/gperf/recipe b/devel/gperf/recipe
new file mode 100644
index 0000000..3f7c360
--- /dev/null
+++ b/devel/gperf/recipe
@@ -0,0 +1,13 @@
+name        gperf
+version     3.3
+release     1
+description gperf: perfect hash function generator
+
+source      https://ftp.gnu.org/gnu/gperf/gperf-3.3.tar.gz
+hash        sha256:fd87e0aba7e43ae054837afd6cd4db03a3f2693deb3619085e6ed9d8d9604ad8
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/devel/libtool/recipe b/devel/libtool/recipe
new file mode 100644
index 0000000..97f6ae6
--- /dev/null
+++ b/devel/libtool/recipe
@@ -0,0 +1,14 @@
+name        libtool
+version     2.5.4
+release     1
+description libtool: GNU generic library support
+
+source      https://ftp.gnu.org/gnu/libtool/libtool-2.5.4.tar.xz
+hash        sha256:f81f5860666b0bc7d84baddefa60d1cb9fa6fceb2398cc3baca6afaa60266675
+
+depend      filesystem
+depend      m4
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/devel/meson/recipe b/devel/meson/recipe
new file mode 100644
index 0000000..b66438b
--- /dev/null
+++ b/devel/meson/recipe
@@ -0,0 +1,14 @@
+name        meson
+version     1.12.0
+release     1
+arch        any
+description meson: Python-based build system
+
+source      https://github.com/mesonbuild/meson/archive/refs/tags/1.12.0.tar.gz
+hash        sha256:5ab1c86446d9dfe073f07141088cde545e43f8ddb2f97ebe3f600ab12e77ca1f
+
+depend      filesystem
+depend      python
+depend      ninja
+
+install     python3 -m pip install --no-build-isolation --no-deps --prefix=/usr --root="$PKG" .
diff --git a/devel/ninja/recipe b/devel/ninja/recipe
new file mode 100644
index 0000000..9ae9980
--- /dev/null
+++ b/devel/ninja/recipe
@@ -0,0 +1,16 @@
+name        ninja
+version     1.13.2
+release     1
+description ninja: small build system
+
+source      https://github.com/ninja-build/ninja/archive/refs/tags/v1.13.2.tar.gz
+hash        sha256:974d6b2f4eeefa25625d34da3cb36bdcebe7fbce40f4c16ac0835fd1c0cbae17
+
+depend      filesystem
+depend      python
+
+configure   python3 configure.py --bootstrap
+build       true
+install     mkdir -p "$PKG/usr/bin"
+install     cp ninja "$PKG/usr/bin/ninja"
+install     chmod 755 "$PKG/usr/bin/ninja"
diff --git a/devel/pkgconf/recipe b/devel/pkgconf/recipe
new file mode 100644
index 0000000..cd4b5e9
--- /dev/null
+++ b/devel/pkgconf/recipe
@@ -0,0 +1,13 @@
+name        pkgconf
+version     3.0.6
+release     1
+description pkgconf: package compiler and linker flags
+
+source      https://distfiles.ariadne.space/pkgconf/pkgconf-3.0.6.tar.xz
+hash        sha256:c88a653fbabfa2a5857a30f6b6ad6c40dbacc3b7c72cc066e5c7dc4571cbddaa
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --with-pkg-config-dir=/usr/lib/pkgconfig:/usr/share/pkgconfig
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/fs/btrfs-progs/recipe b/fs/btrfs-progs/recipe
new file mode 100644
index 0000000..14bbb97
--- /dev/null
+++ b/fs/btrfs-progs/recipe
@@ -0,0 +1,17 @@
+name        btrfs-progs
+version     6.15
+release     1
+description btrfs-progs: Btrfs tools
+
+source      https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v6.15.tar.xz
+hash        sha256:57da428dd2199fd88d83ecf1cad05678ce78640ef7e52d7633be9887cef674bb
+
+depend      filesystem
+depend      util-linux
+depend      zlib
+depend      zstd
+depend      lzo
+
+configure   meson setup build --prefix=/usr --buildtype=release
+build       meson compile -C build
+install     DESTDIR="$PKG" meson install -C build --no-rebuild
diff --git a/fs/cryptsetup/recipe b/fs/cryptsetup/recipe
new file mode 100644
index 0000000..7da01a3
--- /dev/null
+++ b/fs/cryptsetup/recipe
@@ -0,0 +1,19 @@
+name        cryptsetup
+version     2.8.1
+release     1
+description cryptsetup: LUKS disk encryption
+
+source      https://www.kernel.org/pub/linux/utils/cryptsetup/v2.8/cryptsetup-2.8.1.tar.xz
+hash        sha256:2c3379eb76597dcab50911449b013e2697c4bffcc716dbbf0d9b0e8fbbb46fb4
+
+depend      filesystem
+depend      openssl
+depend      lvm2
+depend      util-linux
+depend      json-c
+depend      popt
+depend      libargon2
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/fs/dosfstools/recipe b/fs/dosfstools/recipe
new file mode 100644
index 0000000..0d0e5c4
--- /dev/null
+++ b/fs/dosfstools/recipe
@@ -0,0 +1,13 @@
+name        dosfstools
+version     4.2
+release     1
+description dosfstools: FAT filesystem tools
+
+source      https://github.com/dosfstools/dosfstools/releases/download/v4.2/dosfstools-4.2.tar.gz
+hash        sha256:64926eebf90092dca21b14259a5301b7b98e7b1943e8a201c7d726084809b527
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/fs/e2fsprogs/recipe b/fs/e2fsprogs/recipe
new file mode 100644
index 0000000..b604c82
--- /dev/null
+++ b/fs/e2fsprogs/recipe
@@ -0,0 +1,14 @@
+name        e2fsprogs
+version     1.47.3
+release     1
+description e2fsprogs: ext2/3/4 tools
+
+source      https://github.com/tytso/e2fsprogs/archive/refs/tags/v1.47.3.tar.gz
+hash        sha256:9286ee5471a8a5339a61eb952739e4614a5b1dbed79ca73a78f014885ce2ad53
+
+depend      filesystem
+depend      util-linux
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/fs/lvm2/recipe b/fs/lvm2/recipe
new file mode 100644
index 0000000..2582ddf
--- /dev/null
+++ b/fs/lvm2/recipe
@@ -0,0 +1,13 @@
+name        lvm2
+version     2.03.32
+release     1
+description lvm2: Logical Volume Manager
+
+source      https://sourceware.org/ftp/lvm2/LVM2.2.03.32.tgz
+hash        sha256:2917832ddd4e46e593651e022bf122fd267ab5e6f74faee082484388c886d1ad
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --enable-cmdlib --enable-pkgconfig --disable-selinux
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/fs/mdadm/recipe b/fs/mdadm/recipe
new file mode 100644
index 0000000..7ce1a14
--- /dev/null
+++ b/fs/mdadm/recipe
@@ -0,0 +1,12 @@
+name        mdadm
+version     4.4
+release     1
+description mdadm: Linux MD RAID tools
+
+source      https://kernel.org/pub/linux/utils/raid/mdadm/mdadm-4.4.tar.xz
+hash        sha256:9b488f35ed153df99924b5fe41eed380e8512de8f18a118628cacdd681b1d573
+
+depend      filesystem
+
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG" PREFIX=/usr prefix=/usr
diff --git a/fs/xfsprogs/recipe b/fs/xfsprogs/recipe
new file mode 100644
index 0000000..9a9d1a9
--- /dev/null
+++ b/fs/xfsprogs/recipe
@@ -0,0 +1,14 @@
+name        xfsprogs
+version     6.15.0
+release     1
+description xfsprogs: XFS tools
+
+source      https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-6.15.0.tar.xz
+hash        sha256:13b91f74beef8ad11137f7d9d71055573d91e961bc55bb0245956f69b84cd704
+
+depend      filesystem
+depend      util-linux
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/kernel/linux/recipe b/kernel/linux/recipe
new file mode 100644
index 0000000..9d0a50f
--- /dev/null
+++ b/kernel/linux/recipe
@@ -0,0 +1,17 @@
+name        linux
+version     7.2.2
+release     1
+description linux: Linux kernel (does not run bootloader install)
+
+source      https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-${version}.tar.xz
+hash        sha256:7d0e7ce14f98c43efe880cffbf354a59be45928fdf7170d7333c374ae91c0d83
+
+depend      filesystem
+depend      kmod
+depend      busybox
+
+configure   make defconfig
+build       make -j"$MAKEJOBS"
+install     make INSTALL_MOD_PATH="$PKG" INSTALL_PATH="$PKG/boot" modules_install
+install     mkdir -p "$PKG/boot"
+install     cp arch/x86/boot/bzImage "$PKG/boot/vmlinuz-7.2.2"
diff --git a/lang/python/recipe b/lang/python/recipe
new file mode 100644
index 0000000..e4e4a17
--- /dev/null
+++ b/lang/python/recipe
@@ -0,0 +1,20 @@
+name        python
+version     3.14.7
+release     1
+description python: Python interpreter
+
+source      https://www.python.org/ftp/python/3.14.7/Python-3.14.7.tar.xz
+hash        sha256:3b48dac8fb59f62eaa67ac83c1eb12bda1b7a08406dd286e252c11a66be27f81
+
+depend      filesystem
+depend      openssl
+depend      zlib
+depend      ncurses
+depend      readline
+depend      sqlite
+depend      libffi
+depend      expat
+
+configure   ./configure --prefix=/usr --enable-shared --with-ensurepip=install --with-system-expat --with-system-ffi
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/acl/recipe b/libs/acl/recipe
new file mode 100644
index 0000000..0767b61
--- /dev/null
+++ b/libs/acl/recipe
@@ -0,0 +1,14 @@
+name        acl
+version     2.3.2
+release     1
+description acl: POSIX access control lists
+
+source      http://deb.debian.org/debian/pool/main/a/acl/acl_2.3.2.orig.tar.xz
+hash        sha256:97203a72cae99ab89a067fe2210c1cbf052bc492b479eca7d226d9830883b0bd
+
+depend      filesystem
+depend      attr
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/attr/recipe b/libs/attr/recipe
new file mode 100644
index 0000000..2b2185b
--- /dev/null
+++ b/libs/attr/recipe
@@ -0,0 +1,13 @@
+name        attr
+version     2.5.2
+release     1
+description attr: extended filesystem attributes
+
+source      http://deb.debian.org/debian/pool/main/a/attr/attr_2.5.2.orig.tar.xz
+hash        sha256:f2e97b0ab7ce293681ab701915766190d607a1dba7fae8a718138150b700a70b
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/dbus/recipe b/libs/dbus/recipe
new file mode 100644
index 0000000..81a8f76
--- /dev/null
+++ b/libs/dbus/recipe
@@ -0,0 +1,14 @@
+name        dbus
+version     1.16.2
+release     1
+description dbus: message bus
+
+source      https://dbus.freedesktop.org/releases/dbus/dbus-1.16.2.tar.xz
+hash        sha256:0ba2a1a4b16afe7bceb2c07e9ce99a8c2c3508e5dec290dbb643384bd6beb7e2
+
+depend      filesystem
+depend      expat
+
+configure   meson setup build --prefix=/usr --buildtype=release -Dsystemd=disabled -Dselinux=disabled
+build       meson compile -C build
+install     DESTDIR="$PKG" meson install -C build --no-rebuild
diff --git a/libs/expat/recipe b/libs/expat/recipe
new file mode 100644
index 0000000..7d6c3f9
--- /dev/null
+++ b/libs/expat/recipe
@@ -0,0 +1,13 @@
+name        expat
+version     2.7.3
+release     1
+description expat: XML parser library
+
+source      https://github.com/libexpat/libexpat/releases/download/R_2_7_3/expat-2.7.3.tar.xz
+hash        sha256:71df8f40706a7bb0a80a5367079ea75d91da4f8c65c58ec59bcdfbf7decdab9f
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --disable-static
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/glib/recipe b/libs/glib/recipe
new file mode 100644
index 0000000..30561cc
--- /dev/null
+++ b/libs/glib/recipe
@@ -0,0 +1,17 @@
+name        glib
+version     2.86.0
+release     1
+description glib: GNOME C library
+
+source      https://download.gnome.org/sources/glib/2.86/glib-2.86.0.tar.xz
+hash        sha256:b5739972d737cfb0d6fd1e7f163dfe650e2e03740bb3b8d408e4d1faea580d6d
+
+depend      filesystem
+depend      libffi
+depend      zlib
+depend      pcre2
+depend      libxml2
+
+configure   meson setup build --prefix=/usr --buildtype=release -Dtests=false -Dsysprof=disabled
+build       meson compile -C build
+install     DESTDIR="$PKG" meson install -C build --no-rebuild
diff --git a/libs/gmp/recipe b/libs/gmp/recipe
new file mode 100644
index 0000000..b04c1b7
--- /dev/null
+++ b/libs/gmp/recipe
@@ -0,0 +1,13 @@
+name        gmp
+version     6.3.0
+release     1
+description gmp: GNU multiple precision arithmetic
+
+source      https://ftp.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz
+hash        sha256:a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --enable-cxx --disable-static
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/json-c/recipe b/libs/json-c/recipe
new file mode 100644
index 0000000..ce98e5d
--- /dev/null
+++ b/libs/json-c/recipe
@@ -0,0 +1,15 @@
+name        json-c
+version     0.18
+release     1
+description json-c: JSON C library
+
+source      https://github.com/json-c/json-c/archive/refs/tags/json-c-0.18-20240915.tar.gz
+hash        sha256:3112c1f25d39eca661fe3fc663431e130cc6e2f900c081738317fba49d29e298
+
+depend      filesystem
+builddep    cmake
+builddep    ninja
+
+configure   cmake -S . -B build -G Ninja -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF
+build       cmake --build build --parallel "$MAKEJOBS"
+install     DESTDIR="$PKG" cmake --install build
diff --git a/libs/libargon2/recipe b/libs/libargon2/recipe
new file mode 100644
index 0000000..1ec4372
--- /dev/null
+++ b/libs/libargon2/recipe
@@ -0,0 +1,12 @@
+name        libargon2
+version     20190702
+release     1
+description libargon2: Argon2 password hashing
+
+source      https://github.com/P-H-C/phc-winner-argon2/archive/refs/tags/20190702.tar.gz
+hash        sha256:daf972a89577f8772602bf2eb38b6a3dd3d922bf5724d45e7f9589b5e830442c
+
+depend      filesystem
+
+build       make -j"$MAKEJOBS" LIBRARY_REL=lib
+install     make install DESTDIR="$PKG" PREFIX=/usr LIBRARY_REL=lib
diff --git a/libs/libffi/recipe b/libs/libffi/recipe
new file mode 100644
index 0000000..7ae6098
--- /dev/null
+++ b/libs/libffi/recipe
@@ -0,0 +1,13 @@
+name        libffi
+version     3.5.2
+release     1
+description libffi: foreign function interface
+
+source      https://github.com/libffi/libffi/releases/download/v3.5.2/libffi-3.5.2.tar.gz
+hash        sha256:f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --disable-static
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/libmnl/recipe b/libs/libmnl/recipe
new file mode 100644
index 0000000..eaa7c15
--- /dev/null
+++ b/libs/libmnl/recipe
@@ -0,0 +1,13 @@
+name        libmnl
+version     1.0.5
+release     1
+description libmnl: netlink library
+
+source      https://www.netfilter.org/pub/libmnl/libmnl-1.0.5.tar.bz2
+hash        sha256:274b9b919ef3152bfb3da3a13c950dd60d6e2bcd54230ffeca298d03b40d0525
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --disable-static
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/libnftnl/recipe b/libs/libnftnl/recipe
new file mode 100644
index 0000000..2ed9aef
--- /dev/null
+++ b/libs/libnftnl/recipe
@@ -0,0 +1,14 @@
+name        libnftnl
+version     1.2.9
+release     1
+description libnftnl: netfilter nf_tables library
+
+source      https://www.netfilter.org/projects/libnftnl/files/libnftnl-1.2.9.tar.xz
+hash        sha256:e8c216255e129f26270639fee7775265665a31b11aa920253c3e5d5d62dfc4b8
+
+depend      filesystem
+depend      libmnl
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/libpng/recipe b/libs/libpng/recipe
new file mode 100644
index 0000000..03c87c1
--- /dev/null
+++ b/libs/libpng/recipe
@@ -0,0 +1,14 @@
+name        libpng
+version     1.6.50
+release     1
+description libpng: PNG library
+
+source      https://download.sourceforge.net/libpng/libpng-1.6.50.tar.xz
+hash        sha256:4df396518620a7aa3651443e87d1b2862e4e88cad135a8b93423e01706232307
+
+depend      filesystem
+depend      zlib
+
+configure   ./configure --prefix=/usr --disable-static
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/libusb/recipe b/libs/libusb/recipe
new file mode 100644
index 0000000..dd3b5b8
--- /dev/null
+++ b/libs/libusb/recipe
@@ -0,0 +1,13 @@
+name        libusb
+version     1.0.29
+release     1
+description libusb: USB library
+
+source      https://github.com/libusb/libusb/releases/download/v1.0.29/libusb-1.0.29.tar.bz2
+hash        sha256:5977fc950f8d1395ccea9bd48c06b3f808fd3c2c961b44b0c2e6e29fc3a70a85
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --disable-static
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/libxml2/recipe b/libs/libxml2/recipe
new file mode 100644
index 0000000..516a8cb
--- /dev/null
+++ b/libs/libxml2/recipe
@@ -0,0 +1,15 @@
+name        libxml2
+version     2.15.0
+release     1
+description libxml2: XML toolkit
+
+source      https://download.gnome.org/sources/libxml2/2.15/libxml2-2.15.0.tar.xz
+hash        sha256:5abc766497c5b1d6d99231f662e30c99402a90d03b06c67b62d6c1179dedd561
+
+depend      filesystem
+depend      zlib
+depend      xz
+
+configure   meson setup build --prefix=/usr --buildtype=release -Dpython=false
+build       meson compile -C build
+install     DESTDIR="$PKG" meson install -C build --no-rebuild
diff --git a/libs/libxslt/recipe b/libs/libxslt/recipe
new file mode 100644
index 0000000..eef37d4
--- /dev/null
+++ b/libs/libxslt/recipe
@@ -0,0 +1,14 @@
+name        libxslt
+version     1.1.43
+release     1
+description libxslt: XSLT library
+
+source      https://download.gnome.org/sources/libxslt/1.1/libxslt-1.1.43.tar.xz
+hash        sha256:5a3d6b383ca5afc235b171118e90f5ff6aa27e9fea3303065231a6d403f0183a
+
+depend      filesystem
+depend      libxml2
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/linux-pam/recipe b/libs/linux-pam/recipe
new file mode 100644
index 0000000..88d9220
--- /dev/null
+++ b/libs/linux-pam/recipe
@@ -0,0 +1,15 @@
+name        linux-pam
+version     1.7.2
+release     1
+description linux-pam: Pluggable Authentication Modules
+
+source      https://github.com/linux-pam/linux-pam/releases/download/v1.7.2/Linux-PAM-1.7.2.tar.xz
+hash        sha256:3d86b6383fb5fd9eb9578d2cd47d92801191f4bf3f9bc61419bfefc8aa1e531a
+
+depend      filesystem
+builddep    meson
+builddep    ninja
+
+configure   meson setup build --prefix=/usr --buildtype=release -Ddocs=disabled
+build       meson compile -C build
+install     DESTDIR="$PKG" meson install -C build --no-rebuild
diff --git a/libs/lzo/recipe b/libs/lzo/recipe
new file mode 100644
index 0000000..c65a2a4
--- /dev/null
+++ b/libs/lzo/recipe
@@ -0,0 +1,13 @@
+name        lzo
+version     2.10
+release     1
+description lzo: compression library
+
+source      https://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz
+hash        sha256:c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --disable-static
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/libs/popt/recipe b/libs/popt/recipe
new file mode 100644
index 0000000..1d6f438
--- /dev/null
+++ b/libs/popt/recipe
@@ -0,0 +1,13 @@
+name        popt
+version     1.19
+release     1
+description popt: command line option parser
+
+source      http://ftp.rpm.org/popt/releases/popt-1.x/popt-1.19.tar.gz
+hash        sha256:c25a4838fc8e4c1c8aacb8bd620edb3084a3d63bf8987fdad3ca2758c63240f9
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/meta/base-system/recipe b/meta/base-system/recipe
new file mode 100644
index 0000000..9ee2fa2
--- /dev/null
+++ b/meta/base-system/recipe
@@ -0,0 +1,69 @@
+name        base-system
+version     1.0
+release     1
+arch        any
+description base-system: essential SPS userland
+
+depend      filesystem
+depend      iana-etc
+depend      ca-certificates
+depend      bash
+depend      coreutils
+depend      sed
+depend      grep
+depend      gawk
+depend      findutils
+depend      diffutils
+depend      patch
+depend      tar
+depend      gzip
+depend      xz
+depend      zstd
+depend      bzip2
+depend      file
+depend      less
+depend      which
+depend      procps
+depend      psmisc
+depend      util-linux
+depend      ncurses
+depend      readline
+depend      zlib
+depend      openssl
+depend      curl
+depend      wget
+depend      git
+depend      make
+depend      m4
+depend      bison
+depend      flex
+depend      unzip
+depend      zip
+depend      sqlite
+depend      pcre2
+depend      man-db
+depend      groff
+depend      rsync
+depend      tree
+depend      bc
+depend      cpio
+depend      busybox
+depend      kmod
+depend      eudev
+depend      iproute2
+depend      dhcpcd
+depend      iputils
+depend      e2fsprogs
+depend      dosfstools
+depend      kbd
+depend      pciutils
+depend      usbutils
+depend      shadow
+depend      linux-pam
+depend      tzdata
+depend      attr
+depend      acl
+depend      gettext
+
+install     mkdir -p "$PKG/usr/share/sps/sets"
+install     printf '%s\n' "base-system" >"$PKG/usr/share/sps/sets/base-system"
diff --git a/net/dhcpcd/recipe b/net/dhcpcd/recipe
new file mode 100644
index 0000000..bda9b9b
--- /dev/null
+++ b/net/dhcpcd/recipe
@@ -0,0 +1,13 @@
+name        dhcpcd
+version     10.2.4
+release     1
+description dhcpcd: DHCP client
+
+source      https://github.com/NetworkConfiguration/dhcpcd/archive/refs/tags/v10.2.4.tar.gz
+hash        sha256:85c8b2535ddf52091b30b31f29b0f9cafd9cd94dc6b78f1bd92db2afce4c1943
+
+depend      filesystem
+
+configure   ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/dhcpcd --dbdir=/var/lib/dhcpcd
+build       make -j"$MAKEJOBS"
+install     make install DESTDIR="$PKG"
diff --git a/net/iproute2/recipe b/net/iproute2/recipe
new file mode 100644
index 0000000..f61e4dd
--- /dev/null
+++ b/net/iproute2/recipe
@@ -0,0 +1,13 @@
+name        iproute2
+version     7.1.0
+release     1
+description iproute2: ip, ss, and tc
+
+source      https://mirrors.edge.kernel.org/pub/linux/utils/net/iproute2/iproute2-7.1.0.tar.xz
+hash        sha256:fd9fa1b95809417157ca83dd72957e3261bdbce896353cb936f80af0b33a4b5c
+
+depend      filesystem
+depend      libmnl
+
+build       make -j"$MAKEJOBS" PREFIX=/usr
+install     make PREFIX=/usr DESTDIR="$PKG" install
diff --git a/net/iputils/recipe b/net/iputils/recipe
new file mode 100644
index 0000000..7ce39e7
--- /dev/null
+++ b/net/iputils/recipe
@@ -0,0 +1,13 @@
+name        iputils
+version     20250605
+release     1
+description iputils: ping and traceroute helpers
+
+source      https://github.com/iputils/iputils/archive/refs/tags/20250605.tar.gz
+hash        sha256:19e680c9eef8c079da4da37040b5f5453763205b4edfb1e2c114de77908927e4
+
+depend      filesystem
+
+configure   meson setup build --prefix=/usr --buildtype=release
+build       meson compile -C build
+install     DESTDIR="$PKG" meson install -C build --no-rebuild