From 7e453a7f16746d8cac4e3a6d4236133225d4b80f Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 01:29:03 -0500 Subject: [PATCH 01/82] new blfs: media-video/ffmpeg-7.1.3 --- media-video/ffmpeg-7.1.3.PKGBUILD | 326 ++++++++++++++++++++++++++++++ 1 file changed, 326 insertions(+) create mode 100644 media-video/ffmpeg-7.1.3.PKGBUILD diff --git a/media-video/ffmpeg-7.1.3.PKGBUILD b/media-video/ffmpeg-7.1.3.PKGBUILD new file mode 100644 index 0000000..c3b74ac --- /dev/null +++ b/media-video/ffmpeg-7.1.3.PKGBUILD @@ -0,0 +1,326 @@ +pkgname=ffmpeg +pkgver=7.1.3 +_ver=${pkgver%.*} +pkgdesc='Complete solution to record, convert and stream audio and video' +arch=(x86_64) +homepage=https://ffmpeg.org +license=(GPL-3.0-only) +depends=( + bzip2 + dav1d + fontconfig + freetype + glibc + harfbuzz + libass + libdrm + libgl + libpulse + libraw1394 + libva + libwebp + libxml2 + opus + x264 + x265 + xz + zlib +) +makedepends=( + mesa + nasm + vulkan-headers +) +sources=("${pkgname}-${pkgver}.tar.xz" + "${pkgname}-${_ver}-patchset-2.tar.xz" #from gentoo +) +urls=("https://ffmpeg.org/releases/ffmpeg-${pkgver}.tar.xz" + "https://dev.gentoo.org/~ionen/distfiles/${sources[1]}" +) +sha512sums=("1231cb6fe8305e040565d9c2a05228af6e90ded88b8548b24b1e7c46964ea25e43db44eb2b677837c0d68bc4e2a10ea5db101c2d2a24d2e3132cd20d599b0da0" + "bde2e07e2284f9c59bfc3dd448d46f34e14e3983d01baac6b89efac1093dd804318c4770cebe16d84830b34325dcd0aa88cf56136b3529bd36651bb32d73632b" +) + +USE="bzip2 dav1d drm fontconfig gpl libass openssl opus postproc pulseaudio truetype vaapi vulkan webp x264 x265 xml zlib" +FFMPEG_IUSE_MAP=( + # [+]flag[:[^][!]opt1,...][@]], ^ = native-only, ! = override + # remember to keep LICENSE, REQUIRED_USE, and RESTRICT in sync + X:libxcb,libxcb-shape,libxcb-shm,libxcb-xfixes,xlib + alsa + amf + amrenc:libvo-amrwbenc@v3 + amr:libopencore-amrnb,libopencore-amrwb@v3 + appkit + bluray:libbluray + bs2b:libbs2b + bzip2:bzlib + cdio:libcdio + chromaprint + codec2:libcodec2 + cuda:cuda-llvm + +dav1d:libdav1d + ${FFMPEG_UNSLOTTED:+doc:^htmlpages} + +drm:libdrm + dvd:libdvdnav,libdvdread + fdk:libfdk-aac@nonfree + flite:libflite + +fontconfig:libfontconfig + frei0r + fribidi:libfribidi + gcrypt + gme:libgme + gmp:@v3 + +gnutls # unused if USE=openssl, default for bug #905113,#917627 + +gpl + gsm:libgsm + iec61883:libiec61883 + ieee1394:libdc1394 + jack:libjack + jpeg2k:libopenjpeg + jpegxl:libjxl + kvazaar:libkvazaar + ladspa + lame:libmp3lame + lcms:lcms2 + libaom + libaribb24:@v3 # reminder: req use on gpl unneeded if >=1.0.4 (not in tree) + +libass + libcaca + libilbc + liblc3 + libplacebo + librtmp:librtmp + libsoxr + lv2 + lzma + modplug:libmodplug + nvenc:cuvid,ffnvcodec,nvdec,nvenc + ocr:libtesseract + openal + opencl + opengl + openh264:libopenh264 + openmpt:libopenmpt + openssl:openssl,!gnutls@v3ifgpl # still LGPL2.1+ if USE=-gpl + opus:libopus + +postproc # exposed as a USE for clarity with the GPL requirement + pulseaudio:libpulse + qrcode:libqrencode + qsv:libvpl + quirc:libquirc + rabbitmq:^librabbitmq # no multilib + rav1e:^librav1e # no multilib + rubberband:librubberband + samba:libsmbclient@v3 # GPL-3+ only + sdl:sdl2 + shaderc:libshaderc + snappy:libsnappy + sndio + speex:libspeex + srt:libsrt + ssh:libssh + svg:librsvg + svt-av1:libsvtav1 + theora:libtheora + +truetype:libfreetype,libharfbuzz + twolame:libtwolame + v4l:libv4l2 + vaapi + vdpau + vidstab:libvidstab + vorbis:libvorbis + vpx:libvpx + vulkan + webp:libwebp + x264:libx264 + x265:libx265 + +xml:libxml2 + xvid:libxvid + zeromq:^libzmq # no multilib + zimg:libzimg + +zlib + zvbi:libzvbi +) +use() { + local f=" $1 " + [[ " ${USE} " == *"${f}"* ]] +} +use_enable() { + local flag="$1" opt="${2:-$1}" + if use "${flag}"; then + printf -- '--enable-%s' "${opt}" + else + printf -- '--disable-%s' "${opt}" + fi +} +multilib_native_use_enable() { + local flag="$1" opt="${2:-$1}" + use_enable "${flag}" "${opt}" +} + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + tar -xf ${distdir}/${sources[1]} + for _patch in patches/*; do + patch -p1 -i ${_patch} + done +} + +ffmpeg_build_optmap() { + local -n _map_ref="$1" # nameref: FFMPEG_IUSE_MAP + local -n _out_ref="$2" # nameref: 输出数组 conf_opts + + local v flag_raw flag license opt mod + local -A optmap=() licensemap=() + + for v in "${_map_ref[@]}"; do + # ebuild: [[ ${v} =~ \+?([^:]+):?([^@]*)@?(.*) ]] + # 例: + # "+drm:libdrm" + # "openssl:openssl,!gnutls@v3ifgpl" + # "fdk:libfdk-aac@nonfree" + if [[ ! "${v}" =~ ^\+?([^:]+):?([^@]*)@?(.*)$ ]]; then + echo "bad map entry: ${v}" >&2 + return 1 + fi + + flag_raw="${BASH_REMATCH[1]}" # 不含前导 + + flag="${flag_raw}" + opt="${BASH_REMATCH[2]}" + license="${BASH_REMATCH[3]}" + + # 省略 opt 列表则默认等于 flag + [[ -n "${opt}" ]] || opt="${flag}" + + # 逗号分隔的 opt 列表 + local optlist="${opt//,/ }" + for opt in ${optlist}; do + mod="${opt:0:1}" + # ebuild: v=${v#[\!\^]} + opt="${opt#!}" + opt="${opt#^}" + + if [[ "${mod}" == "!" ]]; then + # override: 若 flag enabled,则强制 disable 该 opt + if use "${flag}"; then + optmap["${opt}"]="--disable-${opt}" + unset 'licensemap["'"${opt}"'"]' || true + fi + else + # 若该 opt 尚未被写入,才生成(避免重复/被前面覆盖) + if [[ -z "${optmap["${opt}"]+x}" ]]; then + if [[ "${mod}" == "^" ]]; then + optmap["${opt}"]="$(multilib_native_use_enable "${flag}" "${opt}")" + else + optmap["${opt}"]="$(use_enable "${flag}" "${opt}")" + fi + if use "${flag}"; then + licensemap["${opt}"]="${license}" + fi + fi + fi + done + done + + # 处理 license 聚合开关(ebuild:for license in "${licensemap[@]}") + local lic + for lic in "${licensemap[@]}"; do + case "${lic}" in + v3ifgpl) + use gpl || continue + ;& # fallthrough(bash >=4) + v3) + optmap["v3"]="--enable-version3" + ;; + nonfree) + use gpl && optmap["nonfree"]="--enable-nonfree" + ;; + esac + done + + # 输出:把 optmap 的值都塞进 _out_ref(顺序不保证;需要稳定顺序可再排序) + local k + for k in "${!optmap[@]}"; do + _out_ref+=( "${optmap[$k]}" ) + done +} + +src_build() { + sed -i '/cflags -fdiagnostics-color/d' configure + + local prefix="/usr" + local conf_args=( + --prefix="${prefix}" + --libdir="${prefix}"/lib + --shlibdir="${prefix}"/lib + --mandir="${prefix}"/share/man + --docdir=/usr/share/doc/${pkgname}-${pkgver}/html + + --disable-stripping + --disable-debug + --disable-optimizations + --optflags=' ' + + # basic defaults that should not really need a USE + --enable-iconv + --enable-pic + --enable-shared + --disable-static + --enable-manpages + --disable-podpages + --disable-txtpages + # disabled primarily due to being unpackaged + --disable-decklink + --disable-libaribcaption + --disable-libdavs2 + --disable-libklvanc + --disable-liblcevc-dec + --disable-libmysofa + --disable-libopenvino + --disable-libshine + --disable-libtls + --disable-libuavs3d + --disable-libvvenc + --disable-libxavs + --disable-libxavs2 + --disable-libxevd + --disable-libxeve + --disable-pocketsphinx + --disable-rkmpp + --disable-vapoursynth + + # disabled for other or additional reasons + --disable-cuda-nvcc # prefer cuda-llvm for less issues + --disable-libcelt # obsolete (bug #664158) + --disable-libglslang # prefer USE=shaderc (bug #918989,#920283,#922333) + --disable-liblensfun # https://trac.ffmpeg.org/ticket/9112 (abandoned?) + --disable-libmfx # prefer libvpl for USE=qsv + --disable-libnpp # deprecated and not supported for cuda 13.0+ + --disable-libopencv # leaving for later due to circular opencv[ffmpeg] + --disable-librist # librist itself needs attention first (bug #822012) + --disable-libtensorflow # causes headaches, and is gone + --disable-libtorch # support may need special attention (bug #936127) + --disable-libvmaf # use ffmpeg-8+ instead, needs old vmaf (bug#968554) + --disable-mbedtls # messy with slots, tests underlinking issues + --disable-mmal # prefer USE=soc + --disable-omx # unsupported (bug #653386) + --disable-omx-rpi # ^ + ) + + ffmpeg_build_optmap FFMPEG_IUSE_MAP conf_args + leaf_info "${conf_args[*]}" + + ./configure "${conf_args[@]}" + make V=1 +} + +src_check() { + local -x LD_LIBRARY_PATH=$(printf %s: "${srcdir}"/lib*)${LD_LIBRARY_PATH} + make V=1 -k fate +} + +src_install() { + make DESTDIR="${pkgdir}" install +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 1d588b2f48ea6d628f7715e0e066a5c265e64c69 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 01:39:45 -0500 Subject: [PATCH 02/82] new bblfs: media-libs/alsa-topology-conf --- .../alsa-topology-conf-1.2.5.1.PKGBUILD | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 media-libs/alsa-topology-conf-1.2.5.1.PKGBUILD diff --git a/media-libs/alsa-topology-conf-1.2.5.1.PKGBUILD b/media-libs/alsa-topology-conf-1.2.5.1.PKGBUILD new file mode 100644 index 0000000..4e29619 --- /dev/null +++ b/media-libs/alsa-topology-conf-1.2.5.1.PKGBUILD @@ -0,0 +1,19 @@ +pkgname=alsa-topology-conf +pkgver=1.2.5.1 +pkgdesc="ALSA topology configuration files" +homepage="https://alsa-project.org/wiki/Main_Page" +licenses=("BSD") +sources=("${pkgname}-${pkgver}.tar.bz2") +urls=("https://www.alsa-project.org/files/pub/lib/${sources[0]}") +sha512sums=("b34176b213e1afcb61fee19b569d6422a7692b62cf08b0ef651f2fbb1eefe49f25ca6386d0bfcec7152d4b5ed3daa84edb900181d40169e777751ae033125374") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_install() { + install -vdm755 "${pkgdir}/usr/share/alsa/" + cp -rv topology "${pkgdir}/usr/share/alsa/" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 8e77349d46fed45860dc7da9be771e34084ee9dc Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 01:45:17 -0500 Subject: [PATCH 03/82] new bblfs: media-libs/alsa-ucm-conf-1.2.14 --- media-libs/alsa-ucm-conf-1.2.14.PKGBUILD | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 media-libs/alsa-ucm-conf-1.2.14.PKGBUILD diff --git a/media-libs/alsa-ucm-conf-1.2.14.PKGBUILD b/media-libs/alsa-ucm-conf-1.2.14.PKGBUILD new file mode 100644 index 0000000..f99fbff --- /dev/null +++ b/media-libs/alsa-ucm-conf-1.2.14.PKGBUILD @@ -0,0 +1,19 @@ +pkgname=alsa-ucm-conf +pkgver=1.2.14 +pkgdesc="ALSA ucm configuration files" +homepage="https://alsa-project.org/wiki/Main_Page" +licenses=("BSD") +sources=("${pkgname}-${pkgver}.tar.bz2") +urls=("https://www.alsa-project.org/files/pub/lib/${sources[0]}") +sha512sums=("a224e890919306bdcd606dfb873b089950c9fa89f24c02947692ee8ab1a05c419f2a8dc174440d17c8a9575cab293806630f2cb43d74677f7ef0d956b7883dc5") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_install() { + install -vdm755 "${pkgdir}/usr/share/alsa/" + cp -r ucm{,2} "${pkgdir}/usr/share/alsa/" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 4327854e5026719ce512d40d399adc2636d3b7af Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 02:04:15 -0500 Subject: [PATCH 04/82] new blfs: media-libs/alsa-lib-1.2.14 --- media-libs/alsa-lib-1.2.14.PKGBUILD | 66 ++++++ .../alsa-lib-1.1.6-missing_files.patch | 196 ++++++++++++++++++ 2 files changed, 262 insertions(+) create mode 100644 media-libs/alsa-lib-1.2.14.PKGBUILD create mode 100644 media-libs/alsa-lib-1.2.14/alsa-lib-1.1.6-missing_files.patch diff --git a/media-libs/alsa-lib-1.2.14.PKGBUILD b/media-libs/alsa-lib-1.2.14.PKGBUILD new file mode 100644 index 0000000..7bd5272 --- /dev/null +++ b/media-libs/alsa-lib-1.2.14.PKGBUILD @@ -0,0 +1,66 @@ +pkgname=alsa-lib +pkgver=1.2.14 +_commit="7e3a3c2b0a092d0f568ba3c98365030dd91cc877" +pkgdesc="An alternative implementation of Linux sound support" +arch=(x86_64) +homepage="https://www.alsa-project.org" +license=(LGPL-2.1-or-later) +depends=( + alsa-topology-conf + alsa-ucm-conf + glibc +) +_patches=("alsa-lib-1.1.6-missing_files.patch") +_patch_sums=("879d11cf369a1aab2cc86c72ba90ad3dfeced2395c4cafda064a89a8f7790f032d4bc1c9065a86be28a3f7656bf91b4148df4e59d962ba4470221dc13a4fec90") +sources=("${pkgname}-${pkgver}.tar.bz2" + ${_patches[@]} +) +urls=("https://www.alsa-project.org/files/pub/lib/${sources[0]}" + ${_patches[@]} +) +sha512sums=("2716cc3a2299da4a1a170d734af082d78dc452b253179d0f1a9ec190140734aecf002b6924eec4ff2699ce88ce1ae5c56821c267f36384910984db726d1f9626" + ${_patch_sums[@]} +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + + find . -name Makefile.am -exec sed -i -e '/CFLAGS/s:-g -O2::' {} + + # bug #545950 + sed -i -e '5s:^$:\nAM_CPPFLAGS = -I$(top_srcdir)/include:' test/lsb/Makefile.am + + autoreconf -fiv +} + +src_build() { + CFLAGS+=" -std=gnu17" + + local conf_args=( + --prefix=/usr + --disable-maintainer-mode + --disable-resmgr + --enable-aload + --enable-rawmidi + --enable-seq + --enable-shared + --enable-thread-safety + --disable-python + --disable-debug + ) + ./configure "${conf_args[@]}" + make +} + +src_check() { + make -k check +} + +src_install() { + make DESTDIR="$pkgdir" install + install -vDm 644 {MEMORY-LEAK,TODO,NOTES,ChangeLog,doc/asoundrc.txt} -t "$pkgdir/usr/share/doc/${pkgname}-${pkgver}/" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/media-libs/alsa-lib-1.2.14/alsa-lib-1.1.6-missing_files.patch b/media-libs/alsa-lib-1.2.14/alsa-lib-1.1.6-missing_files.patch new file mode 100644 index 0000000..909a00b --- /dev/null +++ b/media-libs/alsa-lib-1.2.14/alsa-lib-1.1.6-missing_files.patch @@ -0,0 +1,196 @@ +https://bugs.gentoo.org/652422 + +--- alsa-lib-1.1.6/src/conf/cards/aliases.alisp ++++ alsa-lib-1.1.6/src/conf/cards/aliases.alisp +@@ -0,0 +1,29 @@ ++(setq snd_card_aliases_array ++ ( ++ ("YMF724" . "YMF744") ++ ("YMF724F" . "YMF744") ++ ("YMF740" . "YMF744") ++ ("YMF740C" . "YMF744") ++ ("YMF754" . "YMF744") ++ ("CMIPCI" . "CMI8338") ++ ("CMI8738" . "CMI8338") ++ ("CMI8738-MC4" . "CMI8738-MC6") ++ ("E-mu APS" . "EMU10K1") ++ ("GUS Max" . "GUS") ++ ("GUS ACE" . "GUS") ++ ("GUS Extreme" . "GUS") ++ ("AMD InterWave" . "GUS") ++ ("Dynasonic 3-D" . "GUS") ++ ("InterWave STB" . "GUS") ++ ) ++) ++ ++(defun snd_card_alias (cardname) ++ (setq r (assq cardname snd_card_aliases_array)) ++ (setq r (if (null r) cardname r)) ++ (unsetq r) ++) ++ ++(defun snd_card_alias_unset () ++ (unsetq snd_card_aliases_array snd_card_alias) ++) +--- alsa-lib-1.1.6/src/conf/cards/SI7018/sndoc-mixer.alisp ++++ alsa-lib-1.1.6/src/conf/cards/SI7018/sndoc-mixer.alisp +@@ -0,0 +1,11 @@ ++; ++; SiS SI7018 mixer abstract layer ++; ++; Copyright (c) 2003 Jaroslav Kysela ++; License: GPL v2 (http://www.gnu.org/licenses/gpl.html) ++; ++ ++(defun sndoc_mixer_open (hctl pcm) ++ (princ "sndoc_mixer_open: hctl=" hctl " pcm=" pcm "\n") ++ 0 ++) +--- alsa-lib-1.1.6/src/conf/cards/SI7018/sndop-mixer.alisp ++++ alsa-lib-1.1.6/src/conf/cards/SI7018/sndop-mixer.alisp +@@ -0,0 +1,11 @@ ++; ++; SiS SI7018 mixer abstract layer ++; ++; Copyright (c) 2003 Jaroslav Kysela ++; License: GPL v2 (http://www.gnu.org/licenses/gpl.html) ++; ++ ++(defun sndop_mixer_open (hctl pcm) ++ (princ "sndop_mixer_open: hctl=" hctl " pcm=" pcm "\n") ++ 0 ++) +--- alsa-lib-1.1.6/src/conf/smixer.conf ++++ alsa-lib-1.1.6/src/conf/smixer.conf +@@ -0,0 +1,13 @@ ++_full smixer-python.so ++usb { ++ searchl "USB" ++ lib smixer-usb.so ++} ++ac97 { ++ searchl "AC97a:" ++ lib smixer-ac97.so ++} ++hda { ++ searchl "HDA:" ++ lib smixer-hda.so ++} +--- alsa-lib-1.1.6/src/conf/sndo-mixer.alisp ++++ alsa-lib-1.1.6/src/conf/sndo-mixer.alisp +@@ -0,0 +1,115 @@ ++; ++; Toplevel configuration for the ALSA Ordinary Mixer Interface ++; ++; Copyright (c) 2003 Jaroslav Kysela ++; License: GPL v2 (http://www.gnu.org/licenses/gpl.html) ++; ++ ++(defun sndo_include (hctl stream) ++ (setq info (Acall "ctl_card_info" (Acall "hctl_ctl" hctl))) ++ (if (= (Aerror info) 0) ++ (progn ++ (setq info (Aresult info)) ++ (setq driver (cdr (assq "driver" (unsetq info)))) ++ (setq file (concat (path "data") "/alsa/cards/" (snd_card_alias driver) "/sndo" stream "-mixer.alisp")) ++ (setq r (include file)) ++ (when (= r -2) (Asyserr "unable to find file " file)) ++ ) ++ (setq r (Aerror info)) ++ ) ++ (unsetq info driver file r) ++) ++ ++(defun sndo_mixer_open_fcn (hctl stream pcm) ++ (setq fcn (concat "sndo" stream "_mixer_open")) ++ (setq r (if (exfun fcn) (funcall fcn hctl pcm) 0)) ++ (when (= r 0) ++ (setq hctls (if hctls (cons hctls (cons hctl)) hctl)) ++ ) ++ (unsetq fcn r) ++) ++ ++(defun sndo_mixer_open_hctl (name stream pcm) ++ (setq hctl (Acall "hctl_open" name nil)) ++ (setq r (Aerror hctl)) ++ (when (= r 0) ++ (setq hctl (Aresult hctl)) ++ (setq r (sndo_include hctl stream)) ++ (if (= r 0) ++ (setq r (sndo_mixer_open_fcn hctl stream pcm)) ++ (Acall "hctl_close" hctl) ++ ) ++ ) ++ (unsetq hctl r) ++) ++ ++(defun sndo_mixer_open_virtual (name stream pcm) ++ (setq file (concat (path "data") "/alsa/virtual/" name "/sndo" stream "-mixer.alisp")) ++ (setq r (include file)) ++ (when (= r -2) (Asyserr "unable to find file " file)) ++ (when (= r 0) (setq r (sndo_mixer_open_fcn nil stream pcm))) ++ (unsetq file r) ++) ++ ++(defun sndo_mixer_open1 (name stream) ++ (if (compare-strings name 0 2 "hw:" 0 2) ++ (sndo_mixer_open_hctl name stream nil) ++ (sndo_mixer_open_virtual name stream nil) ++ ) ++) ++ ++(defun sndo_mixer_open (pname cname) ++ (setq r (sndo_mixer_open1 pname "p")) ++ (when (= r 0) (setq r (sndo_mixer_open1 cname "c"))) ++ (when (!= r 0) (sndo_mixer_close)) ++ (unsetq sndo_mixer_open ++ sndo_mixer_open_pcm sndo_mixer_open_pcm1 ++ sndo_mixer_open_virtual sndo_mixer_open_fcn ++ sndo_include r) ++) ++ ++(defun sndo_mixer_open_pcm1 (pcm stream) ++ (setq info (Acall "pcm_info" pcm)) ++ (setq r (Aerror info)) ++ (when (= r 0) ++ (setq info (Aresult info)) ++ (setq card (cdr (assq "card" info))) ++ (setq r ++ (if (< card 0) ++ (sndo_mixer_open_virtual (Acall "pcm_name" pcm) stream pcm) ++ (sndo_mixer_open_hctl (format "hw:%i" card) stream pcm) ++ ) ++ ) ++ ) ++ (unsetq info card r) ++) ++ ++(defun sndo_mixer_open_pcm (ppcm cpcm) ++ (setq r (sndo_mixer_open_pcm1 ppcm "p")) ++ (when (= r 0) (setq r (sndo_mixer_open_pcm1 cpcm "c"))) ++ (when (!= r 0) (sndo_mixer_close)) ++ (unsetq sndo_mixer_open ++ sndo_mixer_open_pcm sndo_mixer_open_pcm1 ++ sndo_mixer_open_virtual sndo_mixer_open_fcn ++ sndo_include r) ++) ++ ++(defun sndo_mixer_close1 (hctl stream) ++ (when hctl ++ (progn ++ (setq fcn (concat "sndo" stream "_mixer_close")) ++ (when (exfun fcn) (funcall fcn hctl)) ++ (unsetq fcn) ++ (Acall "hctl_close" hctl) ++ ) ++ ) ++) ++ ++(defun sndo_mixer_close nil ++ (sndo_mixer_close1 (nth 1 hctls) "c") ++ (sndo_mixer_close1 (nth 0 hctls) "p") ++ (snd_card_alias_unset) ++ (unsetq hctls) ++) ++ ++(include (concat (path "data") "/alsa/cards/aliases.alisp")) -- 2.49.1 From 2cff7f2ad2a5ec9e06442e9983b2efd3e0c6fa1c Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 13:04:21 -0500 Subject: [PATCH 05/82] new blfs: sci-libs/fftw-3.3.10 --- sci-libs/fftw-3.3.10.PKGBUILD | 95 +++++++++++++++++++ .../fftw-3.3.10-fixup-cmake-optional.patch | 25 +++++ 2 files changed, 120 insertions(+) create mode 100644 sci-libs/fftw-3.3.10.PKGBUILD create mode 100644 sci-libs/fftw-3.3.10/fftw-3.3.10-fixup-cmake-optional.patch diff --git a/sci-libs/fftw-3.3.10.PKGBUILD b/sci-libs/fftw-3.3.10.PKGBUILD new file mode 100644 index 0000000..d670efc --- /dev/null +++ b/sci-libs/fftw-3.3.10.PKGBUILD @@ -0,0 +1,95 @@ +pkgname=fftw +pkgver=3.3.10 +pkgdesc="Fast C library for the Discrete Fourier Transform" +homepage="https://www.fftw.org/" +licenses=("GPL-2+") +_patches=("fftw-3.3.10-fixup-cmake-optional.patch") +_patch_sums=("517ea0d21ba360db7c9d2fe805dec9de30362a71a567e7b034f7c569433d206f6b3abae4a8dfb704970e02d8d9b30cb9a578946417b4c1986fbfee6db68267b0") +sources=("${pkgname}-${pkgver/_p/-pl}.tar.gz" + ${_patches[@]} +) +urls=("https://www.fftw.org/${sources[0]}" + ${_patches[@]} +) +sha512sums=("2d34b5ccac7b08740dbdacc6ebe451d8a34cf9d9bfec85a5e776e87adf94abfd803c222412d8e10fbaa4ed46f504aa87180396af1b108666cde4314a55610b40" + ${_patch_sums[@]} +) + +_multibuild=(single double longdouble) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + CFLAGS+=" -O3" + + local conf_args=( + --prefix=/usr + --enable-shared + --disable-static + --enable-fma #cpu_flags_x86_fma3 + --disable-fortran + --disable-mips-zbus-timer + --disable-threads + --enable-openmp + --disable-mpi + ) + local conf_args_single=( + "${conf_args[@]}" + --enable-single + --disable-altivec + --enable-avx + --enable-avx2 + --enable-sse + --enable-sse2 + ) + local conf_args_double=( + "${conf_args[@]}" + --enable-avx + --enable-avx2 + --enable-sse2 + ) + local conf_args_longdouble=( + "${conf_args[@]}" + --enable-long-double + ) + + for _build in "${_multibuild[@]}"; do + mkdir -pv build-"${_build}" + pushd build-${_build} + case ${_build} in + single) + ../configure "${conf_args_single[@]}" + ;; + double) + ../configure "${conf_args_double[@]}" + ;; + longdouble) + ../configure "${conf_args_longdouble[@]}" + ;; + esac + popd + done + + for _build in "${_multibuild[@]}"; do + make -C build-${_build} + done +} + +src_check() { + for _build in "${_multibuild[@]}"; do + make smallcheck -C build-${_build}/tests + done +} + +src_install() { + for _build in "${_multibuild[@]}"; do + make DESTDIR="$pkgdir" install -C build-${_build} + done +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/sci-libs/fftw-3.3.10/fftw-3.3.10-fixup-cmake-optional.patch b/sci-libs/fftw-3.3.10/fftw-3.3.10-fixup-cmake-optional.patch new file mode 100644 index 0000000..ea09c4c --- /dev/null +++ b/sci-libs/fftw-3.3.10/fftw-3.3.10-fixup-cmake-optional.patch @@ -0,0 +1,25 @@ +https://bugs.gentoo.org/913518 +https://github.com/FFTW/fftw3/issues/130 +https://github.com/FFTW/fftw3/pull/338 + +From f69fef7aa546d4477a2a3fd7f13fa8b2f6c54af7 Mon Sep 17 00:00:00 2001 +From: Tobias Mayer +Date: Tue, 24 Oct 2023 13:46:33 +0200 +Subject: [PATCH] Fix the cmake config file when configured with autotools + +When the autotools based build is used the FFTW3ConfigDeps.cmake file is +not generated, so including it fails with an error. By making the +include optional, the config file can still be used in a limited +fashion. +--- a/FFTW3Config.cmake.in ++++ b/FFTW3Config.cmake.in +@@ -10,7 +10,7 @@ set (FFTW3@PREC_SUFFIX@_LIBRARIES fftw3@PREC_SUFFIX@) + set (FFTW3@PREC_SUFFIX@_LIBRARY_DIRS @CMAKE_INSTALL_FULL_LIBDIR@) + set (FFTW3@PREC_SUFFIX@_INCLUDE_DIRS @CMAKE_INSTALL_FULL_INCLUDEDIR@) + +-include ("${CMAKE_CURRENT_LIST_DIR}/FFTW3LibraryDepends.cmake") ++include ("${CMAKE_CURRENT_LIST_DIR}/FFTW3LibraryDepends.cmake" OPTIONAL) + + if (CMAKE_VERSION VERSION_LESS 2.8.3) + set (CMAKE_CURRENT_LIST_DIR) + -- 2.49.1 From 684c63a3376fc241b3410fb49b491b3ea9d66e8c Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 13:36:06 -0500 Subject: [PATCH 06/82] update: enable external-libs in media-libs/libsndfile-1.2.2 --- media-libs/libsndfile-1.2.2.PKGBUILD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/media-libs/libsndfile-1.2.2.PKGBUILD b/media-libs/libsndfile-1.2.2.PKGBUILD index d33c8c5..53fcc46 100644 --- a/media-libs/libsndfile-1.2.2.PKGBUILD +++ b/media-libs/libsndfile-1.2.2.PKGBUILD @@ -19,7 +19,7 @@ src_build() { --disable-octave --disable-static --disable-werror - --disable-external-libs + --enable-external-libs --disable-mpeg --enable-full-suite --disable-alsa -- 2.49.1 From 950f619342ad3a6920db97b3b4620aa031fc603b Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 15:34:23 -0500 Subject: [PATCH 07/82] new blfs: media-video/pipewire-1.4.9 --- media-video/pipewire-1.4.9.PKGBUILD | 168 ++++++++++++++++++ .../99-pipewire-default-hook.conf | 17 ++ ...e-0.3.25-enable-failed-mlock-warning.patch | 12 ++ .../pipewire-1.4.6-no-automagic-ebur128.patch | 38 ++++ .../pipewire-1.4.6-no-automagic-fftw.patch | 44 +++++ 5 files changed, 279 insertions(+) create mode 100644 media-video/pipewire-1.4.9.PKGBUILD create mode 100644 media-video/pipewire-1.4.9/99-pipewire-default-hook.conf create mode 100644 media-video/pipewire-1.4.9/pipewire-0.3.25-enable-failed-mlock-warning.patch create mode 100644 media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-ebur128.patch create mode 100644 media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-fftw.patch diff --git a/media-video/pipewire-1.4.9.PKGBUILD b/media-video/pipewire-1.4.9.PKGBUILD new file mode 100644 index 0000000..02ebf35 --- /dev/null +++ b/media-video/pipewire-1.4.9.PKGBUILD @@ -0,0 +1,168 @@ +pkgname=pipewire +pkgver=1.4.9 +pkgdesc="Low-latency audio/video router and processor" +homepage="https://pipewire.org" +arch=(x86_64) +license=(MIT) +makedepends=( + alsa-lib + dbus + libpulse + libsndfile + meson + ncurses + python-docutils + readline + rtkit + sdl2 + systemd + ffmpeg + fftw +) +checkdepends=( + desktop-file-utils +) +_patches=("pipewire-0.3.25-enable-failed-mlock-warning.patch" + "pipewire-1.4.6-no-automagic-ebur128.patch" + "pipewire-1.4.6-no-automagic-fftw.patch" +) +_patch_sums=("7456a24276b7b766ff5799acf5b80ef5f85ee7a78fc5b52adff3206c0b0aa1985a0bf72634aacf7818c90136c09bcc11cb0fecec291d961c8b3585c897869f65" + "c8aca1e2a8c4ddb7dd9a357ffefc77070cb6f123228678015865a505210e851948d5e7acbf8c17076ce2d56042f0a68b7f65439f958f938637ca475886eb81d2" + "726b28015cc378fd2c5e268655f4162ca274ffd25976f3ba816d470fc90c33e86ac1930c76816f20b3ab812f7034a88dddb36b40e5cde51d79443689cdbb5e34" +) +sources=("${pkgname}-${pkgver}.tar.bz2" + "${pkgname}-1.4.7-0001-don-t-include-standard-C-headers-inside-of-extern-C.patch.xz" + "99-pipewire-default-hook.conf" + ${_patches[@]} +) +urls=("https://gitlab.freedesktop.org/${pkgname}/${pkgname}/-/archive/${pkgver}/${sources[0]}" + "https://dev.gentoo.org/~sam/distfiles/media-video/${pkgname}/${sources[1]}" + "99-pipewire-default-hook.conf" + "${_patches[@]}" +) +sha512sums=("369054d920133904a8df709b1be05f9ef0e7e99e1ae10e1d200315ce1200e20d5e20a91f40dd17dd3177eef59de7d47dfdd6161ec6f057b78140690fcfcc1c2e" + "fbd9644a5df81ee4bc9687f6a8b69a0bf12deef43d749c9c5cbb976f461771deeae4bd13340a6acaffae4b0187221cf734be2b3b62408a4ce79d70575a7e664b" + "4e512c62b7627fbe9e48afbbf171bd2b8d4fb8b231492cb1ea2d90ac474212c25e0f8ba3389b1df1108a46f243f2e1f3a3eaf2d147a7968cec82a8a49f5fd1b7" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xjf ${distdir}/${sources[0]} --strip-components=1 + cp ${distdir}/${sources[1]} ./ + xz --decompress ${sources[1]} + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + patch -p1 -i ${sources[1]%.xz} +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D docdir="/usr/share/doc/${pkgname}-${pkgver}" + -D dbus=enabled + -D avahi=disabled + -D docs=disabled + -D man=disabled + -D tests=enabled + -D installed_tests=disabled + -D libffado=disabled + -D gstreamer=disabled + -D gstreamer-device-provider=disabled + -D gsettings=disabled + -D systemd=enabled + -D logind=enabled + -D logind-provider=libsystemd + -D systemd-system-service=disabled + -D systemd-user-service=enabled + -D pipewire-alsa=enabled + -D selinux=disabled + -D spa-plugins=enabled + -D alsa=enabled + -D compress-offload=disabled + -D audiomixer=enabled # Matches upstream + -D audioconvert=enabled # Matches upstream + -D bluez5=disabled + -D bluez5-backend-hsp-native=disabled + -D bluez5-backend-hfp-native=disabled + -D bluez5-backend-native-mm=disabled + -D bluez5-backend-ofono=disabled + -D bluez5-backend-hsphfpd=disabled + -D bluez5-codec-aac=disabled + -D bluez5-codec-aptx=disabled + -D bluez5-codec-ldac=disabled + -D bluez5-codec-g722=disabled + -D opus=disabled + -D bluez5-codec-opus=disabled + -D libusb=disabled + -D echo-cancel-webrtc=disabled + -D control=enabled # Matches upstream + -D audiotestsrc=enabled # Matches upstream + -D ffmpeg=disabled + -D pw-cat-ffmpeg=enabled + -D flatpak=disabled + -D pipewire-jack=enabled + -D jack=disabled + -D jack-devel=false + -D support=enabled + -D evl=disabled # Matches upstream + -D test=disabled # fakesink and fakesource plugins + -D bluez5-codec-lc3plus=disabled # unpackaged + -D bluez5-codec-lc3=disabled + -D ebur128=disabled + -D fftw=enabled + -D lv2=disabled + -D v4l2=disabled + -D libcamera=disabled + -D roc=disabled + -D readline=enabled + -D raop=enabled + -D videoconvert=enabled # Matches upstream + -D videotestsrc=enabled # Matches upstream + -D volume=enabled # Matches upstream + -D vulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + -D pw-cat=enabled + -D udev=enabled + -D sdl2=disabled + -D libmysofa=disabled + -D sndfile=enabled + -D session-managers="[]" + -D pam-defaults-install=false #new kernel + -D x11=disabled + -D x11-xfixes=disabled + -D libcanberra=disabled + -D snap=disabled + -D gsettings-pulse-schema=disabled + ) + meson setup build "${meson_args[@]}" + meson configure build --no-pager + meson compile -C build +} + +src_check() { + meson test -C build --print-errorlogs --timeout-multiplier 10 +} + +src_install() { + meson install -C build --destdir "$pkgdir" + + install -vDm644 "${filedir}"/99-pipewire-default-hook.conf -t "${pkgdir}/usr/share/alsa/alsa.conf.d" + mkdir -pv "${pkgdir}/etc/alsa/conf.d" + ln -sv ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf "${pkgdir}"/etc/alsa/conf.d/50-pipewire.conf + ln -sv ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf "${pkgdir}"/etc/alsa/conf.d/99-pipewire-default-hook.conf +} + +src_postinstall() { + systemctl --global enable pipewire.socket + systemctl --global enable pipewire-pulse.socket +} + +src_preremove() { + systemctl --global disable pipewire.socket + systemctl --global disable pipewire-pulse.socket +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/media-video/pipewire-1.4.9/99-pipewire-default-hook.conf b/media-video/pipewire-1.4.9/99-pipewire-default-hook.conf new file mode 100644 index 0000000..172de5c --- /dev/null +++ b/media-video/pipewire-1.4.9/99-pipewire-default-hook.conf @@ -0,0 +1,17 @@ +# Load pipewire configuration at conf hook processing time. This allows to +# override pulseaudio defaults configuration which is also applied via hook. +# +# Note since hooks are run after /etc/asound.conf and ~/.asoundrc are applied, +# we load these again here make sure that user configuration takes precedence. + +@hooks [ + { + func load + files [ + "/usr/share/alsa/alsa.conf.d/99-pipewire-default.conf" + "/etc/asound.conf" + "~/.asoundrc" + ] + errors false + } +] diff --git a/media-video/pipewire-1.4.9/pipewire-0.3.25-enable-failed-mlock-warning.patch b/media-video/pipewire-1.4.9/pipewire-0.3.25-enable-failed-mlock-warning.patch new file mode 100644 index 0000000..bdb43fe --- /dev/null +++ b/media-video/pipewire-1.4.9/pipewire-0.3.25-enable-failed-mlock-warning.patch @@ -0,0 +1,12 @@ +diff --git a/src/daemon/pipewire.conf.in b/src/daemon/pipewire.conf.in +--- a/src/daemon/pipewire.conf.in ++++ b/src/daemon/pipewire.conf.in +@@ -6,7 +6,7 @@ context.properties = { + #support.dbus = true + #link.max-buffers = 64 + link.max-buffers = 16 # version < 3 clients can't handle more +- #mem.warn-mlock = false ++ mem.warn-mlock = true # Gentoo should have good RLIMITs now + #mem.allow-mlock = true + #mem.mlock-all = false + #clock.power-of-two-quantum = true diff --git a/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-ebur128.patch b/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-ebur128.patch new file mode 100644 index 0000000..7b2323a --- /dev/null +++ b/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-ebur128.patch @@ -0,0 +1,38 @@ +https://bugs.gentoo.org/955373 +https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/2420 + +From f42786d60cf94ba76ba447c3561148ed7d6c3293 Mon Sep 17 00:00:00 2001 +Message-ID: +From: Sam James +Date: Sat, 28 Jun 2025 02:54:34 +0100 +Subject: [PATCH] spa: allow disabling deps via -Debur128/-Dudev + +With .enabled(), Meson doesn't have some magic that packagers rely on +to explicitly disable finding a dependency if an option is off. Drop +the unnecessary .enabled() accordingly. +--- + spa/meson.build | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/spa/meson.build b/spa/meson.build +index 48a0000a1..637aeb8d4 100644 +--- a/spa/meson.build ++++ b/spa/meson.build +@@ -114,7 +114,7 @@ if get_option('spa-plugins').allowed() + cdata.set('HAVE_ALSA_COMPRESS_OFFLOAD', compress_offload_option.allowed()) + + # common dependencies +- libudev_dep = dependency('libudev', required: get_option('udev').enabled()) ++ libudev_dep = dependency('libudev', required: get_option('udev')) + cdata.set('HAVE_LIBUDEV', libudev_dep.found()) + summary({'Udev': libudev_dep.found()}, bool_yn: true, section: 'Backend') + +@@ -124,7 +124,7 @@ if get_option('spa-plugins').allowed() + lilv_lib = dependency('lilv-0', required: get_option('lv2')) + summary({'lilv (for lv2 plugins)': lilv_lib.found()}, bool_yn: true, section: 'filter-graph') + +- ebur128_lib = dependency('libebur128', required: get_option('ebur128').enabled()) ++ ebur128_lib = dependency('libebur128', required: get_option('ebur128')) + summary({'EBUR128': ebur128_lib.found()}, bool_yn: true, section: 'filter-graph') + + cdata.set('HAVE_SPA_PLUGINS', true) diff --git a/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-fftw.patch b/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-fftw.patch new file mode 100644 index 0000000..57a880b --- /dev/null +++ b/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-fftw.patch @@ -0,0 +1,44 @@ +https://bugs.gentoo.org/955373 +https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/2421 + +From 64b7a8990e2d6f37572d0b86c0d0847a283ba99e Mon Sep 17 00:00:00 2001 +Message-ID: <64b7a8990e2d6f37572d0b86c0d0847a283ba99e.1751075990.git.sam@gentoo.org> +From: Sam James +Date: Sat, 28 Jun 2025 02:59:03 +0100 +Subject: [PATCH] meson: add fftw option + +Packagers need to have a way to control whether a dependency is used +even if it's installed/available. +--- + meson.build | 2 +- + meson_options.txt | 4 ++++ + 2 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 2331ac826..0ba5c57a8 100644 +--- a/meson.build ++++ b/meson.build +@@ -321,7 +321,7 @@ cdata.set('HAVE_DBUS', dbus_dep.found()) + sdl_dep = dependency('sdl2', required : get_option('sdl2')) + summary({'SDL2 (video examples)': sdl_dep.found()}, bool_yn: true, section: 'Misc dependencies') + drm_dep = dependency('libdrm', required : false) +-fftw_dep = dependency('fftw3f', required : false) ++fftw_dep = dependency('fftw3f', required : get_option('fftw')) + summary({'fftw3f (filter-chain convolver)': fftw_dep.found()}, bool_yn: true, section: 'Misc dependencies') + cdata.set('HAVE_FFTW', fftw_dep.found()) + +diff --git a/meson_options.txt b/meson_options.txt +index 74ce3fa94..cd2c839f7 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -383,3 +383,7 @@ option('ebur128', + description: 'Enable code that depends on ebur128', + type: 'feature', + value: 'auto') ++option('fftw', ++ description: 'Enable code that depends on fftw', ++ type: 'feature', ++ value: 'auto') +-- +2.50.0 + -- 2.49.1 From 5de9145dc30319217df036491bd64287f1cb465b Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 16:37:36 -0500 Subject: [PATCH 08/82] new blfs: dev-lang/lua-5.4.8 --- dev-lang/lua-5.4.8.PKGBUILD | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 dev-lang/lua-5.4.8.PKGBUILD diff --git a/dev-lang/lua-5.4.8.PKGBUILD b/dev-lang/lua-5.4.8.PKGBUILD new file mode 100644 index 0000000..be915fa --- /dev/null +++ b/dev-lang/lua-5.4.8.PKGBUILD @@ -0,0 +1,30 @@ +pkgname=lua +pkgver=5.4.8 +_majorver=${pkgver%.*} +pkgdesc='Powerful lightweight programming language designed for extending applications' +arch=('x86_64') +homepage='https://www.lua.org/' +depends=('readline') +license=('MIT') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://dev.gentoo.org/~soap/distfiles/${sources[0]}") +sha512sums=("c8001304dc1bb622521282358856e40eb9277a8d0496614211ff8d1865d14fadd8d584d0636831ca5de8ca57462b90e1484701e91b05f3d685c736b9e72905ca") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr --with-readline + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="$pkgdir" install +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From e374f699f84f4a6f70673f23f6e37b67b29c3f90 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 16:54:06 -0500 Subject: [PATCH 09/82] new blfs: media-video/wireplumber-0.5.12 --- media-video/wireplumber-0.5.12.PKGBUILD | 69 +++++++++++++++++++ ....6-config-disable-sound-server-parts.patch | 18 +++++ 2 files changed, 87 insertions(+) create mode 100644 media-video/wireplumber-0.5.12.PKGBUILD create mode 100644 media-video/wireplumber-0.5.12/wireplumber-0.5.6-config-disable-sound-server-parts.patch diff --git a/media-video/wireplumber-0.5.12.PKGBUILD b/media-video/wireplumber-0.5.12.PKGBUILD new file mode 100644 index 0000000..713a16b --- /dev/null +++ b/media-video/wireplumber-0.5.12.PKGBUILD @@ -0,0 +1,69 @@ +pkgname=wireplumber +pkgver=0.5.12 +luaver=5.4 +pkgdesc="Session / policy manager implementation for PipeWire" +homepage="https://pipewire.pages.freedesktop.org/wireplumber/" +arch=(x86_64) +license=(MIT) +makedepends=( + gcc + glib + glibc + gobject-introspection + meson + pipewire + systemd +) +_patches=("wireplumber-0.5.6-config-disable-sound-server-parts.patch") +_patch_sums=("1e6deb4ce2452f22fca6722c22cfa6a61794f8612c9b2baf6ac1a9b4cf6bdae84e3685e1d8957db3121d304fd5842de47a0f319b755dc349f354f55e118d4750") +sources=("${pkgname}-${pkgver}.tar.bz2" + ${_patches[@]} +) +urls=("https://gitlab.freedesktop.org/pipewire/${pkgname}/-/archive/${pkgver}/${sources[0]}" + ${_patches[@]} +) +sha512sums=("e00317ef90add4d5a0e1b637109a2fba594f081f466c15e1c5e62b9157d9684c13a745c926cc18795d0e4899c7813ddb5615b5f396e191a455b11cab11a38990" + ${_patch_sums[@]} +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D daemon=true + -D tools=true + -D modules=true + -D doc=disabled + -D introspection=disabled + -D system-lua=true + #-D system-lua-version=${luaver} + -D elogind=disabled + -D systemd=enabled + -D systemd-system-service=false + -D systemd-user-service=true + -D tests=true + -D dbus-tests=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_check() { + meson test -C build --print-errorlogs +} + +src_install() { + meson install -C build --destdir "$pkgdir" + mv -v "${pkgdir}"/usr/share/doc/${pkgname}{,-${pkgver}} +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/media-video/wireplumber-0.5.12/wireplumber-0.5.6-config-disable-sound-server-parts.patch b/media-video/wireplumber-0.5.12/wireplumber-0.5.6-config-disable-sound-server-parts.patch new file mode 100644 index 0000000..4e691e5 --- /dev/null +++ b/media-video/wireplumber-0.5.12/wireplumber-0.5.6-config-disable-sound-server-parts.patch @@ -0,0 +1,18 @@ +From ed5ce9c176db2e26ac9915b4d86c3a076a8093ae Mon Sep 17 00:00:00 2001 +From: "Igor V. Kovalenko" +Date: Fri, 2 Feb 2024 22:00:03 +0300 +Subject: [PATCH] config: Disable alsa and bluez monitors by default + +--- a/src/config/wireplumber.conf ++++ b/src/config/wireplumber.conf +@@ -72,8 +72,8 @@ wireplumber.profiles = { + + policy.standard = required + +- hardware.audio = required +- hardware.bluetooth = required ++ #hardware.audio = required ++ #hardware.bluetooth = required + hardware.video-capture = required + } + -- 2.49.1 From 9a66b061ae7e7f52c7d21ad1bd5bd6dd4737fe04 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 19:20:48 -0500 Subject: [PATCH 10/82] new blfs: dev-libs/libsigc++-2.12.1 --- dev-libs/libsigc++-2.12.1.PKGBUILD | 43 ++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 dev-libs/libsigc++-2.12.1.PKGBUILD diff --git a/dev-libs/libsigc++-2.12.1.PKGBUILD b/dev-libs/libsigc++-2.12.1.PKGBUILD new file mode 100644 index 0000000..e0c9cad --- /dev/null +++ b/dev-libs/libsigc++-2.12.1.PKGBUILD @@ -0,0 +1,43 @@ +pkgname=libsigc++ +pkgver=2.12.1 +_ver=${pkgver%.*} +pkgdesc="Callback Framework for C++" +homepage="https://libsigcplusplus.github.io/libsigcplusplus/" +arch=(x86_64) +license=(LGPL-2.1-or-later) +depends=( + gcc + glibc +) +makedepends=( + meson +) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${_ver}/${sources[0]}") +sha512sums=("5e5c920807952c732a9acb139f707fdf556786133c18bc8842130803f864ba1f260e1d4a51be0a9892c2228bcfdf129a9a2ce91e3d20077870431a53a87a9f2a") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + #leaf_filter_flags "-fno-exceptions" #`leaf_filter_flags` to be implymented + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D benchmark=false + -D build-documentation=false + -D build-examples=false + -D build-tests=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 0a9e2599d64404b2e022428212b62350fa4f3837 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Wed, 14 Jan 2026 19:29:37 -0500 Subject: [PATCH 11/82] new blfs: dev-cpp/cairomm-1.14.5 --- dev-cpp/cairomm-1.14.5.PKGBUILD | 42 +++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 dev-cpp/cairomm-1.14.5.PKGBUILD diff --git a/dev-cpp/cairomm-1.14.5.PKGBUILD b/dev-cpp/cairomm-1.14.5.PKGBUILD new file mode 100644 index 0000000..267e71f --- /dev/null +++ b/dev-cpp/cairomm-1.14.5.PKGBUILD @@ -0,0 +1,42 @@ +pkgname=cairomm +pkgver=1.14.5 +slot="0" +pkgdesc="C++ bindings for Cairo" +homepage="https://www.cairographics.org/cairomm/" +arch=(x86_64) +license=(LGPL MPL) +depends=( + cairo + libsigc++:2 +) +makedepends=( + meson +) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://www.cairographics.org/releases/${sources[0]}") +sha512sums=("19e5f84f6167c1641b27545c3af4e780b6a072513322adc6296577e2d0ebcffe933afd15c32117a203394e9f5f28734820aaf1802dfdeb35ff2a657f140570b0") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D build-documentation=false + -D build-examples=false + -D build-tests=false + -D boost-shared=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From e296bdbe87900091045d171ce7ab136713f709a1 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 00:57:47 -0500 Subject: [PATCH 12/82] new blfs: dev-cpp/glibmm-2.66.8 --- dev-cpp/glibmm-2.66.8.PKGBUILD | 46 ++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 dev-cpp/glibmm-2.66.8.PKGBUILD diff --git a/dev-cpp/glibmm-2.66.8.PKGBUILD b/dev-cpp/glibmm-2.66.8.PKGBUILD new file mode 100644 index 0000000..6de4e46 --- /dev/null +++ b/dev-cpp/glibmm-2.66.8.PKGBUILD @@ -0,0 +1,46 @@ +pkgname=glibmm +pkgver=2.66.8 +_ver=${pkgver%.*} +pkgdesc="C++ bindings for GLib" +homepage="https://www.gtkmm.org/" +arch=(x86_64) +license=(LGPL-2.1-or-later) +depends=( + gcc + glib:2 + glibc + libsigc++:2 +) +makedepends=( + clang + meson +) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${_ver}/${sources[0]}") +sha512sums=("4ebf203324d3ee95c47012915efb39d4dc59eb7a6f337e7b8c7c0b3589574b07967974363931b0d4159618f88178b04715b2c359c3dc3f67a7781bfac0d9f277") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D warnings=min + -D build-deprecated-api=true + -D build-documentation=false + -D debug-refcounting=false + -D build-examples=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 45226219b898bf1a56e7cc80e6f052644344b75f Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 01:25:38 -0500 Subject: [PATCH 13/82] new blfs: dev-cpp/pangomm-2.46.4 --- dev-cpp/pangomm-2.46.4.PKGBUILD | 34 +++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 dev-cpp/pangomm-2.46.4.PKGBUILD diff --git a/dev-cpp/pangomm-2.46.4.PKGBUILD b/dev-cpp/pangomm-2.46.4.PKGBUILD new file mode 100644 index 0000000..cf10497 --- /dev/null +++ b/dev-cpp/pangomm-2.46.4.PKGBUILD @@ -0,0 +1,34 @@ +pkgname=pangomm +pkgver=2.46.4 +_ver=${pkgver%.*} +pkgdesc="C++ interface for pango" +homepage="https://gtkmm.gnome.org/en/index.html" +licenses=("LGPL-2.1+") +slot=1.4 +depends=(cairomm:0 glibmm:2 libsigc++:2 pango) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${_ver}/${sources[0]}") +sha512sums=("e4e57b835af270af9b98ae3feb25087cb8f8ab9b0028195db3d2dbf48df360de1f92c4e7c9dfba9a80d4a6aa47234b3112eea52586328386bbc0eb0d5cc09856") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D maintainer-mode=false + -D build-documentation=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From b2aa94d46111593756a7fcf97a3df63dcaa18a0e Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 02:49:16 -0500 Subject: [PATCH 14/82] new blfs: dev-cpp/atkmm-2.28.4 --- dev-cpp/atkmm-2.28.4.PKGBUILD | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 dev-cpp/atkmm-2.28.4.PKGBUILD diff --git a/dev-cpp/atkmm-2.28.4.PKGBUILD b/dev-cpp/atkmm-2.28.4.PKGBUILD new file mode 100644 index 0000000..d4d5fad --- /dev/null +++ b/dev-cpp/atkmm-2.28.4.PKGBUILD @@ -0,0 +1,33 @@ +pkgname=atkmm +pkgver=2.28.4 +_ver=${pkgver%.*} +slot="0" +pkgdesc="C++ interface for the ATK library" +homepage="https://gtkmm.gnome.org/en/index.html" +licenses=("LGPL-2.1+") +depends=(glibmm:2 at-spi2-core libsigc++:2) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${_ver}/${sources[0]}") +sha512sums=("30a714971234aebf06a04abeff5fc3b6951b56130aaddbd1a92856b3fb87cf9ba3c34539465b7f0905f871d763239642efe7904b24f33f11e57bf013e4bca533") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D build-documentation=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From cdf0887d9953f4ec46b6ac07c4970dab522f02d4 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 02:58:40 -0500 Subject: [PATCH 15/82] new blfs: dev-cpp/gtkmm-3.24.10 --- dev-cpp/gtkmm-3.24.10.PKGBUILD | 50 ++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 dev-cpp/gtkmm-3.24.10.PKGBUILD diff --git a/dev-cpp/gtkmm-3.24.10.PKGBUILD b/dev-cpp/gtkmm-3.24.10.PKGBUILD new file mode 100644 index 0000000..9161e7d --- /dev/null +++ b/dev-cpp/gtkmm-3.24.10.PKGBUILD @@ -0,0 +1,50 @@ +pkgname=gtkmm +pkgver=3.24.10 +_ver=${pkgver%.*} +slot="3.0" +pkgdesc="C++ bindings for GTK+ 3" +homepage="https://www.gtkmm.org/" +arch=(x86_64) +license=(LGPL-2.1-or-later) +depends=( + atkmm:0 + cairomm:0 + gcc + gdk-pixbuf:2 + glib:2 + glibc + glibmm:2 + gtk+:3 + libsigc++:2 + pangomm:1.4 + libepoxy +) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${_ver}/${sources[0]}") +sha512sums=("d7478b66b94924e1457b1a6b4a46ee8027361ae1db0b3e203019957e4e591220de3a12c11d34cc5d381e707435c0cfe5eae12d620cd8db0e56a0485c39bd7abb") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D build-atkmm-api=true + -D build-demos=false + -D build-documentation=false + -D build-tests=false + -D build-x11-api=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From ac0ae74d178f4780fd57f5d43f42401b818b8ccb Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 03:21:20 -0500 Subject: [PATCH 16/82] new bblfs: dev-libs/jsoncpp-1.9.6 --- dev-libs/jsoncpp-1.9.6.PKGBUILD | 39 +++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 dev-libs/jsoncpp-1.9.6.PKGBUILD diff --git a/dev-libs/jsoncpp-1.9.6.PKGBUILD b/dev-libs/jsoncpp-1.9.6.PKGBUILD new file mode 100644 index 0000000..d943f92 --- /dev/null +++ b/dev-libs/jsoncpp-1.9.6.PKGBUILD @@ -0,0 +1,39 @@ +pkgname=jsoncpp +pkgver=1.9.6 +pkgdesc="C++ JSON reader and writer" +homepage="https://github.com/open-source-parsers/jsoncpp/" +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/open-source-parsers/${pkgname}/archive/${pkgver}.tar.gz") +sha512sums=("006d81f9f723dcfe875ebc2147449c07c5246bf97dd7b9eee1909decc914b051d6f3f06feb5c3dfa143d28773fb310aabb04a81dc447cc61513309df8eba8b08") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + --includedir include/jsoncpp + -D tests=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_check() { + meson test -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}-${pkgver}" + + # https://bugs.gentoo.org/941642 + rm -r "${pkgdir}/usr/lib/cmake" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 675df602f7467ee28d503fdf2ea68a3bbb718f61 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 03:35:58 -0500 Subject: [PATCH 17/82] new bblfs: dev-libs/libfmt-11.1.4 --- dev-libs/libfmt-11.1.4.PKGBUILD | 36 +++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 dev-libs/libfmt-11.1.4.PKGBUILD diff --git a/dev-libs/libfmt-11.1.4.PKGBUILD b/dev-libs/libfmt-11.1.4.PKGBUILD new file mode 100644 index 0000000..74716e4 --- /dev/null +++ b/dev-libs/libfmt-11.1.4.PKGBUILD @@ -0,0 +1,36 @@ +pkgname=libfmt +pkgver=11.1.4 +pkgdesc="Small, safe and fast formatting library" +homepage="https://fmt.dev/dev/ https://github.com/fmtlib/fmt" +license=("MIT") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/fmtlib/fmt/archive/${pkgver}.tar.gz") +sha512sums=("573b7de1bd224b7b1b60d44808a843db35d4bc4634f72a9edcb52cf68e99ca66c744fd5d5c97b4336ba70b94abdabac5fc253b245d0d5cd8bbe2a096bf941e39") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -D BUILD_SHARED_LIBS=ON + -W no-dev + -D FMT_CMAKE_DIR="/usr/lib/cmake/fmt" + -D FMT_LIB_DIR="/usr/lib" + -D FMT_TEST=true + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_check() { + cmake --build build --target test +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 9fc72b7db7bd11ab7b0dd3ee77a6287db5b16a01 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 03:52:40 -0500 Subject: [PATCH 18/82] nerw bblfs: dev-libs/spdlog-1.15.3 --- dev-libs/spdlog-1.15.3.PKGBUILD | 45 +++++++++++++++++++ .../spdlog-force_external_fmt.patch | 15 +++++++ 2 files changed, 60 insertions(+) create mode 100644 dev-libs/spdlog-1.15.3.PKGBUILD create mode 100644 dev-libs/spdlog-1.15.3/spdlog-force_external_fmt.patch diff --git a/dev-libs/spdlog-1.15.3.PKGBUILD b/dev-libs/spdlog-1.15.3.PKGBUILD new file mode 100644 index 0000000..142c7cf --- /dev/null +++ b/dev-libs/spdlog-1.15.3.PKGBUILD @@ -0,0 +1,45 @@ +pkgname=spdlog +pkgver=1.15.3 +pkgdesc="Fast C++ logging library" +homepage="https://github.com/gabime/spdlog" +license=("MIT") +_patches=("spdlog-force_external_fmt.patch") +_patch_sums=("257c7f7f56e66b88a16238a2c81887f2d5ba9692c18bf5fc371b95f44936018ec7c4a0abd0e54f38cb6a7957f82a1b95af9d238fa7fa16631f0be1980d76f692") +sources=("${pkgname}-${pkgver}.tar.gz" + "${_patches[@]}" +) +urls=("https://github.com/gabime/${pkgname}/archive/v${pkgver}.tar.gz" + "${_patches[@]}" +) +sha512sums=("21c35f4091850ea3a0cd6a24867e06e943df70d76cd5a7ec0b15a33e0e9e0cc3584ed7930e1ac6f347e7e06f0e002d0e759884eaf05310014e24ea0e0419fcc4" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + find include/spdlog/ -type f -name "*.orig" -delete + rm -r include/spdlog/fmt/bundled +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -DSPDLOG_BUILD_BENCH=no + -DSPDLOG_BUILD_EXAMPLE=no + -DSPDLOG_FMT_EXTERNAL=yes + -DSPDLOG_BUILD_SHARED=yes + -DSPDLOG_BUILD_TESTS=no + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/dev-libs/spdlog-1.15.3/spdlog-force_external_fmt.patch b/dev-libs/spdlog-1.15.3/spdlog-force_external_fmt.patch new file mode 100644 index 0000000..79bbd94 --- /dev/null +++ b/dev-libs/spdlog-1.15.3/spdlog-force_external_fmt.patch @@ -0,0 +1,15 @@ +diff --git a/include/spdlog/tweakme.h b/include/spdlog/tweakme.h +index 24361f30..6b4fc14c 100644 +--- a/include/spdlog/tweakme.h ++++ b/include/spdlog/tweakme.h +@@ -71,7 +71,9 @@ + // In this case spdlog will try to include so set your -I flag + // accordingly. + // +-// #define SPDLOG_FMT_EXTERNAL ++#ifndef SPDLOG_FMT_EXTERNAL ++#define SPDLOG_FMT_EXTERNAL ++#endif + /////////////////////////////////////////////////////////////////////////////// + + /////////////////////////////////////////////////////////////////////////////// -- 2.49.1 From b83a66f0e4bac2d02efb4ec42f113bc43b68894a Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 04:44:04 -0500 Subject: [PATCH 19/82] nerw bblfs: dev-libs/date-3.0.3 --- dev-libs/date-3.0.3.PKGBUILD | 48 +++++++++++++++++++ .../date-3.0.3_remove-failing-tests.patch | 34 +++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 dev-libs/date-3.0.3.PKGBUILD create mode 100644 dev-libs/date-3.0.3/date-3.0.3_remove-failing-tests.patch diff --git a/dev-libs/date-3.0.3.PKGBUILD b/dev-libs/date-3.0.3.PKGBUILD new file mode 100644 index 0000000..2087dfc --- /dev/null +++ b/dev-libs/date-3.0.3.PKGBUILD @@ -0,0 +1,48 @@ +pkgname=date +pkgver=3.0.3 +pkgdesc="Date and time library based on the C++11/14/17 header" +homepage="https://github.com/HowardHinnant/date" +license=("MIT") +_patches=("date-3.0.3_remove-failing-tests.patch") +_patche_sums=("e5a453239592d4852d05b50f1f428f6cbc3b0415a247d1e3e9aea4cef42a02d3e9f65233bb717629e2670667e73e700af72eba5374faa6f96f5e952f630d45e1") +sources=("${pkgname}-${pkgver}.tar.gz" + "${_patches[@]}" +) +urls=("https://github.com/HowardHinnant/date/archive/refs/tags/v${pkgver}.tar.gz" + "${_patches[@]}" +) +sha512sums=("e11d7f230ecc431d94c4b58fe7394dd57a9ec0baa9de52496578479b51bbf885566d6666882916d84d388060fa36065b3fa8dd3a8bc14f720b38d1c943f06700" + "${_patche_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -D BUILD_SHARED_LIBS=true + -D BUILD_TZ_LIB=ON + -D USE_SYSTEM_TZ_DB=ON + -D ENABLE_DATE_TESTING=no + -D COMPILE_WITH_C_LOCALE=no + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_check() { + cd test + ./testit +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/dev-libs/date-3.0.3/date-3.0.3_remove-failing-tests.patch b/dev-libs/date-3.0.3/date-3.0.3_remove-failing-tests.patch new file mode 100644 index 0000000..158b282 --- /dev/null +++ b/dev-libs/date-3.0.3/date-3.0.3_remove-failing-tests.patch @@ -0,0 +1,34 @@ +From: Filip Kobierski + +Upstream states that " There are known failures on all platforms"[1]. +This patch removes the tests that fail for Gentoo. +They both test if the library can parse PM dates in a 12 hour format. + +Here are the failiure messages: +test_Ip(): Assertion `tp == sys_days{2016_y/12/11} + hours{13}' failed. +test_p(): Assertion `tp == sys_days{2016_y/12/11} + hours{23}' failed. + +[1]: https://github.com/HowardHinnant/date?tab=readme-ov-file#build--test +--- + test/date_test/parse.pass.cpp | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/test/date_test/parse.pass.cpp b/test/date_test/parse.pass.cpp +index 13ca909..cdeea71 100644 +--- a/test/date_test/parse.pass.cpp ++++ b/test/date_test/parse.pass.cpp +@@ -906,11 +906,9 @@ main() + test_D(); + test_F(); + test_H(); +- test_Ip(); + test_j(); + test_m(); + test_M(); +- test_p(); + test_r(); + test_R(); + test_S(); +-- +2.45.2 + -- 2.49.1 From d8622560aaaf27d8ecd770dfa95e8ce316989c8a Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 05:00:52 -0500 Subject: [PATCH 20/82] nerw bblfs: gui-libs/gtk-layer-shell-0.9.2 --- gui-libs/gtk-layer-shell-0.9.2.PKGBUILD | 38 +++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 gui-libs/gtk-layer-shell-0.9.2.PKGBUILD diff --git a/gui-libs/gtk-layer-shell-0.9.2.PKGBUILD b/gui-libs/gtk-layer-shell-0.9.2.PKGBUILD new file mode 100644 index 0000000..c4467d1 --- /dev/null +++ b/gui-libs/gtk-layer-shell-0.9.2.PKGBUILD @@ -0,0 +1,38 @@ +pkgname=gtk-layer-shell +pkgver=0.9.2 +pkgdesc="Library to create desktop components for Wayland using the Layer Shell protocol" +homepage="https://github.com/wmww/gtk-layer-shell" +license=("MIT-with-advertising" "LGPL-3+") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/wmww/${pkgname}/archive/refs/tags/v${pkgver}.tar.gz") +sha512sums=("7ecbefca73f3bcba709f2b5f4153203592cb345ebce8aee27e75365d615e9a8f66ec28f9d42bae8828da9427082b0df190e820593301a80ac8b730c61a75b708") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D examples=false + -D docs=false + -D tests=true + -D introspection=false + -D vapi=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_check() { + meson test -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 59353fafd211e5cf3a6ac01db2f7d186e779dec8 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 15:13:40 -0500 Subject: [PATCH 21/82] new blfs: dev-libs/libnl-3.10.0 --- dev-libs/libnl-3.10.0.PKGBUILD | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 dev-libs/libnl-3.10.0.PKGBUILD diff --git a/dev-libs/libnl-3.10.0.PKGBUILD b/dev-libs/libnl-3.10.0.PKGBUILD new file mode 100644 index 0000000..d91c55f --- /dev/null +++ b/dev-libs/libnl-3.10.0.PKGBUILD @@ -0,0 +1,33 @@ +pkgname=libnl +pkgver=3.10.0 +_libnl_dir=${pkgver/_/} +_libnl_dir=${_libnl_dir//./_} +slot="3" +pkgdesc="Libraries providing APIs to netlink protocol based Linux kernel interfaces" +homepage="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" +license=("LGPL-2.1") +sources=("${pkgname}-${pkgver/_rc/-rc}.tar.gz") +urls=("https://github.com/thom311/${pkgname}/releases/download/${pkgname}${_libnl_dir}/${sources[0]}") +sha512sums=("c95e79fba69308c63a08d0c576503b4398710ea9cd1d0097851500a7fbc5fbe87fb32ac281cf42bbfe57eab07b110055e6bc9b95d82244bba3df8a31fe562962") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local conf_args=( + --prefix=/usr + --sysconfdir=/etc + --disable-static + --disable-cli + --disable-debug + ) + ./configure "${conf_args[@]}" + make +} + +src_install() { + make DESTDIR="$pkgdir" install +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 02ceb5af376fbbb99d06a65da84cb6a05c1b7480 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 18:45:43 -0500 Subject: [PATCH 22/82] new bblfs: dev-libs/libdbusmenu-16.04.0 --- dev-libs/libdbusmenu-16.04.0.PKGBUILD | 57 +++++++++++++++++++ .../libdbusmenu-16.04.0-configure-fix.patch | 35 ++++++++++++ .../libdbusmenu-16.04.0-werror.patch | 37 ++++++++++++ 3 files changed, 129 insertions(+) create mode 100644 dev-libs/libdbusmenu-16.04.0.PKGBUILD create mode 100644 dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-configure-fix.patch create mode 100644 dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-werror.patch diff --git a/dev-libs/libdbusmenu-16.04.0.PKGBUILD b/dev-libs/libdbusmenu-16.04.0.PKGBUILD new file mode 100644 index 0000000..8861d75 --- /dev/null +++ b/dev-libs/libdbusmenu-16.04.0.PKGBUILD @@ -0,0 +1,57 @@ +pkgname=libdbusmenu +pkgver=16.04.0 +_ver=${pkgver%.*} +slot="0" +pkgdesc="Library to pass menu structure across DBus" +homepage="https://launchpad.net/libdbusmenu" +license=("LGPL-2.1" "LGPL-3") +_patches=("libdbusmenu-16.04.0-configure-fix.patch" + "libdbusmenu-16.04.0-werror.patch" +) +_patch_sums=("e872017556eb7e6b23a9c80e478b9e25be604bd2500be94879bad6634150265bb7b2979fc3cbe05a06dc9f3ca115ab57457853b37c6db622b5ec4bb23abff2bd" + "ba1144695110cd8ecf89deaea28e0aacc40b00a500a1dc86c28e67754599117e0a2217c4d6066c1061fa009af82e463dd303ba78c479053857ef6e793959068e" +) +sources=("${pkgname}-${pkgver}.tar.gz" + "${_patches[@]}" +) +urls=("https://launchpad.net/${pkgname/lib}/${_ver}/${pkgver}/+download/${sources[0]}" + "${_patches[@]}" +) +sha512sums=("ee9654ac4ed94bdebc94a6db83b126784273a417a645b2881b2ba676a5f67d7fc95dd2bb37bfb0890aa47299ed73cb21ed7de8b75f3fed6b69bfd39065062241" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + autoconf +} + +src_build() { + CFLAGS+=" -Wno-error" + + local conf_args=( + --prefix=/usr + --docdir=/usr/share/doc/${pkgname}-${pkgver} + --cache-file="${srcdir}"/config.cache + --disable-static + # dumper extra tool is only for GTK+-2.x + --disable-dumper + --disable-introspection + --disable-vala + --disable-massivedebugging + --disable-tests + --enable-gtk + --with-gtk=3 + ) + ./configure "${conf_args[@]}" + make +} + +src_install() { + make -j1 DESTDIR="$pkgdir" install +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-configure-fix.patch b/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-configure-fix.patch new file mode 100644 index 0000000..a578778 --- /dev/null +++ b/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-configure-fix.patch @@ -0,0 +1,35 @@ +From 4b79b41a25cc1e2c4355738b4bed6c73b919ffee Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +Date: Sun, 6 Aug 2017 17:55:45 +0200 +Subject: [PATCH] configure: Fix HAVE_VALGRIND not being defined when tests are + disabled + +If --disable-tests is used, configure fails with the following error: + + configure: error: conditional "HAVE_VALGRIND" was never defined. + Usually this means the macro was only invoked conditionally. + +This is because AM_CONDITIONAL for it is called inside the 'if' for +tests being enabled. Move it just below that block to ensure that it's +defined unconditionally. +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index ace54d1..cbd38a6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -120,8 +120,8 @@ PKG_CHECK_MODULES(DBUSMENUTESTS, json-glib-1.0 >= $JSON_GLIB_REQUIRED_VERSION + [have_tests=yes] + ) + PKG_CHECK_MODULES(DBUSMENUTESTSVALGRIND, valgrind, have_valgrind=yes, have_valgrind=no) +-AM_CONDITIONAL([HAVE_VALGRIND], [test "x$have_valgrind" = "xyes"]) + ]) ++AM_CONDITIONAL([HAVE_VALGRIND], [test "x$have_valgrind" = "xyes"]) + + AC_SUBST(DBUSMENUTESTS_CFLAGS) + AC_SUBST(DBUSMENUTESTS_LIBS) +-- +2.14.0 + diff --git a/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-werror.patch b/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-werror.patch new file mode 100644 index 0000000..aaa6178 --- /dev/null +++ b/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-werror.patch @@ -0,0 +1,37 @@ +https://bugs.gentoo.org/691260 + +--- a/libdbusmenu-glib/Makefile.am ++++ b/libdbusmenu-glib/Makefile.am +@@ -68,3 +68,3 @@ libdbusmenu_glib_la_CFLAGS = \ + $(COVERAGE_CFLAGS) \ +- -Wall -Werror -Wno-error=deprecated-declarations \ ++ -Wall -Wno-error=deprecated-declarations \ + -DG_LOG_DOMAIN="\"LIBDBUSMENU-GLIB\"" +--- a/libdbusmenu-gtk/Makefile.am ++++ b/libdbusmenu-gtk/Makefile.am +@@ -68,3 +68,3 @@ libdbusmenu_gtk_la_CFLAGS = \ + -I$(top_srcdir) \ +- -Wall -Werror -Wno-error=deprecated-declarations \ ++ -Wall -Wno-error=deprecated-declarations \ + -DG_LOG_DOMAIN="\"LIBDBUSMENU-GTK\"" +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -105,3 +105,3 @@ TESTS_ENVIRONMENT = env GI_TYPELIB_PATH=$(top_builddir)/libdbusmenu-glib:$(top_b + DBUSMENU_GLIB_TEST_CFLAGS = \ +- -Wall -Werror \ ++ -Wall \ + -DG_DISABLE_DEPRECATED \ +--- a/tools/Makefile.am ++++ b/tools/Makefile.am +@@ -18,3 +18,3 @@ dbusmenu_dumper_CFLAGS = \ + $(DBUSMENUDUMPER_CFLAGS) \ +- -Wall -Werror ++ -Wall + +--- a/tools/testapp/Makefile.am ++++ b/tools/testapp/Makefile.am +@@ -14,3 +14,3 @@ dbusmenu_testapp_CFLAGS = \ + $(DBUSMENUGLIB_CFLAGS) \ +- -Wall -Werror ++ -Wall + -- 2.49.1 From 4645511b7407f5e15fd44c124028bab2b7ec2538 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 19:09:59 -0500 Subject: [PATCH 23/82] new blfs: dev-lang/vala-0.56.18 --- dev-lang/vala-0.56.18.PKGBUILD | 49 ++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 dev-lang/vala-0.56.18.PKGBUILD diff --git a/dev-lang/vala-0.56.18.PKGBUILD b/dev-lang/vala-0.56.18.PKGBUILD new file mode 100644 index 0000000..d538ff4 --- /dev/null +++ b/dev-lang/vala-0.56.18.PKGBUILD @@ -0,0 +1,49 @@ +pkgname=vala +pkgver=0.56.18 +pkgrel=5 +pkgdesc='Compiler for the GObject type system' +url='https://wiki.gnome.org/Projects/Vala' +arch=(x86_64) +license=(LGPL-2.1-or-later) +depends=( + bash + gcc + glib:2 + glibc + pkg-config + gobject-introspection +) +makedepends=( + libxslt +) +checkdepends=( + dbus-glib +) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}") +sha512sums=("7ba820942ac40b54a62cbcd8a1d94d5add022b4a2c69e1276fc9fca38361d5878f3f852d270e0a5ef4bca6bd2df3a65f14b410c600b82a46da4123c90a3107e7") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local conf_args=( + --prefix=/usr + --disable-unversioned + --disable-valadoc + VALAC=: + WEASYPRINT=: + ) + ./configure "${conf_args[@]}" + make +} + +src_install() { + make DESTDIR="$pkgdir" install + + install -vDm644 vala.m4 vapigen/vapigen.m4 -t "${pkgdir}/usr/share/aclocal" + install -vDm644 vapigen/Makefile.vapigen -t "${pkgdir}/usr/share/vala" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 7d9c092c2ebbc94c80f072854d51ec7b4b031bab Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 19:28:58 -0500 Subject: [PATCH 24/82] update: enable unversioned in vala --- dev-lang/vala-0.56.18.PKGBUILD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-lang/vala-0.56.18.PKGBUILD b/dev-lang/vala-0.56.18.PKGBUILD index d538ff4..5a6b75e 100644 --- a/dev-lang/vala-0.56.18.PKGBUILD +++ b/dev-lang/vala-0.56.18.PKGBUILD @@ -30,7 +30,7 @@ src_prepare() { src_build() { local conf_args=( --prefix=/usr - --disable-unversioned + #--disable-unversioned --disable-valadoc VALAC=: WEASYPRINT=: -- 2.49.1 From e8b5cb7153333193f805bac9364cb33d8769fd0f Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 19:32:25 -0500 Subject: [PATCH 25/82] new bblfs: dev-libs/ayatana-ido-0.10.4 --- dev-libs/ayatana-ido-0.10.4.PKGBUILD | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 dev-libs/ayatana-ido-0.10.4.PKGBUILD diff --git a/dev-libs/ayatana-ido-0.10.4.PKGBUILD b/dev-libs/ayatana-ido-0.10.4.PKGBUILD new file mode 100644 index 0000000..8bc6d77 --- /dev/null +++ b/dev-libs/ayatana-ido-0.10.4.PKGBUILD @@ -0,0 +1,28 @@ +pkgname=ayatana-ido +pkgver=0.10.4 +pkgdesc="Ayatana Application Indicators (Shared Library)" +homepage="https://github.com/AyatanaIndicators/ayatana-ido" +license=("LGPL-2.1" "LGPL-3" "GPL-3") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/AyatanaIndicators/${pkgname}/archive/${pkgver}.tar.gz") +sha512sums=("a36b67cb505b9340a8193e281c72831b56d6a620054e99e1032145ec0d8d26fe4768402b36ee4d7e115dbbd6fb393cc15c3d71c15d040f5eb22d3d2114f80536") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -D ENABLE_TESTS=false + ) + cmake -B build "${meson_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 4d6bd467a374f9adb0f0b6054b1650366d61792d Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 19:54:55 -0500 Subject: [PATCH 26/82] new blfs: dev-libs/dbus-glib-0.114 --- dev-libs/dbus-glib-0.114.PKGBUILD | 34 +++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 dev-libs/dbus-glib-0.114.PKGBUILD diff --git a/dev-libs/dbus-glib-0.114.PKGBUILD b/dev-libs/dbus-glib-0.114.PKGBUILD new file mode 100644 index 0000000..1071bbd --- /dev/null +++ b/dev-libs/dbus-glib-0.114.PKGBUILD @@ -0,0 +1,34 @@ +pkgname=dbus-glib +pkgver=0.114 +pkgdesc="D-Bus bindings for glib" +homepage="https://dbus.freedesktop.org/" +license=("GPL-2") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://dbus.freedesktop.org/releases/${pkgname}/${sources[0]}") +sha512sums=("c341cc0778edbf776d3e1a6d3cd9c136766544cb4b7239d6affa2fa246fa9c5716fe4d674c9bb56b36ee140344663bf967f70841ad132f978a662a22cc9a3a0d") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local conf_args=( + --prefix=/usr + --sysconfdir=/etc + --localstatedir=/var + --enable-bash-completion + --disable-gtk-doc + --disable-asserts + --disable-static + ) + ./configure "${conf_args[@]}" + make +} + +src_install() { + make DESTDIR="$pkgdir" install + install -vDm644 "${pkgdir}"/etc/bash_completion.d/dbus-bash-completion.sh "${pkgdir}"/usr/share/bash-completion/completions/dbus-send + rm -r "${pkgdir}"/etc +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From e5da6017c35dd4d1ec8868e8762c583859c10484 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 19:58:36 -0500 Subject: [PATCH 27/82] new bblfs: dev-libs/libayatana-indicator-0.9.4 --- dev-libs/libayatana-indicator-0.9.4.PKGBUILD | 32 ++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 dev-libs/libayatana-indicator-0.9.4.PKGBUILD diff --git a/dev-libs/libayatana-indicator-0.9.4.PKGBUILD b/dev-libs/libayatana-indicator-0.9.4.PKGBUILD new file mode 100644 index 0000000..1152f71 --- /dev/null +++ b/dev-libs/libayatana-indicator-0.9.4.PKGBUILD @@ -0,0 +1,32 @@ +pkgname=libayatana-indicator +pkgver=0.9.4 +pkgdesc="Ayatana Application Indicators (Shared Library)" +homepage="https://github.com/AyatanaIndicators/libayatana-indicator" +license=("GPL-3") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/AyatanaIndicators/${pkgname}/archive/${pkgver}.tar.gz") +sha512sums=("56efbe0eb14abf38cb7e270ae093b5fb41dab652eab6fa0d3f7972b09b0f2404e3ec7fbb3059c0b26802fffc628f5ace16a33db306f97a65ae42cf65494a56dc") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -D FLAVOUR_GTK2=OFF + -D FLAVOUR_GTK3=ON + -D ENABLE_IDO=ON + -D ENABLE_LOADER=ON + -D ENABLE_TESTS=false + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 49541a3013127547a2d44454689223f1303a7cf5 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 21:05:53 -0500 Subject: [PATCH 28/82] new bblfs: dev-libs/libayatana-appindicator-0.5.94 --- .../libayatana-appindicator-0.5.94.PKGBUILD | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 dev-libs/libayatana-appindicator-0.5.94.PKGBUILD diff --git a/dev-libs/libayatana-appindicator-0.5.94.PKGBUILD b/dev-libs/libayatana-appindicator-0.5.94.PKGBUILD new file mode 100644 index 0000000..cdd6e7d --- /dev/null +++ b/dev-libs/libayatana-appindicator-0.5.94.PKGBUILD @@ -0,0 +1,33 @@ +pkgname=libayatana-appindicator +pkgver=0.5.94 +pkgdesc="Ayatana Application Indicators (Shared Library)" +homepage="https://github.com/AyatanaIndicators/libayatana-appindicator" +license=(GPL-3 LGPL-2 LGPL-3) +depends=("glib" "gtk+:3[introspection]" "libdbusmenu[gtk3]" "libayatana-indicator") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/AyatanaIndicators/${pkgname}/archive/${pkgver}.tar.gz") +sha512sums=("4bd251dd56601dfb99b0085cc272118680c9145cdac671ad6695ef3200e582343a07e99dc30f5a72b586b6e2e60de0042d4a95b9d9eeafa7695b0afe2425dba4") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -D ENABLE_TESTS=false + -D ENABLE_GTKDOC=OFF + -D ENABLE_BINDINGS_MONO=OFF + -D FLAVOUR_GTK2=OFF + -D FLAVOUR_GTK3=ON + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 84696e006e733f89479b2347e1842a970101fe94 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Thu, 15 Jan 2026 21:27:47 -0500 Subject: [PATCH 29/82] new bblfs: gui-apps/waybar-0.14.0 --- gui-apps/waybar-0.14.0.PKGBUILD | 101 ++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 gui-apps/waybar-0.14.0.PKGBUILD diff --git a/gui-apps/waybar-0.14.0.PKGBUILD b/gui-apps/waybar-0.14.0.PKGBUILD new file mode 100644 index 0000000..d446d59 --- /dev/null +++ b/gui-apps/waybar-0.14.0.PKGBUILD @@ -0,0 +1,101 @@ +pkgname=waybar +pkgver=0.14.0 +pkgdesc="Highly customizable Wayland bar for Sway and Wlroots based compositors" +homepage="https://github.com/Alexays/Waybar" +license=("MIT") +BDEPEND=" + >=app-text/scdoc-1.9.2 + dev-util/gdbus-codegen + dev-util/wayland-scanner + virtual/pkgconfig +" +RDEPEND=" + dev-cpp/cairomm:0 + dev-cpp/glibmm:2 + dev-cpp/gtkmm:3.0 + dev-libs/glib:2 + dev-libs/jsoncpp:= + dev-libs/libsigc++:2 + >=dev-libs/libfmt-8.1.1:= + >=dev-libs/spdlog-1.10.0:= + dev-libs/date:= + dev-libs/wayland + >=gui-libs/gtk-layer-shell-0.9.0 + media-video/pipewire:= + x11-libs/gtk+:3[wayland] + x11-libs/libxkbcommon + evdev? ( dev-libs/libevdev ) + gps? ( sci-geosciences/gpsd:= ) + jack? ( virtual/jack ) + libinput? ( dev-libs/libinput:= ) + logind? ( + || ( sys-apps/systemd + sys-auth/elogind ) + ) + mpd? ( media-libs/libmpdclient ) + mpris? ( >=media-sound/playerctl-2 ) + network? ( dev-libs/libnl:3 ) + pipewire? ( media-video/wireplumber:0/0.5 ) + pulseaudio? ( media-libs/libpulse ) + sndio? ( media-sound/sndio:= ) + systemd? ( sys-apps/systemd:= ) + tray? ( + dev-libs/libayatana-appindicator + dev-libs/libdbusmenu[gtk3] + ) + udev? ( virtual/libudev:= ) + upower? ( sys-power/upower:= ) + wifi? ( sys-apps/util-linux ) +" +DEPEND="${RDEPEND} + dev-libs/wayland-protocols + test? ( dev-cpp/catch:0 ) +" +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/Alexays/${pkgname}/archive/${pkgver}.tar.gz") +sha512sums=("dc3d18f7117be8cce5979029110770699b0d9d737337c3cf27361d6ceda6fcde33dac9781e406a70eb24c9e0e95e3801d47e81d44bfb61c311510fb30dd975a7") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D man-pages=disabled + -D cava=disabled # depends on LukashonakV/cava fork, but media-sound/cava is karlstav/cava + -D libevdev=disabled + -D gps=disabled + -D jack=disabled + -D libinput=enabled + -D logind=enabled + -D mpd=disabled + -D mpris=disabled + -D libnl=enabled + -D pulseaudio=enabled + -D wireplumber=enabled + -D pipewire=enabled + -D sndio=disabled + -D systemd=enabled + -D tests=disabled + -D dbusmenu-gtk=enabled + -D libudev=enabled + -D upower_glib=disabled + -D rfkill=disabled + -D login-proxy=false + -D experimental=false + -D niri=false + ) + meson setup build "${meson_args[@]}" + meson configure build --no-pager + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From de06823946040d7e6c8f7549b838831f5bc97d74 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Fri, 16 Jan 2026 00:58:57 -0500 Subject: [PATCH 30/82] new bblfs: dev-cpp/sdbus-c++-2.1.0 --- dev-cpp/sdbus-c++-2.1.0.PKGBUILD | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 dev-cpp/sdbus-c++-2.1.0.PKGBUILD diff --git a/dev-cpp/sdbus-c++-2.1.0.PKGBUILD b/dev-cpp/sdbus-c++-2.1.0.PKGBUILD new file mode 100644 index 0000000..b4137b5 --- /dev/null +++ b/dev-cpp/sdbus-c++-2.1.0.PKGBUILD @@ -0,0 +1,32 @@ +pkgname=sdbus-c++ +pkgver=2.1.0 +pkgdesc="High-level C++ D-Bus library" +homepage="https://github.com/Kistler-Group/sdbus-cpp" +license=("LGPL-2.1+" "Nokia-Qt-LGPL-Exception-1.1") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/Kistler-Group/sdbus-cpp/archive/refs/tags/v${pkgver}.tar.gz") +sha512sums=("4247d49f0d5231e2768c0c96fa9c266bbcc340292c9c3d748f9c37ff992b82301faea798300f916e9a5c992d77adfe56186866c91a4c7d4157750ff09ba5a047") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -D SDBUSCPP_BUILD_CODEGEN=false + -D SDBUSCPP_BUILD_DOCS=yes + -D SDBUSCPP_BUILD_DOXYGEN_DOCS=false + -D SDBUSCPP_BUILD_LIBSYSTEMD=no + -D SDBUSCPP_BUILD_TESTS=false + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 51fe871ed4d78d4adae2700902be771b77672e11 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Fri, 16 Jan 2026 01:10:18 -0500 Subject: [PATCH 31/82] new bblfs: dev-libs/inih-62 --- dev-libs/inih-62.PKGBUILD | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 dev-libs/inih-62.PKGBUILD diff --git a/dev-libs/inih-62.PKGBUILD b/dev-libs/inih-62.PKGBUILD new file mode 100644 index 0000000..850cc35 --- /dev/null +++ b/dev-libs/inih-62.PKGBUILD @@ -0,0 +1,33 @@ +pkgname=inih +pkgver=62 +pkgdesc="inih (INI not invented here) simple .INI file parser" +homepage="https://github.com/benhoyt/inih" +license=("BSD") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/benhoyt/inih/archive/r${pkgver}.tar.gz") +sha512sums=("206ddfaa55d29396c3a44f8d1dfcf578c5ebf892e81fe875cd6b4ec2af5cccf400ca13fc6585b6d8232bd122bd8aef7522bfc83898b5609b29c20bad9390ee02") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D default_library=shared + -D distro_install=true + -D with_INIReader=true + -D tests=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From d83aa24c9106ac28740892d4fb1e55c5abf7f4aa Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Fri, 16 Jan 2026 12:23:45 -0500 Subject: [PATCH 32/82] new blfs: dev-libs/json-glib-1.10.8 --- dev-libs/json-glib-1.10.8.PKGBUILD | 39 ++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 dev-libs/json-glib-1.10.8.PKGBUILD diff --git a/dev-libs/json-glib-1.10.8.PKGBUILD b/dev-libs/json-glib-1.10.8.PKGBUILD new file mode 100644 index 0000000..a8c235b --- /dev/null +++ b/dev-libs/json-glib-1.10.8.PKGBUILD @@ -0,0 +1,39 @@ +pkgname=json-glib +pkgver=1.10.8 +pkgdesc="Library providing GLib serialization and deserialization for the JSON format" +homepage="https://wiki.gnome.org/Projects/JsonGlib" +license=("LGPL-2.1+") +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}") +sha512sums=("f4ba8660b586a4e738803e4dbfdfcd34fa7ceba9189e7bf3f2b50e21f4d4886f99535ceb3453c89b1d1ae8d96bf4168a135b73b7e1a2dbc46b19e9b710ad56a1") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nofallback + -D python.bytecompile=1 + -D installed_tests=false + -D introspection=enabled + -D documentation=disabled + -D man=true + -D nls=enabled + -D tests=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_check() { + meson test -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From e153b5137b70c00972fd5a4b0af3ce07483cd8a5 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Fri, 16 Jan 2026 16:23:10 -0500 Subject: [PATCH 33/82] new blfs: sys-fs/fuse-3.17.4 --- sys-fs/fuse-3.17.4.PKGBUILD | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 sys-fs/fuse-3.17.4.PKGBUILD diff --git a/sys-fs/fuse-3.17.4.PKGBUILD b/sys-fs/fuse-3.17.4.PKGBUILD new file mode 100644 index 0000000..1f20cdb --- /dev/null +++ b/sys-fs/fuse-3.17.4.PKGBUILD @@ -0,0 +1,37 @@ +pkgname=fuse +pkgver=3.17.4 +pkgdesc='Interface for userspace programs to export a filesystem to the Linux kernel' +homepage='https://github.com/libfuse/libfuse' +arch=('x86_64') +license=('GPL2') +makedepends=('pkg-config' 'meson' 'udev') +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/libfuse/libfuse/releases/download/${pkgname}-${pkgver}/${sources[0]}") +sha512sums=("5451b374ceadb4cb5a8f0c396f1111932ec63984b80dfad7a76258c026b4e8e5ab4a563bb4a9e272d7fa62a5f452113885d4c3ea080a9f56b6aeb85d50c01010") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D examples=false + -D tests=false + -D useroot=false + -D initscriptdir= + -D udevrulesdir="/usr/lib/udev/rules.d" + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" + chmod -v u+s "${pkgdir}"/usr/bin/fusermount3 +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 919a7bee2728e11e76f96c32cca158958de0110d Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Fri, 16 Jan 2026 16:56:15 -0500 Subject: [PATCH 34/82] fix lfs/zstd: change prefix in .pc --- lfs/{zstd-1.5.7.PKGBUILD => zstd-1.5.7-r1.PKGBUILD} | 3 +++ 1 file changed, 3 insertions(+) rename lfs/{zstd-1.5.7.PKGBUILD => zstd-1.5.7-r1.PKGBUILD} (84%) diff --git a/lfs/zstd-1.5.7.PKGBUILD b/lfs/zstd-1.5.7-r1.PKGBUILD similarity index 84% rename from lfs/zstd-1.5.7.PKGBUILD rename to lfs/zstd-1.5.7-r1.PKGBUILD index db69810..5261a0e 100644 --- a/lfs/zstd-1.5.7.PKGBUILD +++ b/lfs/zstd-1.5.7-r1.PKGBUILD @@ -24,5 +24,8 @@ src_check() { src_install() { make prefix="${pkgdir}/usr" install + sed -i 's|^prefix=.*$|prefix=/usr|' "${pkgdir}"/usr/lib/pkgconfig/*.pc rm -v "${pkgdir}/usr/lib/libzstd.a" } + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 838817db4c844f45b16b9f56b55272b68196076e Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Fri, 16 Jan 2026 17:22:06 -0500 Subject: [PATCH 35/82] new blfs: sys-apps/xdg-desktop-portal-1.20.3 --- sys-apps/xdg-desktop-portal-1.20.3.PKGBUILD | 62 +++++++++++ ...top-portal-1.20.0-optional-gstreamer.patch | 104 ++++++++++++++++++ 2 files changed, 166 insertions(+) create mode 100644 sys-apps/xdg-desktop-portal-1.20.3.PKGBUILD create mode 100644 sys-apps/xdg-desktop-portal-1.20.3/xdg-desktop-portal-1.20.0-optional-gstreamer.patch diff --git a/sys-apps/xdg-desktop-portal-1.20.3.PKGBUILD b/sys-apps/xdg-desktop-portal-1.20.3.PKGBUILD new file mode 100644 index 0000000..6b33bd0 --- /dev/null +++ b/sys-apps/xdg-desktop-portal-1.20.3.PKGBUILD @@ -0,0 +1,62 @@ +pkgname=xdg-desktop-portal +pkgver=1.20.3 +pkgdesc="Desktop integration portal" +homepage="https://flatpak.github.io/xdg-desktop-portal/ https://github.com/flatpak/xdg-desktop-portal" +depends=( + fuse:3 + gcc + gdk-pixbuf + glib:2 + glibc + json-glib + pipewire + systemd +) +makedepends=(meson) +license=("LGPL-2.1") +_patches=("${pkgname}-1.20.0-optional-gstreamer.patch") +_patch_sums=("c5bc6278630df40c61904eb7315f1888ae7502e74de9f8978e27df2acf79fe5ea6887b92d99a38849057ec65f7d8750bf59568ad530ad878f81c63123dc1677c") +sources=("${pkgname}-${pkgver}.tar.xz" + "${_patches[@]}" +) +urls=("https://github.com/flatpak/${pkgname}/releases/download/${pkgver}/${sources[0]}" + "${_patches[@]}" +) +sha512sums=("e3da40bb102f7a391b062baa5517460b47e653f10412237aebb9d32b375db51bee3e365cabd5cb2d9059f2f52cfa5b7bf364555ee1ff892d97e61841ddbc870e" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D flatpak-interfaces=disabled + -D geoclue=disabled + -D gudev=disabled + -D sandboxed-image-validation=disabled + -D sandboxed-sound-validation=disabled + -D systemd=enabled + -D documentation=disabled + -D datarootdir="/usr/share" + -D man-pages=enabled + -D installed-tests=false + -D tests=disabled + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/sys-apps/xdg-desktop-portal-1.20.3/xdg-desktop-portal-1.20.0-optional-gstreamer.patch b/sys-apps/xdg-desktop-portal-1.20.3/xdg-desktop-portal-1.20.0-optional-gstreamer.patch new file mode 100644 index 0000000..e89844a --- /dev/null +++ b/sys-apps/xdg-desktop-portal-1.20.3/xdg-desktop-portal-1.20.0-optional-gstreamer.patch @@ -0,0 +1,104 @@ +https://bugs.gentoo.org/951611 +https://bugs.gentoo.org/951609 +https://github.com/flatpak/xdg-desktop-portal/issues/1650 +https://github.com/flint2/gentoo/blob/7c8a4b4deb84826f20a7c8af1a0f125cd4942b4a/sys-apps/xdg-desktop-portal/files/xdg-desktop-portal-1.20.0-disable-gstreamer.patch + +gstreamer is searched for unconditionally, but we don't have gstreamer-pbutils +packaged yet, so that's a problem. Make it conditional for now (as it ought +to be upstream either way if they're going to have an option for it). +--- a/meson.build ++++ b/meson.build +@@ -112,7 +112,7 @@ gio_unix_dep = dependency('gio-unix-2.0') + json_glib_dep = dependency('json-glib-1.0') + fuse3_dep = dependency('fuse3', version: '>= 3.10.0') + gdk_pixbuf_dep = dependency('gdk-pixbuf-2.0') +-gst_pbutils_dep = dependency('gstreamer-pbutils-1.0') ++gst_pbutils_dep = dependency('gstreamer-pbutils-1.0', required: get_option('sandboxed-sound-validation')) + geoclue_dep = dependency( + 'libgeoclue-2.0', + version: '>= 2.5.2', +@@ -122,8 +122,8 @@ pipewire_dep = dependency('libpipewire-0.3', version: '>= 0.2.90') + libsystemd_dep = dependency('libsystemd', required: get_option('systemd')) + gudev_dep = dependency('gudev-1.0', required: get_option('gudev')) + umockdev_dep = dependency('umockdev-1.0', required: get_option('tests')) +- +-gst_inspect = find_program('gst-inspect-1.0', required: false) ++gst_inspect = find_program('gst-inspect-1.0', required: get_option('sandboxed-sound-validation')) ++have_gst_inspect = gst_inspect.found() + if gst_inspect.found() + have_wav_parse = run_command( + gst_inspect, 'wavparse', '--exists', +@@ -132,6 +132,7 @@ if gst_inspect.found() + else + have_wav_parse = false + endif ++ + if have_wav_parse + config_h.set('HAVE_WAV_PARSE', 1) + endif +@@ -224,7 +225,7 @@ enable_tests = get_option('tests') \ + .require(python.found() and python.language_version().version_compare('>=3.9'), + error_message: 'Python version >=3.9 is required') \ + .require(umockdev_dep.found()) \ +- .require(have_wav_parse, ++ .require(not have_wav_parse and not get_option('sandboxed-sound-validation').allowed(), + error_message: 'gst-inspect and the wavparse plugins are required') \ + .allowed() + +--- a/src/meson.build ++++ b/src/meson.build +@@ -206,14 +206,16 @@ if bwrap.found() + validate_sound_c_args += '-DHELPER="@0@"'.format(bwrap.full_path()) + endif + +-xdp_validate_sound = executable( +- 'xdg-desktop-portal-validate-sound', +- 'validate-sound.c', +- dependencies: [gst_pbutils_dep], +- c_args: validate_sound_c_args, +- install: true, +- install_dir: libexecdir, +-) ++if gst_inspect.found() ++ xdp_validate_sound = executable( ++ 'xdg-desktop-portal-validate-sound', ++ 'validate-sound.c', ++ dependencies: [gst_pbutils_dep], ++ c_args: validate_sound_c_args, ++ install: true, ++ install_dir: libexecdir, ++ ) ++endif + + configure_file( + input: 'xdg-desktop-portal-rewrite-launchers.service.in', +--- a/tests/meson.build ++++ b/tests/meson.build +@@ -94,7 +94,6 @@ pytest_files = [ + 'test_inhibit.py', + 'test_inputcapture.py', + 'test_location.py', +- 'test_notification.py', + 'test_openuri.py', + 'test_permission_store.py', + 'test_print.py', +@@ -122,7 +121,6 @@ template_files = [ + 'templates/__init__.py', + 'templates/inputcapture.py', + 'templates/lockdown.py', +- 'templates/notification.py', + 'templates/print.py', + 'templates/remotedesktop.py', + 'templates/screenshot.py', +@@ -131,6 +129,11 @@ template_files = [ + 'templates/wallpaper.py', + ] + ++if have_gst_inspect ++ template_files += ['templates/notification.py'] ++ pytest_files += ['test_notification.py'] ++endif ++ + foreach pytest_file : pytest_files + testname = pytest_file.replace('.py', '').replace('test_', '') + test( -- 2.49.1 From dea6b05db9141d1aa5f5c086c2c46c4f4a3fc594 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Fri, 16 Jan 2026 17:47:23 -0500 Subject: [PATCH 36/82] new bblfs: gui-libs/xdg-desktop-portal-wlr-0.7.1 --- .../xdg-desktop-portal-wlr-0.7.1.PKGBUILD | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 gui-libs/xdg-desktop-portal-wlr-0.7.1.PKGBUILD diff --git a/gui-libs/xdg-desktop-portal-wlr-0.7.1.PKGBUILD b/gui-libs/xdg-desktop-portal-wlr-0.7.1.PKGBUILD new file mode 100644 index 0000000..47a2524 --- /dev/null +++ b/gui-libs/xdg-desktop-portal-wlr-0.7.1.PKGBUILD @@ -0,0 +1,46 @@ +pkgname=xdg-desktop-portal-wlr +pkgver=0.7.1 +pkgdesc='xdg-desktop-portal backend for wlroots' +homepage="https://github.com/emersion/xdg-desktop-portal-wlr" +arch=('x86_64') +license=('MIT') +provides=('xdg-desktop-portal-impl') +depends=( + 'libdrm' + 'inih' + 'pipewire' + 'mesa' + 'systemd' + 'wayland' + 'xdg-desktop-portal' +) +makedepends=( + 'meson' + 'wayland-protocols' +) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/emersion/${pkgname}/releases/download/v${pkgver}/${sources[0]}") +sha512sums=("87aa5255d3de3203c2bfa6986c2acbffbfd414d12fb72aeca25249d3b528ffb948858a787c9c4206b18faaddd6ce09c95c257e969cc3cfeee8e376c3846f2b9d") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D sd-bus-provider=libsystemd + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" + install -vDm644 "contrib/wlroots-portals.conf" -t "${pkgdir}/usr/share/xdg-desktop-portal" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 83cb8020bea29c5bd21fb7e5da5e4d1e88446c75 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 02:33:35 -0500 Subject: [PATCH 37/82] new bblfs: gui-apps/awww-0.11.2 --- gui-apps/awww-0.11.2.PKGBUILD | 44 +++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 gui-apps/awww-0.11.2.PKGBUILD diff --git a/gui-apps/awww-0.11.2.PKGBUILD b/gui-apps/awww-0.11.2.PKGBUILD new file mode 100644 index 0000000..ef9768b --- /dev/null +++ b/gui-apps/awww-0.11.2.PKGBUILD @@ -0,0 +1,44 @@ +pkgname=awww +pkgver=0.11.2 +pkgdesc="Efficient animated wallpaper daemon for wayland, controlled at runtime" +homepage="https://codeberg.org/LGFae/awww" +depends=( + dav1d + gcc + glibc + lz4 +) +makedepends=( + cargo + scdoc + wayland + wayland-protocols +) +license=(GPL-3) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://codeberg.org/LGFae/${pkgname}/archive/refs/tags/v${pkgver}.tar.gz") +sha512sums=("586637b4df570ed064f88ae1307a55652e55dc40739fde0c91852d13feed5897a0b32bf8d166723d42ef43884ceea0fba1e42d1fabb148943fc30831bca33159") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + cargo fetch --locked +} + +src_build() { + cargo build --frozen --release --all-features + ./doc/gen.sh +} + +src_install() { + install -vDm755 -t "$pkgdir/usr/bin" \ + target/release/swww \ + target/release/swww-daemon + + install -vDm644 -t "${pkgdir}/usr/share/man/man1" doc/generated/*.1 + + install -vDm644 completions/swww.bash "${pkgdir}/usr/share/bash-completion/completions/awww" + install -vDm644 completions/_swww -t "${pkgdir}/usr/share/zsh/site-functions" + install -vDm644 completions/swww.fish -t "${pkgdir}/usr/share/fish/vendor_completions.d" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 3e5349a1ca5d6704bfc495545138a2e4a5552065 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 03:00:07 -0500 Subject: [PATCH 38/82] new bblfs: gui-apps/rofi-2.0.0 --- gui-apps/rofi-2.0.0.PKGBUILD | 38 ++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 gui-apps/rofi-2.0.0.PKGBUILD diff --git a/gui-apps/rofi-2.0.0.PKGBUILD b/gui-apps/rofi-2.0.0.PKGBUILD new file mode 100644 index 0000000..34541e0 --- /dev/null +++ b/gui-apps/rofi-2.0.0.PKGBUILD @@ -0,0 +1,38 @@ +pkgname=rofi +pkgver=2.0.0 +pkgdesc="A window switcher, application launcher and dmenu replacement" +homepage="https://davatorium.github.io/rofi" +arch=('x86_64') +license=('MIT') +depends=('bash' 'cairo' 'gdk-pixbuf:2' 'glib:2' 'glibc' 'libxkbcommon' 'pango' 'wayland') +makedepends=('meson' 'pandoc' 'wayland-protocols') +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://github.com/davatorium/rofi/releases/download/${pkgver}/${sources[0]}") +sha512sums=("0531f7da2a6e363b2c97c47778cadc4a84eb58903ea91ce683ff98d7c6e23172fa0df59a42f7236a4a0e80020c21c72cbc126ffe260491082ab9cc19ef6673d5") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D drun=true + -D window=true + -D check=disabled + -D wayland=enabled + -D xcb=disabled + -D imdkit=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 762b867afee90ebc53162e7ff6f38500f7f61645 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 03:13:27 -0500 Subject: [PATCH 39/82] new blfs: dev-libs/libsass-3.6.6 --- dev-libs/libsass-3.6.6.PKGBUILD | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 dev-libs/libsass-3.6.6.PKGBUILD diff --git a/dev-libs/libsass-3.6.6.PKGBUILD b/dev-libs/libsass-3.6.6.PKGBUILD new file mode 100644 index 0000000..e0211f2 --- /dev/null +++ b/dev-libs/libsass-3.6.6.PKGBUILD @@ -0,0 +1,32 @@ +pkgname=libsass +pkgver=3.6.6 +pkgdesc='C implementation of Sass CSS preprocessor (library)' +arch=(x86_64) +homepage="https://sass-lang.com/$pkgname/" +license=(MIT) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/sass/libsass/archive/${pkgver}.tar.gz") +sha512sums=("659828c854af391c10a16954425fbeeb5fa036189dea45555cd8046338f7469eb7f8d84134030ce644921514b8f397ef6070b56dfb116ea7ce94328d64576518") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + [[ -f VERSION ]] || echo "${pkgver}" > VERSION + autoreconf -i +} + +src_build() { + local conf_args=( + --prefix=/usr + --disable-static + --enable-shared + ) + ./configure "${conf_args[@]}" + make +} + +src_install() { + make DESTDIR="$pkgdir" install + install -vDm0644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From fe7bc6addc1030c51796fe38acf6fa97e86d6b3c Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 03:23:16 -0500 Subject: [PATCH 40/82] new blfs: dev-lang/sassc-3.6.2 --- dev-lang/sassc-3.6.2.PKGBUILD | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 dev-lang/sassc-3.6.2.PKGBUILD diff --git a/dev-lang/sassc-3.6.2.PKGBUILD b/dev-lang/sassc-3.6.2.PKGBUILD new file mode 100644 index 0000000..2a2d293 --- /dev/null +++ b/dev-lang/sassc-3.6.2.PKGBUILD @@ -0,0 +1,34 @@ +pkgname=sassc +pkgver=3.6.2 +pkgrel=5 +pkgdesc='C implementation of Sass CSS preprocessor' +arch=(x86_64) +url='https://sass-lang.com' +license=(MIT) +depends=(libsass) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/sass/sassc/archive/${pkgver}.tar.gz") +sha256sums=("608dc9002b45a91d11ed59e352469ecc05e4f58fc1259fc9a9f5b8f0f8348a03") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + [[ -f VERSION ]] || echo "${pkgver}" > VERSION + autoreconf -i +} + +src_build() { + local conf_args=( + --prefix=/usr + --disable-static + --enable-shared + ) + ./configure "${conf_args[@]}" + make +} + +src_install() { + make DESTDIR="$pkgdir" install + install -vDm0644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From a8281b298bf34adab27bd8e988cc4726dda0f5ea Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 03:41:04 -0500 Subject: [PATCH 41/82] new blfs: dev-libs/libgee-0.20.8 --- dev-libs/libgee-0.20.8.PKGBUILD | 34 +++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 dev-libs/libgee-0.20.8.PKGBUILD diff --git a/dev-libs/libgee-0.20.8.PKGBUILD b/dev-libs/libgee-0.20.8.PKGBUILD new file mode 100644 index 0000000..2f83404 --- /dev/null +++ b/dev-libs/libgee-0.20.8.PKGBUILD @@ -0,0 +1,34 @@ +pkgname=libgee +pkgver=0.20.8 +pkgdesc="A collection library providing GObject-based interfaces and classes for commonly used data structures" +homepage="https://gitlab.gnome.org/GNOME/libgee" +license=(LGPL-2.1-or-later) +arch=(x86_64) +depends=( + glib + glibc +) +makedepends=( + git + gobject-introspection + vala +) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}") +sha512sums=("9af883bb4b2c25c429271201e634d1851378631b913bab282fe432b2b76a44674111e65caa99269fd403454c87b5474f2567c554bddd0b3ea58ca6e138c311e1") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + ./configure --prefix=/usr --disable-static \ + --enable-introspection + make +} + +src_install() { + make DESTDIR="$pkgdir" install +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From f83b3429c7adcf22ae9850f75a27e52c5f1a1662 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 04:03:55 -0500 Subject: [PATCH 42/82] new blfs: media-libs/graphene-1.10.8 --- media-libs/graphene-1.10.8.PKGBUILD | 46 +++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 media-libs/graphene-1.10.8.PKGBUILD diff --git a/media-libs/graphene-1.10.8.PKGBUILD b/media-libs/graphene-1.10.8.PKGBUILD new file mode 100644 index 0000000..202a65e --- /dev/null +++ b/media-libs/graphene-1.10.8.PKGBUILD @@ -0,0 +1,46 @@ +pkgname=graphene +pkgver=1.10.8 +pkgrel=2 +pkgdesc="Thin layer of graphic data types" +gomepage="https://ebassi.github.io/graphene/" +arch=(x86_64) +license=(MIT) +depends=( + glib:2 + glibc +) +makedepends=( + gobject-introspection + meson +) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/ebassi/graphene/archive/refs/tags/${pkgver}.tar.gz") +sha512sums=("526b0c17049459b687ceb7f6c26c9d982535e4048e74a0b6282704f9811d3c2e7e0e6cfef166aa953306b6cf77add6677bc600ae0c66cc052dc04c3d0345bd68") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D gtk_doc=false + -D gobject_types=true + -D introspection=enabled + -D gcc_vector=true + -D sse2=true + -D tests=false + -D installed_tests=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 4f7b401574cca976a72dd3da0e2cdba19536bc7a Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 04:23:59 -0500 Subject: [PATCH 43/82] new blfs: app-text/iso-codes-4.18.0 --- app-text/iso-codes-4.18.0.PKGBUILD | 35 ++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 app-text/iso-codes-4.18.0.PKGBUILD diff --git a/app-text/iso-codes-4.18.0.PKGBUILD b/app-text/iso-codes-4.18.0.PKGBUILD new file mode 100644 index 0000000..dcb81dd --- /dev/null +++ b/app-text/iso-codes-4.18.0.PKGBUILD @@ -0,0 +1,35 @@ +pkgname=iso-codes +pkgver=4.18.0 +pkgdesc='Lists of the country, language, and currency names' +homepage='https://salsa.debian.org/iso-codes-team/iso-codes' +arch=(any) +license=(LGPL-2.1-only) +makedepends=(meson python) +sources=("${pkgname}-v${pkgver}.tar.gz") +urls=("https://salsa.debian.org/${pkgname}-team/${pkgname}/-/archive/v${pkgver}/${sources[0]}") +sha512sums=("4f9766b3e73a155df3213d5684f0b4c2aefe3efcdc30b2a969913a90deb73e1cbd32a63c2f00c736517c1feed790944d12155410d3c4d381749c39ecd1f71f96") +options=('!strip') + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + # local meson_args=( + # --prefix=/usr + # --buildtype=release + # --wrap-mode=nodownload + # -D python.bytecompile=1 + # ) + # meson setup build "${meson_args[@]}" + # meson compile -C build + ./configure --prefix=/usr + make +} + +src_install() { + # meson install -C build --destdir "$pkgdir" + make install LN_S='ln -sfn' DESTDIR="${pkgdir}" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 99cd254663591f772757cfc7040ccefba183a3d3 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 06:25:30 -0500 Subject: [PATCH 44/82] fix dev-libs/gobject-introspection-1.84.0: basever --- dev-libs/gobject-introspection-1.84.0.PKGBUILD | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dev-libs/gobject-introspection-1.84.0.PKGBUILD b/dev-libs/gobject-introspection-1.84.0.PKGBUILD index f4ed849..66b9b7f 100644 --- a/dev-libs/gobject-introspection-1.84.0.PKGBUILD +++ b/dev-libs/gobject-introspection-1.84.0.PKGBUILD @@ -1,5 +1,6 @@ pkgname=gobject-introspection pkgver=1.84.0 +_basever=${pkgver%.*} pkgdesc="Introspection system for GObject-based libraries" url="https://wiki.gnome.org/Projects/GObjectIntrospection" arch=(x86_64) @@ -33,3 +34,5 @@ src_install() { python -m compileall -d /usr/lib/${pkgname} usr/lib/${pkgname} python -O -m compileall -d /usr/lib/${pkgname} usr/lib/${pkgname} } + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 7d6f7bd91c21b5b2c37d2f4a548e06d2021d18b6 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 06:26:20 -0500 Subject: [PATCH 45/82] new bblfs: media-libs/shaderc-2025.4 --- media-libs/shaderc-2025.4.PKGBUILD | 69 +++++++++++++++++++ .../shaderc-2020.4-fix-build.patch | 13 ++++ 2 files changed, 82 insertions(+) create mode 100644 media-libs/shaderc-2025.4.PKGBUILD create mode 100644 media-libs/shaderc-2025.4/shaderc-2020.4-fix-build.patch diff --git a/media-libs/shaderc-2025.4.PKGBUILD b/media-libs/shaderc-2025.4.PKGBUILD new file mode 100644 index 0000000..4d45cf4 --- /dev/null +++ b/media-libs/shaderc-2025.4.PKGBUILD @@ -0,0 +1,69 @@ +pkgname=shaderc +pkgver=2025.4 +pkgdesc='Collection of tools, libraries and tests for shader compilation' +homepage='https://github.com/google/shaderc' +arch=('x86_64') +license=('Apache-2.0') +depends=('glibc' 'gcc' 'glslang' 'spirv-tools') +makedepends=('cmake' 'ninja' 'python' 'spirv-headers') +_patches=("shaderc-2020.4-fix-build.patch") +_patch_sums=("95cbd65997146c3ba018c81d49f90a7713f99f5bc86b6c30d6c83ca9bb139309df763d325b75c9b1d02ca60ed3bddd003eb08e64e3856867bc15d58c620341ed") +sources=("${pkgname}-${pkgver}.tar.gz" + "${_patches[@]}" +) +urls=("https://github.com/google/${pkgname}/archive/v${pkgver}.tar.gz" + "${_patches[@]}" +) +sha512sums=("78a1dac0bd80c447193680066970343413cf504314d0f9a0af772181cf2e673b22b0d467a06cefa9743f451e1c0c9445ade82d3ee68eae927a4c784ec2ca15e3" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + + sed '/examples/d;/third_party/d' -i CMakeLists.txt + sed -i \ + -e "s|\$|/usr/bin/spirv-dis|" \ + glslc/test/CMakeLists.txt + + # Disable git versioning + sed -i -e '/build-version/d' glslc/CMakeLists.txt + + # Manually create build-version.inc as we disabled git versioning + local spirv_tools_ver + if ! spirv_tools_ver="$(leaf query spirv-tools | awk '{print $3}')"; then + leaf_error "leaf query spirv-tools failed. Please check spirv-tools installation." + fi + local glslang_ver + if ! glslang_ver="$(leaf query glslang | awk '{print $3}')"; then + leaf_error "leaf query glslang failed. Please check glslang installation." + fi + cat <<- EOF > glslc/src/build-version.inc +"${pkgver}\\n" +"${spirv_tools_ver}\\n" +"${glslang_ver}\\n" +EOF +} + +src_build() { + local cmake_args=( + -DCMAKE_BUILD_TYPE=Release + -DCMAKE_INSTALL_PREFIX=/usr + -DCMAKE_CXX_FLAGS="$CXXFLAGS -ffat-lto-objects" + -DSHADERC_SKIP_TESTS=ON + -DSHADERC_ENABLE_WERROR_COMPILE="false" + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build + #find "${pkgdir}" --type f --name "*.a" -delete + #rm "${pkgdir}/usr/lib/pkgconfig/shaderc_static.pc" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/media-libs/shaderc-2025.4/shaderc-2020.4-fix-build.patch b/media-libs/shaderc-2025.4/shaderc-2020.4-fix-build.patch new file mode 100644 index 0000000..93f8252 --- /dev/null +++ b/media-libs/shaderc-2025.4/shaderc-2020.4-fix-build.patch @@ -0,0 +1,13 @@ +diff --git a/libshaderc_util/src/compiler.cc b/libshaderc_util/src/compiler.cc +index c5ce37e..4703634 100644 +--- a/libshaderc_util/src/compiler.cc ++++ b/libshaderc_util/src/compiler.cc +@@ -20,7 +20,7 @@ + #include + #include + +-#include "SPIRV/GlslangToSpv.h" ++#include "glslang/SPIRV/GlslangToSpv.h" + #include "libshaderc_util/format.h" + #include "libshaderc_util/io.h" + #include "libshaderc_util/message.h" -- 2.49.1 From 3be7eb74836e6464ad24851067262fba02fda060 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 06:40:16 -0500 Subject: [PATCH 46/82] new bblfs: dev-python/pygobjest-3.50.1 --- dev-python/pygobjest-3.50.1.PKGBUILD | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 dev-python/pygobjest-3.50.1.PKGBUILD diff --git a/dev-python/pygobjest-3.50.1.PKGBUILD b/dev-python/pygobjest-3.50.1.PKGBUILD new file mode 100644 index 0000000..0f1a0e3 --- /dev/null +++ b/dev-python/pygobjest-3.50.1.PKGBUILD @@ -0,0 +1,34 @@ +pkgname=pygobject +pkgver=3.50.1 +pkgdesc="Python bindings for GObject Introspection" +homepage="https://pygobject.gnome.org" +license=("LGPL-2.1+") +depends=(glib gobject-introspection libffi) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}") +sha512sums=("5708756cbc8e2b697442953a7f3d391ace98f1b7811cb905b0d80185f020bf32a775d70c49d1620a9733e83a6862314f2a72fa1b77cb26a01e84b3bff72e068e") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D pycairo=disabled + -D tests=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From b05035904890942797635854ff71d3724e973193 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 07:20:17 -0500 Subject: [PATCH 47/82] new blfs: gui-libs/gtk-4.18.6 --- gui-libs/gtk-4.18.6.PKGBUILD | 108 ++++++++++++++++++ ...acro-to-hide-GDK_WINDOWING_ge_4.18.5.patch | 93 +++++++++++++++ gui-libs/gtk-4.18.6/gtk4-querymodules.HOOK | 5 + 3 files changed, 206 insertions(+) create mode 100644 gui-libs/gtk-4.18.6.PKGBUILD create mode 100644 gui-libs/gtk-4.18.6/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch create mode 100644 gui-libs/gtk-4.18.6/gtk4-querymodules.HOOK diff --git a/gui-libs/gtk-4.18.6.PKGBUILD b/gui-libs/gtk-4.18.6.PKGBUILD new file mode 100644 index 0000000..a1f95c4 --- /dev/null +++ b/gui-libs/gtk-4.18.6.PKGBUILD @@ -0,0 +1,108 @@ +pkgname=gtk +pkgver=4.18.6 +pkgdesc="GTK is a multi-platform toolkit for creating graphical user interfaces" +homepage="https://www.gtk.org/ https://gitlab.gnome.org/GNOME/gtk/" +license=("LGPL-2+") +depends=( + at-spi2-core + cairo + desktop-file-utils + fontconfig + fribidi + gcc-libs + gdk-pixbuf2 + glib2 + glibc + graphene + gtk-update-icon-cache + harfbuzz + iso-codes + libegl + libpng + librsvg + libxkbcommon + pango + shared-mime-info + vulkan-loader + wayland +) +makedepends=( + docbook-xsl + gobject-introspection + meson + python-gobject + sassc + shaderc + vulkan-headers + wayland-protocols +) +_hook="gtk4-querymodules.HOOK" +_hook_sum="0faeb757f9c9bde8a295c8312c512e9519d6007ad5ee72ac6e65f79d4aec8bc426ece530744e0c36e46df41a2769ff0bcf8ae3c425d3beacae30ddd04f5414ff" +_patches=("0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch") +_patch_sums=("3df25aa8c17f7858febf1e0d3171a078736968d90114729830654c0ebaac53e9cf5ce0ab317065ac7eb0a8572f16ceb5d323755138d9ba7c013232b10e0085ab") +sources=("${pkgname}-${pkgver}.tar.xz" + "${_hook}" + "${_patches[@]}" +) +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}" + "${_hook}" + "${_patches[@]}" +) +sha512sums=("636bc3adf01f444dfbf10a3fdce82cdd7b2914b9ff251e98e006a987c3216ef22f5ae8759aa5f2385d1e82813ab8bf2c8adc4f8d6db230e9f507b44fac10e359" + "${_hook_sum}" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + + # Nothing should use gtk4-update-icon-cache and an unversioned one is shipped by dev-util/gtk-update-icon-cache + sed -i \ + -e '/gtk4-update-icon-cache/d' \ + docs/reference/gtk/meson.build \ + tools/meson.build +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D x11-backend=false + -D wayland-backend=true + -D broadway-backend=false + -D win32-backend=false + -D android-backend=false + -D macos-backend=false + -D media-gstreamer=disabled + -D print-cpdb=disabled + -D print-cups=disabled + -D vulkan=enabled + -D cloudproviders=disabled + -D sysprof=disabled + -D tracker=disabled + -D colord=disabled + -D f16c=enabled + -D introspection=enabled + -D documentation=false + -D screenshots=false + -D man-pages=true + -D profile=default + -D build-demos=false + -D build-testsuite=false + -D build-examples=false + -D build-tests=false + ) + meson setup build "${meson_args[@]}" +} + +src_install() { + meson install -C build --destdir "$pkgdir" + leaf_install_hook "${filedir}/${_hook}" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/gui-libs/gtk-4.18.6/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch b/gui-libs/gtk-4.18.6/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch new file mode 100644 index 0000000..18b6dc4 --- /dev/null +++ b/gui-libs/gtk-4.18.6/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch @@ -0,0 +1,93 @@ +From e00bc31abbc489f1787cd5b2d5c441dbb82ed03a Mon Sep 17 00:00:00 2001 +From: Eli Schwartz +Date: Wed, 19 Jun 2024 21:28:31 -0400 +Subject: [PATCH] gdk: add a "poison" macro to hide GDK_WINDOWING_* + +Many packages perform automagic dependencies on gdk's backend +implementations by checking if the macro is defined and then using the +code it unlocks, rather than having a buildsystem option such as +-Dwayland=true. + +It's unfeasible to patch every such package's source code to add +configure options and respect them. Instead add a truly filthy hack and +permit gtk itself to selectively show or hide the windowing system in +use. + +By default, we assume this macro is never defined. It should only ever +be defined inside an ebuild, as such: + +``` +use wayland || append-cflags -DGENTOO_GTK_HIDE_WAYLAND +use X || append-cflags -DGENTOO_GTK_HIDE_X11 +``` + +When seen, this will prevent code using "#ifdef GDK_WINDOWING_*" from +seeing the define, so the automagic dependency won't be picked up. It +will also cause any attempt to #include the backend-specific headers to +bug out. + +Bug: https://bugs.gentoo.org/624960 +Signed-off-by: Eli Schwartz +Signed-off-by: Lukas Schmelting +--- + gdk/gdkconfig.h.meson | 7 +++++++ + gdk/wayland/gdkwayland.h | 4 ++++ + gdk/x11/gdkx.h | 4 ++++ + 3 files changed, 15 insertions(+) + +diff --git a/gdk/gdkconfig.h.meson b/gdk/gdkconfig.h.meson +index 17276e0..03cf61c 100644 +--- a/gdk/gdkconfig.h.meson ++++ b/gdk/gdkconfig.h.meson +@@ -10,11 +10,18 @@ + G_BEGIN_DECLS + + ++#ifndef GENTOO_GTK_HIDE_X11 + #mesondefine GDK_WINDOWING_X11 ++#endif ++ + #mesondefine GDK_WINDOWING_ANDROID + #mesondefine GDK_WINDOWING_BROADWAY + #mesondefine GDK_WINDOWING_MACOS ++ ++#ifndef GENTOO_GTK_HIDE_WAYLAND + #mesondefine GDK_WINDOWING_WAYLAND ++#endif ++ + #mesondefine GDK_WINDOWING_WIN32 + + #mesondefine GDK_RENDERING_CAIRO +diff --git a/gdk/wayland/gdkwayland.h b/gdk/wayland/gdkwayland.h +index 8464459..5d84619 100644 +--- a/gdk/wayland/gdkwayland.h ++++ b/gdk/wayland/gdkwayland.h +@@ -24,6 +24,10 @@ + + #pragma once + ++#ifdef GENTOO_GTK_HIDE_WAYLAND ++ #error "A Gentoo ebuild has hidden wayland and it cannot be used in this compilation unit. Please file a bug if you see this error." ++#endif ++ + #include + + #define __GDKWAYLAND_H_INSIDE__ +diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx.h +index 6bef6b6..d4f8b94 100644 +--- a/gdk/x11/gdkx.h ++++ b/gdk/x11/gdkx.h +@@ -24,6 +24,10 @@ + + #pragma once + ++#ifdef GENTOO_GTK_HIDE_X11 ++ #error "A Gentoo ebuild has hidden x11 and it cannot be used in this compilation unit. Please file a bug if you see this error." ++#endif ++ + #include + + #include +-- +2.49.0 + diff --git a/gui-libs/gtk-4.18.6/gtk4-querymodules.HOOK b/gui-libs/gtk-4.18.6/gtk4-querymodules.HOOK new file mode 100644 index 0000000..d4d6467 --- /dev/null +++ b/gui-libs/gtk-4.18.6/gtk4-querymodules.HOOK @@ -0,0 +1,5 @@ +target=(/usr/lib/gtk-4.0/4.0.0/*) +triggers=("install" "remove") +operation() { + gio-querymodules /usr/lib/gtk-4.0/4.0.0/ +} -- 2.49.1 From fcd540a58df2a3b705f7e2ac272a61c56a06866e Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 07:31:15 -0500 Subject: [PATCH 48/82] new bblfs: dev-libs/granite-7.6.0 --- dev-libs/granite-7.6.0.PKGBUILD | 47 +++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 dev-libs/granite-7.6.0.PKGBUILD diff --git a/dev-libs/granite-7.6.0.PKGBUILD b/dev-libs/granite-7.6.0.PKGBUILD new file mode 100644 index 0000000..0c99b4f --- /dev/null +++ b/dev-libs/granite-7.6.0.PKGBUILD @@ -0,0 +1,47 @@ +pkgname=granite +pkgver=7.6.0 +pkgdesc='Library that extends Gtk+' +arch=(x86_64) +homepage=https://github.com/elementary/granite +license=(LGPL3) +depends=( + cairo + glib:2 + gtk:4 + libgee:0.8 +) +makedepends=( + cmake + meson + sassc + vala +) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/elementary/${pkgname}/archive/${pkgver}.tar.gz") +sha512sums=("0a3ab1aa9d648578d80877beaab52eebd1b77981f54f9ca0b9c88e44c9a832738e4bd52357e6537b783d64ac6a7812c8a73331dfe759d12e1f3ea212ba111f5f") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D documentation=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_check() { + meson test -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 539638b0f9a509c3e5c868ba7068fc6500a027c7 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 15:04:30 -0500 Subject: [PATCH 49/82] new bblfs: gui-libs/gtk4-layer-shell-1.1.1 --- gui-libs/gtk4-layer-shell-1.1.1.PKGBUILD | 44 ++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 gui-libs/gtk4-layer-shell-1.1.1.PKGBUILD diff --git a/gui-libs/gtk4-layer-shell-1.1.1.PKGBUILD b/gui-libs/gtk4-layer-shell-1.1.1.PKGBUILD new file mode 100644 index 0000000..d078e60 --- /dev/null +++ b/gui-libs/gtk4-layer-shell-1.1.1.PKGBUILD @@ -0,0 +1,44 @@ +pkgname=gtk4-layer-shell +pkgver=1.1.1 +pkgdesc="A library for using the Layer Shell Wayland protocol with GTK4." +homepage="https://github.com/wmww/gtk4-layer-shell" +license=("MIT") +depends=(vala wayland gtk:4 glib:2 meson ninja wayland-protocols wayland-scanner gobject-introspection) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/wmww/${pkgname}/archive/refs/tags/v${pkgver}.tar.gz") +sha512sums=("5c47e1df308fe9ee53bc16458209b845854307fd1d939a0342568f3a1a22bc2b40b8d817642c69a81be4c2d291495b1f900c084276c605952eead103b3cb6a02") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nofallback + -D python.bytecompile=1 + -D examples=false + -D docs=false + -D tests=false + -D smoke-tests=false + -D introspection=true + -D vapi=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +#src_check() { +# install -d -m 0700 "${TMPDIR}"/xdg-runtime +# export XDG_RUNTIME_DIR="${TMPDIR}"/xdg-runtime +# export GDK_BACKEND=wayland +# unset WAYLAND_DISPLAY +# meson test -C build +#} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 370ff89030bc69f58d2bbcdbbe6813ff34566324 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 18:52:50 -0500 Subject: [PATCH 50/82] new blfs: dev-libs/libxmlb-0.3.24 --- dev-libs/libxmlb-0.3.24.PKGBUILD | 42 ++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 dev-libs/libxmlb-0.3.24.PKGBUILD diff --git a/dev-libs/libxmlb-0.3.24.PKGBUILD b/dev-libs/libxmlb-0.3.24.PKGBUILD new file mode 100644 index 0000000..8c7509f --- /dev/null +++ b/dev-libs/libxmlb-0.3.24.PKGBUILD @@ -0,0 +1,42 @@ +pkgname=libxmlb +pkgver=0.3.24 +pkgdesc="Library to help create and query binary XML blobs" +homepage="https://github.com/hughsie/libxmlb" +license=("LGPL-2.1+") +depends=(glib:2 xz-utils zstd) +bdepends=(meson) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/hughsie/libxmlb/archive/${pkgver}.tar.gz") +sha512sums=("534e5fe01727b9427137c51984c9ddced91b842c712d4f34f582193c838429b396be6e444246b324d39f6732fdf582a7d89570049f4f48d4a161aff82e33aa49") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D lzma=enabled + -D zstd=enabled + -D gtkdoc=false + -D introspection=false + -D stemmer=false + -D tests=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_check() { + meson test -C build --print-errorlogs +} + +src_install() { + meson install -C build --destdir "$pkgdir" + rm -rf "${pkgdir}"/usr/{libexec,share}/installed-tests +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 56a25f0fdbc244d6dbf88d36b5864b656b7f82b3 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 18:53:11 -0500 Subject: [PATCH 51/82] new tests: test/hello-1.0-r1 --- test/hello-1.0-r1.PKGBUILD | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 test/hello-1.0-r1.PKGBUILD diff --git a/test/hello-1.0-r1.PKGBUILD b/test/hello-1.0-r1.PKGBUILD new file mode 100644 index 0000000..0938cee --- /dev/null +++ b/test/hello-1.0-r1.PKGBUILD @@ -0,0 +1,25 @@ +pkgname="hello" +pkgver="1.0" +homepage="https://gitea.phywyj.dynv6.net" +pkgdesc="Just a hello world" +license=("GPL") +sourses=() +urls=() +md5sums=() + +src_prepare() { + cat > "hello.c" << "EOF" +#include +int main(){ + printf("Hello! LFS!\n"); +} +EOF +} + +src_build() { + cc ${CFLAGS} hello.c -o hello +} + +src_install() { + install -Dm755 hello ${pkgdir}/usr/bin/hello +} -- 2.49.1 From 14f40dd1e0688cc2cb3fe854e3b2cc2d025793e4 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 19:21:28 -0500 Subject: [PATCH 52/82] new blfs: dev-util/itstool-2.0.7 --- dev-util/itstool-2.0.7.PKGBUILD | 48 +++++++++++++++++++ .../itstool-2.0.7-raw-string-testrunner.patch | 15 ++++++ 2 files changed, 63 insertions(+) create mode 100644 dev-util/itstool-2.0.7.PKGBUILD create mode 100644 dev-util/itstool-2.0.7/itstool-2.0.7-raw-string-testrunner.patch diff --git a/dev-util/itstool-2.0.7.PKGBUILD b/dev-util/itstool-2.0.7.PKGBUILD new file mode 100644 index 0000000..86f9383 --- /dev/null +++ b/dev-util/itstool-2.0.7.PKGBUILD @@ -0,0 +1,48 @@ +pkgname=itstool +pkgver=2.0.7 +pkgdesc="Translation tool for XML documents that uses gettext files and ITS rules" +homepage="https://itstool.org/" +license=("GPL-3+") +depends=("dev-python/lxml") +_patches=("itstool-2.0.7-raw-string-testrunner.patch") +_patch_sums=("9864daaf40dcbb3a5074ea73d98275a1c5590044b4c1e74f980a78978a706153d5c70c347da5424757e877b0cc49307804a228404daf8f276568e214436c5610") +sources=("${pkgname}-${pkgver}.tar.gz" + "${pkgname}-2.0.7-switch-to-lxml.patch.xz" + "${_patches[@]}" +) +_commit="19f9580f27aa261ea383b395fdef7e153f3f9e6d" +urls=("https://github.com/itstool/itstool/archive/${_commit}.tar.gz" + "https://dev.gentoo.org/~sam/distfiles/dev-util/itstool/${sources[1]}" + "${_patches[@]}" +) +sha512sums=("52ec7c97891bb55628a34141e39029003fa09bb3f79baeeaaf782710bc14e6e4eda4c5ca360728db68928cd27f331ff0e0f6ee8a954ad723e4619f0d2193e50c" + "40e69baa1d644aa8bdf305fee396ee4bd15203f2d55aa3d7ece088a176a35624711eaa31ef05d6f3e6a0bfdd1ed39ab41911fc968099fe34802afdc4142b200a" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + cp -v ${distdir}/${sources[1]} ./ + xz -d ${sources[1]} + patch -p1 -i ${sources[1]%.xz} + + autoreconf -fiv +} + +src_build() { + ./configure --prefix=/usr + make +} + +src_check() { + make check +} + +src_install() { + make DESTDIR="$pkgdir" install +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/dev-util/itstool-2.0.7/itstool-2.0.7-raw-string-testrunner.patch b/dev-util/itstool-2.0.7/itstool-2.0.7-raw-string-testrunner.patch new file mode 100644 index 0000000..0f7d0b7 --- /dev/null +++ b/dev-util/itstool-2.0.7/itstool-2.0.7-raw-string-testrunner.patch @@ -0,0 +1,15 @@ +Followup fix to: +https://github.com/itstool/itstool/commit/32c7d07664dc37765100285d1202d488cd6a27e8 +but for the test runner, which we can now run. + +--- a/tests/run_tests.py ++++ b/tests/run_tests.py +@@ -379,7 +379,7 @@ class ITSTestRunner(unittest.TextTestRun + test_binary_path = os.path.join(ITSTOOL_DIR, "itstool_test") + shutil.copy(os.path.join(ITSTOOL_DIR, "itstool.in"), test_binary_path) + data_dir = os.path.join(ITSTOOL_DIR, "its") +- call("sed -i -e 's/@DATADIR@/%s/' %s" % (data_dir.replace('/', '\/'), test_binary_path), shell=True) ++ call("sed -i -e 's/@DATADIR@/%s/' %s" % (data_dir.replace('/', r'\/'), test_binary_path), shell=True) + + result = super(ITSTestRunner, self).run(test) + -- 2.49.1 From d7e5d91b8b23781d1b90a7ca32cda05fd1357989 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 19:41:37 -0500 Subject: [PATCH 53/82] new bblfs: dev-libs/appstream-glib-0.8.3 --- dev-libs/appstream-glib-0.8.3.PKGBUILD | 56 ++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 dev-libs/appstream-glib-0.8.3.PKGBUILD diff --git a/dev-libs/appstream-glib-0.8.3.PKGBUILD b/dev-libs/appstream-glib-0.8.3.PKGBUILD new file mode 100644 index 0000000..9d94883 --- /dev/null +++ b/dev-libs/appstream-glib-0.8.3.PKGBUILD @@ -0,0 +1,56 @@ +pkgname=appstream-glib +pkgver=0.8.3 +pkgdesc="Provides GObjects and helper methods to read and write AppStream metadata" +homepage="https://people.freedesktop.org/~hughsient/appstream-glib/ https://github.com/hughsie/appstream-glib" +license=("LGPL-2.1+") +slot=("0/8") +depend=( + glib + util-linux + libarchive + curl + json-glib + "gdk-pixbuf[introspection]" + fontconfig + libyaml + pango + gobject-introspection +) +bdepends=( + gperf + libxml2:2 + libxslt + gettext +) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://people.freedesktop.org/~hughsient/${pkgname}/releases/${sources[0]}") +sha512sums=("df4247b710cf234eef037f5f7be6be4872638d0686becd65e10e6a4214b0dd1b48ffbbd69179f3fb9777373926840d5b776e20a41ce11d4926114345944db127") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D dep11=true + -D builder=true + -D rpm=false + -D alpm=false + -D fonts=false + -D man=true + -D gtk-doc=false + -D introspection=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 5ef9b0dda713a61721b5d6f270f3c66cc8ebc895 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sat, 17 Jan 2026 20:17:25 -0500 Subject: [PATCH 54/82] new bblfs: dev-libs/snowball-stemmer-2.2.0 --- dev-libs/snowball-stemmer-2.2.0.PKGBUILD | 39 ++++++++++++ ...nowball-stemmer-2.2.0-shared-library.patch | 59 +++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 dev-libs/snowball-stemmer-2.2.0.PKGBUILD create mode 100644 dev-libs/snowball-stemmer-2.2.0/snowball-stemmer-2.2.0-shared-library.patch diff --git a/dev-libs/snowball-stemmer-2.2.0.PKGBUILD b/dev-libs/snowball-stemmer-2.2.0.PKGBUILD new file mode 100644 index 0000000..0d53d1d --- /dev/null +++ b/dev-libs/snowball-stemmer-2.2.0.PKGBUILD @@ -0,0 +1,39 @@ +pkgname=snowball-stemmer +pkgver=2.2.0 +pkgdesc="Snowball compiler and stemming algorithms" +homepage="https://snowballstem.org/ https://github.com/snowballstem/snowball/" +license=("BSD") +slot="0/${pkgver%%.*}" +_patches=("snowball-stemmer-2.2.0-shared-library.patch") +_patch_sums=("611dc546bd3744d0c9d86fea2206707eafbe6c9bd2384bbe6d017a4e8a5ef919eeb32e594157e6767a63398f7cdb2fc9d87969eb544756a7c853d33efdc45693") +sources=("${pkgname}-${pkgver}.tar.gz" + "${_patches[@]}" +) +urls=("https://github.com/snowballstem/snowball/archive/v${pkgver}.tar.gz" + "${_patches[@]}" +) +sha512sums=("02c43313de9de2518ea51cfb11f1c29145fc046c7838329bfdefd70b604009ad44b6db8175c25b0db31f03db30a6aec5857aa35775a9c204ec976df9cae62957" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + make +} + +src_install() { + install -D snowball stemwords -t "$pkgdir/usr/bin" + install -Dm644 COPYING -t "$pkgdir/usr/share/licenses/$pkgname" + install -Dm644 include/libstemmer.h -t "$pkgdir/usr/include" + install -Dm644 libstemmer.so.${pkgver} -t "$pkgdir/usr/lib" + ln -s libstemmer.so.${pkgver} "$pkgdir/usr/lib/libstemmer.so.${pkgver%%.*}" + ln -s libstemmer.so.${pkgver%%.*} "$pkgdir/usr/lib/libstemmer.so" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/dev-libs/snowball-stemmer-2.2.0/snowball-stemmer-2.2.0-shared-library.patch b/dev-libs/snowball-stemmer-2.2.0/snowball-stemmer-2.2.0-shared-library.patch new file mode 100644 index 0000000..4baa228 --- /dev/null +++ b/dev-libs/snowball-stemmer-2.2.0/snowball-stemmer-2.2.0-shared-library.patch @@ -0,0 +1,59 @@ +This is based on a patch taken from alpinelinux, however, duplicated +libstemmer.o and stemwords targets were removed and the patch was +rebased on top of v2.2.0 tag. + +Created shared library contains a lot of relocations, which slow down loading. +It is known issue and probably the main reason why upstream does not support +shared library yet [1]. + +[1] https://github.com/snowballstem/snowball/issues/34#issuecomment-203200078 + +Alpinelinux-patch: https://git.alpinelinux.org/aports/tree/community/snowball/libstemmer-library.patch?id=28f9d9e192876c43fd96bc5856cd9d8a50dd49c0 +Upstream-issue: https://github.com/snowballstem/snowball/issues/34 + +diff --git a/GNUmakefile b/GNUmakefile +index 98eb1fa..9b539ec 100644 +--- a/GNUmakefile ++++ b/GNUmakefile +@@ -4,6 +4,8 @@ + # which hard-code it. + SNOWBALL_VERSION = 2.2.0 + ++MAJOR_VERSION := $(shell echo $(SNOWBALL_VERSION) | cut -d. -f1) ++ + ifeq ($(OS),Windows_NT) + EXEEXT = .exe + endif +@@ -170,12 +172,17 @@ C_OTHER_OBJECTS = $(C_OTHER_SOURCES:.c=.o) + JAVA_CLASSES = $(JAVA_SOURCES:.java=.class) + JAVA_RUNTIME_CLASSES=$(JAVARUNTIME_SOURCES:.java=.class) + +-CFLAGS=-O2 -W -Wall -Wmissing-prototypes -Wmissing-declarations +-CPPFLAGS= ++CFLAGS+=-fPIC -W -Wall -Wmissing-prototypes -Wmissing-declarations ++CPPFLAGS+= + + INCLUDES=-Iinclude + +-all: snowball$(EXEEXT) libstemmer.a stemwords$(EXEEXT) $(C_OTHER_SOURCES) $(C_OTHER_HEADERS) $(C_OTHER_OBJECTS) ++all: snowball$(EXEEXT) libstemmer.a libstemmer.so stemwords$(EXEEXT) $(C_OTHER_SOURCES) $(C_OTHER_HEADERS) $(C_OTHER_OBJECTS) ++ ++libstemmer.so: libstemmer/libstemmer.o $(RUNTIME_OBJECTS) $(C_LIB_OBJECTS) ++ $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname,$@.$(MAJOR_VERSION),-version-script,libstemmer/symbol.map -o $@.$(SNOWBALL_VERSION) $^ ++ ln -s $@.$(SNOWBALL_VERSION) $@.$(MAJOR_VERSION) ++ ln -s $@.$(SNOWBALL_VERSION) $@ + + algorithms.mk: libstemmer/mkalgorithms.pl libstemmer/modules.txt + libstemmer/mkalgorithms.pl algorithms.mk libstemmer/modules.txt +diff --git a/libstemmer/symbol.map b/libstemmer/symbol.map +new file mode 100644 +index 0000000..7a3d423 +--- /dev/null ++++ b/libstemmer/symbol.map +@@ -0,0 +1,6 @@ ++SB_STEMMER_0 { ++ global: ++ sb_stemmer_*; ++ local: ++ *; ++}; -- 2.49.1 From 4fe1ec10efc31eea25f43c2a021b7fd7b91f18d5 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 01:09:14 -0500 Subject: [PATCH 55/82] new blfs: dev-libs/appstream-1.0.6 --- dev-libs/appstream-1.0.6.PKGBUILD | 69 +++++++++++++++++++ ...appstream-1.0.0-disable-Werror-flags.patch | 47 +++++++++++++ 2 files changed, 116 insertions(+) create mode 100644 dev-libs/appstream-1.0.6.PKGBUILD create mode 100644 dev-libs/appstream-1.0.6/appstream-1.0.0-disable-Werror-flags.patch diff --git a/dev-libs/appstream-1.0.6.PKGBUILD b/dev-libs/appstream-1.0.6.PKGBUILD new file mode 100644 index 0000000..9a66c4b --- /dev/null +++ b/dev-libs/appstream-1.0.6.PKGBUILD @@ -0,0 +1,69 @@ +pkgname=appstream +_name="AppStream" +pkgver=1.0.6 +pkgdesc="Cross-distro effort for providing metadata for software in the Linux ecosystem" +homepage="https://www.freedesktop.org/wiki/Distributions/AppStream/" +license=("LGPL-2.1+" "GPL-2+") +depends=( + zstd + glib:2 + libxml2:2 + libxmlb + libyaml + snowball-stemmer + curl + gobject-introspection + systemd +) +bdepends=( + libxslt + itstool +) +_patches=("${pkgname}-1.0.0-disable-Werror-flags.patch") +_patch_sums=("e5df79dda5f433c67dd0b02c681e04cde22e6648a4d438a50314575e37353686fbcbc4fd56ee209095f71498d0e553b4d061e328fcc740b19ab7ae9281b85423") +sources=("${_name}-${pkgver}.tar.xz" + "${_patches[@]}" +) +urls=("https://www.freedesktop.org/software/appstream/releases/${sources[0]}" + "${_patches[@]}" +) +sha512sums=("a7a34ce2b37f7a3d9f22a69ff4a546d4fb33edaec4a303bd7541ede990d8a2c2a67d17f61c9cf09d75af277e308d21baaf42d6b968eca1a11d1df983a27e02a5" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=2 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D apidocs=false + -D docs=false + -D compose=false + -D maintainer=false + -D static-analysis=false + -D stemming=true + -D vapi=false + -D apt-support=false + -D compose=false + -D install-docs=false + -D gir=true + -D qt=false + -D systemd=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/dev-libs/appstream-1.0.6/appstream-1.0.0-disable-Werror-flags.patch b/dev-libs/appstream-1.0.6/appstream-1.0.0-disable-Werror-flags.patch new file mode 100644 index 0000000..309d365 --- /dev/null +++ b/dev-libs/appstream-1.0.6/appstream-1.0.0-disable-Werror-flags.patch @@ -0,0 +1,47 @@ +--- a/meson.build ++++ b/meson.build +@@ -90,44 +90,6 @@ + endif + endif + +-# a few compiler warning flags we always want enabled +-add_project_arguments( +- cc.get_supported_arguments([ +- '-Werror=shadow', +- '-Werror=empty-body', +- '-Werror=strict-prototypes', +- '-Werror=missing-prototypes', +- '-Werror=implicit-function-declaration', +- '-Werror=pointer-arith', +- '-Werror=missing-declarations', +- '-Werror=return-type', +- '-Werror=int-conversion', +- '-Werror=incompatible-pointer-types', +- '-Werror=misleading-indentation', +- '-Werror=missing-include-dirs', +- '-Werror=declaration-after-statement', +- '-Werror=format-security', +- +- '-Wno-missing-field-initializers', +- '-Wno-error=missing-field-initializers', +- '-Wno-unused-parameter', +- '-Wno-error=unused-parameter', +- ]), +- language: 'c' +-) +-add_project_arguments( +- '-Wno-unused-parameter', +- '-Werror=empty-body', +- '-Werror=pointer-arith', +- '-Werror=init-self', +- '-Werror=missing-declarations', +- '-Werror=return-type', +- '-Werror=misleading-indentation', +- '-Werror=format-security', +- +- language: 'cpp' +-) +- + # Vendor extensions in system headers + if host_machine.system() != 'netbsd' + # on NetBSD, defining POSIX_C_SOURCE *removes* non-POSIX symbols from namespace, -- 2.49.1 From ccd436865b6828091c80a0f2b646f32415b5d270 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 01:38:53 -0500 Subject: [PATCH 56/82] new blfs: gui-libs/libadwaita-1.7.7 --- gui-libs/libadwaita-1.7.7.PKGBUILD | 37 ++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 gui-libs/libadwaita-1.7.7.PKGBUILD diff --git a/gui-libs/libadwaita-1.7.7.PKGBUILD b/gui-libs/libadwaita-1.7.7.PKGBUILD new file mode 100644 index 0000000..8504594 --- /dev/null +++ b/gui-libs/libadwaita-1.7.7.PKGBUILD @@ -0,0 +1,37 @@ +pkgname=libadwaita +pkgver=1.7.7 +pkgdesc="Building blocks for modern GNOME applications" +homepage="https://gnome.pages.gitlab.gnome.org/libadwaita/ https://gitlab.gnome.org/GNOME/libadwaita" +license=("LGPL-2.1+") +depends=(glib:2 gtk:4 appstream fribidi gobject-introspection) +bdepends=(vala gettext sassc) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}") +sha512sums=("af59e6813794ef2ac1aa22fa4d295caacbe3b58b6398b4c1d6ab14f454d308a4040ad286132f3731e3706e1dfc036df50d15e09cd748f975724a9226b9f74d52") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nofallback + -D python.bytecompile=1 + -D profiling=false + -D introspection=enabled + -D vapi=true + -D documentation=false + -D tests=false + -D examples=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 73886830e0f4fcc977fe0d93bbd54137b0bd43f9 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 01:49:37 -0500 Subject: [PATCH 57/82] new blfs: gui-libs/libhandy-1.8.3 --- gui-libs/libhandy-1.8.3.PKGBUILD | 39 ++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 gui-libs/libhandy-1.8.3.PKGBUILD diff --git a/gui-libs/libhandy-1.8.3.PKGBUILD b/gui-libs/libhandy-1.8.3.PKGBUILD new file mode 100644 index 0000000..fa4e72d --- /dev/null +++ b/gui-libs/libhandy-1.8.3.PKGBUILD @@ -0,0 +1,39 @@ +pkgname=libhandy +pkgver=1.8.3 +pkgdesc="Building blocks for modern adaptive GNOME apps" +homepage="https://gitlab.gnome.org/GNOME/libhandy/" +license=("LGPL-2.1+") +slot="1" +depends=(glib:2 gtk+:3 gobject-introspection xorg-proto) +bdepends=(libxml:2 gettext) +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}") +sha512sums=("1e0ae363d2a4993c9667243715256b27cb0ecb898fa8f4ea1a914fbeb36c0a9c26447f8f13f92f5a855e45ada49f732adeb30b88d81f3ee5f984bca48db3ae65") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D profiling=false + -D introspection=enabled + -D vapi=true + -D gtk_doc=false + -D tests=false + -D examples=false + -D glade_catalog=disabled + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 685645223b64db971605994c34119a92b69cb3dd Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 02:01:45 -0500 Subject: [PATCH 58/82] new bblfs: dev-util/blueprint-compiler-0.18.0 --- dev-util/blueprint-compiler-0.18.0.PKGBUILD | 31 +++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 dev-util/blueprint-compiler-0.18.0.PKGBUILD diff --git a/dev-util/blueprint-compiler-0.18.0.PKGBUILD b/dev-util/blueprint-compiler-0.18.0.PKGBUILD new file mode 100644 index 0000000..2cc2110 --- /dev/null +++ b/dev-util/blueprint-compiler-0.18.0.PKGBUILD @@ -0,0 +1,31 @@ +pkgname=blueprint-compiler +pkgver=0.18.0 +pkgdesc="Compiler for Blueprint, a markup language for GTK user interfaces" +homepage="https://gnome.pages.gitlab.gnome.org/blueprint-compiler/ https://gitlab.gnome.org/GNOME/blueprint-compiler/" +license=("LGPL-3+") +depends=("dev-python/pygobject:3") +sources=("${pkgname}-${pkgver}.tar.xz") +urls=("https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${sources[0]}") +sha512sums=("0f15a0e997ec8edced82053f345abbfa4a77ca77dd5976d39e135c3b8af137f712ce2cb5b33abba7450ff440fb48dcb136186e2e0b7d54d0393d5778e8b19142") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D docs=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" --no-rebuild +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 11914b6fc3e586b08ef935f29f1646d75ccbad58 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 02:20:46 -0500 Subject: [PATCH 59/82] new bblfs: gui-apps/swaync-0.12.3 --- gui-apps/swaync-0.12.3.PKGBUILD | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 gui-apps/swaync-0.12.3.PKGBUILD diff --git a/gui-apps/swaync-0.12.3.PKGBUILD b/gui-apps/swaync-0.12.3.PKGBUILD new file mode 100644 index 0000000..376b62c --- /dev/null +++ b/gui-apps/swaync-0.12.3.PKGBUILD @@ -0,0 +1,33 @@ +pkgname=swaync +_name="SwayNotificationCenter" +pkgver=0.12.3 +pkgdesc="A simple notification daemon with a GTK gui for notifications and control center" +homepage="https://github.com/ErikReider/SwayNotificationCenter" +license=("GPL-3") +depends=(sassc glib:2 gobject-introspection granite json-glib libgee gtk4-layer-shell gtk:4 libadwaita libhandy libpulse dbus gdk-pixbuf:2) +bdepends=(blueprint-compiler) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/ErikReider/${_name}/archive/v${pkgver}.tar.gz") +sha512sums=("847fa8b46f432d40f4c1c7a8559d5b3f5b431784e3dc7afb90edb57533c6662116af2d78965b2e4b9f635432b108e3a1ad518d739c6fa13ee317b0d80bcbb8cf") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D pulse-audio=true + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From cad3e4ea60f9a47d135426e22ca49056a21770f9 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 03:12:18 -0500 Subject: [PATCH 60/82] new bblfs: gui-apps/swayosd-0.2.1 --- gui-apps/swayosd-0.2.1.PKGBUILD | 42 +++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 gui-apps/swayosd-0.2.1.PKGBUILD diff --git a/gui-apps/swayosd-0.2.1.PKGBUILD b/gui-apps/swayosd-0.2.1.PKGBUILD new file mode 100644 index 0000000..9464c97 --- /dev/null +++ b/gui-apps/swayosd-0.2.1.PKGBUILD @@ -0,0 +1,42 @@ +pkgname=swayosd +pkgver=0.2.1 +pkgdesc="GTK based on screen display for keyboard shortcuts like caps-lock and volume" +homepage="https://github.com/ErikReider/SwayOSD" +license=("GPL-3") +depends=( + glib:2 + libevdev + libinput + gtk4-layer-shell + libpulse + cairo + gdk-pixbuf:2 + gtk+:3 + pango +) +bdepends=(ninja sassc) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/ErikReider/SwayOSD/archive/v${pkgver}.tar.gz") +sha512sums=("473ab6660ad1ef8d3c7fbcad611f08dcc72e81b0e6df2714bcb2c2644361f8cea82efddd9597197e85520132ddd5e7a5c28b936170a2477208f2ad2e608c4063") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + cargo fetch --locked --target "$(rustc --print host-tuple)" +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 070b7b3ce39c499123f9b3771f30747dd36ff1b4 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 03:41:04 -0500 Subject: [PATCH 61/82] fix pipewire: add pipewire group --- media-video/pipewire-1.4.9.PKGBUILD | 5 +++++ media-video/pipewire-1.4.9/acct-group-pipewire.conf | 1 + 2 files changed, 6 insertions(+) create mode 100644 media-video/pipewire-1.4.9/acct-group-pipewire.conf diff --git a/media-video/pipewire-1.4.9.PKGBUILD b/media-video/pipewire-1.4.9.PKGBUILD index 02ebf35..79840d1 100644 --- a/media-video/pipewire-1.4.9.PKGBUILD +++ b/media-video/pipewire-1.4.9.PKGBUILD @@ -33,16 +33,19 @@ _patch_sums=("7456a24276b7b766ff5799acf5b80ef5f85ee7a78fc5b52adff3206c0b0aa1985a sources=("${pkgname}-${pkgver}.tar.bz2" "${pkgname}-1.4.7-0001-don-t-include-standard-C-headers-inside-of-extern-C.patch.xz" "99-pipewire-default-hook.conf" + "acct-group-pipewire.conf" ${_patches[@]} ) urls=("https://gitlab.freedesktop.org/${pkgname}/${pkgname}/-/archive/${pkgver}/${sources[0]}" "https://dev.gentoo.org/~sam/distfiles/media-video/${pkgname}/${sources[1]}" "99-pipewire-default-hook.conf" + "acct-group-pipewire.conf" "${_patches[@]}" ) sha512sums=("369054d920133904a8df709b1be05f9ef0e7e99e1ae10e1d200315ce1200e20d5e20a91f40dd17dd3177eef59de7d47dfdd6161ec6f057b78140690fcfcc1c2e" "fbd9644a5df81ee4bc9687f6a8b69a0bf12deef43d749c9c5cbb976f461771deeae4bd13340a6acaffae4b0187221cf734be2b3b62408a4ce79d70575a7e664b" "4e512c62b7627fbe9e48afbbf171bd2b8d4fb8b231492cb1ea2d90ac474212c25e0f8ba3389b1df1108a46f243f2e1f3a3eaf2d147a7968cec82a8a49f5fd1b7" + "65901c2bef4c769757631487231d43d4bc584c9202d280179696736e4985b195f14ab5a935d59d36f67cfa094e6749ac1f1d1aa2e9943ca746415eb1ff550b69" "${_patch_sums[@]}" ) @@ -153,6 +156,8 @@ src_install() { mkdir -pv "${pkgdir}/etc/alsa/conf.d" ln -sv ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf "${pkgdir}"/etc/alsa/conf.d/50-pipewire.conf ln -sv ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf "${pkgdir}"/etc/alsa/conf.d/99-pipewire-default-hook.conf + + install -vDm644 "${filedir}/acct-group-pipewire.conf" -t "${pkgdir}/usr/lib/sysusers.d/" } src_postinstall() { diff --git a/media-video/pipewire-1.4.9/acct-group-pipewire.conf b/media-video/pipewire-1.4.9/acct-group-pipewire.conf new file mode 100644 index 0000000..10ab4b4 --- /dev/null +++ b/media-video/pipewire-1.4.9/acct-group-pipewire.conf @@ -0,0 +1 @@ +g pipewire 509 -- 2.49.1 From 57e4ff55a07219e4d9d75e50fbbc4caf597d3c60 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 03:45:25 -0500 Subject: [PATCH 62/82] new bblfs: media-sound/pipemixer-0.2.2 --- media-sound/pipemixer-0.2.2.PKGBUILD | 32 ++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 media-sound/pipemixer-0.2.2.PKGBUILD diff --git a/media-sound/pipemixer-0.2.2.PKGBUILD b/media-sound/pipemixer-0.2.2.PKGBUILD new file mode 100644 index 0000000..2c4268f --- /dev/null +++ b/media-sound/pipemixer-0.2.2.PKGBUILD @@ -0,0 +1,32 @@ +pkgname=pipemixer +pkgver=0.2.2 +pkgdesc='TUI volume control app for pipewire' +arch=('x86_64') +homepage='https://github.com/heather7283/pipemixer' +license=('GPL-3.0-only') +depends=('glibc' 'libpipewire' 'ncurses') +makedepends=('git' 'meson' 'ninja') +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/heather7283/${pkgname}/archive/v${pkgver}.tar.gz") +sha256sums=('7d43f971754ac1b0ef4e37a7cb008a4f2be9a91297751b74dcaef9cf24a7c3f7') + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From c8e3b86dff11036e5e5434e9b5912a50da121214 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 03:54:37 -0500 Subject: [PATCH 63/82] new bblfs: x11-themes/orchis-gtk-theme-2025-04-25 --- .../orchis-gtk-theme-2025-04-25.PKGBUILD | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 x11-themes/orchis-gtk-theme-2025-04-25.PKGBUILD diff --git a/x11-themes/orchis-gtk-theme-2025-04-25.PKGBUILD b/x11-themes/orchis-gtk-theme-2025-04-25.PKGBUILD new file mode 100644 index 0000000..5bcbf69 --- /dev/null +++ b/x11-themes/orchis-gtk-theme-2025-04-25.PKGBUILD @@ -0,0 +1,21 @@ +pkgname=orchis-gtk-theme +pkgver=2025-04-25 +pkgdesc="A Material Design theme for GNOME/GTK based desktop environments" +homepage="https://github.com/vinceliuice/orchis-theme" +arch=('any') +license=('GPL-3.0-or-later') +depends=('sassc') +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("${homepage}/archive/refs/tags/${pkgver}.tar.gz") +sha256sums=("d479653415e271fe9f3324f1f4f51cf28b1134164667142c6c6a6db41cf4da9b") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_install() { + install -dm 755 "${pkgdir}/usr/share/themes" + ./install.sh --tweaks submenu --dest "${pkgdir}/usr/share/themes" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From a529ad2dd45871aff0f025ec09a28878d36f3a71 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 04:11:48 -0500 Subject: [PATCH 64/82] new blfs: x11-themes/gnome-themes-standard-3.28 --- .../gnome-themes-standard-3.28.PKGBUILD | 39 ++++++++++++ ...hemes-standard-3.22.2-exclude-engine.patch | 63 +++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 x11-themes/gnome-themes-standard-3.28.PKGBUILD create mode 100644 x11-themes/gnome-themes-standard-3.28/gnome-themes-standard-3.22.2-exclude-engine.patch diff --git a/x11-themes/gnome-themes-standard-3.28.PKGBUILD b/x11-themes/gnome-themes-standard-3.28.PKGBUILD new file mode 100644 index 0000000..fa74e4e --- /dev/null +++ b/x11-themes/gnome-themes-standard-3.28.PKGBUILD @@ -0,0 +1,39 @@ +pkgname=gnome-themes-standard +pkgbase=gnome-themes-extra +pkgver=3.28 +pkgdesc="Standard Themes for GNOME Applications" +homepage="https://gitlab.gnome.org/GNOME/gnome-themes-extra" +license=("LGPL-2.1+") +_patches=("${pkgname}-3.22.2-exclude-engine.patch") +_patch_sums=("9b7f4efdce158485850e12566dce91a7b3494bae8191bcacb581a737dde15bcce9b10af8f28ab920605e86008744ad380312f26fc3d624bada910599501159f9") +sources=("${pkgbase}-${pkgver}.tar.xz" + "${_patches[@]}" +) +urls=("https://download.gnome.org/sources/${pkgbase}/${pkgver}/${sources[0]}" + "${_patches[@]}" +) +sha512sums=("bccc446e86b12476b86a0fe2e3354500c8fb3eef62a85c3823d69aaa259e032e1f94e7993bf633397b669c425ef42635b0cf17b376f0b7cf1869bb1d7160ede0" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + + autoreconf -fiv +} + +src_build() { + ./configure --prefix=/usr \ + --disable-gtk2-engine \ + --disable-gtk3-engine + make +} + +src_install() { + make DESTDIR="$pkgdir" install +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/x11-themes/gnome-themes-standard-3.28/gnome-themes-standard-3.22.2-exclude-engine.patch b/x11-themes/gnome-themes-standard-3.28/gnome-themes-standard-3.22.2-exclude-engine.patch new file mode 100644 index 0000000..7cdceff --- /dev/null +++ b/x11-themes/gnome-themes-standard-3.28/gnome-themes-standard-3.22.2-exclude-engine.patch @@ -0,0 +1,63 @@ +From 58fd7206211e8e4d42ce6925718e56f84a1b4eb3 Mon Sep 17 00:00:00 2001 +From: Gilles Dartiguelongue +Date: Mon, 3 Oct 2016 00:38:57 +0200 +Subject: [PATCH] Control build of gtk+2 adwaita theme engine from configure + +Rather than whole gtk+-2 theme. + +This only makes sense in Gentoo as the theme engine has been split to +a separate package to allow gtk+2 free systems. +--- + themes/Adwaita-dark/Makefile.am | 6 +----- + themes/Adwaita/Makefile.am | 6 +----- + themes/Adwaita/gtk-2.0/Makefile.am | 2 ++ + 3 files changed, 4 insertions(+), 10 deletions(-) + +diff --git a/themes/Adwaita-dark/Makefile.am b/themes/Adwaita-dark/Makefile.am +index 8a381b9..c5efcbf 100644 +--- a/themes/Adwaita-dark/Makefile.am ++++ b/themes/Adwaita-dark/Makefile.am +@@ -1,8 +1,4 @@ +-SUBDIRS = gtk-3.0 +- +-if GTK2_ENGINE +-SUBDIRS += gtk-2.0 +-endif ++SUBDIRS = gtk-2.0 gtk-3.0 + + THEME_NAME=Adwaita-dark + THEME_IN_FILES=index.theme.in +diff --git a/themes/Adwaita/Makefile.am b/themes/Adwaita/Makefile.am +index 8583535..617b9a6 100644 +--- a/themes/Adwaita/Makefile.am ++++ b/themes/Adwaita/Makefile.am +@@ -1,8 +1,4 @@ +-SUBDIRS = gtk-3.0 +- +-if GTK2_ENGINE +-SUBDIRS += gtk-2.0 +-endif ++SUBDIRS = gtk-2.0 gtk-3.0 + + THEME_NAME=Adwaita + THEME_IN_FILES=index.theme.in +diff --git a/themes/Adwaita/gtk-2.0/Makefile.am b/themes/Adwaita/gtk-2.0/Makefile.am +index 1e56f7f..9108cc4 100644 +--- a/themes/Adwaita/gtk-2.0/Makefile.am ++++ b/themes/Adwaita/gtk-2.0/Makefile.am +@@ -1,3 +1,4 @@ ++if GTK2_ENGINE + enginedir = $(libdir)/gtk-2.0/$(GTK2_VERSION)/engines + engine_LTLIBRARIES = libadwaita.la + +@@ -5,6 +6,7 @@ libadwaita_la_CFLAGS = $(GTK2_ENGINE_CFLAGS) + libadwaita_la_SOURCES = adwaita_engine.c + libadwaita_la_LDFLAGS = -module -avoid-version -no-undefined + libadwaita_la_LIBADD = $(GTK2_ENGINE_LIBS) ++endif + + themedir = $(datadir)/themes/Adwaita/gtk-2.0 + theme_DATA = gtkrc main.rc apps.rc hacks.rc +-- +2.10.1 + -- 2.49.1 From 250003727a3b2b2ffe8f8b340e86519861623488 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 04:32:31 -0500 Subject: [PATCH 65/82] new bblfs: gui-apps/wl-clipboard-2.2.1 --- gui-apps/wl-clipboard-2.2.1.PKGBUILD | 30 ++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 gui-apps/wl-clipboard-2.2.1.PKGBUILD diff --git a/gui-apps/wl-clipboard-2.2.1.PKGBUILD b/gui-apps/wl-clipboard-2.2.1.PKGBUILD new file mode 100644 index 0000000..08bc684 --- /dev/null +++ b/gui-apps/wl-clipboard-2.2.1.PKGBUILD @@ -0,0 +1,30 @@ +pkgname=wl-clipboard +pkgver=2.2.1 +pkgdesc="Wayland clipboard utilities" +homepage="https://github.com/bugaevc/wl-clipboard" +license=("GPL-3") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/bugaevc/${pkgname}/archive/v${pkgver}.tar.gz") +sha512sums=("fdda519df42e1dbfb112ab7d8195a0f36cf5cf18fffffa8f32ac4688a08009e206b96a169da641f909c9acf244eb6a5201811842b4d3111e1ccdb1ce8fb4db43") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D fishcompletiondir="/usr/share/fish/vendor_completions.d" + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 3fc6b2e81a9425bf13bf056ac47502e257b445a8 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 04:57:06 -0500 Subject: [PATCH 66/82] new blfs: x11-misc/xdg-utils-1.2.1 --- x11-misc/xdg-utils-1.2.1.PKGBUILD | 53 +++++++ .../xdg-utils-1.2.1-qtpaths.patch | 21 +++ .../xdg-utils-1.2.1-xdg-mime-default.patch | 143 ++++++++++++++++++ 3 files changed, 217 insertions(+) create mode 100644 x11-misc/xdg-utils-1.2.1.PKGBUILD create mode 100644 x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-qtpaths.patch create mode 100644 x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-xdg-mime-default.patch diff --git a/x11-misc/xdg-utils-1.2.1.PKGBUILD b/x11-misc/xdg-utils-1.2.1.PKGBUILD new file mode 100644 index 0000000..77db783 --- /dev/null +++ b/x11-misc/xdg-utils-1.2.1.PKGBUILD @@ -0,0 +1,53 @@ +pkgname=xdg-utils +pkgver=1.2.1 +pkgdesc="Portland utils for cross-platform/cross-toolkit/cross-desktop interoperability" +homepage="https://www.freedesktop.org/wiki/Software/xdg-utils/" +license=("MIT") +depends=( + dev-util/desktop-file-utils + x11-misc/shared-mime-info + dbus +) +_patches=("xdg-utils-1.2.1-qtpaths.patch" + "xdg-utils-1.2.1-xdg-mime-default.patch" +) +_patch_sums=("9a7942e38ecad2bdbebdd558557647648c21bfec132f72bb7c3f2ae737345fb1e552e7fa6a118223da663ae4e3ac4d9776ec3f46f031ad2499141ab83db5c99a" + "0e57d5cf9fa9969738c1d836c4c3b644cc6e1e80cd7486ec5ca0fdb2c86f0f5e3988c4790faf1838ad09946803347a96c0fd47373c5971c691c20d4913845ad1" +) +sources=("${pkgname}-${pkgver}.tar.bz2" + "${_patches[@]}" +) +urls=("https://gitlab.freedesktop.org/xdg/xdg-utils/-/archive/v${pkgver}/${pkgname}-v${pkgver}.tar.bz2" + "${_patches[@]}" +) +sha512sums=("d5436449fec2f4db952239ee910bfda203955c8df8cb92379f182dc36f9c82b6ceb092ccbebfd02ed00eb7ef5f6895ef745baca67906ae7490e425db27b1dbfc" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + autoreconf -fiv +} + +src_build() { + ./configure --prefix=/usr --mandir=/usr/share/man + make -C scripts scripts-clean + + make +} + +src_install() { + make DESTDIR="$pkgdir" install + + echo XDG_DATA_DIRS=\"/usr/local/share\" > 30xdg-data-local + echo 'COLON_SEPARATED="XDG_DATA_DIRS XDG_CONFIG_DIRS"' >> 30xdg-data-local + install -vDm644 30xdg-data-local -t "${pkgdir}"/etc/env.d + echo XDG_DATA_DIRS=\"/usr/share\" > 90xdg-data-base + echo XDG_CONFIG_DIRS=\"/etc/xdg\" >> 90xdg-data-base + install -vDm644 90xdg-data-base -t "${pkgdir}"/etc/env.d +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-qtpaths.patch b/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-qtpaths.patch new file mode 100644 index 0000000..67a84e9 --- /dev/null +++ b/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-qtpaths.patch @@ -0,0 +1,21 @@ +Workaround for https://bugs.gentoo.org/934941. + +Pending questions: +* Should qt6paths instead be in /usr/bin in Gentoo? +* Why do we have a qtpaths6 as well as a qt6paths? +--- a/scripts/xdg-mime.in ++++ b/scripts/xdg-mime.in +@@ -166,8 +166,11 @@ make_default_kde() + # text/plain=gnome-gedit.desktop;gnu-emacs.desktop; + vendor="$1" + mimetype="$2" +- if [ "${KDE_SESSION_VERSION:-0}" -gt 4 ] ; then +- default_dir="$(qtpaths --writable-path ConfigLocation)" ++ if [ "${KDE_SESSION_VERSION:-0}" -gt 5 ] ; then ++ default_dir="$($(pkg-config --variable=bindir Qt6Core)/qtpaths6 --writable-path ConfigLocation)" ++ default_file="$default_dir/mimeapps.list" ++ elif [ x"$KDE_SESSION_VERSION" = x"5" ] ; then ++ default_dir="$(qtpaths5 --writable-path ConfigLocation)" + default_file="$default_dir/mimeapps.list" + elif [ x"$KDE_SESSION_VERSION" = x"4" ]; then + default_dir="$(kde4-config --path xdgdata-apps 2> /dev/null | cut -d ':' -f 1)" diff --git a/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-xdg-mime-default.patch b/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-xdg-mime-default.patch new file mode 100644 index 0000000..8efcdca --- /dev/null +++ b/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-xdg-mime-default.patch @@ -0,0 +1,143 @@ +https://gitlab.freedesktop.org/xdg/xdg-utils/-/issues/252 +https://gitlab.freedesktop.org/xdg/xdg-utils/-/commit/f113a8b997dcb9527b9694d31bddcfa05096aecf + +From f113a8b997dcb9527b9694d31bddcfa05096aecf Mon Sep 17 00:00:00 2001 +From: Slatian +Date: Tue, 21 May 2024 04:08:23 +0000 +Subject: [PATCH] Make the desktop_file_to_binary function less likely to fall + over and do something unexpected. + +* Uses a shell implementation ( !24) of `which` in the `desktop_file_to_binary` to avoid tripping over unexpected output from `command -v` +* In addition it also makes the parsing a bit more standards compliant than it previously was. +* Adds a developer script to easier test internal functions in the xdg-utils-common.in file + +Fixes: #252 +--- + scripts/test-common-function | 13 ++++++++ + scripts/xdg-utils-common.in | 64 +++++++++++++++++++++++++++++++----- + 2 files changed, 68 insertions(+), 9 deletions(-) + create mode 100755 scripts/test-common-function + +diff --git a/scripts/test-common-function b/scripts/test-common-function +new file mode 100755 +index 0000000..c8af98d +--- /dev/null ++++ b/scripts/test-common-function +@@ -0,0 +1,13 @@ ++#!/bin/sh ++ ++# This script is for testing internal functions of the xdg-utils-common.in file ++# ++# Example ./test-common-function xdg_which echo ++ ++XDG_UTILS_DEBUG_LEVEL="${XDG_UTILS_DEBUG_LEVEL:-99}" ++ ++. ./xdg-utils-common.in ++ ++"$@" ++ ++exit $? +diff --git a/scripts/xdg-utils-common.in b/scripts/xdg-utils-common.in +index f0a1aac..adab368 100644 +--- a/scripts/xdg-utils-common.in ++++ b/scripts/xdg-utils-common.in +@@ -51,19 +51,24 @@ binary_to_desktop_file() + } + + #------------------------------------------------------------- +-# map a .desktop file to a binary ++# map a .desktop file name to its Exec binary ++# Returns the realpath resolved path to the binary or noting. ++ ++# desktop_file_to_binary + desktop_file_to_binary() + { ++ DEBUG 1 "desktop_file_to_binary '$1'" + search="${XDG_DATA_HOME:-$HOME/.local/share}:${XDG_DATA_DIRS:-/usr/local/share:/usr/share}" + desktop="$(basename "$1")" + IFS=: + for dir in $search; do ++ DEBUG 2 "Searching in '$dir/{applications,applnk}'" + unset IFS +- [ "$dir" ] && [ -d "$dir/applications" ] || [ -d "$dir/applnk" ] || continue ++ [ -n "$dir" ] && [ -d "$dir/applications" ] || [ -d "$dir/applnk" ] || continue + # Check if desktop file contains - + if [ "${desktop#*-}" != "$desktop" ]; then +- vendor=${desktop%-*} +- app=${desktop#*-} ++ vendor="${desktop%-*}" ++ app="${desktop#*-}" + if [ -r "$dir/applications/$vendor/$app" ]; then + file_path="$dir/applications/$vendor/$app" + elif [ -r "$dir/applnk/$vendor/$app" ]; then +@@ -72,18 +77,31 @@ desktop_file_to_binary() + fi + if test -z "$file_path" ; then + for indir in "$dir"/applications/ "$dir"/applications/*/ "$dir"/applnk/ "$dir"/applnk/*/; do ++ DEBUG 4 "Does file exist? '$indir/$desktop'" + file="$indir/$desktop" + if [ -r "$file" ]; then +- file_path=$file ++ file_path="$file" + break + fi + done + fi + if [ -r "$file_path" ]; then +- # Remove any arguments (%F, %f, %U, %u, etc.). +- command="$(grep -E "^Exec(\[[^]=]*])?=" "$file_path" | cut -d= -f 2- | first_word)" +- command="$(command -v "$command")" +- xdg_realpath "$command" ++ DEBUG 2 "Checking desktop file '$file_path'" ++ # Get the command name from the correct Exec ++ # Note: Ignoring quoting and escape sequences here, see #253 ++ binary="$(awk -F '=' ' ++ /^\[/{ in_entry=0 } ++ $0 == "[Desktop Entry]"{ in_entry=1 } ++ in_entry && /^Exec\s*=/ { ++ sub(/^\s+/,"",$2); ++ match($2,/^[^ ]+/); ++ print substr($2,RSTART,RLENGTH) ++ }' \ ++ < "$file_path" )" ++ DEBUG 2 "Found command: $binary" ++ binary="$(xdg_which "$binary")" ++ DEBUG 2 "Resolved to command to file: '$binary'" ++ [ -z "$binary" ] || xdg_realpath "$binary" + return + fi + done +@@ -461,3 +479,31 @@ xdg_realpath() + ;; + esac + } ++ ++#---------------------------------------------------------------------------- ++# The `which` command but as a shell implementation. ++# Returns either the path of the resolved binary or nothing ++# because command -v does not always return the path of a command ++# (builtins, aliases, functions, etc.) ++ ++# xdg_which ++xdg_which() ++{ ++ if [ -z "$1" ] ; then ++ return 1 ++ elif [ -x "$1" ] ; then ++ printf "%s\n" "$1" ++ else ++ # this should be faster than the real thing because of shell builtins ++ old_ifs="$IFS" ++ IFS=: ++ for p in $PATH ; do ++ IFS="$old_ifs" ++ if [ -x "$p/$1" ] ; then ++ printf "%s\n" "$p/$1" ++ return ++ fi ++ done ++ return 1 ++ fi ++} +-- +GitLab -- 2.49.1 From 739e0f336eb108f5c28733102f9b3dcbc3b4f706 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 05:03:54 -0500 Subject: [PATCH 67/82] new bblfs: app-misc/cliphist-0.7.0 --- app-misc/cliphist-0.7.0.PKGBUILD | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 app-misc/cliphist-0.7.0.PKGBUILD diff --git a/app-misc/cliphist-0.7.0.PKGBUILD b/app-misc/cliphist-0.7.0.PKGBUILD new file mode 100644 index 0000000..950e1d6 --- /dev/null +++ b/app-misc/cliphist-0.7.0.PKGBUILD @@ -0,0 +1,29 @@ +pkgname=cliphist +pkgver=0.7.0 +pkgdesc="Wayland clipboard manager with support for multimedia" +homepage="https://github.com/sentriz/cliphist" +license=("GPL-3" "MIT" "BSD") +depends=(wl-clipboard xdg-utils) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/henri-gasc/cliphist/archive/refs/tags/v${pkgver}.tar.gz") +sha512sums=("a74ee41fb96796ae4fc397410a466d31a49dfb6de7adf8eb9a16c236ea1db95b14d321909a68ba63fb9fc94b48919aa6634c5d41add51e294f3d6a03d4c62086") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + export CGO_CPPFLAGS="$CPPFLAGS" + export CGO_CFLAGS="$CFLAGS" + export CGO_CXXFLAGS="$CXXFLAGS" + export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw" + go build \ + -ldflags "-linkmode external -extldflags '$LDFLAGS'" \ + -o $pkgname +} + +src_install() { + install -vDm0755 -t "$pkgdir/usr/bin/" $pkgname +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From f2ee5c990e735e409b6d44134817d5af6ad81efd Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 05:56:35 -0500 Subject: [PATCH 68/82] new bblfs: gui-apps/grim-1.5.0 --- gui-apps/grim-1.5.0.PKGBUILD | 42 ++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 gui-apps/grim-1.5.0.PKGBUILD diff --git a/gui-apps/grim-1.5.0.PKGBUILD b/gui-apps/grim-1.5.0.PKGBUILD new file mode 100644 index 0000000..5666689 --- /dev/null +++ b/gui-apps/grim-1.5.0.PKGBUILD @@ -0,0 +1,42 @@ +pkgname=grim +pkgver=1.5.0 +pkgdesc="Grab images from a Wayland compositor" +homepage="https://gitlab.freedesktop.org/emersion/grim" +license=("MIT") +depends=( + wayland + libpng + pixman + wayland-protocols +) +bdepends=(wayland-scanner) +sources=("${pkgname}-v${pkgver}.tar.bz2") +urls=("https://gitlab.freedesktop.org/emersion/grim/-/archive/v${pkgver}/${sources[0]}") +sha512sums=("5eccc172a4d21be7e541f201a86909647d54533749c6dc679b8e68383a310a832f42cf8b5096ef61838c9c7b3213b32b4f54103a67b238ede718b4be834a0aed") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D jpeg=disabled + -D man-pages=disabled + -D bash-completions=false + -D fish-completions=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" + install -vDm644 contrib/completions/bash/grim.bash "${pkgdir}"/usr/share/bash-completion/completions/grim + install -vDm644 contrib/completions/fish/grim.fish "${pkgdir}"/usr/share/fish/vendor_completions.d/grim.fish +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From d48db67289e4984972f850083ae4c990d331e28d Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 06:08:01 -0500 Subject: [PATCH 69/82] new bblfs: gui-apps/slurp-1.5.0 --- gui-apps/slurp-1.5.0.PKGBUILD | 37 +++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 gui-apps/slurp-1.5.0.PKGBUILD diff --git a/gui-apps/slurp-1.5.0.PKGBUILD b/gui-apps/slurp-1.5.0.PKGBUILD new file mode 100644 index 0000000..8ccf5eb --- /dev/null +++ b/gui-apps/slurp-1.5.0.PKGBUILD @@ -0,0 +1,37 @@ +pkgname=slurp +pkgver=1.5.0 +pkgdesc="Select a region in a Wayland compositor and print it to the standard output" +homepage="https://github.com/emersion/slurp" +license=("MIT") +depends=( + wayland-protocols + wayland + cairo + libxkbcommon +) +bdepends=(wayland-scanner) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/emersion/${pkgname}/archive/v${pkgver}.tar.gz") +sha512sums=("77c4efdaa4ac411f43c598e5d654bcf61f969a5e403df6110757a7b217e02d55d0ba797729e42f8219d3bba79f58bcb36746799de765d3b25f301bf9ac3c1888") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D man-pages=disabled + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From bbfadc6259adfb684d811f55802b44f126498d67 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 06:38:25 -0500 Subject: [PATCH 70/82] new bblfs: media-fonts/fontawesome-6.5.1 --- media-fonts/fontawesome-6.5.1.PKGBUILD | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 media-fonts/fontawesome-6.5.1.PKGBUILD diff --git a/media-fonts/fontawesome-6.5.1.PKGBUILD b/media-fonts/fontawesome-6.5.1.PKGBUILD new file mode 100644 index 0000000..85ce09c --- /dev/null +++ b/media-fonts/fontawesome-6.5.1.PKGBUILD @@ -0,0 +1,18 @@ +pkgname=fontawesome +pkgver=6.5.1 +pkgdesc="The iconic font" +homepage="https://fontawesome.com" +license=("CC-BY-4.0" "OFL-1.1") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/FortAwesome/Font-Awesome/archive/${pkgver}.tar.gz") +sha512sums=("da8b9c42241e370330d01d73a8cd279bc16589bf94a6edbbd4b18924341d3db7e03258170cae31c43ee73285373544907ca31a27dbe71765cd7637531e80d418") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_install() { + install -Dvm644 otfs/*.otf -t "${pkgdir}/usr/share/fonts/${pkgname}" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 88449be728557612057c60e19c5e8dae9d28791a Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 06:42:30 -0500 Subject: [PATCH 71/82] new bblfs: gui-apps/swappy-1.5.1 --- gui-apps/swappy-1.5.1.PKGBUILD | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 gui-apps/swappy-1.5.1.PKGBUILD diff --git a/gui-apps/swappy-1.5.1.PKGBUILD b/gui-apps/swappy-1.5.1.PKGBUILD new file mode 100644 index 0000000..9094670 --- /dev/null +++ b/gui-apps/swappy-1.5.1.PKGBUILD @@ -0,0 +1,39 @@ +pkgname=swappy +pkgver=1.5.1 +pkgdesc="A Wayland native snapshot and editor tool, inspired by Snappy on macOS" +gomepage="https://github.com/jtheoof/swappy" +license=("MIT") +depends=( + glib:2 + cairo + gdk-pixbuf:2 + pango + "fontawesome[otf]" + xorg-proto +) +bdepends=(scdoc) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/jtheoof/${pkgname}/archive/v${pkgver}.tar.gz") +sha512sums=("688ad9006965d6a3f9d2997335bc3e8172e4f6f53551bb92603cdc1f14138c25f9f7d28a87aa1cbcefc94f5da1701443a2ddf0e883b648ecc5a0b0ca28588217") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D man-pages=enabled + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 10584d06fa01aa849cdacff160163d289f233b19 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 06:53:25 -0500 Subject: [PATCH 72/82] new bblfs: media-sound/playerctl-2.4.1 --- media-sound/playerctl-2.4.1.PKGBUILD | 41 ++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 media-sound/playerctl-2.4.1.PKGBUILD diff --git a/media-sound/playerctl-2.4.1.PKGBUILD b/media-sound/playerctl-2.4.1.PKGBUILD new file mode 100644 index 0000000..380e27e --- /dev/null +++ b/media-sound/playerctl-2.4.1.PKGBUILD @@ -0,0 +1,41 @@ +pkgname=playerctl +pkgver=2.4.1 +pkgdesc="A CLI utility to control media players over MPRIS" +homepage="https://github.com/acrisci/playerctl" +license=("LGPL-3+") +depends=( + glib + gobject-introspection +) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/acrisci/playerctl/archive/v${pkgver}.tar.gz") +sha512sums=("2d84f657b07c948cd6990d9e79c4eb6e83f97c387ac53c2322fc0adbeb853950fa935332233329e7555db7d157f3ced6498cc102edaffd78849ca1f7d4c49bdc") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D datadir=share + -D bindir=bin + -D bash-completions=false + -D zsh-completions=false + -D gtk-doc=false + -D introspection=false + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" + install -vDm644 data/playerctl.bash "${pkgdir}"/usr/share/bash-completion/completions/playerctl + install -vDm644 data/playerctl.zsh "${pkgdir}"/usr/share/zsh/site-functions/_playerctl +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From c9f23615f8fba13196ba9f889feb68b7a7f21c35 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 07:18:34 -0500 Subject: [PATCH 73/82] new bblfs: app-text/asciidoc-10.2.1 --- app-text/asciidoc-10.2.1.PKGBUILD | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 app-text/asciidoc-10.2.1.PKGBUILD diff --git a/app-text/asciidoc-10.2.1.PKGBUILD b/app-text/asciidoc-10.2.1.PKGBUILD new file mode 100644 index 0000000..730833a --- /dev/null +++ b/app-text/asciidoc-10.2.1.PKGBUILD @@ -0,0 +1,36 @@ +pkgname=asciidoc +pkgver=10.2.1 +pkgdesc="A plain text human readable/writable document format" +homepage="https://asciidoc.org/ https://github.com/asciidoc-py/asciidoc-py/" +license=("GPL-2") +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/asciidoc-py/asciidoc-py/releases/download/${pkgver}/${sources[0]}") +sha512sums=("02d064aab8dfb05af4ae49a7c7bd1381156c6c90f95b2494218c80f01c39987cb971d68c533b5519abade77be9832b3fab653d8ae2ca7bb682c5bb720612839f") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + sed -i \ + -e '/^build: /a \\tpython3 -m build -wn' \ + -e '/pip install/{s#pip install --root#installer -d#;s#\.$#dist/*.whl#}' \ + Makefile.in + # https://github.com/asciidoc-py/asciidoc-py/issues/234 + autoconf +} + +src_build() { + ./configure \ + --docdir /usr/share/$pkgname \ + --prefix /usr + make build +} + +src_install() { + make DESTDIR="${pkgdir}" install + make DESTDIR="${pkgdir}" docs + install -Dm0644 -t "$pkgdir/usr/share/man/man1/" doc/*.1 + # ascidocapi is deprecated, but still included in 10.x on a "provisional" basis + local _platlib="$(python -c 'import sysconfig; print(sysconfig.get_paths()["platlib"])')" + install -Dm0644 -t "${pkgdir}/${_platlib}/${pkgname}/" asciidoc/api.py +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From fb26e4df4d000e6317d66927fbd09b1b571f0f97 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 07:34:25 -0500 Subject: [PATCH 74/82] new bblfs: dev-build/netsurf-buildsystem-1.10 --- dev-build/netsurf-buildsystem-1.10.PKGBUILD | 26 +++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 dev-build/netsurf-buildsystem-1.10.PKGBUILD diff --git a/dev-build/netsurf-buildsystem-1.10.PKGBUILD b/dev-build/netsurf-buildsystem-1.10.PKGBUILD new file mode 100644 index 0000000..382d8b7 --- /dev/null +++ b/dev-build/netsurf-buildsystem-1.10.PKGBUILD @@ -0,0 +1,26 @@ +pkgname=netsurf-buildsystem +_name=buildsystem +pkgver=1.10 +pkgdesc="Build system used for netsurf and its libraries" +homepage="https://www.netsurf-browser.org" +license=("MIT") +sources=("${_name}-${pkgver}.tar.gz") +urls=("https://download.netsurf-browser.org/libs/releases/${sources[0]}") +sha512sums=("0b0f9114567e5c0807bbf066f1c507f386dfb43bf993e3fe487b3c77edc6cee8ea573ca1105558e48b78b2c97857791fe1fe65af8e95fa0f4e205ef701677670") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + sed -e 's:/bin/which:which:' -i "makefiles/Makefile.tools" +} + +src_build() { + sed -i 's:-Werror::' Makefile + make PREFIX=/usr #COMPONENT_TYPE=lib-shared +} + +src_install() { + make DESTDIR="$pkgdir" PREFIX=/usr install +} + + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 199ac0895dfe2391195d7a35c78ecbf14dc5fb93 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 07:46:03 -0500 Subject: [PATCH 75/82] new bblfs: media-libs/libnsgif-1.0.0 --- media-libs/libnsgif-1.0.0.PKGBUILD | 36 +++++++++++++++++++ ...nsgif-1.0.0-make-test-failures-fatal.patch | 27 ++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 media-libs/libnsgif-1.0.0.PKGBUILD create mode 100644 media-libs/libnsgif-1.0.0/libnsgif-1.0.0-make-test-failures-fatal.patch diff --git a/media-libs/libnsgif-1.0.0.PKGBUILD b/media-libs/libnsgif-1.0.0.PKGBUILD new file mode 100644 index 0000000..88abf46 --- /dev/null +++ b/media-libs/libnsgif-1.0.0.PKGBUILD @@ -0,0 +1,36 @@ +pkgname=libnsgif +pkgver=1.0.0 +pkgdesc="Decoding library for the GIF image file format, written in C" +homepage="https://www.netsurf-browser.org/projects/libnsgif/" +license=("MIT") +depends=(netsurf-buildsystem) +_patches=("libnsgif-1.0.0-make-test-failures-fatal.patch") +_patch_sums=("73a17081ac8a7c5242caffe20cae128a382910bbe053c5332a8cf156c3ad2931306adf332a65a8e772755009082e5d27cc0e35260d8a30538509fa35c1b05716") +sources=("${pkgname}-${pkgver}-src.tar.gz" + "${_patches[@]}" +) +urls=("https://download.netsurf-browser.org/libs/releases/${sources[0]}" + "${_patches[@]}" +) +sha512sums=("e87d5faaa4f586a098357a23bed58a8a7a79c94549b21c3338dd04bd5e074e93a7719d93d79515287b15514a2cf39aaa2abd88fd9aec8785a27594ee5cc2ddc0" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + make COMPONENT_TYPE=lib-shared INCLUDEDIR=include LIBDIR=lib \ + PREFIX=/usr +} + +src_install() { + make COMPONENT_TYPE=lib-shared DESTDIR="$pkgdir" INCLUDEDIR=include \ + LIBDIR=lib PREFIX=/usr install +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/media-libs/libnsgif-1.0.0/libnsgif-1.0.0-make-test-failures-fatal.patch b/media-libs/libnsgif-1.0.0/libnsgif-1.0.0-make-test-failures-fatal.patch new file mode 100644 index 0000000..3225587 --- /dev/null +++ b/media-libs/libnsgif-1.0.0/libnsgif-1.0.0-make-test-failures-fatal.patch @@ -0,0 +1,27 @@ +https://bugs.gentoo.org/918642 +https://github.com/gentoo/gentoo/pull/35142 + +commit 6537507d754ad049dbdc324ec6bdea8b30416d48 +Author: matoro +Date: Fri Feb 16 12:44:14 2024 -0500 + + test: nsgif: make failing tests fatal + + Right now, failing or erroring tests is not currently considered fatal. + This makes any instance of either fatal. + + See: https://github.com/gentoo/gentoo/pull/35142 + +diff --git a/test/runtest.sh b/test/runtest.sh +index fd84847..ef7274c 100755 +--- a/test/runtest.sh ++++ b/test/runtest.sh +@@ -68,7 +68,7 @@ done + echo "Tests:${GIFTESTTOTC} Pass:${GIFTESTPASSC} Fail:${GIFTESTFAILC} Error:${GIFTESTERRC}" + + # exit code +-if [ "${GIFTESTERRC}" -gt 0 ]; then ++if [ "${GIFTESTERRC}" -gt 0 ] || [ "${GIFTESTFAILC}" -gt 0 ]; then + exit 1 + fi + -- 2.49.1 From 6e26717e29eb1136b3bb5c6082edc19541807ffc Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 08:07:19 -0500 Subject: [PATCH 76/82] new bblfs: media-gfx/imv-5.0.1 --- media-gfx/imv-5.0.1.PKGBUILD | 71 +++++++++++++++++++ .../imv-5.0.1/imv-5.0.0-nsgif-version.patch | 5 ++ 2 files changed, 76 insertions(+) create mode 100644 media-gfx/imv-5.0.1.PKGBUILD create mode 100644 media-gfx/imv-5.0.1/imv-5.0.0-nsgif-version.patch diff --git a/media-gfx/imv-5.0.1.PKGBUILD b/media-gfx/imv-5.0.1.PKGBUILD new file mode 100644 index 0000000..23ab14b --- /dev/null +++ b/media-gfx/imv-5.0.1.PKGBUILD @@ -0,0 +1,71 @@ +pkgname=imv +pkgver=5.0.1 +pkgdesc="Minimal image viewer designed for tiling window manager users" +homepage="https://sr.ht/~exec64/imv/" +license=("MIT") +depends=( + glib + inih + libglvnd + cairo + libxkbcommon + pango + libnsgif + icu + libjpeg-turbo + libpng + librsvg + tiff + wayland + libwebp + wayland-protocols +) +bdepends=(asciidoc wayland-scanner) +_patches=("imv-5.0.0-nsgif-version.patch") +_patch_sums=("ae8f20077c0a75f33fb04f0c603df10dc2dcdd3e2be19e590d6ff92eee959910524bdb370b292124fd7c3333a82ff8c0db384488dbd8962d8e1dabd41a688160") +sources=("${pkgname}-${pkgver}.tar.gz" + "${_patches[@]}" +) +urls=("https://git.sr.ht/~exec64/imv/archive/v${pkgver}.tar.gz" + "${_patches[@]}" +) +sha512sums=("9a53119b4bdb2c4b848ac5d7138f98948973bfa52ef3da111ca3c9eff5e11daf90529cd8c4898643bc7bde712b9c0e62fee9770a55f4e220abd4587ce651bba7" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D libnsbmp=disabled + -D libnsgif=enabled + -D libheif=disabled + -D libjpeg=enabled + -D libjxl=disabled + -D libpng=enabled + -D qoi=disabled + -D librsvg=enabled + -D test=disabled + -D libtiff=enabled + -D unicode=icu + -D libwebp=enabled + -D windows=wayland + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/media-gfx/imv-5.0.1/imv-5.0.0-nsgif-version.patch b/media-gfx/imv-5.0.1/imv-5.0.0-nsgif-version.patch new file mode 100644 index 0000000..4ec2eab --- /dev/null +++ b/media-gfx/imv-5.0.1/imv-5.0.0-nsgif-version.patch @@ -0,0 +1,5 @@ +--- a/meson.build ++++ b/meson.build +@@ -140 +140 @@ +- ['libnsgif', 'dependency', 'libnsgif', '1.0.0', ['image/gif']], ++ ['libnsgif', 'dependency', 'libnsgif', '>= 1.0.0', ['image/gif']], -- 2.49.1 From cff2b3217e7aa2b1b8c52861403e3dc604e8ee77 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 08:21:09 -0500 Subject: [PATCH 77/82] new bblfs: media-libs/libsixel-1.10.5 --- media-libs/libsixel-1.10.5.PKGBUILD | 38 +++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 media-libs/libsixel-1.10.5.PKGBUILD diff --git a/media-libs/libsixel-1.10.5.PKGBUILD b/media-libs/libsixel-1.10.5.PKGBUILD new file mode 100644 index 0000000..06fbc65 --- /dev/null +++ b/media-libs/libsixel-1.10.5.PKGBUILD @@ -0,0 +1,38 @@ +pkgname=libsixel +pkgver=1.10.5 +pkgdesc="A lightweight, fast implementation of DEC SIXEL graphics codec" +homepage="https://github.com/libsixel/libsixel" +license=("MIT" "public-domain") +depends=() +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/${pkgname}/${pkgname}/archive/v${pkgver}.tar.gz") +sha512sums=("94fc972ee304885936d5d8fbc3dadc5feadebf1ab262bb49c9ae9b1eed19c528ed823f4d31c17326340f06a5b7ee28a1817be15ae55c3e9d0c4437cd36b3e49d") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + sed -i '/^have/d' converters/shell-completion/bash/img2sixel +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D libcurl=disabled + -D gd=disabled + -D gdk-pixbuf2=disabled + -D jpeg=disabled + -D png=disabled + -D tests=disabled + -D bashcompletiondir="/usr/share/bash-completion/completions" + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From dc2bf570b4a8e254b4a81fba65f288dcf9f533a5 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 17:07:24 -0500 Subject: [PATCH 78/82] new bblfs: dev-libs/protobuf-31.1 --- dev-libs/protobuf-31.1.PKGBUILD | 58 +++++++++++++++++++ dev-libs/protobuf-31.1/FindJsonCpp.cmake | 40 +++++++++++++ .../protobuf-30.0-findJsonCpp.patch | 44 ++++++++++++++ 3 files changed, 142 insertions(+) create mode 100644 dev-libs/protobuf-31.1.PKGBUILD create mode 100644 dev-libs/protobuf-31.1/FindJsonCpp.cmake create mode 100644 dev-libs/protobuf-31.1/protobuf-30.0-findJsonCpp.patch diff --git a/dev-libs/protobuf-31.1.PKGBUILD b/dev-libs/protobuf-31.1.PKGBUILD new file mode 100644 index 0000000..dcedebd --- /dev/null +++ b/dev-libs/protobuf-31.1.PKGBUILD @@ -0,0 +1,58 @@ +pkgname=protobuf +pkgver=31.1 +pkgdesc="Google's Protocol Buffers - Extensible mechanism for serializing structured data" +homepage="https://protobuf.dev/" +license=("BSD") +depends=(abseil-cpp zlib) +_patches=("${pkgname}-30.0-findJsonCpp.patch") +_patch_sums=("e3212111ada7f0a9dba717c70a9257b366a9cb6dfecfbcb67cf76645dcecf653cfb23b99ac394be16fa9c3baa8439be59ef5fa64631f31263da6c82c875665a5") +sources=("${pkgname}-${pkgver}.tar.gz" + "FindJsonCpp.cmake" + "${_patches[@]}" +) +urls=("https://github.com/protocolbuffers/protobuf/releases/download/v${pkgver}/${sources[0]}" + "FindJsonCpp.cmake" + "${_patches[@]}" +) +sha512sums=("5bf730e37183defcb29cf4831128f536ad8bcdce2b2b46b297d95f3de4a037b9ff3b6c57df66a039256dcefd828ba9d43c32b01a7a82aa5c881a9ae12cadb643" + "4a824ac0a73eebf622f999c4a78add515fea92eb44e6a1bc754343567e747f5258ca0d1c600644c67691583779a9cad814a6daf983e666c389fcaa90a2ec0aa6" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done + cp "${filedir}/FindJsonCpp.cmake" cmake +} + +src_build() { + local cmake_args=( + -D CMAKE_BUILD_TYPE=release + -D CMAKE_INSTALL_PREFIX=/usr + -D protobuf_BUILD_CONFORMANCE=no + -D protobuf_BUILD_LIBPROTOC=yes + -D protobuf_BUILD_LIBUPB=yes + -D protobuf_BUILD_PROTOBUF_BINARIES=yes + -D protobuf_BUILD_PROTOC_BINARIES=yes + -D protobuf_BUILD_SHARED_LIBS="yes" + -D protobuf_BUILD_TESTS=no + -D protobuf_DISABLE_RTTI="no" + -D protobuf_INSTALL="yes" + -D protobuf_TEST_XML_OUTDIR=no + -D protobuf_WITH_ZLIB=yes + -D protobuf_VERBOSE=no + -D CMAKE_MODULE_PATH="cmake" + -D protobuf_LOCAL_DEPENDENCIES_ONLY="yes" + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build + install -vDm644 editors/proto.vim -t "${pkgdir}"/usr/share/vim/vimfiles/syntax +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/dev-libs/protobuf-31.1/FindJsonCpp.cmake b/dev-libs/protobuf-31.1/FindJsonCpp.cmake new file mode 100644 index 0000000..8fff533 --- /dev/null +++ b/dev-libs/protobuf-31.1/FindJsonCpp.cmake @@ -0,0 +1,40 @@ +find_path(JsonCpp_INCLUDE_DIR "json/json.h" + PATH_SUFFIXES "jsoncpp" + DOC "jsoncpp include directory") +mark_as_advanced(JsonCpp_INCLUDE_DIR) + +find_library(JsonCpp_LIBRARY + NAMES jsoncpp + DOC "jsoncpp library") +mark_as_advanced(JsonCpp_LIBRARY) + +if (JsonCpp_INCLUDE_DIR AND EXISTS "${JsonCpp_INCLUDE_DIR}/json/version.h") + file(STRINGS "${JsonCpp_INCLUDE_DIR}/json/version.h" _JsonCpp_version_lines + REGEX "JSONCPP_VERSION_[A-Z]+") + string(REGEX REPLACE ".*# *define +JSONCPP_VERSION_MAJOR +([0-9]+).*" "\\1" _JsonCpp_version_major "${_JsonCpp_version_lines}") + string(REGEX REPLACE ".*# *define +JSONCPP_VERSION_MINOR +([0-9]+).*" "\\1" _JsonCpp_version_minor "${_JsonCpp_version_lines}") + string(REGEX REPLACE ".*# *define +JSONCPP_VERSION_PATCH +([0-9]+).*" "\\1" _JsonCpp_version_patch "${_JsonCpp_version_lines}") + set(JsonCpp_VERSION "${_JsonCpp_version_major}.${_JsonCpp_version_minor}.${_JsonCpp_version_patch}") + unset(_JsonCpp_version_major) + unset(_JsonCpp_version_minor) + unset(_JsonCpp_version_patch) + unset(_JsonCpp_version_lines) +endif () + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(JsonCpp + REQUIRED_VARS JsonCpp_LIBRARY JsonCpp_INCLUDE_DIR + VERSION_VAR JsonCpp_VERSION) + +if (JsonCpp_FOUND) + set(JsonCpp_INCLUDE_DIRS "${JsonCpp_INCLUDE_DIR}") + set(JsonCpp_LIBRARIES "${JsonCpp_LIBRARY}") + + if (NOT TARGET JsonCpp::JsonCpp) + add_library(JsonCpp::JsonCpp SHARED IMPORTED) + set_target_properties(JsonCpp::JsonCpp PROPERTIES + IMPORTED_LOCATION "${JsonCpp_LIBRARY}" + IMPORTED_IMPLIB "${JsonCpp_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${JsonCpp_INCLUDE_DIR}") + endif () +endif () diff --git a/dev-libs/protobuf-31.1/protobuf-30.0-findJsonCpp.patch b/dev-libs/protobuf-31.1/protobuf-30.0-findJsonCpp.patch new file mode 100644 index 0000000..9848a61 --- /dev/null +++ b/dev-libs/protobuf-31.1/protobuf-30.0-findJsonCpp.patch @@ -0,0 +1,44 @@ +From 2fe6cac5797bead74c473c795fdc5f9d50703894 Mon Sep 17 00:00:00 2001 +From: Paul Zander +Date: Thu, 6 Mar 2025 13:19:01 +0100 +Subject: [PATCH] fix JsonCPP name + +Signed-off-by: Paul Zander + +diff --git a/cmake/conformance.cmake b/cmake/conformance.cmake +index 7377841..dba05aa 100644 +--- a/cmake/conformance.cmake ++++ b/cmake/conformance.cmake +@@ -1,9 +1,9 @@ + # Don't run jsoncpp tests. + set(JSONCPP_WITH_TESTS OFF) + +-if (NOT TARGET jsoncpp_lib) ++if (NOT TARGET JsonCpp::JsonCpp) + if (NOT protobuf_FORCE_FETCH_DEPENDENCIES) +- find_package(jsoncpp) ++ find_package(JsonCpp) + endif() + + # Fallback to fetching Googletest from github if it's not found locally. +@@ -21,7 +21,7 @@ if (NOT TARGET jsoncpp_lib) + endif() + endif() + +-if (NOT TARGET jsoncpp_lib) ++if (NOT TARGET JsonCpp::JsonCpp) + message(FATAL_ERROR + "Cannot find jsoncpp dependency that's needed to build conformance tests.\n" + "If instead you want to skip these tests, run cmake with:\n" +@@ -151,7 +151,7 @@ add_test(NAME conformance_cpp_test + set(JSONCPP_WITH_TESTS OFF CACHE BOOL "Disable tests") + + if(BUILD_SHARED_LIBS) +- target_link_libraries(conformance_test_runner jsoncpp_lib) ++ target_link_libraries(conformance_test_runner JsonCpp::JsonCpp) + else() + target_link_libraries(conformance_test_runner jsoncpp_static) + endif() +-- +2.48.1 + -- 2.49.1 From e0ebaf4b9e618b9a4f01c526afa6786f11495a35 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 17:26:08 -0500 Subject: [PATCH 79/82] new bblfs: media-sound/termusic-0.12.0 --- media-sound/termusic-0.12.0.PKGBUILD | 36 ++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 media-sound/termusic-0.12.0.PKGBUILD diff --git a/media-sound/termusic-0.12.0.PKGBUILD b/media-sound/termusic-0.12.0.PKGBUILD new file mode 100644 index 0000000..5129f9d --- /dev/null +++ b/media-sound/termusic-0.12.0.PKGBUILD @@ -0,0 +1,36 @@ +pkgname=termusic +pkgver=0.12.0 +pkgdesc="Terminal Music and Podcast Player written in Rust" +homepage="https://github.com/tramhao/termusic" +license=("MIT") +depends=( + alsa-lib + libsixel + protobuf + dbus +) +sources=("${pkgname}-${pkgver}.tar.gz") +urls=("https://github.com/tramhao/termusic/archive/refs/tags/v${pkgver}.tar.gz") +sha512sums=("bb76a5db39bb1eeedf0ed834f41bdc97d2e49baadd6dc938f275edac95d73674a316747c498b11e970336f2b47eba5439a6c23f03557dec334b081fa25e117e9") + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + cargo fetch --locked --target "$(rustc --print host-tuple)" +} + +src_build() { + cargo build --features cover --release --frozen +} + +src_check() { + cargo test --frozen +} + +src_install() { + install -Dm 755 "target/release/$pkgname" -t "$pkgdir/usr/bin" + install -Dm 755 "target/release/$pkgname-server" -t "$pkgdir/usr/bin" + install -Dm 644 README.md -t "$pkgdir/usr/share/doc/$pkgname" + install -Dm 644 LICENSE_MIT -t "$pkgdir/usr/share/licenses/$pkgname" +} + +# vim:ft=sh syn=sh et sw=2: -- 2.49.1 From 58c8a7a42cb578f5b494218cdf8ec5770b4aa004 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 19:22:28 -0500 Subject: [PATCH 80/82] new blfs: media-libs/libplacebo-7.351.0 --- media-libs/libplacebo-7.351.0.PKGBUILD | 79 +++++++++++++++++++ ...libplacebo-7.351.0-vulkan-python-xml.patch | 16 ++++ 2 files changed, 95 insertions(+) create mode 100644 media-libs/libplacebo-7.351.0.PKGBUILD create mode 100644 media-libs/libplacebo-7.351.0/libplacebo-7.351.0-vulkan-python-xml.patch diff --git a/media-libs/libplacebo-7.351.0.PKGBUILD b/media-libs/libplacebo-7.351.0.PKGBUILD new file mode 100644 index 0000000..dc07586 --- /dev/null +++ b/media-libs/libplacebo-7.351.0.PKGBUILD @@ -0,0 +1,79 @@ +pkgname=libplacebo +pkgver=7.351.0 +_fastfloat_ver=8.0.1 +_glad_ver=2.0.8 +pkgdesc="Reusable library for GPU-accelerated image processing primitives" +homepage="https://libplacebo.org/ https://code.videolan.org/videolan/libplacebo/" +license=("LGPL-2.1+" "Apache-2.0" "MIT") +depends=( + "lcms:2" + libglvnd + shaderc + vulkan-loader + vulkan-headers +) +_patches=("libplacebo-7.351.0-vulkan-python-xml.patch") +_patch_sums=("2a58fa430f2422c1be18c19eefecd6e3a4faff1a44758a98335f66e1b7972f458dd2dd9433efd48be5179c29fc2b907e1ac16aafd59a922cff4ef5bee7c09d4f") +sources=("${pkgname}-v${pkgver}.tar.bz2" + "fast_float-${_fastfloat_ver}.tar.gz" + "${pkgname}-glad-${_glad_ver}.tar.gz" + "${_patches[@]}" +) +urls=("https://code.videolan.org/videolan/libplacebo/-/archive/v${pkgver}/${sources[0]}" + "https://github.com/fastfloat/fast_float/archive/refs/tags/v${_fastfloat_ver}.tar.gz" + "https://github.com/Dav1dde/glad/archive/refs/tags/v${_glad_ver}.tar.gz" + "${_patches[@]}" +) +sha512sums=("86d1efdde9a43f05e87f0927acece10b9d1bc9b1c4b517e8edb86277c3d2d7937c346e1313e54374d3b562d88c3a2acfe5b2cddb82535b10edf126653687c8ce" + "25dc7fd68c35aac97975fb8216db7f2f23cf34b81c7c550ae2857b595d74afb97e7fb78103e10c1509d21fe36c18f3fc23d1bf43120133cb870542a89d5c87bc" + "ec964d0080c9714803f0464492b237039d2bede805d21aa9e487f3bf910447fd6440eeca59f3795dc4d5dd3b3df35101714fa21ea19eb29f6a021864a2310acd" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + rmdir 3rdparty/fast_float + tar -xf ${distdir}/${sources[1]} + mv fast_float-${_fastfloat_ver} 3rdparty/fast_float + rmdir 3rdparty/glad + tar -xf ${distdir}/${sources[2]} + mv glad-${_glad_ver} 3rdparty/glad + + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + local meson_args=( + --prefix=/usr + --buildtype=release + --wrap-mode=nodownload + -D python.bytecompile=1 + -D demos=false + -D tests=false + -D lcms=enabled + -D libdovi=disabled + -D glslang=disabled + -D opengl=enabled + -D gl-proc-addr=enabled + -D shaderc=enabled + -D unwind=disabled + -D vulkan=enabled + -D vk-proc-addr=enabled + -D vulkan-registry=/usr/share/vulkan/registry/vk.xml + -D xxhash=enabled + ) + meson setup build "${meson_args[@]}" + meson compile -C build +} + +src_check() { + meson test -C build --print-errorlogs +} + +src_install() { + meson install -C build --destdir "$pkgdir" +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/media-libs/libplacebo-7.351.0/libplacebo-7.351.0-vulkan-python-xml.patch b/media-libs/libplacebo-7.351.0/libplacebo-7.351.0-vulkan-python-xml.patch new file mode 100644 index 0000000..9e78279 --- /dev/null +++ b/media-libs/libplacebo-7.351.0/libplacebo-7.351.0-vulkan-python-xml.patch @@ -0,0 +1,16 @@ +Formerly only needed with python-3.14.x but backports have broke +this with python-3.13.6 too. + +https://bugs.gentoo.org/960115 +https://bugs.gentoo.org/961230 +https://code.videolan.org/videolan/libplacebo/-/commit/12509c0f1ee8 +--- a/src/vulkan/utils_gen.py ++++ b/src/vulkan/utils_gen.py +@@ -203,5 +203,6 @@ + xmlfile = find_registry_xml(datadir) + +- registry = VkXML(ET.parse(xmlfile)) ++ tree = ET.parse(xmlfile) ++ registry = VkXML(tree.getroot()) + with open(outfile, 'w') as f: + f.write(TEMPLATE.render( -- 2.49.1 From b4192b3099f8abe60355a6146b018838a589b5a3 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 20:10:14 -0500 Subject: [PATCH 81/82] update: rename filedir to work with new version of leaf --- app-admin/{sudo-1.9.17_p2 => sudo}/sudo.pam | 0 .../fastfetch-2.56.1-leaf.patch | 0 .../jq-1.6-r3-never-bundle-oniguruma.patch | 0 app-misc/{make-ca-1.16.1 => make-ca}/pythoncerts.sh | 0 .../eigen-3.4.0-cxxstandard.patch | 0 dev-lang/{python-3.13.7 => python}/pythondocs.sh | 0 .../yasm-1.3.0-fix-modern-c.patch | 0 .../appstream-1.0.0-disable-Werror-flags.patch | 0 .../check-0.14.0-r2-disable-automagic-dep.patch | 0 ...k-0.15.2-Fix-pkgconfig-file-s-libdir-value.patch | 0 .../check-0.15.2-avoid-static-lib.patch | 0 .../date-3.0.3_remove-failing-tests.patch | 0 .../{glib-2.84.4 => glib}/gio-querymodules.HOOK | 0 .../{glib-2.84.4 => glib}/glib-compile-schemas.HOOK | 0 .../libdbusmenu-16.04.0-configure-fix.patch | 0 .../libdbusmenu-16.04.0-werror.patch | 0 .../libevent-2.1.12-openssl-compat.patch | 0 .../libzip-1.11.4-mbedtls-3.patch | 0 .../{protobuf-31.1 => protobuf}/FindJsonCpp.cmake | 0 .../protobuf-30.0-findJsonCpp.patch | 0 .../snowball-stemmer-2.2.0-shared-library.patch | 0 .../spdlog-force_external_fmt.patch | 0 .../udis86-1.7.2-docdir.patch | 0 .../udis86-1.7.2-python3.patch | 0 .../udis86-1.7.2-uninitialized-variable.patch | 0 .../update-desktop-database.HOOK | 0 .../gtk-update-icon-cache.HOOK | 0 .../itstool-2.0.7-raw-string-testrunner.patch | 0 .../rocm-smi-5.7.1-remove-example.patch | 0 .../librsvg-2.60.0-libxml2-2.15.0-tests.patch | 0 ...ison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch | 0 gui-libs/{gtk-4.18.6 => gtk}/gtk4-querymodules.HOOK | 0 lfs/{glibc-2.42 => glibc}/ld.so.conf | 0 lfs/{glibc-2.42 => glibc}/nsswitch.conf | 0 .../30-systemd-daemon-reload-system.HOOK | 0 .../30-systemd-daemon-reload-user.HOOK | 0 .../70-noto-cjk.conf | 0 .../75-noto-emoji-fallback.conf | 0 .../{noto-20251101 => noto}/66-noto-mono.conf | 0 .../{noto-20251101 => noto}/66-noto-sans.conf | 0 .../{noto-20251101 => noto}/66-noto-serif.conf | 0 .../graphite2-1.3.14-fix-cmake-files-libdir.patch | 0 .../graphite2-1.3.14-fix-nodefaultlibs-deux.patch | 0 .../graphite2-1.3.14-fix-nodefaultlibs.patch | 0 .../graphite2-1.3.14-gcc15.patch | 0 .../graphite2-1.3.14-no-libtool-file.patch | 0 ...aphite2-1.3.14_p20210810-cmake-findpython3.patch | 0 ...ite2-1.3.14_p20210810-cmake-minreqver-3.16.patch | 0 .../graphite2-1.3.14_p20210810-cmake4.patch | 0 .../graphite2-1.3.5-fix-gcc-linking.patch | 0 .../imv-5.0.0-nsgif-version.patch | 0 .../alsa-lib-1.1.6-missing_files.patch | 0 .../40-fontconfig-config.HOOK | 0 .../fontconfig-2.14.0-latin-update.patch | 0 .../fontconfig-2.17.0-macro-preprocess.patch | 0 .../fontconfig-2.17.0-network-test.patch | 0 .../fontconfig-2.17.0-skip-bubblewrap-tests.patch | 0 .../libnsgif-1.0.0-make-test-failures-fatal.patch | 0 .../libplacebo-7.351.0-vulkan-python-xml.patch | 0 .../pulseaudio-17.0-backport-pr807.patch | 0 .../libvorbis-1.3.7-macro-wstrict-prototypes.patch | 0 .../libvorbis-1.3.7-mismatched-free.patch | 0 .../libvorbis-1.3.7-psy-bounds.patch | 0 .../libvorbis-1.3.7-ubsan-shift.patch | 0 .../libwebp-1.2.3-libpng-pkg-config.patch | 0 .../libwebp-1.6.0-configure-typo.patch | 0 .../shaderc-2020.4-fix-build.patch | 0 .../{x265-3.6 => x265}/x265-3.5-r5-cpp-std.patch | 0 .../{x265-3.6 => x265}/x265-3.5-r5-gcc15.patch | 0 .../{x265-3.6 => x265}/x265-3.6-cmake-cleanup.patch | 0 .../{x265-3.6 => x265}/x265-3.6-code-cleanup.patch | 0 .../x265-3.6-code-cleanup_2.patch | 0 .../x265-3.6-code-cleanup_3.patch | 0 .../x265-3.6-code-cleanup_4.patch | 0 .../x265-cmake-min-version-3.28.patch | 0 .../{lame-3.100 => lame}/lame-3.100-pkgconfig.patch | 0 .../{lame-3.100 => lame}/lame-3.100-symbols.patch | 0 .../{lame-3.100 => lame}/lame-3.98-gtk-path.patch | 0 .../{lame-3.100 => lame}/lame-3.99.5-msse.patch | 0 .../{lame-3.100 => lame}/lame-3.99.5-tinfo.patch | 0 .../99-pipewire-default-hook.conf | 0 .../acct-group-pipewire.conf | 0 ...ipewire-0.3.25-enable-failed-mlock-warning.patch | 0 .../pipewire-1.4.6-no-automagic-ebur128.patch | 0 .../pipewire-1.4.6-no-automagic-fftw.patch | 0 ...er-0.5.6-config-disable-sound-server-parts.patch | 0 net-misc/{rsync-3.4.1 => rsync}/rsyncd.conf | 0 .../fftw-3.3.10-fixup-cmake-optional.patch | 0 sys-apps/{dbus-1.16.2 => dbus}/dbus-reload.HOOK | 0 .../help2man-1.46.1-linguas.patch | 0 .../pam.d-include/chpasswd | 0 .../{shadow-4.18.0 => shadow}/pam.d-include/passwd | 0 .../{shadow-4.18.0 => shadow}/pam.d-include/shadow | 0 .../pam.d-include/shadow-r1 | 0 sys-apps/{shadow-4.18.0 => shadow}/useradd | 0 .../20-systemd-sysusers.HOOK | 0 .../21-systemd-tmpfiles.HOOK | 0 .../25-systemd-binfmt.HOOK | 0 .../25-systemd-catalog.HOOK | 0 .../{systemd-257.8 => systemd}/25-systemd-hwdb.HOOK | 0 .../30-systemd-daemon-reload-system.HOOK | 0 .../30-systemd-daemon-reload-user.HOOK | 0 .../35-systemd-udev-reload.HOOK | 0 .../35-systemd-update.HOOK | 0 ...g-desktop-portal-1.20.0-optional-gstreamer.patch | 0 sys-auth/{polkit-126 => polkit}/sysuser-polkit.conf | 0 sys-auth/{seatd-0.9.1 => seatd}/sysuser.conf | 0 .../linux-firmware-copy-firmware-r9.patch | 0 .../libseccomp-2.5.3-skip-valgrind.patch | 0 sys-libs/{pam-1.7.1-r1 => pam}/login | 0 sys-libs/{pam-1.7.1-r1 => pam}/other | 0 sys-libs/{pam-1.7.1-r1 => pam}/passwd | 0 sys-libs/{pam-1.7.1-r1 => pam}/su | 0 sys-libs/{pam-1.7.1-r1 => pam}/system-auth | 0 sys-libs/{pam-1.7.1-r1 => pam}/system-local-login | 0 sys-libs/{pam-1.7.1-r1 => pam}/system-login | 0 sys-libs/{pam-1.7.1-r1 => pam}/system-remote-login | 0 sys-libs/{pam-1.7.1-r1 => pam}/system-services | 0 .../cattpuccin-mocha-tokyo.theme | 0 test/{just-hook-2.0 => just-hook}/test.HOOK | 0 .../gdk-pixbuf-query-loaders.HOOK | 0 ...-add-a-poison-macro-to-hide-GDK_WINDOWING_.patch | 0 .../gtk+-3.24.36-update-icon-cache.patch | 0 .../gtk-query-immodules-3.0.HOOK | 0 .../update-mime-database.HOOK | 0 .../xdg-utils-1.2.1-qtpaths.patch | 0 .../xdg-utils-1.2.1-xdg-mime-default.patch | 0 .../Meow-catppuccin.tar.gz | Bin ...nome-themes-standard-3.22.2-exclude-engine.patch | 0 129 files changed, 0 insertions(+), 0 deletions(-) rename app-admin/{sudo-1.9.17_p2 => sudo}/sudo.pam (100%) rename app-misc/{fastfetch-2.56.1 => fastfetch}/fastfetch-2.56.1-leaf.patch (100%) rename app-misc/{jq-1.8.1 => jq}/jq-1.6-r3-never-bundle-oniguruma.patch (100%) rename app-misc/{make-ca-1.16.1 => make-ca}/pythoncerts.sh (100%) rename dev-cpp/{eigen-3.4.0 => eigen}/eigen-3.4.0-cxxstandard.patch (100%) rename dev-lang/{python-3.13.7 => python}/pythondocs.sh (100%) rename dev-lang/{yasm-1.3.0 => yasm}/yasm-1.3.0-fix-modern-c.patch (100%) rename dev-libs/{appstream-1.0.6 => appstream}/appstream-1.0.0-disable-Werror-flags.patch (100%) rename dev-libs/{check-0.15.2 => check}/check-0.14.0-r2-disable-automagic-dep.patch (100%) rename dev-libs/{check-0.15.2 => check}/check-0.15.2-Fix-pkgconfig-file-s-libdir-value.patch (100%) rename dev-libs/{check-0.15.2 => check}/check-0.15.2-avoid-static-lib.patch (100%) rename dev-libs/{date-3.0.3 => date}/date-3.0.3_remove-failing-tests.patch (100%) rename dev-libs/{glib-2.84.4 => glib}/gio-querymodules.HOOK (100%) rename dev-libs/{glib-2.84.4 => glib}/glib-compile-schemas.HOOK (100%) rename dev-libs/{libdbusmenu-16.04.0 => libdbusmenu}/libdbusmenu-16.04.0-configure-fix.patch (100%) rename dev-libs/{libdbusmenu-16.04.0 => libdbusmenu}/libdbusmenu-16.04.0-werror.patch (100%) rename dev-libs/{libevent-2.1.12 => libevent}/libevent-2.1.12-openssl-compat.patch (100%) rename dev-libs/{libzip-1.11.4 => libzip}/libzip-1.11.4-mbedtls-3.patch (100%) rename dev-libs/{protobuf-31.1 => protobuf}/FindJsonCpp.cmake (100%) rename dev-libs/{protobuf-31.1 => protobuf}/protobuf-30.0-findJsonCpp.patch (100%) rename dev-libs/{snowball-stemmer-2.2.0 => snowball-stemmer}/snowball-stemmer-2.2.0-shared-library.patch (100%) rename dev-libs/{spdlog-1.15.3 => spdlog}/spdlog-force_external_fmt.patch (100%) rename dev-libs/{udis86-1.7.2 => udis86}/udis86-1.7.2-docdir.patch (100%) rename dev-libs/{udis86-1.7.2 => udis86}/udis86-1.7.2-python3.patch (100%) rename dev-libs/{udis86-1.7.2 => udis86}/udis86-1.7.2-uninitialized-variable.patch (100%) rename dev-util/{desktop-file-utils-0.28 => desktop-file-utils}/update-desktop-database.HOOK (100%) rename dev-util/{gtk-update-icon-cache-3.24.42 => gtk-update-icon-cache}/gtk-update-icon-cache.HOOK (100%) rename dev-util/{itstool-2.0.7 => itstool}/itstool-2.0.7-raw-string-testrunner.patch (100%) rename dev-util/{rocm-smi-7.1.0 => rocm-smi}/rocm-smi-5.7.1-remove-example.patch (100%) rename gnome-base/{librsvg-2.61.0 => librsvg}/librsvg-2.60.0-libxml2-2.15.0-tests.patch (100%) rename gui-libs/{gtk-4.18.6 => gtk}/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch (100%) rename gui-libs/{gtk-4.18.6 => gtk}/gtk4-querymodules.HOOK (100%) rename lfs/{glibc-2.42 => glibc}/ld.so.conf (100%) rename lfs/{glibc-2.42 => glibc}/nsswitch.conf (100%) rename lfs/{systemd-257.8 => systemd}/30-systemd-daemon-reload-system.HOOK (100%) rename lfs/{systemd-257.8 => systemd}/30-systemd-daemon-reload-user.HOOK (100%) rename media-fonts/{noto-cjk-20190416 => noto-cjk}/70-noto-cjk.conf (100%) rename media-fonts/{noto-emoji-20250912 => noto-emoji}/75-noto-emoji-fallback.conf (100%) rename media-fonts/{noto-20251101 => noto}/66-noto-mono.conf (100%) rename media-fonts/{noto-20251101 => noto}/66-noto-sans.conf (100%) rename media-fonts/{noto-20251101 => noto}/66-noto-serif.conf (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14-fix-cmake-files-libdir.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14-fix-nodefaultlibs-deux.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14-fix-nodefaultlibs.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14-gcc15.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14-no-libtool-file.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14_p20210810-cmake-findpython3.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14_p20210810-cmake-minreqver-3.16.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.14_p20210810-cmake4.patch (100%) rename media-gfx/{graphite2-1.3.14 => graphite2}/graphite2-1.3.5-fix-gcc-linking.patch (100%) rename media-gfx/{imv-5.0.1 => imv}/imv-5.0.0-nsgif-version.patch (100%) rename media-libs/{alsa-lib-1.2.14 => alsa-lib}/alsa-lib-1.1.6-missing_files.patch (100%) rename media-libs/{fontconfig-2.17.1 => fontconfig}/40-fontconfig-config.HOOK (100%) rename media-libs/{fontconfig-2.17.1 => fontconfig}/fontconfig-2.14.0-latin-update.patch (100%) rename media-libs/{fontconfig-2.17.1 => fontconfig}/fontconfig-2.17.0-macro-preprocess.patch (100%) rename media-libs/{fontconfig-2.17.1 => fontconfig}/fontconfig-2.17.0-network-test.patch (100%) rename media-libs/{fontconfig-2.17.1 => fontconfig}/fontconfig-2.17.0-skip-bubblewrap-tests.patch (100%) rename media-libs/{libnsgif-1.0.0 => libnsgif}/libnsgif-1.0.0-make-test-failures-fatal.patch (100%) rename media-libs/{libplacebo-7.351.0 => libplacebo}/libplacebo-7.351.0-vulkan-python-xml.patch (100%) rename media-libs/{libpulse-17.0 => libpulse}/pulseaudio-17.0-backport-pr807.patch (100%) rename media-libs/{libvorbis-1.3.7 => libvorbis}/libvorbis-1.3.7-macro-wstrict-prototypes.patch (100%) rename media-libs/{libvorbis-1.3.7 => libvorbis}/libvorbis-1.3.7-mismatched-free.patch (100%) rename media-libs/{libvorbis-1.3.7 => libvorbis}/libvorbis-1.3.7-psy-bounds.patch (100%) rename media-libs/{libvorbis-1.3.7 => libvorbis}/libvorbis-1.3.7-ubsan-shift.patch (100%) rename media-libs/{libwebp-1.6.0 => libwebp}/libwebp-1.2.3-libpng-pkg-config.patch (100%) rename media-libs/{libwebp-1.6.0 => libwebp}/libwebp-1.6.0-configure-typo.patch (100%) rename media-libs/{shaderc-2025.4 => shaderc}/shaderc-2020.4-fix-build.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-3.5-r5-cpp-std.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-3.5-r5-gcc15.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-3.6-cmake-cleanup.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-3.6-code-cleanup.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-3.6-code-cleanup_2.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-3.6-code-cleanup_3.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-3.6-code-cleanup_4.patch (100%) rename media-libs/{x265-3.6 => x265}/x265-cmake-min-version-3.28.patch (100%) rename media-sound/{lame-3.100 => lame}/lame-3.100-pkgconfig.patch (100%) rename media-sound/{lame-3.100 => lame}/lame-3.100-symbols.patch (100%) rename media-sound/{lame-3.100 => lame}/lame-3.98-gtk-path.patch (100%) rename media-sound/{lame-3.100 => lame}/lame-3.99.5-msse.patch (100%) rename media-sound/{lame-3.100 => lame}/lame-3.99.5-tinfo.patch (100%) rename media-video/{pipewire-1.4.9 => pipewire}/99-pipewire-default-hook.conf (100%) rename media-video/{pipewire-1.4.9 => pipewire}/acct-group-pipewire.conf (100%) rename media-video/{pipewire-1.4.9 => pipewire}/pipewire-0.3.25-enable-failed-mlock-warning.patch (100%) rename media-video/{pipewire-1.4.9 => pipewire}/pipewire-1.4.6-no-automagic-ebur128.patch (100%) rename media-video/{pipewire-1.4.9 => pipewire}/pipewire-1.4.6-no-automagic-fftw.patch (100%) rename media-video/{wireplumber-0.5.12 => wireplumber}/wireplumber-0.5.6-config-disable-sound-server-parts.patch (100%) rename net-misc/{rsync-3.4.1 => rsync}/rsyncd.conf (100%) rename sci-libs/{fftw-3.3.10 => fftw}/fftw-3.3.10-fixup-cmake-optional.patch (100%) rename sys-apps/{dbus-1.16.2 => dbus}/dbus-reload.HOOK (100%) rename sys-apps/{help2man-1.49.3 => help2man}/help2man-1.46.1-linguas.patch (100%) rename sys-apps/{shadow-4.18.0 => shadow}/pam.d-include/chpasswd (100%) rename sys-apps/{shadow-4.18.0 => shadow}/pam.d-include/passwd (100%) rename sys-apps/{shadow-4.18.0 => shadow}/pam.d-include/shadow (100%) rename sys-apps/{shadow-4.18.0 => shadow}/pam.d-include/shadow-r1 (100%) rename sys-apps/{shadow-4.18.0 => shadow}/useradd (100%) rename sys-apps/{systemd-257.8 => systemd}/20-systemd-sysusers.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/21-systemd-tmpfiles.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/25-systemd-binfmt.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/25-systemd-catalog.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/25-systemd-hwdb.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/30-systemd-daemon-reload-system.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/30-systemd-daemon-reload-user.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/35-systemd-udev-reload.HOOK (100%) rename sys-apps/{systemd-257.8 => systemd}/35-systemd-update.HOOK (100%) rename sys-apps/{xdg-desktop-portal-1.20.3 => xdg-desktop-portal}/xdg-desktop-portal-1.20.0-optional-gstreamer.patch (100%) rename sys-auth/{polkit-126 => polkit}/sysuser-polkit.conf (100%) rename sys-auth/{seatd-0.9.1 => seatd}/sysuser.conf (100%) rename sys-kernel/{linux-firmware-20250808 => linux-firmware}/linux-firmware-copy-firmware-r9.patch (100%) rename sys-libs/{libseccomp-2.6.0 => libseccomp}/libseccomp-2.5.3-skip-valgrind.patch (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/login (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/other (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/passwd (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/su (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/system-auth (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/system-local-login (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/system-login (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/system-remote-login (100%) rename sys-libs/{pam-1.7.1-r1 => pam}/system-services (100%) rename sys-process/{btop-1.4.6 => btop}/cattpuccin-mocha-tokyo.theme (100%) rename test/{just-hook-2.0 => just-hook}/test.HOOK (100%) rename x11-libs/{gdk-pixbuf-2.42.12 => gdk-pixbuf}/gdk-pixbuf-query-loaders.HOOK (100%) rename x11-libs/{gtk+-3.24.51 => gtk+}/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_.patch (100%) rename x11-libs/{gtk+-3.24.51 => gtk+}/gtk+-3.24.36-update-icon-cache.patch (100%) rename x11-libs/{gtk+-3.24.51 => gtk+}/gtk-query-immodules-3.0.HOOK (100%) rename x11-misc/{shared-mime-info-2.4 => shared-mime-info}/update-mime-database.HOOK (100%) rename x11-misc/{xdg-utils-1.2.1 => xdg-utils}/xdg-utils-1.2.1-qtpaths.patch (100%) rename x11-misc/{xdg-utils-1.2.1 => xdg-utils}/xdg-utils-1.2.1-xdg-mime-default.patch (100%) rename x11-themes/{Meow-catppuccin-icon-theme-20250210 => Meow-catppuccin-icon-theme}/Meow-catppuccin.tar.gz (100%) rename x11-themes/{gnome-themes-standard-3.28 => gnome-themes-standard}/gnome-themes-standard-3.22.2-exclude-engine.patch (100%) diff --git a/app-admin/sudo-1.9.17_p2/sudo.pam b/app-admin/sudo/sudo.pam similarity index 100% rename from app-admin/sudo-1.9.17_p2/sudo.pam rename to app-admin/sudo/sudo.pam diff --git a/app-misc/fastfetch-2.56.1/fastfetch-2.56.1-leaf.patch b/app-misc/fastfetch/fastfetch-2.56.1-leaf.patch similarity index 100% rename from app-misc/fastfetch-2.56.1/fastfetch-2.56.1-leaf.patch rename to app-misc/fastfetch/fastfetch-2.56.1-leaf.patch diff --git a/app-misc/jq-1.8.1/jq-1.6-r3-never-bundle-oniguruma.patch b/app-misc/jq/jq-1.6-r3-never-bundle-oniguruma.patch similarity index 100% rename from app-misc/jq-1.8.1/jq-1.6-r3-never-bundle-oniguruma.patch rename to app-misc/jq/jq-1.6-r3-never-bundle-oniguruma.patch diff --git a/app-misc/make-ca-1.16.1/pythoncerts.sh b/app-misc/make-ca/pythoncerts.sh similarity index 100% rename from app-misc/make-ca-1.16.1/pythoncerts.sh rename to app-misc/make-ca/pythoncerts.sh diff --git a/dev-cpp/eigen-3.4.0/eigen-3.4.0-cxxstandard.patch b/dev-cpp/eigen/eigen-3.4.0-cxxstandard.patch similarity index 100% rename from dev-cpp/eigen-3.4.0/eigen-3.4.0-cxxstandard.patch rename to dev-cpp/eigen/eigen-3.4.0-cxxstandard.patch diff --git a/dev-lang/python-3.13.7/pythondocs.sh b/dev-lang/python/pythondocs.sh similarity index 100% rename from dev-lang/python-3.13.7/pythondocs.sh rename to dev-lang/python/pythondocs.sh diff --git a/dev-lang/yasm-1.3.0/yasm-1.3.0-fix-modern-c.patch b/dev-lang/yasm/yasm-1.3.0-fix-modern-c.patch similarity index 100% rename from dev-lang/yasm-1.3.0/yasm-1.3.0-fix-modern-c.patch rename to dev-lang/yasm/yasm-1.3.0-fix-modern-c.patch diff --git a/dev-libs/appstream-1.0.6/appstream-1.0.0-disable-Werror-flags.patch b/dev-libs/appstream/appstream-1.0.0-disable-Werror-flags.patch similarity index 100% rename from dev-libs/appstream-1.0.6/appstream-1.0.0-disable-Werror-flags.patch rename to dev-libs/appstream/appstream-1.0.0-disable-Werror-flags.patch diff --git a/dev-libs/check-0.15.2/check-0.14.0-r2-disable-automagic-dep.patch b/dev-libs/check/check-0.14.0-r2-disable-automagic-dep.patch similarity index 100% rename from dev-libs/check-0.15.2/check-0.14.0-r2-disable-automagic-dep.patch rename to dev-libs/check/check-0.14.0-r2-disable-automagic-dep.patch diff --git a/dev-libs/check-0.15.2/check-0.15.2-Fix-pkgconfig-file-s-libdir-value.patch b/dev-libs/check/check-0.15.2-Fix-pkgconfig-file-s-libdir-value.patch similarity index 100% rename from dev-libs/check-0.15.2/check-0.15.2-Fix-pkgconfig-file-s-libdir-value.patch rename to dev-libs/check/check-0.15.2-Fix-pkgconfig-file-s-libdir-value.patch diff --git a/dev-libs/check-0.15.2/check-0.15.2-avoid-static-lib.patch b/dev-libs/check/check-0.15.2-avoid-static-lib.patch similarity index 100% rename from dev-libs/check-0.15.2/check-0.15.2-avoid-static-lib.patch rename to dev-libs/check/check-0.15.2-avoid-static-lib.patch diff --git a/dev-libs/date-3.0.3/date-3.0.3_remove-failing-tests.patch b/dev-libs/date/date-3.0.3_remove-failing-tests.patch similarity index 100% rename from dev-libs/date-3.0.3/date-3.0.3_remove-failing-tests.patch rename to dev-libs/date/date-3.0.3_remove-failing-tests.patch diff --git a/dev-libs/glib-2.84.4/gio-querymodules.HOOK b/dev-libs/glib/gio-querymodules.HOOK similarity index 100% rename from dev-libs/glib-2.84.4/gio-querymodules.HOOK rename to dev-libs/glib/gio-querymodules.HOOK diff --git a/dev-libs/glib-2.84.4/glib-compile-schemas.HOOK b/dev-libs/glib/glib-compile-schemas.HOOK similarity index 100% rename from dev-libs/glib-2.84.4/glib-compile-schemas.HOOK rename to dev-libs/glib/glib-compile-schemas.HOOK diff --git a/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-configure-fix.patch b/dev-libs/libdbusmenu/libdbusmenu-16.04.0-configure-fix.patch similarity index 100% rename from dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-configure-fix.patch rename to dev-libs/libdbusmenu/libdbusmenu-16.04.0-configure-fix.patch diff --git a/dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-werror.patch b/dev-libs/libdbusmenu/libdbusmenu-16.04.0-werror.patch similarity index 100% rename from dev-libs/libdbusmenu-16.04.0/libdbusmenu-16.04.0-werror.patch rename to dev-libs/libdbusmenu/libdbusmenu-16.04.0-werror.patch diff --git a/dev-libs/libevent-2.1.12/libevent-2.1.12-openssl-compat.patch b/dev-libs/libevent/libevent-2.1.12-openssl-compat.patch similarity index 100% rename from dev-libs/libevent-2.1.12/libevent-2.1.12-openssl-compat.patch rename to dev-libs/libevent/libevent-2.1.12-openssl-compat.patch diff --git a/dev-libs/libzip-1.11.4/libzip-1.11.4-mbedtls-3.patch b/dev-libs/libzip/libzip-1.11.4-mbedtls-3.patch similarity index 100% rename from dev-libs/libzip-1.11.4/libzip-1.11.4-mbedtls-3.patch rename to dev-libs/libzip/libzip-1.11.4-mbedtls-3.patch diff --git a/dev-libs/protobuf-31.1/FindJsonCpp.cmake b/dev-libs/protobuf/FindJsonCpp.cmake similarity index 100% rename from dev-libs/protobuf-31.1/FindJsonCpp.cmake rename to dev-libs/protobuf/FindJsonCpp.cmake diff --git a/dev-libs/protobuf-31.1/protobuf-30.0-findJsonCpp.patch b/dev-libs/protobuf/protobuf-30.0-findJsonCpp.patch similarity index 100% rename from dev-libs/protobuf-31.1/protobuf-30.0-findJsonCpp.patch rename to dev-libs/protobuf/protobuf-30.0-findJsonCpp.patch diff --git a/dev-libs/snowball-stemmer-2.2.0/snowball-stemmer-2.2.0-shared-library.patch b/dev-libs/snowball-stemmer/snowball-stemmer-2.2.0-shared-library.patch similarity index 100% rename from dev-libs/snowball-stemmer-2.2.0/snowball-stemmer-2.2.0-shared-library.patch rename to dev-libs/snowball-stemmer/snowball-stemmer-2.2.0-shared-library.patch diff --git a/dev-libs/spdlog-1.15.3/spdlog-force_external_fmt.patch b/dev-libs/spdlog/spdlog-force_external_fmt.patch similarity index 100% rename from dev-libs/spdlog-1.15.3/spdlog-force_external_fmt.patch rename to dev-libs/spdlog/spdlog-force_external_fmt.patch diff --git a/dev-libs/udis86-1.7.2/udis86-1.7.2-docdir.patch b/dev-libs/udis86/udis86-1.7.2-docdir.patch similarity index 100% rename from dev-libs/udis86-1.7.2/udis86-1.7.2-docdir.patch rename to dev-libs/udis86/udis86-1.7.2-docdir.patch diff --git a/dev-libs/udis86-1.7.2/udis86-1.7.2-python3.patch b/dev-libs/udis86/udis86-1.7.2-python3.patch similarity index 100% rename from dev-libs/udis86-1.7.2/udis86-1.7.2-python3.patch rename to dev-libs/udis86/udis86-1.7.2-python3.patch diff --git a/dev-libs/udis86-1.7.2/udis86-1.7.2-uninitialized-variable.patch b/dev-libs/udis86/udis86-1.7.2-uninitialized-variable.patch similarity index 100% rename from dev-libs/udis86-1.7.2/udis86-1.7.2-uninitialized-variable.patch rename to dev-libs/udis86/udis86-1.7.2-uninitialized-variable.patch diff --git a/dev-util/desktop-file-utils-0.28/update-desktop-database.HOOK b/dev-util/desktop-file-utils/update-desktop-database.HOOK similarity index 100% rename from dev-util/desktop-file-utils-0.28/update-desktop-database.HOOK rename to dev-util/desktop-file-utils/update-desktop-database.HOOK diff --git a/dev-util/gtk-update-icon-cache-3.24.42/gtk-update-icon-cache.HOOK b/dev-util/gtk-update-icon-cache/gtk-update-icon-cache.HOOK similarity index 100% rename from dev-util/gtk-update-icon-cache-3.24.42/gtk-update-icon-cache.HOOK rename to dev-util/gtk-update-icon-cache/gtk-update-icon-cache.HOOK diff --git a/dev-util/itstool-2.0.7/itstool-2.0.7-raw-string-testrunner.patch b/dev-util/itstool/itstool-2.0.7-raw-string-testrunner.patch similarity index 100% rename from dev-util/itstool-2.0.7/itstool-2.0.7-raw-string-testrunner.patch rename to dev-util/itstool/itstool-2.0.7-raw-string-testrunner.patch diff --git a/dev-util/rocm-smi-7.1.0/rocm-smi-5.7.1-remove-example.patch b/dev-util/rocm-smi/rocm-smi-5.7.1-remove-example.patch similarity index 100% rename from dev-util/rocm-smi-7.1.0/rocm-smi-5.7.1-remove-example.patch rename to dev-util/rocm-smi/rocm-smi-5.7.1-remove-example.patch diff --git a/gnome-base/librsvg-2.61.0/librsvg-2.60.0-libxml2-2.15.0-tests.patch b/gnome-base/librsvg/librsvg-2.60.0-libxml2-2.15.0-tests.patch similarity index 100% rename from gnome-base/librsvg-2.61.0/librsvg-2.60.0-libxml2-2.15.0-tests.patch rename to gnome-base/librsvg/librsvg-2.60.0-libxml2-2.15.0-tests.patch diff --git a/gui-libs/gtk-4.18.6/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch b/gui-libs/gtk/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch similarity index 100% rename from gui-libs/gtk-4.18.6/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch rename to gui-libs/gtk/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_ge_4.18.5.patch diff --git a/gui-libs/gtk-4.18.6/gtk4-querymodules.HOOK b/gui-libs/gtk/gtk4-querymodules.HOOK similarity index 100% rename from gui-libs/gtk-4.18.6/gtk4-querymodules.HOOK rename to gui-libs/gtk/gtk4-querymodules.HOOK diff --git a/lfs/glibc-2.42/ld.so.conf b/lfs/glibc/ld.so.conf similarity index 100% rename from lfs/glibc-2.42/ld.so.conf rename to lfs/glibc/ld.so.conf diff --git a/lfs/glibc-2.42/nsswitch.conf b/lfs/glibc/nsswitch.conf similarity index 100% rename from lfs/glibc-2.42/nsswitch.conf rename to lfs/glibc/nsswitch.conf diff --git a/lfs/systemd-257.8/30-systemd-daemon-reload-system.HOOK b/lfs/systemd/30-systemd-daemon-reload-system.HOOK similarity index 100% rename from lfs/systemd-257.8/30-systemd-daemon-reload-system.HOOK rename to lfs/systemd/30-systemd-daemon-reload-system.HOOK diff --git a/lfs/systemd-257.8/30-systemd-daemon-reload-user.HOOK b/lfs/systemd/30-systemd-daemon-reload-user.HOOK similarity index 100% rename from lfs/systemd-257.8/30-systemd-daemon-reload-user.HOOK rename to lfs/systemd/30-systemd-daemon-reload-user.HOOK diff --git a/media-fonts/noto-cjk-20190416/70-noto-cjk.conf b/media-fonts/noto-cjk/70-noto-cjk.conf similarity index 100% rename from media-fonts/noto-cjk-20190416/70-noto-cjk.conf rename to media-fonts/noto-cjk/70-noto-cjk.conf diff --git a/media-fonts/noto-emoji-20250912/75-noto-emoji-fallback.conf b/media-fonts/noto-emoji/75-noto-emoji-fallback.conf similarity index 100% rename from media-fonts/noto-emoji-20250912/75-noto-emoji-fallback.conf rename to media-fonts/noto-emoji/75-noto-emoji-fallback.conf diff --git a/media-fonts/noto-20251101/66-noto-mono.conf b/media-fonts/noto/66-noto-mono.conf similarity index 100% rename from media-fonts/noto-20251101/66-noto-mono.conf rename to media-fonts/noto/66-noto-mono.conf diff --git a/media-fonts/noto-20251101/66-noto-sans.conf b/media-fonts/noto/66-noto-sans.conf similarity index 100% rename from media-fonts/noto-20251101/66-noto-sans.conf rename to media-fonts/noto/66-noto-sans.conf diff --git a/media-fonts/noto-20251101/66-noto-serif.conf b/media-fonts/noto/66-noto-serif.conf similarity index 100% rename from media-fonts/noto-20251101/66-noto-serif.conf rename to media-fonts/noto/66-noto-serif.conf diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14-fix-cmake-files-libdir.patch b/media-gfx/graphite2/graphite2-1.3.14-fix-cmake-files-libdir.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14-fix-cmake-files-libdir.patch rename to media-gfx/graphite2/graphite2-1.3.14-fix-cmake-files-libdir.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14-fix-nodefaultlibs-deux.patch b/media-gfx/graphite2/graphite2-1.3.14-fix-nodefaultlibs-deux.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14-fix-nodefaultlibs-deux.patch rename to media-gfx/graphite2/graphite2-1.3.14-fix-nodefaultlibs-deux.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14-fix-nodefaultlibs.patch b/media-gfx/graphite2/graphite2-1.3.14-fix-nodefaultlibs.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14-fix-nodefaultlibs.patch rename to media-gfx/graphite2/graphite2-1.3.14-fix-nodefaultlibs.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14-gcc15.patch b/media-gfx/graphite2/graphite2-1.3.14-gcc15.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14-gcc15.patch rename to media-gfx/graphite2/graphite2-1.3.14-gcc15.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14-no-libtool-file.patch b/media-gfx/graphite2/graphite2-1.3.14-no-libtool-file.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14-no-libtool-file.patch rename to media-gfx/graphite2/graphite2-1.3.14-no-libtool-file.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14_p20210810-cmake-findpython3.patch b/media-gfx/graphite2/graphite2-1.3.14_p20210810-cmake-findpython3.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14_p20210810-cmake-findpython3.patch rename to media-gfx/graphite2/graphite2-1.3.14_p20210810-cmake-findpython3.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14_p20210810-cmake-minreqver-3.16.patch b/media-gfx/graphite2/graphite2-1.3.14_p20210810-cmake-minreqver-3.16.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14_p20210810-cmake-minreqver-3.16.patch rename to media-gfx/graphite2/graphite2-1.3.14_p20210810-cmake-minreqver-3.16.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.14_p20210810-cmake4.patch b/media-gfx/graphite2/graphite2-1.3.14_p20210810-cmake4.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.14_p20210810-cmake4.patch rename to media-gfx/graphite2/graphite2-1.3.14_p20210810-cmake4.patch diff --git a/media-gfx/graphite2-1.3.14/graphite2-1.3.5-fix-gcc-linking.patch b/media-gfx/graphite2/graphite2-1.3.5-fix-gcc-linking.patch similarity index 100% rename from media-gfx/graphite2-1.3.14/graphite2-1.3.5-fix-gcc-linking.patch rename to media-gfx/graphite2/graphite2-1.3.5-fix-gcc-linking.patch diff --git a/media-gfx/imv-5.0.1/imv-5.0.0-nsgif-version.patch b/media-gfx/imv/imv-5.0.0-nsgif-version.patch similarity index 100% rename from media-gfx/imv-5.0.1/imv-5.0.0-nsgif-version.patch rename to media-gfx/imv/imv-5.0.0-nsgif-version.patch diff --git a/media-libs/alsa-lib-1.2.14/alsa-lib-1.1.6-missing_files.patch b/media-libs/alsa-lib/alsa-lib-1.1.6-missing_files.patch similarity index 100% rename from media-libs/alsa-lib-1.2.14/alsa-lib-1.1.6-missing_files.patch rename to media-libs/alsa-lib/alsa-lib-1.1.6-missing_files.patch diff --git a/media-libs/fontconfig-2.17.1/40-fontconfig-config.HOOK b/media-libs/fontconfig/40-fontconfig-config.HOOK similarity index 100% rename from media-libs/fontconfig-2.17.1/40-fontconfig-config.HOOK rename to media-libs/fontconfig/40-fontconfig-config.HOOK diff --git a/media-libs/fontconfig-2.17.1/fontconfig-2.14.0-latin-update.patch b/media-libs/fontconfig/fontconfig-2.14.0-latin-update.patch similarity index 100% rename from media-libs/fontconfig-2.17.1/fontconfig-2.14.0-latin-update.patch rename to media-libs/fontconfig/fontconfig-2.14.0-latin-update.patch diff --git a/media-libs/fontconfig-2.17.1/fontconfig-2.17.0-macro-preprocess.patch b/media-libs/fontconfig/fontconfig-2.17.0-macro-preprocess.patch similarity index 100% rename from media-libs/fontconfig-2.17.1/fontconfig-2.17.0-macro-preprocess.patch rename to media-libs/fontconfig/fontconfig-2.17.0-macro-preprocess.patch diff --git a/media-libs/fontconfig-2.17.1/fontconfig-2.17.0-network-test.patch b/media-libs/fontconfig/fontconfig-2.17.0-network-test.patch similarity index 100% rename from media-libs/fontconfig-2.17.1/fontconfig-2.17.0-network-test.patch rename to media-libs/fontconfig/fontconfig-2.17.0-network-test.patch diff --git a/media-libs/fontconfig-2.17.1/fontconfig-2.17.0-skip-bubblewrap-tests.patch b/media-libs/fontconfig/fontconfig-2.17.0-skip-bubblewrap-tests.patch similarity index 100% rename from media-libs/fontconfig-2.17.1/fontconfig-2.17.0-skip-bubblewrap-tests.patch rename to media-libs/fontconfig/fontconfig-2.17.0-skip-bubblewrap-tests.patch diff --git a/media-libs/libnsgif-1.0.0/libnsgif-1.0.0-make-test-failures-fatal.patch b/media-libs/libnsgif/libnsgif-1.0.0-make-test-failures-fatal.patch similarity index 100% rename from media-libs/libnsgif-1.0.0/libnsgif-1.0.0-make-test-failures-fatal.patch rename to media-libs/libnsgif/libnsgif-1.0.0-make-test-failures-fatal.patch diff --git a/media-libs/libplacebo-7.351.0/libplacebo-7.351.0-vulkan-python-xml.patch b/media-libs/libplacebo/libplacebo-7.351.0-vulkan-python-xml.patch similarity index 100% rename from media-libs/libplacebo-7.351.0/libplacebo-7.351.0-vulkan-python-xml.patch rename to media-libs/libplacebo/libplacebo-7.351.0-vulkan-python-xml.patch diff --git a/media-libs/libpulse-17.0/pulseaudio-17.0-backport-pr807.patch b/media-libs/libpulse/pulseaudio-17.0-backport-pr807.patch similarity index 100% rename from media-libs/libpulse-17.0/pulseaudio-17.0-backport-pr807.patch rename to media-libs/libpulse/pulseaudio-17.0-backport-pr807.patch diff --git a/media-libs/libvorbis-1.3.7/libvorbis-1.3.7-macro-wstrict-prototypes.patch b/media-libs/libvorbis/libvorbis-1.3.7-macro-wstrict-prototypes.patch similarity index 100% rename from media-libs/libvorbis-1.3.7/libvorbis-1.3.7-macro-wstrict-prototypes.patch rename to media-libs/libvorbis/libvorbis-1.3.7-macro-wstrict-prototypes.patch diff --git a/media-libs/libvorbis-1.3.7/libvorbis-1.3.7-mismatched-free.patch b/media-libs/libvorbis/libvorbis-1.3.7-mismatched-free.patch similarity index 100% rename from media-libs/libvorbis-1.3.7/libvorbis-1.3.7-mismatched-free.patch rename to media-libs/libvorbis/libvorbis-1.3.7-mismatched-free.patch diff --git a/media-libs/libvorbis-1.3.7/libvorbis-1.3.7-psy-bounds.patch b/media-libs/libvorbis/libvorbis-1.3.7-psy-bounds.patch similarity index 100% rename from media-libs/libvorbis-1.3.7/libvorbis-1.3.7-psy-bounds.patch rename to media-libs/libvorbis/libvorbis-1.3.7-psy-bounds.patch diff --git a/media-libs/libvorbis-1.3.7/libvorbis-1.3.7-ubsan-shift.patch b/media-libs/libvorbis/libvorbis-1.3.7-ubsan-shift.patch similarity index 100% rename from media-libs/libvorbis-1.3.7/libvorbis-1.3.7-ubsan-shift.patch rename to media-libs/libvorbis/libvorbis-1.3.7-ubsan-shift.patch diff --git a/media-libs/libwebp-1.6.0/libwebp-1.2.3-libpng-pkg-config.patch b/media-libs/libwebp/libwebp-1.2.3-libpng-pkg-config.patch similarity index 100% rename from media-libs/libwebp-1.6.0/libwebp-1.2.3-libpng-pkg-config.patch rename to media-libs/libwebp/libwebp-1.2.3-libpng-pkg-config.patch diff --git a/media-libs/libwebp-1.6.0/libwebp-1.6.0-configure-typo.patch b/media-libs/libwebp/libwebp-1.6.0-configure-typo.patch similarity index 100% rename from media-libs/libwebp-1.6.0/libwebp-1.6.0-configure-typo.patch rename to media-libs/libwebp/libwebp-1.6.0-configure-typo.patch diff --git a/media-libs/shaderc-2025.4/shaderc-2020.4-fix-build.patch b/media-libs/shaderc/shaderc-2020.4-fix-build.patch similarity index 100% rename from media-libs/shaderc-2025.4/shaderc-2020.4-fix-build.patch rename to media-libs/shaderc/shaderc-2020.4-fix-build.patch diff --git a/media-libs/x265-3.6/x265-3.5-r5-cpp-std.patch b/media-libs/x265/x265-3.5-r5-cpp-std.patch similarity index 100% rename from media-libs/x265-3.6/x265-3.5-r5-cpp-std.patch rename to media-libs/x265/x265-3.5-r5-cpp-std.patch diff --git a/media-libs/x265-3.6/x265-3.5-r5-gcc15.patch b/media-libs/x265/x265-3.5-r5-gcc15.patch similarity index 100% rename from media-libs/x265-3.6/x265-3.5-r5-gcc15.patch rename to media-libs/x265/x265-3.5-r5-gcc15.patch diff --git a/media-libs/x265-3.6/x265-3.6-cmake-cleanup.patch b/media-libs/x265/x265-3.6-cmake-cleanup.patch similarity index 100% rename from media-libs/x265-3.6/x265-3.6-cmake-cleanup.patch rename to media-libs/x265/x265-3.6-cmake-cleanup.patch diff --git a/media-libs/x265-3.6/x265-3.6-code-cleanup.patch b/media-libs/x265/x265-3.6-code-cleanup.patch similarity index 100% rename from media-libs/x265-3.6/x265-3.6-code-cleanup.patch rename to media-libs/x265/x265-3.6-code-cleanup.patch diff --git a/media-libs/x265-3.6/x265-3.6-code-cleanup_2.patch b/media-libs/x265/x265-3.6-code-cleanup_2.patch similarity index 100% rename from media-libs/x265-3.6/x265-3.6-code-cleanup_2.patch rename to media-libs/x265/x265-3.6-code-cleanup_2.patch diff --git a/media-libs/x265-3.6/x265-3.6-code-cleanup_3.patch b/media-libs/x265/x265-3.6-code-cleanup_3.patch similarity index 100% rename from media-libs/x265-3.6/x265-3.6-code-cleanup_3.patch rename to media-libs/x265/x265-3.6-code-cleanup_3.patch diff --git a/media-libs/x265-3.6/x265-3.6-code-cleanup_4.patch b/media-libs/x265/x265-3.6-code-cleanup_4.patch similarity index 100% rename from media-libs/x265-3.6/x265-3.6-code-cleanup_4.patch rename to media-libs/x265/x265-3.6-code-cleanup_4.patch diff --git a/media-libs/x265-3.6/x265-cmake-min-version-3.28.patch b/media-libs/x265/x265-cmake-min-version-3.28.patch similarity index 100% rename from media-libs/x265-3.6/x265-cmake-min-version-3.28.patch rename to media-libs/x265/x265-cmake-min-version-3.28.patch diff --git a/media-sound/lame-3.100/lame-3.100-pkgconfig.patch b/media-sound/lame/lame-3.100-pkgconfig.patch similarity index 100% rename from media-sound/lame-3.100/lame-3.100-pkgconfig.patch rename to media-sound/lame/lame-3.100-pkgconfig.patch diff --git a/media-sound/lame-3.100/lame-3.100-symbols.patch b/media-sound/lame/lame-3.100-symbols.patch similarity index 100% rename from media-sound/lame-3.100/lame-3.100-symbols.patch rename to media-sound/lame/lame-3.100-symbols.patch diff --git a/media-sound/lame-3.100/lame-3.98-gtk-path.patch b/media-sound/lame/lame-3.98-gtk-path.patch similarity index 100% rename from media-sound/lame-3.100/lame-3.98-gtk-path.patch rename to media-sound/lame/lame-3.98-gtk-path.patch diff --git a/media-sound/lame-3.100/lame-3.99.5-msse.patch b/media-sound/lame/lame-3.99.5-msse.patch similarity index 100% rename from media-sound/lame-3.100/lame-3.99.5-msse.patch rename to media-sound/lame/lame-3.99.5-msse.patch diff --git a/media-sound/lame-3.100/lame-3.99.5-tinfo.patch b/media-sound/lame/lame-3.99.5-tinfo.patch similarity index 100% rename from media-sound/lame-3.100/lame-3.99.5-tinfo.patch rename to media-sound/lame/lame-3.99.5-tinfo.patch diff --git a/media-video/pipewire-1.4.9/99-pipewire-default-hook.conf b/media-video/pipewire/99-pipewire-default-hook.conf similarity index 100% rename from media-video/pipewire-1.4.9/99-pipewire-default-hook.conf rename to media-video/pipewire/99-pipewire-default-hook.conf diff --git a/media-video/pipewire-1.4.9/acct-group-pipewire.conf b/media-video/pipewire/acct-group-pipewire.conf similarity index 100% rename from media-video/pipewire-1.4.9/acct-group-pipewire.conf rename to media-video/pipewire/acct-group-pipewire.conf diff --git a/media-video/pipewire-1.4.9/pipewire-0.3.25-enable-failed-mlock-warning.patch b/media-video/pipewire/pipewire-0.3.25-enable-failed-mlock-warning.patch similarity index 100% rename from media-video/pipewire-1.4.9/pipewire-0.3.25-enable-failed-mlock-warning.patch rename to media-video/pipewire/pipewire-0.3.25-enable-failed-mlock-warning.patch diff --git a/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-ebur128.patch b/media-video/pipewire/pipewire-1.4.6-no-automagic-ebur128.patch similarity index 100% rename from media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-ebur128.patch rename to media-video/pipewire/pipewire-1.4.6-no-automagic-ebur128.patch diff --git a/media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-fftw.patch b/media-video/pipewire/pipewire-1.4.6-no-automagic-fftw.patch similarity index 100% rename from media-video/pipewire-1.4.9/pipewire-1.4.6-no-automagic-fftw.patch rename to media-video/pipewire/pipewire-1.4.6-no-automagic-fftw.patch diff --git a/media-video/wireplumber-0.5.12/wireplumber-0.5.6-config-disable-sound-server-parts.patch b/media-video/wireplumber/wireplumber-0.5.6-config-disable-sound-server-parts.patch similarity index 100% rename from media-video/wireplumber-0.5.12/wireplumber-0.5.6-config-disable-sound-server-parts.patch rename to media-video/wireplumber/wireplumber-0.5.6-config-disable-sound-server-parts.patch diff --git a/net-misc/rsync-3.4.1/rsyncd.conf b/net-misc/rsync/rsyncd.conf similarity index 100% rename from net-misc/rsync-3.4.1/rsyncd.conf rename to net-misc/rsync/rsyncd.conf diff --git a/sci-libs/fftw-3.3.10/fftw-3.3.10-fixup-cmake-optional.patch b/sci-libs/fftw/fftw-3.3.10-fixup-cmake-optional.patch similarity index 100% rename from sci-libs/fftw-3.3.10/fftw-3.3.10-fixup-cmake-optional.patch rename to sci-libs/fftw/fftw-3.3.10-fixup-cmake-optional.patch diff --git a/sys-apps/dbus-1.16.2/dbus-reload.HOOK b/sys-apps/dbus/dbus-reload.HOOK similarity index 100% rename from sys-apps/dbus-1.16.2/dbus-reload.HOOK rename to sys-apps/dbus/dbus-reload.HOOK diff --git a/sys-apps/help2man-1.49.3/help2man-1.46.1-linguas.patch b/sys-apps/help2man/help2man-1.46.1-linguas.patch similarity index 100% rename from sys-apps/help2man-1.49.3/help2man-1.46.1-linguas.patch rename to sys-apps/help2man/help2man-1.46.1-linguas.patch diff --git a/sys-apps/shadow-4.18.0/pam.d-include/chpasswd b/sys-apps/shadow/pam.d-include/chpasswd similarity index 100% rename from sys-apps/shadow-4.18.0/pam.d-include/chpasswd rename to sys-apps/shadow/pam.d-include/chpasswd diff --git a/sys-apps/shadow-4.18.0/pam.d-include/passwd b/sys-apps/shadow/pam.d-include/passwd similarity index 100% rename from sys-apps/shadow-4.18.0/pam.d-include/passwd rename to sys-apps/shadow/pam.d-include/passwd diff --git a/sys-apps/shadow-4.18.0/pam.d-include/shadow b/sys-apps/shadow/pam.d-include/shadow similarity index 100% rename from sys-apps/shadow-4.18.0/pam.d-include/shadow rename to sys-apps/shadow/pam.d-include/shadow diff --git a/sys-apps/shadow-4.18.0/pam.d-include/shadow-r1 b/sys-apps/shadow/pam.d-include/shadow-r1 similarity index 100% rename from sys-apps/shadow-4.18.0/pam.d-include/shadow-r1 rename to sys-apps/shadow/pam.d-include/shadow-r1 diff --git a/sys-apps/shadow-4.18.0/useradd b/sys-apps/shadow/useradd similarity index 100% rename from sys-apps/shadow-4.18.0/useradd rename to sys-apps/shadow/useradd diff --git a/sys-apps/systemd-257.8/20-systemd-sysusers.HOOK b/sys-apps/systemd/20-systemd-sysusers.HOOK similarity index 100% rename from sys-apps/systemd-257.8/20-systemd-sysusers.HOOK rename to sys-apps/systemd/20-systemd-sysusers.HOOK diff --git a/sys-apps/systemd-257.8/21-systemd-tmpfiles.HOOK b/sys-apps/systemd/21-systemd-tmpfiles.HOOK similarity index 100% rename from sys-apps/systemd-257.8/21-systemd-tmpfiles.HOOK rename to sys-apps/systemd/21-systemd-tmpfiles.HOOK diff --git a/sys-apps/systemd-257.8/25-systemd-binfmt.HOOK b/sys-apps/systemd/25-systemd-binfmt.HOOK similarity index 100% rename from sys-apps/systemd-257.8/25-systemd-binfmt.HOOK rename to sys-apps/systemd/25-systemd-binfmt.HOOK diff --git a/sys-apps/systemd-257.8/25-systemd-catalog.HOOK b/sys-apps/systemd/25-systemd-catalog.HOOK similarity index 100% rename from sys-apps/systemd-257.8/25-systemd-catalog.HOOK rename to sys-apps/systemd/25-systemd-catalog.HOOK diff --git a/sys-apps/systemd-257.8/25-systemd-hwdb.HOOK b/sys-apps/systemd/25-systemd-hwdb.HOOK similarity index 100% rename from sys-apps/systemd-257.8/25-systemd-hwdb.HOOK rename to sys-apps/systemd/25-systemd-hwdb.HOOK diff --git a/sys-apps/systemd-257.8/30-systemd-daemon-reload-system.HOOK b/sys-apps/systemd/30-systemd-daemon-reload-system.HOOK similarity index 100% rename from sys-apps/systemd-257.8/30-systemd-daemon-reload-system.HOOK rename to sys-apps/systemd/30-systemd-daemon-reload-system.HOOK diff --git a/sys-apps/systemd-257.8/30-systemd-daemon-reload-user.HOOK b/sys-apps/systemd/30-systemd-daemon-reload-user.HOOK similarity index 100% rename from sys-apps/systemd-257.8/30-systemd-daemon-reload-user.HOOK rename to sys-apps/systemd/30-systemd-daemon-reload-user.HOOK diff --git a/sys-apps/systemd-257.8/35-systemd-udev-reload.HOOK b/sys-apps/systemd/35-systemd-udev-reload.HOOK similarity index 100% rename from sys-apps/systemd-257.8/35-systemd-udev-reload.HOOK rename to sys-apps/systemd/35-systemd-udev-reload.HOOK diff --git a/sys-apps/systemd-257.8/35-systemd-update.HOOK b/sys-apps/systemd/35-systemd-update.HOOK similarity index 100% rename from sys-apps/systemd-257.8/35-systemd-update.HOOK rename to sys-apps/systemd/35-systemd-update.HOOK diff --git a/sys-apps/xdg-desktop-portal-1.20.3/xdg-desktop-portal-1.20.0-optional-gstreamer.patch b/sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.20.0-optional-gstreamer.patch similarity index 100% rename from sys-apps/xdg-desktop-portal-1.20.3/xdg-desktop-portal-1.20.0-optional-gstreamer.patch rename to sys-apps/xdg-desktop-portal/xdg-desktop-portal-1.20.0-optional-gstreamer.patch diff --git a/sys-auth/polkit-126/sysuser-polkit.conf b/sys-auth/polkit/sysuser-polkit.conf similarity index 100% rename from sys-auth/polkit-126/sysuser-polkit.conf rename to sys-auth/polkit/sysuser-polkit.conf diff --git a/sys-auth/seatd-0.9.1/sysuser.conf b/sys-auth/seatd/sysuser.conf similarity index 100% rename from sys-auth/seatd-0.9.1/sysuser.conf rename to sys-auth/seatd/sysuser.conf diff --git a/sys-kernel/linux-firmware-20250808/linux-firmware-copy-firmware-r9.patch b/sys-kernel/linux-firmware/linux-firmware-copy-firmware-r9.patch similarity index 100% rename from sys-kernel/linux-firmware-20250808/linux-firmware-copy-firmware-r9.patch rename to sys-kernel/linux-firmware/linux-firmware-copy-firmware-r9.patch diff --git a/sys-libs/libseccomp-2.6.0/libseccomp-2.5.3-skip-valgrind.patch b/sys-libs/libseccomp/libseccomp-2.5.3-skip-valgrind.patch similarity index 100% rename from sys-libs/libseccomp-2.6.0/libseccomp-2.5.3-skip-valgrind.patch rename to sys-libs/libseccomp/libseccomp-2.5.3-skip-valgrind.patch diff --git a/sys-libs/pam-1.7.1-r1/login b/sys-libs/pam/login similarity index 100% rename from sys-libs/pam-1.7.1-r1/login rename to sys-libs/pam/login diff --git a/sys-libs/pam-1.7.1-r1/other b/sys-libs/pam/other similarity index 100% rename from sys-libs/pam-1.7.1-r1/other rename to sys-libs/pam/other diff --git a/sys-libs/pam-1.7.1-r1/passwd b/sys-libs/pam/passwd similarity index 100% rename from sys-libs/pam-1.7.1-r1/passwd rename to sys-libs/pam/passwd diff --git a/sys-libs/pam-1.7.1-r1/su b/sys-libs/pam/su similarity index 100% rename from sys-libs/pam-1.7.1-r1/su rename to sys-libs/pam/su diff --git a/sys-libs/pam-1.7.1-r1/system-auth b/sys-libs/pam/system-auth similarity index 100% rename from sys-libs/pam-1.7.1-r1/system-auth rename to sys-libs/pam/system-auth diff --git a/sys-libs/pam-1.7.1-r1/system-local-login b/sys-libs/pam/system-local-login similarity index 100% rename from sys-libs/pam-1.7.1-r1/system-local-login rename to sys-libs/pam/system-local-login diff --git a/sys-libs/pam-1.7.1-r1/system-login b/sys-libs/pam/system-login similarity index 100% rename from sys-libs/pam-1.7.1-r1/system-login rename to sys-libs/pam/system-login diff --git a/sys-libs/pam-1.7.1-r1/system-remote-login b/sys-libs/pam/system-remote-login similarity index 100% rename from sys-libs/pam-1.7.1-r1/system-remote-login rename to sys-libs/pam/system-remote-login diff --git a/sys-libs/pam-1.7.1-r1/system-services b/sys-libs/pam/system-services similarity index 100% rename from sys-libs/pam-1.7.1-r1/system-services rename to sys-libs/pam/system-services diff --git a/sys-process/btop-1.4.6/cattpuccin-mocha-tokyo.theme b/sys-process/btop/cattpuccin-mocha-tokyo.theme similarity index 100% rename from sys-process/btop-1.4.6/cattpuccin-mocha-tokyo.theme rename to sys-process/btop/cattpuccin-mocha-tokyo.theme diff --git a/test/just-hook-2.0/test.HOOK b/test/just-hook/test.HOOK similarity index 100% rename from test/just-hook-2.0/test.HOOK rename to test/just-hook/test.HOOK diff --git a/x11-libs/gdk-pixbuf-2.42.12/gdk-pixbuf-query-loaders.HOOK b/x11-libs/gdk-pixbuf/gdk-pixbuf-query-loaders.HOOK similarity index 100% rename from x11-libs/gdk-pixbuf-2.42.12/gdk-pixbuf-query-loaders.HOOK rename to x11-libs/gdk-pixbuf/gdk-pixbuf-query-loaders.HOOK diff --git a/x11-libs/gtk+-3.24.51/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_.patch b/x11-libs/gtk+/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_.patch similarity index 100% rename from x11-libs/gtk+-3.24.51/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_.patch rename to x11-libs/gtk+/0001-gdk-add-a-poison-macro-to-hide-GDK_WINDOWING_.patch diff --git a/x11-libs/gtk+-3.24.51/gtk+-3.24.36-update-icon-cache.patch b/x11-libs/gtk+/gtk+-3.24.36-update-icon-cache.patch similarity index 100% rename from x11-libs/gtk+-3.24.51/gtk+-3.24.36-update-icon-cache.patch rename to x11-libs/gtk+/gtk+-3.24.36-update-icon-cache.patch diff --git a/x11-libs/gtk+-3.24.51/gtk-query-immodules-3.0.HOOK b/x11-libs/gtk+/gtk-query-immodules-3.0.HOOK similarity index 100% rename from x11-libs/gtk+-3.24.51/gtk-query-immodules-3.0.HOOK rename to x11-libs/gtk+/gtk-query-immodules-3.0.HOOK diff --git a/x11-misc/shared-mime-info-2.4/update-mime-database.HOOK b/x11-misc/shared-mime-info/update-mime-database.HOOK similarity index 100% rename from x11-misc/shared-mime-info-2.4/update-mime-database.HOOK rename to x11-misc/shared-mime-info/update-mime-database.HOOK diff --git a/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-qtpaths.patch b/x11-misc/xdg-utils/xdg-utils-1.2.1-qtpaths.patch similarity index 100% rename from x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-qtpaths.patch rename to x11-misc/xdg-utils/xdg-utils-1.2.1-qtpaths.patch diff --git a/x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-xdg-mime-default.patch b/x11-misc/xdg-utils/xdg-utils-1.2.1-xdg-mime-default.patch similarity index 100% rename from x11-misc/xdg-utils-1.2.1/xdg-utils-1.2.1-xdg-mime-default.patch rename to x11-misc/xdg-utils/xdg-utils-1.2.1-xdg-mime-default.patch diff --git a/x11-themes/Meow-catppuccin-icon-theme-20250210/Meow-catppuccin.tar.gz b/x11-themes/Meow-catppuccin-icon-theme/Meow-catppuccin.tar.gz similarity index 100% rename from x11-themes/Meow-catppuccin-icon-theme-20250210/Meow-catppuccin.tar.gz rename to x11-themes/Meow-catppuccin-icon-theme/Meow-catppuccin.tar.gz diff --git a/x11-themes/gnome-themes-standard-3.28/gnome-themes-standard-3.22.2-exclude-engine.patch b/x11-themes/gnome-themes-standard/gnome-themes-standard-3.22.2-exclude-engine.patch similarity index 100% rename from x11-themes/gnome-themes-standard-3.28/gnome-themes-standard-3.22.2-exclude-engine.patch rename to x11-themes/gnome-themes-standard/gnome-themes-standard-3.22.2-exclude-engine.patch -- 2.49.1 From 75bb8d7dc2df87c3e1de4b5e9df59ff4038eeb73 Mon Sep 17 00:00:00 2001 From: Yingjie Wang Date: Sun, 18 Jan 2026 20:10:53 -0500 Subject: [PATCH 82/82] new blfs: app-i18n/uchardet-0.0.8 --- app-i18n/uchardet-0.0.8.PKGBUILD | 40 +++++++++++++++++++ app-i18n/uchardet/uchardet-0.0.8-cmake4.patch | 7 ++++ 2 files changed, 47 insertions(+) create mode 100644 app-i18n/uchardet-0.0.8.PKGBUILD create mode 100644 app-i18n/uchardet/uchardet-0.0.8-cmake4.patch diff --git a/app-i18n/uchardet-0.0.8.PKGBUILD b/app-i18n/uchardet-0.0.8.PKGBUILD new file mode 100644 index 0000000..7dae843 --- /dev/null +++ b/app-i18n/uchardet-0.0.8.PKGBUILD @@ -0,0 +1,40 @@ +pkgname=uchardet +pkgver=0.0.8 +pkgdesc="Encoding detector library" +homepage="https://www.freedesktop.org/wiki/Software/uchardet/" +license=("GPL-2+") +_patches=("${pkgname}-${pkgver}-cmake4.patch") +_patch_sums=("812378feee2affbba6fb7b4c7c8ab29413577f55317f7603f6ce883c1857fd149707d658b3bf2dc5d42a27ead04d74afd98d86e97ab7b1920f3a37882099a5e0") +sources=("${pkgname}-${pkgver}.tar.xz" + "${_patches[@]}" +) +urls=("https://www.freedesktop.org/software/uchardet/releases/${sources[0]}" + "${_patches[@]}" +) +sha512sums=("4a5dcc9ff021352f3b252e103ff1475cec62c974294b264ee9243f024633c3ae44be8c7733608624066113e635f8b156ecb08c8ff87c736d04b07641eb166382" + "${_patch_sums[@]}" +) + +src_prepare() { + tar -xf ${distdir}/${sources[0]} --strip-components=1 + for _patch in ${_patches[@]}; do + patch -p1 -i ${filedir}/${_patch} + done +} + +src_build() { + local cmake_args=( + -D CMAKE_INSTALL_PREFIX=/usr + -D CMAKE_BUILD_TYPE=release + -D BUILD_STATIC=no + -D CHECK_SSE2=yes + ) + cmake -B build "${cmake_args[@]}" + cmake --build build +} + +src_install() { + DESTDIR="$pkgdir" cmake --install build +} + +# vim:ft=sh syn=sh et sw=2: diff --git a/app-i18n/uchardet/uchardet-0.0.8-cmake4.patch b/app-i18n/uchardet/uchardet-0.0.8-cmake4.patch new file mode 100644 index 0000000..ce5839d --- /dev/null +++ b/app-i18n/uchardet/uchardet-0.0.8-cmake4.patch @@ -0,0 +1,7 @@ +https://bugs.gentoo.org/951619 +https://gitlab.freedesktop.org/uchardet/uchardet/-/merge_requests/18 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -2 +2 @@ +-cmake_minimum_required(VERSION 3.1) ++cmake_minimum_required(VERSION 3.5) -- 2.49.1