diff --git a/acct-group/onepassword-cli/metadata.xml b/acct-group/onepassword-cli/metadata.xml
new file mode 100644
index 0000000000..ac3b83e4b9
--- /dev/null
+++ b/acct-group/onepassword-cli/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ ceres@ceressees.dev
+ Ceres Milner
+
+
diff --git a/acct-group/onepassword-cli/onepassword-cli-0.ebuild b/acct-group/onepassword-cli/onepassword-cli-0.ebuild
new file mode 100644
index 0000000000..4857c5b810
--- /dev/null
+++ b/acct-group/onepassword-cli/onepassword-cli-0.ebuild
@@ -0,0 +1,9 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit acct-group
+
+DESCRIPTION="A group for 1password CLI"
+ACCT_GROUP_ID=-1
diff --git a/app-crypt/nitrokey-app2/Manifest b/app-crypt/nitrokey-app2/Manifest
index 81f57aee8e..7d8ad14ecf 100644
--- a/app-crypt/nitrokey-app2/Manifest
+++ b/app-crypt/nitrokey-app2/Manifest
@@ -1 +1 @@
-DIST nitrokey-app2-2.4.1.gh.tar.gz 999710 BLAKE2B a59647601f2acee23f0fda6cb3244ed47b4d413b92ca9d0295632d08a10b9682ceb205b1757c63bd1bc53a90bbdab56954ad91b75c424cee827a40da9656742b SHA512 95d2c682332bc5ca60c844d21229d35b344548717b4a51ec4101701fa65229c4e6e3fdccde25438e8dd4f5282d16cb6911c49bbb079345e48fa518ff6ec06d45
+DIST nitrokey-app2-2.5.2.gh.tar.gz 998356 BLAKE2B 74b5f484ae0bc38d3886dfd01b07b11e32618d45fd18313481638fb61edc546b0fb686ea0eef1ff8d7eb5534ec964e12c4b18d0a8ea59ab72331dc8ca6f59a62 SHA512 dba97e2483feefd5052a2950e7756b0e9a2a6d120f06fd215f7e8906d68237558d81a759ad3e1df8d65018ca74fc799855d066d54692cdfeb6d69bfa779d2676
diff --git a/app-crypt/nitrokey-app2/nitrokey-app2-2.4.1.ebuild b/app-crypt/nitrokey-app2/nitrokey-app2-2.5.2.ebuild
similarity index 53%
rename from app-crypt/nitrokey-app2/nitrokey-app2-2.4.1.ebuild
rename to app-crypt/nitrokey-app2/nitrokey-app2-2.5.2.ebuild
index ac5654f84b..6b9a880def 100644
--- a/app-crypt/nitrokey-app2/nitrokey-app2-2.4.1.ebuild
+++ b/app-crypt/nitrokey-app2/nitrokey-app2-2.5.2.ebuild
@@ -1,43 +1,35 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_SINGLE_IMPL=true
DISTUTILS_USE_PEP517=poetry
-
PYTHON_COMPAT=( python3_{12..13} )
inherit desktop distutils-r1 xdg
DESCRIPTION="Graphical application to manage and use Nitrokey 3 devices"
-HOMEPAGE="https://github.com/Nitrokey/nitrokey-app2 https://pypi.org/project/nitrokeyapp/"
-SRC_URI="https://github.com/Nitrokey/nitrokey-app2/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+HOMEPAGE="
+ https://github.com/Nitrokey/nitrokey-app2/
+ https://docs.nitrokey.com/software/nk-app2/
+"
+SRC_URI="https://github.com/Nitrokey/nitrokey-app2/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
$(python_gen_cond_dep '
- >=dev-python/fido2-2:=[${PYTHON_USEDEP}]
+ =dev-python/fido2-2*:=[${PYTHON_USEDEP}]
=dev-python/nitrokey-0.4[${PYTHON_USEDEP}]
- =dev-python/pyside-6.6.0:6=[core,gui,svg,tools,uitools,widgets,${PYTHON_USEDEP}]
+ >=dev-python/nitrokey-0.4.2[${PYTHON_USEDEP}]
+ =dev-python/pyside-6.6.0:6=[core,gui,svg,uitools,widgets,${PYTHON_USEDEP}]
>=dev-python/usb-monitor-1.21[${PYTHON_USEDEP}]
')
"
-src_prepare() {
- distutils-r1_src_prepare
-
- rm nitrokeyapp/VERSION || die
- rm nitrokeyapp/ui/i18n/*.ts || die
- rm nitrokeyapp/ui/i18n/CMakeLists.txt || die
-
- rm -r nitrokeyapp/ui/{LICENSES,3RDPARTY.txt} || die
-}
-
src_install() {
distutils-r1_src_install
diff --git a/app-crypt/nitrokey-udev-rules/Manifest b/app-crypt/nitrokey-udev-rules/Manifest
new file mode 100644
index 0000000000..f858ffe457
--- /dev/null
+++ b/app-crypt/nitrokey-udev-rules/Manifest
@@ -0,0 +1 @@
+DIST nitrokey-udev-rules-1.1.0.gh.tar.gz 8081 BLAKE2B 7df2b8e3d51f1d2db8480807568c54065e85fb7b222e8d62e13fc1cbcb30bd9d87f31e02e786ea2e7fd170c062a20ce5da1a1ed52b43c467bf5e676c87aabe9f SHA512 6b4e985d00ae29fa68a5e1ada8401d6df3956e6e228ec50b27c4ca1ae70ec16d161f8533106d1fb88ffc5ac115175bc3fbdabef664510f8df20ba220c9bf1cdc
diff --git a/app-crypt/nitrokey-udev-rules/metadata.xml b/app-crypt/nitrokey-udev-rules/metadata.xml
new file mode 100644
index 0000000000..8a22b35c60
--- /dev/null
+++ b/app-crypt/nitrokey-udev-rules/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ jernej.jakob@gmail.com
+ Jernej Jakob
+
+
+ Nitrokey/nitrokey-udev-rules
+
+
diff --git a/app-crypt/nitrokey-udev-rules/nitrokey-udev-rules-1.1.0.ebuild b/app-crypt/nitrokey-udev-rules/nitrokey-udev-rules-1.1.0.ebuild
new file mode 100644
index 0000000000..1d805cfd77
--- /dev/null
+++ b/app-crypt/nitrokey-udev-rules/nitrokey-udev-rules-1.1.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+inherit udev
+
+DESCRIPTION="udev rules for Nitrokey devices"
+HOMEPAGE="https://github.com/Nitrokey/nitrokey-udev-rules"
+
+SRC_URI="https://github.com/Nitrokey/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="CC0-1.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ virtual/udev
+"
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ udev_dorules 41-nitrokey.rules
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/app-crypt/pynitrokey/Manifest b/app-crypt/pynitrokey/Manifest
new file mode 100644
index 0000000000..bdfe28ddda
--- /dev/null
+++ b/app-crypt/pynitrokey/Manifest
@@ -0,0 +1 @@
+DIST pynitrokey-0.12.0.gh.tar.gz 222156 BLAKE2B 293706c0c063343ddba14b1767ed547914465089a2e1a35a7ebf57dee2b5b5df7a0e437a5f48971587d1f468465bbba6e015bcee0a2c6a060ad7db969948ddff SHA512 57e235b6ee6532be76f566ad06a1795663134dfeb9260a7f8f58645d712c0ff435b13d9fc68d5724e2bd8cd2e4e2d4a3df651964cebf18623cd097bcfa448397
diff --git a/app-crypt/pynitrokey/metadata.xml b/app-crypt/pynitrokey/metadata.xml
new file mode 100644
index 0000000000..75f11afc92
--- /dev/null
+++ b/app-crypt/pynitrokey/metadata.xml
@@ -0,0 +1,14 @@
+
+
+
+
+ jernej.jakob@gmail.com
+ Jernej Jakob
+
+
+
+ Nitrokey/pynitrokey
+
+
diff --git a/app-crypt/pynitrokey/pynitrokey-0.12.0.ebuild b/app-crypt/pynitrokey/pynitrokey-0.12.0.ebuild
new file mode 100644
index 0000000000..68de0a05f2
--- /dev/null
+++ b/app-crypt/pynitrokey/pynitrokey-0.12.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_SINGLE_IMPL=1
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{12..13} )
+inherit distutils-r1
+
+DESCRIPTION="A command line interface for the Nitrokey FIDO2, Start, 3 and NetHSM"
+HOMEPAGE="https://github.com/Nitrokey/pynitrokey"
+
+SRC_URI="https://github.com/Nitrokey/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="piv"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.15[${PYTHON_USEDEP}]
+ =dev-python/click-8.2[${PYTHON_USEDEP}]
+ =dev-python/cryptography-43[${PYTHON_USEDEP}]
+ =dev-python/hidapi-0.14[${PYTHON_USEDEP}]
+ =dev-python/intelhex-2*[${PYTHON_USEDEP}]
+ >=dev-python/nitrokey-0.4.2[${PYTHON_USEDEP}]
+ =dev-python/nethsm-2.1[${PYTHON_USEDEP}]
+ ${P}-amd64.zip )
+arm64? ( https://cache.agilebits.com/dist/1P/op2/pkg/v${PV}/op_linux_arm64_v${PV}.zip -> ${P}-arm64.zip )
+"
+S="${WORKDIR}"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm64"
+RESTRICT="strip test bindist"
+
+DEPEND="acct-group/onepassword-cli"
+BDEPEND="app-arch/unzip"
+
+QA_FLAGS_IGNORED="usr/bin/op"
+
+src_install() {
+ dobin op
+
+ chgrp onepassword-cli "${D}/usr/bin/op" || die "Failed to set group of 1password CLI"
+ fperms g+s "/usr/bin/op"
+}
diff --git a/app-misc/cpufetch/Manifest b/app-misc/cpufetch/Manifest
index d5a3a8a98b..e115cc1a14 100644
--- a/app-misc/cpufetch/Manifest
+++ b/app-misc/cpufetch/Manifest
@@ -1 +1 @@
-DIST cpufetch-1.06.tar.gz 2833392 BLAKE2B 552a4aec946da7ad70e92357b323582b29d81bd7eede6937809353b7f6e3008ef92bbc33f7ca8a24e6625d9f0145519113c3ef58ca4eb13782b90278e5242ba1 SHA512 ee907372608bed6af713f5e071e08a96c86cf0c7aeff1a7bf8511c2b03804d71e63d23e7aa409c2a7da5a0cf198a8a419e26210174f052c36bffa56135609d07
+DIST cpufetch-1.07.tar.gz 2846623 BLAKE2B 3b1d0ddac7d3635d7471dee0f3ff394c86273aa1215badd96323ef88ca7924fb2bba41f0852ad89b77431f2385e44c8836010b9d01b9e84becebcfe9841ff129 SHA512 c89caa65127158ce8e22cb0b5e5148d65bafc32b47b254068cd17c7b8fa402f222b1f755b75053b76c69a8b9d4266c4f9ca7a67fab19a1a30d7cdc03400846ba
diff --git a/app-misc/cpufetch/cpufetch-1.06.ebuild b/app-misc/cpufetch/cpufetch-1.07.ebuild
similarity index 91%
rename from app-misc/cpufetch/cpufetch-1.06.ebuild
rename to app-misc/cpufetch/cpufetch-1.07.ebuild
index e486018e89..ccfea30554 100644
--- a/app-misc/cpufetch/cpufetch-1.06.ebuild
+++ b/app-misc/cpufetch/cpufetch-1.07.ebuild
@@ -13,7 +13,7 @@ LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64"
-PATCHES=( "${FILESDIR}/${P}-makefile.patch" )
+PATCHES=( "${FILESDIR}/${PN}-1.06-makefile.patch" )
src_prepare() {
default
diff --git a/app-portage/zig-ebuilder/zig-ebuilder-9999.ebuild b/app-portage/zig-ebuilder/zig-ebuilder-9999.ebuild
index 8078347056..da5a8a138b 100644
--- a/app-portage/zig-ebuilder/zig-ebuilder-9999.ebuild
+++ b/app-portage/zig-ebuilder/zig-ebuilder-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2025 Gentoo Authors
+# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -15,8 +15,8 @@ SLOT="0"
RDEPEND="
|| (
- >=dev-lang/zig-0.13
- >=dev-lang/zig-bin-0.13
+ >=dev-lang/zig-0.14
+ >=dev-lang/zig-bin-0.14
)
"
diff --git a/dev-lang/odin/Manifest b/dev-lang/odin/Manifest
index 41ee0c7f12..e479d0b71c 100644
--- a/dev-lang/odin/Manifest
+++ b/dev-lang/odin/Manifest
@@ -2,3 +2,4 @@ DIST odin-2026.01.tar.gz 147388145 BLAKE2B 579efc63d4aa91cbe6b6c98f64a504a7f50c0
DIST odin-2026.02.tar.gz 148130905 BLAKE2B 60463427b224b14a23e4206e249b6d5d7d79aa5b4611ee5ed8fbc0b6888faecba3c497fc6e59168fdb092b29892a974b2a752b7506f244f633354db09ee0ca95 SHA512 7764e567012f067df74a65f1177b3f3f9081b46da4b726047fd2f169eaea8c003990c1dbb4b2568b1ccb17c1a73889b6edde0d601720f87d3fe9d5b9bac71669
DIST odin-2026.03.tar.gz 148137518 BLAKE2B b384ae9962921e33f4bba51cf3a3134806aa23b0308b35068692436d597f5e6a40d374c5d46772b6f267ee383dc0263158ede2856445a1d6f40b83ab6f200a3a SHA512 7733988f83b7ba2af444545d8a20f6efd7bdda3ed95ff94bcd462d9ec93aa113220b12564e2cb63b5df0306b5458e5ce44e62b499a250017882b5f3eedcba4f4
DIST odin-2026.04.tar.gz 148837624 BLAKE2B 08f3c2efa5a2972af979d33fddc541d5582ae4e829c2030e323e8ae8b48056fda2c9c8361cd74354c38a3ce397298873fe2ffca470b951d452ce662ac908c5f2 SHA512 541ec3dd8ad9728be4d7424f8b8365cd5ba8a34635fab61d232ec4438a912ee925f68c3763bd4d35c03857960716a5d7452d3a123a31a6b9936f4b7b619ce55f
+DIST odin-2026.05.tar.gz 149047320 BLAKE2B b0a2d983b2c50c795aeeb4b0e1f2b8f532543e5ae5881de9af702efec87571ab0024c04020e89f962f9be76fb2effa38401fb7161c5f5b56b8f2f77a2d41c12b SHA512 afbc9757726539f6df5880f01ea0a4dd879b15f9f0d54f89472ed5d365a546dcc3448ec417c48ecff58ee85b3be6c9476f79876e867a5a1f45e9671e6dec2941
diff --git a/dev-lang/odin/odin-2026.05.ebuild b/dev-lang/odin/odin-2026.05.ebuild
new file mode 100644
index 0000000000..f3b7fb56d6
--- /dev/null
+++ b/dev-lang/odin/odin-2026.05.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( {17..21} )
+inherit flag-o-matic llvm-r2
+
+DESCRIPTION="The Data-Oriented Language for Sane Software Development."
+HOMEPAGE="https://odin-lang.org/"
+
+if [[ $PV == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/odin-lang/Odin.git"
+ inherit git-r3
+else
+ MY_PV="${PV/./-}"
+ SRC_URI="https://github.com/odin-lang/Odin/archive/refs/tags/dev-${MY_PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/Odin-dev-${MY_PV}"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="ZLIB"
+SLOT="0"
+
+RDEPEND="
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}=
+ llvm-core/llvm:${LLVM_SLOT}=
+ ')
+"
+
+BDEPEND="${RDEPEND}"
+
+src_configure() {
+ strip-flags
+ default
+}
+
+src_compile() {
+ ./build_odin.sh release || die "failed to build odin"
+}
+
+src_install() {
+ local install_dir="/usr/$(get_libdir)/${PN}"
+ insinto "${install_dir}"
+ doins -r base core vendor
+
+ # Odin needs to link against runtime libs. Odin can pick up on those libs
+ # via `ODIN_ROOT`, but installing it into the same base dir keeps everything
+ # working right out of the box.
+ exeinto "${install_dir}"
+ doexe odin
+ dosym -r "${install_dir}/odin" "/usr/bin/odin"
+}
diff --git a/dev-python/nethsm/Manifest b/dev-python/nethsm/Manifest
new file mode 100644
index 0000000000..ca613b615b
--- /dev/null
+++ b/dev-python/nethsm/Manifest
@@ -0,0 +1 @@
+DIST nethsm-2.1.0.gh.tar.gz 307311 BLAKE2B 704e102348dbe93f00b38c19f500bd5c30b98e0b7d52f4cd7a8d54adbbf4960aa506b2ec7930cf93219a4dc3b37ad748ab92523833d0a1f57b52541fc655ddc7 SHA512 ee2f37b548cc0737dbb2e07793e7ecec781580f95a1679bfdcda62acf15a1e3e28ef175b90ca1323a5585a53c5110925146a6e5553971475665df8b385eb913a
diff --git a/dev-python/nethsm/metadata.xml b/dev-python/nethsm/metadata.xml
new file mode 100644
index 0000000000..abc88dce0f
--- /dev/null
+++ b/dev-python/nethsm/metadata.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ jernej.jakob@gmail.com
+ Jernej Jakob
+
+
+ Nitrokey/nethsm-sdk-py
+ nethsm
+
+
diff --git a/dev-python/nethsm/nethsm-2.1.0.ebuild b/dev-python/nethsm/nethsm-2.1.0.ebuild
new file mode 100644
index 0000000000..89badeef1d
--- /dev/null
+++ b/dev-python/nethsm/nethsm-2.1.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{11..14} )
+inherit distutils-r1
+
+DESCRIPTION="Python client for NitroKey NetHSM"
+HOMEPAGE="https://github.com/Nitrokey/nethsm-sdk-py"
+MY_PN="nethsm-sdk-py"
+MY_P="${MY_PN}-${PV}"
+SRC_URI="https://github.com/Nitrokey/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/certifi[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-41[${PYTHON_USEDEP}]
+ =dev-python/python-dateutil-2*[${PYTHON_USEDEP}]
+ =dev-python/typing-extensions-4*[${PYTHON_USEDEP}]
+ =dev-python/urllib3-2*[${PYTHON_USEDEP}]
+"
+
+# tests require docker (provision a NetHSM instance in a container from a prebuilt image)
+RESTRICT="test"
diff --git a/dev-python/nitrokey/Manifest b/dev-python/nitrokey/Manifest
index 4e32a76ebf..bcac2ad81f 100644
--- a/dev-python/nitrokey/Manifest
+++ b/dev-python/nitrokey/Manifest
@@ -1 +1 @@
-DIST nitrokey-0.4.1.gh.tar.gz 1234954 BLAKE2B e095673defa106072a05286a0144b8a02b581fc3836b783960ebda3c47770eeaf0761ac76111b7368d6f739e42c45191de92f652162a2b76c4b25bd6dfab7cbb SHA512 af88c7b4a59f11a5d54496c2f2cd3e808d711935b87b0fe21de62a34159f000dacf63f4a8b46be37dd6ba540c3a04d41328bf09e81f02dc2634de05e16c4d498
+DIST nitrokey-0.4.2.gh.tar.gz 1235069 BLAKE2B ee2d08363eb7ccb2e72fb73bd2d45e01c00f3c6784bbd5ea2f5b185a4c358c3502e2200796fdcb0c98cc1037324d4cb7e8b7cca97e3a53d5122049040ad778b6 SHA512 04003651240361e736e4a3a4f3c7f172a86f06eab7a0a6bd862e20fd8b22aa7918e130fd918ee10f906322949bd8ad292b03e0dc708c928c951e236c6650c680
diff --git a/dev-python/nitrokey/nitrokey-0.4.1.ebuild b/dev-python/nitrokey/nitrokey-0.4.1.ebuild
deleted file mode 100644
index 595972a607..0000000000
--- a/dev-python/nitrokey/nitrokey-0.4.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=poetry
-PYTHON_COMPAT=( python3_{12..13} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python SDK for Nitrokey devices"
-HOMEPAGE="https://github.com/Nitrokey/nitrokey-sdk-py https://pypi.org/project/nitrokey/"
-SRC_URI="https://github.com/Nitrokey/nitrokey-sdk-py/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
-S="${WORKDIR}/nitrokey-sdk-py-${PV}"
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/crcmod-1.7[${PYTHON_USEDEP}]
- =dev-python/cryptography-41[${PYTHON_USEDEP}]
- >=dev-python/fido2-1.1.2:=[${PYTHON_USEDEP}]
- =dev-python/hidapi-0.14[${PYTHON_USEDEP}]
- =dev-python/poetry-core-2[${PYTHON_USEDEP}]
- =dev-python/protobuf-5.26:=[${PYTHON_USEDEP}]
- =dev-python/pyserial-3.5[${PYTHON_USEDEP}]
- =dev-python/requests-2.16[${PYTHON_USEDEP}]
- =dev-python/semver-3[${PYTHON_USEDEP}]
- =dev-python/tlv8-0.10[${PYTHON_USEDEP}]
- =dev-python/types-protobuf-5.26[${PYTHON_USEDEP}]
- =dev-python/types-requests-2.16[${PYTHON_USEDEP}]
- =dev-python/typing-extensions-4.1[${PYTHON_USEDEP}]
- ${P}.gh.tar.gz"
+S="${WORKDIR}/nitrokey-sdk-py-${PV}"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="udev"
+
+RDEPEND="
+ >=dev-python/cryptography-41[${PYTHON_USEDEP}]
+ >=dev-python/crcmod-1.7[${PYTHON_USEDEP}]
+ =dev-python/fido2-1.1.2[${PYTHON_USEDEP}]
+ =dev-python/hidapi-0.14[${PYTHON_USEDEP}]
+ udev? ( app-crypt/nitrokey-udev-rules )
+ =dev-python/requests-2*[${PYTHON_USEDEP}]
+ >=dev-python/tlv8-0.10[${PYTHON_USEDEP}]
+ =dev-python/pyserial-3.5[${PYTHON_USEDEP}]
+ =dev-python/protobuf-5.26[${PYTHON_USEDEP}]
+
+
+
+
+ jernej.jakob@gmail.com
+ Jernej Jakob
+
+
+ Nitrokey/nkdfu
+ nkdfu
+
+
diff --git a/dev-python/nkdfu/nkdfu-0.2.ebuild b/dev-python/nkdfu/nkdfu-0.2.ebuild
new file mode 100644
index 0000000000..aab591bf7d
--- /dev/null
+++ b/dev-python/nkdfu/nkdfu-0.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# officially supports only py3.11 but works on newer too
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{12..13} )
+inherit distutils-r1
+
+DESCRIPTION="Python DFU tool for updating Nitrokey firmware"
+HOMEPAGE="https://github.com/Nitrokey/nkdfu"
+SRC_URI="https://github.com/Nitrokey/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/intelhex-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/libusb1-1.9.3[${PYTHON_USEDEP}]
+ dev-python/python-fire[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/pipenv/Manifest b/dev-python/pipenv/Manifest
index 4976095be5..dbd044a4a0 100644
--- a/dev-python/pipenv/Manifest
+++ b/dev-python/pipenv/Manifest
@@ -1,2 +1 @@
-DIST pipenv-2026.5.2.gh.tar.gz 10508957 BLAKE2B 76a31783f4653701b6ae5491df55954f567051b495cfc7fdc19a2f441618d90e0198fb2dd6c9f103d97027b17fd45e82d50e3db136ce5eeb764c9ac896cbd0e9 SHA512 4241a25af0c9aa581026e55f40f53b76411f6a264a2ef8d37298b4def19ae334d098d970c550b24e1da29003215ea34d4aa1f070de4d599d79ad7e114a5a1325
DIST pipenv-2026.6.1.gh.tar.gz 10555997 BLAKE2B 3b97269ca898f9aa7dc9cbe8c037bd637750c61481491006b20ee7a90c8c811360bacad15b52bc15100576b6eb88894c7736c23e8a3940d308197e413260b2a8 SHA512 a2d3def9d27d0ad7fed2412e772e478093af11563711d370d428917d33cdb8bfc2181e098c7bd1e98b3334829665cdb11abd59c889b68daf4c9a094979a5ecd6
diff --git a/dev-python/pipenv/pipenv-2026.5.2.ebuild b/dev-python/pipenv/pipenv-2026.5.2.ebuild
deleted file mode 100644
index 7c673e33b5..0000000000
--- a/dev-python/pipenv/pipenv-2026.5.2.ebuild
+++ /dev/null
@@ -1,113 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{11..14} pypy3_11 )
-
-inherit distutils-r1
-
-DESCRIPTION="Python Development Workflow for Humans"
-HOMEPAGE="https://github.com/pypa/pipenv https://pypi.org/project/pipenv/"
-SRC_URI="https://github.com/pypa/pipenv/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv"
-
-PATCHES=(
- "${FILESDIR}/pipenv-${PV}-0001-Append-always-install-to-pip-extra-args.patch"
- "${FILESDIR}/pipenv-${PV}-0002-Inject-system-packages.patch"
-
-)
-
-RDEPEND="
- >=dev-python/importlib-metadata-8.4.0[${PYTHON_USEDEP}]
- =dev-python/pexpect-4.8.0[${PYTHON_USEDEP}]
- ~dev-python/pipdeptree-2.30.0[${PYTHON_USEDEP}]
- ~dev-python/plette-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/ptyprocess-0.7.0[${PYTHON_USEDEP}]
- >=dev-python/python-dotenv-0.21.0[${PYTHON_USEDEP}]
- >=dev-python/pythonfinder-3.0.0[${PYTHON_USEDEP}]
- dev-python/shellingham[${PYTHON_USEDEP}]
- dev-python/tomlkit[${PYTHON_USEDEP}]
- >=dev-python/virtualenv-20.0.35[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- ${RDEPEND}
- test? (
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- )
-"
-
-# IMPORTANT: The following sed command patches the vendor direcotry
-# in the pipenv source. Attempts to simply bump the version of the
-# package without checking that it works is likely to fail
-# The vendored packages should eventually all be removed
-# see: https://bugs.gentoo.org/717666
-src_prepare() {
- sed --in-place -e \
- "s/import click, plette, tomlkit/import click\n\import tomlkit\nfrom pipenv.vendor import plette/g" \
- pipenv/project.py || die "Failed patching pipenv/project.py"
-
- local pkgName
- local packages=(
- colorama
- click
- click_didyoumean
- dotenv
- pexpect
- pipdeptree
- plette
- pythonfinder
- shellingham
- tomli
- tomlkit
- importlib_metadata
- packaging
- )
-
- for pkgName in "${packages[@]}"; do
- find ./ -type f -exec sed --in-place \
- -e "s/from pipenv.vendor import ${pkgName}/import ${pkgName}/g" \
- -e "s/from pipenv.vendor.${pkgName}\(.*\) import \(\w*\)/from ${pkgName}\1 import \2/g"\
- -e "s/import pipenv.vendor.${pkgName} as ${pkgName}/import ${pkgName}/g" \
- -e "s/from .vendor import ${pkgName}/import ${pkgName}/g" \
- -e "s/from .vendor.${pkgName}/from ${pkgName}/g" {} + || die "Failed to sed for ${pkgName}"
- done
-
- # disable coverage in tests
- sed -i -e '/\[tool\.pytest\.ini_options\]/,/\[/ { /addopts/d; /plugins/d; }' pyproject.toml || die
-
- distutils-r1_src_prepare
-
- # remove vendored versions
- for pkgName in "${packages[@]}"; do
- # Match the name directly (works for directories and files)
- # We use -o (OR) to handle both the original name and the hyphenated version
- find ./pipenv/vendor \( -name "${pkgName}" -o -name "${pkgName/_/-}" \) \
- -prune -exec rm -rvf {} + || die "Failed to remove vendored ${pkgName}"
- done
-
- find tests/ -type f -name "*.py" -exec sed -i \
- -e "s/pipenv\.vendor\.pythonfinder\.utils\.get_python_version/pythonfinder.utils.get_python_version/g" \
- -e "s/from pipenv\.vendor /from /g" \
- -e "s/import pipenv\.vendor\./import /g" \
- {} + || die "Failed to devendor tests"
-
- rm -rv examples docs benchmarks || die "Failed to remove dirs"
-
-}
-
-EPYTEST_PLUGINS=()
-distutils_enable_tests pytest
-
-python_test() {
- local -x PYTHONPATH="${S}:${PYTHONPATH}"
- epytest -m "not cli and not needs_internet" tests/unit/
-}
diff --git a/dev-python/pythonfinder/Manifest b/dev-python/pythonfinder/Manifest
new file mode 100644
index 0000000000..f3d65dee51
--- /dev/null
+++ b/dev-python/pythonfinder/Manifest
@@ -0,0 +1 @@
+DIST pythonfinder-3.0.3.tar.gz 725812 BLAKE2B 604169a777f9971d63560c2354d4ca3da254442b21df029d21a6562b632b61b47c3a9badeb09e84f6b556765f4897b36d4115da4ab07ee502e598c0d4638d7b8 SHA512 62fe99d4a03b0727f5875eff5d0526ed4565279f8f04c42fe75b805067168a5de2557b29d3398a341c1c8a41d31310cb67b2333969b33dfa92cb5c4114b45df7
diff --git a/dev-python/pythonfinder/metadata.xml b/dev-python/pythonfinder/metadata.xml
new file mode 100644
index 0000000000..7a9d48b4a5
--- /dev/null
+++ b/dev-python/pythonfinder/metadata.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ oz.tiram@gmail.com
+ Oz Tiram
+
+
+ sarugaku/pythonfinder
+ pythonfinder
+
+
diff --git a/dev-python/pythonfinder/pythonfinder-3.0.3.ebuild b/dev-python/pythonfinder/pythonfinder-3.0.3.ebuild
new file mode 100644
index 0000000000..3bffb04d91
--- /dev/null
+++ b/dev-python/pythonfinder/pythonfinder-3.0.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3_11 python3_{12..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="PythonFinder: Cross Platform Search Tool for Finding Pythons"
+HOMEPAGE="
+ https://github.com/sarugaku/pythonfinder/
+ https://pypi.org/project/pythonfinder/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+BDEPEND="
+ test? (
+ dev-python/click[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -o addopts=
+}
diff --git a/dev-python/tlv8/tlv8-0.10.0.ebuild b/dev-python/tlv8/tlv8-0.10.0.ebuild
index 65104b8ac6..5d64bde192 100644
--- a/dev-python/tlv8/tlv8-0.10.0.ebuild
+++ b/dev-python/tlv8/tlv8-0.10.0.ebuild
@@ -4,7 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{12..13} )
+PYTHON_COMPAT=( python3_{12..14} )
inherit distutils-r1
diff --git a/dev-util/forgejo-runner/Manifest b/dev-util/forgejo-runner/Manifest
index af09114fd3..9e792b39ec 100644
--- a/dev-util/forgejo-runner/Manifest
+++ b/dev-util/forgejo-runner/Manifest
@@ -1,2 +1,2 @@
-DIST forgejo-runner-12.9.0-deps.tar.xz 96811256 BLAKE2B 1dee826ec32c1bc77f9fcb7871b4ee5542ff19e9989724827311538ef2385f7e0593214d6ea0c915ce0a81657ff44c6c1ee044961c21b82df20ff467a32493c7 SHA512 6454bc5bf8e54e2ad7dd1e3bc8c60248eacddd08a42416242db36b967c968e6d7c5f1be46e4e8af0a95e2670f3b27658672809b319984dd1515cf40b63f0b6d9
-DIST forgejo-runner-12.9.0.tar.gz 3516923 BLAKE2B 507dfe8426cea8419eafdd296f7d6177a596e1601429c3d9a27303af5e91c4fb3821623a449bd01db33a911f67580c1524799f0173ca0767085936a79e0f1b45 SHA512 d32b24614410a227d4ea89a213c3f453e0d3969856e42d0475fcb1fd336cbe2e5ca9d6d18c031647a03e8f1f614836a9f29926a773a73e0f2bbf820b7b0c5614
+DIST forgejo-runner-12.10.0-deps.tar.xz 96811256 BLAKE2B 1dee826ec32c1bc77f9fcb7871b4ee5542ff19e9989724827311538ef2385f7e0593214d6ea0c915ce0a81657ff44c6c1ee044961c21b82df20ff467a32493c7 SHA512 6454bc5bf8e54e2ad7dd1e3bc8c60248eacddd08a42416242db36b967c968e6d7c5f1be46e4e8af0a95e2670f3b27658672809b319984dd1515cf40b63f0b6d9
+DIST forgejo-runner-12.10.0.tar.gz 3526091 BLAKE2B e6eabd4379bfb07b875d406eb7798cac8863ac0f85f33a5faf882307ff22581d68e6802c5b3c8cb10fdd0823cf5f2e516a9f728f810e29909441ba71ed308b79 SHA512 a4385aff462d5753f799bf69b5ec27a899e5786eef2113e63ea83dc42139f3a92f6cda3867ca1c2fe743e06a2b830850673d759284bd2426f807842609538237
diff --git a/dev-util/forgejo-runner/forgejo-runner-12.9.0.ebuild b/dev-util/forgejo-runner/forgejo-runner-12.10.0.ebuild
similarity index 100%
rename from dev-util/forgejo-runner/forgejo-runner-12.9.0.ebuild
rename to dev-util/forgejo-runner/forgejo-runner-12.10.0.ebuild
diff --git a/games-engines/fs2_open/Manifest b/games-engines/fs2_open/Manifest
index 6bd2946a4f..e2bce18558 100644
--- a/games-engines/fs2_open/Manifest
+++ b/games-engines/fs2_open/Manifest
@@ -4,3 +4,6 @@ DIST fs2_open-24.2.0.tar.gz 10958574 BLAKE2B 1990e7536ce71e1408806af60a8d6908ac2
DIST fs2_open-25.0.0-ext_libRocket.tar.gz 2417905 BLAKE2B 0e5ac40b0e811b9213fb84f6f2f0ef38ad7d562ae671e865d96e40615c2d67213905ce153a69192c0b53a3e4f0d1aef077c0769e46d308adf9210c0c9d1fe7c2 SHA512 700e242ecb5207faf729ca7d23ac4f28be819c0ef7a0ba51ca18de1592f1016040cd5e4c1c75a573f91cea69dd43549966ac089804a52c0f1b0cfbaabefc4346
DIST fs2_open-25.0.0-ext_rpavlik-cmake-modules.tar.gz 267464 BLAKE2B d63fa3867aad5fad7bd5d20845dd8d6a6698d59dc30dc511704f3c74bbe958bb6d36160bae3ef5c01027719c50d18e4d24209ea5811c6a52c5af4d3de2a587e9 SHA512 0bb03e2a1c0cafa80849163455cdb5fc5c7200e51f18f0354c36f251b51156f86a04a9f87cd17e2942d14ae8767d8df756062fbcff9b37f04e8399b2e37d306f
DIST fs2_open-25.0.0.tar.gz 11459432 BLAKE2B 88847584355fe2bbb5ca8d507a47ad6bebcc6fbe4b35618f79d15c148fec6ec971b35bfebec339b17cf67c221ac136444a7028bea06fafb33d58b5b043340688 SHA512 7431977d27adda96b9c1d53bf805997098f44c8e94bcc9fa99460d059161ab5270e2810206b6a6c79bfb92d75f80d1277825516f284511d344d485d3208a40aa
+DIST fs2_open-25.0.1-ext_libRocket.tar.gz 2417905 BLAKE2B 0e5ac40b0e811b9213fb84f6f2f0ef38ad7d562ae671e865d96e40615c2d67213905ce153a69192c0b53a3e4f0d1aef077c0769e46d308adf9210c0c9d1fe7c2 SHA512 700e242ecb5207faf729ca7d23ac4f28be819c0ef7a0ba51ca18de1592f1016040cd5e4c1c75a573f91cea69dd43549966ac089804a52c0f1b0cfbaabefc4346
+DIST fs2_open-25.0.1-ext_rpavlik-cmake-modules.tar.gz 267464 BLAKE2B d63fa3867aad5fad7bd5d20845dd8d6a6698d59dc30dc511704f3c74bbe958bb6d36160bae3ef5c01027719c50d18e4d24209ea5811c6a52c5af4d3de2a587e9 SHA512 0bb03e2a1c0cafa80849163455cdb5fc5c7200e51f18f0354c36f251b51156f86a04a9f87cd17e2942d14ae8767d8df756062fbcff9b37f04e8399b2e37d306f
+DIST fs2_open-25.0.1.tar.gz 11464417 BLAKE2B 8d8bec8df4ca5f716cdac319e6772a3158295b13577a2ec70116440cfce2d246939163da8364e24425f0e612ecb1a835b3b016766dcfdeec581abba098246a88 SHA512 8d0c5c2700b7e029c492eb0760b0e6e5cd1ac94b7a9e0db9400f894de5e0c65378761c9f7e3f01d51fa1ef0b0461eab1c66a272a656c2249ed5251fbbe93394f
diff --git a/games-engines/fs2_open/files/fs2_open-25.0.1-dont-build-lz4.patch b/games-engines/fs2_open/files/fs2_open-25.0.1-dont-build-lz4.patch
new file mode 100644
index 0000000000..4d6f5f9aba
--- /dev/null
+++ b/games-engines/fs2_open/files/fs2_open-25.0.1-dont-build-lz4.patch
@@ -0,0 +1,11 @@
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -49,8 +49,6 @@ add_subdirectory(mdns)
+
+ add_subdirectory(accidental-noise)
+
+-ADD_SUBDIRECTORY(lz4)
+-
+ set(HIDAPI_WITH_LIBUSB OFF)
+ set(HIDAPI_WITH_HIDRAW ON)
+ add_subdirectory(hidapi)
diff --git a/games-engines/fs2_open/files/fs2_open-25.0.1-make-arch-independent.patch b/games-engines/fs2_open/files/fs2_open-25.0.1-make-arch-independent.patch
new file mode 100644
index 0000000000..04fbf7eb26
--- /dev/null
+++ b/games-engines/fs2_open/files/fs2_open-25.0.1-make-arch-independent.patch
@@ -0,0 +1,11 @@
+--- a/freespace2/CMakeLists.txt
++++ b/freespace2/CMakeLists.txt
+@@ -25,7 +25,7 @@ target_compile_features(Freespace2 PUBLIC cxx_std_17)
+
+ include(resources.cmake)
+
+-SET_TARGET_PROPERTIES(Freespace2 PROPERTIES OUTPUT_NAME "fs2_open_${FSO_BINARY_SUFFIX}")
++SET_TARGET_PROPERTIES(Freespace2 PROPERTIES OUTPUT_NAME "fs2_open")
+
+ TARGET_LINK_LIBRARIES(Freespace2 code)
+ TARGET_LINK_LIBRARIES(Freespace2 platform)
diff --git a/games-engines/fs2_open/fs2_open-25.0.1.ebuild b/games-engines/fs2_open/fs2_open-25.0.1.ebuild
new file mode 100644
index 0000000000..1678e3d7e3
--- /dev/null
+++ b/games-engines/fs2_open/fs2_open-25.0.1.ebuild
@@ -0,0 +1,107 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="FreeSpace2 Source Code Project game engine"
+HOMEPAGE="https://github.com/scp-fs2open/fs2open.github.com/"
+
+# Replace "." with "_" in version
+_PV=${PV//./_}
+
+# Current hashes of external repositories:
+HASH_LIBROCKET="ecd648a43aff8a9f3daf064d75ca5725237d5b38"
+HASH_CMAKE_MODULES="7cef9577d6fc35057ea57f46b4986a8a28aeff50"
+
+SRC_URI="
+ https://github.com/scp-fs2open/fs2open.github.com/archive/refs/tags/release_${_PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/scp-fs2open/libRocket/archive/${HASH_LIBROCKET}.tar.gz -> ${P}-ext_libRocket.tar.gz
+ https://github.com/asarium/cmake-modules/archive/${HASH_CMAKE_MODULES}.tar.gz -> ${P}-ext_rpavlik-cmake-modules.tar.gz
+"
+
+S="${WORKDIR}/fs2open.github.com-release_${_PV}"
+
+LICENSE="Unlicense MIT Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="clang debug discord"
+
+DEPEND="
+ app-arch/lz4:=
+ frailedev@proton.me
Maxwell Blake
-
- ghostyn678+git@gmail.com
- dsaf
-
Quickshell is a toolkit for building status bars, widgets, lockscreens,
and other desktop components using QtQuick. It can be used alongside
diff --git a/gui-apps/xremap/Manifest b/gui-apps/xremap/Manifest
index a0c09d49ec..fd10c6c6ef 100644
--- a/gui-apps/xremap/Manifest
+++ b/gui-apps/xremap/Manifest
@@ -1,2 +1,2 @@
-DIST xremap-0.15.2-crates.tar.xz 19109836 BLAKE2B 424684b96a2398b32096bfb1f0407e9015501bcf90491d348544dcc1d57f6f0a700f46605ddd571eeaed4de938e600ce1bc3dd3a282cc6033a373dfd71373395 SHA512 6c72f60750cdcba80beb6e31145d6fefaacfa61ae5072cd3b30069ad218305e8755c5499c4440f1aaeceec95436de86205eaed852c5545dbb9a388c7296f6309
-DIST xremap-0.15.2.tar.gz 135609 BLAKE2B ba9c8a431dcc82e35dce2d62543c5a441b6f8a6bc9d93b3d5affcd6ec8ab8d8863774d74d4b7c7f812b298d3577951303ce2dc2ba9d40a2c87c125a075d1e2a0 SHA512 2481b9276158bb73c319f9cc43ba4bb1030b94b92ed51c1db3f9da5aa3062ce1935677f6a7ce526433b2d17e44c37f10c6e1f1321c144ea7141dfef89e716f41
+DIST xremap-0.15.5-crates.tar.xz 14343464 BLAKE2B e10609d9c5355426375de89c4300101f947726694b5143db26e527e972e4ee116d93ecb74eb51c607095e77e300187559a780f8461d6a27fc4f703ed2bd546f0 SHA512 97dc465577530d629cf152629375faff90d88f43e88d0a53cf0f180b01aa0cd82bbaee364852c255efc2fbf8fbcc86eb715ca2c27a3ba463e951ca2b59077463
+DIST xremap-0.15.5.tar.gz 141129 BLAKE2B 000661e037dd550798e2449527edf303f8b4fdc2c6a91b38ea3ad6c4625a8ab7abd49c73b3e3f1de53502d59e01d9da9d2365c84966574638ddb4be6d40981a5 SHA512 09b0d9224f189347301b74e73c892ad651098b6f04bf5fccc87cfd4731bc5c25e25b1ca336833b1bf1075e969415a0fc298ef0dc2e90c4983e5b8c3aa014ac2a
diff --git a/gui-apps/xremap/metadata.xml b/gui-apps/xremap/metadata.xml
index 7fc19980a9..802deca215 100644
--- a/gui-apps/xremap/metadata.xml
+++ b/gui-apps/xremap/metadata.xml
@@ -14,6 +14,7 @@
build client for Niri
build client for COSMIC Wayland
build client for Variant for system service
+ build client for Pantheon Wayland (aka Secure)
xremap/xremap
diff --git a/gui-apps/xremap/xremap-0.15.2.ebuild b/gui-apps/xremap/xremap-0.15.5.ebuild
similarity index 88%
rename from gui-apps/xremap/xremap-0.15.2.ebuild
rename to gui-apps/xremap/xremap-0.15.5.ebuild
index d0e7e61db1..51092f9c73 100644
--- a/gui-apps/xremap/xremap-0.15.2.ebuild
+++ b/gui-apps/xremap/xremap-0.15.5.ebuild
@@ -21,8 +21,8 @@ LICENSE="MIT"
LICENSE+=" Apache-2.0 BSD GPL-3+ MIT Unicode-3.0 ZLIB"
SLOT="0"
KEYWORDS="~amd64"
-IUSE="cosmic gnome hyprland kde niri socket udev wlroots x11"
-REQUIRED_USE="?? ( cosmic gnome hyprland kde niri socket wlroots x11 )"
+IUSE="cosmic gnome hyprland kde niri pantheon socket udev wlroots x11"
+REQUIRED_USE="?? ( cosmic gnome hyprland kde niri pantheon socket wlroots x11 )"
DEPEND="udev? ( virtual/libudev )"
RDEPEND="${DEPEND}"
@@ -42,6 +42,7 @@ src_configure() {
$(usev niri)
$(usev cosmic)
$(usev socket)
+ $(usev pantheon)
)
cargo_src_configure --no-default-features
}
diff --git a/gui-wm/miracle-wm/Manifest b/gui-wm/miracle-wm/Manifest
index 23e8ff3771..790ade9c09 100644
--- a/gui-wm/miracle-wm/Manifest
+++ b/gui-wm/miracle-wm/Manifest
@@ -1,2 +1 @@
-DIST miracle-wm-0.8.3.tar.gz 1186888 BLAKE2B c4c693356c2792a0a2b03a65f9b99a2655112d54d36f47c06b5fbae96a4469c597f441ce32e1e989a75ac8fcaa5b8b4ff4b6246d172d0cc8b33dcaf0a2ee0979 SHA512 c9341976811a391340804ed536711160da798d1a25be737846f766495c8bc36ee942fcb117f3ae41fe18e102b7777beac3e4395e02a82d7754ba5f59a0a7eb66
-DIST miracle-wm-0.9.0.tar.gz 2655079 BLAKE2B c7f98a3179090b87e694a6fc7310093820ec926211a3e0d790b5b872b10f25bec5bcb25992928e0ff8179a725088267ba8dc9c5f7a35c65c7f2ed4e8c95185b4 SHA512 866d8947f45a1c8fae0964a9d1f70af5a3e6c359ca2f1a7b2005d340ffbff43361ca39da30a9ddcd47f637f37fc203372b7097a6a279e982eb119b8870199fef
+DIST miracle-wm-0.9.1.tar.gz 2658768 BLAKE2B e334e7c3a9e66c75f056e081040d7c20763a59d6cd93799224a2dc43b2d2079c2d0769c4d2ea14ac2ee92df19e8bff58178b3176b31607648d3a085dc1ee006f SHA512 49ce5955627dc072bc6e671170fc0bd32bc8e6fa48e84c75e04c3c47985ec8f6d3fa5a4a7c0f8abd29f364db6ed68bf2034097b91e3c16332d5ebde69629bdac
diff --git a/gui-wm/miracle-wm/files/miracle-wm-0.6.1-conditional-tests.patch b/gui-wm/miracle-wm/files/miracle-wm-0.6.1-conditional-tests.patch
deleted file mode 100644
index 29c868d073..0000000000
--- a/gui-wm/miracle-wm/files/miracle-wm-0.6.1-conditional-tests.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/miracle-wm-config/CMakeLists.txt
-+++ b/miracle-wm-config/CMakeLists.txt
-@@ -3,7 +3,9 @@ pkg_check_modules(MIRCORE mircore REQUIRED)
- pkg_check_modules(YAML REQUIRED IMPORTED_TARGET yaml-cpp)
- pkg_check_modules(LIBEVDEV REQUIRED IMPORTED_TARGET libevdev)
- pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0)
--find_package(GTest REQUIRED)
-+if(WITH_TESTS)
-+ find_package(GTest REQUIRED)
-+endif()
-
- add_library(miracle-wm-config
- SHARED
-@@ -55,6 +57,7 @@ install(
- )
-
- # Tests
-+if(WITH_TESTS)
- add_executable(test_miracle_wm_config_c_api
- tests/test_miracle_wm_config_c_api.cpp
- )
-@@ -74,3 +77,4 @@ target_link_libraries(test_miracle_wm_config_c_api
- )
-
- add_test(NAME test_miracle_wm_config_c_api COMMAND test_miracle_wm_config_c_api)
-+endif()
diff --git a/gui-wm/miracle-wm/files/miracle-wm-0.7.0-disable-mirtest.patch b/gui-wm/miracle-wm/files/miracle-wm-0.7.0-disable-mirtest.patch
deleted file mode 100644
index 6b2f2f934a..0000000000
--- a/gui-wm/miracle-wm/files/miracle-wm-0.7.0-disable-mirtest.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/tests/CMakeLists.txt
-+++ b/tests/CMakeLists.txt
-@@ -9,12 +9,10 @@ include_directories(
- find_package(PkgConfig)
- pkg_check_modules(MIRAL miral REQUIRED)
- pkg_check_modules(MIRSERVER mirserver REQUIRED)
--pkg_check_modules(MIRTEST mirtest REQUIRED)
- pkg_check_modules(YAML REQUIRED IMPORTED_TARGET yaml-cpp)
- find_package(GTest REQUIRED)
- find_package(nlohmann_json 3.2.0 REQUIRED)
-
--option(END_TO_END_TESTS "Include end-to-end tests?" OFF)
-
- set(SOURCES
- mock_animation.h
diff --git a/gui-wm/miracle-wm/files/miracle-wm-0.8.3-mir-2.25-compat.patch b/gui-wm/miracle-wm/files/miracle-wm-0.8.3-mir-2.25-compat.patch
deleted file mode 100644
index 73f516439b..0000000000
--- a/gui-wm/miracle-wm/files/miracle-wm-0.8.3-mir-2.25-compat.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Compat for Mir 2.25, where mirrenderer was merged into mirplatform.
-https://github.com/miracle-wm-org/miracle-wm/commit/aaae6e64261d8a00c2a1df47e2eab99400382d69
-From: Matthew Kosarek
-Date: Tue, 9 Dec 2025 10:41:43 -0500
-Subject: [PATCH] bugfix: only install libmirrenderer-dev if it is available
- (#734)
-
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -90,7 +90,7 @@ find_package(PkgConfig)
-
- set(MIR_MINIMUM_VERSION 2.18)
- pkg_check_modules(MIRAL REQUIRED miral>=5.1)
--pkg_check_modules(MIRRENDERER REQUIRED mirrenderer>=${MIR_MINIMUM_VERSION})
-+pkg_check_modules(MIRRENDERER mirrenderer>=${MIR_MINIMUM_VERSION})
- pkg_check_modules(MIRPLATFORM REQUIRED mirplatform>=${MIR_MINIMUM_VERSION})
- pkg_check_modules(MIRCOMMON REQUIRED mircommon>=${MIR_MINIMUM_VERSION})
- pkg_check_modules(MIRCOMMON_INTERNAL REQUIRED mircommon-internal>=${MIR_MINIMUM_VERSION})
diff --git a/gui-wm/miracle-wm/files/miracle-wm-0.9.0-add-missing-headers.patch b/gui-wm/miracle-wm/files/miracle-wm-0.9.0-add-missing-headers.patch
index 76b9197e4c..b7ad02e79e 100644
--- a/gui-wm/miracle-wm/files/miracle-wm-0.9.0-add-missing-headers.patch
+++ b/gui-wm/miracle-wm/files/miracle-wm-0.9.0-add-missing-headers.patch
@@ -51,9 +51,9 @@ index e73c08f..88277bd 100644
#include
using namespace miracle;
- --- a/src/plugin_handle.h
+--- a/src/plugin_handle.h
+++ b/src/plugin_handle.h
-@@ -15,7 +15,9 @@ You should have received a copy of the GNU General Public License
+@@ -15,6 +15,8 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see .
**/
@@ -62,3 +62,23 @@ index e73c08f..88277bd 100644
namespace miracle
{
typedef uint32_t PluginHandle;
+--- a/src/parent_background_internal_client.cpp
++++ b/src/parent_background_internal_client.cpp
+@@ -28,6 +28,7 @@ along with this program. If not, see .
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+--- a/src/move_service.h
++++ b/src/move_service.h
+@@ -19,6 +19,7 @@ along with this program. If not, see .
+ #define MIRACLE_WM_MOVE_SERVICE_H
+
+ #include
++#include
+ #include
+
+ namespace miracle
diff --git a/gui-wm/miracle-wm/files/miracle-wm-0.9.0-conditional-tests.patch b/gui-wm/miracle-wm/files/miracle-wm-0.9.0-conditional-tests.patch
deleted file mode 100644
index f0e0386850..0000000000
--- a/gui-wm/miracle-wm/files/miracle-wm-0.9.0-conditional-tests.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Build tests only when requested.
---- a/miracle-wm-c/CMakeLists.txt
-+++ b/miracle-wm-c/CMakeLists.txt
-@@ -5,7 +5,9 @@ pkg_check_modules(MIRAL miral REQUIRED)
- pkg_check_modules(YAML REQUIRED IMPORTED_TARGET yaml-cpp)
- pkg_check_modules(XKBCOMMON REQUIRED xkbcommon)
- pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0)
-+if(ENABLE_TESTS)
- find_package(GTest REQUIRED)
-+endif()
-
- add_library(miracle-wm-c
- SHARED
-@@ -62,6 +64,7 @@ install(
- )
-
- # Tests
-+if(ENABLE_TESTS)
- add_executable(test_miracle_wm_c_api
- tests/test_config_c.cpp
- tests/test_config_cpp.cpp
-@@ -86,3 +89,4 @@ target_link_libraries(test_miracle_wm_c_api
- )
-
- add_test(NAME test_miracle_wm_c_api COMMAND test_miracle_wm_c_api)
-+endif()
diff --git a/gui-wm/miracle-wm/miracle-wm-0.8.3.ebuild b/gui-wm/miracle-wm/miracle-wm-0.8.3.ebuild
deleted file mode 100644
index 1dde12d530..0000000000
--- a/gui-wm/miracle-wm/miracle-wm-0.8.3.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_13 )
-
-inherit cmake python-single-r1
-
-DESCRIPTION="Tiling Wayland compositor based on Mir"
-HOMEPAGE="https://github.com/miracle-wm-org/miracle-wm"
-SRC_URI="https://github.com/miracle-wm-org/miracle-wm/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3+ MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="systemd test"
-REQUIRED_USE="systemd? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
- dev-cpp/yaml-cpp:=
- dev-cpp/nlohmann_json
- dev-libs/glib:2
- dev-libs/json-c:=
- dev-libs/libevdev
- dev-libs/libpcre2:=
- dev-libs/wayland
- >=gui-libs/mir-2.18:=
- media-libs/libglvnd
- x11-base/xwayland
- x11-libs/libxkbcommon
-"
-RDEPEND="
- ${COMMON_DEPEND}
- systemd? (
- ${PYTHON_DEPS}
- $(python_gen_cond_dep '
- dev-python/dbus-next[${PYTHON_USEDEP}]
- dev-python/tenacity[${PYTHON_USEDEP}]
- ')
- )
-"
-DEPEND="
- ${COMMON_DEPEND}
- media-libs/glm
-"
-BDEPEND="
- virtual/pkgconfig
- test? ( dev-cpp/gtest )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-0.6.1-conditional-tests.patch"
- "${FILESDIR}/${PN}-0.7.0-disable-mirtest.patch"
- "${FILESDIR}/${PN}-0.7.0-no-automagic.patch"
- "${FILESDIR}/${PN}-0.8.3-mir-2.25-compat.patch"
-)
-
-pkg_setup() {
- use systemd && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- cmake_src_prepare
- use test || cmake_comment_add_subdirectory tests/
- use systemd && python_fix_shebang session/usr/bin/libexec/miracle-wm-wait-sni-ready
-}
-
-src_configure() {
- local mycmakeargs=(
- -DSYSTEMD_INTEGRATION=$(usex systemd)
- -DWITH_TESTS=$(usex test)
- )
- cmake_src_configure
-}
-
-src_test() {
- "${BUILD_DIR}/tests/miracle-wm-tests" || die
- "${BUILD_DIR}/miracle-wm-config/test_miracle_wm_config_c_api" || die
-}
diff --git a/gui-wm/miracle-wm/miracle-wm-0.9.0.ebuild b/gui-wm/miracle-wm/miracle-wm-0.9.1.ebuild
similarity index 97%
rename from gui-wm/miracle-wm/miracle-wm-0.9.0.ebuild
rename to gui-wm/miracle-wm/miracle-wm-0.9.1.ebuild
index 62f7fbff05..1aa7ae2bfc 100644
--- a/gui-wm/miracle-wm/miracle-wm-0.9.0.ebuild
+++ b/gui-wm/miracle-wm/miracle-wm-0.9.1.ebuild
@@ -51,7 +51,6 @@ BDEPEND="
"
PATCHES=(
- "${FILESDIR}/${PN}-0.9.0-conditional-tests.patch"
"${FILESDIR}/${PN}-0.9.0-disable-mirtest.patch"
"${FILESDIR}/${PN}-0.7.0-no-automagic.patch"
"${FILESDIR}/${PN}-0.9.0-add-missing-headers.patch"
diff --git a/media-sound/fooyin/Manifest b/media-sound/fooyin/Manifest
index 3186d7414b..e338ca4fc0 100644
--- a/media-sound/fooyin/Manifest
+++ b/media-sound/fooyin/Manifest
@@ -2,3 +2,4 @@ DIST fooyin-0.10.0.tar.gz 2994454 BLAKE2B 63c41f1a74104068a4dc7b90dcf1d42af18cb9
DIST fooyin-0.10.2.tar.gz 3049026 BLAKE2B ea061adb579c2ec2dfc07ce589419bbccf942aa99007390f993f068999f9614cbf7111c1866967c281badc71f40fcf006d6ee1b4952d0e19aa209584e1da4691 SHA512 7756165b1881ee779f6c0069c9c2bd4d2ce59c914048ce716923b7c872ecb5e5a35d58d3aa13ca795c936ae3097666cbb09192a4606c2167997bc2169b30232c
DIST fooyin-0.10.3.tar.gz 3060340 BLAKE2B b745eb59b9e62d30160964bc36b806f0a66c62beed2b2686bdeae3e4eb4d5f2befd54a9da67d301e0a190c054a563b5fb63b8e5ca1bd740562eb11e06df0f82b SHA512 2dc16e00c3f033e1096235702e158ef8503d1bd617b969fd569891968f1ab160569f73cd66c96dc37f8e564d24346bb885d211b289827325fba8d0c92cc7d1ac
DIST fooyin-0.10.4.tar.gz 3664198 BLAKE2B deaeaa7943c41f3b6b1dc88c10803bc1e8872a8f614d7bf230d226f816fee3778b5b76eb262478d1c97119b3ec6a1daaa33cc6301730b613013a0b8965acfcb7 SHA512 3a853ed303db02c797d563df947299fc06cb35d08525095c971013551b64ffcb8da0f4176be5c703b2fbd2eb3939f6ee88825453fa6657b73fe35f199c0f7f62
+DIST fooyin-0.10.5.tar.gz 3683739 BLAKE2B bc9d99596f965bb3bacf1d6faf66c551954fc18fe392f31701374f0a569792c70d434a82ae626e4115dd1c79e7d7cddebd0d3320d2d232514d2fabaed1e8fe7b SHA512 d53a5193d1477dc6fb17526f0d6b3c97ed491d844fc9d212a7ed403ff6cf26f69d53cc2a2c22829f4ca3cd57e1ccf5fc9990402661c2d426787432501cf4235c
diff --git a/media-sound/fooyin/fooyin-0.10.5.ebuild b/media-sound/fooyin/fooyin-0.10.5.ebuild
new file mode 100644
index 0000000000..e0d10a6450
--- /dev/null
+++ b/media-sound/fooyin/fooyin-0.10.5.ebuild
@@ -0,0 +1,85 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake xdg
+
+DESCRIPTION="A customizable music player, Qt clone of foobar2000"
+HOMEPAGE="https://www.fooyin.org/"
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/fooyin/fooyin.git"
+else
+ SRC_URI="
+ https://github.com/fooyin/fooyin/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ "
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+
+IUSE="alsa +archive gme openmpt +pipewire +replaygain sdl sndfile soundtouch soxr test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+ || ( alsa pipewire sdl )
+"
+
+RDEPEND="
+ dev-libs/icu:=
+ dev-libs/kdsingleapplication
+ dev-libs/qcoro[network]
+ dev-qt/qtbase:6[concurrent,dbus,gui,network,sql,widgets]
+ dev-qt/qtimageformats:6
+ dev-qt/qtsvg:6
+ media-libs/taglib:=
+ media-video/ffmpeg:=
+ virtual/zlib:=
+ alsa? ( media-libs/alsa-lib )
+ archive? ( app-arch/libarchive:= )
+ gme? ( media-libs/game-music-emu )
+ openmpt? ( media-libs/libopenmpt )
+ pipewire? ( media-video/pipewire:= )
+ replaygain? ( media-libs/libebur128:= )
+ sdl? ( media-libs/libsdl2 )
+ sndfile? ( media-libs/libsndfile )
+ soundtouch? ( media-libs/libsoundtouch:= )
+ soxr? ( media-libs/soxr )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-qt/qttools:6[linguist]
+ test? ( dev-cpp/gtest )
+"
+
+src_prepare() {
+ sed -i CMakeLists.txt \
+ -e "s|/doc/${PN}|/doc/${PF}|g" \
+ -e '/option(BUILD_TESTING/aenable_testing()' \
+ || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_ALSA=$(usex alsa)
+ -DBUILD_TESTING=$(usex test)
+ -DBUILD_CCACHE=OFF
+ -DINSTALL_HEADERS=ON
+ $(cmake_use_find_package archive LibArchive)
+ $(cmake_use_find_package gme LIBGME)
+ $(cmake_use_find_package openmpt OpenMpt)
+ $(cmake_use_find_package pipewire PipeWire)
+ $(cmake_use_find_package replaygain Ebur128)
+ $(cmake_use_find_package sdl SDL2)
+ $(cmake_use_find_package sndfile SndFile)
+ $(cmake_use_find_package soundtouch SoundTouch)
+ $(cmake_use_find_package soxr SoXR)
+ )
+
+ cmake_src_configure
+}
diff --git a/media-sound/fooyin/fooyin-9999.ebuild b/media-sound/fooyin/fooyin-9999.ebuild
index 4810914add..e0d10a6450 100644
--- a/media-sound/fooyin/fooyin-9999.ebuild
+++ b/media-sound/fooyin/fooyin-9999.ebuild
@@ -37,6 +37,7 @@ RDEPEND="
dev-qt/qtsvg:6
media-libs/taglib:=
media-video/ffmpeg:=
+ virtual/zlib:=
alsa? ( media-libs/alsa-lib )
archive? ( app-arch/libarchive:= )
gme? ( media-libs/game-music-emu )
diff --git a/media-sound/nuclear-bin/Manifest b/media-sound/nuclear-bin/Manifest
index 4b76b590a8..5f418818c6 100644
--- a/media-sound/nuclear-bin/Manifest
+++ b/media-sound/nuclear-bin/Manifest
@@ -1 +1 @@
-DIST nuclear-bin-1.34.1.deb 14741248 BLAKE2B 73f785f34b617ec3017c8b7ea03218cc95c06316d8faee543bbeea7a07b5cb49e8b3f94e555cf8d3a0148715442a7c89a8978322eb4bebef536655caa59cb9f9 SHA512 67b621b4938dc0832e9d43b4d17e1ce5f6caad6a011f50ec1f24484d18a679d6087fabe9135c6aeda7a8414136e5ec0cac80905c3e734668688726a605a2ea6b
+DIST nuclear-bin-1.35.0.deb 14746566 BLAKE2B eafdc33a0391109b7a921ed4920240c34737868b5813a5d6cb0eeffb2222fe7f015a3d1d34a4fe1ee4a2da752187a5e5fd91535998883d03ba44f54e053ce827 SHA512 808f1a8602e445b44f74cfc572efcc86427678a275310648f5b97f3571ef546bb0664f00a8b8ecb008e8dc6148a023c77a33220a1425127db221470440769b4b
diff --git a/media-sound/nuclear-bin/nuclear-bin-1.34.1.ebuild b/media-sound/nuclear-bin/nuclear-bin-1.35.0.ebuild
similarity index 98%
rename from media-sound/nuclear-bin/nuclear-bin-1.34.1.ebuild
rename to media-sound/nuclear-bin/nuclear-bin-1.35.0.ebuild
index 35f930086a..efee63d67a 100644
--- a/media-sound/nuclear-bin/nuclear-bin-1.34.1.ebuild
+++ b/media-sound/nuclear-bin/nuclear-bin-1.35.0.ebuild
@@ -15,7 +15,7 @@ S="${WORKDIR}"
LICENSE="AGPL-3"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="-* ~amd64"
RDEPEND="
>=app-accessibility/at-spi2-core-2.46.0:2
diff --git a/media-sound/qobuz-player/Manifest b/media-sound/qobuz-player/Manifest
index 02cd316615..a3d1172d23 100644
--- a/media-sound/qobuz-player/Manifest
+++ b/media-sound/qobuz-player/Manifest
@@ -2,8 +2,8 @@ DIST cpal-fd3b945bffcaa493fa7cb5ceddf9db1f9330fd30.gh.tar.gz 180966 BLAKE2B aabc
DIST mpris-server-f8b3f74e93910fffd0c93df687e05cf954dcdeba.gh.tar.gz 43952 BLAKE2B 6f91e8975e2bb40369bdb430feecb497e555a19dff70a7570aec89b3c0644f2b89d0b8cb6b4544660dedfb1bf2617836a5e79f2af48d2e6a9c025d22323168ac SHA512 aa2f0a1a220d30602478a119a9bcfd548d0dbc18a5036b5dc38742cadf9b589bb65f6632056af149bc4c3cda022ef95cb28e426a7a0198ab45cc58be85f849b4
DIST qobuz-player-0.10.0-crates.tar.xz 70805628 BLAKE2B 980f39c603ab8d3c3818ecc8de48b3406756ce8fabf9323682a24dde7ab5ea4ccaecb74182c0a4c541553d82c50ad9408889bdffecf3b128c11b2bc064de6900 SHA512 eadbef8aa306c9771d9e22a775bfdeb6754170f650b87059ec0f07609150cc3de6b81905367e6c77b0617ac6ee675e9f65110743f69f3b6b589e722aa3bcbcba
DIST qobuz-player-0.10.0.tar.gz 6510566 BLAKE2B e43fa28055626b2e48e39cc453bb1d199ae1c31ef65557a7060cdfa84377c6d439d78c8f6ae8df8ebb3cb24defd0b8313992e2372a9bb3b6b40db484191f3b4f SHA512 a85c265cbd9c2dc3925b4f7d9fe0a1ce37fda88d73ea6e29558ac53724cd1db246a34edf583fa4fa6a23a0941cf66ef6433780f36f896a24f95317fdca846b8b
-DIST qobuz-player-0.8.0-crates.tar.xz 64451024 BLAKE2B b0b0d956775dd356e8da8aa3b914d32b5535f7def1c83fc21de8bd90825a34509255f16403635c62ae420a633edf08038e9634e3ed6d7ce8b6590a68a962d0b0 SHA512 168723a23b3542d245172ee036b89179b2748bfde7adcb724f1f6a28fd1b6445e07562ed0dbb078a6fa8908c94e5c6c44cab6184528738a93e16850fa9e3eaa2
-DIST qobuz-player-0.8.0.tar.gz 6476576 BLAKE2B d1b93ffcc8e81310a055179edba7875cc55827e303fff6be4ed308797d9b3b719b55e0a19add3c9fd4073ea7c2ddafd713b0929a959bd36325c3106a004f6e8d SHA512 6a99447f8a66573c70e1848f8f340d850c648c5a0fdd77f326e774323345b292f7cf7696318787d319bdb4c99be9388ea4a9339315188464463ee679071b8387
DIST qobuz-player-0.9.0-crates.tar.xz 69589892 BLAKE2B 95c8221543fc544ab5c4ad967e453749875427e5adbf3ea60d0649f7d607c59d9b081bf699f1bd8a167a4a0474eb3ded9b498cbc0f9a8337f8da734ac06c6475 SHA512 5f6776059ca90efc1ed552488c4b9ae3e40220cb47a5a8472f539d2a73c810435287dcc4133b2cbc69d5828632d18ea73d1dccea3c774e2d07d68e9ba0713def
DIST qobuz-player-0.9.0.tar.gz 6496039 BLAKE2B 06ba1a65efd9a185dfa3adfd59444f1fd9c0d4ea39909b4ae23d7f90e34d58bbb740667559018564aa6384d630883e5d5f79b1f5bd1a3ffd274ca3c97248a1b9 SHA512 b3f60801febfc2d02d7d03333188cea636d12c7fff0159954d6a1ff6027f9fe7d74cac4a7f1b8b757c0271eb8b68518aa306e5c4f148aca74784d1b1f0b286e5
+DIST qobuz-player-2026-05-03-crates.tar.xz 73206836 BLAKE2B 486c4b247862a0d4ec244a11dd362966b13aaa0ff6426381ef411e68815c435d0a6389ab8a565ef36fd210ea5b0da7687d3a4f59ba18e46e0f4e944dde1ad972 SHA512 f9f542e6b645ad5db705dc29daef563fadc0404899dbdb663e716390aef2caba369048842c28c4e5a10f9b95ef13b0c28fd1245b30946e7aff8bdcb30d0f6526
+DIST qobuz-player-2026-05-03.tar.gz 8440227 BLAKE2B 6e16e293b54122c1a60ba3974b1ce96369b999b332fa17831e561c4d92da76b770ed10387dc70ae8dc0b6b868ab032761f2f4e8e39fa70b21a9e18ed2a3b8dd1 SHA512 f4cf19e5643113c1a8c071af6f20ad4a5ebc979e925e718c1ac0567fe6e953b88229357a225910acf4f72a319052ca2a4834f1832b13c74414644937ca9e36e6
DIST rodio-a352fb53846b47523d828b276b6d625f251aabb2.gh.tar.gz 15052657 BLAKE2B 88148261bb03c0c0daa54ee0961623db69a3fb84e6c0f8ff5b3aff98615f3d70e2d3743efa46e6e0c34e734489f7ff93cacb29d18009a295adaf6c5ba27571da SHA512 fc69172d286578cbb4970deb350d178ff570440744018f89133afdd4244a3d566e95bdacd2783189cb9d8448b542e000692110026e9291ff13c2619311ba5f72
diff --git a/media-sound/qobuz-player/qobuz-player-0.8.0.ebuild b/media-sound/qobuz-player/qobuz-player-2026.05.03.ebuild
similarity index 59%
rename from media-sound/qobuz-player/qobuz-player-0.8.0.ebuild
rename to media-sound/qobuz-player/qobuz-player-2026.05.03.ebuild
index cd6ebb2ed1..b319f8b602 100644
--- a/media-sound/qobuz-player/qobuz-player-0.8.0.ebuild
+++ b/media-sound/qobuz-player/qobuz-player-2026.05.03.ebuild
@@ -10,16 +10,23 @@ declare -A GIT_CRATES=(
[cpal]='https://github.com/RustAudio/cpal;fd3b945bffcaa493fa7cb5ceddf9db1f9330fd30;cpal-%commit%'
)
-RUST_MIN_VER="1.90.0"
+RUST_MIN_VER="1.92"
+
+UPSTREAM_PN="qobine"
+UPSTREAM_PV="${PV//./-}"
+MY_P="${PN}-${UPSTREAM_PV}"
+UPSTREAM_P="${UPSTREAM_PN}-${UPSTREAM_PV}"
inherit cargo
DESCRIPTION="Tui, web and rfid player for Qobuz"
-HOMEPAGE="https://github.com/SofusA/qobuz-player"
-SRC_URI="https://github.com/SofusA/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-SRC_URI+=" https://github.com/gentoo-crate-dist/${PN}/releases/download/v${PV}/${P}-crates.tar.xz"
+HOMEPAGE="https://github.com/SofusA/qobine"
+SRC_URI="https://github.com/SofusA/${UPSTREAM_PN}/archive/refs/tags/v${UPSTREAM_PV}.tar.gz -> ${MY_P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-crate-dist/${PN}/releases/download/v${UPSTREAM_PV}/${MY_P}-crates.tar.xz"
SRC_URI+=" ${CARGO_CRATE_URIS}"
+S="${WORKDIR}/${UPSTREAM_P}"
+
LICENSE="GPL-3"
# Dependent crate licenses
LICENSE+="
@@ -28,12 +35,20 @@ LICENSE+="
"
SLOT="0"
KEYWORDS="~amd64"
+# The GTK feature now needs >=gui-libs/gtk-4.20 which is too much of a hassle.
+# I'll skip this feature for now because personally, I don't need it.
+# Also see: https://github.com/SofusA/qobine/issues/348#issuecomment-4368448105
+# IUSE="gtk"
+RESTRICT="test"
DEPEND="
dev-db/sqlite:3=
+ dev-libs/glib
media-libs/alsa-lib
sys-apps/dbus
"
+ # This will need to be in DEPEND when this feature will be re-enabled
+ # gtk? ( gui-libs/libadwaita )
RDEPEND="${DEPEND}"
BDEPEND="virtual/pkgconfig"
@@ -59,8 +74,20 @@ src_configure() {
default
}
+src_compile() {
+ cargo_src_compile --package qobuz-player-connect
+ # use gtk && cargo_src_compile --package qobuz-player-gtk
+ cargo_src_compile --package qobuz-player-rfid
+ cargo_src_compile --package qobuz-player-tui
+ cargo_src_compile --package qobuz-player-web
+}
+
src_install() {
- cargo_src_install --path qobuz-player-cli
+ cargo_src_install --path qobuz-player-connect
+ # use gtk && cargo_src_install --path qobuz-player-gtk
+ cargo_src_install --path qobuz-player-rfid
+ cargo_src_install --path qobuz-player-tui
+ cargo_src_install --path qobuz-player-web
local DOCS=(
README.md
diff --git a/net-dns/technitium-dns/Manifest b/net-dns/technitium-dns/Manifest
index ed2f08094d..2b447533a5 100644
--- a/net-dns/technitium-dns/Manifest
+++ b/net-dns/technitium-dns/Manifest
@@ -1,11 +1,11 @@
DIST TechnitiumDnsServer-13.6.0.tar.gz 1627685 BLAKE2B 21e42c61d0817402583f15d8e6ec851e9b28660e1ef66ef6bae284e9fefb6a2158648ba92f10af6403820a8d7d5d743a7aa028362cf44b32d9cecf66897287a9 SHA512 f8ca95d0865095ead6ddfc4270b95ca9c1869b3fc2bfa4891ab3ffbd8655ca70c7436fd022e56819399eef1b80156d071a4302034431eb96cc2e3d714562ebf5
DIST TechnitiumDnsServer-14.3.0.tar.gz 1717641 BLAKE2B 2da0e70b11bc74491f7ddd72ab3566facfdde175f29beeafe9d32b399185ee542ec8fb2b311b27cf2eb8d179fd67bbbcf8533fd2c778b55297c2867d5ebe549b SHA512 1cc03aaab0cb2aeae7c94150658c34e12c9ba45c2cb6e51a106b04dd9d8a8a2d033b6b12b737db6859e7382ba55058c72eee257e9564e84d73e16a98af3c0943
-DIST TechnitiumDnsServer-15.0.0.tar.gz 1806305 BLAKE2B dca86ac6ad0acb5a67476d847d704b53ad41626396217618270ef66ba110afe7bb2df335c18e929cc8cf65f1e53ea5f7b8b12ac724ee708ec49345f9c05345aa SHA512 2a6a2fdd8600baf24e308ba983c74bfbc94ad2a17aeaa494c240ab81b120a14b0f5875962ccbd046c177874c6c1ebf2fe22d601da9267fbefc9f3fd388c7ebd8
DIST TechnitiumDnsServer-15.0.1.tar.gz 1806521 BLAKE2B fb1d985ff81e22e4aa6519acd71e2e57bc98cf1df7b45c408944a339ffa9a525181ff38e029001cfbb33c4318804208b4a91a2e1584d83d83da64d74f8296ed3 SHA512 5a182f7e40219528724c977fd5e37340c6652c747c5ebf14333d030d6a30ddcbb1fb23ce22e49e6997fc66c8b1a410bcf2b5cbaf8da719d5f0890f2fa281b091
+DIST TechnitiumDnsServer-15.1.0.tar.gz 1808309 BLAKE2B 9d7609e5590913fae27cb8da818f03927dfd479ced266e44996b21bdbb3fd780ddb2c8b8ebaf8b5972028c71813e4a58f70a99b342d65c32bcb09b96b4df4e40 SHA512 4de1ab9aa329f2813075c4744ab8bab35a2f2cf9f9df2dcb1fd038f342b9fde7ae60e37b2c357094628c38c0f77c513659422a3ec89135983de79eb947a9da07
DIST TechnitiumLibrary-13.6.0.tar.gz 246457 BLAKE2B 271dd51d477cae14ffea3c22136b8a4a5077af9f5fab35eaee0baed731f01265341a9a64d30e32e940bd77ccf6714d9859b58f6de2851117d9dbbe0f55beb045 SHA512 2b8f1f9a86c418a1c5260a180399d0f67c1b3b63406ef0f6e70c0e069b0e84c4f8f51aeca1ee278195603c435e606a76a15917ae4a2b35ed5b4ca67e10a00528
DIST TechnitiumLibrary-14.3.0.tar.gz 248994 BLAKE2B 8940b780acd8cbde415b4678d1402f1ffa94330957448b4f378b0bb0687d7dfe771a13266a3c52cf403d01c98ebe76ec1f108b6a32dc5da79b81bf97bd89b678 SHA512 ece05adba2dfeef3aaa0cdcaba77ead3f9a556f584cd50fbb060cbabe5c446c31860a441e451972ba746e6576552fd1a77076e7d1e68d92a18ea8a9624b40634
-DIST TechnitiumLibrary-15.0.0.tar.gz 251682 BLAKE2B a43324da113a8ccece1e458c18b49c3a727d09debebdf79d773ef57b57f6ba7c56dc0e9682bca6ab2811b199ce794d064f02acac55c3493e7654e6a8f011b51f SHA512 ce75ddf1f8d156b53481832385041303a7d803f9bc023f8551346a664df8c6e8af7977348181dbbabcd582d3c53b0846fbee5b2b21ea8ba72206adeda0403170
DIST TechnitiumLibrary-15.0.1.tar.gz 251675 BLAKE2B f82221238fdfb278f084fb17bf503bd6869bd99fca3a387ce621b30de670567fb6d6d4dc94e1621f8124c4e327141146ffa5dedc72356a24633285484980fb61 SHA512 7532ef830afc56749d9b2b944dc0d22eab08fd9a9bcca1bd133f1f510d8127638a7d5bad9dce846347673551c2a50608971afd4cf02051c39b0bb79d828eec9f
+DIST TechnitiumLibrary-15.1.0.tar.gz 251691 BLAKE2B 00c573f7f5c8845bd6898624f2e7aace3e40cd437ea55b9daf52d2264c9dc0c588d92a5b20128af1194b8a1242194f0b832f8c55387998bb0b26331a8aa44e49 SHA512 e88ff13b11e0a004728758b7bf7d964778204474cdd12df2a7dc8117428044fe679bf6db06240cfba438493127f3ae548e53b14f78c6647f4cafd842ac150f9f
DIST bouncycastle.cryptography.2.5.1.nupkg 8231681 BLAKE2B 0e532828def85261e703d09e8a5ef0b86e91e96f7ab5b69ff84a3dc4411c6a71dcdf3c25ba6427311dd4c033aa5058e56f6bc0932c245d9d849ebd44184f14b2 SHA512 cc12d715a7a3acda0e51b6804ae10e1c3e9543009c108485ae6c4ebe8773dee57642f8be291dc2cadcd14a086a0237d925298997ded8a01a4d5a781c7b67ab3d
DIST bouncycastle.cryptography.2.6.2.nupkg 8276422 BLAKE2B fa5c444c773a41eb0ade1f35c3b0df269bb5423c35a90d6fed5b9d6dac7dbc681c6c6763a256553046454f65a68cc06d3e75086fbd6e60aeb52523c97302e080 SHA512 4e1a32f937eebba134f1c6646c0b554edaa1bc41969dec5816d11c3c285906e106377113ea6c1cb0b161749ff08ae8ad39df05956b62abe2274d4b3060f0daef
DIST microsoft.aspnetcore.authentication.openidconnect.10.0.7.nupkg 98901 BLAKE2B b72afd53982a99d231d5b6162bad4e54db3b20134a5339d025ab79a4fb6e35016085f769880db82d7e89699c91ef92534a99f1a72c8a77c212a2ce0baa829949 SHA512 dde72c48f40328d988e33f1fbc37cb381b5f916fdd6d685206fd27b682a305234099ac772ece758d57bf74a3a35e3f7e42b2d22419a1ae370546cbf22027c876
diff --git a/net-dns/technitium-dns/technitium-dns-13.6.ebuild b/net-dns/technitium-dns/technitium-dns-13.6.ebuild
index 24ca2e3660..85057abc80 100644
--- a/net-dns/technitium-dns/technitium-dns-13.6.ebuild
+++ b/net-dns/technitium-dns/technitium-dns-13.6.ebuild
@@ -8,11 +8,12 @@ NUGETS="bouncycastle.cryptography@2.5.1"
inherit dotnet-pkg systemd
MYPV="${PV}.0"
+SRC_URI_BASE="https://github.com/TechnitiumSoftware"
DESCRIPTION="Open-source, self-hosted authoritative and recursive DNS+DHCP server."
HOMEPAGE="https://technitium.com/dns/"
SRC_URI="
- https://github.com/TechnitiumSoftware/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
- https://github.com/TechnitiumSoftware/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
+ $SRC_URI_BASE/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
+ $SRC_URI_BASE/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
${NUGET_URIS}
"
diff --git a/net-dns/technitium-dns/technitium-dns-14.3.ebuild b/net-dns/technitium-dns/technitium-dns-14.3.ebuild
index fd51b482a4..51c7b7855b 100644
--- a/net-dns/technitium-dns/technitium-dns-14.3.ebuild
+++ b/net-dns/technitium-dns/technitium-dns-14.3.ebuild
@@ -13,11 +13,12 @@ system.drawing.common@6.0.0
inherit dotnet-pkg systemd
MYPV="${PV}.0"
+SRC_URI_BASE="https://github.com/TechnitiumSoftware"
DESCRIPTION="Open-source, self-hosted authoritative and recursive DNS+DHCP server."
HOMEPAGE="https://technitium.com/dns/"
SRC_URI="
- https://github.com/TechnitiumSoftware/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
- https://github.com/TechnitiumSoftware/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
+ $SRC_URI_BASE/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
+ $SRC_URI_BASE/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
${NUGET_URIS}
"
diff --git a/net-dns/technitium-dns/technitium-dns-15.0.1.ebuild b/net-dns/technitium-dns/technitium-dns-15.0.1.ebuild
index 77b1e929cf..0c81391a7e 100644
--- a/net-dns/technitium-dns/technitium-dns-15.0.1.ebuild
+++ b/net-dns/technitium-dns/technitium-dns-15.0.1.ebuild
@@ -27,11 +27,12 @@ else
MYPV="${PV}"
fi
+SRC_URI_BASE="https://github.com/TechnitiumSoftware"
DESCRIPTION="Open-source, self-hosted authoritative and recursive DNS+DHCP server."
HOMEPAGE="https://technitium.com/dns/"
SRC_URI="
- https://github.com/TechnitiumSoftware/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
- https://github.com/TechnitiumSoftware/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
+ $SRC_URI_BASE/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
+ $SRC_URI_BASE/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
${NUGET_URIS}
"
diff --git a/net-dns/technitium-dns/technitium-dns-15.0.ebuild b/net-dns/technitium-dns/technitium-dns-15.1.ebuild
similarity index 92%
rename from net-dns/technitium-dns/technitium-dns-15.0.ebuild
rename to net-dns/technitium-dns/technitium-dns-15.1.ebuild
index 7ab53eabdb..f8707bde47 100644
--- a/net-dns/technitium-dns/technitium-dns-15.0.ebuild
+++ b/net-dns/technitium-dns/technitium-dns-15.1.ebuild
@@ -21,11 +21,12 @@ system.identitymodel.tokens.jwt@8.0.1
inherit dotnet-pkg systemd
MYPV="${PV}.0"
+SRC_URI_BASE="https://github.com/TechnitiumSoftware"
DESCRIPTION="Open-source, self-hosted authoritative and recursive DNS+DHCP server."
HOMEPAGE="https://technitium.com/dns/"
SRC_URI="
- https://github.com/TechnitiumSoftware/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
- https://github.com/TechnitiumSoftware/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
+ $SRC_URI_BASE/DnsServer/archive/refs/tags/v${MYPV}.tar.gz -> TechnitiumDnsServer-${MYPV}.tar.gz
+ $SRC_URI_BASE/TechnitiumLibrary/archive/refs/tags/dns-server-v${MYPV}.tar.gz -> TechnitiumLibrary-${MYPV}.tar.gz
${NUGET_URIS}
"
diff --git a/net-misc/wstunnel/Manifest b/net-misc/wstunnel/Manifest
index a6ec01e71f..4b6e8f6612 100644
--- a/net-misc/wstunnel/Manifest
+++ b/net-misc/wstunnel/Manifest
@@ -2,3 +2,5 @@ DIST wstunnel-10.5.2-crates.tar.xz 32393352 BLAKE2B 395f11a1af48a2bdc18593fd4b6c
DIST wstunnel-10.5.2.tar.gz 1721076 BLAKE2B 8bcc814022ca6f7dcb34872eaf3e3e46e2d67c905b0aba9e8b91caca6e87b83c6995455da8b5e162b679fde6b1a3c557d105ceb1b652f5b75e117030868b9abf SHA512 c2a0dc10e137a814c8c3ddb1cc11d7f3638aa3c688935d0ab8bd04c0dc488014a6e57dbdf6c1e6634f2ff86d8c6cb2bfeb1f71e6551e96b433444f22ecf53a35
DIST wstunnel-10.5.3-crates.tar.xz 30955744 BLAKE2B 378bc499774a7e0d4f1cfd3f07094a0d2dc41f2b9a52b2297ae1d0797db61c2808686978d8a8bf98f3f3ca5a6c724dd7c0bb6113161980e02f2de0d0113f692f SHA512 8f6ace449b4009e7c63eb8dedd5d5314e15ba0e53b644e9792783f9dc25b45f0852ea4d334f44da4bb947f596d4ec15abf6179a4d41f26b4a872124b78aa6858
DIST wstunnel-10.5.3.tar.gz 1721587 BLAKE2B 401154e2292f341af949ac4dbbf820fc60725389267bc0e76057d9484eaecc543af6860e99893edc4a87fdf093cc4a5b497aab6bdcd87b7e3f28f5be2bf684d8 SHA512 f9dfba07edb8a664e8d80b7cf48ff18a9d5789ec5137663cea43aaf8d3532850cc88fc7ffe77c2533f13701903371595a2606e3c8303bcf35b53ba47b992b6af
+DIST wstunnel-10.5.4-crates.tar.xz 30799680 BLAKE2B aeebc368250e7dc1d460f1fa68f477e977b4ba72dc2d7e64831e5c68e4ec0fd21f8f1a01b25a2f88028954eab9806cf84184e93c4bddf8c7cd9232c623d1d535 SHA512 12c5e43a720d952ed2e2869417846ae4a246ff519bbf606f9aa84619bec73039f87bf2a1133ae505114cb4f8887bc46f5c947279e7cae505c8efe959f5999972
+DIST wstunnel-10.5.4.tar.gz 1721726 BLAKE2B 90518e24e3db5d18d8a1a10193b48667b0320a4f42752ea3eb7d47990ce2964acd3f86c0b2cee9cb79067e595c628138b01f740613197d0d3ca2bb1084cba1fa SHA512 8bff57a79deea6d46a893ac6c613b859678a52bbb8fb73427e03e985ab2f7d608fae8a3ea67365e1a6e3a15ba0604ddecd4f3b40f47e08ece3fcf9893f8e7a11
diff --git a/net-misc/wstunnel/files/wstunnel-10.5.4-fix_tests.patch b/net-misc/wstunnel/files/wstunnel-10.5.4-fix_tests.patch
new file mode 100644
index 0000000000..8ead940639
--- /dev/null
+++ b/net-misc/wstunnel/files/wstunnel-10.5.4-fix_tests.patch
@@ -0,0 +1,18 @@
+backport https://github.com/erebe/wstunnel/commit/41fed82.patch
+fix testsuite
+see https://github.com/erebe/wstunnel/issues/503
+--- a/wstunnel/src/test_integrations.rs
++++ b/wstunnel/src/test_integrations.rs
+@@ -25,6 +25,12 @@ use url::Host;
+
+ #[fixture]
+ fn dns_resolver() -> DnsResolver {
++ if tokio_rustls::rustls::crypto::aws_lc_rs::default_provider()
++ .install_default()
++ .is_err()
++ {
++ let _ = tokio_rustls::rustls::crypto::ring::default_provider().install_default();
++ }
+ DnsResolver::new_from_urls(&[], None, SoMark::new(None), true).expect("Cannot create DNS resolver")
+ }
+
diff --git a/net-misc/wstunnel/wstunnel-10.5.4.ebuild b/net-misc/wstunnel/wstunnel-10.5.4.ebuild
new file mode 100644
index 0000000000..c00da50c43
--- /dev/null
+++ b/net-misc/wstunnel/wstunnel-10.5.4.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+RUST_MIN_VER="1.88.0"
+
+inherit cargo
+
+DESCRIPTION="Tunnel all your traffic over Websocket or HTTP2 - Bypass firewalls/DPI"
+HOMEPAGE="https://github.com/erebe/wstunnel/"
+SRC_URI="https://github.com/erebe/wstunnel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://raw.githubusercontent.com/PPN-SD/vendor/refs/tags/${P}/${P}-crates.tar.xz"
+
+LICENSE="BSD"
+# Autogenerated by pycargoebuild
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD CC0-1.0 ISC MIT openssl Unicode-3.0 ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix_tests.patch
+)
+
+QA_FLAGS_IGNORED="usr/bin/wstunnel"
+
+pkg_setup() {
+ # see bug #965963
+ export CARGO_PROFILE_RELEASE_LTO=off
+
+ rust_pkg_setup
+}
+
+src_compile() {
+ cargo_src_compile --package wstunnel-cli
+}
+
+src_test() {
+ local CARGO_SKIP_TESTS=(
+ # needs docker
+ tests::test_proxy_connection
+ )
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cargo_src_install --path wstunnel-cli
+ local DOCS+=( README.md docs/*.md )
+ einstalldocs
+}
diff --git a/profiles/package.mask b/profiles/package.mask
index c0a21b1a55..82bbadb87e 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -50,13 +50,6 @@ dev-python/itemadapter
# revdep of itemadapter
dev-python/itemloaders
-# David Roman (2026-04-07)
-# Requires (2026-03-31)
# Replaced by sys-fs/bcachefs-tools[modules] in ::gentoo.
sys-fs/bcachefs-kmod
diff --git a/www-apps/pleroma/Manifest b/www-apps/pleroma/Manifest
index 9235d98a77..7dfd54c795 100644
--- a/www-apps/pleroma/Manifest
+++ b/www-apps/pleroma/Manifest
@@ -1 +1 @@
-DIST pleroma-2.10.0.tar.gz 33938786 BLAKE2B f28d1bf862577b0840eb2c29d29b4ef21017d4e2dce9acb9c34850075beca18f219588b2847078e4ec48bf83cd8307876da1d7033d7baabcab73ea78ae950f0b SHA512 effb4d4f08c102bab233ed363bd17d8883a78f667f49f44189e0dd5d43854631e23a826f8b9c3da8603f3bdf91110ee4922295e276d40e83c537ff0fb910c292
+DIST pleroma-2.10.2.tar.gz 33962686 BLAKE2B 346a4a0be470958a7fe42e9081b539d1dee0237023ceef38be48cb7ad115daea6a390fa30600506e3c4c8bc6259f16afcc5c16c4c9fb367f56c5b32396611ac8 SHA512 1742df8e87ff5c12a029c5c7510ad60aa480d02bb8af9f5e9b53cda14dd35ce4581bcc2dcb5d2166b32cd66019d42dfc9a4391ba998e73255fe956419f1f048d
diff --git a/www-apps/pleroma/pleroma-2.10.0-r1.ebuild b/www-apps/pleroma/pleroma-2.10.2.ebuild
similarity index 97%
rename from www-apps/pleroma/pleroma-2.10.0-r1.ebuild
rename to www-apps/pleroma/pleroma-2.10.2.ebuild
index 3a1a8043b0..ea7f529258 100644
--- a/www-apps/pleroma/pleroma-2.10.0-r1.ebuild
+++ b/www-apps/pleroma/pleroma-2.10.2.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit mix optfeature flag-o-matic
+inherit mix optfeature flag-o-matic toolchain-funcs
DESCRIPTION="ActivityPub social networking software compatible with other Fediverse software"
HOMEPAGE="https://pleroma.social/"
@@ -53,7 +53,6 @@ src_unpack() {
[[ "${PV}" == *9999 ]] && git-r3_src_unpack
cd "${S}" || die
- eapply "${FILESDIR}/pleroma-2.10.0-vix_bump.patch"
emix deps.get --only prod
}
@@ -78,15 +77,17 @@ src_prepare() {
echo 'config :tzdata, :data_dir, "/var/lib/pleroma/tzdata"' >> config/prod.exs || die
echo "import Config" > config/prod.secret.exs || die
-
- # Needs -fPIC under glibc for exile library
- # https://bugs.gentoo.org/937130
- append-flags -fPIC
}
src_compile() {
mkdir -p pleroma || die
+ tc-export CC
+
+ # Needs -fPIC under glibc for exile library
+ # https://bugs.gentoo.org/937130
+ append-flags -fPIC
+
use system-vips && export VIX_COMPILATION_MODE="PLATFORM_PROVIDED_LIBVIPS"
use system-lexbor && export WITH_SYSTEM_LEXBOR=1
diff --git a/www-apps/pleroma/pleroma-9999.ebuild b/www-apps/pleroma/pleroma-9999.ebuild
index db5c961d68..ea7f529258 100644
--- a/www-apps/pleroma/pleroma-9999.ebuild
+++ b/www-apps/pleroma/pleroma-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 2022-2024 Haelwenn (lanodan) Monnier
+# Copyright 2022-2026 Haelwenn (lanodan) Monnier
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit mix optfeature flag-o-matic
+inherit mix optfeature flag-o-matic toolchain-funcs
DESCRIPTION="ActivityPub social networking software compatible with other Fediverse software"
HOMEPAGE="https://pleroma.social/"
@@ -18,7 +18,7 @@ fi
LICENSE="AGPL-3 CC-BY-SA-4.0 CC-BY-4.0"
SLOT="otp"
-IUSE="+system-lexbor"
+IUSE="+system-lexbor +system-vips"
# Requires network access (https) as long as elixir dependencies aren't packaged
# said dependencies have their checksum verified via `mix.lock`
@@ -35,10 +35,10 @@ BDEPEND="
"
DEPEND="
dev-libs/glib
- media-libs/vips:=
sys-apps/file
sys-libs/ncurses:=
system-lexbor? ( dev-libs/lexbor )
+ system-vips? ( media-libs/vips:= )
"
RDEPEND="
${DEPEND}
@@ -77,16 +77,18 @@ src_prepare() {
echo 'config :tzdata, :data_dir, "/var/lib/pleroma/tzdata"' >> config/prod.exs || die
echo "import Config" > config/prod.secret.exs || die
-
- # Needs -fPIC under glibc for exile library
- # https://bugs.gentoo.org/937130
- append-flags -fPIC
}
src_compile() {
mkdir -p pleroma || die
- export VIX_COMPILATION_MODE="PLATFORM_PROVIDED_LIBVIPS"
+ tc-export CC
+
+ # Needs -fPIC under glibc for exile library
+ # https://bugs.gentoo.org/937130
+ append-flags -fPIC
+
+ use system-vips && export VIX_COMPILATION_MODE="PLATFORM_PROVIDED_LIBVIPS"
use system-lexbor && export WITH_SYSTEM_LEXBOR=1
@@ -103,7 +105,12 @@ src_install() {
doinitd ./pleroma/installation/init.d/pleroma
+ # Generated by Elixir, see lib/mix/lib/mix/tasks/release.init.ex
+ # Real executable needs to be in /opt/pleroma/bin due to usage of readlink to guess install path
dosym /opt/pleroma/bin/pleroma /usr/bin/pleroma
+
+ # Technically could be with regular binaries via dobin,
+ # but useless without the pleroma command, which has restricted access
dosym /opt/pleroma/bin/pleroma_ctl /usr/bin/pleroma_ctl
# This file controls console access
@@ -118,6 +125,7 @@ src_install() {
fperms 0750 /var/lib/pleroma
fowners pleroma:pleroma /var/lib/pleroma
+ # So that www-apps/pleroma-fe (optional) doesn't ends up creating namespace conflicts
dosym /opt/pleroma-fe/dist /var/lib/pleroma/static/frontends/pleroma-fe/gentoo
}
diff --git a/www-client/zen-bin/Manifest b/www-client/zen-bin/Manifest
index 730a9230c8..3969014c08 100644
--- a/www-client/zen-bin/Manifest
+++ b/www-client/zen-bin/Manifest
@@ -1,4 +1,4 @@
DIST zen-bin-1.18.10b-amd64.tar.xz 86222180 BLAKE2B 49ef1111568b7810430b3c28ff337dc457b380110375c957f3eb7312aaf838acb4e766c3bbae30b875df6b566a2c1770d68dd1d6948a1478a24ab959d4a5d72b SHA512 347b228e20393c88cf98a53c61dfb8c0a28b3775ded17498dc4098bbea4cccd7cbd651d166fb8b40a108ef4f5732e568d570f14091e50e361d021b42441dffb4
DIST zen-bin-1.18.10b-arm64.tar.xz 74157712 BLAKE2B 0b858c843f83a3c482dbbc3cfd08abab7876f6e05804471aeb4cbb32fbdd3969ac4f53546fe1acd3d9c6db68eaa007b28944ee14163ffc76d3293e66d5069c51 SHA512 d00e12475debadd922ac9e66fbd681613612b153c15a6d64460d27d1e8d21ac32f72f224ddb4375d21ce1560a0424b98a991be272c9cc0c2d0312d10d37170e2
-DIST zen-bin-1.19.10b-amd64.tar.xz 89989564 BLAKE2B 0c1ab2bec4343986faa3432716765b608e2b84d4031b596f469cfab9d0d8b71081552d0fc42187abe478585236f216c94fe72ee3af9885832049ea37b2b4538a SHA512 d725bcfed55fca30db9cba8c55f5dafbbbe670341967635064874b3abeaa4b731c3cd9d89a911196f199d77cbeada33ff3ad9ffa493871e7cf58edbad8a045a9
-DIST zen-bin-1.19.10b-arm64.tar.xz 76708504 BLAKE2B 3ec4c5359fb3562632a835f6a7bac77215151814b3e9d88bfa2ad5a09dd5fc5b15ecf79bbd10acb453ad12eb0a3a7b82dc6d33f305a5bc98d4b891178a0b2452 SHA512 a52238501f420283dc669c614c918737d121d7c7a69c3968c8b0a0709375d920af20cf7e8762903d6ab0add5e998a216f47803cfbc0f370dbb15c00c20065493
+DIST zen-bin-1.19.11b-amd64.tar.xz 89908016 BLAKE2B 4502e8ee4f8a067d039e951a27ba17882644a76b3f9523dc64d5b188f5ddb89c501767c00ea21d246efe8e3b1d34fd86f6d6824ed3f9597b9b67e02809e64646 SHA512 b45dc93ec18979bbf318e215b95589b43aa06e14caae7dca1f39ab1955d71ebbd3ad97a532a6a3fae2b2672826c617d9947854282801b5bb2ce05c25aabdd612
+DIST zen-bin-1.19.11b-arm64.tar.xz 76763912 BLAKE2B 3999c93f58994229e45363cf707ed3d460eeb05aac259b3cbd59c671726e3c680aebc95d1dfb938ab008cab3ab1087c3ce78c2303708519db2295ff3fca5a0e6 SHA512 be717572f293fa3469567d23493d13c30e94038612bc9e481df3e6a11db709982c9ced38be8acd84bdd206ad543d49b3cdd2dfee848c54d498885614c30b8aac
diff --git a/www-client/zen-bin/zen-bin-1.19.10b.ebuild b/www-client/zen-bin/zen-bin-1.19.11b.ebuild
similarity index 100%
rename from www-client/zen-bin/zen-bin-1.19.10b.ebuild
rename to www-client/zen-bin/zen-bin-1.19.11b.ebuild