summaryrefslogtreecommitdiff
path: root/repo
diff options
context:
space:
mode:
Diffstat (limited to 'repo')
-rw-r--r--repo/apps/cava/cava.xibuild27
-rw-r--r--repo/apps/chromium/chromium.xibuild2
-rw-r--r--repo/apps/firefox/firefox.xibuild41
-rw-r--r--repo/apps/gimp/gimp.xibuild27
-rw-r--r--repo/apps/sxiv/sxiv.xibuild18
-rw-r--r--repo/media/alsa-plugins/pulseaudio-alsa.xibuild9
-rw-r--r--repo/media/gegl/gegl.xibuild25
-rw-r--r--repo/media/giflib/giflib-restore-deprecated-functions.patch17
-rw-r--r--repo/media/giflib/giflib.xibuild19
-rw-r--r--repo/media/libcanberra/libcanberra-gtk3.xibuild13
-rw-r--r--repo/media/libid3tag/libid3tag.xibuild23
-rw-r--r--repo/media/mypaint-brushes/mypaint-brushes.xibuild27
-rw-r--r--repo/media/poppler-data/poppler-data.xibuild16
-rw-r--r--repo/media/poppler/poppler-glib.xibuild10
-rw-r--r--repo/media/poppler/poppler.xibuild2
-rw-r--r--repo/meta/all/all.xibuild2
-rw-r--r--repo/meta/repo-apps/repo-apps.xibuild2
-rw-r--r--repo/meta/repo-media/repo-media.xibuild2
-rw-r--r--repo/meta/repo-system/repo-system.xibuild2
-rw-r--r--repo/system/dbus-glib/dbus-glib.xibuild24
-rw-r--r--repo/system/fftw/cycle.h.patch54
-rw-r--r--repo/system/fftw/fftw.xibuild54
-rw-r--r--repo/system/gettext/fix-xgettext-version-string.patch11
-rw-r--r--repo/system/gettext/flip-macro-logic.patch20
-rw-r--r--repo/system/gettext/gettext.xibuild11
-rw-r--r--repo/system/gettext/line-length.patch15
-rw-r--r--repo/system/gettext/respect-cflags.patch11
-rw-r--r--repo/system/glib-networking/glib-networking.xibuild24
-rw-r--r--repo/system/iniparser/iniparser.xibuild24
-rw-r--r--repo/system/iniparser/rpath.patch10
-rw-r--r--repo/system/libproxy/libproxy.xibuild27
-rw-r--r--repo/system/libucontext/libucontext.xibuild18
-rw-r--r--repo/system/nspr/nspr.xibuild2
-rw-r--r--repo/system/nss/nss.xibuild2
-rw-r--r--repo/system/ruby/dont-install-bundled-gems.patch20
-rw-r--r--repo/system/ruby/ruby.xibuild48
-rw-r--r--repo/system/ruby/test_insns-lower-recursion-depth.patch47
-rw-r--r--repo/test.sh46
-rw-r--r--repo/xi/xibuild/xibuild.xibuild2
-rw-r--r--repo/xi/xipkg/xipkg.xibuild2
-rw-r--r--repo/xi/xiutils/xiutils.xibuild2
41 files changed, 722 insertions, 36 deletions
diff --git a/repo/apps/cava/cava.xibuild b/repo/apps/cava/cava.xibuild
new file mode 100644
index 0000000..9a60b50
--- /dev/null
+++ b/repo/apps/cava/cava.xibuild
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+NAME="cava"
+DESC="Console-based Audio Visualizer for ALSA"
+
+MAKEDEPS="make "
+DEPS="alsa-lib fftw iniparser musl ncurses "
+
+PKG_VER=0.8.2
+SOURCE="https://github.com/karlstav/cava/archive/$PKG_VER.tar.gz"
+
+prepare () {
+ ./autogen.sh
+}
+
+build () {
+ ./configure \
+ --prefix=/usr \
+ --bindir=/usr/bin \
+ --sysconfdir=/etc \
+ --disable-static
+ make
+}
+
+package () {
+ make DESTDIR=$PKG_DEST install
+}
diff --git a/repo/apps/chromium/chromium.xibuild b/repo/apps/chromium/chromium.xibuild
index 2edfbd3..afe4bb3 100644
--- a/repo/apps/chromium/chromium.xibuild
+++ b/repo/apps/chromium/chromium.xibuild
@@ -3,7 +3,7 @@
NAME="chromium"
DESC="Chromium webbrowser (ungoogled)"
-MAKEDEPS="meson ninja hwids compiler-rt lld pciutils"
+MAKEDEPS="meson ninja hwids lld pciutils"
DEPS="alsa-lib at-spi2-atk at-spi2-core atk cairo dbus eudev expat ffmpeg4 flac font-opensans fontconfig freetype2 glib gtk3 harfbuzz lcms2 libdrm libevent libjpeg-turbo libpng pulseaudio libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxkbcommon libxml2 libxrandr libxslt mesa musl nspr nss opus pango re2 snappy wayland xdg-utils nodejs"
PKG_VER=100.0.4896.127
diff --git a/repo/apps/firefox/firefox.xibuild b/repo/apps/firefox/firefox.xibuild
index a24eb51..ac49349 100644
--- a/repo/apps/firefox/firefox.xibuild
+++ b/repo/apps/firefox/firefox.xibuild
@@ -3,14 +3,28 @@
NAME="firefox"
DESC="Firefox web browser"
-MAKEDEPS="make rustc cbindgen wasi-sdk"
-DEPS="alsa-lib atk cairo dbus ffmpeg fontconfig freetype2 gdk-pixbuf glib gtk3 icu libevent libffi libpng libvpx libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxrandr musl nspr nss pango pixman zlib "
+MAKEDEPS="make rust cbindgen"
+DEPS="nodejs alsa-lib atk cairo dbus ffmpeg fontconfig freetype2 gdk-pixbuf glib gtk3 icu libevent libffi libpng libvpx libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxrandr musl nspr nss pango pixman zlib dbus-glib"
-PKG_VER=99.0.1
-releasedate=2022-04-12
+PKG_VER=100.0.2
SOURCE="https://ftp.mozilla.org/pub/firefox/releases/$PKG_VER/source/firefox-$PKG_VER.source.tar.xz"
-ADDITIONAL="stab.h sandbox-sched_setscheduler.patch sandbox-largefile.patch sandbox-fork.patch mallinfo.patch fix-webrtc-glibcisms.patch fix-rust-target.patch fix-fortify-system-wrappers.patch firefox-safe.desktop disable-neon-in-aom.patch disable-moz-stackwalk.patch avoid-redefinition.patch allow-custom-rust-vendor.patch "
+ADDITIONAL="
+allow-custom-rust-vendor.patch
+avoid-redefinition.patch
+disable-moz-stackwalk.patch
+disable-neon-in-aom.patch
+firefox-safe.desktop
+firefox.desktop
+fix-fortify-system-wrappers.patch
+fix-rust-target.patch
+fix-webrtc-glibcisms.patch
+mallinfo.patch
+sandbox-fork.patch
+sandbox-largefile.patch
+sandbox-sched_setscheduler.patch
+stab.h
+"
prepare () {
apply_patches
@@ -39,12 +53,12 @@ build () {
export CXX="clang++"
export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/firefox"
- ../mach configure \
+ ../mach configure \
+ --without-wasm-sandboxed-libraries \
--prefix=/usr \
--disable-elf-hack \
--enable-rust-simd \
--enable-sandbox \
- \
--disable-cargo-incremental \
--disable-crashreporter \
--disable-install-strip \
@@ -54,14 +68,12 @@ build () {
--disable-strip \
--disable-tests \
--disable-updater \
- \
--enable-alsa \
--enable-dbus \
--enable-default-toolkit=cairo-gtk3-wayland \
--enable-dom-streams \
--enable-ffmpeg \
--enable-hardening \
- --enable-linker=lld \
--enable-necko-wifi \
--enable-official-branding \
--enable-optimize="$CFLAGS -O2" \
@@ -69,7 +81,6 @@ build () {
--enable-release \
--enable-system-ffi \
--enable-system-pixman \
- \
--with-distribution-id=xilinux \
--with-libclang-path=/usr/lib \
--with-system-ffi \
@@ -83,8 +94,7 @@ build () {
--with-system-png \
--with-system-webp \
--with-system-zlib \
- --with-unsigned-addon-scopes=app,system \
- --without-wasm-sandboxed-libraries
+ --with-unsigned-addon-scopes=app,system &&
../mach build
}
@@ -128,11 +138,4 @@ package () {
pref("extensions.autoDisableScopes", 11);
pref("extensions.shownSelectionUI", true);
EOF
-
- # Generate appdata file
- mkdir "$PKG_DEST"/usr/share/metainfo/
- export VERSION="$PKG_VER"
- export DATE="$releasedate"
- envsubst < "$builddir"/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.appdata.xml.in > "$PKG_DEST"/usr/share/metainfo/org.mozilla.firefox.appdata.xml
-
}
diff --git a/repo/apps/gimp/gimp.xibuild b/repo/apps/gimp/gimp.xibuild
new file mode 100644
index 0000000..f063a19
--- /dev/null
+++ b/repo/apps/gimp/gimp.xibuild
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+NAME="gimp"
+DESC="GNU Image Manipulation Program"
+
+MAKEDEPS="make gettext"
+DEPS="babl cairo fontconfig freetype2 gdk-pixbuf gexiv2 glib gtk2 harfbuzz json-glib lcms2 bzip2 libexecinfo intltool libjpeg-turbo libmypaint mypaint-brushes libpng librsvg libwebp libx11 libxext libxfixes libxmu libxpm musl pango poppler-glib gegl tiff xz zlib python glib-networking poppler-data"
+
+PKG_VER=2.10.30
+SOURCE="https://download.gimp.org/pub/gimp/v${PKG_VER%.*}/gimp-$PKG_VER.tar.bz2"
+
+build () {
+ ./configure \
+ --disable-dependency-tracking \
+ --sysconfdir=/etc \
+ --enable-mp \
+ --enable-gimp-console \
+ --disable-python \
+ --without-aa \
+ --disable-check-update
+
+ make
+}
+
+package () {
+ make DESTDIR=$PKG_DEST install
+}
diff --git a/repo/apps/sxiv/sxiv.xibuild b/repo/apps/sxiv/sxiv.xibuild
new file mode 100644
index 0000000..a4afd5d
--- /dev/null
+++ b/repo/apps/sxiv/sxiv.xibuild
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+NAME="sxiv"
+DESC="Simple X Image Viewer"
+
+MAKEDEPS="make"
+DEPS="fontconfig giflib imlib2 libexif libx11 libxft musl "
+
+PKG_VER=26
+SOURCE="https://github.com/muennich/sxiv/archive/v$PKG_VER.tar.gz"
+
+build () {
+ make PREFIX=/usr
+}
+
+package () {
+ make PREFIX=/usr DESTDIR=$PKG_DEST install
+}
diff --git a/repo/media/alsa-plugins/pulseaudio-alsa.xibuild b/repo/media/alsa-plugins/pulseaudio-alsa.xibuild
new file mode 100644
index 0000000..cf69842
--- /dev/null
+++ b/repo/media/alsa-plugins/pulseaudio-alsa.xibuild
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+DESC="Config files required for alsa to work with pulseaudio"
+DESP="alsa-plugins"
+
+package () {
+ mkdir -p $PKG_DEST/etc/alsa/conf.d
+ ln -s /usr/share/alsa.conf.d/99-pulseaudio-default.conf $PKG_DEST/etc/alsa/conf.d/
+}
diff --git a/repo/media/gegl/gegl.xibuild b/repo/media/gegl/gegl.xibuild
new file mode 100644
index 0000000..a99fc6f
--- /dev/null
+++ b/repo/media/gegl/gegl.xibuild
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+NAME="gegl"
+DESC="Graph based image processing framework"
+
+# TODO onlly install the fonts actually needed
+
+MAKEDEPS="encodings font-adobe-utopia-type1 font-alias font-bh-ttf font-bh-type1 fontconfig font-ibm-type1 font-misc-ethiopic font-util font-xfree86-type1 meson ninja graphviz libexecinfo"
+DEPS="babl cairo ffmpeg4 gdk-pixbuf glib json-glib lcms2 intltool libjpeg-turbo libpng libraw librsvg libwebp musl pango tiff libexecinfo"
+
+PKG_VER=0.4.36
+SOURCE="https://download.gimp.org/pub/gegl/${PKG_VER%.*}/gegl-${PKG_VER}.tar.xz"
+
+build () {
+ mkdir build &&
+ cd build &&
+ export LDFLAGS="$LDFLAGS -lexecinfo"
+ meson --prefix=/usr \
+ .. &&
+ ninja
+}
+
+package () {
+ DESTDIR=$PKG_DEST ninja install
+}
diff --git a/repo/media/giflib/giflib-restore-deprecated-functions.patch b/repo/media/giflib/giflib-restore-deprecated-functions.patch
new file mode 100644
index 0000000..770cb16
--- /dev/null
+++ b/repo/media/giflib/giflib-restore-deprecated-functions.patch
@@ -0,0 +1,17 @@
+Source: Gentoo, written by Gary Stein
+Upstream: No
+Reason: restores deprecated GifQuantizeBuffer which some packages (notably libgdiplus) still use
+--- a/Makefile 2019-03-28 14:57:23.000000000 -0400
++++ b/Makefile 2019-03-31 23:38:20.700603561 -0400
+@@ -67,8 +67,8 @@
+
+ $(UTILS):: libgif.a libutil.a
+
+-libgif.so: $(OBJECTS) $(HEADERS)
+- $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS)
++libgif.so: $(OBJECTS) $(HEADERS) $(UOBJECTS)
++ $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname -Wl,libgif.so.$(LIBMAJOR) -o libgif.so $(OBJECTS) $(UOBJECTS)
+
+ libgif.a: $(OBJECTS) $(HEADERS)
+ $(AR) rcs libgif.a $(OBJECTS)
+
diff --git a/repo/media/giflib/giflib.xibuild b/repo/media/giflib/giflib.xibuild
new file mode 100644
index 0000000..3206a35
--- /dev/null
+++ b/repo/media/giflib/giflib.xibuild
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+NAME="giflib"
+DESC="A library for reading and writing GIF images"
+
+MAKEDEPS="make "
+DEPS="musl "
+
+PKG_VER=5.2.1
+SOURCE="https://downloads.sourceforge.net/sourceforge/giflib/giflib-$PKG_VER.tar.gz"
+ADDITIONAL="giflib-restore-deprecated-functions.patch "
+
+build () {
+ make PREFIX=/usr
+}
+
+package () {
+ make PREFIX=/usr DESTDIR=$PKG_DEST install
+}
diff --git a/repo/media/libcanberra/libcanberra-gtk3.xibuild b/repo/media/libcanberra/libcanberra-gtk3.xibuild
new file mode 100644
index 0000000..c597390
--- /dev/null
+++ b/repo/media/libcanberra/libcanberra-gtk3.xibuild
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+DESC="GTK+3.0 bindings for libcanberra"
+DEPS="glib gtk3 libcanberra libx11 musl"
+
+package () {
+ add_from_main usr/bin/canberra-gtk-play
+ add_from_main usr/lib/gtk-3.0/*
+ add_from_main usr/lib/gnome-settings-daemon-3.0/*
+ add_from_main usr/lib/libcanberra-gtk3.so.*
+ add_from_main usr/share/gdm/*
+ add_from_main usr/share/gnome/*
+}
diff --git a/repo/media/libid3tag/libid3tag.xibuild b/repo/media/libid3tag/libid3tag.xibuild
new file mode 100644
index 0000000..696d19f
--- /dev/null
+++ b/repo/media/libid3tag/libid3tag.xibuild
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+NAME="libid3tag"
+DESC="MAD ID3 tagger for MP3 audio files"
+
+MAKEDEPS="cmake "
+DEPS="musl "
+
+PKG_VER=0.16.1
+SOURCE="https://github.com/tenacityteam/libid3tag/archive/refs/tags/$PKG_VER.tar.gz"
+
+build () {
+ cmake -B build \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+ -DBUILD_SHARED_LIBS=True \
+ -DBUILD_STATIC_LIBS=OFF
+ cmake --build build
+}
+
+package () {
+ DESTDIR="$PKG_DEST" cmake --install build
+}
diff --git a/repo/media/mypaint-brushes/mypaint-brushes.xibuild b/repo/media/mypaint-brushes/mypaint-brushes.xibuild
new file mode 100644
index 0000000..8031c8c
--- /dev/null
+++ b/repo/media/mypaint-brushes/mypaint-brushes.xibuild
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+NAME="mypaint-brushes"
+DESC="default MyPaint brushes"
+
+MAKEDEPS="make "
+DEPS="pkg-config "
+
+PKG_VER=1.3.1
+SOURCE="https://github.com/mypaint/mypaint-brushes/releases/download/v$PKG_VER/mypaint-brushes-$PKG_VER.tar.xz"
+
+prepare () {
+ autoreconf -fi
+}
+
+build () {
+ ./configure \
+ --prefix=/usr \
+ --bindir=/usr/bin \
+ --sysconfdir=/etc \
+ --disable-static
+ make
+}
+
+package () {
+ make DESTDIR=$PKG_DEST install
+}
diff --git a/repo/media/poppler-data/poppler-data.xibuild b/repo/media/poppler-data/poppler-data.xibuild
new file mode 100644
index 0000000..cc7d29c
--- /dev/null
+++ b/repo/media/poppler-data/poppler-data.xibuild
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+NAME="poppler-data"
+DESC="encoding data for the poppler PDF rendering library"
+
+MAKEDEPS="make "
+DEPS="pkg-config "
+
+PKG_VER=0.4.11
+SOURCE="https://poppler.freedesktop.org/poppler-data-$PKG_VER.tar.gz"
+
+package () {
+ make prefix=/usr DESTDIR=$PKG_DEST install
+ mkdir -p $PKG_DEST/usr/lib
+ mv $PKG_DEST/usr/share/pkgconfig $PKG_DEST/usr/lib/pkgconfig
+}
diff --git a/repo/media/poppler/poppler-glib.xibuild b/repo/media/poppler/poppler-glib.xibuild
new file mode 100644
index 0000000..d6f31bf
--- /dev/null
+++ b/repo/media/poppler/poppler-glib.xibuild
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+NAME="poppler-glib"
+DESC="Glib wrapper for poppler"
+DEPS="cairo freetype2 glib musl poppler"
+
+package () {
+ add_from_main "usr/lib/libpoppler-glib.so*" \
+ "usr/lib/girepository*"
+}
diff --git a/repo/media/poppler/poppler.xibuild b/repo/media/poppler/poppler.xibuild
index 181fc75..9c10ee1 100644
--- a/repo/media/poppler/poppler.xibuild
+++ b/repo/media/poppler/poppler.xibuild
@@ -6,7 +6,7 @@ DESC="PDF rendering library based on xpdf 3.0"
MAKEDEPS="cmake "
DEPS="fontconfig freetype2 lcms2 libjpeg-turbo libpng musl openjpeg tiff "
-PKG_VER=22.03.0
+PKG_VER=22.05.0
SOURCE="https://poppler.freedesktop.org/poppler-$PKG_VER.tar.xz"
ADDITIONAL="dont-enforce-build-type.patch "
diff --git a/repo/meta/all/all.xibuild b/repo/meta/all/all.xibuild
index 910cb27..d617224 100644
--- a/repo/meta/all/all.xibuild
+++ b/repo/meta/all/all.xibuild
@@ -2,4 +2,4 @@
# This file was automatically generated, do not edit!
DESC="AlL tHe pacKageS!!"
-DEPS=" arandr chromium feh firefox gimp links lynx mpv ncmpcpp neovim pavucontrol pcmanfm polybar rxvt-unicode vim xclock-cat xlinks xterm asciidoc autoconf autoconf-archive autoconf2-13 automake bc bison boost cbindgen check cmake cmake-extra cmake-modules dejagnu distcc docbook-dtd docbook-xml docbook-xsl docbook4-xml doxygen expect flex gcc gdb git go gtk-doc help2man icecream imake itstool libexecinfo llvm m4 make meson mpc nasm ninja patch pkg-config rust scdoc sgml-common strace swig texinfo uthash vala waf xmlto xorg-cf-files encodings font-adobe-utopia-type1 font-alias font-bh-ttf font-bh-type1 font-ibm-type1 font-misc-ethiopic font-noto font-opensans font-util font-xfree86-type1 fontconfig extremetuxracer b43-fwcutter linux linux-headers alsa-firmware alsa-lib alsa-plugins alsa-tools alsa-utils aom audiofile babl dav1d exiv2 faac faad2 fdk-aac ffmpeg ffmpeg4 flac gexiv2 giflib lame libass libcanberra libid3tag libjpeg-turbo libmad libmpdclient libmypaint libogg libraw librist librsvg libsamplerate libsndfile libsrt libtheora libvorbis libvpx libwebp mpc-mpd mpd openal-soft openjpeg opus pipewire poppler pulseaudio pulsemixer sfml soxr tiff v4l-utils vidstab wavpack x264 x265 xvidcore python python-Jinja2 python-alabaster python-appdirs python-babel python-certifi python-chardet python-docutils python-gobject python-html5lib python-idna python-imagesize python-jinja python-lxml python-mach python-mako python-markupsafe python-packaging python-pip python-pygments python-pyparsing python-pytz python-requests python-six python-snowballstemmer python-sphinx python-sphinx-alabaster-theme python-sphinxcontrib-applehelp python-sphinxcontrib-devhelp python-sphinxcontrib-htmlhelp python-sphinxcontrib-jsmath python-sphinxcontrib-qthelp python-sphinxcontrib-serializinghtml python-urllib3 python-webencodings acl acpid argp-standalone at-spi2-atk at-spi2-core atk atkmm attr binutils brotli bzip2 c-ares cacerts cairo cups dbus dhcp efibootmgr efivar elfutils elogind eudev execline expat findutils freetype2 fribidi gc gdbm gettext glew glib glibmm glm glu gmp gnutls gobject-introspection gperf grub guile gzip hwids i2pd iana-etc icu imlib2 intltool jansson js78 json-c json-glib jsoncpp kbd kmod krb5 lcms2 ldns libaio libarchive libcap libcap-ng libconfig libdwarf libedit libelf libev libevent libexif libffi libfm libfm-extra libgcrypt libgpg-error libgudev libidn libldap liblinear libluv libmbim libmpack libndp libnghttp libnl libnsl libp11-kit libpcap libpipeline libpng libpsl libptytty libqmi libqrtr libretls libsasl libseccomp libsigc++ libsigsegv libssh2 libtasn1 libtermkey libtirpc libtool libunistring libusb libuv libvterm libxcrypt libxml2 libxslt ljx lua lua-lpeg lua-mpack lua5-1 luajit lz4 lzo menu-cache mime-types mobile-broadband-provider-info modemmanager mpfr msgpack-c mtdev musl musl-fts musl-legacy-compat musl-obstack ncurses nettle networkmanager newt nodejs nspr nss nsss openntpd openrc openssl pahole pam pcre pcre2 pcsc-lite perl perl-xml-parser polkit popt psmisc queue-standalone re2 readline rtmpdump sbase sed sh shadow shared-mime-info skalibs slang snappy sqlite3 startup-notification sysklogd syslinux tar tcl tomlc99 tor tree-sitter tzdata ubase udev-rules unibilium utmps xxhash xz zip zlib zstd acpi base64 bash cpio curl dash diffutils dosfstools dracut e2fsprogs file flite fmt fzf gawk genfstab graphviz grep groff htop iftop ifupdown-ng inetutils iproute2 iw iwd keyutils less lm-sensors man-db mandoc mksh mpdscribble neofetch net-tools nmap openssh pciutils pdfgrep pm-utils procps-ng rhash rsync sort stty sudo tmux unzip usbutils util-linux webfs wget which wireless-tools wpa_supplicant adwaita-icon-theme berry bspwm cairomm dmenu gdk-pixbuf graphite gsettings-desktop-schemas gtk2 gtk3 gtkmm3 harfbuzz hicolor-icon-theme iceauth intel-vaapi-driver libdmx libdrm libepoxy libevdev libfontenc libfs libice libinput libpciaccess libsm libva libvdpau libvdpau-va-gl libwacom libx11 libxau libxaw libxcb libxcomposite libxcursor libxcvt libxdamage libxdmcp libxext libxfixes libxfont2 libxft libxi libxinerama libxkbcommon libxkbfile libxmu libxpm libxrandr libxrender libxres libxscrnsaver libxshmfence libxt libxtst libxv libxvmc libxxf86dga libxxf86vm luit maim mesa mkfontscale motif pango pangomm picom pixman rofi sdl2 sessreg setxkbmap slock slop smproxy spice-protocol sxhkd wayland wayland-protocols x11perf xauth xautolock xbacklight xbitmaps xcb-proto xcb-util xcb-util-cursor xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm xclip xclock xcmsdb xcursor-themes xcursorgen xdg-utils xdpyinfo xdriinfo xev xeyes xf86-input-evdev xf86-input-libinput xf86-input-synaptics xf86-input-wacom xf86-video-amdgpu xf86-video-ati xf86-video-fbdev xf86-video-intel xf86-video-nouveau xf86-video-qxl xf86-video-vmware xgamma xhost xinput xkbcomp xkbevd xkbutils xkeyboardconfig xkill xlsatoms xlsclients xmessage xmodmap xorg-libs xorg-server xorg-util-macros xorg-xinit xorgproto xpr xprop xrandr xrdb xrefresh xsel xset xsetroot xss-lock xtrans xvinfo xwd xwininfo xwud sysconfigs xib xibuild xipkg xiutils"
+DEPS=" arandr cava chromium feh firefox gimp links lynx mpv ncmpcpp neovim pcmanfm polybar rxvt-unicode sxiv vim xclock-cat xlinks xterm asciidoc autoconf autoconf-archive autoconf2-13 automake bc bison boost cbindgen check cmake cmake-extra cmake-modules dejagnu distcc docbook-dtd docbook-xml docbook-xsl docbook4-xml doxygen expect flex gcc gdb git go gtk-doc help2man icecream imake itstool libexecinfo llvm m4 make meson mpc nasm ninja patch pkg-config rust scdoc sgml-common strace swig texinfo uthash vala waf xmlto xorg-cf-files encodings font-adobe-utopia-type1 font-alias font-bh-ttf font-bh-type1 font-ibm-type1 font-misc-ethiopic font-noto font-opensans font-util font-xfree86-type1 fontconfig extremetuxracer b43-fwcutter linux linux-headers alsa-firmware alsa-lib alsa-plugins alsa-tools alsa-utils aom audiofile babl dav1d exiv2 faac faad2 fdk-aac ffmpeg ffmpeg4 flac gegl gexiv2 giflib lame libass libcanberra libid3tag libjpeg-turbo libmad libmpdclient libmypaint libogg libraw librist librsvg libsamplerate libsndfile libsrt libtheora libvorbis libvpx libwebp mpc-mpd mpd mypaint-brushes openal-soft openjpeg opus pipewire poppler poppler-data pulseaudio pulsemixer sfml soxr tiff v4l-utils vidstab wavpack x264 x265 xvidcore python python-Jinja2 python-alabaster python-appdirs python-babel python-certifi python-chardet python-docutils python-gobject python-html5lib python-idna python-imagesize python-jinja python-lxml python-mach python-mako python-markupsafe python-packaging python-pip python-pygments python-pyparsing python-pytz python-requests python-six python-snowballstemmer python-sphinx python-sphinx-alabaster-theme python-sphinxcontrib-applehelp python-sphinxcontrib-devhelp python-sphinxcontrib-htmlhelp python-sphinxcontrib-jsmath python-sphinxcontrib-qthelp python-sphinxcontrib-serializinghtml python-urllib3 python-webencodings acl acpid argp-standalone at-spi2-atk at-spi2-core atk atkmm attr binutils brotli bzip2 c-ares cacerts cairo cups dbus dhcp efibootmgr efivar elfutils elogind eudev execline expat fftw findutils freetype2 fribidi gc gdbm gettext glew glib glib-networking glibmm glm glu gmp gnutls gobject-introspection gperf grub guile gzip hwids i2pd iana-etc icu imlib2 iniparser intltool jansson js78 json-c json-glib jsoncpp kbd kmod krb5 lcms2 ldns libaio libarchive libcap libcap-ng libconfig libdwarf libedit libelf libev libevent libexif libffi libfm libfm-extra libgcrypt libgpg-error libgudev libidn libldap liblinear libluv libmbim libmpack libndp libnghttp libnl libnsl libp11-kit libpcap libpipeline libpng libproxy libpsl libptytty libqmi libqrtr libretls libsasl libseccomp libsigc++ libsigsegv libssh2 libtasn1 libtermkey libtirpc libtool libucontext libunistring libusb libuv libvterm libxcrypt libxml2 libxslt ljx lua lua-lpeg lua-mpack lua5-1 luajit lz4 lzo menu-cache mime-types mobile-broadband-provider-info modemmanager mpfr msgpack-c mtdev musl musl-fts musl-legacy-compat musl-obstack ncurses nettle networkmanager newt nodejs nspr nss nsss openntpd openrc openssl pahole pam pcre pcre2 pcsc-lite perl perl-xml-parser polkit popt psmisc queue-standalone re2 readline rtmpdump ruby sbase sed sh shadow shared-mime-info skalibs slang snappy sqlite3 startup-notification sysklogd syslinux tar tcl tomlc99 tor tree-sitter tzdata ubase udev-rules unibilium utmps xxhash xz zip zlib zstd acpi base64 bash cpio curl dash diffutils dosfstools dracut e2fsprogs file flite fmt fzf gawk genfstab graphviz grep groff htop iftop ifupdown-ng inetutils iproute2 iw iwd keyutils less lm-sensors man-db mandoc mksh mpdscribble neofetch net-tools nmap openssh pciutils pdfgrep pm-utils procps-ng rhash rsync sort stty sudo tmux unzip usbutils util-linux webfs wget which wireless-tools wpa_supplicant adwaita-icon-theme berry bspwm cairomm dmenu gdk-pixbuf graphite gsettings-desktop-schemas gtk2 gtk3 gtkmm3 harfbuzz hicolor-icon-theme iceauth intel-vaapi-driver libdmx libdrm libepoxy libevdev libfontenc libfs libice libinput libpciaccess libsm libva libvdpau libvdpau-va-gl libwacom libx11 libxau libxaw libxcb libxcomposite libxcursor libxcvt libxdamage libxdmcp libxext libxfixes libxfont2 libxft libxi libxinerama libxkbcommon libxkbfile libxmu libxpm libxrandr libxrender libxres libxscrnsaver libxshmfence libxt libxtst libxv libxvmc libxxf86dga libxxf86vm luit maim mesa mkfontscale motif pango pangomm picom pixman rofi sdl2 sessreg setxkbmap slock slop smproxy spice-protocol sxhkd wayland wayland-protocols x11perf xauth xautolock xbacklight xbitmaps xcb-proto xcb-util xcb-util-cursor xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm xclip xclock xcmsdb xcursor-themes xcursorgen xdg-utils xdpyinfo xdriinfo xev xeyes xf86-input-evdev xf86-input-libinput xf86-input-synaptics xf86-input-wacom xf86-video-amdgpu xf86-video-ati xf86-video-fbdev xf86-video-intel xf86-video-nouveau xf86-video-qxl xf86-video-vmware xgamma xhost xinput xkbcomp xkbevd xkbutils xkeyboardconfig xkill xlsatoms xlsclients xmessage xmodmap xorg-libs xorg-server xorg-util-macros xorg-xinit xorgproto xpr xprop xrandr xrdb xrefresh xsel xset xsetroot xss-lock xtrans xvinfo xwd xwininfo xwud sysconfigs xib xibuild xipkg xiutils"
diff --git a/repo/meta/repo-apps/repo-apps.xibuild b/repo/meta/repo-apps/repo-apps.xibuild
index d0cc0ba..50ba639 100644
--- a/repo/meta/repo-apps/repo-apps.xibuild
+++ b/repo/meta/repo-apps/repo-apps.xibuild
@@ -2,4 +2,4 @@
# This file was automatically generated, do not edit!
DESC="All the the packages available in apps"
-DEPS=" arandr chromium feh firefox gimp links lynx mpv ncmpcpp neovim pavucontrol pcmanfm polybar rxvt-unicode vim xclock-cat xlinks xterm"
+DEPS=" arandr cava chromium feh firefox gimp links lynx mpv ncmpcpp neovim pcmanfm polybar rxvt-unicode sxiv vim xclock-cat xlinks xterm"
diff --git a/repo/meta/repo-media/repo-media.xibuild b/repo/meta/repo-media/repo-media.xibuild
index 52c50b1..e0708ea 100644
--- a/repo/meta/repo-media/repo-media.xibuild
+++ b/repo/meta/repo-media/repo-media.xibuild
@@ -2,4 +2,4 @@
# This file was automatically generated, do not edit!
DESC="All the the packages available in media"
-DEPS=" alsa-firmware alsa-lib alsa-plugins alsa-tools alsa-utils aom audiofile babl dav1d exiv2 faac faad2 fdk-aac ffmpeg ffmpeg4 flac gexiv2 giflib lame libass libcanberra libid3tag libjpeg-turbo libmad libmpdclient libmypaint libogg libraw librist librsvg libsamplerate libsndfile libsrt libtheora libvorbis libvpx libwebp mpc-mpd mpd openal-soft openjpeg opus pipewire poppler pulseaudio pulsemixer sfml soxr tiff v4l-utils vidstab wavpack x264 x265 xvidcore"
+DEPS=" alsa-firmware alsa-lib alsa-plugins alsa-tools alsa-utils aom audiofile babl dav1d exiv2 faac faad2 fdk-aac ffmpeg ffmpeg4 flac gegl gexiv2 giflib lame libass libcanberra libid3tag libjpeg-turbo libmad libmpdclient libmypaint libogg libraw librist librsvg libsamplerate libsndfile libsrt libtheora libvorbis libvpx libwebp mpc-mpd mpd mypaint-brushes openal-soft openjpeg opus pipewire poppler poppler-data pulseaudio pulsemixer sfml soxr tiff v4l-utils vidstab wavpack x264 x265 xvidcore"
diff --git a/repo/meta/repo-system/repo-system.xibuild b/repo/meta/repo-system/repo-system.xibuild
index 82309d9..a65f751 100644
--- a/repo/meta/repo-system/repo-system.xibuild
+++ b/repo/meta/repo-system/repo-system.xibuild
@@ -2,4 +2,4 @@
# This file was automatically generated, do not edit!
DESC="All the the packages available in system"
-DEPS=" acl acpid argp-standalone at-spi2-atk at-spi2-core atk atkmm attr binutils brotli bzip2 c-ares cacerts cairo cups dbus dhcp efibootmgr efivar elfutils elogind eudev execline expat findutils freetype2 fribidi gc gdbm gettext glew glib glibmm glm glu gmp gnutls gobject-introspection gperf grub guile gzip hwids i2pd iana-etc icu imlib2 intltool jansson js78 json-c json-glib jsoncpp kbd kmod krb5 lcms2 ldns libaio libarchive libcap libcap-ng libconfig libdwarf libedit libelf libev libevent libexif libffi libfm libfm-extra libgcrypt libgpg-error libgudev libidn libldap liblinear libluv libmbim libmpack libndp libnghttp libnl libnsl libp11-kit libpcap libpipeline libpng libpsl libptytty libqmi libqrtr libretls libsasl libseccomp libsigc++ libsigsegv libssh2 libtasn1 libtermkey libtirpc libtool libunistring libusb libuv libvterm libxcrypt libxml2 libxslt ljx lua lua-lpeg lua-mpack lua5-1 luajit lz4 lzo menu-cache mime-types mobile-broadband-provider-info modemmanager mpfr msgpack-c mtdev musl musl-fts musl-legacy-compat musl-obstack ncurses nettle networkmanager newt nodejs nspr nss nsss openntpd openrc openssl pahole pam pcre pcre2 pcsc-lite perl perl-xml-parser polkit popt psmisc queue-standalone re2 readline rtmpdump sbase sed sh shadow shared-mime-info skalibs slang snappy sqlite3 startup-notification sysklogd syslinux tar tcl tomlc99 tor tree-sitter tzdata ubase udev-rules unibilium utmps xxhash xz zip zlib zstd"
+DEPS=" acl acpid argp-standalone at-spi2-atk at-spi2-core atk atkmm attr binutils brotli bzip2 c-ares cacerts cairo cups dbus dhcp efibootmgr efivar elfutils elogind eudev execline expat fftw findutils freetype2 fribidi gc gdbm gettext glew glib glib-networking glibmm glm glu gmp gnutls gobject-introspection gperf grub guile gzip hwids i2pd iana-etc icu imlib2 iniparser intltool jansson js78 json-c json-glib jsoncpp kbd kmod krb5 lcms2 ldns libaio libarchive libcap libcap-ng libconfig libdwarf libedit libelf libev libevent libexif libffi libfm libfm-extra libgcrypt libgpg-error libgudev libidn libldap liblinear libluv libmbim libmpack libndp libnghttp libnl libnsl libp11-kit libpcap libpipeline libpng libproxy libpsl libptytty libqmi libqrtr libretls libsasl libseccomp libsigc++ libsigsegv libssh2 libtasn1 libtermkey libtirpc libtool libucontext libunistring libusb libuv libvterm libxcrypt libxml2 libxslt ljx lua lua-lpeg lua-mpack lua5-1 luajit lz4 lzo menu-cache mime-types mobile-broadband-provider-info modemmanager mpfr msgpack-c mtdev musl musl-fts musl-legacy-compat musl-obstack ncurses nettle networkmanager newt nodejs nspr nss nsss openntpd openrc openssl pahole pam pcre pcre2 pcsc-lite perl perl-xml-parser polkit popt psmisc queue-standalone re2 readline rtmpdump ruby sbase sed sh shadow shared-mime-info skalibs slang snappy sqlite3 startup-notification sysklogd syslinux tar tcl tomlc99 tor tree-sitter tzdata ubase udev-rules unibilium utmps xxhash xz zip zlib zstd"
diff --git a/repo/system/dbus-glib/dbus-glib.xibuild b/repo/system/dbus-glib/dbus-glib.xibuild
new file mode 100644
index 0000000..d831891
--- /dev/null
+++ b/repo/system/dbus-glib/dbus-glib.xibuild
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+NAME="dbus-glib"
+DESC="GLib bindings for DBUS"
+
+MAKEDEPS="make "
+DEPS="dbus glib expat musl "
+
+PKG_VER=0.112
+SOURCE="https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-$PKG_VER.tar.gz"
+
+build () {
+ ./configure \
+ --prefix=/usr \
+ --bindir=/usr/bin \
+ --sysconfdir=/etc \
+ --enable-static=no \
+ --enable-bash-completion=no
+ make
+}
+
+package () {
+ make DESTDIR=$PKG_DEST install
+}
diff --git a/repo/system/fftw/cycle.h.patch b/repo/system/fftw/cycle.h.patch
new file mode 100644
index 0000000..7e55d3e
--- /dev/null
+++ b/repo/system/fftw/cycle.h.patch
@@ -0,0 +1,54 @@
+diff --git a/kernel/cycle.h b/kernel/cycle.h
+index a0e86f3..3ff4c0e 100644
+--- a/kernel/cycle.h
++++ b/kernel/cycle.h
+@@ -368,22 +368,6 @@ INLINE_ELAPSED(inline)
+ #define HAVE_TICK_COUNTER
+ #endif
+
+-/*----------------------------------------------------------------*/
+-/* S390, courtesy of James Treacy */
+-#if defined(__GNUC__) && defined(__s390__) && !defined(HAVE_TICK_COUNTER)
+-typedef unsigned long long ticks;
+-
+-static __inline__ ticks getticks(void)
+-{
+- ticks cycles;
+- __asm__("stck 0(%0)" : : "a" (&(cycles)) : "memory", "cc");
+- return cycles;
+-}
+-
+-INLINE_ELAPSED(__inline__)
+-
+-#define HAVE_TICK_COUNTER
+-#endif
+ /*----------------------------------------------------------------*/
+ #if defined(__GNUC__) && defined(__alpha__) && !defined(HAVE_TICK_COUNTER)
+ /*
+@@ -436,26 +420,6 @@ INLINE_ELAPSED(__inline)
+
+ #define HAVE_TICK_COUNTER
+ #endif
+-/*----------------------------------------------------------------*/
+-/* SGI/Irix */
+-#if defined(HAVE_CLOCK_GETTIME) && defined(CLOCK_SGI_CYCLE) && !defined(HAVE_TICK_COUNTER) && !defined(__ANDROID__)
+-typedef struct timespec ticks;
+-
+-static inline ticks getticks(void)
+-{
+- struct timespec t;
+- clock_gettime(CLOCK_SGI_CYCLE, &t);
+- return t;
+-}
+-
+-static inline double elapsed(ticks t1, ticks t0)
+-{
+- return ((double)t1.tv_sec - (double)t0.tv_sec) * 1.0E9 +
+- ((double)t1.tv_nsec - (double)t0.tv_nsec);
+-}
+-#define HAVE_TICK_COUNTER
+-#endif
+-
+ /*----------------------------------------------------------------*/
+ /* Cray UNICOS _rtc() intrinsic function */
+ #if defined(HAVE__RTC) && !defined(HAVE_TICK_COUNTER)
diff --git a/repo/system/fftw/fftw.xibuild b/repo/system/fftw/fftw.xibuild
new file mode 100644
index 0000000..41dd124
--- /dev/null
+++ b/repo/system/fftw/fftw.xibuild
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+NAME="fftw"
+DESC="Discrete Fourier transform (DFT) library"
+
+MAKEDEPS="make tar"
+DEPS="musl "
+
+PKG_VER=3.3.10
+SOURCE="http://www.fftw.org/fftw-$PKG_VER.tar.gz"
+ADDITIONAL="cycle.h.patch "
+
+precisions="single double long-double"
+
+prepare () {
+ for i in $precisions; do
+ mkdir $i
+ tar -xf fftw-$PKG_VER.tar.gz -C $i
+ done
+}
+
+build () {
+ local i; for i in $precisions; do
+ case "$i" in
+ single) cf="--enable-single";;
+ double) cf="";;
+ long-double) cf="--enable-long-double";;
+ esac
+
+ case "$i" in
+ single | double)
+ cf="$cf --enable-sse2 --enable-avx";;
+ esac
+
+ printf "Building for $i precision ($cf)"
+ cd $BUILD_ROOT/$i/fftw-$PKG_VER
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --enable-shared \
+ --enable-threads \
+ $cf
+ make
+ done
+}
+
+package () {
+ for i in $precisions; do
+ cd $BUILD_ROOT/$i/fftw-$PKG_VER
+ make DESTDIR=$PKG_DEST install
+ done
+}
diff --git a/repo/system/gettext/fix-xgettext-version-string.patch b/repo/system/gettext/fix-xgettext-version-string.patch
new file mode 100644
index 0000000..de35749
--- /dev/null
+++ b/repo/system/gettext/fix-xgettext-version-string.patch
@@ -0,0 +1,11 @@
+--- a/src/xgettext.sh 2020-04-06 11:43:29.000000000 +0100
++++ b/src/xgettext.sh 2020-04-06 11:43:29.000000000 +0100
+@@ -16,7 +16,7 @@
+ }
+
+ show_version() {
+- printf "%s\n", "xgettext (GNU gettext-tools compatible) 99.9999.9999\n"
++ printf "%s\n\n" "xgettext (GNU gettext-tools) 0.19.8.1"
+ exit 0
+ }
+
diff --git a/repo/system/gettext/flip-macro-logic.patch b/repo/system/gettext/flip-macro-logic.patch
new file mode 100644
index 0000000..277bc7a
--- /dev/null
+++ b/repo/system/gettext/flip-macro-logic.patch
@@ -0,0 +1,20 @@
+--- gettext-tiny-0.2.0/include/libintl.h.old 2017-08-02 06:14:20.000000000 -0500
++++ gettext-tiny-0.2.0/include/libintl.h 2018-06-15 02:31:14.241446687 -0500
+@@ -34,14 +34,14 @@
+ #undef gettext_noop
+ #define gettext_noop(X) X
+
+-#ifndef LIBINTL_NO_MACROS
++#ifdef LIBINTL_MACROS
+ /* if these macros are defined, configure checks will detect libintl as
+ * built into the libc because test programs will work without -lintl.
+ * for example:
+ * checking for ngettext in libc ... yes
+ * the consequence is that -lintl will not be added to the LDFLAGS.
+- * so if for some reason you want that libintl.a gets linked,
+- * add -DLIBINTL_NO_MACROS=1 to your CPPFLAGS. */
++ * so if for some reason you dont want that libintl.a gets linked,
++ * add -DLIBINTL_MACROS=1 to your CPPFLAGS. */
+
+ #define gettext(X) ((char*) (X))
+ #define dgettext(dom, X) ((void)(dom), (char*) (X))
diff --git a/repo/system/gettext/gettext.xibuild b/repo/system/gettext/gettext.xibuild
index 11b6754..8da13a5 100644
--- a/repo/system/gettext/gettext.xibuild
+++ b/repo/system/gettext/gettext.xibuild
@@ -8,15 +8,14 @@ SOURCE=https://ftp.barfooze.de/pub/sabotage/tarballs/gettext-tiny-$PKG_VER.tar.x
DESC="Lightweight replacement for tools used in the GNU gettext suite"
ADDITIONAL="
- https://raw.githubusercontent.com/dslm4515/Musl-LFS/master/patches/gettext-tiny-adiele/line-length.patch
- https://raw.githubusercontent.com/dslm4515/Musl-LFS/master/patches/gettext-tiny-adiele/respect-cflags.patch
- https://raw.githubusercontent.com/dslm4515/Musl-LFS/master/patches/gettext-tiny-adiele/stop-doing-macro-crap.patch
+ line-length.patch
+ respect-cflags.patch
+ flip-macro-logic.patch
+ fix-xgettext-version-string.patch
"
prepare () {
- for p in *.patch; do
- patch -Np1 -i $p || true
- done
+ apply_patches
}
build () {
diff --git a/repo/system/gettext/line-length.patch b/repo/system/gettext/line-length.patch
new file mode 100644
index 0000000..0ba9781
--- /dev/null
+++ b/repo/system/gettext/line-length.patch
@@ -0,0 +1,15 @@
+https://github.com/sabotage-linux/gettext-tiny/issues/50
+
+We're losing the battle of the bulge; someone really should make this use malloc.
+
+--- gettext-tiny-0.3.1_git20191130/src/msgfmt.c.old 2020-01-14 08:03:11.000000000 +0000
++++ gettext-tiny-0.3.1_git20191130/src/msgfmt.c 2020-01-21 18:58:28.257709860 +0000
+@@ -160,7 +160,7 @@
+
+ int process(FILE *in, FILE *out, bool strict) {
+ struct mo_hdr mohdr = def_hdr;
+- char line[8192]; char *lp;
++ char line[12288]; char *lp;
+ size_t off, i;
+ enum po_error t;
+ char convbuf[32768];
diff --git a/repo/system/gettext/respect-cflags.patch b/repo/system/gettext/respect-cflags.patch
new file mode 100644
index 0000000..dd1cf3f
--- /dev/null
+++ b/repo/system/gettext/respect-cflags.patch
@@ -0,0 +1,11 @@
+--- gettext-tiny-0.2.0/Makefile.old 2017-08-02 06:14:20.000000000 -0500
++++ gettext-tiny-0.2.0/Makefile 2018-06-16 21:21:57.148735892 -0500
+@@ -32,7 +32,7 @@
+ ALL_M4S=$(sort $(wildcard m4/*.m4))
+ ALL_DATA=$(sort $(wildcard data/*))
+
+-CFLAGS=-O0 -fPIC
++CFLAGS ?= -O0 -fPIC
+
+ AR ?= $(CROSS_COMPILE)ar
+ RANLIB ?= $(CROSS_COMPILE)ranlib
diff --git a/repo/system/glib-networking/glib-networking.xibuild b/repo/system/glib-networking/glib-networking.xibuild
new file mode 100644
index 0000000..88e7244
--- /dev/null
+++ b/repo/system/glib-networking/glib-networking.xibuild
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+NAME="glib-networking"
+DESC="Networking support for GLib"
+
+MAKEDEPS="meson ninja "
+DEPS="glib cacerts gnutls gsettings-desktop-schemas intltool musl libproxy"
+
+PKG_VER=2.72.0
+SOURCE="https://download.gnome.org/sources/glib-networking/${PKG_VER%.*}/glib-networking-$PKG_VER.tar.xz"
+
+build () {
+ mkdir build &&
+ cd build &&
+ meson --prefix=/usr \
+ -Dopenssl=disabled \
+ -Dgnutls=enabled \
+ .. &&
+ ninja
+}
+
+package () {
+ DESTDIR=$PKG_DEST ninja install
+}
diff --git a/repo/system/iniparser/iniparser.xibuild b/repo/system/iniparser/iniparser.xibuild
new file mode 100644
index 0000000..7655cf5
--- /dev/null
+++ b/repo/system/iniparser/iniparser.xibuild
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+NAME="iniparser"
+DESC="C library for parsing INI-style files"
+
+MAKEDEPS="make "
+DEPS="musl "
+
+PKG_VER=4.1
+SOURCE="https://github.com/ndevilla/iniparser/archive/v$PKG_VER.tar.gz"
+ADDITIONAL="rpath.patch "
+
+build () {
+ make
+}
+
+package () {
+ install -d "$PKG_DEST"/usr/lib "$PKG_DEST"/usr/include
+ install -m 644 src/dictionary.h "$PKG_DEST"/usr/include/dictionary.h
+ install -m 644 src/iniparser.h "$PKG_DEST"/usr/include/iniparser.h
+ install -m 755 libiniparser.so.1 "$PKG_DEST"/usr/lib/libiniparser.so.1
+ ln -s libiniparser.so.1 "$PKG_DEST"/usr/lib/libiniparser.so
+
+}
diff --git a/repo/system/iniparser/rpath.patch b/repo/system/iniparser/rpath.patch
new file mode 100644
index 0000000..ef7097f
--- /dev/null
+++ b/repo/system/iniparser/rpath.patch
@@ -0,0 +1,10 @@
+--- a/Makefile
++++ b/Makefile
+@@ -21,7 +21,6 @@
+
+ SHLD = ${CC} ${CFLAGS}
+ LDSHFLAGS = -shared -Wl,-Bsymbolic
+-LDFLAGS += -Wl,-rpath -Wl,/usr/lib -Wl,-rpath,/usr/lib
+
+ # .so.0 is for version 3.x, .so.1 is 4.x
+ SO_TARGET ?= libiniparser.so.1
diff --git a/repo/system/libproxy/libproxy.xibuild b/repo/system/libproxy/libproxy.xibuild
new file mode 100644
index 0000000..a844754
--- /dev/null
+++ b/repo/system/libproxy/libproxy.xibuild
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+NAME="libproxy"
+DESC="Library handling all the details of proxy configuration"
+
+MAKEDEPS="cmake "
+DEPS="musl libgcc libstdc++"
+
+PKG_VER=0.4.17
+SOURCE="https://github.com/libproxy/libproxy/archive/$PKG_VER.tar.gz"
+
+build () {
+ cmake -B build \
+ -DCMAKE_BUILD_TYPE=None \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIBEXEC_INSTALL_DIR=lib \
+ -DMODULE_INSTALL_DIR=/usr/lib/libproxy/$PKG_VER/modules \
+ -DWITH_PERL=OFF \
+ -DWITH_PYTHON3=ON \
+ -DPYTHON3_EXECUTABLE=/usr/bin/python3
+
+ cmake --build build
+}
+
+package () {
+ DESTDIR="$PKG_DEST" cmake --install build
+}
diff --git a/repo/system/libucontext/libucontext.xibuild b/repo/system/libucontext/libucontext.xibuild
new file mode 100644
index 0000000..801490b
--- /dev/null
+++ b/repo/system/libucontext/libucontext.xibuild
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+NAME="libucontext"
+DESC="ucontext function implementations"
+
+MAKEDEPS="make "
+DEPS="musl "
+
+PKG_VER=1.2
+SOURCE="https://distfiles.dereferenced.org/libucontext/libucontext-$PKG_VER.tar.xz"
+
+build () {
+ make PREFIX=/usr
+}
+
+package () {
+ make PREFIX=/usr DESTDIR=$PKG_DEST install
+}
diff --git a/repo/system/nspr/nspr.xibuild b/repo/system/nspr/nspr.xibuild
index 0b5fdc5..7763d74 100644
--- a/repo/system/nspr/nspr.xibuild
+++ b/repo/system/nspr/nspr.xibuild
@@ -3,7 +3,7 @@
MAKEDEPS="make "
DEPS="musl"
-PKG_VER=4.33
+PKG_VER=4.34
SOURCE=https://archive.mozilla.org/pub/nspr/releases/v$PKG_VER/src/nspr-$PKG_VER.tar.gz
DESC="Netscape Portable Runtime"
diff --git a/repo/system/nss/nss.xibuild b/repo/system/nss/nss.xibuild
index 7318173..fd19569 100644
--- a/repo/system/nss/nss.xibuild
+++ b/repo/system/nss/nss.xibuild
@@ -3,7 +3,7 @@
MAKEDEPS="make perl python patch"
DEPS="nspr libp11-kit sh zlib sqlite3"
-PKG_VER=3.74
+PKG_VER=3.76
SOURCE=https://archive.mozilla.org/pub/security/nss/releases/NSS_$(echo $PKG_VER | sed 's/\./_/g')_RTM/src/nss-$PKG_VER.tar.gz
diff --git a/repo/system/ruby/dont-install-bundled-gems.patch b/repo/system/ruby/dont-install-bundled-gems.patch
new file mode 100644
index 0000000..2a913b9
--- /dev/null
+++ b/repo/system/ruby/dont-install-bundled-gems.patch
@@ -0,0 +1,20 @@
+Don't install bundled gems - we package them separately.
+
+--- a/tool/rbinstall.rb
++++ b/tool/rbinstall.rb
+@@ -1003,6 +1003,7 @@
+ end
+ end
+
++=begin XXX-Patched
+ install?(:ext, :comm, :gem, :'bundled-gems') do
+ if CONFIG['CROSS_COMPILING'] == 'yes'
+ # The following hacky steps set "$ruby = BASERUBY" in tool/fake.rb
+@@ -1104,6 +1105,7 @@
+ puts "skip installing bundled gems because of lacking zlib"
+ end
+ end
++=end
+
+ parse_args()
+
diff --git a/repo/system/ruby/ruby.xibuild b/repo/system/ruby/ruby.xibuild
new file mode 100644
index 0000000..3cc7f7b
--- /dev/null
+++ b/repo/system/ruby/ruby.xibuild
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+NAME="ruby"
+DESC="An object-oriented language for quick and easy programming"
+
+MAKEDEPS="make "
+DEPS="sbase cacerts gmp libucontext musl zlib "
+
+PKG_VER=3.1.2
+SOURCE="https://cache.ruby-lang.org/pub/ruby/${PKG_VER%.*}/ruby-$PKG_VER.tar.gz"
+ADDITIONAL="dont-install-bundled-gems.patch dont-install-bundled-gems.patch test_insns-lower-recursion-depth.patch "
+
+prepare () {
+ apply_patches
+}
+
+build () {
+ export CFLAGS="-O2 -fno-omit-frame-pointer -fno-strict-aliasing"
+ export CPPFLAGS="-O2 -fno-omit-frame-pointer -fno-strict-aliasing"
+
+ # Needed for coroutine stuff
+ export LIBS="-lucontext"
+
+ # ruby saves path to install. we want use $PATH
+ export INSTALL=install
+
+ # the configure script does not detect isnan/isinf as macros
+ export ac_cv_func_isnan=yes
+ export ac_cv_func_isinf=yes
+
+
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --with-sitedir=/usr/local/lib/site_ruby \
+ --with-search-path="/usr/lib/site_ruby/\$(ruby_ver)/x86_64-linux" \
+ --enable-pthread \
+ --disable-rpath \
+ --enable-shared \
+ --with-mantype=man
+ make
+}
+
+package () {
+ make DESTDIR=$PKG_DEST install
+}
diff --git a/repo/system/ruby/test_insns-lower-recursion-depth.patch b/repo/system/ruby/test_insns-lower-recursion-depth.patch
new file mode 100644
index 0000000..0069720
--- /dev/null
+++ b/repo/system/ruby/test_insns-lower-recursion-depth.patch
@@ -0,0 +1,47 @@
+The patched test is a recursion function. We have lower stack size,
+so we hit SystemStackError sooner than on other platforms.
+
+ #361 test_insns.rb:389:in `block in <top (required)>':
+ # recursive once
+ def once n
+ return %r/#{
+ if n == 0
+ true
+ else
+ once(n-1) # here
+ end
+ }/ox
+ end
+ x = once(128); x = once(7); x = once(16);
+ x =~ "true" && $~
+ #=> "" (expected "true") once
+ Stderr output is not empty
+ bootstraptest.tmp.rb:3:in `once': stack level too deep (SystemStackError)
+ from bootstraptest.tmp.rb:7:in `block in once'
+ from bootstraptest.tmp.rb:3:in `once'
+ from bootstraptest.tmp.rb:7:in `block in once'
+ from bootstraptest.tmp.rb:3:in `once'
+ from bootstraptest.tmp.rb:7:in `block in once'
+ from bootstraptest.tmp.rb:3:in `once'
+ from bootstraptest.tmp.rb:7:in `block in once'
+ from bootstraptest.tmp.rb:3:in `once'
+ ... 125 levels...
+ from bootstraptest.tmp.rb:3:in `once'
+ from bootstraptest.tmp.rb:7:in `block in once'
+ from bootstraptest.tmp.rb:3:in `once'
+ from bootstraptest.tmp.rb:11:in `<main>'
+ Test_insns.rb FAIL 1/187
+ FAIL 1/1197 tests failed
+ Make: *** [uncommon.mk:666: yes-btest-ruby] Error 1
+
+--- a/bootstraptest/test_insns.rb
++++ b/bootstraptest/test_insns.rb
+@@ -274,7 +274,7 @@
+ end
+ }/ox
+ end
+- x = once(128); x = once(7); x = once(16);
++ x = once(32); x = once(7); x = once(16);
+ x =~ "true" && $~
+ },
+ [ 'once', <<-'},', ], # {
diff --git a/repo/test.sh b/repo/test.sh
new file mode 100644
index 0000000..a531f72
--- /dev/null
+++ b/repo/test.sh
@@ -0,0 +1,46 @@
+for xipkg in $(find /var/lib/xib/repo -name '*.xipkg'); do
+ name=$(basename $xipkg .xipkg)
+ buildfile=$(realpath $(find -name "$name.xibuild" | tail -1))
+ info_file=$xipkg.info
+ echo $name $buildfile
+
+ . $buildfile
+
+ pkg_ver=$PKG_VER
+ [ -z "$pkg_ver" ] && pkg_ver=$BRANCH
+ [ -z "$pkg_ver" ] && pkg_ver="latest"
+
+ {
+ echo "# XiPKG info file version $XIPKG_INFO_VERSION"
+ echo "# automatically generated from the built packages"
+ echo "NAME=$name"
+ echo "DESCRIPTION=$DESC"
+ echo "PKG_FILE=$name.xipkg"
+ echo "CHECKSUM=$(sha512sum $xipkg | awk '{ print $1 }')"
+ echo "VERSION=$pkg_ver"
+ echo "REVISION=$(cat ${buildfile%/*}/*.xibuild | sha512sum | cut -d' ' -f1)"
+ echo "SOURCE=$SOURCE"
+ echo "DATE=$(stat -t $xipkg | cut -d' ' -f13 | xargs date -d)"
+ echo "DEPS=${DEPS}"
+ echo "MAKE_DEPS=${MAKE_DEPS}"
+ echo "ORIGIN=$NAME"
+ } > $info_file
+
+
+
+done
+
+#for repo in $(ls); do
+# for package in $(ls $repo); do
+# [ -f "/var/lib/xib/repo/$repo/$package.xipkg.info" ] && {
+# [ -f "/var/lib/xib/repo/$repo/$package.xipkg" ] && {
+# sed -rni 's/^REVISION=.*$//' /var/lib/xib/repo/$repo/$package.xipkg.info
+# echo "$package";
+# printf "REVISION=%s" $(cat $repo/$package/*.xibuild | sha512sum | cut -d" " -f1) >> /var/lib/xib/repo/$repo/$package.xipkg.info;
+# true
+# } || {
+# rm /var/lib/xib/repo/$repo/$package.xipkg.info
+# }
+# }
+# done;
+#done
diff --git a/repo/xi/xibuild/xibuild.xibuild b/repo/xi/xibuild/xibuild.xibuild
index 7c55ab2..e163da7 100644
--- a/repo/xi/xibuild/xibuild.xibuild
+++ b/repo/xi/xibuild/xibuild.xibuild
@@ -3,7 +3,7 @@
MAKEDEPS=""
DEPS="xiutils parseconf tar unzip"
-PKG_VER=1.1
+PKG_VER=1.2
SOURCE=https://git.davidovski.xyz/xilinux/xibuild.git
BRANCH=v$PKG_VER
diff --git a/repo/xi/xipkg/xipkg.xibuild b/repo/xi/xipkg/xipkg.xibuild
index be1e45f..e31f047 100644
--- a/repo/xi/xipkg/xipkg.xibuild
+++ b/repo/xi/xipkg/xipkg.xibuild
@@ -3,7 +3,7 @@
MAKEDEPS="make"
DEPS="openssl curl dash xiutils findutils diffutils sed xichroot grep base64 sort"
-PKG_VER=1.3.1
+PKG_VER=1.4
SOURCE=https://git.davidovski.xyz/xilinux/xipkg.git
BRANCH="v$PKG_VER"
diff --git a/repo/xi/xiutils/xiutils.xibuild b/repo/xi/xiutils/xiutils.xibuild
index cbb1aa6..0c6ee70 100644
--- a/repo/xi/xiutils/xiutils.xibuild
+++ b/repo/xi/xiutils/xiutils.xibuild
@@ -3,7 +3,7 @@
MAKEDEPS="make gcc"
DEPS="musl sh"
-PKG_VER=1.4.1
+PKG_VER=1.5
SOURCE=https://git.davidovski.xyz/xilinux/xiutils.git
BRANCH="v$PKG_VER"