From 90de455035fcc93b45e28763f2a7fc44af0706a2 Mon Sep 17 00:00:00 2001 From: Danny Date: Fri, 20 Mar 2026 10:25:48 +0100 Subject: [PATCH] new repos --- core/alsa-lib/alsa-lib.toml | 20 +++++++++++++++ core/gcc/gcc.toml | 4 ++- desktop/dwl/dwl.toml | 7 ++++-- desktop/firefox/firefox.toml | 6 ++++- extra/liberation-fonts/liberation-fonts.toml | 25 +++++++++++++++++++ extra/libx11/libx11.toml | 20 +++++++++++++++ extra/libxcomposite/libxcomposite.toml | 20 +++++++++++++++ extra/libxcursor/libxcursor.toml | 20 +++++++++++++++ extra/libxdamage/libxdamage.toml | 20 +++++++++++++++ extra/libxext/libxext.toml | 20 +++++++++++++++ extra/libxfixes/libxfixes.toml | 20 +++++++++++++++ extra/libxi/libxi.toml | 20 +++++++++++++++ extra/libxrandr/libxrandr.toml | 20 +++++++++++++++ extra/libxrender/libxrender.toml | 20 +++++++++++++++ extra/libxtst/libxtst.toml | 20 +++++++++++++++ extra/pipewire/pipewire.toml | 11 ++++++-- extra/polkit/polkit.toml | 6 ++++- extra/xorgproto/xorgproto.toml | 20 +++++++++++++++ extra/xtrans/xtrans.toml | 20 +++++++++++++++ gaming/lib32-alsa-lib/lib32-alsa-lib.toml | 20 +++++++++++++++ gaming/lib32-curl/lib32-curl.toml | 20 +++++++++++++++ gaming/lib32-dbus/lib32-dbus.toml | 20 +++++++++++++++ gaming/lib32-expat/lib32-expat.toml | 20 +++++++++++++++ gaming/lib32-fontconfig/lib32-fontconfig.toml | 20 +++++++++++++++ gaming/lib32-freetype/lib32-freetype.toml | 20 +++++++++++++++ gaming/lib32-glibc/lib32-glibc.toml | 20 +++++++++++++++ gaming/lib32-libx11/lib32-libx11.toml | 20 +++++++++++++++ gaming/lib32-libxcb/lib32-libxcb.toml | 20 +++++++++++++++ gaming/lib32-mesa/lib32-mesa.toml | 22 ++++++++++++++++ gaming/lib32-ncurses/lib32-ncurses.toml | 20 +++++++++++++++ gaming/lib32-nvidia/lib32-nvidia.toml | 23 +++++++++++++++++ gaming/lib32-openssl/lib32-openssl.toml | 20 +++++++++++++++ gaming/lib32-zlib/lib32-zlib.toml | 20 +++++++++++++++ gaming/steam/steam.toml | 12 ++++++++- gaming/wine/wine.toml | 5 +++- 35 files changed, 612 insertions(+), 9 deletions(-) create mode 100644 core/alsa-lib/alsa-lib.toml create mode 100644 extra/liberation-fonts/liberation-fonts.toml create mode 100644 extra/libx11/libx11.toml create mode 100644 extra/libxcomposite/libxcomposite.toml create mode 100644 extra/libxcursor/libxcursor.toml create mode 100644 extra/libxdamage/libxdamage.toml create mode 100644 extra/libxext/libxext.toml create mode 100644 extra/libxfixes/libxfixes.toml create mode 100644 extra/libxi/libxi.toml create mode 100644 extra/libxrandr/libxrandr.toml create mode 100644 extra/libxrender/libxrender.toml create mode 100644 extra/libxtst/libxtst.toml create mode 100644 extra/xorgproto/xorgproto.toml create mode 100644 extra/xtrans/xtrans.toml create mode 100644 gaming/lib32-alsa-lib/lib32-alsa-lib.toml create mode 100644 gaming/lib32-curl/lib32-curl.toml create mode 100644 gaming/lib32-dbus/lib32-dbus.toml create mode 100644 gaming/lib32-expat/lib32-expat.toml create mode 100644 gaming/lib32-fontconfig/lib32-fontconfig.toml create mode 100644 gaming/lib32-freetype/lib32-freetype.toml create mode 100644 gaming/lib32-glibc/lib32-glibc.toml create mode 100644 gaming/lib32-libx11/lib32-libx11.toml create mode 100644 gaming/lib32-libxcb/lib32-libxcb.toml create mode 100644 gaming/lib32-mesa/lib32-mesa.toml create mode 100644 gaming/lib32-ncurses/lib32-ncurses.toml create mode 100644 gaming/lib32-nvidia/lib32-nvidia.toml create mode 100644 gaming/lib32-openssl/lib32-openssl.toml create mode 100644 gaming/lib32-zlib/lib32-zlib.toml diff --git a/core/alsa-lib/alsa-lib.toml b/core/alsa-lib/alsa-lib.toml new file mode 100644 index 0000000..b94cd1f --- /dev/null +++ b/core/alsa-lib/alsa-lib.toml @@ -0,0 +1,20 @@ +[package] +name = "alsa-lib" +version = "1.2.13" +description = "ALSA sound library — provides hardware audio access for PipeWire and applications" +url = "https://www.alsa-project.org/" +license = "LGPL-2.1" + +[source] +url = "https://www.alsa-project.org/files/pub/lib/alsa-lib-${version}.tar.bz2" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc"] +build = ["gcc", "make", "pkg-config"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/core/gcc/gcc.toml b/core/gcc/gcc.toml index 1ef04fc..5d2f515 100644 --- a/core/gcc/gcc.toml +++ b/core/gcc/gcc.toml @@ -15,6 +15,8 @@ build = ["make", "sed", "gawk", "texinfo"] [build] system = "autotools" -configure = """mkdir build && cd build && ../configure --prefix=/usr --enable-languages=c,c++ --enable-default-pie --enable-default-ssp --disable-multilib --with-system-zlib""" +# Multilib enabled — required for 32-bit Steam/Wine/Proton support. +# This builds both x86_64 and i686 compilers/libraries. +configure = """mkdir build && cd build && ../configure --prefix=/usr --enable-languages=c,c++ --enable-default-pie --enable-default-ssp --enable-multilib --with-system-zlib""" make = """make""" install = """make DESTDIR=${PKG} install""" diff --git a/desktop/dwl/dwl.toml b/desktop/dwl/dwl.toml index e46dd29..b458a0d 100644 --- a/desktop/dwl/dwl.toml +++ b/desktop/dwl/dwl.toml @@ -23,11 +23,14 @@ sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" update_check = "https://codeberg.org/api/v1/repos/dwl/dwl/releases/latest" [dependencies] -run = ["wlroots", "wayland", "wayland-protocols", "libinput", "xwayland"] +run = ["wlroots", "wayland", "wayland-protocols", "libinput", "xwayland", "libxcursor"] build = ["gcc", "make", "pkg-config"] [build] system = "custom" -configure = "" +# Copy DarkForge config.h before building — dwl is configured at compile time +# The config.h lives at /etc/dwl/config.h on the installed system and is also +# deployed by the installer from configs/dwl/config.h +configure = """cp /etc/dwl/config.h config.h 2>/dev/null || true""" make = "make" install = "make DESTDIR=${PKG} PREFIX=/usr install" diff --git a/desktop/firefox/firefox.toml b/desktop/firefox/firefox.toml index fb621a7..1ccc0ed 100644 --- a/desktop/firefox/firefox.toml +++ b/desktop/firefox/firefox.toml @@ -10,7 +10,11 @@ url = "https://archive.mozilla.org/pub/firefox/releases/${version}/source/firefo sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" [dependencies] -run = ["glibc", "dbus", "glib", "pango", "cairo", "freetype", "fontconfig", "libffi", "openssl", "zlib"] +# Firefox needs: PipeWire for audio, alsa-lib for fallback, X11 libs for XWayland mode, +# liberation-fonts for readable web content +run = ["glibc", "dbus", "glib", "pango", "cairo", "freetype", "fontconfig", "libffi", + "openssl", "zlib", "pipewire", "alsa-lib", "libx11", "libxext", "libxrender", + "libxcomposite", "libxdamage", "libxfixes", "liberation-fonts"] build = ["gcc", "make", "python", "perl", "pkg-config", "autoconf", "rust", "cbindgen", "nodejs", "nasm"] [build] diff --git a/extra/liberation-fonts/liberation-fonts.toml b/extra/liberation-fonts/liberation-fonts.toml new file mode 100644 index 0000000..26445aa --- /dev/null +++ b/extra/liberation-fonts/liberation-fonts.toml @@ -0,0 +1,25 @@ +[package] +name = "liberation-fonts" +version = "2.1.5" +description = "Liberation font family — metrically compatible with Arial, Times New Roman, Courier New" +url = "https://github.com/liberationfonts/liberation-fonts" +license = "OFL-1.1" + +[source] +url = "https://github.com/liberationfonts/liberation-fonts/files/7261482/liberation-fonts-ttf-${version}.tar.gz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +# Font package — no runtime library deps, just fontconfig to register them +run = ["fontconfig"] +build = [] + +[build] +system = "custom" +configure = "" +make = "" +install = """ +mkdir -p ${PKG}/usr/share/fonts/liberation +cp *.ttf ${PKG}/usr/share/fonts/liberation/ +mkdir -p ${PKG}/etc/fonts/conf.d +""" diff --git a/extra/libx11/libx11.toml b/extra/libx11/libx11.toml new file mode 100644 index 0000000..dcefea6 --- /dev/null +++ b/extra/libx11/libx11.toml @@ -0,0 +1,20 @@ +[package] +name = "libx11" +version = "1.8.10" +description = "Core X11 protocol client library — required by all X11/XWayland applications" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libX11-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "xcb", "libxau", "libxdmcp"] +build = ["gcc", "make", "pkg-config", "xorgproto", "xtrans"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static --enable-xthreads""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxcomposite/libxcomposite.toml b/extra/libxcomposite/libxcomposite.toml new file mode 100644 index 0000000..5dbe269 --- /dev/null +++ b/extra/libxcomposite/libxcomposite.toml @@ -0,0 +1,20 @@ +[package] +name = "libxcomposite" +version = "0.4.6" +description = "X11 Composite extension library — off-screen window compositing" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXcomposite-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11", "libxfixes"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxcursor/libxcursor.toml b/extra/libxcursor/libxcursor.toml new file mode 100644 index 0000000..e752a8b --- /dev/null +++ b/extra/libxcursor/libxcursor.toml @@ -0,0 +1,20 @@ +[package] +name = "libxcursor" +version = "1.2.3" +description = "X11 cursor management library — themed cursors for X11/XWayland" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXcursor-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11", "libxfixes", "libxrender"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxdamage/libxdamage.toml b/extra/libxdamage/libxdamage.toml new file mode 100644 index 0000000..f0d8158 --- /dev/null +++ b/extra/libxdamage/libxdamage.toml @@ -0,0 +1,20 @@ +[package] +name = "libxdamage" +version = "1.1.6" +description = "X11 Damage extension library — tracks changed screen regions for compositing" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXdamage-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11", "libxfixes"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxext/libxext.toml b/extra/libxext/libxext.toml new file mode 100644 index 0000000..5bd2cd9 --- /dev/null +++ b/extra/libxext/libxext.toml @@ -0,0 +1,20 @@ +[package] +name = "libxext" +version = "1.3.6" +description = "X11 miscellaneous extensions library — SHAPE, MIT-SHM, DPMS, Sync" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXext-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxfixes/libxfixes.toml b/extra/libxfixes/libxfixes.toml new file mode 100644 index 0000000..dc93b4d --- /dev/null +++ b/extra/libxfixes/libxfixes.toml @@ -0,0 +1,20 @@ +[package] +name = "libxfixes" +version = "6.0.1" +description = "X11 Fixes extension library — cursor visibility, region support" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXfixes-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxi/libxi.toml b/extra/libxi/libxi.toml new file mode 100644 index 0000000..2b133d1 --- /dev/null +++ b/extra/libxi/libxi.toml @@ -0,0 +1,20 @@ +[package] +name = "libxi" +version = "1.8.2" +description = "X11 Input extension library — input device management for XWayland/X11 apps" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXi-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11", "libxext", "libxfixes"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxrandr/libxrandr.toml b/extra/libxrandr/libxrandr.toml new file mode 100644 index 0000000..af1b624 --- /dev/null +++ b/extra/libxrandr/libxrandr.toml @@ -0,0 +1,20 @@ +[package] +name = "libxrandr" +version = "1.5.4" +description = "X11 RandR extension library — multi-monitor and resolution management" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXrandr-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11", "libxext", "libxrender"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxrender/libxrender.toml b/extra/libxrender/libxrender.toml new file mode 100644 index 0000000..7bdadb7 --- /dev/null +++ b/extra/libxrender/libxrender.toml @@ -0,0 +1,20 @@ +[package] +name = "libxrender" +version = "0.9.12" +description = "X11 Render extension library — anti-aliased font rendering and compositing" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXrender-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/libxtst/libxtst.toml b/extra/libxtst/libxtst.toml new file mode 100644 index 0000000..7464c52 --- /dev/null +++ b/extra/libxtst/libxtst.toml @@ -0,0 +1,20 @@ +[package] +name = "libxtst" +version = "1.2.5" +description = "X11 Testing/Recording extension library — needed by Steam and accessibility tools" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libXtst-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc", "libx11", "libxext", "libxi"] +build = ["gcc", "make", "pkg-config", "xorgproto"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/extra/pipewire/pipewire.toml b/extra/pipewire/pipewire.toml index 4fe11a3..b65dfe7 100644 --- a/extra/pipewire/pipewire.toml +++ b/extra/pipewire/pipewire.toml @@ -10,11 +10,18 @@ url = "https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pip sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" [dependencies] -run = ["glibc", "dbus", "libffi", "ncurses"] +run = ["glibc", "dbus", "libffi", "ncurses", "alsa-lib"] build = ["gcc", "meson", "ninja", "pkg-config"] [build] system = "meson" -configure = """meson setup build --prefix=/usr --buildtype=release -Dsession-managers=wireplumber -Djack=disabled -Dsystemd=disabled""" +# Builds both pipewire and pipewire-pulse (PulseAudio compatibility server) +# pipewire-pulse is required for Firefox and Steam audio output +configure = """meson setup build --prefix=/usr --buildtype=release \ + -Dsession-managers=wireplumber \ + -Djack=disabled \ + -Dsystemd=disabled \ + -Dpipewire-alsa=enabled \ + -Dpipewire-pulse=enabled""" make = """ninja -C build""" install = """DESTDIR=${PKG} ninja -C build install""" diff --git a/extra/polkit/polkit.toml b/extra/polkit/polkit.toml index 1b3d427..b403d90 100644 --- a/extra/polkit/polkit.toml +++ b/extra/polkit/polkit.toml @@ -15,6 +15,10 @@ build = ["meson", "ninja", "pkg-config", "gettext", "perl"] [build] system = "meson" -configure = """meson setup build --prefix=/usr --buildtype=release -Dsession_tracking=libelogind -Dsystemdsystemunitdir=no -Djs_engine=duktape""" +# Session tracking disabled — we use seatd for seat management instead of +# elogind/systemd-logind. polkit still works for password prompts via the +# lxqt-policykit-agent (started in .zprofile). Active session detection +# falls back to checking if the requesting process is on the active VT. +configure = """meson setup build --prefix=/usr --buildtype=release -Dsession_tracking=disabled -Dsystemdsystemunitdir=no -Djs_engine=duktape""" make = """ninja -C build""" install = """DESTDIR=${PKG} ninja -C build install""" diff --git a/extra/xorgproto/xorgproto.toml b/extra/xorgproto/xorgproto.toml new file mode 100644 index 0000000..eec3e84 --- /dev/null +++ b/extra/xorgproto/xorgproto.toml @@ -0,0 +1,20 @@ +[package] +name = "xorgproto" +version = "2024.1" +description = "X.Org protocol headers — combined X11 protocol definitions" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/proto/xorgproto-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = [] +build = ["meson", "ninja"] + +[build] +system = "meson" +configure = """meson setup build --prefix=/usr""" +make = """ninja -C build""" +install = """DESTDIR=${PKG} ninja -C build install""" diff --git a/extra/xtrans/xtrans.toml b/extra/xtrans/xtrans.toml new file mode 100644 index 0000000..d059b12 --- /dev/null +++ b/extra/xtrans/xtrans.toml @@ -0,0 +1,20 @@ +[package] +name = "xtrans" +version = "1.5.2" +description = "X transport library — network transport abstraction for X11" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/xtrans-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = [] +build = ["gcc", "make", "pkg-config"] + +[build] +system = "autotools" +configure = """./configure --prefix=/usr""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-alsa-lib/lib32-alsa-lib.toml b/gaming/lib32-alsa-lib/lib32-alsa-lib.toml new file mode 100644 index 0000000..de3a6de --- /dev/null +++ b/gaming/lib32-alsa-lib/lib32-alsa-lib.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-alsa-lib" +version = "1.2.13" +description = "32-bit ALSA sound library — needed by Steam/Wine for audio" +url = "https://www.alsa-project.org/" +license = "LGPL-2.1" + +[source] +url = "https://www.alsa-project.org/files/pub/lib/alsa-lib-${version}.tar.bz2" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc"] +build = ["gcc", "make", "pkg-config"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-curl/lib32-curl.toml b/gaming/lib32-curl/lib32-curl.toml new file mode 100644 index 0000000..c83bbba --- /dev/null +++ b/gaming/lib32-curl/lib32-curl.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-curl" +version = "8.12.1" +description = "32-bit URL retrieval library" +url = "https://curl.se/" +license = "MIT" + +[source] +url = "https://curl.se/download/curl-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-openssl", "lib32-zlib"] +build = ["gcc", "make", "pkg-config"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --with-openssl""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-dbus/lib32-dbus.toml b/gaming/lib32-dbus/lib32-dbus.toml new file mode 100644 index 0000000..f41eb6f --- /dev/null +++ b/gaming/lib32-dbus/lib32-dbus.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-dbus" +version = "1.14.10" +description = "32-bit D-Bus message bus library" +url = "https://www.freedesktop.org/wiki/Software/dbus/" +license = "AFL-2.1 OR GPL-2.0" + +[source] +url = "https://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-expat"] +build = ["gcc", "make", "pkg-config"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --disable-systemd --disable-tests""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-expat/lib32-expat.toml b/gaming/lib32-expat/lib32-expat.toml new file mode 100644 index 0000000..fa068ed --- /dev/null +++ b/gaming/lib32-expat/lib32-expat.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-expat" +version = "2.7.1" +description = "32-bit XML parser library" +url = "https://libexpat.github.io/" +license = "MIT" + +[source] +url = "https://github.com/libexpat/libexpat/releases/download/R_2_7_1/expat-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc"] +build = ["gcc", "make"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-fontconfig/lib32-fontconfig.toml b/gaming/lib32-fontconfig/lib32-fontconfig.toml new file mode 100644 index 0000000..6b321c4 --- /dev/null +++ b/gaming/lib32-fontconfig/lib32-fontconfig.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-fontconfig" +version = "2.16.0" +description = "32-bit font configuration library" +url = "https://www.freedesktop.org/wiki/Software/fontconfig/" +license = "MIT" + +[source] +url = "https://www.freedesktop.org/software/fontconfig/release/fontconfig-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-freetype", "lib32-expat"] +build = ["gcc", "meson", "ninja", "pkg-config", "gperf"] + +[build] +system = "meson" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" meson setup build --prefix=/usr --libdir=/usr/lib32""" +make = """ninja -C build""" +install = """DESTDIR=${PKG} ninja -C build install""" diff --git a/gaming/lib32-freetype/lib32-freetype.toml b/gaming/lib32-freetype/lib32-freetype.toml new file mode 100644 index 0000000..34fb85b --- /dev/null +++ b/gaming/lib32-freetype/lib32-freetype.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-freetype" +version = "2.13.3" +description = "32-bit font rendering library" +url = "https://freetype.org/" +license = "FTL OR GPL-2.0" + +[source] +url = "https://download.savannah.gnu.org/releases/freetype/freetype-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-zlib"] +build = ["gcc", "make", "pkg-config"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --disable-static --enable-freetype-config""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-glibc/lib32-glibc.toml b/gaming/lib32-glibc/lib32-glibc.toml new file mode 100644 index 0000000..2248d75 --- /dev/null +++ b/gaming/lib32-glibc/lib32-glibc.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-glibc" +version = "2.43" +description = "32-bit GNU C Library — foundation for all 32-bit Steam/Wine/Proton binaries" +url = "https://www.gnu.org/software/libc/" +license = "LGPL-2.1" + +[source] +url = "https://ftp.gnu.org/gnu/glibc/glibc-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["glibc"] +build = ["gcc", "binutils", "make", "sed", "gawk"] + +[build] +system = "autotools" +configure = """mkdir -p build && cd build && CC="gcc -m32" CXX="g++ -m32" ../configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --enable-kernel=5.4 --disable-profile libc_cv_slibdir=/usr/lib32""" +make = """cd build && make""" +install = """cd build && make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-libx11/lib32-libx11.toml b/gaming/lib32-libx11/lib32-libx11.toml new file mode 100644 index 0000000..971e2e2 --- /dev/null +++ b/gaming/lib32-libx11/lib32-libx11.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-libx11" +version = "1.8.10" +description = "32-bit core X11 client library — needed by Steam and Wine under XWayland" +url = "https://xorg.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libX11-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-libxcb"] +build = ["gcc", "make", "pkg-config", "xorgproto", "xtrans"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-libxcb/lib32-libxcb.toml b/gaming/lib32-libxcb/lib32-libxcb.toml new file mode 100644 index 0000000..653f1fa --- /dev/null +++ b/gaming/lib32-libxcb/lib32-libxcb.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-libxcb" +version = "1.17.0" +description = "32-bit X protocol C-language Binding" +url = "https://xcb.freedesktop.org/" +license = "MIT" + +[source] +url = "https://xorg.freedesktop.org/archive/individual/lib/libxcb-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc"] +build = ["gcc", "make", "pkg-config", "python", "xcb-proto"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --disable-static""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-mesa/lib32-mesa.toml b/gaming/lib32-mesa/lib32-mesa.toml new file mode 100644 index 0000000..eb25710 --- /dev/null +++ b/gaming/lib32-mesa/lib32-mesa.toml @@ -0,0 +1,22 @@ +[package] +name = "lib32-mesa" +version = "25.0.3" +description = "32-bit OpenGL/Vulkan graphics library — required by Steam and Proton games" +url = "https://www.mesa3d.org/" +license = "MIT" + +[source] +url = "https://archive.mesa3d.org/mesa-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-zlib", "lib32-expat", "lib32-libx11", "lib32-libxcb"] +build = ["gcc", "meson", "ninja", "pkg-config", "python", "flex", "bison"] + +[build] +system = "meson" +# Cross-compile for 32-bit with Vulkan and basic gallium drivers +# zink allows OpenGL over Vulkan, swrast for software fallback +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" meson setup build --prefix=/usr --libdir=/usr/lib32 -Dvulkan-drivers=auto -Dgallium-drivers=swrast,zink -Dplatforms=x11,wayland -Dglx=dri -Degl=enabled""" +make = """ninja -C build""" +install = """DESTDIR=${PKG} ninja -C build install""" diff --git a/gaming/lib32-ncurses/lib32-ncurses.toml b/gaming/lib32-ncurses/lib32-ncurses.toml new file mode 100644 index 0000000..d846549 --- /dev/null +++ b/gaming/lib32-ncurses/lib32-ncurses.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-ncurses" +version = "6.5" +description = "32-bit terminal control library" +url = "https://invisible-island.net/ncurses/" +license = "MIT" + +[source] +url = "https://ftp.gnu.org/gnu/ncurses/ncurses-${version}.tar.gz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc"] +build = ["gcc", "make"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-pc-linux-gnu --with-shared --without-normal --with-cxx-shared --without-debug --without-ada --enable-widec""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-nvidia/lib32-nvidia.toml b/gaming/lib32-nvidia/lib32-nvidia.toml new file mode 100644 index 0000000..2ccb441 --- /dev/null +++ b/gaming/lib32-nvidia/lib32-nvidia.toml @@ -0,0 +1,23 @@ +[package] +name = "lib32-nvidia" +version = "570.133.07" +description = "32-bit NVIDIA compatibility libraries — required by Steam and Wine/Proton" +url = "https://www.nvidia.com/" +license = "Proprietary" + +[source] +# NVIDIA .run installer contains both 64-bit and 32-bit libraries +url = "https://download.nvidia.com/XFree86/Linux-x86_64/${version}/NVIDIA-Linux-x86_64-${version}.run" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-mesa"] +build = [] + +[build] +system = "custom" +# Extract 32-bit compatibility libs from the NVIDIA .run installer +# The .run file is a self-extracting archive +configure = """chmod +x NVIDIA-Linux-x86_64-${version}.run && ./NVIDIA-Linux-x86_64-${version}.run --extract-only""" +make = "" +install = """mkdir -p ${PKG}/usr/lib32 && cp NVIDIA-Linux-x86_64-${version}/32/lib*.so* ${PKG}/usr/lib32/ 2>/dev/null || cp NVIDIA-Linux-x86_64-${version}/libGL.so.${version} ${PKG}/usr/lib32/""" diff --git a/gaming/lib32-openssl/lib32-openssl.toml b/gaming/lib32-openssl/lib32-openssl.toml new file mode 100644 index 0000000..a98bef0 --- /dev/null +++ b/gaming/lib32-openssl/lib32-openssl.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-openssl" +version = "3.5.0" +description = "32-bit TLS/SSL library" +url = "https://www.openssl.org/" +license = "Apache-2.0" + +[source] +url = "https://www.openssl.org/source/openssl-${version}.tar.gz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc", "lib32-zlib"] +build = ["gcc", "make", "perl"] + +[build] +system = "custom" +configure = """CC="gcc -m32" ./Configure linux-x86 shared --prefix=/usr --libdir=lib32""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/lib32-zlib/lib32-zlib.toml b/gaming/lib32-zlib/lib32-zlib.toml new file mode 100644 index 0000000..59e29c8 --- /dev/null +++ b/gaming/lib32-zlib/lib32-zlib.toml @@ -0,0 +1,20 @@ +[package] +name = "lib32-zlib" +version = "1.3.1" +description = "32-bit compression library" +url = "https://zlib.net/" +license = "zlib" + +[source] +url = "https://zlib.net/zlib-${version}.tar.xz" +sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + +[dependencies] +run = ["lib32-glibc"] +build = ["gcc", "make"] + +[build] +system = "autotools" +configure = """CC="gcc -m32" CXX="g++ -m32" PKG_CONFIG_PATH="/usr/lib32/pkgconfig" ./configure --prefix=/usr --libdir=/usr/lib32""" +make = """make""" +install = """make DESTDIR=${PKG} install""" diff --git a/gaming/steam/steam.toml b/gaming/steam/steam.toml index bb0bfb3..3d225a0 100644 --- a/gaming/steam/steam.toml +++ b/gaming/steam/steam.toml @@ -10,7 +10,17 @@ url = "https://repo.steampowered.com/steam/archive/stable/steam_${version}.tar.g sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" [dependencies] -run = ["glibc", "curl", "dbus", "freetype", "openssl", "nvidia-open"] +# Steam is an X11 app running under XWayland — needs full X11 stack +# Also needs fonts, audio (PipeWire + pipewire-pulse for PulseAudio compat) +# 64-bit native deps +run = ["glibc", "curl", "dbus", "freetype", "openssl", "nvidia-open", + "libx11", "libxext", "libxrender", "libxfixes", "libxcomposite", + "libxdamage", "libxi", "libxtst", "libxcursor", "libxrandr", + "pipewire", "alsa-lib", "fontconfig", "liberation-fonts", + # 32-bit multilib — Steam runtime and many Proton games need 32-bit libs + "lib32-glibc", "lib32-zlib", "lib32-openssl", "lib32-curl", + "lib32-dbus", "lib32-freetype", "lib32-fontconfig", "lib32-alsa-lib", + "lib32-libx11", "lib32-libxcb", "lib32-mesa", "lib32-nvidia"] build = ["make"] [build] diff --git a/gaming/wine/wine.toml b/gaming/wine/wine.toml index 9d33aea..7e3d106 100644 --- a/gaming/wine/wine.toml +++ b/gaming/wine/wine.toml @@ -10,7 +10,10 @@ url = "https://dl.winehq.org/wine/source/10.x/wine-${version}.tar.xz" sha256 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" [dependencies] -run = ["glibc", "freetype", "fontconfig", "libpng", "openssl", "vulkan-loader", "sdl2", "gnutls"] +# Wine needs both 64-bit and 32-bit libraries for WoW64 (Windows on Windows 64) +run = ["glibc", "freetype", "fontconfig", "libpng", "openssl", "vulkan-loader", "sdl2", "gnutls", + "lib32-glibc", "lib32-zlib", "lib32-openssl", "lib32-freetype", "lib32-fontconfig", + "lib32-alsa-lib", "lib32-libx11", "lib32-libxcb", "lib32-mesa", "lib32-ncurses"] build = ["gcc", "make", "flex", "bison", "pkg-config", "autoconf"] [build]