summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCrucible <crucible@localhost>2026-10-21 17:46:18 -0500
committerCrucible <crucible@localhost>2026-10-21 17:46:18 -0500
commitdd7c7f0914b2eb83ac283441de30766578426392 (patch)
tree70f6a0ebb66404cccfe9f4dea292bf5482cda401
parent7f39132ab3dd3cb51fa99aabd48800725855dfbb (diff)
downloadsrcux-dd7c7f0914b2eb83ac283441de30766578426392.tar.gz
srcux-dd7c7f0914b2eb83ac283441de30766578426392.tar.xz
srcux-dd7c7f0914b2eb83ac283441de30766578426392.zip
Publish srcux candidate 0000000776-20261021-173123
-rw-r--r--acct-group/sddm/sddm-0-r1.ebuild2
-rw-r--r--acct-user/postdrop/metadata.xml9
-rw-r--r--acct-user/postdrop/postdrop-0.ebuild12
-rw-r--r--acct-user/sddm/sddm-0-r1.ebuild2
-rw-r--r--app-admin/exo/Manifest2
-rw-r--r--app-admin/exo/exo-1.103.2.ebuild (renamed from app-admin/exo/exo-1.94.0.ebuild)3
-rw-r--r--app-arch/7zip/7zip-26.05.ebuild119
-rw-r--r--app-arch/7zip/Manifest2
-rw-r--r--app-arch/brotli/Manifest4
-rw-r--r--app-arch/brotli/brotli-1.0.9-r6.ebuild101
-rw-r--r--app-arch/brotli/brotli-1.1.0.ebuild93
-rw-r--r--app-arch/brotli/brotli-1.2.0-r2.ebuild (renamed from app-arch/brotli/brotli-1.2.0-r1.ebuild)5
-rw-r--r--app-arch/brotli/brotli-1.2.1.ebuild (renamed from app-arch/brotli/brotli-1.2.0.ebuild)13
-rw-r--r--app-arch/brotli/files/brotli-1.2.0-detect-invalid-stream.patch220
-rw-r--r--app-containers/incus/incus-7.0.2.ebuild56
-rw-r--r--app-containers/incus/incus-7.3-r1.ebuild21
-rw-r--r--app-containers/incus/incus-7.4-r1.ebuild21
-rw-r--r--app-containers/incus/incus-7.5.1.ebuild21
-rw-r--r--app-containers/incus/incus-9999.ebuild21
-rw-r--r--app-crypt/certbot-dns-poweradmin/Manifest2
-rw-r--r--app-crypt/certbot-dns-poweradmin/certbot-dns-poweradmin-0.2.7.ebuild (renamed from app-crypt/certbot-dns-poweradmin/certbot-dns-poweradmin-0.2.5.ebuild)0
-rw-r--r--app-doc/python-docs/Manifest3
-rw-r--r--app-doc/python-docs/python-docs-3.13.17.ebuild24
-rw-r--r--app-doc/python-docs/python-docs-3.14.9.ebuild24
-rw-r--r--app-doc/python-docs/python-docs-3.15.1.ebuild24
-rw-r--r--app-editors/vscode/Manifest3
-rw-r--r--app-editors/vscode/vscode-1.143.0.ebuild161
-rw-r--r--app-editors/zed/zed-1.15.0.ebuild2
-rw-r--r--app-emacs/nxml-gentoo-schemas/Manifest1
-rw-r--r--app-emacs/nxml-gentoo-schemas/nxml-gentoo-schemas-20260901.ebuild24
-rw-r--r--app-text/texlive-core/texlive-core-2023-r11.ebuild521
-rw-r--r--app-text/texlive-core/texlive-core-2024-r3.ebuild527
-rw-r--r--app-text/texlive-core/texlive-core-2026-r1.ebuild (renamed from app-text/texlive-core/texlive-core-2026.ebuild)12
-rw-r--r--dev-db/duckdb/Manifest2
-rw-r--r--dev-db/duckdb/duckdb-2.0.0.ebuild (renamed from dev-db/duckdb/duckdb-1.5.5.ebuild)0
-rw-r--r--dev-db/postgis/Manifest2
-rw-r--r--dev-db/postgis/postgis-3.7.0_rc3.ebuild (renamed from dev-db/postgis/postgis-3.7.0_rc1.ebuild)0
-rw-r--r--dev-java/automaton/Manifest1
-rw-r--r--dev-java/automaton/automaton-1.12.4.ebuild42
-rw-r--r--dev-java/automaton/metadata.xml9
-rw-r--r--dev-java/axmlprinter2/Manifest1
-rw-r--r--dev-java/axmlprinter2/axmlprinter2-1.0.ebuild24
-rw-r--r--dev-java/axmlprinter2/metadata.xml9
-rw-r--r--dev-java/permit-reflect/Manifest1
-rw-r--r--dev-java/permit-reflect/metadata.xml9
-rw-r--r--dev-java/permit-reflect/permit-reflect-0.4.ebuild23
-rw-r--r--dev-java/scala-cli-bin/Manifest6
-rw-r--r--dev-java/scala-cli-bin/scala-cli-bin-1.18.0.ebuild (renamed from dev-java/scala-cli-bin/scala-cli-bin-1.10.1.ebuild)2
-rw-r--r--dev-java/yajsw/Manifest1
-rw-r--r--dev-java/yajsw/files/yajsw-14.01-build-fixes.patch42
-rw-r--r--dev-java/yajsw/files/yajsw-14.01-javadoc.patch15
-rw-r--r--dev-java/yajsw/files/yajsw-14.01-keystore.patch13
-rw-r--r--dev-java/yajsw/files/yajsw-14.01-paths.patch37
-rw-r--r--dev-java/yajsw/files/yajsw-14.01-system-libs.patch112
-rw-r--r--dev-java/yajsw/files/yajsw-14.01-system-native.patch26
-rw-r--r--dev-java/yajsw/metadata.xml15
-rw-r--r--dev-java/yajsw/yajsw-14.01.ebuild151
-rw-r--r--dev-lang/deno-bin/Manifest8
-rw-r--r--dev-lang/deno-bin/deno-bin-2.9.6.ebuild63
-rw-r--r--dev-lang/deno-bin/deno-bin-2.9.7.ebuild63
-rw-r--r--dev-lang/deno-bin/deno-bin-2.9.8.ebuild (renamed from dev-lang/deno-bin/deno-bin-2.8.3.ebuild)2
-rw-r--r--dev-lang/go/files/go-1.25-vdso-test-clock_gettime64.patch66
-rw-r--r--dev-lang/go/go-1.25.13.ebuild1
-rw-r--r--dev-lang/go/go-1.25.14.ebuild1
-rw-r--r--dev-lang/go/go-1.26.10.ebuild3
-rw-r--r--dev-lang/go/go-1.26.7.ebuild1
-rw-r--r--dev-lang/go/go-1.26.9.ebuild1
-rw-r--r--dev-lang/go/go-1.27.3.ebuild2
-rw-r--r--dev-lang/php/Manifest10
-rw-r--r--dev-lang/php/php-8.2.34.ebuild911
-rw-r--r--dev-lang/php/php-8.2.35.ebuild (renamed from dev-lang/php/php-8.2.33.ebuild)3
-rw-r--r--dev-lang/php/php-8.3.35.ebuild825
-rw-r--r--dev-lang/php/php-8.3.36.ebuild (renamed from dev-lang/php/php-8.3.33.ebuild)3
-rw-r--r--dev-lang/php/php-8.4.27.ebuild (renamed from dev-lang/php/php-8.4.26.ebuild)0
-rw-r--r--dev-lang/php/php-8.5.12.ebuild (renamed from dev-lang/php/php-8.5.11.ebuild)0
-rw-r--r--dev-lang/python/Manifest9
-rw-r--r--dev-lang/python/python-0.3.14.9.ebuild625
-rw-r--r--dev-lang/python/python-0.3.15.1.ebuild665
-rw-r--r--dev-lang/python/python-3.13.17.ebuild616
-rw-r--r--dev-lang/python/python-3.14.9.ebuild636
-rw-r--r--dev-lang/python/python-3.15.1.ebuild670
-rw-r--r--dev-libs/kdsingleapplication/kdsingleapplication-1.2.1.ebuild2
-rw-r--r--dev-ml/spdx_licenses/Manifest2
-rw-r--r--dev-ml/spdx_licenses/spdx_licenses-1.6.0.ebuild (renamed from dev-ml/spdx_licenses/spdx_licenses-1.2.0.ebuild)2
-rw-r--r--dev-php/PEAR-PEAR/Manifest1
-rw-r--r--dev-php/PEAR-PEAR/PEAR-PEAR-1.10.16.ebuild174
-rw-r--r--dev-php/PEAR-PEAR/PEAR-PEAR-1.10.18.ebuild2
-rw-r--r--dev-php/PHPMailer/Manifest2
-rw-r--r--dev-php/PHPMailer/PHPMailer-7.1.1.ebuild (renamed from dev-php/PHPMailer/PHPMailer-6.9.1.ebuild)9
-rw-r--r--dev-php/adodb/Manifest1
-rw-r--r--dev-php/adodb/adodb-5.22.12.ebuild39
-rw-r--r--dev-php/adodb/metadata.xml4
-rw-r--r--dev-php/smarty/Manifest1
-rw-r--r--dev-php/smarty/smarty-5.8.5.ebuild56
-rw-r--r--dev-python/isort/Manifest3
-rw-r--r--dev-python/isort/isort-8.0.1.ebuild73
-rw-r--r--dev-python/isort/isort-9.0.1-r1.ebuild (renamed from dev-python/isort/isort-9.0.1.ebuild)4
-rw-r--r--dev-python/isort/isort-9.0.2-r1.ebuild (renamed from dev-python/isort/isort-9.0.0.ebuild)4
-rw-r--r--dev-python/isort/isort-9.0.2.ebuild69
-rw-r--r--dev-python/jpype/Manifest2
-rw-r--r--dev-python/jpype/files/jpype-1.7.1-jar-location.patch36
-rw-r--r--dev-python/jpype/files/jpype-1.7.1-java-release.patch32
-rw-r--r--dev-python/jpype/jpype-1.6.0.ebuild24
-rw-r--r--dev-python/jpype/jpype-1.7.1.ebuild60
-rw-r--r--dev-python/jpype/metadata.xml4
-rw-r--r--dev-python/mistune/mistune-3.4.0.ebuild4
-rw-r--r--dev-python/packaging/packaging-26.3.ebuild3
-rw-r--r--dev-python/python-tests/Manifest9
-rw-r--r--dev-python/python-tests/python-tests-0.3.14.9.ebuild75
-rw-r--r--dev-python/python-tests/python-tests-0.3.15.1.ebuild75
-rw-r--r--dev-python/python-tests/python-tests-3.13.17.ebuild71
-rw-r--r--dev-python/python-tests/python-tests-3.14.9.ebuild74
-rw-r--r--dev-python/python-tests/python-tests-3.15.1.ebuild74
-rw-r--r--dev-python/uv-build/Manifest8
-rw-r--r--dev-python/uv-build/uv-build-0.11.25.ebuild99
-rw-r--r--dev-python/uv-build/uv-build-0.12.13.ebuild100
-rw-r--r--dev-python/uv-build/uv-build-0.12.19.ebuild100
-rw-r--r--dev-python/uv-build/uv-build-0.12.23.ebuild100
-rw-r--r--dev-python/uv-build/uv-build-0.12.7.ebuild100
-rw-r--r--dev-python/uv-build/uv-build-0.12.9.ebuild100
-rw-r--r--dev-python/uv-build/uv-build-0.13.1.ebuild100
-rw-r--r--dev-python/uv-build/uv-build-0.13.3.ebuild100
-rw-r--r--dev-python/uv-build/uv-build-0.13.4.ebuild2
-rw-r--r--dev-python/uv/Manifest16
-rw-r--r--dev-python/uv/uv-0.11.25.ebuild163
-rw-r--r--dev-python/uv/uv-0.12.13.ebuild151
-rw-r--r--dev-python/uv/uv-0.12.17-r1.ebuild (renamed from dev-python/uv/uv-0.12.17.ebuild)5
-rw-r--r--dev-python/uv/uv-0.12.19.ebuild151
-rw-r--r--dev-python/uv/uv-0.12.23.ebuild151
-rw-r--r--dev-python/uv/uv-0.12.7.ebuild151
-rw-r--r--dev-python/uv/uv-0.12.9.ebuild151
-rw-r--r--dev-python/uv/uv-0.13.1.ebuild151
-rw-r--r--dev-python/uv/uv-0.13.4-r1.ebuild (renamed from dev-python/uv/uv-0.13.3.ebuild)7
-rw-r--r--dev-python/uv/uv-0.13.4.ebuild156
-rw-r--r--dev-python/uv/uv-9999.ebuild5
-rw-r--r--dev-qt/qtwebengine/files/qtwebengine-6.11.2-CVE-2026-111943.patch44
-rw-r--r--dev-qt/qtwebengine/files/qtwebengine-6.11.2-QTBUG-149946.patch21
-rw-r--r--dev-qt/qtwebengine/qtwebengine-6.11.2-r1.ebuild (renamed from dev-qt/qtwebengine/qtwebengine-6.11.2.ebuild)2
-rw-r--r--dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild1
-rw-r--r--dev-qt/qtwebengine/qtwebengine-6.140.9999.ebuild1
-rw-r--r--dev-qt/qtwebengine/qtwebengine-6.9999.ebuild1
-rw-r--r--dev-texlive/texlive-binextra/texlive-binextra-2026_p77772-r1.ebuild (renamed from dev-texlive/texlive-binextra/texlive-binextra-2026_p77772.ebuild)5
-rw-r--r--dev-util/codex/Manifest8
-rw-r--r--dev-util/codex/README.md19
-rw-r--r--dev-util/codex/codex-0.163.0.ebuild213
-rw-r--r--dev-util/gammaray/Manifest2
-rw-r--r--dev-util/gammaray/gammaray-3.4.0-r1.ebuild4
-rw-r--r--dev-util/gammaray/gammaray-3.4.0.ebuild146
-rw-r--r--dev-util/gammaray/gammaray-3.4.1.ebuild (renamed from dev-util/gammaray/gammaray-3.3.1.ebuild)19
-rw-r--r--dev-util/go-task/go-task-3.54.0.ebuild2
-rw-r--r--dev-util/opencode-bin/Manifest2
-rw-r--r--dev-util/opencode-bin/opencode-bin-2.1.1.ebuild31
-rw-r--r--dev-util/pixi/Manifest7
-rw-r--r--dev-util/pixi/pixi-0.81.0.ebuild163
-rw-r--r--dev-util/pixi/pixi-0.82.1.ebuild (renamed from dev-util/pixi/pixi-0.82.0.ebuild)3
-rw-r--r--dev-util/tinyxxd/files/tinyxxd-1.3.17-default-fixes.patch6
-rw-r--r--dev-util/tinyxxd/files/tinyxxd-da64dbf542cc27ba614e45fcaf82955fa4643d16-default-fixes.patch6
-rw-r--r--dev-vcs/lazygit/lazygit-0.66.2-r1.ebuild (renamed from dev-vcs/lazygit/lazygit-0.66.2.ebuild)2
-rw-r--r--eclass/llvm.org.eclass3
-rw-r--r--games-simulation/kittenspaceagency-bin/Manifest2
-rw-r--r--games-simulation/kittenspaceagency-bin/files/kittenspaceagency9
-rw-r--r--games-simulation/kittenspaceagency-bin/kittenspaceagency-bin-2026.10.19-r5638.ebuild (renamed from games-simulation/kittenspaceagency-bin/kittenspaceagency-bin-2026.10.13-r5602.ebuild)9
-rw-r--r--gnome-base/gnome-session/gnome-session-49.3.ebuild2
-rw-r--r--gui-apps/lan-mouse/Manifest229
-rw-r--r--gui-apps/lan-mouse/lan-mouse-0.11.0.ebuild484
-rw-r--r--gui-apps/noctalia-greeter/Manifest5
-rw-r--r--gui-apps/noctalia-greeter/noctalia-greeter-1.2.1.ebuild73
-rw-r--r--gui-apps/noctalia-greeter/noctalia-greeter-1.3.0.ebuild73
-rw-r--r--gui-apps/noctalia-greeter/noctalia-greeter-1.3.1.ebuild73
-rw-r--r--gui-apps/noctalia-greeter/noctalia-greeter-1.6.0.ebuild8
-rw-r--r--gui-apps/noctalia-greeter/noctalia-greeter-1.7.0.ebuild (renamed from gui-apps/noctalia-greeter/noctalia-greeter-1.5.0.ebuild)9
-rw-r--r--gui-apps/noctalia-greeter/noctalia-greeter-9999.ebuild10
-rw-r--r--gui-apps/sddm-conf/sddm-conf-0.3.0.ebuild2
-rw-r--r--gui-apps/sddm-conf/sddm-conf-0.4.1.ebuild2
-rw-r--r--gui-apps/sddm-gentoo-config/sddm-gentoo-config-0-r1.ebuild2
-rw-r--r--gui-apps/sddm-gentoo-config/sddm-gentoo-config-0.ebuild2
-rw-r--r--gui-apps/sddm/Manifest2
-rw-r--r--gui-apps/sddm/files/sddm-0.20.0-respect-user-flags.patch (renamed from x11-misc/sddm/files/sddm-0.20.0-respect-user-flags.patch)0
-rw-r--r--gui-apps/sddm/files/sddm-0.21.0_p20250310-Xsession-xinitrc.patch (renamed from x11-misc/sddm/files/sddm-0.21.0_p20250310-Xsession-xinitrc.patch)0
-rw-r--r--gui-apps/sddm/files/sddm-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch (renamed from x11-misc/sddm/files/sddm-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch)0
-rw-r--r--gui-apps/sddm/files/sddm-0.21.0_p20251101-cmake-minreqver-3.16.patch (renamed from x11-misc/sddm/files/sddm-0.21.0_p20251101-cmake-minreqver-3.16.patch)0
-rw-r--r--gui-apps/sddm/files/sddm-0.21.0_p20251101-fix-restart-greeter.patch (renamed from x11-misc/sddm/files/sddm-0.21.0_p20251101-fix-restart-greeter.patch)0
-rw-r--r--gui-apps/sddm/files/sddm-0.21.0_p20251101-fix-terminal-clearing.patch (renamed from x11-misc/sddm/files/sddm-0.21.0_p20251101-fix-terminal-clearing.patch)0
-rw-r--r--gui-apps/sddm/files/sddm-0.21.0_p20260819-dont-request-vt-signal-delivery.patch (renamed from x11-misc/sddm/files/sddm-0.21.0_p20260819-dont-request-vt-signal-delivery.patch)0
-rw-r--r--gui-apps/sddm/files/sddm-0.21.0_p20260819-honor-PAM-supplemental-groups-v2.patch (renamed from x11-misc/sddm/files/sddm-0.21.0_p20260819-honor-PAM-supplemental-groups-v2.patch)0
-rw-r--r--gui-apps/sddm/files/sddm.logrotate (renamed from x11-misc/sddm/files/sddm.logrotate)0
-rw-r--r--gui-apps/sddm/metadata.xml (renamed from x11-misc/sddm/metadata.xml)0
-rw-r--r--gui-apps/sddm/sddm-0.21.0_p20260819-r1.ebuild (renamed from x11-misc/sddm/sddm-0.21.0_p20260819-r1.ebuild)0
-rw-r--r--kde-apps/yakuake/metadata.xml3
-rw-r--r--kde-apps/yakuake/yakuake-26.04.3.ebuild6
-rw-r--r--kde-frameworks/baloo/baloo-6.31.0-r1.ebuild (renamed from kde-frameworks/baloo/baloo-6.31.0.ebuild)2
-rw-r--r--kde-frameworks/baloo/files/baloo-6.31.0-do-not-start-service-too-early.patch30
-rw-r--r--kde-plasma/plasma-meta/metadata.xml2
-rw-r--r--kde-plasma/plasma-meta/plasma-meta-6.7.5.ebuild2
-rw-r--r--kde-plasma/plasma-meta/plasma-meta-6.8.1.ebuild2
-rw-r--r--kde-plasma/sddm-kcm/sddm-kcm-6.7.5.ebuild2
-rw-r--r--kde-plasma/sddm-kcm/sddm-kcm-6.8.1.ebuild2
-rw-r--r--llvm-core/clang/Manifest1
-rw-r--r--llvm-core/llvm/Manifest1
-rw-r--r--lxqt-base/lxqt-meta/lxqt-meta-2.4.0.ebuild4
-rw-r--r--lxqt-base/lxqt-meta/metadata.xml2
-rw-r--r--mail-client/thunderbird-bin/Manifest130
-rw-r--r--mail-client/thunderbird-bin/thunderbird-bin-153.5.1.ebuild283
-rw-r--r--mail-client/thunderbird-bin/thunderbird-bin-158.0.1.ebuild283
-rw-r--r--mail-client/thunderbird-l10n/Manifest126
-rw-r--r--mail-client/thunderbird-l10n/thunderbird-l10n-153.5.1.ebuild145
-rw-r--r--mail-client/thunderbird-l10n/thunderbird-l10n-158.0.1.ebuild145
-rw-r--r--mail-client/thunderbird/Manifest2
-rw-r--r--mail-client/thunderbird/thunderbird-153.5.1.ebuild1112
-rw-r--r--mail-client/thunderbird/thunderbird-158.0.1.ebuild1123
-rw-r--r--mail-filter/maildrop/maildrop-3.3.0.ebuild2
-rw-r--r--mail-mta/postfix/Manifest4
-rw-r--r--mail-mta/postfix/files/postfix.service3
-rw-r--r--mail-mta/postfix/files/postlift.service16
-rw-r--r--mail-mta/postfix/files/postlift.socket13
-rw-r--r--mail-mta/postfix/postfix-3.12_pre20261020.ebuild (renamed from mail-mta/postfix/postfix-3.12_pre20260925.ebuild)12
-rw-r--r--media-libs/mpvqt/mpvqt-1.2.0.ebuild2
-rw-r--r--media-sound/yandex-music/Manifest1
-rw-r--r--media-sound/yandex-music/yandex-music-5.123.4.ebuild129
-rw-r--r--media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.1.ebuild10
-rw-r--r--media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.3.ebuild10
-rw-r--r--media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.4.ebuild10
-rw-r--r--media-video/gpu-screen-recorder/gpu-screen-recorder-9999.ebuild10
-rw-r--r--media-video/gpu-screen-recorder/metadata.xml1
-rw-r--r--media-video/haruna/haruna-1.8.1-r1.ebuild2
-rw-r--r--media-video/stremio/stremio-1.2.2-r2.ebuild (renamed from media-video/stremio/stremio-1.2.2-r1.ebuild)13
-rw-r--r--net-dns/nsd/Manifest2
-rw-r--r--net-dns/nsd/nsd-4.15.4.ebuild190
-rw-r--r--net-dns/unbound/Manifest2
-rw-r--r--net-dns/unbound/unbound-1.26.2.ebuild212
-rw-r--r--net-im/fractal/Manifest3
-rw-r--r--net-im/fractal/fractal-14.2.ebuild (renamed from net-im/fractal/fractal-14.ebuild)6
-rw-r--r--net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild2
-rw-r--r--net-misc/ntpsec/Manifest2
-rw-r--r--net-misc/ntpsec/ntpsec-1.2.6.ebuild197
-rw-r--r--net-misc/ntpsec/ntpsec-9999.ebuild4
-rw-r--r--net-misc/teamviewer/teamviewer-15.73.5.ebuild2
-rw-r--r--net-misc/teamviewer/teamviewer-15.81.5.ebuild2
-rw-r--r--net-misc/teamviewer/teamviewer-15.82.6.ebuild2
-rw-r--r--net-misc/tigervnc/tigervnc-1.16.2.ebuild2
-rw-r--r--net-misc/tigervnc/tigervnc-9999.ebuild2
-rw-r--r--net-misc/wstunnel/Manifest4
-rw-r--r--net-misc/wstunnel/wstunnel-11.1.0.ebuild (renamed from net-misc/wstunnel/wstunnel-10.7.1.ebuild)2
-rw-r--r--net-vpn/cloudflared/cloudflared-2026.8.2.ebuild2
-rw-r--r--net-vpn/tailscale/Manifest2
-rw-r--r--net-vpn/tailscale/tailscale-1.104.2.ebuild69
-rw-r--r--net-wireless/gr-rds/gr-rds-0.0_p20250404-r2.ebuild (renamed from net-wireless/gr-rds/gr-rds-0.0_p20250404-r1.ebuild)1
-rw-r--r--profiles/srcux/1.0/linux-gnu/login-manager/sddm/packages2
-rw-r--r--sci-libs/mathgl/mathgl-8.0.3.ebuild5
-rw-r--r--sci-ml/jiwer/jiwer-3.1.0.ebuild2
-rw-r--r--sci-ml/ollama/Manifest6
-rw-r--r--sci-ml/ollama/ollama-0.40.7.ebuild (renamed from sci-ml/ollama/ollama-0.40.6-r1.ebuild)2
-rw-r--r--sys-kernel/gentoo-kernel-bin/Manifest22
-rw-r--r--sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.114.ebuild222
-rw-r--r--sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.58.ebuild222
-rw-r--r--sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.160.ebuild222
-rw-r--r--sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.2.12.ebuild223
-rw-r--r--sys-kernel/gentoo-kernel-modprep/Manifest10
-rw-r--r--sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.12.114.ebuild177
-rw-r--r--sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.58.ebuild177
-rw-r--r--sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.6.160.ebuild177
-rw-r--r--sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-7.2.12.ebuild178
-rw-r--r--sys-kernel/gentoo-kernel/Manifest6
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.12.114.ebuild152
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.18.58.ebuild192
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.6.160.ebuild149
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-7.2.12.ebuild191
-rw-r--r--sys-kernel/gentoo-sources/Manifest11
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-6.12.114.ebuild38
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-6.18.58.ebuild38
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-6.6.160.ebuild28
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-7.2.12.ebuild39
-rw-r--r--sys-kernel/vanilla-kernel/Manifest6
-rw-r--r--sys-kernel/vanilla-kernel/vanilla-kernel-6.12.114.ebuild142
-rw-r--r--sys-kernel/vanilla-kernel/vanilla-kernel-6.18.58.ebuild182
-rw-r--r--sys-kernel/vanilla-kernel/vanilla-kernel-6.6.160.ebuild139
-rw-r--r--sys-kernel/vanilla-kernel/vanilla-kernel-7.2.12.ebuild181
-rw-r--r--sys-kernel/vanilla-sources/Manifest8
-rw-r--r--sys-kernel/vanilla-sources/vanilla-sources-6.12.114.ebuild (renamed from sys-kernel/vanilla-sources/vanilla-sources-6.12.113.ebuild)0
-rw-r--r--sys-kernel/vanilla-sources/vanilla-sources-6.18.58.ebuild (renamed from sys-kernel/vanilla-sources/vanilla-sources-6.18.57.ebuild)0
-rw-r--r--sys-kernel/vanilla-sources/vanilla-sources-6.6.159.ebuild (renamed from sys-kernel/vanilla-sources/vanilla-sources-6.6.158.ebuild)0
-rw-r--r--sys-kernel/vanilla-sources/vanilla-sources-7.2.12.ebuild (renamed from sys-kernel/vanilla-sources/vanilla-sources-7.2.11.ebuild)0
-rw-r--r--sys-process/iotop-c/Manifest1
-rw-r--r--sys-process/iotop-c/iotop-c-1.32.ebuild43
-rw-r--r--virtual/dist-kernel/dist-kernel-6.12.114.ebuild16
-rw-r--r--virtual/dist-kernel/dist-kernel-6.18.58.ebuild16
-rw-r--r--virtual/dist-kernel/dist-kernel-6.6.160.ebuild16
-rw-r--r--virtual/dist-kernel/dist-kernel-7.2.12.ebuild17
-rw-r--r--www-apps/byparr/byparr-3.0.4-r1.ebuild83
-rw-r--r--www-apps/byparr/files/byparr-3.0.4-r1-pass-log_level-to-uvicorn.run.patch26
-rw-r--r--www-apps/chromedriver-bin/Manifest4
-rw-r--r--www-apps/chromedriver-bin/chromedriver-bin-156.0.8078.47.ebuild (renamed from www-apps/chromedriver-bin/chromedriver-bin-155.0.8059.39.ebuild)2
-rw-r--r--www-client/google-chrome-beta/Manifest4
-rw-r--r--www-client/google-chrome-beta/google-chrome-beta-157.0.8103.6.ebuild (renamed from www-client/google-chrome-beta/google-chrome-beta-156.0.8078.12.ebuild)0
-rw-r--r--www-client/google-chrome-unstable/Manifest4
-rw-r--r--www-client/google-chrome-unstable/google-chrome-unstable-158.0.8106.0.ebuild (renamed from www-client/google-chrome-unstable/google-chrome-unstable-157.0.8081.0.ebuild)0
-rw-r--r--www-client/google-chrome/Manifest4
-rw-r--r--www-client/google-chrome/google-chrome-156.0.8078.47.ebuild (renamed from www-client/google-chrome/google-chrome-155.0.8059.39.ebuild)0
-rw-r--r--www-client/microsoft-edge-beta/Manifest6
-rw-r--r--www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.30.ebuild (renamed from www-client/microsoft-edge-beta/microsoft-edge-beta-155.0.4283.33.ebuild)0
-rw-r--r--www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.36.ebuild (renamed from www-client/microsoft-edge-beta/microsoft-edge-beta-155.0.4283.39.ebuild)0
-rw-r--r--www-client/microsoft-edge-beta/microsoft-edge-beta-157.0.4341.10.ebuild (renamed from www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.8.ebuild)0
-rw-r--r--www-client/microsoft-edge-dev/Manifest4
-rw-r--r--www-client/microsoft-edge-dev/microsoft-edge-dev-157.0.4329.0.ebuild (renamed from www-client/microsoft-edge-dev/microsoft-edge-dev-156.0.4285.0.ebuild)0
-rw-r--r--www-client/microsoft-edge-dev/microsoft-edge-dev-158.0.4344.0.ebuild (renamed from www-client/microsoft-edge-dev/microsoft-edge-dev-156.0.4301.0.ebuild)0
-rw-r--r--www-client/microsoft-edge/Manifest2
-rw-r--r--www-client/microsoft-edge/microsoft-edge-155.0.4283.62.ebuild (renamed from www-client/microsoft-edge/microsoft-edge-155.0.4283.45.ebuild)0
-rw-r--r--www-client/opera-developer/Manifest2
-rw-r--r--www-client/opera-developer/opera-developer-139.0.6051.0.ebuild (renamed from www-client/opera/opera-137.0.6036.39.ebuild)0
-rw-r--r--www-client/opera/Manifest4
-rw-r--r--www-client/opera/opera-138.0.6044.24.ebuild149
-rw-r--r--www-client/ungoogled-chromium/Manifest2
-rw-r--r--www-plugins/chrome-binary-plugins/Manifest12
-rw-r--r--www-plugins/chrome-binary-plugins/chrome-binary-plugins-156.0.8078.47.ebuild (renamed from www-plugins/chrome-binary-plugins/chrome-binary-plugins-155.0.8059.39.ebuild)0
-rw-r--r--www-plugins/chrome-binary-plugins/chrome-binary-plugins-157.0.8103.6_beta.ebuild (renamed from www-plugins/chrome-binary-plugins/chrome-binary-plugins-156.0.8078.12_beta.ebuild)0
-rw-r--r--www-plugins/chrome-binary-plugins/chrome-binary-plugins-158.0.8106.0_alpha.ebuild (renamed from www-plugins/chrome-binary-plugins/chrome-binary-plugins-157.0.8081.0_alpha.ebuild)0
-rw-r--r--x11-drivers/nvidia-drivers/Manifest8
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-580.196.07.ebuild600
-rw-r--r--x11-misc/sddm/Manifest4
-rw-r--r--x11-misc/sddm/files/sddm-0.21.0-Xsession.patch41
-rw-r--r--x11-misc/sddm/sddm-0.21.0_p20240723-r10.ebuild150
-rw-r--r--x11-misc/sddm/sddm-0.21.0_p20251101.ebuild149
-rw-r--r--x11-misc/sddm/sddm-0.21.0_p20260819.ebuild149
-rw-r--r--x11-misc/silent-sddm-theme/silent-sddm-theme-1.4.2.ebuild2
-rw-r--r--x11-misc/silent-sddm-theme/silent-sddm-theme-1.5.0.ebuild2
-rw-r--r--x11-misc/silent-sddm-theme/silent-sddm-theme-9999.ebuild2
326 files changed, 15782 insertions, 5794 deletions
diff --git a/acct-group/sddm/sddm-0-r1.ebuild b/acct-group/sddm/sddm-0-r1.ebuild
index 44ec1b3df484..06ad97f02c2c 100644
--- a/acct-group/sddm/sddm-0-r1.ebuild
+++ b/acct-group/sddm/sddm-0-r1.ebuild
@@ -5,6 +5,6 @@ EAPI=8
inherit acct-group
-DESCRIPTION="A group for x11-misc/sddm"
+DESCRIPTION="A group for gui-apps/sddm"
ACCT_GROUP_ID="219"
diff --git a/acct-user/postdrop/metadata.xml b/acct-user/postdrop/metadata.xml
new file mode 100644
index 000000000000..bb39dc1359ce
--- /dev/null
+++ b/acct-user/postdrop/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>eras@gentoo.org</email>
+ <name>Eray Aslan</name>
+ </maintainer>
+ <origin>srcux</origin>
+</pkgmetadata>
diff --git a/acct-user/postdrop/postdrop-0.ebuild b/acct-user/postdrop/postdrop-0.ebuild
new file mode 100644
index 000000000000..a384e4fb6901
--- /dev/null
+++ b/acct-user/postdrop/postdrop-0.ebuild
@@ -0,0 +1,12 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit acct-user
+
+DESCRIPTION="User for the Postfix postlift helper"
+ACCT_USER_ID=564
+ACCT_USER_GROUPS=( postdrop )
+
+acct-user_add_deps
diff --git a/acct-user/sddm/sddm-0-r1.ebuild b/acct-user/sddm/sddm-0-r1.ebuild
index ee5313288ddd..89043109f0ed 100644
--- a/acct-user/sddm/sddm-0-r1.ebuild
+++ b/acct-user/sddm/sddm-0-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=8
inherit acct-user
-DESCRIPTION="A user for x11-misc/sddm"
+DESCRIPTION="A user for gui-apps/sddm"
ACCT_USER_GROUPS=( "sddm" "video" )
ACCT_USER_HOME="/var/lib/sddm"
diff --git a/app-admin/exo/Manifest b/app-admin/exo/Manifest
index ddebb59e5142..227bb6e4103f 100644
--- a/app-admin/exo/Manifest
+++ b/app-admin/exo/Manifest
@@ -1 +1 @@
-DIST exo-1.94.0.gh.tar.gz 6584910 BLAKE2B c83ea0dad203fefec973ed9f009bbf7cbc4650e0f1fe66fd4461ed263dd3bad07e6e0f91fad3e4887140de014ce12cfe723c3e42dd956941158643f4e01ecf6d SHA512 f5ee47be0de9465b4a1f8a8efee7cdf0d9cbc503ff408afbd494339cb0703dfe340c4a43e8517fa0adcb044d0451f06df48fa5511cb1f8379797b97d15f6586e
+DIST exo-1.103.2.gh.tar.gz 6720512 BLAKE2B 028e99a81549aa863ec36f00ac6b91ad38e359be4eacab33996e2454cbdc6a6f8cce493245a25fe6facbbb97166bc3dd5e88552d78543dd5c15a663bcab6473a SHA512 c975949244909fc70d8bb94398cfebae9d776e9f1d37a2c0669b42e6d86a497800478ddf320aab4086901d9abafbe245ef8c3b044350fbd6ad9cfff14e1be523
diff --git a/app-admin/exo/exo-1.94.0.ebuild b/app-admin/exo/exo-1.103.2.ebuild
index d0ae135c2baa..d7be7f977a7f 100644
--- a/app-admin/exo/exo-1.94.0.ebuild
+++ b/app-admin/exo/exo-1.103.2.ebuild
@@ -14,7 +14,7 @@ LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
-DEPEND=">=dev-lang/go-1.26:="
+DEPEND=">=dev-lang/go-1.27:="
RESTRICT="strip"
src_compile() {
@@ -28,6 +28,7 @@ src_test() {
then
die "Test failed"
fi
+ ego test
}
src_install() {
diff --git a/app-arch/7zip/7zip-26.05.ebuild b/app-arch/7zip/7zip-26.05.ebuild
new file mode 100644
index 000000000000..b968faff9530
--- /dev/null
+++ b/app-arch/7zip/7zip-26.05.ebuild
@@ -0,0 +1,119 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edos2unix flag-o-matic toolchain-funcs
+
+NO_DOT_PV=$(ver_rs 1- '')
+DESCRIPTION="Free file archiver for extremely high compression"
+HOMEPAGE="https://www.7-zip.org/ https://sourceforge.net/projects/sevenzip/"
+# linux-x64 tarball is only used for docs
+SRC_URI="
+ https://github.com/ip7z/7zip/releases/download/${PV}/7z${NO_DOT_PV}-src.tar.xz
+ https://github.com/ip7z/7zip/releases/download/${PV}/7z${NO_DOT_PV}-linux-x64.tar.xz
+"
+S=${WORKDIR}
+
+LICENSE="LGPL-2 BSD rar? ( unRAR )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="uasm jwasm rar +symlink"
+REQUIRED_USE="?? ( uasm jwasm )"
+
+DOCS=( readme.txt History.txt License.txt )
+HTML_DOCS=( MANUAL )
+
+BDEPEND="
+ app-arch/xz-utils[extra-filters(+)]
+ uasm? ( dev-lang/uasm )
+ jwasm? ( dev-lang/jwasm )
+"
+RDEPEND="
+ symlink? ( !app-arch/p7zip )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-24.05-respect-build-env.patch"
+)
+
+pkg_setup() {
+ # instructions in DOC/readme.txt, Compiling 7-Zip for Unix/Linux
+ # TLDR; every combination of options (clang|gcc)+(asm/noasm)
+ # has a dedicated makefile & builddir
+ mfile="cmpl"
+ if tc-is-clang; then
+ mfile="${mfile}_clang"
+ bdir=c
+ elif tc-is-gcc; then
+ mfile="${mfile}_gcc"
+ bdir=g
+ else
+ die "Unsupported compiler: $(tc-getCC)"
+ fi
+ if use jwasm || use uasm ; then
+ mfile="${mfile}_x64"
+ bdir="${bdir}_x64"
+ fi
+ export mfile="${mfile}.mak"
+ export bdir
+}
+
+src_prepare() {
+ # patch doesn't deal with CRLF even if file+patch match
+ # not even with --ignore-whitespace, --binary or --force. We only
+ # strictly need to convert the .mk files we patch but do everything
+ # to allow easily patching in future + facilitate user patches.
+ pushd "./CPP/7zip" || die "Unable to switch directory"
+ edos2unix $(find . -type 'f' || die)
+ sed -i -e 's/-Werror //g' ./7zip_gcc.mak || die "Error removing -Werror"
+ popd >/dev/null || die "Unable to switch directory"
+
+ default
+}
+
+src_compile() {
+ # avoid executable stack when using uasm/jwasm, harmless otherwise
+ append-ldflags -Wl,-z,noexecstack
+ export G_CFLAGS=${CFLAGS}
+ export G_CXXFLAGS=${CXXFLAGS}
+ export G_LDFLAGS=${LDFLAGS}
+
+ local args=(
+ -f "../../${mfile}"
+ CC=$(tc-getCC)
+ CXX=$(tc-getCXX)
+ )
+ # NOTE: makefile doesn't check the value of DISABLE_RAR_COMPRESS, only
+ # whether it's defined or not. so in case user has `rar` enabled
+ # DISABLE_RAR_COMPRESS (and DISABLE_RAR) needs to stay undefined.
+ if ! use rar; then
+ # disables non-free rar code but allows listing and extracting
+ # non-compressed rar archives
+ args+=( DISABLE_RAR_COMPRESS=1 )
+ fi
+ if use jwasm; then
+ args+=( USE_JWASM=1 )
+ elif use uasm; then
+ args+=( MY_ASM=uasm )
+ fi
+
+ # Build executable and library
+ for i in "./CPP/7zip/Bundles/Alone2" "./CPP/7zip/Bundles/Format7zF" ; do
+ pushd "${i}" || die "Unable to switch directory"
+ mkdir -p "${bdir}" || die # Bug: https://bugs.gentoo.org/933619
+ emake ${args[@]}
+ popd > /dev/null || die "Unable to switch directory"
+ done
+}
+
+src_install() {
+ dobin "./CPP/7zip/Bundles/Alone2/b/${bdir}/7zz"
+ dolib.so "./CPP/7zip/Bundles/Format7zF/b/${bdir}/7z.so"
+ if use symlink; then
+ dosym 7zz /usr/bin/7z
+ dosym 7zz /usr/bin/7za
+ dosym 7zz /usr/bin/7zr
+ fi
+ einstalldocs
+}
diff --git a/app-arch/7zip/Manifest b/app-arch/7zip/Manifest
index 7291f44bd7be..72e16b977aa4 100644
--- a/app-arch/7zip/Manifest
+++ b/app-arch/7zip/Manifest
@@ -4,3 +4,5 @@ DIST 7z2603-linux-x64.tar.xz 1575072 BLAKE2B d32fb9c8ae99acad2571d5a8f7be66bdcfa
DIST 7z2603-src.tar.xz 1552200 BLAKE2B d50364d6a3668ee4bc1528602eb779aafd6169e9a8a7fd2daaf1ebf10a963e8a9fa2a74b36219c34287b7ecae2bdab52abcfdb8840340181791994b087f44479 SHA512 469ebb37fb1495982ffee453cc6298dabb14b449e42fbe231001d0dae51ee3bcc83fdf46fec137a7cf7d6688a696b689a90d1aff3408d716e458b2ce064458c7
DIST 7z2604-linux-x64.tar.xz 1576336 BLAKE2B 0e31a103c4ef7992ee7c4ba7c7dbaa6ea8eae8e5bcf502713cbe554e275d058a60dffc0ea980e7a191ee43a3e80220245cbd58298e8d17d01e5732e4bdd7bcb0 SHA512 c1efa69c07688978fb596421746e0d77959b780379be3751a03167f01e91c5ca138bc8ce8cfefe5577f93c2b4bb710b3e17751af99e711f33e742ca5392f287f
DIST 7z2604-src.tar.xz 1560440 BLAKE2B 05c86b6716157e6add403fa1e04a561bec50107c9daca2fbcc49c55480b1dff3ee3ce66542c141db8fd84116c968e8a718e77cbede63dd48b1b0f9692e39a36f SHA512 83140cff3d3ac28b1e2d3e7ad86c13785365269a25b47fb8cbc66a7c90eb5e22a57107f73564b89c3df4d1d8cd78c8913f6e7c985c761e054bac37c6de61dd08
+DIST 7z2605-linux-x64.tar.xz 1579976 BLAKE2B c807cef0eefd2aca474fd97360bc661ca493af02df500702c0eaf9ad8c0251a6ffce241cd081c31b54c015f9842526383c3dd7efb280761e88676677f8c7736f SHA512 9d59ee49685936c77834f231a09be4b2d915cb7cf21d602c26beb6a052ed5340f5aa70389e4c79adefd5a80b91443fff1f88af8a1342d140f98b37210d5711e5
+DIST 7z2605-src.tar.xz 1565688 BLAKE2B 05f8e2447eae0a485e3e608621def717a5e69cc121542d0f8f5b52ba8046a2c85ddbeb2315747619a0b361311d0acb71a0c75d632d7891023792b879757d84f7 SHA512 3c7fd4f00823465e8a1b17bf9ef282ef5a2032f7d5ab16bb059205d0038b9e228183b1915903ffedbf89033ae0648231e220c4585b58089e75241b1c1e2c2e31
diff --git a/app-arch/brotli/Manifest b/app-arch/brotli/Manifest
index c2e9dd0f4411..9c3f7809ae78 100644
--- a/app-arch/brotli/Manifest
+++ b/app-arch/brotli/Manifest
@@ -1,4 +1,2 @@
-DIST brotli-1.0.9.tar.gz 486984 BLAKE2B 8b9939d5224396ef33b43e019250ba4bc8949903583615e8dc02c85340fc0a1e2d1632161e00b0ee7355d77f05529ac772f482e05d2089afd71a0bf71e803904 SHA512 b8e2df955e8796ac1f022eb4ebad29532cb7e3aa6a4b6aee91dbd2c7d637eee84d9a144d3e878895bb5e62800875c2c01c8f737a1261020c54feacf9f676b5f5
-DIST brotli-1.0.9.testdata.tar.xz 3771536 BLAKE2B e22a7e926a68b64cf3ddcf90d2381201d0bac6486f28c3a675c83a2a685108491011195faf48df9abd478a011e874df560ae81988348f7605197805cc3be20dd SHA512 d98c48dbc7772959a9cf276b638cf773a05a896c9daf4f6235f7d7fd625490b3f538e0690afcd6968ff81ad3745c7d78419850c2518048c44d73b470bcd08c97
-DIST brotli-1.1.0.tar.gz 511969 BLAKE2B 7ac767fd6dafaabfb4e3834d690f71abceb4d4e7f131849d6c328a04f3a16c54d0a9463a37f03663a4158c35e970a089512c8a5bc43eda79fb43c1f61223379e SHA512 6eb280d10d8e1b43d22d00fa535435923c22ce8448709419d676ff47d4a644102ea04f488fc65a179c6c09fee12380992e9335bad8dfebd5d1f20908d10849d9
DIST brotli-1.2.0.tar.gz 646315 BLAKE2B e38ea35f4abe47b2113ccc0778bb7b0be77dcf4d26ce248347ecc4cfdea7ba40d17e0b175cad6f82055d07b1ec9976ffea649f59065866db2c36116c77e59824 SHA512 f94542afd2ecd96cc41fd21a805a3da314281ae558c10650f3e6d9ca732b8425bba8fde312823f0a564c7de3993bdaab5b43378edab65ebb798cefb6fd702256
+DIST brotli-1.2.1.tar.gz 646598 BLAKE2B e8fc427aabd83fd688eef6484b4a551f9590ba07293ff328c5b86a9fadd4b354773f3e2cd684ebd80fca1ff4e6cc3cf165eb5e33204d637798a618f1261bc897 SHA512 460591287d428c8b5a8a2766b5b424d14501fcda12c7118b8f3cc4bfae44b90ac75ca156557f07b6e22542612724d904533e5f70019be07dbbb604c46f03ab69
diff --git a/app-arch/brotli/brotli-1.0.9-r6.ebuild b/app-arch/brotli/brotli-1.0.9-r6.ebuild
deleted file mode 100644
index 211542712814..000000000000
--- a/app-arch/brotli/brotli-1.0.9-r6.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_OPTIONAL="1"
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit cmake-multilib distutils-r1 flag-o-matic
-
-if [[ ${PV} == *9999* ]] ; then
- EGIT_REPO_URI="https://github.com/google/${PN}.git"
- inherit git-r3
-else
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
- SRC_URI="
- https://github.com/google/${PN}/archive/v${PV}.tar.gz
- -> ${P}.tar.gz
- test? (
- https://dev.gentoo.org/~mgorny/dist/${P}.testdata.tar.xz
- )
- "
-fi
-
-DESCRIPTION="Generic-purpose lossless compression algorithm"
-HOMEPAGE="https://github.com/google/brotli/"
-
-LICENSE="MIT python? ( Apache-2.0 )"
-SLOT="0/$(ver_cut 1)"
-IUSE="python static-libs test"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- python? ( ${PYTHON_DEPS} )
-"
-DEPEND="
- ${RDEPEND}
-"
-BDEPEND="
- python? (
- ${DISTUTILS_DEPS}
- )
-"
-
-DOCS=( README.md CONTRIBUTING.md )
-
-PATCHES=( "${FILESDIR}/${PV}-linker.patch" )
-
-src_prepare() {
- cmake_src_prepare
- use python && distutils-r1_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DBUILD_TESTING="$(usex test)"
- )
- cmake_src_configure
-}
-
-src_configure() {
- append-lfs-flags
-
- cmake-multilib_src_configure
- use python && distutils-r1_src_configure
-}
-
-src_compile() {
- cmake-multilib_src_compile
- use python && distutils-r1_src_compile
-}
-
-python_test() {
- eunittest -s python -p "*_test.py"
-}
-
-src_test() {
- cmake-multilib_src_test
- use python && distutils-r1_src_test
-}
-
-multilib_src_install() {
- cmake_src_install
- if ! use static-libs; then
- rm "${ED}"/usr/$(get_libdir)/*.a || die
- fi
-}
-
-multilib_src_install_all() {
- use python && distutils-r1_src_install
-
- doman docs/brotli.1
-
- local page
- for page in constants decode encode types ; do
- newman docs/${page}.h.3 ${PN}_${page}.h.3
- done
-}
diff --git a/app-arch/brotli/brotli-1.1.0.ebuild b/app-arch/brotli/brotli-1.1.0.ebuild
deleted file mode 100644
index ecaa39f34bf3..000000000000
--- a/app-arch/brotli/brotli-1.1.0.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_OPTIONAL="1"
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit cmake-multilib distutils-r1 flag-o-matic
-
-if [[ ${PV} == *9999* ]] ; then
- EGIT_REPO_URI="https://github.com/google/${PN}.git"
- inherit git-r3
-else
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
- SRC_URI="
- https://github.com/google/${PN}/archive/v${PV}.tar.gz
- -> ${P}.tar.gz
- "
-fi
-
-DESCRIPTION="Generic-purpose lossless compression algorithm"
-HOMEPAGE="https://github.com/google/brotli/"
-
-LICENSE="MIT python? ( Apache-2.0 )"
-SLOT="0/$(ver_cut 1)"
-IUSE="python test"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- python? ( ${PYTHON_DEPS} )
-"
-DEPEND="
- ${RDEPEND}
-"
-BDEPEND="
- python? (
- ${DISTUTILS_DEPS}
- )
-"
-
-DOCS=( README.md CONTRIBUTING.md )
-
-src_prepare() {
- cmake_src_prepare
- use python && distutils-r1_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DBUILD_TESTING="$(usex test)"
- )
- cmake_src_configure
-}
-
-src_configure() {
- append-lfs-flags
-
- cmake-multilib_src_configure
- use python && distutils-r1_src_configure
-}
-
-src_compile() {
- cmake-multilib_src_compile
- use python && distutils-r1_src_compile
-}
-
-python_test() {
- eunittest -s python -p "*_test.py"
-}
-
-src_test() {
- cmake-multilib_src_test
- use python && distutils-r1_src_test
-}
-
-multilib_src_install() {
- cmake_src_install
-}
-
-multilib_src_install_all() {
- use python && distutils-r1_src_install
-
- doman docs/brotli.1
-
- local page
- for page in constants decode encode types ; do
- newman docs/${page}.h.3 ${PN}_${page}.h.3
- done
-}
diff --git a/app-arch/brotli/brotli-1.2.0-r1.ebuild b/app-arch/brotli/brotli-1.2.0-r2.ebuild
index 0c37661c4f85..8a1325269e5d 100644
--- a/app-arch/brotli/brotli-1.2.0-r1.ebuild
+++ b/app-arch/brotli/brotli-1.2.0-r2.ebuild
@@ -44,7 +44,10 @@ BDEPEND="
DOCS=( README.md CONTRIBUTING.md )
-PATCHES=( "${FILESDIR}/${PV}-fix-loong-build.patch" )
+PATCHES=(
+ "${FILESDIR}/${PV}-fix-loong-build.patch"
+ "${FILESDIR}/${P}-detect-invalid-stream.patch" # merged upstream
+)
src_prepare() {
cmake_src_prepare
diff --git a/app-arch/brotli/brotli-1.2.0.ebuild b/app-arch/brotli/brotli-1.2.1.ebuild
index 3d792b3ef097..5804aab8aa14 100644
--- a/app-arch/brotli/brotli-1.2.0.ebuild
+++ b/app-arch/brotli/brotli-1.2.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -14,7 +14,7 @@ if [[ ${PV} == *9999* ]] ; then
EGIT_REPO_URI="https://github.com/google/${PN}.git"
inherit git-r3
else
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
SRC_URI="
https://github.com/google/${PN}/archive/v${PV}.tar.gz
-> ${P}.tar.gz
@@ -44,7 +44,9 @@ BDEPEND="
DOCS=( README.md CONTRIBUTING.md )
-PATCHES=( "${FILESDIR}/${PV}-fix-loong-build.patch" )
+PATCHES=(
+ "${FILESDIR}/1.2.0-fix-loong-build.patch"
+)
src_prepare() {
cmake_src_prepare
@@ -92,4 +94,9 @@ multilib_src_install_all() {
for page in constants decode encode types ; do
newman docs/${page}.h.3 ${PN}_${page}.h.3
done
+
+ dosym -r /usr/bin/brotli /usr/bin/brcat
+ dosym -r /usr/bin/brotli /usr/bin/unbrotli
+ dosym -r /usr/share/man/man1/brotli.1 /usr/share/man/man1/brcat.1
+ dosym -r /usr/share/man/man1/brotli.1 /usr/share/man/man1/unbrotli.1
}
diff --git a/app-arch/brotli/files/brotli-1.2.0-detect-invalid-stream.patch b/app-arch/brotli/files/brotli-1.2.0-detect-invalid-stream.patch
new file mode 100644
index 000000000000..92eaa594c38f
--- /dev/null
+++ b/app-arch/brotli/files/brotli-1.2.0-detect-invalid-stream.patch
@@ -0,0 +1,220 @@
+https://github.com/google/brotli/commit/0ed4268a4401abcb4472096340477cf4af7d1a2b
+From: Evgenii Kliuchnikov <eustas@google.com>
+Date: Fri, 27 Feb 2026 05:10:32 -0800
+Subject: [PATCH] Detect and report invalid stream earlier.
+
+PiperOrigin-RevId: 876198329
+--- a/c/dec/decode.c
++++ b/c/dec/decode.c
+@@ -1176,7 +1176,7 @@ static BrotliDecoderErrorCode DecodeContextMap(brotli_reg_t context_map_size,
+
+ /* Decodes a command or literal and updates block type ring-buffer.
+ Reads 3..54 bits. */
+-static BROTLI_INLINE BROTLI_BOOL DecodeBlockTypeAndLength(
++static BROTLI_INLINE BrotliDecoderErrorCode DecodeBlockTypeAndLength(
+ int safe, BrotliDecoderState* s, int tree_type) {
+ brotli_reg_t max_block_type = s->num_block_types[tree_type];
+ const HuffmanCode* type_tree = &s->block_type_trees[
+@@ -1187,7 +1187,7 @@ static BROTLI_INLINE BROTLI_BOOL DecodeBlockTypeAndLength(
+ brotli_reg_t* ringbuffer = &s->block_type_rb[tree_type * 2];
+ brotli_reg_t block_type;
+ if (max_block_type <= 1) {
+- return BROTLI_FALSE;
++ return BROTLI_DECODER_ERROR_FORMAT_BLOCK_SWITCH;
+ }
+
+ /* Read 0..15 + 3..39 bits. */
+@@ -1197,11 +1197,13 @@ static BROTLI_INLINE BROTLI_BOOL DecodeBlockTypeAndLength(
+ } else {
+ BrotliBitReaderState memento;
+ BrotliBitReaderSaveState(br, &memento);
+- if (!SafeReadSymbol(type_tree, br, &block_type)) return BROTLI_FALSE;
++ if (!SafeReadSymbol(type_tree, br, &block_type)) {
++ return BROTLI_DECODER_NEEDS_MORE_INPUT;
++ }
+ if (!SafeReadBlockLength(s, &s->block_length[tree_type], len_tree, br)) {
+ s->substate_read_block_length = BROTLI_STATE_READ_BLOCK_LENGTH_NONE;
+ BrotliBitReaderRestoreState(br, &memento);
+- return BROTLI_FALSE;
++ return BROTLI_DECODER_NEEDS_MORE_INPUT;
+ }
+ }
+
+@@ -1217,7 +1219,7 @@ static BROTLI_INLINE BROTLI_BOOL DecodeBlockTypeAndLength(
+ }
+ ringbuffer[0] = ringbuffer[1];
+ ringbuffer[1] = block_type;
+- return BROTLI_TRUE;
++ return BROTLI_DECODER_SUCCESS;
+ }
+
+ static BROTLI_INLINE void DetectTrivialLiteralBlockTypes(
+@@ -1254,59 +1256,65 @@ static BROTLI_INLINE void PrepareLiteralDecoding(BrotliDecoderState* s) {
+
+ /* Decodes the block type and updates the state for literal context.
+ Reads 3..54 bits. */
+-static BROTLI_INLINE BROTLI_BOOL DecodeLiteralBlockSwitchInternal(
++static BROTLI_INLINE BrotliDecoderErrorCode DecodeLiteralBlockSwitchInternal(
+ int safe, BrotliDecoderState* s) {
+- if (!DecodeBlockTypeAndLength(safe, s, 0)) {
+- return BROTLI_FALSE;
++ BrotliDecoderErrorCode result = DecodeBlockTypeAndLength(safe, s, 0);
++ if (result != BROTLI_DECODER_SUCCESS) {
++ return result;
+ }
+ PrepareLiteralDecoding(s);
+- return BROTLI_TRUE;
++ return BROTLI_DECODER_SUCCESS;
+ }
+
+-static void BROTLI_NOINLINE DecodeLiteralBlockSwitch(BrotliDecoderState* s) {
+- DecodeLiteralBlockSwitchInternal(0, s);
++static BROTLI_NOINLINE BrotliDecoderErrorCode
++DecodeLiteralBlockSwitch(BrotliDecoderState* s) {
++ return DecodeLiteralBlockSwitchInternal(0, s);
+ }
+
+-static BROTLI_BOOL BROTLI_NOINLINE SafeDecodeLiteralBlockSwitch(
++static BROTLI_NOINLINE BrotliDecoderErrorCode SafeDecodeLiteralBlockSwitch(
+ BrotliDecoderState* s) {
+ return DecodeLiteralBlockSwitchInternal(1, s);
+ }
+
+ /* Block switch for insert/copy length.
+ Reads 3..54 bits. */
+-static BROTLI_INLINE BROTLI_BOOL DecodeCommandBlockSwitchInternal(
++static BROTLI_INLINE BrotliDecoderErrorCode DecodeCommandBlockSwitchInternal(
+ int safe, BrotliDecoderState* s) {
+- if (!DecodeBlockTypeAndLength(safe, s, 1)) {
+- return BROTLI_FALSE;
++ BrotliDecoderErrorCode result = DecodeBlockTypeAndLength(safe, s, 1);
++ if (result != BROTLI_DECODER_SUCCESS) {
++ return result;
+ }
+ s->htree_command = s->insert_copy_hgroup.htrees[s->block_type_rb[3]];
+- return BROTLI_TRUE;
++ return BROTLI_DECODER_SUCCESS;
+ }
+
+-static void BROTLI_NOINLINE DecodeCommandBlockSwitch(BrotliDecoderState* s) {
+- DecodeCommandBlockSwitchInternal(0, s);
++static BROTLI_NOINLINE BrotliDecoderErrorCode
++DecodeCommandBlockSwitch(BrotliDecoderState* s) {
++ return DecodeCommandBlockSwitchInternal(0, s);
+ }
+
+-static BROTLI_BOOL BROTLI_NOINLINE SafeDecodeCommandBlockSwitch(
+- BrotliDecoderState* s) {
++static BROTLI_NOINLINE BrotliDecoderErrorCode
++SafeDecodeCommandBlockSwitch(BrotliDecoderState* s) {
+ return DecodeCommandBlockSwitchInternal(1, s);
+ }
+
+ /* Block switch for distance codes.
+ Reads 3..54 bits. */
+-static BROTLI_INLINE BROTLI_BOOL DecodeDistanceBlockSwitchInternal(
++static BROTLI_INLINE BrotliDecoderErrorCode DecodeDistanceBlockSwitchInternal(
+ int safe, BrotliDecoderState* s) {
+- if (!DecodeBlockTypeAndLength(safe, s, 2)) {
+- return BROTLI_FALSE;
++ BrotliDecoderErrorCode result = DecodeBlockTypeAndLength(safe, s, 2);
++ if (result != BROTLI_DECODER_SUCCESS) {
++ return result;
+ }
+ s->dist_context_map_slice = s->dist_context_map +
+ (s->block_type_rb[5] << BROTLI_DISTANCE_CONTEXT_BITS);
+ s->dist_htree_index = s->dist_context_map_slice[s->distance_context];
+- return BROTLI_TRUE;
++ return BROTLI_DECODER_SUCCESS;
+ }
+
+-static void BROTLI_NOINLINE DecodeDistanceBlockSwitch(BrotliDecoderState* s) {
+- DecodeDistanceBlockSwitchInternal(0, s);
++static BROTLI_NOINLINE BrotliDecoderErrorCode
++DecodeDistanceBlockSwitch(BrotliDecoderState* s) {
++ return DecodeDistanceBlockSwitchInternal(0, s);
+ }
+
+ static BROTLI_BOOL BROTLI_NOINLINE SafeDecodeDistanceBlockSwitch(
+@@ -1940,6 +1948,9 @@ static BROTLI_INLINE BROTLI_BOOL CheckInputAmount(
+ return BrotliCheckInputAmount(br);
+ }
+
++/* NB: METHOD should return BROTLI_FALSE only in case there is not enough input;
++ in case of "unsafe" execution, when input is guaranteed to be sufficient,
++ result is ignored. */
+ #define BROTLI_SAFE(METHOD) \
+ { \
+ if (safe) { \
+@@ -1952,6 +1963,22 @@ static BROTLI_INLINE BROTLI_BOOL CheckInputAmount(
+ } \
+ }
+
++/* NB: METHOD should return BROTLI_DECODER_SUCCESS, BROTLI_DECODER_ERROR_*, or
++ BROTLI_DECODER_NEEDS_MORE_INPUT; the later two break the processing. */
++#define BROTLI_SAFE_WITH_STATUS(METHOD) \
++ { \
++ BrotliDecoderErrorCode status; \
++ if (safe) { \
++ status = Safe##METHOD; \
++ } else { \
++ status = METHOD; \
++ } \
++ if (status != BROTLI_DECODER_SUCCESS) { \
++ result = status; \
++ goto saveStateAndReturn; \
++ } \
++ }
++
+ static BROTLI_INLINE BrotliDecoderErrorCode ProcessCommandsInternal(
+ int safe, BrotliDecoderState* s) {
+ int pos = s->pos;
+@@ -1991,7 +2018,7 @@ static BROTLI_INLINE BrotliDecoderErrorCode ProcessCommandsInternal(
+ goto saveStateAndReturn;
+ }
+ if (BROTLI_PREDICT_FALSE(s->block_length[1] == 0)) {
+- BROTLI_SAFE(DecodeCommandBlockSwitch(s));
++ BROTLI_SAFE_WITH_STATUS(DecodeCommandBlockSwitch(s));
+ goto CommandBegin;
+ }
+ /* Read the insert/copy length in the command. */
+@@ -2136,7 +2163,7 @@ static BROTLI_INLINE BrotliDecoderErrorCode ProcessCommandsInternal(
+ } else {
+ /* Read distance code in the command, unless it was implicitly zero. */
+ if (BROTLI_PREDICT_FALSE(s->block_length[2] == 0)) {
+- BROTLI_SAFE(DecodeDistanceBlockSwitch(s));
++ BROTLI_SAFE_WITH_STATUS(DecodeDistanceBlockSwitch(s));
+ }
+ BROTLI_SAFE(ReadDistance(s, br));
+ }
+@@ -2330,7 +2357,7 @@ static BROTLI_INLINE BrotliDecoderErrorCode ProcessCommandsInternal(
+ }
+
+ NextLiteralBlock:
+- BROTLI_SAFE(DecodeLiteralBlockSwitch(s));
++ BROTLI_SAFE_WITH_STATUS(DecodeLiteralBlockSwitch(s));
+ goto CommandInner;
+
+ saveStateAndReturn:
+@@ -2552,6 +2579,8 @@ BrotliDecoderResult BrotliDecoderDecompressStream(
+ if (result != BROTLI_DECODER_SUCCESS) {
+ break;
+ }
++ BROTLI_DCHECK(s->meta_block_remaining_len <=
++ (int)BROTLI_BLOCK_SIZE_CAP);
+ BROTLI_LOG_UINT(s->is_last_metablock);
+ BROTLI_LOG_UINT(s->meta_block_remaining_len);
+ BROTLI_LOG_UINT(s->is_metadata);
+--- a/c/include/brotli/decode.h
++++ b/c/include/brotli/decode.h
+@@ -85,9 +85,7 @@ typedef enum {
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, PADDING_1, -14) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, PADDING_2, -15) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, DISTANCE, -16) SEPARATOR \
+- \
+- /* -17 code is reserved */ \
+- \
++ BROTLI_ERROR_CODE(_ERROR_FORMAT_, BLOCK_SWITCH, -17) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_, COMPOUND_DICTIONARY, -18) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_, DICTIONARY_NOT_SET, -19) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_, INVALID_ARGUMENTS, -20) SEPARATOR \
diff --git a/app-containers/incus/incus-7.0.2.ebuild b/app-containers/incus/incus-7.0.2.ebuild
index 312baed44ec2..273716a2fadc 100644
--- a/app-containers/incus/incus-7.0.2.ebuild
+++ b/app-containers/incus/incus-7.0.2.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig
+inherit go-env go-module linux-info optfeature shell-completion sysroot systemd verify-sig
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus"
@@ -90,11 +90,18 @@ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/linuxcontainers.asc
# make: *** [Makefile:156: check] Error 1
RESTRICT="test"
-GOPATH="${S}/_dist"
+src_unpack() {
+ if [[ "${PV}" == 9999* ]]; then
+ git-r3_src_unpack
+ go-module_live_vendor
+ go-env_set_compile_environment
+ else
+ verify-sig_src_unpack
+ go-module_src_unpack
+ fi
+}
src_prepare() {
- export GOPATH="${S}/_dist"
-
default
sed -i \
@@ -146,29 +153,35 @@ src_compile() {
# Needs to be built statically
CGO_ENABLED=0 go install -v -tags agent,netgo,static -buildmode default "${S}"/cmd/incus-migrate
- local bindir=$(incus_get_bindir "$(go-env_goarch "${CBUILD}")")
+ bindir="${GOPATH}/bin"
+ GOHOSTARCH=$(go-env_goarch "${CBUILD}")
+ agentbindir=$(incus_get_bindir "${GOHOSTARCH}")
# Build the VM agents, statically too
if use amd64 ; then
- GOARCH=amd64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.x86_64 -v \
+ GOARCH=amd64 CGO_ENABLED=0 ego build -o "${agentbindir}"/incus-agent.linux.x86_64 -v \
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
- GOARCH=386 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.i686 -v \
+ GOARCH=386 CGO_ENABLED=0 ego build -o "${agentbindir}"/incus-agent.linux.i686 -v \
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
- GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.x86_64 -v \
+ GOARCH=amd64 GOOS=windows CGO_ENABLED=0 ego build -o "${agentbindir}"/incus-agent.windows.x86_64 -v \
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
- GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.i686 -v \
+ GOARCH=386 GOOS=windows CGO_ENABLED=0 ego build -o "${agentbindir}"/incus-agent.windows.i686 -v \
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
elif use arm64 ; then
- GOARCH=arm64 CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.linux.aarch64 -v \
+ GOARCH=arm64 CGO_ENABLED=0 ego build -o "${agentbindir}"/incus-agent.linux.aarch64 -v \
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
- GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${bindir}"/incus-agent.windows.aarch64 -v \
+ GOARCH=arm64 GOOS=windows CGO_ENABLED=0 ego build -o "${agentbindir}"/incus-agent.windows.aarch64 -v \
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
else
echo "No VM support for this arch."
- return
fi
use nls && emake build-mo
+
+ # Generate shell completion files.
+ sysroot_try_run_prefixed "${bindir}"/incus completion bash > incus.bash || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion fish > incus.fish || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion zsh > incus.zsh || die
}
src_test() {
@@ -176,12 +189,6 @@ src_test() {
}
src_install() {
- export GOPATH="${S}/_dist"
-
- local bindir="${GOPATH}/bin"
- export GOHOSTARCH=$(go-env_goarch "${CBUILD}")
- local agentbindir=$(incus_get_bindir "${GOHOSTARCH}")
-
newsbin "${FILESDIR}"/incus-startup-0.4.sh incus-startup
# Admin tools
@@ -222,15 +229,10 @@ src_install() {
systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service
systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket
- if ! tc-is-cross-compiler; then
- # Generate and install shell completion files.
- mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die
- "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die
- "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die
- "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die
- else
- ewarn "Shell completion files not installed! Install them manually with incus completion --help"
- fi
+ # Install shell completion files.
+ [[ -s incus.bash ]] && newbashcomp incus.bash incus
+ [[ -s incus.fish ]] && dofishcomp incus.fish
+ [[ -s incus.zsh ]] && newzshcomp incus.zsh _incus
dodoc AUTHORS
dodoc -r doc/*
diff --git a/app-containers/incus/incus-7.3-r1.ebuild b/app-containers/incus/incus-7.3-r1.ebuild
index 8d2b2fcf70d5..d339ceaec16a 100644
--- a/app-containers/incus/incus-7.3-r1.ebuild
+++ b/app-containers/incus/incus-7.3-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig
+inherit go-env go-module linux-info optfeature shell-completion sysroot systemd verify-sig
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus"
@@ -181,10 +181,14 @@ src_compile() {
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
else
echo "No VM support for this arch."
- return
fi
use nls && emake build-mo
+
+ # Generate shell completion files.
+ sysroot_try_run_prefixed "${bindir}"/incus completion bash > incus.bash || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion fish > incus.fish || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion zsh > incus.zsh || die
}
src_test() {
@@ -237,15 +241,10 @@ src_install() {
systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service
systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket
- if ! tc-is-cross-compiler; then
- # Generate and install shell completion files.
- mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die
- "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die
- "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die
- "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die
- else
- ewarn "Shell completion files not installed! Install them manually with incus completion --help"
- fi
+ # Install shell completion files.
+ [[ -s incus.bash ]] && newbashcomp incus.bash incus
+ [[ -s incus.fish ]] && dofishcomp incus.fish
+ [[ -s incus.zsh ]] && newzshcomp incus.zsh _incus
dodoc AUTHORS
dodoc -r doc/*
diff --git a/app-containers/incus/incus-7.4-r1.ebuild b/app-containers/incus/incus-7.4-r1.ebuild
index 7e113b04c86b..9a77f2fe64e8 100644
--- a/app-containers/incus/incus-7.4-r1.ebuild
+++ b/app-containers/incus/incus-7.4-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig
+inherit go-env go-module linux-info optfeature shell-completion sysroot systemd verify-sig
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus"
@@ -181,10 +181,14 @@ src_compile() {
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
else
echo "No VM support for this arch."
- return
fi
use nls && emake build-mo
+
+ # Generate shell completion files.
+ sysroot_try_run_prefixed "${bindir}"/incus completion bash > incus.bash || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion fish > incus.fish || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion zsh > incus.zsh || die
}
src_test() {
@@ -237,15 +241,10 @@ src_install() {
systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service
systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket
- if ! tc-is-cross-compiler; then
- # Generate and install shell completion files.
- mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die
- "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die
- "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die
- "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die
- else
- ewarn "Shell completion files not installed! Install them manually with incus completion --help"
- fi
+ # Install shell completion files.
+ [[ -s incus.bash ]] && newbashcomp incus.bash incus
+ [[ -s incus.fish ]] && dofishcomp incus.fish
+ [[ -s incus.zsh ]] && newzshcomp incus.zsh _incus
dodoc AUTHORS
dodoc -r doc/*
diff --git a/app-containers/incus/incus-7.5.1.ebuild b/app-containers/incus/incus-7.5.1.ebuild
index 7e113b04c86b..9a77f2fe64e8 100644
--- a/app-containers/incus/incus-7.5.1.ebuild
+++ b/app-containers/incus/incus-7.5.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig
+inherit go-env go-module linux-info optfeature shell-completion sysroot systemd verify-sig
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus"
@@ -181,10 +181,14 @@ src_compile() {
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
else
echo "No VM support for this arch."
- return
fi
use nls && emake build-mo
+
+ # Generate shell completion files.
+ sysroot_try_run_prefixed "${bindir}"/incus completion bash > incus.bash || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion fish > incus.fish || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion zsh > incus.zsh || die
}
src_test() {
@@ -237,15 +241,10 @@ src_install() {
systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service
systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket
- if ! tc-is-cross-compiler; then
- # Generate and install shell completion files.
- mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die
- "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die
- "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die
- "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die
- else
- ewarn "Shell completion files not installed! Install them manually with incus completion --help"
- fi
+ # Install shell completion files.
+ [[ -s incus.bash ]] && newbashcomp incus.bash incus
+ [[ -s incus.fish ]] && dofishcomp incus.fish
+ [[ -s incus.zsh ]] && newzshcomp incus.zsh _incus
dodoc AUTHORS
dodoc -r doc/*
diff --git a/app-containers/incus/incus-9999.ebuild b/app-containers/incus/incus-9999.ebuild
index 7e113b04c86b..9a77f2fe64e8 100644
--- a/app-containers/incus/incus-9999.ebuild
+++ b/app-containers/incus/incus-9999.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit go-env go-module linux-info optfeature systemd toolchain-funcs verify-sig
+inherit go-env go-module linux-info optfeature shell-completion sysroot systemd verify-sig
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
HOMEPAGE="https://linuxcontainers.org/incus/introduction/ https://github.com/lxc/incus"
@@ -181,10 +181,14 @@ src_compile() {
-tags agent,netgo,static -buildmode default "${S}"/cmd/incus-agent
else
echo "No VM support for this arch."
- return
fi
use nls && emake build-mo
+
+ # Generate shell completion files.
+ sysroot_try_run_prefixed "${bindir}"/incus completion bash > incus.bash || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion fish > incus.fish || die
+ sysroot_try_run_prefixed "${bindir}"/incus completion zsh > incus.zsh || die
}
src_test() {
@@ -237,15 +241,10 @@ src_install() {
systemd_newunit "${FILESDIR}"/incus-user-0.4.service incus-user.service
systemd_newunit "${FILESDIR}"/incus-user-0.4.socket incus-user.socket
- if ! tc-is-cross-compiler; then
- # Generate and install shell completion files.
- mkdir -p "${D}"/usr/share/{bash-completion/completions/,fish/vendor_completions.d/,zsh/site-functions/} || die
- "${bindir}"/incus completion bash > "${D}"/usr/share/bash-completion/completions/incus || die
- "${bindir}"/incus completion fish > "${D}"/usr/share/fish/vendor_completions.d/incus.fish || die
- "${bindir}"/incus completion zsh > "${D}"/usr/share/zsh/site-functions/_incus || die
- else
- ewarn "Shell completion files not installed! Install them manually with incus completion --help"
- fi
+ # Install shell completion files.
+ [[ -s incus.bash ]] && newbashcomp incus.bash incus
+ [[ -s incus.fish ]] && dofishcomp incus.fish
+ [[ -s incus.zsh ]] && newzshcomp incus.zsh _incus
dodoc AUTHORS
dodoc -r doc/*
diff --git a/app-crypt/certbot-dns-poweradmin/Manifest b/app-crypt/certbot-dns-poweradmin/Manifest
index 573fb8128291..6c2b2ce1d6cd 100644
--- a/app-crypt/certbot-dns-poweradmin/Manifest
+++ b/app-crypt/certbot-dns-poweradmin/Manifest
@@ -1,2 +1,2 @@
-DIST certbot_dns_poweradmin-0.2.5.tar.gz 63481 BLAKE2B 8bc59c99749ebed96d1705baade8a47652a4c5823e7956a1f307a863f341bab728b22abea6d7cc59af5538ecdd3d4b4d37119a4b422a0994aca60b1141f74a7a SHA512 99b4885ad79df7b428acc25ca2b52c900bdeb22181ed12025cc3cb91bdb45512f019a33ea2dc40ae395fe815f40303ffdd4e119f9bac3924aa520f57148664b7
DIST certbot_dns_poweradmin-0.2.6.tar.gz 63796 BLAKE2B b236cd8c441943a26e0f49af105ccb65331b96121291878f1d48772c37c8e6f950d924dd89cede82db9d178053353b142f7b6c57eeb570442cd0d654e744d99e SHA512 7a32acfc2cf6086ca428a6e3e2348c6207ef46f67153cee4267c73de31553522c9b7b8300a5ad771b9225cace99e7e823b6dd6ac7a58bc0a47dc68c653c1d585
+DIST certbot_dns_poweradmin-0.2.7.tar.gz 28467 BLAKE2B d4cb4e04ab123eea28341ddc5decfb9228066c667b0936e12f6eef6ece0dfbf9b2a41e9669fe385152cd37d1f43b0526069a14fd63e027ea7a7e4a0a4621f79f SHA512 f51d4c48d81e67f671f8d4f058abd4a4c112267ba9db0042bf9b6c3d769a9298b5851da238baa6538455a31d72b0cb43b149916d8d3c34f2abdf7898e57f9c57
diff --git a/app-crypt/certbot-dns-poweradmin/certbot-dns-poweradmin-0.2.5.ebuild b/app-crypt/certbot-dns-poweradmin/certbot-dns-poweradmin-0.2.7.ebuild
index a122acde7452..a122acde7452 100644
--- a/app-crypt/certbot-dns-poweradmin/certbot-dns-poweradmin-0.2.5.ebuild
+++ b/app-crypt/certbot-dns-poweradmin/certbot-dns-poweradmin-0.2.7.ebuild
diff --git a/app-doc/python-docs/Manifest b/app-doc/python-docs/Manifest
index 58b5b31b1738..7e8f60bea943 100644
--- a/app-doc/python-docs/Manifest
+++ b/app-doc/python-docs/Manifest
@@ -7,8 +7,11 @@ DIST python-3.12.14-docs-html.tar.bz2 8459739 BLAKE2B 21360dcb5ee9ddc4ea2d92375d
DIST python-3.12.15-docs-html.tar.bz2 8523045 BLAKE2B ffd9a25064dd4aa1909a8c1d78e7d3e6e566dfdcb2d4f4f9ae320123617a5c31914246d8aca250a6ff938c668f5029fc367083b5011a2014cea8ff3f10239d55 SHA512 b477230f708aea9285d53a3cee785a7a2bc2a07bd8fd6aaa3682a43d7a03193a103ce7702a92af46dd5c21f65fdca4d111c2c9fa579f7ed6ec8ac3b135cbee6e
DIST python-3.13.15-docs-html.tar.bz2 10655948 BLAKE2B c8f6cf4d9bcf13c42664e9c3bb6021be74ff4c6162246a77aede667c386e46d32504360a4d661a718f2c2d05f5d93937797ec01456cfec6fd0464d1a0af2f441 SHA512 d2c6fdbdec71983171380eba21fae0cb9f8be06847ac4dd356af36706c07fbbf564f434d7bce6a2b702db04e1fb22e5a52ce61eab9ecde92acb5360320721d02
DIST python-3.13.16-docs-html.tar.bz2 8036754 BLAKE2B d5be43d01c491bd3c648a273ccf392ef1a5fa67eb6905d0fea5fa758f935901bf81c639a6a0caf8fc22279f25a1f93886fe4a9a88e0e42ba1ef8158f8d485e05 SHA512 494a263d408f2955dcb4605f40a828424ddce9ce1814df3ec41a95ce375914523e30db489263c148baca049682ce432b63a7f2621240650e91325563e61192a7
+DIST python-3.13.17-docs-html.tar.bz2 8026399 BLAKE2B f49da7e546e415018fcb231c8346bfe28799b8ce447b785421dd2e72d01515d23c8fa72f0ca5df4554e01834a44968573a7a636fbe16d0615c9e5a6c1b322cc3 SHA512 acb543b51ae0c27ec18bea6d25a188334ba59ac108c06f4e73750b27328033db08675b262e9736558741d37c6479c5b38bd6dfaee15aab9957d6ba7a3cd40a98
DIST python-3.14.7-docs-html.tar.bz2 11177897 BLAKE2B 9dc8f34beecbe5a48df3943a329473a6748a6471c22b490a061e63506d4c52eb3d8e67441b253b49001274168a8e1789b0057fdcfd734c854cb7b4a791fc0863 SHA512 2bd30188aa291bef884f7a6a43e0b4e21cc774925b21d7fc6bfaeffd104db7c745aba11612de7858fbb279640678674627763a9727be6936d1f844874ea6efdd
DIST python-3.14.8-docs-html.tar.bz2 8442599 BLAKE2B 6769f2300bdcae41371175e5e8777fcd06b8267c8ee4eb0c72b47a9144fed3fc390ea26a97c44c1628f82bc508e1c8bf90ad9cbbc440e331d616748bee4ec508 SHA512 409c206c4f1a85386118df5354a57b0dc1ad7d937900f71fad43f1299051169eeffe8422a2b19263df41d9256257f1cdd2ace4e8d2de3959743d0c1ec1901c93
+DIST python-3.14.9-docs-html.tar.bz2 8471710 BLAKE2B 004256e57ae9ee8b687b8061e438c2317a2f2c372a3b063f7ce2fca330b458e1592cf08b4abf9f98f46695ed957c76ea2975d5d69e29a58107c78ac444556f8b SHA512 4e3e5a5dae2938771b099f7f77be87c6460136f931a1e6dcc77f4eec5c0500e48bdec9d92bd5c632db7847904e3c864e857455c40f9640668335b148323e8174
DIST python-3.15.0-docs-html.tar.bz2 19583541 BLAKE2B 273e14cf12e8efc00fbc99720ea052d7419b30adc46f8a7dd868b965c1feeb21d5de5a699b8fc339740f50b19b91962af6e6c8ba5dda05e179c7627c2945ed80 SHA512 f8a0976e5e308cbfc9ff787a75119fbe05dde39362138ab82c6b5eb979c220cf2b3e0e2ca24c7582c3e3d0bb268a6fbc22b2f433bbc90ab8605497f24d0043d3
+DIST python-3.15.1-docs-html.tar.bz2 19638289 BLAKE2B 46b3da427b3d79bfb8e5bae099bf88735fb534d271d548b44cd447a14506d8f93fff76870a8edff560f5914ffa45e7b6d3f4968e8658bc6e51b4f4f255b9c3ef SHA512 c7a021ca913b3b461a667fd89e2dad47230469f81000482513811e80e0bc529e80acadc9c1e6ff06e3ddf2b017367e8d41a94dbce8c872eafb26d8711b9724e6
DIST python-3.8.20-docs-html.tar.bz2 6727651 BLAKE2B ec11857b5bdfb4646a2762353db877a558cfc543563a7a9b0db100f675511c31450d16c30a986d39226a9b16be3ffd132863e396ef05165047ab73bf037bf2a6 SHA512 0a77f0240d6d495a5099d4a95e151f38517730815e6f3d9b82964cf60be95b8bdc960916d317e19bb8e14a9604217cd1fa85703996aec972004a6a93d4ffa6d0
DIST python-3.9.25-docs-html.tar.bz2 7017902 BLAKE2B 8ce019aad3c3d15c56536a46e4a26c27889a1a92cfdd6fd49be4883d125e70db6467ba652057253b23de054503d12f7b8c6fd948f4f9e462d70a398948cc4698 SHA512 1af06c9cafe0b11e0e9ee0bce252e5c356a5508f11932f5a29a84412d4a5d9e71d79cba623bf8086bfbcddaa90fc0116d01b9d427711c4a784bb5feeb8c3a9de
diff --git a/app-doc/python-docs/python-docs-3.13.17.ebuild b/app-doc/python-docs/python-docs-3.13.17.ebuild
new file mode 100644
index 000000000000..0affc199615a
--- /dev/null
+++ b/app-doc/python-docs/python-docs-3.13.17.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P=python-${PV}-docs-html
+DESCRIPTION="HTML documentation for Python"
+HOMEPAGE="https://www.python.org/doc/"
+SRC_URI="https://www.python.org/ftp/python/doc/${PV}/${MY_P}.tar.bz2"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+src_install() {
+ rm -r _sources || die
+ docinto html
+ dodoc -r .
+
+ newenvd - 60python-docs-${SLOT} <<-EOF
+ PYTHONDOCS_${SLOT//./_}="${EPREFIX}/usr/share/doc/${PF}/html/library"
+ EOF
+}
diff --git a/app-doc/python-docs/python-docs-3.14.9.ebuild b/app-doc/python-docs/python-docs-3.14.9.ebuild
new file mode 100644
index 000000000000..0affc199615a
--- /dev/null
+++ b/app-doc/python-docs/python-docs-3.14.9.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P=python-${PV}-docs-html
+DESCRIPTION="HTML documentation for Python"
+HOMEPAGE="https://www.python.org/doc/"
+SRC_URI="https://www.python.org/ftp/python/doc/${PV}/${MY_P}.tar.bz2"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+src_install() {
+ rm -r _sources || die
+ docinto html
+ dodoc -r .
+
+ newenvd - 60python-docs-${SLOT} <<-EOF
+ PYTHONDOCS_${SLOT//./_}="${EPREFIX}/usr/share/doc/${PF}/html/library"
+ EOF
+}
diff --git a/app-doc/python-docs/python-docs-3.15.1.ebuild b/app-doc/python-docs/python-docs-3.15.1.ebuild
new file mode 100644
index 000000000000..0affc199615a
--- /dev/null
+++ b/app-doc/python-docs/python-docs-3.15.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P=python-${PV}-docs-html
+DESCRIPTION="HTML documentation for Python"
+HOMEPAGE="https://www.python.org/doc/"
+SRC_URI="https://www.python.org/ftp/python/doc/${PV}/${MY_P}.tar.bz2"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+src_install() {
+ rm -r _sources || die
+ docinto html
+ dodoc -r .
+
+ newenvd - 60python-docs-${SLOT} <<-EOF
+ PYTHONDOCS_${SLOT//./_}="${EPREFIX}/usr/share/doc/${PF}/html/library"
+ EOF
+}
diff --git a/app-editors/vscode/Manifest b/app-editors/vscode/Manifest
index f3e1ad7420bf..224aa408b23b 100644
--- a/app-editors/vscode/Manifest
+++ b/app-editors/vscode/Manifest
@@ -4,3 +4,6 @@ DIST vscode-1.141.0-arm64.tar.gz 349562023 BLAKE2B eec9f0b35a525f898a24943098ff0
DIST vscode-1.142.0-amd64.tar.gz 345727690 BLAKE2B 7adc16de4c2cceb285e5e5686d2a292edf949c2bb86fcacb8a2573294bdb224c491c266419279b4896a89ce0a25c01c6b375045b5f14e5ccfb87af04aa518769 SHA512 09b8e89b13a1cc7e641f9bde977accbe6ddfbe90e85fd501568d8db46f430dd4480812e569dd01121edeb51037d8c23df3aede31f201309b70b6cbeff0063f99
DIST vscode-1.142.0-arm.tar.gz 228118003 BLAKE2B e0a284408b7c850b90eef3ccae9a722df2964ba0204c79b93e7d55fdc2d89eface456de10cd889d857821a92b4a05b160201ae8911d7e248e789b500456a2a42 SHA512 46efa72ff7de1cab7e485874f57bddab16a09c04e56ae4201c721539fa412811be0492865ac9012577e24663507962812abd12b5064dffb885eef1cd3c0f7e7b
DIST vscode-1.142.0-arm64.tar.gz 337754057 BLAKE2B 80cf73c1e512c19c3d2fe814d32f6809009bb22223cfe35b33a405d77de78fa7eba4595ca243704dfa04e488ea6b9997d058d8ad8c8cd527009d1d316870fcf6 SHA512 42f729d5a99a50ea2f56a74d27e2528136e636a5761fd0dcb6f1121b344b47b3a0b77b1b483d335beee6a7c78a1ed03c8322e3b2938b024c3fb32f21ddc73cb9
+DIST vscode-1.143.0-amd64.tar.gz 350843281 BLAKE2B 522b94e337eb2c2e5cda0e69c5d483fb2745df0654dd3d5158e532d2870a7d3143a02081c5772d0b7d93cf3fc1839320449cab7a17ead0f02909d372eb548b42 SHA512 4e32fe1dca48478a8b00c3e8d796f77b5954ed91cb1464fa7ac4c950b5509535f1236eca4adeec858019f8e9da14196a9da331b30a3cd4a4da3567251e177ddd
+DIST vscode-1.143.0-arm.tar.gz 229214070 BLAKE2B 90146a3fb63aa17612baad87681d415691b2f72d2418b21461a312571ca6457186d28cd636cee196493246d43ab31581c0dbc41dbfb343ad26f0feaff7567944 SHA512 3f649626ecf5b2a61ce19a3a63f578096ecc7b724f0900826c7f8504a159934d32de188a616ab5cfbe79cc5c886facc50ab0a5c4389c500d2f600790a7b52273
+DIST vscode-1.143.0-arm64.tar.gz 342721150 BLAKE2B ea05e2de9cc71a67f4074152ee4a689f2e418859d855950ad2f9c9d71b1e3e4b54a2d352fbcae3ace38732cd7721206beb2b1082512a3e870e0e62e1751d0823 SHA512 a16e41dd59acc6290446838684bebe0d109e06834d10c248770d9688ab948667cd05ec8a253ad0ce0429798e3b970adfd3ddb7c086cd764c83f0b3abc9663759
diff --git a/app-editors/vscode/vscode-1.143.0.ebuild b/app-editors/vscode/vscode-1.143.0.ebuild
new file mode 100644
index 000000000000..9cf66870460a
--- /dev/null
+++ b/app-editors/vscode/vscode-1.143.0.ebuild
@@ -0,0 +1,161 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
+ hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
+ sv sw ta te th tr uk ur vi zh-CN zh-TW"
+
+inherit chromium-2 desktop optfeature pax-utils shell-completion xdg
+
+DESCRIPTION="Multiplatform Visual Studio Code from Microsoft"
+HOMEPAGE="https://code.visualstudio.com"
+SRC_URI="
+ amd64? ( https://update.code.visualstudio.com/${PV}/linux-x64/stable -> ${P}-amd64.tar.gz )
+ arm? ( https://update.code.visualstudio.com/${PV}/linux-armhf/stable -> ${P}-arm.tar.gz )
+ arm64? ( https://update.code.visualstudio.com/${PV}/linux-arm64/stable -> ${P}-arm64.tar.gz )
+"
+S="${WORKDIR}"
+
+LICENSE="
+ Apache-2.0
+ BSD
+ BSD-1
+ BSD-2
+ BSD-4
+ CC-BY-4.0
+ ISC
+ LGPL-2.1+
+ Microsoft-vscode
+ MIT
+ MPL-2.0
+ openssl
+ PYTHON
+ TextMate-bundle
+ Unlicense
+ UoI-NCSA
+ W3C
+"
+SLOT="0"
+KEYWORDS="-* amd64 ~arm arm64"
+IUSE="egl wayland webkit"
+RESTRICT="mirror strip bindist"
+
+RDEPEND="
+ || (
+ sys-apps/systemd
+ sys-apps/systemd-utils
+ )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ app-crypt/libsecret[crypt]
+ app-misc/ca-certificates
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ media-libs/alsa-lib
+ media-libs/libglvnd
+ media-libs/mesa
+ net-misc/curl
+ sys-apps/dbus
+ virtual/zlib:=
+ sys-process/lsof
+ x11-libs/cairo
+ x11-libs/gtk+:3
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon
+ x11-libs/libxkbfile
+ x11-libs/libXrandr
+ x11-libs/libXScrnSaver
+ x11-libs/pango
+ x11-misc/xdg-utils
+ webkit? (
+ net-libs/libsoup:3.0
+ net-libs/webkit-gtk:4.1
+ )
+"
+
+QA_PREBUILT="*"
+
+src_unpack() {
+ default
+ mv "${S}"/VSCode-linux-* "${S}/vscode" || die
+}
+
+src_configure() {
+ default
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_prepare() {
+ default
+ pushd "vscode/locales" > /dev/null || die
+ chromium_remove_language_paks
+ popd > /dev/null || die
+}
+
+src_install() {
+ cd vscode || die
+
+ # Disable update server
+ sed -e "/updateUrl/d" -i ./resources/app/product.json || die
+
+ if ! use webkit; then
+ rm -r ./resources/app/extensions/microsoft-authentication || die
+ fi
+
+ # Install
+ pax-mark m code
+ mkdir -p "${ED}/opt/${PN}" || die
+ cp -r . "${ED}/opt/${PN}" || die
+ fperms 4711 /opt/${PN}/chrome-sandbox
+
+ dosym -r "/opt/${PN}/bin/code" "usr/bin/vscode"
+ dosym -r "/opt/${PN}/bin/code" "usr/bin/code"
+
+ local EXEC_EXTRA_FLAGS=()
+ if use wayland; then
+ EXEC_EXTRA_FLAGS+=( "--ozone-platform-hint=auto" "--enable-wayland-ime" )
+ fi
+ if use egl; then
+ EXEC_EXTRA_FLAGS+=( "--use-gl=egl" )
+ fi
+
+ sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \
+ "${FILESDIR}/code-url-handler.desktop" \
+ > "${T}/code-url-handler.desktop" || die
+
+ sed "s|@exec_extra_flags@|${EXEC_EXTRA_FLAGS[*]}|g" \
+ "${FILESDIR}/code.desktop" \
+ > "${T}/code.desktop" || die
+
+ domenu "${T}/code.desktop"
+ domenu "${T}/code-url-handler.desktop"
+ newicon "resources/app/resources/linux/code.png" "vscode.png"
+
+ # Install metainfo
+ insinto /usr/share/metainfo
+ doins "${FILESDIR}/code.appdata.xml"
+
+ # Install MIME type definitions
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}/code-workspace.xml"
+
+ # Install completions
+ newbashcomp resources/completions/bash/code code
+ newzshcomp resources/completions/zsh/_code _code
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "desktop notifications" x11-libs/libnotify
+ optfeature "keyring support inside vscode" "virtual/secret-service"
+ optfeature "Live Share" dev-libs/icu
+}
diff --git a/app-editors/zed/zed-1.15.0.ebuild b/app-editors/zed/zed-1.15.0.ebuild
index 973d8ff9b29b..fe2d41a35c96 100644
--- a/app-editors/zed/zed-1.15.0.ebuild
+++ b/app-editors/zed/zed-1.15.0.ebuild
@@ -117,7 +117,7 @@ LICENSE+="
CC0-1.0 ISC LGPL-3 MIT MIT-0 MPL-2.0 UoI-NCSA Unicode-3.0 ZLIB BZIP2
"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="~amd64 arm64"
CHECKREQS_DISK_BUILD="20G"
CHECKREQS_MEMORY="8G"
diff --git a/app-emacs/nxml-gentoo-schemas/Manifest b/app-emacs/nxml-gentoo-schemas/Manifest
index 046fe3c5f8f0..890d4cf8342b 100644
--- a/app-emacs/nxml-gentoo-schemas/Manifest
+++ b/app-emacs/nxml-gentoo-schemas/Manifest
@@ -1,2 +1 @@
-DIST nxml-gentoo-schemas-20260901.tar.xz 8920 BLAKE2B 8dd0688d6bd714ed317ccdd14c7969b85529e03cff04215c751b5ab2aaa9e6262f2f2008c8f2bb21a7e28f33d0bcd044990989ab5f97f8baadbdb1bad1973228 SHA512 868f82acd929bae1d9ddddb6cd99ff7b88cb0208f6bfd69135316d494b1dd8fb742c70087d675029bf2a2f7841d8d2c773079bdbedf0933f08edd9c9bf50b77f
DIST nxml-gentoo-schemas-20260922.tar.xz 8944 BLAKE2B 959490e6aeb37b8af15282e382e426e86a7046a6b626cef395abb35e8e77ce2781b736efaf82160da8511729cb4a16d95bf36430a2eb1c18d0a29427149a6cce SHA512 f2fd6699b33f133403fad59b013bc22964748593fe26d9237f4c3f951ea1d3aa4f5586a96fac9d56d3280a98de0df4bb18288cd1282195a59cedf7d62a0eefd5
diff --git a/app-emacs/nxml-gentoo-schemas/nxml-gentoo-schemas-20260901.ebuild b/app-emacs/nxml-gentoo-schemas/nxml-gentoo-schemas-20260901.ebuild
deleted file mode 100644
index 955d9fbb1a66..000000000000
--- a/app-emacs/nxml-gentoo-schemas/nxml-gentoo-schemas-20260901.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=9
-
-inherit elisp
-
-DESCRIPTION="Extension for nxml-mode with Gentoo-specific schemas"
-HOMEPAGE="https://gitweb.gentoo.org/proj/nxml-gentoo-schemas.git/"
-SRC_URI="https://distfiles.gentoo.org/pub/proj/emacs/${P}.tar.xz"
-
-LICENSE="MIT GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~x64-macos"
-
-SITEFILE="60${PN}-gentoo.el"
-
-src_compile() { :; }
-
-src_install() {
- insinto "${SITEETC}/${PN}"
- doins schemas.xml *.rnc
- elisp-site-file-install "${FILESDIR}/${SITEFILE}"
-}
diff --git a/app-text/texlive-core/texlive-core-2023-r11.ebuild b/app-text/texlive-core/texlive-core-2023-r11.ebuild
new file mode 100644
index 000000000000..0e6ea107a97d
--- /dev/null
+++ b/app-text/texlive-core/texlive-core-2023-r11.ebuild
@@ -0,0 +1,521 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+TL_SOURCE_VERSION=20230311
+inherit flag-o-matic toolchain-funcs libtool texlive-common
+
+MY_P=${PN%-core}-${TL_SOURCE_VERSION}-source
+
+DESCRIPTION="A complete TeX distribution"
+HOMEPAGE="https://tug.org/texlive/"
+GENTOO_TEX_PATCHES_NUM=5
+SRC_URI="
+ https://mirrors.ctan.org/systems/texlive/Source/${MY_P}.tar.xz
+ https://gitweb.gentoo.org/proj/tex-patches.git/snapshot/tex-patches-${GENTOO_TEX_PATCHES_NUM}.tar.bz2
+ -> gentoo-tex-patches-${GENTOO_TEX_PATCHES_NUM}.tar.bz2
+ https://raw.githubusercontent.com/debian-tex/texlive-bin/58a00e704a15ec3dd8abbf3826f28207eb095251/debian/patches/1054218.patch
+ -> ${PN}-2023-pdflatex-big-endian-fix.patch
+ https://bugs.gentoo.org/attachment.cgi?id=908573
+ -> ${PN}-2023-mplib-h.patch
+"
+
+# Macros that are not a part of texlive-sources or or pulled in from collection-binextra
+# but still needed for other packages during installation.
+TL_CORE_EXTRA_CONTENTS="
+ autosp.r58211
+ axodraw2.r58155
+ chktex.r64797
+ detex.r66186
+ dvi2tty.r66186
+ dvidvi.r65952
+ dviljk.r66186
+ dvipdfmx.r69127
+ dvipos.r66186
+ gsftopk.r52851
+ hyphen-base.r68321
+ lacheck.r66186
+ m-tx.r64182
+ makeindex.r62517
+ pmx.r65926
+ texdoctk.r62186
+ texlive-scripts.r69754
+ texlive-scripts-extra.r62517
+ texlive.infra.r69740
+ tpic2pdftex.r52851
+ upmendex.r66381
+ velthuis.r66186
+ vlna.r66186
+ xindy.r65958
+ xml2pmx.r57972
+"
+TL_CORE_EXTRA_DOC_CONTENTS="
+ autosp.doc.r58211
+ axodraw2.doc.r58155
+ chktex.doc.r64797
+ detex.doc.r66186
+ dvi2tty.doc.r66186
+ dvidvi.doc.r65952
+ dviljk.doc.r66186
+ dvipdfmx.doc.r69127
+ dvipos.doc.r66186
+ gsftopk.doc.r52851
+ lacheck.doc.r66186
+ m-tx.doc.r64182
+ makeindex.doc.r62517
+ pmx.doc.r65926
+ texdoctk.doc.r62186
+ texlive-scripts.doc.r69754
+ texlive-scripts-extra.doc.r62517
+ texlive.infra.doc.r69740
+ tpic2pdftex.doc.r52851
+ upmendex.doc.r66381
+ velthuis.doc.r66186
+ vlna.doc.r66186
+ xindy.doc.r65958
+ xml2pmx.doc.r57972
+"
+TL_CORE_EXTRA_SRC_CONTENTS="
+ axodraw2.source.r58155
+"
+
+TEXLIVE_MODULE_BINSCRIPTS="
+ texmf-dist/scripts/m-tx/m-tx.lua
+ texmf-dist/scripts/texlive/fmtutil-sys.sh
+ texmf-dist/scripts/texlive/fmtutil-user.sh
+ texmf-dist/scripts/texlive/fmtutil.pl
+ texmf-dist/scripts/texlive/mktexlsr
+ texmf-dist/scripts/texlive/mktexmf
+ texmf-dist/scripts/texlive/mktexpk
+ texmf-dist/scripts/texlive/mktextfm
+ texmf-dist/scripts/texlive/rungs.lua
+ texmf-dist/scripts/texlive/tlmgr.pl
+ texmf-dist/scripts/texlive/updmap-sys.sh
+ texmf-dist/scripts/texlive/updmap-user.sh
+ texmf-dist/scripts/texlive/updmap.pl
+ texmf-dist/scripts/texlive-extra/allcm.sh
+ texmf-dist/scripts/texlive-extra/allneeded.sh
+ texmf-dist/scripts/texlive-extra/dvi2fax.sh
+ texmf-dist/scripts/texlive-extra/dvired.sh
+ texmf-dist/scripts/texlive-extra/e2pall.pl
+ texmf-dist/scripts/texlive-extra/kpsetool.sh
+ texmf-dist/scripts/texlive-extra/kpsewhere.sh
+ texmf-dist/scripts/texlive-extra/ps2frag.sh
+ texmf-dist/scripts/texlive-extra/pslatex.sh
+ texmf-dist/scripts/texlive-extra/texconfig-dialog.sh
+ texmf-dist/scripts/texlive-extra/texconfig-sys.sh
+ texmf-dist/scripts/texlive-extra/texconfig.sh
+ texmf-dist/scripts/texlive-extra/texlinks.sh
+"
+
+TEXLIVE_MODULE_BINLINKS="
+ fmtutil:mktexfmt
+ mktexlsr:texhash
+ allcm:allec
+ kpsetool:kpsexpand
+ kpsetool:kpsepath
+"
+texlive-common_append_to_src_uri TL_CORE_EXTRA_CONTENTS
+
+SRC_URI+=" doc? ( "
+texlive-common_append_to_src_uri TL_CORE_EXTRA_DOC_CONTENTS
+SRC_URI+=" )"
+
+SRC_URI+=" source? ( "
+texlive-common_append_to_src_uri TL_CORE_EXTRA_SRC_CONTENTS
+SRC_URI+=" )"
+
+S="${WORKDIR}/${MY_P}"
+LICENSE="BSD GPL-1+ GPL-2 GPL-2+ GPL-3+ MIT TeX-other-free"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+IUSE="cjk X doc source tk +luajittex xetex xindy"
+
+TEXMF_PATH=/usr/share/texmf-dist
+MODULAR_X_DEPEND="
+ X? (
+ x11-libs/libX11
+ x11-libs/libXmu
+ )"
+
+COMMON_DEPEND="
+ ${MODULAR_X_DEPEND}
+ virtual/zlib:=
+ >=media-libs/harfbuzz-1.4.5:=[icu,graphite]
+ >=media-libs/libpng-1.2.43-r2:0=
+ media-libs/gd[png]
+ media-gfx/graphite2:=
+ media-gfx/potrace:=
+ >=x11-libs/cairo-1.12
+ >=x11-libs/pixman-0.18
+ dev-libs/zziplib:=
+ app-text/libpaper:=
+ dev-libs/gmp:=
+ dev-libs/mpfr:=
+ >=dev-libs/ptexenc-1.4.3
+ xetex? (
+ >=app-text/teckit-2.5.10
+ media-libs/fontconfig
+ )
+ xindy? ( dev-lisp/clisp:= )
+ media-libs/freetype:2
+ >=dev-libs/icu-50:=
+ >=dev-libs/kpathsea-6.3.5:=
+"
+
+BDEPEND="
+ sys-apps/ed
+ sys-devel/flex
+ virtual/pkgconfig
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+"
+
+# !<dev-texlive/texlive-langother-2023 see https://bugs.gentoo.org/928307
+RDEPEND="
+ ${COMMON_DEPEND}
+ virtual/perl-Getopt-Long
+ app-misc/ca-certificates
+ dev-perl/File-HomeDir
+ dev-perl/Log-Dispatch
+ dev-perl/Unicode-LineBreak
+ dev-perl/YAML-Tiny
+ tk? (
+ dev-lang/tk
+ dev-perl/Tk
+ )
+ !<dev-texlive/texlive-basic-2023
+ !<dev-texlive/texlive-mathscience-2023
+ !<dev-texlive/texlive-langother-2023
+ !<dev-texlive/texlive-music-2023
+"
+
+BUILDDIR="${WORKDIR}/${P}_build"
+
+RELOC_TARGET=texmf-dist
+
+src_prepare() {
+ mkdir "${BUILDDIR}" || die "failed to create build dir"
+
+ cd "${WORKDIR}" || die
+
+ # From texlive-module.eclass.
+ sed -n -e 's:\s*RELOC/::p' tlpkg/tlpobj/* > "${T}/reloclist" || die
+ sed -e 's/\/[^/]*$//' -e "s:^:${RELOC_TARGET}/:" "${T}/reloclist" |
+ sort -u |
+ xargs mkdir -p || die
+ local i
+ while read -r i; do
+ mv "${i}" "${RELOC_TARGET}/${i%/*}" || die
+ done < "${T}/reloclist"
+ mv "${WORKDIR}"/texmf* "${S}" || die "failed to move texmf files"
+
+ cd "${S}" || die
+
+ TL_KPATHSEA_INCLUDES=$($(tc-getPKG_CONFIG) kpathsea --variable=includedir || die "failed to invoke pkg-config")
+ sed -i \
+ -e "s,/usr/include /usr/local/include.*echo \$KPATHSEA_INCLUDES.*,${TL_KPATHSEA_INCLUDES}\"," \
+ texk/web2c/configure || die
+
+ local patch_dir="${WORKDIR}/tex-patches-${GENTOO_TEX_PATCHES_NUM}"
+ eapply "${patch_dir}"
+
+ # Can be dropped in texlive 2024
+ # https://git.texlive.info/texlive/commit/?id=c45afdc843154fcb09b583f54a2f802c6069b50e
+ eapply "${DISTDIR}"/texlive-core-2023-pdflatex-big-endian-fix.patch
+
+ # bug #837875
+ eapply "${DISTDIR}"/texlive-core-2023-mplib-h.patch
+
+ default
+
+ elibtoolize
+
+ # Drop this once cairo's and mplibdir's (texlive-core-2023-mplib-h.patch)
+ # autoconf patches are gone. See bug #927714#c4, bug #853121 for cairo,
+ # and bug #837875 for mplibdir (in web2c).
+ "${S}"/reautoconf libs/cairo texk/web2c || die
+}
+
+src_configure() {
+ # TODO: report upstream
+ # bug #915223
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ # Needed for 32bit architectures, bug 928096
+ # This is upstream recommendation for the moment, see also
+ # https://www.tug.org/texlive/build.html
+ # I'm fairly sure it just hides a real bug in pdftex, keeping 928096
+ # thus open, but hey, at least it's not a regression...
+ append-cflags -Wno-incompatible-pointer-types
+
+ # It fails on alpha without this
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Too many regexps use A-Z a-z constructs, what causes problems with locales
+ # that don't have the same alphabetical order than ascii. Bug #242430
+ # So we set LC_ALL to C in order to avoid problems.
+ export LC_ALL=C
+
+ # Disable freetype-config as this is considered obsolete.
+ # Also only pkg-config works for prefix as described in bug #690094
+ export ac_cv_prog_ac_ct_FT2_CONFIG=no
+
+ local my_conf=(
+ --bindir="${EPREFIX}"/usr/bin
+ --datadir="${BUILDDIR}"
+ --with-system-freetype2
+ --with-system-zlib
+ --with-system-libpng
+ --with-system-teckit
+ --with-system-kpathsea
+ --with-kpathsea-includes="${TL_KPATHSEA_INCLUDES}"
+ --with-system-icu
+ --with-system-ptexenc
+ --with-system-harfbuzz
+ --with-system-graphite2
+ --with-system-cairo
+ --with-system-pixman
+ --with-system-zziplib
+ --with-system-libpaper
+ --with-system-gmp
+ --with-system-gd
+ --with-system-mpfr
+ --with-system-potrace
+ --disable-multiplatform
+ --enable-chktex
+ --enable-epsfwin
+ --enable-detex
+ --enable-dvi2tty
+ --enable-mftalkwin
+ --enable-regiswin
+ --enable-shared
+ --enable-tektronixwin
+ --enable-unitermwin
+ --enable-vlna
+ --disable-psutils
+ --disable-t1utils
+ --enable-ipc
+ --disable-bibtex-x
+ --disable-dvipng
+ --disable-dvipsk
+ --disable-lcdf-typetools
+ --disable-ps2pk
+ --disable-ttf2pk2
+ --disable-tex4htk
+ --disable-cjkutils
+ --disable-xdvik
+ --enable-luatex
+ --disable-dvisvgm
+ --disable-ps2eps
+ --disable-static
+ --disable-native-texlive-build
+ --disable-largefile
+ --disable-xindy-docs
+ --disable-xindy-rules
+ --with-banner-add=" Gentoo Linux"
+ $(use_enable luajittex)
+ $(use_enable luajittex luajithbtex)
+ $(use_enable luajittex mfluajit)
+ $(use_enable xetex)
+ $(use_enable cjk dviout-util)
+ $(use_enable cjk ptex)
+ $(use_enable cjk eptex)
+ $(use_enable cjk uptex)
+ $(use_enable cjk euptex)
+ $(use_enable cjk mendexk)
+ $(use_enable cjk makejvf)
+ $(use_enable cjk pmp)
+ $(use_enable cjk upmp)
+ $(use_enable tk texdoctk)
+ $(use_with X x)
+ $(use_enable xindy)
+ --enable-ptex=no
+ --enable-autosp=yes
+ --enable-axodraw2=yes
+ --enable-devnag=yes
+ --enable-lacheck=yes
+ --enable-m-tx=yes
+ --enable-pmx=yes
+ --enable-tpic2pdftex=yes
+ --with-clisp-runtime=system
+ --enable-xml2pmx=yes
+ $(use_enable X xpdfopen)
+ --enable-web2c=yes
+ --enable-afm2pl=yes
+ --enable-dvidvi=yes
+ --enable-dviljk=yes
+ --enable-dvipdfm-x
+ --enable-dvipos=yes
+ --enable-gregorio=yes
+ --enable-gsftopk=yes
+ --enable-makeindexk=yes
+ --enable-musixtnt=yes
+ --enable-seetexk=yes
+ --enable-ttfdump=yes
+ --enable-upmendex=yes
+ --enable-texlive=yes
+ --enable-linked-scripts=no
+ # web2c afm2pl chktex dtl dvi2tty dvidvi dviljk dviout-util dvipdfm-x gregorio
+ )
+
+ # Enable the following on version bumps. While it makes the build
+ # always fail, presumably because texlive passes these configure
+ # options to sub-configures, it still points out dropped
+ # options. See https://bugs.gentoo.org/828591
+ my_conf+=(
+ # --enable-option-checking=fatal
+ )
+
+ tc-export CC CXX AR RANLIB
+ cd "${BUILDDIR}" || die
+ ECONF_SOURCE="${S}" \
+ econf -C "${my_conf[@]}"
+}
+
+src_compile() {
+ cd "${BUILDDIR}" || die
+ tc-export CC CXX AR RANLIB
+
+ emake AR="$(tc-getAR)" SHELL="${EPREFIX}"/bin/sh texmf="${EPREFIX}"${TEXMF_PATH:-/usr/share/texmf-dist}
+
+ cd "${S}" || die
+ # Mimic updmap --syncwithtrees to enable only fonts installed
+ # Code copied from updmap script
+ while read -r i; do
+ texlive-common_is_file_present_in_texmf "${i}" || echo "${i}"
+ done > "${T}/updmap_update" < <(grep -E '^(Mixed|Kanji)?Map' "texmf-dist/web2c/updmap.cfg" | sed 's@.* @@')
+ {
+ sed 's@/@\\/@g; s@^@/^MixedMap[ ]*@; s@$@$/s/^/#! /@' <"${T}/updmap_update"
+ sed 's@/@\\/@g; s@^@/^Map[ ]*@; s@$@$/s/^/#! /@' <"${T}/updmap_update"
+ sed 's@/@\\/@g; s@^@/^KanjiMap[ ]*@; s@$@$/s/^/#! /@' <"${T}/updmap_update"
+ } > "${T}/updmap_update2"
+ sed -f "${T}/updmap_update2" "texmf-dist/web2c/updmap.cfg" > "${T}/updmap_update3"\
+ && cat "${T}/updmap_update3" > "texmf-dist/web2c/updmap.cfg"
+}
+
+src_test() {
+ cd "${BUILDDIR}" || die
+
+ sed -i \
+ -e 's;uptexdir/nissya.test;;' \
+ -e 's;uptexdir/upbibtex.test;;' \
+ texk/web2c/Makefile || die
+ sed -i \
+ -e 's;dvispc.test;;' \
+ texk/dviout-util/Makefile || die
+
+ # TODO: Drop -j1 when bumping to texlive-2024
+ # https://bugs.gentoo.org/935825
+ emake check -j1
+}
+
+src_install() {
+ cd "${BUILDDIR}" || die
+ dodir ${TEXMF_PATH:-/usr/share/texmf-dist}/web2c
+
+ emake DESTDIR="${D}" texmf="${ED}${TEXMF_PATH:-/usr/share/texmf-dist}" run_texlinks="true" run_mktexlsr="true" install
+
+ cd "${S}" || die
+ dodir /usr/share # just in case
+ cp -pR texmf-dist "${ED}/usr/share/" || die "failed to install texmf trees"
+ cp -pR "${WORKDIR}"/tlpkg "${ED}/usr/share/" || die "failed to install tlpkg files"
+
+ # Use the system CA bundle instead of the stale bundled copy
+ # (used by tlmgr), bug #984637.
+ rm "${ED}"/usr/share/tlpkg/installer/curl/curl-ca-bundle.crt || die
+ dosym -r /etc/ssl/certs/ca-certificates.crt \
+ /usr/share/tlpkg/installer/curl/curl-ca-bundle.crt
+
+ # When X is disabled mf-nowin doesn't exist but some scripts expect it to
+ # exist. Instead, it is called mf, so we symlink it to please everything.
+ use X || dosym mf /usr/bin/mf-nowin
+
+ docinto texk
+ cd "${S}/texk" || die
+ dodoc ChangeLog README
+
+ docinto dviljk
+ cd "${S}/texk/dviljk" || die
+ dodoc ChangeLog README NEWS
+
+ docinto makeindexk
+ cd "${S}/texk/makeindexk" || die
+ dodoc ChangeLog NOTES README
+
+ docinto web2c
+ cd "${S}/texk/web2c" || die
+ dodoc ChangeLog NEWS PROJECTS README
+
+ use doc || rm -rf "${ED}/usr/share/texmf-dist/doc"
+
+ newenvd - 98texlive <<-EOF
+ CONFIG_PROTECT_MASK="/etc/texmf/web2c /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d"
+ EOF
+
+ # populate /etc/texmf
+ keepdir /etc/texmf/web2c
+
+ # take care of updmap.cfg and language.d files
+ keepdir /etc/texmf/{updmap.d,language.dat.d,language.def.d,language.dat.lua.d}
+
+ mv "${ED}${TEXMF_PATH}/web2c/updmap.cfg" "${ED}/etc/texmf/updmap.d/00updmap.cfg" || die "moving updmap.cfg failed"
+
+ # Remove fmtutil.cnf, it will be regenerated from /etc/texmf/fmtutil.d files
+ # by texmf-update
+ rm "${ED}${TEXMF_PATH}/web2c/fmtutil.cnf" || die
+
+ if use cjk; then
+ rm "${ED}/usr/bin/"{,u}ptex || die
+ fi
+
+ if ! use xindy; then
+ rm -rf "${ED}{TEXMF_PATH}"/{,scripts,doc}/xindy
+ rm "${ED}"/usr/share/tlpkg/tlpobj/xindy.* || die
+ fi
+
+ dobin_texmf_scripts ${TEXLIVE_MODULE_BINSCRIPTS}
+
+ dodir "/usr/bin"
+ for i in ${TEXLIVE_MODULE_BINLINKS} ; do
+ if [[ ! -f ${ED}/usr/bin/${i%:*} ]]; then
+ die "Trying to install an invalid BINLINK ${i%:*}. This should not happen. Please file a bug."
+ fi
+
+ dosym "${i%:*}" "/usr/bin/${i#*:}"
+ done
+
+ texlive-common_handle_config_files
+
+ # the virtex symlink is not installed
+ # The links has to be relative, since the targets
+ # is not present at this stage and MacOS doesn't
+ # like non-existing targets
+ dosym tex /usr/bin/virtex
+ dosym pdftex /usr/bin/pdfvirtex
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ # Note that the etexmf-update and efmtutil-sys use nonfatal. We are
+ # pkg_postinst, so invoking die will merely print an error message
+ # but not abort the installation as it already happened. However,
+ # unlike the texlive modules, we observed fmtutil-sys failures in
+ # texlive-core.
+
+ # TODO: Research the rationale of calling etexmf-update and
+ # eftmutil-sys here and the reasons why it sometimes fails.
+ nonfatal etexmf-update
+ nonfatal efmtutil-sys
+
+ texlive-common_update_tlpdb
+}
+
+pkg_postrm() {
+ texlive-common_update_tlpdb
+}
diff --git a/app-text/texlive-core/texlive-core-2024-r3.ebuild b/app-text/texlive-core/texlive-core-2024-r3.ebuild
new file mode 100644
index 000000000000..90e6f62d3b62
--- /dev/null
+++ b/app-text/texlive-core/texlive-core-2024-r3.ebuild
@@ -0,0 +1,527 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+TL_SOURCE_VERSION=20240311
+inherit branding flag-o-matic toolchain-funcs libtool texlive-common
+
+MY_P=${PN%-core}-${TL_SOURCE_VERSION}-source
+
+DESCRIPTION="A complete TeX distribution"
+HOMEPAGE="https://tug.org/texlive/"
+GENTOO_TEX_PATCHES_NUM=6
+SRC_URI="
+ https://mirrors.ctan.org/systems/texlive/Source/${MY_P}.tar.xz
+ https://gitweb.gentoo.org/proj/tex-patches.git/snapshot/tex-patches-${GENTOO_TEX_PATCHES_NUM}.tar.bz2
+ -> gentoo-tex-patches-${GENTOO_TEX_PATCHES_NUM}.tar.bz2
+ https://bugs.gentoo.org/attachment.cgi?id=908573
+ -> ${PN}-2023-mplib-h.patch
+ https://github.com/TeX-Live/texlive-source/commit/aec02cd7402652f00460b47a73db0e46e9fb48aa.patch
+ -> ${PN}-2024-remove-call-to-undefined-MPFI_CONFIGS.patch
+"
+
+# Macros that are not a part of texlive-sources or or pulled in from collection-binextra
+# but still needed for other packages during installation.
+TL_CORE_EXTRA_CONTENTS="
+ autosp.r69814
+ axodraw2.r58155
+ chktex.r71205
+ detex.r70015
+ dvi2tty.r66186
+ dvidvi.r65952
+ dviljk.r66186
+ dvipdfmx.r72890
+ dvipos.r66186
+ extractbb.r72890
+ gsftopk.r52851
+ hyphen-base.r70247
+ lacheck.r66186
+ m-tx.r64182
+ makeindex.r62517
+ pmx.r65926
+ texdoctk.r62186
+ texlive-scripts.r72904
+ texlive-scripts-extra.r71746
+ texlive.infra.r72854
+ tpic2pdftex.r52851
+ upmendex.r66381
+ velthuis.r66186
+ vlna.r66186
+ xindy.r65958
+ xml2pmx.r57972
+"
+TL_CORE_EXTRA_DOC_CONTENTS="
+ autosp.doc.r69814
+ axodraw2.doc.r58155
+ chktex.doc.r71205
+ detex.doc.r70015
+ dvi2tty.doc.r66186
+ dvidvi.doc.r65952
+ dviljk.doc.r66186
+ dvipdfmx.doc.r72890
+ dvipos.doc.r66186
+ extractbb.doc.r72890
+ gsftopk.doc.r52851
+ lacheck.doc.r66186
+ m-tx.doc.r64182
+ makeindex.doc.r62517
+ pmx.doc.r65926
+ texdoctk.doc.r62186
+ texlive-scripts.doc.r72904
+ texlive-scripts-extra.doc.r71746
+ texlive.infra.doc.r72854
+ tpic2pdftex.doc.r52851
+ upmendex.doc.r66381
+ velthuis.doc.r66186
+ vlna.doc.r66186
+ xindy.doc.r65958
+ xml2pmx.doc.r57972
+"
+TL_CORE_EXTRA_SRC_CONTENTS="
+ axodraw2.source.r58155
+"
+
+TEXLIVE_MODULE_BINSCRIPTS="
+ texmf-dist/scripts/extractbb/extractbb.lua
+ texmf-dist/scripts/m-tx/m-tx.lua
+ texmf-dist/scripts/texlive/extractbb.lua
+ texmf-dist/scripts/texlive/fmtutil-sys.sh
+ texmf-dist/scripts/texlive/fmtutil-user.sh
+ texmf-dist/scripts/texlive/fmtutil.pl
+ texmf-dist/scripts/texlive/mktexlsr
+ texmf-dist/scripts/texlive/mktexmf
+ texmf-dist/scripts/texlive/mktexpk
+ texmf-dist/scripts/texlive/mktextfm
+ texmf-dist/scripts/texlive/rungs.lua
+ texmf-dist/scripts/texlive/tlmgr.pl
+ texmf-dist/scripts/texlive/updmap-sys.sh
+ texmf-dist/scripts/texlive/updmap-user.sh
+ texmf-dist/scripts/texlive/updmap.pl
+ texmf-dist/scripts/texlive-extra/allcm.sh
+ texmf-dist/scripts/texlive-extra/allneeded.sh
+ texmf-dist/scripts/texlive-extra/dvi2fax.sh
+ texmf-dist/scripts/texlive-extra/dvired.sh
+ texmf-dist/scripts/texlive-extra/e2pall.pl
+ texmf-dist/scripts/texlive-extra/kpsetool.sh
+ texmf-dist/scripts/texlive-extra/kpsewhere.sh
+ texmf-dist/scripts/texlive-extra/ps2frag.sh
+ texmf-dist/scripts/texlive-extra/pslatex.sh
+ texmf-dist/scripts/texlive-extra/texconfig-dialog.sh
+ texmf-dist/scripts/texlive-extra/texconfig-sys.sh
+ texmf-dist/scripts/texlive-extra/texconfig.sh
+ texmf-dist/scripts/texlive-extra/texlinks.sh
+"
+
+TEXLIVE_MODULE_BINLINKS="
+ fmtutil:mktexfmt
+ mktexlsr:texhash
+ allcm:allec
+ kpsetool:kpsexpand
+ kpsetool:kpsepath
+"
+texlive-common_append_to_src_uri TL_CORE_EXTRA_CONTENTS
+
+SRC_URI+=" doc? ( "
+texlive-common_append_to_src_uri TL_CORE_EXTRA_DOC_CONTENTS
+SRC_URI+=" )"
+
+SRC_URI+=" source? ( "
+texlive-common_append_to_src_uri TL_CORE_EXTRA_SRC_CONTENTS
+SRC_URI+=" )"
+
+S="${WORKDIR}/${MY_P}"
+LICENSE="BSD CC-BY-SA-4.0 GPL-1+ GPL-2 GPL-2+ GPL-3+ MIT TeX-other-free"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+IUSE="cjk X doc source tk +luajittex xetex xindy"
+
+TEXMF_PATH=/usr/share/texmf-dist
+MODULAR_X_DEPEND="
+ X? (
+ x11-libs/libX11
+ x11-libs/libXmu
+ )"
+
+COMMON_DEPEND="
+ ${MODULAR_X_DEPEND}
+ sci-libs/mpfi
+ virtual/zlib:=
+ >=media-libs/harfbuzz-1.4.5:=[icu,graphite]
+ >=media-libs/libpng-1.2.43-r2:0=
+ media-libs/gd[png]
+ media-gfx/graphite2:=
+ media-gfx/potrace:=
+ >=x11-libs/cairo-1.12
+ >=x11-libs/pixman-0.18
+ dev-libs/zziplib:=
+ app-text/libpaper:=
+ dev-libs/gmp:=
+ dev-libs/mpfr:=
+ >=dev-libs/ptexenc-1.4.6
+ xetex? (
+ >=app-text/teckit-2.5.10
+ media-libs/fontconfig
+ )
+ xindy? ( dev-lisp/clisp:= )
+ media-libs/freetype:2
+ >=dev-libs/icu-50:=
+ >=dev-libs/kpathsea-6.4.0:=
+"
+
+BDEPEND="
+ sys-apps/ed
+ sys-devel/flex
+ virtual/pkgconfig
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+"
+
+# !<dev-texlive/texlive-langother-2023 see https://bugs.gentoo.org/928307
+RDEPEND="
+ ${COMMON_DEPEND}
+ virtual/perl-Getopt-Long
+ app-misc/ca-certificates
+ dev-perl/File-HomeDir
+ dev-perl/Log-Dispatch
+ dev-perl/Unicode-LineBreak
+ dev-perl/YAML-Tiny
+ tk? (
+ dev-lang/tk
+ dev-perl/Tk
+ )
+ !<dev-texlive/texlive-basic-2023
+ !<dev-texlive/texlive-mathscience-2023
+ !<dev-texlive/texlive-langother-2023
+ !<dev-texlive/texlive-music-2023
+"
+
+BUILDDIR="${WORKDIR}/${P}_build"
+
+RELOC_TARGET=texmf-dist
+
+src_prepare() {
+ mkdir "${BUILDDIR}" || die "failed to create build dir"
+
+ cd "${WORKDIR}" || die
+
+ # From texlive-module.eclass.
+ sed -n -e 's:\s*RELOC/::p' tlpkg/tlpobj/* > "${T}/reloclist" || die
+ sed -e 's/\/[^/]*$//' -e "s:^:${RELOC_TARGET}/:" "${T}/reloclist" |
+ sort -u |
+ xargs mkdir -p || die
+ local i
+ while read -r i; do
+ mv "${i}" "${RELOC_TARGET}/${i%/*}" || die
+ done < "${T}/reloclist"
+ mv "${WORKDIR}"/texmf* "${S}" || die "failed to move texmf files"
+
+ cd "${S}" || die
+
+ TL_KPATHSEA_INCLUDES=$($(tc-getPKG_CONFIG) kpathsea --variable=includedir || die "failed to invoke pkg-config")
+ sed -i \
+ -e "s,/usr/include /usr/local/include.*echo \$KPATHSEA_INCLUDES.*,${TL_KPATHSEA_INCLUDES}\"," \
+ texk/web2c/configure || die
+
+ local patch_dir="${WORKDIR}/tex-patches-${GENTOO_TEX_PATCHES_NUM}"
+ eapply "${patch_dir}"
+
+ eapply "${DISTDIR}/${PN}-2024-remove-call-to-undefined-MPFI_CONFIGS.patch"
+
+ default
+
+ elibtoolize
+
+ # Drop this once cairo's and mplibdir's (texlive-core-2023-mplib-h.patch)
+ # autoconf patches are gone. See bug #927714#c4, bug #853121 for cairo,
+ # and bug #837875 for mplibdir (in web2c).
+ "${S}"/reautoconf libs/cairo || die
+}
+
+src_configure() {
+ # TODO: report upstream
+ # bug #915223
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ # bug #946142
+ append-cflags -std=gnu17
+
+ # Needed for 32bit architectures, bug 928096
+ # This is upstream recommendation for the moment, see also
+ # https://www.tug.org/texlive/build.html
+ # I'm fairly sure it just hides a real bug in pdftex, keeping 928096
+ # thus open, but hey, at least it's not a regression...
+ append-cflags -Wno-incompatible-pointer-types
+
+ # bug #966834
+ # running reautoconf would also fix the issue; however, there are several
+ # configure scripts, so adding the flag is a much faster approach.
+ append-cxxflags $(test-flags-CXX -std=gnu++17)
+
+ # It fails on alpha without this
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Too many regexps use A-Z a-z constructs, what causes problems with locales
+ # that don't have the same alphabetical order than ascii. Bug #242430
+ # So we set LC_ALL to C in order to avoid problems.
+ export LC_ALL=C
+
+ # Disable freetype-config as this is considered obsolete.
+ # Also only pkg-config works for prefix as described in bug #690094
+ export ac_cv_prog_ac_ct_FT2_CONFIG=no
+
+ local my_conf=(
+ --bindir="${EPREFIX}"/usr/bin
+ --datadir="${BUILDDIR}"
+ --with-system-freetype2
+ --with-system-zlib
+ --with-system-libpng
+ --with-system-teckit
+ --with-system-kpathsea
+ --with-kpathsea-includes="${TL_KPATHSEA_INCLUDES}"
+ --with-system-icu
+ --with-system-ptexenc
+ --with-system-harfbuzz
+ --with-system-graphite2
+ --with-system-cairo
+ --with-system-pixman
+ --with-system-zziplib
+ --with-system-libpaper
+ --with-system-gmp
+ --with-system-gd
+ --with-system-mpfi
+ --with-system-mpfr
+ --with-system-potrace
+ --disable-multiplatform
+ --enable-chktex
+ --enable-epsfwin
+ --enable-detex
+ --enable-dvi2tty
+ --enable-mftalkwin
+ --enable-regiswin
+ --enable-shared
+ --enable-tektronixwin
+ --enable-unitermwin
+ --enable-vlna
+ --disable-psutils
+ --disable-t1utils
+ --enable-ipc
+ --disable-bibtex-x
+ --disable-dvipng
+ --disable-dvipsk
+ --disable-lcdf-typetools
+ --disable-ps2pk
+ --disable-ttf2pk2
+ --disable-tex4htk
+ --disable-cjkutils
+ --disable-xdvik
+ --enable-luatex
+ --disable-dvisvgm
+ --disable-ps2eps
+ --disable-static
+ --disable-native-texlive-build
+ --disable-largefile
+ --disable-xindy-docs
+ --disable-xindy-rules
+ --with-banner-add=" ${BRANDING_OS_PRETTY_NAME}"
+ $(use_enable luajittex)
+ $(use_enable luajittex luajithbtex)
+ $(use_enable luajittex mfluajit)
+ $(use_enable xetex)
+ $(use_enable cjk dviout-util)
+ $(use_enable cjk ptex)
+ $(use_enable cjk eptex)
+ $(use_enable cjk uptex)
+ $(use_enable cjk euptex)
+ $(use_enable cjk mendexk)
+ $(use_enable cjk makejvf)
+ $(use_enable cjk pmp)
+ $(use_enable cjk upmp)
+ $(use_enable tk texdoctk)
+ $(use_with X x)
+ $(use_enable xindy)
+ --enable-autosp=yes
+ --enable-axodraw2=yes
+ --enable-devnag=yes
+ --enable-lacheck=yes
+ --enable-m-tx=yes
+ --enable-pmx=yes
+ --enable-tpic2pdftex=yes
+ --with-clisp-runtime=system
+ --enable-xml2pmx=yes
+ $(use_enable X xpdfopen)
+ --enable-web2c=yes
+ --enable-afm2pl=yes
+ --enable-dvidvi=yes
+ --enable-dviljk=yes
+ --enable-dvipdfm-x
+ --enable-dvipos=yes
+ --enable-gregorio=yes
+ --enable-gsftopk=yes
+ --enable-makeindexk=yes
+ --enable-musixtnt=yes
+ --enable-seetexk=yes
+ --enable-ttfdump=yes
+ --enable-upmendex=yes
+ --enable-texlive=yes
+ --enable-linked-scripts=no
+ # web2c afm2pl chktex dtl dvi2tty dvidvi dviljk dviout-util dvipdfm-x gregorio
+ )
+
+ # Enable the following on version bumps. While it makes the build
+ # always fail, presumably because texlive passes these configure
+ # options to sub-configures, it still points out dropped
+ # options. See https://bugs.gentoo.org/828591
+ my_conf+=(
+ # --enable-option-checking=fatal
+ )
+
+ tc-export CC CXX AR RANLIB
+ cd "${BUILDDIR}" || die
+ ECONF_SOURCE="${S}" \
+ econf -C "${my_conf[@]}"
+}
+
+src_compile() {
+ cd "${BUILDDIR}" || die
+ tc-export CC CXX AR RANLIB
+
+ emake AR="$(tc-getAR)" SHELL="${EPREFIX}"/bin/sh texmf="${EPREFIX}"${TEXMF_PATH:-/usr/share/texmf-dist}
+
+ cd "${S}" || die
+ # Mimic updmap --syncwithtrees to enable only fonts installed
+ # Code copied from updmap script
+ while read -r i; do
+ texlive-common_is_file_present_in_texmf "${i}" || echo "${i}"
+ done > "${T}/updmap_update" < <(grep -E '^(Mixed|Kanji)?Map' "texmf-dist/web2c/updmap.cfg" | sed 's@.* @@')
+ {
+ sed 's@/@\\/@g; s@^@/^MixedMap[ ]*@; s@$@$/s/^/#! /@' <"${T}/updmap_update"
+ sed 's@/@\\/@g; s@^@/^Map[ ]*@; s@$@$/s/^/#! /@' <"${T}/updmap_update"
+ sed 's@/@\\/@g; s@^@/^KanjiMap[ ]*@; s@$@$/s/^/#! /@' <"${T}/updmap_update"
+ } > "${T}/updmap_update2"
+ sed -f "${T}/updmap_update2" "texmf-dist/web2c/updmap.cfg" > "${T}/updmap_update3"\
+ && cat "${T}/updmap_update3" > "texmf-dist/web2c/updmap.cfg"
+}
+
+src_test() {
+ cd "${BUILDDIR}" || die
+
+ sed -i \
+ -e 's;uptexdir/nissya.test;;' \
+ -e 's;uptexdir/upbibtex.test;;' \
+ texk/web2c/Makefile || die
+ sed -i \
+ -e 's;dvispc.test;;' \
+ texk/dviout-util/Makefile || die
+ local -x KpsDir="${ESYSROOT}"/usr/bin
+ emake check
+}
+
+src_install() {
+ cd "${BUILDDIR}" || die
+ dodir ${TEXMF_PATH:-/usr/share/texmf-dist}/web2c
+
+ emake DESTDIR="${D}" texmf="${ED}${TEXMF_PATH:-/usr/share/texmf-dist}" run_texlinks="true" run_mktexlsr="true" install
+
+ cd "${S}" || die
+ dodir /usr/share # just in case
+ cp -pR texmf-dist "${ED}/usr/share/" || die "failed to install texmf trees"
+ cp -pR "${WORKDIR}"/tlpkg "${ED}/usr/share/" || die "failed to install tlpkg files"
+
+ # Use the system CA bundle instead of the stale bundled copy
+ # (used by tlmgr), bug #984637.
+ rm "${ED}"/usr/share/tlpkg/installer/curl/curl-ca-bundle.crt || die
+ dosym -r /etc/ssl/certs/ca-certificates.crt \
+ /usr/share/tlpkg/installer/curl/curl-ca-bundle.crt
+
+ # When X is disabled mf-nowin doesn't exist but some scripts expect it to
+ # exist. Instead, it is called mf, so we symlink it to please everything.
+ use X || dosym mf /usr/bin/mf-nowin
+
+ docinto texk
+ cd "${S}/texk" || die
+ dodoc ChangeLog README
+
+ docinto dviljk
+ cd "${S}/texk/dviljk" || die
+ dodoc ChangeLog README NEWS
+
+ docinto makeindexk
+ cd "${S}/texk/makeindexk" || die
+ dodoc ChangeLog NOTES README
+
+ docinto web2c
+ cd "${S}/texk/web2c" || die
+ dodoc ChangeLog NEWS PROJECTS README
+
+ use doc || rm -rf "${ED}/usr/share/texmf-dist/doc"
+
+ newenvd - 98texlive <<-EOF
+ CONFIG_PROTECT_MASK="/etc/texmf/web2c /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d"
+ EOF
+
+ # populate /etc/texmf
+ keepdir /etc/texmf/web2c
+
+ # take care of updmap.cfg and language.d files
+ keepdir /etc/texmf/{updmap.d,language.dat.d,language.def.d,language.dat.lua.d}
+
+ mv "${ED}${TEXMF_PATH}/web2c/updmap.cfg" "${ED}/etc/texmf/updmap.d/00updmap.cfg" || die "moving updmap.cfg failed"
+
+ # Remove fmtutil.cnf, it will be regenerated from /etc/texmf/fmtutil.d files
+ # by texmf-update
+ rm "${ED}${TEXMF_PATH}/web2c/fmtutil.cnf" || die
+
+ if use cjk; then
+ rm "${ED}/usr/bin/"{,u}ptex || die
+ fi
+
+ if ! use xindy; then
+ rm -rf "${ED}{TEXMF_PATH}"/{,scripts,doc}/xindy
+ rm "${ED}"/usr/share/tlpkg/tlpobj/xindy.* || die
+ fi
+
+ dobin_texmf_scripts ${TEXLIVE_MODULE_BINSCRIPTS}
+
+ dodir "/usr/bin"
+ for i in ${TEXLIVE_MODULE_BINLINKS} ; do
+ if [[ ! -f ${ED}/usr/bin/${i%:*} ]]; then
+ die "Trying to install an invalid BINLINK ${i%:*}. This should not happen. Please file a bug."
+ fi
+
+ dosym "${i%:*}" "/usr/bin/${i#*:}"
+ done
+
+ texlive-common_handle_config_files
+
+ # the virtex symlink is not installed
+ # The links has to be relative, since the targets
+ # is not present at this stage and MacOS doesn't
+ # like non-existing targets
+ dosym tex /usr/bin/virtex
+ dosym pdftex /usr/bin/pdfvirtex
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ # Note that the etexmf-update and efmtutil-sys use nonfatal. We are
+ # pkg_postinst, so invoking die will merely print an error message
+ # but not abort the installation as it already happened. However,
+ # unlike the texlive modules, we observed fmtutil-sys failures in
+ # texlive-core.
+
+ # TODO: Research the rationale of calling etexmf-update and
+ # eftmutil-sys here and the reasons why it sometimes fails.
+ nonfatal etexmf-update
+ nonfatal efmtutil-sys
+
+ texlive-common_update_tlpdb
+}
+
+pkg_postrm() {
+ texlive-common_update_tlpdb
+}
diff --git a/app-text/texlive-core/texlive-core-2026.ebuild b/app-text/texlive-core/texlive-core-2026-r1.ebuild
index e94e771252b4..3cd1d0620b2e 100644
--- a/app-text/texlive-core/texlive-core-2026.ebuild
+++ b/app-text/texlive-core/texlive-core-2026-r1.ebuild
@@ -174,10 +174,8 @@ DEPEND="
# !<dev-texlive/texlive-langother-2023 see https://bugs.gentoo.org/928307
RDEPEND="
${COMMON_DEPEND}
- dev-perl/File-HomeDir
- dev-perl/Log-Dispatch
- dev-perl/Unicode-LineBreak
- dev-perl/YAML-Tiny
+ app-misc/ca-certificates
+ dev-lang/perl
tk? (
dev-lang/tk
dev-perl/Tk
@@ -426,6 +424,12 @@ src_install() {
cp -pR texmf-dist "${ED}/usr/share/" || die "failed to install texmf trees"
cp -pR "${WORKDIR}"/tlpkg "${ED}/usr/share/" || die "failed to install tlpkg files"
+ # Use the system CA bundle instead of the stale bundled copy
+ # (used by tlmgr), https://bugs.gentoo.org/984637
+ rm "${ED}"/usr/share/tlpkg/installer/curl/curl-ca-bundle.crt || die
+ dosym -r /etc/ssl/certs/ca-certificates.crt \
+ /usr/share/tlpkg/installer/curl/curl-ca-bundle.crt
+
# When X is disabled mf-nowin doesn't exist but some scripts expect it to
# exist. Instead, it is called mf, so we symlink it to please everything.
use X || dosym mf /usr/bin/mf-nowin
diff --git a/dev-db/duckdb/Manifest b/dev-db/duckdb/Manifest
index c35af1e44e11..fc0ffe9b563a 100644
--- a/dev-db/duckdb/Manifest
+++ b/dev-db/duckdb/Manifest
@@ -1,2 +1,2 @@
-DIST duckdb-1.5.5.tar.gz 101169313 BLAKE2B 99d6274e0b514673e0a0a6b7651a7b8f6f07b22a68a098f30e4c342ec43395c04d5b553f39319d54d2defbc3db77ffa3ef806b2470d77045b835760acc90986b SHA512 cf94976a80135234e37de3e3998009397ba6edcded8bd5e9762f0f48666888cc814a5b5e2b5e155f02a4678aa54b9dabf53fc1bd48fd60178bbe4c8aa7ec3e7e
DIST duckdb-1.5.6.tar.gz 100988480 BLAKE2B 7ba2e0e13192cff915e06a3ab2ef637f86cb2d238699d75ad8ed65498eda45c1ecb6d966e0d5faa4013ff61ef4ad36a33d2ae05480db2df41f9f780246e3b014 SHA512 ca6866600430b977a970fc3dd83911d719ffae7aae68f39106f3b6667f0b2d481290141f93e0bb35a595357c8d316859b133c08839fd6b1e1cdce7c9fb8b78ac
+DIST duckdb-2.0.0.tar.gz 106477075 BLAKE2B f3b973d1a81ebdcc874d4f1c7a1addd5d4202241e482af4926f97758524685b0fdda31c708890aeac5b1e8741e6493e77ad5ae1e08b52b893f74d7b95263d4c3 SHA512 1d726bb45b5d1c98ab4d31720534979cbe7d0c72dc777979fb42fa241b6b408959f6a6ed5db76e3cd3840df187f15f309364e931db257c45379101b24191d775
diff --git a/dev-db/duckdb/duckdb-1.5.5.ebuild b/dev-db/duckdb/duckdb-2.0.0.ebuild
index 18fe1d20ebe8..18fe1d20ebe8 100644
--- a/dev-db/duckdb/duckdb-1.5.5.ebuild
+++ b/dev-db/duckdb/duckdb-2.0.0.ebuild
diff --git a/dev-db/postgis/Manifest b/dev-db/postgis/Manifest
index ae11020a50e8..d5c78eec7c32 100644
--- a/dev-db/postgis/Manifest
+++ b/dev-db/postgis/Manifest
@@ -4,4 +4,4 @@ DIST postgis-3.4.6.tar.gz 14994956 BLAKE2B d49a482de393c2ce93f6f328521f3e1ce2f6f
DIST postgis-3.5.2.tar.gz 15045553 BLAKE2B 48a43c483a3a36decd3c3bb1b482f0079daacc030788fc58de17ffa91ecd46286de1112604230e0a594e44ba4c6bfa00a31a0241e0c07ce8f52cdd8fd94883d7 SHA512 fcad74289d03bfe9d6eb6f0f5682c9cb03a90ba9c377e39727df85f5d66fa8f51ddb9a9bc7302612d13576cca92bff3717ed965d513ededfe8cf1627c1e2f92d
DIST postgis-3.5.7.tar.gz 14975173 BLAKE2B 3b0cd4a6d0e76ee6b0b33fc722098bad8b42d38cf9b499fbdbe42e78018e239974df13985121e908c49e2476e8c570f2a43121cadcc2c0109af38756fa6a5fbf SHA512 c635ae72caaa96b7eb92ef9adb9e69cca3d328e5ef23513815b2a7b9fa18d168caad4d3c707cda096c763058eeadc6102238e93542ace2ce772ac364983133b5
DIST postgis-3.6.4.tar.gz 16289296 BLAKE2B d4936600713c3046c09202fc32f6f723f193f45716438a2b97fd0b1c4eefc30a4645e841a52c5c050b13503adf1d328334f8eaf7d9a4a4bc2ab4cebdde22420d SHA512 39ab5e894a124e25327ad943c9166777ee7ffdc22696d57f910a0c1ba085087d47b7c76b1d9653ca603234d7c5e6c2873f3d5431b4aa12f4f9f60209019bc146
-DIST postgis-3.7.0rc1.tar.gz 15877198 BLAKE2B 426c33740779ceb1cc55e7c3c5a8c646fb63eae6e3a9b2778a5b70307c50fb9194993e59313df70b91154601267d7c6f4566d3105e89fcefd2ae8f4977007fbc SHA512 2aab9dfa53e05b1aec4af6acfffbde8c86d5a892d3e0b2f0e31cc4a6e07b241e1d9b65402595e927efbc5edf48ee536def0906b38d1763c48a222a451932076d
+DIST postgis-3.7.0rc3.tar.gz 15993166 BLAKE2B a99ff65542821213e6c5dcc34d8ba5dd4fb9317c89d4d7b00268f38300bde7f3ec87514bff21874f87e6ac5112fa3c609878f03dae2f9d70bdd5399f881b8479 SHA512 13d203a005dc7bb74542cdbbc4022e86870aed5a899103f389f73f804035bba6f10cddc51a1742ad869adbf72ab4c95de6a004ed0d45892d5409f07de723dc84
diff --git a/dev-db/postgis/postgis-3.7.0_rc1.ebuild b/dev-db/postgis/postgis-3.7.0_rc3.ebuild
index 7fa27f4906ce..7fa27f4906ce 100644
--- a/dev-db/postgis/postgis-3.7.0_rc1.ebuild
+++ b/dev-db/postgis/postgis-3.7.0_rc3.ebuild
diff --git a/dev-java/automaton/Manifest b/dev-java/automaton/Manifest
new file mode 100644
index 000000000000..6d2b1817c43d
--- /dev/null
+++ b/dev-java/automaton/Manifest
@@ -0,0 +1 @@
+DIST automaton-1.12-4.tar.gz 396799 BLAKE2B 9dfb80e5a0559778329d42645a4d14867f784ab6c34879bb2f09e2f9ac5e3c797c42ec62c1638285a1a16d3b36e71110b3c7c56b194ad8edbe1cebe34499cae0 SHA512 73a1d4036061df75a64ff887d4aa8c065b23d73daec6c5f492234ec9d3cfb6bd5a428a5743d0dd04be185b715245aeb0b4966c653c643c23ad8c5def56c3e481
diff --git a/dev-java/automaton/automaton-1.12.4.ebuild b/dev-java/automaton/automaton-1.12.4.ebuild
new file mode 100644
index 000000000000..c35955a28d24
--- /dev/null
+++ b/dev-java/automaton/automaton-1.12.4.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_P="${PN}-${PV%.*}-${PV##*.}"
+
+DESCRIPTION="Finite-state automata and regular expressions for Java"
+HOMEPAGE="https://www.brics.dk/automaton/"
+SRC_URI="https://www.brics.dk/automaton/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P%-*}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src"
+
+src_compile() {
+ java-pkg-simple_src_compile
+
+ mkdir datatypes || die
+ java -cp "${JAVA_JAR_FILENAME}" -Ddk.brics.automaton.datatypes=datatypes \
+ dk.brics.automaton.Datatypes || die
+
+ jar tf dist/automaton.jar > "${T}/upstream-entries" || die
+ grep '\.aut$' "${T}/upstream-entries" > "${T}/expected-datatypes" || die
+
+ local datatype
+ while IFS= read -r datatype; do
+ [[ -s datatypes/${datatype} ]] || die "Missing or empty datatype: ${datatype}"
+ done < "${T}/expected-datatypes"
+
+ java-pkg_addres "${JAVA_JAR_FILENAME}" datatypes
+}
diff --git a/dev-java/automaton/metadata.xml b/dev-java/automaton/metadata.xml
new file mode 100644
index 000000000000..6bef585ad480
--- /dev/null
+++ b/dev-java/automaton/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mit.mis@gmail.com</email>
+ <name>Michal Andrzejczak</name>
+ </maintainer>
+ <origin>srcux</origin>
+</pkgmetadata>
diff --git a/dev-java/axmlprinter2/Manifest b/dev-java/axmlprinter2/Manifest
new file mode 100644
index 000000000000..455f55a43eb9
--- /dev/null
+++ b/dev-java/axmlprinter2/Manifest
@@ -0,0 +1 @@
+DIST axmlprinter2-1.0.zip 39688 BLAKE2B 61d85c4f8c67bc18dedb101cdfe3db6d4fb2dc14d87a46875581a3570769276ca86e18033a4f5fa4d01c77b12cfed580693bf5efd3c8e3153e6781508a3a8ee4 SHA512 876fc13a3e033982673f0d8d6f7081bc3d4f81893e7dc069048f81aec41e2e35a388909b3ebe387792c0286986647e11b7341918beffec4b1d803cd88b34dfc1
diff --git a/dev-java/axmlprinter2/axmlprinter2-1.0.ebuild b/dev-java/axmlprinter2/axmlprinter2-1.0.ebuild
new file mode 100644
index 000000000000..e49f2880f085
--- /dev/null
+++ b/dev-java/axmlprinter2/axmlprinter2-1.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple
+
+DESCRIPTION="Parser and printer for Android binary XML"
+HOMEPAGE="https://code.google.com/archive/p/android4me/"
+SRC_URI="https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/android4me/AXMLPrinter2.zip
+ -> ${P}.zip"
+S="${WORKDIR}/AXMLPrinter"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+BDEPEND="app-arch/unzip"
+
+JAVA_SRC_DIR="src"
diff --git a/dev-java/axmlprinter2/metadata.xml b/dev-java/axmlprinter2/metadata.xml
new file mode 100644
index 000000000000..6bef585ad480
--- /dev/null
+++ b/dev-java/axmlprinter2/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mit.mis@gmail.com</email>
+ <name>Michal Andrzejczak</name>
+ </maintainer>
+ <origin>srcux</origin>
+</pkgmetadata>
diff --git a/dev-java/permit-reflect/Manifest b/dev-java/permit-reflect/Manifest
new file mode 100644
index 000000000000..7c3678cc7a4a
--- /dev/null
+++ b/dev-java/permit-reflect/Manifest
@@ -0,0 +1 @@
+DIST permit-reflect-0.4.tar.gz 9339 BLAKE2B fa03e5b7f83aa9ab69489f9885e154a80a7fbd9d81bfb1bb028a06d0a0c66e30d56b754d06fe5d41fc165d12018b2412fb4d0401e9c60a5108cf1b8861c3bd66 SHA512 1bc66108a8bb9332c710c465bc9b654fe855f5303293cf97e9eddcdf66531457e54b4bc74031d4da6f3b4c61dbb6a635d321c56a9fd2a7bf06791b8348cb720f
diff --git a/dev-java/permit-reflect/metadata.xml b/dev-java/permit-reflect/metadata.xml
new file mode 100644
index 000000000000..6bef585ad480
--- /dev/null
+++ b/dev-java/permit-reflect/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mit.mis@gmail.com</email>
+ <name>Michal Andrzejczak</name>
+ </maintainer>
+ <origin>srcux</origin>
+</pkgmetadata>
diff --git a/dev-java/permit-reflect/permit-reflect-0.4.ebuild b/dev-java/permit-reflect/permit-reflect-0.4.ebuild
new file mode 100644
index 000000000000..4b3c1cb6efb6
--- /dev/null
+++ b/dev-java/permit-reflect/permit-reflect-0.4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+inherit java-pkg-2 java-pkg-simple
+
+COMMIT="ae7fc51f0160f73cacd1b763a1edaca3d66afaff"
+DESCRIPTION="Reflection utilities for Java modules"
+HOMEPAGE="https://github.com/nqzero/permit-reflect"
+SRC_URI="https://github.com/nqzero/permit-reflect/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=">=virtual/jdk-11:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+JAVA_SRC_DIR="src"
diff --git a/dev-java/scala-cli-bin/Manifest b/dev-java/scala-cli-bin/Manifest
index 495c605e2e49..48254d53d194 100644
--- a/dev-java/scala-cli-bin/Manifest
+++ b/dev-java/scala-cli-bin/Manifest
@@ -1,9 +1,9 @@
-DIST scala-cli-amd64-1.10.1.gz 40279670 BLAKE2B 99294f1c11f5dd8195c92cd84382ff4371906c3b3cf0aff215c568fbdf2fbf50f72f36b73a81f757ca2c0b6de4e45e808a5e47133a4531eb823e35c93d29fb16 SHA512 bfd41df7117fe86a1103bcc4f74edad4469dc0f87be649ea361c8f4e056b80ecc6c3b316f62fbdf70068aa2be605aa26916fb4e1f4aad1b253508952ec61e197
DIST scala-cli-amd64-1.12.2.gz 43487074 BLAKE2B 421edc8da7aa78c349ec17c80961d732d47376772dfe38fedc61c63b32fdf11b3f60427b23a6cc337150693c908de3a73e62ac1677b232b2b4655d8b064198b3 SHA512 753c518b3e07b6d4b19ff9f17aa465d02771f5264773b9aaf0c096806d525370cf3919077d59ba2f5bc002f6cb3424f774d2d6030b31f922fb5a22ac72be9c6c
DIST scala-cli-amd64-1.13.0.gz 44511209 BLAKE2B eb8fdfeefae74280da6718ed01c60a3c3f5ea3c34d01fd58993cbdec4db61723a7a790df0265be1d5ecfc88c468a4b5eccdb82a3f0706df8614aca18d777d581 SHA512 cfb8c73ea67d46d096b76a75091d58d738e04273e6271bb894c65d4c9ab6739c2816eadd51bea6363eeff2c4e67cbfc2fc854255c86c875e51089f0275660e05
-DIST scala-cli-arm64-1.10.1.gz 40359451 BLAKE2B 4a308f920dee098cc61e69dc80215ccacd5f84523c01994a193cc1debb79fcc7bfced28b77d6722e56d809abf21fb1ac0729b3439cd2c9edda8073710c5995e0 SHA512 8977471c1e70d9a9be904b7e607d5d6600e9d8e6ab9ede96151f1290135d1c7b6153a9bc9656393f8395d6be6c7c7121414fbb86dcaa54a92fc671dfd8c586c6
+DIST scala-cli-amd64-1.18.0.gz 44596867 BLAKE2B 0da5f4707e77ab43975f53651403331cabdc15513c402639aec17fa919775c01aafaaacdd33ae8a6dfe282427317cc6c7c1bb591e809f2ff575f175a3a17456b SHA512 55d50265837a6bec97ecb45169ae2c4e7348a046e216502f1646e0ad80832ebf60f49dac00d822a67788ec8fbef84eefd3e43d356359e53edf72aabbf4056d1b
DIST scala-cli-arm64-1.12.2.gz 42325724 BLAKE2B 01bc0e06f4be92d16bc18588813ede4cdd9d850803363ff9da75168141c45bf73ef8858431d792917338ec099954562c8f424b91a4c02d30db90c2ae98757a45 SHA512 0def09042c078c230c6c8577768dcb8a3b0c4346ec1cb9b3b9b7fdb844fe12755c7fd005f09098957db4561931946951a1be18c8d975bfe4d15a2ead4fa50562
DIST scala-cli-arm64-1.13.0.gz 43365263 BLAKE2B 9c7340b6a5df7af76c1f3cb0cf003c237ced92c38288a2ce628fdce1a05c6ea54e7f43b635cebceeaadc5887f19a068e3eaa4ba6c31efa6e95b0e264edc25db7 SHA512 77af2f9b76ae8b53348d81e9f3386599a9c6b13dc1320b2545b287056c0275bc6f8b44dd848a6da3f3471445caebac0e151d68699f11b456be74884fe39cb0f2
-DIST scala-cli-non-native-1.10.1 8207066 BLAKE2B f53ae775e4f9f31958bf6de351e7b74b4fdda95f26a6c19772dcaf18148b5b358bd8c64980cbebf6386849d47b861c788bc8d62c222289638dd18c0836f4cc37 SHA512 e7a967df5c3d39f388a243ac630c2b7a8dc360d0c18c770f0ce6b10879ac77c5047890a06cd2460d00a851d57f2e1d6cb4bdccbb08319362699a379139801289
+DIST scala-cli-arm64-1.18.0.gz 43487404 BLAKE2B 5533d05314d35d33c13509ba10cf0d56d0d57a607e7a715f74197d5baa3aa580c28349984072c5d929d2bf6da038db5f70c2a68eaf2416e71e18383944436c57 SHA512 67feedf5bd2f8c47f872fff7a717b752a0562e05cba96d6ffb866550c531ff4555864bbd5883a09fb79502005d0a615165a9ad0c6e874b29ca940d402cafed6d
DIST scala-cli-non-native-1.12.2 8250773 BLAKE2B 9e37e38af1907a7a1b1e90e018530edd12986f59b4a333da704c4f219dcd243b3fdd8f4cb13de50732b0977d5de7b2359aa914be10837fb04e57d5b1eee088f5 SHA512 d134f3958a8a9d0c15918c51a7e0cebcaa963d1b7d85137bdd984a666db51d7083274bde05274f67bec4bc6287e87469b633eecf8b657b814686099adb4d4334
DIST scala-cli-non-native-1.13.0 8372435 BLAKE2B 09a40e45d2cc55881676cfea7812cfbd60bbceb4aa6f3ab8d6a4f57c11ae6bfbe9af6c0f86080429ecec41e5cd5d311040e1de429b922e5c33f2c5f9125ca115 SHA512 78bb708d27eed3e8037cfec96e9994f0286c54f75889854dedf762b9431ccdbea7ccf126f0a301c6e24d10a8e8512b885811b7692176193e4f53b3caba22d016
+DIST scala-cli-non-native-1.18.0 8411307 BLAKE2B d6aeedaa81f1bcaa68db8bf14c12c193e85a4f44fcb9e4067251625c9077002d0687003fd05eb0569d1b31e01d7a5786bd48faa525d2a079b62b9d2fdd44ad65 SHA512 3d858395ac39629808e5ca9812ad76f0def515146a7abdc80b9d61dbf970d930aa404ba5d67d18057c5a78edfd4dd0a57dad0bceff4ec04a720caa264f12e6ff
diff --git a/dev-java/scala-cli-bin/scala-cli-bin-1.10.1.ebuild b/dev-java/scala-cli-bin/scala-cli-bin-1.18.0.ebuild
index dddc219a8a44..68b747d43c99 100644
--- a/dev-java/scala-cli-bin/scala-cli-bin-1.10.1.ebuild
+++ b/dev-java/scala-cli-bin/scala-cli-bin-1.18.0.ebuild
@@ -29,7 +29,7 @@ S="${WORKDIR}"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm64"
+KEYWORDS="~amd64 ~arm64"
# A JRE is not strictly required if native images of scala-cli are used
# (amd64, arm64). However we may want a system JRE anyway, and having JRE
diff --git a/dev-java/yajsw/Manifest b/dev-java/yajsw/Manifest
new file mode 100644
index 000000000000..d04e7122b24c
--- /dev/null
+++ b/dev-java/yajsw/Manifest
@@ -0,0 +1 @@
+DIST yajsw-stable-14.01.zip 26534755 BLAKE2B 42face7f9296e0f851f24246e570a758f94771d5720dff680d12b68a499dcffbb5426d4853e34854d67c07274f6484c34b5f3bb0456baf58651220e403b33662 SHA512 ddef4867e93cfc0ed40b175b92bed8b43f94aa1a243a21fd7b460f72e593c8a71dfdcf867e928a1900361ed76b3bc292f8c1c1d8dfc8295f82ea3125b792a2b0
diff --git a/dev-java/yajsw/files/yajsw-14.01-build-fixes.patch b/dev-java/yajsw/files/yajsw-14.01-build-fixes.patch
new file mode 100644
index 000000000000..31386c8a03f1
--- /dev/null
+++ b/dev-java/yajsw/files/yajsw-14.01-build-fixes.patch
@@ -0,0 +1,42 @@
+# Fix the build path and Java settings for Gradle 9
+
+--- a/build/gradle/build.gradle
++++ b/build/gradle/build.gradle
+@@ -4,10 +4,10 @@
+ }
+
+ ext {
+- projectHome = 'Z:/dev/yajsw2026' //'../..'
+- coreLibsDir = new File("$projectHome/lib/core").getAbsolutePath()
++ projectHome = rootProject.projectDir.parentFile.parentFile
++ coreLibsDir = new File(projectHome, "lib/core").getAbsolutePath()
+ println "$coreLibsDir"
+- extendedLibsDir = new File("$projectHome/lib/extended").getAbsolutePath()
++ extendedLibsDir = new File(projectHome, "lib/extended").getAbsolutePath()
+ // dependency versions
+
+ commons_cli_version = '1.11.0'
+@@ -66,8 +66,10 @@
+
+
+
+-sourceCompatibility = 11
+-targetCompatibility = 11
++java {
++ sourceCompatibility = JavaVersion.VERSION_11
++ targetCompatibility = JavaVersion.VERSION_11
++}
+ //options.bootClasspath = "${System.getProperty('java6.home')}/jre/lib/rt.jar"
+ version = ''
+
+--- a/build/gradle/settings.gradle
++++ b/build/gradle/settings.gradle
+@@ -1,7 +1,7 @@
+ // defines a list of subprojects
+
+ // build8. comment out for build9
+-include "wrapper", "wrapper-app", "ahessian", "hessian4", "srvmgr", "groovy-patch"
++include "wrapper", "wrapper-app", "ahessian", "hessian4", "groovy-patch"
+
+ // build9. comment out for build8
+ //include "wrapper", "wrapper-app", "wrapper-app9", "ahessian", "hessian4", "srvmgr", "groovy-patch", "groovy-patch9"
diff --git a/dev-java/yajsw/files/yajsw-14.01-javadoc.patch b/dev-java/yajsw/files/yajsw-14.01-javadoc.patch
new file mode 100644
index 000000000000..eea705c534fb
--- /dev/null
+++ b/dev-java/yajsw/files/yajsw-14.01-javadoc.patch
@@ -0,0 +1,15 @@
+# Turn off doc checks so the docs can build
+# this works around errors in the source comments
+
+--- a/build/gradle/wrapper/build.gradle
++++ b/build/gradle/wrapper/build.gradle
+@@ -1,5 +1,9 @@
+ def projectHome = '../../..'
+
++tasks.named('javadoc') {
++ options.addBooleanOption('Xdoclint:none', true)
++}
++
+ // set the sources for this build
+ sourceSets.main.java.srcDirs = ["$projectHome/src/yajsw/src/main/java", "$projectHome/src/app/src/main/java"]
+ sourceSets.main.java.exclude 'com/sun/jna/Native.java', 'com/sun/jna/Platform.java', 'org/apache/commons/vfs2/impl/StandardFileSystemManager.java'
diff --git a/dev-java/yajsw/files/yajsw-14.01-keystore.patch b/dev-java/yajsw/files/yajsw-14.01-keystore.patch
new file mode 100644
index 000000000000..4a4ac429090f
--- /dev/null
+++ b/dev-java/yajsw/files/yajsw-14.01-keystore.patch
@@ -0,0 +1,13 @@
+# Build the keystore code from the source in this release
+
+--- a/build/gradle/wrapper/build.gradle
++++ b/build/gradle/wrapper/build.gradle
+@@ -5,7 +5,7 @@ tasks.named('javadoc') {
+ }
+
+ // set the sources for this build
+-sourceSets.main.java.srcDirs = ["$projectHome/src/yajsw/src/main/java", "$projectHome/src/app/src/main/java"]
++sourceSets.main.java.srcDirs = ["$projectHome/src/yajsw/src/main/java", "$projectHome/src/app/src/main/java", "$projectHome/src/keystore/src/main/java"]
+ sourceSets.main.java.exclude 'com/sun/jna/Native.java', 'com/sun/jna/Platform.java', 'org/apache/commons/vfs2/impl/StandardFileSystemManager.java'
+ sourceSets.main.java.exclude 'io/netty/util/internal/CleanerJava9.java', 'io/netty/util/internal/ObjectUtil.java', 'io/netty/util/internal/PlatformDependent0.java'
+ sourceSets.main.java.exclude(['AbstractInternalLogger', 'InternalLogLevel', 'InternalLogger', 'InternalLoggerFactory', 'JdkLogger', 'JdkLoggerFactory'].collect { "io/netty/util/internal/logging/${it}.java" })
diff --git a/dev-java/yajsw/files/yajsw-14.01-paths.patch b/dev-java/yajsw/files/yajsw-14.01-paths.patch
new file mode 100644
index 000000000000..3b08ceb3381b
--- /dev/null
+++ b/dev-java/yajsw/files/yajsw-14.01-paths.patch
@@ -0,0 +1,37 @@
+# Keep config in /etc and runtime files outside /usr
+
+--- a/bin/setenv.sh
++++ b/bin/setenv.sh
+@@ -33,7 +33,7 @@
+ wrapper_app_jar="$wrapper_home"/wrapperApp.jar
+ export wrapper_app_jar
+
+-wrapper_java_sys_options=-Djna_tmpdir="$wrapper_home"/tmp
++wrapper_java_sys_options=-Djna_tmpdir="${TMPDIR:-/tmp}"
+ export wrapper_java_sys_options
+
+ wrapper_java_options=-Xmx30m
+@@ -45,10 +45,10 @@
+ # show java version
+ "$java_exe" -version
+
+-conf_file="$wrapper_home"/conf/wrapper.conf
++conf_file="@GENTOO_PORTAGE_EPREFIX@/etc/yajsw/wrapper.conf"
+ export conf_file
+
+-conf_default_file="$wrapper_home"/conf/wrapper.conf.default
++conf_default_file="@GENTOO_PORTAGE_EPREFIX@/etc/yajsw/wrapper.conf.default"
+ export conf_default_file
+
+ echo "wrapper home : $wrapper_home"
+--- a/conf/wrapper.conf.default
++++ b/conf/wrapper.conf.default
+@@ -128,7 +128,7 @@
+ wrapper.console.loglevel=INFO
+
+ # Log file to use for wrapper output logging.
+-wrapper.logfile=${wrapper_home}/log/wrapper.log
++wrapper.logfile=wrapper.log
+
+ # Format of output for the log file. (See docs for formats)
+ #wrapper.logfile.format=LPTM
diff --git a/dev-java/yajsw/files/yajsw-14.01-system-libs.patch b/dev-java/yajsw/files/yajsw-14.01-system-libs.patch
new file mode 100644
index 000000000000..f71767efe7e7
--- /dev/null
+++ b/dev-java/yajsw/files/yajsw-14.01-system-libs.patch
@@ -0,0 +1,112 @@
+# Use system jars in the build and the launchers
+
+--- a/build/gradle/build.gradle
++++ b/build/gradle/build.gradle
+@@ -32,7 +32,10 @@
+ joda_time_version = '2.7'
+ permit_version = '0.4'
+ }
+-defaultTasks 'clean', 'build'
++ext.systemClasspath = System.getenv('GENTOO_CLASSPATH').split(File.pathSeparator)
++ .findAll { !it.endsWith('/slf4j-nop.jar') }
++
++defaultTasks 'clean', 'build'
+
+ // common settings for all sub-projects
+ allprojects {
+@@ -45,26 +48,16 @@
+
+
+
+-// for simplicity and to avoid dependency issues which arise due to the usage of SNAPSHOT libs
+-// we use libs from local disk instead of public repository
+-repositories {
+- flatDir {
+- dirs "$coreLibsDir/commons", "$coreLibsDir/jna", "$coreLibsDir/netty", "$coreLibsDir/permit",
+- "$coreLibsDir/yajsw",
+- "$extendedLibsDir/groovy",
+- "$extendedLibsDir/regex",
+- "$extendedLibsDir/cron",
+- "$extendedLibsDir/commons",
+- "$extendedLibsDir/abeille",
+- "$extendedLibsDir/jgoodies",
+- "$extendedLibsDir/slf4j",
+- "$extendedLibsDir/velocity"
+-
++configurations.configureEach {
++ withDependencies {
++ removeAll { it instanceof ExternalModuleDependency }
+ }
+- }
+-
+-
+-
++}
++dependencies {
++ implementation files(rootProject.systemClasspath)
++ implementation fileTree(dir: new File(rootProject.projectHome, 'lib'),
++ includes: ['**/*.jar'], excludes: ['**/yajsw/*.jar', '**/groovy-patch.jar'])
++}
+
+ java {
+ sourceCompatibility = JavaVersion.VERSION_11
+--- a/build/gradle/wrapper/build.gradle
++++ b/build/gradle/wrapper/build.gradle
+@@ -2,6 +2,9 @@
+
+ // set the sources for this build
+ sourceSets.main.java.srcDirs = ["$projectHome/src/yajsw/src/main/java", "$projectHome/src/app/src/main/java"]
++sourceSets.main.java.exclude 'com/sun/jna/Native.java', 'com/sun/jna/Platform.java', 'org/apache/commons/vfs2/impl/StandardFileSystemManager.java'
++sourceSets.main.java.exclude 'io/netty/util/internal/CleanerJava9.java', 'io/netty/util/internal/ObjectUtil.java', 'io/netty/util/internal/PlatformDependent0.java'
++sourceSets.main.java.exclude(['AbstractInternalLogger', 'InternalLogLevel', 'InternalLogger', 'InternalLoggerFactory', 'JdkLogger', 'JdkLoggerFactory'].collect { "io/netty/util/internal/logging/${it}.java" })
+ sourceSets.main.resources.srcDirs = ["$projectHome/src/yajsw/src/main/java"]
+ sourceSets.main.resources.includes = ['resources/*']
+
+@@ -50,7 +53,16 @@
+ // TODO generate manifest instead of editing
+ jar {
+ manifest {
+- from '../../MANIFEST.MF'
++ def systemJars = rootProject.systemClasspath.collect { new File(it).toURI().toString() }
++ from('../../MANIFEST.MF') {
++ eachEntry { entry ->
++ if (entry.key.startsWith('Class-Path-')) {
++ entry.value = (entry.value.split().findAll { file("$projectHome/$it").exists() }
++ + systemJars).unique().join(' ')
++ }
++ }
++ }
++ attributes 'Class-Path': systemJars.join(' ')
+ }
+ exclude 'org/rzo/yajsw/app/AbstractWrapperJVMMain*'
+ exclude 'org/rzo/yajsw/app/WrapperGroovyMain*'
+--- a/build/gradle/wrapper-app/build.gradle
++++ b/build/gradle/wrapper-app/build.gradle
+@@ -42,6 +42,15 @@
+ // TODO generate manifest
+ jar {
+ manifest {
+- from '../../MANIFEST.MF'
++ def systemJars = rootProject.systemClasspath.collect { new File(it).toURI().toString() }
++ from('../../MANIFEST.MF') {
++ eachEntry { entry ->
++ if (entry.key.startsWith('Class-Path-')) {
++ entry.value = (entry.value.split().findAll { file("$projectHome/$it").exists() }
++ + systemJars).unique().join(' ')
++ }
++ }
++ }
++ attributes 'Class-Path': systemJars.join(' ')
+ }
+ }
+--- a/src/app/src/main/java/org/rzo/yajsw/boot/WrapperLoader.java
++++ b/src/app/src/main/java/org/rzo/yajsw/boot/WrapperLoader.java
+@@ -215,7 +215,7 @@
+ File myFile;
+ try
+ {
+- myFile = new File(parent, file);
++ myFile = new File(parent.toURI().resolve(file));
+ if (!myFile.exists())
+ {
+ if (logErrors)
diff --git a/dev-java/yajsw/files/yajsw-14.01-system-native.patch b/dev-java/yajsw/files/yajsw-14.01-system-native.patch
new file mode 100644
index 000000000000..b5b8d7ea6d1d
--- /dev/null
+++ b/dev-java/yajsw/files/yajsw-14.01-system-native.patch
@@ -0,0 +1,26 @@
+# Use Gentoo's JNA native library
+
+--- a/src/app/src/main/java/org/rzo/yajsw/boot/WrapperLoader.java
++++ b/src/app/src/main/java/org/rzo/yajsw/boot/WrapperLoader.java
+@@ -34,6 +34,11 @@ import com.nqzero.permit.Permit;
+
+ public class WrapperLoader
+ {
++ static
++ {
++ System.setProperty("jna.boot.library.path", "@GENTOO_LIBDIR@/jna");
++ }
++
+
+ private static boolean checkPath(String path)
+ {
+--- a/src/yajsw/src/main/java/org/rzo/yajsw/os/posix/PosixProcess.java
++++ b/src/yajsw/src/main/java/org/rzo/yajsw/os/posix/PosixProcess.java
+@@ -1252,6 +1252,7 @@ public class PosixProcess extends AbstractProcess {
+ private String[] getSpawnCmdLine() {
+ ArrayList<String> cmdList = new ArrayList();
+ cmdList.add(getCurrentJava());
++ cmdList.add("-Djna.boot.library.path=" + System.getProperty("jna.boot.library.path"));
+ String tmpDir = _tmpPath;
+ if (tmpDir == null)
+ tmpDir = System.getProperty("jna_tmpdir", null);
diff --git a/dev-java/yajsw/metadata.xml b/dev-java/yajsw/metadata.xml
new file mode 100644
index 000000000000..739a9b771a67
--- /dev/null
+++ b/dev-java/yajsw/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mit.mis@gmail.com</email>
+ <name>Michal Andrzejczak</name>
+ </maintainer>
+ <longdescription lang="en">
+ YAJSW runs an arbitrary Java or native application as a system daemon:
+ it starts the process, restarts it when it exits or stops responding,
+ captures its output, and installs it into the init system. It is a
+ clean-room reimplementation of the Tanuki Java Service Wrapper.
+ </longdescription>
+ <origin>srcux</origin>
+</pkgmetadata>
diff --git a/dev-java/yajsw/yajsw-14.01.ebuild b/dev-java/yajsw/yajsw-14.01.ebuild
new file mode 100644
index 000000000000..4e1b0c58f8c6
--- /dev/null
+++ b/dev-java/yajsw/yajsw-14.01.ebuild
@@ -0,0 +1,151 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc source"
+
+JAVA_PKG_WANT_BUILD_VM="openjdk-21 openjdk-bin-21"
+JAVA_PKG_WANT_SOURCE="21"
+JAVA_PKG_WANT_TARGET="21"
+
+inherit edo edos2unix java-pkg-2 multiprocessing prefix
+
+MY_P="${PN}-stable-${PV}"
+
+DESCRIPTION="Yet Another Java Service Wrapper, runs any application as a daemon"
+HOMEPAGE="https://yajsw.sourceforge.io/"
+SRC_URI="
+ https://sourceforge.net/projects/yajsw/files/yajsw/${MY_P}/${MY_P}.zip/download
+ -> ${MY_P}.zip
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 CC-BY-2.5 GPL-2+ LGPL-2.1+ MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+CP_DEPEND="
+ >=dev-java/automaton-1.11.8:0
+ dev-java/commons-beanutils:0
+ >=dev-java/commons-cli-1.11.0:0
+ >=dev-java/commons-collections-4.5.0:4
+ >=dev-java/commons-io-2.21.0:0
+ >=dev-java/commons-lang-3.20.0:0
+ >=dev-java/commons-logging-1.3.6:0
+ >=dev-java/commons-text-1.15.0:0
+ >=dev-java/commons-vfs-2.0:2
+ >=dev-java/jna-5.18.1:0
+ >=dev-java/joda-time-2.13.0:0
+ >=dev-java/permit-reflect-0.4:0
+ >=dev-java/slf4j-api-2.0.3:0
+ >=dev-java/slf4j-simple-2.0.3:0
+ >=dev-java/velocity-2.4.1:0
+"
+
+RDEPEND="${CP_DEPEND}
+ app-admin/sudo
+ >=virtual/jre-21:*"
+
+DEPEND="${CP_DEPEND}
+ virtual/jdk:21"
+
+BDEPEND="
+ app-arch/unzip
+ >=dev-java/gradle-bin-8.5
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-build-fixes.patch
+ "${FILESDIR}"/${P}-system-libs.patch
+ "${FILESDIR}"/${P}-system-native.patch
+ "${FILESDIR}"/${P}-javadoc.patch
+ "${FILESDIR}"/${P}-paths.patch
+ "${FILESDIR}"/${P}-keystore.patch
+)
+
+DOCS=( readme.txt yajsw.policy.txt )
+
+src_prepare() {
+ edos2unix build/gradle/{build,settings,wrapper/build,wrapper-app/build}.gradle
+ edos2unix src/app/src/main/java/org/rzo/yajsw/boot/WrapperLoader.java
+ edos2unix src/yajsw/src/main/java/org/rzo/yajsw/os/posix/PosixProcess.java
+ edos2unix conf/wrapper.conf.default
+
+ default
+ java-pkg-2_src_prepare
+ sed -i "s|@GENTOO_LIBDIR@|${EPREFIX}/usr/$(get_libdir)|g" \
+ src/app/src/main/java/org/rzo/yajsw/boot/WrapperLoader.java || die
+ eprefixify bin/setenv.sh
+
+ rm -r lib/core/{jna,permit} \
+ lib/extended/{commons,keystore,regex,sigar,slf4j,velocity} \
+ lib/groovy/{mail,joda,jasypt,snmp} || die
+ find lib/core/commons -type f ! -name 'commons-configuration2-*.jar' -delete || die
+ rm lib/extended/cron/{joda-time-2.7,prevayler-core-2.6,prevayler-factory-2.6}.jar || die
+}
+
+src_compile() {
+ local gradle
+ gradle=$(best_version -b '>=dev-java/gradle-bin-8.5') || die
+ [[ -n ${gradle} ]] || die "No supported Gradle installed"
+ gradle=${gradle##*/}
+ gradle=${gradle%-r*}
+
+ local packages=(
+ automaton commons-beanutils commons-cli commons-collections-4
+ commons-io commons-lang commons-logging commons-text commons-vfs-2 jna
+ joda-time permit-reflect slf4j-api slf4j-simple velocity
+ )
+ local -x GENTOO_CLASSPATH
+ GENTOO_CLASSPATH=$(java-pkg_getjars --with-dependencies "$(IFS=,; echo "${packages[*]}")") || die
+
+ local -x JAVA_TOOL_OPTIONS="-Duser.home=${T}"
+ local targets=( build )
+ use doc && targets+=( :wrapper:javadoc )
+
+ cd build/gradle || die
+ edo "${EPREFIX}/usr/bin/${gradle}" \
+ --console=plain \
+ --offline \
+ --no-daemon \
+ --no-build-cache \
+ --gradle-user-home "${T}/gradle_user_home" \
+ --project-cache-dir "${T}/gradle_project_cache" \
+ --parallel --max-workers="$(get_makeopts_jobs)" \
+ "${targets[@]}"
+}
+
+src_install() {
+ local dest="/usr/share/${PN}" b=build/gradle
+
+ cp "${b}"/ahessian/build/libs/*.jar lib/core/yajsw/ || die
+ cp "${b}"/hessian4/build/libs/*.jar lib/extended/yajsw/ || die
+ cp "${b}"/groovy-patch/build/libs/*.jar lib/extended/groovy/ || die
+
+ java-pkg_jarinto "${dest}"
+ java-pkg_dojar "${b}/wrapper/build/libs/wrapper.jar"
+ insinto "${dest}"
+ doins "${b}/wrapper-app/build/libs/wrapperApp.jar"
+ doins -r lib
+
+ insinto /etc/yajsw
+ doins conf/wrapper.conf.default
+
+ insinto "${dest}/templates"
+ doins templates/daemon.vm templates/systemd.vm
+
+ exeinto "${dest}"/bin
+ doexe bin/{wrapper,setenv,genConfig,runConsole}.sh
+ doexe bin/{install,start,stop,query,uninstall}Daemon{,NoPriv}.sh
+
+ einstalldocs
+
+ if use doc; then
+ java-pkg_dojavadoc "${b}/wrapper/build/docs/javadoc"
+ fi
+
+ if use source; then
+ java-pkg_dosrc src/{yajsw,app,ahessian,hessian,groovy-patch,keystore}
+ fi
+}
diff --git a/dev-lang/deno-bin/Manifest b/dev-lang/deno-bin/Manifest
index 020e4fd0ddcc..8dc8ae5c74fc 100644
--- a/dev-lang/deno-bin/Manifest
+++ b/dev-lang/deno-bin/Manifest
@@ -1,6 +1,2 @@
-DIST deno-bin-2.8.3-amd64.zip 43810239 BLAKE2B abbfb607351fdbd1849a3e05de8b97675129a17a151c45f2ea8dc81f209a258da8e9b8748cbab0ce980db1522fe9e0a8747cf5da4fc5a7b604215b798145152f SHA512 212f3e0671910f1dc8a20dbb7b3d16f7ac632df33bac3fb8dbf735cdec3fbbc095869529e3a77d5b13b0fa6ef9351636e8d959b458934f1ab0b396a192a25973
-DIST deno-bin-2.8.3-arm64.zip 42042289 BLAKE2B 18274847117f45e3952029baf22a122c326f00dcce27aff0e6ef127836373beadb4e6d2e41e3be312d027132c409ebb155276deaf2d6a3404e0aec683249ab9b SHA512 7dee706159037a5adb33787fd2ea81df2a13a8acbdea93dedd6660a45ce22ef15c294575cd5550c5dd5f11e398f686b8cf39117ceea22f92ba7c5f6666b6d33c
-DIST deno-bin-2.9.6-amd64.zip 41582794 BLAKE2B 8d7776b1b7a2145898ed92983eb8c227ba4513a7a46cf5b1a6c17d4243300be77d2928a4600a2bd043ebb42b004423cd5c8c5a864c5c5221bb048375a571097c SHA512 318d415a7a04d9c15cc56a9da3f32c2ba7a474171ec5f6fa429e1aceee2aa096656da2e596390bcb80a4d04df179cb3f62980af0798c57839c8d0b4b40eb02af
-DIST deno-bin-2.9.6-arm64.zip 39818676 BLAKE2B 9d08305fbb15aac849cb10b3d790d070f91fdb719d1bf3ceab81c54ce576653540be06d83b8ec7c97687b5d35ad24cccefb74c7ec14006d974f6e053bbf25586 SHA512 974489f1967e09801b48ae5d7aa89f86ed8c0cc8eb462646e029b8e068487b759b87115934d7f454605409b18084138c5bf55e5a9e9427c0be3fae9acbc5df6a
-DIST deno-bin-2.9.7-amd64.zip 41596794 BLAKE2B 3cb18b8a82a96cbb0cfbb1d8d45e0854ac3d0d3b90837cb3febaf9b720f336939bceaba75d5b795e45dd749824d18751fd4833fb62f59e30a481cad2f2c613da SHA512 dd7f837d2d071842065b61d4e66492596cfbe4936471abba9773f8e9ddcc6676502cad3f7136f5e3e92aa864ddb674ec72779784e1318f211ede9292de39c8f3
-DIST deno-bin-2.9.7-arm64.zip 39821318 BLAKE2B 4b3fded4f243da49ecd5045af9f27a25f71986b1dcfc2d0b74fa390f9767c44df35788b81f4f3f7d473818f7979f0d34919516f605a0a026e6a1b91277f1b238 SHA512 33233d18656d076d21e2246ae2f5d9fdc41d444f58b77b0e35ef998ae2f5f92b859fc9ddf8d6f1d42953d5f2e66a5c8949c677c6029ac9c818bc31ab9003e55a
+DIST deno-bin-2.9.8-amd64.zip 41963064 BLAKE2B 57bc0e864131e542c0815e237174b1448dcf4ac2a2907443020bcd4cba80a369c2f7b758ae6d06089e5a0fd66aa4a7ef17305910f126c41816672f5bc7cb85af SHA512 bb2de4dd1a043e92cc07dc041ed4338e3f903b84fe45e4b66234ff660e6cab16a0dcec55488ea728c63f8ef00feaf3896bd6fad686015421a389ad8dd852b0ab
+DIST deno-bin-2.9.8-arm64.zip 40120596 BLAKE2B 37e02b751c03fcfa8805112dc603a33afa711717bb729390fc40c6eb1a8e2eb0a5a281bc064d68c61ed68783b32fc209ce277aae210d8148c2efb577bbeba047 SHA512 d39954f826738806a11929b8601718f029cfacae9794769d2936a8587bac77db763e3bb3a24ee8acc8f9667d1dedc48a1ceab7b5848768fa691aa7f5eaeeab26
diff --git a/dev-lang/deno-bin/deno-bin-2.9.6.ebuild b/dev-lang/deno-bin/deno-bin-2.9.6.ebuild
deleted file mode 100644
index 5baf84ee6900..000000000000
--- a/dev-lang/deno-bin/deno-bin-2.9.6.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=9
-
-inherit shell-completion toolchain-funcs
-
-DESCRIPTION="Modern runtime for JavaScript and TypeScript"
-HOMEPAGE="https://deno.com/"
-SRC_URI="
- amd64? (
- https://github.com/denoland/deno/releases/download/v${PV}/deno-x86_64-unknown-linux-gnu.zip
- -> ${P}-amd64.zip
- )
- arm64? (
- https://github.com/denoland/deno/releases/download/v${PV}/deno-aarch64-unknown-linux-gnu.zip
- -> ${P}-arm64.zip
- )
-"
-S=${WORKDIR}
-
-LICENSE="MIT"
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0 ISC MIT
- MPL-2.0 openssl Unicode-3.0 Unicode-DFS-2016 ZLIB
-" # crates
-SLOT="0"
-KEYWORDS="-* ~amd64 ~arm64"
-
-RDEPEND="
- || (
- llvm-runtimes/libgcc
- sys-devel/gcc:*
- )
- sys-libs/glibc
-"
-BDEPEND="
- app-arch/unzip
-"
-
-QA_PREBUILT="usr/bin/deno"
-
-src_compile() {
- if ! tc-is-cross-compiler; then
- ./deno completions bash > "${T}"/deno || die
- ./deno completions fish > "${T}"/deno.fish || die
- ./deno completions zsh > "${T}"/_deno || die
- else
- ewarn "shell completion files were skipped due to cross-compilation"
- fi
-}
-
-src_install() {
- dobin deno
-
- newenvd - 50deno <<<"DENO_NO_UPDATE_CHECK=1"
-
- if ! tc-is-cross-compiler; then
- dobashcomp "${T}"/deno
- dofishcomp "${T}"/deno.fish
- dozshcomp "${T}"/_deno
- fi
-}
diff --git a/dev-lang/deno-bin/deno-bin-2.9.7.ebuild b/dev-lang/deno-bin/deno-bin-2.9.7.ebuild
deleted file mode 100644
index 5baf84ee6900..000000000000
--- a/dev-lang/deno-bin/deno-bin-2.9.7.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=9
-
-inherit shell-completion toolchain-funcs
-
-DESCRIPTION="Modern runtime for JavaScript and TypeScript"
-HOMEPAGE="https://deno.com/"
-SRC_URI="
- amd64? (
- https://github.com/denoland/deno/releases/download/v${PV}/deno-x86_64-unknown-linux-gnu.zip
- -> ${P}-amd64.zip
- )
- arm64? (
- https://github.com/denoland/deno/releases/download/v${PV}/deno-aarch64-unknown-linux-gnu.zip
- -> ${P}-arm64.zip
- )
-"
-S=${WORKDIR}
-
-LICENSE="MIT"
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0 ISC MIT
- MPL-2.0 openssl Unicode-3.0 Unicode-DFS-2016 ZLIB
-" # crates
-SLOT="0"
-KEYWORDS="-* ~amd64 ~arm64"
-
-RDEPEND="
- || (
- llvm-runtimes/libgcc
- sys-devel/gcc:*
- )
- sys-libs/glibc
-"
-BDEPEND="
- app-arch/unzip
-"
-
-QA_PREBUILT="usr/bin/deno"
-
-src_compile() {
- if ! tc-is-cross-compiler; then
- ./deno completions bash > "${T}"/deno || die
- ./deno completions fish > "${T}"/deno.fish || die
- ./deno completions zsh > "${T}"/_deno || die
- else
- ewarn "shell completion files were skipped due to cross-compilation"
- fi
-}
-
-src_install() {
- dobin deno
-
- newenvd - 50deno <<<"DENO_NO_UPDATE_CHECK=1"
-
- if ! tc-is-cross-compiler; then
- dobashcomp "${T}"/deno
- dofishcomp "${T}"/deno.fish
- dozshcomp "${T}"/_deno
- fi
-}
diff --git a/dev-lang/deno-bin/deno-bin-2.8.3.ebuild b/dev-lang/deno-bin/deno-bin-2.9.8.ebuild
index 869f8a3d802b..bdbe32246543 100644
--- a/dev-lang/deno-bin/deno-bin-2.8.3.ebuild
+++ b/dev-lang/deno-bin/deno-bin-2.9.8.ebuild
@@ -1,7 +1,7 @@
# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=8
+EAPI=9
inherit shell-completion toolchain-funcs
diff --git a/dev-lang/go/files/go-1.25-vdso-test-clock_gettime64.patch b/dev-lang/go/files/go-1.25-vdso-test-clock_gettime64.patch
new file mode 100644
index 000000000000..a27b13112ad8
--- /dev/null
+++ b/dev-lang/go/files/go-1.25-vdso-test-clock_gettime64.patch
@@ -0,0 +1,66 @@
+https://bugs.gentoo.org/972637
+https://github.com/golang/go/commit/834214f787ad8a70fa3011dc28a03f397ff31f64
+From: Brad Fitzpatrick <bradfitz@golang.org>
+Subject: [PATCH] runtime: fix TestUsingVDSO on Linux ARMv6 (Pi 1)
+--- a/src/runtime/vdso_test.go
++++ b/src/runtime/vdso_test.go
+@@ -53,8 +53,13 @@ func TestUsingVDSO(t *testing.T) {
+ t.Skipf("skipping because Executable failed: %v", err)
+ }
+
+- t.Logf("GO_WANT_HELPER_PROCESS=1 %s -f -e clock_gettime %s -test.run=^TestUsingVDSO$", strace, exe)
+- cmd := testenv.Command(t, strace, "-f", "-e", "clock_gettime", exe, "-test.run=^TestUsingVDSO$")
++ // Trace both clock_gettime and clock_gettime64: 32-bit Linux glibc uses
++ // the y2038-safe clock_gettime64 syscall, and strace's -e filter is an
++ // exact match, not a prefix.
++ const traceFilter = "clock_gettime,clock_gettime64"
++
++ t.Logf("GO_WANT_HELPER_PROCESS=1 %s -f -e %s %s -test.run=^TestUsingVDSO$", strace, traceFilter, exe)
++ cmd := testenv.Command(t, strace, "-f", "-e", traceFilter, exe, "-test.run=^TestUsingVDSO$")
+ cmd = testenv.CleanCmdEnv(cmd)
+ cmd.Env = append(cmd.Env, "GO_WANT_HELPER_PROCESS=1")
+ out, err := cmd.CombinedOutput()
+@@ -107,8 +112,8 @@ func TestUsingVDSO(t *testing.T) {
+ t.Skipf("can't verify VDSO status, C compiled failed: %v", err)
+ }
+
+- t.Logf("%s -f -e clock_gettime %s", strace, cexe)
+- cmd = testenv.Command(t, strace, "-f", "-e", "clock_gettime", cexe)
++ t.Logf("%s -f -e %s %s", strace, traceFilter, cexe)
++ cmd = testenv.Command(t, strace, "-f", "-e", traceFilter, cexe)
+ cmd = testenv.CleanCmdEnv(cmd)
+ out, err = cmd.CombinedOutput()
+ if len(out) > 0 {
+https://github.com/golang/go/commit/2568174249aeb5d747656735ecc28535ac4e58c3
+From: Paul Murphy <murp@redhat.com>
+Date: Fri, 8 May 2026 14:42:29 -0500
+Subject: [PATCH] runtime: fix TestUsingVDSO on linux/ppc64le
+--- a/src/runtime/vdso_test.go
++++ b/src/runtime/vdso_test.go
+@@ -9,6 +9,7 @@ package runtime_test
+ import (
+ "bytes"
+ "internal/asan"
++ "internal/goarch"
+ "internal/testenv"
+ "os"
+ "os/exec"
+@@ -53,10 +54,14 @@ func TestUsingVDSO(t *testing.T) {
+ t.Skipf("skipping because Executable failed: %v", err)
+ }
+
+- // Trace both clock_gettime and clock_gettime64: 32-bit Linux glibc uses
+- // the y2038-safe clock_gettime64 syscall, and strace's -e filter is an
+- // exact match, not a prefix.
+- const traceFilter = "clock_gettime,clock_gettime64"
++ traceFilter := "clock_gettime"
++
++ if goarch.PtrSize == 4 {
++ // Trace both clock_gettime and clock_gettime64: 32-bit Linux glibc uses
++ // the y2038-safe clock_gettime64 syscall, and strace's -e filter is an
++ // exact match, not a prefix.
++ traceFilter += ",clock_gettime64"
++ }
+
+ t.Logf("GO_WANT_HELPER_PROCESS=1 %s -f -e %s %s -test.run=^TestUsingVDSO$", strace, traceFilter, exe)
+ cmd := testenv.Command(t, strace, "-f", "-e", traceFilter, exe, "-test.run=^TestUsingVDSO$")
diff --git a/dev-lang/go/go-1.25.13.ebuild b/dev-lang/go/go-1.25.13.ebuild
index a4da32d3784e..f664f57a2fa7 100644
--- a/dev-lang/go/go-1.25.13.ebuild
+++ b/dev-lang/go/go-1.25.13.ebuild
@@ -73,6 +73,7 @@ PATCHES=(
"${FILESDIR}"/go-1.25-no-dwarf5.patch
"${FILESDIR}"/go-1.25-strip-top-level-const.patch
"${FILESDIR}"/go-never-download-newer-toolchains.patch
+ "${FILESDIR}"/go-1.25-vdso-test-clock_gettime64.patch
)
src_compile() {
diff --git a/dev-lang/go/go-1.25.14.ebuild b/dev-lang/go/go-1.25.14.ebuild
index 11b1353dddb2..175e09ec8178 100644
--- a/dev-lang/go/go-1.25.14.ebuild
+++ b/dev-lang/go/go-1.25.14.ebuild
@@ -73,6 +73,7 @@ PATCHES=(
"${FILESDIR}"/go-1.25-no-dwarf5.patch
"${FILESDIR}"/go-1.25-strip-top-level-const.patch
"${FILESDIR}"/go-never-download-newer-toolchains.patch
+ "${FILESDIR}"/go-1.25-vdso-test-clock_gettime64.patch
)
src_compile() {
diff --git a/dev-lang/go/go-1.26.10.ebuild b/dev-lang/go/go-1.26.10.ebuild
index aaf028a4c972..8f845ca5e701 100644
--- a/dev-lang/go/go-1.26.10.ebuild
+++ b/dev-lang/go/go-1.26.10.ebuild
@@ -20,7 +20,7 @@ case ${PV} in
*)
SRC_URI="https://go.dev/dl/go${MY_PV}.src.tar.gz "
S="${WORKDIR}"/go
- KEYWORDS="-* amd64 ~arm arm64 ~loong ~mips ~ppc64 ~riscv ~s390 x86 ~x64-macos ~x64-solaris"
+ KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~x64-macos ~x64-solaris"
;;
esac
@@ -72,6 +72,7 @@ PATCHES=(
"${FILESDIR}"/go-1.24-skip-gdb-tests.patch
"${FILESDIR}"/go-1.25-no-dwarf5.patch
"${FILESDIR}"/go-never-download-newer-toolchains.patch
+ "${FILESDIR}"/go-1.25-vdso-test-clock_gettime64.patch
)
src_compile() {
diff --git a/dev-lang/go/go-1.26.7.ebuild b/dev-lang/go/go-1.26.7.ebuild
index bde6f7b0403f..8f845ca5e701 100644
--- a/dev-lang/go/go-1.26.7.ebuild
+++ b/dev-lang/go/go-1.26.7.ebuild
@@ -72,6 +72,7 @@ PATCHES=(
"${FILESDIR}"/go-1.24-skip-gdb-tests.patch
"${FILESDIR}"/go-1.25-no-dwarf5.patch
"${FILESDIR}"/go-never-download-newer-toolchains.patch
+ "${FILESDIR}"/go-1.25-vdso-test-clock_gettime64.patch
)
src_compile() {
diff --git a/dev-lang/go/go-1.26.9.ebuild b/dev-lang/go/go-1.26.9.ebuild
index 452231977fd8..b0fe1459749f 100644
--- a/dev-lang/go/go-1.26.9.ebuild
+++ b/dev-lang/go/go-1.26.9.ebuild
@@ -72,6 +72,7 @@ PATCHES=(
"${FILESDIR}"/go-1.24-skip-gdb-tests.patch
"${FILESDIR}"/go-1.25-no-dwarf5.patch
"${FILESDIR}"/go-never-download-newer-toolchains.patch
+ "${FILESDIR}"/go-1.25-vdso-test-clock_gettime64.patch
)
src_compile() {
diff --git a/dev-lang/go/go-1.27.3.ebuild b/dev-lang/go/go-1.27.3.ebuild
index 452231977fd8..bde6f7b0403f 100644
--- a/dev-lang/go/go-1.27.3.ebuild
+++ b/dev-lang/go/go-1.27.3.ebuild
@@ -20,7 +20,7 @@ case ${PV} in
*)
SRC_URI="https://go.dev/dl/go${MY_PV}.src.tar.gz "
S="${WORKDIR}"/go
- KEYWORDS="-* ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~x86 ~x64-macos ~x64-solaris"
+ KEYWORDS="-* amd64 arm arm64 ~loong ~mips ppc64 ~riscv ~s390 x86 ~x64-macos ~x64-solaris"
;;
esac
diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest
index 4998488ed365..956613c7d313 100644
--- a/dev-lang/php/Manifest
+++ b/dev-lang/php/Manifest
@@ -1,6 +1,4 @@
-DIST php-8.2.33.tar.xz 12166568 BLAKE2B 7e05fc28b7abf4ec87ac528e5a511bcee10c82374396b942b3d56c6a7d2dd72560b90bd35d41a5074c9a3237c6597d66a9ef33d60cfc5f9874a649d6ad30acd7 SHA512 4d96978f1f59a61c1c49bcb5e884799805ba26d4dac9e1bdaeaf659de85e1c025df765f4cdb8b1ea957519fd62cd54c060611abc2a11f9828c53d407077992eb
-DIST php-8.2.34.tar.xz 12174884 BLAKE2B 936f59edaea083e13a8624e888fe6668a486f30a1764d1544bc4a2788e7e62cd5bd9092c773a65667b046cdb30334fff55cef56bdd6e097e56ac2b082a42df9d SHA512 843128b656003c931584bfaeb780119500f2e67f4c6c868afb2c9c9e5abea20b75d23e917d46169b9fb1dec20798b3ee8d03c0d053e63f6e9932c7b2796d7557
-DIST php-8.3.33.tar.xz 12613000 BLAKE2B 6c170f4a57f3f05eae252215f1fedbc482c9bd18ec5e4c02991ca1bf3b54d99a0d5e801b4827aa7ff3714f216f0aefa8a2bf8124411adb6aa0b0bc01d12e9d77 SHA512 e2340294b11ae47ba527018d700b6d896f73e04d06a8cdf099a60380f06b3899adaca01fe654bd9ac8e2dc5f3ff73c94ab1801a006a83558b222e448edd847dc
-DIST php-8.3.35.tar.xz 12623068 BLAKE2B 871d9b71064f8c647aea07474dffacb97e32b294ed6f7f97d30d52fd912b768b945c1a31d33a9ee3b311f5df05a7c8df54487f9b726d1c0e930e6ec717e186c0 SHA512 40afcfb15a974b147e470c16809b96db0d6cd03e83cc77c71d6fd8e946cc707eb3d783c0e6452639cf644857a52ef46e0e0c25efeff464aaa15eac8aa8ecd2bf
-DIST php-8.4.26.tar.xz 13791528 BLAKE2B 5dd6eea221c6a5d138cf19b72edc6a580d1a2add1df8096e9151cacd64dbae0acb5e78837faf121295f9408920813c60775ae3b30a7e3ca207a1ebeb508a8622 SHA512 7c1909185187dc54789727861afdce567eae9e39eb34aabf0da0ec7515b2c9c73b011740f5122724c5b1306ad3ec2bf1d5d0a46b0bf932c40e685e05c8c4dda7
-DIST php-8.5.11.tar.xz 14469364 BLAKE2B 8e8d4b096c17adf8ce00227bfc746d5f48aa5bcba340d0c3b69a731d4cf36466621ac897b27616fdafe245fb01b810bee1c92479d81c51d7a7203f05706ea933 SHA512 77099e425c991d68afb143bbdc7f86124b5f797b1bf2a84659b8a9dab86b27682cbbb925744c0e586ce82a46038575b5388b15d2a15a7503aeb4369c1bf6fff5
+DIST php-8.2.35.tar.xz 12216408 BLAKE2B 79d0e3f723ad00c91ef19fb82263dca714aa06b804331e54bd844fa8fa4d917baa41386d01820e2b794c7b17e7592936c7e6a04cd52e159e7fed7c02225be3c2 SHA512 1d6289728b69eea8207dc32c1409b9b8957223291f271377ce4194b90ee44d8846ed2c4972d6c88ef5215b8572d4a21a5033b3905458488067787a921d4f299a
+DIST php-8.3.36.tar.xz 12669456 BLAKE2B 0c702db028d55a241b462b2e9ffbabb7c10271b7bba96b1d19be33d976d66c9596442c7085815336147cc84e32ad3716b59e41c8ef269decd68709c75009a105 SHA512 fe8dbd2ecd58026b8d636a1e0e48d369779eeecd13db28c6f25e831a4e3ff72fadb8c005dc6fab2da518ee199fc48f66aa95297e44f5e569078aa12c529f6039
+DIST php-8.4.27.tar.xz 13862944 BLAKE2B 01618590aafb5b904caeb6e4fdb7882dbceb4a1d839c122d26c53205e87d16c5be0814d758ade186ed22b058fe2063d378a3b17ddea6e2b32b9a3020542e6e8e SHA512 61b5bde7634e083820c383f2f5f249a1c3f685d589b68f8a02bd6032c4ab04297abcbf0f51d3465794e47f878a57f531ac3d6c084dd8f87124d3d31578e180b0
+DIST php-8.5.12.tar.xz 14554312 BLAKE2B b1fbd9268d695759cc5a236b73e5bfff85b0434745c0f97ef197286b58a020325e52c0856ade669fa0311e979324d5ba3c921667b56462afea4e93b896cfcd3d SHA512 0a6615373cb4842a3e99632e0903f062f89410ffdc63fc754218ac64de7263119df3af2ec2570457fdc1c3108e5eecd9569dd3bab2769d8d280361bd5e25025b
diff --git a/dev-lang/php/php-8.2.34.ebuild b/dev-lang/php/php-8.2.34.ebuild
deleted file mode 100644
index f869ae9bb851..000000000000
--- a/dev-lang/php/php-8.2.34.ebuild
+++ /dev/null
@@ -1,911 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-WANT_AUTOMAKE="none"
-
-inherit flag-o-matic multilib systemd autotools
-
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- gd? ( gd )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl apparmor argon2 avif bcmath berkdb bzip2 calendar
- cdb cjk +ctype curl debug
- enchant exif ffi +fileinfo +filter
- +flatfile ftp gd gdbm gmp +iconv imap inifile
- intl iodbc ipv6 +jit kerberos ldap ldap-sasl libedit lmdb
- mhash mssql mysql mysqli nls
- oci8-instant-client odbc +opcache +opcache-jit pcntl pdo +phar +posix
- postgres qdbm readline selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode
- valgrind webp +xml xmlreader xmlwriter xpm xslt zip zlib"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-# The Oracle instant client provides its own incompatible ldap library.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- avif? ( gd zlib )
- cli? ( ^^ ( readline libedit ) )
- !cli? ( ?? ( readline libedit ) )
- truetype? ( gd zlib )
- webp? ( gd zlib )
- cjk? ( gd zlib )
- exif? ( gd zlib )
- xpm? ( gd zlib )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- xmlreader? ( xml )
- xmlwriter? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- oci8-instant-client? ( !ldap )
- qdbm? ( !gdbm )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- mssql? ( pdo )
- test? ( cli )
-"
-
-RESTRICT="!test? ( test )"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- >=app-eselect/eselect-php-0.9.7[apache2?,fpm?]
- >=dev-libs/libpcre2-10.30[jit?,unicode]
- virtual/libcrypt:=
- fpm? ( acl? ( sys-apps/acl ) apparmor? ( sys-libs/libapparmor ) selinux? ( sys-libs/libselinux ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- avif? ( media-libs/libavif:= )
- berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:4.8 ) )
- bzip2? ( app-arch/bzip2:0= )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- curl? ( >=net-misc/curl-7.29.0 )
- enchant? ( app-text/enchant:2 )
- ffi? ( >=dev-libs/libffi-3.0.11:= )
- gd? ( media-libs/libjpeg-turbo:0= media-libs/libpng:0= )
- gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( net-libs/c-client[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- kerberos? ( virtual/krb5 )
- ldap? ( >=net-nds/openldap-1.2.11:= )
- ldap-sasl? ( dev-libs/cyrus-sasl )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
- odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
- postgres? ( >=dev-db/postgresql-9.1:* )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- session-mm? ( dev-libs/mm )
- snmp? ( >=net-analyzer/net-snmp-5.2 )
- sodium? ( dev-libs/libsodium:=[-minimal(-)] )
- spell? ( >=app-text/aspell-0.50 )
- sqlite? ( >=dev-db/sqlite-3.7.6.3 )
- ssl? ( >=dev-libs/openssl-1.0.2:0= )
- tidy? ( app-text/htmltidy )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( =media-libs/freetype-2* )
- unicode? ( dev-libs/oniguruma:= )
- valgrind? ( dev-debug/valgrind )
- webp? ( media-libs/libwebp:0= )
- xml? ( >=dev-libs/libxml2-2.9.0:= )
- xpm? ( x11-libs/libXpm )
- xslt? ( dev-libs/libxslt )
- zip? ( >=dev-libs/libzip-1.2.0:= )
- zlib? ( >=virtual/zlib-1.2.0.4:= )
-"
-
-IDEPEND=">=app-eselect/eselect-php-0.9.7[apache2?,fpm?]"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- >=sys-devel/bison-3.0.1"
-
-BDEPEND="virtual/pkgconfig"
-
-PHP_MV="$(ver_cut 1)"
-
-PATCHES=(
- "${FILESDIR}/php-iodbc-header-location.patch"
- "${FILESDIR}/php-capstone-optional.patch"
- "${FILESDIR}/php-8.2.8-openssl-tests.patch"
- "${FILESDIR}/php-8.2.20-implicit-printf.patch"
- "${FILESDIR}/php-8.2.23-fix-ub.patch"
- "${FILESDIR}/php-bug75457-pcre2-backport.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-01.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-02.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-03.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-04.patch"
-)
-
-# ARM/Windows functions (bug 923335)
-QA_CONFIG_IMPL_DECL_SKIP=(
- __crc32d
- _controlfp
- _controlfp_s
-)
-
-# Functions from alternate iconv implementations (bug 925268)
-QA_CONFIG_IMPL_DECL_SKIP+=(
- iconv_ccs_init
- cstoccsid
-)
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # default to /tmp for save_path, bug #282768
- sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
-
- # Set the extension dir
- sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
- -i "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR packages
- sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#"${EPREFIX}"}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#"${EPREFIX}"}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#"${EPREFIX}"}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#"${EPREFIX}"}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "../ext/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#"${EPREFIX}"}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#"${EPREFIX}"}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#"${EPREFIX}"}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # Emulate buildconf to support cross-compilation
- rm -fr aclocal.m4 autom4te.cache config.cache \
- configure main/php_config.h.in || die
- eautoconf --force
- eautoheader
-
- # missing skipif; fixed upstream already
- rm sapi/cgi/tests/005.phpt || die
-
- # These three get BORKED on no-ipv6 systems,
- #
- # https://github.com/php/php-src/pull/11651
- #
- rm ext/sockets/tests/mcast_ipv6_recv.phpt \
- ext/sockets/tests/mcast_ipv6_recv_limited.phpt \
- ext/sockets/tests/mcast_ipv6_send.phpt \
- || die
-
- # fails in a network sandbox,
- #
- # https://github.com/php/php-src/issues/11662
- #
- rm ext/sockets/tests/bug63000.phpt || die
-
- # expected output needs to be updated,
- #
- # https://github.com/php/php-src/pull/11648
- #
- rm ext/dba/tests/dba_tcadb.phpt || die
-
- # Two IMAP tests missing SKIPIFs,
- #
- # https://github.com/php/php-src/pull/11654
- #
- rm ext/imap/tests/imap_mutf7_to_utf8.phpt \
- ext/imap/tests/imap_utf8_to_mutf7_basic.phpt \
- || die
-
- # broken upstream with icu-73.x,
- #
- # https://github.com/php/php-src/issues/11128
- #
- rm ext/intl/tests/calendar_clear_variation1.phpt || die
-
- # overly sensitive to INI values; fixes sent upstream:
- #
- # https://github.com/php/php-src/pull/11631
- #
- rm ext/session/tests/{bug74514,bug74936,gh7787}.phpt || die
-
- # This is sensitive to the current "nice" level:
- #
- # https://github.com/php/php-src/issues/11630
- #
- rm ext/standard/tests/general_functions/proc_nice_basic.phpt || die
-
- # Tests ignoring the "-n" flag we pass to run-tests.php,
- #
- # https://github.com/php/php-src/pull/11669
- #
- rm ext/standard/tests/file/bug60120.phpt \
- ext/standard/tests/general_functions/proc_open_null.phpt \
- ext/standard/tests/general_functions/proc_open_redirect.phpt \
- ext/standard/tests/general_functions/proc_open_sockets1.phpt \
- ext/standard/tests/general_functions/proc_open_sockets2.phpt \
- ext/standard/tests/general_functions/proc_open_sockets3.phpt \
- ext/standard/tests/ini_info/php_ini_loaded_file.phpt \
- sapi/cli/tests/016.phpt \
- sapi/cli/tests/023.phpt \
- sapi/cli/tests/bug65275.phpt \
- sapi/cli/tests/bug74600.phpt \
- sapi/cli/tests/bug78323.phpt \
- || die
-
- # Same TEST_PHP_EXTRA_ARGS (-n) issue with this one, but it's
- # already been fixed upstream.
- rm sapi/cli/tests/017.phpt || die
-
- # Most Oracle tests are borked,
- #
- # * https://github.com/php/php-src/issues/11804
- # * https://github.com/php/php-src/pull/11820
- # * https://github.com/php/php-src/issues/11819
- #
- rm ext/oci8/tests/*.phpt || die
-
- # https://github.com/php/php-src/issues/12801
- rm ext/pcre/tests/gh11374.phpt || die
-
- # This is a memory usage test with hard-coded limits. Whenever the
- # limits are surpassed... they get increased... but in the meantime,
- # the tests fail. This is not really a test that end users should
- # be running pre-install, in my opinion. Bug 927461.
- rm ext/fileinfo/tests/bug78987.phpt || die
-
- # glibc-2.39 compatibility, fixed upstream in
- # https://github.com/php/php-src/pull/14097
- rm ext/standard/tests/strings/setlocale_variation3.phpt || die
-
- # The expected warnings aren't triggered in this test because we
- # define session.save_path on the CLI:
- #
- # https://github.com/php/php-src/issues/14368
- #
- rm ext/session/tests/gh13856.phpt || die
-
- # Bug 935382, fixed eventually by
- #
- # - https://github.com/php/php-src/pull/14788
- # - https://github.com/php/php-src/pull/14814
- #
- rm ext/standard/tests/strings/chunk_split_variation1_32bit.phpt || die
- rm ext/standard/tests/strings/wordwrap_memory_limit.phpt || die
-
- # Bug 935379, not yet fixed upstream but looks harmless (ordering
- # of keys isn't guaranteed AFAICS):
- #
- # - https://github.com/php/php-src/issues/14786
- #
- rm ext/dba/tests/dba_gdbm.phpt || die
-
- # https://github.com/php/php-src/pull/14439
- rm ext/openssl/tests/bug74341.phpt || die
-
- # Test for https://github.com/php/php-src/issues/16390 relies
- # on the inifile handler to be present, so we have to skip
- # this test in case the inifile USE flag is _not_ set.
- if ! use inifile ; then
- rm ext/dba/tests/gh16390.phpt || die
- fi
-
- # Test fails on curl 8.17+, originally fixed upstream, but not
- # backported to 8.2 (yet).
- rm ext/curl/tests/curl_setopt_ssl.phpt || die
-
- # bug 977402
- rm ext/standard/tests/file/fdatasync.phpt \
- ext/standard/tests/file/fsync.phpt \
- || die
-
- # bug 983491
- rm sapi/cli/tests/gh14189.phpt || die
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- # https://bugs.gentoo.org/866683, https://bugs.gentoo.org/913527
- filter-lto
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # Don't allow ./configure to detect and use an existing version
- # of PHP; this can lead to all sorts of weird unpredictability
- # as in bug 900210.
- export ac_cv_prog_PHP=""
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- --without-valgrind
- --with-external-libcrypt
- $(use_enable threads zts)
- )
-
- # The slotted man/info pages will be missed by the default list of
- # docompress paths.
- docompress "${PHP_DESTDIR}/man" "${PHP_DESTDIR}/info"
-
- our_conf+=(
- $(use_with apparmor fpm-apparmor)
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_with avif)
- $(use_enable bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar)
- $(use_enable ctype)
- $(use_with curl)
- $(use_enable xml dom)
- $(use_with enchant)
- $(use_enable exif)
- $(use_with ffi)
- $(use_enable fileinfo)
- $(use_enable filter)
- $(use_enable ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || echo "${EPREFIX}/usr"))
- $(use_enable intl)
- $(use_enable ipv6)
- $(use_with kerberos)
- $(use_with xml libxml)
- $(use_enable unicode mbstring)
- $(use_with ssl openssl)
- $(use_enable pcntl)
- $(use_enable phar)
- $(use_enable pdo)
- $(use_enable opcache)
- $(use_enable opcache-jit)
- $(use_with postgres pgsql "${EPREFIX}/usr")
- $(use_enable posix)
- $(use_with selinux fpm-selinux)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_enable simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap)
- $(use_enable sockets)
- $(use_with sodium)
- $(use_with sqlite sqlite3)
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer)
- $(use_enable xml)
- $(use_enable xmlreader)
- $(use_enable xmlwriter)
- $(use_with xslt xsl)
- $(use_with zip)
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug)
- $(use_with valgrind)
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with tokyocabinet tcadb "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Support for the GD graphics library
- our_conf+=(
- $(use_with truetype freetype)
- $(use_enable cjk gd-jis-conv)
- $(use_with gd jpeg)
- $(use_with xpm)
- $(use_with webp)
- )
- # enable gd last, so configure can pick up the previous settings
- our_conf+=( $(use_enable gd) )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl)
- )
- fi
-
- # MySQL support
- our_conf+=( $(use_with mysqli) )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- if use odbc && use iodbc ; then
- our_conf+=(
- --without-unixODBC
- --with-iodbc
- $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
- )
- elif use odbc ; then
- our_conf+=(
- --with-unixODBC="${EPREFIX}/usr"
- --without-iodbc
- $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
- )
- else
- our_conf+=(
- --without-unixODBC
- --without-iodbc
- --without-pdo-odbc
- )
- fi
-
- # Oracle support
- our_conf+=( $(use_with oci8-instant-client oci8) )
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "mysqlnd")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite)
- $(use_with oci8-instant-client pdo-oci)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit)
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-external-pcre affects ext/pcre
- our_conf+=(
- --with-external-pcre
- $(use_with jit pcre-jit)
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- # Create separate build trees for each enabled SAPI. The upstream
- # build system doesn't do this, but we have to do it to use a
- # different php.ini for each SAPI (see --with-config-file-path and
- # --with-config-file-scan-dir below). The path winds up define'd
- # in main/build-defs.h which is included in main/php.h which is
- # included by basically everything; so, avoiding a rebuild after
- # changing it is not an easy job.
- local one_sapi
- local sapi
- mkdir "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- einfo "Running econf in ${BUILD_DIR}"
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- if use oci8-instant-client && use kerberos && use imap && use phar; then
- # A conspiracy takes place when the first three of these flags
- # are set together, causing the newly-built "php" to open
- # /dev/urandom with mode rw when it starts. That's not actually
- # a problem... unless you also have USE=phar, which runs that
- # "php" to build some phar thingy in src_compile(). Later in
- # src_test(), portage (at least) sets "addpredict /" so the
- # problem does not repeat.
- addpredict /dev/urandom #nowarn
- fi
-
- local sapi
- for sapi in ${SAPIS} ; do
- use "${sapi}" && emake -C "${WORKDIR}/sapis-build/${sapi}"
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi="", sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Makefile forgets to create this before trying to write to it...
- dodir "${PHP_DESTDIR#"${EPREFIX}"}/bin"
-
- # Install php environment (without any sapis)
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
-
- local extension_dir="$("${ED}/${PHP_DESTDIR#"${EPREFIX}"}/bin/php-config" --extension-dir)"
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local file=""
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#"${EPREFIX}"}/apache2/"
- newins ".libs/libphp$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#"${EPREFIX}"}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- # Install the "phar" archive utility.
- if use phar ; then
- emake INSTALL_ROOT="${D}" install-pharcmd
- dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
- fi
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Installing opcache module
- if use opcache ; then
- into "${PHP_DESTDIR#"${EPREFIX}"}"
- dolib.so "modules/opcache$(get_libname)"
- fi
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- export TEST_PHP_EXECUTABLE="${WORKDIR}/sapis-build/cli/sapi/cli/php"
-
- # Sometimes when the sub-php launches a sub-sub-php, it uses these.
- # Without an "-n" in all instances, the *live* php.ini can be loaded,
- # pulling in *live* zend extensions. And those can be incompatible
- # with the thing we just built.
- export TEST_PHP_EXTRA_ARGS="-n"
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- # The sendmail override prevents ext/imap/tests/bug77020.phpt from
- # actually trying to send mail, and will be fixed upstream soon:
- #
- # https://github.com/php/php-src/issues/11629
- #
- # The IO capture tests need to be disabled because they fail when
- # std{in,out,err} are redirected (as they are within portage).
- #
- # One -n applies to the top-level "php", while the other applies
- # to any sub-php that get invoked by the test runner.
- SKIP_IO_CAPTURE_TESTS=1 SKIP_PERF_SENSITIVE=1 REPORT_EXIT_STATUS=1 \
- "${TEST_PHP_EXECUTABLE}" -n \
- "${WORKDIR}/sapis-build/cli/run-tests.php" --offline -n -q \
- -d "session.save_path=${T}" \
- -d "sendmail_path=echo >/dev/null" \
- || die "tests failed"
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- local m
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-8.2.33.ebuild b/dev-lang/php/php-8.2.35.ebuild
index dc5ff96a8588..361bce83ff98 100644
--- a/dev-lang/php/php-8.2.33.ebuild
+++ b/dev-lang/php/php-8.2.35.ebuild
@@ -377,6 +377,9 @@ src_prepare() {
rm ext/standard/tests/file/fdatasync.phpt \
ext/standard/tests/file/fsync.phpt \
|| die
+
+ # bug 983491
+ rm sapi/cli/tests/gh14189.phpt || die
}
src_configure() {
diff --git a/dev-lang/php/php-8.3.35.ebuild b/dev-lang/php/php-8.3.35.ebuild
deleted file mode 100644
index 5334dbc3f17e..000000000000
--- a/dev-lang/php/php-8.3.35.ebuild
+++ /dev/null
@@ -1,825 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-WANT_AUTOMAKE="none"
-POSTGRES_COMPAT=( {15..18} )
-inherit autotools flag-o-matic multilib postgres systemd
-
-DESCRIPTION="The PHP language runtime engine"
-HOMEPAGE="https://www.php.net/"
-SRC_URI="https://www.php.net/distributions/${P}.tar.xz"
-
-LICENSE="PHP-3.01
- BSD
- Zend-2.0
- bcmath? ( LGPL-2.1+ )
- fpm? ( BSD-2 )
- unicode? ( BSD-2 LGPL-2.1 )"
-
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-
-# We can build the following SAPIs in the given order
-SAPIS="embed cli cgi fpm apache2 phpdbg"
-
-# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
-IUSE="${IUSE}
- ${SAPIS/cli/+cli}
- threads"
-
-IUSE="${IUSE} acl apparmor argon2 avif bcmath berkdb bzip2 calendar
- capstone cdb +ctype curl debug
- enchant exif ffi +fileinfo +filter
- +flatfile ftp gd gdbm gmp +iconv imap inifile
- intl iodbc ipv6 +jit jpeg kerberos ldap ldap-sasl libedit lmdb
- mhash mssql mysql mysqli nls
- odbc +opcache +opcache-jit pcntl pdo +phar +posix postgres png
- qdbm readline selinux +session session-mm sharedmem
- +simplexml snmp soap sockets sodium spell sqlite ssl
- sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode
- valgrind webp +xml xmlreader xmlwriter xpm xslt zip zlib"
-
-# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
-REQUIRED_USE="
- || ( cli cgi fpm apache2 embed phpdbg )
- cli? ( ^^ ( readline libedit ) )
- !cli? ( ?? ( readline libedit ) )
- gd? ( zlib )
- simplexml? ( xml )
- soap? ( xml )
- xmlreader? ( xml )
- xmlwriter? ( xml )
- xslt? ( xml )
- ldap-sasl? ( ldap )
- qdbm? ( !gdbm )
- session-mm? ( session !threads )
- mysql? ( || ( mysqli pdo ) )
- mssql? ( pdo )
- test? ( cli )
- postgres? ( ${POSTGRES_REQ_USE} )
-"
-
-RESTRICT="!test? ( test )"
-
-# The supported (that is, autodetected) versions of BDB are listed in
-# the ./configure script. Other versions *work*, but we need to stick to
-# the ones that can be detected to avoid a repeat of bug #564824.
-COMMON_DEPEND="
- app-eselect/eselect-php[apache2?,fpm?]
- dev-libs/libpcre2[jit?,unicode]
- virtual/libcrypt:=
- fpm? ( acl? ( sys-apps/acl ) apparmor? ( sys-libs/libapparmor ) selinux? ( sys-libs/libselinux ) )
- apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] )
- argon2? ( app-crypt/argon2:= )
- berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:4.8 ) )
- bzip2? ( app-arch/bzip2:0= )
- capstone? ( dev-libs/capstone )
- cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
- curl? ( net-misc/curl )
- enchant? ( app-text/enchant:2 )
- ffi? ( dev-libs/libffi:= )
- gd? (
- >=media-libs/gd-2.3.3-r4[avif?,jpeg?,png?,truetype?,webp?,xpm?]
- )
- gdbm? ( sys-libs/gdbm:0= )
- gmp? ( dev-libs/gmp:0= )
- iconv? ( virtual/libiconv )
- imap? ( net-libs/c-client[kerberos=,ssl=] )
- intl? ( dev-libs/icu:= )
- kerberos? ( virtual/krb5 )
- ldap? ( net-nds/openldap:= )
- ldap-sasl? ( dev-libs/cyrus-sasl )
- libedit? ( dev-libs/libedit )
- lmdb? ( dev-db/lmdb:= )
- mssql? ( dev-db/freetds[mssql] )
- nls? ( sys-devel/gettext )
- odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( dev-db/unixODBC ) )
- postgres? ( ${POSTGRES_DEP} )
- qdbm? ( dev-db/qdbm )
- readline? ( sys-libs/readline:0= )
- session-mm? ( dev-libs/mm )
- snmp? ( net-analyzer/net-snmp:= )
- sodium? ( dev-libs/libsodium:=[-minimal(-)] )
- spell? ( app-text/aspell )
- sqlite? ( dev-db/sqlite )
- ssl? ( dev-libs/openssl:0= )
- tidy? ( app-text/htmltidy )
- tokyocabinet? ( dev-db/tokyocabinet )
- truetype? ( media-libs/freetype )
- unicode? ( dev-libs/oniguruma:= )
- valgrind? ( dev-debug/valgrind )
- xml? ( >=dev-libs/libxml2-2.12.5:= )
- xslt? ( dev-libs/libxslt )
- zip? ( dev-libs/libzip:= )
- zlib? ( virtual/zlib:= )
-"
-
-IDEPEND="app-eselect/eselect-php[apache2?,fpm?]"
-
-RDEPEND="${COMMON_DEPEND}
- virtual/mta
- fpm? (
- selinux? ( sec-policy/selinux-phpfpm )
- systemd? ( sys-apps/systemd ) )"
-
-# Bison isn't actually needed when building from a release tarball
-# However, the configure script will warn if it's absent or if you
-# have an incompatible version installed. See bug 593278.
-DEPEND="${COMMON_DEPEND}
- app-arch/xz-utils
- sys-devel/bison"
-
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}/php-8.3.9-gd-cachevars.patch"
- "${FILESDIR}/php-8.3.31-libgd-test-fixes.patch"
- "${FILESDIR}/php-8.3.31-ipv6-printing-test-fix.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-01.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-02.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-03.patch"
- "${FILESDIR}/php-8.3-iconv-testfix-04.patch"
-)
-
-PHP_MV="$(ver_cut 1)"
-
-# ARM/Windows functions (bug 923335)
-QA_CONFIG_IMPL_DECL_SKIP=(
- __crc32d
- _controlfp
- _controlfp_s
-)
-
-# Functions from alternate iconv implementations (bug 925268)
-QA_CONFIG_IMPL_DECL_SKIP+=(
- iconv_ccs_init
- cstoccsid
-)
-
-php_install_ini() {
- local phpsapi="${1}"
-
- # work out where we are installing the ini file
- php_set_ini_dir "${phpsapi}"
-
- # Always install the production INI file, bug 611214.
- local phpinisrc="php.ini-production-${phpsapi}"
- cp php.ini-production "${phpinisrc}" || die
-
- # Set the include path to point to where we want to find PEAR
- # packages
- local sed_src='^;include_path = ".:/php.*'
- local include_path="."
- include_path+=":${EPREFIX}/usr/share/php${PHP_MV}"
- include_path+=":${EPREFIX}/usr/share/php"
- local sed_dst="include_path = \"${include_path}\""
- sed -e "s|${sed_src}|${sed_dst}|" -i "${phpinisrc}" || die
-
- insinto "${PHP_INI_DIR#"${EPREFIX}"}"
- newins "${phpinisrc}" php.ini
-
- elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#"${EPREFIX}"}"
- elog
-
- dodir "${PHP_EXT_INI_DIR#"${EPREFIX}"}"
- dodir "${PHP_EXT_INI_DIR_ACTIVE#"${EPREFIX}"}"
-
- if use opcache; then
- elog "Adding opcache to $PHP_EXT_INI_DIR"
- echo "zend_extension = opcache.so" >> \
- "${D}/${PHP_EXT_INI_DIR}"/opcache.ini
- dosym "../ext/opcache.ini" \
- "${PHP_EXT_INI_DIR_ACTIVE#"${EPREFIX}"}/opcache.ini"
- fi
-
- # SAPI-specific handling
- if [[ "${sapi}" == "fpm" ]] ; then
- einfo "Installing FPM config files php-fpm.conf and www.conf"
- insinto "${PHP_INI_DIR#"${EPREFIX}"}"
- doins sapi/fpm/php-fpm.conf
- insinto "${PHP_INI_DIR#"${EPREFIX}"}/fpm.d"
- doins sapi/fpm/www.conf
- fi
-
- dodoc php.ini-{development,production}
-}
-
-php_set_ini_dir() {
- PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
- PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
- PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
-}
-
-pkg_setup() {
- use postgres && postgres_pkg_setup
-}
-
-src_prepare() {
- default
-
- # In php-7.x, the FPM pool configuration files have been split off
- # of the main config. By default the pool config files go in
- # e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
- # include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
- # we'll install the pool configuration file "www.conf" there.
- php_set_ini_dir fpm
- sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
- sapi/fpm/php-fpm.conf.in \
- || die 'failed to move the include directory in php-fpm.conf'
-
- # fails in a network sandbox,
- #
- # https://github.com/php/php-src/issues/11662
- #
- rm ext/sockets/tests/bug63000.phpt || die
-
- # Tests ignoring the "-n" flag we pass to run-tests.php,
- #
- # https://github.com/php/php-src/pull/11669
- #
- rm ext/standard/tests/file/bug60120.phpt \
- ext/standard/tests/general_functions/proc_open_null.phpt \
- ext/standard/tests/general_functions/proc_open_redirect.phpt \
- ext/standard/tests/general_functions/proc_open_sockets1.phpt \
- ext/standard/tests/general_functions/proc_open_sockets2.phpt \
- ext/standard/tests/general_functions/proc_open_sockets3.phpt \
- ext/standard/tests/ini_info/php_ini_loaded_file.phpt \
- sapi/cli/tests/016.phpt \
- sapi/cli/tests/023.phpt \
- sapi/cli/tests/bug65275.phpt \
- sapi/cli/tests/bug74600.phpt \
- sapi/cli/tests/bug78323.phpt \
- || die
-
- # This is a memory usage test with hard-coded limits. Whenever the
- # limits are surpassed... they get increased... but in the meantime,
- # the tests fail. This is not really a test that end users should
- # be running pre-install, in my opinion. Bug 927461.
- rm ext/fileinfo/tests/bug78987.phpt || die
-
- # Most tests failing with an external libgd have been fixed,
- # but there are a few stragglers:
- #
- # * https://github.com/php/php-src/issues/11252
- #
- rm ext/gd/tests/bug43073.phpt \
- ext/gd/tests/bug48732.phpt \
- ext/gd/tests/bug48732-mb.phpt \
- ext/gd/tests/bug48801.phpt \
- ext/gd/tests/bug48801-mb.phpt \
- ext/gd/tests/bug53504.phpt \
- ext/gd/tests/bug65148.phpt \
- ext/gd/tests/bug73272.phpt \
- || die
-
- # One-off, somebody forgot to update a version constant
- rm ext/reflection/tests/ReflectionZendExtension.phpt || die
-
- # Fixed upstream, but not in 8.3.30.
- rm ext/openssl/tests/bug{74796,80770}.phpt || die
- rm ext/openssl/tests/{sni_server.phpt,sni_server_key_cert.phpt} || die
-
- # Test fails on curl 8.17+, originally fixed upstream, but not
- # backported to 8.2 (yet).
- rm ext/curl/tests/curl_setopt_ssl.phpt || die
-
- # bug 977402
- rm ext/standard/tests/file/fdatasync.phpt \
- ext/standard/tests/file/fsync.phpt \
- ext/standard/tests/general_functions/proc_nice_basic.phpt \
- || die
-
- # bug 983491
- rm sapi/cli/tests/gh14189.phpt || die
-
- eautoconf --force
-}
-
-src_configure() {
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- # https://bugs.gentoo.org/866683, https://bugs.gentoo.org/913527
- filter-lto
-
- PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
-
- # Don't allow ./configure to detect and use an existing version
- # of PHP; this can lead to all sorts of weird unpredictability
- # as in bug 900210.
- export ac_cv_prog_PHP=""
-
- # The php-fpm config file wants localstatedir to be ${EPREFIX}/var
- # and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
- local our_conf=(
- --prefix="${PHP_DESTDIR}"
- --mandir="${PHP_DESTDIR}/man"
- --infodir="${PHP_DESTDIR}/info"
- --libdir="${PHP_DESTDIR}/lib"
- --with-libdir="$(get_libdir)"
- --localstatedir="${EPREFIX}/var"
- --without-pear
- --without-valgrind
- --with-external-libcrypt
- $(use_enable threads zts)
- )
-
- # The slotted man/info pages will be missed by the default list of
- # docompress paths.
- docompress "${PHP_DESTDIR}/man" "${PHP_DESTDIR}/info"
-
- our_conf+=(
- $(use_with apparmor fpm-apparmor)
- $(use_with argon2 password-argon2 "${EPREFIX}/usr")
- $(use_enable bcmath)
- $(use_with bzip2 bz2 "${EPREFIX}/usr")
- $(use_enable calendar)
- $(use_with capstone)
- $(use_enable ctype)
- $(use_with curl)
- $(use_enable xml dom)
- $(use_with enchant)
- $(use_enable exif)
- $(use_with ffi)
- $(use_enable fileinfo)
- $(use_enable filter)
- $(use_enable ftp)
- $(use_with nls gettext "${EPREFIX}/usr")
- $(use_with gmp gmp "${EPREFIX}/usr")
- $(use_with mhash mhash "${EPREFIX}/usr")
- $(use_with iconv iconv \
- $(use elibc_glibc || use elibc_musl || echo "${EPREFIX}/usr"))
- $(use_enable intl)
- $(use_enable ipv6)
- $(use_with kerberos)
- $(use_with xml libxml)
- $(use_enable unicode mbstring)
- $(use_with ssl openssl)
- $(use_enable pcntl)
- $(use_enable phar)
- $(use_enable pdo)
- $(use_enable opcache)
- $(use_enable opcache-jit)
- $(use_with postgres pgsql "$("${PG_CONFIG:-true}" --bindir)/..")
- $(use_enable posix)
- $(use_with selinux fpm-selinux)
- $(use_with spell pspell "${EPREFIX}/usr")
- $(use_enable simplexml)
- $(use_enable sharedmem shmop)
- $(use_with snmp snmp "${EPREFIX}/usr")
- $(use_enable soap)
- $(use_enable sockets)
- $(use_with sodium)
- $(use_with sqlite sqlite3)
- $(use_enable sysvipc sysvmsg)
- $(use_enable sysvipc sysvsem)
- $(use_enable sysvipc sysvshm)
- $(use_with tidy tidy "${EPREFIX}/usr")
- $(use_enable tokenizer)
- $(use_enable xml)
- $(use_enable xmlreader)
- $(use_enable xmlwriter)
- $(use_with xslt xsl)
- $(use_with zip)
- $(use_with zlib zlib "${EPREFIX}/usr")
- $(use_enable debug)
- $(use_with valgrind)
- )
-
- # Override autoconf cache variables for libcrypt algorithms.These
- # otherwise cannot be detected when cross-compiling. Bug 931884.
- our_conf+=(
- ac_cv_crypt_blowfish=yes
- ac_cv_crypt_des=yes
- ac_cv_crypt_ext_des=yes
- ac_cv_crypt_md5=yes
- ac_cv_crypt_sha512=yes
- ac_cv_crypt_sha256=yes
- )
-
- # DBA support
- if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
- || use qdbm || use lmdb || use tokyocabinet ; then
- our_conf+=( "--enable-dba" )
- fi
-
- # DBA drivers support
- our_conf+=(
- $(use_with cdb)
- $(use_with berkdb db4 "${EPREFIX}/usr")
- $(use_enable flatfile)
- $(use_with gdbm gdbm "${EPREFIX}/usr")
- $(use_enable inifile)
- $(use_with qdbm qdbm "${EPREFIX}/usr")
- $(use_with tokyocabinet tcadb "${EPREFIX}/usr")
- $(use_with lmdb lmdb "${EPREFIX}/usr")
- )
-
- # Use the system copy of GD. The autoconf cache variable overrides
- # allow cross-compilation to proceed since the corresponding
- # features cannot be detected by running a program.
- our_conf+=(
- $(use_enable gd gd)
- $(use_with gd external-gd)
- php_cv_lib_gd_gdImageCreateFromAvif=$(usex avif)
- php_cv_lib_gd_gdImageCreateFromBmp=yes
- php_cv_lib_gd_gdImageCreateFromJpeg=$(usex jpeg)
- php_cv_lib_gd_gdImageCreateFromPng=$(usex png)
- php_cv_lib_gd_gdImageCreateFromTga=yes
- php_cv_lib_gd_gdImageCreateFromWebp=$(usex webp)
- php_cv_lib_gd_gdImageCreateFromXpm=$(usex xpm)
- )
-
- # IMAP support
- if use imap ; then
- our_conf+=(
- $(use_with imap imap "${EPREFIX}/usr")
- $(use_with ssl imap-ssl "${EPREFIX}/usr")
- )
- fi
-
- # LDAP support
- if use ldap ; then
- our_conf+=(
- $(use_with ldap ldap "${EPREFIX}/usr")
- $(use_with ldap-sasl)
- )
- fi
-
- # MySQL support
- our_conf+=( $(use_with mysqli) )
-
- local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
- if use mysql || use mysqli ; then
- our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
- fi
-
- # ODBC support
- if use odbc && use iodbc ; then
- # Obtain the correct -l and -I flags for the actual build from
- # pkg-config. We use the "generic" library type to avoid the
- # (wrong) hard-coded include dir for iodbc.
- #
- # We set the pdo_odbc_def_incdir variable because the
- # ./configure script checks for the headers using "test -f" and
- # ignores your CFLAGS... and pdo_odbc_def_libdir prevents the
- # build system from appending a nonsense -L flag.
- local iodbc_ldflags=$(pkg-config --libs libiodbc)
- local iodbc_cflags=$(pkg-config --cflags libiodbc)
- our_conf+=(
- pdo_odbc_def_libdir="${EPREFIX}/usr/$(get_libdir)"
- pdo_odbc_def_incdir="${EPREFIX}/usr/include/iodbc"
- --without-unixODBC
- --with-iodbc
- $(use_with pdo pdo-odbc "generic,,iodbc,${iodbc_ldlags},${iodbc_cflags}")
- )
- elif use odbc ; then
- our_conf+=(
- --with-unixODBC="${EPREFIX}/usr"
- --without-iodbc
- $(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
- )
- else
- our_conf+=(
- --without-unixODBC
- --without-iodbc
- --without-pdo-odbc
- )
- fi
-
- # PDO support
- if use pdo ; then
- our_conf+=(
- $(use_with mssql pdo-dblib "${EPREFIX}/usr")
- $(use_with mysql pdo-mysql "mysqlnd")
- $(use_with postgres pdo-pgsql)
- $(use_with sqlite pdo-sqlite)
- )
- fi
-
- # readline/libedit support
- our_conf+=(
- $(use_with readline readline "${EPREFIX}/usr")
- $(use_with libedit)
- )
-
- # Session support
- if use session ; then
- our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
- else
- our_conf+=( $(use_enable session) )
- fi
-
- # Use pic for shared modules such as apache2's mod_php
- our_conf+=( --with-pic )
-
- # we use the system copy of pcre
- # --with-external-pcre affects ext/pcre
- our_conf+=(
- --with-external-pcre
- $(use_with jit pcre-jit)
- )
-
- # Catch CFLAGS problems
- # Fixes bug #14067.
- # Changed order to run it in reverse for bug #32022 and #12021.
- replace-cpu-flags "k6*" "i586"
-
- # Cache the ./configure test results between SAPIs.
- our_conf+=( --cache-file="${T}/config.cache" )
-
- # Support user-passed configuration parameters
- our_conf+=( ${EXTRA_ECONF:-} )
-
- # Support the Apache2 extras, they must be set globally for all
- # SAPIs to work correctly, especially for external PHP extensions
-
- # Create separate build trees for each enabled SAPI. The upstream
- # build system doesn't do this, but we have to do it to use a
- # different php.ini for each SAPI (see --with-config-file-path and
- # --with-config-file-scan-dir below). The path winds up define'd
- # in main/build-defs.h which is included in main/php.h which is
- # included by basically everything; so, avoiding a rebuild after
- # changing it is not an easy job.
- #
- # The upstream build system also does not support building the
- # apache2 and embed SAPIs at the same time, presumably because they
- # both produce a libphp.so.
- local one_sapi
- local sapi
- mkdir "${WORKDIR}/sapis-build" || die
- for one_sapi in $SAPIS ; do
- use "${one_sapi}" || continue
- php_set_ini_dir "${one_sapi}"
-
- # The BUILD_DIR variable is used to determine where to output
- # the files that autotools creates. This was all originally
- # based on the autotools-utils eclass.
- BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
- cp -a "${S}" "${BUILD_DIR}" || die
-
- local sapi_conf=(
- --with-config-file-path="${PHP_INI_DIR}"
- --with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
- )
-
- for sapi in $SAPIS ; do
- case "$sapi" in
- cli|cgi|embed|fpm|phpdbg)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( "--enable-${sapi}" )
- if [[ "fpm" == "${sapi}" ]] ; then
- sapi_conf+=(
- $(use_with acl fpm-acl)
- $(use_with systemd fpm-systemd)
- )
- fi
- else
- sapi_conf+=( "--disable-${sapi}" )
- fi
- ;;
-
- apache2)
- if [[ "${one_sapi}" == "${sapi}" ]] ; then
- sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
- else
- sapi_conf+=( --without-apxs2 )
- fi
- ;;
- esac
- done
-
- # Construct the $myeconfargs array by concatenating $our_conf
- # (the common args) and $sapi_conf (the SAPI-specific args).
- local myeconfargs=( "${our_conf[@]}" )
- myeconfargs+=( "${sapi_conf[@]}" )
-
- pushd "${BUILD_DIR}" > /dev/null || die
- einfo "Running econf in ${BUILD_DIR}"
- econf "${myeconfargs[@]}"
- popd > /dev/null || die
- done
-}
-
-src_compile() {
- # snmp seems to run during src_compile, too (bug #324739)
- addpredict /usr/share/snmp/mibs/.index #nowarn
- addpredict /var/lib/net-snmp/mib_indexes #nowarn
-
- local sapi
- for sapi in ${SAPIS} ; do
- use "${sapi}" && emake -C "${WORKDIR}/sapis-build/${sapi}"
- done
-}
-
-src_install() {
- # see bug #324739 for what happens when we don't have that
- addpredict /usr/share/snmp/mibs/.index #nowarn
-
- # grab the first SAPI that got built and install common files from there
- local first_sapi="", sapi=""
- for sapi in $SAPIS ; do
- if use $sapi ; then
- first_sapi=$sapi
- break
- fi
- done
-
- # Install SAPI-independent targets
- cd "${WORKDIR}/sapis-build/$first_sapi" || die
- emake INSTALL_ROOT="${D}" \
- install-build install-headers install-programs
- use opcache && emake INSTALL_ROOT="${D}" install-modules
-
- # Create the directory where we'll put version-specific php scripts
- keepdir "/usr/share/php${PHP_MV}"
-
- local sapi_list=""
-
- for sapi in ${SAPIS}; do
- if use "${sapi}" ; then
- einfo "Installing SAPI: ${sapi}"
- cd "${WORKDIR}/sapis-build/${sapi}" || die
-
- if [[ "${sapi}" == "apache2" ]] ; then
- # We're specifically not using emake install-sapi as libtool
- # may cause unnecessary relink failures (see bug #351266)
- insinto "${PHP_DESTDIR#"${EPREFIX}"}/apache2/"
- newins ".libs/libphp$(get_libname)" \
- "libphp${PHP_MV}$(get_libname)"
- keepdir "/usr/$(get_libdir)/apache2/modules"
- else
- # needed each time, php_install_ini would reset it
- local dest="${PHP_DESTDIR#"${EPREFIX}"}"
- into "${dest}"
- case "$sapi" in
- cli)
- source="sapi/cli/php"
- # Install the "phar" archive utility.
- if use phar ; then
- emake INSTALL_ROOT="${D}" install-pharcmd
- dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
- fi
- ;;
- cgi)
- source="sapi/cgi/php-cgi"
- ;;
- fpm)
- source="sapi/fpm/php-fpm"
- ;;
- embed)
- source="libs/libphp$(get_libname)"
- ;;
- phpdbg)
- source="sapi/phpdbg/phpdbg"
- ;;
- *)
- die "unhandled sapi in src_install"
- ;;
- esac
-
- if [[ "${source}" == *"$(get_libname)" ]]; then
- dolib.so "${source}"
- else
- dobin "${source}"
- local name="$(basename ${source})"
- dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
- fi
- fi
-
- php_install_ini "${sapi}"
-
- # construct correct SAPI string for php-config
- # thanks to ferringb for the bash voodoo
- if [[ "${sapi}" == "apache2" ]]; then
- sapi_list="${sapi_list:+${sapi_list} }apache2handler"
- else
- sapi_list="${sapi_list:+${sapi_list} }${sapi}"
- fi
- fi
- done
-
- # Install env.d files
- newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
- sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
- sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
-
- # set php-config variable correctly (bug #278439)
- sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
- "${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
-
- if use fpm ; then
- if use systemd; then
- systemd_newunit "${FILESDIR}/php-fpm_at.service" \
- "php-fpm@${SLOT}.service"
- else
- systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
- "php-fpm@${SLOT}.service"
- fi
- fi
-}
-
-src_test() {
- export TEST_PHP_EXECUTABLE="${WORKDIR}/sapis-build/cli/sapi/cli/php"
-
- # Sometimes when the sub-php launches a sub-sub-php, it uses these.
- # Without an "-n" in all instances, the *live* php.ini can be loaded,
- # pulling in *live* zend extensions. And those can be incompatible
- # with the thing we just built.
- export TEST_PHP_EXTRA_ARGS="-n"
-
- if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
- export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
- fi
-
- if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
- export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
- fi
-
- # The IO capture tests need to be disabled because they fail when
- # std{in,out,err} are redirected (as they are within portage).
- #
- # One -n applies to the top-level "php", while the other applies
- # to any sub-php that get invoked by the test runner.
- SKIP_IO_CAPTURE_TESTS=1 SKIP_PERF_SENSITIVE=1 REPORT_EXIT_STATUS=1 \
- "${TEST_PHP_EXECUTABLE}" -n \
- "${WORKDIR}/sapis-build/cli/run-tests.php" --offline -n -q \
- -d "session.save_path=${T}" \
- || die "tests failed"
-}
-
-pkg_postinst() {
- # Output some general info to the user
- if use apache2 ; then
- elog
- elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
- elog "your apache2 command. OpenRC users can append that string to"
- elog "APACHE2_OPTS in /etc/conf.d/apache2."
- elog
- elog "The apache module configuration file 70_mod_php.conf is"
- elog "provided (and maintained) by eselect-php."
- elog
- fi
-
- # Create the symlinks for php
- local m
- for m in ${SAPIS}; do
- [[ ${m} == 'embed' ]] && continue;
- if use $m ; then
- local ci=$(eselect php show $m)
- if [[ -z $ci ]]; then
- eselect php set $m php${SLOT} || die
- einfo "Switched ${m} to use php:${SLOT}"
- einfo
- elif [[ $ci != "php${SLOT}" ]] ; then
- elog "To switch $m to use php:${SLOT}, run"
- elog " eselect php set $m php${SLOT}"
- elog
- fi
- fi
- done
-
- # Remove dead symlinks for SAPIs that were just disabled. For
- # example, if the user has the cgi SAPI enabled, then he has an
- # eselect-php symlink for it. If he later reinstalls PHP with
- # USE="-cgi", that symlink will break. This call to eselect is
- # supposed to remove that dead link per bug 572436.
- eselect php cleanup || die
-
- if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
- elog "To build extensions for this version of PHP, you will need to"
- elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
- elog
- fi
-
- # Warn about the removal of PHP_INI_VERSION if the user has it set.
- if [[ -n "${PHP_INI_VERSION}" ]]; then
- ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
- ewarn 'remove it from your configuration at your convenience. See'
- ewarn
- ewarn ' https://bugs.gentoo.org/611214'
- ewarn
- ewarn 'for more information.'
- fi
-
- elog "For details on how version slotting works, please see"
- elog "the wiki:"
- elog
- elog " https://wiki.gentoo.org/wiki/PHP"
- elog
-}
-
-pkg_postrm() {
- # This serves two purposes. First, if we have just removed the last
- # installed version of PHP, then this will remove any dead symlinks
- # belonging to eselect-php. Second, if a user upgrades slots from
- # (say) 5.6 to 7.0 and depcleans the old slot, then this will update
- # his existing symlinks to point to the new 7.0 installation. The
- # latter is bug 432962.
- #
- # Note: the eselect-php package may not be installed at this point,
- # so we can't die() if this command fails.
- eselect php cleanup
-}
diff --git a/dev-lang/php/php-8.3.33.ebuild b/dev-lang/php/php-8.3.36.ebuild
index 73a0d7dd4cf6..da2c0d43187a 100644
--- a/dev-lang/php/php-8.3.33.ebuild
+++ b/dev-lang/php/php-8.3.36.ebuild
@@ -291,6 +291,9 @@ src_prepare() {
ext/standard/tests/general_functions/proc_nice_basic.phpt \
|| die
+ # bug 983491
+ rm sapi/cli/tests/gh14189.phpt || die
+
eautoconf --force
}
diff --git a/dev-lang/php/php-8.4.26.ebuild b/dev-lang/php/php-8.4.27.ebuild
index e28ec14de187..e28ec14de187 100644
--- a/dev-lang/php/php-8.4.26.ebuild
+++ b/dev-lang/php/php-8.4.27.ebuild
diff --git a/dev-lang/php/php-8.5.11.ebuild b/dev-lang/php/php-8.5.12.ebuild
index 3943b3ad4415..3943b3ad4415 100644
--- a/dev-lang/php/php-8.5.11.ebuild
+++ b/dev-lang/php/php-8.5.12.ebuild
diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index 0436663de557..28cd7449ea81 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -16,12 +16,18 @@ DIST Python-3.13.15.tar.xz 23160540 BLAKE2B 919260666d5e641fa174de3f9ce4dace7bc2
DIST Python-3.13.15.tar.xz.asc 833 BLAKE2B daba95f5977f80a155effdfba3e1a8a744a739f0aa0d1f4f7d2e410cd91833c1faad1186ef50d1979ec061e4a9f0c71444955612a75b4874898c9cf571019a01 SHA512 662c00be95f62e80db43cf42099fef91f764ff7a4433cadf7eb19dedb5e4775adb12878d5ed2295fcea187731de186163ad9672ab72cde62a2335ca58ec1ad86
DIST Python-3.13.16.tar.xz 23225704 BLAKE2B 1a3912f93d51e86ae7c2ab6478a7286121a0e3410e2f6b67028aafb3e5bf49289e2c79d0f7af9264ee09374fdcfec136554f15e979330904a37b57c37f60a618 SHA512 7283884583b181161aff5ce523c0cdf03904a1d7a172db2727f7d3f42ae6e4d44f1ac86f7960df4a0203740cc04ab5adba3f404aafd562afe761d9052cc4f32c
DIST Python-3.13.16.tar.xz.asc 833 BLAKE2B efa3967a6164038003e30f9c6300a2a72fa0a2b65227064df8d9bd93ac84b84730f29c3a5ea10ac0385188ca22fa3b12cd2bdec19876ec75b49ca0033c397b27 SHA512 14f2ff2a5820d9e4410d4ac5a56aafa2a7e2b2ca8a9f5f6517bc839d61837a27522950999de4a422de4f6499fcec91015f27d940d88b3766bd0ad5d90d46ee92
+DIST Python-3.13.17.tar.xz 23233336 BLAKE2B 088471d7e6eb5d25225c9db7f80ac75d56b28dd2cc3a8a110dcd09c84f7ecd155201028842b26b03c592c32593079e94dfca2c87eb400fcff0fefbb0a78e23fb SHA512 461df4bca8b11cb2f76250ab38df3afdeb937a920132b3f8569c52261281d64d64ef8ba663c426ff613ad37dbcd1de871c5e15cc31f1b865982b8508adf986d9
+DIST Python-3.13.17.tar.xz.asc 833 BLAKE2B e052cba2e0b4ead0b2042e5f53c6e4d44cead34a24f95db74fcd9aa74df39635f3bb8cbafe2d6c3c3acb256fe77f000a28f29bca7b7b4ba45534815455302f0e SHA512 b1e13f16afd364024f827b7b7b55bf3b8aa2e3bc17bf6fb7fb128d102c441be73bf76649c24391c053d2983413a5df4698b2361f322521732d111478a50edff0
DIST Python-3.14.7.tar.xz 24053924 BLAKE2B 7d6988f906a402dbfc87b690f228b5fc53de024602bb459360e0482c1e323e212c71ff389b2c37bcc35248df9d9aa3bf710d3745484048cce7d4a41e5b3ea937 SHA512 3d4e2e2f983b320dec47005c408d7178d3656a6de0c4430ce21514797174b972f461200898b25d3dfac2a455019ef87e45d0fb2bb6ec2ca887124d10037a2a07
DIST Python-3.14.7.tar.xz.sigstore 7101 BLAKE2B 9c016780aad594596b5f4782e755f211bf6c635026c2c854d6594aba2254c84eeb78f0e90eae4b0ba218168c2162999b2e9327184031c43d8b111fb72e95f888 SHA512 6e56084d4c45712d2ce21c4f16008513e4daa22f2a6174b4d715c2bcf80a2fa9a1356ea6c4ecb8470ab2f08117ef79301da666b53b264bac53ae0801e410d189
DIST Python-3.14.8.tar.xz 24130644 BLAKE2B c357ff7ad35ed9daac86cf8b9ba05c2735104aaedd3b4e942e16f4f76ea4990d678f932da11b7d3e8677df5e3e848ed28d89b172844c53675cf09c86b2289903 SHA512 f9e6809b0c45d90fcc174b8051e15058a3037981c9136c598d110a118a22cbbb8263fbd677e07b2b9d93e1aa83cd9cb835b61b6af898fd301d1080a29c2156fe
DIST Python-3.14.8.tar.xz.sigstore 7489 BLAKE2B 9815b29e63c481ecb5bdd37f2f8da2d1a363adb1fc138ac00fec37732ecd5dcb34e010c2aaed4dea3aa688543768870aad17cd7999006b8b7974ed05e125e4e2 SHA512 cc030677f2b22287ed42974cd5d2654d1eadec38d66080b04b4a5bf468e9055aeff127dbd5cce508d31c977a38d84a0e87eb3c6375b2b924e03f7883e1d602a9
+DIST Python-3.14.9.tar.xz 24176992 BLAKE2B 58c55b36f1f2ae36161a2cd7c685467884205535300a2bb4ae8c719518c73e590ad8d4270719a6d689eea10117ea028abee704cf2607ced12867d315e27784d3 SHA512 2bf44a9efc3f056f7358fe8d6bd3c105cdb420705cefee2f45a3739fb07af923dbe4e7b38ff21acd9f306b55cb00c6a34f34c5e46ca859d8d820113081dc4714
+DIST Python-3.14.9.tar.xz.sigstore 7130 BLAKE2B 9bcb10b92e994df5f7a8ded0c110af4a8cb0fc0b8567555cfec87af402bc9ad103dd96a05714c3cb4c857b6d480483c06c482c6577805238fa8b36bef606d165 SHA512 a535f5444c8b85d081abd552d8672ba93184f65adc7ee44185167ae720d1ff56636774480cda8f7b52faf7cc381e6662ccedb680888961ffb07332e4829809cb
DIST Python-3.15.0.tar.xz 35688820 BLAKE2B fd061cceb89dc512b0e68f32189ba6d89e5707b633d5606215bdfa173ed67918127c195cbde6c0d759cb1197ebbbb030129f0520ef59eec83554d5d810257983 SHA512 293cbdbb20076c8d9f1ddfb9b72796974b00802f96691843af3924e55e2a7cbd89c1cd85ebd8e35a474eda9e7a878b6622238178ef2de4427e4e34ef70d04265
DIST Python-3.15.0.tar.xz.sigstore 7310 BLAKE2B dc13104044018b770628b085b3baabba2e06decfb0f5d31573fc847c6ca0f933a5a8bf3ff8241fe948009c6a190ea1b3aaf9d787c8b6b8a89dd15bade6a60096 SHA512 995e0bc6732c27a8c18a4f8d0db957fbe6b8e777d7e0b92669e03918aeabbade5443429ff5070bf02a5e03f8c873db1e92fa83e5bf63340b10d8653550ee4bd6
+DIST Python-3.15.1.tar.xz 35789408 BLAKE2B b26abe7b64cb055f77cd1f4931fe880907761d3289829803ec6cc6313b9e3e0ac7f9bf5e74be91eda411409d0bc5f29dd9f79bb6c72900e477389d1896ed0514 SHA512 6903df8c553f8bda2b5f807b21f1a948076522ffa5b17d9e8b452099294f78a085929565df7b2b79af153fc0e638928d87cccb35b48e505280ffa2c3e2b735ec
+DIST Python-3.15.1.tar.xz.sigstore 7177 BLAKE2B 67e60e2e054f4028b6818c30a7f48294732ff74d31cf277073e9f4cf252ff6939d3f5cab0995637cd2a74629ba5eefde2b89af4d52f101b01961a3b1e34cab87 SHA512 1183eaf7c46baaaa059e84c7b5b5d52177b76164e37189bae0327d5205bf7ab9b8f9ebccdcbdba659631c72381eccaa144e6389b335c194c5f8798e3249fb2e2
DIST Python-3.16.0a1.tar.xz 35379848 BLAKE2B 2f6e53fe66c6d935366f35d145dfeb6a8345d1c1b293dd8cad96d710a0f6e8317d359b56c40259f037d4189ee32f787ba3c749e838c7825e740ad68407067544 SHA512 7539197c48669ccad6bde38b05dcdc83e669d597364d3c42107f5de054ad3b10e28ae4835720ed9be2b15da9a30a021c66d022ecfc39817f0e54916bbc66e9b7
DIST Python-3.16.0a1.tar.xz.sigstore 7177 BLAKE2B 66a63ec9e13866929d7e012daa3278a38421ac9ff576ce3cac294ca989f675c976ba184dbbb61497069dbf885421c73843468bf9b8979b6491679f2bd3c77af6 SHA512 4b93bbae073c3ad0d099ac633aaf3a367c7390b32b256377a24578fffc239b20d94629ff074270e55d585b59d6f03ca22e4fd877599ba1066e7cb37ba059d8eb
DIST Python-3.8.20.tar.xz 18962788 BLAKE2B 715c75e0c0a3d3b77af7f07478311bb0554b80aac72915be703aa2d0dd6459a972e5669808e64da14a0b91bb183e00655055c1726f302dc3ccd8721e3b4ae3e6 SHA512 3c9341ee1fd33cb687958dcf2b7c0c7700489726c4d530c3e9d9537d46a6ab534541a4b312232d8505bea395a07e4518c42d75fb7571103e6b266f8f44115c61
@@ -41,11 +47,14 @@ DIST python-gentoo-patches-3.12.15.tar.xz 14288 BLAKE2B 7542fe0812f67d5b77e22c8a
DIST python-gentoo-patches-3.13.14.tar.xz 9360 BLAKE2B 257a43992b857d44881174b36b0940fab3f879060938fe6e6464ae671832a3af624a0cc6f012e44ee344a34d0a8da0c898a29176029bfab70086434fbd3c3b99 SHA512 0084ffc35ff81a7056dd7a3624083ed957fbe482b1cbca9e401ef5851e0046b82b9102f4cf358f2974d7a7dfb3e21e96dcafe6c207417fa01834b9d10a2ee8d6
DIST python-gentoo-patches-3.13.15.tar.xz 9364 BLAKE2B 03cc93d5d89db0fedf92dc80e1a758b408fea4d718c7ef653b5068b791327a0d416870a362a652f21066abf17b15f682850f71473adf8e2bfc86ede4677738e5 SHA512 319805f8dad220b89c6d52bd76ba031f1c8c780c7338fdbe7fd35af685a8ee75ca2568d77863a67de64398e92c4b73beb581481846f81c24eb9f0317b81a848a
DIST python-gentoo-patches-3.13.16.tar.xz 9364 BLAKE2B 7eb7072f782955041d5d1284a66312269671a4ef38b38d4b9e3e9fe65f6f4ae2fc1aaa3dae623743903acf38b99b6e15c3a11dd1a7892d6f1d34c3f33c81b7de SHA512 2ba2b6bb9c785ea78a88326ca4185d171a8f5c209a41269e0a70c244d037cae871be60a76c237d54f78720882cefe9fee8f8d3b132fed725b2beaf18765d3ed4
+DIST python-gentoo-patches-3.13.17.tar.xz 9364 BLAKE2B 367558e56f8b8545ca7c44ac24a1f28b14fcbc13ab314dd102d4c3408b01d062d26ae9333f87fc8e8743d2d9ee55bfd62714deda16e20c9a16927c91bf87bd7a SHA512 fe2492e1bc21ab884c4c747d8816acb3215ccc78da0c66ad12d214e5cadde665903e897490ca08ea6df6636e2e4b108f46fb226bc841812af78ba70945fb1282
DIST python-gentoo-patches-3.14.6_p1.tar.xz 12032 BLAKE2B 315de6cb5f346c6406e12d4cb6ccbc986e6a39dc334e5ceb4d1ba4922a336d77f0bd0167fb7ef4d1c40ce0829e03248e838dbfbd0a46c0e4e0f6cf9e999e09e8 SHA512 2ac689aa6cff138782440ce1104bf21eace756fd1a72e22590c14157390937f7f50cd1e1ca774bb5a1ff08404b74901fb55d703c39a6ff9c9165e420d1b045e9
DIST python-gentoo-patches-3.14.7.tar.xz 10304 BLAKE2B df9214b27caaef53da93e5468faae24186d5f37b675a86289ae0161539935a509d60635cde4569efd03769e228fb7d450e396bf731db2b49d4a46e0f70df4a87 SHA512 d8313edbf5126df6ed59d4e06fb813574e4dd672ccd433e6de776a06757deda0e0495bb92e59508d86bb5ee84d2fab8141c5446f6541104b1bd80c8647a1f705
DIST python-gentoo-patches-3.14.8.tar.xz 10300 BLAKE2B d03992cf3aa224c03bdff6bb837879fac6c935265a384170c4139d09a9e3fb246cd7822ae171ed88999d6120512e7f49bd04c1d3f7ccee1967e194e1186ce7b3 SHA512 9d05432b04718ddaa5d09a0fc99d2498078398e94f00470b48f19c1779cc86997917825a1d2ac539e2170d8f0a9ade82a9b8909ae221db395a6f9fdbde3a24f6
+DIST python-gentoo-patches-3.14.9.tar.xz 8432 BLAKE2B 33d7260c4e8257675989db5ec94c6553ffc9169ccdf5f989ca293483d3e1f019f5285c899e50beae66dbbdb260abca979aab159f28c40e13d55d5f3458387387 SHA512 a4effaafe1588c3e27c9b69db6a1e9ff5ffda7560ac2ac0ab64870aeab4761249f84cfb776cf7cb501e81d535f9cb672b9ea9e4488ffb9351780be2effc5c3db
DIST python-gentoo-patches-3.15.0.tar.xz 4624 BLAKE2B 844b76e97fe4564613e4a00d02f77b18ef63a1b731ee7112789f9067d973decbcab05aeca2da32945b2c1f03e81705e7b102d4281b43287db948a3483e702f35 SHA512 0b0df753ab876f579e59b351d72b80279562236a1f5b36016eff133e4e3a7bdac7705af53a2f3a8ec4a0836c9357ceb5ea236047e3b12ceedb8ed593267f6cfe
DIST python-gentoo-patches-3.15.0b3.tar.xz 3432 BLAKE2B 994e9339e00dfa4b40395e763f25dde4813d791151787028dafcf2e5159c38bbe88d4b56d07fc4c7454a09bd55edfda94b9cb8cf5c0ff0ffe7db4bb1a8eea8b6 SHA512 8c3a8dea43fc42179679b1f6811979dabb4e1c34821b4aecd894d661842df26e7592f5c74787157f36ccddf9ce233994c774fbe8381dc0ccaff3dfcff0c6c572
+DIST python-gentoo-patches-3.15.1.tar.xz 3432 BLAKE2B 0e054d03af93b778f3c2c81b05bcd302d37ebde076ac193f2bcf39a0c0d6c96e36181371628336b3c9391aea4058d4dbc85a4da9de12a946fcbcaa1b50bd34ef SHA512 ed9cd83e7f87058c5c6e82688206ca68594d4eb3ad39764e7680af2470e370e7cb5a36a7a860a00433e6fcaf9153b23ada2758ea0a1fdf5b90c8bc46c1cff8c6
DIST python-gentoo-patches-3.16.0a1.tar.xz 3448 BLAKE2B 0ff7f5881799c377292c50f5a75a99364bebcaf3f6df81972350e74093100f697fccd62a42d432432e10cf541816f9268539ebef0f0e9cc40d9cf8f1b1258358 SHA512 169063117fc183642b434bf511677fe68453ef9cbd9b7155acffeee4ec36bd002a50b2adb8e70650993f8144f167269bc17e7f958612bd77ee74b61f8ae8982f
DIST python-gentoo-patches-3.8.20_p7.tar.xz 54544 BLAKE2B e31fc9fb5e98b62b0f70165670ec58ed4fa932cfc95d5287c249015a3a372fdbf0d1ba08cb98f63c2dc500700edfd6ffea6db670385d2c86a4fdb92ffb991192 SHA512 a9e7e4976be226931a503af2c986da207d060d4ce436af61f5e8427da513639adbed32bb0061963b83fef275a5de91707ab13b7a9abf3a7472ee0e2c5310eda1
DIST python-gentoo-patches-3.9.25.tar.xz 36604 BLAKE2B 11d35dcbc8979fe37e27a00dfef9683f0bf40514415be416d322f0509109edeb58a2e0b9218cfa3b3326654f5923d165511d203504ca2b52971ad136f8a454d1 SHA512 234bae116b2a5af00506cb76a0b86dfb8cf1f84ee980a358f3642bb717cff4d6f10388b2a07f12118588a174de4d2fd6ad2e3ab24704f9c85f36cb33d51f0c65
diff --git a/dev-lang/python/python-0.3.14.9.ebuild b/dev-lang/python/python-0.3.14.9.ebuild
new file mode 100644
index 000000000000..dda039e2d6da
--- /dev/null
+++ b/dev-lang/python/python-0.3.14.9.ebuild
@@ -0,0 +1,625 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+VERIFY_SIG_METHOD=sigstore
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs flag-o-matic linux-info
+inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs
+inherit verify-sig
+
+REAL_PV=${PV#0.}
+MY_PV=${REAL_PV/_/}
+MY_P="Python-${MY_PV%_p*}"
+PYVER="$(ver_cut 2-3)t"
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Freethreading (no-GIL) version of Python programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+IUSE="
+ bluetooth build debug +ensurepip examples gdbm libedit +ncurses pgo
+ +readline +sqlite +ssl tail-call-interp test tk valgrind
+"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ sys-apps/util-linux
+ >=virtual/zlib-1.1.3:=
+ virtual/libintl
+ !build? ( app-arch/zstd:= )
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ tail-call-interp? (
+ || (
+ >=sys-devel/gcc-16:*
+ >=llvm-core/clang-19:*
+ )
+ )
+"
+if [[ ${PV} != *_alpha* ]]; then
+ RDEPEND+="
+ dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
+ "
+fi
+PDEPEND="
+ ensurepip? ( dev-python/ensurepip-pip )
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER%t}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+declare -rgA PYTHON_KERNEL_CHECKS=(
+ ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
+ ["DNOTIFY"]="test_fcntl" # bug 938662
+)
+
+pkg_pretend() {
+ if use pgo || use test; then
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ if use test || use pgo; then
+ check-reqs_pkg_setup
+
+ local CONFIG_CHECK
+ for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ CONFIG_CHECK+="~${f} "
+ done
+ linux-info_pkg_setup
+ fi
+ if use tail-call-interp; then
+ tc-check-min_ver gcc 16
+ tc-check-min_ver clang 19
+ fi
+ fi
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ # TODO: Makefile has annoying deps on expat headers
+ #rm -r Modules/expat || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
+
+ # breaks tests when using --with-wheel-pkg-dir
+ rm -r Lib/test/wheeldata || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST="${BUILD_LDFLAGS} -fno-lto"
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS="${LDFLAGS_NODIST}"
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross to satisfy --with-build-python.
+ --without-lto
+ --without-readline
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+
+ # Avoid as many dependencies as possible for the cross build.
+ mkdir Modules || die
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ _dbm _gdbm
+ _sqlite3
+ _hashlib _ssl
+ _curses _curses_panel
+ readline
+ _tkinter
+ pyexpat
+ zlib
+ # We disabled these for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross. This should be rechecked for the pure Makefile approach,
+ # and uncommented if needed.
+ #_ctypes
+ EOF
+
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ # this is actually test_gdb.test_pretty_print
+ -x test_pretty_print
+ # https://bugs.gentoo.org/933840
+ -x test_perf_profiler
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # Kernel-config specific skips
+ for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ if ! linux_config_exists || ! linux_chkconfig_present "${option}"
+ then
+ COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" )
+ fi
+ done
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ --verbose3
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+
+ # Test terminates abruptly which corrupts written profile data
+ # bug #964023
+ -x test_pyrepl
+ )
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ # PGO sometimes fails randomly
+ local -x PROFILE_TASK="${profile_task_flags[*]} || true"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-libmpdec
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+ --disable-gil
+
+ $(use_with debug assertions)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with tail-call-interp)
+ $(use_with valgrind)
+ )
+
+ if tc-is-lto; then
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ # Force-disable modules we don't want built.
+ # See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ $(usev build '_zstd')
+ $(usev !gdbm '_gdbm _dbm')
+ $(usev !sqlite '_sqlite3')
+ $(usev !ssl '_hashlib _ssl')
+ $(usev !ncurses '_curses _curses_panel')
+ $(usev !readline 'readline')
+ $(usev !tk '_tkinter')
+ EOF
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # this just happens to skip test_support.test_freeze that is broken
+ # without bundled expat
+ # TODO: get a proper skip for it upstream
+ local -x LOGNAME=buildbot
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ # -j1 hack for now for bug #843458
+ emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+ # Fix collision with GIL-enabled build.
+ rm "${ED}/usr/bin/python${PYVER%t}" || die
+ mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die
+ mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if use tk; then
+ # rename to avoid collision with dev-lang/python
+ mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die
+ else
+ rm -r "${ED}/usr/bin/idle${PYVER%t}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local EPYTHON=python${PYVER}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
+ # pydoc
+ ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
+ fi
+}
diff --git a/dev-lang/python/python-0.3.15.1.ebuild b/dev-lang/python/python-0.3.15.1.ebuild
new file mode 100644
index 000000000000..e3c752a01053
--- /dev/null
+++ b/dev-lang/python/python-0.3.15.1.ebuild
@@ -0,0 +1,665 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+VERIFY_SIG_METHOD=sigstore
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs eapi9-ver flag-o-matic linux-info
+inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs
+inherit verify-sig
+
+REAL_PV=${PV#0.}
+MY_PV=${REAL_PV/_}
+MY_P="Python-${MY_PV%_p*}"
+PYVER="$(ver_cut 2-3)t"
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Freethreading (no-GIL) version of Python programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+IUSE="
+ bluetooth build debug +ensurepip examples gdbm libedit +ncurses pgo
+ +readline +sqlite +ssl tail-call-interp test tk valgrind
+"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ sys-apps/util-linux
+ >=virtual/zlib-1.1.3:=
+ virtual/libintl
+ !build? ( app-arch/zstd:= )
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ dev-python/ensurepip-wheel
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ tail-call-interp? (
+ || (
+ >=sys-devel/gcc-16:*
+ >=llvm-core/clang-19:*
+ )
+ )
+"
+if [[ ${PV} != *_alpha* ]]; then
+ RDEPEND+="
+ dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
+ "
+fi
+PDEPEND="
+ ensurepip? ( dev-python/ensurepip-pip )
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER%t}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+declare -rgA PYTHON_KERNEL_CHECKS=(
+ ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
+ ["DNOTIFY"]="test_fcntl" # bug 938662
+)
+
+pkg_pretend() {
+ if use pgo || use test; then
+ check-reqs_pkg_pretend
+ fi
+
+ ewarn "Freethreading build is considered experimental upstream. Using it"
+ ewarn "could lead to unexpected breakage, including race conditions"
+ ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
+ ewarn "you can reproduce the problem with dev-lang/python. Instead,"
+ ewarn "please consider reporting freethreading problems upstream."
+
+ if [[ ${MERGE_TYPE} != buildonly ]] && ver_replacing -lt 0.3.15.0_beta4; then
+ ewarn
+ ewarn "Python 3.15.0b4 has broken its extension ABI. The extensions built"
+ ewarn "with older versions may crash at runtime or worse after upgrading."
+ ewarn "A rebuild is recommended after the merge is complete, e.g. using:"
+ ewarn
+ ewarn " emerge -1v \$(find /usr/lib/python3.15t/site-packages -name '*.cpython-315t-*.so')"
+ ewarn
+ ewarn "Note that if you enabled both python3_15 and python3_15t, then"
+ ewarn "the 3.15 rebuild should cover all 3.15t packages as well."
+ ewarn "If you do not wish to perform the rebuild at the time, it is"
+ ewarn "recommended to abort the upgrade."
+ ewarn
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ if use test || use pgo; then
+ check-reqs_pkg_setup
+
+ local CONFIG_CHECK
+ for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ CONFIG_CHECK+="~${f} "
+ done
+ linux-info_pkg_setup
+ fi
+ if use tail-call-interp; then
+ tc-check-min_ver gcc 16
+ tc-check-min_ver clang 19
+ fi
+ fi
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ # TODO: Makefile has annoying deps on expat headers
+ #rm -r Modules/expat || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
+
+ # breaks tests when using --with-wheel-pkg-dir
+ rm -r Lib/test/wheeldata || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST="${BUILD_LDFLAGS} -fno-lto"
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS="${LDFLAGS_NODIST}"
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross to satisfy --with-build-python.
+ --without-lto
+ --without-readline
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+
+ # Avoid as many dependencies as possible for the cross build.
+ mkdir Modules || die
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ _dbm _gdbm
+ _sqlite3
+ _hashlib _ssl
+ _curses _curses_panel
+ readline
+ _tkinter
+ pyexpat
+ zlib
+ # We disabled these for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross. This should be rechecked for the pure Makefile approach,
+ # and uncommented if needed.
+ #_ctypes
+ EOF
+
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ # this is actually test_gdb.test_pretty_print
+ -x test_pretty_print
+ # https://bugs.gentoo.org/933840
+ -x test_perf_profiler
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # Kernel-config specific skips
+ for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ if ! linux_config_exists || ! linux_chkconfig_present "${option}"
+ then
+ COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" )
+ fi
+ done
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ --verbose3
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+
+ # Test terminates abruptly which corrupts written profile data
+ # bug #964023
+ -x test_pyrepl
+ )
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ # PGO sometimes fails randomly
+ local -x PROFILE_TASK="${profile_task_flags[*]} || true"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-libmpdec
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+ --disable-gil
+
+ $(use_with debug assertions)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with tail-call-interp)
+ $(use_with valgrind)
+ )
+
+ if tc-is-lto; then
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ # Force-disable modules we don't want built.
+ # See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ $(usev build '_zstd')
+ $(usev !gdbm '_gdbm _dbm')
+ $(usev !sqlite '_sqlite3')
+ $(usev !ssl '_hashlib _ssl')
+ $(usev !ncurses '_curses _curses_panel')
+ $(usev !readline 'readline')
+ $(usev !tk '_tkinter')
+ EOF
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # this just happens to skip test_support.test_freeze that is broken
+ # without bundled expat
+ # TODO: get a proper skip for it upstream
+ local -x LOGNAME=buildbot
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+ local build_dir=$(<pybuilddir.txt)
+
+ # -j1 hack for now for bug #843458
+ emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Install build-details.json manually because it was randomly removed
+ # from altinstall in https://github.com/python/cpython/pull/142269.
+ cp "${build_dir}"/build-details.json "${libdir}"/ || die
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+ # Fix collision with GIL-enabled build.
+ rm "${ED}/usr/bin/python${PYVER%t}" || die
+ mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die
+ mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if use tk; then
+ # rename to avoid collision with dev-lang/python
+ mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die
+ else
+ rm -r "${ED}/usr/bin/idle${PYVER%t}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local EPYTHON=python${PYVER}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
+ # pydoc
+ ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
+ fi
+}
+
+pkg_postinst() {
+ if ver_replacing -lt 0.3.15.0_beta4; then
+ ewarn "Python 3.15.0b4 has broken its extension ABI. The extensions built"
+ ewarn "with older versions may crash at runtime or worse. To prevent this,"
+ ewarn "please rebuild all extensions using the versoned ABI, e.g. using:"
+ ewarn
+ ewarn " emerge -1v \$(find /usr/lib/python3.15t/site-packages -name '*.cpython-315t-*.so')"
+ ewarn
+ ewarn "Note that if you enabled both python3_15 and python3_15t, then"
+ ewarn "the 3.15 rebuild should cover all 3.15t packages already."
+ fi
+}
diff --git a/dev-lang/python/python-3.13.17.ebuild b/dev-lang/python/python-3.13.17.ebuild
new file mode 100644
index 000000000000..d1ccb0f535b3
--- /dev/null
+++ b/dev-lang/python/python-3.13.17.ebuild
@@ -0,0 +1,616 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+LLVM_COMPAT=( 18 )
+LLVM_OPTIONAL=1
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs flag-o-matic linux-info llvm-r1
+inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs
+inherit verify-sig
+
+MY_PV=${PV}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="
+ bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo
+ +readline +sqlite +ssl test tk valgrind
+"
+REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-crypt/libb2
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ sys-apps/util-linux
+ >=virtual/zlib-1.1.3:=
+ virtual/libintl
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ jit? (
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ ')
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-python-20260805 )
+"
+if [[ ${PV} != *_alpha* ]]; then
+ RDEPEND+="
+ dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
+ "
+fi
+PDEPEND="
+ ensurepip? ( dev-python/ensurepip-pip )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+declare -rgA PYTHON_KERNEL_CHECKS=(
+ ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
+ ["DNOTIFY"]="test_fcntl" # bug 938662
+)
+
+pkg_pretend() {
+ if use pgo || use test; then
+ check-reqs_pkg_pretend
+ fi
+
+ if use jit; then
+ ewarn "USE=jit is considered experimental upstream. Using it"
+ ewarn "could lead to unexpected breakage, including race conditions"
+ ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
+ ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead,"
+ ewarn "please consider reporting JIT problems upstream."
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ use jit && llvm-r1_pkg_setup
+ if use test || use pgo; then
+ check-reqs_pkg_setup
+
+ local CONFIG_CHECK
+ for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ CONFIG_CHECK+="~${f} "
+ done
+ linux-info_pkg_setup
+ fi
+ fi
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ # TODO: Makefile has annoying deps on expat headers
+ #rm -r Modules/expat || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
+
+ # breaks tests when using --with-wheel-pkg-dir
+ rm -r Lib/test/wheeldata || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST="${BUILD_LDFLAGS} -fno-lto"
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS="${LDFLAGS_NODIST}"
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross to satisfy --with-build-python.
+ --without-lto
+ --without-readline
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+
+ # Avoid as many dependencies as possible for the cross build.
+ mkdir Modules || die
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ _dbm _gdbm
+ _sqlite3
+ _hashlib _ssl
+ _curses _curses_panel
+ readline
+ _tkinter
+ pyexpat
+ zlib
+ # We disabled these for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross. This should be rechecked for the pure Makefile approach,
+ # and uncommented if needed.
+ #_ctypes
+ EOF
+
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ # this is actually test_gdb.test_pretty_print
+ -x test_pretty_print
+ # https://bugs.gentoo.org/933840
+ -x test_perf_profiler
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # Kernel-config specific skips
+ for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ if ! linux_config_exists || ! linux_chkconfig_present "${option}"
+ then
+ COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" )
+ fi
+ done
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ --verbose3
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+ )
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ # PGO sometimes fails randomly
+ local -x PROFILE_TASK="${profile_task_flags[*]} || true"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-libmpdec
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+ --enable-gil
+
+ $(use_with debug assertions)
+ $(use_enable jit experimental-jit)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with valgrind)
+ )
+
+ if tc-is-lto; then
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ # Force-disable modules we don't want built.
+ # See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ $(usev !gdbm '_gdbm _dbm')
+ $(usev !sqlite '_sqlite3')
+ $(usev !ssl '_hashlib _ssl')
+ $(usev !ncurses '_curses _curses_panel')
+ $(usev !readline 'readline')
+ $(usev !tk '_tkinter')
+ EOF
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # this just happens to skip test_support.test_freeze that is broken
+ # without bundled expat
+ # TODO: get a proper skip for it upstream
+ local -x LOGNAME=buildbot
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ # -j1 hack for now for bug #843458
+ emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local EPYTHON=python${PYVER}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
+ # pydoc
+ ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
+ fi
+}
diff --git a/dev-lang/python/python-3.14.9.ebuild b/dev-lang/python/python-3.14.9.ebuild
new file mode 100644
index 000000000000..1b4baba3a565
--- /dev/null
+++ b/dev-lang/python/python-3.14.9.ebuild
@@ -0,0 +1,636 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+LLVM_COMPAT=( 19 )
+LLVM_OPTIONAL=1
+VERIFY_SIG_METHOD=sigstore
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs flag-o-matic linux-info llvm-r1
+inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs
+inherit verify-sig
+
+MY_PV=${PV/_/}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+IUSE="
+ bluetooth build debug +ensurepip examples gdbm jit libedit +ncurses pgo
+ +readline +sqlite +ssl tail-call-interp test tk valgrind
+"
+REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ sys-apps/util-linux
+ >=virtual/zlib-1.1.3:=
+ virtual/libintl
+ !build? ( app-arch/zstd:= )
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ jit? (
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ ')
+ )
+ tail-call-interp? (
+ || (
+ >=sys-devel/gcc-16:*
+ >=llvm-core/clang-19:*
+ )
+ )
+"
+if [[ ${PV} != *_alpha* ]]; then
+ RDEPEND+="
+ dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
+ "
+fi
+PDEPEND="
+ ensurepip? ( dev-python/ensurepip-pip )
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER%t}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+declare -rgA PYTHON_KERNEL_CHECKS=(
+ ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
+ ["DNOTIFY"]="test_fcntl" # bug 938662
+)
+
+pkg_pretend() {
+ if use pgo || use test; then
+ check-reqs_pkg_pretend
+ fi
+
+ if use jit; then
+ ewarn "USE=jit is considered experimental upstream. Using it"
+ ewarn "could lead to unexpected breakage, including race conditions"
+ ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
+ ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead,"
+ ewarn "please consider reporting JIT problems upstream."
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ use jit && llvm-r1_pkg_setup
+ if use test || use pgo; then
+ check-reqs_pkg_setup
+
+ local CONFIG_CHECK
+ for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ CONFIG_CHECK+="~${f} "
+ done
+ linux-info_pkg_setup
+ fi
+ if use tail-call-interp; then
+ tc-check-min_ver gcc 16
+ tc-check-min_ver clang 19
+ fi
+ fi
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ # TODO: Makefile has annoying deps on expat headers
+ #rm -r Modules/expat || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
+
+ # breaks tests when using --with-wheel-pkg-dir
+ rm -r Lib/test/wheeldata || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST="${BUILD_LDFLAGS} -fno-lto"
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS="${LDFLAGS_NODIST}"
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross to satisfy --with-build-python.
+ --without-lto
+ --without-readline
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+
+ # Avoid as many dependencies as possible for the cross build.
+ mkdir Modules || die
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ _dbm _gdbm
+ _sqlite3
+ _hashlib _ssl
+ _curses _curses_panel
+ readline
+ _tkinter
+ pyexpat
+ zlib
+ # We disabled these for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross. This should be rechecked for the pure Makefile approach,
+ # and uncommented if needed.
+ #_ctypes
+ EOF
+
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ # this is actually test_gdb.test_pretty_print
+ -x test_pretty_print
+ # https://bugs.gentoo.org/933840
+ -x test_perf_profiler
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # Kernel-config specific skips
+ for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ if ! linux_config_exists || ! linux_chkconfig_present "${option}"
+ then
+ COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" )
+ fi
+ done
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ --verbose3
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+
+ # Test terminates abruptly which corrupts written profile data
+ # bug #964023
+ -x test_pyrepl
+ )
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ # PGO sometimes fails randomly
+ local -x PROFILE_TASK="${profile_task_flags[*]} || true"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-libmpdec
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+ --enable-gil
+
+ $(use_with debug assertions)
+ $(use_enable jit experimental-jit)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with tail-call-interp)
+ $(use_with valgrind)
+ )
+
+ if tc-is-lto; then
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ # Force-disable modules we don't want built.
+ # See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ $(usev build '_zstd')
+ $(usev !gdbm '_gdbm _dbm')
+ $(usev !sqlite '_sqlite3')
+ $(usev !ssl '_hashlib _ssl')
+ $(usev !ncurses '_curses _curses_panel')
+ $(usev !readline 'readline')
+ $(usev !tk '_tkinter')
+ EOF
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # this just happens to skip test_support.test_freeze that is broken
+ # without bundled expat
+ # TODO: get a proper skip for it upstream
+ local -x LOGNAME=buildbot
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ # -j1 hack for now for bug #843458
+ emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local EPYTHON=python${PYVER}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
+ # pydoc
+ ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
+ fi
+}
diff --git a/dev-lang/python/python-3.15.1.ebuild b/dev-lang/python/python-3.15.1.ebuild
new file mode 100644
index 000000000000..72a0704c646f
--- /dev/null
+++ b/dev-lang/python/python-3.15.1.ebuild
@@ -0,0 +1,670 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+LLVM_COMPAT=( 21 )
+LLVM_OPTIONAL=1
+VERIFY_SIG_METHOD=sigstore
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs eapi9-ver flag-o-matic linux-info llvm-r2
+inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs
+inherit verify-sig
+
+MY_PV=${PV/_}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+IUSE="
+ bluetooth build debug +ensurepip examples gdbm jit libedit +ncurses pgo
+ +readline +sqlite +ssl tail-call-interp test tk valgrind
+"
+REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ sys-apps/util-linux
+ >=virtual/zlib-1.1.3:=
+ virtual/libintl
+ !build? ( app-arch/zstd:= )
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ dev-python/ensurepip-wheel
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ jit? (
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ ')
+ )
+ tail-call-interp? (
+ || (
+ >=sys-devel/gcc-16:*
+ >=llvm-core/clang-19:*
+ )
+ )
+"
+if [[ ${PV} != *_alpha* ]]; then
+ RDEPEND+="
+ dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
+ "
+fi
+PDEPEND="
+ ensurepip? ( dev-python/ensurepip-pip )
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER%t}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+declare -rgA PYTHON_KERNEL_CHECKS=(
+ ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
+ ["DNOTIFY"]="test_fcntl" # bug 938662
+)
+
+pkg_pretend() {
+ if use pgo || use test; then
+ check-reqs_pkg_pretend
+ fi
+
+ if use jit; then
+ ewarn "USE=jit is considered experimental upstream. Using it"
+ ewarn "could lead to unexpected breakage, including race conditions"
+ ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
+ ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead,"
+ ewarn "please consider reporting JIT problems upstream."
+ fi
+
+ if [[ ${MERGE_TYPE} != buildonly ]] && ver_replacing -lt 3.15.0_beta4; then
+ ewarn
+ ewarn "Python 3.15.0b4 has broken its extension ABI. The extensions built"
+ ewarn "with older versions may crash at runtime or worse after upgrading."
+ ewarn "A rebuild is recommended after the merge is complete, e.g. using:"
+ ewarn
+ ewarn " emerge -1v \$(find /usr/lib/python3.15/site-packages -name '*.cpython-315-*.so')"
+ ewarn
+ ewarn "Note that if you enabled both python3_15 and python3_15t, then"
+ ewarn "the 3.15 rebuild should cover all 3.15t packages already."
+ ewarn "If you do not wish to perform the rebuild at the time, it is"
+ ewarn "recommended to abort the upgrade."
+ ewarn
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ use jit && llvm-r2_pkg_setup
+ if use test || use pgo; then
+ check-reqs_pkg_setup
+
+ local CONFIG_CHECK
+ for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ CONFIG_CHECK+="~${f} "
+ done
+ linux-info_pkg_setup
+ fi
+ if use tail-call-interp; then
+ tc-check-min_ver gcc 16
+ tc-check-min_ver clang 19
+ fi
+ fi
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ # TODO: Makefile has annoying deps on expat headers
+ #rm -r Modules/expat || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
+
+ # breaks tests when using --with-wheel-pkg-dir
+ rm -r Lib/test/wheeldata || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST="${BUILD_LDFLAGS} -fno-lto"
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS="${LDFLAGS_NODIST}"
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross to satisfy --with-build-python.
+ --without-lto
+ --without-readline
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+
+ # Avoid as many dependencies as possible for the cross build.
+ mkdir Modules || die
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ _dbm _gdbm
+ _sqlite3
+ _hashlib _ssl
+ _curses _curses_panel
+ readline
+ _tkinter
+ pyexpat
+ zlib
+ # We disabled these for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross. This should be rechecked for the pure Makefile approach,
+ # and uncommented if needed.
+ #_ctypes
+ EOF
+
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ # this is actually test_gdb.test_pretty_print
+ -x test_pretty_print
+ # https://bugs.gentoo.org/933840
+ -x test_perf_profiler
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # Kernel-config specific skips
+ for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do
+ if ! linux_config_exists || ! linux_chkconfig_present "${option}"
+ then
+ COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" )
+ fi
+ done
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ --verbose3
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+
+ # Test terminates abruptly which corrupts written profile data
+ # bug #964023
+ -x test_pyrepl
+ )
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ # PGO sometimes fails randomly
+ local -x PROFILE_TASK="${profile_task_flags[*]} || true"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-libmpdec
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+ --enable-gil
+
+ $(use_with debug assertions)
+ $(use_enable jit experimental-jit)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with tail-call-interp)
+ $(use_with valgrind)
+ )
+
+ if tc-is-lto; then
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ # Force-disable modules we don't want built.
+ # See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ $(usev build '_zstd')
+ $(usev !gdbm '_gdbm _dbm')
+ $(usev !sqlite '_sqlite3')
+ $(usev !ssl '_hashlib _ssl')
+ $(usev !ncurses '_curses _curses_panel')
+ $(usev !readline 'readline')
+ $(usev !tk '_tkinter')
+ EOF
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # this just happens to skip test_support.test_freeze that is broken
+ # without bundled expat
+ # TODO: get a proper skip for it upstream
+ local -x LOGNAME=buildbot
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+ local build_dir=$(<pybuilddir.txt)
+
+ # -j1 hack for now for bug #843458
+ emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Install build-details.json manually because it was randomly removed
+ # from altinstall in https://github.com/python/cpython/pull/142269.
+ cp "${build_dir}"/build-details.json "${libdir}"/ || die
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local EPYTHON=python${PYVER}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
+ # pydoc
+ ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
+ fi
+}
+
+pkg_postinst() {
+ if ver_replacing -lt 3.15.0_beta4; then
+ ewarn "Python 3.15.0b4 has broken its extension ABI. The extensions built"
+ ewarn "with older versions may crash at runtime or worse. To prevent this,"
+ ewarn "please rebuild all extensions using the versoned ABI, e.g. using:"
+ ewarn
+ ewarn " emerge -1v \$(find /usr/lib/python3.15/site-packages -name '*.cpython-315-*.so')"
+ ewarn
+ ewarn "Note that if you enabled both python3_15 and python3_15t, then"
+ ewarn "the 3.15 rebuild should cover all 3.15t packages already."
+ fi
+}
diff --git a/dev-libs/kdsingleapplication/kdsingleapplication-1.2.1.ebuild b/dev-libs/kdsingleapplication/kdsingleapplication-1.2.1.ebuild
index e17806f260b2..b71253360f5f 100644
--- a/dev-libs/kdsingleapplication/kdsingleapplication-1.2.1.ebuild
+++ b/dev-libs/kdsingleapplication/kdsingleapplication-1.2.1.ebuild
@@ -12,7 +12,7 @@ S="${WORKDIR}"/KDSingleApplication-${PV}
LICENSE="BSD MIT"
SLOT="0/$(ver_cut 1-2)" # ${PROJECT_NAME}_SOVERSION
-KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+KEYWORDS="amd64 arm64 ~ppc64 x86"
IUSE="doc examples test"
RESTRICT="!test? ( test )"
diff --git a/dev-ml/spdx_licenses/Manifest b/dev-ml/spdx_licenses/Manifest
index c3bde0d85fe2..42e4bec68849 100644
--- a/dev-ml/spdx_licenses/Manifest
+++ b/dev-ml/spdx_licenses/Manifest
@@ -1,2 +1,2 @@
-DIST spdx_licenses-1.2.0.tar.gz 34387 BLAKE2B 7b381a98df0412993a8ee79a0ec4f99ce82da9be8eb47ab1c591b6110e9839782ca5a9775d7a24d0850d6cd215eb68cee0ae1d2ceecb3406b5699bc9a2c4e350 SHA512 188cb1fd9be76dfc9e26f155a0062ce000a3798e12e2208634db03f54ca7ebb9b3b16787114233f36e2a69bcba08572790c4931790e39590b13d48306b37931c
DIST spdx_licenses-1.4.0.tar.gz 53220 BLAKE2B 05badac25f9c97c2c41edfc726bff60bd1c87fb3d7f63dd28f36dec8fbd057f2b18da5f922ece90f8a3e9cd7ae7416fcb231c35b3fd9729db8ba869aa43f1c64 SHA512 959d45f29292e1a43d567330e289aa0250331972e02c96d6f838a757bb045e3d03d024de80b6e765810c538f854ab9b245548f90081b1d182c43e1cd0d6f9167
+DIST spdx_licenses-1.6.0.tar.gz 57368 BLAKE2B 11780fa7b1fc7d282299fa46209902840946a06abbd1f826e1a10ce909c94a990a22a5c94ca3f5817748fb13350bedf2376e56ffed11fdd9ffcefb42f3755b63 SHA512 0ae6a00112fbe985aa3505be338b1ee27a1db448d9d08d3a39e033f65c737d242552ed4933aa544dd042f7db8ef4861119c5af408dfd3409b438411509dedd25
diff --git a/dev-ml/spdx_licenses/spdx_licenses-1.2.0.ebuild b/dev-ml/spdx_licenses/spdx_licenses-1.6.0.ebuild
index 991c3fab8a20..b9289b7a1cbb 100644
--- a/dev-ml/spdx_licenses/spdx_licenses-1.2.0.ebuild
+++ b/dev-ml/spdx_licenses/spdx_licenses-1.6.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2024 Gentoo Authors
+# Copyright 2024-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-php/PEAR-PEAR/Manifest b/dev-php/PEAR-PEAR/Manifest
index 4c5d2a6b24f1..b8a0524643ea 100644
--- a/dev-php/PEAR-PEAR/Manifest
+++ b/dev-php/PEAR-PEAR/Manifest
@@ -1,2 +1 @@
-DIST PEAR-1.10.16.tgz 293781 BLAKE2B 0525e5ac748c5f2690e04b009618fdf3b65d37822844c553f87e50a7356833121b43d95d4ccae394a0ebd388ca078e17e344b9f7ddebc385715e091eb2f3cd9c SHA512 274e642a1c606e0caa9f4c9e4c5fcca69b92b8bcc952dfcb7b8bc1e249eaf04eed2d2caddafe3f722760a723fc1a7d851a404d32115a95f3c3157c91300f0b7b
DIST PEAR-1.10.18.tgz 294251 BLAKE2B 9a651afbb311b93cc4e86641775287d84cac974bc688e5ca07489b5396b67eb9e4e7161f3e9cc8f71ef3725a6b9597aa2cc10a88258820a5c2692fb525a073bb SHA512 869ca2caa158d6044625c3f4a1edd0acd6bc4096506617d3e1b2b54618c6465120a8197604271e7d4745ea7060658b81b25d5fdc91e07d055909977c7c831ce9
diff --git a/dev-php/PEAR-PEAR/PEAR-PEAR-1.10.16.ebuild b/dev-php/PEAR-PEAR/PEAR-PEAR-1.10.16.ebuild
deleted file mode 100644
index 4d9cb6e7e16c..000000000000
--- a/dev-php/PEAR-PEAR/PEAR-PEAR-1.10.16.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-MY_PN="${PN/PEAR-/}"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="PEAR Base System"
-HOMEPAGE="https://pear.php.net/package/PEAR"
-SRC_URI="https://pear.php.net/get/${MY_P}.tgz"
-S="${WORKDIR}/${MY_P}"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~hppa ppc64 ~riscv ~s390 ~sparc x86"
-
-RDEPEND="dev-lang/php:*[cli(-),xml(-),zlib(-)]
- dev-php/PEAR-Archive_Tar
- dev-php/PEAR-Console_Getopt
- dev-php/PEAR-Exception
- dev-php/PEAR-Structures_Graph
- dev-php/PEAR-XML_Util"
-
-PATCHES=( "${FILESDIR}/gentoo-libtool-mismatch-fix-v2.patch" )
-
-pkg_setup() {
- [[ -z "${PEAR_CACHEDIR}" ]] && PEAR_CACHEDIR="${EPREFIX}/var/cache/pear"
- [[ -z "${PEAR_DOWNLOADDIR}" ]] && PEAR_DOWNLOADDIR="${EPREFIX}/var/tmp/pear"
- [[ -z "${PEAR_TEMPDIR}" ]] && PEAR_TEMPDIR="${EPREFIX}/tmp"
-
- elog
- elog "cache_dir is set to: ${PEAR_CACHEDIR}"
- elog "download_dir is set to: ${PEAR_DOWNLOADDIR}"
- elog "temp_dir is set to: ${PEAR_TEMPDIR}"
- elog
- elog "If you want to change the above values, you need to set"
- elog "PEAR_CACHEDIR, PEAR_DOWNLOADDIR and PEAR_TEMPDIR variable(s)"
- elog "accordingly in /etc/portage/make.conf and re-emerge ${PN}."
- elog
-}
-
-src_prepare() {
- default
- # Exception.php is part of dev-php/PEAR-Exception.
- rm PEAR/Exception.php || die "failed to remove PEAR/Exception.php"
-}
-
-src_install() {
- insinto /usr/share/php
- doins -r PEAR/
- doins -r OS/
- doins PEAR.php System.php
- doins scripts/pearcmd.php
- doins scripts/peclcmd.php
-
- newbin scripts/pear.sh pear
- newbin scripts/peardev.sh peardev
- newbin scripts/pecl.sh pecl
-
- # adjust some scripts for current version
- [[ -z "${PEAR}" ]] && PEAR="${PV}"
- for i in pearcmd.php peclcmd.php ; do
- sed "s:@pear_version@:${PEAR}:g" -i "${D}/usr/share/php/${i}" \
- || die "failed to sed pear_version"
- done
-
- for i in pear peardev pecl ; do
- sed "s:@bin_dir@:${EPREFIX}/usr/bin:g" -i "${D}/usr/bin/${i}" \
- || die "failed to sed @bin_dir@ in ${i}"
- sed "s:@php_dir@:${EPREFIX}/usr/share/php:g" -i "${D}/usr/bin/${i}" \
- || die "failed to sed @php_dir@ in ${i}"
- done
-
- sed "s:-d output_buffering=1:-d output_buffering=1 -d memory_limit=32M:g" \
- -i "${D}/usr/bin/pear" \
- || die "failed to set PHP ini values in pear executable"
-
- sed "s:@package_version@:${PEAR}:g" \
- -i "${D}/usr/share/php/PEAR/Command/Package.php" \
- || die "failed to sed @package_version@"
-
- sed "s:@PEAR-VER@:${PEAR}:g" \
- -i "${D}/usr/share/php/PEAR/Dependency2.php" \
- || die "failed to sed @PEAR-VER@ in Dependency2.php"
-
- sed "s:@PEAR-VER@:${PEAR}:g" \
- -i "${D}/usr/share/php/PEAR/PackageFile/Parser/v1.php" \
- || die "failed to sed @PEAR-VER@ in v1.php"
-
- sed "s:@PEAR-VER@:${PEAR}:g" \
- -i "${D}/usr/share/php/PEAR/PackageFile/Parser/v2.php" \
- || die "failed to sed @PEAR-VER@ in v2.php"
-
- # finalize install
- insinto /etc
- newins "${FILESDIR}"/pear.conf-r2 pear.conf
-
- sed "s|s:PHPCLILEN:\"PHPCLI\"|s:${#PHPCLI}:\"${PHPCLI}\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed PHPCLILEN in pear.conf"
-
- sed "s|s:CACHEDIRLEN:\"CACHEDIR\"|s:${#PEAR_CACHEDIR}:\"${PEAR_CACHEDIR}\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed CACHEDIRLEN in pear.conf"
-
- sed "s|s:DOWNLOADDIRLEN:\"DOWNLOADDIR\"|s:${#PEAR_DOWNLOADDIR}:\"${PEAR_DOWNLOADDIR}\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed DOWNLOADDIRLEN in pear.conf"
-
- sed "s|s:TEMPDIRLEN:\"TEMPDIR\"|s:${#PEAR_TEMPDIR}:\"${PEAR_TEMPDIR}\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed TEMPDIRLEN in pear.conf"
-
- # Change the paths for eprefix!
- sed "s|s:19:\"/usr/share/php/docs\"|s:$(( ${#EPREFIX}+19 )):\"${EPREFIX}/usr/share/php/docs\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed the docs path (prefix) in pear.conf"
-
- sed "s|s:19:\"/usr/share/php/data\"|s:$(( ${#EPREFIX}+19 )):\"${EPREFIX}/usr/share/php/data\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed the data path (prefix) in pear.conf"
-
- sed "s|s:20:\"/usr/share/php/tests\"|s:$(( ${#EPREFIX}+20 )):\"${EPREFIX}/usr/share/php/tests\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed the tests path (prefix) in pear.conf"
-
- sed "s|s:14:\"/usr/share/php\"|s:$(( ${#EPREFIX}+14 )):\"${EPREFIX}/usr/share/php\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed the PHP include path (prefix) in pear.conf"
-
- sed "s|s:8:\"/usr/bin\"|s:$(( ${#EPREFIX}+8 )):\"${EPREFIX}/usr/bin\"|g" \
- -i "${D}/etc/pear.conf" \
- || die "failed to sed the bin path (prefix) in pear.conf"
-
- [[ "${PEAR_TEMPDIR}" != "/tmp" ]] && keepdir "${PEAR_TEMPDIR#"${EPREFIX}"}"
- keepdir "${PEAR_CACHEDIR#"${EPREFIX}"}"
- diropts -m1777
- keepdir "${PEAR_DOWNLOADDIR#"${EPREFIX}"}"
-
- insinto /usr/share/php/.packagexml
- newins "${WORKDIR}/package.xml" "${MY_P}.xml"
-}
-
-pkg_config() {
- # Update PEAR/PECL channels as needed, add new ones to the list if needed
- elog "Updating PEAR/PECL channels"
- local pearchans="pear.php.net pecl.php.net pear.symfony-project.com"
-
- for chan in ${pearchans} ; do
- # The first command may fail if, for example, the channels have
- # already been initialized.
- pear channel-discover ${chan}
- pear channel-update ${chan} || die "failed to update channels: ${chan}"
- done
-}
-
-pkg_postinst() {
- pear clear-cache || die "failed to clear PEAR cache"
-
- elog "Run 'emerge --config =${PF}' to automatically update the PEAR/PECL channels while online."
-
- # Register the package from the package.xml file
- # It is not critical to complete so only warn on failure
- if [[ -f "${EROOT}/usr/share/php/.packagexml/${MY_P}.xml" ]] ; then
- "${EROOT}/usr/bin/peardev" install -nrO --force \
- "${EROOT}/usr/share/php/.packagexml/${MY_P}.xml" 2> /dev/null \
- || ewarn "Failed to insert package into local PEAR database"
- fi
-}
-
-pkg_prerm() {
- # Uninstall known dependency
- "${EROOT}/usr/bin/peardev" uninstall -nrO "pear.php.net/PEAR"
-}
diff --git a/dev-php/PEAR-PEAR/PEAR-PEAR-1.10.18.ebuild b/dev-php/PEAR-PEAR/PEAR-PEAR-1.10.18.ebuild
index ce8ef66bdbda..4d9cb6e7e16c 100644
--- a/dev-php/PEAR-PEAR/PEAR-PEAR-1.10.18.ebuild
+++ b/dev-php/PEAR-PEAR/PEAR-PEAR-1.10.18.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://pear.php.net/get/${MY_P}.tgz"
S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm ~hppa ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="dev-lang/php:*[cli(-),xml(-),zlib(-)]
dev-php/PEAR-Archive_Tar
diff --git a/dev-php/PHPMailer/Manifest b/dev-php/PHPMailer/Manifest
index f3163143f556..03a599751104 100644
--- a/dev-php/PHPMailer/Manifest
+++ b/dev-php/PHPMailer/Manifest
@@ -1 +1 @@
-DIST PHPMailer-6.9.1.tar.gz 109263 BLAKE2B 97820b1fb941e120839d89d928661b218555ebb58f2ccd25ed4236a656f4f48f518e7522ad5d2eb60a9d038e5e0ebdc9198597d6f1c82eb91de8953c71adeced SHA512 a02d95405ffbfdc26d214d091508c8cd61e07b7285f264cc1c7bdf6bb1427b6cdde759b627710fb20cb988ded9299bfec85e61e5749932c245e79262d6f21c06
+DIST PHPMailer-7.1.1.tar.gz 120033 BLAKE2B f4baa3d9ec29f73c8dbaae292441a70432f499f97d0834adcf9e7c26d61db9110b0f0a27b52681d931a06d9145678310dd1293495c01b657fd1c6defcd9ec29c SHA512 931bf115f70fc545c41b4611b3366ad138720131624d8abc720e801182f2376102676a8a89389abd76ad8293c1804c5c747b083b43f2513ade156d52dcd64a94
diff --git a/dev-php/PHPMailer/PHPMailer-6.9.1.ebuild b/dev-php/PHPMailer/PHPMailer-7.1.1.ebuild
index ebb698c6a0d5..f839bd142dcb 100644
--- a/dev-php/PHPMailer/PHPMailer-6.9.1.ebuild
+++ b/dev-php/PHPMailer/PHPMailer-7.1.1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=8
+EAPI=9
DESCRIPTION="Full-featured email creation and transfer class for PHP"
HOMEPAGE="https://github.com/PHPMailer/PHPMailer"
@@ -9,7 +9,7 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 ~riscv ~x86"
# To help out the Composer children, the tests and examples are missing
# from the release tarballs.
@@ -40,7 +40,8 @@ src_install() {
insinto "/usr/share/php/${PN}"
doins -r language src
- dodoc README.md SECURITY.md
+ # UPGRADING.md and changelog.md are missing
+ dodoc README.md SECURITY.md SMTPUTF8.md
}
pkg_postinst() {
diff --git a/dev-php/adodb/Manifest b/dev-php/adodb/Manifest
index 51262f31db99..4228f863f32c 100644
--- a/dev-php/adodb/Manifest
+++ b/dev-php/adodb/Manifest
@@ -1 +1,2 @@
+DIST adodb-5.22.12.tar.gz 451313 BLAKE2B f59a770d6686a99805faebefd20fdaba04efe1789ec3c21f8db48ffc26a8621ef8b69a70186c6a6756def171e5c3b1ad902d5152a9cff2aa60ad24da38479d35 SHA512 7517a879b48be6a276cf3662a0878edffd8a3c4bfbb70cb7fc739db96b8e1c20bf05da72bfd2d80b73ccf652290330c079cb6a0c3eb7f998f4eb4958e901fb4b
DIST adodb-5.22.7.tar.gz 447580 BLAKE2B 1d8e6518155585f7e82f697e463832c4d798dce0bc59fb4a068aef7430945fe7cbfb7112b150f36fc91fb9555189276032da420bec68a71c6438c1d513dd3594 SHA512 731e5def40699bc445b9ef44585b7db6f890d977aaafaac58ea1fcfadd9d89d00871a279549f6e8ff683fe56f7061d78cdc2457e99ed0636a8497cae44bddc99
diff --git a/dev-php/adodb/adodb-5.22.12.ebuild b/dev-php/adodb/adodb-5.22.12.ebuild
new file mode 100644
index 000000000000..47bb25b8bdaf
--- /dev/null
+++ b/dev-php/adodb/adodb-5.22.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=9
+
+MY_PN="ADOdb"
+DESCRIPTION="Database abstraction layer for PHP"
+HOMEPAGE="https://adodb.org/ https://github.com/ADOdb/ADOdb"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="BSD LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc64 ~riscv ~sparc ~x86"
+
+# If you want to be picky, we should require that PHP be built with at
+# least one database driver enabled; otherwise adodb isn't going to be
+# able to do anything. But, the database USE flags for dev-lang/php are
+# a mess. What we would *like* to do is have a set of USE flags for
+# adodb that then propagate to PHP itself... for example, adodb[mysql]
+# could require php[mysql]. To do that would require that we duplicate
+# the database USE flag mess for adodb -- not desirable. Instead we punt
+# and let the user install adodb unconditionally. If he doesn't have
+# database support in PHP, it just won't work.
+RDEPEND="dev-lang/php:*"
+
+src_install() {
+ DOCS="README.md docs/changelog*.md xmlschema*.dtd session/*.sql"
+ DOCS+=" session/*.txt session/*.xml pear/auth_adodb_example.php"
+ DOCS+=" pear/readme.Auth.txt"
+
+ dodoc ${DOCS}
+ rm -f ${DOCS} || die "failed to remove docs before installation"
+
+ insinto "/usr/share/php/${PN}"
+ doins *.php
+ doins -r datadict drivers lang pear perf session xsl
+}
diff --git a/dev-php/adodb/metadata.xml b/dev-php/adodb/metadata.xml
index 3a6bd95fbdf5..ba8317ff47ce 100644
--- a/dev-php/adodb/metadata.xml
+++ b/dev-php/adodb/metadata.xml
@@ -5,9 +5,5 @@
<email>php-bugs@gentoo.org</email>
<name>PHP</name>
</maintainer>
- <maintainer type="person">
- <email>mjo@gentoo.org</email>
- <name>Michael Orlitzky</name>
- </maintainer>
<origin>srcux</origin>
</pkgmetadata>
diff --git a/dev-php/smarty/Manifest b/dev-php/smarty/Manifest
index bf76715a4a1c..18ad341aecd4 100644
--- a/dev-php/smarty/Manifest
+++ b/dev-php/smarty/Manifest
@@ -1 +1,2 @@
DIST smarty-4.3.1.tar.gz 361248 BLAKE2B b09ab14742b9ebdfd1e31ec9d2ac79016ce8869403da67ea241b735875ef25f40c2936a41bda5647ca697b708b91b02a29f5d17ebbc7d6049bf468851f0bc70f SHA512 03a42007fd1c03ba502b7a2255071638e978a54e5d75d4542a033e9f490c7c41587b5593316269107fe904a7b96a1a3337bf9525e038a5bb4051cc9aef13940f
+DIST smarty-5.8.5.tar.gz 345251 BLAKE2B 7091e6597795360dc5e84bd85109b680f56fbaead2e2cbd72b52e0cc88e02d90f3721b353f835efa0fc1cbf99f9085f042aac53cac22fe56fea8823cfffa2f20 SHA512 c9cb7f893b66e271fac14db88a1b15d321023417079414ceb33ec03bf77e3ec80bb6db88007e3f8a7ef242d0dd50d831228f26ed43eaa30a0a0777fcee9dce88
diff --git a/dev-php/smarty/smarty-5.8.5.ebuild b/dev-php/smarty/smarty-5.8.5.ebuild
new file mode 100644
index 000000000000..531fc842611f
--- /dev/null
+++ b/dev-php/smarty/smarty-5.8.5.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=9
+
+DESCRIPTION="A template engine for PHP"
+HOMEPAGE="https://www.smarty.net/ https://github.com/smarty-php/smarty/"
+SRC_URI="https://github.com/smarty-php/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc64 ~riscv ~sparc ~x86"
+IUSE="doc examples"
+
+# PHP unicode support is detected at runtime, and the cached templates
+# that smarty generates depend on it. If, later on, PHP is reinstalled
+# without unicode support, all of the previously-generated cached
+# templates will begin to throw 500 errrors for missing mb_foo
+# functions. See bug #532618.
+RDEPEND="dev-lang/php:*[unicode]"
+
+src_prepare() {
+ default
+
+ # Prepare the docs and examples for easy dodocing.
+ rm docs/_config.yml || die
+ mv -v demo examples || die
+}
+
+src_install() {
+ insinto "/usr/share/php/${PN}"
+ doins -r libs src
+
+ local DOCS=(
+ CHANGELOG.md
+ CONTRIBUTING.md
+ README.md
+ SECURITY.md
+ TODO.txt
+ )
+
+ use doc && dodoc -r docs/*
+ use examples && dodoc -r examples
+ einstalldocs
+}
+
+pkg_postinst() {
+ elog "${PN} has been installed in /usr/share/php/${PN}/."
+ elog
+ elog 'To use it in your scripts, include the Smarty.class.php file'
+ elog "from the \"${PN}\" directory; for example,"
+ elog
+ elog " require('${PN}/libs/Smarty.class.php');"
+ elog
+ elog 'After that, the Smarty class will be available to you.'
+}
diff --git a/dev-python/isort/Manifest b/dev-python/isort/Manifest
index 387755a6aa2f..672a32d7eba4 100644
--- a/dev-python/isort/Manifest
+++ b/dev-python/isort/Manifest
@@ -1,6 +1,3 @@
-DIST isort-8.0.1.gh.tar.gz 773936 BLAKE2B c4fd4183995295fd7cf4afa7da7e3f0377490be2207c278bf5f3135256475476777755ed77a8f901ae2c5ced5bdc126d38a8f16a75fd12df64b93529c080f574 SHA512 97c6e6ceea3fc5ddfa573214c2019774cb5a5012fd3127b6c80c3f43d7e1bfc87c559cda2d7d626aedc9e4ae5bb28f96b2f77a6161ad94879f070e285fd460b0
-DIST isort-9.0.0.tar.gz 665294 BLAKE2B 892eee505354e52121b10ee4b65ab331420605a412562c383a1bf92599477239da2197246efa840fd05bc14ec51e657c7705449307e5399860c6f3bc542c367f SHA512 8bde3f75fab572c28f7151c05023162f29a3e957b2acac6c803d08d3e06e887e2b7760a707a0381b4fb0b33451423c9e2649ce73cf43efb92debd695c6149046
-DIST isort-9.0.0.tar.gz.provenance 9605 BLAKE2B 02cb3f45398da5dd432c719c12d5456055ff94c89cb3a1bafcbcdfdfa4010f305c8e8fe9fe740ab534edaece1972052510d0531cf56637983f6dd38e23c8ca00 SHA512 b386487e2e2667d14c2efa638230323c91d817b5d509161da794dc9727f1275b4fef6c51aa5f720a32b32a8644be97067b0516d56398fda9534fc7ce86fd6a2e
DIST isort-9.0.1.tar.gz 667724 BLAKE2B 78892358e7e8c21a442541ef212517fef1742bba45b890cb7f1a38a25a8115edd1ceb1e5974345804b0cf145db6bc35d49a50c91da15e0dab4b73e965450a0e1 SHA512 edf386ec3497c1b9e540015dea76f8328593f43d2aa391acad459f175fe1b3a552d4ca0e75187bc92ef1319cb4c77bb774cb22ef9b46cf89daacc754bb454f93
DIST isort-9.0.1.tar.gz.provenance 9323 BLAKE2B 4910211d4f53834fae20740638f32b117ba19260c73e7408b5ca4d26ed65246571d35d9d3636b5213e3270c0406e70ba404812f85604f8c90c371a5f9775d8d0 SHA512 1b5e6ce351db6a9dae510eb4525f2f1cd6083ff55673d055be73367b02a92bd66fb47727e92a8189aff617bf857fb2632a490145f49762673a16706698ab7c57
DIST isort-9.0.2.tar.gz 685196 BLAKE2B 5b45c7dba7a7a313716acc5dc2c26a50ddb7993879beff746dc80f558098f9bedfdebb92890a3e946d2f1a6fff757df19358562a440ef9d2555a6748fea2b1bf SHA512 78274fb9876684abed3821673245d061bf3fb2b884fca487c8920a96736fed573fa7747284dd6c075f2712b83513de08352d46697d4b7b863b63d4fbbb21322a
diff --git a/dev-python/isort/isort-8.0.1.ebuild b/dev-python/isort/isort-8.0.1.ebuild
deleted file mode 100644
index b618e42faec1..000000000000
--- a/dev-python/isort/isort-8.0.1.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1
-
-DESCRIPTION="A python utility/library to sort imports"
-HOMEPAGE="
- https://github.com/PyCQA/isort/
- https://pypi.org/project/isort/
-"
-SRC_URI="
- https://github.com/PyCQA/isort/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- dev-python/black[${PYTHON_USEDEP}]
- >=dev-python/colorama-0.4.6[${PYTHON_USEDEP}]
- dev-python/natsort[${PYTHON_USEDEP}]
- dev-vcs/git
- )
-"
-
-EPYTEST_PLUGINS=( hypothesis pytest-mock )
-distutils_enable_tests pytest
-
-src_prepare() {
- # unbundle tomli
- sed -i -e 's:from ._vendored ::' isort/settings.py || die
- rm -r isort/_vendored || die
-
- distutils-r1_src_prepare
-
- export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-}
-
-python_test() {
- cp -a "${BUILD_DIR}"/{install,test} || die
- local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
-
- # Install necessary plugins
- local p
- for p in example*/; do
- pushd "${p}" >/dev/null || die
- distutils_pep517_install "${BUILD_DIR}"/test
- popd >/dev/null || die
- done
-
- local EPYTEST_IGNORE=(
- # Excluded from upstream's test script
- tests/unit/test_deprecated_finders.py
- )
-
- if ! has_version "dev-python/pylama[${PYTHON_USEDEP}]"; then
- EPYTEST_IGNORE+=(
- tests/unit/test_importable.py
- tests/unit/test_pylama_isort.py
- )
- fi
-
- epytest tests/unit
-}
diff --git a/dev-python/isort/isort-9.0.1.ebuild b/dev-python/isort/isort-9.0.1-r1.ebuild
index 1489af06d3e3..f714fcb33935 100644
--- a/dev-python/isort/isort-9.0.1.ebuild
+++ b/dev-python/isort/isort-9.0.1-r1.ebuild
@@ -19,12 +19,14 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+RDEPEND="
+ >=dev-python/mypy-extensions-1.1.0[${PYTHON_USEDEP}]
+"
BDEPEND="
dev-python/hatch-vcs[${PYTHON_USEDEP}]
test? (
dev-python/black[${PYTHON_USEDEP}]
>=dev-python/colorama-0.4.6[${PYTHON_USEDEP}]
- >=dev-python/mypy-extensions-1.1.0[${PYTHON_USEDEP}]
dev-python/natsort[${PYTHON_USEDEP}]
dev-vcs/git
)
diff --git a/dev-python/isort/isort-9.0.0.ebuild b/dev-python/isort/isort-9.0.2-r1.ebuild
index f0e75dd60fda..934c34da7d87 100644
--- a/dev-python/isort/isort-9.0.0.ebuild
+++ b/dev-python/isort/isort-9.0.2-r1.ebuild
@@ -19,12 +19,14 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+RDEPEND="
+ >=dev-python/mypy-extensions-1.1.0[${PYTHON_USEDEP}]
+"
BDEPEND="
dev-python/hatch-vcs[${PYTHON_USEDEP}]
test? (
dev-python/black[${PYTHON_USEDEP}]
>=dev-python/colorama-0.4.6[${PYTHON_USEDEP}]
- >=dev-python/mypy-extensions-1.1.0[${PYTHON_USEDEP}]
dev-python/natsort[${PYTHON_USEDEP}]
dev-vcs/git
)
diff --git a/dev-python/isort/isort-9.0.2.ebuild b/dev-python/isort/isort-9.0.2.ebuild
deleted file mode 100644
index f0e75dd60fda..000000000000
--- a/dev-python/isort/isort-9.0.2.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYPI_VERIFY_REPO=https://github.com/PyCQA/isort
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A python utility/library to sort imports"
-HOMEPAGE="
- https://github.com/PyCQA/isort/
- https://pypi.org/project/isort/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- dev-python/black[${PYTHON_USEDEP}]
- >=dev-python/colorama-0.4.6[${PYTHON_USEDEP}]
- >=dev-python/mypy-extensions-1.1.0[${PYTHON_USEDEP}]
- dev-python/natsort[${PYTHON_USEDEP}]
- dev-vcs/git
- )
-"
-
-EPYTEST_PLUGINS=( hypothesis pytest-mock )
-distutils_enable_tests pytest
-
-src_prepare() {
- # unbundle tomli
- sed -i -e 's:from ._vendored ::' isort/settings.py || die
- rm -r isort/_vendored || die
-
- distutils-r1_src_prepare
-}
-
-python_test() {
- cp -a "${BUILD_DIR}"/{install,test} || die
- local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH}
-
- # Install necessary plugins
- local p
- for p in example*/; do
- pushd "${p}" >/dev/null || die
- distutils_pep517_install "${BUILD_DIR}"/test
- popd >/dev/null || die
- done
-
- local EPYTEST_IGNORE=(
- # Excluded from upstream's test script
- tests/unit/test_deprecated_finders.py
- )
-
- if ! has_version "dev-python/pylama[${PYTHON_USEDEP}]"; then
- EPYTEST_IGNORE+=(
- tests/unit/test_importable.py
- tests/unit/test_pylama_isort.py
- )
- fi
-
- epytest tests/unit
-}
diff --git a/dev-python/jpype/Manifest b/dev-python/jpype/Manifest
index 0d6d64aa739c..308057869528 100644
--- a/dev-python/jpype/Manifest
+++ b/dev-python/jpype/Manifest
@@ -1 +1 @@
-DIST v1.6.0.tar.gz 801839 BLAKE2B cdbb1f52156848d492a6e4ca3a224e2e8da94da00617aac014ad6daa031655d05228f00b9e7a3f044d3e6f5c31147f7d3175bddf5da042fecee3b6b46c2ebf56 SHA512 5849509334ab4eb63546b584eb32a0d61a9da2b5b303acc380f0be2742b96b32a2bd900b2a080e62ed32d7a7c5029a3d59c55fd9f7018ddd37e968e58df32707
+DIST jpype-1.7.1.gh.tar.gz 802748 BLAKE2B 035a91bd55d761e334a230bc550068829a72929ef9aad71c8bddf13f7866605b2d2abf95e42c9f03522fd1e698e381b77595db60fec8d8bd49f06e19bf53c173 SHA512 e02cfb72cfea61e445f8d448a559f58cf0016bccf689fe137ab4d75d6e5c8a640d774eadef09489b3ea3113725010a8c3251dfffe194b9c91250c9040923869c
diff --git a/dev-python/jpype/files/jpype-1.7.1-jar-location.patch b/dev-python/jpype/files/jpype-1.7.1-jar-location.patch
new file mode 100644
index 000000000000..f904a5d8c220
--- /dev/null
+++ b/dev-python/jpype/files/jpype-1.7.1-jar-location.patch
@@ -0,0 +1,36 @@
+QA marks the stray top-level jar in site-packages.
+Lookup adjusted to the new location.
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -26,7 +26,7 @@
+
+ if(SKBUILD)
+ message(DEBUG "SKBuild invocation")
+- set(DEST_JAR ${SKBUILD_PLATLIB_DIR})
++ set(DEST_JAR ${SKBUILD_PLATLIB_DIR}/jpype)
+ set(DEST_EXTENSION ${SKBUILD_PLATLIB_DIR})
+ else()
+ # in-place build, set output to cmakes output dir.
+--- a/jpype/_core.py
++++ b/jpype/_core.py
+@@ -313,7 +313,7 @@
+ # extra_jvm_args += ['--module-path=%s'%mp ]
+
+ # Get the support library
+- support_lib_p = Path(__file__).resolve().parent.parent / "org.jpype.jar"
++ support_lib_p = Path(__file__).resolve().parent / "org.jpype.jar"
+ if not support_lib_p.exists(): # pragma: no cover
+ raise RuntimeError(
+ f"Unable to find org.jpype.jar support library at {support_lib_p}")
+--- a/jpype/_pyinstaller/hook-jpype.py
++++ b/jpype/_pyinstaller/hook-jpype.py
+@@ -6,6 +6,6 @@
+
+ fspath = getattr(os, 'fspath', str)
+
+-jar_path = Path(jpype.__file__).parent.parent.joinpath('org.jpype.jar')
++jar_path = Path(jpype.__file__).parent.joinpath('org.jpype.jar')
+
+-datas = [[fspath(jar_path), '.']]
++datas = [[fspath(jar_path), 'jpype']]
diff --git a/dev-python/jpype/files/jpype-1.7.1-java-release.patch b/dev-python/jpype/files/jpype-1.7.1-java-release.patch
new file mode 100644
index 000000000000..c60a4939ec46
--- /dev/null
+++ b/dev-python/jpype/files/jpype-1.7.1-java-release.patch
@@ -0,0 +1,32 @@
+Upstream uses URLDecoder.decode(String, Charset) - unavailable in Java 9
+
+--- a/native/build.xml
++++ b/native/build.xml
+@@ -1,7 +1,7 @@
+ <project default="all" name="JPype - Native">
+
+ <!-- JAVA_VERSION must match the oldest supported Java version -->
+- <property name="JAVA_VERSION" value="9" />
++ <property name="JAVA_VERSION" value="11" />
+
+ <!-- src can't be "java" as it breaks nose tests -->
+ <property name="src" location="jpype_module/src/main/java"/>
+@@ -17,16 +17,14 @@
+ <mkdir dir="${build}/classes/META-INF/versions/0"/>
+ <mkdir dir="${build}/lib"/>
+ <javac destdir="${build}/classes"
+- source="${JAVA_VERSION}"
+- target="${JAVA_VERSION}"
++ release="${JAVA_VERSION}"
+ excludes="**/Reflector0.java"
+ includeantruntime="false"
+ >
+ <src path="${src}"/>
+ </javac>
+ <javac destdir="${build}/classes/META-INF/versions/0"
+- source="${JAVA_VERSION}"
+- target="${JAVA_VERSION}"
++ release="${JAVA_VERSION}"
+ includes="**/Reflector0.java"
+ includeantruntime="false"
+ >
diff --git a/dev-python/jpype/jpype-1.6.0.ebuild b/dev-python/jpype/jpype-1.6.0.ebuild
deleted file mode 100644
index 1caaef3f3492..000000000000
--- a/dev-python/jpype/jpype-1.6.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1
-
-DESCRIPTION="Bridge to allow Python programs full access to Java class libraries"
-HOMEPAGE="https://github.com/jpype-project/jpype/"
-SRC_URI="https://github.com/jpype-project/jpype/archive/refs/tags/v${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="virtual/jdk"
-
-src_prepare() {
- sed -i "s/'-g0', //g;s/, '-O2'//g" "${S}"/setupext/platform.py || die
- default
-}
diff --git a/dev-python/jpype/jpype-1.7.1.ebuild b/dev-python/jpype/jpype-1.7.1.ebuild
new file mode 100644
index 000000000000..407fa516aaa2
--- /dev/null
+++ b/dev-python/jpype/jpype-1.7.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=scikit-build-core
+PYTHON_COMPAT=( python3_{13..14} )
+EPYTEST_PLUGINS=()
+
+inherit java-pkg-2 distutils-r1
+
+DESCRIPTION="Bridge to allow Python programs full access to Java class libraries"
+HOMEPAGE="https://github.com/jpype-project/jpype/"
+SRC_URI="
+ https://github.com/jpype-project/jpype/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=virtual/jre-11:*
+"
+
+DEPEND=">=virtual/jdk-11:*"
+
+BDEPEND="
+ ${DEPEND}
+ >=dev-python/scikit-build-core-0.9[${PYTHON_USEDEP}]
+ dev-java/ant
+ test? (
+ dev-python/jedi[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}/${P}-java-release.patch"
+ "${FILESDIR}/${P}-jar-location.patch"
+)
+
+python_compile() {
+ local DISTUTILS_ARGS=( -DBUILD_TEST_HARNESS=$(usex test ON OFF) )
+ distutils-r1_python_compile
+}
+
+python_test() {
+ cd test || die
+
+ epytest jpypetest --checkjni \
+ --ignore=jpypetest/test_sql_h2.py \
+ --ignore=jpypetest/test_sql_hsqldb.py \
+ --ignore=jpypetest/test_sql_sqlite.py
+}
diff --git a/dev-python/jpype/metadata.xml b/dev-python/jpype/metadata.xml
index 3e664c81ed3f..bb2b36e77133 100644
--- a/dev-python/jpype/metadata.xml
+++ b/dev-python/jpype/metadata.xml
@@ -5,5 +5,9 @@
<email>ivan.lloro.boada@gmail.com</email>
<name>Ivan Lloro</name>
</maintainer>
+ <maintainer type="person">
+ <email>mit.mis@gmail.com</email>
+ <name>Michal Andrzejczak</name>
+ </maintainer>
<origin>srcux</origin>
</pkgmetadata>
diff --git a/dev-python/mistune/mistune-3.4.0.ebuild b/dev-python/mistune/mistune-3.4.0.ebuild
index e62e57f6822b..e30f80fa9f8c 100644
--- a/dev-python/mistune/mistune-3.4.0.ebuild
+++ b/dev-python/mistune/mistune-3.4.0.ebuild
@@ -23,6 +23,8 @@ EPYTEST_PLUGINS=()
distutils_enable_tests pytest
EPYTEST_DESELECT=(
- # unreliable timing test
+ # unreliable timing tests
tests/test_misc.py::TestMiscCases::test_deeply_indented_list_does_not_scale_quadratically
+ tests/test_security_formatting.py::TestFormattingSecurity::test_repeated_unclosed_formatting_markers_are_near_linear
+ tests/test_security_inline.py::TestInlineParserSecurity::test_adjacent_ruby_tokens_do_not_recurse_forever
)
diff --git a/dev-python/packaging/packaging-26.3.ebuild b/dev-python/packaging/packaging-26.3.ebuild
index e9fdbf3eac47..d5f29e8d2af3 100644
--- a/dev-python/packaging/packaging-26.3.ebuild
+++ b/dev-python/packaging/packaging-26.3.ebuild
@@ -26,7 +26,8 @@ fi
RDEPEND="
!<dev-python/setuptools-67
"
-DEPEND="
+BDEPEND="
+ >=dev-python/flit-core-3.12.0[${PYTHON_USEDEP}]
test? (
dev-python/pretend[${PYTHON_USEDEP}]
dev-python/tomli-w[${PYTHON_USEDEP}]
diff --git a/dev-python/python-tests/Manifest b/dev-python/python-tests/Manifest
index 703e04b30ac8..e48ac98b7b01 100644
--- a/dev-python/python-tests/Manifest
+++ b/dev-python/python-tests/Manifest
@@ -6,20 +6,29 @@ DIST Python-3.13.15.tar.xz 23160540 BLAKE2B 919260666d5e641fa174de3f9ce4dace7bc2
DIST Python-3.13.15.tar.xz.asc 833 BLAKE2B daba95f5977f80a155effdfba3e1a8a744a739f0aa0d1f4f7d2e410cd91833c1faad1186ef50d1979ec061e4a9f0c71444955612a75b4874898c9cf571019a01 SHA512 662c00be95f62e80db43cf42099fef91f764ff7a4433cadf7eb19dedb5e4775adb12878d5ed2295fcea187731de186163ad9672ab72cde62a2335ca58ec1ad86
DIST Python-3.13.16.tar.xz 23225704 BLAKE2B 1a3912f93d51e86ae7c2ab6478a7286121a0e3410e2f6b67028aafb3e5bf49289e2c79d0f7af9264ee09374fdcfec136554f15e979330904a37b57c37f60a618 SHA512 7283884583b181161aff5ce523c0cdf03904a1d7a172db2727f7d3f42ae6e4d44f1ac86f7960df4a0203740cc04ab5adba3f404aafd562afe761d9052cc4f32c
DIST Python-3.13.16.tar.xz.asc 833 BLAKE2B efa3967a6164038003e30f9c6300a2a72fa0a2b65227064df8d9bd93ac84b84730f29c3a5ea10ac0385188ca22fa3b12cd2bdec19876ec75b49ca0033c397b27 SHA512 14f2ff2a5820d9e4410d4ac5a56aafa2a7e2b2ca8a9f5f6517bc839d61837a27522950999de4a422de4f6499fcec91015f27d940d88b3766bd0ad5d90d46ee92
+DIST Python-3.13.17.tar.xz 23233336 BLAKE2B 088471d7e6eb5d25225c9db7f80ac75d56b28dd2cc3a8a110dcd09c84f7ecd155201028842b26b03c592c32593079e94dfca2c87eb400fcff0fefbb0a78e23fb SHA512 461df4bca8b11cb2f76250ab38df3afdeb937a920132b3f8569c52261281d64d64ef8ba663c426ff613ad37dbcd1de871c5e15cc31f1b865982b8508adf986d9
+DIST Python-3.13.17.tar.xz.asc 833 BLAKE2B e052cba2e0b4ead0b2042e5f53c6e4d44cead34a24f95db74fcd9aa74df39635f3bb8cbafe2d6c3c3acb256fe77f000a28f29bca7b7b4ba45534815455302f0e SHA512 b1e13f16afd364024f827b7b7b55bf3b8aa2e3bc17bf6fb7fb128d102c441be73bf76649c24391c053d2983413a5df4698b2361f322521732d111478a50edff0
DIST Python-3.14.7.tar.xz 24053924 BLAKE2B 7d6988f906a402dbfc87b690f228b5fc53de024602bb459360e0482c1e323e212c71ff389b2c37bcc35248df9d9aa3bf710d3745484048cce7d4a41e5b3ea937 SHA512 3d4e2e2f983b320dec47005c408d7178d3656a6de0c4430ce21514797174b972f461200898b25d3dfac2a455019ef87e45d0fb2bb6ec2ca887124d10037a2a07
DIST Python-3.14.7.tar.xz.sigstore 7101 BLAKE2B 9c016780aad594596b5f4782e755f211bf6c635026c2c854d6594aba2254c84eeb78f0e90eae4b0ba218168c2162999b2e9327184031c43d8b111fb72e95f888 SHA512 6e56084d4c45712d2ce21c4f16008513e4daa22f2a6174b4d715c2bcf80a2fa9a1356ea6c4ecb8470ab2f08117ef79301da666b53b264bac53ae0801e410d189
DIST Python-3.14.8.tar.xz 24130644 BLAKE2B c357ff7ad35ed9daac86cf8b9ba05c2735104aaedd3b4e942e16f4f76ea4990d678f932da11b7d3e8677df5e3e848ed28d89b172844c53675cf09c86b2289903 SHA512 f9e6809b0c45d90fcc174b8051e15058a3037981c9136c598d110a118a22cbbb8263fbd677e07b2b9d93e1aa83cd9cb835b61b6af898fd301d1080a29c2156fe
DIST Python-3.14.8.tar.xz.sigstore 7489 BLAKE2B 9815b29e63c481ecb5bdd37f2f8da2d1a363adb1fc138ac00fec37732ecd5dcb34e010c2aaed4dea3aa688543768870aad17cd7999006b8b7974ed05e125e4e2 SHA512 cc030677f2b22287ed42974cd5d2654d1eadec38d66080b04b4a5bf468e9055aeff127dbd5cce508d31c977a38d84a0e87eb3c6375b2b924e03f7883e1d602a9
+DIST Python-3.14.9.tar.xz 24176992 BLAKE2B 58c55b36f1f2ae36161a2cd7c685467884205535300a2bb4ae8c719518c73e590ad8d4270719a6d689eea10117ea028abee704cf2607ced12867d315e27784d3 SHA512 2bf44a9efc3f056f7358fe8d6bd3c105cdb420705cefee2f45a3739fb07af923dbe4e7b38ff21acd9f306b55cb00c6a34f34c5e46ca859d8d820113081dc4714
+DIST Python-3.14.9.tar.xz.sigstore 7130 BLAKE2B 9bcb10b92e994df5f7a8ded0c110af4a8cb0fc0b8567555cfec87af402bc9ad103dd96a05714c3cb4c857b6d480483c06c482c6577805238fa8b36bef606d165 SHA512 a535f5444c8b85d081abd552d8672ba93184f65adc7ee44185167ae720d1ff56636774480cda8f7b52faf7cc381e6662ccedb680888961ffb07332e4829809cb
DIST Python-3.15.0.tar.xz 35688820 BLAKE2B fd061cceb89dc512b0e68f32189ba6d89e5707b633d5606215bdfa173ed67918127c195cbde6c0d759cb1197ebbbb030129f0520ef59eec83554d5d810257983 SHA512 293cbdbb20076c8d9f1ddfb9b72796974b00802f96691843af3924e55e2a7cbd89c1cd85ebd8e35a474eda9e7a878b6622238178ef2de4427e4e34ef70d04265
DIST Python-3.15.0.tar.xz.sigstore 7310 BLAKE2B dc13104044018b770628b085b3baabba2e06decfb0f5d31573fc847c6ca0f933a5a8bf3ff8241fe948009c6a190ea1b3aaf9d787c8b6b8a89dd15bade6a60096 SHA512 995e0bc6732c27a8c18a4f8d0db957fbe6b8e777d7e0b92669e03918aeabbade5443429ff5070bf02a5e03f8c873db1e92fa83e5bf63340b10d8653550ee4bd6
+DIST Python-3.15.1.tar.xz 35789408 BLAKE2B b26abe7b64cb055f77cd1f4931fe880907761d3289829803ec6cc6313b9e3e0ac7f9bf5e74be91eda411409d0bc5f29dd9f79bb6c72900e477389d1896ed0514 SHA512 6903df8c553f8bda2b5f807b21f1a948076522ffa5b17d9e8b452099294f78a085929565df7b2b79af153fc0e638928d87cccb35b48e505280ffa2c3e2b735ec
+DIST Python-3.15.1.tar.xz.sigstore 7177 BLAKE2B 67e60e2e054f4028b6818c30a7f48294732ff74d31cf277073e9f4cf252ff6939d3f5cab0995637cd2a74629ba5eefde2b89af4d52f101b01961a3b1e34cab87 SHA512 1183eaf7c46baaaa059e84c7b5b5d52177b76164e37189bae0327d5205bf7ab9b8f9ebccdcbdba659631c72381eccaa144e6389b335c194c5f8798e3249fb2e2
DIST python-gentoo-patches-3.12.13_p1.tar.xz 12408 BLAKE2B 2b232c2742eafcb803713c837b4ddaa38f45c88e707ec272571739570f9e2e5c94644681369d887992eadf5f0c1178489f1aa3a7d8163a2aa4ce6a86732e73da SHA512 e06d78ad24c9fbc3fa9c47b25ba722342ddd140aa30f624b41d605dae40d00ab956d879a247db2d7980c063a1472de40587a0d3cd6947e560aa7e8d0e4f89309
DIST python-gentoo-patches-3.12.14.tar.xz 14296 BLAKE2B aa38928fedcdca5b681f5b1d7cb227038a60202c91c561f2dd3dd40e80167e683676670b7a3fb791ad37f92801d23a429b5adc869eb5566f4223057e932d2f2f SHA512 aafa1c59b54c131efa7fc7db5e64ab01f6c15b4d9d6bedf44bed747b3b06610dc731c4d527b91b321205e83eba944da4b687f23628155468cfc4c8b531a822c0
DIST python-gentoo-patches-3.12.15.tar.xz 14288 BLAKE2B 7542fe0812f67d5b77e22c8af05468960695d1581469d3aee8a8aa569b0a56f75dc264242c8e90f4be5c47488389263f4a61a847448862e253926744055101c3 SHA512 f8e78c98ce383045aedf4d637fb4ae0c435db115c30eb96dafc0150a813e6849ca23b0fc5cb04f9530d92dafd604ee41b50e1edae228f7ed32c8b62ce623e252
DIST python-gentoo-patches-3.13.14.tar.xz 9360 BLAKE2B 257a43992b857d44881174b36b0940fab3f879060938fe6e6464ae671832a3af624a0cc6f012e44ee344a34d0a8da0c898a29176029bfab70086434fbd3c3b99 SHA512 0084ffc35ff81a7056dd7a3624083ed957fbe482b1cbca9e401ef5851e0046b82b9102f4cf358f2974d7a7dfb3e21e96dcafe6c207417fa01834b9d10a2ee8d6
DIST python-gentoo-patches-3.13.15.tar.xz 9364 BLAKE2B 03cc93d5d89db0fedf92dc80e1a758b408fea4d718c7ef653b5068b791327a0d416870a362a652f21066abf17b15f682850f71473adf8e2bfc86ede4677738e5 SHA512 319805f8dad220b89c6d52bd76ba031f1c8c780c7338fdbe7fd35af685a8ee75ca2568d77863a67de64398e92c4b73beb581481846f81c24eb9f0317b81a848a
DIST python-gentoo-patches-3.13.16.tar.xz 9364 BLAKE2B 7eb7072f782955041d5d1284a66312269671a4ef38b38d4b9e3e9fe65f6f4ae2fc1aaa3dae623743903acf38b99b6e15c3a11dd1a7892d6f1d34c3f33c81b7de SHA512 2ba2b6bb9c785ea78a88326ca4185d171a8f5c209a41269e0a70c244d037cae871be60a76c237d54f78720882cefe9fee8f8d3b132fed725b2beaf18765d3ed4
+DIST python-gentoo-patches-3.13.17.tar.xz 9364 BLAKE2B 367558e56f8b8545ca7c44ac24a1f28b14fcbc13ab314dd102d4c3408b01d062d26ae9333f87fc8e8743d2d9ee55bfd62714deda16e20c9a16927c91bf87bd7a SHA512 fe2492e1bc21ab884c4c747d8816acb3215ccc78da0c66ad12d214e5cadde665903e897490ca08ea6df6636e2e4b108f46fb226bc841812af78ba70945fb1282
DIST python-gentoo-patches-3.14.6_p1.tar.xz 12032 BLAKE2B 315de6cb5f346c6406e12d4cb6ccbc986e6a39dc334e5ceb4d1ba4922a336d77f0bd0167fb7ef4d1c40ce0829e03248e838dbfbd0a46c0e4e0f6cf9e999e09e8 SHA512 2ac689aa6cff138782440ce1104bf21eace756fd1a72e22590c14157390937f7f50cd1e1ca774bb5a1ff08404b74901fb55d703c39a6ff9c9165e420d1b045e9
DIST python-gentoo-patches-3.14.7.tar.xz 10304 BLAKE2B df9214b27caaef53da93e5468faae24186d5f37b675a86289ae0161539935a509d60635cde4569efd03769e228fb7d450e396bf731db2b49d4a46e0f70df4a87 SHA512 d8313edbf5126df6ed59d4e06fb813574e4dd672ccd433e6de776a06757deda0e0495bb92e59508d86bb5ee84d2fab8141c5446f6541104b1bd80c8647a1f705
DIST python-gentoo-patches-3.14.8.tar.xz 10300 BLAKE2B d03992cf3aa224c03bdff6bb837879fac6c935265a384170c4139d09a9e3fb246cd7822ae171ed88999d6120512e7f49bd04c1d3f7ccee1967e194e1186ce7b3 SHA512 9d05432b04718ddaa5d09a0fc99d2498078398e94f00470b48f19c1779cc86997917825a1d2ac539e2170d8f0a9ade82a9b8909ae221db395a6f9fdbde3a24f6
+DIST python-gentoo-patches-3.14.9.tar.xz 8432 BLAKE2B 33d7260c4e8257675989db5ec94c6553ffc9169ccdf5f989ca293483d3e1f019f5285c899e50beae66dbbdb260abca979aab159f28c40e13d55d5f3458387387 SHA512 a4effaafe1588c3e27c9b69db6a1e9ff5ffda7560ac2ac0ab64870aeab4761249f84cfb776cf7cb501e81d535f9cb672b9ea9e4488ffb9351780be2effc5c3db
DIST python-gentoo-patches-3.15.0.tar.xz 4624 BLAKE2B 844b76e97fe4564613e4a00d02f77b18ef63a1b731ee7112789f9067d973decbcab05aeca2da32945b2c1f03e81705e7b102d4281b43287db948a3483e702f35 SHA512 0b0df753ab876f579e59b351d72b80279562236a1f5b36016eff133e4e3a7bdac7705af53a2f3a8ec4a0836c9357ceb5ea236047e3b12ceedb8ed593267f6cfe
DIST python-gentoo-patches-3.15.0b3.tar.xz 3432 BLAKE2B 994e9339e00dfa4b40395e763f25dde4813d791151787028dafcf2e5159c38bbe88d4b56d07fc4c7454a09bd55edfda94b9cb8cf5c0ff0ffe7db4bb1a8eea8b6 SHA512 8c3a8dea43fc42179679b1f6811979dabb4e1c34821b4aecd894d661842df26e7592f5c74787157f36ccddf9ce233994c774fbe8381dc0ccaff3dfcff0c6c572
+DIST python-gentoo-patches-3.15.1.tar.xz 3432 BLAKE2B 0e054d03af93b778f3c2c81b05bcd302d37ebde076ac193f2bcf39a0c0d6c96e36181371628336b3c9391aea4058d4dbc85a4da9de12a946fcbcaa1b50bd34ef SHA512 ed9cd83e7f87058c5c6e82688206ca68594d4eb3ad39764e7680af2470e370e7cb5a36a7a860a00433e6fcaf9153b23ada2758ea0a1fdf5b90c8bc46c1cff8c6
diff --git a/dev-python/python-tests/python-tests-0.3.14.9.ebuild b/dev-python/python-tests/python-tests-0.3.14.9.ebuild
new file mode 100644
index 000000000000..5eb635e5eab7
--- /dev/null
+++ b/dev-python/python-tests/python-tests-0.3.14.9.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+VERIFY_SIG_METHOD=sigstore
+
+inherit python-r1 verify-sig
+
+REAL_PV=${PV#0.}
+MY_PV=${REAL_PV/_/}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 2-3)t
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/python-tests/python-tests-0.3.15.1.ebuild b/dev-python/python-tests/python-tests-0.3.15.1.ebuild
new file mode 100644
index 000000000000..f3a756fe9c02
--- /dev/null
+++ b/dev-python/python-tests/python-tests-0.3.15.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+VERIFY_SIG_METHOD=sigstore
+
+inherit python-r1 verify-sig
+
+REAL_PV=${PV#0.}
+MY_PV=${REAL_PV/_}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 2-3)t
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/python-tests/python-tests-3.13.17.ebuild b/dev-python/python-tests/python-tests-3.13.17.ebuild
new file mode 100644
index 000000000000..4f374a4aed58
--- /dev/null
+++ b/dev-python/python-tests/python-tests-3.13.17.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit python-r1 verify-sig
+
+MY_PV=${PV}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+ !<dev-lang/python-3.13.0_rc1_p3-r1:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ verify-sig? ( >=sec-keys/openpgp-keys-python-20260805 )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/python-tests/python-tests-3.14.9.ebuild b/dev-python/python-tests/python-tests-3.14.9.ebuild
new file mode 100644
index 000000000000..9f9623be450f
--- /dev/null
+++ b/dev-python/python-tests/python-tests-3.14.9.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+VERIFY_SIG_METHOD=sigstore
+
+inherit python-r1 verify-sig
+
+MY_PV=${PV/_/}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/python-tests/python-tests-3.15.1.ebuild b/dev-python/python-tests/python-tests-3.15.1.ebuild
new file mode 100644
index 000000000000..b7e5d0c7a099
--- /dev/null
+++ b/dev-python/python-tests/python-tests-3.15.1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+VERIFY_SIG_METHOD=sigstore
+
+inherit python-r1 verify-sig
+
+MY_PV=${PV/_}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/uv-build/Manifest b/dev-python/uv-build/Manifest
index 69bbc2faff51..a199ed0a136a 100644
--- a/dev-python/uv-build/Manifest
+++ b/dev-python/uv-build/Manifest
@@ -1,10 +1,2 @@
-DIST uv_build-0.11.25.tar.gz 404894 BLAKE2B 6922a5e91c5c657ca5ed90edb0250cbd7192d208cdc135d8c5de74c04de8b91c10d7c0d52d58224a6cb60c7114ecbdcbc2181ac18b0b69cf41d88fd007329a36 SHA512 9315f67c76004b6b45e08d8cad53e5ac4f04a2342e18768523e71f9dc2f7e81aec599f968983df3237d1ad3dc9b87b088f99d2ea79994543fa3623ab21ae5730
-DIST uv_build-0.12.13.tar.gz 424846 BLAKE2B 9fee11946f1067045349d28ba05b6dae8aaea430fdbbe19970c286d20f758d03343ed9a6afd2166f85ecfee3009fb66c7429f6ee8c58a6453e0203f2a3fca38a SHA512 77bf75208e6932b791b42d2a9dc199901a981d3ab8881e58cd5604e3207aef020538ff120770e0eb31646c1c0b7e972c816932c9d3bb0defc6b9583763607584
DIST uv_build-0.12.17.tar.gz 434807 BLAKE2B 8823907abc14637a684723b683284cc8b6a40b2467adbab74059b139388aeb1ff8870bdc09a497bad3e06af60c4e9c360c8d57cc6dd62e26e9239f4cf041f827 SHA512 a833a0578c6d543eabe51089d330f0d93d141bea5ff2bc1a194ad27a7ad4a1c7189321cdcf6012465b819bffd620affb42d4fb148bce69beeee0e32537a74668
-DIST uv_build-0.12.19.tar.gz 435379 BLAKE2B 4ded7941c9277d571757d9f49fcb124c931297bceeb9c8be168fb6a2e2bc28276d74fc377f06713058b8544d90060b4e3c6231add59687e7d0b2b0fb737e0fb9 SHA512 0a6909be77ba66d48d7b57aa6929c0448c50c9289804432c4aad058d58ea8d10a7f0ad5e1bacacde59e7d6d16758925dac3b52afb13fea3e08d9439612b2cc00
-DIST uv_build-0.12.23.tar.gz 437241 BLAKE2B 05e4750d1d540a81b36cefc7043b95ec188bdfb1096c20a9b446abb61e50ca5397bee8d121ca5aff06b3173abefdcfcb198dc1603a5878eccf9ed8bf1368546f SHA512 f9b1b74f89572fec3a36e6dab979ee64c7209c0483e531981908aeab18bf20618e441a8f150b4a0a5e6c2ad5cda39e34a604a40c1f2c39005c6f8185044fe401
-DIST uv_build-0.12.7.tar.gz 418759 BLAKE2B 94aa33b2644f849a686d80d7f7d365ca8433615d93f27209fca5b21747363cd349d11e887d090420102f06a49977ce963b8f19c24a4280bf82a09943ba08885b SHA512 135f845b3ee6d1925f740917f83f94ec1a7e95aab5ed2db0aa70516c712ab0a143a0e427d3c172fac0bb1fabaa9103718bb2a26c31c9a287e3af65ac0175a245
-DIST uv_build-0.12.9.tar.gz 423446 BLAKE2B 8f32f7527633f5853a11a0f798a2aa075f9e96c2b34144f986a639dbd042bac7c5e33853287ef43273352a3ee84da852062c42daead1f188281295b635694177 SHA512 3aa6ea5b4e60218e7cbc3c5ed8ff7fbeeace36eb0d2c75627fb7a0ce7c060e8d6405378e9713f7164319cce55dc96b1a335ccb3032cfc7e9e60e99862295e79e
-DIST uv_build-0.13.1.tar.gz 446632 BLAKE2B 543350d4a3d6ba53ea5d52f0f840245a6865f029a48f4f095d4d191b0ca502960526660f9255d60bb8e15b00c6daba9afbe7a8c19e61ca841fa5524a9b63c10b SHA512 42f4739a21e068af66b884a22f7fd57f278ebfe37a5561d5fdf95dc0c443456e5436a3ce49b26b96c70b7431c0422af37a33b529a0f6ab09e3ad108a9982350d
-DIST uv_build-0.13.3.tar.gz 464136 BLAKE2B 4bcffe9228283c2c6388627d9ded292855c506aebb97efae931a6aecafdd1c5a680dc65a47651496409dde59c896e846b76f5abf4d67e2483d024f5cd93e9ffa SHA512 2fc5b9fe0e23172636b2fb927634619f5b93f1e1173ae2a8ea3ce14b4194bd2dba7bf6da6e46723c90a945a47273b8e67114398bc958e94f68bc4895af7a6574
DIST uv_build-0.13.4.tar.gz 464427 BLAKE2B 899bd8d7628bc5a291a6f974e569484a61d1aff51745e004cb663167128470147f2dae454457e010fa495e9d9de19527e9185e90c88018e51b4352359ceca349 SHA512 2e74b38cd01468281f481fa3b1ea289e1d262986e97bf3bfd27812c08676825567c547144bc9ed090bede4eb8db3114e6e8330eeaf96a91602bdd5212ae76433
diff --git a/dev-python/uv-build/uv-build-0.11.25.ebuild b/dev-python/uv-build/uv-build-0.11.25.ebuild
deleted file mode 100644
index 9c07f3730a9f..000000000000
--- a/dev-python/uv-build/uv-build-0.11.25.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.12.13.ebuild b/dev-python/uv-build/uv-build-0.12.13.ebuild
deleted file mode 100644
index 65d94f2051ae..000000000000
--- a/dev-python/uv-build/uv-build-0.12.13.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/pyproject.toml.orig
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.12.19.ebuild b/dev-python/uv-build/uv-build-0.12.19.ebuild
deleted file mode 100644
index 65d94f2051ae..000000000000
--- a/dev-python/uv-build/uv-build-0.12.19.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/pyproject.toml.orig
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.12.23.ebuild b/dev-python/uv-build/uv-build-0.12.23.ebuild
deleted file mode 100644
index 65d94f2051ae..000000000000
--- a/dev-python/uv-build/uv-build-0.12.23.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/pyproject.toml.orig
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.12.7.ebuild b/dev-python/uv-build/uv-build-0.12.7.ebuild
deleted file mode 100644
index 3805a254cf46..000000000000
--- a/dev-python/uv-build/uv-build-0.12.7.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/pyproject.toml.orig
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.12.9.ebuild b/dev-python/uv-build/uv-build-0.12.9.ebuild
deleted file mode 100644
index 65d94f2051ae..000000000000
--- a/dev-python/uv-build/uv-build-0.12.9.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/pyproject.toml.orig
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.13.1.ebuild b/dev-python/uv-build/uv-build-0.13.1.ebuild
deleted file mode 100644
index 65d94f2051ae..000000000000
--- a/dev-python/uv-build/uv-build-0.13.1.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/pyproject.toml.orig
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.13.3.ebuild b/dev-python/uv-build/uv-build-0.13.3.ebuild
deleted file mode 100644
index 65d94f2051ae..000000000000
--- a/dev-python/uv-build/uv-build-0.13.3.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Maturin compiles uv-build executable for every impl, we do not want
-# that, so we use another backend. And since we use another backend,
-# why not dogfood it in the first place?
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="PEP517 uv build backend"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv-build/
-"
-
-LICENSE="|| ( Apache-2.0 MIT )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/uv-${PV}
-"
-BDEPEND="
- test? (
- app-arch/unzip
- dev-python/build[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # use the executable from dev-python/uv instead of building
- # a largely overlapping uv-build executable (at least for now)
- sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
-
- # replace the build-system section
- sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
- cat >> pyproject.toml <<-EOF || die
- [build-system]
- requires = ["uv_build<9999"]
- build-backend = "uv_build"
- backend-path = ["src"]
- EOF
-
- # rename to make uv-build find it
- mv python src || die
-}
-
-python_test() {
- "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
-
- local zip_result=$(
- unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
- )
- local zip_expected="\
-Archive: dist/uv_build-${PV}-py3-none-any.whl
- testing: uv_build/ OK
- testing: uv_build/__init__.py OK
- testing: uv_build/__main__.py OK
- testing: uv_build/py.typed OK
- testing: uv_build-${PV}.dist-info/ OK
- testing: uv_build-${PV}.dist-info/WHEEL OK
- testing: uv_build-${PV}.dist-info/METADATA OK
- testing: uv_build-${PV}.dist-info/RECORD OK
-No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
-"
- if [[ ${zip_result} != ${zip_expected} ]]; then
- eerror ".zip result:\n${zip_result}"
- eerror ".zip expected:\n${zip_expected}"
- die ".whl result mismatch"
- fi
-
- local tar_result=$(
- tar -tf "dist/uv_build-${PV}.tar.gz" || die
- )
- local tar_expected="\
-uv_build-${PV}/PKG-INFO
-uv_build-${PV}/pyproject.toml
-uv_build-${PV}/pyproject.toml.orig
-uv_build-${PV}/
-uv_build-${PV}/README.md
-uv_build-${PV}/src
-uv_build-${PV}/src/uv_build
-uv_build-${PV}/src/uv_build/__init__.py
-uv_build-${PV}/src/uv_build/__main__.py
-uv_build-${PV}/src/uv_build/py.typed\
-"
- if [[ ${tar_result} != ${tar_expected} ]]; then
- eerror ".tar.gz result:\n${tar_result}"
- eerror ".tar.gz expected:\n${tar_expected}"
- die ".tar.gz result mismatch"
- fi
-}
diff --git a/dev-python/uv-build/uv-build-0.13.4.ebuild b/dev-python/uv-build/uv-build-0.13.4.ebuild
index 65d94f2051ae..dd466669a80f 100644
--- a/dev-python/uv-build/uv-build-0.13.4.ebuild
+++ b/dev-python/uv-build/uv-build-0.13.4.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="|| ( Apache-2.0 MIT )"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index c4a745b045b1..7158f373e5c9 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -1,20 +1,4 @@
-DIST uv-0.11.25-crates.tar.xz 43779192 BLAKE2B ae9d16ba3f8a5a719b6f52980c3b8ce6f874494f861cdad065ead5f3a19b80794bc4dda451710f061b45bdaa05a5587aacb5a583d01dd7cb74d800be4d5e3293 SHA512 0dc611e6aef1fa0861fbc63eba94e588022cb3974aa788c3e595cea04adf0c4165316e6cacb8cf073acc22db84bc61da7de0218ac51665b0e6aa215b6a1cc1e8
-DIST uv-0.11.25.gh.tar.gz 5538598 BLAKE2B 47198e379339a963a90b394b29271e2b276ced739f4320daf279eabc53cd0bab1698a57f336ed3270a4b8f40fa4f6a8f8b201603ed3952d282d220b0e290418a SHA512 9b993ae026d55ee8dfe13101e0fdbe026d81b77ff42b20ad42ff72c9708f2d767cde94010e69cd4f65fa8821c43958bc665893761119770deba70823d895298c
-DIST uv-0.12.13-crates.tar.xz 44176012 BLAKE2B 5a2459d28a794edf2a049c973916c6af95984d7fd706b0c517ad58f0a964fd2fe7dde62e2b4fb7afd725fe9fdd144021713bbff779abdf9ebd9f14487a390cf0 SHA512 8960412783a8028b634f5b535577a97d13159e0d515f18c8092504934d55d3ebb93b8951469f34eddda33fd6e89542add3ea6ef4444e367828783237f2a732da
-DIST uv-0.12.13.gh.tar.gz 8784071 BLAKE2B afb0acdf733efe4937ba5e7a8ca5257e9f3c6651e13adf5b44e96985be9f0abebd2167aec84bf285385b8c984636c0c9ff0f4c6077188088cff27af40334fa78 SHA512 e8a03cde57914007d932c55d017be780a9aaeac62d1b5831a3fd62f8c44299d6c8bc01582eb3e6c06c92b3edfbd519e1ea4d8d95fbb2cd0bdffd85b1cd36a137
DIST uv-0.12.17-crates.tar.xz 43846848 BLAKE2B f899f093a14a7195cb93d81aa71c31d68f068050d5a3d7a299be166808ff7333e8b93884637649bcf219e2dbd3ae14f7bc68250c7249c3f9c07b5e794a88c3c0 SHA512 d3d33ea3e3fa1468442abf13afde74a6cbccb52a674086833f2075424a6c79eb75644d0fc411eae3b015eaad81d7612dbed1d8123ed05c79f8d9542beff187a7
DIST uv-0.12.17.gh.tar.gz 8706123 BLAKE2B e45aae4ea550252440e8f646a505ba4d295e1eafe94092798e79e5db26320dae4b899cc7d04d96387791996e55e4ced2cbcff6ffcd9edc056c9580f5e175751f SHA512 ae554aa9d096afa7e1c35a1e50ba11c0553cd182ba75e5dd425613add092d38c46b3cbd47b026f03674394d6d0852162d5953c4cacef511c7157378d1790b8a1
-DIST uv-0.12.19-crates.tar.xz 43866448 BLAKE2B be0edae4bf12216c1d8f7b14b987bc0f483afac80380b1425e8f153097aea5271fff65a56652c400df86181b4dce3c2b31151e97c22356d860b36d2473ff86b1 SHA512 26f88051220016fdbbd8261f74b8d752aa2ac75c31b96b361f3eb026e7bb5d1aaccfaa5be308b181838fbc1c917d55f051709f7e489748a02d3e5286ee1eb6d7
-DIST uv-0.12.19.gh.tar.gz 8735351 BLAKE2B ab7088dc33ec9ca571f599987ec379e66196d89566b88f410fb30aee8c9053a5c4f3dd844185bc4af6ca1b27b287621baf0bc25823a4f84c14cf7925a69c597f SHA512 2726729324c58d77d4b9b402b3ea465821d38642f5edb7294be3fbb509b51d53d0a5bfc8678521100c25abea7973cd7b1e48957c43b2d242039b6ff33106d4a1
-DIST uv-0.12.23-crates.tar.xz 43999028 BLAKE2B eab0cb19a8a778ce9bae824851609a3d8bfe82659cf73f9c7a475f0dfa063222eeba26c709985defad2a3c8b9e3d42f0a0755e038263df7fbab23f0b343afcab SHA512 d6f44f045ccdf77b57214614d168cad1fddf94a3ec506364eed9178c17488afbcd2ffb1660de1aeecd5d333bc7249cf093c0f214a14a85c9bbd2955fe1bc4015
-DIST uv-0.12.23.gh.tar.gz 8783832 BLAKE2B 8f41cb4a1d2075beca613d690c2a52e06d74fe3fac06e417875e23f9e6d7858cf05361c3dffe5f29f4ecf17d31d45aa8cd3c1f5ec7e481110bd0117369d6ac93 SHA512 a1d215d692fe391ba1de6fd9e9cf2d48031b1a97b4fa3aef58f5aff53df9d3df9ec1378db5e70693ba8e52e5d5479560af94802268dba54397d94ac9829a5df5
-DIST uv-0.12.7-crates.tar.xz 44143088 BLAKE2B 075113e8cbafd99a1c70c4ce53678f2ceb13ce31dc7cafb5773e32ae9dfa14144390380e0149219912a0c4b92e6d3b9d0a0a0016cdd4c69097bf75adf1b8a716 SHA512 f9dbdad7cbddd3238c7cc9fbcbec4e92fc8c8c66bc7247ccc8159bb186223c199e3bd411ad9148750ec1fa258775dcec1e2bb6bc3287fca7aeb6ffa7ba4d6b44
-DIST uv-0.12.7.gh.tar.gz 8659716 BLAKE2B ab7d74e16821dbbefeb247cf80926ae23f75b5f309a8864070b3a01344044a966f772685cb864470b4c30877f8e03715ec675b658862bd04906e740866ebffd1 SHA512 7f9bd1aef6c285aedd3fe588a5f70e0458f85f6db14f0368ea24c5524fd66990510e0d5624a7faf48091a3dc73ff66ac52ab9a6ed571a10cca272b9588fb1aff
-DIST uv-0.12.9-crates.tar.xz 44161200 BLAKE2B ef5f654005a5c074a2c251471bfe91db9e172b5733ede5e9b5f48a3464194f50e288aeb8afdbd2f0923106380812490bb800506c3c10dca916e994c2c6548a6c SHA512 26676348002e1c3ddfdc772ce6a429ab0d69fe7641a539dba2694a0e946c2f23789e5c8d6ceeaef407efbd20ec4b0fe889463d94c498514462bc19f0d85fff7d
-DIST uv-0.12.9.gh.tar.gz 8688302 BLAKE2B 0ec1ded90f77ad7b9eb0e0a5c8001b26e10b7485ffa6e709638130173ded90d92969a54f10a455e8a0c032d5872881a3f527a6d4b612d378f283349dea816cab SHA512 18d35675a3e15531a9542c951b265866da4b762e0f2ba91f66dcc8b55ba5352ec97638ee2dc7fd3a908639201b27a442112a75c67053f9d861840c041e0b5290
-DIST uv-0.13.1-crates.tar.xz 44234800 BLAKE2B 78e734286467404e4289cff568565e1ef16bf7b97eef5b01180dabca62bc8fd21bbd39b24f0fa40213b97c8a1e2a2733801c382bb271f8377f4688102c623da9 SHA512 a736dc50e05b52fed9379570415d1a18e32a3a1f23c8630af625677df73b7916ecf2f66d8b7c9d9281d1c37264e442bc16c382e0c5ea21b8be68f33a9d26e3f2
-DIST uv-0.13.1.gh.tar.gz 8877918 BLAKE2B 43c1726bf6b277b57d154a0bba917cd6762c5dd3e4fbc5293c49372725e12b6980ef34fc44013c68a0956fa9bde368d3a6f45c4e658f27fe98506f22c987a7f2 SHA512 de0bf17d6ddc081e2b3904ed04aeb6ab7e9745880dd2cf78fd9f70e01241d28701246bb2db2b524c76549a0a53af899ad291dec7e957c6a96a344c285c1c4e29
-DIST uv-0.13.3-crates.tar.xz 44006060 BLAKE2B f93beea37edc6642d352b1c497cdfbce32e2fc5d7606ebf648c9ad72b1c2a6bd000e9fe3f682794f54fa6c6968559351ddebe29ab4e1dbfc1555f401e0aa994f SHA512 d695cdc1090382cb559665e1c84f5d4f9cc7486437d0de2ac6c71669edc0bdbfa6181b617ca550b0f421ca33db7f308313b2527766f7435e4cf4f8481e769a77
-DIST uv-0.13.3.gh.tar.gz 8927836 BLAKE2B f6795d91b43ae3ea8c43b07027f8436c730476355c3e354ed72e9cb92c90e5a9d7480e4c3de008fd9ee317e5c03b257c1e9d6938af48706b530caf5c637a85c7 SHA512 7c91b766ef394fcdf562457516cb6556d29b3a25f84a52f00afd23a4c9399b74a65dec701b13fee06996b77bcec895278683ce1dc967961abd2d46228b8d34cd
DIST uv-0.13.4-crates.tar.xz 44003088 BLAKE2B 671f829d9f64a3f5aa2d1ec7e3f705eadb63529c43f65796a25ef0307f763ce4611f2ee41ee38ffeb19a2eac91d918129be4deb128c6a879c5bcd204862854ea SHA512 94d07b0fa8edbf6364366268be678055125e7baa854c8bc30aaf6721210fc63a1ef0dd5f07e0a511b2cd132f2fcf25690b6c2fa828b97b3893785ed18d40a51e
DIST uv-0.13.4.gh.tar.gz 8930524 BLAKE2B 6db88a4d14037a65f0c2f1a5e98a1a3a6c0697300906af3f753d7ce87320b4086067abe13a60fd335d713f427fc1e2bda7a4917eb1d985daf03aa795672eb188 SHA512 06bc16f6e10b31cbdf1265623990cfe52bc0e040a53edd63b952807b340aec274d412ff7f17111e235596c7f054186fb7024abb0e563f43abb03309df7070f8a
diff --git a/dev-python/uv/uv-0.11.25.ebuild b/dev-python/uv/uv-0.11.25.ebuild
deleted file mode 100644
index db64ed930c8c..000000000000
--- a/dev-python/uv/uv-0.11.25.ebuild
+++ /dev/null
@@ -1,163 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.94.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
- Unicode-DFS-2016 ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die
-
- # bzip2-sys requires a pkg-config file
- # https://github.com/alexcrichton/bzip2-rs/issues/104
- mkdir "${T}/pkg-config" || die
- export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
- cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
- Name: bzip2
- Version: 9999
- Description:
- Libs: -lbz2
- EOF
-
- # uv is now forcing bundled liblzma, sigh
- sed -i -e '/xz/s:"static"::' Cargo.toml || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-0.12.13.ebuild b/dev-python/uv/uv-0.12.13.ebuild
deleted file mode 100644
index 9826f9045941..000000000000
--- a/dev-python/uv/uv-0.12.13.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.96.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
- Unicode-DFS-2016 ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/zstd-sys-*/ -name '*.c' -delete || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
- # otherwise, rustc/llvm runs out of address space
- use arm && export RUSTFLAGS="${RUSTFLAGS} -Copt-level=0"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-0.12.17.ebuild b/dev-python/uv/uv-0.12.17-r1.ebuild
index 0f29cd7a6335..f8a3705fda1d 100644
--- a/dev-python/uv/uv-0.12.17.ebuild
+++ b/dev-python/uv/uv-0.12.17-r1.ebuild
@@ -147,5 +147,10 @@ src_install() {
#
# https://docs.astral.sh/uv/reference/settings/#python-preference
python-preference = "system"
+
+ # Always use system certificates.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#system-certs
+ system-certs = true
EOF
}
diff --git a/dev-python/uv/uv-0.12.19.ebuild b/dev-python/uv/uv-0.12.19.ebuild
deleted file mode 100644
index 9826f9045941..000000000000
--- a/dev-python/uv/uv-0.12.19.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.96.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
- Unicode-DFS-2016 ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/zstd-sys-*/ -name '*.c' -delete || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
- # otherwise, rustc/llvm runs out of address space
- use arm && export RUSTFLAGS="${RUSTFLAGS} -Copt-level=0"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-0.12.23.ebuild b/dev-python/uv/uv-0.12.23.ebuild
deleted file mode 100644
index 23228cc55439..000000000000
--- a/dev-python/uv/uv-0.12.23.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.97.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
- Unicode-DFS-2016 ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/zstd-sys-*/ -name '*.c' -delete || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
- # otherwise, rustc/llvm runs out of address space
- use arm && export RUSTFLAGS="${RUSTFLAGS} -Copt-level=0"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-0.12.7.ebuild b/dev-python/uv/uv-0.12.7.ebuild
deleted file mode 100644
index 4578f13dbce9..000000000000
--- a/dev-python/uv/uv-0.12.7.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.96.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
- Unicode-DFS-2016 ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/zstd-sys-*/ -name '*.c' -delete || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
- # otherwise, rustc/llvm runs out of address space
- use arm && export RUSTFLAGS="${RUSTFLAGS} -Copt-level=0"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-0.12.9.ebuild b/dev-python/uv/uv-0.12.9.ebuild
deleted file mode 100644
index 9826f9045941..000000000000
--- a/dev-python/uv/uv-0.12.9.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.96.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
- Unicode-DFS-2016 ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/zstd-sys-*/ -name '*.c' -delete || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
- # otherwise, rustc/llvm runs out of address space
- use arm && export RUSTFLAGS="${RUSTFLAGS} -Copt-level=0"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-0.13.1.ebuild b/dev-python/uv/uv-0.13.1.ebuild
deleted file mode 100644
index a8418c9a55d5..000000000000
--- a/dev-python/uv/uv-0.13.1.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.97.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
- Unicode-DFS-2016 ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/zstd-sys-*/ -name '*.c' -delete || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
- # otherwise, rustc/llvm runs out of address space
- use arm && export RUSTFLAGS="${RUSTFLAGS} -Copt-level=0"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-0.13.3.ebuild b/dev-python/uv/uv-0.13.4-r1.ebuild
index f2ffd74bfde2..92843ccbe947 100644
--- a/dev-python/uv/uv-0.13.3.ebuild
+++ b/dev-python/uv/uv-0.13.4-r1.ebuild
@@ -39,7 +39,7 @@ LICENSE+="
# ring crate
LICENSE+=" openssl"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 x86"
IUSE="test"
RESTRICT="test"
PROPERTIES="test_network"
@@ -152,5 +152,10 @@ src_install() {
#
# https://docs.astral.sh/uv/reference/settings/#python-preference
python-preference = "system"
+
+ # Always use system certificates.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#system-certs
+ system-certs = true
EOF
}
diff --git a/dev-python/uv/uv-0.13.4.ebuild b/dev-python/uv/uv-0.13.4.ebuild
deleted file mode 100644
index f2ffd74bfde2..000000000000
--- a/dev-python/uv/uv-0.13.4.ebuild
+++ /dev/null
@@ -1,156 +0,0 @@
-# Copyright 2024-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CRATES="
-"
-RUST_MIN_VER="1.97.0"
-
-inherit cargo check-reqs
-
-CRATE_PV=${PV}
-DESCRIPTION="A Python package installer and resolver, written in Rust"
-HOMEPAGE="
- https://github.com/astral-sh/uv/
- https://pypi.org/project/uv/
-"
-# pypi sdist misses scripts/, needed for tests
-SRC_URI="
- https://github.com/astral-sh/uv/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
- "
-fi
-
-# most of the code
-LICENSE="|| ( Apache-2.0 MIT )"
-# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
- CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016
- ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
-IUSE="test"
-RESTRICT="test"
-PROPERTIES="test_network"
-
-DEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
-"
-RDEPEND="
- ${DEPEND}
-"
-# git/curl: https://bugs.gentoo.org/984287
-BDEPEND="
- virtual/pkgconfig
- test? (
- dev-lang/python:3.9
- dev-lang/python:3.10
- dev-lang/python:3.11
- dev-lang/python:3.12
- dev-lang/python:3.13
- !!~dev-python/uv-0.5.0
- || (
- >=dev-vcs/git-2.57
- <net-misc/curl-8.23
- )
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/.*"
-
-check_space() {
- local CHECKREQS_DISK_BUILD=3G
- use debug && CHECKREQS_DISK_BUILD=9G
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- rust_pkg_setup
-}
-
-src_prepare() {
- default
-
- # force thin lto, makes build much faster and less memory hungry
- # (i.e. makes it possible to actually build uv on 32-bit PPC)
- sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
-
- # enable system libraries where supported
- export ZSTD_SYS_USE_PKG_CONFIG=1
- # TODO: unbundle tikv-jemalloc-sys?
-
- # remove unbundled sources, just in case
- find "${ECARGO_VENDOR}"/zstd-sys-*/ -name '*.c' -delete || die
-}
-
-src_configure() {
- local myfeatures=(
- test-git
- test-pypi
- test-python
- )
-
- cargo_src_configure --no-default-features
- # otherwise, rustc/llvm runs out of address space
- use arm && export RUSTFLAGS="${RUSTFLAGS} -Copt-level=0"
-}
-
-src_compile() {
- cd crates/uv || die
- cargo_src_compile
-}
-
-src_test() {
- cd crates/uv || die
- cargo_src_test --no-fail-fast
-}
-
-src_install() {
- dobin "$(cargo_target_dir)"/{uv,uvx}
-
- insinto /etc/xdg/uv
- newins - uv.toml <<-EOF || die
- # These defaults match Fedora, see:
- # https://src.fedoraproject.org/rpms/uv/pull-request/18
-
- # By default ("automatic"), uv downloads missing Python versions
- # automatically and keeps them in the user's home directory.
- # Disable that to make downloading opt-in, and especially
- # to avoid unnecessarily fetching custom Python when the distro
- # package would be preferable. Python builds can still be
- # downloaded manually via "uv python install".
- #
- # https://docs.astral.sh/uv/reference/settings/#python-downloads
- python-downloads = "manual"
-
- # By default ("managed"), uv always prefers self-installed
- # Python versions over the system Python, independently
- # of versions. Since we generally expect users to use that
- # to install old Python versions not in ::gentoo anymore,
- # this effectively means that uv would end up preferring very
- # old Python versions over the newer ones that are provided
- # by the system. Default to using the system versions to avoid
- # this counter-intuitive behavior.
- #
- # https://docs.astral.sh/uv/reference/settings/#python-preference
- python-preference = "system"
- EOF
-}
diff --git a/dev-python/uv/uv-9999.ebuild b/dev-python/uv/uv-9999.ebuild
index 41ccbf53c421..39494142acfd 100644
--- a/dev-python/uv/uv-9999.ebuild
+++ b/dev-python/uv/uv-9999.ebuild
@@ -128,5 +128,10 @@ src_install() {
#
# https://docs.astral.sh/uv/reference/settings/#python-preference
python-preference = "system"
+
+ # Always use system certificates.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#system-certs
+ system-certs = true
EOF
}
diff --git a/dev-qt/qtwebengine/files/qtwebengine-6.11.2-CVE-2026-111943.patch b/dev-qt/qtwebengine/files/qtwebengine-6.11.2-CVE-2026-111943.patch
new file mode 100644
index 000000000000..459214b91b67
--- /dev/null
+++ b/dev-qt/qtwebengine/files/qtwebengine-6.11.2-CVE-2026-111943.patch
@@ -0,0 +1,44 @@
+Patch status: fixed in >=chromium-158.0.8115.0
+
+https://bugs.gentoo.org/984633
+https://bugs.gentoo.org/984601
+https://crrev.com/da63b94c4ee231a3f89ecec37c58db6486afaf14
+--- a/src/3rdparty/chromium/net/cert/cert_verify_proc_blocklist.inc
++++ b/src/3rdparty/chromium/net/cert/cert_verify_proc_blocklist.inc
+@@ -396,4 +396,36 @@
+ 0xda, 0xe6, 0xab, 0x8d, 0xd0, 0xf4, 0x8e, 0xe0, 0x6d, 0x17, 0x4d,
+ 0xa1, 0x0c, 0x40, 0x4a, 0xc0, 0x01, 0x43, 0xc7, 0xa7, 0x49},
++ // 0164d7ceae5bb909c272af151ff44b1177ae9b47d9424b94f1d9558c30934d19.pem
++ {0x49, 0xdd, 0x35, 0x3d, 0xc2, 0xb9, 0x19, 0xa3, 0x77, 0x06, 0x45,
++ 0x11, 0x7d, 0x0e, 0x60, 0xc1, 0x61, 0x15, 0xe7, 0xd1, 0xbc, 0x25,
++ 0x9e, 0xef, 0xe7, 0x34, 0xb0, 0x0e, 0xa4, 0x34, 0xfe, 0x5f},
++ // 42c4accd12c4f59597925e1a08a7a90102608543809308d50ec427e118ba1493.pem
++ {0xeb, 0xed, 0x64, 0x75, 0xc2, 0xc2, 0xd8, 0x0f, 0xcb, 0x19, 0x9f,
++ 0x3f, 0xe8, 0xdd, 0x6e, 0x6b, 0x3c, 0xe6, 0x0b, 0x77, 0xeb, 0x15,
++ 0xd4, 0xe4, 0x2c, 0x3d, 0xec, 0x0c, 0x6f, 0x5b, 0x51, 0x05},
++ // 432ec25f0d28de9006d97bf752f17bbb2cd41f669933fcb072d9a1148d0261f3.pem
++ {0x5c, 0x06, 0x60, 0xa2, 0xb1, 0x64, 0x91, 0x0d, 0x8f, 0xf5, 0x89,
++ 0xc1, 0x8e, 0x14, 0x55, 0x2e, 0x9e, 0x0e, 0xc2, 0x37, 0xdc, 0xef,
++ 0xe2, 0xcb, 0x73, 0x6d, 0x41, 0xa4, 0x81, 0x1f, 0x81, 0xa0},
++ // 98b896625c0c230adeec3eb2cf6aad5001ecf9156a68644e82374ce5833bc25b.pem
++ {0x43, 0xbf, 0xfa, 0x19, 0xd6, 0xef, 0x65, 0x14, 0x51, 0xf6, 0x84,
++ 0x1e, 0x01, 0x99, 0x31, 0xe9, 0x6f, 0x6f, 0x2e, 0xae, 0xff, 0x28,
++ 0xab, 0x4b, 0x6f, 0x1c, 0xe4, 0x57, 0x6d, 0xe2, 0x71, 0x7b},
++ // cb6e15165ac802e9b3f993f16c25d41f4e81c21ebde71ae1b012ac00bf9c7c3f.pem
++ {0x63, 0xec, 0xef, 0xee, 0x43, 0x1d, 0x49, 0x52, 0x3b, 0xc1, 0x13,
++ 0x6c, 0x4e, 0x72, 0xd0, 0x20, 0x6a, 0x47, 0x70, 0x86, 0xca, 0xf6,
++ 0x06, 0xcd, 0x5c, 0xf0, 0x25, 0x68, 0x6c, 0x10, 0x9c, 0xf8},
++ // e7568fe6e12331f4fd7de61da4c7559d0f8eb192a218d4741a3ba75184333838.pem
++ {0xe0, 0x25, 0x4c, 0x7f, 0xcd, 0xc2, 0x65, 0xe2, 0xf0, 0xf8, 0xa4,
++ 0x28, 0xda, 0xbb, 0x75, 0xab, 0x4a, 0xe0, 0x39, 0xb4, 0x87, 0x2d,
++ 0x62, 0xf5, 0xee, 0x57, 0xf0, 0x87, 0x7d, 0x5a, 0x8a, 0x41},
++ // 4b2460a466f95fd40113bcdcca2ceb29b3b093921de45474da7df48874c630b1.pem
++ {0x92, 0xc0, 0x63, 0xd6, 0x7e, 0x8f, 0x14, 0xdb, 0x71, 0xd2, 0x88, 0xe1,
++ 0x12, 0x66, 0xff, 0xda, 0xf6, 0x9c, 0xbf, 0x11, 0x5f, 0x7b, 0xab, 0x14,
++ 0xf3, 0xbc, 0x2f, 0x68, 0xd2, 0x5e, 0x0e, 0x30},
++ // 9e39de2881273acc225a149c72ba3e0f51424963669ab633ee1dc7df5db067b4.pem
++ {0xec, 0x4f, 0xfa, 0x1a, 0xd0, 0xac, 0x88, 0x08, 0x13, 0x14, 0xb7, 0xaa,
++ 0xff, 0xef, 0x6a, 0x91, 0xf9, 0x7c, 0xd5, 0x72, 0x91, 0xbb, 0x5b, 0xa6,
++ 0x86, 0xc5, 0x41, 0x5f, 0x5e, 0xb4, 0xf6, 0xb6},
+ };
+
diff --git a/dev-qt/qtwebengine/files/qtwebengine-6.11.2-QTBUG-149946.patch b/dev-qt/qtwebengine/files/qtwebengine-6.11.2-QTBUG-149946.patch
new file mode 100644
index 000000000000..7c0bfad44228
--- /dev/null
+++ b/dev-qt/qtwebengine/files/qtwebengine-6.11.2-QTBUG-149946.patch
@@ -0,0 +1,21 @@
+Patch status: fixed in >=qtwebengine-6.11.3 (incl. 6.140.0)
+
+https://bugs.gentoo.org/984271
+https://qt-project.atlassian.net/browse/QTBUG-149946
+https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/768932
+--- a/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc
++++ b/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc
+@@ -167,5 +167,5 @@
+ }
+
+- registrar(standard_name, canonical_name.Ascii().c_str());
++ registrar(standard_name, standard_name);
+
+ UErrorCode error = U_ZERO_ERROR;
+@@ -179,5 +179,5 @@
+ DCHECK(U_SUCCESS(error));
+ if (U_SUCCESS(error) && alias != standard_name && IncludeAlias(alias)) {
+- registrar(alias, canonical_name.Ascii().c_str());
++ registrar(alias, standard_name);
+ }
+ }
diff --git a/dev-qt/qtwebengine/qtwebengine-6.11.2.ebuild b/dev-qt/qtwebengine/qtwebengine-6.11.2-r1.ebuild
index cd2f633a030b..07f05ed14269 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.11.2.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.11.2-r1.ebuild
@@ -113,6 +113,8 @@ PATCHES+=(
"${FILESDIR}"/${PN}-6.11.1-musl-missing-includes.patch
"${FILESDIR}"/${PN}-6.11.1-musl-arm64-mte.patch
"${FILESDIR}"/${PN}-6.11.2-libcxx23.patch
+ "${FILESDIR}"/${PN}-6.11.2-CVE-2026-111943.patch
+ "${FILESDIR}"/${PN}-6.11.2-QTBUG-149946.patch
)
python_check_deps() {
diff --git a/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild
index f796b758c82c..307666a3dde3 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.11.9999.ebuild
@@ -109,6 +109,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} )
PATCHES+=(
# add extras as needed here, may merge in set if carries across versions
+ "${FILESDIR}"/${PN}-6.11.2-CVE-2026-111943.patch
)
python_check_deps() {
diff --git a/dev-qt/qtwebengine/qtwebengine-6.140.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-6.140.9999.ebuild
index d1d43b427917..77eaf9370a35 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.140.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.140.9999.ebuild
@@ -111,6 +111,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} )
PATCHES+=(
# add extras as needed here, may merge in set if carries across versions
+ "${FILESDIR}"/${PN}-6.11.2-CVE-2026-111943.patch
)
python_check_deps() {
diff --git a/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild
index d1d43b427917..77eaf9370a35 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild
@@ -111,6 +111,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} )
PATCHES+=(
# add extras as needed here, may merge in set if carries across versions
+ "${FILESDIR}"/${PN}-6.11.2-CVE-2026-111943.patch
)
python_check_deps() {
diff --git a/dev-texlive/texlive-binextra/texlive-binextra-2026_p77772.ebuild b/dev-texlive/texlive-binextra/texlive-binextra-2026_p77772-r1.ebuild
index d6414702d1cb..529e5815d33e 100644
--- a/dev-texlive/texlive-binextra/texlive-binextra-2026_p77772.ebuild
+++ b/dev-texlive/texlive-binextra/texlive-binextra-2026_p77772-r1.ebuild
@@ -221,6 +221,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
COMMON_DEPEND="
>=dev-texlive/texlive-basic-2026
"
+# dev-perl/* for latexindent
RDEPEND="
${COMMON_DEPEND}
>=app-text/dvisvgm-3.6
@@ -228,6 +229,10 @@ RDEPEND="
>=dev-tex/bibtexu-3.72
>=dev-tex/latexdiff-1.4.0
>=dev-tex/latexmk-4.88
+ dev-perl/File-HomeDir
+ dev-perl/Log-Dispatch
+ dev-perl/Unicode-LineBreak
+ dev-perl/YAML-Tiny
"
DEPEND="
${COMMON_DEPEND}
diff --git a/dev-util/codex/Manifest b/dev-util/codex/Manifest
index 6571b3749506..31e43347236b 100644
--- a/dev-util/codex/Manifest
+++ b/dev-util/codex/Manifest
@@ -1,12 +1,9 @@
DIST cloudflare-zlib-sys-0.3.6.crate 147199 BLAKE2B b7089d328048b838fd9003f14cd9bddb720507a3426bd3a99ab70aa32dabee44078d6e9f9cc0171d7674ebf084fdd60776063e6976d5bd9ae61b2943c94c00d1 SHA512 c0064ab7dda47088450b3abd0ac12981e1db44564e7acf03af0836f9a9c54310cac5f93dd0cbc64c32749ea9cfe899ead81533f630dd00f5e29e9c6ef7150e6e
-DIST codex-0.157.0.tar.gz 16112186 BLAKE2B 10bd25c71650418e8b0dbd21b9903ccf474e52ea002c959adba99e929293acdef35290ce73f7c794ebb180a821a30943e79c2d002c10df32f8251a7c280b2ae9 SHA512 9d74ac25bbf53b755b9131f41e2048c06e6a78499f61dc942630511f6ff26da0fa12a0aa72f0c3813915a98bb9de20901d2549d2c09425d570655d209e36ffbc
-DIST codex-0.160.0.tar.gz 16677782 BLAKE2B 426ee2ecddf9ed54f36ade4350cb0961d0ca612caf54054f6803c4135f86395f25fd48f1b3701d55bc1a361903a11d71d5a6fdbb690070a34e9e1293a021df79 SHA512 f0b44cff050e8f665a4019c6cb20923dbafb9ae93dec4ae52595c1406962db77d23006c4a655291bfd175278a94e89366cc79e79847c8e15d5c6779b76393fd1
DIST codex-0.162.0.tar.gz 17185464 BLAKE2B 598d6225e1771f3613b0a9a78966e1a362fd1e9ad7e1e20a39e3f3df66bdf0fe5e5fd8c2f426464a50bb5bcad0308d9db761f56c492f5599aad7a87c2947225c SHA512 a83fb429657816e7e3eb81220b139988bbd884343c72cb53244dbac60ff9478bdd44781f262e2e749ed38004806eb23fa5782949e07c70cd2e802cfc67af7a46
-DIST codex-rust-v0.157.0-crates.tar.xz 157554932 BLAKE2B 97eed631134b7a03e2923f1a1a8548d1c746e8b24f43fe352fc47b27a2c02de15ad676939976eefb515786fa314cc6f0499dc46fc6e3559c13a4dea0fd7c21ba SHA512 9fb979c584745cf77c99638f83465a953ee100aff8c048700318d09bbd6105d0c25b8eeefd9b9dc5bd414370591d0f6acc89c9d4f5d0a262bb6424532aea4c6d
-DIST codex-rust-v0.160.0-crates.tar.xz 157575148 BLAKE2B 604051f98230a239a8f7a25b100cdbb70a36a7c2cc76881e776a530a747ddd377c3b72d6a775157f5a61a7fb2c4dbf54ab017550bd78ec937ff72612203f4963 SHA512 e0c76be465c904edd8acb07235ec645b71c816be62195f4ff4f9d9150638800fe67dfed1a0ec30df356bd60dc152505924798c599ea94177ee0a7d7eca5cfbf4
+DIST codex-0.163.0.tar.gz 17505520 BLAKE2B 07894bdcc675592346acfc71998ac31cba847c4816cb6f0d85b451006cc1576ad2c1c4531d3cd85c31e18b40ecd74422a2a64c80654e11d5b4aa3c85141f68aa SHA512 5ae2a24f1d359b4ba0ad782c362c7a84bbb436f8f4a6e920338db9d095a469f28fa51e01002dfe79478a06565a93dd750881e5784cc9ff9ae31a0081aee975ec
DIST codex-rust-v0.162.0-crates.tar.xz 158312872 BLAKE2B 28c01090275034d0ea5dc1178775970ff7f1ab79b77b1e583114824ed031e895ddb5e719e2a2a937e48378b66c48b45e61559cdee0d8f8f945b41202c269a603 SHA512 4af40e540fd92c972742a600d345f752afd584686ccec43c5a8e692c8f2821d797c223a72a4b5104c68b0e65f2c4c3845d0578475cb31ba4a77a119a2075b28f
+DIST codex-rust-v0.163.0-crates.tar.xz 158329364 BLAKE2B e4f131dd59982013715ed9d88d155399b10d21ab6fef247b05c8de04583c57db16621b67644a58f366d36c20d8867499f05d5f232f8f53718eb1ab181e992a86 SHA512 be2fd2e614799d537e832467c2230874ff443c69944ff435e3c32b512cff08f7d284ba91bae57208d65856c72931b01d805845f1978a134b7a9504563c49ebb1
DIST crossterm-ed1cdab335221515706178d68495bba2aed1924f.gh.tar.gz 162382 BLAKE2B 6611cdebbdce8f8b0795f344d1826bc17a6b06b8a24754a0c3db5e85acb1c38aab29624d4c7e59eba1d75da602be7eff4509bd251ba9c9df752a923b1356167b SHA512 960fc78854343bb811d6811e628575c6bbd01e24416613d2ee4fc695016031c5a87cf0da31c53a04fada1582b7447d1128a1c645e311c3d157a09e256f3790ee
-DIST crossterm-efa177859fd9623d57b9fe7ae9bf491ae1ac6ec4.gh.tar.gz 145349 BLAKE2B c75ce5f67f7d0040f183a32cd1d8420a307e2acf11de9163a0c69fbd788de34452dcc48b160b2cf15d64c971634f7fe93a50127582aaac14d70373a4b68324f4 SHA512 6aedeb88d51e59db101aa37a0f3b77f24f4a251e3a3da533c32c6919102b93ff02cdcb4b37b3eeb7407debf1c970c51e6f05bf0baa0eb206497a33c6c9e68895
DIST h3-e07e69412876f7e26f026bd75a48b2704d8c8283.gh.tar.gz 244832 BLAKE2B bea2d550925b09b3fd0a33aef734a26a7457d91dc0a89fe72cd6de684dd2f2a37de5ac615691e7d92cc47fa7aaad4ab13c253dd30eaa3287f7d62e139f77d07a SHA512 9dc2589b2ea013f6bb79c05fb515fdf236834116241ecb33c783b64102e3904c11beea7d75ad12d3fd48b66276387da96c162657010292eae5a8c84260ef94d2
DIST libz-ng-sys-1.1.16.crate 478122 BLAKE2B 7c1be97251029732cd3a8c77dad8a492193282b5fddf40df480ef3a35a49f5d25c7dc183d81aa267722276156c8b97243742117686d078f2d3a566546fa83d58 SHA512 c7d1b062a06b283ee2d398ff456f13634ed1d2d436ea2b8a55f19fbbad47bc419e068b0f9e805221321062b8c5ad309dd3e5d466741780549ae3e5299eee06e1
DIST libz-sys-1.1.20.crate 830422 BLAKE2B 26265b1faf04f7d0cfd751ddf003585b1be59fcf8fde3ddfd86f18cc3e2d5c3b62a808f47c01329a57759d14fe6283cd94a72eda46d5c5031249df0f1696ab03 SHA512 9b537e7c01553e782be145223c6d174601ade3a950bfd0eb4ea09658da5b8910cf0d0c5984672f9d198f73d5aa63d21e0c20c4c44ff7d0a017ee11ae4ecf4859
@@ -14,6 +11,7 @@ DIST mxc-6cd3d58f05d3447e67109cfb75e042803b843ca4.gh.tar.gz 5985947 BLAKE2B f2c4
DIST nucleo-4253de9faabb4e5c6d81d946a5e35a90f87347ee.gh.tar.gz 86782 BLAKE2B a812a2d2f08df818ac7b13b800f51c4229ea1f968668b1224fbc1fd82fb4e045f6b2c536ec6d2647a579097efbddaf041f4b7b356107679156aaa3ca5a9d4068 SHA512 354061278efce55defb30b9ee2ef5cdab745ab56d7d113f6f47a8ac174b4215ec6efe15c15bef0e3d907350182c0d189071e9d7d17d40e807d4db5361682f4e0
DIST rules_rust-b56cbaa8465e74127f1ea216f813cd377295ad81.gh.tar.gz 3951333 BLAKE2B e369b7ccc25326726340fced4c8f8f9181f02f45be9d5f24d00201999a2b11c42d010e7623429b1910db7fdfdf4c202e061a5ba5db722d3126ee26d9597d7e0d SHA512 3f2ef3d7940096fa34b85ee0d9979085fe99c7d2ae8c5ed9399bd5cf8370a31fa93d16c752f22166b42d30c2b7f9f921f7a963928519592e3ffd588644d3b1c7
DIST rust-sdk-3e636cab26c013eca5131103c03d20237f12c4df.gh.tar.gz 711661 BLAKE2B b7b03cfc9f5c5bb063d8d40eadb7f294acc77b52c577e4a6f1837c21c282d87dd77832771e0a7d13f7e1e62cac96b86d04747057670b64f46832fd1b3eca3d21 SHA512 8e8cb7302c81c4e8e3b05fb95ac8cc43e28fdd168a4625847aca550631413af17e1296ff433824e533074cf41c03eba29e6c56d80b81cf9ecdc1631b72e732ed
+DIST rust-sdk-4048ac40e958fb1a7d614617a2ae8d26666ee2fa.gh.tar.gz 741132 BLAKE2B 282c360ef618299529c285d92dc586e4af890a842092766bcaff9dd487198122ee320070a5b68df5ea5bf1d9acbc3d5639d6b715ecb0419b61ed4a1ac9b78723 SHA512 d01b0cd0814abedfcd71e8b6fd5365af305da1547cbef009e9da043a6259d79fcfd45a1a78db8956a20763d72e878bd1dfe56e93b73836807a83a59c3b1c3601
DIST rusty_v8_150.4.0_librusty_v8_ptrcomp_sandbox_release_aarch64-unknown-linux-musl.a.gz 28897449 BLAKE2B ff719ae67fb52adbe51ac310aa56d059cdd81b466f0e3cc056367888257df306c0554773e2474f2e6438ab2c0e3c29bd039fb1e083f695164cb4db3c22a60cc0 SHA512 5a858b6eea1080cf1182caef98c58ccb62c44a52969e5e3409b2b9a9fb2adc2e2b98273195328e4608d4027b80ea1fc6eea286ba53b9796eab46dbe998213784
DIST rusty_v8_150.4.0_librusty_v8_ptrcomp_sandbox_release_x86_64-unknown-linux-musl.a.gz 29557041 BLAKE2B eb2a923086cf66e6c9d3322889f3e9dbbd6cba2b70aff1ecc5bfd3954ffd24a1eb079a1ce4f2852c54a03270919c93617dac479259bc0a9fefaa04f6f12a2806 SHA512 a29c010e56a64a9abcca01606bae1961c74fe8be38eed73c3ef6670013d8998f0c9e806ef00c46dc33cc38dff72d8941a4cfe8a984113134b841aa2404972ede
DIST rusty_v8_150.4.0_src_binding_ptrcomp_sandbox_release_aarch64-unknown-linux-musl.rs 39884 BLAKE2B b21381b7f09d0205455ba541b2a38ff79b9535c4b8436b309f39f4b40d819e604b3689298ae81deb00c07a12a21ef0fd1bd0bbddb196d63f24d8621ace7165c1 SHA512 4ebc8dfb8b87fb6e1b39a67582e4690278ebcadf8a18314f642fd6658e2b5706a7acbbd52ab1899d985700a8e886dda6a601a29d977bdfcc9da46209b1a90571
diff --git a/dev-util/codex/README.md b/dev-util/codex/README.md
index 85276ef79cef..1e4eecdd516e 100644
--- a/dev-util/codex/README.md
+++ b/dev-util/codex/README.md
@@ -1,6 +1,7 @@
# Codex daemon upgrades
-`codex-0.162.0-r1.ebuild` adds the post-install daemon update. Keep its
+`codex-0.163.0.ebuild` retains the post-install daemon update introduced in
+`codex-0.162.0-r1.ebuild`. Keep its
`pkg_postinst` function when bumping versions; upgrading `/usr/bin/codex` alone
does not replace an existing managed background-server package.
@@ -18,14 +19,14 @@ The ebuild does not install a complete standalone package, so `--from-cli`
cannot be used. Override `CODEX_DAEMON_HOME` in `make.conf` for another shared
home, or set `CODEX_DAEMON_AUTO_UPDATE="no"` to disable this hook.
-The matching revision is available immediately in the local personal overlay.
-This source revision enters srcux through its normal publication process;
-published release trees have not been edited.
+Keep the versioned recipe in this distribution authoring tree and the local
+personal overlay consistent. Publish source updates through Crucible's normal
+checked workflow; do not edit generated release trees.
```sh
-emerge --pretend --oneshot '=dev-util/codex-0.162.0-r1::personal'
+emerge --pretend --oneshot '=dev-util/codex-0.163.0::personal'
bash /var/git/repos/personal/dev-util/codex/tests/test-postinst.bash \
- /var/lib/crucible/repos/srcux/sources/distribution/dev-util/codex/codex-0.162.0-r1.ebuild
+ /var/lib/crucible/repos/srcux/sources/distribution/dev-util/codex/codex-0.163.0.ebuild
CODEX_HOME=/var/lib/ai/codex/.codex codex app-server daemon version
```
@@ -41,3 +42,9 @@ directory to be changed from workbench ownership to `root:root`, mode `0700`.
After that correction, CLI and server both reported 0.162.0. Do not change
ownership automatically in the ebuild; another user's daemon needs its own
permissions.
+
+For 0.163.0, `rmcp` and `rmcp-macros` use upstream lockfile revision
+`4048ac40e958fb1a7d614617a2ae8d26666ee2fa`. The other Git pins, Rust 1.95.0
+minimum, and V8 150.4.0 sandbox/pointer-compression assets remain unchanged.
+Every bump must check all Git pins against the new lockfile; changing only the
+ebuild filename does not update them.
diff --git a/dev-util/codex/codex-0.163.0.ebuild b/dev-util/codex/codex-0.163.0.ebuild
new file mode 100644
index 000000000000..1baaed744e46
--- /dev/null
+++ b/dev-util/codex/codex-0.163.0.ebuild
@@ -0,0 +1,213 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# NOTE: This package uses a pre-built crate tarball instead of listing individual
+# crates in CRATES="". This approach is required because:
+# 1. Codex has 800+ crate dependencies, which triggers Portage QA warnings:
+# "QA Notice: This package uses a very large number of CRATES. Please provide
+# a crate tarball instead and fetch it via SRC_URI."
+# 2. Stricter ebuild QA checks (e.g., in CI pipelines) fail with too many crates.
+#
+# The crate tarball is auto-generated by GitHub Actions at:
+# https://github.com/gentoo-zh-drafts/codex/
+# Workflow source code for auditing:
+# https://github.com/gentoo-zh-drafts/codex/blob/crate-dist/.github/workflows/crates.yml
+# This allows anyone to review and verify the crate packaging process.
+
+CRATES="
+ cloudflare-zlib-sys@0.3.6
+ libz-ng-sys@1.1.16
+ libz-sys@1.1.20
+"
+
+declare -A GIT_CRATES=(
+ [appcontainer_common]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/backends/appcontainer/common'
+ [crossterm]='https://github.com/openai-oss-forks/crossterm;ed1cdab335221515706178d68495bba2aed1924f;crossterm-%commit%'
+ [h3]='https://github.com/hyperium/h3;e07e69412876f7e26f026bd75a48b2704d8c8283;h3-%commit%/h3'
+ [h3-quinn]='https://github.com/hyperium/h3;e07e69412876f7e26f026bd75a48b2704d8c8283;h3-%commit%/h3-quinn'
+ [learning_mode_core]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/core/learning_mode_core'
+ [learning_mode_windows]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/backends/learning_mode/windows'
+ [mxc_config_contract]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/core/mxc_config_contract'
+ [mxc_telemetry]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/mxc_telemetry'
+ [process_security_environment_spec]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/core/generated/process_security_environment_specification'
+ [nucleo-matcher]='https://github.com/helix-editor/nucleo;4253de9faabb4e5c6d81d946a5e35a90f87347ee;nucleo-%commit%/matcher'
+ [nucleo]='https://github.com/helix-editor/nucleo;4253de9faabb4e5c6d81d946a5e35a90f87347ee;nucleo-%commit%'
+ [rmcp]='https://github.com/modelcontextprotocol/rust-sdk;4048ac40e958fb1a7d614617a2ae8d26666ee2fa;rust-sdk-%commit%/crates/rmcp'
+ [rmcp-macros]='https://github.com/modelcontextprotocol/rust-sdk;4048ac40e958fb1a7d614617a2ae8d26666ee2fa;rust-sdk-%commit%/crates/rmcp-macros'
+ [sandbox_spec]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/core/generated/base_container_specification'
+ [runfiles]='https://github.com/dzbarsky/rules_rust;b56cbaa8465e74127f1ea216f813cd377295ad81;rules_rust-%commit%/rust/runfiles'
+ [tokio-tungstenite]='https://github.com/openai-oss-forks/tokio-tungstenite;0e5b2d73aa18dd9f0a50ee9ff199d5aef7594186;tokio-tungstenite-%commit%'
+ [tungstenite]='https://github.com/openai-oss-forks/tungstenite-rs;4fffad30fe373adbdcffab9545e9e9bf4f2fc19f;tungstenite-rs-%commit%'
+ [wxc_common]='https://github.com/microsoft/mxc;6cd3d58f05d3447e67109cfb75e042803b843ca4;mxc-%commit%/src/core/wxc_common'
+)
+
+RUST_MIN_VER="1.95.0"
+
+# python3 .github/scripts/rusty_v8_bazel.py resolved-v8-crate-version
+RUSTY_V8_TAG="150.4.0"
+
+inherit cargo check-reqs toolchain-funcs
+
+CHECKREQS_MEMORY="15G"
+CHECKREQS_DISK_BUILD="20G"
+
+DESCRIPTION="Codex CLI - OpenAI's AI-powered coding agent"
+HOMEPAGE="https://github.com/openai/codex"
+
+# The crate tarball URL uses ${PV} so it auto-updates when bumping versions.
+# This tarball is generated by: https://github.com/gentoo-zh-drafts/codex/
+# See .github/workflows/crates.yml for the generation process.
+SRC_URI="
+ https://github.com/openai/${PN}/archive/rust-v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/gentoo-zh-drafts/codex/releases/download/rust-v${PV}/codex-rust-v${PV}-crates.tar.xz
+ amd64? (
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/librusty_v8_ptrcomp_sandbox_release_x86_64-unknown-linux-musl.a.gz
+ -> rusty_v8_${RUSTY_V8_TAG}_librusty_v8_ptrcomp_sandbox_release_x86_64-unknown-linux-musl.a.gz
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/src_binding_ptrcomp_sandbox_release_x86_64-unknown-linux-musl.rs
+ -> rusty_v8_${RUSTY_V8_TAG}_src_binding_ptrcomp_sandbox_release_x86_64-unknown-linux-musl.rs
+ )
+ arm64? (
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/librusty_v8_ptrcomp_sandbox_release_aarch64-unknown-linux-musl.a.gz
+ -> rusty_v8_${RUSTY_V8_TAG}_librusty_v8_ptrcomp_sandbox_release_aarch64-unknown-linux-musl.a.gz
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/src_binding_ptrcomp_sandbox_release_aarch64-unknown-linux-musl.rs
+ -> rusty_v8_${RUSTY_V8_TAG}_src_binding_ptrcomp_sandbox_release_aarch64-unknown-linux-musl.rs
+ )
+ ${CARGO_CRATE_URIS}
+"
+
+S="${WORKDIR}/${PN}-rust-v${PV}/codex-rs"
+
+LICENSE="Apache-2.0"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD Boost-1.0
+ CC0-1.0 CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 ZLIB
+"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm64"
+# Tests fail due to ring crate conflicts with system OpenSSL
+RESTRICT="test"
+
+DEPEND="
+ dev-libs/openssl:=
+ sys-apps/dbus
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+# rust does not use *FLAGS from make.conf, silence portage warning
+QA_FLAGS_IGNORED="usr/bin/${PN} usr/bin/codex-code-mode-host"
+
+pkg_pretend() {
+ check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ check-reqs_pkg_setup
+ rust_pkg_setup
+ if tc-is-lto; then
+ export CARGO_PROFILE_RELEASE_LTO=thin
+ else
+ export CARGO_PROFILE_RELEASE_LTO=false
+ fi
+}
+
+gen_git_crate_dir() {
+ # https://github.com/gentoo/gentoo/blob/b09dd88412fe2d5eee5a8891e08bfa2d67848da3/eclass/cargo.eclass#L442
+ IFS=';' read -r crate_uri commit crate_dir <<<"${GIT_CRATES[$1]}"
+ echo "${WORKDIR}/${crate_dir//%commit%/${commit}}"
+}
+
+src_prepare() {
+ default
+
+ # Fix tokio-tungstenite's git dependency on tungstenite
+ sed -i '/^\[dependencies\.tungstenite\]/,/^$/{
+ s|git = "[^"]*"|path = "'"$(gen_git_crate_dir tungstenite)"'"|
+ /^rev = /d
+ }' "$(gen_git_crate_dir tokio-tungstenite)/Cargo.toml" || die
+
+ # Remove the [patch.crates-io] section and add path-based patches
+ sed -i '/^\[patch\.crates-io\]/,/^$/d' "${S}/Cargo.toml" || die
+ sed -i '/^\[patch\."ssh:\/\/git@github\.com/,/^$/d' "${S}/Cargo.toml" || die
+
+ # Add new patch section with local paths
+ cat >> "${S}/Cargo.toml" <<-EOF || die
+
+ [patch.crates-io]
+ crossterm = { path = "$(gen_git_crate_dir crossterm)" }
+ tokio-tungstenite = { path = "$(gen_git_crate_dir tokio-tungstenite)" }
+ tungstenite = { path = "$(gen_git_crate_dir tungstenite)" }
+ EOF
+}
+
+src_compile() {
+ local rusty_v8_triple
+ use amd64 && rusty_v8_triple=x86_64-unknown-linux-musl
+ use arm64 && rusty_v8_triple=aarch64-unknown-linux-musl
+
+ # codex-core trait resolution overflows rustc's default 8MiB stack
+ export RUST_MIN_STACK=16777216
+
+ # codex-code-mode-runtime enables V8's sandbox and pointer compression.
+ RUSTY_V8_ARCHIVE="${DISTDIR}/rusty_v8_${RUSTY_V8_TAG}_librusty_v8_ptrcomp_sandbox_release_${rusty_v8_triple}.a.gz" \
+ RUSTY_V8_SRC_BINDING_PATH="${DISTDIR}/rusty_v8_${RUSTY_V8_TAG}_src_binding_ptrcomp_sandbox_release_${rusty_v8_triple}.rs" \
+ cargo_src_compile --package codex-cli --package codex-code-mode-host
+}
+
+src_install() {
+ # The CLI starts Code Mode through a sibling executable.
+ dobin "$(cargo_target_dir)/codex" \
+ "$(cargo_target_dir)/codex-code-mode-host"
+ einstalldocs
+}
+
+pkg_postinst() {
+ # Only update an existing daemon after a merge on the running system.
+ [[ ${ROOT} == / && -z ${EPREFIX} && -n ${REPLACING_VERSIONS} ]] || return 0
+ [[ ${CODEX_DAEMON_AUTO_UPDATE:-yes} == yes ]] || return 0
+
+ # Portage does not inherit the interactive shell's CODEX_HOME reliably.
+ # This distribution uses a shared home; other installations can override it
+ # with CODEX_DAEMON_HOME in make.conf.
+ local codex_home=${CODEX_DAEMON_HOME:-/var/lib/ai/codex/.codex}
+ [[ -d ${codex_home}/app-server-daemon ]] || return 0
+ [[ -L ${codex_home}/packages/app-server-daemon/current ||
+ -L ${codex_home}/packages/standalone/current ]] || return 0
+
+ # Do not run a user's daemon as root or change its ownership during a merge.
+ if [[ ! -O ${codex_home}/app-server-daemon/settings.json ]]; then
+ ewarn "Skipping Codex daemon update: settings are not owned by the merge user."
+ ewarn "Run 'codex app-server daemon update' as the daemon owner."
+ return 0
+ fi
+
+ # A restarted daemon must not inherit Portage's temporary HOME or build env.
+ local passwd_entry daemon_user daemon_home daemon_shell unused
+ if ! passwd_entry=$(getent passwd "${EUID}"); then
+ ewarn "Cannot resolve the merge user's home; update the Codex daemon manually."
+ return 0
+ fi
+ IFS=: read -r daemon_user unused unused unused unused daemon_home daemon_shell \
+ <<< "${passwd_entry}"
+ if [[ ${daemon_home} != /* || ! -d ${daemon_home} ]]; then
+ ewarn "The merge user's home is unavailable; update the Codex daemon manually."
+ return 0
+ fi
+
+ einfo "Updating the Codex background server in ${codex_home} (may restart it)..."
+ # The system build has no standalone package manifest, so --from-cli is
+ # unavailable. Use the upstream daemon updater with a bounded wait.
+ if ! ( cd "${daemon_home}" && env -i HOME="${daemon_home}" \
+ USER="${daemon_user}" LOGNAME="${daemon_user}" SHELL="${daemon_shell}" \
+ PATH=/usr/sbin:/usr/bin:/sbin:/bin CODEX_HOME="${codex_home}" \
+ /usr/bin/timeout --kill-after=10s 300s \
+ "${EROOT}usr/bin/codex" app-server daemon update ); then
+ ewarn "Codex CLI was installed, but the background server update did not complete."
+ ewarn "Retry: CODEX_HOME='${codex_home}' codex app-server daemon update"
+ ewarn "If migration completed but startup failed, fix the reported error and run:"
+ ewarn "CODEX_HOME='${codex_home}' codex app-server daemon start"
+ fi
+}
diff --git a/dev-util/gammaray/Manifest b/dev-util/gammaray/Manifest
index fba6eb4fbeca..fa73a9f91800 100644
--- a/dev-util/gammaray/Manifest
+++ b/dev-util/gammaray/Manifest
@@ -1,2 +1,2 @@
-DIST gammaray-3.3.1.tar.gz 10976872 BLAKE2B 8ab4627b1417b0b289c093c72cf52dab5ceff3f48e99f68af0251ffed7ce4110c1c70def6877ecd5132dd2faf0f8eb8049675d20b912961c2e627c3bc1a858f3 SHA512 301be8389b9f268dfabde7655b374a3f7e551b70e144c77aa22fb7b3a065336f46218b2d805305d56910aa25a084dbf945481368217918061883288d00dfec43
DIST gammaray-3.4.0.tar.gz 10978347 BLAKE2B b6a648b7c0a008835dbd71836bd73830d11249ef3a9f37ca94b0b5e2f4b44a0a35c1421871068c6853848850e8636da868df7d20932adbf71c631a85b4c855b3 SHA512 00d309873cc0108237d469ede1c8fb560891555f1721c0f585b99f972618e397d590fe70f2e143acdd20d9d3015326d356487ec1e8c8578f3596fa99b8c7a4a3
+DIST gammaray-3.4.1.tar.gz 10978322 BLAKE2B 9f7af9a67c77088582af0dd33555fd1f0aa618c7d0b1d6a2111a4f5c8860a505e50eba04a7b3a9c4e25ec9b6c9b98fd702434bd4421210c8e4cd7c41eb5d5517 SHA512 c8e26b854fbe59f903226ad9883059ac1fdaf13ab6e1599f71e0ba9582afeabd7e1fc282d522056b794c114442c5177e030ced01f41fd325603e9adb22582b5b
diff --git a/dev-util/gammaray/gammaray-3.4.0-r1.ebuild b/dev-util/gammaray/gammaray-3.4.0-r1.ebuild
index 3f60a8edbb29..63379ac3b713 100644
--- a/dev-util/gammaray/gammaray-3.4.0-r1.ebuild
+++ b/dev-util/gammaray/gammaray-3.4.0-r1.ebuild
@@ -6,7 +6,7 @@ EAPI=8
# skip warning for unused files in 3rdparty/backward-cpp
CMAKE_QA_COMPAT_SKIP=1
-inherit cmake flag-o-matic qmake-utils xdg
+inherit cmake flag-o-matic qt-utils xdg
MY_PN="GammaRay"
DESCRIPTION="High-level runtime introspection tool for Qt applications"
@@ -108,7 +108,7 @@ src_configure() {
$(cmake_use_find_package wayland Wayland)
$(cmake_use_find_package webengine Qt6WebEngineWidgets)
-DBUILD_TESTING=$(usex test)
- -DECM_MKSPECS_INSTALL_DIR="$(qt6_get_mkspecsdir)"
+ -DECM_MKSPECS_INSTALL_DIR="$(qt_get_mkspecsdir 6)"
# enable doc for manpages
-DGAMMARAY_BUILD_DOCS=ON
-DGAMMARAY_BUILD_UI=ON
diff --git a/dev-util/gammaray/gammaray-3.4.0.ebuild b/dev-util/gammaray/gammaray-3.4.0.ebuild
deleted file mode 100644
index 91aa394e64c7..000000000000
--- a/dev-util/gammaray/gammaray-3.4.0.ebuild
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# skip warning for unused files in 3rdparty/backward-cpp
-CMAKE_QA_COMPAT_SKIP=1
-
-inherit cmake qmake-utils xdg
-
-MY_PN="GammaRay"
-DESCRIPTION="High-level runtime introspection tool for Qt applications"
-HOMEPAGE="
- https://www.kdab.com/software-technologies/developer-tools/gammaray/
- https://github.com/KDAB/GammaRay
-"
-
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/KDAB/GammaRay.git"
-else
- SRC_URI="https://github.com/KDAB/GammaRay/releases/download/v${PV}/${P}.tar.gz"
- KEYWORDS="~amd64"
- S="${WORKDIR}/${MY_PN}-${PV}"
-fi
-
-LICENSE="BSD-2 GPL-2+ MIT"
-SLOT=0
-
-IUSE="3d bluetooth designer doc geolocation highlight kjob scxml svg test wayland webengine"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-libs/elfutils
- dev-qt/qtbase:6[concurrent,gui,network,widgets,xml]
- dev-qt/qtdeclarative:6[widgets]
- 3d? ( dev-qt/qt3d:6[qml] )
- bluetooth? ( dev-qt/qtconnectivity:6[bluetooth] )
- designer? ( dev-qt/qttools:6[designer] )
- geolocation? (
- dev-qt/qtlocation:6
- dev-qt/qtpositioning:6
- )
- highlight? ( kde-frameworks/syntax-highlighting:6 )
- kjob? ( kde-frameworks/kcoreaddons:6 )
- scxml? (
- dev-qt/qtscxml:6
- >=dev-util/kdstatemachineeditor-2.2.0
- )
- svg? ( dev-qt/qtsvg:6 )
- wayland? (
- dev-libs/wayland
- dev-qt/qtwayland:6[compositor(+)]
- )
- webengine? ( dev-qt/qtwebengine:6[widgets] )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-lang/perl
- dev-qt/qttools:6[linguist]
- doc? (
- app-text/doxygen
- dev-qt/qttools:6[assistant,qdoc,qtattributionsscanner]
- media-gfx/graphviz
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.3.0-unbundle_libs.patch
-)
-
-src_prepare() {
- cmake_src_prepare
-
- if ! use doc; then
- cmake_comment_add_subdirectory -f docs manual api collection
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- $(cmake_use_find_package 3d Qt63DAnimation)
- $(cmake_use_find_package 3d Qt63DExtras)
- $(cmake_use_find_package 3d Qt63DInput)
- $(cmake_use_find_package 3d Qt63DLogic)
- $(cmake_use_find_package 3d Qt63DRender)
- $(cmake_use_find_package 3d Qt63DQuick)
- $(cmake_use_find_package bluetooth Qt6Bluetooth)
- $(cmake_use_find_package designer Qt6Designer)
- $(cmake_use_find_package geolocation Qt6Location)
- $(cmake_use_find_package geolocation Qt6Positioning)
- $(cmake_use_find_package highlight KF6SyntaxHighlighting)
- $(cmake_use_find_package kjob KF6CoreAddons)
- $(cmake_use_find_package svg Qt6Svg)
- $(cmake_use_find_package scxml Qt6Scxml)
- $(cmake_use_find_package scxml Qt6StateMachine)
- $(cmake_use_find_package wayland Qt6WaylandCompositor)
- $(cmake_use_find_package wayland Wayland)
- $(cmake_use_find_package webengine Qt6WebEngineWidgets)
- -DBUILD_TESTING=$(usex test)
- -DECM_MKSPECS_INSTALL_DIR="$(qt6_get_mkspecsdir)"
- # enable doc for manpages
- -DGAMMARAY_BUILD_DOCS=ON
- -DGAMMARAY_BUILD_UI=ON
- -DGAMMARAY_DISABLE_FEEDBACK=ON
- -DGAMMARAY_WITH_KDSME=$(usex scxml)
- -DQT_VERSION_MAJOR=6
- )
-
- cmake_src_configure
-}
-
-src_test() {
- local CMAKE_SKIP_TESTS=(
- # avoid gdb/lldb tests
- connectiontest-*
- connectiontest-*-filter
- # GammaRay::ProblemReporterTest::testConnectionIssues() We can't find duplicates with PMF connects, yet.
- problemreportertest
- # QFATAL : QuickInspectorTest::testModelsReparent() Failed to initialize graphics backend for OpenGL.
- quickinspectortest
- quickinspectortest2
- # need gdb/lldb
- # Yama security extension is blocking runtime attaching
- clientconnectiontest
- launchertest
- # need launcher
- quickmaterialtest
- quicktexturetest
- )
- local -x QT_QPA_PLATFORM=offscreen
- cmake_src_test
-}
-
-src_install() {
- if use doc; then
- local HTML_DOCS=( "${BUILD_DIR}"/docs/api/html/. )
- find "${HTML_DOCS}" \( -iname '*.map' -o -iname '*.md5' \) -delete || die
- fi
-
- cmake_src_install
-
- docompress -x /usr/share/doc/${PF}/${PN}{.qhc,-manual.qch,-api.qch}
- rm -r "${ED}"/usr/share/doc/${PN} || die
-}
diff --git a/dev-util/gammaray/gammaray-3.3.1.ebuild b/dev-util/gammaray/gammaray-3.4.1.ebuild
index 91aa394e64c7..63379ac3b713 100644
--- a/dev-util/gammaray/gammaray-3.3.1.ebuild
+++ b/dev-util/gammaray/gammaray-3.4.1.ebuild
@@ -6,7 +6,7 @@ EAPI=8
# skip warning for unused files in 3rdparty/backward-cpp
CMAKE_QA_COMPAT_SKIP=1
-inherit cmake qmake-utils xdg
+inherit cmake flag-o-matic qt-utils xdg
MY_PN="GammaRay"
DESCRIPTION="High-level runtime introspection tool for Qt applications"
@@ -27,13 +27,14 @@ fi
LICENSE="BSD-2 GPL-2+ MIT"
SLOT=0
-IUSE="3d bluetooth designer doc geolocation highlight kjob scxml svg test wayland webengine"
+IUSE="3d bluetooth designer doc geolocation highlight kjob opengl scxml svg test wayland webengine"
RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( opengl )"
RDEPEND="
dev-libs/elfutils
- dev-qt/qtbase:6[concurrent,gui,network,widgets,xml]
- dev-qt/qtdeclarative:6[widgets]
+ dev-qt/qtbase:6[concurrent,gui,network,opengl?,widgets,xml]
+ dev-qt/qtdeclarative:6[opengl?,widgets]
3d? ( dev-qt/qt3d:6[qml] )
bluetooth? ( dev-qt/qtconnectivity:6[bluetooth] )
designer? ( dev-qt/qttools:6[designer] )
@@ -76,9 +77,17 @@ src_prepare() {
if ! use doc; then
cmake_comment_add_subdirectory -f docs manual api collection
fi
+ if ! use opengl; then
+ # openglsupport requires opengl
+ # quickinspector requires opengl= that we don't want
+ cmake_comment_add_subdirectory -f plugins openglsupport quickinspector
+ fi
}
src_configure() {
+ # QT_NO_OPENGL for guisupport
+ use opengl || append-cppflags -DQT_NO_OPENGL
+
local mycmakeargs=(
$(cmake_use_find_package 3d Qt63DAnimation)
$(cmake_use_find_package 3d Qt63DExtras)
@@ -99,7 +108,7 @@ src_configure() {
$(cmake_use_find_package wayland Wayland)
$(cmake_use_find_package webengine Qt6WebEngineWidgets)
-DBUILD_TESTING=$(usex test)
- -DECM_MKSPECS_INSTALL_DIR="$(qt6_get_mkspecsdir)"
+ -DECM_MKSPECS_INSTALL_DIR="$(qt_get_mkspecsdir 6)"
# enable doc for manpages
-DGAMMARAY_BUILD_DOCS=ON
-DGAMMARAY_BUILD_UI=ON
diff --git a/dev-util/go-task/go-task-3.54.0.ebuild b/dev-util/go-task/go-task-3.54.0.ebuild
index d2a347c58535..7de8a366991b 100644
--- a/dev-util/go-task/go-task-3.54.0.ebuild
+++ b/dev-util/go-task/go-task-3.54.0.ebuild
@@ -14,7 +14,7 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64"
-BDEPEND=">=dev-lang/go-1.25.10"
+BDEPEND=">=dev-lang/go-1.26.4"
src_compile() {
ego build github.com/go-task/task/v3/cmd/task
diff --git a/dev-util/opencode-bin/Manifest b/dev-util/opencode-bin/Manifest
index 1da0abcbfba8..9b67ec443d9f 100644
--- a/dev-util/opencode-bin/Manifest
+++ b/dev-util/opencode-bin/Manifest
@@ -6,3 +6,5 @@ DIST opencode-bin-2.0.30-amd64.tar.gz 98083095 BLAKE2B e7fa03d46fcedc5fe1acf4b56
DIST opencode-bin-2.0.30-arm64.tar.gz 96850168 BLAKE2B 5173ac8ee5928519ecbc7eb7848522c91ed3b009c82e26a74b1d1b0f17288bd45c9ddb5f8c29f7935547e40a1822290c48ca26d925186fc9be97180cf5c6b809 SHA512 110cd5038d235a46d831019da82df2ec8ec33949f0e736213cfc026b6bc56ff30afc1b8190766a3dcb030010fcd8409a355189a38de4cfcb340a4a1d6fc100e3
DIST opencode-bin-2.0.32-amd64.tar.gz 98152394 BLAKE2B 6fae2877ee0cce3323a04fb16cb27ba6785d13b9656e9092f8bd846bbf9807fb77f94e7bda3ee758c4492bacedb5c49d74bfbaaa7948a078b337d9ffd69849d3 SHA512 36b0788a09496fbbc665627a074a951f510c1e1581678003b001bd5b4c4b6a7ce0c49e9e2c412c181bf1457d1c9bf28f6a0e44fcdd32646b03543658727cff39
DIST opencode-bin-2.0.32-arm64.tar.gz 96915721 BLAKE2B 87db86d27f4b71ff0fce298aca77e9ed05f37efa70f3ff0708d02ac363c4a5c2197301779f917c70705723fd2f2f947f30bbef6f1214c472fafb2c76ef6dffbc SHA512 611e4ed378abbe6a2dfc6d1ff16e3d7a1be19f9baa085377bdff494ec0a1bdfe3b5ba95d8ca08dbec6824974b648fdba74f394310067ed6a9b2a7c87ceb351e7
+DIST opencode-bin-2.1.1-amd64.tar.gz 98936625 BLAKE2B d8e9188d203477da0bbbdbf12d74910120447007154d47f095032727ade4fe1b301fb2f94174082daa66a98457e0cede6974f28e129cd4e257b25b4aef712548 SHA512 6e37924ed3f0a471caa14ab5772e3f35a3885c9d9e8f77a5c29f6d545d9c11f0687519e1b458f700862d7b64c3a0f105ebe746ae53a4a0f0adde3fbfb60624d9
+DIST opencode-bin-2.1.1-arm64.tar.gz 97694833 BLAKE2B 1ae0f4fe4aaaa85f84079db2c4827781fb59d7d24226d74f4190c7461c9ba2a5a1356a77631eb99130b37b1ca1d0c3927a599db660d478944213519aab97094d SHA512 faff230a1d474fa887dae0886134da62ffb1a84d5a1163345ce8e7b22dbfd63cfa1ab8a7828c414f3d6599f5263d8f91e7bd0b4b212373d2d55ba0c1ac76c0c9
diff --git a/dev-util/opencode-bin/opencode-bin-2.1.1.ebuild b/dev-util/opencode-bin/opencode-bin-2.1.1.ebuild
new file mode 100644
index 000000000000..b0dfeaecfd1c
--- /dev/null
+++ b/dev-util/opencode-bin/opencode-bin-2.1.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=${PN%%-bin}
+
+DESCRIPTION="The open source coding agent"
+HOMEPAGE="https://opencode.ai"
+
+SRC_URI="
+ amd64? (
+ https://registry.npmjs.org/@opencode/cli-linux-x64-baseline/-/cli-linux-x64-baseline-${PV}.tgz -> ${P}-amd64.tar.gz
+ )
+ arm64? (
+ https://registry.npmjs.org/@opencode/cli-linux-arm64/-/cli-linux-arm64-${PV}.tgz -> ${P}-arm64.tar.gz
+ )
+"
+
+S="${WORKDIR}"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm64"
+RESTRICT="mirror strip"
+
+QA_PREBUILT="usr/bin/opencode"
+
+src_install() {
+ dobin package/bin/${MY_PN}
+ dosym ${MY_PN} /usr/bin/${MY_PN}2
+}
diff --git a/dev-util/pixi/Manifest b/dev-util/pixi/Manifest
index 36d54a489852..51c954e364dd 100644
--- a/dev-util/pixi/Manifest
+++ b/dev-util/pixi/Manifest
@@ -1,6 +1,3 @@
-DIST pixi-0.81.0-crates.tar.xz 78356060 BLAKE2B 5eb3734abba07c894ed9ce529b2e55e088f45c9a988c7858cc4c1447a68f33be25c6b65eff54a259fb408aa20d314d0630b36b4ec6a68cc1eb29fc6d63bdf5fa SHA512 7567bf88a5e4faf9d255c6f65cf8a59b53fc68466799159ed7a89527d79300b5d91775dfc92b3a5aea7e2d5acd9105499c00d9960cd3be1cf3726fd2ba4ad7b7
-DIST pixi-0.81.0.tar.gz 19936301 BLAKE2B 583dcc8e6d8cf8c6e18756df758caeb192c9a41471ec134d79c689470020dbbeb06fee3f45704d372ae68ba7baba45a2f1f47c7936f67711d5fb37ecd8c822bf SHA512 2c087c5b9acef2be70f5f0594df548dbf6328eaf18a512e2c48a6649b1b4173e35e28514763dbbabdecbb12875a4cc48465a61313705e44d5750fe02f86e401b
-DIST pixi-0.82.0-crates.tar.xz 80794952 BLAKE2B d5231bcb0619b3f8ede401c331394a4cd6c4eb69d5cb4edb631b36885df56556908cd77dcaf5a6a6c9a93b3fe0ae4633a43439c5afefee502b317398f3891072 SHA512 ae355cc78678563e274b801dd3c7697e72e5471b2354d3e601bf5486422c17ec825f379c3c926442b98771ffe0b98149830319a34836d1b9be13bc9a2fc74d0a
-DIST pixi-0.82.0.tar.gz 20009719 BLAKE2B 207fc1ce4c201921edfb2b9f34c0335099eeec0f37e31617029949d95ef4c42a4b8055016aab2b9e17bb57f5e1fef758382551138e0084ed951eafe1335e3adf SHA512 d7a6723b1cf75063f658d92c0617777b3d146d5417aaa660a31f219a6b0a677d25370ceb0471e816538f9ac7c03113e9f10df6f8e6fecbc10017a1e6eb74ed89
+DIST pixi-0.82.1-crates.tar.xz 81030084 BLAKE2B e72e811ac75b9b8e5d650e4fd5f0a8e67cdb30e485cc044b12ea136c42522f41f0f8803f64a9199e636cfcc58091a898d046b625b33ac6e73b226f6cde1fe03f SHA512 73bedb524983e5d9c5bf6a69e417b892714c69560035db554672c0a058b45979b94d7e2ae054ce31eba7344e5428028b7f3851874e1762cf5c828757a36fdf21
+DIST pixi-0.82.1.tar.gz 20079530 BLAKE2B f6255ba67b38407d661f1d134818f53116efda9ee9b35be84a7ca053a28c3dbacb667ec8d6a2d1293092727d167dabe76400c0020bf1d6b5f6a0f21f257269ed SHA512 1f36c4f7d0d23673f209b28af9937b8f17fb4a6f674f5c83fe2ac5f8fadba01467c97089b18e4e284e3fb8ffe68884a1174a85f7e1429a0fd32747b1a1efda7c
DIST pubgrub-d8efd77673c9a90792da9da31b6c0da7ea8a324b.gh.tar.gz 100042 BLAKE2B cacdd77783aae1a94c3aaea56c2bd47b22f13ca34eddcef53b5d205244a213eff2934db03965532085c1aa6892b27bbbabfc19513f62936f8ac1faa466570dd4 SHA512 3a2a146fd9d9b458dced6563a1f5674e81e8ba36de11be5c189b0c76b6ede6f32957f48fb0978b97b0892768822c6c4c32c6870141e8fc1ea5d8b8f7d8b5b464
-DIST uv-3cffe97c2e48c9e49422c738da3af95919dd0bf5.gh.tar.gz 5303746 BLAKE2B b45e64d4c036c2fb54ca3e82a1ce953363f10786e76bb1128e20a6204c03dff3e0d18e3ca652320f81d78b94cebdaefd463b45da639260659e00fa0e2cd3d1f6 SHA512 444defce55de8bca79d9d572dc5231198c23df07a43048c7b621496d35ea46fc274b3aa3eb97fcfc4a045ac81ab540dcf9657ef1d74d5a9535e1a86a68e7d9e6
diff --git a/dev-util/pixi/pixi-0.81.0.ebuild b/dev-util/pixi/pixi-0.81.0.ebuild
deleted file mode 100644
index 8913b7bf42cc..000000000000
--- a/dev-util/pixi/pixi-0.81.0.ebuild
+++ /dev/null
@@ -1,163 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-RUST_MIN_VER="1.95.0"
-CRATES="
-"
-
-declare -A GIT_CRATES=(
- [uv-auth]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-auth'
- [uv-build-backend]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-build-backend'
- [uv-build-frontend]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-build-frontend'
- [uv-cache-info]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-cache-info'
- [uv-cache-key]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-cache-key'
- [uv-cache]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-cache'
- [uv-client]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-client'
- [uv-configuration]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-configuration'
- [uv-console]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-console'
- [uv-dirs]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-dirs'
- [uv-dispatch]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-dispatch'
- [uv-distribution-filename]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-distribution-filename'
- [uv-distribution-types]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-distribution-types'
- [uv-distribution]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-distribution'
- [uv-extract]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-extract'
- [uv-fastid]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-fastid'
- [uv-flags]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-flags'
- [uv-fs]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-fs'
- [uv-git-types]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-git-types'
- [uv-git]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-git'
- [uv-globfilter]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-globfilter'
- [uv-install-wheel]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-install-wheel'
- [uv-installer]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-installer'
- [uv-keyring]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-keyring'
- [uv-macros]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-macros'
- [uv-metadata]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-metadata'
- [uv-netrc]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-netrc'
- [uv-normalize]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-normalize'
- [uv-once-map]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-once-map'
- [uv-options-metadata]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-options-metadata'
- [uv-pep440]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-pep440'
- [uv-pep508]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-pep508'
- [uv-platform-tags]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-platform-tags'
- [uv-platform]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-platform'
- [uv-preview]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-preview'
- [uv-pypi-types]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-pypi-types'
- [uv-python]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-python'
- [uv-redacted]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-redacted'
- [uv-requirements-txt]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-requirements-txt'
- [uv-requirements]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-requirements'
- [uv-resolver]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-resolver'
- [uv-scripts]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-scripts'
- [uv-settings]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-settings'
- [uv-shell]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-shell'
- [uv-small-str]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-small-str'
- [uv-state]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-state'
- [uv-static]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-static'
- [uv-toml]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-toml'
- [uv-torch]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-torch'
- [uv-trampoline-builder]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-trampoline-builder'
- [uv-types]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-types'
- [uv-version]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-version'
- [uv-virtualenv]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-virtualenv'
- [uv-warnings]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-warnings'
- [uv-windows]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-windows'
- [uv-workspace]='https://github.com/astral-sh/uv;3cffe97c2e48c9e49422c738da3af95919dd0bf5;uv-%commit%/crates/uv-workspace'
- [version-ranges]='https://github.com/astral-sh/pubgrub;d8efd77673c9a90792da9da31b6c0da7ea8a324b;pubgrub-%commit%/version-ranges'
-)
-
-inherit cargo multiprocessing
-
-CRATE_P=${P}
-DESCRIPTION="A package management and workflow tool"
-HOMEPAGE="
- https://pixi.prefix.dev/
- https://github.com/prefix-dev/pixi/
-"
-SRC_URI="
- https://github.com/prefix-dev/pixi/releases/download/v${PV}/source.tar.gz
- -> ${P}.tar.gz
- ${CARGO_CRATE_URIS}
- https://github.com/gentoo-crate-dist/pixi/releases/download/v${PV}/${P}-crates.tar.xz
-"
-
-LICENSE="BSD"
-# Dependent crate licenses
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD Boost-1.0
- CC0-1.0 CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0 ZLIB
- BZIP2
-"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="+rustls test"
-RESTRICT="test"
-PROPERTIES="test? ( test_network )"
-
-RDEPEND="
- app-arch/bzip2:=
- app-arch/xz-utils:=
- app-arch/zstd:=
- sys-apps/dbus
- !rustls? ( dev-libs/openssl:= )
-"
-BDEPEND="
- test? ( dev-util/cargo-nextest )
-"
-
-QA_PREBUILT="usr/bin/pixi"
-
-src_prepare() {
- default
-
- # replace upstream crate substitution with our crate substitution, sigh
- local pkg
- for pkg in version-ranges; do
- local dep=$(grep "^${pkg}" "${ECARGO_HOME}"/config.toml || die)
- sed -i -e "/\[patch\.crates-io\]/,\$s;^${pkg}.*$;${dep};" Cargo.toml || die
- done
-
-}
-
-src_configure() {
- local myfeatures=(
- $(usex rustls rustls native-tls)
- )
- cargo_src_configure --no-default-features
-
- export ZSTD_SYS_USE_PKG_CONFIG=1
-
- # bzip2-sys requires a pkg-config file
- # https://github.com/alexcrichton/bzip2-rs/issues/104
- mkdir "${T}/pkg-config" || die
- export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
- cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
- Name: bzip2
- Version: 9999
- Description:
- Libs: -lbz2
- EOF
-
- # uv is forcing bundled liblzma, sigh
- sed -i -e '/xz/s:"static"::' "${WORKDIR}"/uv-*/Cargo.toml || die
-
- # rattler-build is forcing bundled libdbus
- sed -i -e '/"vendored"/d' -e 's:"crypto-rust":"crypto-openssl":' \
- "${ECARGO_VENDOR}"/rattler_networking-*/Cargo.toml || die
-}
-
-src_test() {
- # tests use it to test preserving envvars, apparently assuming
- # it will be always set
- local -x USER=${USER}
- local -x NEXTEST_TEST_THREADS="$(makeopts_jobs)"
- set -- cargo nextest run --verbose --no-fail-fast \
- "${ECARGO_ARGS[@]}" $(usev !debug '--release')
- echo "${@@Q}" >&2
- "${@}" || die "cargo nextest failed"
-}
-
-src_install() {
- dobin "$(cargo_target_dir)/pixi"
-}
diff --git a/dev-util/pixi/pixi-0.82.0.ebuild b/dev-util/pixi/pixi-0.82.1.ebuild
index ed1ed59a6e1f..adc5641f9d73 100644
--- a/dev-util/pixi/pixi-0.82.0.ebuild
+++ b/dev-util/pixi/pixi-0.82.1.ebuild
@@ -82,9 +82,6 @@ src_configure() {
Libs: -lbz2
EOF
- # uv is forcing bundled liblzma, sigh
- sed -i -e '/xz/s:"static"::' "${ECARGO_VENDOR}"/uv-*/Cargo.toml || die
-
# rattler-build is forcing bundled libdbus
sed -i -e '/"vendored"/d' -e 's:"crypto-rust":"crypto-openssl":' \
"${ECARGO_VENDOR}"/rattler_networking-*/Cargo.toml || die
diff --git a/dev-util/tinyxxd/files/tinyxxd-1.3.17-default-fixes.patch b/dev-util/tinyxxd/files/tinyxxd-1.3.17-default-fixes.patch
index c6cbac6b6f35..05c7e01d7702 100644
--- a/dev-util/tinyxxd/files/tinyxxd-1.3.17-default-fixes.patch
+++ b/dev-util/tinyxxd/files/tinyxxd-1.3.17-default-fixes.patch
@@ -1,4 +1,4 @@
-commit 17c86fd5c241892ad514e5f291e1716e42109c19
+commit 411339dc4eded08e95bc70860873c3632a92bb1b
Author: ingenarel (NeoJesus) <ingenarel_neojesus@disroot.org>
Date: Mon Oct 19 07:55:22 2026 +0600
@@ -7,7 +7,7 @@ Date: Mon Oct 19 07:55:22 2026 +0600
Signed-off-by: ingenarel (NeoJesus) <ingenarel_neojesus@disroot.org>
diff --git a/Makefile b/Makefile
-index 8ba7bd0..7ca4879 100644
+index 8ba7bd0..a17f446 100644
--- a/Makefile
+++ b/Makefile
@@ -2,16 +2,7 @@
@@ -24,7 +24,7 @@ index 8ba7bd0..7ca4879 100644
-else
- CFLAGS += -fstack-protector-strong -D_GNU_SOURCE -fno-plt -Wl,-z,now -D_FORTIFY_SOURCE=3
-endif
-+CFLAGS += -std=c11 -D_GNU_SOURCE -D_FORTIFY_SOURCE=3
++CFLAGS += -std=c11 -D_GNU_SOURCE
PREFIX ?= /usr
BINDIR ?= $(PREFIX)/bin
diff --git a/dev-util/tinyxxd/files/tinyxxd-da64dbf542cc27ba614e45fcaf82955fa4643d16-default-fixes.patch b/dev-util/tinyxxd/files/tinyxxd-da64dbf542cc27ba614e45fcaf82955fa4643d16-default-fixes.patch
index 0362e94369d5..ab2d628746fb 100644
--- a/dev-util/tinyxxd/files/tinyxxd-da64dbf542cc27ba614e45fcaf82955fa4643d16-default-fixes.patch
+++ b/dev-util/tinyxxd/files/tinyxxd-da64dbf542cc27ba614e45fcaf82955fa4643d16-default-fixes.patch
@@ -1,4 +1,4 @@
-commit db24ab85688e37a00ed4edfd60b8a606d1f4cd98
+commit f525fd83f19b6118b630c009f3d69094dd3b67ad
Author: ingenarel (NeoJesus) <ingenarel_neojesus@disroot.org>
Date: Mon Oct 19 08:56:24 2026 +0600
@@ -7,7 +7,7 @@ Date: Mon Oct 19 08:56:24 2026 +0600
Signed-off-by: ingenarel (NeoJesus) <ingenarel_neojesus@disroot.org>
diff --git a/Makefile b/Makefile
-index 29759f0..0b2f1f3 100644
+index 29759f0..e928f1c 100644
--- a/Makefile
+++ b/Makefile
@@ -2,16 +2,7 @@
@@ -24,7 +24,7 @@ index 29759f0..0b2f1f3 100644
-else
- CFLAGS += -fstack-protector-strong -D_GNU_SOURCE -fno-plt -Wl,-z,now -D_FORTIFY_SOURCE=3
-endif
-+CFLAGS += -std=c11 -D_GNU_SOURCE -D_FORTIFY_SOURCE=3
++CFLAGS += -std=c11 -D_GNU_SOURCE
PREFIX ?= /usr
BINDIR ?= $(PREFIX)/bin
diff --git a/dev-vcs/lazygit/lazygit-0.66.2.ebuild b/dev-vcs/lazygit/lazygit-0.66.2-r1.ebuild
index 9d2a25636f06..cff84143efd4 100644
--- a/dev-vcs/lazygit/lazygit-0.66.2.ebuild
+++ b/dev-vcs/lazygit/lazygit-0.66.2-r1.ebuild
@@ -22,7 +22,7 @@ SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
- >=dev-lang/go-1.25.0
+ >=dev-lang/go-1.26.0
test? ( dev-build/just )
"
RDEPEND="dev-vcs/git"
diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 5a6cf771d9b7..428d171fee00 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -308,6 +308,9 @@ llvm.org_set_globals() {
22*)
LLVM_MANPAGE_DIST="llvm-${LLVM_MAJOR}.1.0-r2-manpages.tar.xz"
;;
+ 23*)
+ LLVM_MANPAGE_DIST="llvm-${LLVM_MAJOR}.1.4-manpages.tar.xz"
+ ;;
esac
fi
diff --git a/games-simulation/kittenspaceagency-bin/Manifest b/games-simulation/kittenspaceagency-bin/Manifest
index da654321c470..4ce191689f25 100644
--- a/games-simulation/kittenspaceagency-bin/Manifest
+++ b/games-simulation/kittenspaceagency-bin/Manifest
@@ -1 +1 @@
-DIST ksa_linux_v2026.10.13.5602.tar.gz 2372151289 BLAKE2B ef55ee949ecdbc4dbe536501af4ca49a02cb2875d8f896a0ad63cfbf8c34a314d522f31d5891902a894160d91b24ed3cf8df2edcc2cb2de8322a596231fdc5c8 SHA512 ff11ecf08a3b37e0a595659eb2d701a280b0776e4f92b8fa0c281a87c896767c31796ae25cbc68de1bed480f0e995cc3125e87fde59ef08b838d55f232d37e8b
+DIST ksa_linux_v2026.10.19.5638.tar.gz 2372087734 BLAKE2B 563a39e3b20fbbeefb143950ebd9a7630c74257cc1d45043cef598a00b2a906422bc114e020ab53651a118b46264d6b0c7498a9bff174e7c18a75ea9284a752c SHA512 56291aa6dc627cb9e1abcc77d99aa6592d18db17646d069eee510b7497e139bf2948b619a79e1ead4d15351d440c9c74de9fc2994a12dbf6ff8cdb164b54551d
diff --git a/games-simulation/kittenspaceagency-bin/files/kittenspaceagency b/games-simulation/kittenspaceagency-bin/files/kittenspaceagency
new file mode 100644
index 000000000000..953c4c1d981e
--- /dev/null
+++ b/games-simulation/kittenspaceagency-bin/files/kittenspaceagency
@@ -0,0 +1,9 @@
+#!/usr/bin/env bash
+
+cd /opt/kittenspaceagency
+# KSA defaults to x11 protocol as of r5622, only falling back to wayland if x11 (eg xwayland) is unavailable
+# "Changed KSA on Linux to start on X11 by default, using XWayland on a Wayland desktop, so detached windows work without any launch option."
+# "If X11 can't start, such as on a Wayland desktop without XWayland, it falls back to the platform GLFW would have chosen."
+# "Added the -wayland launch option to run on native Wayland instead. Detached windows are still turned off there, because Wayland can't position windows. -force-x11 is still accepted but no longer needed."
+# "Changed the KSA launch profile for devs to no longer pass -force-x11, and added a "KSA (Wayland)" profile that passes -wayland."
+exec ./KSA "$@"
diff --git a/games-simulation/kittenspaceagency-bin/kittenspaceagency-bin-2026.10.13-r5602.ebuild b/games-simulation/kittenspaceagency-bin/kittenspaceagency-bin-2026.10.19-r5638.ebuild
index a941bac84ddf..2d2728d5157f 100644
--- a/games-simulation/kittenspaceagency-bin/kittenspaceagency-bin-2026.10.13-r5602.ebuild
+++ b/games-simulation/kittenspaceagency-bin/kittenspaceagency-bin-2026.10.19-r5638.ebuild
@@ -42,14 +42,7 @@ src_install() {
doexe "KSA"
doexe "Brutal.Monitor.Subprocess"
- cat > kittenspaceagency <<- 'ENDWRAPPER' || die
- #!/usr/bin/env bash
-
- cd /opt/kittenspaceagency
- XDG_SESSION_TYPE=x11 exec ./KSA "$@"
- ENDWRAPPER
-
- dobin kittenspaceagency
+ dobin "${FILESDIR}"/kittenspaceagency
make_desktop_entry --eapi9 "/usr/bin/kittenspaceagency" \
-d "kittenspaceagency" \
diff --git a/gnome-base/gnome-session/gnome-session-49.3.ebuild b/gnome-base/gnome-session/gnome-session-49.3.ebuild
index d3683e25cff2..e88a70edf664 100644
--- a/gnome-base/gnome-session/gnome-session-49.3.ebuild
+++ b/gnome-base/gnome-session/gnome-session-49.3.ebuild
@@ -97,7 +97,7 @@ pkg_postinst() {
xdg_pkg_postinst
gnome2_schemas_update
- if ! has_version gnome-base/gdm && ! has_version x11-misc/sddm; then
+ if ! has_version gnome-base/gdm && ! has_version gui-apps/sddm; then
ewarn "If you use a custom .xinitrc for your X session,"
ewarn "make sure that the commands in the xinitrc.d scripts are run."
fi
diff --git a/gui-apps/lan-mouse/Manifest b/gui-apps/lan-mouse/Manifest
index 0e0925d0cb78..fa725821d47c 100644
--- a/gui-apps/lan-mouse/Manifest
+++ b/gui-apps/lan-mouse/Manifest
@@ -5,17 +5,24 @@ DIST aead-0.5.2.crate 15509 BLAKE2B 0214f3e8ee85a7e18c7d20f9a3fcbdbb9e5af6fdfdcb
DIST aes-0.8.4.crate 124812 BLAKE2B c4a9cadbbfd9d24a758bd5d18b851fb86bd74f5b1f0f6f5706275329d92396a00dc2c35fa0aa2af5b55fd336934d35df413a31f85ba886e85a037296f9df25bd SHA512 96243337546acf64f89bf9ba23011eea1a205d82d96707f9c45bf28cc62ef00cdac5cdfacb8d6013155ee1522ad73dd1b7f166c74ed18159bf23c3c48ec77d79
DIST aes-gcm-0.10.3.crate 148991 BLAKE2B e1376b741386577277a8cb9535c1ad3e15ea383c0f324bc5cedff09a76b11f2c9e29226535688f9431e904bf2800b8e140c4b1cab333e572208eefd19ca897f1 SHA512 f9aec1e2609262c30921bf83cdd82117d147905d4ca311f9fef4b9f1734d3a57893ba2586f0ccfd39cf9264d347ba2c2d2c52b4726495eda8fec7fbec42d6db3
DIST aho-corasick-1.1.3.crate 183311 BLAKE2B 8dfcbba0b9d94e55eae739b16f5c6474baa43ee7854c5ca792f426a9f46fb0eece79cd493b804e51449181bcad338b96819fe977c02c9907654d713e26b9f830 SHA512 ba422a54688c4678fcf16e34fdf3ed06c333e6e3fc8b75af9272a215add494d43ebaef319021134b61327fd5d3572aec0dc655b714ffb3bc71ba3c265c9ebb69
+DIST aho-corasick-1.1.4.crate 184015 BLAKE2B 088766e505a828a221a9bca29cb1833ac3964a538cda62d12b723a263fe0e588406af0b710cf87ef67b0ccb9aa3bf69f42e0e5225ade47abe93c73fcaca69ec1 SHA512 c77e35191b00546f5e499fab154170cedd619599e7250f92db9fba0a41c833eb426f214e58b00c5c39f8757406b33492b3241cb8cb233ce384ad0683c3ee4b62
DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
DIST anstream-0.6.18.crate 29681 BLAKE2B b6f72cda084b38f1e1cfe60de2562e8d62ebbc352176bdf668a2d6be09349bec46d291cd475e8af814ce66def44d95cb98c325761150130752284a82d8a84f21 SHA512 5149977d6f7b5e9cf6350f1ef130caa3ff46c7e78976358452a185ce196cdd77fee48a3a9838f434ae6ea9c15b19f6bfbab156edf819f81179d6774318f08963
DIST anstream-0.6.19.crate 28767 BLAKE2B a40e0dbb790255d300c03c6429074b65edb8ea1fea33db06c610c03e36a1f5e560e8c2ede55b91131a6fcdb1a85882579b44dfca6ef0deb979ef9f3ddab0aae4 SHA512 75a27cd003f44c1dd74dec416f78e0d1027d7f6b0b9735d3fd60e8d7e07d1db870b1d1e037ae4093881854b300b95ccce47a3a7da9a4dd5d0ac1912e53f45175
+DIST anstream-1.0.0.crate 28916 BLAKE2B a9198a66bd3821349f83d7837ba7546a12a74a6f57e179e480bd6bf4a75848a45dac9a19a27c5e2cf01520c7e917d380b21ec16e4485f69bebe112383ba273f2 SHA512 36bf11821e8bc23607a54842b47950782806ebc7a56233e3c458345d79986745f6ba878e39964ed41404eb5be58f78d0bbcdceeb86d523ba40eedd15f7e1f29d
DIST anstyle-1.0.10.crate 15725 BLAKE2B 36e656bd8f9c584f11fda5cfe0c2e24e8426b9e1b602aad34ed118ae6950a55440e292d2e0ff7615f5e4f466fd06f07536be198a59506a587d40cb0c4ede4f80 SHA512 621e7a89fad13db985f07375d316cf8efba57fd44ae18628a8049a65aefbaef27949f99317872e91e0922bb089a00234055199ea3167f80ae03d00ada4f75dea
DIST anstyle-1.0.11.crate 15880 BLAKE2B a13fd762c1855db1a97607957b617eda2685562d90da13316b53a667750e2c53147a01ca55b6b67047cf6a51b4cbd7d346dbd2a71bd9a799619b6cdcb3d26bb2 SHA512 6f3bceb31874be790e92f9efd6b295b67c6f1a26a4e15eb8747572b4abdc2050c56a4bc4ec547917b5c2a5f213ce6bfebe4c6bf1639d2c6993de687b014ffca2
+DIST anstyle-1.0.14.crate 17787 BLAKE2B ebb3b3986c06628ebfe71665216de68f123840093013fa16c030c25e22ff0731cdcd7161737635c532d45ad0307a1b7f951859a40dbe1c812b3e905550b33b90 SHA512 2e7bbaf0794d209f0f19fb8709214c1b1109c27e14d91a8adc232a9bdfe76e653b2b86e341d71f63903e034c81f6ed63ffe7f123f6d631c0f8d41b56d70037b9
DIST anstyle-parse-0.2.6.crate 22343 BLAKE2B 85eba405dc5cf806283cf442984e86583dfe6c681f849eb7a347b7b67bd2b6f692e84fc9b5bd86486633cb2f05960ec16e8778300df114ae6676da43442db9bb SHA512 e28c9818afcda0e9b84c205d9c6697ce64cb06c21df2c3666869c07d66893105d9c5e96a27fcf2410a09f6af00735252e22b5c7d8c6cb3f68c4a8f376c49d396
DIST anstyle-parse-0.2.7.crate 21707 BLAKE2B 41d51d4c026e548a9428f5fd8dc85fce964e3f1cf709820dd53d216af3065a4ee069de8c5bcec5eae19b99172f60e89034a2ded6bc787f3ea4159d5d30de3984 SHA512 3e0920594dfa15f16dd308d0da81d784e6a5d6fd7a3b12cc1512fb625369ea7b4550df549e3be961906e2d3105f72ecb86b89dd6f5817c2c982929ea26d605fa
+DIST anstyle-parse-1.0.0.crate 22042 BLAKE2B 418cb53754b325354a76d75cd73652d2e41408911bcfbadf91f668e7d6942d92ae3c379194f1d38bc6aa26a9ad98c92801213ffddf544fd2ce29a1180179a8c4 SHA512 4394616b0aa7a591eb9b9bb758abd2f067a3fe673b060c02857f6d2210a2276c476f32512aa59aee6c5383e3261f2654058ff619d957bee93d62540e10d81085
DIST anstyle-query-1.1.2.crate 9969 BLAKE2B 179b8dd6dd709c2ca67f4eb5c9a502b2867cb6744a39f824c4fdebedc67c6c3e07d107c7d817e2ffb589d13b7ed4900cf9653ddc0a43663217042ee92ce8c9da SHA512 26069d936c4b1fb09bc65cda0253fe9be8fa4e96c0821f980c772602b4e9230035ec8c9d092ef95e0a0354ac559f8d25f57a14c34086d4d241b5fba688951837
DIST anstyle-query-1.1.3.crate 10190 BLAKE2B 4d173fa220165410a41a54224e65ea87c9dad154af0b8404c638f3aca70c99da122bf0cadf0dff3047afd0d13a052701567efc17cefe4d38f518991a10b54bea SHA512 fcaf441fb8c44ef352cfc6a9b2f4d07e2dfef67a023e077dcd0c6da136661a1ba483d9146835848024259351e568e4946a16a7dcf0c6ae2baa871275c175eeae
+DIST anstyle-query-1.1.5.crate 10264 BLAKE2B e1c1bad89ad4c09e48f9d7c417713953f7f468f10f7f61e351137be801b5986ab3d21406411b0b23c42af4a2b5881b85aa68dfc66d23cafca7dfcb88180104b7 SHA512 3b7b888df0b678bd4560981dd94a51a6af9a535cc1a869bb4577e832492bb6de718a3ac80ecf61f8857b3d0ed7b95e444e85bd00ef65a46c6a244d0b0eadd95d
+DIST anstyle-wincon-3.0.11.crate 12638 BLAKE2B 01f1ce85205ed3e573daca145ae420e9f7d78867fc036133be74bbcc9b83231ecbc681b57eb98bec622bcbaaf4bb293d05d3021a29b49a0a71b8ab89b0ae9dfd SHA512 09c3215dc6cef75d6282078e68c5dbd51580b6c8db79a77932d2e74a51d29cb0ef23c31b8a73a71896a45eb5dc5f94aee209bd8f6e5df4c675dabe3cd304a96b
DIST anstyle-wincon-3.0.6.crate 12271 BLAKE2B d9f4d9d46fa93a1168ca340562681718be852ffa94e30c9ea208af53af9d6697ca84921837a325ddc36681caab2b866b7f574901c80b5c0d862dcb765b81b68b SHA512 59ec6f5a53bd68b6344d82e923eb8c45ddac481dd0d270a7b452dc5b0540ee1656705697c1508942ecc131e7c075248c85d8f4159f27d97ea94f22469ce2eeb5
DIST anstyle-wincon-3.0.9.crate 12561 BLAKE2B f6caf413950cc712789e645f21f5949bd2f1da0fb729dbc03b9b18e4a06c8df5a889d291eee4b6338f0a97abacff6acad82183ca813ff9eb2d025fa0ba947ae7 SHA512 41816e1fb4f962d4461589dca3c7787049992b11f3550e8753646b055234fe9f0339f6afc94a8edc7755e8c6921d8c232beb8b722148455a3f731c93d2c5a46f
+DIST anyhow-1.0.102.crate 48658 BLAKE2B d9c7b7c50b7319be0e67bb236e0420a67e3fd6d6f4bd53a84cafc7a5385785275151832be472c0063405e6d458b5add3907b670ba5e300e08efaae699ab77c44 SHA512 18064a92b6d577151b6f1be3df0985fdefdc5f7089ac0aa9bc92a2034c780eac5b71b8fbb260217aea122bee7c950ff00abf4b6d8f4143dff889b7164c7d6f0b
DIST anyhow-1.0.93.crate 47490 BLAKE2B 1c64b24d3df3307430deb8189ded345ee2858c1990fc343f2400bd67b6d79ee2cf90876326fb29ea311bd857a941fc8319dccbe6c81f2cca2c085dc0c1fffb27 SHA512 237b36bdefeaf8dd2f7d4c5c92d8f7627a5206ded5fa3dafd5710f2fbd3dd7d7187d4a8ae917ae03d0cf06bc8d101a7663bb7bb022507ac1ec88577a37475efc
DIST anyhow-1.0.98.crate 53334 BLAKE2B 469c6bb7f535c0c665daae37b61a001fb7da688db3bedcb8e7b76392af109e5b9335dadaa5775c80d365d599674ce3961240a07582d4fc9a45c6367a6e7bd7da SHA512 6affa8a4f148aefb5a20f193bbe93f694786bc1e707b298a3ccaae1a22d60898a46121532ad5ca5819fc180d4593a8ce2455d754315a9ab3b5c998a4cd20adc6
DIST arraydeque-0.4.5.crate 19936 BLAKE2B d6642e721badc677c6cc05af2258868600a0b6a28cc22f2b977c9a5a9b41ffc6dc4e6e3635621d58de5c108e1c106abe082a2da99523c83b4ea75e3abb0a58ac SHA512 e9576c25374856765855dacc9d005da5bdac5b184b0479085a6ee0c928b166c45fac77a27a4569504e4829e01bdc75968eb3c6ff204377009c1362ff56947ade
@@ -24,6 +31,7 @@ DIST arrayvec-0.4.12.crate 26551 BLAKE2B 45514f09f0fd1fae7afb7dc812142ac8d88d1f4
DIST arrayvec-0.7.6.crate 31237 BLAKE2B b9d1df7e3ec47d434a2606fe9540e37e02351873b376a4e113b54461288e9ab20e02285eed5c4bc0f052ec4d6b3c804044413490ea706c31a852624b03bde7bb SHA512 b1f320746018a7f32340a833420089446ec5cefb7f299b4506eab7423d5db49f00b72d8aa8c6600f9159b9480d5eb3ce69407d93f5c9934147860c83e4d6eca8
DIST ashpd-0.10.2.crate 94756 BLAKE2B 86ca1edc94a6de0445ecf34fb8b59d527591ed0ec0423403766ab03a550e723d9d216e775b168f56784b381260a9e48eb8be53a03c3733018db790d812afe5da SHA512 bdb9c0519b0747135b27b671b36e8cf967297ac6aa9f4c2c5f84765bf41c6b38f06a937b8e0b618a9f886002af4d9ca816383632c352987d8a2dd6568e54023e
DIST ashpd-0.11.0.crate 115010 BLAKE2B f30688760e23dd8b2d535afe2a10dde0ebeb5b55d538e045d82bb786c5b65dca2b56313f42e6c802938fbfad64cde223cc26d0c5644f5826a51b15ed188d03b0 SHA512 a4188f732826fbd81507436333e0ba634de99c2f0545a7a34db250e83ed5b2773586ad71d910b6ecea9280b524d8f34e4f169f436290e5d86e59a0531db919c7
+DIST ashpd-0.13.9.crate 131679 BLAKE2B a5cf6185f220d5b90f173be10e08934944a437e683b31fa2a7dbedfe58c7497c32976e76e48553e54b56fe7e1d5b76fcc69f7a630342938ab45969640985ae1a SHA512 17f9064043a728d735d6dc6a4f2351bb349cf91164268e57a6c68ab7b86a91ce746a29880fa80e2c0f3aebdd2be2c3777afc5cbdf94d700523a0d8e297fd55e8
DIST asn1-rs-0.6.2.crate 90647 BLAKE2B 6261d2a39440bd7809c060f3d9385f9720af496dfb9c793f3550fb2d8d3c443ee70113b620e49e29319b52c1f1c8549648b95c3622a330a9bdd8e207c266f16c SHA512 68666c347f0684ae04703f23fd5b9e1d9b1cd36ebdf4456ad70084750ae79389bc0386ef942c8324e1864719312e8b1c4d55bef6189df1caae2e128720e8953f
DIST asn1-rs-derive-0.5.1.crate 9692 BLAKE2B 81fd70fc9708ec58d2fc85fe645ab35f2e5cdaacf84ddcb54f5af86dc8b6da2c2f7ad1e974b7dc22d390ca4771724ea2922b0bfb3ffe3720aa1692740f1e1858 SHA512 96734a2c6ed24bb3b5e8b40fca55acee2dc9e09dec2af746a095769424e1a329baced90d09838d6a5b99fd237f9965dbb9ba4e1ff75bcbe155c586ba6ad90d29
DIST asn1-rs-impl-0.2.0.crate 2261 BLAKE2B 2b400558c8fdb265e208c973e6b79257264e018305cad53b49e9a965dd67713ad48cc779c1b285a10f0e00ad6942ab03f6b081e21cd147ea27f5dc4cc509791a SHA512 6f710b29c0f1de66643d3200c97da16c546009a2acce5ad84c90e741834866f0d832bf48cc21f7cab2a513c0f5c6d827020355b0feece5c9358756a2b4b6dcf3
@@ -39,6 +47,7 @@ DIST async-signal-0.2.10.crate 16970 BLAKE2B 4364a566ca828387f4e1d7689b1ec7d6327
DIST async-task-4.7.1.crate 38077 BLAKE2B 200f3c2eff92afeffb34404bd9b02af39226024d309137c3835342ab6631c09f14f47abc5d25d77e73cbd133274e731fc88e7e94d8456f690b0f1056bae8dd95 SHA512 8495436d0739a2ce83b372ae13ff24ca1487c92e032948d5830af19c3ba411d7cd004634fa10bc2f748f8a82de27c12cbfacaac92cd0012e1fae024eca9e78ca
DIST async-trait-0.1.83.crate 29054 BLAKE2B 4991f79abd8b9260b9541e754c30d3e0731ff786fcf65cc3f3eb75a5fcedcb37be147222778e1a0fa6c68d8fb872144b2b55b43cf6f8f4de371f24175cef405d SHA512 15969eafbdbe51e80433b53196962293daed2a70d3d9bac91c58e5e7359f60fc99ef519ceb1fd54e34d627c94f821329474a602f25f85179318d10c3147b5649
DIST async-trait-0.1.88.crate 32084 BLAKE2B aeb1cbea6bf3191c19ff7daee41d5b70e3b4f05f7232f719b80dd38eada3747dfea951c9a2ac6b7c4839ec8fd5abdf1c61791516dd3d06deaff445979345793d SHA512 65ade824708497feadf6fdb788cfeb1b7f0aeaa56d860455dd016a5926d83d56b55c3a4b4ef9a319575d30f7a9a2a90d92180cc80f62d998e46a7caa53c4a648
+DIST async-trait-0.1.89.crate 32171 BLAKE2B de1262f5c40b3469732679f82640d676e802f3257eafbf020f5f42c8cbc70d278c3c97577225293a19d22e76f0437e916066e0b1eb4c4f92ccfa504e48b54355 SHA512 deb15ae7b4250666a6ea79f682e1079f50965d6aba353f057747dc84b530140512782e040e97f2ffbd90abab1e470b18ce471aba17cd7c68eb434a0874052d27
DIST atomic-waker-1.1.2.crate 12422 BLAKE2B fc6632f3c9d719b1d24a1c8e05947d94028909d1c629b80576e176e567636dd4cca699c7e91cae2df63541da574146b3ce766374e93f0ee429bb5bc89a4d3cae SHA512 e07e58db7955791259d0ec00fc4d53318aefb4506e062914819c4220c6dc75fa11a7af0289b4653aa1f9041eb975a025635190de68b4800a0e91e33cdb0ba11c
DIST autocfg-1.4.0.crate 17712 BLAKE2B 7f7300439899be03d001dd32b7e797bc4b9a58103081b6f7353c4b5897813cedf870b3fb1fa25d320a75326b334b44d8287e8603de34fc560d0b567143915cc6 SHA512 3b5e7c30bc73e105e4bfcab584c24fc4016db41fac9c356c6649fd841051704bbe8848e09546eb50d7c1f18ea8ce1cb72fbc268a620d5c609b3472114b5be73c
DIST autocfg-1.5.0.crate 18729 BLAKE2B 27580e39b366c6fca02c9db09997b6415c409f12068f1249184268bf96fd85ba659e25ec730f99e10caf452f96c486f3d7442bf09c4552b5f39519b21d6f88cc SHA512 f279856f234d39d369623576acf9546a1ca24d7fe449f36d4fb93ea75a7efaf2c4015b9616a69bbbed358c5e5882e16b045352f046aa4c049b3d13b1e8257b08
@@ -47,48 +56,64 @@ DIST backtrace-0.3.75.crate 92665 BLAKE2B 1c9b87ca88c49e69eeb4a3203b9270263fc230
DIST base16ct-0.2.0.crate 10240 BLAKE2B a8097674e84bb85fa72ea752d71446fc39e695fea9acc0f98178bb4e6569180f9acb4c7a9820708359d1c4733b57af6448015cce83f8c610985e6d2f7858fc33 SHA512 efe7c810102646733cb24c5cab62bd58d797e77b117d0fa5d651c34630f77de4d768fb99c981af5968393734bc32a2c1944a719f9f1a192b5062c0af8bb3413a
DIST base64-0.22.1.crate 81597 BLAKE2B 6f216a560bd36e6e6b74e908344b457594cc768d9763070e269b56a14b150cbfc4b7f599d4c2a0a5f783638170ee132f0796fefb14fcac7fd73c58db0791007a SHA512 91cf2e4e7fc8815f9b8a86a7fa722a20eee3dc1dd57111b29e420de87ce7836bcdb1db01d3cafb9a977710ef63e7cc41b7772762323e68e0e832156858aace20
DIST base64ct-1.8.0.crate 31211 BLAKE2B 26ee299d0b4081a1b787dbac1d801fed171539268eabb09bea517b0896fb74dcef1c2e831a8c7841d5f93c4da411aa3febd6bc2b3d9bda64dd807c3f27eba8c3 SHA512 f623452b774cee4bc5c01e73e6cda92e162d07cf078bf2f52963b097ef6c019c5ea77faed2079151585fcb2b61975143386b91232da3225dd91a704783abefe3
+DIST base64ct-1.8.3.crate 32227 BLAKE2B 98ec767c74278b2e9f80f8b01b4550f4757eef93eb0770ca2969c9d76fe916c06b225d16020d6dfe4aced1af486c8387f0b4fa2deff6662fa4dba51425b22e11 SHA512 9ad519048d1724d4cc5fcedd704d6ddd2ceceb8ee66eb65b61c5067bc3f7e70940d6ed6584deca6595b0708dbaf7e7ea6e09a4ae460788c31b7790f3d1487fae
DIST bincode-1.3.3.crate 28958 BLAKE2B ea01d2efd8149ecba5e240ed989268b683d542a5f369902d316a4fd1ae4b8edd94e2d4a8cbff0e96646eb29facb04a84b249d74f0781dc3d29c8797ac975aa9f SHA512 49e39d71214dbb623a18e3852f6f2f2a5c3f951b64107d66c8adaa95a442a3283fba978bca41b126c9879b12833b945f478d2c77d35482b3577fc1a894e8e5f3
DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.11.0.crate 48906 BLAKE2B 35764719b3070c5f9b51d35297803306ce01823ef07d720e5ea5e112c072b45c4d497f6b63285b1a0fce2842b1468bc252b00564c2ece14211d2af2cd26c2faa SHA512 d6c0de6c06ed8d1249dd69de035dfe5b23d9f1a8fcdc7535756622cf660807c5e1c692dee1ac832c06be1ce41b225e3d60f36be4d1896bab7d986d18946f6c48
DIST bitflags-2.6.0.crate 45357 BLAKE2B 3a368bd2eb58c095b7b4a46680cc2d90a28e24b2e37c854bbf8647c861c4b8fb37eca827599673c5c7df763048149dd82123d1ede1f8a0e58a6bc23c8250f7e6 SHA512 f9bb3c48931ed7e7e05ec6d13305af5da6b6c18861ff307d7dc17c658f63972c87b70b0527287b3625c8592befc207cfe15550654995faf3862bb12a6d95bacf
DIST bitflags-2.9.1.crate 47913 BLAKE2B b14ee41348336981ab86459417b9feab90879a11a6524a8b43f2b89c09c844b4441c31e315c471be00ad21fa88b5dcc7671b56567fdcd72bb0790ceeaa25813b SHA512 6baeac42e4227e58030e317125a3c23997beceb44f9262f029e59c6dc36dd1733f2e88b3c3c8ad22f806245ef404512a880b16f3c8c52fa5c4aab287bb3cfe27
DIST block-buffer-0.10.4.crate 10538 BLAKE2B d819c4f9c4be85868e8b105fb7e479d2e58d3ed85c3339bd677a3e111f85cb1ff624a54d7802ab79a6e1d9221115f66388568340480fe83eae1cb448f19f5b11 SHA512 b7d436d8e627e16e6ddc300ee8f706a6cef28ff6f09eff848eedee46f84bdcd03601303c92ab8996042e55922866a59259948177c0a4496eed723523e77f6fdb
DIST block-padding-0.3.3.crate 8504 BLAKE2B d62481c25fd8680cdf0ad0bc259bd3777c3985ee91d5bb4995f484a15d4a9bde21c5d20f8c2efd0eb340aa0b8c7faac0f3fd817202ef4350d17994f478715eae SHA512 0849c99f2027f4e1a12872d2210310e9669f98929c99690febfeec90c0199b2274e20a5f83824f200f75f2553be2029ca85b0c5d0db4d9d477ffee9a71dd3b7c
DIST blocking-1.6.1.crate 17788 BLAKE2B d07246809d8b80f1fdbdc678b2877f349b748f2dd0f8543e91fde4aec7aea0b45e145a44f07cdbf26934d20269af01844e1cf7d9dd8b9588d129da7f929d9c95 SHA512 1879bf31c18d5cc4653f794dd4109769ae32071564d3a0d63896162fe160bb5ed3d7d8de59ab34363f8192871122099bb8564ffa93de5a5b75ffd93c0d424ed6
DIST bumpalo-3.19.0.crate 96414 BLAKE2B f8c155f77cf977d72749f3cb943a6b171dfc4f67135da345a935ba603f2b52b5feafbba908b31feff391128196c7b0088f6f62d5b37bc4d2277fc0fb9c560b54 SHA512 58db27a643c55adae07061100e3604dad0056bacd42ce1142bcc34249645e9313e886c3174a755593544684fcc632f134f9c6066752ac695254fb9ecd40878cf
+DIST bumpalo-3.20.2.crate 97696 BLAKE2B 0c744cb37279ca82e4c2a60be64c63e61c8290c9ff904c4a2ffd0e23f9ba96b1d63a30cce83fc757cbd40364bbe5e410da024c04cd9481f33831cfacc2133156 SHA512 4c725a4eb436fc9b3302430f5bec699563bed4b6a86c187defba9a83b749089eb6b00a6855afa4d42ac5eb324088eada3c0713f3e8c2d1c85bea4dcca83a4a60
DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f
DIST bytes-1.10.1.crate 76779 BLAKE2B 96573ff7852cd2d4f37a68cb4d76bc43d2018dc25b7b7e2164df022de4e1974f22d4d3ea7cbfb280667650cdb5063d600f4f76cbdca43dae508f29ced449b0f7 SHA512 03429f01927b94ba6c958c46b2e5bf92a23b39ce9385689e21accd34a5d3be01fd0f665f4bbffb1f7c5bdf1edfb1bf11d5ccad00eff0f9388be39fe2f753d296
+DIST bytes-1.11.1.crate 78584 BLAKE2B 4985426ff626d880a0da3d592ba48d697c88a83f48177e2b7380cb55e736a43f3cdf662d99cf0908b599aa8eccfebff2910405559e490b71adcf3f078673cd72 SHA512 7933d18c1a2c1496add2c7193e92c3aa17029c530b7031604ccb7c77c68903f53cf7d41396448b32bdd4f540fef4b37564972dac7b225e6e2ca99cd61179a6ab
DIST bytes-1.8.0.crate 64824 BLAKE2B 9af490b43146b04704e8bf0f7df1f251d7db414b68aa614d47daebcb374a7e18908192cf0a2ecc80f40e70379395b88f60f85fa80f66e3be5661752c4ac560f2 SHA512 a721724e5cbfc73b79102a9c4a00fc9da520417819ca5c82b798c8cfb45af3d77b33f7035ad33d6187399c613cc2e83644236ac772aec934f521f87d4680059a
DIST cairo-rs-0.20.12.crate 58079 BLAKE2B 2398401dbb68b1df0951ec801170413b49444ea710fe91f66766cc6f8efd3bb732195a75c14ed00476453cab297f3a96455c40ad8f10f23666c43f036986c30c SHA512 d8fdeb8051cadfd23df2fde0a6dbc1d108e641f26e12088937178bc6885e26d440ab87f38100b9f9358ef74127670b7ca1e2a9ce2467d92d13775474628a2eb7
DIST cairo-rs-0.20.5.crate 52741 BLAKE2B fe541b09f8e0166a20b6ab3d0efbc8cc3cb9eba7c96c1697b30f328349d5efa8e302e4e15c95977c09b62d6ba2dcc302cfe9f62985757f64dd5388f1471aa8f1 SHA512 93e176262ecbb9c1d78549f3f43345d46ae6ebf7248464b2dfa9793cc7bf13a9eebf23ae132bbf8ab2285cad6c1fd62ab391b46c81ebee1fa5830ff477f69136
DIST cairo-sys-rs-0.20.0.crate 11875 BLAKE2B 54e3f2e6ca3d8bb52fd36f085a4a28968f44dfcc76a2d31fd114a07fd5379b27111c9cb6d727ad7edeb4c72a9bee8d2de2d800d0ef382108e2376b4f875ce53a SHA512 e32181ebb9f6a6ce41311b40ee27cf02c6c0974f9c87727aaeba6686403a976ee74f6a23f97b89678b362e03241e251b63c4c3adae0ce1ea60389360512ecb7f
DIST cairo-sys-rs-0.20.10.crate 14424 BLAKE2B b6a1854650fb9ecdae6f4a8fa7779988803b016163628250d6e78ed6688679516909fe634b03e39a24d8908324f73ebac02f508413eb5354b5fff37524338cb7 SHA512 d760df66c97addc62f38aed9ec95eb8a655d1693cbe339d5f2f238930a428fa62ec9a34dc585ad93eda04d30fa7d03ce366b12bbe3777ee42fd9fb0b044b8f21
DIST camino-1.1.10.crate 42306 BLAKE2B be51b6ff0aa251fd3eff7ab4a2be0129c471b9dd41780e583d0ea6ddb7dda0f069a269ebee9038ab3108ae0a7e8404538f0ff5b207d474468e048c3c74c71d32 SHA512 20976d468b83780dc07d6152461853211af93172b56a3fd38122694d88fda5a9a530fd3cd231972c477a8ae6490504a429fec21381834577f905932377ce9752
+DIST camino-1.2.2.crate 41202 BLAKE2B 00b1b94d8db456bec382bc2d98d28d9378dd4270543799f64cdba674fde3d7c4aca7170cbc7c43a4b69701140f58a157ae4de5f808e6c03708afed5841dfb421 SHA512 e52415518cc476dce1e6b742b59c81a13748af77be5c15b72d104832350b447f5ddd5a1a0fa9b35b79605561cf6bddbc34810cfe71d11461034f5483f1a0a7e5
DIST cargo-platform-0.2.0.crate 13373 BLAKE2B af4a898596eee2cd1f4873ac44fde81202976fd5b0075eeb1acd104ec63c1aec08612573b5fd0efa740c76ba6eb7aad5434950c47eeaec0fb64c3ae185699819 SHA512 9fe01e4dc36ea90e4aa7c9d6c648ab911854a99b08f214f1c141f9439601e6b23d22117bd2d7fa9d62f8bd4f9bea09af7244313201ecb2b2e1eefaf7e19d1b0f
+DIST cargo-platform-0.3.2.crate 13515 BLAKE2B b5514bdbd61f1480e735c21ef3d7febe4e9e034ea01f8f18a7444dbbb30371f9cd84628debf3bd24f0ff916d1caf18f8e13aac64318b5d7a185b665d9aa00eb7 SHA512 eb6b67f86022f75557d91c497d22b8236b4af240ae357980f011be3690cb11105fa11a14885c9b8b38eaf423df6df273eb4de2110ea70ed9bc4fb8e31d67274c
DIST cargo-util-schemas-0.2.0.crate 23612 BLAKE2B 2f466744fcbf231317d6bb7c1a0f949f7d6c6866349f0e0f1cea86b21685ca9b6889c0e9dbfa14d43f505645fdc0c66799b240781f80482b4c4578500cbdedd6 SHA512 f82abb3f18e703791ee15616956e11e33896b19f9d5d5abd1b9c4d5a7b7923d4fb47290f57a4799249fdcc703ce1085a4e7914d4386f2a819670a53ae621248f
DIST cargo_metadata-0.20.0.crate 32312 BLAKE2B edc5654901b8083ff50dd986b2e993e7f479b6e15571f6bfab2e000dcc4211c1971cbf881590aa7e5c8f626936eae5e416775f4beed51640d2e7d0be8ae8acfd SHA512 d3de47592e39b366e6252050709a7785c8a73b836b8373d0bb9c32bc11c12c800b9b90eb5e1879819ab97ea51245e8ea9c25a5ea6374b8fdbb0e39c3fcf74586
+DIST cargo_metadata-0.23.1.crate 30497 BLAKE2B e9152de1ff2520d70882ffcaa61ea9d66f096d8ea275ec313619de4f3ee5d58b9ac7d6b1086654249e495e7c9d18efd7208bf157c86f4dbd2c592c82b0a07596 SHA512 1d4aa613ce07af39c7886d856160e2d0cf491f38e64863007adb584129434bee1fe5bc618efb65d04a477de5d433ee44ef502a44ed50a18ca51c86153ecb6499
DIST cbc-0.1.2.crate 23501 BLAKE2B c0d537af0323a92cd01a9ec197bbe46507835348e16dcec7360072226647abe2eaa4823023930da93885347fe1429acc2f9c079b7bcac686c1293ef73b91bf0a SHA512 d3b33deff64d839ad25141f1c3b5fbeaa21f71aee7b58dbed91e7d257f93e68073c8d4a63d4c4eb9775c20f00bb0ceeee714a8218e85a231f30cd7423022f820
DIST cc-1.1.36.crate 91996 BLAKE2B 194d5378b0e06188115db25a52bfcecb90eb43d6a51a73cc40e61ee892dd4f781bd6d36fc75e231635f28e15f573587d04d08ef22d27f7e3d85a9b3488756ab5 SHA512 6daeb953f8643a6cdda577b19bd59378267255ebcdedeaea9772e9ed6c33a883e1dd04ac696b737978b40885761f9e0005201380d2d95652b2e2c5c00e9af185
DIST cc-1.2.30.crate 108550 BLAKE2B 72d3f532e1ce87f8a872d5551584b1fef0128a6919b2e9871cf24d905513d19a90f17cd9af8f1455874fd50c7ffb9956313788277822412803d53c04e4fa921e SHA512 e0b3837400a3a31f522ee8e290ff2c7000c8c5da2f424b552092a64295f4d76443208f4688638edaf081028dd8bfdae2175552a8f22cf16d0440f7877475abc4
+DIST cc-1.2.59.crate 96779 BLAKE2B 9998334144446989e686ae2a54472bf99054a15ad767fc06bd9e98038a44884ed2d8c09961ef7e30f30b94f952d9291f49465f6a8fc4c9b392e8c6aa088c970b SHA512 075cd6528067f585cca2aa9e6695c22fc5e5262ce2c91c2c0764ecaf20559f37aa0358f8cf304c1d2ed1fe2b0a7dcf121568d5f6821cde860c204cd68c19d5a0
DIST ccm-0.5.0.crate 242273 BLAKE2B efdd4f3eba5ce98195d004e2da349c165d10574426287611179f16d325136012ec11a09b780ee20e9895524e38c83bdabad2ff1c518a5e36da25da10c7fe8713 SHA512 35a76b5ce930e1d280e881d2098395ed3f59b239485fd12c0cf1f6af793862e2042389a41f5427f2232da1cffb6faa117ae0d61d483b495baa4d02261e21cdfd
DIST cfg-expr-0.17.0.crate 43509 BLAKE2B a8b1d4c695d85a46166273102632a234800273dc134f7419c57cfe3d1962ad029bb5f88d2b6c12753b1a3750387a8fde262457e9d2b0b3149ac68155eb671656 SHA512 8ac68feafe031fa7fbcdb47c4f4e0cee704955041600191f98c242354ca690c0b636ea8c3f30103dd36676633b0430d0e8fb0d54602902cdf660469a243b4dae
DIST cfg-expr-0.20.1.crate 44712 BLAKE2B ad25fb250792fe0a96fefca2be9fa8f5cba0940a375513c2f921458a2660033bd2ef5ad4931f19b14536e8b40b22c07ba8f4918a1b18861be103a8058d94dd4a SHA512 488d6e485912f083ac460687defa15bc3e1b37d97f44105ce5aa89b3f059623b7ecfcd10bdac8d7a4538fa1870a952174d90d8e7e0c402303882a86a96796d9e
+DIST cfg-expr-0.20.7.crate 45355 BLAKE2B 6e4bd3327935300a315f02c08b28e4be9044a1ae2711a3bddec51a31dfdfc305fe385e2d316c6a5e06b89e4aaf7c88d8d8834a0207655194ab1ed5f24a21e5e9 SHA512 902bd1463e27a653db45ce89068ae4dbb6e30f86d354cd0b3b975bc9128ca28f77297c815e0b32fd3922a49f35589b4664559e290f55d16a7cae541728c26345
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST cfg-if-1.0.1.crate 8683 BLAKE2B 7d7f98e46b98e0f6fe069fff5dede72390adb7522f13be35c37f99713641e98dff87bd58e594908565a6f42ec898f11597e8a82a01ca2e8e65b38563e09956a8 SHA512 56af0d562fe60022e8df9c5b4e9b2eed6d7ca1874c4d3bbb52148d6f3c6f7d30e0b63d4b1e652ccfc8881a663fb6f450a48447d5a8cce0c2e5a2ac12c6ac655f
+DIST cfg-if-1.0.4.crate 9360 BLAKE2B beadbfb273ee97cbb6e3740891fbace57511399ad203459b66b397587d794677a9515cde4e9ec4320c3795518bf1551d72b9a889f8ac4b225168f493288b7c19 SHA512 176e04df7ba783b7143bb84397b777f5c5a1305c08a5c3a218d4a66830620be89ed68992ba27686165bcd3fb2f34b2daf80b2a1d4b481ecc267c988e84d28e9d
DIST cfg_aliases-0.2.1.crate 6355 BLAKE2B a758d9c88527f0e6e7cfd6d4c83eda1bcb4d6e2438189fe08e8ecbcaa78d56afc5a4873f3b82bf7da96afd690b44cdf1e44466b6da0f37c358b340481017103e SHA512 74969d12d5d24002a29e08d52e30fbce014dd481a7c35ee0162e69333c5f2d7755f3b02439b31522e12444cf1ac8e65880ce33fe6778dac03757e362cbf8a72c
DIST cipher-0.4.4.crate 19073 BLAKE2B 144c45c1bdc5f7aef7f4fc63b6dd85955c453537567d1f1074e436e50d0d61f8413973cf3da207a48f1560ea92f2280fc5880569c78a1dd66bf97fd1d88ccde7 SHA512 1856d8b08bc3dbd2fa5c8b97e9eae43323c7aa19203ef3e80bb49cf15b5ddc832acb7b97121a52032656353e764f1f722200b638f7c28975fec1b5c9dc908846
DIST clap-4.5.20.crate 56376 BLAKE2B 8efa9c3e171ef38c98a25c526f528629e7e72850c6ec27e7e89a212403ee90d7d005b00750769e4335423ecec1d86abb35c19b0bf7f2c063bc7c6a8bd59d6804 SHA512 e432a118a2ec15b273a404c3cb75bbe579b11034ba55def1823d4670c6553e3d8611074a24f50a0f4adc8bda184213b06106c44c68a19d267342c53e345351d4
DIST clap-4.5.42.crate 58305 BLAKE2B a8f43cf915d97e9f337e87a492b3cdba4b76ab970bafc9087208db5894d8a83981cc774c749c157fa6099b0d36247f50d04dd24d395fe1621223a02d56a7e9bd SHA512 c897f99db65c04e70ecfe121c123b0c9d110f9dbede80c78ba10c60fd5e8d56c28522593ea4ce4d1453d90d428b4d4b14ee9bcd90645c8a7d07d6a55161d13c9
+DIST clap-4.6.0.crate 62930 BLAKE2B f184cfb0d40adef5d0b4ee0370208bdeb6587b9dfd1b37f71a577cfdf77101100b4c47809ceecf946a855455ab836273aa6b8bb6570d0c126a82754f16bd95ba SHA512 bc5641690f0a0ed2b660836590174641e568be3d2b92d5dc91a82581fdef0543640190fc3c8ffe765f0245a88c0f9809d4e136af156a3d480a680da28e8ae5f6
DIST clap_builder-4.5.20.crate 163812 BLAKE2B 689110f2e4f46e8c4c779b6c39cb5f5758c3a32ea5bbfa1faaa6642da7d650cac0827a3e5b503c5054a85e0e7dbf04e7c53d65991a45f3be90c75070cc9c200a SHA512 e914c8b6592f9d230b4f4290cf4b4d73d0160c12a1fa3976c74bad21ff16da532d6af792f0a33fa472166f1cd551291b5d1d71fe8b359040040418694ec52000
DIST clap_builder-4.5.42.crate 169655 BLAKE2B b848b4888d33381d05d5d68d31a436d00cf5026effc10bae2f4620c446df746b335678488a117f18912f066a0e89456880cbb3e6a072d9333026f9f207eadaf0 SHA512 9c7f670baadb72b49b33aa2c1596a39f04242ee8b6e215cae5e9b0ea8268e4a16b32a4a79819d4b45f67d233d329cd3922ec8b94d1aa411ba9441a88535da937
+DIST clap_builder-4.6.0.crate 171122 BLAKE2B 0a6ac216ceee45625500379640f9306015f749c377d14c6c9538fab7988da89b39e260bf8736d7ca055c6db32613fa7a9e73f325fc496d7521ba3453c8558348 SHA512 43b26377a8f15d29f8fdc9ada914888d87111084c5e205308d166789a27d91c2d8db6756b24d48ef8a293c92ca4c27dbf5433db21e336b2116d51377116fabd7
DIST clap_derive-4.5.18.crate 30131 BLAKE2B ff962e52d8d8afcc9639365e27753c6c6943fd809ef89d9e555e8be5b2f13efa650bf1f9ae451f4c127c1529a0af1d892c3b02153b46deb912029b45983e01cb SHA512 035bb918bc7e9badd59341560f23e3a8a2e7cf945b6d8183f74052c4edfcbecf07c9ea6fce0ceef0b84c89a99d62b11760af39398897e4ee7dad0170a96cfefa
DIST clap_derive-4.5.41.crate 33493 BLAKE2B 48a8f1be0a9b0f1a0149370217a939dc10e1829bed846ff1d1c39d8ae2424c9a6303a70614b7ff11afb67ab82ce23ef3327d1c34b2b0871d5081b81144c51ff1 SHA512 a6bb6198548b7f4d7de5845a0f262cdf2b385f653c7bb5720bd5cda9dd7ca371de7460505c6490bf4abf051341a92abf732b0e61728cac37ba829b29385a7533
+DIST clap_derive-4.6.0.crate 33435 BLAKE2B 93fef598637bc3674a7682f724412d5b515c3d219fe4d7e854dbb47864be598046e84c025a5245add4e9431b305d232e6207806cd87aff72cb3552c490426aa6 SHA512 4b642e4bda3af45b21fda189094f73b295c6890f2af533e1541be0df8669d1c7d8256a88dfd47f488ea6adab65012a213521d52dd902f9f11fd3b776923da1c7
DIST clap_lex-0.7.2.crate 12805 BLAKE2B 952bf3f3885ae7bedd0e8add236590da5fce72a7ccd88ebda063410aef337ce7ccdb5e5e929cb870bc993891610edc0197150a3aa82a62fadc4bbfd96324fcdf SHA512 a8726397e5372fca3389748efdfdbd016b6baedad5b4bd95f33e4e820d4f40e0b94c88b1918ded3678aecf23911028e2261837e73d58ba7fd6f091eb47267380
DIST clap_lex-0.7.5.crate 13469 BLAKE2B b14d273b3be318a22e93ca922b90e54a980c7a11f8f89f735e59a289c07be9e6652f052ac10158a3c2d8d8233f15198773dd98f40eb3d226cd4dab8255d44c0d SHA512 bfcd632128e64f5414737f335dd3c5a62b3317e23d15472a1bfd617abf146c4c2c9c22e990b934adc1f8918359ff6fef09217c9f3436fa024a33bdb48d4a24e0
+DIST clap_lex-1.1.0.crate 13470 BLAKE2B 3e4895620e2922bd95ab6e3aee296457adbe70c2b3b2fca24c48e5bb700ed622401c68f494a266b91f1b82a7ee109ca90d4eee7ab6eff35e28b5fe8038398e5a SHA512 d85237e0558ebc745b08a150ba8115133b1ac1ebfbf6b2abf632863761fb70cb329639bb1c30625b9e786bb27b19438af11c123c508fb39e682f13e294ea6d9a
DIST colorchoice-1.0.3.crate 7923 BLAKE2B 7055fe61677143f0d4445ed5f6be2cbc284c155aa6ceac04df6f3fa2563a225e440ba708bf40e298ad09775ab7c7e1842b5f6dd78422b06dbd1250908e3227ee SHA512 fc26696189d3935d5510a1237504339c1f354d03ffd3b4e830b7080335aa778bc72787ac5fa9a67a731b9bde2788da778d497f2ef97ec68bdec5145fedf4cd14
DIST colorchoice-1.0.4.crate 8196 BLAKE2B be97be7d875cdd09cdf3f2594f0e7ed80601de62bc907ff70053317b9d48e889b3fd2fa0da5e6a681fcf80b24be5e16089289e3dbdb68255b486c18c517c55f1 SHA512 0bc6e55c3909e7bcfdf198d5d68ed8b588b82a72f53aaa41efeecf9dae2d31e6c172a7ba922e000fd7cdf6373c13371a98e7da08e6988fdcfbf20782dda8e4e5
+DIST colorchoice-1.0.5.crate 8187 BLAKE2B d6415c5b337e2f4f5176003082e6e8c52f55a45ff959376e7a3f30e5aab1ecd3f84f9cc5e7a8a720398c1b58f99a07cf042695adb0b35178931178cc8d77d2e8 SHA512 af3a5e7e837b280cd8f0578d2ba2a04443d4c5a445577f444af9edeef6cdb47de134f77b07ceda76ea6b2c73b9c10e1d7e3e1beabfd22b85869585c35db88bd5
DIST concurrent-queue-2.5.0.crate 22654 BLAKE2B b490e76804e45d6a7af6bb4ec074fb370d9ec7cd67c7ecfb55d5ed53b9b437c174e678add915303559e902ac81c8751dccb2c5ef0543d5961713372fd2b08d3c SHA512 235704f9161dfac60d2a6d2cf96425e39c097dcde2f005187c1f044704eec66d8303d59352cd414a81a3ed0eed60421054b0070a9b8f69065a79a2519e913e5a
DIST const-oid-0.9.6.crate 45382 BLAKE2B ac27c689784fbb1f486cec1c17502c8738ce3d7d1b579391a151cb0f0a6a0c8335e474d0a517c59230fcac74317396f20ac15d66e2f6685780be01dab197fd96 SHA512 b871d3b4326c4828b1c1d7a3e968315fa320e0b52e97081a95617ded0dc5b93d42b3f79ad26ff3b58a4835dcc442473f3965c2b60026412ad6aacc0c23e9f399
DIST const_format-0.2.34.crate 78068 BLAKE2B f077577c32c62727ab2a3754719926728cf1b63712f0e18971bf7946912d165fee6dab05aa70c335caf39e9cf21929bc3bb6f1ff977123dec11080ce6ff91e32 SHA512 4482e1262dc47460aed17cc3475ec198a875202e5719d3554b69631029e4045d0ee0588a973fc4929f4798ecb92d1763c4bb9d1be09b5f99642eb9a6451586af
+DIST const_format-0.2.35.crate 79187 BLAKE2B d9f9c2ba4a24058db95b69f776348f69c779973509d28d2a8dd68443b77d1d284bafafd260f0ef1cbd1887856e9d19268c284849354556eb3527bc49d2253ca8 SHA512 4bc789491d9da5b2520b659727ce221486b1c79829e74b2751af336e2d3c2d2c0a61e01caeecc7c65da724af8521fd42a04da6e58a8cbf6bb8daa5c3042b8ad7
DIST const_format_proc_macros-0.2.34.crate 24396 BLAKE2B b7826f28e02937dfc13a80e6790b0f7e00f6c2be02d4cfd6c0a34ec2a42217189f4a9f0feea1927a135ba5f07c6e11eaf71d402ad25d976a5106f4f1cee7dd93 SHA512 f42887fba0d5ce2e15b18381cceb711a661e8da6267ef7dd0ee636135daf14759f04b32d9b8628c5ec63acb3acdc5a2c101c34039147d55ec90fa5c956ed807f
DIST core-foundation-0.10.0.crate 27023 BLAKE2B ba4b8e42aca4df30627eae9e8ce8ee9f4b512d51141338d284f9b897ee944619d7f63b0bd9318263eb5f5c1436ca0fad8a208c8005620779865c4f4e653d1fbd SHA512 771a34b79519c5a51e3490589672ecf3eb019d4eb28db9d19c88bc116632dea96ebb2cd04e251e94dddd0876cb8a7f07ec65aa5143f7f8aaf1661caae052a94f
DIST core-foundation-0.10.1.crate 28886 BLAKE2B cdf45ff591a441337ef35cc4784993f95e398e5aacfd91d6d8eb0a3b38f9a6974f6a47797fe63da569a07c6ce7fa8b4069d084ddafa10c85f31ed543fa7d2f99 SHA512 2d7cbb4fa6b5684e700337eb86ab5c0566a69c027bf7a7eb19054e9d9f8955a7cb069d3e31ec046be4fd1a4ce1883155be8f59d223758974a649cff80ef0a065
@@ -104,14 +129,17 @@ DIST crossbeam-utils-0.8.20.crate 42487 BLAKE2B b50da06721cfbfff07825574feada8a2
DIST crossbeam-utils-0.8.21.crate 42691 BLAKE2B cd9015c41f532eb3c90101603f32d383f01e6880718b727d6d1fe46872ae276cda685e1b548cf77dd22bb1a05f0d4c4982332c2bde90e1743dbd7f51919022a7 SHA512 6f4aa7ca10c20da291c4714b56ceb1fab1c06b03b2f4e28e474e9aeb95ab6615a25462dc7819713652c3b5f6a06fa0f24ebc92c533fcf35dfcf2655857d975f8
DIST crypto-bigint-0.5.5.crate 83384 BLAKE2B f688f22331b4b3620299ae9b50aa9ba6e1b2c7a4ae55e4236f7ccb8ddee4f61950ee0332b6b67005bad505434f3be74b1a0caa426036dde94162289c6926c8d4 SHA512 04668d432b4169154934d55b8ab14f708e59f70a70704b56cd72ceaca460e15589965aa92a22bef20b32ce637a423cc6e1a8819dfba38a32353bd749f7126021
DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f
+DIST crypto-common-0.1.7.crate 9619 BLAKE2B b9a31ed6f3f06e0709e7c5a86a146018c9ef67e366f27c1d4fe07461d97810951eec60e92ec1531e365bfb9ab1b4cfbdd86b6cefd8b06ef2aa170c38f3c9cae0 SHA512 dcf3a6fc81f2b6528696dc762427fb198faa9b5effe1ee9fbda795da08b0560cfd6c286b55f1360864e95284bd9a52edabcf39fa9bcce71ff0621dbfef538c82
DIST ctr-0.9.2.crate 18344 BLAKE2B 195dce5872a0f59b90bedc268c5a5796f3076d12868f29f887294301b3576047ea82098e73ae996f564e400ce316cf1cdd9016ffb714559aaa0465dc826f0cbf SHA512 6a027f4e3881e51e3dbcb89348c961a2086bb63e70652c49107f49b7d021e31f74ec8c6ae91fd1605928f93f5ffa27889f257c166669e18508995168f17b46a5
DIST curve25519-dalek-4.1.3.crate 306017 BLAKE2B 0c02e769ae48e6839e37e622fecb8b1987fec0653049775a80bc53827329b50d6b8aa8288f26af306208d4a2edb94ef92a64d955c395d980cdd2624c35f0cc26 SHA512 a1dd318f96b5f1851d82a6fbd29c44dc85d2f75da16e5bcf9d6ba3abecddf5e0eaee4a7415d8afc09923064fa41529ede2622f8a5fe0b3e6d4c88b418c41bb5d
DIST curve25519-dalek-derive-0.1.1.crate 11723 BLAKE2B 442b0e4fc519f233d3fa46c17c2e25807374360bd6576e97b4ec33e6c2cc228bc917e4e395a1d70aa19be7bae57db36d2c09c4c7d505691b53d5a624db67eb6e SHA512 60861002465d2ba12a6089b31fcd7a75f7a6d77319159d5383f29e857adea8cb7e5c9c0ab6977c8cfa34b60e1012a1a5dec57f637e6a225e60269ff49c25b29b
+DIST data-encoding-2.10.0.crate 22293 BLAKE2B 69e1b5fb57f1a2694974d3ff97da7cd1e4cbec8da0e57acca804208f3141cf0381b329d3732c01cd4a42761f8072d2e42404adc7a6415b091e5836b48c757b2d SHA512 b7811d5620214f4d6361e37ea9dba7cbd9e24cb55066086f240c38a9dd27f31ac86fb358c515704d82cc50fa59e42070d7fabe5949d9355f23453488baf8058c
DIST data-encoding-2.6.0.crate 20769 BLAKE2B 9d5713e63f6f6a4d6e5324fb0be9308a231ccefa20d69cda9e19609a2250e2cd72030ec28309068f71c932327a3ef680b749125658e27d35273354c3465f9931 SHA512 a685c7bbd251a5738b27ac3ac8121a0db049221510c99e0ada6f245ed7499d04ec29d725ad01c688ad283e3d2d5aae0751685c804f6d95cae84e63a160d04c9c
DIST data-encoding-2.9.0.crate 21564 BLAKE2B 2abe5ad8772030140a67c015cb1ef5c0f1fadfb0398d0e73bdd8f93ae229955ef9ae430b28cf622ea3cff4ea8108159c05aa4d501eb6feb5b7a34b4a6c86fe03 SHA512 ec4edf4b7e9cf3f0f963de117e15cf4e7723587782b4520b01101e91880b074eca1473dc6c9d4e484bc2193caa975a7fc11ef3efb114354c491f13c86b149104
DIST der-0.7.10.crate 90111 BLAKE2B 7a99e9f047b465eabb798286a613948347aca44afa4bdf171fc9663f128b26edcc23a8b1057f64e607a5847a9bf41a292a1f1df920bb248e98737d2ce85d4891 SHA512 73e25398cf349d0bf3a656cffc4390f2c82304c10a5da6900f2216ead1150d82e614eebcff8fc3e837b185b705114a77745700c6d7c0dd6bcbc2299fd213d73b
DIST der-parser-9.0.0.crate 63191 BLAKE2B bf969104ab390c0bfe7b908254fc2fbd21559e3db0d042449ab762e4ad0ac24455e177da41abb17d457bae590d76a6e6f3b2cf4c2121bbc07acb3ddcbbaa5856 SHA512 cf7bd2c0ccc89622acb945c60d5c0a74d181214bf48c469edb679491a8143310a48689291c261f00ce8982c4be6b7770c39ea00b45b3b4f65526dc54e1c9c0d2
DIST deranged-0.4.0.crate 23235 BLAKE2B 98179347407a033268eb90d18c75f555fd5fac273512bd08d55fd5e111e6160f23194073ac196bb47f27fea270e1c4ec67c26d38f189e58171d20ea808ab887b SHA512 212c6cc296846425e8b11aaec98666015ccd7fb0e2d0818a8708509ef51ab029ca6bfe4673b168ab0174e41e92b24e2c0e4da939c09b26059aa9e8d396284985
+DIST deranged-0.5.8.crate 26885 BLAKE2B 72b9b2025009a0c69a6678f079415937c39c4a4ad307eb8dbed1f8d2d6e125f0ef4e422b65a7d08c2b1043814acafc0c6a0e81b024fd8736930eb29793e000f1 SHA512 cba9189672275a2d46d61ec04ce8d08ed314d7dcd7671029f3d7099106e112879eddcbeed23b8e167467abc9e1f5211786b5a91a7b2c41720badc601e21a17ac
DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c
DIST displaydoc-0.2.5.crate 24219 BLAKE2B ba3396c93d27a99a92ff4a0f01a8d192b419bad25e48d9427b76260ebf2f9982291d77f2eb24d239c0b1fbb097e866a20bc46dc1879fdfc6637ea49928444a92 SHA512 5ca35fa59f263162389c1180331e9df607d9374bcb056cb04bc46c98e4d87277162ddb2335ffa8a8c5f69218abc3eabccdcaa71c21b8dd9081cc4146f266b948
DIST dlib-0.5.2.crate 5806 BLAKE2B 2a8be2d76c44c95d5b1b9a5439a99a75daa703a341980d8af1c050d6096d45fb748f0acee7f7de2f9433f97ec19faec9e028f57c8149229eecb1827a1ef8eb60 SHA512 4a8f1c09007ecce1d7c829899aafb90081fe4fd89cfac3550638018760e24f63985e3060c4056b55bf58cf4622b1b31595e1c524a75b1b4354b8f3c35fc267ae
@@ -119,6 +147,7 @@ DIST downcast-rs-1.2.1.crate 11821 BLAKE2B e8a78afcd8d2f17c9505973359e2151d59b23
DIST ecdsa-0.16.9.crate 31406 BLAKE2B f827c0ea9f80555a1c4e37efa3509ef57bcb8c2abbefac29cfd85c3904d82495753bc5917e8e2b8659bd091d73c2d57bc2f6c8477b7d5d44ab858bd3a99229af SHA512 c69f921653a3dd47fede16aa886675c35b082c7b83486a6fea2c39cf2f98535a00263d7f0e68c5593d16b7cbee757ea913060bcaaa4c69884ca6fe2d3b149222
DIST elliptic-curve-0.13.8.crate 63198 BLAKE2B 542536886019beb276b587f906c5552d88229eb06364d93db5eb6c93f70555e9e38e4636bda14789e5ba5b54321c0c6da85aa8d584e638fccda107e296c4d8f1 SHA512 64ec7868cfd2350f5a0e9f4fa7e2225b7f5532b8514ed6d5b8a7718f252f94caba4acf51b2471ac59717783289c9f2ab35d47881210ffbdeff08a85f68ef3042
DIST endi-1.1.0.crate 4872 BLAKE2B 8bbffc45ceb70777c6606714a7bb8f9b26ff33a295fd722958a5e9c556d5bb1e97a34e216514e5acaea51811d78fb4aac927c1f8315fcfd8000fda3741c53b4e SHA512 1a4b65cf77f530a2d15cfe968aecfcc9120957d23d2b442cd3d8f23d7039e832e7d6ab29aa5ad8570468421095650e26fa07f29bf75ae361416072241726c61a
+DIST endi-1.1.1.crate 5045 BLAKE2B 3f2bbc121103e592c86dd74ed864301aac984a74e9955e3d43af881248fd6d45bd172ed344ee3cac079dfb8bbba9020c6dd8f0646505e60590bda93ffc73b101 SHA512 abaf1654a5ee129652490581410dd57aa8490cb1cccc5de27959a4ed9c1d025f77be2e8c66908234871766bbff623aa932bc1c85545dba7c5b9d2e44b38fdea4
DIST enum-as-inner-0.6.1.crate 12190 BLAKE2B c2162a838bb717ea7859d5c11ea820aa6bc79210bd6a9e06e4f05bcd17a3c92bdb7d98453d58911f96dac79bdf553730b58d4949d268321aeae324187602ae09 SHA512 e6f80a4a47f5901301debff47f1e88291ee6d29dda2805373ebee62f77c149a2c7f8d1188f8a365f2e11f5497025036aae4a4c3a7f570928961d1d25d6caabd1
DIST enumflags2-0.7.10.crate 16622 BLAKE2B 5130fc27294e25ff3fca4bfae3895c79ef3f78d20c64378854375ef859eba0e0b00dc6b2e662129bc41997751537c40e058674f43323e11d463f2e8be34ef593 SHA512 03baa542e83b15d0e2e36205a0ea7a6694bd959b315918302324d50ecf30efcd915af79441c9c8c15670c16776442d5fdce51080fa7404662e2756607fee1668
DIST enumflags2-0.7.12.crate 17544 BLAKE2B 5b11f629d947c1cebc3cb0d7a3c37f7639ba93409c9af5b704efeadd66544e82086abec82cb3b9c0f74361b53701c27c2e1e0f16bacc9794f1df58bd4dacdd06 SHA512 b391276c9fc827efe9bd6f8d599d4e26dcc602c97f18b302b3eaec73f39193e0fb182f8a353b0ebdd4416c2c6406bcf44b7b849bebf246f20b61332d7d0d963d
@@ -126,37 +155,56 @@ DIST enumflags2_derive-0.7.10.crate 8104 BLAKE2B 7332ce1236a62a02c3441192e1bb9ec
DIST enumflags2_derive-0.7.12.crate 8573 BLAKE2B 12b9baa7bb0afe90437d0a99873a790ba4fb2091ad31dfcb5c2f6e46ec891f32ea5b397d4b7a617a6509bfe5216f1de225a36458943c8c88c2b00630c7ff26a5 SHA512 9116d0559ff0b9de47898a55b53e77bbeae9ef8b790e9e081388f1458d118a97c2b02d29242080b2891bda1cc79d27f425a0347802205fac0b60cd15c7362a9c
DIST env_filter-0.1.2.crate 13327 BLAKE2B 96f888b30ec8b40032e588f8ac73e9fe23340af71d5ec69cd8b4dc2bcc272ecd64d1d3ab54bc57e7a71a44cbac497ee7ad3df52930dfe3c7ba7dd129df290b73 SHA512 b1f21a5d4aadfd940bde3e53935c04da48e48cd4f825cedaa83968a08244722aa4e92afb9fd2fdd228412754f040f7bb68f24e05c0bf9bf57783aec042808606
DIST env_filter-0.1.3.crate 15191 BLAKE2B 95fa27602c10e819ef09b8f4935dcc3204104f7c5a0227e5fd33cc51fd77f70cdab3d822670d216321f263643d1f5220f5849002ad857925d4170b1b56cd3fd7 SHA512 94db29f1639636655e05ab02611cf14d5c2c8778be6eddddf0b6b8c21f364a71909a2ecc3acf3f4062d5d3c79a6316e9ef30b2fe042f617108af8431e198d344
+DIST env_filter-1.0.1.crate 15045 BLAKE2B 925b8e4e96f2ba1450e051248497abf9e9f2681c0f02bca7498e768cc92895c052fbefc568e48120c30420080b6c494efd820ec480d49b17f45de164ac9af474 SHA512 c4ee750d89f34990254c50749d15c7c212f70c4e62073da8bca64c8321e95bf5c8d9857aa2d7d51ce0ec9092bd408ed09ab61d82d75aa3d0de047249d8366fba
+DIST env_logger-0.11.10.crate 31613 BLAKE2B 1bb55887a493850e09cbaa51560d2fc946ac53c13d6870412a0ab6a7a8975223f9ce6dbfd791e1c85bbb7515043fdea022d2cb9472115e8dc86b6fb7ec0b9842 SHA512 87a86bea013ae7e8d4c3a32a9f14b724a16ceb30cbe57f7218e932027dff9a6e36468fa500f618d99480f638f1bc5437c442a828282bf47deae1448954243c38
DIST env_logger-0.11.5.crate 30683 BLAKE2B 9dd2b461be5c5cb3411ebba8bcdb53a78fff28c54fafd21a0f8c3fe578ebc3882ed5df63a5ef9adf62bce00fb6360de895457baf75fd2ed1a6730429478c32cc SHA512 e2ab1f117227ebf8840daaff971c2533830c0e481797cdcaa055a4506ffef78fc0830bfa13295275c604273d494278d43440b987132f97ed6bc1cf705e05cd8a
DIST env_logger-0.11.8.crate 32538 BLAKE2B 9d62afecac4d4fb20bbb99611cade6ddbec17c8dedca94aeb13fad8fbfcf82988a55bb45400e78adf8257fb346b0d6cda3e2c2ed2332961d485055b365f396fb SHA512 84091355d3d9f2bfb1fdf4f1c6309444b513385d9b911f3af8cd1b5c467033769e7add11f65f31da8931dd05d96a348e0bcd670733d31ff981faf760d727afa7
DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140
DIST equivalent-1.0.2.crate 7419 BLAKE2B 7ce4fb7b911961cd4ccfb48323eea4952110a069789c6bd177a63391c270df861afadd00c07db7b22768f0864f320e429e0200c433284f528336e2f81d071eff SHA512 8e0e2dc070794a85b276e93f9e4a65d3bbb8587b33fda211c34479a0b88504c913d8bef9e84d7996254aeabe1efe4ff1ef6259ff4fe3f9ccb90dd90070b3e4d4
DIST erased-serde-0.4.6.crate 28352 BLAKE2B 51b517c7cf797c7c2a5ccae3327ed9dd6a8fa8c60c270ad47027296d6c53fab0c599373f1059f98f91f80ded66e39f6cdf48dbcf60449ecf5817953a7773bbb8 SHA512 334e537764a5ebd804b4197f4af48fecd3ebce7628a1ee85ed362141d51c66850537e992c867604257025d3401cbd83b4f0ee176ec4486e214fe9dae1ff0f163
DIST errno-0.3.13.crate 12449 BLAKE2B 5eef631f0f0fa672d415a7b3702bb5af52597169d9ad830ed5ac5e3592bfb2fcf315e2eb1c894fa69233c6228e9a614b9e5d741b943d03b70c86395fa0dbef78 SHA512 605cae4f6ea34072850be76733bdb376eaeef230f816090fddf83c9205bf7f99bbabee141ed628ee891f63f9ebb303633db3913f6fe4fe259fbc4bcf9789c339
+DIST errno-0.3.14.crate 12002 BLAKE2B 57fd842a717086ffdcfa5102a8c52bf8210672820366d78aadb6f159055917477e6771e9fbda88787278bf3a116bc7253dcb705b601e54038a93a1820c3c287a SHA512 1de95c9806323d63e7cc95111e67b3ba1ee4b9d47b70cec33485194574d6b584d22ff877dfbc244317822721291d537d9509ae5e46f1b45169cb478a78322366
DIST errno-0.3.9.crate 10690 BLAKE2B 8deb19cf0c830ff2adebb733ab961558cb4463f256604f9c76d5c5952f34a79b70dce47e28f68f459977ef34d4821ab5d0f7e79a7a110693700f80b49ba56651 SHA512 777fbac5730d420d58275ef63b7579997d8e6c72106d483ee1e3b1f1ce3977f1f66c56870a05acaa4cfacacb820eaf963e9c763748759cff3668fa2e6f89f04a
DIST event-listener-5.3.1.crate 42576 BLAKE2B dfd8020527c06adae338e9bcf19076e70ae745facd7b49e8d6604e8508436b70b48fb1f4479214998f288055447186d4ef4969630af90e301103bc5faf6492e5 SHA512 98b7219a3959d6225ee5fb68e8b9d284ab03334d895f52a71f673e59cabab1d06a0abb9eab905e8d38d5f9589725c7c598355ae3c909044a23bc5830b761f5c0
DIST event-listener-5.4.0.crate 43452 BLAKE2B 75a535bf9e0b6e5b07b0faa31a73ef803a367a104985f0cfd02a201c45cd3cfa1e51a14e6316ac2a96b1e99e00260a27c5e96f54f073b3b9027ae62c886cdc24 SHA512 5e35b5b467d024b6b05dfe6481cc69ebf4e942b9a52a478196885cc6d578f388c25387292c94f9da65fe53fb870ac328eb9a81179c93b496c1d39d27b11a36fc
+DIST event-listener-5.4.1.crate 43782 BLAKE2B b43523d0166d1e89f4957d718a54af9c31a52ca860bc5cf645e093670e5d0e4bdbc5f8f57de9eabd8b8c5b54df4090bea68adc8bfde8b9d23203b737580e4fce SHA512 99677a81a7abc04d6386db78fbda40ce5a9e4b628d0a1b171150b5be12e336fad04f2f8ac94e62d732dc90b0c65279bf28904e77f19c5cb6f0cad6298d97c394
DIST event-listener-strategy-0.5.2.crate 10697 BLAKE2B f49faa8a2cda551b65e29b9dc98e4e55dabff7f2b330097bf5f6a5a5927804a99cb699d1f693db9c7cbd92ecb44f6c1b51be2b86810d3e3fbfd5eebcfad1a241 SHA512 7b3759d07c7936b53351172e38623658cbe642f079426c99e7f9187ba1d7f8cbbe7530c056cc760909cda4e70281a50577caa41426164b4c8d6c3f4cbddb2626
DIST event-listener-strategy-0.5.4.crate 16179 BLAKE2B b516f4b14bace1dcc9e7e6ad3c7b8ed1855530d0aecd1ed480b4392bc5e414a92634ca91b73e521e0344e264da2d7bb92ba6dc260cb38d532ac5b782569f7ea6 SHA512 bd5259083e87d6fe04fd0c3ff2b5a5ac3e6550ea05bf623b3c535465a2c1f2766bb66ee73444a80075efaa59a73b064def1f034e91e64c66aff4921eefc54caf
DIST fastrand-2.1.1.crate 14983 BLAKE2B a4535b1612b103376fe64d71a393f7bfc37668c574d9122ca90a631aeb91cf0895bb030e597b79a80a4a37ea4d514c4c0836332030bb10a60bd971573a6d6ee0 SHA512 9a51185132c1c89fc31af463c664e996f431e607ce96676b8301f28ff11a99661d18025dd460e3332e373af68d20017d96481719746fc3c5de742d08d63aba3e
DIST fastrand-2.3.0.crate 15076 BLAKE2B 15c9a1c4f64d94c4bfd38ae139c6fe19b6b621a495c1b57209edd6d76d978eaf018ba77f356b5086c3f462a6de044fb5e3b172fc288309569911a17ec39951bc SHA512 267fecbb7459c8840f03425733d278dd6c4e7637b85b99552877117ed5e8015e094d86aa95841f77064136b7f382276c3cb2c2bef7b2881d272f4aa57c5cf947
+DIST fastrand-2.4.1.crate 20773 BLAKE2B 79fe53f19cbd8343ba15c21adad7397ca9e351d00d77673913063f8f8c02c0753a29828ddc7d52f2f2f68e8e1822f31060fc52d046769f6e768d510cbf2086e1 SHA512 7120edccfb1aac689412f463abb816e3ec2e7c6f7da3576c060229139c11af5e69408bce42dde4d78046cd09ba8db53a6f9c4fdcd68e5fb151b72a0906a8bc7c
DIST ff-0.13.1.crate 18607 BLAKE2B 8acefdb779093d98b59700f620986e98fe6a319f5d607e0d0084c44c84ca5c300f2e1cdc6c472ac895348170e24c42a90998788fd1efe015bbaf33d0183e5aac SHA512 f6447e9725877c6853353d6fa12d906d57851dcfff4593ba0a3c4fb40d26b96948635b49489957d4e934b5146a1f6b741840b0950cb5810011e34fcef729bd4d
DIST fiat-crypto-0.2.9.crate 495390 BLAKE2B 9201d3faedab8c73b606dce70d65d1138f5fb29e480d56b25cd66a8d2a150fb6d946c9e0ca98eaab0227490cea288b4c78917ccfb6693022d70d74dee94e6e78 SHA512 d916fe8ba3e82a365d20485b93c36994363059dead84c0266b7bfa0bcc74122d71b4a5c8689226c0e1007e7e01fc6f6c76e8687ae14fcc38f6f159287810f510
DIST field-offset-0.3.6.crate 10032 BLAKE2B b4b43d35f793c55e8c521de7bc1648501cfe46494fc17d0b6135ba3456c8d72a11b422a16735c681c7c6542084652c119661372628096d61197f6e387b66143a SHA512 3ec99bf5e860dc68f3fcd0abd2b0de2ae0b3174eb177458506aabeee9dc7b0b8b58b925e2c6108a8f18ab95f2e1952dd9474650a639e1c1d50ec3f72bbd30077
+DIST find-msvc-tools-0.1.9.crate 31493 BLAKE2B 4137592addf8b58f4e4c02be537a72b132b38cecc1c263c2569fe40e2cfe4377e7141679f32661f44ed467cf9723343ab13732b3d6f4a2a84c610d0958e7e30b SHA512 729b3c1c1d520dffe5d88fc8b58e47fb7e86dc26e568fc317eea5ca8de0ee953fbafaa20ab34a6bfb43173bab39a90ff6954c11dab8d545e902305dafc8cd3de
+DIST foldhash-0.1.5.crate 21901 BLAKE2B 22c3a266becac17995ac996f5c9caa8dea77e36786c50464e4e7750d8f3f13321a0a1abd3a9abcfd6ff441ddea257066b2dfb7fc6fcf7468f537dbd1b0db737d SHA512 3a634fdec410d87ffced8aa1bf8dacd9316a04c51424563d60b4dd611617041f09085edfd0ec96e6bb0e0db74a0e950b0616d1fb94a31667af35af1637604c22
DIST foreign-types-0.5.0.crate 7824 BLAKE2B 01a5111a11e48462914f9877d3228008590093633e957883fdafd3a7017e144c14fbbe713bb8b0061ebae78d20a49978191ce416a4e28317b67ec69e38acb879 SHA512 d07c92cf99c99419a3ebe05ba9154e396ab88116f46af736ffdd958c8e47741bca5d9f478f6719d5361360e844375968c1cbf6ac40995d47128a5e5fda3f6c82
DIST foreign-types-macros-0.2.3.crate 7635 BLAKE2B ee89f576f2d892209c0f344dcab9dd85a671c976c8034b33dc984b93a5c872ff0353311657fa1dafc499243e55d3293a7bfc532ba55894a719a50ddaa6957589 SHA512 c3965e058d15159f789a8ab1597770ff6325e8ac9e6914c98450225ce27af849698646d53326e07b13eb3a9730452d926b73fd76e5a1fbd8ae4a6083bdce3367
DIST foreign-types-shared-0.3.1.crate 6006 BLAKE2B 27c26518e0de0a298df2996da4959727dcc6a21bb4efa6c28869a9affe7ee3b427d1bae25ed6928477d07959bd143d5d4fa27325f8f5a5cb0ddd3cdb9e5314df SHA512 c68da34b55230941d6655f6a52d5dcb8ee02149f25c25a5ef782402f9a18b33047905f28b70183a5f45b45977c011a5320cf7283b7901c76ede4d82082ca4c9e
DIST form_urlencoded-1.2.1.crate 8969 BLAKE2B 383d3a197b73fba199220b7708e16d770591ac16725faf4efc1a8c230c569c381870d4a11b8fba623e761e68f9d318630b22101d461e67dd26c67e13a73358a1 SHA512 c65104e2dc08fad572bb31f981700fd43dd29fcff42b01c7ccdbd3d4c23dec12360aed3f1b5fc4766fee386d418a65349b2941b8735f788cb0d35d631a6a8dd1
+DIST form_urlencoded-1.2.2.crate 9347 BLAKE2B e02670f9af81a09e8df16680dbb80708632ac9e708297fda2f821af8076fb827c011ff359d4ce50d5ddb8f4403d4e19f74a4b68d11441f32eabc6fa2e38b3b09 SHA512 07d27d852504e146d586d007b090e53cbe740da140859dfb7d647c83c1b55265a83ea0a0e514587699b1dc6b6ffea2fc913319bcc83b55ebe191801a3b429c8a
+DIST fsevent-sys-4.1.0.crate 4620 BLAKE2B c203c774d5038d4c4abdd7bb9407a6b5f2b203a609bd92a7fde38afaa71248f4610e89c73eaf982a5d76560f9503081b7b10573046b1a91f09de4b642709417a SHA512 e702686629557b879efaccd37b03a7ec515eeea29d8f8ba46f82b8b68ad157ef9d6b188be031f806d8fd27d4e9d2689cdd6bfa14e4ff77493a7d0be3ef1238a7
DIST futures-0.3.31.crate 54953 BLAKE2B 4b91470d3c85b9260c734dc6be8c985f78491b599d2a6ec0d1e824b82f684cd030be6f64179f7aa7c1d1fbc7cf0c5a1bc5bd045123b73461f490d7c2b9011f9a SHA512 a08d23cdac9e162d0e6ae72bd792201ff4e13d7ade6b498cc597149b3df2062b06814804c0750d941d8b5be5d2ab4cfebbe2d08a98d875d2092bf25e6e71a51d
+DIST futures-0.3.32.crate 61234 BLAKE2B dd15b4558a91d8012bfd9d7ea3cf9764d8b4d9a4d9a2fcdfc10f30465d649989b637045e2cd72948dae060eab3de4ce257f90de263e4b08c3bd0cc37e79bfcf7 SHA512 ba0fab7062af4d01143ebaab728b9d836a6589821e49347751add959f7b85c685f91f99b6a31e44988d887c4301bf657c0f8d969cb3ae219235aef2528aeb4ae
DIST futures-channel-0.3.31.crate 31971 BLAKE2B 2a59ebb73f998ec307bef01e997bf2922556d6dea10e2e6e8da9e1b4cd05a8bcfeef01bc1cc57d79c39bbd98b8a0d26871dca5c7641a9d4e9c2bacbb3feb4eeb SHA512 87e49e661cb12c1e03a07d3c94ca9bf5954344a51fa11639a118f5a49877c883387343af54639ad80e7196062a77fa7c9b9aff9804fb1e6ea3d0eb09efc53c69
+DIST futures-channel-0.3.32.crate 33213 BLAKE2B c1188af04231e661eb97652caa90fc37e784b53bd7ff604a664914db2c277321c353ab764919c2dbe68483b404de633f85baa9cc06086d5799576bc5d5117d64 SHA512 eb60ed5ee42df0778123c5967de28ca29764f518e586768cbed9b43b64c9e44812e2eb551a5259499ec81f693f00b914993bc910dd1f1f50b6a826cb3d76a8ab
DIST futures-core-0.3.31.crate 14318 BLAKE2B 613d16e4f18547e45ed0dd56a7b908306393e479c379ff64f358844eacb1f8d37008ffbbfe6b1a4ed184e501ee9214db149d9cca31651b7d353ab4a99c8f5ee1 SHA512 d2f4c2476c4f480f724a880ee16566fcdd545579d3cacd2f16745812eed9ac4a7a88d59d4a38b163ef466c6f6b612b9cb06308a09d52256506a8a90e358db935
+DIST futures-core-0.3.32.crate 14684 BLAKE2B d0c3ee59327998990f4cd81b8d76b6d8a58000ffda809ecafc8b7e658abffe4fc45be4b9d5e502436af8e4adef50b1601907b8256a9f65f8467beecd37ede220 SHA512 5848937ad4135fcc488690bc681bf66d6c353f063f87dfe1ea4b79259b9b402896276c10ea80b159a9adfa551abdb5b00a2c6b332af9a898766f87f177a40137
DIST futures-executor-0.3.31.crate 17965 BLAKE2B e111467391cc99d1b6a1f5fd3aafdb86922a2d2d9e360112402d68489577527aa35f4f65e6c0dc8f48372927e6d7a6a4a97c7b9525c369cb14e34ca2dafbe64c SHA512 337e70bd3a3bd3075b51e2afe8f157902ebe486696587cc2706b6a5770478ee2ee4216aa9e155e9821ed1d02ba437cdd3abd0c05aa960378ea192e2ed39af564
+DIST futures-executor-0.3.32.crate 18581 BLAKE2B ef9b6c7752a913d9ec420858c6e1c102c7b961412fcfa5a6832f11b1f3ce7ff47383d0b0827acbc2d84c00f3a0fd92c3d61be44eca4117470211ff3dd3de0880 SHA512 1bd682040fa15d7b6370b6c57d8109cc6e151230a3ecdede1485906c95feef911cffd15a8bdd3114e87efbba79ce444c05baa7dad6dd74aec09f2f00c645b040
DIST futures-io-0.3.31.crate 9047 BLAKE2B 667e62b50be304b68b8437d93b734a0e2433d88a3b410010ed0b04eb2bbfbc9984454c3f0a591f720c9983582c6421d7f870f0733c31337c4c518112f52aea54 SHA512 16d21388f7ca083d2c618ec140cb2c0807ca621b8c338698c367d862b99133ec9edda828f051f3f666472c929e7bf7a5cb334fcf167109c7c392c5cc60b54fdf
+DIST futures-io-0.3.32.crate 9191 BLAKE2B 01938a42ddd4de31a389136376738b4e6fa6820698b470fad50db28886435857a9ef4b30d871559ab6a4fbdb3325cc05615a53e4bb37fa4eec2d019f26fcd42c SHA512 df7447fcc2046d5453d26913109bde4dfcfee2cb6914e963b090c68b32fd5256c65697235fa5ca960659791bf787ca6ac88b6b09c42abc82527f3d3c6de5ac61
DIST futures-lite-2.4.0.crate 41094 BLAKE2B affe537f0fbf63f5956c8988f76aefdc1af5667e7eab5f9c2eee1dc96e435d5228151ed4a07cf37a5872c4f9594788eee9f4a4be07c76df0dc424b9798a0d2f5 SHA512 bfbed9b161e8a9282a06d9d3071d23693c33f10e73cd9629334ee540623ce2c21143ccab024159996ac3dcef29f78377bf22fd2a64933d4a5329d4320d5b27bf
DIST futures-lite-2.6.0.crate 45157 BLAKE2B 987475a28fae8e04dac435867352f8f225e72041b6f73e97609d9c3179d89c35519d34e4dc7a08978337303c904f339549dd69c10f5eca0b0106deee5246a840 SHA512 2e896e15e7251d29f20fc39869432f3b7649fa567a59ca378bd76b67c62d5258651315972b6fcc292e99bc44e8c569a8b2cc8d3882af9ece3624437c0bf31f55
+DIST futures-lite-2.6.1.crate 46095 BLAKE2B 36c134db8c8dd553f1a6fb9ccd50686bdb94d17fc939839ce286cd748d0f0143bfac84a72bc64fb27f3b982dc2064719463dc88036656019304598de818e443a SHA512 ee62feea8d0208cd64d6ce99f813b573cb9aea33773d33adeb5674f51e359896109594a6766d528ec6f3dc724d97550b9007d0ba6fe6c71b5885735a2c18b4aa
DIST futures-macro-0.3.31.crate 11341 BLAKE2B d91ace97b854cbfeba1df90468fabf6313721ef72bb408ca6bee1c110b0162fe91da18d371b628513644f9d3956540d93c3e13bc9917550338f797967acc3967 SHA512 26c45dd8c037831ce3c41a326ddfd581784c2e7aa2805ca4d93b91e439f4d8c078293cd328bcd66d0283cbd5a14724bc624ec607c343d15193b00bd644b86166
+DIST futures-macro-0.3.32.crate 11929 BLAKE2B cb8645742a8b70286ebcb3c8f676c97726e0e8367a926d171439c8ead49933afab39111b66edb249133274641cf623086f4eacba4774885552b02132060d45cc SHA512 39a5d7d4e610521d1d6d285a5ffec43b7d331d92d80e60890448d016ceb30ea577c93eb961321cf6c314273e566964dd879f7cd4b855b9f5e141dffe8e83aff9
DIST futures-sink-0.3.31.crate 7958 BLAKE2B 7d42180cfe19ae42e2ff486d83ed46f3aaa4b333256d4c30c5a2ce0e0d0b05ae93516b029e6d07105b4296bf23ba29e6fcce19f0e38ecf59b53c6ec9cfe2e188 SHA512 79a57dbee5cfe98f2c003bd463d252648743f70d13e2054af072978b758c7cb8e5fb652fd2f36c760df358ad23d2893cef24ca6ae3df44def28f1d39bcf348a9
+DIST futures-sink-0.3.32.crate 8106 BLAKE2B 881eb606c985836f361f5133b32401f4ba84289a0c8e0e075f74ee2a6fd9ee1fb9197f53086c368c2e231db5f1e61ae88f99f578c50956d124b612f1e8060222 SHA512 05438809ce417dc5dc46c14b9190cf798e0ab5b7dd5b442adba2ba344618e076807d4884f4a8cdf2f321a27557b3e3b563805fbd51a9561e9224d7502d4a6bd3
DIST futures-task-0.3.31.crate 11217 BLAKE2B 8c0e0aa0aa14bfc28e668af00a3fcc2532950ca865a9f3935717a4a3770cb60477cd8f4cd080675379315b649fbdc5fee9dce49502f0f24f44db481a24c884bf SHA512 4872fd2f24b07c626efc6fd76c01b44d56efecb9697f972d0877307b38d3ccb06277ff029df38981470ba1f8ac5f93086123ab3af44d3c49bd9c10b6c9158a81
+DIST futures-task-0.3.32.crate 11377 BLAKE2B 290a2e7f7c957acfffc8041a5ce961b84bc6b1d02412ee8dce29cdc9a7d4daccbe430291d1a735c132b907448669aea4e5a3aa292cb5ea4b466b30fcd4e3f98f SHA512 eea93a8490d7083566d7f723c0bfae01583787028ae5d8bba851625b1ccb2587d27db0cbf3d7fbfa36b51bd6d444c54905cc4d56021f43a5a440cc8b0ed73520
DIST futures-util-0.3.31.crate 162124 BLAKE2B 69ca647a261fe24f90a4221d8629169a8dc7eff9dd1c4e07cc700a52a8609ce9b8aa3974b9b09e1ee64d0121d7bcb3efeee6fc15983347aaa0b0b23b068afc34 SHA512 429b1de584546b931b17d475aacbdb0c14824a57d960c44e615aa808e8c0f9c126473e313a7150b3de87ea91b7eebebb1041509f61b3493fee8a9cd2c75c4df3
+DIST futures-util-0.3.32.crate 168797 BLAKE2B d804428849635088636df69330881d68474db307ac4dd5863d73d1d93c54e90a18e21663864e94f2bd86999356e19b8325e321cd5c63da6e3e05f26c3af836fc SHA512 77705985b5cefd5a9009e631689f5967320cbd1363888cc8b7eef3f7457afb38c793499fc3edd4453bc8771c43436e5da1538ce0c5ef655a5e597f4fda2727b1
DIST gdk-pixbuf-0.20.10.crate 21618 BLAKE2B d569ccac53fb13a9c46269241cfa4d38e417610a136254e77496b61de541600873e961243549d67edd50e374b18ab987bc615e1826053f53f6171a69b1d7b921 SHA512 bfdbab2576bd03c8dab00cc08afc0e4d40fca36b6360f6d1eeec9e2b4d575ac334c6109a40cc64e81546465ca518923273c99fd236d0352cd6c7fb352e2eba83
DIST gdk-pixbuf-0.20.4.crate 17801 BLAKE2B 3b20963be9e0c404577498f3f66d88f21765b8cc1be617149643be7c2e4cdc5cfb67b9c128ced3a2dff3e7e46d962ddd1741d4d5d9ec583bf7e4d42221608767 SHA512 ce1440304386778ccc795a2be4b68193a10151040e059c14eea7d3c7c6ea1d3766d03087556d049d068deb4e7a0b81b6f3c5a02b09d3e400413e85bd92501a0e
DIST gdk-pixbuf-sys-0.20.10.crate 13317 BLAKE2B 6cc05f3c9673ebd1b0057003b2bc48ad5637510da9a5f15e718dfa5b351aa0e62f8d8ea687f42b10d058016a4984c09261165effa8da4864ff41fc6077046a26 SHA512 1d91d9f31de911e78a9e006d1953332bce7bb1d3fd6f37205881093fe6e41b75c929db45b13e6ee34d75e72a39cf89bf1237b337bdd55cfdf6e078a25fb03bc2
@@ -169,7 +217,10 @@ DIST generator-0.8.5.crate 37018 BLAKE2B ea35418503be6e8c0fb8e2554b50f2a81690112
DIST generic-array-0.14.7.crate 15950 BLAKE2B e74c785e3127095625951da192a018281ea9976aaeb11019f9088c3f27748c5fed1ef25d577150864486dc48b5138d6892e42f99979339f711a66fc70756c82b SHA512 363a7b04e4102f9ca63d429721c1ada6272be6bf0a2e97da681faf76381f73f0e3acb86623b9ce2dae441de9fda704088391779b9769ec02b3c8c9f9f35f897d
DIST getrandom-0.2.15.crate 37163 BLAKE2B 7d534e799a4711d01c6553b8c9422dbf01e384a850fb0f7cd76e444628f2b96d28d0f5e8dae042f8081a2bf9340f57c558be50a6f22ed5fa6b0301a15898fb35 SHA512 04789a53d3f4a84862e1e8b2113641af67e471b468de1222470d5e6cef0015232463a2cf3c3518dc2a533b3983b175a7c8922da00665bcf71c1e4e279b67e6fb
DIST getrandom-0.2.16.crate 40163 BLAKE2B cf95b380a610313eaf068fa210bdb4a9e0b9211321d708f9877cd9e1901df0f6b7f57462a4937da3419c7547ef300291deb5367f4dce4ff776e7f0d9d36dcd8d SHA512 6391d5322f8ce2ea7d14062d378ae2ffad66622afd58b9f1732e5314b27d3a554c8a008f6d0d133640f11d769ac51ea4acd24e40259e14e2ffce93d5c3c1eb1e
+DIST getrandom-0.2.17.crate 40780 BLAKE2B 49168490a12561828bb324273c1a2dcb98017577f8500fe08a8bb7c3accc37afdc459af264da7b95a4608e53c4edf8fcec3cb240741b2ee7b128012fab975ede SHA512 23033dde606eaeacc0557e21b3c5ef732e083b17ae086dc95ac7d1a8bc1b695a9a6a7073b8ae774ec62e7477a8ea0644d417fa5da7841a3c8118694c21813d1a
DIST getrandom-0.3.3.crate 49493 BLAKE2B 17bf881c1ec8e70b263dad11fbb307484d7ff6a7bb6c0ed217730c0a766adb3a19e6633b28cff9eb7c1f9deea55a647ad53636533c392a5c39ac82e26623a18c SHA512 8188d8fab05e8bdb3918eea6fc6f89aaf3767f8350fa953aeadfcdf24a513bb4e0d464853a264939bf2fa17f95ebd4077b74d813d587a7368072c5d7748c4c5b
+DIST getrandom-0.3.4.crate 50932 BLAKE2B 34165a6994877aeaf3063affd48eb499512371a1fdc0d890feee598b5e22c14cb8347642a0e9374cd5d8a59a8281db839e45923769260312379321bef54c687d SHA512 43c44ec3ba0668f388519b2cefbee63f959f0e078730b3f7563742522e5f4b120472024b95fc94aeb90900a15d327c3573271bb26b2de4785e589a8bc1bc9da8
+DIST getrandom-0.4.2.crate 53905 BLAKE2B 23aca6717b8fc8bdbc26bffaa1ae3aa35666f82951ced24e1d7b7530feae7eb5e66a9c81b738bbd2b09ead6efa030d2850e0ffb314dc82972fe72af361b961b6 SHA512 191d847be8c21369067b707c2c20cd56531478aca534ce902271e2693e84f6d74306a690759b17a8b1e9c46c639fe0e7be3b2fe41469eba4d7c27bb1c11a442f
DIST ghash-0.5.1.crate 9482 BLAKE2B 77510c9a42ebc486e35cda6893e7f9f464628d6e4ef2f2f1adfe5d6371dc2f7e2d0578665d02dc5647651a96f3f06ed9cd3825caf462d70a740c9e937ac8cb50 SHA512 00041605bb458305f0fc54d2c8dde2cae672451646fc41a94dacf83950ee44f75464a926439e7e6d1ca3ded05a9b697138f62fba6f4e86ea3df034ad7240af06
DIST gimli-0.31.1.crate 279515 BLAKE2B c8924ce351af5b8f96ef757a189f7a9be14533c024d496c62037cd4eda790b3f6282cd3013ba82ecc83082acab1b60ea80b83e0fd5f8eeb381fd7f9df88ce0ee SHA512 b9c8c11547dc7420fe936b9f32a4f5ccf3bb68d1d9f39dedffd40d631360f6e032e719d858668826f1099b8a262e8096aa7ae1f6d7d3d7aaf47934d832715949
DIST gio-0.20.12.crate 220615 BLAKE2B d2f554a5fdebb2dd2fb77cbc36c98323a6b27c212c37e216a38e5daf1dd2acb58465d85fefaf587c6a0f9bce2c96428e1f86588a1ffae32309e26f2510721523 SHA512 ddc4005cc03166f7be79aa023bf015da429723d81befcb01d828d7d29dbc550be3160498639d205fe7f67b7d5eb5051621067934d73f53349d84e0d88e7f621e
@@ -177,6 +228,7 @@ DIST gio-0.20.5.crate 203382 BLAKE2B cfa8af9b9a46ccea473751fde0a12fe7a46a76bc5be
DIST gio-sys-0.20.10.crate 86258 BLAKE2B fd5fd85a29be5100878f3ff988aafec3c6ace5a58d83ae1cbf0c3aa90702008f00e96934450a7e0d0a4f2ffc3649e41cf614c246aaea4e955b26d1ad4d859452 SHA512 bd77380434851271ec34827176623928a4f56bbc2eef91edac43afe95fade24af4b1e1b8943fe58e8137fbf6d0c43d78a526ce0e073cbd6ee09f37c14814f477
DIST gio-sys-0.20.5.crate 82035 BLAKE2B f291e02a1a831c9d799fc084dbe43f7e641a08ed2388e70549281d4b753e4156703766853ddf551ad80651aeeafbeef83585eef3a9fab7d0de5e946154545b80 SHA512 0804751e378eedc4b7103a0d8e488c831f077cefb297dcca7d61d95def621382e2825dcf95563897a63039f3cba21464d13e2e92d414e8b370ff1c98f8151bf1
DIST git2-0.20.2.crate 223479 BLAKE2B 42151d98defb4ce65efa1fa3bfe7893d2c08f33ba3e8a6c55a53daa9b159dd080ebedf9f31c370d66a5479759fdc697e088cf7e27bdfaa064477b4bd5fd14a6a SHA512 c99509edb0efac5c84809e65cd880e3525f4c8265e67ea9b027ef386b8e5a514528979aa180850a2d84ada25dd7bbff020cca63a5c8c2c1d2739dd0333ef9172
+DIST git2-0.20.4.crate 224225 BLAKE2B 553817dde65de6aa191e3bdc45a2320fca559e44b0c336cc6c860e6ecdaf09a002dc16b695e8693281948988bfda6510fc4e0db518bfe1ff398ba783621fbb93 SHA512 774dd42e73924aa6a7f21c58dd35b1da93b3a51a5776d0d1e2f20488cf23795beee8c8d9e3bbd9fb82737c7cc9a74894d25fde03dec0bf092643ae0f0ba47aed
DIST glib-0.20.12.crate 294373 BLAKE2B 1b20ecdefd6692da5b39d39f03b08c5517f856b187a934d2fcf531af4b0b9d0857d4cfa61385b8738ec6c8fdb0635007f9339d9c850d7db8c7e2a2420f7bf8de SHA512 1c79bc7708ed52122212c83d75092e7eadec066631f45590dd372c4e191e9f666e375b0f93450c89de4a714a08fe48bf9198b98de16e5d66e1f827af68d85fcb
DIST glib-0.20.5.crate 284646 BLAKE2B bbd17069996b187b0130ed56facda4cf10a817215c88915783f03eafe7475cd69822f3a0a6198754cb7e30aadfc4d624c091061e2611ce85c672e2f4093036d6 SHA512 19db38b744befd0ac7a4a3e91d8b9d236b3605b8ba6f0920d4a49fffbd33ed200f9c2e66ee08a8e28af5f40bf454074532f09e5f2f287a1b8fa95de48fa7286b
DIST glib-build-tools-0.20.0.crate 2732 BLAKE2B 842e5f4fc852c8943e5791d3f961bf9fd55b2a4148c8115a509ed0dd6cc52a04e0c8989fb2a2bbd5e79f201e447cef78f04544c141eb524769931f5415fb2c48 SHA512 e0c646f2d45b74e70a3c04212141cfad40092f5e7eed47571e0acea0f87d732938d6568230b87f5f693b317b8ffe0fea916dd3fd90a8b519228078d2fd51abd0
@@ -203,6 +255,8 @@ DIST gtk4-sys-0.9.3.crate 110304 BLAKE2B ca8264fc50593dfe0cbcc66ec836ac85187c824
DIST gtk4-sys-0.9.6.crate 114426 BLAKE2B 359a6dd665a371558b790b732538201e65d340cb4068ff94f5a886411c86a6f311b552dd512d7e56e6b8c6b2f1e3026eee560bf2a13ee8ffcc223f885f80d2ac SHA512 7a593cdd4bd83ce4dfa32cf81027cd4ab18b80188eb9106a19085eb557c69155e65ab34be1d1eea309ff023bccfbb5639855d9be8ad80d455b78dcfc0712ec9c
DIST hashbrown-0.15.1.crate 135873 BLAKE2B 2ea5caf324b9574b2fd25a5659ffe00f4c05015b92fa8cdb8b33658469986c6117f7123085c41de83dc0ff1e91986cd5ee9ddf692b7a162d97bbf50aec76ded0 SHA512 8bdd4966b336f5d5b184cf14d4a7e625d184d8f3f0782845c746f374f92425055def71e64087fb3a3770fd9b2d9ed40310fa45f60e56d298accaf9c500add841
DIST hashbrown-0.15.4.crate 140447 BLAKE2B f0b1aeaa46dc1354a9558d405bd1cbf72723e8a61a3322743f8bd6d2c17b336b9eedad27756799a054633797373b56b2b957d5ad923b19751074f0294f63d0b2 SHA512 bc96bfe26897240a370fe221515b5ad1dbd07c11de0cbfc1f7721ffbd97546b43a82a88461b3390a6edce9faeb156ca369ed95eecb29fa82c35726a325c26b52
+DIST hashbrown-0.15.5.crate 140908 BLAKE2B 6a360eaa2e174ddd1e9761bc19edc4b57b80f84c36bb5d64003c7206755d4175a05f39c001acaf000ec69ced9e28c3853bd64702e2927aa7c38527a53abf2201 SHA512 654682535882733b56dad632851fed93a17ad0b2d3e13e3390d7802450781501e275b0e0b39fa32a6eae092132858ed79b305238cd5771c08987c5d26af6d692
+DIST hashbrown-0.16.1.crate 147785 BLAKE2B c506e64340b65fb462545c52e85a192b21e33025c91adf1d8255e799e8a5743814c60be971db56c0b9b1208dff8147ed4a28d8e37caf8f5646fd367d8d0bc9d7 SHA512 0739f1b2101488f88778e221d86738ce557b8ae12470e2a4444099eb90d876382030d00e789dd4ee44dcd7833a87a6e570fa11ba5823beb1cab3a56784ec2669
DIST heck-0.3.3.crate 10260 BLAKE2B dc756738081d855583f239908f671e9b5dde72ebfb577f6387b1a169817a03332464cf67071708a4c4f06b1ecb222118e8c719073ccdec1c0f938e5ef378b13f SHA512 b3498e033f44e03206421e565efec5b21d13107b60d35e4476331c44e6effd75c81f7678f2452c822eefd581209a2ffefd2034779cca2d8b4fac4583bbbf777f
DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
DIST hermit-abi-0.3.9.crate 16165 BLAKE2B b779f005bd4cb9ba9abe401a0a559a5bbcc44726ac37f53e9c8d1f7218389ec8b48f74d14666261bc4fba4fbe5558cfefae873c49a2312c8c8bd4010b8344064 SHA512 f3a5a51d834a6ad55480b53f7e9cdc73a512ab0cc6c246a6ab1e8bf8f9851a0c8a55982f5bba6cb57b5a03b54870e73b0bab0a79195764c308318394a3ea8045
@@ -217,79 +271,113 @@ DIST hmac-0.12.1.crate 42657 BLAKE2B 5d432a666dbcf9077a98e1f8a4aaa3afc88f3d88553
DIST hostname-0.3.1.crate 9272 BLAKE2B cafcae4bbfadd51d058e3daba3e63d897bc3418723d8e843fd941d9663dbc89dba131c77d14ce7a5da552650ea3c40c4e418c88d465f1bab2fa20c178596852d SHA512 a90407996353c9bcf5b76be03713e3a0455ac80a50892e77a508744cf436a938ddb87ef97d8cc91ec7dc4353cfb7bca0fd28c90a72f8a9ecd4f29220d174edf2
DIST hostname-0.4.0.crate 10632 BLAKE2B 85c1b224aa0de4c64a4c56dc284145c50bfe3ddc9063e0884de1cc994b38931552229c57dfa832e927f816df0d93d7b553bd8b4ede582939bebc36c0acf451a8 SHA512 1365d02b3c438d467cee0bb704e98b601390cfc76ff290da198d6c1e85bdd57db5ea07ed9d14b35f4b0cb3c2999eddda69667fca4b01ef3b6c4df1769f0abd21
DIST hostname-0.4.1.crate 13819 BLAKE2B de5598e53328075e653f1d7e3a4228d82a5aef740aa42897ef27b0786b53fc5b1772a04aedd85f0006c0af33e1345226a4f678e789367c5b45114dc178d1f07c SHA512 bdeb7071dc112f73a5ac86f5db7d119a5a98546ca4804862a8d61ab050ccc49d10a792d024392c725256e7b3588098284756dba09a09376112650fd9ca6631f0
+DIST hostname-0.4.2.crate 12983 BLAKE2B a72e015d1bfd99828a9b1402a745968d578343c81301549cca0d5a4a5814a51c1eb58f7ed937ed75a6a6be385c340bf662d5d51cf401aa21809d1c893ff207f2 SHA512 57d7688fd7e724fe95b2d275d7cd11056e829318ff9683b59617575d94d5951eeb328ef2426bb16f4172bea461d0248cece573f212b6d2d8d3d0252981def4a6
DIST humantime-2.1.0.crate 16749 BLAKE2B e2ae8325b037fb175b9200cc5c1944ce579056c6662cce307beb6701894552362a25e371aad65f8fb9384945b48815ca74bb8b544a32e0a5845b7edd30b918c9 SHA512 3bf29ddd1391d82897c22baa0ff3ed58ef6d6959859f1f8ed54d324caba5b6fb4422e56790511ce82f902cd11467f93c8ab7fc7b0e0bdb719308a4d0a446ae0c
DIST iana-time-zone-0.1.63.crate 32919 BLAKE2B 252417d7689156bfef5386f3cddb06703f033324ec7c3223e6db44cdd62c74ff57028c8a4b93f79d079cd69449f97b35823dd6cae712f820dc04a4f0a7d408ac SHA512 9e595c10884bccdbcb171b547ec0add02ccc2c126e6c0372f658bb418c4b4972c031c5fa547f0b11ec8c99a52ca8f5e97e9f1d2a8a6a0f4fef30b5ad15d179de
+DIST iana-time-zone-0.1.65.crate 34079 BLAKE2B 4d84dd4655dd42ed9cf49ed8d93d0ad244f42433faa2894a1f8240a49f65021864e8aadb816d5725984bcd5c1a6e8e1ac210b50751e3af8b3ad2a61421a74e4d SHA512 4443d5a01ef4b10eb27ed8c866ed71619ccb594dee81a0350106f39575b9373c6199d925b92112fdf0aaa20f5d955d09fab1867dc1b4cba2841c713d40cde6d6
DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
DIST icu_collections-1.5.0.crate 82762 BLAKE2B ab89336790ceafe62dd72f0aaef16a6eb47fa5e41424ed990e6c059ad431cdb3dcea943436aed0bf9c6eabd7aba12d255a2233fbbcf9cf5f666ef1dfd5b79a16 SHA512 127f1c91101ba69405b10a2590579606df766166fcf1fe6aa9a74c4900296425cba5c47a391a53a01b02026af5581f068fce4a7a400179809f7ed9922b94c0db
DIST icu_collections-2.0.0.crate 83033 BLAKE2B a67f95177d820ab3b0f9d5ede716551aece974545c1fa6654e27b923c85b43fbdb9fb73bcf2dab2bf9a0d5b0bad4acd953fcb3418bc73261ef2f6e3407ab155b SHA512 646f41881cc2861504ee9753795e596b85f90f108c2d509563bb007fe52b08e9bb6dbc7b762b8ec60012ec53bd51e25a1e16f9fea2ed2c11355ae619c49c5034
+DIST icu_collections-2.2.0.crate 88011 BLAKE2B 6caeec073fb6dea88daa77c7a4d8e3699924bfab2a98f21429e5aee73367e2c1e72e8c183050dcf3ce8f69d432874c69acd800b6a15b08ff440d45b0d683976e SHA512 e7997eca01778c9635fd918d05c850d43abc3cada2b1e79c0a4043f2bf275c238d185f1c55ef06548de88eb3d02c3d04f74061cc20e0843ee46f4776e701818e
DIST icu_locale_core-2.0.0.crate 74430 BLAKE2B b01a63614fd91840cbaf00285ecfdec7f90eb9e23066a6c3b1a477574aeb8da1ba0b7f9115f8e5fde8454022cddfb54a25b2791ae33ec827f98fd1daf28a8ffc SHA512 cdebcb5e434b606da9fa24ef741a63d2cc2e6c20a2e47276aaf8923a578f6449bd319baabfd847640a65dac38858734554fc00474511d02c7145dd5d3f10e150
+DIST icu_locale_core-2.2.0.crate 78639 BLAKE2B 106cbc50948d7253bc25c5ac3321e6cc236e23a548f0313267a2e028a74d58f838543a0caca50a2e3550207741f967e7fd8bf84c3b24932683b28f11cb065a4d SHA512 bf29c3f1cd5cea979ce82243aa19d4dada121448ddd974b27cb325ac92e18953fa4e9af2758198ba6a41c367ea659c92e450328e85ebf73d231126674e238c2c
DIST icu_locid-1.5.0.crate 55131 BLAKE2B cde2b988f0af200b8e7851a66b8ae08881670ad6ff79c5caf5135a04c200e5ecd0acf27d8856fb0fce46d502527d506095f469c28f325b9b9d21d2a3657149be SHA512 4b85f0e7cc73166a542b2e502b3ffae1f30d2a9609ab83acf98e90b0edb37fa8ae4592f61ecf48a0ae0779fdd376abeff59e1d5cb97475012eda99ce2a97da57
DIST icu_locid_transform-1.5.0.crate 29094 BLAKE2B c7bb5c5ed273a6a97279d4599f612dccdd796f3ae717411aa5b21949721989986d8b766041b9c7e49a91cdd42a48fc965effb8d7fb6d33554926d203a6535953 SHA512 1779078e2ef9859bee2bfd5414ad7e4b0f0a40e6813f4ccf8de2bbe8c764fac7f99ef001cce22332a8b3840af22e9c7fb7cc0341cf8ba61303794ebe87071e63
DIST icu_locid_transform_data-1.5.0.crate 44727 BLAKE2B 7fc5408510886bd7b7d796850a542f2c1d759d2c67492b695245d46b34930e3918513cae2699963f603d2bd02484960b05afd58cefb6c3152ec201880366d44a SHA512 1c00fb962eb4b8c759b1120313bb890f4388d579890d7450b798d6266a7d6adcbbebc8a8dad2f267668ca6f1c059d0bd2209eafbe2a72f4558c85258eba57405
DIST icu_normalizer-1.5.0.crate 53113 BLAKE2B ccd58f24469da1f237ed9a349f0b3bdbb49b8f5b1995d6254c6e3eab53a71208ff4a0b09bdc68082cdbd288df66499efb19555f41d12a19205d724af22fb504c SHA512 22612b86a24e3ea222469392763ae9d40dcbb37191dd8b9fa1c64332463a4299a53275a1cd3deb7e0f057d137f4312d990762f9925d0ceafbc8839d67c425a13
DIST icu_normalizer-2.0.0.crate 61543 BLAKE2B c91b1c26e0bc995ca3bc32c743a53074955079de642dba1982816218b38a175af297f3adc4cf0048c354e9bbad813aed817d124fc0bf7f95aeab5c1ea005a22d SHA512 7947a3b7132860935b1f8d77cc02be402933be7c2728b815a455bec3533f5d52f8ef02f762ef5ca3d9fa615677527326fc3dfb0cce0590da0ab44a5ae5f7c84e
+DIST icu_normalizer-2.2.0.crate 78154 BLAKE2B c24d908f03bc018dffe43820f19b8298d8e998a3347b56b59d8bef710055f7b4deff807a70783f05d81bbc04944077b7807dc8408bc1019a09e6346e72bc21e0 SHA512 98e48fcfe47623c592feee082264f50e96a82d89fa17e89d5d94de8e1cf3ec2529625954947d9b3bf9746f1cf0062b3abfd2d8f7cfa3b8e445c98284fbbc7023
DIST icu_normalizer_data-1.5.0.crate 50561 BLAKE2B c7b8c5751c6d6df03b23d63855335ef67b34a0b13b15f1f8a8986943b5131874f5205155889e12253692b39918256fe2cfed70dfe2087011683ab9165a5fd786 SHA512 222fbb819791fb4ec7889e45ed3032ac8d4753e2e9cdce9d0b3f79128baca5ce64157a8a58ecdf39cfddb6c2395001e3cc8828ed51803e85cae133c247cb338f
DIST icu_normalizer_data-2.0.0.crate 68101 BLAKE2B c129699813d651acc32b900d4d9fb052f352635925b13b33095ec8b66c841654bcd6d0c4cf3389c70587e31e4c1d0368c4d59e7263b8b8a366d6a544cfbee2be SHA512 20e443013977d65441366ca680c923760992ebed24171e87b62e4caf87bd2f52ef9a2a4537fbc1feaf1768a7ed1ece889b0b88449a0dbe025f6567b17996c0f5
+DIST icu_normalizer_data-2.2.0.crate 67134 BLAKE2B 843c78279057acb4abd7fba5a22c5cdb0dd396365a473be4d03603d26eebaa1250b5463122a1f63911ea9dd68423cb7e47882b21393434ee1994ab4e558ddb15 SHA512 494559893b3db0960fc04294e1f606bf466c3970153335f48ff475d22fae614626d66d46130f0943d5345489ed5aa8118737d27b6e883d331993206a39a7484f
DIST icu_properties-1.5.1.crate 64479 BLAKE2B be7d3a1663664095f4af654723ebc74f385a6423fbd3acad325ba0d6188dce9d9321eb323c1b1d8e6d75fc9aaef3d873b609d7049525d2402456c6331bcbf486 SHA512 7e347c0a02a41a3add950290bee90a339091a713546d4369c2995022e64f127f54204b0d46cbb88f396b3bccbd4cf12720a93d8551b73926f78fd5ec01829cac
DIST icu_properties-2.0.1.crate 58165 BLAKE2B 265ffe58e96b7d3a1cbf56c3208ceb8ff73edb5dd82e719eaaff52c351c07f4a8b019bdeec52d1fb0a646d57f125d54783001545c7384ebf580521b11552bd70 SHA512 a963a6777a72ee044b33b284de95d6031dfdb56c72bfd535769d9c66d7a2cdd9e5734553f9d92708b53db46d1cc008680b6e1ea0ea1f598c2e29b025a5893bb8
+DIST icu_properties-2.2.0.crate 63950 BLAKE2B bcdf9ab45f90145bc21478791579986f5ba5d1cad36e83fe90dacfa3b43991f98ff2434965ec47d2eb6197b8dc45cd72abd66297845e9f74545a97c4279951e1 SHA512 880c0e19ca4ea3abe1322f9ce70c7138b0275dfa6c21b32ef65112d30059173b6d532aca0464f6b161aaa94ad56a0bd06b45156ba0c5ecdfab6f9fc52ab73bbc
DIST icu_properties_data-1.5.0.crate 227993 BLAKE2B 3b3141507077dfdeb4f89316e63e1a651fc5570cda58c6c2d566130858ff67f900c3b151113e6303962fedf1d6b6d617601b21a08c4c0c98e6bf135aace6f299 SHA512 c651d0a50c229acafa648ce234a73bc1d0a85a8bf2369fdadaa62badc741c35e8a7d5392fb1bdb7b720fe2e0f883d1309c78de4ba913691969e5367a4e8bafac
DIST icu_properties_data-2.0.1.crate 159735 BLAKE2B d9b10e303614d1b380126daf43d36e858aa99740da6fd1ed416afff0f2c3b48ca49791ac5ebe098ee4c931b9d6b33b8598209b8294f54f72a5a6987be6c33f78 SHA512 f503b84491c77e2616f6b5a076acbe117832e5fd924df613389f06a6a479de1aa3d2106d1795692bc2818920c3d2d7005e1911787ae20e194a2fc11c175fa15f
+DIST icu_properties_data-2.2.0.crate 168901 BLAKE2B 47468d4e5235e73818d15918fca8ce2e404decc48e7c4f5e8fbd5b9010510a283c77793c91796152a80f0529eb4759d91bb0b6ce9b9498935353e4f190ee363d SHA512 35330585d459673096b545753e36cdbd3e26b202c2b905032dfcb477c546e4cca6d323d3b5d2f0e7b0e4a983094f048c1543d215fec68535fd5655e839dfbfb7
DIST icu_provider-1.5.0.crate 52722 BLAKE2B b1e53ac677e2db5870df0a91de405ebbc635c3f7931960f3bd744b57350c7536116f3861d4177faed2145b79c1c957d79815fadc2dc85faa656a1f0bb338a16d SHA512 6c11d89c7d2b788a44757f02b0e298b558ebe174fe917664401d91109cdc7bd1aba5526b3cdcee1f066018de1b775bc9dfc294bdfb40476c53d552bd6f29d6a1
DIST icu_provider-2.0.0.crate 50966 BLAKE2B 3e6f00e8c98df2a239a4c9b5c322d0ea9784b4f4401e3a62219fd5ec68a3f5f3c8714bf8c91c2a97b038956b013aacc24c55827138ac5f7b25d6807499766b0e SHA512 9353cfeacb76cfffa3132a77529c8a4cafd4fc943b0d9616d6ec80f04e67677e3cdd9369eaba1e655ecaa3af4433d82e12c1dd45dc190a4cdaeffcb2886ae6e2
+DIST icu_provider-2.2.0.crate 51620 BLAKE2B 97dc0dd0f22ab74b80127a4091b8f140427c41189ec0897a65ea8443c307c27a46866b08d6a4e4b348e18c673d96e15258c2086a9513a9fa9c23c1a8dd57bfcb SHA512 a1a193fc08ebe34782efd21b70778c38fd9f6d99c08321cd2bb457d6cc91593ecb806dd61b8179fe9b66d99d79d518081eb1d1e2933b08a3b28158806ad6169a
DIST icu_provider_macros-1.5.0.crate 6436 BLAKE2B 7405924dca41db72ce422437434a4affece69f888e5c18d2a92f761a8d83b180f40c8de9a34ec15d0e107b63b2fe0502cebd0a0ae6f98d9d6ee37d197e754703 SHA512 a0dd58d731556a010428fe4aebbc9dbcd626b46d380cf28ba5236ec8824045a20f6f2ec986e0c1e791bc8bc2b692a10306f448279f079b4c37237e4a3c3cef63
+DIST id-arena-2.3.0.crate 12883 BLAKE2B 2a7f498c3ea5632af4a369d46f90106e642bccbb8e36ac7fe37be05c2125989ea2cf625db92a782408ecb5f68d3efbf3006413b5b748815ee42b9dcfb28d0ba2 SHA512 99652279014e63680d66bc8022ec3d2373d6e476646ee5551346fc9e62d1fd94b28c945bfc30df14c85d085aefc7fbb9051fe11012f63a9254bc11f03133f116
DIST idna-0.4.0.crate 271429 BLAKE2B 8b81bc4535d2e8a1100ddeaf6f43c043fd601ee3b37eb109a9dff01630a81603223407bd5c2f1a1b108d741c811781b205c10148a0122b8125c237a5d5ba8a58 SHA512 b4133c5f73bd9c4ccc05245a9edcc5c980714129ce4f6eb7851eea7e509617ff972fadefe6ac78db6b4106667d9d6070de52c4d42414c95921e3d9fe1b7a76cb
DIST idna-1.0.3.crate 142515 BLAKE2B 6835a64772e5d301c2456a94f8f5f40ebe6828aaeb1d48e3fbe015917dc3ef95ac7cfd0e1f1763e23950482f4b46ef7987928c8dfddebab63947d5a29fb490ac SHA512 e75ab18297878df11d82bf3623b005a3dbf7a6fa38c8f78830c219adc7d6f4ac07dce24a5f1186de69035ec316421319e487396cfacb053674137342d72a4126
+DIST idna-1.1.0.crate 148747 BLAKE2B 89c6bec54cc2717741ddb5cff2939c08823189a490b79ec0e9c7acb3aa2b4fee472e33f36d7c345fb6658c863d3c174577aa1f1a10c9bba7558fca9f76b8ae82 SHA512 1d49993145fe694f33f7c71ebe62face416f2229b12690cec23ae2e4be2fc1c5aa5ad5651d815ab70057b68edc450ef6004306a775b920b8773c221c0fe6c106
DIST idna_adapter-1.2.0.crate 8206 BLAKE2B 5e8d7dbfea699584542cde53039df9d8c3dd408efa2534f11fce7086f679872c45d9905d6b2cfe523148eda3bb0cd4820a7b14317f91725f3d9cdb475aafbd57 SHA512 1d8b54c19878645749a1bae768dacf353b07d266f2cb3bfa1071a7afb56ca68f534dc1d54cae277b777bc97e5986f297cbe2051a82e14f553ea73cd723d9da7e
DIST idna_adapter-1.2.1.crate 10389 BLAKE2B 464a9a20da73aad657cb7c0d573d92bd21159032daa8e28fbe61a980b44e59d1a2b2e076d30ca35a49abcaf1bb71ec51f774ee137792dcddc81086a1b6c2eb61 SHA512 e94555b58646c596fe64006ee6f4458962987ceedc3341a12694d809cc298c38799fb56b382adaa966e3171b1f62b7835fbb2e688251e742deb7067975bf1aba
DIST indexmap-2.10.0.crate 95836 BLAKE2B bf49b25e5262b3395467e8e84353dd8e01a790c51a877895b79bee549fd4220f1f29f591eae821f76b78963573885db9cd7e1e914184d27191d88b54369eb93f SHA512 6f267f5879a4ccba6d702dd51e96dba19ab3f3231113faa91f948b1a993ca57b3f9adb5c197482e57b8c460f98308985a33ddcd7cbb6f4e34b7515f7d0403f9c
+DIST indexmap-2.13.1.crate 104085 BLAKE2B e225be37fc18900aadc2d841e46e4e662bc55584e06fc3c41f68d06f30a16622e18c10ee7afafdd4afda9a56bf34bb025488861fd223ca86b57a7404dbd955c6 SHA512 58f54b7d2a05977c12cadcd80e6310e6e87cac5078cd33b16f368ef21b9f8843082556c2f1fe272673bc49ddd12640632e0ebb30148ed3f1b398b7284a8fdc02
DIST indexmap-2.6.0.crate 85204 BLAKE2B 420a3cceedab93e5023b476f9b6b93e57057238425d4095de59eb9490c2a088193873e643dcad2f739e34e5798baa9a18939424cac1afc5fc7b93ae496ba188c SHA512 c870348691f5acf97e7bff25c805e60f2e9db9e3ee7b3b939b7be45b6bcfaadee9880e6ad27adbbe2545865193655b5fa9de18487b7a1d030017b2fca48616ca
+DIST inotify-0.11.1.crate 29364 BLAKE2B 7dc7ea128e8b149c2cbcf60fbf1178ad2486a1275de6207e67b3ef3b15f94ede55274ec454d3ad8c41fe4166f5e97f185849296db7a7c4b1bc116aff68eae5eb SHA512 263838a8f53e2e45d1edaa176aa580b774c62284e5f19daf66fe56c3c1766cf0c9361172a002bf7f71c7932bf5088cdbff88c203900be615abaf83ee2fa1f4e9
+DIST inotify-sys-0.1.5.crate 6965 BLAKE2B d70124656ce3e6f5ea3f430e8e7100d0691003161234b40542ca86c407ecaac1785f3eca98e9fd2914dababbc3f47a0855c99c9f19245d1f2cd5312739c802af SHA512 dae749f32c533b0c9f99963d97a77dcbfcacf173ec8fd7a02f275804f9925e867b4dfdf6be52c3c3c3de136d64e6e7d6b30a3bf804a01608cf974b0cc2e346da
DIST inout-0.1.4.crate 11280 BLAKE2B 557fb7818cd5e5b8a921fb456028b1d41b42ece0e9824976e83b577981e5c5dec30ed0acab903ad85b059ac40cc8b0f117c1810221dbf2362ffddebc85537373 SHA512 683ef612191d19a867afb1a622a30ceee8ae720df432132293c7e967ad1782190ad973e84ece7fa52a5d1ec7f4d8f078f56d818ac07fe7268547deb5b2399370
DIST io-uring-0.7.9.crate 99792 BLAKE2B 9ca415bf895de72c0b74127ead69f387d0a2ec8daa643135be6a59ff5a3612a515b1fc32566340a92a793b008e8a7c461554caa47cac26f369a82e741f20a385 SHA512 e1635757bb8eb016582acf0468f1f8c7a60d561d56904042e079bcd5b3849d4be23d0c04965fa33f9f11239e36373ad5d33173ffe4465056968d67be3a06ec67
DIST ipconfig-0.3.2.crate 24468 BLAKE2B dbaedc8f4ec23fbbe48a8c79f16fa1575b8374f055237447d12eb009694067a82bd54b503f73f9520e9b731dbf2b7797ee2d6fe2c07ad3946146b32cdc68ad0e SHA512 6029a7d453db77bcf397580fd44c5c777ce6c288c251376cb591174e9fe0aa66b49925764050cc9bcb2d656a8f6c4af0cbcd6685b2ea4616c2d2cf8de9bd67bf
+DIST ipconfig-0.3.4.crate 24620 BLAKE2B 9a34156f2252a7d17587363dae8b8aaf38378738f230c0c68e908234be5c498d6e304aba650b80feeed0dce4159f4309982aa6c89027d6b71d770e2254fb84e4 SHA512 4d31837f4b5a6cabcab4818127bf31539465f55ccddea75617d2e7d9ff60c3d235d4d136d907efeadbc761379b96abf3a2acfb9176505ceb8bac6a017c8521d8
DIST ipnet-2.10.1.crate 28407 BLAKE2B 50c27384d58bf57ad2c3dd0ffe44f1ceb1ae302dd40e451b0c0d69f227050fae17c368c417666c1ec9d087caf775132db7387d5a6c919a0863c78a151912ea64 SHA512 7f55f23b2b0936e3a7dafa2db0447dcf1b63a092df4af8f6fd88a02ecc8f0a290b0d21b18fe777eb573201bf82f56ae475a447650ed0803af676b1e0c0970cb4
DIST ipnet-2.11.0.crate 29718 BLAKE2B 5cfd0876d2c45de886a069fa564d5bd0d4bc53a62ba445692b35c12ad4e3197d9d42b51b14e31bf79e7b8ece129e4612dbf47c90ace5e2e5a9f0e478bd6a5b1c SHA512 9d3c42b5bd93a792ac09975b9ced105e6e8b1eb83bfe012aeabcaa3fc388ee2c5a0541d5cd6dae48dfb97cf82aa970316962d231b65298873136335ac3e5ddca
+DIST ipnet-2.12.0.crate 31000 BLAKE2B 4eacb12b6a5bfbc1090b3de2e6f27df8f551fab7d9f25c3c261c8c818fb30c13526f90ad27e4f474990658ae5f2c07deaec33186cc48178085fb770991806024 SHA512 5255990d2d1024ec0a46f19516a9ec006f61bee82cca02c08ae907722bacbdeab90d2c6f362563b530f394f523310b628dd1661cc0c7199f99814a51dd1628ee
DIST is_debug-1.1.0.crate 3398 BLAKE2B 6c8753ed558009ee60e18bed0127ed3a9fb096cd210ec237b1fa7735e90d29a42ce65bdcd8f8bd82b518308b098c656141a9766a9605f37d9694c0c10751787f SHA512 225200449a9824e8a582e8278e5399bd59ba62900cfa4cff2b35c9f2a0873d5d8fc779f7f0282ff0e6a81919e7539ed4178bf48df31a96b5ab63e43741d862d8
DIST is_terminal_polyfill-1.70.1.crate 7492 BLAKE2B fa663f858ab8e5fd56202d731b572bfdd4ab0e8262100424e27360a9ffd2820182bc57d6718a305ef82d04c3798111841c0d9f9dcfe219765c0f63edb560dc1e SHA512 4730fa09401cb4e69c92b38b2b43afd74699c61f5bd7b37605efbc0c08ca7a1318d43e4a844e46e0f84f83f42432f01e33771be2b18eb5977702ab9f894837e1
+DIST is_terminal_polyfill-1.70.2.crate 7548 BLAKE2B d84c45a94bc0ede333843ddb5206379f1a7d9df742c7f7940374d6b17b0a9c300e32fed5fe2bc58e6b3bc5d18b5fc58dd4e283c01c2f3b4f10f254b3cf7668c3 SHA512 d62f444e83950bdd441215c0ce681ff774692b35fec2af7181dfa243dd43fe42ff7e10a6e3b1d578712e4130dbfdf471ecdae73a3a584a2856a848d387b6c261
DIST itoa-1.0.11.crate 10563 BLAKE2B 94da07e0f7f2535d0b1491b3a3c64905274b315ffd35ec8e9a3e36e26cd7211733b462eefb5208963e388345f65be9694804c344a6132b2b595b0bc716c0b328 SHA512 7e22dffac34c9c9f432daef395e0ec710ed658164bc9cd9fc6445c9f984c912a10bac556214a026bcddbe27a3197b35b0c87d6709fd605062637d086b2d20311
DIST itoa-1.0.15.crate 11231 BLAKE2B 17c261baf95bff2f6cf0dbc33ab78ebbab0cf5dc56aeb7f8977377af868deb5957918f1763c2fe8c080e931489ea89ebcc16b3ebd976eeeb7663ff74989a1071 SHA512 158ca5dd4b04cb12d9292a4df63c72443adaf5aab1bd9aacdb964dc58878d847a64251f84897cb25c34648d4c973b44fef5b4c175d7c04cabc2c13b4631c2e42
+DIST itoa-1.0.18.crate 15935 BLAKE2B 8e41446056ccd94979f6f5a8fe8c48d6c47abaab99a41715cca31816f859b56e0cbacb998f300b62be8b719a6470f8a087f1439b72f2f6662d1cdd3d552ede5b SHA512 8dbad156e2863c28e2b380901a92414ef00e39f1fcdb06d91a0f3fb73108c2f7f36b699ccd93287808c24c29cca7f1783d48d5ca95f2173502963c0abcb2d09c
DIST jiff-0.2.15.crate 712996 BLAKE2B c90d59db2762c59fd85fa8f45c189e2cdb476afd140899e5cde1b657b2630cee75a10ea3d3f20a7ce2853fef972bbbfb21b701375e5e9d20b6287cbe433e9a10 SHA512 577b5b326c66bf8b81174c48e913ee381cb17030b7cfb3d211ea3376a4805edf08eebff7ba1aa67cf20144ebf3aca02d6f96f771cd44e5bf6aa0a23e96f6fd27
+DIST jiff-0.2.23.crate 759789 BLAKE2B 890fd06c353642f35634fbbf9a185745a1c3ca2c3d5dbf6ca9923c21b68f9be627bad4cf537c773084a939ad18f5d9bc4619e0a123266585efcdec4cba26f442 SHA512 523461f14e5ddff5f9d883469a227f142ab83c5e953434027207e7b9fe70ad4d86fae8e0ae59adb11768597dfb1480be945c1b44794eaa446ecdaf7acf472881
DIST jiff-static-0.2.15.crate 76146 BLAKE2B 5409fded10b61363d8a6c907716b5e374eb1de51cd062706eb3a81f53064584722984e9bcfae5fb0f90d1c3c841a12a2c569419ab459319697c98e6d70c630dc SHA512 282b8bbfcba6b86f84a5f93f3efcc20a61b727abad664836e8f81d00b397a34b1e94276af05dca25c7abd44292abcfe7af3c3b710087d4af8b5bbf348999089a
+DIST jiff-static-0.2.23.crate 83745 BLAKE2B 501fb0f149c80b287ff039ce12016f437c2861de878f95197adf33069f3b4a29ebe709239484563234b2a86c77572fc28a4965384760ee70545717b89103e895 SHA512 51eeb49ccf7d007931f66fdcb6ab9ffb451a812516a6d592e3f9193c8e3a71f1d7d34652d49f84537e41703a5f8ad6c1eca5043615362420c9210f38c98b823e
DIST jobserver-0.1.33.crate 29136 BLAKE2B 10b9862757e919a91e8921674380899b7272840c08e45cdfce7ecc43d70e1acf497e42f3cea903145d26dd0954f05b593506f72796f90a61af49eb9c4265aa7b SHA512 65ee462bfaa1fe75c32948a943d448ac8b435370cb277ae7fec9d23c93463d68cdcd839a3248e2e804bfc0278d4b1b943f4d77165385c4d9b82543bc5932d51b
+DIST jobserver-0.1.34.crate 29013 BLAKE2B 4d89234147386d61e8402872e577c52c60fba41b21831acbc6934ec7668b22dd9b876cf78180f5a06b2b26b642a0d7e02c9a67dc36ae7d3aa3b95125dec3d7de SHA512 42fe03eaa4caac030c40b167c742aa104151a126505de9ff4c52ab97ac13cdd2b7219268bff414f1d09061f3f9e36be01bdd6255597b957e18589f9ef4a65549
DIST js-sys-0.3.77.crate 55538 BLAKE2B 8a4c04a8e93bf5dab63784a24320a314cc5cb629df788e116c452857b8c049c6bf357f3bf8f35086eaa81bc2d7f0954001addfd0577d845844871ee138e81bc6 SHA512 d9370ed6ea892bd51ea181630ca661c348f82d575381aa4c8b529113dfcab6687f4d19bceecad7e1b28ebaca74d405862150a5b5ee2d5d55efdaf98eed1ab255
+DIST js-sys-0.3.94.crate 103723 BLAKE2B 6feacf184d9111ba10af7b9abe792cae47cea7718a290dadfe8a6aff3ea2374bfaf0af06213d1eeacf8bc52c38aafe823c17ddd1e469c98118bba92a57748199 SHA512 290a6ba146e5ff7865c7e6137113013417834c6d77aab24f9488576bf4b2c93bd39619b3bc03ab5b64127ec98d5095540ee6571f5bcf6abe6f9f12f78c3066d2
DIST keycode-0.4.0.crate 4263 BLAKE2B 0cac9ac69d5f6d04dc0eeefdd9305205b45484b396a1baa8afce5f462e01b47089a0857c6e4e448f3bc897b2be1cc05fc85440219c6554a18bd3e9e7cfd8326d SHA512 cfc30bca56f2bd47c7456a3fefa5418cf9837817a11b8a2536a83a0a84d6c14a9efe47efe0a1720273a9ef9a1f297fa05d793bf34c9b8e60434f59f6cb33ab3e
DIST keycode-1.0.0.crate 5382 BLAKE2B a86079124073941b8d1b6f372b3125560100394ab78c7c9aa6d6241a19c09b9c3ac92c9ed3b64ad678b97ba11e78edd52cea5bdad0d1de52920d2105aa3da521 SHA512 926dd8ecc4d6b8b02a27fb4f7c26f8638cefab7e62b162277132491c5eb0df471b268584322a3d3c23c1c4a66f5e15c43854806adef2457a8b6a16520a458a18
DIST keycode_macro-0.4.0.crate 15487 BLAKE2B 8f54776f09060d52ef78074a51ec8bc46630c9161bbd85f476f8ace70cce5ad36dcb4b9286ea2eeb275e4ba8b3814b162c3ca30f5d8824ab32923b3f8cf783f7 SHA512 98749f84bd937c11f2ecc4666574b8de2142ef6f3268857009c14ad70a7283cc0610f75ea0e4b99dccc1135777465b973c47874f69dd59902543ce07a1253a0f
DIST keycode_macro-1.0.0.crate 16373 BLAKE2B 96776fe51ca98fea3121c93cbab5abb6611098dc6d5026f82efb5464cdb449e6a7e4195e4fdb9d7c499b1ca6883875512fa910cac20aa7c6fb9765f86dde175b SHA512 bc1667d898ea1ff9e42874f1fd6a0c6e790ddee9248da98c72ab94eed27434c603f5fa9671cc6872098fbd79021a1b7b2a11c73f482a6939f8e81960a0242d1f
+DIST kqueue-1.1.1.crate 21504 BLAKE2B 3397a355b56d979371f3a790ca6de4880ee1cb78c6fd9ec85766e1bb5ccc25f811f7065a31dc14b0b4686de4bb1902c2e2c3026719ecb923e3bda553998d187d SHA512 08ca26fd83c4aca32d53d85155580fac95b50709662975632aa542cb1e8a2ea5f8cc0f628194777093168a9950d485fb395bb55e7302dd25d03bd311e8ac84aa
+DIST kqueue-sys-1.0.4.crate 7160 BLAKE2B d75e152cfccbdf7ae000be14e0f84c6d1fd07290fe498349a8715061a83d8c02011b59578db2c451de011ac3eb4b218aeea73963a2a5cd82e7f5f49de0779632 SHA512 6650aef7efd7fbf4f9b6c8c6e4c1a91b79636423d46a0173dcb99de74e6f277cb02ada01cb62aa71c3f174a2c28db62a708b0aada9480fc5bde613204acb30a5
DIST lan-mouse-0.10.0.tar.gz 217131 BLAKE2B 1fcb563aba5a0b18fa4568c916971a62bd496881f9c983d68bea35df135d06924fb4881d0850f09d96e15cd17cbd3d4568cc2a65a5c4eb1d3d34b8a7b1c15d34 SHA512 8cf564fb20e70d8238116b8f4123441a97d096387c17d1293c4588c799fae3f99b37b195a1e0a0537568faa87abdb41c40ca1a41b01a8f70a0cedd95f402a2a5
DIST lan-mouse-0.10.0_p20251027.tar.gz 263417 BLAKE2B 801853226d1940af125e98ecda7130b1d60092dc2023cdc36cd7aa179597439effcd1b3e2a2a369748ade6efc833b42f78cc660fa072e0268b7ec13b347a7666 SHA512 4eb03372db304f38206235d88b5a1a87578f7be6f92bed34be5865317a2fdb9829446108d50c66831a52abb6046c243b10587802c2c8cf40a5ff3be1edac9c3b
+DIST lan-mouse-0.11.0.tar.gz 290168 BLAKE2B f8256800bf0099daa8525f57c69d265ecf90d2af80872c4a9d4c92f7dadbd94358aca7eca654c34096475712220c12596d63d177805ef7ddb6c2e42e42215ba4 SHA512 e19e6b90bf2e515924cf30da46e2634e17e456c8ef68f199be12d88208d6fee9006d6027899a495343db113d9b935b182071b39bd0024edba0eaf123a30dcda9
DIST lazy_static-1.5.0.crate 14025 BLAKE2B df29e0e3d1c061815bdd608b41074436024dc407d454f32517705ab04b2fe06075e310086c5e4961df0b4885e91021589d0bca2c1cbe6f0aeffa3ff1b3fd4637 SHA512 6d2f9887cd7f34f019644e42f02f2bf0111accd73aeaa60973ba0b039b6774670debece1ea9a6978e923208ef5d3ab7326473ee3560c078817f0f7ab8ed0f65f
+DIST leb128fmt-0.1.0.crate 14138 BLAKE2B 6353a2520bb93e0a3cfaade09ffbd8cf981d2cf75579e865941f3fea0dc745c54472b369873b1ef4f26dd7f356860e563bc7ca6e7615d600b272c698a55e54eb SHA512 82fbc7f0786185453fbf11fb3ae58e71fce9780f81eb6a56d7b559e3a0c6825751dd8b64f1266aab73fe65f7483a206e42f31ee1a1b7b1801246c6dc9c2ea817
DIST libadwaita-0.7.1.crate 125670 BLAKE2B af792163dd1951f11867fca0c36188c1e2fe11a7d59eda5162f80ef25815664c8ac944899e27280ff457d21b3132d8ed6c6ab2a084ba5a53ada035523608f882 SHA512 3c789d12ca362c22a9b101e2a83471cf940e013608433226f249c79f91b8022021a68e469a3b3eec836a934cad4c47eb4dc48c3633ef8072f633ef04f8926a44
DIST libadwaita-0.7.2.crate 125693 BLAKE2B 6a8f066b247ba1727a7a8a50de411c1f6054b1dd644612fd87dd060294cebcaad2f7cd06beea925832435e167ea3026f019b68df4e3ac48fb17e376443180d5e SHA512 8fb936f09e09569d3cde8e269b1b0b069ff330fb1b2ac7dec743b10a8e3ee81741f5ff255ebc598eda50f2f5601a89038e71d632d29905dded78d857262fb0d6
DIST libadwaita-sys-0.7.1.crate 31122 BLAKE2B de823f746d24da383ebf936c2531bf829ec9e706530179618995a10f026e977394205a3bb7dfe80928fc4187b2f1626baf79464022f22e2dd558ae4fd9b9769b SHA512 bba16232081fe4e3e0645cbf1e39ef8ece43a44b04ac72feb60a164bc3eb80848ee080c09bcc784230554b633674715de369f43b4c28f02622900888ceeb7595
DIST libadwaita-sys-0.7.2.crate 35416 BLAKE2B 2d704f894eddf6018a639198623abc2ab2dc8b43e32b60645747e56c5fa3e983f9046bc9b87e08b4438ef0e24ce3aa5fcdc09c2cf27c5362b98022405cfc925e SHA512 0aef0bd446a30863a7e19b06839a2f7243ab8e0c9ebfd50ca66557ebfc24bb90f083151a78eafe0a45416c807f907e827e2f6b4cfc7f2d07ca7f6e36843b5887
DIST libc-0.2.161.crate 765389 BLAKE2B 4880efbc347e0b92faa893993f37c486a69afd1a3c741cfb9d3a2d3c87fd56e49788f8aeac17baca217f4ceee9180097386ef481f4e142942802f27983f8e6fa SHA512 264d7a872c10484b9cb19ee858c2ac44bf165297653fbc6220672bd2e0ba10913408130f21d370d2861eef529f9ecafece66515b47b4461d56e6b02f55ea2be8
DIST libc-0.2.174.crate 779933 BLAKE2B 20ffcbbcad6961e732521940f0595039dc0576d85b2d3b2ad3f1decd37571132a4cd7505b2e108078a4379fc4cec46290b5633bcbcc6e7009c3b474c1a852628 SHA512 243f2ffd5741ef859e4dc5b7ee0396071943b1d10429efcaecb322957e256c4be88a7a649029dfd47e6456acc73ee257893fb6c4e8b4d0fe66a12bc5d1c13c73
+DIST libc-0.2.184.crate 820172 BLAKE2B 61c2c133b14e79a6871eed0fef248a063f19d41def5bdf72bc7f96c3b60eac24b52d13e16f28d68d750a16fe546c26f245cc088782fd26f8fac78da91b1d5c0f SHA512 46e22ca28ee3562bfa2475a944390cf2d864e11d533889c753c4888a56c02b981bf9507b7866bec65c1b1aa32801cc1c57b660bd93149111547ece7ddc55f31e
DIST libgit2-sys-0.18.2+1.9.1.crate 1856057 BLAKE2B b6f438ba18252d1ed69281c5f4b9316e29d891ca637acb5f7037dd5f54d69a848c7ad3ff89979b4b56ae882f8722f6690815838b1bbe4b9137f1bf134cb99475 SHA512 c919c935b66137bfbfc707c9e2f08828469b4f11fc61e416840904db90a5e34e5b0c2bf1132fd49a6ab74c35f3b85c5a10528271e3044d31e51a80d43da12316
+DIST libgit2-sys-0.18.3+1.9.2.crate 1865532 BLAKE2B d130620bf0752214f68f0162ed5136f5b1ec4b8899956549184212185b45b1fa140c7c68053ba171b121cbc23aa61a33741832c0185d16d3e49fe6f3ac2dcb32 SHA512 96065972c70c11cea1290e9c514483f45e18377c4368f5d9048ea46f5501f4c596ae2742e157fbf9a4bcc0fb27babe901c4fe38f9dbe555e014866caa761c6df
DIST libloading-0.8.5.crate 28902 BLAKE2B a0fca8f8876092e874964b3dcbaacd417451704fc1d687669a95a0b9df22ccda73a754118ac0bd706a7c7d86e4eceb2ad012e20e341d71548b34ea8d629bbfdf SHA512 f332884fa75cf210460f4678d45091345b23469c09301614c476e95bc54163afd6d4f098a34f9e0d529fa1ec63892395b50957598070ff327743e4c3b0871074
DIST libz-sys-1.1.22.crate 841053 BLAKE2B b3da149fa78a1ae479d88eff9a962f23c4a0dc95cb31269dc958f6c3070c7945491e79ce57d02ddafd833e2745c3343994c664a058bc06746c45e091f1a0a0f2 SHA512 0360512129e7eb8e8c31bb3e97aa7fa1682392db9e25a03b4267f8cb0e45f1c23f086674eefd91fc45ce5c64af741f752b3d12953165523ee370f6b7bd89d2ab
+DIST libz-sys-1.1.28.crate 880536 BLAKE2B 4a4ea1bc723c0fa88e96efa25f0dd2145aa48bc18e0b907b2ec876e554df2a2bd7faae458c404cfdd28a5e08c9997eb14a6b68c093e485e5f3a699968f90c8a0 SHA512 cd05a528feebf38351bc8e3817a3b554436ec4872c367dcb166f542a7ed5025dad396dea32c3046d2354cc9641716824e8985ea37a02d989e7c9a6c33401bfe8
DIST linked-hash-map-0.5.6.crate 15049 BLAKE2B 0f30e388633c60433dcbee353507f1c6857bd210f0b61a4d166a9b95067bdadaebe49d5fca4fa6ce13072e26037c6f75d46cc30cf8dc3c9cfcb3f33b33630093 SHA512 031a87645381c96beff33572e4bac1a9877e52fd2f99d39918fbede17d72291b35e2eb69e07edec20c3058554c35cc38fe85b8f175c2a3c69366136fcc71f707
+DIST linux-raw-sys-0.12.1.crate 3006116 BLAKE2B e23efa27e6052034d41b2149f90d1ee7d6b905808605296ebed66f5fff210c4c18c51ee9c363bd0b93c8e17bc3b70857b594aaf51d44492051291c0e008f8cef SHA512 5cfe8f7e88a2125dda56a3f7a7213fb41cbdb51ddf4f7e44deec21f5b7aa05530e04f67d1b89b9d99d9fb204f27167d8c0e104e6ee6e62a780bcaa679155bb54
DIST linux-raw-sys-0.4.14.crate 1826665 BLAKE2B 804af73daf396bb20da14f831f26ce06325181de14f0c277350bd22d21789f2bdd663a964cc0e7c5cbd2e084285d02a401a6bfbb3e8a8f079c120f9488b56f99 SHA512 28149660bd975ede05624af3582d5c78f498239f5d89713c2c32f5372fc16f4ca024dec35f81ea973a2cf986098890395dbda06ac6cf4ee29df3f9a0e11eaea7
DIST linux-raw-sys-0.4.15.crate 2150898 BLAKE2B d1936eb74377d9bfddccef3830b56eb716c38ea3cb7e13b73325dfd00f9fc0df74bae49e4214dd7f27c257403b8b12cd1ef332d53336279d13f7e9497caf4135 SHA512 b5c39181fb6b901abddd8b2e7b449142e2e5691cddadb8e6b74ddc3b53076b1d410522cfa45af68dd18befd24ff12313c2494cf2cb0cf142e2228bfe42014309
DIST linux-raw-sys-0.9.4.crate 2311088 BLAKE2B 261854a127942e528a09c79db0407974c22eac1144c9ecc9ea1a6f48f87a240e610932f5d911563d0e6c05c64b0cb302f86136659f8aca0d59f03946b2910baf SHA512 e98accb9b3e6f47d5753b1a370c61562d4c176fe1096188c6ec0d3be9e7e03d0ef2c08acb3ff4636cc4f90412b908d17f84fbdd99c5dbc130ed89b40b5145f92
DIST litemap-0.7.3.crate 28728 BLAKE2B 00a04ca0e4e774b317218ab990da4c6ca1f342bbf229957db51801f8ec36339b665133bfe3847ca68a40d901d78d87e0041e09f0740898ac38ea3c8504309c31 SHA512 2c3bc6c4cbf6609f3cc2d986e701d23b73f5bac55995887c90aed01bf4392a42c718a69c0050296fa635a46f7cc9ef3dd6c6a2a505d3cccc690899aa345455a8
DIST litemap-0.8.0.crate 34344 BLAKE2B 0f083fa9ecb78ef6de4c094db8a7cebe2ff47af6e46414c06cc0dd0e92ecca06c941dca6ea0ac1b4982f14f6027cad979fd37d19db6631e3952dffb6e33c8798 SHA512 61162bd55b28540ec2d61262698045a78efbfadc7e2fa248d9e0215fd7d3ce53a8c50ea0487f2f7df41149e41c0131849e507737e3bbae29cb69ea41dcb8e2d9
+DIST litemap-0.8.2.crate 34572 BLAKE2B 1c052278ccfb685ca8d1647f6d35d2f3cddd74814d287b8f9d10a0447781a1a33f607b0745a6c83b7e940c14076c90e4ce1029e8660b57b174683f8af2585fb4 SHA512 3afcc1a89aab55368bdfe6848aa1268d37ea8a03130f1f0e1e77d6709e437070be83e9e457bb51a7096c3d93ee0155740e33cab03f7584ff3cd7d8992524a7f6
DIST local-channel-0.1.5.crate 7881 BLAKE2B b9f613bedfe6d99e2a571cc3a4149d32afa36d46a71c553de71e927620159d93c18191d9cf08f83b0b5cf0f5d100afaa939f72180dccff7319fa7c2512195b22 SHA512 a38f5edb36c4881dde9ece58e7f71af4fe3edcd60bc7f64ae52292cf8d00055c3e4ab1d85d02f40419ced2e9e104da5b2100f25402ff6ac99b0fcd02a60fc3b4
DIST local-waker-0.1.4.crate 6730 BLAKE2B 02c85d8aeff2432727fcfb14627f3ee9b89b31ad8129d6acd66285903bf88167ac8f64e36b368f3ffa711861bb077482e4541c0f13b32e9e27a8a22ad7661e8e SHA512 f4b8d3ec7b0bfdbd755f1cfe939fd292e4d3e8d243b4d3b3a2b64b2d9c366d87b431ba7dd1ded23247ddbc7e3f620423cce31aeaa08f83453febed8d9714e858
DIST lock_api-0.4.12.crate 27591 BLAKE2B 4504d146a114d8f8e1fe9ae70b993c713cbfe884dd69c61c54dec978733b95a853c3e5af26f237e48ebb4ee9dbebfce0f6c06067f74a3d122e92f5ace40e22d7 SHA512 525d971f495449bbd02eb70fcd84d4aab05ca582142144a5f314f9aa67ad4c5b4c98dc919a416d0ed2e555063eab037a441d671d56b633f2cb75dfab5d99bcf7
DIST lock_api-0.4.13.crate 28565 BLAKE2B 6441c9ae8e764ec1c2920f645153896e967457c96c3a7c0410d3c17f24291a23f8c01ac0b334d88262fc1f262bdbd0085a85f0b6f74aeeaa16d010a7ab2f8c8c SHA512 b9bdf2ca29f0d7950d9174403dfe4d5658fa82da5cc46d623cfb9c1e3673f6b10a0d01212e7701be6180ef31c54e6a35fdae78c2da64522e6ba05e7c783d0028
+DIST lock_api-0.4.14.crate 29249 BLAKE2B 52d2f3a3eb5c3cbb4e7f01a2932f90200e3361155f53f282228f436211c54d1e429bddfd9e305a78b9c26b022b3234ae8ad3bee209bd4feed5b64a86af5b3d85 SHA512 73164d411c9899323b3bbff4fd6824e2b9ff44971ddd267629ae5a70b456c1ca945716e952412790d35331993ae71600b0e6a2aeefcdda117b26a7222ed97bf0
DIST log-0.4.22.crate 44027 BLAKE2B 831dc5092db05123bf2e909eafa708339983edece9bc8cb802f0ab418d47ddc5045a72c1b58bc7c46ffa68080eebd0fd55d6e4f5b3d5ad3b0bc6b2ea0dcaace1 SHA512 bd7baa9c8a5523fd0864a53bcde955d484cacd782412b5b02c890b89dbf62137624da3a27337a310dd8f62bcc6606925a42bbd4ca161a3b7936ea4ff96bc0d71
DIST log-0.4.27.crate 48120 BLAKE2B 09a2159032baaff7eede480062da30ffec1c1d4c77e76288467941dc13722ab1566742c1821326ca5f8c2f9f7597099e235213ecbf883fd93daf5ae9ad5ee981 SHA512 8d57219b76c8a25bae193e4d16d4d03bf0b8523e1ed3bdc80a692cabe00fc0359ae9bc3be989f04476ecda7187f27e4ad23fe260a96fcefc819af00fe12a1151
+DIST log-0.4.29.crate 51515 BLAKE2B 3f5dc889e895428f27ef107a63004c1b321793b865c29b20293adca81db4e25443e24354af37018c9a60dff1d54897c3b7b2c014a64280523f4a3586a7eeed24 SHA512 31bcf1669c27980f0a8500082c4d0cc500f6cc943518a3dacacc3ad4d8a0c238517f23c2c1969e5a22dbb5d25614adbf4e914c0557e45e1ebc8e7385b2ed14b3
DIST loom-0.7.2.crate 73989 BLAKE2B 9100d748f2720d11c8b06f55265988e35e23efc6534c676ce0ff02e36681a084aabf90c68b3911a95cd4c90c4a3e19dde4ef1bde870d890305d86f8c21db0153 SHA512 e17b7fb50e785972aed6bdeb2e9003b679c463bd538fa0b8d25309506166cabe04a885d1d5ffa79f5bbd4db2696aa3835f07a8cb933031b62195e3d7d441b742
DIST lru-cache-0.1.2.crate 9307 BLAKE2B 606072bc5390a13cf24b4c64c77ba7f84c4c2b1a73c4abe8ead4e1d19067b063888d5cbe478dc9108d193f0a66aa5fb2ddc073f3edfac466de34f85a52a15ef2 SHA512 ecc67b4b2ed8d3596816c47e9c6aa242c7bdd1ee8087646e90c27a60d59175f661ec3ef82058c196bef2abdd302d429b7ea4279169689254a9f322dfd5697bf1
DIST match_cfg-0.1.0.crate 7153 BLAKE2B d3f40e5b16761fed337ed18dfa9db9e46aa2ad84ca8cfdc7cf7c72bea7cff8d084d95214ce013b3515bbe5b1ad4b8527bfce692569551e4588fe6f396a8a96ee SHA512 fd36f2b128d70a0f278e708bcb3274d90380229f754aed7ce9b808138b0189d5e1a07e0ba732216f788a530cecddcdd980559b3f71efa371d8805a213ff8f2d6
DIST matchers-0.1.0.crate 6948 BLAKE2B ec3a5d01d2fedbb4dbf5bb185afbb9401410463a61f51674e0df6a571db352b2bbabfb99cdbdcfb4e511ae783165bf0258f5163f240a229b9087f9edbd0df41a SHA512 84214c1a84952d85631aa1ab5115df7cda223ac64e2acf055b6129ba1aa26ddc87615a8b51ca890ce3fee0419053fa7fe1599ae128f1d211b58c07b0c4af3b19
DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2
DIST memchr-2.7.5.crate 97603 BLAKE2B ee41ef722d90265064db3ffe22d52eff8f7627ac1ae9b0bad6ca9fa06c1027dca8d67e594e03b03c944dbf85930d2dbf030c5aaed369020ca1a1ba00f153d91a SHA512 2606ee16a7dc02db95dac17cebd2cac9deb2e23d7ea62972cdb19145c06eaf75631347a49c4e6ceeff89fb6e90e992f9bca0a9c955eb5130f89ba2bd865936e1
+DIST memchr-2.8.0.crate 97780 BLAKE2B 228ce0b6fe8b168f5c31031690a5eb44466609b64c5c221e0b3f56fe331b4f25c0124d613c94ef030b225000978953641f5b07458d530c1d50eec3e1d54e4274 SHA512 8089238153493a0ff6adf980efd1ea2ba10eeff9f33fff200268692662d24152a8c14a4dac37fbc6a55dca741701fd256174f10a9838ca66f038f08e090de12f
DIST memmap-0.7.0.crate 15214 BLAKE2B 44a5bde9b85b2c378fd4c6ebfaa322ef8d0076472d6c7322f7aa95b8aba3514fd5212b4429eb369d30d0327377e36c626de474ea5e1f764bd4fae595680a04f8 SHA512 3a7c7f963111c2afeaa0381aaa6a57f0f57600392693ee1807d54771bc058ea0f86ac6e8afbe858e45f9f17b685430bf256dba1126b8074ace3aafc07bc14bfa
DIST memoffset-0.7.1.crate 8556 BLAKE2B 1ef270f1c8dba32e66cf47a1835f10c342024762c0e56953f16e82d575250028154054d4c42b1324c60f955a40fad3bbb1c5fced147c11c9a4ad62f6f0e948c3 SHA512 40ca3c4b1fb929bec75bfcde0135037f81a6c5aa80181bc7dd7bbcd9c0946288eea8d23fca95e296567ccb02155ed0f66c7c23644b5cb3e6d3932be9f9742157
DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
@@ -298,28 +386,37 @@ DIST miniz_oxide-0.8.0.crate 56343 BLAKE2B e4abcacab4c8698d0489faca8556faa7bff53
DIST miniz_oxide-0.8.9.crate 67132 BLAKE2B 1a11c5aeef43ac93635942e0c4f17538150f8307fb280b0d66436e4b6697638f0b1bafbdebb377a5dba14a75f213024201e325747419623e5f7d57060bba4445 SHA512 3f6fd786c5fa5b4abafaf21244dd4830d26688d5b6975522bda595206517f354d92d13fb95235667cbc39c0275371c737164d9c7a58e32e09da86eed2f239242
DIST mio-1.0.2.crate 102777 BLAKE2B 9b87abd99269c62e48c6be4fa197d2b12527b672c435d5f1f623f986c60ed391597dbde7d5b73a624a4df0eeaf9c9cedcd56cfd7ce4239757d59e67e9892c59f SHA512 77eae1170a318d4a53550dda3462ae070d25656cda51db4cb2dbcb28210802f9b7e279900e6d6eba68314a0c814c90eb4af7acc561f611535cb364f75ad4e317
DIST mio-1.0.4.crate 104212 BLAKE2B 22ea762038181e22653384514dabdf527e0ae9c22a6323040ad67d6eeeab596c8819038accec8db1c36748f391b421b842aad71974465a4e51d2d90795cd3845 SHA512 2b3fe4d74447834d28e4e1d869b55799792989a959ff64f4b18ea18b8fa846fd3c1415e191268219e731de1dcf12f85770865ffae23b6144a6700e1f237a0a53
+DIST mio-1.2.0.crate 106403 BLAKE2B c9b2342879cf19b95c9b9e472fd5e8caa6f6371bc7734b6d9af71c736a4aa218837ac3c8a1f84d1fd1ce4bfed9ff417d319f47e52c4d637b15e2a179f859c3ae SHA512 148daec8a99b63ad5742695ce7b5306d32dfcb484fc819b1220079c59219695d2892bbf83b65aa2dd76b68272fa195d353ecb28d9de795e176c4a38be729b04c
DIST moka-0.12.10.crate 253622 BLAKE2B ffa317e87e16f1b00ba4cd48ad6e4dd2324b4ea765972573be26fc036fc17c314fa108ec16f55ea2714c1c8fe7a330391b4bf260a7c7a2a82a9bd37db0fa6a9e SHA512 bbeab15cde9913c70ce7b8dfdc2f14216d27973220991f58556d03ad8b5832eb2875fd09106af09363c50f290419b322b747c1f533a7a954f8ec8259533365bb
+DIST moka-0.12.15.crate 239860 BLAKE2B 135829d4fbcdf37ef24bd0abbefe35c2d2d606252f8d535a9e8e44770a7a78b8f92c3e87e58391a3dd34a4c906c6d2b0ae344cf4c04b5d1eb754313324d5452d SHA512 decf8fdad39bf144f4452f69b26ef7ff88346174d39c7c76849a569194d39853effa5f20bf16a8ee524b59a77938a2cf88582c53f3198f57fd320961893c60d0
DIST nix-0.26.4.crate 279099 BLAKE2B 41debf1f21427ad6c25c6cd26b7867feb8ba46366028c4b74073307e902e526543f536fc0a66db2cdc5a52fbbf9166a6a4843aba57e5e5caada3d914286ddd60 SHA512 cc68ff8e3e8ea8635c6fd4c0a866cf42121aa3e25165666ef3b97b5b2c1d9273cba6f689e80eb812b55b5ee513390924a926d95fce45de0a74b98764dd1fa27d
DIST nix-0.29.0.crate 318248 BLAKE2B 3a13a88375a359cf77b28d7f77f47f178bd31ef74b7627b6701bc6fc601024706be4e9ac1a076c7cba26b64d3bac4de17aab45fe3c045aa7a36e2d9232e872ca SHA512 86c05084aa0e6238f8d48df0f5ce6e6d7661b589f4f3fbdad43387c59c0d6afafea4badf25d31db1611615de19a0b9ef18ce614846b79a47cad4e2c9367dbe7f
DIST nix-0.30.1.crate 342015 BLAKE2B efe5faaf142fbf8d97366d11f28189167d3d22c1ed76b65e7887064f2fd146ae27282aeb230eb798d7c1b3850ea1502bcb325dc23536800690f0be3d66d37b63 SHA512 80df8102a3a387d9cd73cd8d756b9fad5c4c4b57f6e94d9acfa24ee07af51f28ba2db70b8d37ddd6c7eae883c7acf9fc366a0100659856939210ffde1b124d87
DIST nodrop-0.1.14.crate 7667 BLAKE2B 83aa728540908d2d2d9f82c18282d9a9d74ea01b5b836d83cd3f03d225ddbef9fd3fd13460895d744158af74fccf13b7edcd5bb1bc127c696e613de673e25863 SHA512 f583ef6104aa087e13c66a183d451d4cf350560476ca959ce4e0e8308db26ac9f31166c25aca3d50ccd972266d7595d89767655504566a4131a54607e8ed9376
DIST nom-7.1.3.crate 117570 BLAKE2B 5643b67990b7305e101b16b8cd27c447e162a7adc6d0dfac00920b0cb50fea98c9d4edca63c34f6845cba05f8d0acb407cf3045cf64a4cb28e53c8b6bc9090cf SHA512 1ffce08dde299bc0e0367ad59c7b6a83e23decfa11115ee076ab91ec53cdd9ef37e4c2103c96eff23a7b6b8b5c3f67c83ce1917928c7d4c6462083bdfa0c9cad
+DIST notify-8.2.0.crate 39067 BLAKE2B 34792d7e0d43dde7ac70158dc3a0059c0cf86cbef9160e8f10a3292581ff866fba5c6cb000212789a47ae083fae0a65ae5180a49b5d40008bb0709b637ca1e0c SHA512 5b68f2437a2798aac5c240a10aac642708ef9ceefd58f448e7d37facd148768080cd3712e352e1736f910b660609753b47d8e00d4c6d0936cc5009c4d32084e9
+DIST notify-types-2.1.0.crate 22796 BLAKE2B d3eb20882c2d435da866d4d183af445182f879c8e04908de3f932b9c7895439ff860611734528d88653691e6ab76a5bab817c9f9b07191f1cfab497c707bb524 SHA512 15f100e77f804b36fc940ab30dc228085a9d177efb6a61cfb92f898368ad059f2b9673203327f9e914798a5a0545dc686e946295449732e42d314fe987cccc92
DIST nu-ansi-term-0.46.0.crate 24311 BLAKE2B d2e678e0eab5ad48534e686b1a4af344996d1b07a0fa40839072df3061bd7e5bc9341363403ea3ef8d19c7725ba3b7a8ed540c63e2209123b1b93f69418288b6 SHA512 b4f37786dc85e0596e2b7b261a5a9fe0265bf1651c39efb358dd649b926b12c3093f307b98bf0c4df3899f0a7cb1854f2596bd5c3e22fbbef42f912ab2eb5043
DIST num-bigint-0.4.6.crate 102801 BLAKE2B 0460e7dfdbd44b6c68fc8ead6bff4353e549127158dab8bb5d217ee33104fe9ad5f58b63a01d56fffa8d7c4df1a87dcf5b536e436a0ef98dc4418a4690c4cc15 SHA512 19d14a7755de2b559026547d9e3e1775e636781bdfdd418f2e1d962c51411a0973a46d84d0356e30c0f708a7c7b2097926611960043f71391919cab1aeb6aa04
DIST num-conv-0.1.0.crate 7444 BLAKE2B 4f5c4695006aa3ae77aaf5c55999a07d8ddfab294584fe10d73eb6abbb3f551846646156581599f966a28c74d80d3ac4373c49d2099991f7ed9edb56d36feec4 SHA512 7884c0c6599c66e40b9a79435e1bbcec60aa7e68b59686922dfab19ccbcac6a6e54f208cfb3d5a8a12e86e4dd67e09977d60b69ef6940e308a28256733f36100
+DIST num-conv-0.2.1.crate 7099 BLAKE2B 9041253ea3b0c7b247e731a72ae8e42f2bfb068ec7203d6262f73c5e3af2058a175fe3b6f0d21214a44563f12c680336f6d789003d3575356310e4dffadc8030 SHA512 5f337ab964e2cb6f7bddcd86fbdc6accad34038fe739e0e6d3923f0cd75c523b37059c1c58bddc2e1b5c07f9913b58fd71c978984b7b1f043056aadc2ffebf53
DIST num-integer-0.1.46.crate 22331 BLAKE2B d88c9f84e5d803a3aa8f44dfc1bd6d9b5e336e7cbf47231cb3a7de30dfe263c41c62c586d31f0029459c8c240475cd329b3fce79f355be7643bdccf8d56dcbba SHA512 e27986d91f6c6dc3d5a0900defe28ab5f47905cde3f84d0914b7acee076dca8fec6fdb7b631ac94d3a31eb01ecbc5854e51afc3187cd1abfa21e1bfafdc700ae
DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956
DIST num_enum-0.7.3.crate 18603 BLAKE2B ae7644ae0697518e538a38e33fc1658057641b719437351a5cd1d5add8ce2b03b834097a4b2ddcadb27937c266bf758894aab5e0949fe82b63150b8332aeae84 SHA512 8b8fc32da39d1c89210fda38098425f21cc384b6a38841f3b04264dbb24ba3c46344835be6e70b794c18365f86796a8af584085dab41bfa677136b8c9c9b6197
DIST num_enum-0.7.4.crate 21553 BLAKE2B 25a0b4fe7b6bd46707f18a4c8a6b88f3f4dcd7bab4631dbdbf1a622e8dc3047de74ab1c0b24a49cd89a76c5aa58ca7ce9820cdb8b4c3441e06dafdcd6539beca SHA512 a91fb8867f1fcc1aa32d433ec2cb97334059aff5a0858bc3cf969aa02db0dc9b5050e0baa292d9b68673ec85436b59ae06529e0d73fd4bef64edbcb2bd4c2425
+DIST num_enum-0.7.6.crate 21741 BLAKE2B 1d4fc7ed77253d2db568e88cc016adb7544611182a6a7b6f7d679ca6a26830c08fd74f8144d73d7ac834fef15a6221b4c74ad718e85a5e0ffea962c93d480d06 SHA512 8a392bdc2f15cf8ba01dfa861e5f367dba5c2cf0abad6f4ac5c18d66d3f15d9c25ccdfc0176a58f11f75d613d11cae2156f54c6c626e82afa05391c23f927986
DIST num_enum_derive-0.7.3.crate 17092 BLAKE2B 79b4e4f1def44702347a2291e7c2b3f97a902b4768031795d9fea53c624f31acce9f5ee68316d08af149681afd8374e39b596c3d63e3547445cfcd28d3b5314e SHA512 d670d60cf9a547232190d663d92a288b06953ccc5989c2fd9d4101db35be9e3e7386c42878c15bd820817aa703ba06af3a9641898f4a204fe9d7fbc32c3bd786
DIST num_enum_derive-0.7.4.crate 18167 BLAKE2B b18f99f1b92b9308dcbf2212194fb2cb59b965ae51f5137d9a495614825526a21b6ec60252317e1d3a353dc822d7101faf646e9760d5acbab0d9ce03ccaccb8f SHA512 329e30bfe603e72bc2acf8d56ed0cdae40717ab155e9b66deff1f9461fc6f8c8635f55e322d7fa39b171a1eae78687f8a88e8b666a101a184197fc27f36ddfdc
+DIST num_enum_derive-0.7.6.crate 18789 BLAKE2B b3c3aaa8ae9cd78b4a776058dbbf195d0e2553db9e3e71f0b62eb21754b02b976445b7e458b8172bf2dc8e2e58d82c037070eb4a40f29309815740d78d2cbfc5 SHA512 35e0ac85c7dc20d1f0a50cc6b499e4c4f437cfcd6dbbad68baf5b9c8542bdcd11dacfc7e583cb757b5480d490c9a91e8d911375df856c0286b537f6a49dd02e2
DIST num_threads-0.1.7.crate 7455 BLAKE2B 282514d1c6ebe67ab2c30f91efd5b6c8880baa078265e22d5d7200eca4f96702aad8b537ba772e5d4e680a6e90fa6919fecfcf37a060668b2a618bb01bbabf2a SHA512 60eecfe49c1afca8efa320c5f4d0cd794f6adf8924193682c903307f484ca0a1ddb56102a772232aca040f29651bbe26ddc1c4939e1f030e229d179837e06bda
DIST object-0.36.5.crate 327435 BLAKE2B 1ffbb8ba57024a7273217edb1db76eff03e0689f81ba27b0aef0a622972e7f6acdbdc480384b50d603dee6c38c960fd25125a313264187aa0e429aa839198dd4 SHA512 b85375ab3660a8a0c57833c28c4dc665dc0664857e1eb3cd472a61b9ec8c16c470b16475545c2c311fc23cb3c43755967f93feac12c7bfad013cfed5f879e355
DIST object-0.36.7.crate 329938 BLAKE2B 0b02cf2f44e99002909b38125edada1a259feae59fd0e5ef52001755b6878cac710c87c60fbafdbe405281e039f68572ea3d8093d16128899090fd70df7f2fa8 SHA512 dd69172349ecf51fd2351d32cc4453760ca1d15e854a1cf5ed99112032901a54b4645b24163b946deed11f81d3e3035e1a5afd8bff20f335dbd05eceab073478
DIST oid-registry-0.7.1.crate 15220 BLAKE2B db9f45c622cb96fa1edf6c15253d4059e01f07f804b26bc5fad782eef5d65a7d0ee3607c064668898190082fbfdb676d8c77b091788646d73d2f4a5f6f3c464e SHA512 302838c6d88e8f9b1e2f40576d0436c85bcc4955290e5f0a5826d11e5a7f880bf6335f6d449d1976f9899a05716f789a87d8c8fe641856da088ec63f15e31c10
DIST once_cell-1.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8
DIST once_cell-1.21.3.crate 34534 BLAKE2B 3578aaef305cad2fdffdc40c392775a3540bfab3f3aeafd22466d9507bf8346b9fcc200929d48525b051070c0aaa423ecbcaa12868b34dca007991effb224166 SHA512 32a87506c6f4598f3ca2c88556014ef2093d5db9a08602335e847caa537a866492fa74c894e7e1da2e4289a1d3dbffcb90a9e37a4a1453203832f434b8206990
+DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155
DIST once_cell_polyfill-1.70.1.crate 7510 BLAKE2B ca89c64ea6ed6037bbeef0a362b047073c33df36d1ad823ebd4ffec6f035111650f8fb3f90948af33a2ced71f925b234877dd9f539c1f9db65b6519dccfa86f8 SHA512 3b75e153221eb045708a864b2e27c0b115dfc07373dd7db166050262f3aa9afe8f9b0742c770e06c2c1939fcb45f690c6e8b480bf527bd8e050d748710fc1343
+DIST once_cell_polyfill-1.70.2.crate 7448 BLAKE2B 5a90f8eeff25a555987b84b9800f9e0b2aa94fb4827f76678ef45d344c4baeae5a079a288fd02a570d0f0099e9b2842d32dd206dbd609212496e77ede47a4d21 SHA512 9e0d07bcd40e4a5c271646d6fce71677acbfa4439b4e818bb4df823eb31eff976ba78239e3a7e0ad21e80ea8d0d3af3e74a7d0a0a55b308d4c777b9b5e1ef8ad
DIST opaque-debug-0.3.1.crate 7066 BLAKE2B dc1dcadbb5654a5f69c59b84faeb3095f008a6eb4f63e3cff95bd4e97f803201e2f16f59a65f8ea21b662e77e3fed0d0870eb1db7f5a4f95cc02422907732951 SHA512 f325214d604e74197ddd9209a596851c5bf0c0f3299b79b6267c35e0ff6351205b628fb5086279684fbb29fd07746c91ede4f45019657e761d8400fef2b3d8bf
DIST ordered-float-2.10.1.crate 16029 BLAKE2B 7c6920160e52e377ba44ff63ac679208dcb3782c1ffb802707c54fd285ec22bebf80edd036753ee13ac3e577b0b7114241dbd9ce5f018d0d6d31ae21df1cde48 SHA512 bc659ff02660a12c4340889ca7ad99d569d8e7b9043d8e8ffae912da0a5049c1a837c7e4eb0a39e5ee3bbba9fdb498af6236e56af6da841c97c2bd4ca4c39090
DIST ordered-stream-0.2.0.crate 19077 BLAKE2B 581285d32136bb9c2134f405c5a2d67c952a36eb3613912be029f2826b847919188e1b479506b46f20e0b63d371f476b99d9e7e1ee8d47ddef7b4f48451b0e3e SHA512 99976f90637f0daedeae05d4270d33bc03fad1c06a85bcf2cd7140b149f76c7560d5e60becf05a633a62dc82f7f65900eb8f510c62aea4e630b78c45dc76d83e
@@ -333,14 +430,19 @@ DIST pango-sys-0.20.4.crate 24956 BLAKE2B 926b77022e7352a596f8317d59891b422c51aa
DIST parking-2.2.1.crate 10685 BLAKE2B 3af8020bc27ea921d6023c14f20545f70a5a5a5a216d5f97458d76d3bfc8d9de937f3c92668d31a79de85ce08ed0236d440c64ca1e4fe0a7748f412b941c052b SHA512 2e49137b59000f0467aa9ee0648d53e06cd2b8319d6ea28bf04c621b873469739a34186840b02f08d770d109cca26e161b3de3e4341dd729701885307a6a8177
DIST parking_lot-0.12.3.crate 41860 BLAKE2B d1899a1132035aaea3a784290cf4951ea3b36b2018d407e27d333b2a2ce3820e040d635009c44cb6e58ad07cec6565c0347af6f6fb02954eac2d4c348bb036f0 SHA512 368c17203fb5b9e4ecfd4857e3b1ab96b86da3770b8f21be392818c845952f72dde1072a10265760a62aa8a1dd65332bfd585667444e5fbb9dbe3280b5862703
DIST parking_lot-0.12.4.crate 46779 BLAKE2B 061c322aae4c66da34ca241457aabb66d0afbea14897318214caaff1b0336ee1b36f5e38cedbb06f0dfff1019eb59ac6653f33ee822225df74f2cd69c4911990 SHA512 0334bfd39e59f61eeb1bf182b1026825ea7ea50be7be44b1584c62facdb8e30fbb617e29ded4a35a05155b57c1574c980ba75f602044db75b985661305db0671
+DIST parking_lot-0.12.5.crate 46735 BLAKE2B 36d82b682f7cd0a2c308fbc672f0c7023a3b6ba6ff0f9de75067bb26227d2ca460a09ba37a0a5b3867ed788d72a523a5900b99241bc30a67606481aaec30536c SHA512 432639d4a14acfa20127f03741e1101fa591fc63048b0b0369b44ad269d3dcb6fbab7947eb9995c7948f6fba90245abf82154a70df2b7a99aa7365b0b88666ca
DIST parking_lot_core-0.9.10.crate 32406 BLAKE2B 25339d028579eb45a957ae5fdbac00288b1472d784c0aa7fa2953fcf9279c750d243ce69744993ee8cbe6899633e71e0a54ffc11e39247755685107f2f8dea54 SHA512 4f30fb60ded274d3154ffb00f6f50ac284b6fb97daebc1a2ac897ce97fa8e2ec6ff30cbdadf3b7419617a410fa7525f30ef5e580334e07d4420f4c0200a57389
DIST parking_lot_core-0.9.11.crate 34773 BLAKE2B 2e7d8428c89fa9c4c8f4fdb319608a60e383dfd96c5a414edce732032b1aedaf7b9fc3f3fbdae7397039665918519594e259b657054059ce5d04bba0be898b37 SHA512 1beb3778e4cee9c12a07b970887b5f4a414111b6368bd4b247781465b024ccc798471213f0de31d8d3df689fd31ea1fff2a2c9d5099bd19c1a5d71bc958a0ae0
+DIST parking_lot_core-0.9.12.crate 34110 BLAKE2B 4c1b3fe163c843c05effee9cd0a0461e39875040298b8a8b880c05a7db038c55ed84d1e4534417fa0e7a0395e06200d909fc16031514e3ba0ec03f011a86598e SHA512 6ce29df4aa9eb0ccfe9020b066832f2ba27afe41a48792d935d0051a595367f71d50f6862b921d91312a1ea80f087a416388d4b29a11de17373483e529f12d8d
DIST paste-1.0.15.crate 18374 BLAKE2B 69ee7def55e658a9aa72405bad62325e8d6021a4989fbf11c88d1bf05fbac520f7b04d467bc3c6eb45043a41119f65aceecc4a6a1418a9192d73f33134545062 SHA512 5026d3ec7141ec4e2517a0b1283912d0801e9356f77b703d954b379439b8d85e3886d42fb28f7835edaeeac465582da14233564fb010c71425a59c9e1cbd46b4
DIST pem-3.0.5.crate 18140 BLAKE2B 1a19acf6c5d4dafb4411688d87b668d2ea1abe8f561dc2d5de8894066c06e32c5c1392d0e6963d07bab27368a1b39a4f0520485500a1312e2ae43b5c0959ab16 SHA512 09b4a75bda0df6153799e56cdf175d88b7c88b49fda3e19fffba5aa821e433bf3bc9f254f5016131d3dd2d3146c3f6b73e71e04b81ac7d52b581c638cd60d0ff
+DIST pem-3.0.6.crate 18362 BLAKE2B 0cdd4855872e51d70bf6f3031a28ed9580c0fbad3ec7680938f121753e637f925a57ccb67ed5b85f3c0dff8b4c1fe936aa3ab4b4067ab9a3a3dd17dec02680cd SHA512 4d485bc3a14d7480b6fd0627869d4093124f173a3aeaeaff4ed69a37ba50a8327e6e9325a92d1a5c8ef337b7ca812de2e74ac786eaa94a644de8daf15619de15
DIST pem-rfc7468-0.7.0.crate 24159 BLAKE2B 478d355dd970b9705ebcf44d74d61ae0694db6de16b2018548fda88546f53e35b965ff72d939def399a49fe97d3c8317a10385ace94b3d552797ec64ace1eb8f SHA512 f47d3b6c7c8bf4547916acc2a3d6671f6c1308e74641419c8f1df810d8bd940aba8f94d361e4cbef3eae3b7f11587cd3996a11be3be41d19111abfcde7a9272a
DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44
+DIST percent-encoding-2.3.2.crate 11583 BLAKE2B 58925243b23a6a1decc3d92c4ce17d06af5206844ad283b49e69e523ac0db2c36c3f4407af4104ab92c029c2581c228bdf416a054a2531191a9e912448ba4408 SHA512 495b4aac88a7a46420811671d6bd82817e4eb2fe51d5068d11c5b50d0d927895d54c855cb07d4f4ad5a2d42b22f9419ad0183c14781dbfa240804fd49761035a
DIST pin-project-lite-0.2.15.crate 29683 BLAKE2B da9dd581eca047f089c2a069a355caf66a631b3ff81fc07220a3c378dc77ea2c399b165ff8a1d2f6556595ec52dc1bbdcbbdea5ad9e5e317281650c9158b3669 SHA512 ba3c22c70f98ee0d0e78fb8a25bdc3100b26c3f03f3e4c6c0c238fde75774c5634d6014660c39406a828d1c28f17f44f20fe19dacd331c4da2f4961a7f7c124c
DIST pin-project-lite-0.2.16.crate 30504 BLAKE2B efd0b426fcc6ea8852bce499fac61f9755a11c6a2999cbec514f093ba7b3f94b1f2d437ee9abb243e31f3838ac1c74491a212851d7798eb249e209b35e015332 SHA512 971adfe54cfed304647fd944c1c915e78b37eaf0de3a582fb984a5e91f1b7d4db2cf0f53a9a64b64427062d4b41c0a36baddef782411a76ae3be0f8ca45f0718
+DIST pin-project-lite-0.2.17.crate 31034 BLAKE2B 1d3bb970100c2a27c456bf771b4884f3c91c048310d27608161d3a02adf2f9cdddbc8674257c6b58c4ad6c0953e11cddf2fdf5813d95e5ab8425e71032556159 SHA512 0cff4338e3c7b71600fb41db013efe0d01b9cb3fdf95192dc16c5bea58a0f157207ef285ceb01b6b30956f9e751577c5d2a3803103f89a8a0cc6ea728d97a4df
DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
DIST piper-0.2.4.crate 15950 BLAKE2B 265ee8a57029e6ffa6532dda8e4da94a288504b658fceca9426d2c13086255cfe5a1013b58dd02e029ac658b6bfc8ff59b88458fa620a41e0203413b78b7ce1b SHA512 88c6fd8d1118b37b77217fae004e47c01db8f95b9b925f1302c0577971a8a9f239b4ac07ccbec924d8912cc47ccfd88eb2045cc607b5fef3fbaf496d24ef7df4
DIST pkcs8-0.10.2.crate 26360 BLAKE2B a62b5b7386eedba6fcbc4cff2b103b899dbf6179101445283f9076080489129543561af1ad6f09061564f68c28954262e49d0bb3e182f2ce7495e19d6f34bd5e SHA512 87127d51f0e1fe085d46b30394f2a580e857cd64f5c6fe4a3ac3b8871230aa426598dbb007e8bdfd5d729b99a9c0b4d84116f0768886605342d2ed112c51dfa8
@@ -349,41 +451,56 @@ DIST pkg-config-0.3.32.crate 21370 BLAKE2B 74ded191f066bc223739b3d4afec58f23de57
DIST polling-3.7.3.crate 58276 BLAKE2B 907f5cec860d5c631b7cb7ea9fc919df1a1b77dfe3ed4ca94f717316b78d73e9ae0f34391476a057d82d7376f819625ca1ca594ebbfb33bce7557db6663b7f2d SHA512 a2db17dcf623b77c8b94e36ea5f55059a35a70aba80f261428bc5b8df175dd1a95e302912bdf55dd1a6a3282fe4920054bd1cf6d7bc6eb52a70556d220e05429
DIST polyval-0.6.2.crate 18425 BLAKE2B 59ae2ec631060ee8e2e1d4bc250abbb4762c97ca7ba5c543c0292f561bb967e059410ad7e79d8dfd7912cb30a6284169ecc2f4c94bdb165037acf8c3eaf1209c SHA512 113646edef3a7f60d59db3cf06c1796bf81305b66835c71bbce0fdc07345f41e23f2bbd7d5cebc50c72eac11c98f351bc793e2f568b5fc0bbf9fb2597eb44f0d
DIST portable-atomic-1.11.1.crate 185506 BLAKE2B 953bb1f2059dc1d891305eb89945f1f6a172fa50972725aee499de72b5dd9b4ad8ccefe4e891183ff8e6b64f4d1bb45ec33b06e0f5af34c940f817b290f746d9 SHA512 4c037ae0b4aef43077bdbf803389bc078d963f20d023e2e1d339a54f67fa9b27c174e7c1b6eca8881ecf301e30c431632d2c0dcedfb5b19552892fac0f81e2e1
+DIST portable-atomic-1.13.1.crate 197001 BLAKE2B 6d0898c2a537a9bf204b7749cca5f5fddf280772b56eb7ce8fdd9cf7d71561137b26ef89f415c40277a1c89981333eef78e5bb4624515a294ba28fdaeb4c70ea SHA512 2a1b31ac9814af884640b3398ab824a9795c72d260527a0966b193113808cfbb3345d50cd1beaebb45863437c3d06c8706d34b26efecceefc649319a4bc274a3
DIST portable-atomic-util-0.2.4.crate 47043 BLAKE2B 6a8e122bb2b9eb8262e9eb790f336dbb602f6c086f8ac025740c043170360d5474af578b3842b06ec51535535de3f4d1b6753ec54a6871dd0396f5c1012b0bd4 SHA512 f2266e78576181123aaf68e7b5d3523a368fa8136d447bac68a08d65c7051dea677cea84491a1a03b9decb4704b2f9392574d68dda9427092a2ac92cfa0affe8
+DIST portable-atomic-util-0.2.6.crate 52478 BLAKE2B 299bc2331001afb4c71258899a2be96ba19e907e40b0f71937a58d2211039196c51e038f53c8e3bd3662e096478ee67b6c135d608d5b8acc6c211bc432486d3b SHA512 12fa0d815a662e05867d7aaf84556ab637c827e1b0329c19ef4eaf6b0afa106f93aa760846a9dac38cd18bb03d2f631b365bad321da5365bbbe32d1a0a6c5163
DIST potential_utf-0.1.2.crate 9613 BLAKE2B bcda2647db21d8e0e2475a5deb67ca875c2288f481880ac921ac15e058afbf0d74acdf51dc2b020eb02af340a3fcc7a99a45bed93e64cd85d9c3efd3c5fbaa97 SHA512 d6b1d980cd32094b2ffc65746b349883c30c29081bc88725116ae06a57fe7b6a0ef19dfe536681c2daa0bd65a186d09631110832a41a3d0f4836d955c379e338
+DIST potential_utf-0.1.5.crate 10189 BLAKE2B 0d8967cfc088089bb8d9ce70e9d92f69fc92532c5c24eec8c46ba0b1e40819195c745206f596d63cbdcdac436112d770ca378abe99f3ca0c0d2588b2bc339f62 SHA512 72950504acbd0aeeff44e0169f1857461f7627e7c638698ee005958c14cc0e68b2cfde33a91afafdcce98eac7ba7d54a125ae22562c4120c31e4b745bf298b54
DIST powerfmt-0.2.0.crate 15165 BLAKE2B a3e1ce63f5866f75526eeb749bec6607e42cb495bbb953082cde7e98e6aa429ecaa41889d98ff7ed4cf5031258b4f7e0553ff8fc435b3b6f8b4ef2b6d53d9b61 SHA512 0623f92e4d6ab284b3f6dae58220d79d9185df4a738999d68040c50d72fe0380d70358cb622f079c629bab53bb03c6e085e165d5bddfbeea84245864fed90029
DIST ppv-lite86-0.2.20.crate 22478 BLAKE2B 9d68dc36d8148047d571c0147ed29f586f3c6ac9394b56bd955c8ae5bb18f5a8da5369809f7b8c3199074e23660325158c32c62e1bf69a16cb1f5da2a01f5df0 SHA512 6d171f63b42296f7765732fce3af7ea05d0d81f1541ffb3ad86e81210715ef4afe5bc9e58926e97e757aea6ff96a8012c8411eac78be0fd080898318ed21d7d1
DIST ppv-lite86-0.2.21.crate 22522 BLAKE2B 150b2ae019f296dc0a15090bcabcf4981bc58159d592b07da729565ef8976e3d1b4416381c6ecaac77874d8e259995254255c8831861ac20922b810753128cd4 SHA512 94710d5b25b67539cfa828476367849e1ecaca744f2e0429b48c05b47ec48cd57f950fb9845a361fbfd96f361ac00fd2d47cc27c584b79ce3d9d8fc133f5b7bc
+DIST prettyplease-0.2.37.crate 72033 BLAKE2B 997c8d855023ba6dcc7aa3a8f1c0ac6f6ca72dab2804cfcfb0987832ae044ffc5f5d7541e66d7ff5b0679065e5217078a832333e6cb92d89a93660aedaf0b447 SHA512 3273621f42cd2f4f892ee81e130f50e7d30f7254f922a84e55e454c0157bd0a59c678ee352e05007fdb0a62cdab2d7693185990354b81d2b1f5d08b51cff77d0
DIST primeorder-0.13.6.crate 21296 BLAKE2B 2ba479defa1c26d14f8711f6be5020eee9bb91a39fa7a7c14a93dedc6de920e0ef1c9f6240d308233d0e0d6bce4be9500d0e9cfb01b6c4f9902e0f77a2f97352 SHA512 fdf52b47b36403d5218220b886a3ccec7828731b5a59ea1d48a25fa85de754544fa9c94d51356d2ed904bf2d908bdb4fa87c53e597a3c9f2941d7310f70198ac
DIST proc-macro-crate-3.2.0.crate 11164 BLAKE2B dba3e1f4e38f427df72794ad891746fbb8c24239cf06b076e75ab6795a7e8c9abf25ae0f40379e07a696827156e7a3780ae242da7e5442cf1224d058f54b83a6 SHA512 41479ec5e414a8b05dffaa0ece21122387d5165a54e60d8ee3502f8a3c0a2ac0247f56996f933d5d77f1efe41a56bffe16874e8c6a34b66100cf047e4b760863
DIST proc-macro-crate-3.3.0.crate 12432 BLAKE2B 79892f0f9907beefa62e715773fda97e606ef70f905a072758f44b685c63a1c3aba40548f5f63cde1fba7f3882701d763dd6246a500c26e7e3e41c351c89fc91 SHA512 c16c0227336375106f655c50006a2ceee151c7bbd0a9c7a06fe7912c3370b0c3a7e4076fc8977b400c63433dcc3f7fbd96912a5a6a83148d93df82ced484ee20
+DIST proc-macro-crate-3.5.0.crate 12709 BLAKE2B 693372efbded5ff45bfc4bd2dfe4bbc28ef939485e88b57076d92c99fce2824dca88373b1ce9e6517e313f2402885cf470028cf7e619eaa291519b8eacf697d5 SHA512 8848a2234e503414f9e5e90e7ae6e8141b743205c1bdf31cc5211781414c8619b617bf78b61d880178fa1d7e0d1cb172ac03695d9f8c611619e953a1fbd0353f
+DIST proc-macro2-1.0.106.crate 59765 BLAKE2B 87f95795621c4c992c370dc3a1240a2d5580e3362356525efe640f8f26ad0492b3c88755d575c080ff7db11376b0d82f31141bf6f86c895249b85e46c081220f SHA512 b726e2c92af434bfa88cd4f53c3fe6db647503567675fb439890dee3d15f5111137e3242b28d164114ce081c10acf3fd11950753ddb349190c87ee04e7d97744
DIST proc-macro2-1.0.89.crate 49446 BLAKE2B 844c021394e7a2551bc179592a6769d672360150abf92debcb9ac60a94a2e426c48c408f06aeb2128686f5f04d66dc12973714670c21a5063ee6b9f3bae4e671 SHA512 488ab38a04df1d0330309382a7e4f667238cbc9b4d513da6a8f5718f8a762f76cc122af67fefe8f4b021a286b3d23e3ec83d781fe6ac823042a6daf14d147e2f
DIST proc-macro2-1.0.95.crate 51820 BLAKE2B 93229d80556ec03bce4031607d13c7902cacc2d7e2586a692ffe8543d52e3f3ba253c9c311ddedf6d9348ce8758ae8ff64577675cda2dac557f936a328de47e3 SHA512 f78e4d47ecd29c1b2315554705e445507bbfb9449afd0bf1b74df28f266ac6382ca8c3ce135ddc55c989eaee64d1794a0933a941c8ff55f543fa21c400016547
DIST quick-error-1.2.3.crate 15066 BLAKE2B 1c61525d383f3588c1c5017f016f60b484bbf2035e7f63c553bd9a49b638ab0c6106ac3676a41072b24da4e13dde78706e0f99fd1ec9ee329d5be81d45a85866 SHA512 f8aaf9024d20ccd42b706c756eed8320aee339f8776392b47a41cc82ca06b03df1a5b1f00854cea96689c5af261b4d8c5d2b1a242d10f2755e7e33dc41be35b9
DIST quick-xml-0.36.2.crate 185201 BLAKE2B 4541812a73fd95bedf21f90f07f27b31eea6c514ae17818ba957dd83ed176b0f17bcf3860fdbda07f0fedfdd7ac660bdde5e8ae2aa9903bf7a7c8ad2d4770470 SHA512 7cd4778dbb1f50fdfd7290241fbb42c8529f7d44c2633cac017657010d0d443024f049287e1a1806f5bebe46465549973cccc660959c587fe383490a150ddcdc
DIST quick-xml-0.37.5.crate 190481 BLAKE2B 601f0f2c05e369b479aab7e57b58872af16d9ac0e40a5271e33eba34fdfe88f134de7f681a8bd4e94788e37c60635d4a7945afc5b0d5715058092353258bc3d3 SHA512 17a7a3706a6c2e664633698b414bf9ea6152dbeffcf853e4735260140a0c08403a3bd483babb8d3e5f7fce28148352387597af43abefe5cdb92dcf8cb35341a2
+DIST quick-xml-0.39.2.crate 213616 BLAKE2B 1b6325a4e068e874bcc47d3c471e4285646af40b45744e85350c24296d0b756e7f18331c1b4f0137627ab76f7e22dc701c62ec06520e10dcd26aa6abcde8cdab SHA512 139bc93fccef44472a28f2d41ac8a4ff33acd030a267a90734fdb8b12672fb580731c82a98038daec7b58a5942bca82f9ceacb1a449608e8ce7f441e3edc32e7
DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
DIST quote-1.0.40.crate 31063 BLAKE2B 09036ff3e5ebbd775c466bb936de91d4c070481eb4b98c62a4cddcda57cd7b67d63f979b321f6ec64aabee3f5da6c28e7a3efb83f4647768ba578f1bd0bd0bdb SHA512 45a76e22a2b0bec47e4ba73c3b73cc41d821dfcce9876134c5d8eed514da214aee4ce7612e372c8709f888c0d8b9b7e5442f27adb7a59f3571f0339ed7e2ac99
+DIST quote-1.0.45.crate 31564 BLAKE2B 1b2c2c3e6ebabfe10affa4c43ca0bfd1f52d8fd49e1df463e13e63a82de41272089c8e09e4c02e8a33cfee768ace26d4d42a50752de8fb5a776c59806139ad5d SHA512 df96ede01ebd0ed642b758bf1d0862d0e116fc2b3343e14edb657ce5438ccabe743dec4a0a40de4dee98c134d169af9aba459faadf9c7a832b26377e755d49b0
DIST r-efi-5.3.0.crate 64532 BLAKE2B 54bc882e333f7ba52b6dd6ac92b8a282581c10b47de91a4c4b71b15a27b2df885ab52ae2fcc8a546367ee1ce98300dcaec3c33cbd7393b134383528540bb7d14 SHA512 e748db9729dbddf215d5c37630fa272197dd2921297800209ca7bfcd6ffd8530b598b944d95547ad9723655cafdfb69b1c1fade9ba5f8c2ac5c55ec38258fdad
+DIST r-efi-6.0.0.crate 65303 BLAKE2B 79a28aa1e41721ad39ad95837d60a7034f9eedf0f5a32017849e7f4abebf6eb55e79cc144cea52030cade11d6be6fc5ba863e711a74038ffcc67b0d6eef47bfd SHA512 65f8c75c0201c3b922e6bf032ba9e6c648840f60939615565287b9c64d44f3fccbde209d8fe691937949cd76307b59c53801e6bd43ed7b8ada46d5d8fccf7012
DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
DIST rand-0.9.2.crate 99930 BLAKE2B 4440c21211e3c09daf8797de5ae1c7c461ead207456ad0a0405c6da266de51427dbd68090c461f1a349a04064e4bdba8151656e2e9f7c17be1f4aaeec1e26f3a SHA512 91faee823d9a3b109135182b9566e6327881736359c9d68358ad7dc78eac1e845c553820e2450ca481cae1e0969ec6566e72f7f9233251b1f9133449306f2965
DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
DIST rand_chacha-0.9.0.crate 18258 BLAKE2B aa0efd158877a116b2587177f2da84832ba8153b629aaf8181ca7622bc8ea624b5a5d205d1b745caafaad78d5a55aa08a4f35822b8925acdf7d1212baf62abeb SHA512 f62a7bb067ff984049c96cddccc841cd9931daeb5b25bb69f056bfe577f62b1b35c08f2bb5028590eefa04a9369beead4e6b03607eec97256e0383b20542af96
DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
DIST rand_core-0.9.3.crate 24543 BLAKE2B d611130e240dffaff33f8384f13a008af93254b1530bbbd2369057ca33f295c7037178010efe76e4d7bf18e36003f843409fabec060c8c78077cba00772e66f9 SHA512 6e8e4067dbf5853c55b0ed38293b6bc6bdecbdd31bb9d624609b0222f706f5b29281ffd5fffd5c316367ba5b22c29e5282c61de3738344798ce0f9cf9cf2ce19
+DIST rand_core-0.9.5.crate 24129 BLAKE2B b259f980ad82cce5d7871d7d72adceccdf75348c9adc628308cede24b603df4c1978fcb9976574d99d1024207bd496df6359a998f7a6f1b235d3f16fd8556252 SHA512 0ae54e2fdc0fa8f6a2dd46fe29de26ac397b9f5c805424b3d06e467cf1d09762d66c7eb07ada74adb64ced326f15d4f415e665979d5de2b3f8e8cc1196547c56
DIST rcgen-0.13.2.crate 77836 BLAKE2B f92211a4ca1d6f8c2c926d0d60e241e8a9d414f27f91d5b8fbb7103c2123f590aa2796264d16a0590a1ac3e3bf73ed0933da2f63268a98d3efa776b7bc677b60 SHA512 bd8ec21505237b8675a8cf71df1c422f97eef02350a8145875456784d2b7a0637738de44ffbbc4808406f151fe67428671d0fe80f3b16a77c1c8b839854ac121
DIST redox_syscall-0.5.17.crate 30002 BLAKE2B 58dafad2409447d827ea74962e624c025eaa277aa832b7d18836cd7a4f02cb53e631ae823c6f3d97dd3ca05e117a9fc3b812a6a6c82593093609f1ed6d7aaab5 SHA512 a2e4cfed23d5ae3fea5854ef9fff12a03aa6fe5a39453ef4081538af1a6917045ac1ef75a7d89433344ed684d825f7f2eece581fbfe9b43358570b45cdc7fdae
+DIST redox_syscall-0.5.18.crate 30747 BLAKE2B b9507a055aa34178982f0b5861602d2e11e13c2604f905c9b747c39aa6c45f06e60cf5c9d17d914712a815fc5e9ad75bf648c300e7265fd4afbac0b0c207afa6 SHA512 69f1cfb215666f1243616366711dbd8cadd6bb411121f48f6e4ffd7b25479efa6f900dd072d7cc6e6fb8130d95cdb42f4c0cb4ba9e05b09b1fa676ca32932101
DIST redox_syscall-0.5.7.crate 26249 BLAKE2B 97f848b130403686404dc193415e5060c32585aa3638b825b4775e54d9a058695b86457ae9e3cc0240bcac27ab4c05dd6b488bdc1c797faecd236c6e477fbc3f SHA512 e9f2d254279a4063089436b699ecca766a997a72718d132a9b35f7c8c8fc82c4b5e25fd8f3e6cbd17920fec484140db520c262376ed1c74f847929b7f43fb97e
DIST regex-1.11.1.crate 254170 BLAKE2B 5cf41012fc2ba8a006c0eb4a922cbbf1614bf300be361c9e2d98956a9a5e9b140e37bea09132fab7bfb633d4439158723624bcf45e8c619c4061b399253c1b82 SHA512 d065f6dc405771518260425f39a5eaaf8cab62e78c91ceed3b3994a9a121674d2484cadaaf816bdad89c87a40550d57b66a3d9de6618a7119a658301ce7e67d8
+DIST regex-1.12.3.crate 153392 BLAKE2B 30f272fc2cda1e36219dfccf0338edacceb5bfada7ac81dd01429661b01b0fa72f6bb343e753e2388251aa0aadc0b5cf61e07670020c9ab351f418c23653ad47 SHA512 73ea9581c861490ad4c8c767c09f1f39be525f4298f5b19ba7b658dfade4c91f7ffd170214382ef4694855c0a48a4db57c39b75d8fa6a9312b07409170c66000
DIST regex-automata-0.1.10.crate 114533 BLAKE2B 0e357229f6825f14339b1d7c40730b83e62bba12115d01ed20313320766e769a653a2fcd2c9d19af51a82c38e9e42c1a31d005e1f44f5b6fbb3ead7c9c74027f SHA512 56d64da361afce82c6cb49e70b99ce1fca3e1969c54bba5f9971db135f8544c65f49feb8827789947b3d1dcefc9c49a7a434a7ffe0d09c5900345a1733723c5f
+DIST regex-automata-0.4.14.crate 618012 BLAKE2B f12b0f1e59d32711c113f5f2157a4e1dbd05095c386f0e104ef3d551cf029d0c3346d09f54d5b8a8bdc557ab4d91ab80a224d81b3c522b3c64ad1566972c46cf SHA512 58f8e7c41f71c1df50fc2f4e70ea7f5ab762170494497541b9a09076058f94a799b6fc4da13c40fc26a2f1a0b650b499cb9830338152e96a24e3a32b4994a5e0
DIST regex-automata-0.4.8.crate 617784 BLAKE2B 7535c79f6ddf1b1225e21171921594dcf32fc3afd47519d2067b2047b19070cb7e6fdfd1563b884fec6f91dd568522fc95d85bf095c11f8c02daeac128c45020 SHA512 278e3e2ab230ed5fa7d4837e8ea879fae68ebf35c2da5cc3a67f46b7d593abbcf71e6326a0cf34e38edc0f3f2166ff42a4fcc17a400d9604429aa5b4be075a3f
DIST regex-automata-0.4.9.crate 618525 BLAKE2B ee3fc41c8c445be4c1aa3e5b19a3e61efd641b1a24e7a1ed55f837c1fba9c816272cb4645c13232b66b170bc7c413802928beb22e3891500141ad4ede65b60b0 SHA512 40bde0ec91cc27bc0c3fa237a37ecee5a1f023dbe006a999c5888f8f578ee2c4c64d9edfe1827546cea8e92ca3c10f8b4d494d81f3d0422b40d90bca9cf598d2
DIST regex-syntax-0.6.29.crate 299752 BLAKE2B 2408ebfe5f0dd6578c33f18e8ea9a0a7a84388420c5b67adcaedde477f3f67fb3e39ba9fab1f6892c7ae7fff754c4aca51314601529cabc6a8fc43af38a11f88 SHA512 28a58950d15df1f0ac4ff4185c05b535e8f5bf0b75f79fad24e40e17a02570d1c9bd9cfc919eed8756a1069bc489c5fdccfd04f6b8266c83e3412b7b4bdc262e
+DIST regex-syntax-0.8.10.crate 358781 BLAKE2B fc7961b2c6e4d297f4dcc73cb3f6a82d7d9bf964808beacc86ec8c73f7b572f3d8c7503ccc4441a2d6283b8cfbbbfc49140b31207b5aeabe5a60c8870460c91e SHA512 ca9c36c963c81c2fa36e1105cdd193a9b99ee259de1765e6e8010fb4091e49ac100e2ba0cd117adb0890b32e74421581dd6397eb896772168c6eae9da0a938c3
DIST regex-syntax-0.8.5.crate 357541 BLAKE2B fc6d125f7a8574c37d81c75cbfd447cbcff736f2d9991b19814ffc1a414ebc5b76e84fb8fd36c983b38e8e391d165cdd9047832b0d9100f0e1ba7085484b7db5 SHA512 549d8d130fea9ec0d5806126f57f31d433f50e9328c5532ad417c44bb5488ec0d20acb0983dbe54dabaa0b453cbea4533cf7baac7144df119e8f78dfe55c5ab8
DIST reis-0.4.0.crate 69364 BLAKE2B 5c5c6f122343fdf4b625567730d7b11b6600882b4396bb6fbb71eafb60ec27d73d2ff1891c59b1164a24fa7435122401763ee67cca72a6abb6838974214a593b SHA512 c7326a357d59c0e6326017a3f96a0d0174209dbf644664f95c989403188f284872519b9ae5c5d945e6e3d87c458a30dc36044537178abd58c6f8b545b4b166d9
DIST reis-0.5.0.crate 72601 BLAKE2B 4ffc71c59c1ec1064b242bdbf60d4b56df26f4acd9ba15ce520bd0aeab0c71b19928c8dc09a21334d42cecca7b5bcce44fea772d8cefa29c6b5668d8e884d1e2 SHA512 719772ddff9b1ab0cd4f6041460b5f44b0ee819041dc4e354cc56253b8750204564cd492ed8b237c1fbc8de5e722f39da6180cd64279611094c8901aa827d0b0
DIST resolv-conf-0.7.0.crate 17352 BLAKE2B 32b565a11d5d752e2cce2ac7b44e483b8a682220c99a9ca34d0a440d87cb5a874c407d474e47757f128bc5d78ea57940452eb099ea6fa433d8f6d1fe881f4302 SHA512 538b97f88fee8b82f15845f9a596e09757e3c2869c4e8708ddff97e19348e9f88d4bcf75e810d2aee47113fa64d550a9fe2deac6fc38d95242ebc20228e9b5f4
DIST resolv-conf-0.7.4.crate 17260 BLAKE2B e16c6bfb24a2e7de9791ccc7db2d8ed1d49fea0da6fcb871e989d9d0e654767731d66cbeb9d662d542cabce34ba5c69171fab675d10c7c8e30163c35e791e419 SHA512 b9d496488fbe837a597e7e53df1c12562347ec65639ef2638d2bb55e747c17e18bbf4d4a14240819eb119bd9bd511e90b97a322b09ae5a2ade4c0777f1730266
+DIST resolv-conf-0.7.6.crate 17955 BLAKE2B 5b2927063f4efd6b0aef7a94587bf8db76777786da61f199dec5bebd8e0e48c2041b7b9da26c2e96b9a7a8d1ebaf1e0e30c68eab22415a67a52695014d66dea2 SHA512 26754dcb79861f54d7e52699874d53400a66a091f245fdf90b08e5b3b48834d7573dd5656726f5a9eb3ee5f2769f24e0438deab54d3d42a708dbafcb36754022
DIST rfc6979-0.4.0.crate 9140 BLAKE2B 662d967b1d818439e972d19bd251a4e3609c65bae945b4d11c0ff4966e9fcfaecb739d0b63bd767cda6a22e77a52f3386f02cb27c5c76ce9008837c882f8df33 SHA512 fb68114f5f8c1e7b921ed175fc01813531a584b8cb2df1264b72e1925bd66b4c021714b3627fbbcf3fabc26e4d6578c4d246369a0c98049d4058dca4cbabb20f
DIST ring-0.17.14.crate 1502610 BLAKE2B b33efb6d21931ab94f044373f24428e87015029a0e065071bfd901f8679d30944f6b27bf0325c77fc4bea7fcd935209087a349e5c279677bea73af6205725371 SHA512 88d38205dc1a1f89bd4ae887ec5c168e68a4b749b3ac0612674092331e99d14a9b8d0f4a98d72c1a3853bcc9da420402336da3ee053bedcfd598da8de93afa14
DIST rustc-demangle-0.1.24.crate 29047 BLAKE2B 8248b014eedb26cdc0b748544ba91b9aae9c992a6f93b4d3ac256b78f691d572f8885a3575492ea556698a241d2759743968293079ca02bb6a5f318b0ed66dd4 SHA512 eb897c35300b87766e6105917a907fca1c5b1f7691fc03c6c1aaf38075ac883a73d1eb54a245d13ba59c7b0f0333d6543e23fc1b1c542fbbd5c750a84660b9e8
@@ -393,109 +510,155 @@ DIST rusticata-macros-4.1.0.crate 11746 BLAKE2B ef912926df8ff2d3ee64a190d79dde0e
DIST rustix-0.38.39.crate 377801 BLAKE2B 9cb0f8cb224343f4ab3f391995ed1d298ae38fb5740d28e5eeab7c919803aacd4c560c3931cd04b690df46543b258a2771e9f0c303fedd7f99d662c016ee0b6e SHA512 319dbd576979ee6a7eb544482a2d3f18ce25ef87519a712a33c73cab912b07dcb64206ad5058cfdceead1d381928a2dbac1efa3bc58c919774d18e980fe42f62
DIST rustix-0.38.44.crate 379347 BLAKE2B 780efaa7c9e7fb78782c552345ead692e4dc87a6e68fe9c972097ed4ef9066b54633c565d4f1b4752e08a1ceceef15ed5d8c11286c7cf17d971648ac5f9d399f SHA512 b7e66a27c9188eff307aa9912852706f686864852a97af0696ac5fc5dccdf2e4d22a69266fa74ac71aa123e2831f24b898b7ee9121850d65cfb56e12bd647d8f
DIST rustix-1.0.8.crate 416688 BLAKE2B 20e09bbc33ca3d7da2e30c30e1e1bcd7a7868e8edd3c8aa1f4bc37fc5ee499da3cd25f548993ccffb926f39abeb8d207ea419cc764f07ff108d8e40050514e4d SHA512 23e98aaeb57688afd2bb78b4943eca542a800ec98ccbb63e544ed00f83dde5e25e6fd22c9f7a903d95d74818b30b080e50f8a3cc5aa16cd879e4a0132d9d4d7d
+DIST rustix-1.1.4.crate 425241 BLAKE2B d0d710cecb9b20fa755e61a27d23b946a5b860211a9e63f34cfde2012bca2b9cc6952b546444a8a06a97ab8bb5817f87fd7fcdc7e3075640fbdb86f189f7f443 SHA512 33619ed2434963a98b0846414656bcc4945ca0e9b883821869fe0cc86db4a74c6961ce1375963ae49c6b5044ad0536eda807dac1320209739c9d669bd80fd75c
DIST rustls-0.23.31.crate 371259 BLAKE2B 9e987ccea146db27a839afa12231d365bef6a107d7f2a9bb09c8af4f02ab12b407f8adaddcdb1880be5338926a0d17afb0e8c93f407ce2418227733abdffcfb4 SHA512 f56ca1c1bfe4652318b90c7e3d2b613261c0a147c366c405f2043a0c72189912e5ebc56e14bdeca191df7b397414b87c281b02fdf15c4202c5ccecd533020c02
+DIST rustls-0.23.37.crate 372731 BLAKE2B 598d934a9fa15116a378d91d6df598ae56d51a48c34ac86bdad076ed8fb78aa13f227fdd9cc1924b65e80391df28b2d37fb260fad64502dea2bfbe26ab559d01 SHA512 b92a233abdc5382bd3c2de0f50e1ced3a8e1dd04eb7241e8beb9d78c27ec1e1e45b1bfbd9d4677078a4d19e3179dbef87acfb2bfc7543ce379b14902a0002e0f
DIST rustls-pki-types-1.12.0.crate 64740 BLAKE2B 988c6d11e02bcf148493a9ad616594c1a3d816a26335d9df3de5e9b1ba81a4a1e3862cb46db97ef1f743ec1241861688c04c4a98308166d419d8f307f9d4c09c SHA512 6822b3a94109e01a0fb420f58fcaa45b6a52519233da751c314fdd9394802c2175479c470ed5d8c71fcd45be46e3c4d8fc8addc43322101002f31fa034713066
+DIST rustls-pki-types-1.14.0.crate 35403 BLAKE2B d243b1699cdf5f98ae6118a523c4e80b5cb01db330f2ad68a60b52af990a553818e908e16d61fc79885a211754899c0f5f89256fb8ce5175db3da5fb27e3034a SHA512 15f8f06abf44a8f859038879db210009d499e3d5ccf33d34439ec56695f0221b143959e47bb6b1460667d838df4274b844a1a86e1cafa41efbe6694f8478e0e0
+DIST rustls-webpki-0.103.10.crate 85648 BLAKE2B f7181d5f8f67c29793dbce20f6a03f971ce140f398e50e81e832651f5e3815c83f9333f1652590c1a90c10da964a6f80f9952710d8b043d108e4a622d5bba2cc SHA512 a3ddc6ca5ecb5f4a25e8cbd1252cd2e8ac7937a9376a5d1a0c60d405c561d896365c6c3c4711d191c9c8d308b34388235c2316ea83f4508518e2c3413a6cbc13
DIST rustls-webpki-0.103.4.crate 84241 BLAKE2B b7419ef581ff0bab5005046d00a98d2d500bd40f10197ef585d9060eb901d3912c2653258d04b8f66eca9e8bd6450c82c896a2b8284551b65a72e6e26702db4b SHA512 70cc79537b19b846eee3278d9ae54488d0fa02cd4a3165d9e60f7782b6d15cb5855aa082341584db47810add2510c2ab60f5f4b8626d89abae5c0d1c487c4954
DIST rustversion-1.0.21.crate 21001 BLAKE2B 0ca6d2ae448a04a509e3746dff26c8ad9ff91b3d86fcb3cbdffc82de6e8592b585d8f1c029d96a257b4f195288d035326e6d8a12f3beece16a1d195544897375 SHA512 69ed338f2a8e8048ef6d44a5ceaed4ccb9d10d88130a5da4b25899af44949600f785d9508673a90245ae33e086ae6d2a297d6b16942c30159fa73e0602a88a67
+DIST rustversion-1.0.22.crate 21096 BLAKE2B cdf773cda21ebde50da897c0af0e4af14660ce953d3037054a99d8adc3db2dc6e30a57201a45676abfb183c62016a68069848e7537f711b1752339d194b0a378 SHA512 7929352df3e5279ac88cebb26ca89bb13c755f46986d2d1f514d18a3239a63638bf64f8ff153920569d173185d988d692ee676335afba0bf72d47f71babe0e15
DIST ryu-1.0.18.crate 47713 BLAKE2B 409cdf4b4e77685394018371e91ad6fdb175ac57e1df9f902871f13208515e5a2ab1daa226fc1e7291278e64448332845be4cc9409bce3b2f3daed409259e104 SHA512 a9b2beac778ec47e6be303148d7512ee681bd2361f6e4ac6db32c8b4baf86a8c5eb5b0d02eacd6131ae88c7b5105c57018c3050676e0b3dd1ed9c4d2fd650e84
DIST ryu-1.0.20.crate 48738 BLAKE2B b126085448cb58639a7b5867fe313dcaabaf19df478f67fcb6cf15b8e881a21e641878345e0bf1fea7d24b56b921e667fd26a39cb81fca7ea02585332068263f SHA512 329c581429d9b8baa7d9edd9cf20e23fb8002f339d9fb3d50ed4c7eb68fb19c1ba966d52a9c9602265ca5f59f2bd4393ddcb3a7ac20c64aee3096e137eb2a384
+DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
DIST scoped-tls-1.0.1.crate 8202 BLAKE2B 20be49f0546691bcff3f0fc257345e432e200836a60b297ff3fe698699ef6a2fe8a5dc6977902a08f7dc63c578aa27607dae0f1889b849c257c59c48a458e1ed SHA512 342f43d53edd33ea3e2197faf5dce37bfbeb0b20b6f0febad4dc6244c3185df127b2c10488e95561260a0ef968f32707460f2d0d23667cebece19b167c0a0c25
DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
DIST sec1-0.7.3.crate 17979 BLAKE2B c30d4e617f9c0c21b80f14a7df88a164ad43f4c18fbedc1ec32af41193053e67ff6ea83db54f46c8cd6389d930984120c2a1688662fd8083e0c23bd4995d510b SHA512 be646413d84b39a43a0af478854f47db3b167c2bf1bedf7a58392782c423aaaa38df3b3676f9807a98c6128152295c426edd16d67d62ae7048caa635bf39641e
DIST semver-1.0.23.crate 30622 BLAKE2B af5f7401daa2004ac1fc419ff907a65feb9b11743ad0feca0929bf2409eb81e03637ec5f92ba9f38ea386c4ee5cde72bd3d2042083e2fb0d6fa0b839b1c5093a SHA512 5ea1fa17c08d1280c3a4bc8d28494e88ee05acd5dc969ef6f0c6f91fd3b5a8fbe999c9e8bbd2da383413038b8d29fabf02b87bd5265bbb8333f3fcbe409103ec
DIST semver-1.0.26.crate 31303 BLAKE2B f99e282e2bc7844a451a4f600308840c4a96dfe032fad6e897e9ce66c8b5ee44ace8f94f93dc50a53792c8c485fa81dfa5477255c211017f06937212d9473dca SHA512 2d2c5edd771b67a9e32664255cc4c4eea8c9a6a4ab08a8ed968a493db70774b393ae98e20be0a87ff60149b7c142a01acc0ace28205b41b39320d63fd5dc6155
+DIST semver-1.0.28.crate 33064 BLAKE2B 03bb56f4f0ec6f4cb208277500eba03cc81a7b2a115d64849b2d154066f723d46f8625df7c512cfbb2e402a36cbc5a1627e8041ac2de92daacd4a92a6943979c SHA512 bb44373e60fccb83bc95e4277ea0abdd756a3f77b3334cf6d6b5fceac086910661ab94eb326cdc8fefce0c09220933bdf03bfd142c1594a92c9c1e4e931114b7
DIST serde-1.0.214.crate 78523 BLAKE2B c701f316a3204625d475668d2722991d75c8d9c573ae32e9175ccf99780fbe0c9c9d1dd0b4bac35f2cc91aca888c7f3dc41af2842dd833ab82776a38c2a2f6c0 SHA512 100eac65a39b9b9c32c1671d36fa9cf8aca84a2673e24c2521fdbdb3ed9f932c71548f3f1a26b1e73dd7c92a34ffa8ed1c76eb173fa20d6e85736cdf8dc9a8ee
DIST serde-1.0.219.crate 78983 BLAKE2B 7e9542a04c7f1aeff95b821245034368ff1721d98d7138bb1e0a99cdd6436dc37d69606308834fd33daaea3a1792409b3b2305b802433fa1d155816c55ca2a7d SHA512 0d3fe9a47af027d0d79499e60d940661dba6e29e8f0ce47d0db2ab722030d255aff637248af6f893a9c4224239733db09ffcdc6e1923a7177bfae55c98ebe769
+DIST serde-1.0.228.crate 83652 BLAKE2B d1909d671ea6d5c2eb4ce34ee4493ecaf665d416111b4cac754b5d33b85f916296110bae7aa961efd987a2ceb4a31ba645752ce99dd28dedb9f1eecdd4d7b1b2 SHA512 9b645d6214203533b303fc5e88ad4f7686c22df084878d18a0209a92304a340fcb62fdde88a7080cf7a7348d47b9b363885c4e1da90dba08cc99ff620f375e97
DIST serde-untagged-0.1.7.crate 17371 BLAKE2B 17d4b07718859e7947c1535007ea829825e96345e15fd6a3a70e7a94cdb8c89a0117def9a95c5a039b50f539ee5f467ace24b83006e2ab96fea6cbaf6bce26e1 SHA512 727408a0ebef8531797df68507f64cea7b223c68693db89933065aeb6cd0af873ae489335e8944dc123a3c4895f32f52cef9aa4900d27b2a9641423146c020de
DIST serde-value-0.7.0.crate 10249 BLAKE2B d2d3d687cf490eb0be1910bf82c09334ffe32efc485297ee228363e4dbb536b72e2c37f3d37a5f8fe61af7480fa8975c0a654f761c55e56348082e4605f2288b SHA512 6ca9a73420ca9fb5415730bac4daa30087b1722ed7966ae07f403497b8cab95e1e1da664c0581b9cd170494242d4e01be75e1d5f9b6ce19c538e7323da46bf76
+DIST serde_core-1.0.228.crate 63111 BLAKE2B 8a64e4627ad21a3d16dd37d53fb809d11171bf337ec16bb1223075cbf81b6b85cd1c8d19abadf42460d0fbea323e2f351eeb6ef823389d519121b74e68edb215 SHA512 43897e3a7ebdc85d81d1cb30cda8f0a11610f6f551529c8a21462c24fb83110652b462846aa3e1bed5fbf8b5d7927018845a524ee9e079e2c8acf2c687efd6c4
DIST serde_derive-1.0.214.crate 56630 BLAKE2B c284561109e5d60e103f1bb421e4da48f35c5046aa52359177e286449cf8fe51a92f6295f5bec3dc4cd737025e8d0bc618436e2f7640873f66bc5b77bb4f450a SHA512 70bc0a31d344cfec8d30f2034beab25097ef76ab8d89947b21753f737759e5d4e60e5596e0c7994a7cc35993bae01148120f6cdf5239be25fb243056effa27f0
DIST serde_derive-1.0.219.crate 57798 BLAKE2B 071f02019f829a2753769ce915d11df8f0d202ca67314fe83b42e1f1f3d07bc91b7e7c38fe498a0513714f80d3a3dbf2b447b1f85762de06dd021119801afa89 SHA512 1676bbf09e11273705a35c540d52d35d1bba7cdf1f347d40a364d7ae9269167f9f0f62ff4fa384aaa613c83e432a8eb3c016587ea643bb11434c00664a5c116b
+DIST serde_derive-1.0.228.crate 59605 BLAKE2B 166ee2f9ff9f7a0928d0a65a72db3d9226c377bca2a1771956e8ecd9c7faf0544673c9c21be2a5553e621b55c74c7b958052592a1cf6eb6427a2d4f3e3dc6bb8 SHA512 8bfdfeee10ee7ef0670972aa963ef63b13e8eb2c8a09b9e0b717f92551aa89b3dd2a0dcbae6ccf20a1caece07e6adb18f0db56fdac020e4e0281b0d24e376003
DIST serde_json-1.0.132.crate 150549 BLAKE2B a49aef7737fad2e6f6ec79cb6da00c734e7de7ef16be321846d1f6229534b58e15ceb0f6306eeae6f85bf07431d82959c0a56ed1394d21a67b65c8c48e971f3f SHA512 9d157ce7d705fee8245569e7c577310782b69675a6e459f21904544b824a1ca5c9b445d17419fee438dfeb6fcc35343ba14e022043fffade0210b6d2c1b5795e
DIST serde_json-1.0.141.crate 155322 BLAKE2B efa3f32412d8aca8a1a49c186fe12b3f531d90f00a50e974dcd6abae9cc9b0ab595b31d5de57092eefa80aab66d8a61d41453df049076a9d0a7d3ed957710b28 SHA512 0d1d28bb79e3deca01e3e72f431395c8db7c86b9a175979c297d379f1ce3d60014c9cc1cbb688ddee673907717e2690d79178e776a5c2b247c062d1c4e0c4f6b
+DIST serde_json-1.0.149.crate 155994 BLAKE2B 7564c287a05c95feeba2b3a17e2e43ba047b0132b40fc4dd0c09141c2aac559c00bf4c63cbd24c17f12f5e6b49cf38b240d2c6c66677ee7a9edb197aba7d57fd SHA512 85fa8cb7b479f8241a4fd2255dd80e346fa5cde103aa7f25c14ccbcdf0e3276578fd0645e1d2542ee07c7e08c32058ff662bbf03926cd796c38622a12f423d43
DIST serde_repr-0.1.19.crate 9997 BLAKE2B 1bfc8e94b8c3cf897813f4749d6a1112c1097c2c257821eb366073a41ac46084a21bdc0ee4e3b99d82444619a894472e24fccb60cbd8a41ab7d5b0469cad7c41 SHA512 678216a62702b3300fef850f10ee60d88f31de1fbeb7300e3fbbdc4e4a9cbc95c6890c8e7b9385223ec837d9504edd53e69b620f80609e54579c0994ed1ab0a1
DIST serde_repr-0.1.20.crate 12627 BLAKE2B 64aa318e56628fa7d9777f7387e66d122454008fd1f296ed29b4fa7f4ad4c358ad981bf7d093f3e3a5ac8aaeb29a9a62b0c11ed70983d82ab76897dfbacb9394 SHA512 0b47cacfd34f914acd48f443b62247667565b12f2a5bd5b80f6474074e08bb7a3bc85b8711bb3d45e17003c181f3366da6669382cfed6276cfa88b6ea55c3e68
DIST serde_spanned-0.6.8.crate 9330 BLAKE2B 630bb2cabd74e8d9736e315ac57c4d2c5c4f72264aab35ecc8e0040cb4186885722051a9f7b8a9006fd121fe58428cbb151e5cf541e7de30b6528c84e968f7ac SHA512 2343a2fda35ff57ed8ff7d8eeadd651821fce7e22f91c2d5797c6af7db9e009b7d637382f6f390c17911912865a5aea1ce87a86fbe36f4b6aeccb065a4c8942d
DIST serde_spanned-0.6.9.crate 10210 BLAKE2B 6b3a623aeddbf9b11dfded1a6491e8b629875dab69906797c118c9182f62f45dd77b3d2132f731cce917c60887485edcaaa138894724f2e608b55096ca2f29d0 SHA512 7bea513792e7712d9672d890c0b80df8e212c90b22c6ffbaa290729a0f89d04e3b7a65a8b39b774d2203cbea2515047789de163f93c8839cfba8cc88737ca5f2
+DIST serde_spanned-1.1.1.crate 11025 BLAKE2B 24329285e068484b2480d603a6ab7f041f111e03eaaed6db00ac94e36e608c810b7f19040265c51e9d881e65a107cdfde98068b5f1f56dbb8e1fe6677683ac58 SHA512 ed6f0cd52d97985458d530a1ff973aabef8b611a17e739d5011aa50293e4cc994af24992e07ac55e0d2a8fa8d0577ebdba4b42b920cde505e05dadf05382e545
DIST sha1-0.10.6.crate 13517 BLAKE2B 85ad8dcd237125945f6f9c2d7a48bc9802dfe8398a2bac86ddb96763486092fa18e80a2e69f89cfd6e95599d34d60ced33b26a68cbbe39bf158238a79433584b SHA512 fd37be7e3f1d4b6addd313a36b55215fb70abd21be7831b71de28bd3eb03b7352817d8a7b1a166df002c3a23eadc8224e49edd4a37556c0e5357565305d4128f
DIST sha2-0.10.9.crate 29271 BLAKE2B 1d614e0efe085cdb40e05726578a9b4ca6bce93f6d3324f5dc0444cb37054912cdaf5d28d468eac2c0046030d920fced2ccd006953b80865ce8a2d43ef3daa81 SHA512 963adeeb4ed8b0e7fc19085e8721ea13e9b3aea5d115ca1b3dbca495ad14810c6450991dd3753807c293c415aaeb1054b8b4124c72e7090cd9e86f09fcbb4f80
DIST shadow-rs-1.2.0.crate 36468 BLAKE2B 8c7aceafb3d8c1641e2c80b063acc9b99c0fa389eed1032037acafa702513295c454849cd0243274e7fff9258eec02dcc4cc906267e3562ad744c5e710e16fa9 SHA512 ab11e311cd4f8fd8c93dd5befbd51e7d20fe99677bbbfc71c3fc5a54126739897eb664e8fff55c4556fc3c96fffdfd149cae13bcbad89a5c85b510495e78698b
+DIST shadow-rs-1.7.1.crate 37148 BLAKE2B 7efa13dca8367c02e529f238fbcbc9e8ea8ad3708c25a18e3743d23eece49fdf2065c1eba2c7904e49ca160008ba95729e3aad280d33b36fe1301348cacdd168 SHA512 51e417db1b05072d7bddbe090c01143648062e4cc88043cec6f091fa2a8005ba02ec8aa246c0129bb2f0807bbce92724e63208a0f55677de71e03b96846e375f
DIST sharded-slab-0.1.7.crate 58227 BLAKE2B 9b4c4e4849ed324cf48c2b905f21139d1d65aa5ab13e7fb11817cac9a32ad09f8dbb1e50a93d40cafa0aba872792bc92f7bd2e219f62f80695409e949c07978b SHA512 3be7438d4a75debb14463477f34de6db1ac38abe958ada5d5dae7ae8d5993e245da69fcb989d91aaaffda5f2b085d4bcc88d10e07ec567b7f40a21437de6d4cb
DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
DIST signal-hook-registry-1.4.2.crate 18064 BLAKE2B 7274d4c115678eae2640a709bf9d682ce867c1f6295a0c5f49e492f95dd1c457f20b56207a74221df1fd9d744b24c6260e28f705777e3c7d47b7bdd36f1d57fb SHA512 16362d232b1d301007c069198d7716848aa73d898ef92e050422b36c09001b4334390dc95a6650e5315377fd8960d4336e5ae869b0a305e8525e977b8327c508
DIST signal-hook-registry-1.4.5.crate 19004 BLAKE2B 6537f8523aa03e3941bdd115b35716c62ea523a67f99662e28a2d384a5917c43c68a3a26ee9af82ca44f07494ddf39a5ddf2cbff22b0e0a9fc917cf72bf57b5f SHA512 8e7c41c4b57bc5ecd6cc16e6ea8206af0005ba1e7640e2eaabe84c81312c400c74efc229b563f4627fb7d167cd7bb43e0d2d75ae5b8c545ec9ef43f967ba838a
+DIST signal-hook-registry-1.4.8.crate 21668 BLAKE2B abaed3ca8f07e1631aecaa4bfcc9dea94f2bcd2ab227c9e44d543663392d5e7c7b3beea4d0624ff48637d4fc7544a722ba3d4113d109a77ec1a3b3c0d06580c5 SHA512 6625d842e5040fb15c3a6a03994aabe8b3d0b752773805866858452fb03e5cab2663c89367caa15a34dc0ee7c2b830e302d9be664130c093bdbc17d7b61f045c
DIST signature-2.2.0.crate 15531 BLAKE2B c584d9ad52a1ab3cdc129c36cb2ed6dedc40a8d49f7294352a7df8121dc57de78268f15d9ff9ce076abf1dd3c56773daa26ed5ec39c83a600b6a377b51d4db37 SHA512 673a8f6229c795cc8f640fbfe02cd912b41c6359ca23c5ddeb1679f49784b84f109c6c45e6210201c9ca05e441c1be64ce6537e81ccd3589b37be6d0bf50dca7
DIST slab-0.4.10.crate 17810 BLAKE2B eacdd594184053f879dfc8f0e1a14d3404a7698ec60c85e998d46bc18d6bbbf8e345f577ee2895a3a2205c6dfaee207785054f01c9cb62b4411d9d192b8b203d SHA512 cd1915ba9c7766d5f1f551f6a431ffd768b75d2fbc6956afc8bf40877734ed2d443a0ceb66173c50fbc35fcbee17c1dbf2a336b26d25b2cf3a5105bf1bbaa20c
+DIST slab-0.4.12.crate 19080 BLAKE2B 785a1b899fe01c8825f24d90b0b0bb31bded234810f59c71b7e44221387de33fcae220a7d0745f59f79c267673b76e7c8d9fa4c0dcbf8fc5d68be6562018d49b SHA512 cf7c971b99b043d8bc102732a109717cbbec114160e4f7cc4009c66739177778623403c33d6a32efd1620e0ac7b8743c36e0e5563082af7f92f1e4caeceea0d9
DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
DIST smallvec-1.15.1.crate 38116 BLAKE2B 8dd779d7726694672945e928399e0459f4973d284a6c2d664c2fc757ebb1177658f47c812d9800e982479cbd7413fd4283c64a4d248ba5cff6397f96b758676e SHA512 c26b097a063353beedfcc921129cd0fb838c1c9420218993a05b2655b47b6ec16f11e0054312018658b4abd893beee140c5d2739401a5e5aea2e64575f237047
DIST socket2-0.5.10.crate 58169 BLAKE2B b3e6c1c4e20fea2951f07f74cc75fc46b81a6a94a02a3aeef27f2be0bd6ef996ef911c421d84f660bae4f2565dd74b8a0e708da965a4c1deaa273d9972974362 SHA512 901ad0549e2702a0062040fb5c9e5664f4456c9f065f8f8ab7ea16342d83c2ff69b087633642e08e2f51a63e2ce186c45428936118a78fd4f15378910bfa9d1f
DIST socket2-0.5.7.crate 55758 BLAKE2B 148d2e2b6610895ec555b1357b340576984eb76cb3ea719f85af50cc4215b2ea2db739e2a61434c09360a0c1ff8e05911764e18dc4a59451c0aeb0eb60b8403f SHA512 ca37157bfa970cf3cee8b45c7fe64930becf2ffbbc309ea4613be968400279b70edd084d159f65b76fe1130917312d81455023c0d7c1bab7a59c79542aef9dcd
DIST socket2-0.6.0.crate 57974 BLAKE2B ecd0ebe429f1bedc9cc80415c787b061031e321a84b5a680693984de484e9d275069f04d18c34a78843e3c8ae07ea5cace0b7b741b468423ce0bf907fbb327b4 SHA512 3636c1e8afb9f5a7e42e2caf6adf995e5b5310892cf0172eff3023507c3ac05840b6b6f635a266d9afc5d35527023b9fa6b46bb7339725f24fdff2c27288ab19
+DIST socket2-0.6.3.crate 59330 BLAKE2B 09055b889f501975ebb358382237e85c35d81108b5ee91652843b363477cf103bf72dd922e94aca201720faba00a25898bdb88df3a7e335d0664d48873453129 SHA512 c69ed9bafe82dce5fb6333430f06dd5bea910dbc2085ae6bc3f0b5b3d2f965459a8c19e90a877dcbfec70dc8098df11ffc01dd5a401b5638c29b6dabb3891ae3
DIST spki-0.7.3.crate 16409 BLAKE2B 6b39144e4e718ce5eb454e21ee89fb936ffd31ec99554b0150fee47bca396bdfe4ef39603ec029d4af4d8c4c3ba2de7f6c549244f8c20114de9b43ff14921681 SHA512 d33a6a7844b33c37628024ccf25c1a631f7a6661595e063049b8c9a9b4edb28f0335397faefc592c6fc5e96378b870ab5dab9b0649c3387577b2370ec8210db9
DIST stable_deref_trait-1.2.0.crate 8054 BLAKE2B 287a65c3e5b47213544a43e57c60a54add60b4c2e3c8d042407d860cc950ba7ca01a2e67ce56aed6744992b61ec1f9aed3321e3d88482e33129548b7d51df205 SHA512 a13cfb22723f1f2cf089b2d07d657846f50c37bc0438d1a76096bea30214cad226b7a422c21f9e191ce87071da8a141d61882aedf9e0203a5fffdfda86a5fb03
+DIST stable_deref_trait-1.2.1.crate 8186 BLAKE2B 6408959d169d1228c1b0802ef31c850206405f8259168f169aabc91f63683dcdf347ff0e74fb3535ab05d7642889dd2637afbdea389b43b0925e0d6cf441ed67 SHA512 630721d3f8e9f3290efc250c42aba13e2325839e62167a2a611618c18c6aa58c08a53622db61a9aa920284570626b98df26b3c28009cf45b6ce1ec134b9c9f5c
DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
DIST strsim-0.11.1.crate 14266 BLAKE2B 252a9ede4241b165525486aa8855dece37af77f5b28e0e1858c4a5d2047db9fa958328db10989234aad69463ab51b2303785ec056c63ea8c95bf95e111ddabf2 SHA512 0cebe0155a92640e56db9a599ae62078cbb32e1d2da8bfa67ed0e8f410a7558dfcf7b3c2720ff5913282e291ecf076aed9fe9bf84c8d44e814a642b1bed3335c
DIST subtle-2.6.1.crate 14562 BLAKE2B 3cf4940b7a01f04715da1057f6a92b1043a6b86ab2ee7f9fee0337b680ff781201d330409460f6f90b3f81bb5fd4b563e17c762c6e824ba3b0af99e4ae7d66bd SHA512 f5946ebd9bcb8776ee3446abcbf4afb3cca5d8bd847cadda87e864333ac7ded537a3efa773e9648adf20ce4add2c1da85172cff88c1e1a3a6cb051401b00c6bd
DIST syn-2.0.104.crate 299699 BLAKE2B f64d2267abe9140456dd31d52ada0c75bfa3e4e0112ca77491245e9e84a0530f6c7cdc7428b73cf567a65ef6e7727f814fb9cb34db0ecc9cc3afd05b69fd36f7 SHA512 da532fa362266161b5604c821c913f8f990eb32c18e18c0a360b7147b9f71ae008e208f377cb203e85818bd5db926951122a971fa97563a10678f0ba4671e64f
+DIST syn-2.0.117.crate 306011 BLAKE2B bbaec02c4322f522bdfc87caa4ce6fd1e09bbf8f4a102d9ed8728efacdd843a2750f616dce5b2d3a3e46bbb7d57439fbd10e328bc1d4a01e980986cd815798af SHA512 035c2e63542592b6a4058a2a82d4c2c1f5793f84fb1b04cbd393337a26fcf661a1f3bea439ce98a1fe943b1c4d36d2bda16df3bbc3fa6ca35e1548d530dc8416
DIST syn-2.0.87.crate 278076 BLAKE2B 93385f64103fdb482bec34c7912474ae7a5935948715e6eb9a54907e0db5c39f089f6cd393bab33c935c59a1bbb0f4099431f206343811c1a450554d96a35756 SHA512 bcfff545d6dfefd81e09f8f30a86bdd85759b3a7d4093ef3365ed02718e10dbd604c52b94c9d7fa955d339fdc5b6c079940c6f345b5a48c52b5c8607794ca6f2
DIST synstructure-0.13.1.crate 18327 BLAKE2B b29ee88c559a2d58fa46b7af155b448f001649ea79a1898f0ac87e69108b87c65cbd287d8f9001f360df7fef06ff39c937b48d33e487a30c8eec6a46c639c0c2 SHA512 09024193b44fc9a8901bda845b9f86c57dad65d0f53e309b2e7e968538fab6f67db1c86e5e52a2eb8fd116dc073e3ad10983bd60764662ec6ba94fee22a958aa
DIST synstructure-0.13.2.crate 18950 BLAKE2B c475f370d901a371262f466dd98e3914dd6f36aa473a33362866c0f781d27b1813233f96b02208f3463a825e8012cab0f8872eed848d9aa0eac88b581a0d261e SHA512 2698f4e80b93f7cf1d8ae97c4c42a7f61e7b7081f7f1bbb94d7f48ab7ae813a666d73c49ba3812cda9155e0138b55cc246fb96e5858e411a8d32bafb3e2b2afb
DIST system-deps-7.0.3.crate 26313 BLAKE2B 3429b765bbe57865f68a76a53562d31492892c4fe6963195002158049d989268f6ea91bf8826c73d762bd4a80506e1b238ae676234004031acce1eee35924026 SHA512 0b941160ef803e1c0545082bc5a1b6556ef9dc11fe1dab5575a0712428701ebf1446504308061f203bf52a9c61f3c9ab020cc238e9be2e3afc20dc047c746779
DIST system-deps-7.0.5.crate 28669 BLAKE2B c8122363ea1f5465333da194f7781af4555fbcb4acd66f20576621f27a6a3b85575dc545ec0a2005916c1d57192acd7a2b54912228e6042a7db25e1eaca131d6 SHA512 778485d2f66fdaf486b9c76eee8c6552ae38b4547a540377e952218999fc93877af17f977263485a43e28c09fc18c1058d4a4906f32e1371865c14ad1544431f
+DIST system-deps-7.0.8.crate 30092 BLAKE2B cdfd3cdad536d9982261a25237879ff40f9f54556faaa66268ef5f1f85a8f0491f5ef22e3393f24e7df2cd1fe3580ad7c69a22dc7713a0dff357a4c5152090d3 SHA512 4842d28fedc0329a2c56152953356a428bb1702371fc257651ba0947e02624ddc446267c8fde8eb3def3437a4c05436ae7fbccc9066700d65d4415e0eb0d530f
DIST tagptr-0.2.0.crate 13320 BLAKE2B a0058b69ae0f2e2b44bc7066f4c7f9e9c816de32cd2668c63deba788a3480162e372681b228b7a9ce9f019241e173d45ad9d92a19a90383d850bb1a75baabb83 SHA512 2da036e3c677d49ec0e3cf18d897e2ebc071aad906323bb5cdc3b9ad498ad763a9fc883c84d6623547fd00ffe69904dc69b13590b0ff40e785452dad8ede0aa2
DIST target-lexicon-0.12.16.crate 26488 BLAKE2B e7950e4a302059a1bfc9bc15618a3c1b971a17cffae117a6e8f5f63a0d82fd2bd02680301d15338612d5426d349dd24cfee30ee787a15a7d3187f2a6825e69ce SHA512 092639957c4a0391560b6442b31c47159c04d12e971010f730a6ec9cb5389e4be903ef3d7daa06db95e64dc78b6970731fb647179ebaad2b12e9ed5e9b24da27
DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a
+DIST target-lexicon-0.13.3.crate 28498 BLAKE2B 397315667737abde41949081f8377f704c3a1105790162249a9f0c08b60f012e67d66550e9063d900ac98f5191d13c5ed23d1a8045f99373e7a673a3cfc029e7 SHA512 23422df6edb2a8cb0a9f048864faf76ccb27d6e97fbed7b208b77206941b196f155896a0381150e387142e976439a0a296dcf4cbb4df6bc0e11c65f97f979443
DIST tempfile-3.13.0.crate 34910 BLAKE2B 736378935088ccd8b540997c0554444c3752a74c9a4bd82cfcb700a9b22f572d0f2b3e61252064d4a631b57783199cfb42309e518826346a83fb5adb44843c49 SHA512 68701bee80309cd8dfa96c237b2344f26bd03702d2fc2e1a253820c98654c85d802aee1e0fc856f6372159a92ecbf624f78c8146f34a0cf924f5b56284915f85
DIST tempfile-3.20.0.crate 42306 BLAKE2B e293a7cb6837a13d8cfe70ed190246fb5901e74e345f149ad29a937b25ac55390784d0ee764c8017ccbae269c8e3179673c9527f43a87fa70eac470b21aa96b0 SHA512 e317273225182b565f971b08160080e6162b0de855c0cc8c5b8d34b2afb48f73ed15a2848b65b6db73789fbf96dc88354b1d357d9c2267658de0c718286de8c6
+DIST tempfile-3.27.0.crate 44780 BLAKE2B 898b8b00613c4617271febdd54dd1e5f66aca54c1e4b60067e508c87c15fe32f0ce2d30b3dd630ecf7083b046d579f31064fa72de09067981c920f4aab86f2ba SHA512 bb20b9b0c5d3301ad05f73f1de538ae240366d9aefa25ca823ba40041a8a11b4a7361a6a9ec03871b14230d42038d7af6d0b652c8c471935b481a1628b59314a
DIST thiserror-1.0.68.crate 22003 BLAKE2B a7981f1f0eb2facd0a7c74be72b8bc110fe4f8feb08e0dba8479ff75d9c87f4a562eb838687afe8b54ba1e5a070512a572ffcfaa89e9eb7c522605a861d446d8 SHA512 e8d291c4697aaace19b22809ec926beffa461645aa17085e6090ef3039a88e283822b81b5fecb8d58e6ba881f18616a3be6e485705323519e1b74c150b1fe4fb
DIST thiserror-1.0.69.crate 22198 BLAKE2B fdd8ca8c8ca78702377d0bf7b253440519018275b105db980d63229d0d44aa5c39a703e14aa6fe453c779b3c864d8044009dfef893d2a5294950f067656d7a80 SHA512 ef50d2867d965da1dfb29d26faf6de273b5fadf78f95313f6caf44d68bfc610b9bd4b7544200b05bb0861231cfc84e961007f8db83c7905244c492037fd31899
DIST thiserror-2.0.0.crate 24771 BLAKE2B 7c63be41b0c6f421a29f606b83d4f3c9ee69e394412538ee70cdaacdf7e2a178a93e83f6a0b866b487caa1bfdd9f24f08a0f867db5b01b1d6502b187de6ed93b SHA512 438fc058bb7a108096b6c6b1219bb550d958486d63cf7120fdbfb0cf7119bf3c834edce7836b10dbad28b3ede3bea58e6a401768b82e817b41b80fa9774cbcba
DIST thiserror-2.0.12.crate 28693 BLAKE2B 1145357098af4342f8d5f5cbe329acee408cf35b86ea97a0cbdca1cecd18a67f4798518266bce21f154a8b3baa0291b7bfd8edfbe29879364cc86e76e7c714d7 SHA512 aeb6de221b28443adba6a03337e7c70c54f99fe9500e39f904c3a8e612d895bc65025fb72c861890c7c011595d2b36832f4b642781847513edce1416b30f309c
+DIST thiserror-2.0.18.crate 28875 BLAKE2B 4edeb4a39f27204d417d673dd3e2c1dec67a5bcdf44aeea70a02715b6101da290b5ac1534908001bb7d758528777f5be30b428eaf13cf0d8afffdbece054f3f4 SHA512 5e20261c0f8898574b5668c743d292be1763a78f6431918f33eea2ee2badb40743af4f668ed245ad685a90c3ae23631a2ae8266569d8f1e7dea111f08ef12352
DIST thiserror-impl-1.0.68.crate 18353 BLAKE2B 6c6fb1c9d1c2c8bdd9078ed2b0673aa32956daade019946246f5c2577c926bd4bf628e9ba5bfab4250cd5a53f3ccd5da09221ad5ec265705b4d3c74687d2304c SHA512 9594fd4c6c64643cbbb434ac0dc1ed5cf3777aa7a54320c14dc8e806603c6e58002c486681834f7447b10bcb6a726e59c01e5171572ec4dbe3fe3a175be3d152
DIST thiserror-impl-1.0.69.crate 18365 BLAKE2B 51663251ea6ec99c59aec35fe73c5f9760809d6b6b7eaa8ecbc8f6939acdc4d0ebc11f9034d9204dde7bd689d5e8303ae0be86e298745e9ef96825bf73453a08 SHA512 579eb796c8885feb01d27638862823acd96c79440655bb444c3445ac00121852603396ce7439aed617c0a0ac69f62102167fde5845411c906997574a46d6d9e3
DIST thiserror-impl-2.0.0.crate 20099 BLAKE2B 3eb523350f3dd2d7b9124135776d43f4ac5bb8fec5bd526c2b4220dfca55c9f848007c6b590759de7cb0c9c7dce17e8cd307f620b0cfe6edd43b1a7a318a187b SHA512 5128aa7d29313fc4c838fd2d101be6c0b784c8a98615b2b9e5ce3580aaab479bc0f1c5eefc67dffca84d14bad176ba9e8283d1891e4f85c618934ae65d1e8dd7
DIST thiserror-impl-2.0.12.crate 21141 BLAKE2B 091cfa822bdf6cbe0730ac0ddc19c6102f6aa341fe68b18f335588f1166d9a0d34278c73e440c657b5890689f2c73c3c94f4d07abcf7bc77ac2139ce6c0bb555 SHA512 01bb00310cd8e80386250469ee7be2cb8db7ff4883869f8ce2ce0de1742292ed4e6d7fb1d7520f1e2555e72044309015bca84dcf058bea99b8d3db970cf0bffb
+DIST thiserror-impl-2.0.18.crate 21413 BLAKE2B 38d2dd849f6919b2735b23e32250c0750366f2a5ef9dc385262ec00fc8e0cef17ef902211bdacaffef4e59dfcde9ca2d84a0ce4d052a96b4233a21b168e6bfb3 SHA512 52a7b5a98cdc32f7d6911451d75f008599ba3775fecc1f7483b161cc4fa176e5b19659f10abf8189748d769fa23d3a22b774cc5102fce395c6f77a5f107b0553
DIST thread_local-1.1.9.crate 19315 BLAKE2B 31151ebc58e76753ef8c15a8b283a2b3a8f833aa4431ff1a28612d6a700088315839abe09a6d582ae0dab824978e2d2b67ec00e46cdbbb4c962fb72788b5368d SHA512 80fc2548bae302f22de10d8240d0701efd64cc41eb48b06234426d40f0e05716132e08a8bfe89e17754d61fee37d3359394cbef8e16af307dbfa76e1524de7d4
DIST time-0.3.41.crate 138369 BLAKE2B 1e6e22c973dc33c950886e9628864dfc07e52dd05fb6880ff233ee4815f41172374af9672c44d53c56c6ba1ca38c53315ae1b4999f1fea3706562880481ddecf SHA512 be43d521ed6bfff6331d614112877b0b68d99ee7bad8533dc0d49193bb130f25c933bd7c9b6af873de252f9aba59becb47ef72774ee2e57de106b6f34b646170
+DIST time-0.3.47.crate 225161 BLAKE2B 11b19cedab54f06763fdd710c273d0cc3bc4de1a7e39dba9657c860448e93d22d83552f858699be3a5f4aee4cd888b959c05f90d5c24208610dc4d0dcfcf3df5 SHA512 c43decfab65f62b7719f9b2b4bf6eb80fe3ed80f670e1b47aa0879baea403aa19557506ec9433df31ae9fe9cd92cfebfa237c9b2f5dec8d5eb093c54bb815f76
DIST time-core-0.1.4.crate 8422 BLAKE2B 3c9fd96b77b2d405ef696d62d18639945b81d1c8d84f1613f440a4d61a373f767aa204cf557f82d41a990cb74e952b5ae51e467f9ad0eca0175bf3cc4385dee2 SHA512 677e6b67081901b2f0bf2856a2cc29ffbb0ec3a4363e6deaa3082890f4972669f30cb55863462d8510462faa6dd698b013e04921a0657005633506b51dbef531
+DIST time-core-0.1.8.crate 9634 BLAKE2B 6fd5acc286636de923ea527874c02acbc31577ffe0f15e2d89de5d1d2a9c1551c68ebe392667cc8d34434223484da792c0bf967f5b362d1784818b016ddce0ee SHA512 cf9f2d5da0fc1b61ff53c11476d9a73e76740dc166ac0b4c4953e25d63971c5471f6e3bcd6d1287394fac44fbbaf6d855a09ee694d845bedf693e6b8a517c9fa
DIST time-macros-0.2.22.crate 24604 BLAKE2B a511923e4c8d790ed422e4635244796154b6893a3dfdd32e9b960fe0a12749a23656335573b42c1245984988382e6991e242830c770378580a61e9f451bd06a5 SHA512 7633ea40338364add29e7cf6beb7f2e9c441a8fd6079fba9b9fd13dcda6537c2ccbc3091cb6551715649d13080567fa26ed6db4e4b3402736105f526da2f45bc
+DIST time-macros-0.2.27.crate 25144 BLAKE2B a308949ecf582451a01669ac0468b74231e6b466da44c4dff864baa22cccf33ad64ba3c80a75afd4c19bf983dee11b157fc973d9e4fa78a614bc98951506b4bd SHA512 5caaacc82e9b73bd3891e55aece04ca3800884f9e52c01d5f9a62fc9e554940454df713d903854c68b85b5a43c7fd8dc8e7047f596be72f86952cfdf9323a818
DIST tinystr-0.7.6.crate 16971 BLAKE2B 33a248261c4cded41a81f0d6e6c8df55437f042b37f235c39787986ec562f0dbff50b282ad0f1483daaf49c4b33e6618e139a6677d1238c21f4e12082562b4ae SHA512 a33051848de248cac0a2d151760a78cb3aa62c787d84ff7aac38b11c0660e9188e4d43d43a77fb8676e49ac6102015e9c3db057848d809e71981851875d0fb25
DIST tinystr-0.8.1.crate 23333 BLAKE2B 59bc4a522d81bc53c7acff215ec711e0f340c3884858fd4e985d655eb620d4a8b2679854e23f035bbcb6d795647fd314e26707eda564f07c05850c010db084a2 SHA512 07e32300424c9adf7e8bb830efdfcb23460b712c72c3eff11b9d00f1496c8082659bab52914cbac0bd26e45c352fcb859fc6b1cfbb2028a49cfc03e75ab0ea2a
+DIST tinystr-0.8.3.crate 24710 BLAKE2B 5ff044db0b3c11c6ce5edf6dd4562087449c7af0668a5de08e07588c3b225a3c13f15ed39f2f7d8860dd4d0bd88fc95ea2b7fc96446e5963521eadb6699dc80d SHA512 1208a3502aad5783a99d05c6c546f0f9de5b468b273c0931a33829c857a159679f8720622ee0700bb8df397baa590e0411f89116327759a859ff46438ac73bfa
+DIST tinyvec-1.11.0.crate 53096 BLAKE2B 58b2a97f9883e557073999502bc3f1b08d075b216b0818beef19336c505926a352d1cdd8e596e929c2068912d2f4967cecc663b3834931bb73d845ffb49c3660 SHA512 5b07b93f5fa38a4e5512ba38a424df38582e5dbf39bec11b8b486d2b5b0726bad9b2c4b43ed1312b2ab6c8debc6bf78c48c05eb9c1c9c8187220f60a3c6f748f
DIST tinyvec-1.8.0.crate 46796 BLAKE2B 720d0e6d881855a36779e12f5ffa708d3a8b96e6d0de9056cb33c9b8ce0d408f99b22f5b2bb9d64bee72a011fef846dbebbea2ccd238d7b951eb5ef0c4866e05 SHA512 b7b32e38229645965900f80f298685f13e6d13e58cfd6945409a6643ca9c9adc2621456956d5998ab9dd91c2db4ae79638b156ca0d9c7c5505023fd9b28414df
DIST tinyvec-1.9.0.crate 54137 BLAKE2B 68a96ec0ffa392586c3bdadf2323b2a3b416ecb81db5d18ae0e05187b097c7882da6678bc881e70f935554862fab5cf41ae590b27e0fab7c1c73995449b84f5f SHA512 5f42811be51c58c72b80fe9a7199250fb6176f5766dc774b39ff656ae5ebead0d9c91ed7db1046288b8e05e20edba36455e4cc6fc0766c60898187f30c232aab
DIST tinyvec_macros-0.1.1.crate 5865 BLAKE2B 2bf4f68ca11dc19c72232951605a4c809b34ff38ee365ee4f592a3c41360e23c9330cfba961e2692a0ad568fef4aaaac51c40808d491178cf7a0c4b5a1c5d484 SHA512 10008c7b3a3d50c94b9c370015b76ee082f5dfb6dcacf014dc2f2dbe92f903618d10d0202b21f48fcf98a94ae76fb712db55a5e8ad353645d378cf0e6ec74f7e
DIST tokio-1.41.0.crate 805168 BLAKE2B caefbbbb03450cec3f3d5e445464254c14d24b2a905b1affe54ca7c89765e91a2bac0d35bd5794e7fe1e78a7de25d6d84bd3aa1bb59c98eae0e11f143ebdec48 SHA512 62f31b33cbd595f20c3b3169895163fc2bfb1b4f5ec2f6e554c7f238a0b63c8431675843fcd1be0e9d1d8de734aac69e41bcb8b5355516b1a239cfac1e9c62c2
DIST tokio-1.47.0.crate 828980 BLAKE2B 5610300c8ce0ef704e816f550482682f4fbd1f2b05b7ec119a9c72178b27e086ac80d73f150518ad81b523d1a7bdb4835aaeec32e77dce01ec5ca224fd6a5409 SHA512 4744124dc0e50ed1194ba0d013c5235db732023daac63bcc9667ebd4b2e2c38758cdb00b339edff856df9994eb9406aa3dd31fcaecebf2a5732806efeaab4912
+DIST tokio-1.51.1.crate 887164 BLAKE2B ffa69cb7c589bb4aa87ddff4f88c8ca987f724564732777be818678ffbbc5889356bb8ef35fc3a231132268a819aeec3853ca605bc016f096595904986b76af3 SHA512 7553c37983554745dc9e40b3f7ba02d7867e95b97bb9c07d340e9e9a7add59bf203a460b88e8e7df6177b8a6b0a9dd605f96c1ee877b1f97d93a2bda6b196eb4
DIST tokio-macros-2.4.0.crate 12501 BLAKE2B 9b358adb86e828faeb956d24a1ebf68b51a69bce519ad9760ec3d3b8eb1cf4435afd4edc5ddbf634fe152bc77b8675182dda3f076f1011c5b5b97850c1fa1689 SHA512 f4a445f6c2cc7c1cfb5825919cd3dea3af52720c7793c20601d05870e7efbcfe0c6231fba7ada49b5ce46757f0e1475b3667914ff33c2fcb25e9a40151bd2501
DIST tokio-macros-2.5.0.crate 12617 BLAKE2B c30d0011173d246dc82a5c24ba97b0ed6b66bd8f19b0977e0305b03843b3611528fc5911b632d2c46bd22b8fd2e8488956bde0037c322a3ff8b7306e72cb9bdb SHA512 c1d24cbb8b3f500357e39f93cf139790e4bd3ad1657dd5d695f5e4f9a2a460cd63e8c1c32a36b64d3cadd7b6467e59ee34cd5b1548a99449d8e46c2db83e9ec4
+DIST tokio-macros-2.7.0.crate 15859 BLAKE2B 430d68352a433d070dbe80146860179023a01cd8fc7923a55337f48743269dfed914cb69989eda8ff969c74a96b28cd32f0a59caa87d5b2f3e3828d878d0b026 SHA512 c93653ec669b092e928f71ed1e7af8783a5e9899739265389ee24301a0a5a9e2b98c69539937f78926e47c13a36aa70c70eae278ba6c082306e4044a7021c2c7
DIST tokio-stream-0.1.16.crate 38312 BLAKE2B 39b9ccac4091e8d882e1dac43cf930bd4428669add837c2fa989fabdde8f2edc5340df83745600cab1d0880a87668ea6ac95dbcdfa02fe171f3f763887374e9b SHA512 1e9013ff016b59b99b29465f42b4dd61f0a7feeabcd35ecf39a26862ce3e00ac1c818d012d0c62a7509c244d429c8a10f9afdfbccc2e178a5e62fbfe097ce39a
DIST tokio-stream-0.1.17.crate 38477 BLAKE2B 9b8d7307ad8194145ff8afe682874d9f4cc7b06a11429005912dd9bfe1bbfb980876bf831b7d715552bc86ee18344eec331fc18c8871681d58171abcda7252e7 SHA512 c44c5da6f916ce128e8a13025d9c3e92ddb4c82d2cad52bde4bfb982e6f83eb89125b616f89f2fbbf9ba8b7f800ce46e33f43104a59153db2e950bc2f0d570c4
+DIST tokio-stream-0.1.18.crate 44366 BLAKE2B 39878493a2ca35ea95fcf9612825b85fd82ee457ac12fa61fd512ab2f7c0242e1a6d91ca2ad997be83f8cc7461c1075be11c9f204ffb3046018e8cfbed84776f SHA512 679a17e530a84f38538af9952496d0258550252f4978075fec468380b4500ee6449a266c0e6439de4faef7aa3bde3a5baf04559fe43736f745406bd6dd4e4c00
DIST tokio-util-0.7.12.crate 115177 BLAKE2B c6018d9d228ca74f198767ea9be53569bcceb369e4dc9ea10b31e7baa0a4a6368f1ee23532121499e31f2da3f825184ef7f8e00911efb1c2e37295c1ea3ef19d SHA512 df30a9b0cb435bbf3030c1d5bfd4391310b96833acfc623f5343fadd694fc44601fa07663fefa2cfc6719d444632890efb696727d9c1049376fc6e01f1814c78
DIST tokio-util-0.7.15.crate 124255 BLAKE2B f24525a3ec474921cc5d8d1dc12355f8ea5e7747be5299eeff00664ec0f6f6edbc33bb1613f64dc47ee6117c0d32cb6f770bec72f3b0bd549aff392969097622 SHA512 032158c36673c589ba09c52fe37bd0c700956fc4f89a7991f3cf93b04c8a12d51d1e05b8c6f493c7ebae7985e653bc3fb8bad590cefe329a1b1fa94182649520
+DIST tokio-util-0.7.18.crate 140550 BLAKE2B c74f978f9d1bdd662acf65551ce35d735b23909ed25a3073b5170459cae4d0bef40e34a035ce1e2f8bdbf7ba51d230c016afbb150f7df77d9901e45caee3fb97 SHA512 619504b1c7b10ef79da38b99e7c17affc0dbb984dc671bd1ca0c4b1ad3d1d86f80feee67b78fdb7fcf7ea989a0e9bd5d52714467f4881f31ef5f60cb989ec671
DIST toml-0.8.19.crate 50974 BLAKE2B f68987353837b74421256fd9a76134bfbfe93887cfb25145b65b7e6b31ad2c3a3384829a06f50c771a2a0be0c5467c856cc631af69f586ea056c4f15af9e3b7c SHA512 16fdc58d14516e81badbe8c9a4506db75b559b377c9c4fecee79e76007b31a4abfc8c8868bf9159f79c6f7c0218f93bdcfb92b669b0917db7da42b51ec155751
DIST toml-0.8.23.crate 36050 BLAKE2B df3b8a263cffefa8c1d0736b69d74c1ec9bce70e0dd96934366ff3652fd5052362e738f807b2ffe10f91fe6867fe0e3f45770bbe141c8f3995fdbd5233a77a5e SHA512 0da3a5fdee8dd5aa0ad2cc251380f23109c548b514af5b90737446487c9e89860ab5030d4112c88e2abeb7ad229ce085b3375a3e237156b94b27770322a7c7a0
+DIST toml-1.1.2+spec-1.1.0.crate 56327 BLAKE2B 089a3ea3e47f18655db4fac61437135b613241e9df110c72e3e16d2ff782d4d77c6588cf453df0422e6eaf003a75be7f81758c2f8af82663e6280e5543a13026 SHA512 d7b6bae5bfc9163b91f054d36b9960f45bc4f42fabbd4f6d6cd33815863c9114c355bdb5839da61c28adad6d04ee48635401c71a8b9db89ab18a0a04ad9ac261
DIST toml_datetime-0.6.11.crate 16125 BLAKE2B 5afe564b47bc6f94771a15e4ae759225217c43115e501a1507b6f2c14738678cb36007ac426fb3c21c51659a5d48bfde24a28cb7f944b85477380c53c50ac2ce SHA512 d650d916c7d8827b6dc130d7690bc7584d26d5be0a35f94c6a37291b7f2d5aa94cd16762be23e27aec4a7c36271c62ce145a64aedaa9f89ed69df82ac5c8db48
DIST toml_datetime-0.6.8.crate 12028 BLAKE2B 62113366771f22b437b2ed0d3bb2489ae9078cb589cfad2ad2e92c81ddbda48f689e5a573366eea4f54c2b3cbc6b37eaa8b442b6d935b631a992de4917268757 SHA512 d38b98db3b2d4eebd3001d88e2135b6fdbae63b200f7e900c6bb9c121dd3f170e557332bd26f237312c1cbef61666716b0cf550c2d730f86fa7cd9eb5f64a16f
+DIST toml_datetime-1.1.1+spec-1.1.0.crate 17982 BLAKE2B 0552b1cd242430876cbe3f1b4209c21d5b8aacf70c3235087dc742bccc55bd0994013b021a48ba69c4a2802bd458eae56cd8a96999f43affefff0a5f6b2958ca SHA512 74e13bc2f616b407d11e445e3a416dc7cd819774a5d747baede2d71ac42573ea29fd77cedd2648ff1b286b879053e764b8ad07cd9e9fe1164f6cc26f12931808
DIST toml_edit-0.22.22.crate 106387 BLAKE2B c658eef2dc8420266a6928d7ef46340372af2593e4db0d3a67ec88aaf8f601d37d1e9b5bac231a799be8a2ee68a7d98b5f651e9c109d23d8b19b60cf75debddb SHA512 0f98b371f7e27ae7f435a207c0915f942af145cc5dfabfe6d57f2b797efa3e706025401e501fccc6df70c001ce27051381556b8e7824447edd23ea25d047da4d
DIST toml_edit-0.22.27.crate 78602 BLAKE2B 32b8baf55fbafbf6d176ec696f93c06dee4867cc7fab4dae9f01651d84d61e5e98b3eb37adbe1787c125f48c391c57abcc268a04a2118bc0ea37d0567955f8a1 SHA512 844832ab59928dab567b3084f7458a9a8ab1ad0065ff057c1203bedcfa9bafe4c7a36e723340c73279e56bf797dd7fdad6d78e4a2bf6666a414d6c44f750f466
+DIST toml_edit-0.25.11+spec-1.1.0.crate 68598 BLAKE2B 506b9de56f9a3a1634c320198da0d681d88a604f0cbb786d9364aaa92ab252c84fb94e8d7635d07c38eced96601477772812276f431ca60f1cd4c03bdcbb9267 SHA512 0369e40a3ed968bae1d0eb078dce0613c8dc76c50b2d69dc9cc563d96d4df65556dd449d86e8253131deb239e206f14aa208a5e7bc393c9f6666beb2034e896d
+DIST toml_parser-1.1.2+spec-1.1.0.crate 35485 BLAKE2B b45ff5281d25d002fb9807005f6593e218aed03573d99ec0837ae75e4e19c40cf21759b0813556904d5060e5c8c309bf406485766ba14e9b464771886deece15 SHA512 11d4a5489337f9e2eed3f47b04376b0d00f9962a8fe6fa59518a4b5f0c7886aa8416f4e34ba640102a3abc45fe7ce628d1fc5327a4453dd7866a7f16fb45cd9b
DIST toml_write-0.1.2.crate 15660 BLAKE2B 8db23ea7131d61e57fc20ee3e26c62c95448953b9962b63c7ffeed78d1a057b447ffcf2308666b97c294a62e8ec570f77d5eccab3637c17f2dcfadee54d202f6 SHA512 240b04a964fb49f36d8ef5cecd7123018c19a084caa3f64098790b96e85491918a32cc8ef78412c4d8b82034a616706f8c7bf023435a28be3fac3ae00c453894
+DIST toml_writer-1.1.1+spec-1.1.0.crate 18841 BLAKE2B ff11963c7dd3469bbb9042d10c9f201aa78d4cec5b0aeb3943d17f2a632243f0bf0358989c618b0bb8cd067827f20e06dfbb1ba54a0d55e1ed1cf45f3c2c2567 SHA512 f8114a147e81c99b7cfff81c9c337b04d27199259cfa853ff1df4f56fd65d7a2d845d90e21ec51c36069b11f7e4b7a6fbcc69a9594954ec032c75998b2480697
DIST tracing-0.1.40.crate 79459 BLAKE2B 33693ee71564fe5925a63dca351e838dfd8612b4b1e49a33a70095e56ca63287c13c772661ace0e540d08c92942d7cbdc51ff2cce4f4b372164d9aa20ec05dee SHA512 5622188a45dddc0d6d3a8244a9b12db6221f4180944ce1019d18f4e613e4bd113dae5d45fb57dd0754f6e8e153b047cdf00c8f200782bb2b868bc2d423d99275
DIST tracing-0.1.41.crate 82448 BLAKE2B c056d938e001654e03efaec7a11eb8ecfbdfe9af2099271fcefa43f4f4683b40c59f7111fdf7f27df4da38bcbe94f1b2ac0abb6ec3d6e6a0d165b9fbb14da3a3 SHA512 dffb8d3a1375f1b9d5418550a46cb7b1d92b2cc8ffbccb430a38f7731547960775bb42798074186711847d256eee30fb3e74078b69cb36f28c07d9f231dbf96c
+DIST tracing-0.1.44.crate 463135 BLAKE2B 86054adc3043c73510bdd64973918dbcd4a8295dd007a4356e702d6dc90bca8b0f211df5e934b850d63618057fffa10215fb5d966340162117c110ff3e3e1c98 SHA512 383404a78c9bcb9dee947140082420673688dabc54eff334460222abddfc246b0256996ecb456d5b6325c029fcb2e641c95ff659a08366089b8b79784cb28869
DIST tracing-attributes-0.1.27.crate 32241 BLAKE2B a20af0f50a90dcd64e5318e55779142da294ba18d1cd40059a8aa964fd3c92834e03ee563e41caaeef71a30e3f027e5c8d167d90e2844da79e0774b267e179b4 SHA512 7dc59f4234c3bf3434fb352baed2b81db4e931eeb3ed207c4a204e480da734be40847b167b808058d2807b5583815625bcd5153e2bbe79804cfa6f069a74ffa0
DIST tracing-attributes-0.1.30.crate 39142 BLAKE2B d7dc828c9dd73dff54b3b86af9777e719a0acd7f7be9ec9cfe0be95bd1c6d2b3e455659e4823ebb602db33e265292548eaf9769dd1bb9b0a22ed64d53a4bc270 SHA512 cd33b967cdba94dd5f4c5ebb097aef45913e60e93cac1473063dba32190e0d10584c07914eb59e8d0a41142e95b04794accdb6b768ac6ddd2d08db093a3ea0ab
+DIST tracing-attributes-0.1.31.crate 39733 BLAKE2B 5a345c85a36414241fa88bb44cfee5e07b33ad39416be0f05e35e0f17adeb99ef68cd1fcdbb7beed21c1efbeb2020a81a33f33b74c3486aba32bec175b5f9c9f SHA512 6954ce397903cfced12ef495d46885e8320233cb631116b0c35731c89c51d2cf2532c77ed02d9b708375b5555f3580a197dd63ad6899a32c87e34e2da2733bfa
DIST tracing-core-0.1.32.crate 61221 BLAKE2B a7815c46af9852ce62498083103c6d359351f4d33609b4291330073b6abf4b63f5e1bb1a7dfed3bbf4d6913ad5217e96999416261af8a70609408a29109e4db6 SHA512 164f79cacfcca533a53b7dbbdc2015aaf851a16e00c72fbc4e5f515b6a6dedfa464e964810009b54f08cbcdc5a314e50245ac7b1b01a71fce4c63db135bf5521
DIST tracing-core-0.1.34.crate 63760 BLAKE2B 3e4377814970e27524b813177fcd619df50a4ee75e7d1fe91dc61ff191137c445dc9a50a333f11694f728206283c829cc8601631660a2740d8e84f6b74d3e059 SHA512 21ee3e1668310a580d089a95242197f21bc4eabecd2f58c21a5dbbf036cd452275a0d56dd3810aff490dd710cb94bf8d0e79fe80a3ae7e7e0fa29143523fda3c
+DIST tracing-core-0.1.36.crate 63967 BLAKE2B ed35889974aeca741414d425c874232c3d0722aea1740a68f1e2c8054b7dfc11d3c19de078a4a88a189d9a00afecf2eb5bb779a5ef0cffabee7fcfdc6387ecbf SHA512 7cecb6c2f1deeb6d23ab466c376e1c1300dd9226301c112deeb2483eea13f7bb514fe57ece707a8c67450245062060872dd4d7be390462008b369ca3dfc57dc6
DIST tracing-log-0.2.0.crate 17561 BLAKE2B 701bdadd40f1343f3c4901bd8dd188f1dbc0afcdf50807bd0f6df7539635e239b5095696872103125a4d4cfec24af6336fce6f3931363dd5be4f53a09fa584f2 SHA512 0c1f060e8ffb9ff24cee7b85cc2d7d42c69b2f7623a7faecd7422b23b11ae8d5c7691e4635bae76861d444c369d9701ccb147904668023642b223e442e3c8285
DIST tracing-subscriber-0.3.19.crate 198345 BLAKE2B c7083168e62619c856b872570b85b44475edd687fb6d5c3334246622900fcbf4e4a8484c23362fbfb358d6d9f8088f7dbad2e2ed30954aebf76d1b57324b712b SHA512 840e35103f1152e94ef9138d0f03f157b296def538bab6c7464fa7d363aef7734feed196091782dd3aa9bf06c7dc181a2c37149a23f5be036f00c00b5200686c
DIST typeid-1.0.3.crate 9006 BLAKE2B 98de768e71bf1c3fdd62b01e7a5c7976716a7ec983a96a5cc6a2dec52e6bcc61260b0508684ed45a2f7fd06fe6e263c9d7f0c29b1fef4a3e498a024fe5cbd1ea SHA512 3d15a6f554108b2fb9c08ee9679e34565d84efc1d34ffdb6e4a8eed8d3575ebb75176a56124d9554315c93b86a88d1cb619238c10685808376cf968d83b5bed0
DIST typenum-1.18.0.crate 74871 BLAKE2B 99116d32b5317a658526daaf4fece2b9dc8cdbbc30c1e7a32fadf913e56a270a742abe0a0d348ea6039ae74fd4258c702d4626b14071626b7c5d2e2c31d82dec SHA512 c30ca78f8ba2e3e1bbfb3472c01974a0aeecb4471640ef373ddbef984ab37bca87ad4eced8193e5db6206d35ead31ebc25cdfe958f371625eeb97b6664f9c9e3
+DIST typenum-1.19.0.crate 76414 BLAKE2B 8083988e0bf1d7927377112b8939607f32af098f198a2bfcc2c5302170d9f6e5b29cf02d3cab16c1ecd0fb9f0a45ea3c6bd4a4e4baaf2dfdf8f694093300deeb SHA512 09ebcd7a2cc11f422469cf4fe706f1988bcd81d628e2bab3f54ae82b0aa5486d03a4392187a3736c13dc0c2027053387f89ac656caff72f36365c8be38bc7ff4
DIST tz-rs-0.7.0.crate 46486 BLAKE2B e25606725f4373324e39bfa211a920cce49c5290ff14309daffb84e27dc4faafa4d4f400be2804fe46ff2210a51c9368129d3bdb33b777448b9187ba4aae9557 SHA512 8ec210a8708f56838d48409e6af2964cc78276f02ec95251b4b08284c1760e2ef4747eb6cf32a90e0c54daa15f44238971c0fab4535e8d432d70b790cd6f561a
+DIST tz-rs-0.7.3.crate 48104 BLAKE2B b97dbb8a6766c1142b82a8157694565e0bd730664907a015897c8f297d14ff5af0987b400267756243c97c306206b70491b792fd7013a306f2823f1af871794a SHA512 5f7708dfc06fb057954f930e4261d908f942d94fe8f0fe9afcbdbaf5aea7ab0701e84047063325dac502d8d5cdefe9a81c6f371d80fd7607c5feeffc77c58978
DIST tzdb-0.7.2.crate 10188 BLAKE2B 512833d5a600eaf86b5186c2a434e5b2481e3745c2ddf3b54bcdde4a3f8b248304f8db4aeedb883fdd59d84cc916bc184927d7749c22a008a4d9234c65139817 SHA512 5dd0fe6243c3bc19e0b291525816f46a9048c986eb1a534d12e95249e7ab05a7acdde50e3ee89d1861aed0a2bf1843f9674d561f05e0f07818b660bf19dcc1f3
+DIST tzdb-0.7.3.crate 12483 BLAKE2B 2ca2fa092b5734595c40b39fc817989ba4bf9b3023b8b93ebb1535ba29a79bec2c542267e4c79030643220608a974476cce7e14c8e48abaf78fc31699f32a370 SHA512 ed4d76be2f3bf7355945e13361c66f3e74d9df323f6c4a9c017fda8edb3217fbc6f88c9c06a4ff17265b18eb16cb98cf073bf89659e9d3038341fea08cad3164
DIST tzdb_data-0.2.2.crate 247855 BLAKE2B d50518ef641e4589579e75f16b6f6d35d212062bf6876e1825236725a62005adcd9f97a5ac74ef1a349ddd21f947c69a16085b6e36431bb5f50de8d25e3c4803 SHA512 13def673bff23e7db4439b3ab6b999b78e5038833d40d94ea90d3714cdbe3322eb84982f6df46e2c7d5aa6a51c9f5083c55667071dc28052a7c39e7170664348
+DIST tzdb_data-0.2.4.crate 253944 BLAKE2B 38e4b5f8468706fca1be225dbe6eaccc5447cd7c69ea64152851f3d5ec256b4509775d4147c46c75f62a193a90a7f5cb1b6108f1f08a93077f73a52bd3cf45aa SHA512 4789bf98c7a0e8575a9b23e5ba6011be10c020d648640655966974428f9da7c3049631668db6530d39a0dba8b28f63194b6cf75188726f66b154e8afc0014855
DIST uds_windows-1.1.0.crate 17040 BLAKE2B c77914e150d2f0afc5c55680e28ba242238f4f1291948ae492fe63c16791e443ef33bafa6686cb753e53361ce452f2df27d2bf4088fb1ae203a47df3c55856bf SHA512 092c41f6fac2aacd5b83009b4aabe2cfc487cc1ad5ebc8237d9804aff0c5c823d3c079d99748e9ec3bb1c02b8a51f6a22e41441ec9a72c50600c08b1efdeb0ca
+DIST uds_windows-1.2.1.crate 21931 BLAKE2B 538985d68665b40f8e7616ddf5eb31fe9a2eda0b17be271564830057b9fac703d66b5fb7feb52da2e737f7593540cd1804ac0df4f28c8f865907f72c7f28f150 SHA512 a53b16a84147587472a577471f57ab8cf67e53e082f871397e0354fef70301a26f7c1330d5d783af2959daa7a627abf37b3d0b8dbb21f40202e4c96ac7269d72
DIST unicode-bidi-0.3.17.crate 58120 BLAKE2B 9d7759554e265136ab9d95dda90bab84763189d3613522a5cb966ad6417ac0ee726d79e296c8821ccca589ef09a999701149c88a9189cabe0ed7d32902040832 SHA512 cf523ff9a2e1face42da035f81bba2476e80d1154f73f3e34cbaf5ce322504e93a520114a54e0a4b2e5d6b930e508ce31b5d8b4f4ed4d39159a8c9a9c7b94d91
DIST unicode-ident-1.0.13.crate 43279 BLAKE2B b5e935020d1c9f3aa24f7d382f6b73d6510d654a61ce1c9c024e2e365bb817182e076139f370e822573531356fb78ff7499049b1f29aa1e2f4a2cc74a955b47b SHA512 5ba884f39debe9c8eb0b1d251ca713f7e2bc191d211707ed10cd81465487dbdca53914c19e131edfa1da15af132dc2c346260c3969c61e3747b63399ccb1cc51
DIST unicode-ident-1.0.18.crate 47743 BLAKE2B 517ab42a847020515b2b871844d0571ea672340f89a762631a791eac18935ac122122fa5566e58b99ab47de179eadb5298e8ff1d05b123c4e93b7fa989c8e31f SHA512 d11f89fb696f9e2953c96a40b5478832651b268c83b9c7a700b07e768e795d6e8dc346597d1226df21219d36866768d1f640bd8edb68db8bd3d5d437b2bfd324
+DIST unicode-ident-1.0.24.crate 49298 BLAKE2B 34ba2906a3ebc06f52a4ba77dff96a8f3fb977718d260886fa9e051c5830765641b65a63977110f3a79f31fa177b385f81b01d56c80f6a0324d36eae72e2ebf0 SHA512 7be712d8d0075ac9341790180e312f66264d3e0255c91b38df0951baa5e446dec24551bb2125a66a1cb9b6ca2f1ea37c0cc15fa3dd74f398ecf4d5302c7dc259
DIST unicode-normalization-0.1.24.crate 126536 BLAKE2B 1d6d535a1236562918d2625172d38c261854cd8c45cccc81c5d5aefb052db5d0e33981d95f5c87e8760cf77b3651c60b7ec1762421a7a9caa72fe7eac3f562a0 SHA512 f7af59688773319b9d1523955ce9b82e6735bd72358715ba5c056f41956ca050b6a612cae1b39199cc089674b3c71e4016d85d48167277c794c5cef3df881754
DIST unicode-segmentation-1.12.0.crate 106323 BLAKE2B 268b60aff6694434f05afb7e2b8187eeccdceb77460f8ce2ac0f84d470f8a4e03182ce3f7906177cd2f00f989273a7e69061a763006245f0876bf21b15076804 SHA512 55eebfe5e9972b39d7c0011d80eb5f517d636de37870999119a3d8f064f21f67b66a5ba9761d562738b05f220e21d56b5be7bbd9cc51662994e40dd67c38f946
DIST unicode-xid-0.2.6.crate 15744 BLAKE2B b1bad25897717f6346f988d5a7c90c51fb842da113f19aa434a64add8f2e637258d9fab0f7b871fd2aac02e83c68359fc679b326232793cbc804523e2bff5056 SHA512 f68e78484479a5341b14d7e3391e691265851fa00feeca53af745479af6aa9b4ce3570456df785c8362043db9b04e2e57f9bad05d8305946f16af405bc611764
@@ -503,42 +666,64 @@ DIST universal-hash-0.5.1.crate 9146 BLAKE2B 9095f95faa8ed4128c3787226f3899acec4
DIST untrusted-0.9.0.crate 14447 BLAKE2B 8e9c3ae09435af0885bc4a6e3c8943805b48cfc00bdae228c7c43093254e1be15d7005d1026561ff369ec37865d8458203f421a9c89ae3db077f655449621aed SHA512 5929e4079c1c2ff933ae8d8f59a2ecc7a424e71a20d1b8821f75925af68bdf82604b024c008e5464b02e25ff093e561a352b685e755b3d0b27e4c30254689416
DIST url-2.5.3.crate 81624 BLAKE2B 431a2594ba962fd36f7cea3567d689f15cb09548a8a2b26a7dfeb95ad5cff3ca21d22145436b23a35cefd676002b097ce271588be1c1bce24aae22c372cfa9a7 SHA512 f9dcdaa395d2ecc9f4968a440cdbf59b49d91787bbeb622846f915c92ac51a402751804928ed7bd52e6980cb406ffa64d11d939065c6d261c4979ce199ab5359
DIST url-2.5.4.crate 81097 BLAKE2B 74943c63809ca41a526a146bedae66f91f390fbd2ccbd90f9397d8074ee7ec26535f0f67170eb1d7232e139d8d795fde99be37f53f1bc32c6a6a4d46aad1369f SHA512 8f1d62bfdd45f52fa12ad657a521a3478d0ab54d187346a29dd59cc66a0f140ca96d850948e09f6316f08b44b3fc68526c58bd620fed5d065b7e8528df3cd46d
+DIST url-2.5.8.crate 86512 BLAKE2B f289265720ff9243a27c371a938abd00e2c458a440e6ffc30cb0fb0ea4aae4a6b82eace80c3655a9dbfdf2c9428a10844cb3fe6299cd8820e86a13e5cb078d8a SHA512 5848b47d63ae9c195fd5f82bd8333c53cb399f383240e84a606c486d3dbb37db4e268b01a147deb8cdf5bc534a4ebc7b11391e73f81dc3ea3ad7254507ac0c6c
DIST utf16_iter-1.0.5.crate 9736 BLAKE2B edcd9776113d4d2b267a9cbd58cab11c5497ff1a8252c4e695de619fc8e5eee1595343c857651774b3670d13392144e9d7df579f2e226842aa7e4e023a76fb65 SHA512 44dcbc5a7db149392fdaa31862be240f78fc5d7616f54be32cfc8f3adbee310e8681ae1bbe6edaad8a7fe6e7759dbac8ae4f69d0dbdbe5350c21dccdbbe975fa
DIST utf8_iter-1.0.4.crate 10437 BLAKE2B 1e7a8b9241ebbb62cb497542b970473780f735010a0af900771a43abceae4e7f362d21d4f79f7c00630e4549400875ea17574b2cbe4f5ea19e8ed428e3b5577d SHA512 a72671995b3eb295581c60dc632e4a25ba257227fb5d58a8bec322428b6d69529bba79a6f02b8e7ee6698b7779d9d6695f5badad73e07c254b00c9d6256c9090
DIST utf8parse-0.2.2.crate 13499 BLAKE2B 095b5d219ab8ff04c06fd6303e03d913ae36a57845f0b2ca3217a40e31a54cb0fb5ecedbde165d28f5f60f1553d8252986d7098fa83befc84a7cb20bf3b76144 SHA512 f3dbf78fe924f1dc3cf9498b6e43fb10174699463f31091a7a8136d8f31ec84fc00e80e3d8551b7e86257e8b3573cfddb56fc0de797fdb2cde0e962a8f239266
DIST uuid-1.17.0.crate 59014 BLAKE2B e036e08424dd6817a99e49906ac6ea1b100ea354ebd2ca631263210102f907b57ecc31c4cf83197c153fd9561368e0c13c11aef9ad7f80527ee4b4a47e3df6e0 SHA512 7ee7ad0603ebd11d221c7b22aa7743a034cd1078a76479cf6f9768e1f664002674aa6cde446831e133764c0d5e67000abf00ad4bacb38642fefc65b0547e59f2
+DIST uuid-1.23.0.crate 63006 BLAKE2B 77bcbf3c658f0bb5d09bed862b9a8720110d62094a2bf9065ab8f98e6c458e4213767a9152280bdd71941eae7077036deae56adbcdddc14fdcbbac4cbd030061 SHA512 60e476dcbc407a0447f362ee019abb128c0441503e0adacdcac5685ecc16aa680faa575b25fcce147e9c49bfb5b8fa04964a25c5d7e4e9870e0078bf8f18fabf
DIST valuable-0.1.1.crate 28679 BLAKE2B 33a68f81cb0448fa737fd7416f2dc1f0e4f171851692e5f759bc375ca8ffbe6eb53912823a59da44228029d379729b669e8213f00928c9b1a182c5d26c0de8bb SHA512 d8a4bffdc8a166d1ee11b87dd91cd68e5c898916b14db7039ad2faaad34f4bfef76f3fc3d17d6e7bf05e495778f7c9d5223fbf45331bd114f93fb6ec950eadbf
DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172
DIST version-compare-0.2.0.crate 13942 BLAKE2B 054f7d717ba953f4dbda226aa22332fb40622a776a6f53450831f027273e5a64bb8e87d42a9af1c64a6f035afa76565309c5a8810a20b8a5e51a7168a2e91dbc SHA512 b799c1713d4bf7af00f9c6d562d39c5e916f37350c2f3f57119277725b81c93246d0b1410d4ee981694bbbb731460b6512a813fdde1cf25949cd45fb3e70bd6f
+DIST version-compare-0.2.1.crate 14245 BLAKE2B 92e952cfb544ef73c4ef0fd44238b414fd66fa71bfb3e0e0d2c849f5f4353570a0a9b8dc8750c5c30ce4e4c3f50a9becb188ee96c383a3e3f03b23349c2415be SHA512 43e6aa9e53c2e8b21aedcf3704aece741329bf85508ecbc20e4ee35651d8a819d9e28c2102172a5fc335ea3124c379eb5507407c09e6532124a56a3aaa1097d9
DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db
+DIST walkdir-2.5.0.crate 23951 BLAKE2B a2d3a973f206e94699adec0263dd5e211347722cf3ab82536295019268b3125084da5dbcad818070bfdcb6a5de08da4eb483475bc225a829f58a1e3e040b5fba SHA512 da36a121dc6656942dc9cd9887fcf4f6eea7750354ef3f59c7c25d836e7afe06f33260b4d55d0d99421104ed4ce56ef2a1f0f4c3b713766fff90548c21793fad
DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
DIST wasi-0.11.1+wasi-snapshot-preview1.crate 28477 BLAKE2B bcc773ba28cbe8d820e9e9fbb275fb4451bc7f39b3bd88bcd93850bf2bdb5300489bd8eca27489ccc5f6269b00f4e1b505ae3a33a35d708cd5a414ad307be149 SHA512 29e3c903763db2580a15f50db487c5e1d4e90763e48d90a5b3f681e468a24f9df1a01773bd1ffa0e3cd293dd8cb4d6fbabfaa63c0e13889c811a56f4554ada49
DIST wasi-0.14.2+wasi-0.2.4.crate 140921 BLAKE2B 6b3ce7cb8ed888ad65053352b02b827bced3b59118d546ba593ffa9de48305bef62419751036e22b0f95c22fe34ea1d7bdf7fee0f6981181026d1eedfacf73d9 SHA512 57e47ba27fb2b66b34f017c85743b99687eb8bcdc1312fb36e30d0c501e670f00dc7d6113730d819364abef5e8ec04d95f0d1150ec2b6049e605fa8bbdaa2cb3
+DIST wasip2-1.0.2+wasi-0.2.9.crate 129778 BLAKE2B f41afceba3c586d12829d2c59f45198c61ae04a0dfe72d6bad6176a3d38189a097cf633f34accff83d7ccc238a35a833381e98291e5fd37f2f4d6e08138af2c4 SHA512 284571c833a1770fcadd9a70155d8b507e9f7f0590015e1a07ad0512ac0a7f0ca4693ccd1aa1ab27e74ec58cb75f314770b66562a2167cd6b5086a7871527eb1
+DIST wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate 123354 BLAKE2B d8251ea31999f954eb1264bbc7792ba16a90aec3ed3112fe84b9a93dd8a0e493390b899be9e5e215ebebf644697d3bab680cb07d5e64617cbb57e6b2a28ae95f SHA512 fb136a5475fb4696902d4f4be43e0d5d28cf3bc1b6c83e5e7837499ee038f995c9f084064e2e4585dbc3bd260e0c7c95371526b04933f2c60fb6ce302416215d
DIST wasm-bindgen-0.2.100.crate 48288 BLAKE2B 8fc4f71c7d6cef15f131a9bdbb50e3eaf9f3894a5b6c1d73876824efb731b46e8c3449947893103f23bc15cad228a1b8bcccd45ada20df53b3f3dde6e419c184 SHA512 2a8ea7ec669efe10f5701dc3b2bf496e33afa70c31dbc65fda5191c9c28ddde54fa38bb168a41b0319a4ff0bb5ccd897ce51ccd7e523e647b3544fb390f8a4e3
+DIST wasm-bindgen-0.2.117.crate 61596 BLAKE2B c27f4e8965e4f802521d273ddbadd9fd4fb7582de15bf396f6cd098b53f55ff62cb28dbfa7aed8cdb2f9ef3dd41d5f7e35cd0cac5ae7c6a9e77616cf2039f68f SHA512 7be5118bbd15aeafdbd58af3889e7cd088031d3f1887a0bb5e86e808158dedbdb540f9d513db71adf0874ae93bc6e845ff70f59b98862ee1b76e8ffb53cf1226
DIST wasm-bindgen-backend-0.2.100.crate 32111 BLAKE2B 6bbbef709753e22230176121388a95fdb8f4dd32e0755dce5bf6c1127c54a236af292f319d14b5cd97bdb310fee65288e8f404921b83693e287164cf9d589a2e SHA512 a2ee30c1185644f989af6be34e93149a791c05125de24c0ff91c320f683f6f5d939fe42b8ca09d629096388a39256469f8b96a6e35722ccfdbe8d978c9a51770
DIST wasm-bindgen-macro-0.2.100.crate 9663 BLAKE2B b8a3fc6b3571f8caf106a9e9f3d9cc48b86096d714c5d0208f03d44d47003b3b26441b5cd68bcd49a8c05758bc1b984e460fb62ab439ff2d68c72766ce20358f SHA512 a1942f838eff5fd54406b573d81fe18f262df48a19535245b1a46cb31db2a022746e861d72e5286c632969d15d416655460d3865309c4947cd3d7965dead5c42
+DIST wasm-bindgen-macro-0.2.117.crate 9279 BLAKE2B 74bac5c375fd70c682a3fb7f80e45ec237af990d660e9d6bcff3ec117928edcb522c678abdda02de762ae1f593f8bb0a3a71800d1ed6f0e9383194026d8eb97e SHA512 0b736aa543abf13fc9fe1ff7159c22a3e1d208e11db68b229e807915169572b030640fb942a4f3327db170793d2b84d8268a19adca708dcaec90a2700fd54292
DIST wasm-bindgen-macro-support-0.2.100.crate 26243 BLAKE2B c18e35978b62dd2822ba8a4f6955cd5154b2a0d81b8e8032c2f8bda42c1c25f74a13f3e1c3a7bf47a823de2517a237e6a1aef18b189bf1f2b934123c58d1eb34 SHA512 0d03eaeda37c9c6ae06c0fa96e872b54780c4cf545b621c730dcc113dd59a8cb6333c5e3818f51365f71913b9669d8a870a06e70729722d03c07a49cff8a4fdf
+DIST wasm-bindgen-macro-support-0.2.117.crate 64391 BLAKE2B 8e35a4533f1c2984bb42e09402148eeca3c51a5e9f4312db4996b873c91456a3ca89eb35ac573e1711f46541bdb64c082365c6ba478ca31ac04814d14277cab9 SHA512 812d7c4842127547a0a0ab852036e43f9dfdf9cfce0535824e165d3016485517ee8cd2ce4979cfaee8ed389f8804ea654e72841873e28a1c7266069c72d0b358
DIST wasm-bindgen-shared-0.2.100.crate 8570 BLAKE2B 886fa72cae891d4c2311e12e28f0a7bde9bcaca893603afa3428a402726b3b2bcdb6cb7dca6fdf983bd8fac5f049f0543537f2161318769b43c7eebfc906df27 SHA512 3fca8ddd1c6b2f66f70f6608c9b341822603f1c0dd71d47d27c6be8fe3f2c88598619946627720734b48cf999cafd0c63a08af5db28ea78a1538d2165a5fba61
+DIST wasm-bindgen-shared-0.2.117.crate 10541 BLAKE2B b8e8bd84ed54f7512d5a96ba7afadbc04e3e1b045a5d11ea39cd66acf7de94d1dbc430313154cd9e84fb0e1c086520a8b0475c797eeea5240a86e159b50d6868 SHA512 74040fad00dc33dd86a5a5bdc6af549b7a31c2c7de6023547af0ae4af09192b48e4d3e11170ffe1fddea7962b7060144139cf13931c217af9e3aa61001593bda
+DIST wasm-encoder-0.244.0.crate 85804 BLAKE2B 6dabb55c635d13d1d56711a43c655dfcb74bb9f0be10bccd412c21b5dcd63a46b73ff40955ff28aa0fba9341fe22161c8d253762afd587eaf69a7ca49c06e285 SHA512 ab78662abd6bc9edcc14531a87a848eb6c26081ce9bcb9ff15415ceecb48dad98ab6066638947780c65d7689d11502d4dd2353ff3462b4f49e1c1a8c00d2c1d2
+DIST wasm-metadata-0.244.0.crate 21500 BLAKE2B 8da1035b6302c23b00792d90153f74f35eb9cbe913366b43ff7e5d81481c903396b32ad54a416a14b40ff8d4ba329c6fda8c203e4b16f1ab80b3bf4535cde72e SHA512 77677c68dafabacc9697c6090d01fdb171c33ca1663c86dcd3612630b2ea6c41232a7cee125ba416d373edb34ea8e0926d164012461e2ddca8d4d18597feb855
+DIST wasmparser-0.244.0.crate 265607 BLAKE2B fb982e84536afde140d972614bf6c2875ef169f0b68010393e61d8a1041e57d5355e8f0a57df0681ce4159f830e30a59affbd733656aa9c633ad959225007b11 SHA512 d1a1f549fe93e11cf4155a8f5840fa444505ca9184e28163917bd8ddb1d53cb4d2be0335e183ec24625a7db22dd5d7e22c93c697bdd4de0d537b54af4ed7d834
DIST wayland-backend-0.3.11.crate 76980 BLAKE2B 9d612da6b2ad074055ae9204e0d5c211376dd12da50a5ca897bc5ed037549ce0bfccc20e4c3af25c41097dcc9dd1ad1f81f156a81cf8ea5e5dbeb9eac5f0994f SHA512 92388c44f6b2db9097974580bbe0e6a3c1bc788852da9791fac792ae73d067b10606d4db86748e51172a1a0b8db8fbbcba7ce005c089b73603111a22b09dc834
+DIST wayland-backend-0.3.15.crate 79957 BLAKE2B 5862a72f92a1e42a4a1aae61b875ab8915391029be7829bc67aae37d80924250ec3559feb701ef294a68ce636ca55e9832245d717dcddbdf2dc8118b1c1ed75a SHA512 1a35c2099d985e3b3d21d5da4fb42e8532001af95a10fd204cd2bc7df11a9a43acd2bbcb7331700a96fe2217fde976877cae009980e78c924b5415358343ea23
DIST wayland-backend-0.3.7.crate 71771 BLAKE2B c01c0112f3cb48fa99863186efb144564edbbb0dee07b1f96f0a433c7d843a15d15504b58941cd325401a025803256c9fa14a979bdacdb0728042bc29edc6ca8 SHA512 a8542609c5745138dbb0eb88cdadfb53d29e85b6646f418c06b572cc336b27e44051041e5d86b1276b5925a58ef3e0a9fb9e10c9776093c3e765c095d0d1c23e
DIST wayland-client-0.31.11.crate 65932 BLAKE2B 05ca397b71f0893a4109091fdb493a83dfe368594cb0922136d92892a2238b6118dd226de2db86e4364ded95306da265057863e45aac535037e72a06067e0186 SHA512 15c1291a67ad604dbb856f670f0954cc7b11c6d4090dd7a1be466dbd8d8326dbff4a87a106ab34fd9a95da7672c626436d6a5840dba641591ed7c135fc4259f9
+DIST wayland-client-0.31.14.crate 68263 BLAKE2B bcdf1797f45320d2763269b19985d86a88d8b68d2ffcd63c805130f5e54d0e9e8f76519cdfd5a4f61c613342671b6a5088472d9e039e1c4c37d63a7402b03469 SHA512 1b33835007734d2bac5e8787c6bcb80f46beea68a676bfe3892f4fbd7042f08fad912c6dd3abea52b18179956b064ecb191c60f514a7e9283214d3a5b4026a99
DIST wayland-client-0.31.7.crate 64486 BLAKE2B 8705a1d5ba33c51a1e7be6eb9c942090ff7d519771d3fb32fda1069be2da4d0aa3393e00a5a8c8a03e5e1231d3343d2a8ce6b2d9df3517dba647e3d4a182ed0d SHA512 205a8e84af4ed9092d0980eac3374feb06c4c2ff82f70c4ca51b44a4db272881096e72062515f0432719dbb3717589237c1bff3bab3a1f0c96e2910d053f50e7
+DIST wayland-protocols-0.32.12.crate 156132 BLAKE2B 9a88613b63e526f4c79c3b45867ba97e0eb272968f19a2d900c57c93d1abe360ecb6ab8e3fc5cfef024cfc0de53d53b70aab823c0204a9410291adb64afffa86 SHA512 05094375bcfc76da088a4341113f569723b62038f98f58ca363c9be89c2012e7e66c46e1749e430ae1e4b7642472a5fd698f1561f9c942274daaa4aa5cf14def
DIST wayland-protocols-0.32.5.crate 176196 BLAKE2B 945bac8768b9874c2708bf5a04e52cc0225675f880e5c8320dfa498dc759e817126326c874fb0ff591b87b416b003ef450d420b59a0a6551a7b1e7837f58dd10 SHA512 97e9db749c0df9eb13e655bdfdd84fd0864fd7d2528cca25f5ba34936de552a04ae3cf58697d39f5ad4d25ff0590d131a7fed2dcb5612bccb6b8fa412c9c3c39
DIST wayland-protocols-0.32.9.crate 155404 BLAKE2B ee3b7311d7a27b8f5df251d1b8c3c4809a173992b647705f946aa4d04eb27cd00206407f3bfd051650860ba0d8d5582d5ad7a67d94465b4c3121349307011a86 SHA512 0ddc253bd49fc7b1445c78eee37dd9a61058994369032d4abef6905761f4b3051681f6220b3840921c6727b1313c2c90a8c21be4b42aaf09a72c3a52058e8dac
+DIST wayland-protocols-misc-0.3.12.crate 15769 BLAKE2B 85bba946fd317111b0c81b09f5a64a07c21546c514c3821d078531d7a2a2a852765f891e016ff5d7d88b696c114ebf0c90db873a82ada50916ba90141d8b305f SHA512 2ef66ae25d4a025aef99e95ef01363a921e78714e09c60308a5e86dc0be62f804e2f0ab8ec01b5c42fe3e3683c3b068e671ca7f5b76d3ff09fd74055dd921f1a
DIST wayland-protocols-misc-0.3.5.crate 13880 BLAKE2B 6f0ca3731295688c8e9cd3226d21d492566dddabbc2653a78f0cea1fd8bda78735e42e650c48aa960f971ff39768d3a8e92a3d5bd0a043e31b638ad83a4bcb3a SHA512 55386b5b1c23a24111cb58277833fdca06648f1522e3d8e14026f58e61e4cd91cbc3bd8b4ea9f733013aebfa310adb02133f6764db60c11282c1db334121e30d
DIST wayland-protocols-misc-0.3.9.crate 16234 BLAKE2B 6365a19e3bed32f419e7ba6ccb0f46bce96228e07dcc461082ed006892488b09aabe38dd7a6bd3613f3b2cc8caf16ee64530993d3382b2b4b3d215db9240d100 SHA512 510edd0d77d9c49794fe3bf6676e3d35b25907c165e96d25ecbdf91b6bd725d1572a0be0f7416348ff73fad1a15dbabae6c3a25b28202c81ac907da58d8ba60a
+DIST wayland-protocols-wlr-0.3.12.crate 28366 BLAKE2B ace54b74ad8935f79db93af1c118f0edba77fb98b48f2a5ff2a15ab1998a825b355a2a8204f4b2476de7f5a896ceea7f75c644de234ef7327304fc53ac50bce1 SHA512 5457b27ba75fe19d1df6c2641c5f506fd5533701aed33d93174735cae453d7a8f2d589103a079d91ee47cca268c1b663262a171d9cf2b342e0962859b87fd3a9
DIST wayland-protocols-wlr-0.3.5.crate 26282 BLAKE2B cbc12e0e0cad296242da02237582e3cb1fe42c69d5c29bcbfd7bbdd237d70b7f7cf9dfba17133c2efa9e125b4341b98581bd4e603d802ac1c08e93c2465fd58b SHA512 689640fd3209ba126bb62b312c6f18094444f3c051a9b209a0712f80f6949a84573b1ed886e9a693502008578b705e2399d663e6c672e7e356f87c43e045054e
DIST wayland-protocols-wlr-0.3.9.crate 28723 BLAKE2B c233c9f7e8c1d93d32ae609ea70acc1c563e224ae969dde8610d50edb3a00ba9c2bacebbd6239635bbc30dac88de609d34fe69ff3a27716002b0a57b04315f34 SHA512 02681c1c49846530e67674334990f73775d4320348865be043ed575308b432b3a24790391d2186ed161c5982a63ca1a26dfe14f0c452df386c1be19a55fffeeb
+DIST wayland-scanner-0.31.10.crate 37213 BLAKE2B e3a330ad41dbd30063ea0ed198e454ff14835a709718f36c33fad6703b7d9d7ddba209e9373358245a5a01a2ae1e3ad4883821e76428df12d4416fa46bb90f28 SHA512 43fdb04be69ebfe3b0c9565b01106d5305b6b07c606ddc6ebb4b93b7326a925f013674c55394d1541cab406cf79193e73a8eda810cb6a2ffd7a1f7571510e14f
DIST wayland-scanner-0.31.5.crate 35779 BLAKE2B 904a811f9903805a00c2e55a7c7a5eba2b3e0b10a04275fbd42a9630d828ccd3031c13f65f2b421fd6879916d8b22e8b6963681eae1d0aae5e10b9c8c21e7a71 SHA512 50c269c98cf2e6cb8e68e32894d3f499d12bbb208471ef05c29da97f5c6d1dc682813daef56d6e2635360ef1a9e80bade832bb0ac65cd6ca473c087278b73994
DIST wayland-scanner-0.31.7.crate 36483 BLAKE2B 4a15271b67e26d3b5f24bec156a98f270f81f6338f1fe8063325f2c74f1f490272f83741d7f07027995942c104ab5d96c4e9c92630188ecb3b19a2f1e515abd2 SHA512 863999573c85edab6afacd4fc046f01b4154fe238ccc5955928ec68460915f2966bc66e48e4257e3eae8eb707892ff1f0f856a1ba176ef55ad283e13b18b2ee2
+DIST wayland-sys-0.31.11.crate 9727 BLAKE2B 44962c05fe405c287553c64e418a3cc85a898c657daabed5a3fd851dbffee48a74a6a903b6be91a563637751d423dfa463c1a5479753ec5f818af738ca6c7f10 SHA512 007d476e11315ff7e0feb0978b1d710755353b27589028d3703a74d99ae6ae592c64552eb9dbfdf90400b9f545d8249ea7f969417bb442fa68c776f5bbcb2436
DIST wayland-sys-0.31.5.crate 8630 BLAKE2B 82662fb5dfddb9650e4b6ec3031859d8840add7084c6d10a6e43e6aa5aa59c53c85124bb2e9858b430c5560b34b74d67f4259b24d7ebeaaae1fa92a7d72dbb96 SHA512 bf9237dbce8f55cb5176d2cab1769beff95f9a984eb607b5460673d69631b3346564024cc8f78f0af130cdd0f070d66518a903adf8d63bef8afa2aee06569715
DIST wayland-sys-0.31.7.crate 10106 BLAKE2B 5cf0cea5ac83f09b1c2bee114a83f408ed6139ee64dbdc377442d76aee90d7e1c9bf0ed819a25d6e76de666525c078d9cf124f94f62797310c7688a4e4177605 SHA512 348da3c6af0ed6b075dc60cfc15eda5a0fe56fdda2277347b113ce33a09e1c3a417f4dbcce16c0476ea3900d899623fd0ca258a1724582a8b4ce1dad08396b98
DIST webrtc-dtls-0.12.0.crate 146675 BLAKE2B d92316e158cfdf6ca535cbaf38e007f9883e1141122dd110fd47b8b4c723a223dc65b718d88e5045d7913d2d82c11ddcf41a9762f7c97ed8b254d4b5211b3dac SHA512 5a84c3d19c5bc63aec54978ab08a7c0a8d7a5e71f98f848e301ab6eca5565df46511e8e0258b0f55302590898a085df93699d768bbc519e08736efd158a8f07f
DIST webrtc-util-0.11.0.crate 102771 BLAKE2B a33a11b801408ead437a1f41da3e7adc026525d2e54fb44e07a539e13aca629a9a26c3fd19f111740399cf9a2c26e25c162fb54a905b6a5c76aea301e6aab76d SHA512 a04c37c4d77f7ce90fe76709376d12368e7eb7fc65e0814affaf923d21a18f937de319df0315604c4feabd12ed69338c28301db53ffd0996151d9b98b2e9295b
DIST widestring-1.1.0.crate 85046 BLAKE2B 591f8ba6c3c45721d342fd4668805c19915d500b2b46b8e1e75a485ebc772db187acec791205415e5cbf288ee70299a5813a3185d933443d426eb61d7fc6003f SHA512 a4feb959e19d5238e89b0973f040b26849f896e7e9fd567d0e74fbb4972958a4dd76e74de5ea8d407b74cff28f20f9c80446488da6abdbee38aa87a94d683435
DIST widestring-1.2.0.crate 89105 BLAKE2B e95a53d53ffb3980f808ce041c686526ea8bcfd1f2efc53651d31b93eb7efc80330663ac5c42b219ef6b88c39f57bf3c5c96bb68553193f85213ce0bb2b538db SHA512 004cf0367fb49802fd6c1eba2ff7bcb61f49409fc984e0bbb0c833a7721729b09a2e2e5c67fc0a4b1c36869679799b14fc2be4fecaff3c9d0c1d6a7ae7c5f148
+DIST widestring-1.2.1.crate 90350 BLAKE2B 32222a2c459ae7908074a19831b8e79f81c831f1f43ec1af95337f439dfd260f21da983b69345590f67dabd99419096e0d8a9935146ecf5af04538ec12573aeb SHA512 ca3b9557fa14213cc85b682b2970f2196cdcc512423613f3ae2156830efbacde1da22fbf24385119b0e41584d2e19b237ad8d4301678f21e1be70f6eae781f09
DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
+DIST winapi-util-0.1.11.crate 13368 BLAKE2B 164f49c84952ece6e566a9a23f32ddf34e16f3930ff531f8d7527bcc18768c9a118cbee748ae6a753a172b4ce8d0f22108142382992b2918b442387ee5904545 SHA512 cc1511c004c2a81da4d7a0414973f09ab711033fbbadfd597f56df2cc6c99b3c1822f0b8de1952e78400a88462b9050acd85d2e4b36db72254049a2d6f725a01
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
DIST windows-0.52.0.crate 11843715 BLAKE2B 0d35225f5d61f71b0cb768f03825031101e05c83d7f12e05cb17b14ba28e6bc6a3d5aaee5ba07e54c1a773b6eadde4ce3523ab87e8e313e5578e2de01a3dcdc7 SHA512 8a9d443cfae3b44ab50bdffd70b70ea3b3d536f464e4beb7cfa9e15eb4e4505cbac20266b44d589bb7231790a87f473ead6d2160b8cd18d62f31b78bf61417da
DIST windows-0.58.0.crate 9744521 BLAKE2B ad865c866cbc2825e35def7bd21c0a9015a87b8b9f1c01aa7b6a4ed49db8c8806e1fabdef9f729860d1501e79a4ed4872b19cfc347f5cd4c71d34baa3e14d052 SHA512 c4c6e4af6f6c4527325262189ef0106df5a1a0159c3cdab8d2364a0d7f060c197f109d2d021303779c8b3ff3295d13701e6fdeedcd67c8b09e9092d3279d2d8d
@@ -547,55 +732,81 @@ DIST windows-collections-0.2.0.crate 13579 BLAKE2B b6ba4ce0acf9bee0fe8a20ce1108e
DIST windows-core-0.52.0.crate 42154 BLAKE2B 9670bf02261b4ab2a24eff97dad11e305deac823cacfae286965b62b11bc035f19a55ca710eaa4359c8a4905433a94fe62a836b77ddd68f244ad6ac2c9657f58 SHA512 0c8f1c7e63c11bdcf1361150ecc83abbfba8da2c6d28523799bd286bf8aa1df61ffed19175e8cb3ef516a9afb6248b640c2101a2e0c09a99bfd7a18c6741bd36
DIST windows-core-0.58.0.crate 41022 BLAKE2B fcc1113ea97fd4fb889a8ce1a03f6cebf340c2e6c26136a4185860a98eac3585caba7269cea351c832e388c9c25974c7807fe1929691ab39a14f1cf56d9d869d SHA512 d864e373a3d04edce84ec133b98496ffdd0cba2fb547ed6e5bb7f717648f4fddda8fe4af73ed24a9bac1e3a44f1031de4ad145ae662dd26531ed875317d4526d
DIST windows-core-0.61.2.crate 36771 BLAKE2B 0f24843b8764dd9eab2df52d65b837ab3b0132a4cc5e4ba58ac21853add8294abe0e57f9e30c6419eb758652c6aabc808c79cac35014e963c6a392f06ece58f1 SHA512 02d34f3122dfc83e385a7f865e143ca13220913e04a09b8abc1eedecf97fd8665963557719a0c09790a3c5bcb4969402a659737ec23cf47b86a7660338cb4ba0
+DIST windows-core-0.62.2.crate 36932 BLAKE2B f291939153338efd768bee7cb3891814a1d46ed5cac1e2ea72a7ac66613842c02e1de89052a53e8b164d1055d9d4a138711929af897486b3a6da02e91aee3103 SHA512 b3b3e95b7ff6df91ebf866f8ec9c5e8f67134a26f1690d286f62fd756ebc5e2c59c583d4fdc213e5aaf6834f2693329f3eccbee83fa0567663cfa7d9d9ca549a
DIST windows-future-0.2.1.crate 17532 BLAKE2B 3302290f69c896c87969e01fc87fa239fc6f1f60aba3104d02e71b260eca5891f5bf3443d42a3cf59d7b0a67ee3d08298d19178212bf70a0c7f5fc2e6a5a2139 SHA512 a605bc57eee3f213ddcc0c03552df8793c0d77eff2101c8cfb5b901c8a296156643a5b0cda812f781c48d886a1a1205c08b4cfb472dfb60e6b479d8b09182dc2
DIST windows-implement-0.58.0.crate 10491 BLAKE2B ca5ed4a45179924feb41b319c39121a22bfeaab36f93c8b9d6a26e399b188019179b4e1a0079cbb8fba80f88b8e174d3ec036751915cc3d258ba58c0b6ece332 SHA512 34c57da756632272276c051d3d67ff3c00ea7bfda787313f0487d629135a18dea52ce4d7f887d7e6d56e004a6efd0da6b00496ce05e413eabf69970ed64065a5
DIST windows-implement-0.60.0.crate 15073 BLAKE2B ee01abf1393df94e57860440c2b768ffe0469628af014df24799947c923a7fadcce652622c29e6820857607f8ea4024c784021473ea2532e2d51c60d7037600b SHA512 e0e423629b17edd8e7a202170759dc07e51eac3184111ffcf58e2bf8c94cea5c9c50015789873cad526b5a0cd3a12890461a91cdb6a04b0ad14926534e0a6d76
+DIST windows-implement-0.60.2.crate 15325 BLAKE2B 1f4e5b6759224a74f006c3bfb9acd3bb5fb111fdcf6e4f5e838ca10ac200baf48261583386962d357deffbabea4f67f8e257b8ad8b01b5aee6fe67f3822a7c13 SHA512 212fd6c1f25da40f2131b07ce1c0a34c23177c4666bc518e00a9b4f2bd23c1d131bac565fde531c51f21167f9eb1591e381fc6bc44ce952f6945bad6547c1579
DIST windows-interface-0.58.0.crate 11246 BLAKE2B 347c0f50e8bf0f93a1cd82aa194591b982902cffe178e84ae14e2e77fcc97867f80c6f84fd93be885d241da734fb428c82f12d5b6c77c55096f91508f5c2ea45 SHA512 242ae57290b011330bd9d9bad4f982209a94781cd3831f0991168b70c763c50945a67dc80d02fda0c8149d22090124e44c0fb3f20ff7264d0f4adfd1d692cef7
DIST windows-interface-0.59.1.crate 11735 BLAKE2B ecb776c43d0c1c8e635975a141ea5c3e04639c10058d7bd55e8408fc460def54feca0984bf03504b004f2403b7b62a1df14f31ac2f2dc128b9b7f1e4c373fc87 SHA512 2aab8271746f67998a893f97aebcbb333b5c83d0ba28931b4cbd356c3897899cdab0b58c4fc82abddc1eedf758fadc6880e8bf35340929827e572d5b2653f9a2
+DIST windows-interface-0.59.3.crate 11809 BLAKE2B c3f439e14e85175f12b4403295f063f53d03224ed1842ad3826fb2beb89c2884317105e28d9d9af2000e08b5bf2fd05befa48dcd0325baba168acb19c8341d86 SHA512 6fe54da90ca797a5e1927803febb07d1e2e4db0bdba5a9cd84d823dc9118390c0f988387e8c614949b9f3c3a0fd47743fd0ddec3200f897952c53a57bb34adee
DIST windows-link-0.1.3.crate 6154 BLAKE2B 28e87a3e32312ec3252945eebb11a6bee886de50f13ca2a2c45aa9c7b7c7f7e41cc2323519135e8dc96d433694aeedab7e4cfc9a46c96a2735831017ebcc356f SHA512 b1d6551fa7391b569771bcca3185ca40be6108b9881184aa4c54edccda2a4bf2b60b04248839b718d15b82d9c64a3de61d1b75245cfde5f166ed1f778def682a
+DIST windows-link-0.2.1.crate 6133 BLAKE2B d1ca714178e6fe12bb3b4caeed9a52a36890989e77ae2dcd6f2d18ae4a21fb8479d304cdff63bb0a5f28acf44eaf104821cff83cd66b3a0406a5f33a800e3641 SHA512 afb0c87beb8914fd9a3e52db6f2f64a840470b9751b66c83892c24cb1c46cda63fb16b1aeafcaa5a1fc7c5ba01da46be63e5227cc108dede8b0bd27785498a6b
DIST windows-numerics-0.2.0.crate 9686 BLAKE2B 58491292e46cd869c47a96a5c8177b1f7175e495384c1eec8154a5fb15e118f06a0cc10901f5dbb1e4bc860f11e842b9121d19c12218c38dda2e6b8ac40ef1d1 SHA512 4fb59b445ffef54afef22d6db277c71e67a13a907b65a251e52bdd605baae10085c16aba25e0640fa8e9b28d2634cb6d11c1a635ef22cbe19d3cdf170727d29f
+DIST windows-registry-0.6.1.crate 13358 BLAKE2B 5a0240e81124cffb387aa7d683a01b36db9c508a1a3943b596a30c9ba1f445b9186dfa2cd2057220c33b773bc2681438295907bab95a5e6d75990acb9497d053 SHA512 bbe256d749d766b638f65e3ae554ca1fd25b98b769365d6e25043ad696de062b64f3564113f6320ce5f071309f21cc32fc73aa093ddb5b1d39d4dffa2fcbb11f
DIST windows-result-0.2.0.crate 12756 BLAKE2B bd61fda1930933bfc9c55981b399c1f9d6d674b47ac194f413de8b4e69e476d9db7da2edd2990ce7918dd5ae28d42927bde1c8858a8f8dcab1ce9d5871d9e3dd SHA512 a8e52682e8b22f6a3d9b6fc759b69a7e1a093c777303b7fced725023b4e91dab4c5a07f8415222428e04fcaaffdc49d2b2738bac5f6a0db374cfc3ff9c540b55
DIST windows-result-0.3.4.crate 13418 BLAKE2B f9563f7e1c169c43e18cda275b47058e92e461704ba58f197625f13735c9c949ad5c9e359606c36c162b5d6cb2d137cfdd3ffbe7a6471e2b4004ce1d5525302d SHA512 e07044a3b629e12a350f517b40fbac3b8b5916852c09b43014f788bff545cf4c3ff9933e95a4b50ca7013e74c9f58562e2a247789ae8fb9b9adea59f71d1c3e0
+DIST windows-result-0.4.1.crate 13381 BLAKE2B 3960ffb7f15826bd2f8636133412872d7af9c2d89fde07d2183188083e22580ecbef11f423523aa864c0b199a494aabf1d6386d7c7fceeb7ad74575347efbd27 SHA512 a2b7cc53608b8243bf9b19adb75cdc1698b8caf78d939c3afc0c01b1e89f9cb951306cc1673f9b400b926437340681af641ee322f7e761a641ee40e52b21b9f2
DIST windows-strings-0.1.0.crate 13832 BLAKE2B cf824e6587238df812470695dc623dbf8bed115f985ef62cda86f7a3836fca47fe0360b5bfcef81494617ad418588775673fbb8037746c75315ab6824bd3ac18 SHA512 f932d81985d7ad7598006e1271ebf2e7275b20a46cca421697f4a8517a2878264b6ece79dd684c6ecfecac0a61311d99137aa2d5c5944bc419a66749c4b99604
DIST windows-strings-0.4.2.crate 13983 BLAKE2B ab8603b4927b85790ad12884ca564a9416fd51c06d6f574bc8020820253ed19f14fe831cca297f492bf34d7e8a856012d3da1225aae3bb460134b5cbd998dca4 SHA512 2cd546950ed2f2d80ef007635c2ea6df597e100d06ba5a2d4149b6c320dd928bcd6ee829969c36692f1ad3322d38aa1a4aabd4865fc8ae432e38e1ea85318e2d
+DIST windows-strings-0.5.1.crate 13966 BLAKE2B 9143cfa5a4184bf0aeb62f8c85d0629d7417b74727349cf46f0d1f28d0e255cc218ac5bc39fe1c7f0311c418f23644e84644b8e7833c5b1c8d1f523c3d38d728 SHA512 c1c3e620aeacbbba0159e789cf0a0261e943f626d21392a77ff00d321c867a0a6ea75054f594a63fcc86cb9ba6bb580d96c29e0a8fdffe90e73658aefc3472b2
DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
DIST windows-sys-0.59.0.crate 2387323 BLAKE2B 3110c8cd2bc005f8c95cd038a8d574af648dc19788fe4485f977376f92e36b911b1a542d669a07ae9cd4ea72a884ab01ec78b8a2b5587456eb202452d1d8fa0d SHA512 d35e009e979633a1f3c8468cd038bd5c8c0381405165ce03497decd7d9edaaac485d704487e4a61d9aaf4e4d011b4248408912df6a0044d50e8457259867e061
DIST windows-sys-0.60.2.crate 2518479 BLAKE2B c2e2f614066e5a9d7ec461d9d25bd441188797ad85e1e923baeb0193e82f5c138ae7fb4ad0255d483f60f7a94e3f5cd8373d01b7485c052c9498937bc40da992 SHA512 a48aa1b66479451e431032737b63dc62eac6f63c251534e258de75bbee4858829faf5e641756566f00e153b08548ba32beb437b5ea42e9531e3fcbd8eb25209d
+DIST windows-sys-0.61.2.crate 2517186 BLAKE2B f4eab0b365aa1df8a353d634da5081237bef0f7b69f02ffcaba232a688e59dfe877c47114de64c81e3cbb929c2fea1143ed6bda56ce935e66d871a993ac29106 SHA512 e6c8f61f0724dafca7821ee9b9c07237ccfee69be269be2fa7318eb48b151285ecf63e860aa1fe303639222fe11268e3773f37c2dd79f923029af58c645edb3f
DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
DIST windows-targets-0.52.6.crate 6403 BLAKE2B eb98d0a8daeed5fe76e7fa8edb2743e2a3e77dfb9c4ea68605a6ab10532cb7cfc43bc1cea0180869445bd940be762a40136500e26b84ca88b5e0c502004c7a4c SHA512 d6d2dbd96096c6c396dba141a9817e377c35877f3b2fe58b2553280c7cfcb1ed6ee75bd4d62c9b882662de67ddaf0c1049b91530d29c94dd709c230e08eb895f
DIST windows-targets-0.53.3.crate 7099 BLAKE2B f3fdeaa9fad436279d498bd83a8673b4fa2ba9a0a4e01b0543c68eebf18162de10c7d0bc8e3fc12aecd7ab80eb1c764eb8100285d3dc51672fba60c7537b3e75 SHA512 6990e60737249c02603ef6e2797b1d1ce73e0568d2ba06df477277747299a94217925f99dca1641ae1a9f1b0ab047b26588178a8861e90485302eaf1607bb024
+DIST windows-targets-0.53.5.crate 7126 BLAKE2B 17a0452fe72a42df4aec8b4ae7798bd611df4f3b093709aee7b8dc991fbc2351edd23e134d12412fb47e9930ae30476b55841d52be5e764fc42a7922e3134ad3 SHA512 285a2ad1c370d8485a84c3921b180416c79ad596ace5ce30a1100fe0d9725139e9302f5728d4874789d8abe5c53e9b30ff4738d969da1c07940bde2b01c7a203
DIST windows-threading-0.1.0.crate 9085 BLAKE2B f29c1f12c3f3cf7006a03e72637f3a8c60138a2ce3be4f0fe11669c328c250155209fcf434b24a1aec39b17755f9ba8b1c1f5809e81d342190a54e3bfe1d5042 SHA512 e662713517e4e97c88be65c0aa4769d28c7ae65f06ffb4ec02a4af07757423fa533eaa2404abd38bfffaf0f6697941c2d53f10252ef126cc72ee0f5f2035e6e4
DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
DIST windows_aarch64_gnullvm-0.52.6.crate 435718 BLAKE2B 8b12ae02892cb69401329034bbca671d13bd268a112120b56b90504707cef89decfbd2560492844a9f0588fab62dc1476ab7e931126b939015d25a8cc91ca334 SHA512 f62b2d942bdb3a9353465b07d47b93de179bb706511aa497e4addd74cff95e689a9b633e7801ce786e73b5ae5f30b506b6faa199c5ab86eefdc1d94652df79c5
DIST windows_aarch64_gnullvm-0.53.0.crate 782443 BLAKE2B 64a74d4f10a60cfbd6cc02dfbb41ca9709abf56f49f74a6dfb4f4686bdc3d847d27eb92553c553c4ccbd39dd4f967bad1cba3c42a33a0e86fd8500284f260cd0 SHA512 185d1a63f3c00a4acd1a14701fd12ebcd715d6e709d6e40e6423e832fda0336463a8746f8eb5e3f81c9fbf26ed0de2332c04bd4d057c57ff67dd43e6a07fa9ac
+DIST windows_aarch64_gnullvm-0.53.1.crate 787748 BLAKE2B 78729e1107cf64ffc6a3d70c14cc93e7867578be51d3f6f442914a5f2d065fa86be843b72cd24d707eb59b779e9a719eb28d025619cdc219e379827acb4a16c2 SHA512 5e480e54af09c142ff75e77f733327dd3862f32620e0b075e02bf8119e955ef2f3acfa00f7c7a4d6a2b034d03d70c45e191a40c8af628484d0e76a0b15870cdc
DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
DIST windows_aarch64_msvc-0.52.6.crate 832615 BLAKE2B adc8ff61b6dc96d39c92c7d4221ae6aa0575edfc016cfcd046067ca5d8fcfd56d10e8e227be1c038ce34684be22c7ccaf5f18cd5a7638d28fbff4ba15b48b90b SHA512 a3e21305ad0e6de38f5b5ed5d37ee5825b7521064163bcdf31d63341cd87983f54377865d2daf3bb480d2d0aa66d6f598fa09540ec1d71baea74569c86bd213b
DIST windows_aarch64_msvc-0.53.0.crate 834446 BLAKE2B cc3df33489a282fcce6d693dd14d4bd5a284279794fed9e717a37c9367e4b3b40c47981e70adbcf8b15cc9cc01aebb63cf90f4564bd4289c8ef8daf59fd6bb50 SHA512 32d56f60b2327e334552f7554e67adc042b3c8e79f6b69237d83fa28f768cbee232b1e783430dad1b437dbaf2d7e1f1ae5c53e2cacf3021b99498148ac964cb3
+DIST windows_aarch64_msvc-0.53.1.crate 838009 BLAKE2B 0a04f6d80bd0ab41964e9932040d6c748b6bf10d609bdd35074ba26d245a98281739c8ac68a3fe251d36148a53e1730b0ea2dd5347279e74dea881be43d67707 SHA512 81175036792cab41ede4e3a21ae324e638c39604e14c7a3dae8db4090cec45b385aca32416ccad50ab194ce06d3a71f2e12473767d680348795383dbb2d17426
DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
DIST windows_i686_gnu-0.52.6.crate 880402 BLAKE2B 5aab8ee07132eccb7695807eb44811beeb0657aadfb672c54e99b6ae39c067ba9b93e38fc69bb5b9b14a9759f263ccd5e301597d2727d83b31b49a409b6bd405 SHA512 a1f6b5dd23d17ec3567bc9d11a4be6f35e196eee21ca342e9b88dbaa6a5f7c46e439c834b77e724f32ac22c0d81573746b3b513a6c944a221b92b2c76fe98822
DIST windows_i686_gnu-0.53.0.crate 936973 BLAKE2B c64b15193a5263e871e1919ecdb49fbf5a94b3e5b8d96c547a9212733f3bd07096511cd6f6b129dd3566bfc263c17e909daf04925916cb4f6789c797926ea793 SHA512 676ec6ed73672e418913078d8bae9b74679db02a3b5bee9cc72c62452fb70d87f7dd1e2b2a7e4e6058f4bc536c15075f929c38c7261d7f47872099a397fb5ca3
+DIST windows_i686_gnu-0.53.1.crate 939775 BLAKE2B c6abfbe7b82c7fd95a483da467ce8f12a3777572e34c42777e6378976344c95e5a56e3e7ae47049e14de81aa26f276a723ac5cb61f2c62b141020a97a91f137b SHA512 5af8519d1e0d9947738d5aa339091695467a55b62fe97bac680eb469679180a54e9f65e2ef8d0c34d4e63ede8c16f34a0fbd1f54ff53924ebcd6cef17c3474d2
DIST windows_i686_gnullvm-0.52.6.crate 475940 BLAKE2B fec4fda8bb2bf319a501a22372fa642ae682e4dee3235b258a028190ee73220bfc55b3142f06249bb4579b17e5fde662bb2b121aefe18544653350d7d0fe7d8e SHA512 95f13af855d530acc0b856214478d4b11b8dbab3f8f79dd223d0b009790c0e46d096fc1773e0277997deb2d5b96c704f17f23c7df11411524629f75415dec99f
DIST windows_i686_gnullvm-0.53.0.crate 854056 BLAKE2B db81a346b516db01e7977137e11f79c0cf1df0763a5415b75c9f49972436c22ab77084f958b92a7cda3fa11bf2a764ee7bb6b2e6592889a895c278793a806ff6 SHA512 ec830a4c7b5d3be4948d788971f034c53e4bda7351ceb9aeb5a0af24868fe8c8383f96b1736de27832b113d2a679d5fa8764db2fe2db5942e25bccd036e96232
+DIST windows_i686_gnullvm-0.53.1.crate 857396 BLAKE2B 4fcc61c3634d7b905c946ccaa2f6d03ccf0feb6f8080337d5618959a532fddd5989dbc95d8559bbfb06335865387900e7cfe942cfb67a7724c3c00dc99b1d603 SHA512 492bee10b669c799a93b7ad98ee7a15c0ccde4d13697408612cd345cca2b7efc38b85c550eaf1b83470bee53ff3324045b7b751c3a31ac0e214b9965e05bbffc
DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
DIST windows_i686_msvc-0.52.6.crate 901163 BLAKE2B 99ed34e052db5ba77bab240ed5d38ce450be347a794d63ec39b719304c32722c9999b540ab40abe0216318900b7412970df99dfb36d1516a9517cae0c77d1bdc SHA512 ca97913ce202d73266cf55947b868bea7e964a4516b6a096a81aeab6a60ee73867171032ced35e3afccff741ddfb2def7468343b6eceb95253e4d4f349efbf96
DIST windows_i686_msvc-0.53.0.crate 903450 BLAKE2B 0cb567d1b54ff979ad6549f1a17919510eecd62e028bc01ee3448ade18d08e684746023881f713e078ae5ca9d9e799cc4e6d15bea12f926463d291f46d6b3c85 SHA512 9f7f6df98e47895e0824dd70af7b6dd5017b65a6904f0b0c6cba8df59f8162489754c6437f87b281fc8c34da2557e21eb33c89ef505f1b3fbcf60f5152191342
+DIST windows_i686_msvc-0.53.1.crate 907688 BLAKE2B f6ae6032836367e9a42261779661abd028d303cfb13c016dd1a745b21b58d62531dd0d7658a6c133d2bf1dd95c538cf24340bb50e6743a82d6be9a622ff371b7 SHA512 b78f2a21e88adb65bf8a81bfa8a133d6ebe18b8394220421bd5f10b619528f118a255dacf6e78014ddb4db8a27b936be7af6e137133d914e1cc0902139a0e0cd
DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
DIST windows_x86_64_gnu-0.52.6.crate 836363 BLAKE2B e2335829155cdbd4a55cc9f9babc237e14e32aab97f6f91afabcdf80d2aee37d6fb4b8669aaf433ff532c85dba59b3d366c7d41b61a2f29b96f960169c900687 SHA512 c4086bb0280042f2bef9b556283b67f8a5cacddd209e1c5fabec63decec6d4fd2d6a7071407973981b98ae0c0cf7034fc612f9e70dc6d3eed9acdec771ae31cb
DIST windows_x86_64_gnu-0.53.0.crate 902585 BLAKE2B f376f4ed30c1f82f567713f2fa03dd5fe5f8e78ea876d4d29e4b3a0fc52400d64cd6b971e06fb4607e5da15d6c4aba6a7a83841e2f178ffec73e70996f1ce052 SHA512 9856a67c32c9969100ff4f730047f92ecdf8a19e003553b3d9cbfd847f376a20c72a1202071a36f3640afbb6ff45f95c83579ce4a45a2b64485c980fc06b65ab
+DIST windows_x86_64_gnu-0.53.1.crate 903712 BLAKE2B b5a86bd4a760fb6d937dc5285d2c594245ed6bbc541ffd6cf6d169c7e4e8c4334523c06c7a59c52f100a05da7976193fbb535ff3bf7db30897d9940d4d5648a4 SHA512 e4c5bbc49202636c03953aa0fff1f1affed69970aae198cb4d1eeb5dda63b9e07b0cfaf46015bca3b8c48fd90d3552488a6a7b17b53aebf9776e996ccbf9c7d5
DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
DIST windows_x86_64_gnullvm-0.52.6.crate 435707 BLAKE2B ab77dccd06328cdb00175f41cdbc120594050a9678b7f9820444391fb50aada3911a91ea00f3a6db2b4fa1820fd23bc9a007dfbe65ad41417c26ee1137ef9b96 SHA512 67681f5859e249c56b0183181811f6212cc7008d6471dad78aecc7ebe3d027686b19210b8aa9014c554410f69f913d21ce2aca928eea905eab779bea26464cbd
DIST windows_x86_64_gnullvm-0.53.0.crate 782434 BLAKE2B b82d7a41c771db81f2dbc6500616fec8f019f89cc0f3c43b45332ff8275dd0f7919cf0b6e0fd2d50aaa1cd7e381e7d20211414f619ca92b60a21fa2137c7f9b0 SHA512 bd3777209b4cee092134c21298859d5974b29b70fd0d2882ae704b58a34413022de944f6254d8948fc87b4dbe1044b08ddc6a82b9d1a48b33d33509454318e7f
+DIST windows_x86_64_gnullvm-0.53.1.crate 787739 BLAKE2B b5e3aaba4ecd1e5e21a0b9ce5beaad3f9ef78249f21b3dbdb69af98d5f36d01f2ce65d3188788392b866f296548075857e2f904e30cb79db33fb3134fd78e946 SHA512 30b8919ee9ad36acfac4e28a3b22378ce11ee73d35de60dd9c9217adf14e85222da5526100b0252372e039e559a5bf734ba134b10f707657d542341056947588
DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
DIST windows_x86_64_msvc-0.52.6.crate 832564 BLAKE2B 8e9a3044654c6de99a9153e7cacd575474e7a8a3d883c67b02132af5d3fc99d03cd5f7a4dd666a3947451d11218e6acc6eb5e2526f012481106cc13453839719 SHA512 21944cd8e3a481b514509e73ae3f62722fe7ed380d37ea0c25f8fbdeba79174dd52ff65d898838da5df4197894b74e00f45d47489418e978753b4e55c7e623e7
DIST windows_x86_64_msvc-0.53.0.crate 834400 BLAKE2B b5a06459571c6ac31fdb94d64f66f83ad71fa039ba04e07b62259ca66211662e703dc9afde205cb0489a2213a937ba1d8d6bc212262e8140a1629d2273d4bf43 SHA512 47265ca5d43c39c9470c9ff7caa8ad0962bf81cfedb207d3307895cc7e4885512a4895d3447906349e1261dbef531c0c3326cd82cecf6d645d42039997134707
+DIST windows_x86_64_msvc-0.53.1.crate 837950 BLAKE2B 5775d30ce763835fa26376d85e9ae6f598b817b8d32b01147e5d197c364a5071ce7b5b09ee6f611fcf30790af79c4e4282e04ced620190629eebcbccabb8d720 SHA512 bb724f4051db90ce49b552021e746769e5dfe3792b522416539960c27f9ace14f63c47f0f240d6563257377129b5f3ba2c262c6fea9610428aa860fe035f189c
DIST winnow-0.6.20.crate 163617 BLAKE2B b47ba6cd94ec80a72b51ad09c5cb9de350d2243295d3997732d5d3d9f8d08bd83e3129150fb24992243949120da1bd6091d580db5ff10258fd745afaa944c791 SHA512 3347fdfb5b15ec73a40614ecd0cce60f41d3f2d083f49aaafceeaf5db52d5c677dc3eb39fcc2595999fc9f864d1fde81e180e09dc86a6f6124878e16e86e8bc8
DIST winnow-0.7.12.crate 174403 BLAKE2B 10087d32ed9f1d3ea69607f314f92d17882efab7c71f9437c530a2412c35eee4903074cdaff7d2ecfb31718575599f0864d6368525e34989c0a0fb3aae9c2163 SHA512 6035aab9c34af58e950441a3d1821dd02225043d9a30283879a5e55f8651d475f80795ad15ef0c8bf237adfcb1acf3ad7cf011214ba21a3c63aa9a45a801dd09
+DIST winnow-0.7.15.crate 187092 BLAKE2B 2fa004d7d0a166202e27f9bdb57f7ba7d1a8d736a77518e8a49afc1c1574db93746a50d26f802f571c14e8c138857e1e13802c04308f9e06215517c012e9b275 SHA512 47c4abb8de7f024e2e85b1c0ed9ebe16b9de29ce82c536a133de9d64d99ac37191e4322221640785234a32b03a28bfa99ced738bad5088d39bfbbe2a64c99689
+DIST winnow-1.0.1.crate 187973 BLAKE2B ef46016b4ba1bcfb12910939e20a433d27713dd543e7a17939888fb3ad1935b8f5fa854cea7bbbf9492a2da7657ec14ffb46edaad99dbcb0dfdaf07348a87f51 SHA512 dcd91121c980b6245ba479632d9f7ff0482a78509c21724c80af95f75ee5a36f7898de6cca637362a32bc385db3432dfa27193b836e0a23acc60bd7d4ad65d6b
DIST winreg-0.50.0.crate 29703 BLAKE2B db9a968ef96cc07bc1088831affc4627e09c7ab8170a54fdf70a599c2d6180a8a9ac46b6304b61fdd2fac96e01bb004ebd8051940300c7b52c5b7b7975732d11 SHA512 2f52a9e3ab794665263499c88dfdf06009c6477d180a90ebbe86e786ae7f5003c9dc8b3c26224024e79450f3b94688000458f2ea8b1ae1c3691453c3d4df4787
+DIST wit-bindgen-0.51.0.crate 68035 BLAKE2B 0cb5e191f866c3782b6a1e822ecbae6e618e08371867462addb027dd5510638e72438d991777877d5754b2932afcb41f2edc1ec1426334a69311905f0f309b6a SHA512 61380c309630ad7f415d467daf1d639ad7a3e8dcd26e5f88aacf0230b52600f150e804821b6a1df9b79cc7fdd4f1d800d043ee7eca770b1947a3cf06f893711e
+DIST wit-bindgen-core-0.51.0.crate 35048 BLAKE2B 1ce5f1bd6d1ceceaeb91d247f63745abfd25b539b57dc12321a2342f55da1207c697641a778ad6bff2bbece300fa52a788c7890e8dc49c5357f48292fed2a693 SHA512 eec78ac1566cc4f03b1d0d7d2e84c3d0fc2458a649c01a45c9c3781034078ed51b4a9852760fe96115006fb3415bcb31b1bf429cb3cac6e51e09a1c0cfc32ed0
DIST wit-bindgen-rt-0.39.0.crate 12241 BLAKE2B c8cda3c7a513dca58e2ad52b03692714750870801af37a235bfe1f217afe880f36df56d8e54b52ee1cb9f4e30f5580b8a28519b44084d2191146977f237e406f SHA512 24b559688991083057b7fc0b6fa9f84445ae11cf53fca20887f55da93c24d97c9a3ed6488b3a845fe88243530b46442d3c2de70da4dc1c64f3ac632a440ea2c7
+DIST wit-bindgen-rust-0.51.0.crate 57051 BLAKE2B 65c45b1b8b08681ded9bae2b4ac982770fa613bfe850128de1116a51ddd6366423c27e1f704817ad69dc05694e03aabb56af5bad3aeb0aba3cbc9415fad474e7 SHA512 7a5c29b92fa53ac8f8097b04a9507f471003edabcae0223d35180937b9254c62b24d9f4cef790000bd7bc7f6966af3aced2d7196359479480455baf5f4450f9f
+DIST wit-bindgen-rust-macro-0.51.0.crate 14283 BLAKE2B 79bc4a4846ec73ae02fe69fcb7898297647a0c70526fbd555e79a4c76de968f0d4c9e2e497643d9c1e7403bb8176a2108ca25a7cef577b9db3ae04142a3bd1ba SHA512 bdf6ab20b484180bfde867b8c8b03c10fe02a9279895ece43fddbc20b1ffe771128590d3d4c72585e959512808682278e54983d11066e0192d84b7aee830e0e2
+DIST wit-component-0.244.0.crate 256882 BLAKE2B 5e9c706693e3064ffbbe28a23e64e5bc32f6772ed294dce3bd2972b8d951f2820ddcee5f9e651b1acc470740b021986cedb6f0ff7a9bdc2b6e13f997dd341024 SHA512 efbf91954b7c4fc9cf5835783245f3a8cda7e5883c6e244a3da85a64b6b2d74f44ffa5f73309de7451b5e6aaf614664869769b140872ab85913878e52e490a00
+DIST wit-parser-0.244.0.crate 159371 BLAKE2B f46db4840d3cbcd42e5d26b854247d172f8385810a10c437aaa6b67f3f72dcc230a8d75f4e5ccff6ea006c8a52c2fe92f39d9d90cb30ba594c02ae618fb66bb6 SHA512 c554a167ce9802fbc7537700376da70ed6a79f96adeba5a0e4c955a7cc4f2ae4f588071e25735903d4f509f2590341fa39b2edd018cf6d3bf8ad6477b2474b01
DIST write16-1.0.0.crate 7218 BLAKE2B 548796314339463e4b71f8af3d344e45dc89480e103180b6d56c90fcb816ad1a37ab2ba20766c4b9754f2cc686752eb1f3a5a12ec1ed4369a9cef749ad4f3e97 SHA512 655a207b8082bb88e462f992ecb4833cef9d590da06d6356b41d109df2862b49ee5705189c78a607b549e7343035119d158020d58fcad49608e51659357a83c1
DIST writeable-0.5.5.crate 22354 BLAKE2B e4ff9862c070b413568ce0c75d1eccafcf1db8578eee4795ea9046dadd643f8a77258b437be288b93af247199d63455298ac2cff909226bc432f91c0aa863921 SHA512 818b2546c8ec25816aeaf5e31a1ded927d197bf7256e7c5073738c2709bc58a95d382a0256eb38a99235ae83729b578701261866d42ea3357a26024906e196c1
DIST writeable-0.6.1.crate 24068 BLAKE2B c513c806d6abf7459db1a203c7b4aed4766e6f75cd82a40a874fac50cb50d03970d0500251551192164da14bd7d2341961fff78b7e01c88bab83007008c3e1b2 SHA512 686ca04702815096ac529ae6b9b80a30338f42eb5d414331992518c467c1827462673fcbbeb293818bbe570bd2723e9c60324522071c1b790c862fa6652c1385
+DIST writeable-0.6.3.crate 26685 BLAKE2B d3e95d1316e65886df8841f5daf52960e7301beec545a1ed13040bc492617660504deaef808e9e47c5154860cea28c45c8cc7e05cf4ec565bcdc6f42aa8c8c9b SHA512 e3c1c498b7901f6287024ddf47862e0caf7759edde25a219304209a46ca183af15fb5fb33f87b84b2ce0ed531161d8414743bb424a7446d88b2a0c6d034bb87f
DIST x11-2.21.0.crate 67810 BLAKE2B 075a51fd5f20b700389625b7f582a1d946d810d08f559df6fc4a8214e9383817578079402394420a5591872c29fc7ba440b992b4ed792a3a4db836804f25cb3b SHA512 1586ba1c0e77e70075ccbb9f3b88ab5af862d7f76f7d8108d4fc95fa87cb316865b593ec62aae53ab7ea0b90541e2b2db8806ea1b3fe9306b98ff4ac69daf674
DIST x25519-dalek-2.0.1.crate 87820 BLAKE2B 039749d0278d95996016260f9e32162b370594085186044665685288d879e067fa16a5d4d42e939d2bd05f7b47a81036cb4f573d841cc81ece078c7a08eb672d SHA512 13dde8a8d4772dfccc3849a37717828ff6fdf6b4deaae86b5d6bbfce9b6dabbaf039d95c163cc6764447d503c1a62d602ae5b5d1f7204cc002d3fb13ca85acb9
DIST x509-parser-0.16.0.crate 92925 BLAKE2B 4224f1a058c7f6bf062f83159951fa65513d7d761fde54426e8451968be83516465ae86bf39b2321997d5cf2a512b671717e03c933bf61bc15d6634fb663364b SHA512 fb113c78eb5231d47af2e0884109d6406f4a19369500d582a075b50ec347e8cd9a085a28aafb50ae5699026f5220945c61c879c4dd3c484c4cbccdc46dd65378
@@ -603,32 +814,50 @@ DIST xdg-home-1.3.0.crate 4000 BLAKE2B 0da36aadfa518f1ecb3fe9067eb4c014689af1f76
DIST yasna-0.5.2.crate 34859 BLAKE2B 622852d441bae19ac2445d616cab5a0dd2b59926ced62b66c84d4804a0ba25d411fb9c2fef3bc86b0336e73dc060678ac58e41245f99d3412fe8bad28d131847 SHA512 7532b6d06b34b0a5e2b769c5d2647f910bec481d98482bf9cea212f1bd1466336d7cb117d0c2e240e7673b2825f1d091619f79814bad836d25cf3a6ca2be63e5
DIST yoke-0.7.4.crate 27781 BLAKE2B 42d6176af3e8d046b42fa89eacc0bb249eb0a6e13dbe7e97890b0cae98c3cc0059255f15314bbc343610d60605bf2d13869402c17d36cbf7f495956496572212 SHA512 b3d1456e28d53723470644ae15a4298fa96a79593d90729221ca4e45a6f09de4d7c554703425c61595c4e78959652122db95865c0337cc0cd6a4ec57d7bea84d
DIST yoke-0.8.0.crate 28726 BLAKE2B 1013ebf0478242d9172179b53a638fcf7a167e554b40464ba67a4c4db17f75963703b2c9aba29f9368af7530f475ed79a43672bf6f0840b0d77fb0d2539f8c3d SHA512 6b6efbfd2bcb7e06fd6f9ae7bd213a54fedc7550273e2613fee3b8791bbe1038a7e7209142cc673d71fd57b7184cbb1209115ecd15c647db1a74f2966d593276
+DIST yoke-0.8.2.crate 32790 BLAKE2B 4da3adefbb91fd6a9d715ff0f96e425a07672ec5a607eb365b7a7c1427cccf5764c338a5e709234e1e51df09114ebd01a379633ec121c3da6e9038100ecc364b SHA512 fc4d0a912d531d661dc21000ea50eb18cb96b471f60f0624c644e055337c50523bf0b89d222e759e0e6fda1ae2debc9d87efa26b3427504456e3fd241658bb32
DIST yoke-derive-0.7.4.crate 7470 BLAKE2B e5c0ca6f9cad4336b6b7554d05c3926d1720707aa70b588ebb884426747eb7d3d82614ba20563a5e801c4645f90fed9e067f50f43749a66e52f20c4204fb94db SHA512 5be38b8ae8dcb640a3fcb097e5b118354b45a41a0367afeff3c2ba5d13458524e88f9433848f09c670533d36a49a0e2b393e23368921553b5bb008e66e8e4a40
DIST yoke-derive-0.8.0.crate 7521 BLAKE2B 088fc7f5954704c453dbd2abd2a9a5a779552067aec8e51793cb6fb8144f0bee7a7b04d777bbd05c1c62f49c9c75c7f3df09b5497d35eb64c079bc04867e42f2 SHA512 38672da30ebb9657e2b5f3d509940ea80ee6cfbdad61b14b84ee8a7d96c1dc597eff7f3c75e5c375bcdcf8ef5bebe21f9f520844f448ca215a3be19763f578c3
+DIST yoke-derive-0.8.2.crate 15077 BLAKE2B d067fa9c5a9d1978c0a86fa58034b4aaec8815c106aabc4f91d9d1e5c297a03ed287daa35374a2a2c3946e73abb05e159c118014cdb01b9c939f7eae5416bea8 SHA512 ed37289fe2dfcafda13be24b3e4aae1fbbdd6f52c42a1f2d770771f458af0d17b4cbe487941381b4bd692388e9818b45c686bdcd6229918e0f5b6fced1068ca3
DIST zbus-5.1.0.crate 159997 BLAKE2B 3b232a0a50604921c3f8f1085ed7d4739fcf4c4cb76ad5fa86f58e50d885f8a37c9f2840625391dcfaa6bdb387aa016e8e01e23611073cca37d5c79995b1cb85 SHA512 fd27f7d3e603323f20379381755e688a0c74372753ed188132cfd357ffd158fbbe6770c8395187508209c1f83c992576dfd8093d0358afffd648f2ccadcc3759
+DIST zbus-5.14.0.crate 177684 BLAKE2B 44c74ef54735eaca54db16ba5fe0821fc491d945c4c0a7a088b6b9312464b056a3da3b99d3d90825cbfd41cbeac80e9257235b38edab67f259752b9fa90a94d2 SHA512 fab6c25857ac4cdbba877f109734b0f0e8fde0e9968e06fb7f699a65416598bbe9d236961f6da27325402cfbf773005f67ec721d27aac7af4e8b29828e3d9556
DIST zbus-5.9.0.crate 165564 BLAKE2B eaad6bfa24835869a3413123b654316610105222f27443de7ae2cccda60ce4507657ce4f4e261df3c747a9326b346589120689b3fbcd6dcc457a7bf2f8a4b405 SHA512 eeff076b74dc132e03c123fa8d120e0fefab025227ffbb874704816e0426864ce3ec0c99822b02a942ccdab813ebfa6b8fec0b516cbdb298643bb4fa28d399da
DIST zbus_macros-5.1.0.crate 31457 BLAKE2B 1f27f70d058339a5afb345c51d15df07e8b8015411bb8449dbbfda357e4e5521254f485a020423c841de2bc791c37825f351375abe22022f12b3a2db315a57b4 SHA512 f8d84d576566870da22c334bd1d5599087c7eacc4252034f7b5cec091e86aa972f3a08dcb2c5c03f9905427acaae448aa0703ed3e07a85d87242b66b8ed08ac1
+DIST zbus_macros-5.14.0.crate 39335 BLAKE2B 00c0e371d53d6ad23f4b2d83c42fe92f30075c526a1b5e41c62133e5b0f6b9708586988d4e1e6add49c1f627dc6c9b19e1e1339f66b227e0149ad7d7157f9024 SHA512 c45f891cffbe8d0344a25c5d2e0a77297f0b2e99d3f0a8c3bad4b9755ee5508acdb47d46576916e24aa5d742197e0afaaff3b4aabb8695cf3496e6f4a75d7c3a
DIST zbus_macros-5.9.0.crate 36903 BLAKE2B 1bd4793f1ff5f0e0f33566ce6b94cbe725eb4d40d81f6aa7dc04875943478f1502acdfaaf40607b26083a4b845fe01d8e89faa032a089b2ead8c0f6c626c8618 SHA512 08ac95f0204984ef13e19d4aaf8dd396a5e367662236d2310a28e7ab4f73829717f73980f4e96e5f35f2b0d775a0bf5975e42d3cdad643cd6c6cf30e5b07d4e4
DIST zbus_names-4.1.0.crate 11532 BLAKE2B b1c5092b3b898d890e19459021dc6d540ef4154ee998bd1e4e210f12d2933960b5e8caa44f75e09fdccbbc4d80988fb55caa2ceffc22397b96216594a5e65421 SHA512 9e65472efd6d29c62d803d13d053443b6ddfb3de6ba322a52ad5907a2573779494f9bf031a2db243a6495507691adc8c65f8d25432bac90e80d14e9513216944
DIST zbus_names-4.2.0.crate 17015 BLAKE2B 9aded72b9d3b14e8ded49d1b34bf87327b05bd7099ce5bb1974c173ac3b68ada041f3a9c202475c9ea7aa6d80f860772157b00ff17a6e024888814b196e90dae SHA512 b88179106fc12400339bd70fa34042b00e9664e657f3dcb11c762127005cb8b90d3b2366cf77631fc8d65f7530744b7aaa18f6f8ade17732167d83a158062849
+DIST zbus_names-4.3.1.crate 18076 BLAKE2B aa66dda5540d1206eb24d7cc206ca8eb0c51e02e3f27dc4b65196453e4cea5368123292d1011abb414d901d94863429deca9a05bd8a49182777248ff0e6b3dcc SHA512 848b8ee331daa9f3863b865033674a4937ea747df3b926ba30a57047bdaefdc87514556f0120c73a30ce16962d6e72e337605d6c9586de48615e6ecb2fa2c480
DIST zerocopy-0.7.35.crate 152645 BLAKE2B 8f13123c9d9257ac5a5c6954d38c3510fa658624442f7e03cdcc6db5a0977d9f26bb4e277be172b7872ec365cf6e58ac742e5578636f7698f9f37093e9249d9a SHA512 17fcb31c029ae89c01e5bae5fb2bb46bd434120199a3dc2c7fe0012dbbcfe2a0bb38934c4a7d3a4920e3fe47c097403beee554fefa54b66cb390f8b1de638d3c
DIST zerocopy-0.8.26.crate 249223 BLAKE2B 793b5579fc9120026d2dd7b1a6e7fc2505476288c1f6dc06746c3d65a8655551ba7232ddebb54cb2abd1284d8103369820445cd11b31d86501871c69513e7e1a SHA512 dac6018003092ff65396c93de65a432edea42a28870af4e779f391c7be19a06b6df429493f433532613a8fa18998367714e89abd06324586f5f91f20fd5dc592
+DIST zerocopy-0.8.48.crate 287554 BLAKE2B f66a7efa5970e16ad8c0e35a7f894192d93f9f9328bf1f8ff3f75f0a091cc8a44c5bddb4cd89e6acd8422cbc1ca1c6fc230c65b32e82460ab541435ab81408dc SHA512 c66a2a301bebfcb6519ac122d5b03a5f5ea2443d83ebcacfacc564d01b9d6173581fcb4df122444c910ea0b0e420d1529e3318d60695cec3d9df28a1837b9f9e
DIST zerocopy-derive-0.7.35.crate 37829 BLAKE2B badeb7fa5e0bfe93a6788d93fd297604ed31de526b121549300ead3c49d450f49265f499e2e7ce606dcce2b59dd01f7fa817b8fbb3f237475185c5b42f5299c4 SHA512 dbe23573b62a6267d7bc8c744320b75b2fbda03b908c1d175211f7394374fe182bce58021e25485c10671d726b2007f250565dfe53134d51c89293bb607e9feb
DIST zerocopy-derive-0.8.26.crate 88080 BLAKE2B ca9b8ee1970b75d0119a520ab4f2a44b88d28b2b3c48acd2fb81f3fe1b1081efcb52c50bbe21045cc8b16d15305f87ea3c8032d40298af1ecf024e8ff8cf0c2a SHA512 344469950a97cd691849792a6a1bc875c04797c8e7950ef4bbce22a467f527cf28209f802ee8d74db71973355d1350fcd33b161000a92670fbf30e89e3e32526
+DIST zerocopy-derive-0.8.48.crate 97646 BLAKE2B a75bf954fc7b9878325bb7dd953351eef1858ab3d41464661cd5fd8638f8417fa2ae05c4fc9b72ea7c2121a6455ecf683a1f096b49f62941fc110f2c43316ee5 SHA512 7dd11845b9c07fcc6c7289f792a27c30b2eb6122a403e9cfaa59177a953a60e5e412040a085d12b31a4c52306d3e3517a7f295ba62fb4441aac8e2d5f052e3c3
DIST zerofrom-0.1.4.crate 5044 BLAKE2B 8ad9a14b8b0c251cffb420f7ac673669fd29b74bc2f5e220c8e86d592f58cbb2c7be88d906b7dac8803dbd76ec459c4a249b7d1ede75a055454a1626b387f128 SHA512 11f37a67108185a8090cda71338b02492fabd15e6cfe018833a165cd869ed65338e12d7c5680ffb0b763fc3acbdff6fe4df30457653dfe4d79ecc864b69d780f
DIST zerofrom-0.1.6.crate 5669 BLAKE2B 1428e9cfdcdae13b39b7465524d1b8b79bdd89f743d3db4a3305c2b39d61ad7ced958dabd673a135147a04c8ace69d8c710dc06c6a07b1dd3987fc0a45148094 SHA512 e87c50b4f87caff70d026099bddcced73398c432f6aade32d74ad199cb3a985956bac282f48efdd501e64e80297afe4f8a4518db32437bf297fcf51a6f94bbd9
+DIST zerofrom-0.1.7.crate 6140 BLAKE2B 3b7b9d9f234d84e3111683652fc0d375939b3bac138a1a0251c31eae5918ba324be4a9bfca251ba1d3e76c482f152a9bdb8a235d3d92d147ec35b65533cdc41e SHA512 e189816b92ca0f51a009b7bd63b07995aa1543ef5e69cf049ffc7f3605cd0ed48cfce958384a5775e233c25004e2289195e8c8ee1a8032f3cfc14a5e4b2cb446
DIST zerofrom-derive-0.1.4.crate 8232 BLAKE2B 98f69cdeff7df52822b982e3c089ccfa3ac2ce67f320b0d32eeffa899d2b34627268ed0a01b03504a0a6fcb6bef34d808cc79c811d5daed7f8acf59282e82088 SHA512 f2ea4650fcb4e7c3583f0f7c6146c7734cf6e80e07d92c330c6bc6a0a4e0fe14ae3393845713331240c70685e92eec114565c5be21189e687fe6232aef75a9c0
DIST zerofrom-derive-0.1.6.crate 8305 BLAKE2B 9ab7425b450bf8c47538be7ff32901045393bdd91b9687b8a32ac194b7272dbd4f5310629647c6710f97a50cea45c722c018a77006f24da2b44a4c475daa54cb SHA512 ef4226df3c9ca9c0146639b19d9aa611f2ea3148c10ea875f43ca1960ee8ed438a553b078a9b449a58862f44cb7d4434fa35bbd6db6f0a773618f63d2575c985
+DIST zerofrom-derive-0.1.7.crate 8853 BLAKE2B 26b8932561c7705850ef88f1816141fadfa2077742cf5bb2eb66042cb657f2b3b76a2855cf49c1bb5a934f4147a29a73144fdcbc435c6ca4ff1a562ef103557d SHA512 22de0ee75a7463e6b263f17d91291d2e2800ae0b5066304b24459b58de8e528e36de77dda149d74abdecd26cab58f0ed34aa603b3361f00976929efdb3371da6
DIST zeroize-1.8.1.crate 20029 BLAKE2B 092eba034cd35ec47290020e0c2b213177ff5dbe14ab9e7f0b4ef3cb1ecbc42fbec2b951414e26ab00bc65aaddc2c93eddd5a1963b27c6cd613ac71c65d5cc24 SHA512 dd40ebe98b98fd742608d4066b5ab66caba94b2e679428fcaff9fe547d8cd6ff2360dc85d671ee9183e32fb79cb554d00d6aef9eb8f3d8ad0ec92d0435aa4ebe
+DIST zeroize-1.8.2.crate 20907 BLAKE2B f9233758bde107e2409b56e936e02f51442ff29dfb2589c0b194edb38645421b4b8e6064208f7548a93836149c425de90c08792288e5cea1ae117911406bcdd5 SHA512 ce1fb97ac69cb0792f2f5820919aaa0a9f71c4b410bd0d0c2343d8415d39e3eec3f948cc2769eaf639c14695a3961fb6cd96ba7a77a15a77924d1a8c16497b81
DIST zeroize_derive-1.4.2.crate 11141 BLAKE2B a40add656369a3a40d5b5f3397a77a1e9f803d4b8ae5b7d51c9f2ebb332a289b3c1ea528655806a26998e081a1cc9f4b07828664542de8d8d2619faf079d25c5 SHA512 d6966b024ce5e265c93e7056659ccbb97bbf6baa30f759fd96dc4391a6487426637f61f0a2713b6160019d778cf7d8ff1f25bb33d6c4f4585b990baae418b226
+DIST zeroize_derive-1.4.3.crate 11695 BLAKE2B 1ed359b6ee80ab73bcc030d312b9e05453db2da5b2aa2c054be194d1c0fe4faf6db021be008a68b4c33552686ae4ade03b45f5e398d3352e025eae321287a16e SHA512 baefce9fad32add4c9b6f5560835679ac782ecbff383a80931acedbc12e459ec0d5a0cfb0113d47ea91bbb0969651ed62e2e22c69a0a3e87c0a4930be234cc83
DIST zerotrie-0.2.2.crate 74423 BLAKE2B ddbf7c1a1e45fd4b3c44bd7036e46070a2d9fbb338de719c2c775dfa96ed11d06e14232f05eec4b5c9ac500ed4e7abd8a483dcd06a6a60ba20e6b6b6fa7333ff SHA512 72b6e9633f100172b5e8ef25dce004ea1eb14e110b9189d91faf19f63f8a7714325c2847df559b7ade1f0b2c54369c63fb9745946c4976750a28853790328ee8
+DIST zerotrie-0.2.4.crate 83690 BLAKE2B 96f443dd0c9501464031426e6aeae9cee78cb604a2c151da4707c21eb317b55b4a415ab28836213d56613e40c5f0911b68b0ea3dcb9c0546ba64d81f4af5ddf2 SHA512 daaa133ef8916a14ee12af2de5e042086d6817822fe498c49fbadd2c03c5512f0adcd5ada268fa5bf70ae2dd23f14245a0f099a37abe09251478303c069a410d
DIST zerovec-0.10.4.crate 126398 BLAKE2B b078784d6f178bbb9de1c3c1b6c7ef996f00bdd7dfd2924bda921e62f3e09e953fbf50f8d0da99ac6ff6d134f146253846f5663549dcf8df08eaf34b9d4016b3 SHA512 db12bba1d7476ddead92e6dfcdcc30e2e0defff4f263a740244eabee265a2cab265473a663d3dc3210f48e113b66d951da496dfab7965ce1bc792e5f2db422a0
DIST zerovec-0.11.2.crate 124500 BLAKE2B a668f982e2e02cf8c1d14aa2c5def275c643124ca68bf0e358f3f0f5d0251e35f3a51fb4e38ac8e880f592a0791aeb53e2204b3b9bda200a76d4f3c3dd26852e SHA512 72297429aad473b6dcd5019cca30f85779aebc826cc47694589a9a9025772b46130a654970b03a9866d51724ec5efc474fa249490365430416dde6002e939255
+DIST zerovec-0.11.6.crate 128583 BLAKE2B 32be3ec333c124894009ff13feadcc6548a93485444eef0d1085a995a55e73a8165e77589b13893a5f6bf585ddad750cf0364e8fa14e00eec239150f14bb0adc SHA512 9a0b22654ce3b76cd5e9bdfbcf8d5344dff4116f37f6e22ee4687677c7fe8a69122a2cc86b0d722ff2040547a810528a5a0d9bb5d8c4ac2d3fa0323dcd18320d
DIST zerovec-derive-0.10.3.crate 19438 BLAKE2B 9f7df8a4e4a0b62ab25aed967b26509db4bcc5d5b10b3bd73305099a4c49a60be8921484ced1a34d9b7ae30ffa5abe789686f432416a8f1cfc07de1db1dff594 SHA512 caefbffeb35265db9f74933bf07109d57f0da48156cafd4f330af78a5c7eb9ab0831a80789ad4fb119875ebc6cfd7e3de68c9984b77dca5151f9be41f1ae6e09
DIST zerovec-derive-0.11.1.crate 21294 BLAKE2B cb51fbd289868568f65ca7253059c1c2c94a8130a2a9879b2a0129faf5867e13ff675cfc9b359793629d955a1b39617c6fce9079398a54ae31670ec29eab6ef1 SHA512 5836035134bdf09a4a8cdd5a18f629696902704903c4b3579ddf1adfa49ab47a68287ecf2be165d631ba454daf150c043410359783bf1ce448e7ca46b8cb6039
+DIST zerovec-derive-0.11.3.crate 22115 BLAKE2B 4669526abb7a51d35045bf765017f6070e371aa33d06e66870f043401bd118192b53c422794d08ee2cf9c41e2eb8922a80ed0f450bf3c8c5e78d3f437f984ce2 SHA512 1195cf266a28cf1bdc48a02b2b721f24c785b317dc421475818cc0fe616230bbb91468ab2f67981bf6d3ea2b830eca2e10b85502f622ecb06880e4fff376d29f
+DIST zmij-1.0.21.crate 26665 BLAKE2B e958b58e2213ad13185ec6df55d07e6c80169afa56133038fa66cefb4a9f49aa786249a486dc09b2d0a2f74e41c0d0d713135f38a84dff8f6239636a6bf3cadb SHA512 a488f11ec8721ddfe42e61d028a128818551de8fccd69d7824504e4ae2efccdc38f716fa5a10ef4de07a8a087e75e819c4a1e0790817e8539b5db697bde14585
DIST zvariant-5.1.0.crate 78529 BLAKE2B e4842199571c480032bd6fabf5a2921aaaa8811829e3651f8b3417e1289fd6c2bacf39b6f9e7646c0ffe8fbc30ffbca4181d28fad2f800926f158b98624b7866 SHA512 48ec2d9ff064cf89f69032b87f5f77bd19d8f685788ca1d846e2058cfb3d92059c4fc9cd4ce0e483861c03db87cadb94370e6f2014a32cb32440c747f9291d0c
+DIST zvariant-5.10.0.crate 93150 BLAKE2B affaa11f624aaa7ea6874a4977b1e483b285191e4c17171f3844454c470029fb67d9f0b493fe6bba30a2dd1234c1a36dae34d5865291f3371407cd23560516b5 SHA512 a9ab69af9dc4e42f57836497f4a424da56b2cee256773f99b0ca79267621a1ade3daae3c9a00185066f5d7451a77ec29d8fc53041b5d9d41b400a8456e103a82
DIST zvariant-5.6.0.crate 90550 BLAKE2B 00318dd8c07edfc619e316baf641da804418019dc2b26569ae364d6c2313a52ea0cbc93db422aa5ab53f7abdb6c0d98a3da2ef3b743ed3f8a3ced834e4bb4b88 SHA512 ae456f76e60dd892949c5d9667d4ead443b2fa37d487e908c21422534ef0e7ba3b22e7de6e06b1fcaf49b3fd94fe7ee019649861797a4bdf8c42e715287ef79a
DIST zvariant_derive-5.1.0.crate 11483 BLAKE2B d363a679d522d9b241f65eaf29d838f466062ed0ea963c95e9e042edf752d857c789f30e34f2b114196744859b4c0d8b4c272560a5581e057e90509d9cefdb85 SHA512 dfd75d66550cbde0f8d1c920f8f86cf1790241822d8f2c0befa0a4fb9fd82ed5a2d9a4701796d5e768ebafb3bf716bcb1234a5fe8538f4e739efd9674b11f357
+DIST zvariant_derive-5.10.0.crate 16592 BLAKE2B e081f2656849e0a8f870f4eb3ef67aa3f222243ed6ce8e30b6ace7b7b470bb0e979e76ade502cfe8716d720f88eabb070098e235c42ba0ab6d40f1ec5588f077 SHA512 ac139835c941ad0c153ea3ff0104a482ef86bf891c45b853dd6988e21387cb743cac406e9195484bce519c9a549b5d4024f3871022f9ea78b2eca1bb55e1fe69
DIST zvariant_derive-5.6.0.crate 14278 BLAKE2B b8edba60603d3c06b6715884bb5951ae8b261eb037ba9a0e194c1f32485dce449a509c911e8e7a5b60f504a0e0a0d7a26485b16759fb3703702e0a56735817b4 SHA512 4c965c596484bfe0e51760193eabac997262fd69b396abd909a4e4817c40e81fa3e2a703f00c8b473239772f6f49ee1fe7c7b1e703bf23fad51fde6d0986cd1d
DIST zvariant_utils-3.0.2.crate 13751 BLAKE2B 2bd54b955b677eb3d7a6930677b8c6657a1802ac183b4e59646a16351f40bf0adc535dca4024d084c8e8f3cc05772a79b6a9142b407a965fb89cb24c02f0433e SHA512 8711367ae755fadc5a36cad7ec818c73f03d5c6cfcf5a8e9675cebcd3ae15eea7863b183fea68aa324e34c016d44fd174e6c78470d3f0711f562ab4752607906
DIST zvariant_utils-3.2.0.crate 14779 BLAKE2B 43dc001c72f67fef30077764670b790923f8a1e63b292dc684db9273ca9cf2120ebe9a2592a9dbaac096f9b740cedf1105ef3fd8934c767e55b05febf72347d2 SHA512 9176e3240078a3d240f81272cd6e04438048ee044dabd0233bce0ba9567e97655e2721332dcd43376b09c055c07080e12ffd2888355f003cc32c3bfddbc4c479
+DIST zvariant_utils-3.3.0.crate 15417 BLAKE2B 08f7613b63f8f1b53541270d1246ca5bdfaae845e202bddd23f64d4d58336d33e27a5c33df1cf7e4973c3255b82ed1947b707089cf1afc08c2259eb8f5fb9785 SHA512 55644ac7f81d60b414ac13e0da4db190ca58bc9d1d7ab82c447e0995d23970d3ebd9322ce7c066303e8455141bd91e2125618d924aaf17109d7015d49289f4d7
diff --git a/gui-apps/lan-mouse/lan-mouse-0.11.0.ebuild b/gui-apps/lan-mouse/lan-mouse-0.11.0.ebuild
new file mode 100644
index 000000000000..36544627c2f6
--- /dev/null
+++ b/gui-apps/lan-mouse/lan-mouse-0.11.0.ebuild
@@ -0,0 +1,484 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.13.2
+
+EAPI=8
+
+CRATES="
+ aead@0.5.2
+ aes-gcm@0.10.3
+ aes@0.8.4
+ aho-corasick@1.1.4
+ android_system_properties@0.1.5
+ anstream@1.0.0
+ anstyle-parse@1.0.0
+ anstyle-query@1.1.5
+ anstyle-wincon@3.0.11
+ anstyle@1.0.14
+ anyhow@1.0.102
+ arraydeque@0.5.1
+ arrayvec@0.7.6
+ ashpd@0.13.9
+ asn1-rs-derive@0.5.1
+ asn1-rs-impl@0.2.0
+ asn1-rs@0.6.2
+ async-broadcast@0.7.2
+ async-channel@2.5.0
+ async-recursion@1.1.1
+ async-trait@0.1.89
+ autocfg@1.5.0
+ base16ct@0.2.0
+ base64@0.22.1
+ base64ct@1.8.3
+ bincode@1.3.3
+ bitflags@1.3.2
+ bitflags@2.11.0
+ block-buffer@0.10.4
+ block-padding@0.3.3
+ bumpalo@3.20.2
+ byteorder@1.5.0
+ bytes@1.11.1
+ cairo-rs@0.20.12
+ cairo-sys-rs@0.20.10
+ camino@1.2.2
+ cargo-platform@0.3.2
+ cargo_metadata@0.23.1
+ cbc@0.1.2
+ cc@1.2.59
+ ccm@0.5.0
+ cfg-expr@0.20.7
+ cfg-if@1.0.4
+ cipher@0.4.4
+ clap@4.6.0
+ clap_builder@4.6.0
+ clap_derive@4.6.0
+ clap_lex@1.1.0
+ colorchoice@1.0.5
+ concurrent-queue@2.5.0
+ const-oid@0.9.6
+ const_format@0.2.35
+ const_format_proc_macros@0.2.34
+ core-foundation-sys@0.8.7
+ core-foundation@0.10.1
+ core-graphics-types@0.2.0
+ core-graphics@0.25.0
+ cpufeatures@0.2.17
+ critical-section@1.2.0
+ crossbeam-channel@0.5.15
+ crossbeam-epoch@0.9.18
+ crossbeam-utils@0.8.21
+ crypto-bigint@0.5.5
+ crypto-common@0.1.7
+ ctr@0.9.2
+ curve25519-dalek-derive@0.1.1
+ curve25519-dalek@4.1.3
+ data-encoding@2.10.0
+ der-parser@9.0.0
+ der@0.7.10
+ deranged@0.5.8
+ digest@0.10.7
+ displaydoc@0.2.5
+ downcast-rs@1.2.1
+ ecdsa@0.16.9
+ elliptic-curve@0.13.8
+ endi@1.1.1
+ enum-as-inner@0.6.1
+ enumflags2@0.7.12
+ enumflags2_derive@0.7.12
+ env_filter@1.0.1
+ env_logger@0.11.10
+ equivalent@1.0.2
+ errno@0.3.14
+ event-listener-strategy@0.5.4
+ event-listener@5.4.1
+ fastrand@2.4.1
+ ff@0.13.1
+ fiat-crypto@0.2.9
+ field-offset@0.3.6
+ find-msvc-tools@0.1.9
+ foldhash@0.1.5
+ foreign-types-macros@0.2.3
+ foreign-types-shared@0.3.1
+ foreign-types@0.5.0
+ form_urlencoded@1.2.2
+ fsevent-sys@4.1.0
+ futures-channel@0.3.32
+ futures-core@0.3.32
+ futures-executor@0.3.32
+ futures-io@0.3.32
+ futures-lite@2.6.1
+ futures-macro@0.3.32
+ futures-sink@0.3.32
+ futures-task@0.3.32
+ futures-util@0.3.32
+ futures@0.3.32
+ gdk-pixbuf-sys@0.20.10
+ gdk-pixbuf@0.20.10
+ gdk4-sys@0.9.6
+ gdk4@0.9.6
+ generic-array@0.14.7
+ getrandom@0.2.17
+ getrandom@0.3.4
+ getrandom@0.4.2
+ ghash@0.5.1
+ gio-sys@0.20.10
+ gio@0.20.12
+ git2@0.20.4
+ glib-build-tools@0.20.0
+ glib-macros@0.20.12
+ glib-sys@0.20.10
+ glib@0.20.12
+ gobject-sys@0.20.10
+ graphene-rs@0.20.10
+ graphene-sys@0.20.10
+ group@0.13.0
+ gsk4-sys@0.9.6
+ gsk4@0.9.6
+ gtk4-macros@0.9.5
+ gtk4-sys@0.9.6
+ gtk4@0.9.7
+ hashbrown@0.15.5
+ hashbrown@0.16.1
+ heck@0.5.0
+ hex@0.4.3
+ hickory-proto@0.25.2
+ hickory-resolver@0.25.2
+ hkdf@0.12.4
+ hmac@0.12.1
+ hostname@0.4.2
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.65
+ icu_collections@2.2.0
+ icu_locale_core@2.2.0
+ icu_normalizer@2.2.0
+ icu_normalizer_data@2.2.0
+ icu_properties@2.2.0
+ icu_properties_data@2.2.0
+ icu_provider@2.2.0
+ id-arena@2.3.0
+ idna@1.1.0
+ idna_adapter@1.2.1
+ indexmap@2.13.1
+ inotify-sys@0.1.5
+ inotify@0.11.1
+ inout@0.1.4
+ ipconfig@0.3.4
+ ipnet@2.12.0
+ is_debug@1.1.0
+ is_terminal_polyfill@1.70.2
+ itoa@1.0.18
+ jiff-static@0.2.23
+ jiff@0.2.23
+ jobserver@0.1.34
+ js-sys@0.3.94
+ keycode@1.0.0
+ keycode_macro@1.0.0
+ kqueue-sys@1.0.4
+ kqueue@1.1.1
+ lazy_static@1.5.0
+ leb128fmt@0.1.0
+ libadwaita-sys@0.7.2
+ libadwaita@0.7.2
+ libc@0.2.184
+ libgit2-sys@0.18.3+1.9.2
+ libz-sys@1.1.28
+ linux-raw-sys@0.12.1
+ linux-raw-sys@0.4.15
+ litemap@0.8.2
+ local-channel@0.1.5
+ local-waker@0.1.4
+ lock_api@0.4.14
+ log@0.4.29
+ memchr@2.8.0
+ memmap@0.7.0
+ memoffset@0.7.1
+ memoffset@0.9.1
+ minimal-lexical@0.2.1
+ mio@1.2.0
+ moka@0.12.15
+ nix@0.26.4
+ nom@7.1.3
+ notify-types@2.1.0
+ notify@8.2.0
+ num-bigint@0.4.6
+ num-conv@0.2.1
+ num-integer@0.1.46
+ num-traits@0.2.19
+ num_enum@0.7.6
+ num_enum_derive@0.7.6
+ num_threads@0.1.7
+ oid-registry@0.7.1
+ once_cell@1.21.4
+ once_cell_polyfill@1.70.2
+ opaque-debug@0.3.1
+ ordered-stream@0.2.0
+ p256@0.13.2
+ p384@0.13.1
+ pango-sys@0.20.10
+ pango@0.20.12
+ parking@2.2.1
+ parking_lot@0.12.5
+ parking_lot_core@0.9.12
+ paste@1.0.15
+ pem-rfc7468@0.7.0
+ pem@3.0.6
+ percent-encoding@2.3.2
+ pin-project-lite@0.2.17
+ pin-utils@0.1.0
+ pkcs8@0.10.2
+ pkg-config@0.3.32
+ polyval@0.6.2
+ portable-atomic-util@0.2.6
+ portable-atomic@1.13.1
+ potential_utf@0.1.5
+ powerfmt@0.2.0
+ ppv-lite86@0.2.21
+ prettyplease@0.2.37
+ primeorder@0.13.6
+ proc-macro-crate@3.5.0
+ proc-macro2@1.0.106
+ quick-xml@0.39.2
+ quote@1.0.45
+ r-efi@5.3.0
+ r-efi@6.0.0
+ rand@0.8.5
+ rand@0.9.2
+ rand_chacha@0.3.1
+ rand_chacha@0.9.0
+ rand_core@0.6.4
+ rand_core@0.9.5
+ rcgen@0.13.2
+ redox_syscall@0.5.18
+ regex-automata@0.4.14
+ regex-syntax@0.8.10
+ regex@1.12.3
+ reis@0.5.0
+ resolv-conf@0.7.6
+ rfc6979@0.4.0
+ ring@0.17.14
+ rustc_version@0.4.1
+ rusticata-macros@4.1.0
+ rustix@0.38.44
+ rustix@1.1.4
+ rustls-pki-types@1.14.0
+ rustls-webpki@0.103.10
+ rustls@0.23.37
+ rustversion@1.0.22
+ same-file@1.0.6
+ scopeguard@1.2.0
+ sec1@0.7.3
+ semver@1.0.28
+ serde@1.0.228
+ serde_core@1.0.228
+ serde_derive@1.0.228
+ serde_json@1.0.149
+ serde_repr@0.1.20
+ serde_spanned@0.6.9
+ serde_spanned@1.1.1
+ sha1@0.10.6
+ sha2@0.10.9
+ shadow-rs@1.7.1
+ shlex@1.3.0
+ signal-hook-registry@1.4.8
+ signature@2.2.0
+ slab@0.4.12
+ smallvec@1.15.1
+ socket2@0.6.3
+ spki@0.7.3
+ stable_deref_trait@1.2.1
+ strsim@0.11.1
+ subtle@2.6.1
+ syn@2.0.117
+ synstructure@0.13.2
+ system-deps@7.0.8
+ tagptr@0.2.0
+ target-lexicon@0.13.3
+ tempfile@3.27.0
+ thiserror-impl@1.0.69
+ thiserror-impl@2.0.18
+ thiserror@1.0.69
+ thiserror@2.0.18
+ time-core@0.1.8
+ time-macros@0.2.27
+ time@0.3.47
+ tinystr@0.8.3
+ tinyvec@1.11.0
+ tinyvec_macros@0.1.1
+ tokio-macros@2.7.0
+ tokio-stream@0.1.18
+ tokio-util@0.7.18
+ tokio@1.51.1
+ toml@0.8.23
+ toml@1.1.2+spec-1.1.0
+ toml_datetime@0.6.11
+ toml_datetime@1.1.1+spec-1.1.0
+ toml_edit@0.22.27
+ toml_edit@0.25.11+spec-1.1.0
+ toml_parser@1.1.2+spec-1.1.0
+ toml_write@0.1.2
+ toml_writer@1.1.1+spec-1.1.0
+ tracing-attributes@0.1.31
+ tracing-core@0.1.36
+ tracing@0.1.44
+ typenum@1.19.0
+ tz-rs@0.7.3
+ tzdb@0.7.3
+ tzdb_data@0.2.4
+ uds_windows@1.2.1
+ unicode-ident@1.0.24
+ unicode-xid@0.2.6
+ universal-hash@0.5.1
+ untrusted@0.9.0
+ url@2.5.8
+ utf8_iter@1.0.4
+ utf8parse@0.2.2
+ uuid@1.23.0
+ vcpkg@0.2.15
+ version-compare@0.2.1
+ version_check@0.9.5
+ walkdir@2.5.0
+ wasi@0.11.1+wasi-snapshot-preview1
+ wasip2@1.0.2+wasi-0.2.9
+ wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06
+ wasm-bindgen-macro-support@0.2.117
+ wasm-bindgen-macro@0.2.117
+ wasm-bindgen-shared@0.2.117
+ wasm-bindgen@0.2.117
+ wasm-encoder@0.244.0
+ wasm-metadata@0.244.0
+ wasmparser@0.244.0
+ wayland-backend@0.3.15
+ wayland-client@0.31.14
+ wayland-protocols-misc@0.3.12
+ wayland-protocols-wlr@0.3.12
+ wayland-protocols@0.32.12
+ wayland-scanner@0.31.10
+ wayland-sys@0.31.11
+ webrtc-dtls@0.12.0
+ webrtc-util@0.11.0
+ widestring@1.2.1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.11
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-collections@0.2.0
+ windows-core@0.61.2
+ windows-core@0.62.2
+ windows-future@0.2.1
+ windows-implement@0.60.2
+ windows-interface@0.59.3
+ windows-link@0.1.3
+ windows-link@0.2.1
+ windows-numerics@0.2.0
+ windows-registry@0.6.1
+ windows-result@0.3.4
+ windows-result@0.4.1
+ windows-strings@0.4.2
+ windows-strings@0.5.1
+ windows-sys@0.52.0
+ windows-sys@0.59.0
+ windows-sys@0.60.2
+ windows-sys@0.61.2
+ windows-targets@0.52.6
+ windows-targets@0.53.5
+ windows-threading@0.1.0
+ windows@0.61.3
+ windows_aarch64_gnullvm@0.52.6
+ windows_aarch64_gnullvm@0.53.1
+ windows_aarch64_msvc@0.52.6
+ windows_aarch64_msvc@0.53.1
+ windows_i686_gnu@0.52.6
+ windows_i686_gnu@0.53.1
+ windows_i686_gnullvm@0.52.6
+ windows_i686_gnullvm@0.53.1
+ windows_i686_msvc@0.52.6
+ windows_i686_msvc@0.53.1
+ windows_x86_64_gnu@0.52.6
+ windows_x86_64_gnu@0.53.1
+ windows_x86_64_gnullvm@0.52.6
+ windows_x86_64_gnullvm@0.53.1
+ windows_x86_64_msvc@0.52.6
+ windows_x86_64_msvc@0.53.1
+ winnow@0.7.15
+ winnow@1.0.1
+ wit-bindgen-core@0.51.0
+ wit-bindgen-rust-macro@0.51.0
+ wit-bindgen-rust@0.51.0
+ wit-bindgen@0.51.0
+ wit-component@0.244.0
+ wit-parser@0.244.0
+ writeable@0.6.3
+ x11@2.21.0
+ x25519-dalek@2.0.1
+ x509-parser@0.16.0
+ yasna@0.5.2
+ yoke-derive@0.8.2
+ yoke@0.8.2
+ zbus@5.14.0
+ zbus_macros@5.14.0
+ zbus_names@4.3.1
+ zerocopy-derive@0.8.48
+ zerocopy@0.8.48
+ zerofrom-derive@0.1.7
+ zerofrom@0.1.7
+ zeroize@1.8.2
+ zeroize_derive@1.4.3
+ zerotrie@0.2.4
+ zerovec-derive@0.11.3
+ zerovec@0.11.6
+ zmij@1.0.21
+ zvariant@5.10.0
+ zvariant_derive@5.10.0
+ zvariant_utils@3.3.0
+"
+
+RUST_MIN_VER="1.88"
+
+inherit cargo desktop systemd xdg
+
+DEPEND="
+ dev-libs/glib:2
+ gui-libs/gtk:4
+ gui-libs/libadwaita:1
+ x11-libs/libX11
+ x11-libs/libXtst
+ x11-themes/hicolor-icon-theme
+ debug? (
+ x11-libs/cairo
+ x11-libs/pango
+ x11-libs/gdk-pixbuf:2
+ media-libs/graphene
+ dev-libs/libgit2:=
+ )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+DESCRIPTION="Software KVM Switch / mouse & keyboard sharing software for Local Area Networks"
+HOMEPAGE="https://github.com/feschber/lan-mouse"
+
+SRC_URI="
+ ${CARGO_CRATE_URIS}
+ https://github.com/feschber/lan-mouse/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+"
+
+LICENSE="GPL-3+"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD CC0-1.0 ISC MIT
+ Unicode-3.0 ZLIB
+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT="mirror"
+
+QA_FLAGS_IGNORED="usr/bin/lan-mouse"
+
+src_install() {
+ cargo_src_install
+ doicon -s scalable lan-mouse-gtk/resources/de.feschber.LanMouse.svg
+ domenu de.feschber.LanMouse.desktop
+ systemd_douserunit service/lan-mouse.service
+}
diff --git a/gui-apps/noctalia-greeter/Manifest b/gui-apps/noctalia-greeter/Manifest
index bad423dd1333..d1746830c143 100644
--- a/gui-apps/noctalia-greeter/Manifest
+++ b/gui-apps/noctalia-greeter/Manifest
@@ -1,5 +1,2 @@
-DIST noctalia-greeter-1.2.1.tar.gz 1898496 BLAKE2B 7c7359c153bf88f620a1cf27a4f955fce2cc4cb211b8119ffa0f6398ce4d21d4dd81551ff445345d72d43b47057f3e4783f6d479e87d0730ce3f3574995996ef SHA512 cab92710210faf379186dafa177602733e245482659d7ae6d01cb3ae60463a37beb549fe268fbba8ae7d62b0a2362ce4c0e62da7c0856a676c488d5c2d3357a3
-DIST noctalia-greeter-1.3.0.tar.gz 1917752 BLAKE2B 755b5e97b5bc680c728296d775cf9fdb6c5593fe8b9ad8ac1071e7ee13656b03fc6885331d93aab1acb9d8c949419afca23b6cf8f648967e1bb9e22ab5052c9f SHA512 acd584ce54d7bc6a54fb21cedc523b474238a6e1290166c93628a0e567427fc20b2c8602eacab395ac618a6bb3d70eddb02b5879fd26f1c09aa5a9c1fd264f63
-DIST noctalia-greeter-1.3.1.tar.gz 1917759 BLAKE2B bbe6b93f5caefe7bb389a3b57dc84bb139315e69eb79e9cd17ddea1c3545f55f673d4e3ba156e6f965730c62018ea8ab8c63965c6a8461a0f5630197a13ea7dc SHA512 c36f93d7341db4cf201395351b1e3567f30a6435fdb05d64385a0cff9362f81d4896029706465ee46bf33875c6acbdcd50a9686ca819648ba959988f83a8eef5
-DIST noctalia-greeter-1.5.0.tar.gz 1955651 BLAKE2B 61db2f06d031e69e276a7952eaac4bf074f695b4e9074447bc45326dd856b1d37bc15bf7b52c504b1474d5eeb9280dd428d8d79a2e33fc13c78bdcd9511ac765 SHA512 9509b4d8062fd67cd340953da5135d48ca932cd5ed78f4cb77bede39bfd90de0675181dfd2e80bdeec1323e83323fc46e1ef02a4531df0b97184a33a91bc9086
DIST noctalia-greeter-1.6.0.tar.gz 1979877 BLAKE2B ffe8f95bc4d2d2a0ad60d5ff6959149910b2442dfe7feb7e082e1f7cc76a5e0ed24ee8d90da4942438077cf94d97b98332fc4d0983a344a5856529efd17f038b SHA512 cff00e2bdad8cd468b87dd8a341bb014e03e73f7ed9b40b22299f5007b1fa8eda58693ae08bd8bd60962bb4aea9fa4d944dc8cb7cc664a3f6f55ba15ec5279c3
+DIST noctalia-greeter-1.7.0.tar.gz 2005768 BLAKE2B ed1db3b5e563441c309c0d117b9d481a9d536d05d469871c467da7989e6d545f20a41cc25cde5f0edafd511b00919ecbaf06610913c8fbc7433c7b9da9ffdfa2 SHA512 5be9258ff272f6d957d62840099f5f0498635cc01032abdaff960814e7a8c55cb16a064ce5d6f7d51d587c57a3fa50e90efe9db5f525ed005c5e56846facf442
diff --git a/gui-apps/noctalia-greeter/noctalia-greeter-1.2.1.ebuild b/gui-apps/noctalia-greeter/noctalia-greeter-1.2.1.ebuild
deleted file mode 100644
index 8becf57621a7..000000000000
--- a/gui-apps/noctalia-greeter/noctalia-greeter-1.2.1.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit meson optfeature tmpfiles
-
-DESCRIPTION="A minimal login greeter for greetd that matches Noctalia Shell"
-HOMEPAGE="https://noctalia.dev/ https://github.com/noctalia-dev/noctalia-greeter"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/noctalia-dev/${PN}.git"
-else
- SRC_URI="https://github.com/noctalia-dev/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-DEPEND="
- dev-cpp/tomlplusplus
- dev-cpp/nlohmann_json
- dev-libs/glib:2
- dev-libs/libinput
- dev-libs/wayland
- dev-libs/stb
- gnome-base/librsvg:2
- gui-libs/greetd
- gui-libs/wlroots:0.20=
- media-libs/fontconfig
- media-libs/freetype
- media-libs/libwebp
- media-libs/mesa
- sys-apps/dbus
- virtual/opengl
- x11-libs/cairo[glib]
- x11-libs/libxkbcommon
- x11-libs/pango
-"
-
-RDEPEND="${DEPEND}"
-
-BDEPEND="
- dev-libs/wayland
- dev-util/wayland-scanner
- dev-libs/wayland-protocols
-"
-
-# TODO: unbundle tabler fonts
-
-src_prepare() {
- default
-
- # replace greetd user
- sed -E -i 's/^(\S+\s+\S+\s+\S+\s+)greeter(\s+)greeter(\s+)/\1greetd\2greetd\3/' data/tmpfiles.d/${PN}.conf
-}
-
-src_install() {
- meson_src_install
-
- # remove unneeded additional scripts
- rm "${ED}"/usr/share/${PN}/*.sh || die
-
- dotmpfiles data/tmpfiles.d/${PN}.conf
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- optfeature "avatars" sys-apps/accountsservice
-}
diff --git a/gui-apps/noctalia-greeter/noctalia-greeter-1.3.0.ebuild b/gui-apps/noctalia-greeter/noctalia-greeter-1.3.0.ebuild
deleted file mode 100644
index 8becf57621a7..000000000000
--- a/gui-apps/noctalia-greeter/noctalia-greeter-1.3.0.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit meson optfeature tmpfiles
-
-DESCRIPTION="A minimal login greeter for greetd that matches Noctalia Shell"
-HOMEPAGE="https://noctalia.dev/ https://github.com/noctalia-dev/noctalia-greeter"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/noctalia-dev/${PN}.git"
-else
- SRC_URI="https://github.com/noctalia-dev/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-DEPEND="
- dev-cpp/tomlplusplus
- dev-cpp/nlohmann_json
- dev-libs/glib:2
- dev-libs/libinput
- dev-libs/wayland
- dev-libs/stb
- gnome-base/librsvg:2
- gui-libs/greetd
- gui-libs/wlroots:0.20=
- media-libs/fontconfig
- media-libs/freetype
- media-libs/libwebp
- media-libs/mesa
- sys-apps/dbus
- virtual/opengl
- x11-libs/cairo[glib]
- x11-libs/libxkbcommon
- x11-libs/pango
-"
-
-RDEPEND="${DEPEND}"
-
-BDEPEND="
- dev-libs/wayland
- dev-util/wayland-scanner
- dev-libs/wayland-protocols
-"
-
-# TODO: unbundle tabler fonts
-
-src_prepare() {
- default
-
- # replace greetd user
- sed -E -i 's/^(\S+\s+\S+\s+\S+\s+)greeter(\s+)greeter(\s+)/\1greetd\2greetd\3/' data/tmpfiles.d/${PN}.conf
-}
-
-src_install() {
- meson_src_install
-
- # remove unneeded additional scripts
- rm "${ED}"/usr/share/${PN}/*.sh || die
-
- dotmpfiles data/tmpfiles.d/${PN}.conf
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- optfeature "avatars" sys-apps/accountsservice
-}
diff --git a/gui-apps/noctalia-greeter/noctalia-greeter-1.3.1.ebuild b/gui-apps/noctalia-greeter/noctalia-greeter-1.3.1.ebuild
deleted file mode 100644
index 8becf57621a7..000000000000
--- a/gui-apps/noctalia-greeter/noctalia-greeter-1.3.1.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit meson optfeature tmpfiles
-
-DESCRIPTION="A minimal login greeter for greetd that matches Noctalia Shell"
-HOMEPAGE="https://noctalia.dev/ https://github.com/noctalia-dev/noctalia-greeter"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/noctalia-dev/${PN}.git"
-else
- SRC_URI="https://github.com/noctalia-dev/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-DEPEND="
- dev-cpp/tomlplusplus
- dev-cpp/nlohmann_json
- dev-libs/glib:2
- dev-libs/libinput
- dev-libs/wayland
- dev-libs/stb
- gnome-base/librsvg:2
- gui-libs/greetd
- gui-libs/wlroots:0.20=
- media-libs/fontconfig
- media-libs/freetype
- media-libs/libwebp
- media-libs/mesa
- sys-apps/dbus
- virtual/opengl
- x11-libs/cairo[glib]
- x11-libs/libxkbcommon
- x11-libs/pango
-"
-
-RDEPEND="${DEPEND}"
-
-BDEPEND="
- dev-libs/wayland
- dev-util/wayland-scanner
- dev-libs/wayland-protocols
-"
-
-# TODO: unbundle tabler fonts
-
-src_prepare() {
- default
-
- # replace greetd user
- sed -E -i 's/^(\S+\s+\S+\s+\S+\s+)greeter(\s+)greeter(\s+)/\1greetd\2greetd\3/' data/tmpfiles.d/${PN}.conf
-}
-
-src_install() {
- meson_src_install
-
- # remove unneeded additional scripts
- rm "${ED}"/usr/share/${PN}/*.sh || die
-
- dotmpfiles data/tmpfiles.d/${PN}.conf
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- optfeature "avatars" sys-apps/accountsservice
-}
diff --git a/gui-apps/noctalia-greeter/noctalia-greeter-1.6.0.ebuild b/gui-apps/noctalia-greeter/noctalia-greeter-1.6.0.ebuild
index 4fe964940a49..041385e5d165 100644
--- a/gui-apps/noctalia-greeter/noctalia-greeter-1.6.0.ebuild
+++ b/gui-apps/noctalia-greeter/noctalia-greeter-1.6.0.ebuild
@@ -23,16 +23,16 @@ DEPEND="
dev-cpp/tomlplusplus
dev-cpp/nlohmann_json
dev-libs/glib:2
- dev-libs/libxml2
- dev-libs/libinput
+ dev-libs/libxml2:2=
+ dev-libs/libinput:0=
dev-libs/wayland
dev-libs/stb
gnome-base/librsvg:2
gui-libs/greetd
- gui-libs/wlroots:0.20=
+ gui-libs/wlroots:0.20
media-libs/fontconfig
media-libs/freetype
- media-libs/libwebp
+ media-libs/libwebp:0=
media-libs/mesa
sys-apps/dbus
virtual/opengl
diff --git a/gui-apps/noctalia-greeter/noctalia-greeter-1.5.0.ebuild b/gui-apps/noctalia-greeter/noctalia-greeter-1.7.0.ebuild
index 4fe964940a49..f8c8105a32f7 100644
--- a/gui-apps/noctalia-greeter/noctalia-greeter-1.5.0.ebuild
+++ b/gui-apps/noctalia-greeter/noctalia-greeter-1.7.0.ebuild
@@ -23,16 +23,17 @@ DEPEND="
dev-cpp/tomlplusplus
dev-cpp/nlohmann_json
dev-libs/glib:2
- dev-libs/libxml2
- dev-libs/libinput
+ dev-libs/libxml2:2=
+ dev-libs/libinput:0=
dev-libs/wayland
dev-libs/stb
gnome-base/librsvg:2
gui-libs/greetd
- gui-libs/wlroots:0.20=
+ gui-libs/wlroots:0.20
media-libs/fontconfig
media-libs/freetype
- media-libs/libwebp
+ media-libs/libjxl:0=
+ media-libs/libwebp:0=
media-libs/mesa
sys-apps/dbus
virtual/opengl
diff --git a/gui-apps/noctalia-greeter/noctalia-greeter-9999.ebuild b/gui-apps/noctalia-greeter/noctalia-greeter-9999.ebuild
index 644738216311..f8c8105a32f7 100644
--- a/gui-apps/noctalia-greeter/noctalia-greeter-9999.ebuild
+++ b/gui-apps/noctalia-greeter/noctalia-greeter-9999.ebuild
@@ -23,17 +23,17 @@ DEPEND="
dev-cpp/tomlplusplus
dev-cpp/nlohmann_json
dev-libs/glib:2
- dev-libs/libxml2
- dev-libs/libinput
+ dev-libs/libxml2:2=
+ dev-libs/libinput:0=
dev-libs/wayland
dev-libs/stb
gnome-base/librsvg:2
gui-libs/greetd
- gui-libs/wlroots:0.20=
+ gui-libs/wlroots:0.20
media-libs/fontconfig
media-libs/freetype
- media-libs/libjxl
- media-libs/libwebp
+ media-libs/libjxl:0=
+ media-libs/libwebp:0=
media-libs/mesa
sys-apps/dbus
virtual/opengl
diff --git a/gui-apps/sddm-conf/sddm-conf-0.3.0.ebuild b/gui-apps/sddm-conf/sddm-conf-0.3.0.ebuild
index 80a8aff0a73d..c14537b7b064 100644
--- a/gui-apps/sddm-conf/sddm-conf-0.3.0.ebuild
+++ b/gui-apps/sddm-conf/sddm-conf-0.3.0.ebuild
@@ -16,7 +16,7 @@ KEYWORDS="~amd64"
RDEPEND="
dev-qt/qtbase:6[widgets]
sys-auth/polkit
- x11-misc/sddm
+ gui-apps/sddm
"
DEPEND="${RDEPEND}"
BDEPEND="
diff --git a/gui-apps/sddm-conf/sddm-conf-0.4.1.ebuild b/gui-apps/sddm-conf/sddm-conf-0.4.1.ebuild
index 70d1515e5c85..391768234aaa 100644
--- a/gui-apps/sddm-conf/sddm-conf-0.4.1.ebuild
+++ b/gui-apps/sddm-conf/sddm-conf-0.4.1.ebuild
@@ -16,7 +16,7 @@ KEYWORDS="~amd64"
RDEPEND="
dev-qt/qtbase:6[widgets]
sys-auth/polkit
- x11-misc/sddm
+ gui-apps/sddm
"
DEPEND="${RDEPEND}"
BDEPEND="
diff --git a/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0-r1.ebuild b/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0-r1.ebuild
index c7591e5ac7ec..e8c6876d4fda 100644
--- a/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0-r1.ebuild
+++ b/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0-r1.ebuild
@@ -15,7 +15,7 @@ IUSE="custom-compositor kwin systemd weston"
REQUIRED_USE="?? ( custom-compositor kwin weston )"
RDEPEND="
- !<x11-misc/sddm-0.21.0_p20250818
+ !<gui-apps/sddm-0.21.0_p20250818
kwin? ( kde-plasma/kwin:6 )
weston? ( dev-libs/weston[kiosk] )
!custom-compositor? ( !kwin? ( !weston? ( x11-base/xorg-server ) ) )
diff --git a/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0.ebuild b/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0.ebuild
index d76914066de2..51a32fd1e995 100644
--- a/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0.ebuild
+++ b/gui-apps/sddm-gentoo-config/sddm-gentoo-config-0.ebuild
@@ -15,7 +15,7 @@ IUSE="custom-compositor kwin systemd weston"
REQUIRED_USE="?? ( custom-compositor kwin weston )"
RDEPEND="
- !<x11-misc/sddm-0.21.0_p20250818
+ !<gui-apps/sddm-0.21.0_p20250818
kwin? ( kde-plasma/kwin:6 )
weston? ( dev-libs/weston[kiosk] )
!custom-compositor? ( !kwin? ( !weston? ( x11-base/xorg-server ) ) )
diff --git a/gui-apps/sddm/Manifest b/gui-apps/sddm/Manifest
new file mode 100644
index 000000000000..ede7d2100cba
--- /dev/null
+++ b/gui-apps/sddm/Manifest
@@ -0,0 +1,2 @@
+DIST sddm-0.21.0-pam.tar.xz 676 BLAKE2B 06a79f74a5833eca9877df4be8639311382d13061b21aa3627e6c4b07725878ded62221fca943440bacc143f6be2a23b2e0a2124012ff2c9fac82e1eded11144 SHA512 6d91eef2434346f7707122454522cf19f104994ac95d562417f6060a92b4e6c9792bebcccabac8290479200b4ba02fc4d92c6098c435c7ceda796d619d8913c2
+DIST sddm-0.21.0_p20260819-da0b64d8.tar.gz 3559093 BLAKE2B 663b1856b3d16000865b1f77e7fedfbaa9d42e371db874b3f4a009384cf1049ce8ee587e5778b2e85aaf3c17eea87e3f4ff5d5bae628a2f1a8e8eb7cd1f3eaed SHA512 910674edb48249965ca24bbdfe8a8ee8a573b62ef20d16bf052ba75d6c10629aa5fa7a7a8932b834d3d48ddda50ee3110213ba23d442afa17a7a90788bddd20c
diff --git a/x11-misc/sddm/files/sddm-0.20.0-respect-user-flags.patch b/gui-apps/sddm/files/sddm-0.20.0-respect-user-flags.patch
index 7f5bc400f43c..7f5bc400f43c 100644
--- a/x11-misc/sddm/files/sddm-0.20.0-respect-user-flags.patch
+++ b/gui-apps/sddm/files/sddm-0.20.0-respect-user-flags.patch
diff --git a/x11-misc/sddm/files/sddm-0.21.0_p20250310-Xsession-xinitrc.patch b/gui-apps/sddm/files/sddm-0.21.0_p20250310-Xsession-xinitrc.patch
index 027863ae3c45..027863ae3c45 100644
--- a/x11-misc/sddm/files/sddm-0.21.0_p20250310-Xsession-xinitrc.patch
+++ b/gui-apps/sddm/files/sddm-0.21.0_p20250310-Xsession-xinitrc.patch
diff --git a/x11-misc/sddm/files/sddm-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch b/gui-apps/sddm/files/sddm-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch
index 674c38bfdf9c..674c38bfdf9c 100644
--- a/x11-misc/sddm/files/sddm-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch
+++ b/gui-apps/sddm/files/sddm-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch
diff --git a/x11-misc/sddm/files/sddm-0.21.0_p20251101-cmake-minreqver-3.16.patch b/gui-apps/sddm/files/sddm-0.21.0_p20251101-cmake-minreqver-3.16.patch
index 53d19fd0c53f..53d19fd0c53f 100644
--- a/x11-misc/sddm/files/sddm-0.21.0_p20251101-cmake-minreqver-3.16.patch
+++ b/gui-apps/sddm/files/sddm-0.21.0_p20251101-cmake-minreqver-3.16.patch
diff --git a/x11-misc/sddm/files/sddm-0.21.0_p20251101-fix-restart-greeter.patch b/gui-apps/sddm/files/sddm-0.21.0_p20251101-fix-restart-greeter.patch
index 71fb01464e34..71fb01464e34 100644
--- a/x11-misc/sddm/files/sddm-0.21.0_p20251101-fix-restart-greeter.patch
+++ b/gui-apps/sddm/files/sddm-0.21.0_p20251101-fix-restart-greeter.patch
diff --git a/x11-misc/sddm/files/sddm-0.21.0_p20251101-fix-terminal-clearing.patch b/gui-apps/sddm/files/sddm-0.21.0_p20251101-fix-terminal-clearing.patch
index 6f4be4124aa6..6f4be4124aa6 100644
--- a/x11-misc/sddm/files/sddm-0.21.0_p20251101-fix-terminal-clearing.patch
+++ b/gui-apps/sddm/files/sddm-0.21.0_p20251101-fix-terminal-clearing.patch
diff --git a/x11-misc/sddm/files/sddm-0.21.0_p20260819-dont-request-vt-signal-delivery.patch b/gui-apps/sddm/files/sddm-0.21.0_p20260819-dont-request-vt-signal-delivery.patch
index bf0d23ea0e89..bf0d23ea0e89 100644
--- a/x11-misc/sddm/files/sddm-0.21.0_p20260819-dont-request-vt-signal-delivery.patch
+++ b/gui-apps/sddm/files/sddm-0.21.0_p20260819-dont-request-vt-signal-delivery.patch
diff --git a/x11-misc/sddm/files/sddm-0.21.0_p20260819-honor-PAM-supplemental-groups-v2.patch b/gui-apps/sddm/files/sddm-0.21.0_p20260819-honor-PAM-supplemental-groups-v2.patch
index b0962302d09a..b0962302d09a 100644
--- a/x11-misc/sddm/files/sddm-0.21.0_p20260819-honor-PAM-supplemental-groups-v2.patch
+++ b/gui-apps/sddm/files/sddm-0.21.0_p20260819-honor-PAM-supplemental-groups-v2.patch
diff --git a/x11-misc/sddm/files/sddm.logrotate b/gui-apps/sddm/files/sddm.logrotate
index ba6199c416dc..ba6199c416dc 100644
--- a/x11-misc/sddm/files/sddm.logrotate
+++ b/gui-apps/sddm/files/sddm.logrotate
diff --git a/x11-misc/sddm/metadata.xml b/gui-apps/sddm/metadata.xml
index f62603c169f6..f62603c169f6 100644
--- a/x11-misc/sddm/metadata.xml
+++ b/gui-apps/sddm/metadata.xml
diff --git a/x11-misc/sddm/sddm-0.21.0_p20260819-r1.ebuild b/gui-apps/sddm/sddm-0.21.0_p20260819-r1.ebuild
index 6295c891fbfe..6295c891fbfe 100644
--- a/x11-misc/sddm/sddm-0.21.0_p20260819-r1.ebuild
+++ b/gui-apps/sddm/sddm-0.21.0_p20260819-r1.ebuild
diff --git a/kde-apps/yakuake/metadata.xml b/kde-apps/yakuake/metadata.xml
index 310b6b9af48c..a68e5bdfa05e 100644
--- a/kde-apps/yakuake/metadata.xml
+++ b/kde-apps/yakuake/metadata.xml
@@ -13,8 +13,5 @@
key press (defaults to F12) with a konsole window, supports multiple tabs,
tabs, multiple screens and mouse wheel tab navigation amongst other features.
</longdescription>
- <use>
- <flag name="absolute-position">Use <pkg>kde-plasma/kwayland</pkg> for absolute window positioning in KWin</flag>
- </use>
<origin>srcux</origin>
</pkgmetadata>
diff --git a/kde-apps/yakuake/yakuake-26.04.3.ebuild b/kde-apps/yakuake/yakuake-26.04.3.ebuild
index 106c63acac3d..0fc7e16025ac 100644
--- a/kde-apps/yakuake/yakuake-26.04.3.ebuild
+++ b/kde-apps/yakuake/yakuake-26.04.3.ebuild
@@ -14,7 +14,7 @@ HOMEPAGE="https://apps.kde.org/yakuake/"
LICENSE="GPL-2 LGPL-2"
SLOT="6"
KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
-IUSE="absolute-position"
+IUSE="wayland"
# slot op: Uses Qt6::GuiPrivate for qtx11extras_p.h
# kde-frameworks/kwindowsystem[X]: Unconditional use of KX11Extras
@@ -45,7 +45,7 @@ RDEPEND="
x11-libs/libX11
x11-libs/libxcb
x11-libs/xcb-util
- absolute-position? ( kde-plasma/kwayland:6 )
+ wayland? ( kde-plasma/kwayland:6 )
"
DEPEND="${RDEPEND}
dev-libs/plasma-wayland-protocols
@@ -56,7 +56,7 @@ src_configure() {
# TODO: start to use WITH_X11 option? but there's still the
# KX11Extras use...
local mycmakeargs=(
- $(cmake_use_find_package absolute-position KWayland)
+ $(cmake_use_find_package wayland KWayland)
)
ecm_src_configure
diff --git a/kde-frameworks/baloo/baloo-6.31.0.ebuild b/kde-frameworks/baloo/baloo-6.31.0-r1.ebuild
index a6d9f8414ad6..fb8b764ffbe5 100644
--- a/kde-frameworks/baloo/baloo-6.31.0.ebuild
+++ b/kde-frameworks/baloo/baloo-6.31.0-r1.ebuild
@@ -32,3 +32,5 @@ DEPEND="
RDEPEND="${DEPEND}
!${CATEGORY}/${PN}:5[-kf6compat(-)]
"
+
+PATCHES=( "${FILESDIR}/${P}-do-not-start-service-too-early.patch" ) # bug #984337
diff --git a/kde-frameworks/baloo/files/baloo-6.31.0-do-not-start-service-too-early.patch b/kde-frameworks/baloo/files/baloo-6.31.0-do-not-start-service-too-early.patch
new file mode 100644
index 000000000000..a223f42df58d
--- /dev/null
+++ b/kde-frameworks/baloo/files/baloo-6.31.0-do-not-start-service-too-early.patch
@@ -0,0 +1,30 @@
+From 096b0d3f7166ed2bde0266cfad9f04ca50903090 Mon Sep 17 00:00:00 2001
+From: Harald Sitter <sitter@kde.org>
+Date: Tue, 13 Oct 2026 18:32:06 +0200
+Subject: [PATCH] service: do not start too early
+
+previously the service got queued along with all the other early start
+units but in fact we a) don't need to be up ASAP and b) require a
+compositor to avoid crashing the extractor on neither working wayland or
+x11 sockets. as such, order the service after the core session target
+has been reached
+---
+ src/file/kde-baloo.service.in | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/file/kde-baloo.service.in b/src/file/kde-baloo.service.in
+index ddb698e5..e0f39606 100644
+--- a/src/file/kde-baloo.service.in
++++ b/src/file/kde-baloo.service.in
+@@ -1,6 +1,8 @@
+ [Unit]
+ Description=Baloo File Indexer Daemon
+ PartOf=graphical-session.target
++# We need the compositor to be running since we fork QGuiApplications.
++After=graphical-session.target
+
+ [Service]
+ ExecStart=@KDE_INSTALL_FULL_LIBEXECDIR_KF@/baloo_file
+--
+GitLab
+
diff --git a/kde-plasma/plasma-meta/metadata.xml b/kde-plasma/plasma-meta/metadata.xml
index 23bb46b540b5..4fd276e98eea 100644
--- a/kde-plasma/plasma-meta/metadata.xml
+++ b/kde-plasma/plasma-meta/metadata.xml
@@ -28,7 +28,7 @@
<flag name="plymouth">Pull in Breeze theme for <pkg>sys-boot/plymouth</pkg>
</flag>
<flag name="pulseaudio">Install Plasma applet for PulseAudio volume management</flag>
- <flag name="sddm">Pull in the <pkg>x11-misc/sddm</pkg> display manager and system settings module</flag>
+ <flag name="sddm">Pull in the <pkg>gui-apps/sddm</pkg> display manager and system settings module</flag>
<flag name="sdk">Pull in <pkg>kde-plasma/plasma-sdk</pkg> for Plasma development</flag>
<flag name="smart">Pull in <pkg>kde-plasma/plasma-disks</pkg> for disk health monitoring</flag>
<flag name="thunderbolt">Pull in <pkg>kde-plasma/plasma-thunderbolt</pkg> control center module</flag>
diff --git a/kde-plasma/plasma-meta/plasma-meta-6.7.5.ebuild b/kde-plasma/plasma-meta/plasma-meta-6.7.5.ebuild
index bbca313d0d50..c43c7d94312d 100644
--- a/kde-plasma/plasma-meta/plasma-meta-6.7.5.ebuild
+++ b/kde-plasma/plasma-meta/plasma-meta-6.7.5.ebuild
@@ -80,7 +80,7 @@ RDEPEND="
display-manager? (
sddm? (
>=kde-plasma/sddm-kcm-${PV}:${SLOT}
- >=x11-misc/sddm-0.21.0_p20240302[elogind?,systemd?]
+ >=gui-apps/sddm-0.21.0_p20240302[elogind?,systemd?]
)
!sddm? ( x11-misc/lightdm )
)
diff --git a/kde-plasma/plasma-meta/plasma-meta-6.8.1.ebuild b/kde-plasma/plasma-meta/plasma-meta-6.8.1.ebuild
index 7e04132b1ae9..eabf5e5e8097 100644
--- a/kde-plasma/plasma-meta/plasma-meta-6.8.1.ebuild
+++ b/kde-plasma/plasma-meta/plasma-meta-6.8.1.ebuild
@@ -77,7 +77,7 @@ RDEPEND="
display-manager? (
sddm? (
>=kde-plasma/sddm-kcm-${PV}:${SLOT}
- >=x11-misc/sddm-0.21.0_p20240302[elogind?,systemd?]
+ >=gui-apps/sddm-0.21.0_p20240302[elogind?,systemd?]
)
!sddm? ( x11-misc/lightdm )
)
diff --git a/kde-plasma/sddm-kcm/sddm-kcm-6.7.5.ebuild b/kde-plasma/sddm-kcm/sddm-kcm-6.7.5.ebuild
index 88d22438b154..173d6e57397d 100644
--- a/kde-plasma/sddm-kcm/sddm-kcm-6.7.5.ebuild
+++ b/kde-plasma/sddm-kcm/sddm-kcm-6.7.5.ebuild
@@ -32,7 +32,7 @@ DEPEND="
RDEPEND="${DEPEND}
>=kde-frameworks/kirigami-${KFMIN}:6
>=kde-frameworks/kitemmodels-${KFMIN}:6
- x11-misc/sddm
+ gui-apps/sddm
"
BDEPEND=">=kde-frameworks/kcmutils-${KFMIN}:6"
diff --git a/kde-plasma/sddm-kcm/sddm-kcm-6.8.1.ebuild b/kde-plasma/sddm-kcm/sddm-kcm-6.8.1.ebuild
index 2dae5d09d05d..9c7000ba09b4 100644
--- a/kde-plasma/sddm-kcm/sddm-kcm-6.8.1.ebuild
+++ b/kde-plasma/sddm-kcm/sddm-kcm-6.8.1.ebuild
@@ -32,7 +32,7 @@ DEPEND="
RDEPEND="${DEPEND}
>=kde-frameworks/kirigami-${KFMIN}:6
>=kde-frameworks/kitemmodels-${KFMIN}:6
- x11-misc/sddm
+ gui-apps/sddm
"
BDEPEND=">=kde-frameworks/kcmutils-${KFMIN}:6"
diff --git a/llvm-core/clang/Manifest b/llvm-core/clang/Manifest
index 98808015389f..88f21febb53a 100644
--- a/llvm-core/clang/Manifest
+++ b/llvm-core/clang/Manifest
@@ -4,6 +4,7 @@ DIST llvm-19.1.0-manpages.tar.bz2 286165 BLAKE2B d96df2e748d2d52af2e8b7023f59af9
DIST llvm-20.1.0-manpages.tar.xz 296208 BLAKE2B 38832b461de120fd79ff02eb1bc2b71d5bb1280a1daf91860ffcb6994fff6dfcc2bbd1c1d850d9fc31fe47c4a35aa14fc2964113768d53e7c1ebe6710e24a9ae SHA512 296b4a9b8aa50761c342f0f279c529d1a56f2ab5430e2c65efc3b53c4a3ddc506ce4222b9d9bd49d38884c5b00a36ee16ae62746912ec1c881f69bfb4d124a54
DIST llvm-21.1.0-manpages.tar.xz 303556 BLAKE2B 93e844bb13826e0154a24bfcdc108c9e373903621b797d3382dbccd4d24ae5af17e994f9ffeb482a89e0c123c82b3b61cd45e3f9376c9223075915377a4dc7fc SHA512 9940332e94439ba57fe7ef5ef4439f505d28c2ddfbbdb3d79e8a664a7164bd80b874c29c9c4abdde1eadaadc975daa4254bf110e57359c3012464be6eac6fb87
DIST llvm-22.1.0-r2-manpages.tar.xz 320124 BLAKE2B 7a54177781e84d5e0f788a3ebc00f9417b943e14d8c462a859c5267f87bb8c9ed5132000d069b6cbab089411d025852af3b35fd7ace0a1f0f606bee210f9e8e5 SHA512 cdf986c1927436e49ef0b5a02b5fc08473bad4aeef11164119824ef02afb8c5513a19e1d0bed2211ba259ef2d331f833daf9543d030e56d02407ef3efdb74196
+DIST llvm-23.1.4-manpages.tar.xz 337700 BLAKE2B ecdbda976c00923f07a0342ebb1065fb4ac5c51d398c5460bbd1039493ff3a16cdf0c9abe17bd42a2ff1b426f8ae9241c4d81d3eb1751b1a5c43c544baee4735 SHA512 5f2c19582c9887eecd916d7e9855446e0f0c8a458d0c43850994de4ebd0ab24cae83a4e50049d82b218c61b46664877e2b1fcbf720970e9ef558f65ff751737c
DIST llvm-gentoo-patchset-17.0.6-r5.tar.xz 7256 BLAKE2B d0f3f7df4ee38fbcd236225e9b64e313a1d4bae8d8eff0473fe50e20e79e0e161af418eb4a56e29e5b188cb17cd12c43bc42716d390286f6ab42d45b86b7a040 SHA512 70ca00b79e927931edfe905688f82b744443675c8b6ad7b5a962636629ea73d778dbf7a43c4947f05773eb04cdc0c1a64fe9d0e41d46ef04237b95bfc076740f
DIST llvm-gentoo-patchset-18.1.8-r8.tar.xz 27220 BLAKE2B 2bf71ea769ebe61c863a52a891743d705f313d41416d02614deb9f5e8bffec3a22b3c681d3cee4b4a4da224943d1015f061562d379f7d3934f4e9196ef6feeb4 SHA512 08264c6a5ae30666d6e18c74cb9cd706317157d5cb9b31f35c6807b9396f733dc80ba957c711bf20e2a4388f2ef8ba620e82598fa779922accb50dad7db23eb3
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
diff --git a/llvm-core/llvm/Manifest b/llvm-core/llvm/Manifest
index 98808015389f..88f21febb53a 100644
--- a/llvm-core/llvm/Manifest
+++ b/llvm-core/llvm/Manifest
@@ -4,6 +4,7 @@ DIST llvm-19.1.0-manpages.tar.bz2 286165 BLAKE2B d96df2e748d2d52af2e8b7023f59af9
DIST llvm-20.1.0-manpages.tar.xz 296208 BLAKE2B 38832b461de120fd79ff02eb1bc2b71d5bb1280a1daf91860ffcb6994fff6dfcc2bbd1c1d850d9fc31fe47c4a35aa14fc2964113768d53e7c1ebe6710e24a9ae SHA512 296b4a9b8aa50761c342f0f279c529d1a56f2ab5430e2c65efc3b53c4a3ddc506ce4222b9d9bd49d38884c5b00a36ee16ae62746912ec1c881f69bfb4d124a54
DIST llvm-21.1.0-manpages.tar.xz 303556 BLAKE2B 93e844bb13826e0154a24bfcdc108c9e373903621b797d3382dbccd4d24ae5af17e994f9ffeb482a89e0c123c82b3b61cd45e3f9376c9223075915377a4dc7fc SHA512 9940332e94439ba57fe7ef5ef4439f505d28c2ddfbbdb3d79e8a664a7164bd80b874c29c9c4abdde1eadaadc975daa4254bf110e57359c3012464be6eac6fb87
DIST llvm-22.1.0-r2-manpages.tar.xz 320124 BLAKE2B 7a54177781e84d5e0f788a3ebc00f9417b943e14d8c462a859c5267f87bb8c9ed5132000d069b6cbab089411d025852af3b35fd7ace0a1f0f606bee210f9e8e5 SHA512 cdf986c1927436e49ef0b5a02b5fc08473bad4aeef11164119824ef02afb8c5513a19e1d0bed2211ba259ef2d331f833daf9543d030e56d02407ef3efdb74196
+DIST llvm-23.1.4-manpages.tar.xz 337700 BLAKE2B ecdbda976c00923f07a0342ebb1065fb4ac5c51d398c5460bbd1039493ff3a16cdf0c9abe17bd42a2ff1b426f8ae9241c4d81d3eb1751b1a5c43c544baee4735 SHA512 5f2c19582c9887eecd916d7e9855446e0f0c8a458d0c43850994de4ebd0ab24cae83a4e50049d82b218c61b46664877e2b1fcbf720970e9ef558f65ff751737c
DIST llvm-gentoo-patchset-17.0.6-r5.tar.xz 7256 BLAKE2B d0f3f7df4ee38fbcd236225e9b64e313a1d4bae8d8eff0473fe50e20e79e0e161af418eb4a56e29e5b188cb17cd12c43bc42716d390286f6ab42d45b86b7a040 SHA512 70ca00b79e927931edfe905688f82b744443675c8b6ad7b5a962636629ea73d778dbf7a43c4947f05773eb04cdc0c1a64fe9d0e41d46ef04237b95bfc076740f
DIST llvm-gentoo-patchset-18.1.8-r8.tar.xz 27220 BLAKE2B 2bf71ea769ebe61c863a52a891743d705f313d41416d02614deb9f5e8bffec3a22b3c681d3cee4b4a4da224943d1015f061562d379f7d3934f4e9196ef6feeb4 SHA512 08264c6a5ae30666d6e18c74cb9cd706317157d5cb9b31f35c6807b9396f733dc80ba957c711bf20e2a4388f2ef8ba620e82598fa779922accb50dad7db23eb3
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
diff --git a/lxqt-base/lxqt-meta/lxqt-meta-2.4.0.ebuild b/lxqt-base/lxqt-meta/lxqt-meta-2.4.0.ebuild
index 6bbdb93f276b..8a5040f005d7 100644
--- a/lxqt-base/lxqt-meta/lxqt-meta-2.4.0.ebuild
+++ b/lxqt-base/lxqt-meta/lxqt-meta-2.4.0.ebuild
@@ -40,7 +40,7 @@ RDEPEND="
archiver? ( >=app-arch/lxqt-archiver-1.4 )
desktop-portal? ( >=gui-libs/xdg-desktop-portal-lxqt-1.4 )
display-manager? (
- sddm? ( x11-misc/sddm )
+ sddm? ( gui-apps/sddm )
!sddm? ( x11-misc/lightdm )
)
filemanager? ( =x11-misc/pcmanfm-qt-${MY_PV}* )
@@ -51,7 +51,7 @@ RDEPEND="
powermanagement? ( =lxqt-base/lxqt-powermanagement-${MY_PV}* )
processviewer? ( >=x11-misc/qps-2.13 )
screenshot? ( >=x11-misc/screengrab-3.2 )
- sddm? ( x11-misc/sddm )
+ sddm? ( gui-apps/sddm )
ssh-askpass? ( =lxqt-base/lxqt-openssh-askpass-${MY_PV}* )
sudo? ( =lxqt-base/lxqt-sudo-${MY_PV}* )
terminal? ( =x11-terms/qterminal-${MY_PV}* )
diff --git a/lxqt-base/lxqt-meta/metadata.xml b/lxqt-base/lxqt-meta/metadata.xml
index 779dc0d215e7..38f51a852c10 100644
--- a/lxqt-base/lxqt-meta/metadata.xml
+++ b/lxqt-base/lxqt-meta/metadata.xml
@@ -22,7 +22,7 @@
<flag name="powermanagement">Install <pkg>lxqt-base/lxqt-powermanagement</pkg> package</flag>
<flag name="processviewer">Install <pkg>x11-misc/qps</pkg> package</flag>
<flag name="screenshot">Install <pkg>x11-misc/screengrab</pkg> package</flag>
- <flag name="sddm">Install <pkg>x11-misc/sddm</pkg> display manager</flag>
+ <flag name="sddm">Install <pkg>gui-apps/sddm</pkg> display manager</flag>
<flag name="ssh-askpass">Install <pkg>lxqt-base/lxqt-openssh-askpass</pkg> user password prompt tool</flag>
<flag name="sudo">Install <pkg>lxqt-base/lxqt-sudo</pkg>
</flag>
diff --git a/mail-client/thunderbird-bin/Manifest b/mail-client/thunderbird-bin/Manifest
index 446c03e07c5c..629c3aae13f0 100644
--- a/mail-client/thunderbird-bin/Manifest
+++ b/mail-client/thunderbird-bin/Manifest
@@ -62,6 +62,70 @@ DIST thunderbird-153.5.0esr-uz.xpi 419569 BLAKE2B 4869b5b90164a9ceae381bbe58ef39
DIST thunderbird-153.5.0esr-vi.xpi 541879 BLAKE2B f8ce4f8d04c617ff5bb3cbb486cca45189bf58e64f5498c5f191e32535cf0bf02595c90534d7b5169e1341140858b11c9e37ebf391291a057638671505c3773c SHA512 25f1fceca56c81824a50649da4a8961a63b449682ed1f293807bc36e16535f09d489cc24bbeb3570fec950add6f898834e768e01c7166676901c6d0733c32446
DIST thunderbird-153.5.0esr-zh-CN.xpi 526373 BLAKE2B fc8bb74ea9e442b00954a487d1c0f9744fde6d2499755f1788ef387c203e4595784bd03c09e58d474b7c78504d44344ed74b79a9ba64e38511189a74d21ebaf0 SHA512 a0de4338cc1664db3103126e5e5f7ba2cb2948d62a8ae419dcb07ce46ecf198070e3e1f45c935a2478e6c152023e7ee114373e7f79383f11029a806188000395
DIST thunderbird-153.5.0esr-zh-TW.xpi 530602 BLAKE2B 085f0a995d318dd8baaba82d4e6f76df703151faf41ef550ec099daaeb5558b44f7bc534d14592a6729e4402c8e6067dc3755aa5fd9b6cf4b267bee2f34be2ac SHA512 8d60edf3e8c8a316ba078648ba4266ece1f6f28063a3d9f947fc8016217a5073ed65501907c027ebc25d2e055b412683d7ceb2bf4a864d2149699897e7889c48
+DIST thunderbird-153.5.1esr-af.xpi 397514 BLAKE2B d72e84fffbdf0d34c574f0b032b4fbddccf7bcf6b8c823bc1c2ec8cc787104a0813992dd600bfd98229a4ba5e4834227d6840b7e77c7a1f6b2423eb0ce0f6384 SHA512 2ef47247c3f3bfeee4539bc2550bd42346e40e72c81c124e86ac582fd02803711670eef1d184ec444b91ca070ae5f775bbe5ad2a0423b73e4d7992a64669ab9b
+DIST thunderbird-153.5.1esr-ar.xpi 489254 BLAKE2B b258493fd426dbeb549007aac3b2d0f358df8627533b814f46e1d74a7be192e092a1fcde2a35c57fd4694d8d97eb8a9fd5872d770054a067696fded03793b3d2 SHA512 ae4b9d1334c42c9910ca39a48d84b94c4ca40f9ffb3bafe2804c059d0910f47e92bb4c2553266e01f7e84f21536ef37a11decdb8377867871a1758309a3d738e
+DIST thunderbird-153.5.1esr-ast.xpi 414103 BLAKE2B 7e2a22fb9b092bd346411b1fe866558d10bc031cba63ed0c39f60d3554f3fc1376d2346e51561c582f4f96269b061a06887a668f5488ddf9686c871c1dee03e7 SHA512 1e58bcf723c93e67a214056ec45c562bd27476778251dff17de4676966da4627ad29db7b55fb3fdc9e2172eae563336e81bb7942b5e0b065a14fce510399ba93
+DIST thunderbird-153.5.1esr-be.xpi 556039 BLAKE2B b1b0ea815037a567c71cb23cec6c1d4179e81b8073f3b3475b930c4fc1b82bbdf7f48d100fb6801012bf40accd63763e4be616e72bf024d16d931f9892c3f1f0 SHA512 83e38867744aba064d93151b4929377ae6d34702ce5cc74d5d15f67603fe1cd999c7d66822c4c2be6b5edf72bdaa012418510d04cf2d2231aee35c8679255a77
+DIST thunderbird-153.5.1esr-bg.xpi 567695 BLAKE2B 05af67d46d852b367a5f89befac6770c90d1345159e2bc4bf2c2ade2db64f7b84ec90607ed3383682c8755f87e6261fc250d98a671f1a884b65d559d6eceb0ee SHA512 da73e37d2790ee7bf111f518e53675c8a2efb914308066269d1accaf8fc770927e21751b0af598bf64fc270d5ed37fa3c89b9c6a4d00bcdcca11d0294bdf50b6
+DIST thunderbird-153.5.1esr-br.xpi 440406 BLAKE2B d42f76680fec60c28260bfdb5f3477d0dba6688c74037021cb8241a0a87e13b5dd5e07bf322c11a73fc02b99334e2574963ad68e70b233f90e176d2e4bbcbe2c SHA512 bddd5ece2f210bbaeb0600249af297134dc9b31d0e796c8c60764890b65abd71e4e426334d2625a8b210c891ac204cc1110490ceb6dc73611bbece585813e22d
+DIST thunderbird-153.5.1esr-ca.xpi 478536 BLAKE2B 79d1e328af344825a81944d95c705cdd8b5a0f44053ec915fa982858d85f9d7599ee59a158fc7c282e7e588f67ac4f149c65241a72b3e1d8064b5b29829c32a6 SHA512 fe6cd1bbc46ed8ed306d6d9056c007728a59e56b9aad01d44f1cbb338e31d7d663cc79ba316a4e96ca6dcdffe790254fb1933bed97832a32346500bab88ccd46
+DIST thunderbird-153.5.1esr-cak.xpi 457312 BLAKE2B b8269c34986b4bb27ad3de1f0e74940c6447104db56bf9bd8b0c1926e8d914cbb3229be1fc3ebb843a96264e312ddb4de8922fd2cc7f73d211b724eda2385854 SHA512 970d74fc87398a443c699f5e0a6ef6b1d274e38ae0422e4645b3bd389e3accd5b8943c0805c57594efc486dc57ceff1c89d3c40e9a5e7028de37424aecb3deff
+DIST thunderbird-153.5.1esr-cs.xpi 541341 BLAKE2B cd5cca3277e92e696f8121a3f796e5f8d279c92369e377cd30a2f2874127acfec8d652745dfd66d1384ad5a8ed323f6f65f36562fb4750eac801c7469a13a676 SHA512 6d384dc37b0e82fbe4bd1cad3cfe272c30c4f058c38e9e244aa454f25447edd6816420f357a6849ac52a86b879e90bbc1e0a184b02f4c3ad01289a21d4381a4c
+DIST thunderbird-153.5.1esr-cy.xpi 508882 BLAKE2B f394224ec9981316f6c0576932af415678696f555a3d4bef789f0deb4aab7197c9eac05182d0fca305064ad114e7d6c3c8f05786e9e26a2f092780ec50766350 SHA512 e2c1be4045577287ce53fa6841caa7f157c36dfdd1ae977cb2995bd0791e68931591ec0675c4ae949603878abc354bcacb20f3a56afdbbd08bfc1308fa8d4850
+DIST thunderbird-153.5.1esr-da.xpi 494770 BLAKE2B 491798d82cee8d8c7b55a6fbd4ee4db6c4ef975acc25ac7b3195cbbd6210518ad89829890ec00a828b5e560ed603d21f5bc9f156a3590086a3991d50055c20f3 SHA512 196ab4be59ffb23521bfba1c5e60eeee36c1cab78ef736870be7ede37761fe09490f0ef9a6a2859b60a5cfd6f38a6769b8b22f5e4803a598dde007781db97d07
+DIST thunderbird-153.5.1esr-de.xpi 524900 BLAKE2B d3dc0075023c8f1686e920aaa5b58b94220261b71d78474c9009edef69919ba45d891776e7441f8120eb6b968531930684659b6cf8bda3ec9525e358f780caaf SHA512 ee85ed6329f94f19e75a7ce787afff32d0068a00c380669940b227ae28d97c7456ce084c68deb62cff22ec2a4aa25887a4fe46340c850b385b50fb43db76c2b3
+DIST thunderbird-153.5.1esr-dsb.xpi 538729 BLAKE2B c3ea46385141e7f0afc83267ccd32dcdfe6731e10add9611aa755c9a94e6b4c100aa3c01cb8c236ad8f04d9585f8f4ba676fe8c55c9e62832ce16cc99927f87e SHA512 c7c95a5f3e56235245b838aa76f753913b4d6c8bfa0ee5276e16e4afde17fbe37ac8713510e701035ba83718bc3c873d5d04b42c3a95a1498666a4e849ac52f4
+DIST thunderbird-153.5.1esr-el.xpi 631503 BLAKE2B 740b15a165d95228bb448600eb8827d34b0ac59f528414c01eb9bc4bb61acae3da1696f08479a10e318aa0d5a3e3c6eb7594aed95102ae9c8633abd5e6e197f1 SHA512 83835cda04e001849360767554194043a4a4324d853e03d40686b9a692c1e71f2ea0cd6b9d2861ec33fc2f1ca6ac27bf4f53d648bd7274291b97491876c0b3f7
+DIST thunderbird-153.5.1esr-en-CA.xpi 470432 BLAKE2B f9e02f863a6cb6f1cdd783c9a2b59ebcd439f75e9b5f9b08df77f7bfcf86003ac976d8cfc9a6def386d4921ffc079e6f95e3e2c232bfac8877396d991f4ebbed SHA512 e412374803b5e897d0735acd7e21228a6770666ef0eaf50c668dc3cd69327b072f766fc498499d3afd4dfa95251e0ffd3dd9fd888170c12cb92af10804ecdde5
+DIST thunderbird-153.5.1esr-en-GB.xpi 470303 BLAKE2B 4fc66fd52dc099334c9167f0a53914b3a8d56e63dd38646a2469ae2a89307a4db65a87f65a45fe4d745f0c764dc33224577c361944ec02485280483fbec58fa4 SHA512 1c35e32fb5de04a5877d04e3db37fdb49df4d92947edd487a1a774dcd5f50c9863cce85228ab38c2b0923a65514576dbed4d73c1a055f867d4d6fed7ef7cc101
+DIST thunderbird-153.5.1esr-es-AR.xpi 514512 BLAKE2B b6301977245a228b19bba758748ae08f1b603b2fea5fd3679ad79e339aee7c61e7e7cf6ead657402df7fc3ccab9178ec4d2787b7a621336d184cf1b11b30105a SHA512 25957ed25900540b49ed74e9521f4f949bd295c76341ef412e93cf54927920734b023f2820d036fd1f35247209bf402a294c4e5aab4a6ec781ec821907779448
+DIST thunderbird-153.5.1esr-es-ES.xpi 516848 BLAKE2B f4433b5078592f05286693e7d87bcf4c12101ecc4e578e75d01b7830b28a147ea5f010d6df6957a5b024937672229900463b4b38b99ed8ca5af88d1502799ab1 SHA512 a24dc8253c33d6f53ef414211d865265ad3466bdbbedfa088036812e42f9095ae346b5152e846ae921647ad917224d5d492963e5c93639ed67c6f1ed8d89d2e7
+DIST thunderbird-153.5.1esr-es-MX.xpi 509369 BLAKE2B 45bc0be6cfe7c325db520d3dfe81ffcb128290e4fabc428f8736590b18e0270ca91065ff16a787738f8a4a7aaf90985015b0a956642a2aba022fc9ea58d545c0 SHA512 2d180fe107a36e1b46bceca78f09f92c3e41b7007a1d0e14227b1950a9bebeec395ab7d6d12f6d075d7057ba49925bebc8277f796288c4c3078f9141538cb8e5
+DIST thunderbird-153.5.1esr-et.xpi 464350 BLAKE2B 3a2e44c8deda10065aaf039627238b4a86471ac2299f3b9857fd6a6e4e5fe3501fdd9aca0e97e141138be246f1f5822cdc9f27f580d5aa8eb6786cfa91858f11 SHA512 e0a7d3bcb59a724c15703f18fd994df38af0b9494bbcb255500e22e5b77c4f0d52740b15dbe748ed3dbb48d5ef0e56a25ac74718b20d189a5691e44933c4dab7
+DIST thunderbird-153.5.1esr-eu.xpi 497079 BLAKE2B 054032adac75e1eddc5275dc1a7121ab4b67359bf7575e8d5a084d418ae512a28a0a70ce307f46e58400b77fb568d2b38b7a79ef591d73440c90b9edd96a911a SHA512 57708f534e3819635c0092163ff3a7cf05d2f07c892ef0db162feb821cdd5ef1dcc0f3f4f88704dd98f6597f68dda4a4d86c969992690e812a7887ec0595c6cd
+DIST thunderbird-153.5.1esr-fi.xpi 498490 BLAKE2B f3ec6624908f6926e1743c9bb52182997f5fd51ab9f6c45c52a5679775419d335d6d6d9789e4d88c9574dcd82810a2fb3eaac8015d964e144f065aa49b3730ab SHA512 f716f76bbb24d8696606ed5bd67b26b69222eec826e6e9cd6714499c02944b44a1a03d6bfe5454aeb0caec4ea502c9292a317780dff2f2fe8f6b83707e8585c1
+DIST thunderbird-153.5.1esr-fr.xpi 528630 BLAKE2B 2ecb4824ba2cec458a0562bbddec885f7c77781a10fbc347f9ef7e534312f122fcf814567d2f24685277f15b14c1f2560b260e5bb158d649a0b0f74c73d114ac SHA512 60522ef25e25a5f0a0dd7f17bb4b66c0e6d0e551480146a9a29dc21dbe1897f1e7eb716a9a41b07ba8f740961127f1090842d74c5fb74dbb60f9c5f85ce0e461
+DIST thunderbird-153.5.1esr-fy-NL.xpi 510257 BLAKE2B fe733432f53c4a19e758795be14b2da0eae98dcdcd7a4db469348364d8ddde85a67e69b2e2d35558dae9e834e185359bbdd0155c58cc7a44461b34f41f3b248b SHA512 8c75e8b3296d6661f941eec25ee857ed1a11da9e7486b8b629521b3dd85c8ab294f527c5436345fadec9155bf04ad2ee0064576b08915a5e23911a08b9906cd2
+DIST thunderbird-153.5.1esr-ga-IE.xpi 432781 BLAKE2B 128b827055cf55f620c1fa3410c010335b95e9574abc2500c55a53f1429b8daf5bffd9ab9fd87f5940f636d093b63304fc54e5da9cbaad6b92e08e87c3cbc5f7 SHA512 191f279d1d9f4f25fce6e85db77f7d25982bbc1b02bf5c3ba6ed03c36bed4df75aef028787a22607ad3aa468341d3f0df6ee882da8848e17ff0f58657b4cc9c1
+DIST thunderbird-153.5.1esr-gd.xpi 486237 BLAKE2B 8a68e9bbd15ae9463125ce261d4efa6553bac79e0912f59081b9adcacad3e529fbd2bfe1a942c9482dbcc489252bd7a07a7b3fbe35a32c3732c491ca7f924a79 SHA512 0ad898b500b4ae6e18fa6d2ee1e4d2e67b5b3dd62bb2ca51d2572fcf6e0cd8d46ca666533aa54c7a6f9642c13375e6ef6d162c54643a2b5f0a248d497804e558
+DIST thunderbird-153.5.1esr-gl.xpi 500121 BLAKE2B 3e51711f1a6eb942750846250cd8b40b0282a26bfa35b60b084dc98f952fbf21c689b382054ade44b39d1a15acc9d84d00b9b79c3a6aff814b26543872fcb1df SHA512 da9de6dbaf1300fcb2c474f20330c7d16d8235c69799da477cb1b7c483c2e3651fb0921afcbf4c00f2d1bd838e70999d56d94194b32a2a74e91db9bcd00a625d
+DIST thunderbird-153.5.1esr-he.xpi 484642 BLAKE2B 0e6601e6e16593c78071d56b9ce7958453f425eac7801739502a985e9d3c121392dc1c8a40fe7a87ef9315a908ff9dca371336a9c16c4720ab1db57f71cf2bb0 SHA512 35b213af1d9a65ffc2569d5ed14b9add4f7527cbe6eaf2f6298e133d45c380de2b6fbb787970b55697cce7ca63075413868de2f3ebbc96a1711bb1c948f9de2d
+DIST thunderbird-153.5.1esr-hr.xpi 498554 BLAKE2B add8a21490fa3c47f077d561b3c09007737cef83294310f484261defff36b4814d66f67970b3692673fb43d32218120c41df7ad3473893e4e21b5c8687bb8b6c SHA512 2f4ee8ccd3a44ef8541f84603a4b77a113039c971edb75d562a303436426b03c28441b0837a7c099903bad1d8709bfadd693bd65318680da2acc358478b7149a
+DIST thunderbird-153.5.1esr-hsb.xpi 536061 BLAKE2B 638708d23b7d0425b2dc1e1770b1da2a05819495ef29913af1e07aafb860d41004a013387c140a8a7697ec760bac33a4267cd33231e82148ae49f33f09e7e4b8 SHA512 9b070e1eabbbd272548d00b277475043ad70d19c790e197ed2e0fc290090373ab1579f6157d552ed98dcf7914eb0a83935c5cabea63e9c680cac7b012d2ed302
+DIST thunderbird-153.5.1esr-hu.xpi 538223 BLAKE2B fe93257343350e52894eb5e99cdb08b868718e8cfedcb148945439fa16449800d79c66dac3a0f495e198ea61bc5d18bc706058f9bf20e594003fd26178bdcd86 SHA512 45894ad6360a6fdb7eeb2b17c51e66a67d82fe4a15571b9dacb9693f45bff9edf5ef375384472446cfec33c750274f7c957d18b6b3d1ec9699fb7deaa9a4b482
+DIST thunderbird-153.5.1esr-id.xpi 482850 BLAKE2B 91aed42528264a331936213fed83c79e5f9515e5bed76004deb14ecf05b92664256383a1e47aa2217bc1995fd6d4aeb60e02741b6a67deec0642f3c28a5046d8 SHA512 f8461c922dba1bdd47e1f3fa59cdb59c027b60a6dca5bb3f8629edc71ab337a79c1a8b3e9819bb1ae402f3a045cdcd4ab187372bf8a3330975e63dbc9950fe8a
+DIST thunderbird-153.5.1esr-is.xpi 508459 BLAKE2B 5af8a4f0eee8884ddc9afa27470b9ce30b78acfe46b21e99fcb0576df21f18f0fd9b5c7f6f2ffc340ea7fcf86326c4069be874b85526a60c31318a1b2d1de9c0 SHA512 db21349b997663e40b129add611ebc49772f562a8a1523615a8ded6a8f19e498d060c3ac631638228f404eff8e7d54d4b7774a2e527f3ee92667ffb3286d5b59
+DIST thunderbird-153.5.1esr-it.xpi 507904 BLAKE2B d3d0705083e49617dab7c51ff019a785e2c6d0763ca3ac77558e8d0db51a299d69ab80d49e5fcd710dc339e9f36ab1c2170d8e4475fe18ec60a3d32b7c83a207 SHA512 6070719e427cde6ee3b16f0f23a0390fe2cae24b19266b28ad735fc081ad5359bea9112f813aa5a5966f0d64dfec7a8fc06f4c0fe850697d066f2cf4c6a5440c
+DIST thunderbird-153.5.1esr-ja.xpi 559670 BLAKE2B 6459500c27568d8ca09d7b272cc53ebe76cd18056d95df69d47620bfacec1acfdd0d5bf3ffaf2ee2f0b1cf85579b6fc1bb08dc49a23b44d5922fa139f7234da3 SHA512 570c372271af48a39414900d42f64c60ec315b1466c64b2169d13d552478639c1c89ebaa6d65be0936a366dc50eb3a6451d431fddf39fb9a483bb9d4b4b93a83
+DIST thunderbird-153.5.1esr-ka.xpi 577083 BLAKE2B 51a951c906af89f65b7dc4387e2ce10e21ff126e4a7e6f02c2051b9f644dbcb3764cc2a9e9b11f1e13b4326543e0615277f74513d086bafba0e9c436b3a868ff SHA512 c8a750215a7357d4cb0e322a282cc0fb28450a4326060d1f83952e113870a8ee2cbede3fdddf4a0d6278b53b3bc1a8ad378cc3021828a802fb43d74c11b1f1ac
+DIST thunderbird-153.5.1esr-kab.xpi 488119 BLAKE2B 31a744d86c271a7ea9f7549a68ec1d91053e4064b2a1f062f507844127dccf89dfc31e539e6bf607b58268470418237273048e14297256734f17f5fc988247bc SHA512 d58d0d29495f11449d5274c2d989212c9cce6da403860dbf4f9e1dc5a68bb766c705343ae6ae9563773140d08e7f30316e8c5842a30952bc415b7bea0a3d8c57
+DIST thunderbird-153.5.1esr-kk.xpi 601236 BLAKE2B 73fd992c46af577812e0a6fec3a2ce4812b6c46b77efce24efbcab532d607345753400db03bb6b02ea98a3e268ad45b797ed53592fecd5668c83dd3a655faf22 SHA512 222652bb75c0114c0b4e080e1d4ecb3aef868fbea649068e680b09247d453b281a7fe0c71e9b4c0a75f74e5b366628e5cb3eb54f88b59533ac9de06819deae1e
+DIST thunderbird-153.5.1esr-ko.xpi 535408 BLAKE2B 9d69480e18f0903040e20504181f69666baa214574a280ff3aaa83174c467602b597923fcffb9f996e90cbec532b4eb552ebad8053ec60f816840607e7a86656 SHA512 13302f2f7f73621855c73554453b4bc063cb8f3121e798fa9a44e2b68c0b89ba1ccd1cd75c148f42bb64e093823ddf67bd0fd564db4757892d6ee61f1e0239f9
+DIST thunderbird-153.5.1esr-lt.xpi 481627 BLAKE2B ab76e5cf5b7757d821f9c821f18e7c36455c44e5f3939ab5d06293297efa9c91165700a75a3dcd19fe94c80fc3ab0f9e136e2dc8ba1524b820d4eca4c7add53b SHA512 e809116164ed1386e2922802ebfb96c9f593a92edc7effde961eb7cd617104d399b95ed90434184bee1517968741c59eabb7d628fc8cd4a11e127d1bdb06e6da
+DIST thunderbird-153.5.1esr-lv.xpi 462929 BLAKE2B bd2598a376733de9488c7974f76b41a9258e0616c5ee9e7d94f854b7074e85d36892b95fb7378f87ddbb765ac7dfeda079832b874901a7f6e0541f1229211846 SHA512 d195a0ac4549315cf3499a459ef39985cbad73f2baa7659bba87e2bd517584032ecdff3773ca4f97b6aac92d987a353240f6b945f2950736560ee77b7fa4507a
+DIST thunderbird-153.5.1esr-ms.xpi 403354 BLAKE2B 639f1776bbf327355a1ec59f266194ddfdd5e4f6301f315c5a9f51d9bcedcc728ad88e3183d6d84dcf088844898888f8aec3762e32941cb512984ab96133d458 SHA512 38ddfe1032a9ce266fbc42bbcf2d866dcb083359600a33b9bd38a35c8fd9b87e0b32bad99f665460239dfc107a792828d0f82fd170ec9d4111b1ff6abc701d53
+DIST thunderbird-153.5.1esr-nb-NO.xpi 495087 BLAKE2B db3ec7f92746214de99b39eb8c716220e80108b2a05dd95c94dd203f99d569bbfea7b2f0b6a940f2fd3dbb589e70ae96dcb0888819235db9153e4b9f3c72cc97 SHA512 bd5c5884cfcd407850a9108c0f65404bfc244ac40a0e5d67fc7092de75732733c5efbb69541fa6efcef0ce563fa6d3f0225d588d8d6745fd00c3eecfa218567d
+DIST thunderbird-153.5.1esr-nl.xpi 501745 BLAKE2B 2a71a235de4de460c70d461c62b45d7640b811be74dce97ec4021741c7c9ac7398a06b4ad9139173797fb73576417b5dc3ce9b4bbc23948b99bf3007f5c602b0 SHA512 746b5b6fdae65537dfe68e58611c2706caf8f91a92e0cdcdc3dbf184098269c930835d39336bf58fdced6323eec7c1e5321be69a9e2ec716f759c04ca96b1967
+DIST thunderbird-153.5.1esr-nn-NO.xpi 499076 BLAKE2B f16b77b32a839d4f3d3090e977dd2bccb1da96a4255eff4877de2115982f932f1bccc32eb3d07881e19637e9bf61d981edadb481e79a59882ed5042e22442f7b SHA512 550275669e6fe8b481b5c9b4ad7257e10eb8c5ba091d13f0f205682ddfa2d6bd4d703c3b631a570596513d7f3e1934c157c27770eed49f1f0289e115102cf740
+DIST thunderbird-153.5.1esr-pa-IN.xpi 491271 BLAKE2B 98308c689b26e965a591bd25c395120d1cfb64a86d4b0a03a6b98f3399b4ccd6b01afa1995b719a4134204942968a0d750d452e41180827cc2584e607b1f68b0 SHA512 55dfbd5585e3f55dced55c77d65183cece158057f94f9457ffffda8afb2628607237125dd2b919ff473cc2c93b69a61ff465ac9d3281aa4922fb7bc5e0937757
+DIST thunderbird-153.5.1esr-pl.xpi 536464 BLAKE2B 3bfd70903fdef8a295482d53f457cf067801fb5045081f42569df8f6079b1791e11f3a095c7f2a6ff72c15a5e268ddee39c3b6f63f16591e1ef123350f778c60 SHA512 56fdd23dc24c12f77cfa27359df061a6fc70f9ff840ed7ee4f901bf433d7243e064b3e8652192ecefe9bfbabe562f9512bc5e24c7166e12c92f06e92f3ec8195
+DIST thunderbird-153.5.1esr-pt-BR.xpi 508307 BLAKE2B 94926c626d95d380288c2daad491c348ab00b6e3eb881ad88c1348418bcbd5a9eb693f77720770976ffbcd1372bb4aac124c06aafb5782f65ae35eccc39559a7 SHA512 1b22afaa42bc5582f4e27928c104c664074575ddbfecaad401cf0fc9db90e0325cd57744b845bbafedc7f4a6b841e0d12dccae8d7fb9462e96ba2577f4664bac
+DIST thunderbird-153.5.1esr-pt-PT.xpi 514327 BLAKE2B c8d8a177f344314e6c094521a23b0539906a3f67382e91e1aae4e67302ba53a324ef63f3d8f13794170fbe098018b4588ea68c592440b0e9322d13401df8da8c SHA512 c1a980e65dc7fd15f4ad105eb4473355f95f83b65bf0e2e244a34638d4f42fc65bcb0c58364f45b14cdcf1d2d5eb863ed4631279e2045e03c4ffe80b13b35973
+DIST thunderbird-153.5.1esr-rm.xpi 498924 BLAKE2B 49e4057828b8896d1e6c9a089f0dac7cdfffedb4ccecdb1dd57981fea24e80ac87198db2e540aaf4f0a9cf6422e6e72bc76c217b73696b64c9f3cd0947e8b302 SHA512 63d1c31b5dc131096b170693fd00075103dffcb1343d5f45dc220c6382682d867b35f85cb533ac84334e9e49c898953127a06fb3c7fd5d94970dd4c56faf962e
+DIST thunderbird-153.5.1esr-ro.xpi 521167 BLAKE2B 14663361efc55017f9c0433e4bd6d1693f6d38808d28f69e0785ab22d8f781d93395c457ee542c1dbadfeaa2e262c3f5c649afe853383f3781327f9358523f97 SHA512 edbfb6fdce7a2d3cda61d60f85cba3671197df485cda0a16e50fab192c539c0ffabea6cc1b7edbaabd1c070dce18239a5276f169b4715c36fdb67c2022e418c3
+DIST thunderbird-153.5.1esr-ru.xpi 616072 BLAKE2B 4eefce3c278f736e826136c4929a691cd5e266624e03be3f9173c2b5b64dc8142a633217245f7771a7b89b257574de816eae56767e996686d42df89b19738605 SHA512 33e1976745b8476e361534f1493ff000f12a38beda3423d3c1946aaff346de931f720e04c4aa4fb553c292656e26354359d25e47fc247ec4ef9648649383c5a9
+DIST thunderbird-153.5.1esr-sk.xpi 541185 BLAKE2B c021a55b2ff2f641a2bc05b4e7e111fd28e0f07890c4cbc1b54c35b5a9d1bfb60031e4bdedcb605e10546e03134a6b16b7a3fd6bc10a8f6a91b8fa501b989bd2 SHA512 6ccc40731d1507163741c774d383f90e5a0c49d5fc2b56e53ece2a8721e06c88a314d561070d62e61c351d45981f15f827f471748ef54234e1e1d61d42de9b99
+DIST thunderbird-153.5.1esr-sl.xpi 508952 BLAKE2B 3332cef003c02cf4567bdb9ef8509c752a7d88e09c3cc37f556c6ef919de91f58f3858d4f257f4fcdd8b14b09ae2bb292131ea4b5787444c16174bde49cf4004 SHA512 295a533836ae7d9ecc71dcf26a77c3b1e205c14d2dcf142d8c7aac83eb9e9ce77286a48316fd3e7aefba012bde4b42745a91fd40d8ee45c976590203909e5bdf
+DIST thunderbird-153.5.1esr-sq.xpi 525165 BLAKE2B 0ea60094a5fc6a941f4e17a9ec3cba7f7c255f1415f228cf48206974a81cdc0afa7ee941b0b0870eae769d2eb0ce64d155dd9ba973d1d42029323dba8d83e1b0 SHA512 5dfcff6f38e57454d70a521860e94817d7821179a81054c85d01a0f4b3ee3d29e86781f8a27ce02ce1f1ecbd42e0a29034a29060347210b4d1aae74f76e867d9
+DIST thunderbird-153.5.1esr-sr.xpi 581231 BLAKE2B 2762f7f1b82b6a705f688d98660c3926a086beb4db101774d37ca30bfd979e0690bb17b075d4d65c8bcd803516a2636f88edcf9f8d636362699def7dc3bd7f7d SHA512 4a7db90db5fdd05fc2921752413cf5e86d96a95d2321245b2de85d44e97acc8e8ebb3977abe935b16bbcc906cf39b8b980a91adda88a6a1f2a75092534b986d2
+DIST thunderbird-153.5.1esr-sv-SE.xpi 503767 BLAKE2B c5ebe1386382f1b38678fdaa020a797f9c545fe244016ef0fbf3dfba8d8d0e11967c845b25f50f3c77c1264efb82ead5fc85b787bf6059866db7a394948bec03 SHA512 75b59d1ca9aeaa69c3089639b278c690d16924c45bcf07933370d27792c27973f815397e69140b597407e0b917e741cc601b6decffecef18abf0e23ecda06e23
+DIST thunderbird-153.5.1esr-th.xpi 585144 BLAKE2B ff58d9e0e22410c95778dd9bd37c22ebb3b949ff60cd4ad909c9db526740430df30bebc57042684ed7efe15d2778a8060dccfa7df8c430aae22b9042b89ce89f SHA512 dc8b24d06ec37502952812ceb9a9967d7810cac4215f33d4c6e762850906285e46ffab8be3eebe5390e71be62c43266ee5fd080f93028519cf20273e2fb6c6ba
+DIST thunderbird-153.5.1esr-tr.xpi 515625 BLAKE2B de0d6822138402758733662f7a0cbbe8e7bc5cc45c373e9b6ccd7f032124667152972852e718debee355d40c549bf959935e72fa6a9887c4a29f47f35d662de7 SHA512 dcd226773cd137584bfdf31ef30108fcfe613ded16c3068454e144f3679498d3c4aee87714a8432607f825f02a20452013f29472782cf7aa9c13d1d4bc814d14
+DIST thunderbird-153.5.1esr-uk.xpi 596159 BLAKE2B 3ff9eaa4d2453903df2703e6f2cf7d0b643d1863d5a1d5de8f6a5d9f7d4ddd810531a13ce55e5f1101ce28c2cc1f7bb802bfb1ac607ca03b6725c980cd2872c8 SHA512 ba723d2d85e2cea83123967cc7ec99f3471a33cff4572598685de8b5210654377582dcfa20be61008b8a3054248e019e8c103a4441a2cdeae35764ebb1083440
+DIST thunderbird-153.5.1esr-uz.xpi 419569 BLAKE2B 6f169e1e43f5a31c4a445f42d79d2e54a2e6e1b33745f35f66c40bb0501955266d9399f42e6e363d166dcbc179a9c3c497a0dffb936366622864b0bd2e230da1 SHA512 dd0ae28faf857aa915533c6cba6e4b31d693c1a3cd296a537bc5384b69f162ab18a36c947bc6eedae4f64a36196c1b5f81e7cdf48ded019c82aecf621115a26b
+DIST thunderbird-153.5.1esr-vi.xpi 541852 BLAKE2B a8a6820e8b89a6c0520150c69464f19ba599114cbe0ea5fa952b46623615ee07119734318250d9b0a215e23416cc45536605a1b483b466bc0616199ec6c3fa7a SHA512 27bc085b11792b6c1063926be22c2009930a13ec5abce3de8d20f68a9767c8d2f3506868ef66a524832b3a2bd909b9603f03d12ec950d42cf476f45ba12d2220
+DIST thunderbird-153.5.1esr-zh-CN.xpi 526372 BLAKE2B 3515e8e4761d59384c590b0d6e4536211c55ad616f30660eab2927ca0014b3d32a3e6859e56e9fbf3d73c6c9e06a6b9557f96bd843998e3e76fef3cb7347f61c SHA512 a15b21b8003615ea87b681feccc8e874c18bc791019def642ef8fba3ed2a1464bcf0f18c7c08fd98b2d5abefd9f825e8067d1ace3af162f6f97ee776eb78bdba
+DIST thunderbird-153.5.1esr-zh-TW.xpi 530603 BLAKE2B cc0412a01fc9850b09a25c219bf3ddfd63f993470908955106d8780e52597037b834419cdf1a3b70c0381b5b93ecc6d7ee838f5c6651bc141868ee79f01df14d SHA512 790a952d3be99c866ff255e4a30d2ff6ed736767e0b282faa5423c016f31403a14307bbd392f2523d28b9f6af7f516bbfbded404a719d1e53bba5045fc56337b
DIST thunderbird-158.0-af.xpi 390744 BLAKE2B b6027d011454c2d403694cb45751ddf37e9f10d65b877dffb66ea2c80a5c41ed8c318674b794e9f69870c93bc5b7eb05c1a0d249a71099ab9d227f190b60fb2d SHA512 26ac94e6efd2110c544449af9e7189e231f7d32f523d6a9327bd1e72bf9b8d6d631b6678551a975321284750e64c4c674a6fe4d325fc0d3c63645b26c476b0da
DIST thunderbird-158.0-ar.xpi 489314 BLAKE2B 769527a286a9c3e2ecd6e3ea56adcd24757effd642e89d5f5d0ddb42a52f938889ac7dd5929b479a06bdadc0db6aae7ac7f373d25a9deab9aba6c295d96c2943 SHA512 0965bfa46dc3a931ba15619a81cecffbba9cba88fbda418c23b92b3aae1d4dc607895db668c912c05e81bbb282710da1b0fa86d1b4c7f8cd9da674224bbee507
DIST thunderbird-158.0-ast.xpi 408421 BLAKE2B 3a09e8dbfb56cecde5adfb370e35c9ab16de202188fe72236995de7d2fcb896715911647076070750698003074880aa14b96af1b7bc8685d28307e9793c732d3 SHA512 a4b64eee5e50a31e2ece7f62d5c66379c6dfb6c93c6a9744e1cd0d02a8d04d9122c4151b2223f64e40c5ebbafa1b24abc1e5ba527a8b338633054867cf787916
@@ -126,5 +190,71 @@ DIST thunderbird-158.0-uz.xpi 416416 BLAKE2B 17074bc49d80a2b704947e558a3ad1b2dbf
DIST thunderbird-158.0-vi.xpi 549920 BLAKE2B 4ea9f4cf551c3c85fc8bfa3c47e8e159e4c8cdb68601a06ad37f9e36300dc86d82a677a65280fdb7220c3fccd2a8ca04015e8b1c0c94a911672ebaa8dd112f13 SHA512 72c2081ba455cd6fb371845e6cd3ca4aa5eeac511c04400e2b53fae7ae49acf867a5895f427cf6576e2d4f96908b45bab86bcfa5cfb462ae1527ddd413d9944d
DIST thunderbird-158.0-zh-CN.xpi 526326 BLAKE2B 9b6a10d52ee369d57042e0842ca18f4045e96710b8a2518cecae466a3fa29ea85a26142d607f34796e53e5656ad70073a40f3b318db125b125e55cd14738450e SHA512 6df85be0a545fc7bc142fd79a96faa33b7af3155db1f2e1d5e29a9b82136c822475e91c430a3c527708d1640242488d5d2f9957b05e304f153eab26d1b799e41
DIST thunderbird-158.0-zh-TW.xpi 538334 BLAKE2B 16fb322434c41c95bc833dca263f15eb923478bd4a73f17a4e9cbacb4d3bdbf47ba723cfaec22f27a71b32b7c517d2e066bd844f3c5276dc277a14919815a04e SHA512 0ec863e32d01912775938ca2de3e6021f7fe9a2c44b06bd23c7e2a26b640231ac5b98b4ab4e2ebd7d849a3aaad4f12c20fd749dbeff71eab2917c1ea0c6331f1
+DIST thunderbird-158.0.1-af.xpi 390747 BLAKE2B 113c3cb5a104d4225de4566a35f8a8bc8cc2aee761c30b9dddc99d01a927d2f0b87930d84df5587815eaee115ba4bfeeb78201d4c930346c9add1a7fa47e0f0f SHA512 b7e83fe70e305d9882497b29790e1008ca293b850d806aad73fe3ff88906217f82ac6f468c21142019148528eb143ef238f0d22613f3d5441bc6d5248b8d1e16
+DIST thunderbird-158.0.1-ar.xpi 489328 BLAKE2B 513e95344255df754a0ced6b7bbe86098d65daa09eb0344fcb555c4412082d06355164c2441064fc712ddcd4cedce47330dc1c7c3a6641b9b0b602c36d3880f9 SHA512 658749706832b8b8312746e6be0d5158ddd7ebe90e78a880175d3a30b9a0cdacdbbdff31a03ec9dbb9d4b342662a03da6b65854391dd2608b625c65d0f28f7ed
+DIST thunderbird-158.0.1-ast.xpi 408422 BLAKE2B 1e4432e51353f91deeccda9a64334956f59bc61b5e05a7649ec6877ba55148ccf532eac2085fb53faf0068fad98b148d3e1f7e56253bdfb2a786c6db5e0510d7 SHA512 d248eeabb5d6606aa37036d5eea340431890476aa4a7afca3c41693de889588e679287efb2d38ccceb56d750025843baa297a0094d34a9ee31699a9a7bce4be8
+DIST thunderbird-158.0.1-be.xpi 555913 BLAKE2B 3853150009856f6871b2c1ca5823244bbf14801af429a5d13202cd678186998fcc4afe761594af1ec1d079fe8b0c5a332b62b2a82544c64a38ae8c36816e10f0 SHA512 a75089acbdcca09d58c93aabcc687aa43bf25ac9239f1300973491f7f5ed5c112d479753946f5a24de76edde2cb2114b653531deb5072f0f30b0dd8e604c7ec4
+DIST thunderbird-158.0.1-bg.xpi 564733 BLAKE2B 46bc6d167790861d34538bd2a698c5ce34f4b74b112e372bc02e06c47faee1334ef9d48c7dbb24f8da7f1c613f087769614a0274182c03fc0f999f2813b44c80 SHA512 4148eb88251a96520a48de1c51b28a6dac8b7af53edbd8a1af436efb335a2395922b72f9728503ed3af7a43fc82cfc6f6e79c81867f8ab6799c81ca9053ce4ca
+DIST thunderbird-158.0.1-br.xpi 438729 BLAKE2B e5c98cfb680d3ae00f8d75d67d8b5ea27ef66d6dc4805557294bef798a159c8218cc3121ac001a1a5840136816bb03814b948b7b4ce664e7dd1fb3d739b73807 SHA512 cc058ea3275591bf1ad4bea74f0d5f0535d361a6bfb124c5be84e9b0275cd687c5ffa86ad059a27e0e5c08feee05425f717794ef2b0ff60e02bf995e11f0486a
+DIST thunderbird-158.0.1-ca.xpi 477653 BLAKE2B 18db281e9b0075a9e5efe558c2ad285999284c1c57f17edc358f6722312b1a30498d841e643d6d9558229de78d14f8042575e25986e8a3e5b437eaf1eb7e982d SHA512 4f38b96df5128532ff9ee40b2d7eeb9e592232203484ee6883b5dadd9dd65ca6c0e6375d502c85a1f2da0924ea2525876b72ead4026cf4151f890cdc3d2ae65c
+DIST thunderbird-158.0.1-cak.xpi 455077 BLAKE2B 6d243d600597f6a740715154a05c05bf6e9d81af09a0d7b171bb35d3df65534601f8940763f6948a775ee23a4a32feaca114ee421eec9e8cdbe13f93e4139239 SHA512 2b6d069f34e96e02225f5a3c4e5a1a1e0a1b3eb7e91850c23158a29511930594adcec1ada60a52451a48acf3c761dbf8ae95cb892aa97b9854d4e8f1501232bf
+DIST thunderbird-158.0.1-cs.xpi 549494 BLAKE2B 903a036a97f8378442a4d9fa6a8a50c8b3d3a5bf6fcefb86ccb64a0f5d8e5ee000f7de7b18e7847f256e6cb4d0a3c7f4d77ecb8897434c38feed5214d12a9e0a SHA512 b12d6d3cfa0bfdd85eface1f63198a7331e67242dd60f16353d530afb20afe11b2c03b8045ed708231a09ce628b00153296d567a555e1d5461b9d8a4a763afe3
+DIST thunderbird-158.0.1-cy.xpi 516803 BLAKE2B 13303de8a12f5be9fa206a2a9e68a213d2e963e1d8de17c3277289448373000184dd284babfeabff9da2039fedfb2cbae5fdb835a0cc6fa33e6df640004d6061 SHA512 fec0a4b2bf6115f23e25e22eb6ce8fa0ea5cf2e40ebc33aafa11652b0ad34d4d5f5b8455826c78977022528e745bf5975067a2bede220d744aa6fd4324e7b94c
+DIST thunderbird-158.0.1-da.xpi 495167 BLAKE2B 50e7060271a733a1e196abfa099a440b6922b5b2e372f6d574b42add0c1e871e4731a0d34681f6d398e558d53179a64cc63b4d6cf1fe4278488b3d95bf420dd5 SHA512 1c676cba6b814354cb4939127b6c0c52676da78a072e20a68aceb85324e824152fdf4b6a7309ccf43bfa62e867830c3558ba168740a3c0db84d10a162d2b79ba
+DIST thunderbird-158.0.1-de.xpi 532510 BLAKE2B 7778f5ef26c60f4607f115491d82db3f70233cdcb42aa885f5f7e117df648164badc71f26f61e21b8c83b8a218f32e55b2cfacd74e34cbfb1c72dfa458832a62 SHA512 674b8b72e55adec3534741ed29f085e7a4c09e5517d6f75ff1fa22811daf37a8a23a45f867d8021be7dced75c38cec15f85d95954fa4b12d84962ecb2ec818d6
+DIST thunderbird-158.0.1-dsb.xpi 546506 BLAKE2B 0a107ee5002392e47048a0b8e9f12a8bd632f7edc1a85bb0e467b21f47b6c3ce4ecd5b113cb189ca000031c33602e3ede8cbf11188e8e626868a8bfd10bb45a0 SHA512 32f73a2ca8523061c3183f9b94764d5999ff68b013a53326ac0ada5beb7b9ae9334c18b0a55c46fce79355a3650a174800844dc7663d2e512edef51ef3995254
+DIST thunderbird-158.0.1-el.xpi 640706 BLAKE2B 0ca1ddf92e9a46af0737c1e32af573187daad4d7c2a88f3fe8f43542131eca283499bbae900d6061ab68d0638d5477b96ec436e8679a4d822fc863b7fbe7c747 SHA512 41aa074b9bc6ed90d6866f931ccec56fe1a6910e56a9255df29b80067cad2d5a10f3452723ef6c0872c1bdf2aecf9d9125d2145a28e35d83e7295874d09fcae4
+DIST thunderbird-158.0.1-en-CA.xpi 471981 BLAKE2B 5eb58a1949a6b7e8228888cde587dfd8f59d5ee6b9d1cf4a969b75caaca4577849f4da6c1a097b3407090ce9243833f408f456ebf264229c8c7dbb55f1603d94 SHA512 7bc94698d797b98f7fe2115b44fff9562370410956b41317c68b4fcfb7494e49f16196094f76e3b048e6bf4f58c812fb957f54dda5adbcd1d328a1287dae6e26
+DIST thunderbird-158.0.1-en-GB.xpi 476499 BLAKE2B b3dafba6ccaae706f36faaafe8b1b3d5c3e0094e6202fbbaff445597850152b2d680689929e59c399770e19b72232ec33aa8f29fba1bda5eb8a8e5b4bbbce979 SHA512 b1f70eea99dd4cbe2cdb952b3fede77ad543b072ea199c93e1c4231ed0bcf96a9315f02d4e399cdf296a35e120a719bb30481cf84e8c8a48304dea55b25e6950
+DIST thunderbird-158.0.1-es-AR.xpi 521679 BLAKE2B cd82cad9b7676c7a32320d703024e7c628d017627e2377d9a3fbe1a7153968b22755bb1970a421957d7b35cd0de0216bae871cf50c6fd7f1b502de244a55f114 SHA512 d034d75159466676d9849633b76c73073667ac643a63c1a59bac877d3c06cbf8a9332e6b0f887be3aa4baeb175991a4d6f29009ddeb9b2ee9cc81e69bc9cda2c
+DIST thunderbird-158.0.1-es-ES.xpi 515527 BLAKE2B b53c0e196ccc8397654551e767af83536ab657325a2316e9eb8df44ab3d1db2b1e3c062409392e4bdb96bb4b88a3a022db4f97c7cf9cd76d9ea31944668f464e SHA512 a4a775fe068eaab7856ce8fc322a793aada206339945722b60ecd903885a6a6b8b978f31422f38f54e2d623ba10be222fbbd2d16efcc3e886b47fc7a1f887c14
+DIST thunderbird-158.0.1-es-MX.xpi 509314 BLAKE2B df3d1afc88819d36e366ec45bdd021b505119d7fb473e7868a1db0a4610e0a1d9b4e3725d82a4766c1c9cc93a4e5eaf65c8a1fb9030e3ca0a2efd3e84a6b17ad SHA512 d4e1bb6032af367ed07f35d6ddae864b4d40d929bfb654a698ba4147bdae402f319fd0b671c53e2a174a31edd88a7f73b2ca8d584d1cdaf585929536e1f7a92f
+DIST thunderbird-158.0.1-et.xpi 463020 BLAKE2B 004ff05f3f38acca59b1a55327542b0c894e141b0c154ba300db0875082a3223f03bc3e7ae785506b72e430c7a013e3d6e0ef900e3cd9fc5f89e7111fccae799 SHA512 ee0cec616fc94e65db592a2924ec6d7b7e53afff7e777144bcf790839a2c196b6932a3a7fa43a20b5fc8b82ed62f84d27935d9b04d28bb737ad3bb5d05ba702b
+DIST thunderbird-158.0.1-eu.xpi 499714 BLAKE2B 5d8e700db373bfa6e00dc1c59d8dd584d8cc8c267947d6fb37a1722f9f444372bd035ce866af2a3bb5b8c338c2d1b7d399abdd601c1256907e1d0b6027bdf64a SHA512 cc0395ff6b4a2ef924f1c870bc7b19e29932cc5ad4134799b1fc3ecb79790a008eddbc081116de1a9c8e9481db82ab21168379e6fd288d23103f4ea93ecc8a18
+DIST thunderbird-158.0.1-fi.xpi 501254 BLAKE2B f3ffeae63d0dd4f091b88c3e4c07ffdce37f8b9100239bdd0d1edf2e586483f697dc385b94a230da0127497a792bcd1eafa9b7ee7e247414372a27e3fd9e1aa8 SHA512 f58c708485aa2cba5259533872ca0de6dccc625148fa54a290612fda9238b1c6124294a799ea2d658b132317ac9a4dc89e1a4ace3f81048394805a4b969f3036
+DIST thunderbird-158.0.1-fr.xpi 536177 BLAKE2B 41a0b65ef338482fec388e21c0884d0843db70474daccec72efd19010f661fb995076d38f1cfaf46198e448cc5f0a7d6994f42104e12dad6f2f8dd09f23bdbf9 SHA512 c02d7b262f3451141ae727578515634a27b7629b9fd892bcd8c2115f528f54b53034f0f4c5597c2ac3d843916743ea22f53693170ff5723c1c93f473ee2fffb6
+DIST thunderbird-158.0.1-fy-NL.xpi 517361 BLAKE2B cee10edccadf3b6ada936e54964682b1ea1956c614cfffbd7ab20cbf5f7f7cc8b39e2bb010c3005027030dcbd609c019c6909394b7055931102110ac666e2f2c SHA512 2d17253c17940801cdd3862b424b78393747cc620b72e0a3f1947af158b71403a9f814efd7d6f5928584ee3319ac87888f02c546d881bfbba5d5cac45cf25c8f
+DIST thunderbird-158.0.1-ga-IE.xpi 431409 BLAKE2B 0a12a631473767b4d222fb2cd9bfe38314869d7770402c7abda401ebf7a86286ffd2f3f8e2b75b59d154a4f56496884a77b2475f7b23419815eaa97eb1623a55 SHA512 b3d528be7ef95335043b2c6887eb147518e7c7e17e2e29aa6e38da2dd8b6805c0936bf28d93b8a05a2159a10e45c48ce9bcb6faba4022f5a6293adf0a4a94143
+DIST thunderbird-158.0.1-gd.xpi 484688 BLAKE2B b4fdcabcc4e0d96f982fb915312c93b9ca2dd508175cef2ae1d06968d6535aa1f43c6db60aa41af6e497bd06ebefbf5ae4f413234c128ebb44201de3d0b8b6aa SHA512 491dd65b72ea365dccadb0961011f62e90342c4e86719deac2ced34861e1615717f841b7de60b53687ede1eb65bcfa7120c69744b73d5df55a9caa84dd31df20
+DIST thunderbird-158.0.1-gl.xpi 497649 BLAKE2B bc0afd6e0c3bcee712d3c70b1a714bcbbe46039102775c5306180791c05cc1d8d6d70b4b1fff514e2103a34d882979faedc62b3a59591257bc5d9785a581f2dc SHA512 be13e367e5d49bb3973f7ef72a5c1c3f0da905e740b96d706279e9b146006810519b5073f001d48e84706b9571929fff4793c0f5be7c4ea1c70fb7d613e5d3e9
+DIST thunderbird-158.0.1-he.xpi 486612 BLAKE2B f9af71a62eb0a77944bc290f298e3dea0007d627e1978b5b50ee2e2387daa64c7586d2d4193f3b5bd7f2ec044625d5e43afd8cce0bfa14e6b71e69db4c1f411d SHA512 0c66b85363dab2e6be1613e52a9f5c86a6d292308bd7cf11fab8e116e05bfa555c1414ae3a6f14e208702f38366fed985b0be2e15400f4b4729c1598c31f2d44
+DIST thunderbird-158.0.1-hr.xpi 496579 BLAKE2B 72417310cdae9616abaf0fc8292465a4b99649d6d2e4d3a80a73e215a6a3c89b895087eaf4d7df88cb23a55f02c126d361504e863549ce0c3ebdc7ecf4af7262 SHA512 c9336bd795c6402437656dccf85387be985915b184e8ea85a1eca58f64d17a01c9b1be07a91151c518721a8c4a52a9046b7f1bd07c77a9574b0697c7747c9d09
+DIST thunderbird-158.0.1-hsb.xpi 543792 BLAKE2B faedc4dfafbb6fc5f1694c064282315563021875147ff6675a3918727727e398bc85505a917768bb2ead30b9c7d861840b6e32040a7d9b6af0b681c67e6d3c1e SHA512 97d568a82e3912e225b891524db1d86913b475e29c4ddc949b7d69c869fbc9ad6a8650c31bfe5bb65236cf9492eb3bfb3aa39a6bc70f89c90ad7ead40b9de912
+DIST thunderbird-158.0.1-hu.xpi 545817 BLAKE2B ee0159af54f03caedd2c8a526aed099044cf87cd73fcca1b27b01e457b622b0ac620b51699c6e9d4451df24f880eb9469e2c4c167c00080e16aa52ad9155e788 SHA512 b041795869f5c5c9fc58e88cb3b70207eb8d30e5a7ca47b6cf59ab57839c85d3dbaed1959a303f3b88292a479521973e2e72c7812f1140eea23228b6accc545e
+DIST thunderbird-158.0.1-id.xpi 484235 BLAKE2B e08bcd2e6c3e7c718fadbf39fa0341f7417d98f2e82394788fc8825227d6888bb12ebdf200fe3d44dde8bc04e2395e4779d92beda05cbe365ca959857dd800e5 SHA512 b958ec618aea4a7afbd722385198ce01ec1e83c5401be81b182d5d5b05c0bd12f05b35b0498537d0e2ad7761e5ebed9ecd0d5d10e08839ab4c525d0e10703712
+DIST thunderbird-158.0.1-is.xpi 511889 BLAKE2B 200a3a9277ccb6e0cfb81bfd5aeb82b3a975f0a0533eaf5ba784e0eeaab55d4a83f10f4130614d4db1f3e6caec7421c808cb27d3d3c623753e4be6052b567ab2 SHA512 abda7b8e4a950ffc58f9ba084e2fed3939a7d6da65a7b9e369c05ee37cf765b048c8a9f4dc652d718953aad6ccddad959ec14e978c195f16cc9679fee6d3f873
+DIST thunderbird-158.0.1-it.xpi 515226 BLAKE2B e6f93f9f4570ce64f40b9999e20ef1a639f2c0929643dd02b92780e8e13cb353313dbbd0a2ffecac5c61f8bad8c8e3f332aa3aa74b3fa4653856c631b280a91d SHA512 725e50582c30f2bc81772383478dc3dcbef4518b39158970abc36885fbdb81e74587904c7d739c1bcc24341c4fc6bbb7e73bebe0893c49d6ebeb4f6dfaa94c1d
+DIST thunderbird-158.0.1-ja.xpi 567776 BLAKE2B fb7c10ba0925495ab8be15536b4904d7b2bca56ef3cbcdfa9707433aa6a461942a3ea771dea2b286b09e8beaa260c1cbe6cc1f30660f1ebe9b8030671f4288cc SHA512 4c4ddd6c726084a6f9865dda459d60540c28ee8498cfb1be36dd213d21c15e9c36cdd5ac54792ba690b9231a2ae2d23f9b2d3e8f3467eaadee139dad53746b3f
+DIST thunderbird-158.0.1-ka.xpi 585461 BLAKE2B 24bbe997c3dd3a0e5d6e616ab855bafb889a0169783e28eb8f4ad2e26824a5c2efc1b61c3707092a42ccb455653edfa0a7e0d521ae0b5da8fecd994afa0f93ed SHA512 fbcba8d75d03c41ccbac0926015f2a73e6ebea99e8897e5125d40e817e7d12272bc5c00d88bacb0661cfb09ec619c011f5a9f971a95fc67c4205331f5ae71ebe
+DIST thunderbird-158.0.1-kab.xpi 486972 BLAKE2B 7e3d793679c300148e31f0ea4f237784804885691d580f7d5bfe920c1e7c8d6bafe2e633f19faa4690671d856f4b58b47595ed9d327ef0c989b21fcabc58a80f SHA512 1fa1f2f3c4d260de8a675ee6ea925329ce0311a6eec780471e483491a047c3a28578703282d187a4df4c1c2ed630f3c983a788c9b7b275cd8bd85d15aa06bd2b
+DIST thunderbird-158.0.1-kk.xpi 610745 BLAKE2B d20f1478b3d844feaf53efe8b1709f9d6671c676a34261940faa236837716ce8a056b91cd59062323fe9778063ebdbb86287d6a7deb9ae9f83c1e4d078ba37a7 SHA512 9f472959316dffe9691075ff5f1c6e7480a388d10bae7ffdc780e75e1fc27278e26f6632eeddba3f0aa30022535bc9f76d26876252a09f2052f5013e96760a93
+DIST thunderbird-158.0.1-ko.xpi 540984 BLAKE2B 589d5d719b6bc074e348d5b48bc705a87386ca7f0acb0cf47b1c878c60620002812c59cdab10c9000974441908e17aa8c9407897b2be85bc3cd7973b4020e860 SHA512 c1056a7416d3be8b92bb260c648dec21d6d557d2e98790d80e8b708f5dac9abb681db15f411b6214b1a87ecbe56018a469fa49712a41dfffa9722263f8eeea09
+DIST thunderbird-158.0.1-lt.xpi 480524 BLAKE2B f3e1df397356447082bb095e780e7f07f4c3ddbff5a3063626e52274cb3f94fb3b760b90214e331d3e285a65494e023a12be82a04fdf60dbe4a5a2e0c3d7fe0c SHA512 e9f7c31a9782c8a06f0fb0cfc5667afb677ef5c4c89b4347145a4a1ae6220c773c853bd8e32b24b6646d22cfd27eb3f6a25cf153806fe25db4a9dfef4eb8d57d
+DIST thunderbird-158.0.1-lv.xpi 466220 BLAKE2B 2117ac2895f3bb43d44bbb9b4ea13d34c4e1cf71d53489ce40c35c95c65a9f86e79384f2246bfa81217f6b09f43d88db1f42dcbe05f4bc9c39e543726e84d7ee SHA512 9f06b1165e38d6d806f1205bcb4d5172bf66c04394b4c39d7d69af8a54836ea798b1fd74a491d3c5cc36afc9a598d2e007617b0889a4cfa0a7600d955aac693e
+DIST thunderbird-158.0.1-ms.xpi 402935 BLAKE2B 1746b82657e23124ad20614e6286750310d203cac2423ae6abb4482456c9dfccd30e131257de4ec0e7a8020428057425072182fef3eba43d8248f6a2677ac8b0 SHA512 12567c4d711a4299fb584a0fa119e365077b63f53da805d33c529cce51ee1abd3bcd484675fd13d454129822d24cc3a85405fc74602017dbf420dab57519531e
+DIST thunderbird-158.0.1-nb-NO.xpi 499126 BLAKE2B d1ec2fc30fd3accc9db6c28d2383ed323f2028838ef443438df44d01e1ac19e6030ddfbef7a5cbbffa9bb22255200cc7fcdf81ec3fbe36ccae3b58ecfaf20ead SHA512 9007627e4f02f7a3e6d153cfabc276fe43e34442b2e924dfeb63cd415ed94d3934444beda14256e2ec3e24c49a75a9b1b1329b3f1615fc15357cfe6b30130f8b
+DIST thunderbird-158.0.1-nl.xpi 508858 BLAKE2B 09dcaa38286060229d80f43ec06d2ee626ea501f0a769bfefe0f0c5491ec2be826411dca1ca0c3cee144f54e061ae62ca8d1d8527dc3be61cd57a0785521dcc6 SHA512 9be75544ce4c52b614cd94c60b4473d204a947851ba9a4051180b303dbbfa18abb502f41741b72d39114b40e6162a41b22bc747ad68a6a684bd95c44ad85094c
+DIST thunderbird-158.0.1-nn-NO.xpi 502051 BLAKE2B e06092f53fd3cd0382eb82719603015cd2cf844b589fee4519b235e6c06a0648bd6fe55f44b148660f3f8d870b7d54f650ad9e6679893f26ac4a667972be4703 SHA512 582b31578a6ca5ef61b08ab66e1b83b8775199400232c958543ca37090af0a8d412b256dc020e7ee7eac0c06d88d6b9fcb5684e5dccb55c8b6abaf23802be55c
+DIST thunderbird-158.0.1-pa-IN.xpi 491002 BLAKE2B 12d48a324db62ff49450539e22eba8d85dced153c1ae9ca07c741e2f9a9c655d3e9c5d7e7810c291f7b8c36358c45d5f26544d514283337e8bdacce3fd602728 SHA512 6502b096c0f5bb1426d5910dbe536ef1031e337c8100a83fe9dd79599ed41cd909f2281065948e83dc373cc8d2c76a9728491cae487ed6b0367c810a924c058f
+DIST thunderbird-158.0.1-pl.xpi 544410 BLAKE2B 880130a9b58ec69b8db7502e911fe2f8346f778058fde96a1337bcc3031284a85823a21b4a7cecc43c01e4af26a8ab8d55174101de69b57b8b0bffe007282e9c SHA512 4390ab08497340747d6a4179b6b577dfbb5eb6c5a4512bfa2483abf20925522fd5567429ae80dc80c2b7abeafcfd8023119ae15fd063655317a6739b1c3a839b
+DIST thunderbird-158.0.1-pt-BR.xpi 510048 BLAKE2B 837f44dda979328245e06ea77e099f5f376f54760897dae6168b338eb2b66c6f943efdf934c0175fbe9222547fd3ed992d54f836dc35984699f819a329dc2393 SHA512 48ec9909cdbee9f059b9838e0e26be8174de0458deae3f7f7d6da2b0c7d75cae249fcb193eb36aecb43a89c3977400524c6f2bbecfc21cc886686f849d12de68
+DIST thunderbird-158.0.1-pt-PT.xpi 521723 BLAKE2B ce04ef06669ccc083bceeb8b8205a2ee90a1db76873535dcad39d271a52a8e35f108f6cc41bc92704b7d91562eca5b915a4ff942c5510d170c94da5ce9290a44 SHA512 5ce3988e05244a196e1e4b82af89b4d982d1d05c0759570cd1fd160a3f9971e85726f49b8bdf493be61cc27324af1546ba8837dd4946de389d3c13dbb3e0895b
+DIST thunderbird-158.0.1-rm.xpi 496619 BLAKE2B 6d08e62bde2d88cd33ee3e8c16017727f60483365c2aa42de3b11ef55811a9581a4e19aa39df6d484dd7b11e4601b21545b3dae15673a7dabe17c1d4d460e2db SHA512 b141509d033bfef03984d4203002dce9a6482c314c419213129ca7bda004976ffb66cd8f8e81e87645e2bee5cae9f15dd69cee657b40098a1301c066245d7630
+DIST thunderbird-158.0.1-ro.xpi 528845 BLAKE2B f3c1e56d9dabda853fb080624b06fd1ff78fdd5eaf978b1cf2754ca309fc17f0d3273835470ab07e67ef204ed674752d873e351f40184ce184f992daab63711a SHA512 f83462fa82c55a2eeab25d29e3a4720bba82e063d8f89c3c04de72d7929e84cd9f540dfa8f027d8525dde6f8aec419faea30f30159217045c8e886c820c78751
+DIST thunderbird-158.0.1-ru.xpi 625370 BLAKE2B 96233b3f658120cd98a9ecf89cb830e93012bab53e2607581c2e05c490d3efed78aab4166139c4d26870e623c682fe49e1b90d515061a299868845b5a893e75d SHA512 0725dab676edf567e5cd4bdd7c490493f388df0f599321bda998ae381f28135b84520f9dd8de2b42ad0665b06c3de7ab7b1469cdcc30a4d8f29c0141bb379ba8
+DIST thunderbird-158.0.1-sk.xpi 549298 BLAKE2B 5d16ad9fb23cfa81db0c97c2a3e857792cfcc1cfb292db05c8d5ba997353fed548c464eeef25737eebe3f7fb9260e87b36fef02db92d1042acb70bfc4ea3200d SHA512 395335becb2f24a9b2527cb4e053063ce5d125d0d565ad7f64c1924c21e1f6bc77b240ae63868e5c56483a5064b5b233674da473e109532b72063720aa919738
+DIST thunderbird-158.0.1-sl.xpi 512600 BLAKE2B 146360b034cced05891b21462c66e1658d18a6089d0eccb334f261167486549c0b94dfba63601be29dc4da7896f4d707c8e4a2067003bed609147888b0a76e89 SHA512 2db6639f00ddef0d387a1c70437c31c150674ada4b17d6d5475d5358695af41e79704a1c254e6850f5945529eac886323de54379986a87f960b50e78ba8968d1
+DIST thunderbird-158.0.1-sq.xpi 522775 BLAKE2B 88b95a5c0e0a2ab27c9dbddcf9b65206297c55ccf5cb49fb59a6356ffb70193624db611adf0b52568d64d04ebee3259f50f645163f0fea6c69a4c4de26c1fab3 SHA512 302672b5a8ea512a3168089f8e59a31f2401e14288f5d6fe0db3f22c5b1c1c15282e6b66d7ea0cee92c4aeac917d8ac90f1622a8571e7b5cf029fc68c0172515
+DIST thunderbird-158.0.1-sr.xpi 586553 BLAKE2B bd293dbe17c6cb2a663509ab5545d53d1dfc2c4d14032306ea877b557ae6d52e042b12b12d6f9148408556ff10abe33bfeaca824e79f3254ec9bc1adfab957ad SHA512 606ebaaa27cd60e092bd80018de83e911d1147c9e826901c937f885166c247d76ccfa630562c22505933d90b5bb3a6b8cc6d6abb5da3e5d6b25221b75015f713
+DIST thunderbird-158.0.1-sv-SE.xpi 511032 BLAKE2B 4177c47ccb8e5d4cbfa3e0790377fa8392ad8102bc3f12ad29fb14c34c10b0f1f77fe8092d38d68003e6f682e00b7c703ed41f4b350094d73f023373e0a53af8 SHA512 97ada9f9bafe68299cb98ba489083f382f11753e8979ad2da5a58ce0b4e22861e6841ab0ba51b6640e34de40f4ad67c688b46e0ed6a5497559afcced4c540a20
+DIST thunderbird-158.0.1-th.xpi 582075 BLAKE2B cc42e869df62051e40a589037a3190d32903a5a76ee97a6c837a57fdf2ad0091d4ab310a384d3b70c8a59414fbd3b42d0897bd69703f50cecbe73c14c6746017 SHA512 1f59174cd8bf8b19a19207b13c53b062361eaccec4809eb85c9e736afdc60a0610c5987725ec24bce603dd7e91d3e87f8582298d10f178a646dbafd49c76006c
+DIST thunderbird-158.0.1-tr.xpi 521430 BLAKE2B 7578c36262eaa0578886b873f86ed3d25d1a89276e874debd7c393c84f7bb12d608a935715c97576a11b1879f5fcc7363be9e76615b7ab3fd0ea8debd224d361 SHA512 877afd699da87476e35dc659eb4313fc211995c279f7e7fdc3b1a5fa57177f1bd8232d8c641a62c7058857605851485616caf95992c3f06de9f6a398608446d0
+DIST thunderbird-158.0.1-uk.xpi 594372 BLAKE2B 80e39c62ebf4fabc3b5b43a4b4a85a55d143e5bd07ea8dc2dacc3759f53bb4f57723f7580eb1d5f2f8302d89a7a055cf5bdf7797b4339c1c59646bc62c64f129 SHA512 97a3affe72e3a28db4fb1b29061a94c1adf7a41a3d75168ea43870e9e0cb93c626f335c8dcdf8984e9fe7e0f3a5176dab79e2cdd834f2b3677aae001f91b8650
+DIST thunderbird-158.0.1-uz.xpi 416419 BLAKE2B 50d1197f370e30f2ee892aa4fecc47d4a8e0346e52045e5efb5fa1616f9d205613a6015f7270ab480879bee0152e86eafd0a43c8da60d141525da690e1f3acaf SHA512 57e9cbc64a0aa1cca6fd35a600280ec51393d6a576c91501cccf597f099813efe323d417d2a179882886d2b486bcc11eb801ccfdee38607a9c55f190d66ae4d0
+DIST thunderbird-158.0.1-vi.xpi 549888 BLAKE2B 45d505f65119bce557cef40a83653f14dcdf2dfce3ec895aee7bb36a9fc271eb104d8d43ed90b3f1cedfa7424b1fec953baf87b6522dfa89bcec25ee4637346a SHA512 ef81395afea2b4962b7e7f3d311c87e150601a2c8e654b18aef7bbeeea810c58a0b15d9da07596625690ec5714defde941efdf14592e7f118ee8e3fe955f0dfb
+DIST thunderbird-158.0.1-zh-CN.xpi 526327 BLAKE2B 2b4fc554bcce5852ccd1fc370e048a49d8750debdea450b0359b6c2b7d86438c1ef2ff5db599121a8b4372d4af87f6811bf619e8c105e99835b4abfbe6500bd9 SHA512 cd7cf9e779b6f627f79bbae70dcf27a2b43f76348c92bff84f7987a59574272ca67fc0761e92c56aa5a8292959cce1145201c9dd836e5a38f37b7e2babdb5561
+DIST thunderbird-158.0.1-zh-TW.xpi 538337 BLAKE2B fabd98a99e43abda6d3522f65a1916d67a971f7342bc207df760f2164bad18229c6ac6a5cca4dd295df7626f9fe2325e18598e11f657ae63bfdd9112a486b63b SHA512 ce5df5a0e359e78c73fb68c490e6e4dc64ddd9203b11f1c6056c52d6867410cb5e0ededb53cb48afa55ee32b28da2a36347de9c78bab61f879ab8fed1ceec9bd
DIST thunderbird-bin_x86_64-153.5.0.tar.xz 85240508 BLAKE2B 20dc91cd7713c290664fad3b777a7e477bf6b8de5b7d4f30b5ba502884d5d49b0f6166cfd64ffd2c1bc98111994385f7cc7e542d056cd0a9a9d3ad7f89e557e7 SHA512 4b5c4a988307876f861b3e40ece13a8fac4707347d573332b35319bf1d4d9f45534076decc34e23fee6de8e75f65eead4620ca435a8ab0f20dfcc6e2a6ec5850
+DIST thunderbird-bin_x86_64-153.5.1.tar.xz 85453808 BLAKE2B b7d961a246c60bd6a4ca77dd8437c8a5f11a1fdaaf3aede1e59c04e862433c1fd357f64bc5adda1234ab871e9fca505aadc6e4c48b8c9c0173c199ab846dff3e SHA512 e88e151a9c004540608c8dbd0da179441a0a0768377df996f93f072b94d9eb5e802a6f32873cf5647ab47c43e7d0a480c7394778c56500708882fab79fc32841
+DIST thunderbird-bin_x86_64-158.0.1.tar.xz 87464720 BLAKE2B 4078de5198f2d2efaa541ddb3f602896e450821bad0c3358ca470b7104b86f3d39b1af151cfee9dea7116412802e76a041ddcae04e5ad0b0c44053e8aa282d29 SHA512 b66a7a0353023500b3c89597d5feff5082f9666e071b9f3497c481da2b3205c2f09cf2a99877d84ecfcf48171dd3f1e7f19418fe8bea1433460d3f8b4c300c3c
DIST thunderbird-bin_x86_64-158.0.tar.xz 87784532 BLAKE2B 0d098e7d19f1846100fdfa32255017f9d422117f0417612950fae3a622b5920522543b8946a945209a35d51ad64ef25843b9d11a04adc7d5a0587feb212f583e SHA512 9712b1be3aa6a2a612e234611cc74b7234214e6785126cd1a0ee4a25f29005fd7626ccde5ebd9803bcfbe4aefb01db69f922ed171d950879e8c796e3c2a886ff
diff --git a/mail-client/thunderbird-bin/thunderbird-bin-153.5.1.ebuild b/mail-client/thunderbird-bin/thunderbird-bin-153.5.1.ebuild
new file mode 100644
index 000000000000..bb2cc9733937
--- /dev/null
+++ b/mail-client/thunderbird-bin/thunderbird-bin-153.5.1.ebuild
@@ -0,0 +1,283 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MOZ_ESR=yes
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit desktop optfeature pax-utils xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+SRC_URI="amd64? ( ${MOZ_SRC_BASE_URI}/linux-x86_64/en-US/${MOZ_P}.tar.xz -> ${PN}_x86_64-${PV}.tar.xz )"
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.thunderbird.net/"
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ SLOT="0/esr"
+else
+ SLOT="0/stable"
+fi
+
+KEYWORDS="-* amd64"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="selinux wayland"
+
+RESTRICT="strip"
+
+BDEPEND="app-arch/unzip"
+RDEPEND="${DEPEND}
+ || (
+ media-libs/libpulse
+ media-sound/apulse
+ )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ >=dev-libs/glib-2.26:2
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ >=media-libs/freetype-2.4.10
+ sys-apps/dbus
+ virtual/freedesktop-icon-theme
+ >=x11-libs/cairo-1.10[X]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-3.11:3[X,wayland?]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ >=x11-libs/pango-1.22.0
+ selinux? ( sec-policy/selinux-thunderbird )
+"
+
+QA_PREBUILT="opt/${MOZ_PN}/*"
+
+MOZ_LANGS=(
+ af ar ast be bg br ca cak cs cy da de dsb
+ el en-CA en-GB en-US es-AR es-ES es-MX et eu
+ fi fr fy-NL ga-IE gd gl he hr hsb hu
+ id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
+ pa-IN pl pt-BR pt-PT rm ro ru
+ sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
+)
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ mkdir "${S}" || die
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ MY_SRC_FILE=${_src_file}
+ fi
+ done
+}
+
+src_install() {
+ # Set MOZILLA_FIVE_HOME
+ local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}"
+
+ dodir /opt
+ pushd "${ED}"/opt &>/dev/null || die
+ unpack "${MY_SRC_FILE}"
+ popd &>/dev/null || die
+
+ pax-mark m \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN} \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN}-bin
+
+ # Prevent auto-updater from popping up.
+ echo "This installation is managed by Gentoo's package manager." > "${ED}${MOZILLA_FIVE_HOME}"/is-packaged-app
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+
+ # Install icons
+ local icon_srcdir="${ED}/${MOZILLA_FIVE_HOME}/chrome/icons/default"
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menu
+ local app_name="Mozilla ${MOZ_PN^} (bin)"
+ local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
+ local desktop_filename="${PN}.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ if [[ -n ${MOZ_ESR} ]] ; then
+ local wmclass="thunderbird-esr"
+ else
+ local wmclass="thunderbird"
+ fi
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Add apulse support through our wrapper shell launcher, patchelf-method broken since 119.0.
+ # See bgo#916230, bgo#941873
+ local apulselib=
+ if has_version -r media-sound/apulse[-sdk] ; then
+ apulselib="${EPREFIX}/usr/$(get_libdir)/apulse"
+ ewarn "media-sound/apulse with -sdk use flag detected!"
+ ewarn "Thunderbird-bin will be installed with a wrapper, that attempts to load"
+ ewarn "apulse instead of pipewire/pulseadio. This may lead to sound issues."
+ ewarn "Please either enable sdk use flag for apulse, or remove apulse"
+ ewarn "completely and re-install thunderbird-bin to utilize pipewire/pulseaudio instead."
+ fi
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ -e "s:@CLASS@:${wmclass}:" \
+ "${WORKDIR}/${PN}.desktop-template" || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@MOZ_FIVE_HOME@:${EPREFIX}${MOZILLA_FIVE_HOME}:" \
+ -e "s:@APULSELIB_DIR@:${apulselib}:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" \
+ || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+ optfeature "ffmpeg-based audio/video codec support, required for HTML5 video rendering" media-video/ffmpeg
+ optfeature "encrypted chat support" net-libs/libotr
+ optfeature "desktop notifications" x11-libs/libnotify
+}
diff --git a/mail-client/thunderbird-bin/thunderbird-bin-158.0.1.ebuild b/mail-client/thunderbird-bin/thunderbird-bin-158.0.1.ebuild
new file mode 100644
index 000000000000..92f023dbd842
--- /dev/null
+++ b/mail-client/thunderbird-bin/thunderbird-bin-158.0.1.ebuild
@@ -0,0 +1,283 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit desktop optfeature pax-utils xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+SRC_URI="amd64? ( ${MOZ_SRC_BASE_URI}/linux-x86_64/en-US/${MOZ_P}.tar.xz -> ${PN}_x86_64-${PV}.tar.xz )"
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.thunderbird.net/"
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ SLOT="0/esr"
+else
+ SLOT="0/stable"
+fi
+
+KEYWORDS="-* amd64"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="selinux wayland"
+
+RESTRICT="strip"
+
+BDEPEND="app-arch/unzip"
+RDEPEND="${DEPEND}
+ || (
+ media-libs/libpulse
+ media-sound/apulse
+ )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ >=dev-libs/glib-2.26:2
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ >=media-libs/freetype-2.4.10
+ sys-apps/dbus
+ virtual/freedesktop-icon-theme
+ >=x11-libs/cairo-1.10[X]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-3.11:3[X,wayland?]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ >=x11-libs/pango-1.22.0
+ selinux? ( sec-policy/selinux-thunderbird )
+"
+
+QA_PREBUILT="opt/${MOZ_PN}/*"
+
+MOZ_LANGS=(
+ af ar ast be bg br ca cak cs cy da de dsb
+ el en-CA en-GB en-US es-AR es-ES es-MX et eu
+ fi fr fy-NL ga-IE gd gl he hr hsb hu
+ id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
+ pa-IN pl pt-BR pt-PT rm ro ru
+ sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
+)
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ mkdir "${S}" || die
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ MY_SRC_FILE=${_src_file}
+ fi
+ done
+}
+
+src_install() {
+ # Set MOZILLA_FIVE_HOME
+ local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}"
+
+ dodir /opt
+ pushd "${ED}"/opt &>/dev/null || die
+ unpack "${MY_SRC_FILE}"
+ popd &>/dev/null || die
+
+ pax-mark m \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN} \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN}-bin
+
+ # Prevent auto-updater from popping up.
+ echo "This installation is managed by Gentoo's package manager." > "${ED}${MOZILLA_FIVE_HOME}"/is-packaged-app
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+
+ # Install icons
+ local icon_srcdir="${ED}/${MOZILLA_FIVE_HOME}/chrome/icons/default"
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menu
+ local app_name="Mozilla ${MOZ_PN^} (bin)"
+ local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
+ local desktop_filename="${PN}.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ if [[ -n ${MOZ_ESR} ]] ; then
+ local wmclass="thunderbird-esr"
+ else
+ local wmclass="thunderbird"
+ fi
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Add apulse support through our wrapper shell launcher, patchelf-method broken since 119.0.
+ # See bgo#916230, bgo#941873
+ local apulselib=
+ if has_version -r media-sound/apulse[-sdk] ; then
+ apulselib="${EPREFIX}/usr/$(get_libdir)/apulse"
+ ewarn "media-sound/apulse with -sdk use flag detected!"
+ ewarn "Thunderbird-bin will be installed with a wrapper, that attempts to load"
+ ewarn "apulse instead of pipewire/pulseadio. This may lead to sound issues."
+ ewarn "Please either enable sdk use flag for apulse, or remove apulse"
+ ewarn "completely and re-install thunderbird-bin to utilize pipewire/pulseaudio instead."
+ fi
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ -e "s:@CLASS@:${wmclass}:" \
+ "${WORKDIR}/${PN}.desktop-template" || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@MOZ_FIVE_HOME@:${EPREFIX}${MOZILLA_FIVE_HOME}:" \
+ -e "s:@APULSELIB_DIR@:${apulselib}:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" \
+ || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+ optfeature "ffmpeg-based audio/video codec support, required for HTML5 video rendering" media-video/ffmpeg
+ optfeature "encrypted chat support" net-libs/libotr
+ optfeature "desktop notifications" x11-libs/libnotify
+}
diff --git a/mail-client/thunderbird-l10n/Manifest b/mail-client/thunderbird-l10n/Manifest
index 26641d42810e..54f7b31984e0 100644
--- a/mail-client/thunderbird-l10n/Manifest
+++ b/mail-client/thunderbird-l10n/Manifest
@@ -61,6 +61,69 @@ DIST thunderbird-153.5.0esr-uz.xpi 419569 BLAKE2B 4869b5b90164a9ceae381bbe58ef39
DIST thunderbird-153.5.0esr-vi.xpi 541879 BLAKE2B f8ce4f8d04c617ff5bb3cbb486cca45189bf58e64f5498c5f191e32535cf0bf02595c90534d7b5169e1341140858b11c9e37ebf391291a057638671505c3773c SHA512 25f1fceca56c81824a50649da4a8961a63b449682ed1f293807bc36e16535f09d489cc24bbeb3570fec950add6f898834e768e01c7166676901c6d0733c32446
DIST thunderbird-153.5.0esr-zh-CN.xpi 526373 BLAKE2B fc8bb74ea9e442b00954a487d1c0f9744fde6d2499755f1788ef387c203e4595784bd03c09e58d474b7c78504d44344ed74b79a9ba64e38511189a74d21ebaf0 SHA512 a0de4338cc1664db3103126e5e5f7ba2cb2948d62a8ae419dcb07ce46ecf198070e3e1f45c935a2478e6c152023e7ee114373e7f79383f11029a806188000395
DIST thunderbird-153.5.0esr-zh-TW.xpi 530602 BLAKE2B 085f0a995d318dd8baaba82d4e6f76df703151faf41ef550ec099daaeb5558b44f7bc534d14592a6729e4402c8e6067dc3755aa5fd9b6cf4b267bee2f34be2ac SHA512 8d60edf3e8c8a316ba078648ba4266ece1f6f28063a3d9f947fc8016217a5073ed65501907c027ebc25d2e055b412683d7ceb2bf4a864d2149699897e7889c48
+DIST thunderbird-153.5.1esr-af.xpi 397514 BLAKE2B d72e84fffbdf0d34c574f0b032b4fbddccf7bcf6b8c823bc1c2ec8cc787104a0813992dd600bfd98229a4ba5e4834227d6840b7e77c7a1f6b2423eb0ce0f6384 SHA512 2ef47247c3f3bfeee4539bc2550bd42346e40e72c81c124e86ac582fd02803711670eef1d184ec444b91ca070ae5f775bbe5ad2a0423b73e4d7992a64669ab9b
+DIST thunderbird-153.5.1esr-ar.xpi 489254 BLAKE2B b258493fd426dbeb549007aac3b2d0f358df8627533b814f46e1d74a7be192e092a1fcde2a35c57fd4694d8d97eb8a9fd5872d770054a067696fded03793b3d2 SHA512 ae4b9d1334c42c9910ca39a48d84b94c4ca40f9ffb3bafe2804c059d0910f47e92bb4c2553266e01f7e84f21536ef37a11decdb8377867871a1758309a3d738e
+DIST thunderbird-153.5.1esr-ast.xpi 414103 BLAKE2B 7e2a22fb9b092bd346411b1fe866558d10bc031cba63ed0c39f60d3554f3fc1376d2346e51561c582f4f96269b061a06887a668f5488ddf9686c871c1dee03e7 SHA512 1e58bcf723c93e67a214056ec45c562bd27476778251dff17de4676966da4627ad29db7b55fb3fdc9e2172eae563336e81bb7942b5e0b065a14fce510399ba93
+DIST thunderbird-153.5.1esr-be.xpi 556039 BLAKE2B b1b0ea815037a567c71cb23cec6c1d4179e81b8073f3b3475b930c4fc1b82bbdf7f48d100fb6801012bf40accd63763e4be616e72bf024d16d931f9892c3f1f0 SHA512 83e38867744aba064d93151b4929377ae6d34702ce5cc74d5d15f67603fe1cd999c7d66822c4c2be6b5edf72bdaa012418510d04cf2d2231aee35c8679255a77
+DIST thunderbird-153.5.1esr-bg.xpi 567695 BLAKE2B 05af67d46d852b367a5f89befac6770c90d1345159e2bc4bf2c2ade2db64f7b84ec90607ed3383682c8755f87e6261fc250d98a671f1a884b65d559d6eceb0ee SHA512 da73e37d2790ee7bf111f518e53675c8a2efb914308066269d1accaf8fc770927e21751b0af598bf64fc270d5ed37fa3c89b9c6a4d00bcdcca11d0294bdf50b6
+DIST thunderbird-153.5.1esr-br.xpi 440406 BLAKE2B d42f76680fec60c28260bfdb5f3477d0dba6688c74037021cb8241a0a87e13b5dd5e07bf322c11a73fc02b99334e2574963ad68e70b233f90e176d2e4bbcbe2c SHA512 bddd5ece2f210bbaeb0600249af297134dc9b31d0e796c8c60764890b65abd71e4e426334d2625a8b210c891ac204cc1110490ceb6dc73611bbece585813e22d
+DIST thunderbird-153.5.1esr-ca.xpi 478536 BLAKE2B 79d1e328af344825a81944d95c705cdd8b5a0f44053ec915fa982858d85f9d7599ee59a158fc7c282e7e588f67ac4f149c65241a72b3e1d8064b5b29829c32a6 SHA512 fe6cd1bbc46ed8ed306d6d9056c007728a59e56b9aad01d44f1cbb338e31d7d663cc79ba316a4e96ca6dcdffe790254fb1933bed97832a32346500bab88ccd46
+DIST thunderbird-153.5.1esr-cak.xpi 457312 BLAKE2B b8269c34986b4bb27ad3de1f0e74940c6447104db56bf9bd8b0c1926e8d914cbb3229be1fc3ebb843a96264e312ddb4de8922fd2cc7f73d211b724eda2385854 SHA512 970d74fc87398a443c699f5e0a6ef6b1d274e38ae0422e4645b3bd389e3accd5b8943c0805c57594efc486dc57ceff1c89d3c40e9a5e7028de37424aecb3deff
+DIST thunderbird-153.5.1esr-cs.xpi 541341 BLAKE2B cd5cca3277e92e696f8121a3f796e5f8d279c92369e377cd30a2f2874127acfec8d652745dfd66d1384ad5a8ed323f6f65f36562fb4750eac801c7469a13a676 SHA512 6d384dc37b0e82fbe4bd1cad3cfe272c30c4f058c38e9e244aa454f25447edd6816420f357a6849ac52a86b879e90bbc1e0a184b02f4c3ad01289a21d4381a4c
+DIST thunderbird-153.5.1esr-cy.xpi 508882 BLAKE2B f394224ec9981316f6c0576932af415678696f555a3d4bef789f0deb4aab7197c9eac05182d0fca305064ad114e7d6c3c8f05786e9e26a2f092780ec50766350 SHA512 e2c1be4045577287ce53fa6841caa7f157c36dfdd1ae977cb2995bd0791e68931591ec0675c4ae949603878abc354bcacb20f3a56afdbbd08bfc1308fa8d4850
+DIST thunderbird-153.5.1esr-da.xpi 494770 BLAKE2B 491798d82cee8d8c7b55a6fbd4ee4db6c4ef975acc25ac7b3195cbbd6210518ad89829890ec00a828b5e560ed603d21f5bc9f156a3590086a3991d50055c20f3 SHA512 196ab4be59ffb23521bfba1c5e60eeee36c1cab78ef736870be7ede37761fe09490f0ef9a6a2859b60a5cfd6f38a6769b8b22f5e4803a598dde007781db97d07
+DIST thunderbird-153.5.1esr-de.xpi 524900 BLAKE2B d3dc0075023c8f1686e920aaa5b58b94220261b71d78474c9009edef69919ba45d891776e7441f8120eb6b968531930684659b6cf8bda3ec9525e358f780caaf SHA512 ee85ed6329f94f19e75a7ce787afff32d0068a00c380669940b227ae28d97c7456ce084c68deb62cff22ec2a4aa25887a4fe46340c850b385b50fb43db76c2b3
+DIST thunderbird-153.5.1esr-dsb.xpi 538729 BLAKE2B c3ea46385141e7f0afc83267ccd32dcdfe6731e10add9611aa755c9a94e6b4c100aa3c01cb8c236ad8f04d9585f8f4ba676fe8c55c9e62832ce16cc99927f87e SHA512 c7c95a5f3e56235245b838aa76f753913b4d6c8bfa0ee5276e16e4afde17fbe37ac8713510e701035ba83718bc3c873d5d04b42c3a95a1498666a4e849ac52f4
+DIST thunderbird-153.5.1esr-el.xpi 631503 BLAKE2B 740b15a165d95228bb448600eb8827d34b0ac59f528414c01eb9bc4bb61acae3da1696f08479a10e318aa0d5a3e3c6eb7594aed95102ae9c8633abd5e6e197f1 SHA512 83835cda04e001849360767554194043a4a4324d853e03d40686b9a692c1e71f2ea0cd6b9d2861ec33fc2f1ca6ac27bf4f53d648bd7274291b97491876c0b3f7
+DIST thunderbird-153.5.1esr-en-CA.xpi 470432 BLAKE2B f9e02f863a6cb6f1cdd783c9a2b59ebcd439f75e9b5f9b08df77f7bfcf86003ac976d8cfc9a6def386d4921ffc079e6f95e3e2c232bfac8877396d991f4ebbed SHA512 e412374803b5e897d0735acd7e21228a6770666ef0eaf50c668dc3cd69327b072f766fc498499d3afd4dfa95251e0ffd3dd9fd888170c12cb92af10804ecdde5
+DIST thunderbird-153.5.1esr-en-GB.xpi 470303 BLAKE2B 4fc66fd52dc099334c9167f0a53914b3a8d56e63dd38646a2469ae2a89307a4db65a87f65a45fe4d745f0c764dc33224577c361944ec02485280483fbec58fa4 SHA512 1c35e32fb5de04a5877d04e3db37fdb49df4d92947edd487a1a774dcd5f50c9863cce85228ab38c2b0923a65514576dbed4d73c1a055f867d4d6fed7ef7cc101
+DIST thunderbird-153.5.1esr-es-AR.xpi 514512 BLAKE2B b6301977245a228b19bba758748ae08f1b603b2fea5fd3679ad79e339aee7c61e7e7cf6ead657402df7fc3ccab9178ec4d2787b7a621336d184cf1b11b30105a SHA512 25957ed25900540b49ed74e9521f4f949bd295c76341ef412e93cf54927920734b023f2820d036fd1f35247209bf402a294c4e5aab4a6ec781ec821907779448
+DIST thunderbird-153.5.1esr-es-ES.xpi 516848 BLAKE2B f4433b5078592f05286693e7d87bcf4c12101ecc4e578e75d01b7830b28a147ea5f010d6df6957a5b024937672229900463b4b38b99ed8ca5af88d1502799ab1 SHA512 a24dc8253c33d6f53ef414211d865265ad3466bdbbedfa088036812e42f9095ae346b5152e846ae921647ad917224d5d492963e5c93639ed67c6f1ed8d89d2e7
+DIST thunderbird-153.5.1esr-et.xpi 464350 BLAKE2B 3a2e44c8deda10065aaf039627238b4a86471ac2299f3b9857fd6a6e4e5fe3501fdd9aca0e97e141138be246f1f5822cdc9f27f580d5aa8eb6786cfa91858f11 SHA512 e0a7d3bcb59a724c15703f18fd994df38af0b9494bbcb255500e22e5b77c4f0d52740b15dbe748ed3dbb48d5ef0e56a25ac74718b20d189a5691e44933c4dab7
+DIST thunderbird-153.5.1esr-eu.xpi 497079 BLAKE2B 054032adac75e1eddc5275dc1a7121ab4b67359bf7575e8d5a084d418ae512a28a0a70ce307f46e58400b77fb568d2b38b7a79ef591d73440c90b9edd96a911a SHA512 57708f534e3819635c0092163ff3a7cf05d2f07c892ef0db162feb821cdd5ef1dcc0f3f4f88704dd98f6597f68dda4a4d86c969992690e812a7887ec0595c6cd
+DIST thunderbird-153.5.1esr-fi.xpi 498490 BLAKE2B f3ec6624908f6926e1743c9bb52182997f5fd51ab9f6c45c52a5679775419d335d6d6d9789e4d88c9574dcd82810a2fb3eaac8015d964e144f065aa49b3730ab SHA512 f716f76bbb24d8696606ed5bd67b26b69222eec826e6e9cd6714499c02944b44a1a03d6bfe5454aeb0caec4ea502c9292a317780dff2f2fe8f6b83707e8585c1
+DIST thunderbird-153.5.1esr-fr.xpi 528630 BLAKE2B 2ecb4824ba2cec458a0562bbddec885f7c77781a10fbc347f9ef7e534312f122fcf814567d2f24685277f15b14c1f2560b260e5bb158d649a0b0f74c73d114ac SHA512 60522ef25e25a5f0a0dd7f17bb4b66c0e6d0e551480146a9a29dc21dbe1897f1e7eb716a9a41b07ba8f740961127f1090842d74c5fb74dbb60f9c5f85ce0e461
+DIST thunderbird-153.5.1esr-fy-NL.xpi 510257 BLAKE2B fe733432f53c4a19e758795be14b2da0eae98dcdcd7a4db469348364d8ddde85a67e69b2e2d35558dae9e834e185359bbdd0155c58cc7a44461b34f41f3b248b SHA512 8c75e8b3296d6661f941eec25ee857ed1a11da9e7486b8b629521b3dd85c8ab294f527c5436345fadec9155bf04ad2ee0064576b08915a5e23911a08b9906cd2
+DIST thunderbird-153.5.1esr-ga-IE.xpi 432781 BLAKE2B 128b827055cf55f620c1fa3410c010335b95e9574abc2500c55a53f1429b8daf5bffd9ab9fd87f5940f636d093b63304fc54e5da9cbaad6b92e08e87c3cbc5f7 SHA512 191f279d1d9f4f25fce6e85db77f7d25982bbc1b02bf5c3ba6ed03c36bed4df75aef028787a22607ad3aa468341d3f0df6ee882da8848e17ff0f58657b4cc9c1
+DIST thunderbird-153.5.1esr-gd.xpi 486237 BLAKE2B 8a68e9bbd15ae9463125ce261d4efa6553bac79e0912f59081b9adcacad3e529fbd2bfe1a942c9482dbcc489252bd7a07a7b3fbe35a32c3732c491ca7f924a79 SHA512 0ad898b500b4ae6e18fa6d2ee1e4d2e67b5b3dd62bb2ca51d2572fcf6e0cd8d46ca666533aa54c7a6f9642c13375e6ef6d162c54643a2b5f0a248d497804e558
+DIST thunderbird-153.5.1esr-gl.xpi 500121 BLAKE2B 3e51711f1a6eb942750846250cd8b40b0282a26bfa35b60b084dc98f952fbf21c689b382054ade44b39d1a15acc9d84d00b9b79c3a6aff814b26543872fcb1df SHA512 da9de6dbaf1300fcb2c474f20330c7d16d8235c69799da477cb1b7c483c2e3651fb0921afcbf4c00f2d1bd838e70999d56d94194b32a2a74e91db9bcd00a625d
+DIST thunderbird-153.5.1esr-he.xpi 484642 BLAKE2B 0e6601e6e16593c78071d56b9ce7958453f425eac7801739502a985e9d3c121392dc1c8a40fe7a87ef9315a908ff9dca371336a9c16c4720ab1db57f71cf2bb0 SHA512 35b213af1d9a65ffc2569d5ed14b9add4f7527cbe6eaf2f6298e133d45c380de2b6fbb787970b55697cce7ca63075413868de2f3ebbc96a1711bb1c948f9de2d
+DIST thunderbird-153.5.1esr-hr.xpi 498554 BLAKE2B add8a21490fa3c47f077d561b3c09007737cef83294310f484261defff36b4814d66f67970b3692673fb43d32218120c41df7ad3473893e4e21b5c8687bb8b6c SHA512 2f4ee8ccd3a44ef8541f84603a4b77a113039c971edb75d562a303436426b03c28441b0837a7c099903bad1d8709bfadd693bd65318680da2acc358478b7149a
+DIST thunderbird-153.5.1esr-hsb.xpi 536061 BLAKE2B 638708d23b7d0425b2dc1e1770b1da2a05819495ef29913af1e07aafb860d41004a013387c140a8a7697ec760bac33a4267cd33231e82148ae49f33f09e7e4b8 SHA512 9b070e1eabbbd272548d00b277475043ad70d19c790e197ed2e0fc290090373ab1579f6157d552ed98dcf7914eb0a83935c5cabea63e9c680cac7b012d2ed302
+DIST thunderbird-153.5.1esr-hu.xpi 538223 BLAKE2B fe93257343350e52894eb5e99cdb08b868718e8cfedcb148945439fa16449800d79c66dac3a0f495e198ea61bc5d18bc706058f9bf20e594003fd26178bdcd86 SHA512 45894ad6360a6fdb7eeb2b17c51e66a67d82fe4a15571b9dacb9693f45bff9edf5ef375384472446cfec33c750274f7c957d18b6b3d1ec9699fb7deaa9a4b482
+DIST thunderbird-153.5.1esr-id.xpi 482850 BLAKE2B 91aed42528264a331936213fed83c79e5f9515e5bed76004deb14ecf05b92664256383a1e47aa2217bc1995fd6d4aeb60e02741b6a67deec0642f3c28a5046d8 SHA512 f8461c922dba1bdd47e1f3fa59cdb59c027b60a6dca5bb3f8629edc71ab337a79c1a8b3e9819bb1ae402f3a045cdcd4ab187372bf8a3330975e63dbc9950fe8a
+DIST thunderbird-153.5.1esr-is.xpi 508459 BLAKE2B 5af8a4f0eee8884ddc9afa27470b9ce30b78acfe46b21e99fcb0576df21f18f0fd9b5c7f6f2ffc340ea7fcf86326c4069be874b85526a60c31318a1b2d1de9c0 SHA512 db21349b997663e40b129add611ebc49772f562a8a1523615a8ded6a8f19e498d060c3ac631638228f404eff8e7d54d4b7774a2e527f3ee92667ffb3286d5b59
+DIST thunderbird-153.5.1esr-it.xpi 507904 BLAKE2B d3d0705083e49617dab7c51ff019a785e2c6d0763ca3ac77558e8d0db51a299d69ab80d49e5fcd710dc339e9f36ab1c2170d8e4475fe18ec60a3d32b7c83a207 SHA512 6070719e427cde6ee3b16f0f23a0390fe2cae24b19266b28ad735fc081ad5359bea9112f813aa5a5966f0d64dfec7a8fc06f4c0fe850697d066f2cf4c6a5440c
+DIST thunderbird-153.5.1esr-ja.xpi 559670 BLAKE2B 6459500c27568d8ca09d7b272cc53ebe76cd18056d95df69d47620bfacec1acfdd0d5bf3ffaf2ee2f0b1cf85579b6fc1bb08dc49a23b44d5922fa139f7234da3 SHA512 570c372271af48a39414900d42f64c60ec315b1466c64b2169d13d552478639c1c89ebaa6d65be0936a366dc50eb3a6451d431fddf39fb9a483bb9d4b4b93a83
+DIST thunderbird-153.5.1esr-ka.xpi 577083 BLAKE2B 51a951c906af89f65b7dc4387e2ce10e21ff126e4a7e6f02c2051b9f644dbcb3764cc2a9e9b11f1e13b4326543e0615277f74513d086bafba0e9c436b3a868ff SHA512 c8a750215a7357d4cb0e322a282cc0fb28450a4326060d1f83952e113870a8ee2cbede3fdddf4a0d6278b53b3bc1a8ad378cc3021828a802fb43d74c11b1f1ac
+DIST thunderbird-153.5.1esr-kab.xpi 488119 BLAKE2B 31a744d86c271a7ea9f7549a68ec1d91053e4064b2a1f062f507844127dccf89dfc31e539e6bf607b58268470418237273048e14297256734f17f5fc988247bc SHA512 d58d0d29495f11449d5274c2d989212c9cce6da403860dbf4f9e1dc5a68bb766c705343ae6ae9563773140d08e7f30316e8c5842a30952bc415b7bea0a3d8c57
+DIST thunderbird-153.5.1esr-kk.xpi 601236 BLAKE2B 73fd992c46af577812e0a6fec3a2ce4812b6c46b77efce24efbcab532d607345753400db03bb6b02ea98a3e268ad45b797ed53592fecd5668c83dd3a655faf22 SHA512 222652bb75c0114c0b4e080e1d4ecb3aef868fbea649068e680b09247d453b281a7fe0c71e9b4c0a75f74e5b366628e5cb3eb54f88b59533ac9de06819deae1e
+DIST thunderbird-153.5.1esr-ko.xpi 535408 BLAKE2B 9d69480e18f0903040e20504181f69666baa214574a280ff3aaa83174c467602b597923fcffb9f996e90cbec532b4eb552ebad8053ec60f816840607e7a86656 SHA512 13302f2f7f73621855c73554453b4bc063cb8f3121e798fa9a44e2b68c0b89ba1ccd1cd75c148f42bb64e093823ddf67bd0fd564db4757892d6ee61f1e0239f9
+DIST thunderbird-153.5.1esr-lt.xpi 481627 BLAKE2B ab76e5cf5b7757d821f9c821f18e7c36455c44e5f3939ab5d06293297efa9c91165700a75a3dcd19fe94c80fc3ab0f9e136e2dc8ba1524b820d4eca4c7add53b SHA512 e809116164ed1386e2922802ebfb96c9f593a92edc7effde961eb7cd617104d399b95ed90434184bee1517968741c59eabb7d628fc8cd4a11e127d1bdb06e6da
+DIST thunderbird-153.5.1esr-lv.xpi 462929 BLAKE2B bd2598a376733de9488c7974f76b41a9258e0616c5ee9e7d94f854b7074e85d36892b95fb7378f87ddbb765ac7dfeda079832b874901a7f6e0541f1229211846 SHA512 d195a0ac4549315cf3499a459ef39985cbad73f2baa7659bba87e2bd517584032ecdff3773ca4f97b6aac92d987a353240f6b945f2950736560ee77b7fa4507a
+DIST thunderbird-153.5.1esr-ms.xpi 403354 BLAKE2B 639f1776bbf327355a1ec59f266194ddfdd5e4f6301f315c5a9f51d9bcedcc728ad88e3183d6d84dcf088844898888f8aec3762e32941cb512984ab96133d458 SHA512 38ddfe1032a9ce266fbc42bbcf2d866dcb083359600a33b9bd38a35c8fd9b87e0b32bad99f665460239dfc107a792828d0f82fd170ec9d4111b1ff6abc701d53
+DIST thunderbird-153.5.1esr-nb-NO.xpi 495087 BLAKE2B db3ec7f92746214de99b39eb8c716220e80108b2a05dd95c94dd203f99d569bbfea7b2f0b6a940f2fd3dbb589e70ae96dcb0888819235db9153e4b9f3c72cc97 SHA512 bd5c5884cfcd407850a9108c0f65404bfc244ac40a0e5d67fc7092de75732733c5efbb69541fa6efcef0ce563fa6d3f0225d588d8d6745fd00c3eecfa218567d
+DIST thunderbird-153.5.1esr-nl.xpi 501745 BLAKE2B 2a71a235de4de460c70d461c62b45d7640b811be74dce97ec4021741c7c9ac7398a06b4ad9139173797fb73576417b5dc3ce9b4bbc23948b99bf3007f5c602b0 SHA512 746b5b6fdae65537dfe68e58611c2706caf8f91a92e0cdcdc3dbf184098269c930835d39336bf58fdced6323eec7c1e5321be69a9e2ec716f759c04ca96b1967
+DIST thunderbird-153.5.1esr-nn-NO.xpi 499076 BLAKE2B f16b77b32a839d4f3d3090e977dd2bccb1da96a4255eff4877de2115982f932f1bccc32eb3d07881e19637e9bf61d981edadb481e79a59882ed5042e22442f7b SHA512 550275669e6fe8b481b5c9b4ad7257e10eb8c5ba091d13f0f205682ddfa2d6bd4d703c3b631a570596513d7f3e1934c157c27770eed49f1f0289e115102cf740
+DIST thunderbird-153.5.1esr-pa-IN.xpi 491271 BLAKE2B 98308c689b26e965a591bd25c395120d1cfb64a86d4b0a03a6b98f3399b4ccd6b01afa1995b719a4134204942968a0d750d452e41180827cc2584e607b1f68b0 SHA512 55dfbd5585e3f55dced55c77d65183cece158057f94f9457ffffda8afb2628607237125dd2b919ff473cc2c93b69a61ff465ac9d3281aa4922fb7bc5e0937757
+DIST thunderbird-153.5.1esr-pl.xpi 536464 BLAKE2B 3bfd70903fdef8a295482d53f457cf067801fb5045081f42569df8f6079b1791e11f3a095c7f2a6ff72c15a5e268ddee39c3b6f63f16591e1ef123350f778c60 SHA512 56fdd23dc24c12f77cfa27359df061a6fc70f9ff840ed7ee4f901bf433d7243e064b3e8652192ecefe9bfbabe562f9512bc5e24c7166e12c92f06e92f3ec8195
+DIST thunderbird-153.5.1esr-pt-BR.xpi 508307 BLAKE2B 94926c626d95d380288c2daad491c348ab00b6e3eb881ad88c1348418bcbd5a9eb693f77720770976ffbcd1372bb4aac124c06aafb5782f65ae35eccc39559a7 SHA512 1b22afaa42bc5582f4e27928c104c664074575ddbfecaad401cf0fc9db90e0325cd57744b845bbafedc7f4a6b841e0d12dccae8d7fb9462e96ba2577f4664bac
+DIST thunderbird-153.5.1esr-pt-PT.xpi 514327 BLAKE2B c8d8a177f344314e6c094521a23b0539906a3f67382e91e1aae4e67302ba53a324ef63f3d8f13794170fbe098018b4588ea68c592440b0e9322d13401df8da8c SHA512 c1a980e65dc7fd15f4ad105eb4473355f95f83b65bf0e2e244a34638d4f42fc65bcb0c58364f45b14cdcf1d2d5eb863ed4631279e2045e03c4ffe80b13b35973
+DIST thunderbird-153.5.1esr-rm.xpi 498924 BLAKE2B 49e4057828b8896d1e6c9a089f0dac7cdfffedb4ccecdb1dd57981fea24e80ac87198db2e540aaf4f0a9cf6422e6e72bc76c217b73696b64c9f3cd0947e8b302 SHA512 63d1c31b5dc131096b170693fd00075103dffcb1343d5f45dc220c6382682d867b35f85cb533ac84334e9e49c898953127a06fb3c7fd5d94970dd4c56faf962e
+DIST thunderbird-153.5.1esr-ro.xpi 521167 BLAKE2B 14663361efc55017f9c0433e4bd6d1693f6d38808d28f69e0785ab22d8f781d93395c457ee542c1dbadfeaa2e262c3f5c649afe853383f3781327f9358523f97 SHA512 edbfb6fdce7a2d3cda61d60f85cba3671197df485cda0a16e50fab192c539c0ffabea6cc1b7edbaabd1c070dce18239a5276f169b4715c36fdb67c2022e418c3
+DIST thunderbird-153.5.1esr-ru.xpi 616072 BLAKE2B 4eefce3c278f736e826136c4929a691cd5e266624e03be3f9173c2b5b64dc8142a633217245f7771a7b89b257574de816eae56767e996686d42df89b19738605 SHA512 33e1976745b8476e361534f1493ff000f12a38beda3423d3c1946aaff346de931f720e04c4aa4fb553c292656e26354359d25e47fc247ec4ef9648649383c5a9
+DIST thunderbird-153.5.1esr-sk.xpi 541185 BLAKE2B c021a55b2ff2f641a2bc05b4e7e111fd28e0f07890c4cbc1b54c35b5a9d1bfb60031e4bdedcb605e10546e03134a6b16b7a3fd6bc10a8f6a91b8fa501b989bd2 SHA512 6ccc40731d1507163741c774d383f90e5a0c49d5fc2b56e53ece2a8721e06c88a314d561070d62e61c351d45981f15f827f471748ef54234e1e1d61d42de9b99
+DIST thunderbird-153.5.1esr-sl.xpi 508952 BLAKE2B 3332cef003c02cf4567bdb9ef8509c752a7d88e09c3cc37f556c6ef919de91f58f3858d4f257f4fcdd8b14b09ae2bb292131ea4b5787444c16174bde49cf4004 SHA512 295a533836ae7d9ecc71dcf26a77c3b1e205c14d2dcf142d8c7aac83eb9e9ce77286a48316fd3e7aefba012bde4b42745a91fd40d8ee45c976590203909e5bdf
+DIST thunderbird-153.5.1esr-sq.xpi 525165 BLAKE2B 0ea60094a5fc6a941f4e17a9ec3cba7f7c255f1415f228cf48206974a81cdc0afa7ee941b0b0870eae769d2eb0ce64d155dd9ba973d1d42029323dba8d83e1b0 SHA512 5dfcff6f38e57454d70a521860e94817d7821179a81054c85d01a0f4b3ee3d29e86781f8a27ce02ce1f1ecbd42e0a29034a29060347210b4d1aae74f76e867d9
+DIST thunderbird-153.5.1esr-sr.xpi 581231 BLAKE2B 2762f7f1b82b6a705f688d98660c3926a086beb4db101774d37ca30bfd979e0690bb17b075d4d65c8bcd803516a2636f88edcf9f8d636362699def7dc3bd7f7d SHA512 4a7db90db5fdd05fc2921752413cf5e86d96a95d2321245b2de85d44e97acc8e8ebb3977abe935b16bbcc906cf39b8b980a91adda88a6a1f2a75092534b986d2
+DIST thunderbird-153.5.1esr-sv-SE.xpi 503767 BLAKE2B c5ebe1386382f1b38678fdaa020a797f9c545fe244016ef0fbf3dfba8d8d0e11967c845b25f50f3c77c1264efb82ead5fc85b787bf6059866db7a394948bec03 SHA512 75b59d1ca9aeaa69c3089639b278c690d16924c45bcf07933370d27792c27973f815397e69140b597407e0b917e741cc601b6decffecef18abf0e23ecda06e23
+DIST thunderbird-153.5.1esr-th.xpi 585144 BLAKE2B ff58d9e0e22410c95778dd9bd37c22ebb3b949ff60cd4ad909c9db526740430df30bebc57042684ed7efe15d2778a8060dccfa7df8c430aae22b9042b89ce89f SHA512 dc8b24d06ec37502952812ceb9a9967d7810cac4215f33d4c6e762850906285e46ffab8be3eebe5390e71be62c43266ee5fd080f93028519cf20273e2fb6c6ba
+DIST thunderbird-153.5.1esr-tr.xpi 515625 BLAKE2B de0d6822138402758733662f7a0cbbe8e7bc5cc45c373e9b6ccd7f032124667152972852e718debee355d40c549bf959935e72fa6a9887c4a29f47f35d662de7 SHA512 dcd226773cd137584bfdf31ef30108fcfe613ded16c3068454e144f3679498d3c4aee87714a8432607f825f02a20452013f29472782cf7aa9c13d1d4bc814d14
+DIST thunderbird-153.5.1esr-uk.xpi 596159 BLAKE2B 3ff9eaa4d2453903df2703e6f2cf7d0b643d1863d5a1d5de8f6a5d9f7d4ddd810531a13ce55e5f1101ce28c2cc1f7bb802bfb1ac607ca03b6725c980cd2872c8 SHA512 ba723d2d85e2cea83123967cc7ec99f3471a33cff4572598685de8b5210654377582dcfa20be61008b8a3054248e019e8c103a4441a2cdeae35764ebb1083440
+DIST thunderbird-153.5.1esr-uz.xpi 419569 BLAKE2B 6f169e1e43f5a31c4a445f42d79d2e54a2e6e1b33745f35f66c40bb0501955266d9399f42e6e363d166dcbc179a9c3c497a0dffb936366622864b0bd2e230da1 SHA512 dd0ae28faf857aa915533c6cba6e4b31d693c1a3cd296a537bc5384b69f162ab18a36c947bc6eedae4f64a36196c1b5f81e7cdf48ded019c82aecf621115a26b
+DIST thunderbird-153.5.1esr-vi.xpi 541852 BLAKE2B a8a6820e8b89a6c0520150c69464f19ba599114cbe0ea5fa952b46623615ee07119734318250d9b0a215e23416cc45536605a1b483b466bc0616199ec6c3fa7a SHA512 27bc085b11792b6c1063926be22c2009930a13ec5abce3de8d20f68a9767c8d2f3506868ef66a524832b3a2bd909b9603f03d12ec950d42cf476f45ba12d2220
+DIST thunderbird-153.5.1esr-zh-CN.xpi 526372 BLAKE2B 3515e8e4761d59384c590b0d6e4536211c55ad616f30660eab2927ca0014b3d32a3e6859e56e9fbf3d73c6c9e06a6b9557f96bd843998e3e76fef3cb7347f61c SHA512 a15b21b8003615ea87b681feccc8e874c18bc791019def642ef8fba3ed2a1464bcf0f18c7c08fd98b2d5abefd9f825e8067d1ace3af162f6f97ee776eb78bdba
+DIST thunderbird-153.5.1esr-zh-TW.xpi 530603 BLAKE2B cc0412a01fc9850b09a25c219bf3ddfd63f993470908955106d8780e52597037b834419cdf1a3b70c0381b5b93ecc6d7ee838f5c6651bc141868ee79f01df14d SHA512 790a952d3be99c866ff255e4a30d2ff6ed736767e0b282faa5423c016f31403a14307bbd392f2523d28b9f6af7f516bbfbded404a719d1e53bba5045fc56337b
DIST thunderbird-158.0-af.xpi 390744 BLAKE2B b6027d011454c2d403694cb45751ddf37e9f10d65b877dffb66ea2c80a5c41ed8c318674b794e9f69870c93bc5b7eb05c1a0d249a71099ab9d227f190b60fb2d SHA512 26ac94e6efd2110c544449af9e7189e231f7d32f523d6a9327bd1e72bf9b8d6d631b6678551a975321284750e64c4c674a6fe4d325fc0d3c63645b26c476b0da
DIST thunderbird-158.0-ar.xpi 489314 BLAKE2B 769527a286a9c3e2ecd6e3ea56adcd24757effd642e89d5f5d0ddb42a52f938889ac7dd5929b479a06bdadc0db6aae7ac7f373d25a9deab9aba6c295d96c2943 SHA512 0965bfa46dc3a931ba15619a81cecffbba9cba88fbda418c23b92b3aae1d4dc607895db668c912c05e81bbb282710da1b0fa86d1b4c7f8cd9da674224bbee507
DIST thunderbird-158.0-ast.xpi 408421 BLAKE2B 3a09e8dbfb56cecde5adfb370e35c9ab16de202188fe72236995de7d2fcb896715911647076070750698003074880aa14b96af1b7bc8685d28307e9793c732d3 SHA512 a4b64eee5e50a31e2ece7f62d5c66379c6dfb6c93c6a9744e1cd0d02a8d04d9122c4151b2223f64e40c5ebbafa1b24abc1e5ba527a8b338633054867cf787916
@@ -124,3 +187,66 @@ DIST thunderbird-158.0-uz.xpi 416416 BLAKE2B 17074bc49d80a2b704947e558a3ad1b2dbf
DIST thunderbird-158.0-vi.xpi 549920 BLAKE2B 4ea9f4cf551c3c85fc8bfa3c47e8e159e4c8cdb68601a06ad37f9e36300dc86d82a677a65280fdb7220c3fccd2a8ca04015e8b1c0c94a911672ebaa8dd112f13 SHA512 72c2081ba455cd6fb371845e6cd3ca4aa5eeac511c04400e2b53fae7ae49acf867a5895f427cf6576e2d4f96908b45bab86bcfa5cfb462ae1527ddd413d9944d
DIST thunderbird-158.0-zh-CN.xpi 526326 BLAKE2B 9b6a10d52ee369d57042e0842ca18f4045e96710b8a2518cecae466a3fa29ea85a26142d607f34796e53e5656ad70073a40f3b318db125b125e55cd14738450e SHA512 6df85be0a545fc7bc142fd79a96faa33b7af3155db1f2e1d5e29a9b82136c822475e91c430a3c527708d1640242488d5d2f9957b05e304f153eab26d1b799e41
DIST thunderbird-158.0-zh-TW.xpi 538334 BLAKE2B 16fb322434c41c95bc833dca263f15eb923478bd4a73f17a4e9cbacb4d3bdbf47ba723cfaec22f27a71b32b7c517d2e066bd844f3c5276dc277a14919815a04e SHA512 0ec863e32d01912775938ca2de3e6021f7fe9a2c44b06bd23c7e2a26b640231ac5b98b4ab4e2ebd7d849a3aaad4f12c20fd749dbeff71eab2917c1ea0c6331f1
+DIST thunderbird-158.0.1-af.xpi 390747 BLAKE2B 113c3cb5a104d4225de4566a35f8a8bc8cc2aee761c30b9dddc99d01a927d2f0b87930d84df5587815eaee115ba4bfeeb78201d4c930346c9add1a7fa47e0f0f SHA512 b7e83fe70e305d9882497b29790e1008ca293b850d806aad73fe3ff88906217f82ac6f468c21142019148528eb143ef238f0d22613f3d5441bc6d5248b8d1e16
+DIST thunderbird-158.0.1-ar.xpi 489328 BLAKE2B 513e95344255df754a0ced6b7bbe86098d65daa09eb0344fcb555c4412082d06355164c2441064fc712ddcd4cedce47330dc1c7c3a6641b9b0b602c36d3880f9 SHA512 658749706832b8b8312746e6be0d5158ddd7ebe90e78a880175d3a30b9a0cdacdbbdff31a03ec9dbb9d4b342662a03da6b65854391dd2608b625c65d0f28f7ed
+DIST thunderbird-158.0.1-ast.xpi 408422 BLAKE2B 1e4432e51353f91deeccda9a64334956f59bc61b5e05a7649ec6877ba55148ccf532eac2085fb53faf0068fad98b148d3e1f7e56253bdfb2a786c6db5e0510d7 SHA512 d248eeabb5d6606aa37036d5eea340431890476aa4a7afca3c41693de889588e679287efb2d38ccceb56d750025843baa297a0094d34a9ee31699a9a7bce4be8
+DIST thunderbird-158.0.1-be.xpi 555913 BLAKE2B 3853150009856f6871b2c1ca5823244bbf14801af429a5d13202cd678186998fcc4afe761594af1ec1d079fe8b0c5a332b62b2a82544c64a38ae8c36816e10f0 SHA512 a75089acbdcca09d58c93aabcc687aa43bf25ac9239f1300973491f7f5ed5c112d479753946f5a24de76edde2cb2114b653531deb5072f0f30b0dd8e604c7ec4
+DIST thunderbird-158.0.1-bg.xpi 564733 BLAKE2B 46bc6d167790861d34538bd2a698c5ce34f4b74b112e372bc02e06c47faee1334ef9d48c7dbb24f8da7f1c613f087769614a0274182c03fc0f999f2813b44c80 SHA512 4148eb88251a96520a48de1c51b28a6dac8b7af53edbd8a1af436efb335a2395922b72f9728503ed3af7a43fc82cfc6f6e79c81867f8ab6799c81ca9053ce4ca
+DIST thunderbird-158.0.1-br.xpi 438729 BLAKE2B e5c98cfb680d3ae00f8d75d67d8b5ea27ef66d6dc4805557294bef798a159c8218cc3121ac001a1a5840136816bb03814b948b7b4ce664e7dd1fb3d739b73807 SHA512 cc058ea3275591bf1ad4bea74f0d5f0535d361a6bfb124c5be84e9b0275cd687c5ffa86ad059a27e0e5c08feee05425f717794ef2b0ff60e02bf995e11f0486a
+DIST thunderbird-158.0.1-ca.xpi 477653 BLAKE2B 18db281e9b0075a9e5efe558c2ad285999284c1c57f17edc358f6722312b1a30498d841e643d6d9558229de78d14f8042575e25986e8a3e5b437eaf1eb7e982d SHA512 4f38b96df5128532ff9ee40b2d7eeb9e592232203484ee6883b5dadd9dd65ca6c0e6375d502c85a1f2da0924ea2525876b72ead4026cf4151f890cdc3d2ae65c
+DIST thunderbird-158.0.1-cak.xpi 455077 BLAKE2B 6d243d600597f6a740715154a05c05bf6e9d81af09a0d7b171bb35d3df65534601f8940763f6948a775ee23a4a32feaca114ee421eec9e8cdbe13f93e4139239 SHA512 2b6d069f34e96e02225f5a3c4e5a1a1e0a1b3eb7e91850c23158a29511930594adcec1ada60a52451a48acf3c761dbf8ae95cb892aa97b9854d4e8f1501232bf
+DIST thunderbird-158.0.1-cs.xpi 549494 BLAKE2B 903a036a97f8378442a4d9fa6a8a50c8b3d3a5bf6fcefb86ccb64a0f5d8e5ee000f7de7b18e7847f256e6cb4d0a3c7f4d77ecb8897434c38feed5214d12a9e0a SHA512 b12d6d3cfa0bfdd85eface1f63198a7331e67242dd60f16353d530afb20afe11b2c03b8045ed708231a09ce628b00153296d567a555e1d5461b9d8a4a763afe3
+DIST thunderbird-158.0.1-cy.xpi 516803 BLAKE2B 13303de8a12f5be9fa206a2a9e68a213d2e963e1d8de17c3277289448373000184dd284babfeabff9da2039fedfb2cbae5fdb835a0cc6fa33e6df640004d6061 SHA512 fec0a4b2bf6115f23e25e22eb6ce8fa0ea5cf2e40ebc33aafa11652b0ad34d4d5f5b8455826c78977022528e745bf5975067a2bede220d744aa6fd4324e7b94c
+DIST thunderbird-158.0.1-da.xpi 495167 BLAKE2B 50e7060271a733a1e196abfa099a440b6922b5b2e372f6d574b42add0c1e871e4731a0d34681f6d398e558d53179a64cc63b4d6cf1fe4278488b3d95bf420dd5 SHA512 1c676cba6b814354cb4939127b6c0c52676da78a072e20a68aceb85324e824152fdf4b6a7309ccf43bfa62e867830c3558ba168740a3c0db84d10a162d2b79ba
+DIST thunderbird-158.0.1-de.xpi 532510 BLAKE2B 7778f5ef26c60f4607f115491d82db3f70233cdcb42aa885f5f7e117df648164badc71f26f61e21b8c83b8a218f32e55b2cfacd74e34cbfb1c72dfa458832a62 SHA512 674b8b72e55adec3534741ed29f085e7a4c09e5517d6f75ff1fa22811daf37a8a23a45f867d8021be7dced75c38cec15f85d95954fa4b12d84962ecb2ec818d6
+DIST thunderbird-158.0.1-dsb.xpi 546506 BLAKE2B 0a107ee5002392e47048a0b8e9f12a8bd632f7edc1a85bb0e467b21f47b6c3ce4ecd5b113cb189ca000031c33602e3ede8cbf11188e8e626868a8bfd10bb45a0 SHA512 32f73a2ca8523061c3183f9b94764d5999ff68b013a53326ac0ada5beb7b9ae9334c18b0a55c46fce79355a3650a174800844dc7663d2e512edef51ef3995254
+DIST thunderbird-158.0.1-el.xpi 640706 BLAKE2B 0ca1ddf92e9a46af0737c1e32af573187daad4d7c2a88f3fe8f43542131eca283499bbae900d6061ab68d0638d5477b96ec436e8679a4d822fc863b7fbe7c747 SHA512 41aa074b9bc6ed90d6866f931ccec56fe1a6910e56a9255df29b80067cad2d5a10f3452723ef6c0872c1bdf2aecf9d9125d2145a28e35d83e7295874d09fcae4
+DIST thunderbird-158.0.1-en-CA.xpi 471981 BLAKE2B 5eb58a1949a6b7e8228888cde587dfd8f59d5ee6b9d1cf4a969b75caaca4577849f4da6c1a097b3407090ce9243833f408f456ebf264229c8c7dbb55f1603d94 SHA512 7bc94698d797b98f7fe2115b44fff9562370410956b41317c68b4fcfb7494e49f16196094f76e3b048e6bf4f58c812fb957f54dda5adbcd1d328a1287dae6e26
+DIST thunderbird-158.0.1-en-GB.xpi 476499 BLAKE2B b3dafba6ccaae706f36faaafe8b1b3d5c3e0094e6202fbbaff445597850152b2d680689929e59c399770e19b72232ec33aa8f29fba1bda5eb8a8e5b4bbbce979 SHA512 b1f70eea99dd4cbe2cdb952b3fede77ad543b072ea199c93e1c4231ed0bcf96a9315f02d4e399cdf296a35e120a719bb30481cf84e8c8a48304dea55b25e6950
+DIST thunderbird-158.0.1-es-AR.xpi 521679 BLAKE2B cd82cad9b7676c7a32320d703024e7c628d017627e2377d9a3fbe1a7153968b22755bb1970a421957d7b35cd0de0216bae871cf50c6fd7f1b502de244a55f114 SHA512 d034d75159466676d9849633b76c73073667ac643a63c1a59bac877d3c06cbf8a9332e6b0f887be3aa4baeb175991a4d6f29009ddeb9b2ee9cc81e69bc9cda2c
+DIST thunderbird-158.0.1-es-ES.xpi 515527 BLAKE2B b53c0e196ccc8397654551e767af83536ab657325a2316e9eb8df44ab3d1db2b1e3c062409392e4bdb96bb4b88a3a022db4f97c7cf9cd76d9ea31944668f464e SHA512 a4a775fe068eaab7856ce8fc322a793aada206339945722b60ecd903885a6a6b8b978f31422f38f54e2d623ba10be222fbbd2d16efcc3e886b47fc7a1f887c14
+DIST thunderbird-158.0.1-et.xpi 463020 BLAKE2B 004ff05f3f38acca59b1a55327542b0c894e141b0c154ba300db0875082a3223f03bc3e7ae785506b72e430c7a013e3d6e0ef900e3cd9fc5f89e7111fccae799 SHA512 ee0cec616fc94e65db592a2924ec6d7b7e53afff7e777144bcf790839a2c196b6932a3a7fa43a20b5fc8b82ed62f84d27935d9b04d28bb737ad3bb5d05ba702b
+DIST thunderbird-158.0.1-eu.xpi 499714 BLAKE2B 5d8e700db373bfa6e00dc1c59d8dd584d8cc8c267947d6fb37a1722f9f444372bd035ce866af2a3bb5b8c338c2d1b7d399abdd601c1256907e1d0b6027bdf64a SHA512 cc0395ff6b4a2ef924f1c870bc7b19e29932cc5ad4134799b1fc3ecb79790a008eddbc081116de1a9c8e9481db82ab21168379e6fd288d23103f4ea93ecc8a18
+DIST thunderbird-158.0.1-fi.xpi 501254 BLAKE2B f3ffeae63d0dd4f091b88c3e4c07ffdce37f8b9100239bdd0d1edf2e586483f697dc385b94a230da0127497a792bcd1eafa9b7ee7e247414372a27e3fd9e1aa8 SHA512 f58c708485aa2cba5259533872ca0de6dccc625148fa54a290612fda9238b1c6124294a799ea2d658b132317ac9a4dc89e1a4ace3f81048394805a4b969f3036
+DIST thunderbird-158.0.1-fr.xpi 536177 BLAKE2B 41a0b65ef338482fec388e21c0884d0843db70474daccec72efd19010f661fb995076d38f1cfaf46198e448cc5f0a7d6994f42104e12dad6f2f8dd09f23bdbf9 SHA512 c02d7b262f3451141ae727578515634a27b7629b9fd892bcd8c2115f528f54b53034f0f4c5597c2ac3d843916743ea22f53693170ff5723c1c93f473ee2fffb6
+DIST thunderbird-158.0.1-fy-NL.xpi 517361 BLAKE2B cee10edccadf3b6ada936e54964682b1ea1956c614cfffbd7ab20cbf5f7f7cc8b39e2bb010c3005027030dcbd609c019c6909394b7055931102110ac666e2f2c SHA512 2d17253c17940801cdd3862b424b78393747cc620b72e0a3f1947af158b71403a9f814efd7d6f5928584ee3319ac87888f02c546d881bfbba5d5cac45cf25c8f
+DIST thunderbird-158.0.1-ga-IE.xpi 431409 BLAKE2B 0a12a631473767b4d222fb2cd9bfe38314869d7770402c7abda401ebf7a86286ffd2f3f8e2b75b59d154a4f56496884a77b2475f7b23419815eaa97eb1623a55 SHA512 b3d528be7ef95335043b2c6887eb147518e7c7e17e2e29aa6e38da2dd8b6805c0936bf28d93b8a05a2159a10e45c48ce9bcb6faba4022f5a6293adf0a4a94143
+DIST thunderbird-158.0.1-gd.xpi 484688 BLAKE2B b4fdcabcc4e0d96f982fb915312c93b9ca2dd508175cef2ae1d06968d6535aa1f43c6db60aa41af6e497bd06ebefbf5ae4f413234c128ebb44201de3d0b8b6aa SHA512 491dd65b72ea365dccadb0961011f62e90342c4e86719deac2ced34861e1615717f841b7de60b53687ede1eb65bcfa7120c69744b73d5df55a9caa84dd31df20
+DIST thunderbird-158.0.1-gl.xpi 497649 BLAKE2B bc0afd6e0c3bcee712d3c70b1a714bcbbe46039102775c5306180791c05cc1d8d6d70b4b1fff514e2103a34d882979faedc62b3a59591257bc5d9785a581f2dc SHA512 be13e367e5d49bb3973f7ef72a5c1c3f0da905e740b96d706279e9b146006810519b5073f001d48e84706b9571929fff4793c0f5be7c4ea1c70fb7d613e5d3e9
+DIST thunderbird-158.0.1-he.xpi 486612 BLAKE2B f9af71a62eb0a77944bc290f298e3dea0007d627e1978b5b50ee2e2387daa64c7586d2d4193f3b5bd7f2ec044625d5e43afd8cce0bfa14e6b71e69db4c1f411d SHA512 0c66b85363dab2e6be1613e52a9f5c86a6d292308bd7cf11fab8e116e05bfa555c1414ae3a6f14e208702f38366fed985b0be2e15400f4b4729c1598c31f2d44
+DIST thunderbird-158.0.1-hr.xpi 496579 BLAKE2B 72417310cdae9616abaf0fc8292465a4b99649d6d2e4d3a80a73e215a6a3c89b895087eaf4d7df88cb23a55f02c126d361504e863549ce0c3ebdc7ecf4af7262 SHA512 c9336bd795c6402437656dccf85387be985915b184e8ea85a1eca58f64d17a01c9b1be07a91151c518721a8c4a52a9046b7f1bd07c77a9574b0697c7747c9d09
+DIST thunderbird-158.0.1-hsb.xpi 543792 BLAKE2B faedc4dfafbb6fc5f1694c064282315563021875147ff6675a3918727727e398bc85505a917768bb2ead30b9c7d861840b6e32040a7d9b6af0b681c67e6d3c1e SHA512 97d568a82e3912e225b891524db1d86913b475e29c4ddc949b7d69c869fbc9ad6a8650c31bfe5bb65236cf9492eb3bfb3aa39a6bc70f89c90ad7ead40b9de912
+DIST thunderbird-158.0.1-hu.xpi 545817 BLAKE2B ee0159af54f03caedd2c8a526aed099044cf87cd73fcca1b27b01e457b622b0ac620b51699c6e9d4451df24f880eb9469e2c4c167c00080e16aa52ad9155e788 SHA512 b041795869f5c5c9fc58e88cb3b70207eb8d30e5a7ca47b6cf59ab57839c85d3dbaed1959a303f3b88292a479521973e2e72c7812f1140eea23228b6accc545e
+DIST thunderbird-158.0.1-id.xpi 484235 BLAKE2B e08bcd2e6c3e7c718fadbf39fa0341f7417d98f2e82394788fc8825227d6888bb12ebdf200fe3d44dde8bc04e2395e4779d92beda05cbe365ca959857dd800e5 SHA512 b958ec618aea4a7afbd722385198ce01ec1e83c5401be81b182d5d5b05c0bd12f05b35b0498537d0e2ad7761e5ebed9ecd0d5d10e08839ab4c525d0e10703712
+DIST thunderbird-158.0.1-is.xpi 511889 BLAKE2B 200a3a9277ccb6e0cfb81bfd5aeb82b3a975f0a0533eaf5ba784e0eeaab55d4a83f10f4130614d4db1f3e6caec7421c808cb27d3d3c623753e4be6052b567ab2 SHA512 abda7b8e4a950ffc58f9ba084e2fed3939a7d6da65a7b9e369c05ee37cf765b048c8a9f4dc652d718953aad6ccddad959ec14e978c195f16cc9679fee6d3f873
+DIST thunderbird-158.0.1-it.xpi 515226 BLAKE2B e6f93f9f4570ce64f40b9999e20ef1a639f2c0929643dd02b92780e8e13cb353313dbbd0a2ffecac5c61f8bad8c8e3f332aa3aa74b3fa4653856c631b280a91d SHA512 725e50582c30f2bc81772383478dc3dcbef4518b39158970abc36885fbdb81e74587904c7d739c1bcc24341c4fc6bbb7e73bebe0893c49d6ebeb4f6dfaa94c1d
+DIST thunderbird-158.0.1-ja.xpi 567776 BLAKE2B fb7c10ba0925495ab8be15536b4904d7b2bca56ef3cbcdfa9707433aa6a461942a3ea771dea2b286b09e8beaa260c1cbe6cc1f30660f1ebe9b8030671f4288cc SHA512 4c4ddd6c726084a6f9865dda459d60540c28ee8498cfb1be36dd213d21c15e9c36cdd5ac54792ba690b9231a2ae2d23f9b2d3e8f3467eaadee139dad53746b3f
+DIST thunderbird-158.0.1-ka.xpi 585461 BLAKE2B 24bbe997c3dd3a0e5d6e616ab855bafb889a0169783e28eb8f4ad2e26824a5c2efc1b61c3707092a42ccb455653edfa0a7e0d521ae0b5da8fecd994afa0f93ed SHA512 fbcba8d75d03c41ccbac0926015f2a73e6ebea99e8897e5125d40e817e7d12272bc5c00d88bacb0661cfb09ec619c011f5a9f971a95fc67c4205331f5ae71ebe
+DIST thunderbird-158.0.1-kab.xpi 486972 BLAKE2B 7e3d793679c300148e31f0ea4f237784804885691d580f7d5bfe920c1e7c8d6bafe2e633f19faa4690671d856f4b58b47595ed9d327ef0c989b21fcabc58a80f SHA512 1fa1f2f3c4d260de8a675ee6ea925329ce0311a6eec780471e483491a047c3a28578703282d187a4df4c1c2ed630f3c983a788c9b7b275cd8bd85d15aa06bd2b
+DIST thunderbird-158.0.1-kk.xpi 610745 BLAKE2B d20f1478b3d844feaf53efe8b1709f9d6671c676a34261940faa236837716ce8a056b91cd59062323fe9778063ebdbb86287d6a7deb9ae9f83c1e4d078ba37a7 SHA512 9f472959316dffe9691075ff5f1c6e7480a388d10bae7ffdc780e75e1fc27278e26f6632eeddba3f0aa30022535bc9f76d26876252a09f2052f5013e96760a93
+DIST thunderbird-158.0.1-ko.xpi 540984 BLAKE2B 589d5d719b6bc074e348d5b48bc705a87386ca7f0acb0cf47b1c878c60620002812c59cdab10c9000974441908e17aa8c9407897b2be85bc3cd7973b4020e860 SHA512 c1056a7416d3be8b92bb260c648dec21d6d557d2e98790d80e8b708f5dac9abb681db15f411b6214b1a87ecbe56018a469fa49712a41dfffa9722263f8eeea09
+DIST thunderbird-158.0.1-lt.xpi 480524 BLAKE2B f3e1df397356447082bb095e780e7f07f4c3ddbff5a3063626e52274cb3f94fb3b760b90214e331d3e285a65494e023a12be82a04fdf60dbe4a5a2e0c3d7fe0c SHA512 e9f7c31a9782c8a06f0fb0cfc5667afb677ef5c4c89b4347145a4a1ae6220c773c853bd8e32b24b6646d22cfd27eb3f6a25cf153806fe25db4a9dfef4eb8d57d
+DIST thunderbird-158.0.1-lv.xpi 466220 BLAKE2B 2117ac2895f3bb43d44bbb9b4ea13d34c4e1cf71d53489ce40c35c95c65a9f86e79384f2246bfa81217f6b09f43d88db1f42dcbe05f4bc9c39e543726e84d7ee SHA512 9f06b1165e38d6d806f1205bcb4d5172bf66c04394b4c39d7d69af8a54836ea798b1fd74a491d3c5cc36afc9a598d2e007617b0889a4cfa0a7600d955aac693e
+DIST thunderbird-158.0.1-ms.xpi 402935 BLAKE2B 1746b82657e23124ad20614e6286750310d203cac2423ae6abb4482456c9dfccd30e131257de4ec0e7a8020428057425072182fef3eba43d8248f6a2677ac8b0 SHA512 12567c4d711a4299fb584a0fa119e365077b63f53da805d33c529cce51ee1abd3bcd484675fd13d454129822d24cc3a85405fc74602017dbf420dab57519531e
+DIST thunderbird-158.0.1-nb-NO.xpi 499126 BLAKE2B d1ec2fc30fd3accc9db6c28d2383ed323f2028838ef443438df44d01e1ac19e6030ddfbef7a5cbbffa9bb22255200cc7fcdf81ec3fbe36ccae3b58ecfaf20ead SHA512 9007627e4f02f7a3e6d153cfabc276fe43e34442b2e924dfeb63cd415ed94d3934444beda14256e2ec3e24c49a75a9b1b1329b3f1615fc15357cfe6b30130f8b
+DIST thunderbird-158.0.1-nl.xpi 508858 BLAKE2B 09dcaa38286060229d80f43ec06d2ee626ea501f0a769bfefe0f0c5491ec2be826411dca1ca0c3cee144f54e061ae62ca8d1d8527dc3be61cd57a0785521dcc6 SHA512 9be75544ce4c52b614cd94c60b4473d204a947851ba9a4051180b303dbbfa18abb502f41741b72d39114b40e6162a41b22bc747ad68a6a684bd95c44ad85094c
+DIST thunderbird-158.0.1-nn-NO.xpi 502051 BLAKE2B e06092f53fd3cd0382eb82719603015cd2cf844b589fee4519b235e6c06a0648bd6fe55f44b148660f3f8d870b7d54f650ad9e6679893f26ac4a667972be4703 SHA512 582b31578a6ca5ef61b08ab66e1b83b8775199400232c958543ca37090af0a8d412b256dc020e7ee7eac0c06d88d6b9fcb5684e5dccb55c8b6abaf23802be55c
+DIST thunderbird-158.0.1-pa-IN.xpi 491002 BLAKE2B 12d48a324db62ff49450539e22eba8d85dced153c1ae9ca07c741e2f9a9c655d3e9c5d7e7810c291f7b8c36358c45d5f26544d514283337e8bdacce3fd602728 SHA512 6502b096c0f5bb1426d5910dbe536ef1031e337c8100a83fe9dd79599ed41cd909f2281065948e83dc373cc8d2c76a9728491cae487ed6b0367c810a924c058f
+DIST thunderbird-158.0.1-pl.xpi 544410 BLAKE2B 880130a9b58ec69b8db7502e911fe2f8346f778058fde96a1337bcc3031284a85823a21b4a7cecc43c01e4af26a8ab8d55174101de69b57b8b0bffe007282e9c SHA512 4390ab08497340747d6a4179b6b577dfbb5eb6c5a4512bfa2483abf20925522fd5567429ae80dc80c2b7abeafcfd8023119ae15fd063655317a6739b1c3a839b
+DIST thunderbird-158.0.1-pt-BR.xpi 510048 BLAKE2B 837f44dda979328245e06ea77e099f5f376f54760897dae6168b338eb2b66c6f943efdf934c0175fbe9222547fd3ed992d54f836dc35984699f819a329dc2393 SHA512 48ec9909cdbee9f059b9838e0e26be8174de0458deae3f7f7d6da2b0c7d75cae249fcb193eb36aecb43a89c3977400524c6f2bbecfc21cc886686f849d12de68
+DIST thunderbird-158.0.1-pt-PT.xpi 521723 BLAKE2B ce04ef06669ccc083bceeb8b8205a2ee90a1db76873535dcad39d271a52a8e35f108f6cc41bc92704b7d91562eca5b915a4ff942c5510d170c94da5ce9290a44 SHA512 5ce3988e05244a196e1e4b82af89b4d982d1d05c0759570cd1fd160a3f9971e85726f49b8bdf493be61cc27324af1546ba8837dd4946de389d3c13dbb3e0895b
+DIST thunderbird-158.0.1-rm.xpi 496619 BLAKE2B 6d08e62bde2d88cd33ee3e8c16017727f60483365c2aa42de3b11ef55811a9581a4e19aa39df6d484dd7b11e4601b21545b3dae15673a7dabe17c1d4d460e2db SHA512 b141509d033bfef03984d4203002dce9a6482c314c419213129ca7bda004976ffb66cd8f8e81e87645e2bee5cae9f15dd69cee657b40098a1301c066245d7630
+DIST thunderbird-158.0.1-ro.xpi 528845 BLAKE2B f3c1e56d9dabda853fb080624b06fd1ff78fdd5eaf978b1cf2754ca309fc17f0d3273835470ab07e67ef204ed674752d873e351f40184ce184f992daab63711a SHA512 f83462fa82c55a2eeab25d29e3a4720bba82e063d8f89c3c04de72d7929e84cd9f540dfa8f027d8525dde6f8aec419faea30f30159217045c8e886c820c78751
+DIST thunderbird-158.0.1-ru.xpi 625370 BLAKE2B 96233b3f658120cd98a9ecf89cb830e93012bab53e2607581c2e05c490d3efed78aab4166139c4d26870e623c682fe49e1b90d515061a299868845b5a893e75d SHA512 0725dab676edf567e5cd4bdd7c490493f388df0f599321bda998ae381f28135b84520f9dd8de2b42ad0665b06c3de7ab7b1469cdcc30a4d8f29c0141bb379ba8
+DIST thunderbird-158.0.1-sk.xpi 549298 BLAKE2B 5d16ad9fb23cfa81db0c97c2a3e857792cfcc1cfb292db05c8d5ba997353fed548c464eeef25737eebe3f7fb9260e87b36fef02db92d1042acb70bfc4ea3200d SHA512 395335becb2f24a9b2527cb4e053063ce5d125d0d565ad7f64c1924c21e1f6bc77b240ae63868e5c56483a5064b5b233674da473e109532b72063720aa919738
+DIST thunderbird-158.0.1-sl.xpi 512600 BLAKE2B 146360b034cced05891b21462c66e1658d18a6089d0eccb334f261167486549c0b94dfba63601be29dc4da7896f4d707c8e4a2067003bed609147888b0a76e89 SHA512 2db6639f00ddef0d387a1c70437c31c150674ada4b17d6d5475d5358695af41e79704a1c254e6850f5945529eac886323de54379986a87f960b50e78ba8968d1
+DIST thunderbird-158.0.1-sq.xpi 522775 BLAKE2B 88b95a5c0e0a2ab27c9dbddcf9b65206297c55ccf5cb49fb59a6356ffb70193624db611adf0b52568d64d04ebee3259f50f645163f0fea6c69a4c4de26c1fab3 SHA512 302672b5a8ea512a3168089f8e59a31f2401e14288f5d6fe0db3f22c5b1c1c15282e6b66d7ea0cee92c4aeac917d8ac90f1622a8571e7b5cf029fc68c0172515
+DIST thunderbird-158.0.1-sr.xpi 586553 BLAKE2B bd293dbe17c6cb2a663509ab5545d53d1dfc2c4d14032306ea877b557ae6d52e042b12b12d6f9148408556ff10abe33bfeaca824e79f3254ec9bc1adfab957ad SHA512 606ebaaa27cd60e092bd80018de83e911d1147c9e826901c937f885166c247d76ccfa630562c22505933d90b5bb3a6b8cc6d6abb5da3e5d6b25221b75015f713
+DIST thunderbird-158.0.1-sv-SE.xpi 511032 BLAKE2B 4177c47ccb8e5d4cbfa3e0790377fa8392ad8102bc3f12ad29fb14c34c10b0f1f77fe8092d38d68003e6f682e00b7c703ed41f4b350094d73f023373e0a53af8 SHA512 97ada9f9bafe68299cb98ba489083f382f11753e8979ad2da5a58ce0b4e22861e6841ab0ba51b6640e34de40f4ad67c688b46e0ed6a5497559afcced4c540a20
+DIST thunderbird-158.0.1-th.xpi 582075 BLAKE2B cc42e869df62051e40a589037a3190d32903a5a76ee97a6c837a57fdf2ad0091d4ab310a384d3b70c8a59414fbd3b42d0897bd69703f50cecbe73c14c6746017 SHA512 1f59174cd8bf8b19a19207b13c53b062361eaccec4809eb85c9e736afdc60a0610c5987725ec24bce603dd7e91d3e87f8582298d10f178a646dbafd49c76006c
+DIST thunderbird-158.0.1-tr.xpi 521430 BLAKE2B 7578c36262eaa0578886b873f86ed3d25d1a89276e874debd7c393c84f7bb12d608a935715c97576a11b1879f5fcc7363be9e76615b7ab3fd0ea8debd224d361 SHA512 877afd699da87476e35dc659eb4313fc211995c279f7e7fdc3b1a5fa57177f1bd8232d8c641a62c7058857605851485616caf95992c3f06de9f6a398608446d0
+DIST thunderbird-158.0.1-uk.xpi 594372 BLAKE2B 80e39c62ebf4fabc3b5b43a4b4a85a55d143e5bd07ea8dc2dacc3759f53bb4f57723f7580eb1d5f2f8302d89a7a055cf5bdf7797b4339c1c59646bc62c64f129 SHA512 97a3affe72e3a28db4fb1b29061a94c1adf7a41a3d75168ea43870e9e0cb93c626f335c8dcdf8984e9fe7e0f3a5176dab79e2cdd834f2b3677aae001f91b8650
+DIST thunderbird-158.0.1-uz.xpi 416419 BLAKE2B 50d1197f370e30f2ee892aa4fecc47d4a8e0346e52045e5efb5fa1616f9d205613a6015f7270ab480879bee0152e86eafd0a43c8da60d141525da690e1f3acaf SHA512 57e9cbc64a0aa1cca6fd35a600280ec51393d6a576c91501cccf597f099813efe323d417d2a179882886d2b486bcc11eb801ccfdee38607a9c55f190d66ae4d0
+DIST thunderbird-158.0.1-vi.xpi 549888 BLAKE2B 45d505f65119bce557cef40a83653f14dcdf2dfce3ec895aee7bb36a9fc271eb104d8d43ed90b3f1cedfa7424b1fec953baf87b6522dfa89bcec25ee4637346a SHA512 ef81395afea2b4962b7e7f3d311c87e150601a2c8e654b18aef7bbeeea810c58a0b15d9da07596625690ec5714defde941efdf14592e7f118ee8e3fe955f0dfb
+DIST thunderbird-158.0.1-zh-CN.xpi 526327 BLAKE2B 2b4fc554bcce5852ccd1fc370e048a49d8750debdea450b0359b6c2b7d86438c1ef2ff5db599121a8b4372d4af87f6811bf619e8c105e99835b4abfbe6500bd9 SHA512 cd7cf9e779b6f627f79bbae70dcf27a2b43f76348c92bff84f7987a59574272ca67fc0761e92c56aa5a8292959cce1145201c9dd836e5a38f37b7e2babdb5561
+DIST thunderbird-158.0.1-zh-TW.xpi 538337 BLAKE2B fabd98a99e43abda6d3522f65a1916d67a971f7342bc207df760f2164bad18229c6ac6a5cca4dd295df7626f9fe2325e18598e11f657ae63bfdd9112a486b63b SHA512 ce5df5a0e359e78c73fb68c490e6e4dc64ddd9203b11f1c6056c52d6867410cb5e0ededb53cb48afa55ee32b28da2a36347de9c78bab61f879ab8fed1ceec9bd
diff --git a/mail-client/thunderbird-l10n/thunderbird-l10n-153.5.1.ebuild b/mail-client/thunderbird-l10n/thunderbird-l10n-153.5.1.ebuild
new file mode 100644
index 000000000000..5b0e8cf496be
--- /dev/null
+++ b/mail-client/thunderbird-l10n/thunderbird-l10n-153.5.1.ebuild
@@ -0,0 +1,145 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MOZ_ESR=yes
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-l10n}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+DESCRIPTION="Thunderbird mail client's translation files"
+HOMEPAGE="https://www.thunderbird.net/"
+
+LICENSE="MPL-2.0"
+KEYWORDS="amd64 arm64 ~loong ~ppc64 ~x86"
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ SLOT="0/esr"
+else
+ SLOT="0/stable"
+fi
+
+# 150.0 is when thunderbird-l10n was introduced.
+RDEPEND="!<mail-client/thunderbird-150.0"
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
+
+MOZ_LANGS=(
+ af ar ast be bg br ca cak cs cy da de dsb el en-CA en-GB
+ en-US es-AR es-ES et eu fi fr fy-NL ga-IE gd gl he hr hsb hu id
+ is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO pa-IN pl pt-BR
+ pt-PT rm ro ru sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
+)
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ unpack ${_src_file}
+ fi
+ done
+}
+
+src_install() {
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${MOZ_PN}"
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+}
diff --git a/mail-client/thunderbird-l10n/thunderbird-l10n-158.0.1.ebuild b/mail-client/thunderbird-l10n/thunderbird-l10n-158.0.1.ebuild
new file mode 100644
index 000000000000..454d5b9c0ea6
--- /dev/null
+++ b/mail-client/thunderbird-l10n/thunderbird-l10n-158.0.1.ebuild
@@ -0,0 +1,145 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-l10n}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+DESCRIPTION="Thunderbird mail client's translation files"
+HOMEPAGE="https://www.thunderbird.net/"
+
+LICENSE="MPL-2.0"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~x86"
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ SLOT="0/esr"
+else
+ SLOT="0/stable"
+fi
+
+# 150.0 is when thunderbird-l10n was introduced.
+RDEPEND="!<mail-client/thunderbird-150.0"
+BDEPEND="app-arch/unzip"
+
+S="${WORKDIR}"
+
+MOZ_LANGS=(
+ af ar ast be bg br ca cak cs cy da de dsb el en-CA en-GB
+ en-US es-AR es-ES et eu fi fr fy-NL ga-IE gd gl he hr hsb hu id
+ is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO pa-IN pl pt-BR
+ pt-PT rm ro ru sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
+)
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ unpack ${_src_file}
+ fi
+ done
+}
+
+src_install() {
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${MOZ_PN}"
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+}
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index ee50a5659206..9564bf09c6db 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -1,4 +1,6 @@
DIST firefox-153esr-patches-04.tar.xz 12232 BLAKE2B 3f792b89ec324437dbd8e6116eefca5986b0c9c2f286ec42e7faf887df106bbfb0266288fd981e3dc11b858920f13aa2a25f9f049af1cae18f1323e68976f4ec SHA512 5b0061a1ab8d90ffa2a18109718c16c7fbca0ad23ffa752a5a19746de8824592eea35471bfb3cf05d5cae890084431af100062648f44941f9689eee4a46ed20e
DIST firefox-158-patches-02t.tar.xz 16940 BLAKE2B 722e5ac9d1007a8636de1a163bbc7d74c314b3bde9bc8e4dce6c9dc55e85464244fd2ac26aeb912c2024363bddc3292d0c60affa366dc1fa4fc9d78ea7493ede SHA512 7176898c45f8245ef988afb8a2673253961eed5a97df4d0c650c942c910dbce0993ea2c5e75f7e2bc366a7cb47ce3be500ff683d5a0aeac9ee8d9242def23951
DIST thunderbird-153.5.0esr.source.tar.xz 934350404 BLAKE2B a8b5e9b1d46ca693733a84768cd431546b0a1c94011339537b23a1ea0f69fec9a734ce77990d653818fbb4898b19b76a6d4a28a1b3c149467d3f6c584d0064c5 SHA512 8f700c15d4c4387e0e205839cb377914fcc9cf00974245c0c3225807d7b6117a8ace6f38bf024e710061d47c10c99f8f0a93df870f85b53b556143dbd2fafa0f
+DIST thunderbird-153.5.1esr.source.tar.xz 934609988 BLAKE2B 954720defca1c7b1e89e6038e48ea7a8257f513056df452edc769776915e8c5d12feb97d8c500ac27893c5d3b7a490a8cc0afd9a9671b359c2708b8a8607c0ee SHA512 e2f84cbef7454d908438c79d7073297d7cb5aacdbe65f9d2680d2a80be46b800fc6a7cce50037e8646ed1e9846ef54383f72695a69dddc43f1d972a76ba369a3
+DIST thunderbird-158.0.1.source.tar.xz 960677988 BLAKE2B 5b23eb74d701436f2fb1d4d280ba24028f0db657c966209f0f34aae7aea7ae80044380af8d3eeecc6915d5cd87c93d9b35eae1bc0a111ba217fceac9ffd8ad91 SHA512 c3dddbe70483d86be8319ad3eb17c3856586994cd37529964f17957e8401cffa68845cc05732c00a5e6e9d45a665a77ce0eb60d23c039054440c27451df4564f
DIST thunderbird-158.0.source.tar.xz 961411644 BLAKE2B d6abb0aa73a9d3b95212cd9e4044ce3b9fec3778b27ab3639bef1b300abf48494992d0d1dcb0a7157e2b75b4b571387545b6817b1a2247ddcc8e19dd88a8f9ab SHA512 fe19e0e7540ef27af0bdb730963a9b4ad91472a9ab8b0c5eddd291c2d234ab7ac68ddf71c8595090b87cfd0deeaebc66dbce15c65c90fd09183b05db4bdce263
diff --git a/mail-client/thunderbird/thunderbird-153.5.1.ebuild b/mail-client/thunderbird/thunderbird-153.5.1.ebuild
new file mode 100644
index 000000000000..4c3a1de9ed71
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-153.5.1.ebuild
@@ -0,0 +1,1112 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-153esr-patches-04.tar.xz"
+
+LLVM_COMPAT=( 22 )
+
+PYTHON_COMPAT=( python3_{12..14} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+RUST_MIN_VER="1.90.0"
+RUST_NEEDS_LLVM=1
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="manual"
+
+# Thunderbird will have separate release and esr channels, matching Firefox's rapid and esr.
+MOZ_ESR=yes
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit check-reqs desktop eapi9-ver flag-o-matic gnome2-utils linux-info llvm-r1 \
+ multiprocessing optfeature pax-utils python-any-r1 rust toolchain-funcs virtualx xdg
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.thunderbird.net/"
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+if [[ ${PV} == *_rc* ]] ; then
+ MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+fi
+
+PATCH_URIS=(
+ https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
+ ${PATCH_URIS[@]}"
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ SLOT="0/esr"
+else
+ SLOT="0/stable"
+fi
+
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+KEYWORDS="amd64 arm64 ~loong ~ppc64 ~x86"
+
+IUSE="+clang debug eme-free hardened hwaccel jack libproxy pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx"
+IUSE+=" system-pipewire system-png +system-webp wayland wifi +X"
+
+# Thunderbird-only USE flags.
+IUSE+=" +system-librnp"
+
+# "-system-librnp" requires clang, bmo#2006910
+REQUIRED_USE="|| ( X wayland )
+ !system-librnp? ( clang )
+ debug? ( !system-av1 )"
+
+TB_ONLY_DEPEND="selinux? ( sec-policy/selinux-thunderbird )
+ !system-librnp? ( dev-libs/jsoncpp )
+ system-librnp? ( >=dev-util/librnp-0.17.1 )"
+BDEPEND="${PYTHON_DEPS}
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ clang? (
+ llvm-core/lld:${LLVM_SLOT}
+ pgo? ( llvm-runtimes/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
+ )
+ ')
+ app-alternatives/awk
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.29.4
+ net-libs/nodejs
+ virtual/pkgconfig
+ amd64? ( >=dev-lang/nasm-2.14 )
+ x86? ( >=dev-lang/nasm-2.14 )
+ pgo? (
+ X? (
+ sys-devel/gettext
+ x11-base/xorg-server[xvfb]
+ x11-apps/xhost
+ )
+ !X? (
+ gui-wm/tinywl
+ x11-misc/xkeyboard-config
+ )
+ )"
+COMMON_DEPEND="${TB_ONLY_DEPEND}
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/glib:2
+ dev-libs/libffi:=
+ >=dev-libs/nss-3.125
+ >=dev-libs/nspr-4.39
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa
+ media-video/ffmpeg
+ sys-apps/dbus
+ virtual/zlib:=
+ virtual/freedesktop-icon-theme
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/libdrm
+ x11-libs/pango
+ x11-libs/pixman
+ jack? ( virtual/jack )
+ pulseaudio? (
+ || (
+ media-libs/libpulse
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ libproxy? ( net-libs/libproxy )
+ selinux? ( sec-policy/selinux-mozilla )
+ sndio? ( >=media-sound/sndio-1.8.0-r1 )
+ system-av1? (
+ >=media-libs/dav1d-1.5.3:=
+ >=media-libs/libaom-3.12.1:=
+ )
+ system-harfbuzz? (
+ >=media-gfx/graphite2-1.3.13
+ >=media-libs/harfbuzz-2.8.1:0=
+ )
+ system-icu? ( >=dev-libs/icu-78.1:= )
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
+ system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
+ system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
+ system-pipewire? ( >=media-video/pipewire-1.6.8:= )
+ system-png? ( >=media-libs/libpng-1.6.45:0=[apng] )
+ system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+ wayland? (
+ >=media-libs/libepoxy-1.5.10-r1
+ x11-libs/gtk+:3[wayland]
+ )
+ wifi? (
+ kernel_linux? (
+ || (
+ net-misc/networkmanager
+ net-misc/connman[networkmanager]
+ )
+ )
+ )
+ X? (
+ virtual/opengl
+ x11-libs/cairo[X]
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libxcb:=
+ )"
+RDEPEND="${COMMON_DEPEND}
+ jack? ( virtual/jack )"
+DEPEND="${COMMON_DEPEND}
+ X? (
+ x11-base/xorg-proto
+ x11-libs/libICE
+ x11-libs/libSM
+ )"
+
+# Thunderbird-only RDEPEND, ESR and Stable.
+if [[ -n ${MOZ_ESR} ]] ; then
+ RDEPEND+=" ~mail-client/thunderbird-l10n-${PV}:0/esr"
+else
+ RDEPEND+=" ~mail-client/thunderbird-l10n-${PV}:0/stable"
+fi
+
+llvm_check_deps() {
+ if ! has_version -b "llvm-core/clang:${LLVM_SLOT}" ; then
+ einfo "llvm-core/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use clang && ! tc-ld-is-mold ; then
+ if ! has_version -b "llvm-core/lld:${LLVM_SLOT}" ; then
+ einfo "llvm-core/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+
+ if use pgo ; then
+ if ! has_version -b "=llvm-runtimes/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
+ einfo "=llvm-runtimes/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2
+ einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+
+ einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+moz_clear_vendor_checksums() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -ne 1 ]] ; then
+ die "${FUNCNAME} requires exact one argument"
+ fi
+
+ einfo "Clearing cargo checksums for ${1} ..."
+
+ sed -i \
+ -e 's/\("files":{\)[^}]*/\1/' \
+ "${S}"/third_party/rust/${1}/.cargo-checksum.json || die
+}
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+mozconfig_add_options_ac() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_add_options_mk() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_use_enable() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_enable "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+mozconfig_use_with() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_with "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+virtwl() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument"
+ [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset"
+ tinywl -h >/dev/null || die 'tinywl -h failed'
+
+ local VIRTWL VIRTWL_PID
+ coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; }
+ local -x WAYLAND_DISPLAY
+ read WAYLAND_DISPLAY <&${VIRTWL[0]}
+
+ debug-print "${FUNCNAME}: $@"
+ "$@"
+ local r=$?
+
+ [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
+ exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
+ return $r
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ # Ensure we have enough disk space to compile
+ if use pgo || use debug ; then
+ CHECKREQS_DISK_BUILD="14300M"
+ elif tc-is-lto ; then
+ CHECKREQS_DISK_BUILD="10600M"
+ else
+ CHECKREQS_DISK_BUILD="7400M"
+ fi
+
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+
+ # Get LTO from environment; export after this phase for use in src_configure (etc)
+ use_lto=no
+
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+
+ if tc-is-lto; then
+ use_lto=yes
+ # LTO is handled via configure
+ filter-lto
+ fi
+
+ if use pgo ; then
+ if ! has userpriv ${FEATURES} ; then
+ eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
+ fi
+ fi
+
+ if [[ ${use_lto} = yes ]] ; then
+ # -Werror=lto-type-mismatch -Werror=odr are going to fail with GCC,
+ # bmo#1516758, bgo#942288
+ filter-flags -Werror=lto-type-mismatch -Werror=odr
+ fi
+
+ if use pgo || use debug ; then
+ CHECKREQS_DISK_BUILD="14300M"
+ elif [[ ${use_lto} == "yes" ]] ; then
+ CHECKREQS_DISK_BUILD="10600M"
+ else
+ CHECKREQS_DISK_BUILD="7400M"
+ fi
+
+ check-reqs_pkg_setup
+ llvm-r1_pkg_setup
+ rust_pkg_setup
+ python-any-r1_pkg_setup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset \
+ DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XAUTHORITY \
+ XDG_CACHE_HOME \
+ XDG_SESSION_COOKIE
+
+ # Build system is using /proc/self/oom_score_adj, bug #604394
+ addpredict /proc/self/oom_score_adj
+
+ if use pgo ; then
+ # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure
+ # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage
+ # (PORTAGE_SCHEDULING_POLICY) update...
+ addpredict /proc
+
+ # Clear tons of conditions, since PGO is hardware-dependant.
+ addpredict /dev
+ fi
+
+ if ! mountpoint -q /dev/shm ; then
+ # If /dev/shm is not available, configure is known to fail with
+ # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
+ ewarn "/dev/shm is not mounted -- expect build failures!"
+ fi
+
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+ MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+ fi
+
+ if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+ MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+ fi
+
+ # Mozilla API keys (see https://location.services.mozilla.com/api)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+ MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+ fi
+
+ # Ensure we use C locale when building, bug #746215
+ export LC_ALL=C
+ fi
+
+ export use_lto
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ unpack ${_src_file}
+ fi
+ done
+}
+
+src_prepare() {
+ if [[ ${use_lto} == "yes" ]]; then
+ rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die
+ fi
+
+ # Workaround for bgo#915651 and bmo#1988166 on musl
+ if use elibc_glibc ; then
+ rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.patch || die
+ fi
+
+ eapply "${WORKDIR}/firefox-patches"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Make cargo respect MAKEOPTS
+ export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+ # Workaround for bgo#915651
+ if ! use elibc_glibc ; then
+ if use amd64 ; then
+ export RUST_TARGET="x86_64-unknown-linux-musl"
+ elif use x86 ; then
+ export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
+ elif use loong; then
+ # Only the LP64D ABI of LoongArch64 is actively supported among
+ # the wider Linux ecosystem, so the assumption is safe.
+ export RUST_TARGET="loongarch64-unknown-linux-musl"
+ elif use ppc64 ; then
+ export RUST_TARGET="powerpc64le-unknown-linux-musl"
+ elif use riscv ; then
+ # We can pretty safely rule out any 32-bit riscvs, but 64-bit riscvs also have tons of
+ # different ABIs available. riscv64gc-unknown-linux-musl seems to be the best working
+ # guess right now though.
+ elog "riscv detected, forcing a riscv64 target for now."
+ export RUST_TARGET="riscv64gc-unknown-linux-musl"
+ else
+ die "Unknown musl chost, please post a new bug with your rustc -vV along with emerge --info"
+ fi
+ fi
+
+ # Make LTO respect MAKEOPTS
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/chromium/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count"
+
+ # sed-in toolchain prefix
+ sed -i \
+ -e "s/objdump/${CHOST}-objdump/" \
+ "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py || die "sed failed to set toolchain prefix"
+
+ sed -i \
+ -e 's/ccache_stats = None/return None/' \
+ "${S}"/python/mozbuild/mozbuild/controller/building.py || die "sed failed to disable ccache stats call"
+
+ einfo "Removing pre-built binaries ..."
+
+ find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
+
+ # Create build dir
+ BUILD_DIR="${WORKDIR}/${PN}_build"
+ mkdir -p "${BUILD_DIR}" || die
+
+ # Write API keys to disk
+ echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+ echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
+ echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+ xdg_environment_reset
+}
+
+src_configure() {
+ # Show flags set at the beginning
+ einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ local have_switched_compiler=
+ if use clang; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+
+ local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }')
+ [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}")
+ [[ -z ${version_clang} ]] && die "Failed to read clang version!"
+
+ if tc-is-gcc; then
+ have_switched_compiler=yes
+ fi
+
+ AR=llvm-ar
+ CC=${CHOST}-clang-${version_clang}
+ CXX=${CHOST}-clang++-${version_clang}
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ have_switched_compiler=yes
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if [[ -n "${have_switched_compiler}" ]] ; then
+ # Because we switched active compiler we have to ensure
+ # that no unsupported flags are set
+ strip-unsupported-flags
+ fi
+
+ # Ensure we use correct toolchain,
+ # AS is used in a non-standard way by upstream, #bmo1654031
+ export HOST_CC="$(tc-getBUILD_CC)"
+ export HOST_CXX="$(tc-getBUILD_CXX)"
+ export AS="$(tc-getCC) -c"
+
+ # Configuration tests expect llvm-readelf output, bug 913130
+ READELF="llvm-readelf"
+
+ tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG
+
+ # Pass the correct toolchain paths through cbindgen
+ if tc-is-cross-compiler ; then
+ export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
+ fi
+
+ # Set MOZILLA_FIVE_HOME
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+ # python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ # Set state path
+ export MOZBUILD_STATE_PATH="${BUILD_DIR}"
+
+ # Set MOZCONFIG
+ export MOZCONFIG="${S}/.mozconfig"
+
+ # Initialize MOZCONFIG
+ mozconfig_add_options_ac '' --enable-application=comm/mail
+ mozconfig_add_options_ac '' --enable-project=comm/mail
+
+ # Set Gentoo defaults
+ mozconfig_add_options_ac 'Gentoo default' \
+ --allow-addon-sideload \
+ --disable-cargo-incremental \
+ --disable-crashreporter \
+ --disable-disk-remnant-avoidance \
+ --disable-geckodriver \
+ --disable-install-strip \
+ --disable-legacy-profile-creation \
+ --disable-parental-controls \
+ --disable-strip \
+ --disable-tests \
+ --disable-updater \
+ --disable-valgrind \
+ --disable-wmf \
+ --enable-dbus \
+ --enable-js-shell \
+ --enable-negotiateauth \
+ --enable-new-pass-manager \
+ --enable-official-branding \
+ --enable-packed-relative-relocs \
+ --enable-release \
+ --enable-system-policies \
+ --host="${CBUILD:-${CHOST}}" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --prefix="${EPREFIX}/usr" \
+ --target="${CHOST}" \
+ --without-ccache \
+ --without-wasm-sandboxed-libraries \
+ --with-intl-api \
+ --with-libclang-path="$(llvm-config --libdir)" \
+ --with-system-ffi \
+ --with-system-gbm \
+ --with-system-libdrm \
+ --with-system-nspr \
+ --with-system-nss \
+ --with-system-pixman \
+ --with-system-zlib \
+ --with-toolchain-prefix="${CHOST}-" \
+ --with-unsigned-addon-scopes=app,system
+
+ # Set update channel
+ local update_channel=release
+ [[ -n ${MOZ_ESR} ]] && update_channel=esr
+ mozconfig_add_options_ac '' --enable-update-channel=${update_channel}
+
+ # Whitelist to allow unkeyworded arches to build with "--disable-rust-simd" by default.
+ if use amd64 || use arm64 || use loong ; then
+ mozconfig_add_options_ac '' --enable-rust-simd
+ fi
+
+ # For future keywording: This is currently (97.0) only supported on:
+ # amd64, arm, arm64 & x86.
+ # Might want to flip the logic around if Firefox is to support more arches.
+ # bug 833001, bug 903411#c8
+ if use loong || use ppc64 || use riscv; then
+ mozconfig_add_options_ac '' --disable-sandbox
+ else
+ mozconfig_add_options_ac '' --enable-sandbox
+ fi
+
+ # riscv-related options, bgo#947337, bgo#947338
+ if use riscv ; then
+ mozconfig_add_options_ac 'Disable JIT for RISC-V 64' --disable-jit
+ mozconfig_add_options_ac 'Disable webrtc for RISC-V' --disable-webrtc
+ fi
+
+ if [[ -s "${S}/api-google.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+ else
+ einfo "Building without Google API key ..."
+ fi
+
+ if [[ -s "${S}/api-location.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-location-service-api-keyfile="${S}/api-location.key"
+ else
+ einfo "Building without Location API key ..."
+ fi
+
+ if [[ -s "${S}/api-mozilla.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+ else
+ einfo "Building without Mozilla API key ..."
+ fi
+
+ mozconfig_use_with system-av1
+ mozconfig_use_with system-harfbuzz
+ mozconfig_use_with system-harfbuzz system-graphite2
+ mozconfig_use_with system-icu
+ mozconfig_use_with system-jpeg
+ mozconfig_use_with system-libevent
+ mozconfig_use_with system-libvpx
+ mozconfig_use_with system-pipewire
+ mozconfig_use_with system-png
+ mozconfig_use_with system-webp
+
+ if use system-librnp; then
+ mozconfig_add_options_ac "+system-librnp" --enable-compile-environment
+ mozconfig_use_with system-librnp
+ else
+ # This controls the backend of the bundled librnp. Choices are "botan" and "openssl".
+ # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp.
+ mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan"
+ fi
+
+ mozconfig_use_enable libproxy
+
+ use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
+
+ if use hardened ; then
+ mozconfig_add_options_ac "+hardened" --enable-hardening
+ # mozconfig_add_options_ac "+hardened stl" --enable-stl-hardening # not available in TB
+ append-ldflags "-Wl,-z,relro -Wl,-z,now"
+
+ # Increase the FORTIFY_SOURCE value, #910071.
+ sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die
+ fi
+
+ local myaudiobackends=""
+ use jack && myaudiobackends+="jack,"
+ use sndio && myaudiobackends+="sndio,"
+ use pulseaudio && myaudiobackends+="pulseaudio,"
+ ! use pulseaudio && myaudiobackends+="alsa,"
+
+ mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
+
+ mozconfig_use_enable wifi necko-wifi
+
+ if use X && use wayland ; then
+ mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
+ elif ! use X && use wayland ; then
+ mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
+ else
+ mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only
+ fi
+
+ if [[ ${use_lto} == "yes" ]] ; then
+ if use clang ; then
+ # Upstream only supports lld or mold when using clang.
+ if tc-ld-is-mold ; then
+ # mold expects the -flto line from *FLAGS configuration, bgo#923119
+ append-ldflags "-flto=thin"
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+ fi
+
+ mozconfig_add_options_ac '+lto' --enable-lto=cross
+
+ else
+ # ThinLTO is currently broken, see bmo#1644409.
+ # mold does not support gcc+lto combination.
+ mozconfig_add_options_ac '+lto' --enable-lto=full
+ mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
+ fi
+
+ else
+ # Avoid auto-magic on linker
+ if use clang ; then
+ # lld is upstream's default
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
+ fi
+
+ else
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd
+ fi
+ fi
+ fi
+
+ if use pgo ; then
+ mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+ if use clang ; then
+ # Used in build/pgo/profileserver.py
+ export LLVM_PROFDATA="llvm-profdata"
+ fi
+ fi
+
+ mozconfig_use_enable debug
+ if use debug ; then
+ mozconfig_add_options_ac '+debug' --disable-optimize
+ mozconfig_add_options_ac '+debug' --enable-jemalloc
+ mozconfig_add_options_ac '+debug' --enable-real-time-tracing
+ else
+ mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing
+
+ if is-flag '-g*' ; then
+ if use clang ; then
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
+ else
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
+ fi
+ else
+ mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
+ fi
+
+ if is-flag '-O0' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
+ elif is-flag '-O4' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
+ elif is-flag '-O3' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
+ elif is-flag '-O1' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
+ elif is-flag '-Os' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
+ else
+ mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
+ fi
+ fi
+
+ # Debug flag was handled via configure
+ filter-flags '-g*'
+
+ # Optimization flag was handled via configure
+ filter-flags '-O*'
+
+ # elf-hack
+ # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
+ if use amd64 || use x86 ; then
+ filter-flags "-z,pack-relative-relocs"
+
+ if tc-ld-is-mold ; then
+ # relr-elf-hack is currently broken with mold, bgo#916259
+ mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack
+ else
+ mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr
+ fi
+ elif use loong || use ppc64 || use riscv ; then
+ # '--disable-elf-hack' is not recognized on loong/ppc64/riscv,
+ # see bgo #917049, #930046
+ :;
+ else
+ mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack
+ fi
+
+ if ! use elibc_glibc; then
+ mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+ fi
+
+ # System-av1 fix
+ use system-av1 && append-ldflags "-Wl,--undefined-version"
+
+ # Make revdep-rebuild.sh happy; Also required for musl
+ append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+ # Pass $MAKEOPTS to build system
+ export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+ # Use system's Python environment
+ export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
+
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
+
+ # Disable notification when build system has finished
+ export MOZ_NOSPAM=1
+
+ # Portage sets XARGS environment variable to "xargs -r" by default which
+ # breaks build system's check_prog() function which doesn't support arguments
+ mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
+
+ # Set build dir
+ mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
+
+ # Show flags we will use
+ einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ # Handle EXTRA_CONF and show summary
+ local ac opt hash reason
+
+ # Apply EXTRA_ECONF entries to $MOZCONFIG
+ if [[ -n ${EXTRA_ECONF} ]] ; then
+ IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
+ for opt in "${ac[@]}"; do
+ mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
+ done
+ fi
+
+ echo
+ echo "=========================================================="
+ echo "Building ${PF} with the following configuration"
+ grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
+ [[ -z ${hash} || ${hash} == \# ]] \
+ || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
+ printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
+ done
+ echo "=========================================================="
+ echo
+
+ ./mach configure || die
+}
+
+src_compile() {
+ local virtx_cmd=
+
+ if [[ ${use_lto} == "yes" ]] && tc-ld-is-mold ; then
+ # increase ulimit with mold+lto, bugs #892641, #907485
+ if ! ulimit -n 16384 1>/dev/null 2>&1 ; then
+ ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources."
+ ewarn "Please see bugs #892641 & #907485."
+ else
+ ulimit -n 16384
+ fi
+ fi
+
+ if use pgo; then
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ addpredict /root
+
+ if ! use X; then
+ virtx_cmd=virtwl
+ else
+ virtx_cmd=virtx
+ fi
+ fi
+
+ if ! use X; then
+ local -x GDK_BACKEND=wayland
+ else
+ local -x GDK_BACKEND=x11
+ fi
+
+ ${virtx_cmd} ./mach build --verbose || die
+}
+
+src_install() {
+ # xpcshell is getting called during install
+ pax-mark m \
+ "${BUILD_DIR}"/dist/bin/xpcshell \
+ "${BUILD_DIR}"/dist/bin/${PN} \
+ "${BUILD_DIR}"/dist/bin/plugin-container
+
+ DESTDIR="${D}" ./mach install || die
+
+ # Upstream cannot ship symlink but we can (bmo#658850)
+ rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
+ dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
+
+ # Don't install llvm-symbolizer from llvm-core/llvm package
+ if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
+ rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
+ fi
+
+ insinto "${MOZILLA_FIVE_HOME}/distribution"
+ newins "${FILESDIR}"/distribution.ini distribution.ini
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # Force hwaccel prefs if USE=hwaccel is enabled
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
+ >>"${GENTOO_PREFS}" \
+ || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
+
+ if use wayland; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
+ pref("gfx.x11-egl.force-enabled", false);
+ EOF
+ else
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
+ pref("gfx.x11-egl.force-enabled", true);
+ EOF
+ fi
+ fi
+
+ # Set dictionary path to use system hunspell
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
+ pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
+ EOF
+
+ # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
+ if use system-harfbuzz ; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
+ sticky_pref("gfx.font_rendering.graphite.enabled", true);
+ EOF
+ fi
+
+ # Install icons
+ local icon_srcdir="${S}/comm/mail/branding/thunderbird"
+ local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg"
+
+ insinto /usr/share/icons/hicolor/symbolic/apps
+ newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menu
+ local app_name="Mozilla ${MOZ_PN^}"
+ local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if [[ -n ${MOZ_ESR} ]] ; then
+ local desktop_filename="${PN}-esr.desktop"
+ else
+ local desktop_filename="${PN}.desktop"
+ fi
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ "${WORKDIR}/${PN}.desktop-template" || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if ver_replacing -lt 136.0 ; then
+ elog "In this version of Thunderbird, upstream introduced an in-app notification"
+ elog "system. Setting pref 'mail.inappnotifications.enabled' to false and nullifying"
+ elog "'mail.inappnotifications.url' may help you avoid these messages, if you don't"
+ elog "wish to receive them."
+ fi
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "desktop notifications" x11-libs/libnotify
+ optfeature "encrypted chat support" net-libs/libotr
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+}
diff --git a/mail-client/thunderbird/thunderbird-158.0.1.ebuild b/mail-client/thunderbird/thunderbird-158.0.1.ebuild
new file mode 100644
index 000000000000..a74771bbcf1f
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-158.0.1.ebuild
@@ -0,0 +1,1123 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-158-patches-02t.tar.xz"
+
+LLVM_COMPAT=( 22 23 )
+
+PYTHON_COMPAT=( python3_{12..14} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+RUST_MIN_VER="1.90.0"
+RUST_NEEDS_LLVM=1
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="manual"
+
+# Thunderbird will have separate release and esr channels, matching Firefox's rapid and esr.
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit check-reqs desktop eapi9-ver flag-o-matic gnome2-utils linux-info llvm-r1 \
+ multiprocessing optfeature pax-utils python-any-r1 rust toolchain-funcs virtualx xdg
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.thunderbird.net/"
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+if [[ ${PV} == *_rc* ]] ; then
+ MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+fi
+
+PATCH_URIS=(
+ https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
+ ${PATCH_URIS[@]}"
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ SLOT="0/esr"
+else
+ SLOT="0/stable"
+fi
+
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~x86"
+
+IUSE="+clang debug eme-free hardened hwaccel jack +jumbo-build libproxy pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx"
+IUSE+=" system-pipewire system-png +system-webp wayland wifi +X"
+
+# Thunderbird-only USE flags.
+IUSE+=" +system-librnp"
+
+# "-system-librnp" requires clang, bmo#2006910
+REQUIRED_USE="|| ( X wayland )
+ !system-librnp? ( clang )
+ debug? ( !system-av1 )"
+
+TB_ONLY_DEPEND="selinux? ( sec-policy/selinux-thunderbird )
+ !system-librnp? ( dev-libs/jsoncpp )
+ system-librnp? ( >=dev-util/librnp-0.17.1 )"
+BDEPEND="${PYTHON_DEPS}
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ clang? (
+ llvm-core/lld:${LLVM_SLOT}
+ pgo? ( llvm-runtimes/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
+ )
+ ')
+ app-alternatives/awk
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.29.4
+ net-libs/nodejs[ssl]
+ virtual/pkgconfig
+ amd64? ( >=dev-lang/nasm-2.14 )
+ x86? ( >=dev-lang/nasm-2.14 )
+ pgo? (
+ X? (
+ sys-devel/gettext
+ x11-base/xorg-server[xvfb]
+ x11-apps/xhost
+ )
+ !X? (
+ gui-wm/tinywl
+ x11-misc/xkeyboard-config
+ )
+ )"
+COMMON_DEPEND="${TB_ONLY_DEPEND}
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/glib:2
+ dev-libs/libffi:=
+ >=dev-libs/nss-3.130
+ >=dev-libs/nspr-4.39
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa
+ media-video/ffmpeg
+ sys-apps/dbus
+ virtual/zlib:=
+ virtual/freedesktop-icon-theme
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/libdrm
+ x11-libs/pango
+ x11-libs/pixman
+ jack? ( virtual/jack )
+ pulseaudio? (
+ || (
+ media-libs/libpulse
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ libproxy? ( net-libs/libproxy )
+ selinux? ( sec-policy/selinux-mozilla )
+ sndio? ( >=media-sound/sndio-1.8.0-r1 )
+ system-av1? (
+ >=media-libs/dav1d-1.5.4:=
+ >=media-libs/libaom-3.12.1:=
+ )
+ system-harfbuzz? (
+ >=media-gfx/graphite2-1.3.13
+ >=media-libs/harfbuzz-2.8.1:0=
+ )
+ system-icu? ( >=dev-libs/icu-78.1:= )
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
+ system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
+ system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
+ system-pipewire? ( >=media-video/pipewire-1.6.8:= )
+ system-png? ( >=media-libs/libpng-1.6.45:0=[apng] )
+ system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+ wayland? (
+ >=media-libs/libepoxy-1.5.10-r1
+ x11-libs/gtk+:3[wayland]
+ )
+ wifi? (
+ kernel_linux? (
+ || (
+ net-misc/networkmanager
+ net-misc/connman[networkmanager]
+ )
+ )
+ )
+ X? (
+ virtual/opengl
+ x11-libs/cairo[X]
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libxcb:=
+ )"
+RDEPEND="${COMMON_DEPEND}
+ jack? ( virtual/jack )"
+DEPEND="${COMMON_DEPEND}
+ X? (
+ x11-base/xorg-proto
+ x11-libs/libICE
+ x11-libs/libSM
+ )"
+
+# Thunderbird-only RDEPEND, ESR and Stable.
+if [[ -n ${MOZ_ESR} ]] ; then
+ RDEPEND+=" ~mail-client/thunderbird-l10n-${PV}:0/esr"
+else
+ RDEPEND+=" ~mail-client/thunderbird-l10n-${PV}:0/stable"
+fi
+
+llvm_check_deps() {
+ if ! has_version -b "llvm-core/clang:${LLVM_SLOT}" ; then
+ einfo "llvm-core/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use clang && ! tc-ld-is-mold ; then
+ if ! has_version -b "llvm-core/lld:${LLVM_SLOT}" ; then
+ einfo "llvm-core/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+
+ if use pgo ; then
+ if ! has_version -b "=llvm-runtimes/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
+ einfo "=llvm-runtimes/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2
+ einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+
+ einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+moz_clear_vendor_checksums() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -ne 1 ]] ; then
+ die "${FUNCNAME} requires exact one argument"
+ fi
+
+ einfo "Clearing cargo checksums for ${1} ..."
+
+ sed -i \
+ -e 's/\("files":{\)[^}]*/\1/' \
+ "${S}"/third_party/rust/${1}/.cargo-checksum.json || die
+}
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+mozconfig_add_options_ac() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_add_options_mk() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_use_enable() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_enable "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+mozconfig_use_with() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_with "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+virtwl() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument"
+ [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset"
+ tinywl -h >/dev/null || die 'tinywl -h failed'
+
+ local VIRTWL VIRTWL_PID
+ coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; }
+ local -x WAYLAND_DISPLAY
+ read WAYLAND_DISPLAY <&${VIRTWL[0]}
+
+ debug-print "${FUNCNAME}: $@"
+ "$@"
+ local r=$?
+
+ [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
+ exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
+ return $r
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ # Ensure we have enough disk space to compile
+ if use pgo || use debug ; then
+ CHECKREQS_DISK_BUILD="14300M"
+ elif tc-is-lto ; then
+ CHECKREQS_DISK_BUILD="10600M"
+ else
+ CHECKREQS_DISK_BUILD="7400M"
+ fi
+
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+
+ # Get LTO from environment; export after this phase for use in src_configure (etc)
+ use_lto=no
+
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+
+ if tc-is-lto; then
+ use_lto=yes
+ # LTO is handled via configure
+ filter-lto
+ fi
+
+ if use pgo ; then
+ if ! has userpriv ${FEATURES} ; then
+ eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
+ fi
+ fi
+
+ if [[ ${use_lto} = yes ]] ; then
+ # -Werror=lto-type-mismatch -Werror=odr are going to fail with GCC,
+ # bmo#1516758, bgo#942288
+ filter-flags -Werror=lto-type-mismatch -Werror=odr
+ fi
+
+ if use pgo || use debug ; then
+ CHECKREQS_DISK_BUILD="14300M"
+ elif [[ ${use_lto} == "yes" ]] ; then
+ CHECKREQS_DISK_BUILD="10600M"
+ else
+ CHECKREQS_DISK_BUILD="7400M"
+ fi
+
+ check-reqs_pkg_setup
+ llvm-r1_pkg_setup
+ rust_pkg_setup
+ python-any-r1_pkg_setup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset \
+ DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XAUTHORITY \
+ XDG_CACHE_HOME \
+ XDG_SESSION_COOKIE
+
+ # Build system is using /proc/self/oom_score_adj, bug #604394
+ addpredict /proc/self/oom_score_adj
+
+ if use pgo ; then
+ # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure
+ # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage
+ # (PORTAGE_SCHEDULING_POLICY) update...
+ addpredict /proc
+
+ # Clear tons of conditions, since PGO is hardware-dependant.
+ addpredict /dev
+ fi
+
+ if ! mountpoint -q /dev/shm ; then
+ # If /dev/shm is not available, configure is known to fail with
+ # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
+ ewarn "/dev/shm is not mounted -- expect build failures!"
+ fi
+
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+ MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+ fi
+
+ if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+ MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+ fi
+
+ # Mozilla API keys (see https://location.services.mozilla.com/api)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+ MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+ fi
+
+ # Ensure we use C locale when building, bug #746215
+ export LC_ALL=C
+ fi
+
+ export use_lto
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ unpack ${_src_file}
+ fi
+ done
+}
+
+src_prepare() {
+ # Workaround for bgo#915651 and bmo#1988166 on musl
+ if use elibc_glibc ; then
+ rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.patch || die
+ fi
+
+ eapply "${WORKDIR}/firefox-patches"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Make cargo respect MAKEOPTS
+ export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+ # Workaround for bgo#915651
+ if ! use elibc_glibc ; then
+ if use amd64 ; then
+ export RUST_TARGET="x86_64-unknown-linux-musl"
+ elif use x86 ; then
+ export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
+ elif use loong; then
+ # Only the LP64D ABI of LoongArch64 is actively supported among
+ # the wider Linux ecosystem, so the assumption is safe.
+ export RUST_TARGET="loongarch64-unknown-linux-musl"
+ elif use ppc64 ; then
+ export RUST_TARGET="powerpc64le-unknown-linux-musl"
+ elif use riscv ; then
+ # We can pretty safely rule out any 32-bit riscvs, but 64-bit riscvs also have tons of
+ # different ABIs available. riscv64gc-unknown-linux-musl seems to be the best working
+ # guess right now though.
+ elog "riscv detected, forcing a riscv64 target for now."
+ export RUST_TARGET="riscv64gc-unknown-linux-musl"
+ else
+ die "Unknown musl chost, please post a new bug with your rustc -vV along with emerge --info"
+ fi
+ fi
+
+ # Make LTO respect MAKEOPTS
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/chromium/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count"
+
+ # sed-in toolchain prefix
+ sed -i \
+ -e "s/objdump/${CHOST}-objdump/" \
+ "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py || die "sed failed to set toolchain prefix"
+
+ sed -i \
+ -e 's/ccache_stats = None/return None/' \
+ "${S}"/python/mozbuild/mozbuild/controller/building.py || die "sed failed to disable ccache stats call"
+
+ einfo "Removing pre-built binaries ..."
+
+ find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
+
+ # Clear checksums from cargo crates we've manually patched.
+ # moz_clear_vendor_checksums xyz
+ moz_clear_vendor_checksums bindgen
+ moz_clear_vendor_checksums audio_thread_priority
+ # TB-specific:
+ sed -i \
+ -e 's/\("files":{\)[^}]*/\1/' \
+ "${S}"/comm/third_party/rust/audio_thread_priority/.cargo-checksum.json || die
+ sed -i \
+ -e 's/\("files":{\)[^}]*/\1/' \
+ "${S}"/comm/third_party/rust/bindgen/.cargo-checksum.json || die
+
+ # Create build dir
+ BUILD_DIR="${WORKDIR}/${PN}_build"
+ mkdir -p "${BUILD_DIR}" || die
+
+ # Write API keys to disk
+ echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+ echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
+ echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+ xdg_environment_reset
+}
+
+src_configure() {
+ # Show flags set at the beginning
+ einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ local have_switched_compiler=
+ if use clang; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+
+ local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }')
+ [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}")
+ [[ -z ${version_clang} ]] && die "Failed to read clang version!"
+
+ if tc-is-gcc; then
+ have_switched_compiler=yes
+ fi
+
+ AR=llvm-ar
+ CC=${CHOST}-clang-${version_clang}
+ CXX=${CHOST}-clang++-${version_clang}
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ have_switched_compiler=yes
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if [[ -n "${have_switched_compiler}" ]] ; then
+ # Because we switched active compiler we have to ensure
+ # that no unsupported flags are set
+ strip-unsupported-flags
+ fi
+
+ # Ensure we use correct toolchain,
+ # AS is used in a non-standard way by upstream, #bmo1654031
+ export HOST_CC="$(tc-getBUILD_CC)"
+ export HOST_CXX="$(tc-getBUILD_CXX)"
+ export AS="$(tc-getCC) -c"
+
+ # Configuration tests expect llvm-readelf output, bug 913130
+ READELF="llvm-readelf"
+
+ tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG
+
+ # Pass the correct toolchain paths through cbindgen
+ if tc-is-cross-compiler ; then
+ export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
+ fi
+
+ # Set MOZILLA_FIVE_HOME
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+ # python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ # Set state path
+ export MOZBUILD_STATE_PATH="${BUILD_DIR}"
+
+ # Set MOZCONFIG
+ export MOZCONFIG="${S}/.mozconfig"
+
+ # Initialize MOZCONFIG
+ mozconfig_add_options_ac '' --enable-application=comm/mail
+ mozconfig_add_options_ac '' --enable-project=comm/mail
+
+ # Set Gentoo defaults
+ mozconfig_add_options_ac 'Gentoo default' \
+ --allow-addon-sideload \
+ --disable-cargo-incremental \
+ --disable-crashreporter \
+ --disable-disk-remnant-avoidance \
+ --disable-geckodriver \
+ --disable-install-strip \
+ --disable-legacy-profile-creation \
+ --disable-parental-controls \
+ --disable-strip \
+ --disable-tests \
+ --disable-updater \
+ --disable-valgrind \
+ --enable-dbus \
+ --enable-js-shell \
+ --enable-negotiateauth \
+ --enable-new-pass-manager \
+ --enable-official-branding \
+ --enable-packed-relative-relocs \
+ --enable-release \
+ --enable-system-policies \
+ --host="${CBUILD:-${CHOST}}" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --prefix="${EPREFIX}/usr" \
+ --target="${CHOST}" \
+ --without-ccache \
+ --without-wasm-sandboxed-libraries \
+ --with-intl-api \
+ --with-libclang-path="$(llvm-config --libdir)" \
+ --with-system-ffi \
+ --with-system-gbm \
+ --with-system-libdrm \
+ --with-system-nspr \
+ --with-system-nss \
+ --with-system-pixman \
+ --with-system-zlib \
+ --with-toolchain-prefix="${CHOST}-" \
+ --with-unsigned-addon-scopes=app,system
+
+ # Set update channel
+ local update_channel=release
+ [[ -n ${MOZ_ESR} ]] && update_channel=esr
+ mozconfig_add_options_ac '' --enable-update-channel=${update_channel}
+
+ # Whitelist to allow unkeyworded arches to build with "--disable-rust-simd" by default.
+ if use amd64 || use arm64 || use loong ; then
+ mozconfig_add_options_ac '' --enable-rust-simd
+ fi
+
+ # For future keywording: This is currently (97.0) only supported on:
+ # amd64, arm, arm64 & x86.
+ # Might want to flip the logic around if Firefox is to support more arches.
+ # bug 833001, bug 903411#c8
+ if use loong || use ppc64 || use riscv; then
+ mozconfig_add_options_ac '' --disable-sandbox
+ else
+ mozconfig_add_options_ac '' --enable-sandbox
+ fi
+
+ # riscv-related options, bgo#947337, bgo#947338
+ if use riscv ; then
+ mozconfig_add_options_ac 'Disable webrtc for RISC-V' --disable-webrtc
+ fi
+
+ if [[ -s "${S}/api-google.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+ else
+ einfo "Building without Google API key ..."
+ fi
+
+ if [[ -s "${S}/api-location.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-location-service-api-keyfile="${S}/api-location.key"
+ else
+ einfo "Building without Location API key ..."
+ fi
+
+ if [[ -s "${S}/api-mozilla.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+ else
+ einfo "Building without Mozilla API key ..."
+ fi
+
+ mozconfig_use_with system-av1
+ mozconfig_use_with system-harfbuzz
+ mozconfig_use_with system-harfbuzz system-graphite2
+ mozconfig_use_with system-icu
+ mozconfig_use_with system-jpeg
+ mozconfig_use_with system-libevent
+ mozconfig_use_with system-libvpx
+ mozconfig_use_with system-pipewire
+ mozconfig_use_with system-png
+ mozconfig_use_with system-webp
+
+ mozconfig_use_enable libproxy
+ mozconfig_use_enable jumbo-build unified-build
+
+ use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
+
+ if use hardened ; then
+ mozconfig_add_options_ac "+hardened" --enable-hardening
+ # mozconfig_add_options_ac "+hardened stl" --enable-stl-hardening # not available in TB
+ append-ldflags "-Wl,-z,relro -Wl,-z,now"
+
+ # Increase the FORTIFY_SOURCE value, #910071.
+ sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die
+ fi
+
+ local myaudiobackends=""
+ use jack && myaudiobackends+="jack,"
+ use sndio && myaudiobackends+="sndio,"
+ use pulseaudio && myaudiobackends+="pulseaudio,"
+ ! use pulseaudio && myaudiobackends+="alsa,"
+
+ mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
+
+ mozconfig_use_enable wifi necko-wifi
+
+ if use system-librnp; then
+ mozconfig_add_options_ac "+system-librnp" --enable-compile-environment
+ mozconfig_use_with system-librnp
+ else
+ # This controls the backend of the bundled librnp. Choices are "botan" and "openssl".
+ # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp.
+ mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan"
+ fi
+
+ if use X && use wayland ; then
+ mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
+ elif ! use X && use wayland ; then
+ mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
+ else
+ mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only
+ fi
+
+ if [[ ${use_lto} == "yes" ]] ; then
+ if use clang ; then
+ # Upstream only supports lld or mold when using clang.
+ if tc-ld-is-mold ; then
+ # mold expects the -flto line from *FLAGS configuration, bgo#923119
+ append-ldflags "-flto=thin"
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+ fi
+
+ mozconfig_add_options_ac '+lto' --enable-lto=cross
+
+ else
+ # ThinLTO is currently broken, see bmo#1644409.
+ # mold does not support gcc+lto combination.
+ mozconfig_add_options_ac '+lto' --enable-lto=full
+ mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
+ fi
+
+ else
+ # Avoid auto-magic on linker
+ if use clang ; then
+ # lld is upstream's default
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
+ fi
+
+ else
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd
+ fi
+ fi
+ fi
+
+ if use pgo ; then
+ mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+ if use clang ; then
+ # Used in build/pgo/profileserver.py
+ export LLVM_PROFDATA="llvm-profdata"
+ fi
+ fi
+
+ mozconfig_use_enable debug
+ if use debug ; then
+ mozconfig_add_options_ac '+debug' --disable-optimize
+ mozconfig_add_options_ac '+debug' --enable-jemalloc
+ mozconfig_add_options_ac '+debug' --enable-real-time-tracing
+ else
+ mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing
+
+ if is-flag '-g*' ; then
+ if use clang ; then
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
+ else
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
+ fi
+ else
+ mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
+ fi
+
+ if is-flag '-O0' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
+ elif is-flag '-O4' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
+ elif is-flag '-O3' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
+ elif is-flag '-O1' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
+ elif is-flag '-Os' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
+ else
+ mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
+ fi
+ fi
+
+ # Debug flag was handled via configure
+ filter-flags '-g*'
+
+ # Optimization flag was handled via configure
+ filter-flags '-O*'
+
+ # elf-hack
+ # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
+ if use amd64 || use x86 ; then
+ filter-flags "-z,pack-relative-relocs"
+
+ if tc-ld-is-mold ; then
+ # relr-elf-hack is currently broken with mold, bgo#916259
+ mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack
+ else
+ mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr
+ fi
+ elif use loong || use ppc64 || use riscv ; then
+ # '--disable-elf-hack' is not recognized on loong/ppc64/riscv,
+ # see bgo #917049, #930046
+ :;
+ else
+ mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack
+ fi
+
+ if ! use elibc_glibc; then
+ mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+ fi
+
+ # System-av1 fix
+ use system-av1 && append-ldflags "-Wl,--undefined-version"
+
+ # Make revdep-rebuild.sh happy; Also required for musl
+ append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+ # Pass $MAKEOPTS to build system
+ export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+ # Use system's Python environment
+ export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
+
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
+
+ # Disable notification when build system has finished
+ export MOZ_NOSPAM=1
+
+ # Portage sets XARGS environment variable to "xargs -r" by default which
+ # breaks build system's check_prog() function which doesn't support arguments
+ mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
+
+ # Set build dir
+ mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
+
+ # Show flags we will use
+ einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ # Handle EXTRA_CONF and show summary
+ local ac opt hash reason
+
+ # Apply EXTRA_ECONF entries to $MOZCONFIG
+ if [[ -n ${EXTRA_ECONF} ]] ; then
+ IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
+ for opt in "${ac[@]}"; do
+ mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
+ done
+ fi
+
+ echo
+ echo "=========================================================="
+ echo "Building ${PF} with the following configuration"
+ grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
+ [[ -z ${hash} || ${hash} == \# ]] \
+ || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
+ printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
+ done
+ echo "=========================================================="
+ echo
+
+ ./mach configure || die
+}
+
+src_compile() {
+ local virtx_cmd=
+
+ if [[ ${use_lto} == "yes" ]] && tc-ld-is-mold ; then
+ # increase ulimit with mold+lto, bugs #892641, #907485
+ if ! ulimit -n 16384 1>/dev/null 2>&1 ; then
+ ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources."
+ ewarn "Please see bugs #892641 & #907485."
+ else
+ ulimit -n 16384
+ fi
+ fi
+
+ if use pgo; then
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ addpredict /root
+
+ if ! use X; then
+ virtx_cmd=virtwl
+ else
+ virtx_cmd=virtx
+ fi
+ fi
+
+ if ! use X; then
+ local -x GDK_BACKEND=wayland
+ else
+ local -x GDK_BACKEND=x11
+ fi
+
+ ${virtx_cmd} ./mach build --verbose || die
+}
+
+src_install() {
+ # xpcshell is getting called during install
+ pax-mark m \
+ "${BUILD_DIR}"/dist/bin/xpcshell \
+ "${BUILD_DIR}"/dist/bin/${PN} \
+ "${BUILD_DIR}"/dist/bin/plugin-container
+
+ DESTDIR="${D}" ./mach install || die
+
+ # Upstream cannot ship symlink but we can (bmo#658850)
+ rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
+ dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
+
+ # Don't install llvm-symbolizer from llvm-core/llvm package
+ if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
+ rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
+ fi
+
+ insinto "${MOZILLA_FIVE_HOME}/distribution"
+ newins "${FILESDIR}"/distribution.ini distribution.ini
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # Force hwaccel prefs if USE=hwaccel is enabled
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
+ >>"${GENTOO_PREFS}" \
+ || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
+
+ if use wayland; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
+ pref("gfx.x11-egl.force-enabled", false);
+ EOF
+ else
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
+ pref("gfx.x11-egl.force-enabled", true);
+ EOF
+ fi
+
+ # Install the gfxtest binary on supported arches
+ exeinto "${MOZILLA_FIVE_HOME}"
+ doexe "${BUILD_DIR}"/dist/bin/gfxtest
+ fi
+
+ # Set dictionary path to use system hunspell
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
+ pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
+ EOF
+
+ # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
+ if use system-harfbuzz ; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
+ sticky_pref("gfx.font_rendering.graphite.enabled", true);
+ EOF
+ fi
+
+ # Install icons
+ local icon_srcdir="${S}/comm/mail/branding/thunderbird"
+ local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg"
+
+ insinto /usr/share/icons/hicolor/symbolic/apps
+ newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menu
+ local app_name="Mozilla ${MOZ_PN^}"
+ local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if [[ -n ${MOZ_ESR} ]] ; then
+ local desktop_filename="${PN}-esr.desktop"
+ else
+ local desktop_filename="${PN}.desktop"
+ fi
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ "${WORKDIR}/${PN}.desktop-template" || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if ver_replacing -lt 136.0 ; then
+ elog "In this version of Thunderbird, upstream introduced an in-app notification"
+ elog "system. Setting pref 'mail.inappnotifications.enabled' to false and nullifying"
+ elog "'mail.inappnotifications.url' may help you avoid these messages, if you don't"
+ elog "wish to receive them."
+ fi
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "desktop notifications" x11-libs/libnotify
+ optfeature "encrypted chat support" net-libs/libotr
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+}
diff --git a/mail-filter/maildrop/maildrop-3.3.0.ebuild b/mail-filter/maildrop/maildrop-3.3.0.ebuild
index 86b2ff2d1ccf..b7c9d66e4d92 100644
--- a/mail-filter/maildrop/maildrop-3.3.0.ebuild
+++ b/mail-filter/maildrop/maildrop-3.3.0.ebuild
@@ -14,7 +14,7 @@ S=${WORKDIR}/${P%%_pre}
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ppc ppc64 ~s390 ~sparc x86"
IUSE="berkdb debug dovecot gdbm ldap mysql postgres static-libs authlib test +tools trashquota"
RESTRICT="!test? ( test )"
diff --git a/mail-mta/postfix/Manifest b/mail-mta/postfix/Manifest
index e16f4798c606..9adb688d639d 100644
--- a/mail-mta/postfix/Manifest
+++ b/mail-mta/postfix/Manifest
@@ -1,4 +1,4 @@
DIST postfix-3.11.7.tar.gz 5293599 BLAKE2B 4f3d9f92320336a80770593800d026aa41dc628dfd9db5e5d3b6fad667fe700bdd4bddcc16fce17f47fdba9cd58419946dc5f14b0e9d7dc5569c45b1226ffae4 SHA512 3b4ef7562a24bbab1d0ca361ac0af1037aa3d4ae65a7c825711de9d5d3ed88975aad63cb09991717de334f4382c29039b527a3e8d4e65c5a6d35efd3e782910f
DIST postfix-3.11.7.tar.gz.asc 220 BLAKE2B e32f69fae20c6aae0f95efabd02c77c2bd9b7684738b15f8d584447e3bb5d09c8ef80ffb11c4798615c6b8f3e8ff31de25a5bc2dc4f41ef012ec956f7528c662 SHA512 d482753f934393bb65b8e069a5ae092d3b3ef4c30106f8738e9947d18ad35271fc375d202ffbc335e4a04737e369eb8975163fb530aa1a7176d16c7f62746697
-DIST postfix-3.12-20260925.tar.gz 5461457 BLAKE2B 7d51079dcb2c1c5a66912696bc9265b9285fbe24ea02702472d8d5dde15e56173c280845004fccdcee6171106186359eacafbf0ce13120f6b3a81e87a6fd1234 SHA512 12c96d2a4e4c9a89b20543f4681da0ed421254f9ddc450d8ba5c398d7f6a60c53e9065eb6ad12885a12b46824ff9116809d5aefb6d3da77f5355e30e092e12df
-DIST postfix-3.12-20260925.tar.gz.asc 220 BLAKE2B 48d2e04c05078af322f4c8a670d003c7b91e3d31ac2783390024577e54f8d69cd5afeb66c08fc53bf01e88cd730efb2fd54d5d5fdbcd9904b94b8b8001b7d184 SHA512 25dad343339762dc1a9eb1368c55ee1daddd26e0a6e819fb24cf4775d176508b01f628f175b957dd31d45dbb1e238f2f45c3a6be5ac43cd760aa7fe916b12cab
+DIST postfix-3.12-20261020.tar.gz 5498368 BLAKE2B 01b1a216a0f7419568989cc8640c3efb215409a68ecd2664ac6d57ca965b39003b9a97a51992d25aeb1821320bc2f21b1bc8963eb49affeeda958eec024983af SHA512 b9c204edb479dc573cd0eaba5803cedd5b354a03c8f3c425fe1aa6bfcfccd9e4f0ce7f0d2aa277e0f781a850770b2dc4e0cbca32b9bf8d06c20ee26bf71afde6
+DIST postfix-3.12-20261020.tar.gz.asc 220 BLAKE2B 2a61d4e68ff6962fdcb6b7e9c581d00e264b4b6534f8461b27dabf896580d76f938d442d903be64fbe7a2809b45164549517951d5832af25bf81cfa57a956432 SHA512 8020e7a6fcd87701316e1cd3c5ced6b109d93da5f17eb7e2f574989c468eeca1babafb6cdc9af73298a9d5cead0805802c1798f2c1269cdf83c1ef2cc6df7a6b
diff --git a/mail-mta/postfix/files/postfix.service b/mail-mta/postfix/files/postfix.service
index 7a72aaa8e50b..cf09225576b1 100644
--- a/mail-mta/postfix/files/postfix.service
+++ b/mail-mta/postfix/files/postfix.service
@@ -1,5 +1,6 @@
[Unit]
Description=Postfix Mail Transport Agent
+Documentation=man:postfix(1) man:master(8)
After=network.target
[Service]
@@ -12,7 +13,7 @@ ExecReload=/usr/sbin/postfix reload
PrivateTmp=yes
PrivateDevices=yes
ProtectSystem=full
-ReadWritePaths=-/etc/mail/aliases.db -/etc/mail/aliases.cdb -/etc/mail/aliases.lmdb
+ReadWritePaths=-/etc/mail
CapabilityBoundingSet=~ CAP_NET_ADMIN CAP_SYS_ADMIN CAP_SYS_BOOT CAP_SYS_MODULE
MemoryDenyWriteExecute=true
ProtectKernelModules=true
diff --git a/mail-mta/postfix/files/postlift.service b/mail-mta/postfix/files/postlift.service
new file mode 100644
index 000000000000..a1fe0602a1a1
--- /dev/null
+++ b/mail-mta/postfix/files/postlift.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Postfix postlift helper
+Documentation=man:postlift(8)
+Requires=postlift.socket
+
+[Service]
+# DO NOT run as "postfix" (i.e. core daemon privilege).
+User=postdrop
+Group=postdrop
+ExecStart=/usr/libexec/postfix/postlift
+Type=simple
+StandardInput=socket
+StandardOutput=socket
+# Only stderr goes to journal for logging
+StandardError=journal
+SyslogFacility=mail
diff --git a/mail-mta/postfix/files/postlift.socket b/mail-mta/postfix/files/postlift.socket
new file mode 100644
index 000000000000..3208640de42b
--- /dev/null
+++ b/mail-mta/postfix/files/postlift.socket
@@ -0,0 +1,13 @@
+[Unit]
+Description=Postfix postlift Socket
+Documentation=man:postlift(8)
+
+[Socket]
+Accept=yes
+RemoveOnStop=yes
+ListenStream=/run/postfix/postlift.socket
+# MaxConnectionsPerSource must be less than MaxConnections (default 64)
+MaxConnectionsPerSource=30
+
+[Install]
+WantedBy=sockets.target
diff --git a/mail-mta/postfix/postfix-3.12_pre20260925.ebuild b/mail-mta/postfix/postfix-3.12_pre20261020.ebuild
index c46f8e9da614..2be46bfd3cb9 100644
--- a/mail-mta/postfix/postfix-3.12_pre20260925.ebuild
+++ b/mail-mta/postfix/postfix-3.12_pre20261020.ebuild
@@ -50,6 +50,7 @@ DEPEND="
"
RDEPEND="${DEPEND}
+ acct-user/postdrop
dev-lang/perl
memcached? ( net-misc/memcached )
net-mail/mailbase
@@ -298,10 +299,19 @@ src_install() {
insinto /usr/include/postfix
doins include/*.h
- systemd_dounit "${FILESDIR}/${PN}.service"
+ systemd_dounit "${FILESDIR}/${PN}.service" "${FILESDIR}/postlift.socket"
+ systemd_newunit "${FILESDIR}/postlift.service" "postlift@.service"
}
pkg_postinst() {
+ if has_version -r sys-apps/systemd && ver_replacing -lt 3.12; then
+ elog "For non-root local submissions under NoNewPrivileges=yes or nosuid,"
+ elog "enable the postlift socket on systemd systems:"
+ elog " systemctl enable --now postlift.socket"
+ elog "Such submissions fail while the socket is inactive, including early boot."
+ elog "See NO_NEW_PRIVILEGES_README for details."
+ fi
+
if ver_replacing -lt 3.12; then
ewarn "berkdb USE flag is off by default in postfix-3.12."
ewarn "Remember to turn it on if you are still using hash"
diff --git a/media-libs/mpvqt/mpvqt-1.2.0.ebuild b/media-libs/mpvqt/mpvqt-1.2.0.ebuild
index 27d42f5c3e7f..62a05ad59b36 100644
--- a/media-libs/mpvqt/mpvqt-1.2.0.ebuild
+++ b/media-libs/mpvqt/mpvqt-1.2.0.ebuild
@@ -9,7 +9,7 @@ inherit ecm kde.org
if [[ ${KDE_BUILD_TYPE} == release ]]; then
SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+ KEYWORDS="amd64 arm64 ~ppc64 ~x86"
fi
DESCRIPTION="libmpv wrapper for QtQuick2 and QML"
diff --git a/media-sound/yandex-music/Manifest b/media-sound/yandex-music/Manifest
index e7e5b93f66ec..a353cfbfb1c0 100644
--- a/media-sound/yandex-music/Manifest
+++ b/media-sound/yandex-music/Manifest
@@ -2,3 +2,4 @@ DIST Yandex_Music_amd64_5.113.2.deb 94337468 BLAKE2B a67cb54769bda8f95625f236997
DIST Yandex_Music_amd64_5.116.3.deb 95099430 BLAKE2B 48798ff56ef79490cc2156dbee937422185a3c4327bca50bebf0dfb6cc49b4a54d4f4b344001d7bcc049b6b96627236889b76e374724dd41d51f1be949d97b1a SHA512 fd1884b82f039d9b7c75bdac1b18546c315545ac811746bb8047e367358d58ecf46e9669d3292898e1c502d16422d6402e68e07e24e4b2907e34138698c7389d
DIST Yandex_Music_amd64_5.119.0.deb 94510500 BLAKE2B 927f89257ac4058e89f76e1eb01e47bbf9e9a65ebfe7ff7681de57ac600b04ebc985a8f5590d1ec8fe3773c3bd246e231a66a0c1d442021fa1f7c2b366f6af58 SHA512 5b68113ca68bcba856da4ca0b98d2bf9fb3220cf5e8d35fd3223cd77484e135750c9838a1ddc02a4ffa2b14199ba3ac953e9ad27fdf79a04c638dfee63ae0275
DIST Yandex_Music_amd64_5.122.0.deb 94525328 BLAKE2B 1ec5865f07750d73fc30155e11c83e060bdfa72b862a2d33c59515db41adc8bdba91c7f99ad683fcb8cadc1fee4f5075b75bf8034eee35d4c277f1ce1194c7cb SHA512 d514fa41d8192405aa1a4e0e9deb6f39afe5f1945117da6ca1bd47d096c752bd56dc7543e753ad4f552c18063ac2647b088ebb04d609c37ac26980a5bd5c6646
+DIST Yandex_Music_amd64_5.123.4.deb 94934892 BLAKE2B 44ad502324037fbcd27fa539697d3418567b2f1121874e4faa58730bbbb3293edcfca48c701e0ffd192b3ad0828840d15ff8d5c4fd2dcabacc8662115c500db0 SHA512 3fcb89b83b29ff370abbc786f571cfbe4a36661f3d4ba14dff0c422ca4f75a368e2a4a82e200532372b9162c5d79ce63bdf1265fa9d69dca0aa7f0f97ddf99e2
diff --git a/media-sound/yandex-music/yandex-music-5.123.4.ebuild b/media-sound/yandex-music/yandex-music-5.123.4.ebuild
new file mode 100644
index 000000000000..cb4cbdfd3371
--- /dev/null
+++ b/media-sound/yandex-music/yandex-music-5.123.4.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB en-US es-419 es et fa fi fil fr gu he hi hr hu id it ja kn ko \
+lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv sw ta te th tr uk ur vi zh-CN zh-TW"
+inherit chromium-2 pax-utils wrapper unpacker xdg
+
+MY_PN="${PN/-/}"
+
+DESCRIPTION="Yandex Music streaming service"
+HOMEPAGE="https://music.yandex.ru/"
+SRC_URI="
+ amd64? ( https://music-desktop-application.s3.yandex.net/stable/Yandex_Music_amd64_${PV}.deb )
+"
+
+S="${WORKDIR}"
+
+LICENSE="Yandex-EULA"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ app-accessibility/at-spi2-core
+ app-arch/bzip2
+ dev-libs/expat
+ dev-libs/fribidi
+ dev-libs/glib:2
+ dev-libs/gmp
+ dev-libs/libffi
+ dev-libs/libpcre2
+ dev-libs/libtasn1
+ dev-libs/libunistring
+ dev-libs/nettle
+ dev-libs/nspr
+ dev-libs/nss
+ dev-libs/wayland
+ media-gfx/graphite2
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/harfbuzz
+ media-libs/libepoxy
+ media-libs/libjpeg-turbo
+ media-libs/libpng
+ media-libs/mesa
+ net-dns/libidn2
+ net-libs/gnutls
+ net-print/cups
+ sys-apps/dbus
+ sys-apps/util-linux
+ sys-devel/gcc
+ sys-libs/glibc
+ sys-libs/libcap
+ virtual/libudev
+ virtual/zlib
+ x11-libs/cairo[X,glib]
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/pango[X]
+ x11-libs/pixman
+"
+DEPEND="
+ >=dev-util/patchelf-0.9
+"
+
+QA_PREBUILT="*"
+QA_DESKTOP_FILE="usr/share/applications/yandex-music.*\\.desktop"
+YANDEX_HOME="opt/${PN}"
+
+pkg_setup() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_unpack() {
+ unpack_deb ${A}
+ mv -T "${S}/opt/Яндекс Музыка" "${S}/${YANDEX_HOME}" || die
+ mv -T "${S}/usr/share/doc/${MY_PN}" "${S}/usr/share/doc/${PF}" || die
+}
+
+src_prepare() {
+ default
+ sed -i -e "s|/opt/Яндекс Музыка/${MY_PN}|/opt/bin/${PN}|" -i -e "s/Audio;/AudioVideo;/" \
+ "${S}/usr/share/applications/${MY_PN}.desktop" || die
+
+ sed -i -e "s|/opt/Яндекс Музыка|/${YANDEX_HOME}|" "${S}/${YANDEX_HOME}"/resources/apparmor-profile || die
+
+ gunzip "usr/share/doc/${PF}/changelog.gz" || die "Failed to decompress docs"
+
+ rm "${S}/${YANDEX_HOME}"/resources/app-update.yml || die
+
+ pushd "${YANDEX_HOME}/locales" > /dev/null || die
+ chromium_remove_language_paks
+ popd > /dev/null || die
+
+ patchelf --remove-rpath "${S}/${YANDEX_HOME}/chrome-sandbox" || die "Failed to fix library rpath (chrome-sandbox)"
+ patchelf --remove-rpath "${S}/${YANDEX_HOME}/${MY_PN}" || die "Failed to fix library rpath (yandexmusic)"
+}
+
+src_install() {
+ insinto /opt
+ doins -r opt/*
+
+ insinto /usr
+ doins -r usr/*
+
+ make_wrapper ${PN} "/${YANDEX_HOME}/${MY_PN}" "" "/${YANDEX_HOME}" "/opt/bin/"
+
+ fowners root:root "/${YANDEX_HOME}/${MY_PN}"
+ fperms 4711 "/${YANDEX_HOME}/chrome-sandbox"
+ pax-mark m "${ED}${YANDEX_HOME}/chrome-sandbox"
+ fperms 755 "/${YANDEX_HOME}/${MY_PN}"
+}
diff --git a/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.1.ebuild b/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.1.ebuild
index cb02e8bacc1e..254d72c8353d 100644
--- a/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.1.ebuild
+++ b/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.1.ebuild
@@ -18,7 +18,7 @@ DESCRIPTION="A screen recorder that has minimal impact on system performance"
HOMEPAGE="https://git.dec05eba.com/gpu-screen-recorder/about"
LICENSE="GPL-3"
SLOT="0"
-IUSE="+filecaps systemd"
+IUSE="+filecaps"
DEPEND="
media-video/ffmpeg[vulkan]
@@ -32,7 +32,7 @@ DEPEND="
media-libs/libva
x11-libs/libdrm
x11-libs/libX11
- sys-apps/dbus
+ sys-apps/dbus:0
sys-libs/libcap
dev-libs/wayland
"
@@ -41,12 +41,8 @@ BDEPEND="${DEPEND}"
src_configure() {
local emesonargs=(
- $(meson_use systemd)
+ -Dsystemd=true
$(meson_use filecaps capabilities)
)
meson_src_configure
}
-
-src_install() {
- meson_src_install
-}
diff --git a/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.3.ebuild b/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.3.ebuild
index cb02e8bacc1e..254d72c8353d 100644
--- a/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.3.ebuild
+++ b/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.3.ebuild
@@ -18,7 +18,7 @@ DESCRIPTION="A screen recorder that has minimal impact on system performance"
HOMEPAGE="https://git.dec05eba.com/gpu-screen-recorder/about"
LICENSE="GPL-3"
SLOT="0"
-IUSE="+filecaps systemd"
+IUSE="+filecaps"
DEPEND="
media-video/ffmpeg[vulkan]
@@ -32,7 +32,7 @@ DEPEND="
media-libs/libva
x11-libs/libdrm
x11-libs/libX11
- sys-apps/dbus
+ sys-apps/dbus:0
sys-libs/libcap
dev-libs/wayland
"
@@ -41,12 +41,8 @@ BDEPEND="${DEPEND}"
src_configure() {
local emesonargs=(
- $(meson_use systemd)
+ -Dsystemd=true
$(meson_use filecaps capabilities)
)
meson_src_configure
}
-
-src_install() {
- meson_src_install
-}
diff --git a/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.4.ebuild b/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.4.ebuild
index cb02e8bacc1e..254d72c8353d 100644
--- a/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.4.ebuild
+++ b/media-video/gpu-screen-recorder/gpu-screen-recorder-6.1.4.ebuild
@@ -18,7 +18,7 @@ DESCRIPTION="A screen recorder that has minimal impact on system performance"
HOMEPAGE="https://git.dec05eba.com/gpu-screen-recorder/about"
LICENSE="GPL-3"
SLOT="0"
-IUSE="+filecaps systemd"
+IUSE="+filecaps"
DEPEND="
media-video/ffmpeg[vulkan]
@@ -32,7 +32,7 @@ DEPEND="
media-libs/libva
x11-libs/libdrm
x11-libs/libX11
- sys-apps/dbus
+ sys-apps/dbus:0
sys-libs/libcap
dev-libs/wayland
"
@@ -41,12 +41,8 @@ BDEPEND="${DEPEND}"
src_configure() {
local emesonargs=(
- $(meson_use systemd)
+ -Dsystemd=true
$(meson_use filecaps capabilities)
)
meson_src_configure
}
-
-src_install() {
- meson_src_install
-}
diff --git a/media-video/gpu-screen-recorder/gpu-screen-recorder-9999.ebuild b/media-video/gpu-screen-recorder/gpu-screen-recorder-9999.ebuild
index cb02e8bacc1e..254d72c8353d 100644
--- a/media-video/gpu-screen-recorder/gpu-screen-recorder-9999.ebuild
+++ b/media-video/gpu-screen-recorder/gpu-screen-recorder-9999.ebuild
@@ -18,7 +18,7 @@ DESCRIPTION="A screen recorder that has minimal impact on system performance"
HOMEPAGE="https://git.dec05eba.com/gpu-screen-recorder/about"
LICENSE="GPL-3"
SLOT="0"
-IUSE="+filecaps systemd"
+IUSE="+filecaps"
DEPEND="
media-video/ffmpeg[vulkan]
@@ -32,7 +32,7 @@ DEPEND="
media-libs/libva
x11-libs/libdrm
x11-libs/libX11
- sys-apps/dbus
+ sys-apps/dbus:0
sys-libs/libcap
dev-libs/wayland
"
@@ -41,12 +41,8 @@ BDEPEND="${DEPEND}"
src_configure() {
local emesonargs=(
- $(meson_use systemd)
+ -Dsystemd=true
$(meson_use filecaps capabilities)
)
meson_src_configure
}
-
-src_install() {
- meson_src_install
-}
diff --git a/media-video/gpu-screen-recorder/metadata.xml b/media-video/gpu-screen-recorder/metadata.xml
index 7f8b517e2777..c0d4244d6037 100644
--- a/media-video/gpu-screen-recorder/metadata.xml
+++ b/media-video/gpu-screen-recorder/metadata.xml
@@ -15,7 +15,6 @@
<bugs-to>https://github.com/dec05eba/gpu-screen-recorder-issues/issues</bugs-to>
</upstream>
<use>
- <flag name="systemd">Install systemd user service</flag>
<flag name="filecaps">Remove password prompt and improve performance</flag>
</use>
<origin>srcux</origin>
diff --git a/media-video/haruna/haruna-1.8.1-r1.ebuild b/media-video/haruna/haruna-1.8.1-r1.ebuild
index 9cafeda8504e..0c3587c46ea4 100644
--- a/media-video/haruna/haruna-1.8.1-r1.ebuild
+++ b/media-video/haruna/haruna-1.8.1-r1.ebuild
@@ -9,7 +9,7 @@ inherit ecm kde.org optfeature xdg
if [[ ${KDE_BUILD_TYPE} == release ]]; then
SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm64"
+ KEYWORDS="amd64 arm64"
fi
DESCRIPTION="Video player built with Qt/QML and libmpv"
diff --git a/media-video/stremio/stremio-1.2.2-r1.ebuild b/media-video/stremio/stremio-1.2.2-r2.ebuild
index 5be95b80b75f..447abcfdd812 100644
--- a/media-video/stremio/stremio-1.2.2-r1.ebuild
+++ b/media-video/stremio/stremio-1.2.2-r2.ebuild
@@ -380,11 +380,18 @@ SLOT="0"
KEYWORDS="~amd64"
DEPEND="
+ >=dev-libs/glib-2.70:2
+ dev-libs/wayland
>=gui-libs/gtk-4.21:4[wayland]
>=gui-libs/libadwaita-1.9:1
- >=net-libs/webkit-gtk-2.52:6
+ >=media-libs/graphene-1.10
media-libs/libepoxy
media-video/mpv:=[libmpv]
+ net-libs/libsoup:3.0
+ >=net-libs/webkit-gtk-2.52:6
+ >=x11-libs/cairo-1.14[glib]
+ >=x11-libs/gdk-pixbuf-2.36.8:2
+ >=x11-libs/pango-1.50
"
RDEPEND="
${DEPEND}
@@ -393,10 +400,14 @@ RDEPEND="
x11-themes/hicolor-icon-theme
"
BDEPEND="
+ dev-libs/glib:2
sys-devel/gettext
virtual/pkgconfig
"
+# Rust binaries use RUSTFLAGS and do not contain GCC's CFLAGS marker.
+QA_FLAGS_IGNORED="usr/bin/stremio"
+
PATCHES=(
"${FILESDIR}/disable-dbus-activation.patch"
"${FILESDIR}/system-gettext-path.patch"
diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest
index 7aa4250b32ce..af5e0da194a6 100644
--- a/net-dns/nsd/Manifest
+++ b/net-dns/nsd/Manifest
@@ -8,3 +8,5 @@ DIST nsd-4.15.2.tar.gz 1634936 BLAKE2B 73bac9c495abdcbe4cdb3f47008df760fb2077d24
DIST nsd-4.15.2.tar.gz.asc 659 BLAKE2B 28bf78a9663bd8d389d39250341fa5ac902dd21b8f049b9673d1e0cfd8514f716df192835e45ea12346a8b5ef97f0a2c886117d2fae31e5fd058e74311284f5f SHA512 8b821b83af6294e86abc12acd14604be16b3bad3db051cb4b5a044d209af9a3b5f8f0081037b232904ff2dc09f21f2c856c58422362e5ee17a8fea533a940917
DIST nsd-4.15.3.tar.gz 1620092 BLAKE2B 57b76908cf059625fafa86ea01a34d19c0573228c4fab51ebed3227f0d8755cca428424acabda3af719ba05804ff03f678b6dbe36763689b15e26e089369bc98 SHA512 009b35390a643439a054a73a9743cb00b07632b21af9aa856d1763e268bb9a8ce8c67c94dc4b179d681a1df8bc5b26a85f324c03ee3e3a627a394d371fcaf5b9
DIST nsd-4.15.3.tar.gz.asc 659 BLAKE2B d9d987b9605944459e1ea19215fd7ded454827f9833c552ad1f58c3fdd3740d9f3f7f1fe81b71bf25c253b44297142ddfb230d6720971e7dd91bbde2ccec35c7 SHA512 03b46dc2616d4629473f52a52fbb5e70bb6990b14f0ade777d4bb85c55d1eae0d8a45637b3376ce44128b5a8c4c47235981c727eb62de8d47d5cdb22bbceed07
+DIST nsd-4.15.4.tar.gz 1628529 BLAKE2B 93605bde24e64a5de39f33cb4087d9ccfe5684deb98e939834fafe6e4f608609eeb4d5113e8b4a036e9c6375b9de8bef24f47d0019cca8d972e3a184a71bceb6 SHA512 32837416988df91014cb2d72b2fe474bcfc7b3906725d4a217174efbc1bf202f44e798018525c6a673f33f012fbea1a47c73963a923fe99d14ad317d31b44198
+DIST nsd-4.15.4.tar.gz.asc 659 BLAKE2B 1d2bddb60746e4dd5e3d35c4236e08109a38c9356e75e05a3e4a2d58108a1d07e0cb1768931b9894c0dc02702a6583f94c830ef28b324dfd8780be5a0a8e77fa SHA512 c9494d7bacaa102248f64e696d30199a1284d78ddb13c43aa465628596333cd93ec8afff212cfeb10a344351b2a4de1f80c332e65806121a41bc33e21f21c82f
diff --git a/net-dns/nsd/nsd-4.15.4.ebuild b/net-dns/nsd/nsd-4.15.4.ebuild
new file mode 100644
index 000000000000..c41a61629aa3
--- /dev/null
+++ b/net-dns/nsd/nsd-4.15.4.ebuild
@@ -0,0 +1,190 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nlnetlabs.asc
+inherit autotools systemd tmpfiles toolchain-funcs verify-sig
+
+DESCRIPTION="An authoritative only, high performance, open source name server"
+HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd/about/"
+
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git"
+else
+ # Version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
+ MY_PV="${PV/_beta/b}"
+ MY_PV="${MY_PV/_rc/rc}"
+ MY_P="${PN}-${MY_PV}"
+
+ if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+ SRC_URI="
+ https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz
+ verify-sig? ( https://www.nlnetlabs.nl/downloads/nsd/${MY_P}.tar.gz.asc )
+ "
+ S="${WORKDIR}"/${MY_P}
+
+ KEYWORDS="~amd64 ~arm64 ~x86"
+ BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-nlnetlabs-20260101 ) "
+ fi
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+bind8-stats debug +dnstap +ipv6 libevent memclean minimal-responses mmap munin"
+IUSE+=" +nsec3 +radix-tree +ratelimit recvmmsg selinux +simdzone ssl systemd +tfo xdp verify-sig"
+
+RDEPEND="
+ acct-group/nsd
+ acct-user/nsd
+ dnstap? (
+ >=dev-libs/fstrm-0.4
+ dev-libs/protobuf-c:=
+ )
+ libevent? ( dev-libs/libevent )
+ munin? ( net-analyzer/munin )
+ ssl? ( dev-libs/openssl:= )
+ systemd? ( sys-apps/systemd )
+ xdp? (
+ dev-libs/libbpf:=
+ net-libs/xdp-tools
+ sys-libs/libcap
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND+="
+ app-alternatives/lex
+ app-alternatives/yacc
+ systemd? ( virtual/pkgconfig )
+ xdp? ( llvm-core/clang:*[llvm_targets_BPF] )
+"
+RDEPEND+=" selinux? ( sec-policy/selinux-nsd )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-munin-gentoo-paths.patch"
+)
+
+NSD_DBDIR="/var/db/nsd" # Default dir for NSD's databases.
+NSD_ZNDIR="/var/lib/nsd" # Default dir for NSD's zone files.
+
+QA_EXECSTACK="
+ usr/lib/nsd/xdp-*.o
+"
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == *9999 ]] ; then
+ # When building from git, the configure script and simdzone sources are missing
+ # See README.md
+ git submodule update --init || die "Could't update submodules"
+ autoreconf -fi || die "autoreconf -fi failed"
+ else
+ # Required to get correct pkg-config macros with USE="systemd".
+ # See bugs #663618 & #758050.
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ --cache-file="${S}"/config.cache
+
+ $(use_enable bind8-stats)
+ $(use_enable bind8-stats zone-stats)
+ $(use_enable debug checking)
+ $(use_enable dnstap)
+ $(use_enable ipv6)
+ $(use_enable memclean)
+ $(use_enable minimal-responses)
+ $(use_enable mmap)
+ $(use_enable nsec3)
+ --disable-packed
+ $(use_enable radix-tree)
+ $(use_enable ratelimit)
+ $(use_enable recvmmsg)
+ $(use_enable systemd)
+ $(use_enable tfo tcp-fastopen)
+ $(use_enable xdp)
+ $(use_with libevent)
+ $(use_with ssl)
+
+ --with-cookiesecretsfile="${EPREFIX}${NSD_DBDIR}/cookiesecrets.txt"
+ --with-dbfile="${EPREFIX}${NSD_DBDIR}/nsd.db"
+ --with-dbdir="${EPREFIX}${NSD_DBDIR}"
+ --with-logfile="${EPREFIX}/var/log/nsd.log"
+ --with-pidfile="${EPREFIX}/run/nsd.pid"
+ # sharedfilesdir is used for xdp (bpf) objects
+ --with-sharedfilesdir="${EPREFIX}/usr/lib/nsd"
+ --with-xfrdfile="${EPREFIX}${NSD_DBDIR}/xfrd.state"
+ --with-xfrdir="${EPREFIX}${NSD_DBDIR}"
+ --with-zonelistfile="${EPREFIX}${NSD_DBDIR}/zone.list"
+ --with-zonesdir="${EPREFIX}${NSD_ZNDIR}"
+ )
+
+ # NSD 4.10.x introduced a new zone parser, "simdzone", which
+ # replaces the older parser that used flex & bison:
+ # https://github.com/NLnetLabs/simdzone
+ # It leverages SSE4.2 and/or AVX2 instruction sets for faster
+ # zone parsing on x86_64 architectures. Other CPU archs will
+ # use a fallback implementation.
+ if use amd64; then
+ myconf+=(
+ $(use_enable simdzone haswell)
+ $(use_enable simdzone westmere)
+ )
+ fi
+
+ # If the compiler indicates that time_t is at least 64-bits wide,
+ # then enable it in the package to support timestamps greater than
+ # the year 2038 (D_TIME_BITS=64). This configure switch only
+ # appears on glibc-based userlands.
+ if use elibc_glibc && tc-has-64bit-time_t; then
+ myconf+=( --enable-year2038 )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
+ newinitd contrib/nsd.openrc nsd
+ newconfd contrib/nsd.openrc.conf nsd
+ newtmpfiles contrib/nsd-tmpfiles.conf nsd.conf
+
+ # Install munin plugin and config, if requested.
+ if use munin ; then
+ exeinto /usr/libexec/munin/plugins
+ doexe contrib/nsd_munin_
+ insinto /etc/munin/plugin-conf.d
+ newins "${FILESDIR}"/nsd.munin-conf nsd_munin
+ fi
+
+ # Use the upstream-provided systemd service file.
+ systemd_dounit contrib/nsd.service
+
+ # Remove the /run directory that usually resides on tmpfs and is
+ # being taken care of by the nsd init script anyway (checkpath).
+ rm -r "${ED}"/run || die "Failed to remove /run"
+
+ # BPF
+ dostrip -x /usr/lib/nsd
+
+ keepdir "${NSD_DBDIR}"
+}
+
+pkg_postinst() {
+ # See eclass/tmpfiles.eclass for info.
+ tmpfiles_process nsd.conf
+
+ # Database directory
+ # Writable by nsd:nsd for database updates and zone transfers.
+ install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_DBDIR}"
+
+ # Zones directory
+ # Writable by nsd:nsd for zone file updates (via 'nsd-control write').
+ install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_ZNDIR}"
+}
diff --git a/net-dns/unbound/Manifest b/net-dns/unbound/Manifest
index 94e4c1a63374..cc981b2823f8 100644
--- a/net-dns/unbound/Manifest
+++ b/net-dns/unbound/Manifest
@@ -4,3 +4,5 @@ DIST unbound-1.25.2.tar.gz 6839073 BLAKE2B f5bcdbac166ba468cd591750ed76cdcafa01d
DIST unbound-1.25.2.tar.gz.asc 659 BLAKE2B 2bf9b5d12e47519ec22a2b72cc25ffc18ae306e7185d55b6353f36222cd5f0141dca28ca4644edbcc1eb1c2159c033afaf8217ed75f1ebfc878832b09d57b73d SHA512 4878caf1df8b41693cd32a61e7ead1b7fd26a866e5075085a55e5095ff6ed7eb5b63447f91ba814d4535c212cb13ede0651a3529f42a185535b28013c57df1ea
DIST unbound-1.26.1.tar.gz 6948585 BLAKE2B 6894a2b7119a6998de24ffec469eb2d47b1c3b28aaa1746754c01490539dccfc8745c6ab29b938ef8b9ee82d9c87402d12828b42bef25d3d5fbe7a90a3f7f02d SHA512 b0a02fe77e5d0ad697e950ee0c13b987f0f33b489dfe4bf4ed0b09723ca883ebe4465f69625b7d4eba8171516e6879bb07bf8c22b6e8bdd357e2f4f43e485525
DIST unbound-1.26.1.tar.gz.asc 659 BLAKE2B 66014fb2fcb5791f275558ea1e6fa14c48655da0f5955988993cf21705b3d94ebfcd273e672092231bd8f381d390799dee65dbfef579afa98b9fa87e94577296 SHA512 e68e349ffb76eb92b19a618be31d370879cdd42eaf9da0dbe854aa1b7637421846a2c0601198e118f66f49da25d921709dc48603ce9728155705ed7e5f25c5bf
+DIST unbound-1.26.2.tar.gz 6949796 BLAKE2B eead6b55786c7287ad82620631b3153eef556d690106b5c776af8774edfb6458a188d6cf493ab1f80882505016cdf6f491d9a945a3983cc9c583b085e58adef1 SHA512 a4e9e88feda033d4311f573fda624bcb5f964a7bf21639d3a0719a384aef72b594f56f58b42cdca897f0c07d2f343179e56c330c153052040902aed66522c9fc
+DIST unbound-1.26.2.tar.gz.asc 659 BLAKE2B 27e9448470a7d9d453863c312460f20bfcf793ef6daf3a99fb11475e50da1a7b781fa57bca942131c4f663a453b57ef13fdf576750e07dabf5a1a73e94c28d84 SHA512 633a50c5585176db1b8d18d06f77ad06d2817249545858580ba7e58871c165e172793e20a041fa0d94e0b6df3b2c81c249c33de9072ce7870ae8f5fb346a5d63
diff --git a/net-dns/unbound/unbound-1.26.2.ebuild b/net-dns/unbound/unbound-1.26.2.ebuild
new file mode 100644
index 000000000000..2adbae1fbda9
--- /dev/null
+++ b/net-dns/unbound/unbound-1.26.2.ebuild
@@ -0,0 +1,212 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nlnetlabs.asc
+inherit autotools flag-o-matic python-single-r1 systemd verify-sig multilib-minimal
+
+MY_P=${PN}-${PV/_/}
+DESCRIPTION="A validating, recursive and caching DNS resolver"
+HOMEPAGE="https://unbound.net/ https://nlnetlabs.nl/projects/unbound/about/"
+SRC_URI="
+ https://nlnetlabs.nl/downloads/unbound/${MY_P}.tar.gz
+ verify-sig? ( https://nlnetlabs.nl/downloads/unbound/${MY_P}.tar.gz.asc )
+"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="BSD GPL-2"
+SLOT="0/8" # ABI version of libunbound.so
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+IUSE="debug dnscrypt dnstap +ecdsa ecs gost +http2 python redis selinux static-libs systemd test +tfo"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+# Note: expat is needed by executable only but the Makefile is custom
+# and doesn't make it possible to easily install the library without
+# the executables. MULTILIB_USEDEP may be dropped once build system
+# is fixed.
+DEPEND="
+ acct-group/unbound
+ acct-user/unbound
+ >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
+ >=dev-libs/libevent-2.0.21:0=[${MULTILIB_USEDEP}]
+ >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}]
+ dnscrypt? ( dev-libs/libsodium:=[${MULTILIB_USEDEP}] )
+ dnstap? (
+ dev-libs/fstrm[${MULTILIB_USEDEP}]
+ >=dev-libs/protobuf-c-1.0.2-r1:=[${MULTILIB_USEDEP}]
+ )
+ ecdsa? (
+ dev-libs/openssl:0[-bindist(-)]
+ )
+ http2? ( net-libs/nghttp2:=[${MULTILIB_USEDEP}] )
+ python? ( ${PYTHON_DEPS} )
+ redis? ( dev-libs/hiredis:= )
+ systemd? ( sys-apps/systemd )
+"
+BDEPEND="
+ virtual/pkgconfig
+ python? ( dev-lang/swig )
+ test? (
+ net-libs/ldns[examples(-)]
+ dev-util/splint
+ app-text/wdiff
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-nlnetlabs-20260101 )
+"
+RDEPEND="
+ ${DEPEND}
+ net-dns/dnssec-root
+ selinux? ( sec-policy/selinux-bind )
+"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ ioctlsocket # not on Linux (bug #900060)
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.5.7-trust-anchor-file.patch
+ "${FILESDIR}"/${PN}-1.6.3-pkg-config.patch
+ "${FILESDIR}"/${PN}-1.10.1-find-ar.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ eautoreconf
+
+ # Required for the python part
+ multilib_copy_sources
+}
+
+src_configure() {
+ [[ ${CHOST} == *-darwin* ]] || append-ldflags -Wl,-z,noexecstack
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ $(multilib_native_use_enable debug)
+ $(multilib_native_use_enable gost)
+ $(multilib_native_use_enable dnscrypt)
+ $(multilib_native_use_enable dnstap)
+ $(multilib_native_use_enable ecdsa)
+ $(multilib_native_use_enable ecs subnet)
+ $(multilib_native_use_enable redis cachedb)
+ $(multilib_native_use_enable static-libs static)
+ $(multilib_native_use_enable systemd)
+ $(multilib_native_use_with python pythonmodule)
+ $(multilib_native_use_with python pyunbound)
+ $(multilib_native_use_with http2 libnghttp2)
+ $(multilib_native_use_enable tfo tfo-client)
+ $(multilib_native_use_enable tfo tfo-server)
+
+ --disable-flto
+ --disable-rpath
+ --enable-event-api
+ --enable-ipsecmod
+
+ --with-libevent="${ESYSROOT}"/usr
+ $(multilib_native_usex redis --with-libhiredis="${ESYSROOT}/usr" --without-libhiredis)
+
+ --with-pidfile="${EPREFIX}"/run/unbound.pid
+ --with-rootkey-file="${EPREFIX}"/etc/dnssec/root-anchors.txt
+ --with-ssl="${ESYSROOT}"/usr
+ --with-libexpat="${ESYSROOT}"/usr
+
+ # http://unbound.nlnetlabs.nl/pipermail/unbound-users/2011-April/001801.html
+ # $(use_enable debug lock-checks)
+ # $(use_enable debug alloc-checks)
+ # $(use_enable debug alloc-lite)
+ # $(use_enable debug alloc-nonregional)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+ systemd_dounit contrib/unbound.service
+ systemd_dounit contrib/unbound.socket
+ systemd_dounit contrib/unbound_portable.service
+}
+
+multilib_src_install_all() {
+ use python && python_optimize
+
+ newinitd "${FILESDIR}"/unbound-r2.initd unbound
+ newconfd "${FILESDIR}"/unbound-r1.confd unbound
+
+ systemd_newunit "${FILESDIR}"/unbound-anchor-r1.service unbound-anchor.service
+
+ dodoc doc/{README,CREDITS,TODO,Changelog,FEATURES}
+ dodoc contrib/{unbound_munin_,metrics.awk}
+
+ docinto selinux
+ dodoc contrib/selinux/*
+
+ exeinto /usr/share/${PN}
+ doexe contrib/{update-anchor.sh,unbound_cache.sh}
+
+ # Create space for auto-trust-anchor-file eventually
+ # downloaded by unbound-anchor
+ keepdir /etc/unbound/var
+ fowners root:unbound /etc/unbound/var
+ fperms 0770 /etc/unbound/var
+
+ # Used to store cache data
+ keepdir /var/lib/${PN}
+ fowners root:unbound /var/lib/${PN}
+ fperms 0770 /var/lib/${PN}
+
+ find "${ED}" -name '*.la' -delete || die
+ if ! use static-libs ; then
+ find "${ED}" -name "*.a" -delete || die
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -f "${EROOT}/etc/unbound/unbound_control.key" ]]; then
+ einfo "Trying to create unbound control key ..."
+ if ! unbound-control-setup &>/dev/null ; then
+ ewarn "Failed to create unbound control key!"
+ fi
+ fi
+
+ if [[ ! -f "${EROOT}/etc/unbound/var/root-anchors.txt" ]]; then
+ einfo ""
+ einfo "If you want unbound to automatically update the root-anchor file for DNSSEC validation"
+ einfo "set 'auto-trust-anchor-file: ${EROOT}/etc/unbound/var/root-anchors.txt' in ${EROOT}/etc/unbound/unbound.conf"
+ einfo "and run"
+ einfo ""
+ einfo " su -s /bin/sh -c '${EROOT}/usr/sbin/unbound-anchor -a ${EROOT}/etc/unbound/var/root-anchors.txt' unbound"
+ einfo ""
+ einfo "as root to create it initially before starting unbound for the first time after enabling this."
+ einfo ""
+ einfo "If using systemd you may also enable the unbound-anchor.service"
+ fi
+
+ # Our user is not available on prefix
+ use prefix && return
+
+ local _perm_check_testfile=$(mktemp --dry-run "${EPREFIX}"/etc/unbound/var/.pkg_postinst-perm-check.XXXXXXXXX)
+ su -s /bin/sh -c "touch ${_perm_check_testfile}" unbound &>/dev/null
+ if [[ $? -ne 0 ]]; then
+ ewarn "WARNING: unbound user cannot write to \"${EPREFIX}/etc/unbound/var\"!"
+ ewarn "Run the following commands to restore default permission:"
+ ewarn ""
+ ewarn " chown root:unbound ${EPREFIX}/etc/unbound/var"
+ ewarn " chmod 0770 ${EPREFIX}/etc/unbound/var"
+ else
+ # Cleanup -- no reason to die here!
+ rm -f "${_perm_check_testfile}"
+ fi
+}
diff --git a/net-im/fractal/Manifest b/net-im/fractal/Manifest
index 431df91c4e77..9ea2443771b5 100644
--- a/net-im/fractal/Manifest
+++ b/net-im/fractal/Manifest
@@ -1,3 +1,4 @@
DIST fractal-14-crates.tar.xz 54106720 BLAKE2B 62d91fa524f5ef5d312dc3fa1a87ae598d4575d23a9561940309fead4761321737b561f8f7f95036923f463e5d6bebf27337e7a34aee5b18f93dd4cb4499bb8f SHA512 ee01d6681889d64459a469f80be67394a6c98d6708aa13a50a7fb264c8b51a136e5c6045caf3aa6360c1dce241c00a87efbecef20afb9cc67d8fe56f21c62004
DIST fractal-14.1.tar.bz2 2170717 BLAKE2B ef25f36fb289d22973a3e4d1094a5e84e74740401ec866e0340d19b632b23282e5a650d77295ab57438c790761bb3518eaa57a655b2c8f5d0edac4a710ae74c4 SHA512 6b53760f19c01ed56da4da0ae265f36fd6e6b1c72da52fe03a3c7e039493fb86aa38c1e0c06aba2b6ab9fa1a326e522a5cb61adb152be64f6d3dcaa6df9c7015
-DIST fractal-14.tar.bz2 2170436 BLAKE2B 4dee4adbaa1dab72ad1b61f73fa690e508897322ad492914560421cffcedc2f014a82bd49abf79566cd37ec132a7995beb40a95ce4e78a427151071725079a7e SHA512 44104c6ead57a0d1e75c31a93e03c4a5f62984977bd5f3683a2198a99005e9939a2a70ad5e6c3d83da4130039f7a65cb65020c14925ce7569d0d2a1b8dc0f69d
+DIST fractal-14.2-crates.tar.xz 52818320 BLAKE2B 3701fbf7aa68c6025f221ba9701f02699119e918f1d0a160b73d5598178e436ca3f46224286fef27a89d30a7844f4f2eb0a1102db642a858a5208db2046562ad SHA512 b3045b462b277d022f34a57fd5bc4b15e41b8833187fe42069253ca3d8101bb5f0c26935fcb4f4e39a68033af3738609b482c028b3c43c7fb242ceb54ca5c776
+DIST fractal-14.2.tar.bz2 2170651 BLAKE2B d44f0108041f1a1438daec99c812eb56518e1afff0bf909e411430ddde1f52a0c1df1e23764c5be4ffc3acf0d8f577d891d1f5bce255876e32a6f56cf65a6e90 SHA512 34508c5f6044fff4521e91509096efb629204add0ad99dbc07d12c5c33c8e148fe4b40eaa5419b6048c86bca889fb2f3706f37edecf691fe8e51066e678584ce
diff --git a/net-im/fractal/fractal-14.ebuild b/net-im/fractal/fractal-14.2.ebuild
index 6f9ef3904d57..1e922d7766cd 100644
--- a/net-im/fractal/fractal-14.ebuild
+++ b/net-im/fractal/fractal-14.2.ebuild
@@ -5,12 +5,12 @@ EAPI=8
CRATES="
"
-RUST_MIN_VER="1.93.0"
+RUST_MIN_VER="1.96.0"
inherit cargo gnome2-utils meson
MY_P=${P/_/.}
-CRATE_P=fractal-${PV/_/.}
+CRATE_PV=14.2
DESCRIPTION="Matrix messaging app for GNOME written in Rust"
HOMEPAGE="
@@ -23,7 +23,7 @@ SRC_URI="
"
if [[ ${PKGBUMPING} != ${PVR} ]]; then
SRC_URI+="
- https://github.com/gentoo-crate-dist/fractal/releases/download/${PV/_/.}/${CRATE_P}-crates.tar.xz
+ https://github.com/gentoo-crate-dist/fractal/releases/download/${CRATE_PV}/fractal-${CRATE_PV}-crates.tar.xz
"
fi
S=${WORKDIR}/${MY_P}
diff --git a/net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild b/net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild
index 3f99da3a8416..d30ae820aecf 100644
--- a/net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild
+++ b/net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild
@@ -24,7 +24,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="dbus enchant +fonts screencast wayland webkit +X"
CDEPEND="
diff --git a/net-misc/ntpsec/Manifest b/net-misc/ntpsec/Manifest
index 55fbccb2b616..2566e21450a2 100644
--- a/net-misc/ntpsec/Manifest
+++ b/net-misc/ntpsec/Manifest
@@ -2,3 +2,5 @@ DIST ntpsec-1.2.4.tar.gz 2736913 BLAKE2B fcff3460c7676b08b18dfca3fc6a67a4788682c
DIST ntpsec-1.2.4.tar.gz.asc 833 BLAKE2B e8c1c2a94e19ca9746d68cd2d0ef56345773cc0dfc84168b6e0451eec78476d275dbd66cfd28c14333a7aa8ddb2d895459aff755dfd1106347dac8faef2cb24a SHA512 001f27bb418863b265b6ccab01be584a6941be4e4426fa1deca420833bdd5792ded983d06deb2b7352dccf051033882403c5ac2d81d20deaa5e4a0542e1a95d8
DIST ntpsec-1.2.5.tar.gz 2753014 BLAKE2B ef8106e3748e89d7d2ffc512d98a9d2950c66e074e45bd6fb36c948b62c1dff772d339545ece6aaad08776642935290129119bc1ae3d8a8af9c2d1268b977879 SHA512 52f1c993616c5fbadea6732b65949dd2ec5a03d441d48ec2ae415e3bdb1baba06c8d21b2bd3b20c377ef82d06f3e6d5fe7bac961c41e7dadc3d7cbd4c6bf94ab
DIST ntpsec-1.2.5.tar.gz.asc 833 BLAKE2B c14baedbd24dd2c174e440b2fe7fa451286805f3d87805fd5b933793ed40c04b00502de572d8436c2ed5f9c78f50433bd21b489fe6f89378c58220ef64049bf8 SHA512 991c2983d53cadf906783b0f5567b230745f3d863fc68e1dc57de10811246f3d3e59c3369e9ee563e06d216a0c859e30ad933583f4652ebd3a92bb43bafe30d0
+DIST ntpsec-1.2.6.tar.gz 2775983 BLAKE2B 48c5bc6afa5dc37d84ba7efb6bffb8f28e3c068a0bad8d6f6983ad1b4e32654b5e6c7a78c3884d1b59a1b4082cced4046fd721fe9a647700486cf37a34734a63 SHA512 475783d83401b8819cba318ec964458123827caed72d9479e3e3e460613dbd72120333e37fc6c8a6cbcff4cb89eae91f95ba67bd3a045b7edd1bffdb225b7fc4
+DIST ntpsec-1.2.6.tar.gz.asc 833 BLAKE2B 19af5936c15ebda02d5ec17d8b142d0d53032324c1f566f1186a0a3c801ab6fbfce1aeb7ea5e62003fb67eb19b9bd780715a047b72571c298e60d4c0067c94cc SHA512 ca405ed5ef3ce27b348bbe23220c9a6058b5c210c19e06a33c7debd706735f53f02f144ea1ccfdbcc771edaadb1d47c1de37e201ea77de8db40e7cbd2ca18fde
diff --git a/net-misc/ntpsec/ntpsec-1.2.6.ebuild b/net-misc/ntpsec/ntpsec-1.2.6.ebuild
new file mode 100644
index 000000000000..032ebeb6ecdb
--- /dev/null
+++ b/net-misc/ntpsec/ntpsec-1.2.6.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517="flit"
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE='threads(+)'
+
+inherit dot-a distutils-r1 multiprocessing waf-utils systemd
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/NTPsec/ntpsec.git"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/ntpsec.asc
+ inherit verify-sig
+ SRC_URI="
+ https://ftp.ntpsec.org/pub/releases/${P}.tar.gz
+ verify-sig? ( https://ftp.ntpsec.org/pub/releases/${P}.tar.gz.asc )
+ "
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
+
+ BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-ntpsec-20260731 )"
+fi
+
+DESCRIPTION="The NTP reference implementation, refactored"
+HOMEPAGE="https://www.ntpsec.org/"
+
+LICENSE="HPND MIT BSD-2 BSD CC-BY-SA-4.0"
+SLOT="0"
+
+NTPSEC_REFCLOCK=(
+ oncore trimble truetime gpsd jjy generic spectracom
+ shm pps hpgps zyfer arbiter nmea modem local
+)
+
+IUSE="${NTPSEC_REFCLOCK[@]} debug doc early heat libbsd nist ntpviz samba seccomp selinux smear test" #ionice
+REQUIRED_USE="${PYTHON_REQUIRED_USE} nist? ( local )"
+RESTRICT="!test? ( test )"
+
+# net-misc/pps-tools oncore,pps
+DEPEND="
+ ${PYTHON_DEPS}
+ dev-libs/openssl:=
+ dev-python/psutil[${PYTHON_USEDEP}]
+ sys-libs/libcap
+ libbsd? ( dev-libs/libbsd:0= )
+ oncore? ( net-misc/pps-tools )
+ pps? ( net-misc/pps-tools )
+ seccomp? ( sys-libs/libseccomp )
+"
+RDEPEND="
+ ${DEPEND}
+ !net-misc/ntp
+ !net-misc/openntpd
+ acct-group/ntp
+ acct-user/ntp
+ ntpviz? (
+ media-fonts/liberation-fonts
+ sci-visualization/gnuplot
+ )
+ selinux? ( sec-policy/selinux-ntp )
+"
+BDEPEND+="
+ app-alternatives/yacc
+ >=app-text/asciidoc-8.6.8
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+"
+
+WAF_BINARY="${S}/waf"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ elif use verify-sig ; then
+ # Needed for downloaded waf which is unsigned
+ verify-sig_verify_detached "${DISTDIR}"/${P}.tar.gz{,.asc}
+ fi
+
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${PN}-1.1.9-remove-asciidoctor-from-config.patch"
+ "${FILESDIR}/${PN}-1.2.2-logrotate.patch"
+ "${FILESDIR}/${PN}-1.2.4-pep517-no-egg.patch"
+ "${FILESDIR}/${PN}-1.2.4-s390x-tests.patch"
+ )
+ if ! use libbsd ; then
+ PATCHES+=( "${FILESDIR}/${PN}-no-bsd.patch" )
+ fi
+
+ distutils-r1_src_prepare
+
+ # Remove autostripping of binaries
+ sed -i -e '/Strip binaries/d' wscript || die
+ # remove extra default pool servers
+ sed -i '/use-pool/s/^/#/' "${S}"/etc/ntp.d/default.conf || die
+}
+
+src_configure() {
+ # endianness configure test fails otherwise
+ lto-guarantee-fat
+
+ local string_127=""
+ local rclocks="";
+ local CLOCKSTRING=""
+
+ for refclock in ${NTPSEC_REFCLOCK[@]} ; do
+ if use ${refclock} ; then
+ string_127+="$refclock,"
+ fi
+ done
+ CLOCKSTRING="`echo ${string_127}|sed 's|,$||'`"
+
+ myconf=(
+ --docdir="${EPREFIX}/usr/share/docs/${PF}"
+ --htmldir="${EPREFIX}/usr/share/docs/${PF}/html"
+ --nopyc
+ --nopyo
+ --notests
+ --refclock="${CLOCKSTRING}"
+ $(use_enable doc)
+ $(usev early --enable-early-droproot)
+ $(usev samba --enable-mssntp)
+ $(usev seccomp --enable-seccomp)
+ $(usev smear --enable-leap-smear)
+ $(usev debug --enable-debug)
+ )
+ python_setup
+ cp -v "${FILESDIR}/flit.toml" "pylib/pyproject.toml" || die
+ waf-utils_src_configure "${myconf[@]}"
+}
+
+src_compile() {
+ waf-utils_src_compile --notests
+
+ ln -svf pylib build/main/ntp || die
+ cd build/main || die
+ distutils-r1_src_compile
+}
+
+src_test() {
+ cd build/main || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ "${EPYTHON}" "${WAF_BINARY}" check -v -j $(makeopts_jobs) || die
+}
+
+src_install() {
+ # Install heat generating scripts
+ use heat && dosbin "${S}"/contrib/ntpheat{,usb}
+
+ # Install the openrc files
+ newinitd "${FILESDIR}"/ntpd.rc-r3 ntp
+ newconfd "${FILESDIR}"/ntpd.confd ntp
+
+ # Install the systemd unit file
+ systemd_newunit "${FILESDIR}"/ntpd-r1.service ntpd.service
+
+ # Prepare a directory for the ntp.drift file
+ keepdir /var/lib/ntp
+ fowners ntp:ntp /var/lib/ntp
+ fperms 770 /var/lib/ntp
+
+ # Ensure statsdir exists
+ keepdir /var/log/ntpstats/
+
+ # Install a logrotate script
+ insinto /etc/logrotate.d/ntpd
+ doins "${S}"/etc/logrotate-config.ntpd
+
+ # Install the configuration file and sample configuration
+ insinto /etc
+ doins "${FILESDIR}"/ntp.conf
+ doins -r "${S}"/etc/ntp.d/
+
+ ln -svf pylib build/main/ntp || die
+ distutils-r1_src_install
+ waf-utils_src_install --notests
+ python_fix_shebang "${ED}"
+ python_optimize
+}
+
+pkg_postinst() {
+ einfo "If you want to serve time on your local network, then"
+ einfo "you should disable all the ref_clocks unless you have"
+ einfo "one and can get stable time from it. Feel free to try"
+ einfo "it but PPS probably won't work unless you have a UART"
+ einfo "GPS that actually provides PPS messages."
+}
diff --git a/net-misc/ntpsec/ntpsec-9999.ebuild b/net-misc/ntpsec/ntpsec-9999.ebuild
index 94de6896eb47..032ebeb6ecdb 100644
--- a/net-misc/ntpsec/ntpsec-9999.ebuild
+++ b/net-misc/ntpsec/ntpsec-9999.ebuild
@@ -118,8 +118,8 @@ src_configure() {
CLOCKSTRING="`echo ${string_127}|sed 's|,$||'`"
myconf=(
- --docdir="/use/share/docs/${PF}"
- --htmldir="/use/share/docs/${PF}/html"
+ --docdir="${EPREFIX}/usr/share/docs/${PF}"
+ --htmldir="${EPREFIX}/usr/share/docs/${PF}/html"
--nopyc
--nopyo
--notests
diff --git a/net-misc/teamviewer/teamviewer-15.73.5.ebuild b/net-misc/teamviewer/teamviewer-15.73.5.ebuild
index ef0649fb02c5..3933cd2cdd4b 100644
--- a/net-misc/teamviewer/teamviewer-15.73.5.ebuild
+++ b/net-misc/teamviewer/teamviewer-15.73.5.ebuild
@@ -128,7 +128,7 @@ pkg_postinst() {
ewarn "a session initiated by a display manager." #799137
optfeature_header "Install one of the following display managers:"
optfeature "an example display manager" x11-misc/cdm gnome-base/gdm gui-apps/gtkgreet x11-misc/lightdm \
- lxde-base/lxdm sys-apps/qingy x11-misc/sddm x11-misc/slim x11-misc/wdm x11-apps/xdm
+ lxde-base/lxdm sys-apps/qingy gui-apps/sddm x11-misc/slim x11-misc/wdm x11-apps/xdm
if [[ -z ${REPLACING_VERSIONS} ]]; then
elog
diff --git a/net-misc/teamviewer/teamviewer-15.81.5.ebuild b/net-misc/teamviewer/teamviewer-15.81.5.ebuild
index 75dd376a83ad..8c60589a2610 100644
--- a/net-misc/teamviewer/teamviewer-15.81.5.ebuild
+++ b/net-misc/teamviewer/teamviewer-15.81.5.ebuild
@@ -127,7 +127,7 @@ pkg_postinst() {
ewarn "a session initiated by a display manager." #799137
optfeature_header "Install one of the following display managers:"
optfeature "an example display manager" x11-misc/cdm gnome-base/gdm gui-apps/gtkgreet x11-misc/lightdm \
- lxde-base/lxdm sys-apps/qingy x11-misc/sddm x11-misc/slim x11-misc/wdm x11-apps/xdm
+ lxde-base/lxdm sys-apps/qingy gui-apps/sddm x11-misc/slim x11-misc/wdm x11-apps/xdm
if [[ -z ${REPLACING_VERSIONS} ]]; then
elog
diff --git a/net-misc/teamviewer/teamviewer-15.82.6.ebuild b/net-misc/teamviewer/teamviewer-15.82.6.ebuild
index 75dd376a83ad..8c60589a2610 100644
--- a/net-misc/teamviewer/teamviewer-15.82.6.ebuild
+++ b/net-misc/teamviewer/teamviewer-15.82.6.ebuild
@@ -127,7 +127,7 @@ pkg_postinst() {
ewarn "a session initiated by a display manager." #799137
optfeature_header "Install one of the following display managers:"
optfeature "an example display manager" x11-misc/cdm gnome-base/gdm gui-apps/gtkgreet x11-misc/lightdm \
- lxde-base/lxdm sys-apps/qingy x11-misc/sddm x11-misc/slim x11-misc/wdm x11-apps/xdm
+ lxde-base/lxdm sys-apps/qingy gui-apps/sddm x11-misc/slim x11-misc/wdm x11-apps/xdm
if [[ -z ${REPLACING_VERSIONS} ]]; then
elog
diff --git a/net-misc/tigervnc/tigervnc-1.16.2.ebuild b/net-misc/tigervnc/tigervnc-1.16.2.ebuild
index 81a05d670d0d..69e766345b7f 100644
--- a/net-misc/tigervnc/tigervnc-1.16.2.ebuild
+++ b/net-misc/tigervnc/tigervnc-1.16.2.ebuild
@@ -252,7 +252,7 @@ pkg_postinst() {
elog
}
- local OPTIONAL_DM="gnome-base/gdm x11-misc/lightdm x11-misc/sddm x11-misc/slim"
+ local OPTIONAL_DM="gnome-base/gdm x11-misc/lightdm gui-apps/sddm x11-misc/slim"
use server && \
optfeature "keeping track of the xorg-server module" net-misc/tigervnc-xorg-module && \
optfeature_header "Install any additional display manager package:" && \
diff --git a/net-misc/tigervnc/tigervnc-9999.ebuild b/net-misc/tigervnc/tigervnc-9999.ebuild
index 95affcc6f664..c4480909eaf5 100644
--- a/net-misc/tigervnc/tigervnc-9999.ebuild
+++ b/net-misc/tigervnc/tigervnc-9999.ebuild
@@ -252,7 +252,7 @@ pkg_postinst() {
elog
}
- local OPTIONAL_DM="gnome-base/gdm x11-misc/lightdm x11-misc/sddm x11-misc/slim"
+ local OPTIONAL_DM="gnome-base/gdm x11-misc/lightdm gui-apps/sddm x11-misc/slim"
use server && \
optfeature "keeping track of the xorg-server module" net-misc/tigervnc-xorg-module && \
optfeature_header "Install any additional display manager package:" && \
diff --git a/net-misc/wstunnel/Manifest b/net-misc/wstunnel/Manifest
index d57637868887..6c48c787f6a8 100644
--- a/net-misc/wstunnel/Manifest
+++ b/net-misc/wstunnel/Manifest
@@ -1,4 +1,4 @@
-DIST wstunnel-10.7.1-crates.tar.xz 31800340 BLAKE2B 93d95d6781d98126c266a2506623c81fc13b500007b15465ea77b140cdea40ca390262af9bc9695b5fd2e65d7cf19b6b9446697b5809ec1ff2b3832e00f72fe9 SHA512 a0c49a6fecbe0c2278ac964b947c123bbb004aa2d5aa5ba6267d89dc6100642722ca115665160f0d7d0bf23d061068cd58ab51c560942275289c85a486b6ff81
-DIST wstunnel-10.7.1.tar.gz 1754391 BLAKE2B d6690fe1c685666ea9738584cf3f60716dfbcb967d7c3afee2a64da3ff134ee1b55779174cf516d9f550dcc1796f0dbb23d927856f4789f25588d96a7cca00be SHA512 f2d53c845a2b1f5134d88cdf8ea54ab1decaac212d7ca2a341a7b9adc1ae7ee8bdd0b7147a884876937960681a4c659ec35df208861a9c1593d51d401b18788b
DIST wstunnel-11.0.0-crates.tar.xz 31953448 BLAKE2B f4b6e547fedb4a08fea38122bfbaccbf387a4ce50e2fd874e8a86ee87f86eceae60200d0be501759df9f78fcbab6fb9f69f9a16a8863a1acef8bf52ca359f5d1 SHA512 257fe3586cc1abbdaf9afef4731d04db84fd9df907d124b872aded94ddd4535b6f9456f7c5c010c04d10802f7934b4923cc640f207f2fca9da500f17e84367bd
DIST wstunnel-11.0.0.tar.gz 1748567 BLAKE2B bc23fdb6c8e964b609159ebdd4978456507beaf6cd8f34ad19845da549a2f363f8f2de3abac54386b8572f3b9f5533c6d7d6b21a99540d1dda048eae9ad80f31 SHA512 f9fcceaa8fde6b59fb169d572eee0be65a7fb37b7da76562470529d1f8f9f5883c627146001957fe1e53554c34b1bf839f973b7d7af26e63c90bc66bfde7495b
+DIST wstunnel-11.1.0-crates.tar.xz 32172856 BLAKE2B 3569d26cfa29b3c134e1aac8321d55d1ba4e185e48a528ef0cca5e75144e5010c2d188d259b5da93a5f8a5b637d5329cf4a085245e4f5e7b87eba7cdaf74ee24 SHA512 4f7c091b2c2e1e8c16204aa1e729afc309ad64b0615a80a0d34d079b94f6ac6e679f49a80899f92f7fcbb1d35f226684a061fce445128a710959457aa590fd0a
+DIST wstunnel-11.1.0.tar.gz 1758600 BLAKE2B 366f2a2e22cd87748f5cb2d8274f4a7d5ab72185e2bb956664a196942d6e7883fc56f4f95a2898cabff6a6653e7871ea890688168fbd9d3689687a7f02dff70f SHA512 156f7945af32bfdacaa3541c8060aedfa2be7028464d7d9bf86ca71dcdbc54c169db59b70333c6e46e47155345ae194bb8785fa4e7210423c9ab9815d8d61f7f
diff --git a/net-misc/wstunnel/wstunnel-10.7.1.ebuild b/net-misc/wstunnel/wstunnel-11.1.0.ebuild
index 7baa88f2317c..401714b06894 100644
--- a/net-misc/wstunnel/wstunnel-10.7.1.ebuild
+++ b/net-misc/wstunnel/wstunnel-11.1.0.ebuild
@@ -10,7 +10,7 @@ RUST_MIN_VER="1.93.1"
inherit cargo
# last update of Cargo.lock
-CRATES_PV="10.7.1"
+CRATES_PV="11.1.0"
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"
diff --git a/net-vpn/cloudflared/cloudflared-2026.8.2.ebuild b/net-vpn/cloudflared/cloudflared-2026.8.2.ebuild
index 5df582ecfe3f..6d84e1eb879b 100644
--- a/net-vpn/cloudflared/cloudflared-2026.8.2.ebuild
+++ b/net-vpn/cloudflared/cloudflared-2026.8.2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/cloudflare/cloudflared/archive/refs/tags/${PV}.tar.g
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 arm64"
# "make test" fails since cloudflared-2024.12.1, and fails with network-sanbox
RESTRICT="test"
diff --git a/net-vpn/tailscale/Manifest b/net-vpn/tailscale/Manifest
index ba3ddddd1c0a..3ec2ad5f0dd2 100644
--- a/net-vpn/tailscale/Manifest
+++ b/net-vpn/tailscale/Manifest
@@ -8,3 +8,5 @@ DIST tailscale-1.102.5-vendor.tar.xz 60998860 BLAKE2B a9b6f13dcb9eb2c856e2df3ea4
DIST tailscale-1.102.5.tar.gz 5305367 BLAKE2B b72ec7dd58051923b576099f7b5855713186db15674bbed628ea709cc7c8122d2cb435ac5675dac20564a23830969b3e93310537b57788366d6f442ee486e84a SHA512 b4afe44625248f7028486c0b534c825140ef99623532dcff0c16777433d00bbe90b71630d7ae0ec6734df3c14e06d3852e3daf40aa42e4a1a23766113c8e8df2
DIST tailscale-1.104.1-vendor.tar.xz 62184364 BLAKE2B 3d730508592fcd7a060093a7a8e3f620e315b95d4e7f67564b2f75a591c4e8bc81634349f76249ccd5c3581806fb604629de6fecd6fd91bd6ef40412a2c1e9ce SHA512 a431dccce246591d3cc33155fc8ac30395e1f732c298e70e24c616d74aed2639a083c01f309a0263923e359ab5b4fc185f68ec01e2265cfc066a204501756a49
DIST tailscale-1.104.1.tar.gz 5699898 BLAKE2B 241a4a9c39275d2f79fc4545b6ed2991bc24e697cdc825e6bcabbcd1d9f40bde7ffc4cc7e456eb80a6c185b27d827a368fb542cba2d8411ad933063a691dfb83 SHA512 87328f77f0cebb0adc431e5c84db1946cf48982ae685ffede6ce62bdb2b3cbb351e3bd6c70f94cad68752ac8c6a34f9bcfe06863e5c98dc602dd6fa4c64b260f
+DIST tailscale-1.104.2-vendor.tar.xz 62211920 BLAKE2B b2e5c0e5036c72e8a5e03f1aa7c056ff2449732ca1be2f8c938b1cf6137bc48eba5cf5b5f959460911a8837d53208c2b2ea194f3b92dbf4486fe9b9b07a81ea3 SHA512 b851f6693ea760fc4e35850781b3409e78b804972775699f52dd45ddc36f3a067f86a241520876c7843f1e1e1162f41efc8672d1086a675b94376ed7079670d7
+DIST tailscale-1.104.2.tar.gz 5701083 BLAKE2B d4f6d6bfec94f1ea286b5261c87b5c492e563e7f63433897f0f45e1df5d895eac3e4c269fe234850308323eda88040bc459b7b2ebb07ab853cf4fc750dd34856 SHA512 7280c968a2f0018c54d2e409ef11ee4829887a7813df7ce62d9e660728b9e239bf7d8d907212e8509160801f110f50bc3a2eb233167521e635963e4febfe2cb2
diff --git a/net-vpn/tailscale/tailscale-1.104.2.ebuild b/net-vpn/tailscale/tailscale-1.104.2.ebuild
new file mode 100644
index 000000000000..d2183a4d5f81
--- /dev/null
+++ b/net-vpn/tailscale/tailscale-1.104.2.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module linux-info shell-completion systemd sysroot tmpfiles
+
+# They should be updated on every bump.
+VERSION_GIT_HASH="e26db7a5797683ec99ad1516c40b628c7f2dfd71"
+VERSION_MINOR=$(ver_cut 2)
+VERSION_SHORT=${PV}
+VERSION_LONG=${PV}-t${VERSION_GIT_HASH::9}
+
+DESCRIPTION="Tailscale vpn client"
+HOMEPAGE="https://tailscale.com"
+SRC_URI="https://github.com/tailscale/tailscale/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+
+LICENSE="MIT"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+RESTRICT="test"
+
+CONFIG_CHECK="~TUN"
+
+RDEPEND="|| ( net-firewall/iptables net-firewall/nftables )"
+BDEPEND=">=dev-lang/go-1.27.3"
+
+src_compile() {
+ # This translates the build command from upstream's build_dist.sh to an
+ # ebuild equivalent.
+ local go_ldflags=(
+ -X tailscale.com/version.longStamp=${VERSION_LONG}
+ -X tailscale.com/version.shortStamp=${VERSION_SHORT}
+ -X tailscale.com/version.gitCommitStamp=${VERSION_GIT_HASH}
+ )
+ ego build -tags xversion -ldflags "${go_ldflags[*]}" -o bin/ ./cmd/tailscale ./cmd/tailscaled
+
+ einfo "generating shell completion files"
+ sysroot_try_run_prefixed ./bin/tailscale completion bash > ${PN}.bash || die
+ sysroot_try_run_prefixed ./bin/tailscale completion zsh > ${PN}.zsh || die
+ sysroot_try_run_prefixed ./bin/tailscale completion fish > ${PN}.fish || die
+}
+
+src_install() {
+ dosbin bin/tailscaled
+ dobin bin/tailscale
+
+ systemd_dounit cmd/tailscaled/{tailscaled.service,tailscale-online.target,tailscale-wait-online.service}
+ insinto /etc/default
+ newins cmd/tailscaled/tailscaled.defaults tailscaled
+ keepdir /var/lib/${PN}
+ fperms 0750 /var/lib/${PN}
+
+ newtmpfiles "${FILESDIR}/${PN}.tmpfiles" ${PN}.conf
+
+ newinitd "${FILESDIR}/${PN}d.initd" ${PN}
+ newconfd "${FILESDIR}/${PN}d.confd" ${PN}
+
+ [[ -s ${PN}.bash ]] && newbashcomp ${PN}.bash ${PN}
+ [[ -s ${PN}.zsh ]] && newzshcomp ${PN}.zsh _${PN}
+ [[ -s ${PN}.fish ]] && dofishcomp ${PN}.fish
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+}
diff --git a/net-wireless/gr-rds/gr-rds-0.0_p20250404-r1.ebuild b/net-wireless/gr-rds/gr-rds-0.0_p20250404-r2.ebuild
index 22ed1ae966d6..7079d38f9820 100644
--- a/net-wireless/gr-rds/gr-rds-0.0_p20250404-r1.ebuild
+++ b/net-wireless/gr-rds/gr-rds-0.0_p20250404-r2.ebuild
@@ -44,4 +44,5 @@ src_configure() {
src_install() {
cmake_src_install
python_optimize
+ mv "${ED}/usr/share/doc/${PN}" "${ED}/usr/share/doc/${PF}"
}
diff --git a/profiles/srcux/1.0/linux-gnu/login-manager/sddm/packages b/profiles/srcux/1.0/linux-gnu/login-manager/sddm/packages
index 9a332ea174e6..85d8ec5c61b9 100644
--- a/profiles/srcux/1.0/linux-gnu/login-manager/sddm/packages
+++ b/profiles/srcux/1.0/linux-gnu/login-manager/sddm/packages
@@ -1 +1 @@
-*x11-misc/sddm
+*gui-apps/sddm
diff --git a/sci-libs/mathgl/mathgl-8.0.3.ebuild b/sci-libs/mathgl/mathgl-8.0.3.ebuild
index 079cb92bf8d4..c22c71b7b225 100644
--- a/sci-libs/mathgl/mathgl-8.0.3.ebuild
+++ b/sci-libs/mathgl/mathgl-8.0.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -26,7 +26,8 @@ REQUIRED_USE="
mpi? ( hdf5 )
openmp? ( !threads )
png? ( zlib )
- pdf? ( png )"
+ pdf? ( png )
+ doc? ( png )"
RDEPEND="
virtual/opengl
diff --git a/sci-ml/jiwer/jiwer-3.1.0.ebuild b/sci-ml/jiwer/jiwer-3.1.0.ebuild
index fa8c690b0341..1c6e4b8c795d 100644
--- a/sci-ml/jiwer/jiwer-3.1.0.ebuild
+++ b/sci-ml/jiwer/jiwer-3.1.0.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/jitsi/${PN}/archive/refs/tags/v${PV}.tar.gz
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
RDEPEND="
dev-python/rapidfuzz[${PYTHON_USEDEP}]
"
diff --git a/sci-ml/ollama/Manifest b/sci-ml/ollama/Manifest
index 471740184754..95c44f01c351 100644
--- a/sci-ml/ollama/Manifest
+++ b/sci-ml/ollama/Manifest
@@ -1,3 +1,3 @@
-DIST llama.cpp-b11669.tar.gz 38185755 BLAKE2B 09de52373e9054a4476dcb9b8d80f613f62fe375b7f7f940191caa0415aaa94cbb52450a4ea3d9545885e6f24b957396094801ad9f525ddb6f5affa9b8ba45ad SHA512 1fb1c17d58ffc07aefa6a040d094a440f93997d247d0b825900aa54ee1636065cfb73a051ea750172d641bd747c3f748d88e9f50c6bbf8fb724b7d9df6658c66
-DIST ollama-0.40.6-deps.tar.xz 77648092 BLAKE2B e8e87c098bb15aad0a1366538e2e6f3909069dd460f45b3f1e2a76db632436f24a2bbf1bc463168b94aa8b5b4994e797387ce560a622f4d18bcec0e9b5ebcb4f SHA512 e168c6e1e16482ebfe41ffa9f1794933c5881d49eb7f5ca348df46e909b85df327717979c835232a0782c3d40f2b1cfc6ec2b9eced820417a2d0d18251be7956
-DIST ollama-0.40.6.gh.tar.gz 26687608 BLAKE2B 4465d4b5240188ae63c39a30a730d08a80017efe6941acbdbbf2d3352d69583e012995a93900b5fb9535e1de6c0181f410ab5f1b3d7ac4934efee4b6b2d28d81 SHA512 b93fcfc63ff312e5c1a6895fcd4111c7af9f39f332c9d38c5de07a1ab0769f8e31de8fac1ad6a960a8b22649d5f65db8a71f821da797d999bc446c5ac866d2b6
+DIST llama.cpp-b11738.tar.gz 38354143 BLAKE2B 90f24b357ae8892bfb0a36c9937a7fd5d337c8f06f0da33270796e46d63ba48b11f4df07b5d1cbf0a240d504eb3a5c0568491c8bc67406ace5336f6783ae9b4e SHA512 947be844bace7c6904f6268b9b0348f0418c502802c6aa3622294db0d4d3742674e5048299ae0078aec1151db29291dfbbff393196d1a0c35adecf97d25b2e36
+DIST ollama-0.40.7-deps.tar.xz 77648092 BLAKE2B e8e87c098bb15aad0a1366538e2e6f3909069dd460f45b3f1e2a76db632436f24a2bbf1bc463168b94aa8b5b4994e797387ce560a622f4d18bcec0e9b5ebcb4f SHA512 e168c6e1e16482ebfe41ffa9f1794933c5881d49eb7f5ca348df46e909b85df327717979c835232a0782c3d40f2b1cfc6ec2b9eced820417a2d0d18251be7956
+DIST ollama-0.40.7.gh.tar.gz 26710831 BLAKE2B c2a3688f16e2fb8fff8c2f1c884b3ce5003c03b729aab9e856f65926c8b1fc2f00fb9e54542a0c6f744f795908eea27f307a606f072f74ddce1d54c04826e031 SHA512 45ff1aaa3d19282fc001a4fa0de3f886d538ac08bee9ea7ab1238fa22bc30bc0acced67cdf997e179eff4e33cbe281d62aaeeaeb85f2358fd2c77857ce6801a5
diff --git a/sci-ml/ollama/ollama-0.40.6-r1.ebuild b/sci-ml/ollama/ollama-0.40.7.ebuild
index ec7b217f03da..13d7cf00ec19 100644
--- a/sci-ml/ollama/ollama-0.40.6-r1.ebuild
+++ b/sci-ml/ollama/ollama-0.40.7.ebuild
@@ -8,7 +8,7 @@ inherit cmake go-module systemd
DESCRIPTION="Get up and running with Llama 3, Mistral, Gemma, and other language models"
HOMEPAGE="https://ollama.com"
-LLAMA_CPP_tag=b11669
+LLAMA_CPP_tag=b11738
SRC_URI="
https://github.com/ollama/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz
diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest
index 0ee4067c1a68..f21242ec7d08 100644
--- a/sys-kernel/gentoo-kernel-bin/Manifest
+++ b/sys-kernel/gentoo-kernel-bin/Manifest
@@ -6,25 +6,43 @@ DIST gentoo-kernel-6.12.113-1.amd64.gpkg.tar 333660160 BLAKE2B 0b3a7bfebd1d3ac10
DIST gentoo-kernel-6.12.113-1.arm64.gpkg.tar 301506560 BLAKE2B 11725c23ed4d9826915568844bbc380460dfed343a9dbafe355670979087016cfe83577737d3e5e1c8ad23eb81d86c510d05752a3be9aa740ec8953bdd61b185 SHA512 8eab191559b05955800688af2fccb4111c6aea79c0076e7afad516772af3d03ac74f77649287d90cf1e6c560564d8a76d3a013f4dfb0cc47394469c425f591ff
DIST gentoo-kernel-6.12.113-1.ppc64le.gpkg.tar 74229760 BLAKE2B 416f3f698c762f8b94b4e8de2a42c5806b1850383ca0ab1463854d6035cd9215a94e32b1a0455293c922fe968c882f537e688d4db71bc7b3afa7fa889cee9105 SHA512 8e38cd1baba8eda78520f4339f31686a43f9e3412c3c38585df1bff0e584a7472bdf0f7558b9abe539de468ca60bd3a5739009727688a126f95c02dd5faa3069
DIST gentoo-kernel-6.12.113-1.x86.gpkg.tar 78417920 BLAKE2B be5f36e48395f44c2ac92ae736d36d380ce21cac7ea096f81a0594420e06c834f4edf94caf7abf5818053955faa5944a6e3b485f79b8679ee635f6330ae432b0 SHA512 bc69722bb0991535db09e121c59ba62f02259d6cdaccb6d1d5262b43bd7ca878fad59efa2aafd9d699f3e62ec56d736912a4f4de49225f84ab37aa564d1f83d6
+DIST gentoo-kernel-6.12.114-1.amd64.gpkg.tar 333455360 BLAKE2B 0fde64b0e36b393a2eef2d97d83753f59ea7c55da14e6d792cce28677a5d0b52ed8176292138c6470d83cab886cd5fd1cf56e64b3ed7cc893fa2fa9921ce0976 SHA512 710504a3da3519628b21dd3c276aa86d46495897b65c2c3c57e708b236eaf564efb83bdc010d1061969687a2bd90dc5a43bd60dd8ad81229e10d73590c86f8f8
+DIST gentoo-kernel-6.12.114-1.arm64.gpkg.tar 301434880 BLAKE2B 1d135dca72d845048dfc79e9268a5bba511adfbae99af2519852d498dac24a3428c313c5a3053acbfa319e91b84ef646154c254ceb3eeeab7f516a558475dc44 SHA512 2ec20e242e2e575e26dbecbfd6ae3cd0b8c7b4ed76b832c0642a3677385386be858d7bd8107312c8515c9f4cdc0a76769861ef3a69355aafd6a874493348342e
+DIST gentoo-kernel-6.12.114-1.ppc64le.gpkg.tar 74260480 BLAKE2B 9661c16a8e85154e387cf7d48dc4f64bbe566ccf11d5a58e1449ffb0ba3178df653c06b5b2287084084354a26643ea38f368500404df2e8d1eec2a484d209e41 SHA512 37aeec9906a48174ce26924c4219ad4d443dbe76deb951d66477c4786b207f41a345b9cbf9ff7386b6c7f36d9284e4f4de171fd189171d4ae687721da6a60202
+DIST gentoo-kernel-6.12.114-1.x86.gpkg.tar 78428160 BLAKE2B ca2aea2e33437a5683e0e4613e958a5926d30191472c0e11c75217e1b0f12b21326ca0c509dd3693317ffb7995087a2ed2faa5d7404a87713eb0d9a2834c1478 SHA512 6d6076ee890ab2379485530eb97adba7e20df3b4e25ee72a03f0d5fab25ffa3e646bb55ebc3591c8c2d906b0b55c1409f92e6b50824c6a2974c496145603a366
DIST gentoo-kernel-6.18.57-1.amd64.gpkg.tar 474920960 BLAKE2B 6c051eb90001520ad672d8b83667fe6c7ae1f3d8b5d407a902a60c9f8c30065cbd119509a7969f33f43a099f4772966d4434152d6687addb6b8d9dbf628085e5 SHA512 8d341305f9567ba4e63ff09f3bb4f60f74d34262167b6f0ad7f2ac2a9532ceee6b4bb8f493ccf29469cd27d509f83582708371f8e3e3fa108e4c8a139d3633e5
DIST gentoo-kernel-6.18.57-1.arm64.gpkg.tar 459427840 BLAKE2B aa7218823e57ccf262b693b4008a43ad7160e923ac6a9391a756d8dbba29fb45d604f695f1bc5f14308da7cae9175bdea3f47ffc8f3b337d6ebccaaa92564ae9 SHA512 0cebeba0fc2f1babd49815e06afccdf53fd543c256d32d259d012b6d08a302cee8516d6b101f6c46595a3621ac044caff489515738cf55bfbef31c182d06c06f
DIST gentoo-kernel-6.18.57-1.ppc64le.gpkg.tar 77527040 BLAKE2B 18fcdab2480d44c6849769b31fab71a39913ae4575bca766661b7bc8e8078f7d8657e80b8e866da32490fcbdba06dbbb2600f12da9b0bde997cdf1663f170a3b SHA512 e679f8536ea2c26129dd018a4bd257abadca0adf5f7f15d31d90ddc6bbbf16b5c7b84ca6f31971b5e2e3c52eef50ae2a717263db77a9a4366245c9816c52a3b8
DIST gentoo-kernel-6.18.57-1.x86.gpkg.tar 84459520 BLAKE2B df2c3028ca003765f4416ad062e831caf18d5e3cdb95e541821ef8460438951f009c69f845cec706ea69d42b1b7a67bcacc402c64eb1e12177545100860b3272 SHA512 88bf0e290977b9f36310cdbf7b42625dbe4971db511c3deec766de008f0598696426b334b9bbc731695f18968ad7f0aeba1eff731c4dca2e2b6b555996184375
+DIST gentoo-kernel-6.18.58-1.amd64.gpkg.tar 474839040 BLAKE2B eabcf43eb8518e2629558a642ab86cc1f9a2a01790df0d4b222135341a8cb5bbf0830d82b184788c63ee84aeafd0a4676df9dd33bd6b5b02595bd7ad96df1e5b SHA512 9eb70c749105548ba0da799a6c3ec8ac701ede2f9945169a28e86b41dc929266b82337b6c883adfff0495644e184a048ecc1cc66dda4ddfa49622b43f5b10509
+DIST gentoo-kernel-6.18.58-1.arm64.gpkg.tar 459438080 BLAKE2B a27972c6ce523b61b6565a0eb20160685512a7903993b6917a58cadca1ae61ef13159641d63b302a57eda40350724e9036510f5c5fecbb74410a493f4596fb64 SHA512 8e33d385015418080d67fcb7b7b755814f3f901fc785b7c3b858e0047df4212ee1e6d1bc77952afa714855465f65bd11f0392b295ad14f7c01b082b101c6344b
+DIST gentoo-kernel-6.18.58-1.ppc64le.gpkg.tar 77527040 BLAKE2B de51b115f347eaafb489aea6f22d26b6a4ae66016e6444a38e335e6ed1a6f3e4d4e0d673d99babeb96cc9633afd2e760fbb96fd2a22f68fcdc5cc8c89483dac0 SHA512 b111544f2b0e1d905daf3615b926c885e3843c772f440233e2e34f9d88a46e4dd153afa68c9747f1dfdac08de7af95a3d1c633152334308386eb8aba89671909
+DIST gentoo-kernel-6.18.58-1.x86.gpkg.tar 84439040 BLAKE2B 2381baf71bb17b44ff623cede98e2d1f8f9ebd569066d512ca2c03b5bc180b359d2564194ceb20aabe66074f1de536afae2792ea94161bddf398149e033df081 SHA512 2182943f047ea5d719777ba9dce8e60df8cbf1748bf720b164befc43390965ef80fde6c1562610e35313bb654fde14f885576fcef468654023e4e15c618ef1ea
DIST gentoo-kernel-6.6.159-1.amd64.gpkg.tar 297308160 BLAKE2B e48a8d468f5d84e7844e8c4894836a13727e90e32a176ca702466800bbbffac47a4892de0364a5b715888aa1915af179c578d10fe57720e9763155bc3d37e950 SHA512 993a9bd9647767b13221bc35d618fc56fdb65542ea07cc01464b220e080c5c8153aa77a560db3424ae13f2c773505eb1d600618b4d2dbe634e536e0862333827
DIST gentoo-kernel-6.6.159-1.arm64.gpkg.tar 265093120 BLAKE2B df527887f043cd9977e5a19575556c51574c21d1e7e8c965744d430c3f30ca2c5c2e4ba88aef6e54efceaf830eff434ed09717b4fcaefc73258fc06ca0dcc2b4 SHA512 3826e7060b87d877bbf40acc197cb6e6f10e9552e988e0a525d8bcb2a4866cb3ede7fb5d9a5eaeb49c9a6051119d280763e69dbcb57da54aa237439ebc28eba1
DIST gentoo-kernel-6.6.159-1.ppc64le.gpkg.tar 65505280 BLAKE2B 875a717ef3cd4307571a2d0f43bdff8b366bbf198e87ad65647a7a8e88b85980ac0ccdbbf24637b7edb3ec5e201ffe362446cc0d8e9da8a3361759a8ad37bf83 SHA512 2051b11a04d6c801e48d527ee3d1b8738c7e21772cae4598e275b253f11792c6facdeafc0c60aafc54be821bcd6af5bc4714e29e743c4937344f2efe03737810
DIST gentoo-kernel-6.6.159-1.x86.gpkg.tar 69345280 BLAKE2B 441b13a0e181c551bdb04d3bf897649f3eb8b5935c6f56789d64e2222242e4170501f943f4deb9bef94336b57b1711254dfd9991a16cc2525afad7bb6296ca5a SHA512 971f68cf32c85d8e6baa7d044496197d3ba68a68dbf496f5d44f6ff3269b9fb6472ef13e87ed391ed0ccebf32ef82b664f69197cb49735f82cab1a516e33c619
+DIST gentoo-kernel-6.6.160-1.amd64.gpkg.tar 297492480 BLAKE2B b2b0e02c57d04025036281162fcb7248c9f49855460db133582faa22091c3d2e2765e89302f7b37ba838dff4adc9740858b25becbafa64228af27f9fe95d7326 SHA512 1d82e12c289ab2f46e6db2f8344aba504f30d13176cf0ff084e1ef31224f7101391d487603ace01c807119cfeba72e7157693ac464c08ce56af877ca2362a157
+DIST gentoo-kernel-6.6.160-1.arm64.gpkg.tar 265226240 BLAKE2B c39d1acc2a42e74694f49d9c56663c28377e99b08a61be42b203ee3a5badf4f68dc7bed5802937c26ded1e649d5ee8846c0f55e7e48e42ccfb14d6fb65a0dfa2 SHA512 180bf61ff16cb866d8cccf21e3e8098f4a077e30f27e0fb2cace17c923a9ef366fde88149abac291ec8f95ddc3fb307e22f487b7bf16010c12b5a596bda67fb3
+DIST gentoo-kernel-6.6.160-1.ppc64le.gpkg.tar 65546240 BLAKE2B 0cd88d6f3eb3ffc0cc17b4f96380efc60157798cf6a8236105543b822b413fe146066d5f57cfda6a990d43fb82b1cdf02e056dd1b452f61dfcd78887d04965bc SHA512 b1409d4914ae8f3386bf21d942e10f7e70b98f00d0fcab235ee49f435f4025a3bbf891c5c8e18291d7064cea9cad73f9701ce1d08cf33b7d2d7d4c0b58e86180
+DIST gentoo-kernel-6.6.160-1.x86.gpkg.tar 69376000 BLAKE2B 2675fb7332fcd717b4e2394d3228a8f21bf751b9a29393e2e73d0eda495d2d717fec6c9fa425c46f33b4a643aadf842a664341f77f8fc4baf318b070aeb9c843 SHA512 7180e75f665cbe1c63c513b6da5bcae7352ef7b0a6829ca7d0a9b98d56f2c09c95ca54a6cfdcb6e8315e9434d535f80da89b2ec80d188b4ec78097113fa5101e
DIST gentoo-kernel-7.2.11-1.amd64.gpkg.tar 371906560 BLAKE2B 49518fc2a391332b56ee0b9be1f75fccc01d7993b5b20dee8f14d1233da7eb835d88e5e4d37c7fd1697d078daa2356888503c34cfd9da58a635806ed6986fc13 SHA512 1ef220a4a8469cd74fdfa161d19940bb2cbddbdaa86b3a794d9371e76e838a1aa6068b75e5765ec09107a27aa02557d84f3f4cc6548d6301e050fec49d9d3559
DIST gentoo-kernel-7.2.11-1.arm64.gpkg.tar 342886400 BLAKE2B a78949237f33cf5dfbc6213ce2e66a85dacf8563b11695a23f9d1eca91e8e32a2d7c2584d12695e37dc00cd4f02711905ea45607b11444bd35fe4bf790599781 SHA512 7d4aa00ce3a9e1da9f6002ede24f478e2ea8b94f02ba435d4769b2fdad4ce74afc50eaefde53a94420cf8b33cde76317bb59a89047dc696204faf5023370728c
DIST gentoo-kernel-7.2.11-1.ppc64le.gpkg.tar 80199680 BLAKE2B 9a07ec8abb35835c57db0f19d4d8474bfefadfce420a185cefddf88e5b70c52d1c8e3a9ed64b437680e2aeefb5207450c8eabf098a58775c5fa3a43c9de64faf SHA512 894eecd4a858fc356294cf579f76224728c8274a0fee286661275e5ea8f90b4fb5fcf268c20fe19a6477c82414040c59be15aa7f21dc0813e68abf4cb873886b
DIST gentoo-kernel-7.2.11-1.x86.gpkg.tar 88760320 BLAKE2B 376ffb81ef59917369a1591b42a2fcf9371b3778d54f3590ec060cbbd96af8dd8392e459c6627f87b085b423465a57788dfd4988d138cfc3c882d4b8e1835be7 SHA512 320f7e61e00b4a38769c3bdb267b4f0f68e8ef31acdfab3d8d86f4dcd03a7ab31de796f5c017b2e5d4df0ec26188144a8e15188d3eb4ddb41ce0b3e0ae78f7dc
+DIST gentoo-kernel-7.2.12-1.amd64.gpkg.tar 371968000 BLAKE2B 214d8532b15a08d2e4b84a508dedb4e28ee90b5ed80f8f56b221335e64eb6cc43de2aa4ef0b9aa08e18f3859e8858233101507a48aefe0cdea493ecf11b51659 SHA512 5133ebbd4bf87e0c3d52831ea67b3e98329ad84a9182110b92b34da60635c8dfb23fc11e320ddd27b39805e2567308796889d6a319a2815a2972f20e723e5ad1
+DIST gentoo-kernel-7.2.12-1.arm64.gpkg.tar 342947840 BLAKE2B ad8ee3ea9c931f9b873830b077652d65a29392e0dd6198482460bef1647889949ee87b391d11373bfaaa27214db9153d794b15edcfe338c88c5c0286b1b1eea5 SHA512 772ab8728cea91e8a47f9d44e165b7f8d4bf8444bdb4406ff5b0c4891110baa3a1693d081661f729be6e501ea75c0ce054cb3267ac9ca51ee8329dfa8697e867
+DIST gentoo-kernel-7.2.12-1.ppc64le.gpkg.tar 80199680 BLAKE2B ed6ef9217557e69044a8d3684eb3a802e5534fe4d59bd36c8b86e29e8d45a928f985fa80ad6cb5ec4b6729cdd90d522eea0a52d1b954b7d3822259c1784de280 SHA512 ee8b58688bb8d11e3a90e05b25a6db23ef03b337d530c386c2238d2edf66ef5980a86690c2edbf373544d1f5ef579ff606bf47af78c3241b499e5ccb00d9da9c
+DIST gentoo-kernel-7.2.12-1.x86.gpkg.tar 88760320 BLAKE2B f9dee936206f2d82f232d97aa3f1e51968d243b7a63ee0145b0de33d8b8acf90faf256d165fbce63de748a0e098b90114bd3290a81a11735724202bb8340f234 SHA512 ae38c6258b0477c13e7176786683dc1291250b78898c300ac2e74339f73ea27d9f77262436f3129a1ce4db2ee7ff0c98754940ccbfe6b6bf1d65288fcb3731ee
DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b3d535c45e44c2e541bd0928530a3b62de6385dd4e4726ebbedcc0a871d4f3ffb4105b9f1f6d8ed7467f5688e SHA512 6ed2a73c2699d0810e54753715635736fc370288ad5ce95c594f2379959b0e418665cd71bc512a0273fe226fe90074d8b10d14c209080a6466498417a4fdda68
DIST linux-6.12.tar.xz 147906904 BLAKE2B b2ec2fc69218cacabbbe49f78384a5d259ca581b717617c12b000b16f4a4c59ee348ea886b37147f5f70fb9a7a01c1e2c8f19021078f6b23f5bc62d1c48d5e5e SHA512 a37b1823df7b4f72542f689b65882634740ba0401a42fdcf6601d9efd2e132e5a7650e70450ba76f6cd1f13ca31180f2ccee9d54fe4df89bc0000ade4380a548
DIST linux-6.18.tar.xz 154309096 BLAKE2B b94b7b9bf18aca0c3e50baf79b009a1448fc6cd9c3ee019f641cc247dcf53a4abef4274ee0608ad8cd4943af69854363a95d26e117ff23620bb07dccb158859f SHA512 88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0
DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f9844a6c4db3e1fd461c93ce1ccda650ca72dceb4890ebcbbf768ba8fba0bce91efc49fbd2c307b04e95665f2 SHA512 458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35
DIST linux-6.x-sha256sums-20261015.asc 254444 BLAKE2B fb7843a33a6cd0a9754584fd5e2f457b920272eb45ec276111e5abb694e61e9bd21aa7df23886afc6f3b21b4199000f26edc4b105b377939fbf1e65c689e6b98 SHA512 f15b0ce4e7bec0e6ea9e1d70e5d8530aa8bd75a8213a7ecafbb07ee5292f3fc84b662c9e46af1d6963158186507606c048eb571cbdb2808b4a095a0aba178c6f
+DIST linux-6.x-sha256sums-20261021.asc 255471 BLAKE2B fc99332d5a7dea5cc11fefc47c853c4ee456956e60ebe6a3028f32bd4f21e75bc08b4619c53ae93e28201730a0f4bc07757ca8ca569f1d3845afa1a0804ecfa3 SHA512 98b87460ce3fdd1133c875419fa848618d9e02d9aef7a279d3b702ebb954afa89feb4f8bc5e316cd448a3fbc0b8cdaaaae5c08663f9dbd4f417dc5c75904b5bb
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261015.asc 14555 BLAKE2B ced3a0e412b1a07fc918ea42b6ccee91859a4e6d5f4a94408e86a7b3875a09d72b8312b5fd7c6ce22ad8e6d3d51bf20def1c3c064bb4d07cfc99f37b3df91245 SHA512 e36a0f0cff2c2eed4ad95ac91831f5617cba9f69a8262860e959f2dac891370f2a5259fda1404be82eda1215984341dfbe80df5a33b68ff1109bb247a38a9939
+DIST linux-7.x-sha256sums-20261021.asc 15217 BLAKE2B 45e2051163c00a9583f849ba7c4ae21a05e003048f194f9c5f0ba5dd0bb5c3b75585e23183ab77ab862255092d513220f808fdade03d8f80aafc29cf9acf0ae5 SHA512 04cb3f28f2a8a198e6933ad1e3a4647a81ec10b49a490fb0fcb67f50ec83e5ad227504eae2cb65b5ca0fdb61e27912b609728f50bf4f807e8f5ebae15c137646
DIST linux-gentoo-patches-6.1.178.tar.xz 14432 BLAKE2B fc278094f85f58b7aba5c3334503114d28aead086a1e62499111283f0410c02bc9db7f5187975fcf2a793a5ef32e323b9907bbd9e0fb4c0834dc1a823f36af52 SHA512 ae0606ab52f8d66f49cac198aada1cbcced465d8ae43e09ef02cee149125570e09eadfacc07f9ec0ad3b20b365df7b9718a478252771f7c6e09fecda6f701096
DIST linux-gentoo-patches-6.12.97.tar.xz 17192 BLAKE2B e0f09dd8ef2e6ebce9adcc2c050cb7e2c7ae08188e99635d3b541c6deca5bea792f4ec2c8d0c0dbc648b0c1f227b54a95d8d807a43859b3bf1b5f57767af2113 SHA512 af6b182d1e7661c35c215f4da63c8ab53b1ffffa7818a266b4c5639ed8d03428d050f1045d02e885c1b9bdc9fb2464c3f384dcd55d7536eddf2b90ffe1f8c530
DIST linux-gentoo-patches-6.18.42.tar.xz 10856 BLAKE2B 8d9de53163c26980f2097eac090f8add2f0f22707824c25493d24d53cc82ef5bc24dcbc7e1e324010315bd3cd05cf2abdd36c536f1457b311cc5208a1a49575d SHA512 01f3020aa34f0ee29c37473344f6dfe0180a12d20834f9c935575b98092b1c6ddd6c563aaef9e4ce6f14116e5d7386d2203f120d1c680ff617f581c867d4544c
@@ -32,6 +50,10 @@ DIST linux-gentoo-patches-6.6.145.tar.xz 39848 BLAKE2B 46a5473d9d056b691af2bcda3
DIST linux-gentoo-patches-7.1.9.tar.xz 10624 BLAKE2B 4b502aed968239f52321da548b257b2a06d4e3cf520090d7aa53dbbf77ef5cc9e64d1bb209389f1c51e48c5953666470186aaaa55db378cb34940ce492693271 SHA512 1d2d466b005cc7537aad1e8222411dad8a86bb82c185f139a6972f8354b47f758fb8555ef04b2217cd082db5b1852ba00b5a5eb0673a57c6423dacbe606c7d39
DIST patch-6.1.190.xz 8545036 BLAKE2B 7274d34639907c7046c0b0c3a0393237c2029b6ace1649988d2300595476efd6518d56012c5ec959f305e4d5aad0b096512421936f31a33bd8764668947aa357 SHA512 57dbccc1f17780b006c6220d4134fd52b4c90bef04d0103e4ad3f07ba730bae6c04b0cbc3d6cc160d60803b75f48fa3b3b9895b9b18cb96a4e97b1e32ef0c032
DIST patch-6.12.113.xz 6689048 BLAKE2B 609315b7d6a35740264de198d74d15590699bcbea961498447dfa4ad3dfbd2456d46acc53c67e01f3273f6c0b598c27bb9bfeccf38dde683e07526565996d0ce SHA512 5deb2c19be8ae04054ae5b8071c70bab134a10d1af5356cd415ae6b3930822b0667a749bef3306c37d4b23a9a8cec3dc150f3a7813c04f188d3ab08512066e7e
+DIST patch-6.12.114.xz 7053696 BLAKE2B 34bba5dc19d612d689641a79ecedf2fcdf93c056035dbd61f3dce7fceeef609032b56c6954d25ec5414cbb44242f419440693d2e936927d37d78d01202eb68cf SHA512 e9e101066d5903322db14106aaab0d965586d43d1cde6af8595bf2209f49fd40917799afc686c5afde86edaf4c4c2660d9123d6eb717c1b13474d3d2c099f1c7
DIST patch-6.18.57.xz 4853352 BLAKE2B bbba2577501892839aec780373bebdcce4519cc57dfbb0884f1f445acfc8bc7652e734a902bb13d7040c5d81257b3cf0f8b8eb1d7ef2e4187edd2bbe0e2ce7a9 SHA512 893f32e4eae9ebe826222876b846b7c0ffc7d19d1e2e5cd837d4af7c29431d549fdf7c3485f03effc64668d7d07d7271210862a8ca0f0bbf9db5b248fd0f1e06
+DIST patch-6.18.58.xz 4871040 BLAKE2B f1777cc10ee5db95f35e1138a01331e77a88b85cf9ac768c30596df6388977718262a21d681ea7a92b7c3cd16715cc1eb54c53026ae43ee2d3f20c85f0c0fc1f SHA512 71fb2885de97bc9eee53c71d0d891822c3b101fefeed1251838e94586b1f46cb3062c600c5edb161a6df2d5f125c4209aab478f34bc78ad972704800d270a9b3
DIST patch-6.6.159.xz 7442892 BLAKE2B 06cd919a71b0483f8732f32ac8604b47e210976b8acacffd3ebe10b7f15bb9fa4143057ae4e109a23373d5dbe34ec3389bd7706776630e1e9a1f94f9368a888e SHA512 f40980ef05d3221b4c30036e6b529af9cc3ff8f497647dc244e48aeabb23613c73918bca63f21745fa7889f4644335adfd405d783cd863627ad54d12dad5d7c6
+DIST patch-6.6.160.xz 8136952 BLAKE2B 782ec29b5390fc50039adede1bf3c7efc244b96eec7de446a2772b9f6e8be42d5d57dfeca549b8b759c993dc14694030165421c3cf9d9c5b1b84ec349bbd12f8 SHA512 7636bbb770f9387872fe1405563e2e76d2f6b017a948b75ed8b2de76bdae54691d8ad5366baafaaafcb8dffa34d745b04459e21bbfdb939fbd1951fe94cc4d38
DIST patch-7.2.11.xz 1760352 BLAKE2B f8d1d6d2d15604ad5a9f533dce240bea99dae3d868d5ed54cac7316434307f6af0ffa3c69c3cc49c8ba1cd2ed731d77507364f81e0d850736926731ff9afcb75 SHA512 6da1c08ff2ed0d5780b3184d01607ad15de9270df2b4ee98a9a6fb56725445a5b6491624b0847a58c5277dd525960b850965cc0e14046bf9191ef2bc876a1550
+DIST patch-7.2.12.xz 1764632 BLAKE2B 07b449ac6c425b714dcc8d711f63e454dbd138953a173471da9834f87f676ef0fa100db2299e8d9ce17e5030b471363881f015d1a0a9a1284f8c7bbdc12164a7 SHA512 99db288c1b3b584b77e56ca0e8616d54558b1be93212f1e28854dc3c7bf083765066c7e27b2b239ab038c687a4909535a9f7d8172d718007b5ffeedca753e14d
diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.114.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.114.ebuild
new file mode 100644
index 000000000000..b051ed4130fc
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.12.114.ebuild
@@ -0,0 +1,222 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-install toolchain-funcs unpacker verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.12.97
+BINPKG=${P/-bin}-1
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Pre-built Linux kernel with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+ amd64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/amd64/$(ver_cut 1-2)/${BINPKG}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/arm64/$(ver_cut 1-2)/${BINPKG}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/ppc64le/$(ver_cut 1-2)/${BINPKG}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/x86/$(ver_cut 1-2)/${BINPKG}.x86.gpkg.tar
+ )
+"
+S=${WORKDIR}
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="debug"
+
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ dev-util/pahole
+ virtual/libelf
+ app-alternatives/yacc
+ amd64? ( app-crypt/sbsigntools )
+ arm64? ( app-crypt/sbsigntools )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+QA_PREBUILT='*'
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpacker
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+
+ # If this is set it will have an effect on the name of the output
+ # image. Set this variable to track this setting.
+ if grep -q "CONFIG_EFI_ZBOOT=y" "${kernel_dir}/.config"; then
+ KERNEL_EFI_ZBOOT=1
+ elif use arm64 && use generic-uki; then
+ die "USE=generic-uki requires a CONFIG_EFI_ZBOOT enabled build"
+ fi
+
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ # Override user variable with the cert used during build
+ openssl x509 \
+ -inform DER -in "${kernel_dir}/certs/signing_key.x509" \
+ -outform PEM -out "${T}/cert.pem" ||
+ die "Failed to convert pcrpkey to PEM format"
+ export SECUREBOOT_SIGN_CERT=${T}/cert.pem
+
+ if [[ -s ${uki} ]]; then
+ # We need to extract the plain image for the test phase
+ # and USE=-generic-uki.
+ kernel-install_extract_from_uki linux "${uki}" "${image}"
+ fi
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_test() {
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+ kernel-install_test "${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \
+ "${BINPKG}/image/lib/modules/${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/.config"
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local kernel_dir="${BINPKG}/image${rel_kernel_dir}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+ if [[ -s ${uki} ]]; then
+ # Keep the kernel image type we don't want out of install tree
+ # Replace back with placeholder
+ if use generic-uki; then
+ > "${image}" || die
+ else
+ > "${uki}" || die
+ fi
+ fi
+
+ # Overwrite the identifier in the prebuilt package
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die
+
+ mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die
+
+ # FIXME: requires proper mount-boot
+ if [[ -d ${BINPKG}/image/boot/dtbs ]]; then
+ mv "${BINPKG}"/image/boot "${ED}"/ || die
+ fi
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+
+ # Update timestamps on all modules to ensure cleanup works correctly
+ # when switching USE=modules-compress.
+ find "${ED}/lib" -name '*.ko' -exec touch {} + || die
+
+ # Modules were already stripped before signing
+ dostrip -x /lib/modules
+ kernel-install_compress_modules
+
+ # Mirror the logic from kernel-build_src_install, for architectures
+ # where USE=debug is used.
+ if use ppc64; then
+ dostrip -x "${rel_kernel_dir}/$(dist-kernel_get_image_path)"
+ elif use debug && { use amd64 || use arm64; }; then
+ dostrip -x "${rel_kernel_dir}/vmlinux"
+ dostrip -x "${rel_kernel_dir}/vmlinux.ctfa"
+ fi
+}
diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.58.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.58.ebuild
new file mode 100644
index 000000000000..b3d53e48fcec
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.58.ebuild
@@ -0,0 +1,222 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-install toolchain-funcs unpacker verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.18.42
+BINPKG=${P/-bin}-1
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Pre-built Linux kernel with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+ amd64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/amd64/$(ver_cut 1-2)/${BINPKG}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/arm64/$(ver_cut 1-2)/${BINPKG}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/ppc64le/$(ver_cut 1-2)/${BINPKG}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/x86/$(ver_cut 1-2)/${BINPKG}.x86.gpkg.tar
+ )
+"
+S=${WORKDIR}
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="debug"
+
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ app-alternatives/yacc
+ dev-util/pahole
+ virtual/libelf
+ amd64? ( app-crypt/sbsigntools )
+ arm64? ( app-crypt/sbsigntools )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+QA_PREBUILT='*'
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpacker
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+
+ # If this is set it will have an effect on the name of the output
+ # image. Set this variable to track this setting.
+ if grep -q "CONFIG_EFI_ZBOOT=y" "${kernel_dir}/.config"; then
+ KERNEL_EFI_ZBOOT=1
+ elif use arm64 && use generic-uki; then
+ die "USE=generic-uki requires a CONFIG_EFI_ZBOOT enabled build"
+ fi
+
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ # Override user variable with the cert used during build
+ openssl x509 \
+ -inform DER -in "${kernel_dir}/certs/signing_key.x509" \
+ -outform PEM -out "${T}/cert.pem" ||
+ die "Failed to convert pcrpkey to PEM format"
+ export SECUREBOOT_SIGN_CERT=${T}/cert.pem
+
+ if [[ -s ${uki} ]]; then
+ # We need to extract the plain image for the test phase
+ # and USE=-generic-uki.
+ kernel-install_extract_from_uki linux "${uki}" "${image}"
+ fi
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_test() {
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+ kernel-install_test "${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \
+ "${BINPKG}/image/lib/modules/${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/.config"
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local kernel_dir="${BINPKG}/image${rel_kernel_dir}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+ if [[ -s ${uki} ]]; then
+ # Keep the kernel image type we don't want out of install tree
+ # Replace back with placeholder
+ if use generic-uki; then
+ > "${image}" || die
+ else
+ > "${uki}" || die
+ fi
+ fi
+
+ # Overwrite the identifier in the prebuilt package
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die
+
+ mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die
+
+ # FIXME: requires proper mount-boot
+ if [[ -d ${BINPKG}/image/boot/dtbs ]]; then
+ mv "${BINPKG}"/image/boot "${ED}"/ || die
+ fi
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+
+ # Update timestamps on all modules to ensure cleanup works correctly
+ # when switching USE=modules-compress.
+ find "${ED}/lib" -name '*.ko' -exec touch {} + || die
+
+ # Modules were already stripped before signing
+ dostrip -x /lib/modules
+ kernel-install_compress_modules
+
+ # Mirror the logic from kernel-build_src_install, for architectures
+ # where USE=debug is used.
+ if use ppc64; then
+ dostrip -x "${rel_kernel_dir}/$(dist-kernel_get_image_path)"
+ elif use debug && { use amd64 || use arm64; }; then
+ dostrip -x "${rel_kernel_dir}/vmlinux"
+ dostrip -x "${rel_kernel_dir}/vmlinux.ctfa"
+ fi
+}
diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.160.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.160.ebuild
new file mode 100644
index 000000000000..55a720504e1e
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.6.160.ebuild
@@ -0,0 +1,222 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-install toolchain-funcs unpacker verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.6.145
+BINPKG=${P/-bin}-1
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Pre-built Linux kernel with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+ amd64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/amd64/$(ver_cut 1-2)/${BINPKG}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/arm64/$(ver_cut 1-2)/${BINPKG}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/ppc64le/$(ver_cut 1-2)/${BINPKG}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/x86/$(ver_cut 1-2)/${BINPKG}.x86.gpkg.tar
+ )
+"
+S=${WORKDIR}
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="debug"
+
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ dev-util/pahole
+ virtual/libelf
+ app-alternatives/yacc
+ amd64? ( app-crypt/sbsigntools )
+ arm64? ( app-crypt/sbsigntools )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+QA_PREBUILT='*'
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpacker
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+
+ # If this is set it will have an effect on the name of the output
+ # image. Set this variable to track this setting.
+ if grep -q "CONFIG_EFI_ZBOOT=y" "${kernel_dir}/.config"; then
+ KERNEL_EFI_ZBOOT=1
+ elif use arm64 && use generic-uki; then
+ die "USE=generic-uki requires a CONFIG_EFI_ZBOOT enabled build"
+ fi
+
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ # Override user variable with the cert used during build
+ openssl x509 \
+ -inform DER -in "${kernel_dir}/certs/signing_key.x509" \
+ -outform PEM -out "${T}/cert.pem" ||
+ die "Failed to convert pcrpkey to PEM format"
+ export SECUREBOOT_SIGN_CERT=${T}/cert.pem
+
+ if [[ -s ${uki} ]]; then
+ # We need to extract the plain image for the test phase
+ # and USE=-generic-uki.
+ kernel-install_extract_from_uki linux "${uki}" "${image}"
+ fi
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_test() {
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+ kernel-install_test "${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \
+ "${BINPKG}/image/lib/modules/${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/.config"
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local kernel_dir="${BINPKG}/image${rel_kernel_dir}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+ if [[ -s ${uki} ]]; then
+ # Keep the kernel image type we don't want out of install tree
+ # Replace back with placeholder
+ if use generic-uki; then
+ > "${image}" || die
+ else
+ > "${uki}" || die
+ fi
+ fi
+
+ # Overwrite the identifier in the prebuilt package
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die
+
+ mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die
+
+ # FIXME: requires proper mount-boot
+ if [[ -d ${BINPKG}/image/boot/dtbs ]]; then
+ mv "${BINPKG}"/image/boot "${ED}"/ || die
+ fi
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+
+ # Update timestamps on all modules to ensure cleanup works correctly
+ # when switching USE=modules-compress.
+ find "${ED}/lib" -name '*.ko' -exec touch {} + || die
+
+ # Modules were already stripped before signing
+ dostrip -x /lib/modules
+ kernel-install_compress_modules
+
+ # Mirror the logic from kernel-build_src_install, for architectures
+ # where USE=debug is used.
+ if use ppc64; then
+ dostrip -x "${rel_kernel_dir}/$(dist-kernel_get_image_path)"
+ elif use debug && { use amd64 || use arm64; }; then
+ dostrip -x "${rel_kernel_dir}/vmlinux"
+ dostrip -x "${rel_kernel_dir}/vmlinux.ctfa"
+ fi
+}
diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.2.12.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.2.12.ebuild
new file mode 100644
index 000000000000..1e2c85227b31
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.2.12.ebuild
@@ -0,0 +1,223 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-install toolchain-funcs unpacker verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-7.1.9
+BINPKG=${P/-bin}-1
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Pre-built Linux kernel with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/7.1/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+ amd64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/amd64/$(ver_cut 1-2)/${BINPKG}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/arm64/$(ver_cut 1-2)/${BINPKG}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/ppc64le/$(ver_cut 1-2)/${BINPKG}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/x86/$(ver_cut 1-2)/${BINPKG}.x86.gpkg.tar
+ )
+"
+S=${WORKDIR}
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="debug"
+
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ app-alternatives/yacc
+ dev-util/pahole
+ sys-libs/binutils-libs
+ virtual/libelf
+ amd64? ( app-crypt/sbsigntools )
+ arm64? ( app-crypt/sbsigntools )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+QA_PREBUILT='*'
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpacker
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+
+ # If this is set it will have an effect on the name of the output
+ # image. Set this variable to track this setting.
+ if grep -q "CONFIG_EFI_ZBOOT=y" "${kernel_dir}/.config"; then
+ KERNEL_EFI_ZBOOT=1
+ elif use arm64 && use generic-uki; then
+ die "USE=generic-uki requires a CONFIG_EFI_ZBOOT enabled build"
+ fi
+
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ # Override user variable with the cert used during build
+ openssl x509 \
+ -inform DER -in "${kernel_dir}/certs/signing_key.x509" \
+ -outform PEM -out "${T}/cert.pem" ||
+ die "Failed to convert pcrpkey to PEM format"
+ export SECUREBOOT_SIGN_CERT=${T}/cert.pem
+
+ if [[ -s ${uki} ]]; then
+ # We need to extract the plain image for the test phase
+ # and USE=-generic-uki.
+ kernel-install_extract_from_uki linux "${uki}" "${image}"
+ fi
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_test() {
+ local kernel_dir="${BINPKG}/image/usr/src/linux-${KV_FULL}"
+ kernel-install_test "${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/$(dist-kernel_get_image_path)" \
+ "${BINPKG}/image/lib/modules/${KV_FULL}" \
+ "${WORKDIR}/${kernel_dir}/.config"
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local kernel_dir="${BINPKG}/image${rel_kernel_dir}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+ if [[ -s ${uki} ]]; then
+ # Keep the kernel image type we don't want out of install tree
+ # Replace back with placeholder
+ if use generic-uki; then
+ > "${image}" || die
+ else
+ > "${uki}" || die
+ fi
+ fi
+
+ # Overwrite the identifier in the prebuilt package
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${kernel_dir}/dist-kernel" || die
+
+ mv "${BINPKG}"/image/{lib,usr} "${ED}"/ || die
+
+ # FIXME: requires proper mount-boot
+ if [[ -d ${BINPKG}/image/boot/dtbs ]]; then
+ mv "${BINPKG}"/image/boot "${ED}"/ || die
+ fi
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+
+ # Update timestamps on all modules to ensure cleanup works correctly
+ # when switching USE=modules-compress.
+ find "${ED}/lib" -name '*.ko' -exec touch {} + || die
+
+ # Modules were already stripped before signing
+ dostrip -x /lib/modules
+ kernel-install_compress_modules
+
+ # Mirror the logic from kernel-build_src_install, for architectures
+ # where USE=debug is used.
+ if use ppc64; then
+ dostrip -x "${rel_kernel_dir}/$(dist-kernel_get_image_path)"
+ elif use debug && { use amd64 || use arm64; }; then
+ dostrip -x "${rel_kernel_dir}/vmlinux"
+ dostrip -x "${rel_kernel_dir}/vmlinux.ctfa"
+ fi
+}
diff --git a/sys-kernel/gentoo-kernel-modprep/Manifest b/sys-kernel/gentoo-kernel-modprep/Manifest
index b8f60d05fcdb..7c5b90c8075e 100644
--- a/sys-kernel/gentoo-kernel-modprep/Manifest
+++ b/sys-kernel/gentoo-kernel-modprep/Manifest
@@ -1,15 +1,21 @@
DIST gentoo-kernel-modprep-6.1.190.tar.xz 7452464 BLAKE2B 9bc08a6d0b3a2c5e87022153987324319bd7c35c0bcd5406b8320cb1e688fe9e7547210d79e769cdff64c1da2ec1d6fb82b26a0707e6b194d19df7299e5b831d SHA512 13526f18b047a337d949e813a0f204502589cef65f5c6ad5e1e5fbded266ce04d07d254f5dd5b91625bdb3237865dc7e5288f72391fe4e5eeec33f2645012359
DIST gentoo-kernel-modprep-6.12.113.tar.xz 8928748 BLAKE2B 34e0a63133dedb9726acbf4e0a2d64fb233f904a1dcedb7950fc00f097d85d0118b48cd7ecb74093eabc0f0e9c489dca796548222f13c570b16f566f4c1ba0d6 SHA512 96d0392119b8e213324b68c67c2137c1bb1a6fbade310bbb1f1337d620f2c330bc03f568eff66c984296dedfaa2a2718fcec0467ce19057f79daf366dddfb147
+DIST gentoo-kernel-modprep-6.12.114.tar.xz 8931728 BLAKE2B 358704cc1ed4f4a8938450ee476465f90c4f3e53c24f1e4a78c92ab120b5f7642ac9ab33881e7faa4cb0ba50461c067f5ebead972a1fab38f778f8ebfcf443ff SHA512 37452b8ce9fa69e749558c381513c4229d78dda34f9f91b491cd9487c20203505f7b9e335d7000f62df772c6b8cd34304b0bc341cd3ca2fbe43b839f0a000a51
DIST gentoo-kernel-modprep-6.18.57.tar.xz 9634464 BLAKE2B 3de517335017112a0b9f6660753c2fb141598d00c798210c7ade8d4aa1422d8686d8734ee5ba6afd7450ae4c810dd363388ddb99706badedb037cee69ff3349a SHA512 f253bbe6eeb085d5b68c3c288f23178f3f74202c0be66fe25aeea3f0e6c61fcfcc06ae1d1dbfd11cc930a31e734a5f65717da874d25cbd072a546c5694d9b730
+DIST gentoo-kernel-modprep-6.18.58.tar.xz 9630168 BLAKE2B 719a944b8d2310cb1b6108fd19e97118067e65261aa4e07d722d2e43464cd9a778a754cba916a7e8ef78c86b8ec84bc28489e164cce1f61ac6f0e7a65eae3f17 SHA512 2bb245b7d2ddcef600b646d1f0ba215a0f035f216db2f143d19b7a40f8c91365230a524b178a404fef3610182147f06d4cc4c03c06239855fafb4c2299ca60ab
DIST gentoo-kernel-modprep-6.6.159.tar.xz 8269552 BLAKE2B 2162ed1e588c60709dbbc8f21a1ad7507dd72eb4b9f16a673d6edb6097e17fc425570355b1aab8e94e4e64bffb62970926970a0b701f41b565e1ff5d9a27e0f0 SHA512 d7f93a451b78041dd44765c029d2eb0635d034b95b55ba71c39e60c75a5c1892ccdad033da0a85c8ceb4615db78e1e3936d91be7d763e2bb26772a218ec9d814
+DIST gentoo-kernel-modprep-6.6.160.tar.xz 8263704 BLAKE2B 3123b0cb6418c2e0e5efd4923954953cbfe661f90635bef1454f4f43320410d426db25d0864adb3de5137a2023b429d5a87e1f1f2a10c2b293ea294fd99c794e SHA512 8ffd4b11c9535c2f07b8915497e78c352400fbb79caea35f21ac7b114b138f95dd3f2fa1c25160dc129c1fb33eb14e6762d15509c4c06b87e9d0f4a3dcb83fd5
DIST gentoo-kernel-modprep-7.2.11.tar.xz 10212012 BLAKE2B 59f1c0758f9532bc214fa1fbf4e5267613d6a9e3b6ed107eb5f78b35150e5f01281cc6f148d667aa26288f52139c9c9872ed720f1d1751e71ad66f6e5a25201e SHA512 a46562278296549b26be35dc458ee85442a18d27afd64277253d856d2b4e0df3f9ed54b1ec4c2622db7955e7e6afe949ad0272f2585bdb1f299519a29bb4f771
+DIST gentoo-kernel-modprep-7.2.12.tar.xz 10187156 BLAKE2B 11a7555e496f32dce9fccdb02158eb8c4609b658e5d11173e260a3eef16f63fea22731f3fa190779f8d721a2467022f36516bb55203c4d29e59962ae80e0fe01 SHA512 3e8c8f1b4f7411bb08eabb11e71cbdff335b16913da9849b210187808a50225cbeb1bbcecca50492dc5451fa35ce3ef7e30dacfbb870b24f895805cbe01c332f
DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b3d535c45e44c2e541bd0928530a3b62de6385dd4e4726ebbedcc0a871d4f3ffb4105b9f1f6d8ed7467f5688e SHA512 6ed2a73c2699d0810e54753715635736fc370288ad5ce95c594f2379959b0e418665cd71bc512a0273fe226fe90074d8b10d14c209080a6466498417a4fdda68
DIST linux-6.12.tar.xz 147906904 BLAKE2B b2ec2fc69218cacabbbe49f78384a5d259ca581b717617c12b000b16f4a4c59ee348ea886b37147f5f70fb9a7a01c1e2c8f19021078f6b23f5bc62d1c48d5e5e SHA512 a37b1823df7b4f72542f689b65882634740ba0401a42fdcf6601d9efd2e132e5a7650e70450ba76f6cd1f13ca31180f2ccee9d54fe4df89bc0000ade4380a548
DIST linux-6.18.tar.xz 154309096 BLAKE2B b94b7b9bf18aca0c3e50baf79b009a1448fc6cd9c3ee019f641cc247dcf53a4abef4274ee0608ad8cd4943af69854363a95d26e117ff23620bb07dccb158859f SHA512 88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0
DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f9844a6c4db3e1fd461c93ce1ccda650ca72dceb4890ebcbbf768ba8fba0bce91efc49fbd2c307b04e95665f2 SHA512 458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35
DIST linux-6.x-sha256sums-20261015.asc 254444 BLAKE2B fb7843a33a6cd0a9754584fd5e2f457b920272eb45ec276111e5abb694e61e9bd21aa7df23886afc6f3b21b4199000f26edc4b105b377939fbf1e65c689e6b98 SHA512 f15b0ce4e7bec0e6ea9e1d70e5d8530aa8bd75a8213a7ecafbb07ee5292f3fc84b662c9e46af1d6963158186507606c048eb571cbdb2808b4a095a0aba178c6f
+DIST linux-6.x-sha256sums-20261021.asc 255471 BLAKE2B fc99332d5a7dea5cc11fefc47c853c4ee456956e60ebe6a3028f32bd4f21e75bc08b4619c53ae93e28201730a0f4bc07757ca8ca569f1d3845afa1a0804ecfa3 SHA512 98b87460ce3fdd1133c875419fa848618d9e02d9aef7a279d3b702ebb954afa89feb4f8bc5e316cd448a3fbc0b8cdaaaae5c08663f9dbd4f417dc5c75904b5bb
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261015.asc 14555 BLAKE2B ced3a0e412b1a07fc918ea42b6ccee91859a4e6d5f4a94408e86a7b3875a09d72b8312b5fd7c6ce22ad8e6d3d51bf20def1c3c064bb4d07cfc99f37b3df91245 SHA512 e36a0f0cff2c2eed4ad95ac91831f5617cba9f69a8262860e959f2dac891370f2a5259fda1404be82eda1215984341dfbe80df5a33b68ff1109bb247a38a9939
+DIST linux-7.x-sha256sums-20261021.asc 15217 BLAKE2B 45e2051163c00a9583f849ba7c4ae21a05e003048f194f9c5f0ba5dd0bb5c3b75585e23183ab77ab862255092d513220f808fdade03d8f80aafc29cf9acf0ae5 SHA512 04cb3f28f2a8a198e6933ad1e3a4647a81ec10b49a490fb0fcb67f50ec83e5ad227504eae2cb65b5ca0fdb61e27912b609728f50bf4f807e8f5ebae15c137646
DIST linux-gentoo-patches-6.1.178.tar.xz 14432 BLAKE2B fc278094f85f58b7aba5c3334503114d28aead086a1e62499111283f0410c02bc9db7f5187975fcf2a793a5ef32e323b9907bbd9e0fb4c0834dc1a823f36af52 SHA512 ae0606ab52f8d66f49cac198aada1cbcced465d8ae43e09ef02cee149125570e09eadfacc07f9ec0ad3b20b365df7b9718a478252771f7c6e09fecda6f701096
DIST linux-gentoo-patches-6.12.97.tar.xz 17192 BLAKE2B e0f09dd8ef2e6ebce9adcc2c050cb7e2c7ae08188e99635d3b541c6deca5bea792f4ec2c8d0c0dbc648b0c1f227b54a95d8d807a43859b3bf1b5f57767af2113 SHA512 af6b182d1e7661c35c215f4da63c8ab53b1ffffa7818a266b4c5639ed8d03428d050f1045d02e885c1b9bdc9fb2464c3f384dcd55d7536eddf2b90ffe1f8c530
DIST linux-gentoo-patches-6.18.42.tar.xz 10856 BLAKE2B 8d9de53163c26980f2097eac090f8add2f0f22707824c25493d24d53cc82ef5bc24dcbc7e1e324010315bd3cd05cf2abdd36c536f1457b311cc5208a1a49575d SHA512 01f3020aa34f0ee29c37473344f6dfe0180a12d20834f9c935575b98092b1c6ddd6c563aaef9e4ce6f14116e5d7386d2203f120d1c680ff617f581c867d4544c
@@ -17,6 +23,10 @@ DIST linux-gentoo-patches-6.6.145.tar.xz 39848 BLAKE2B 46a5473d9d056b691af2bcda3
DIST linux-gentoo-patches-7.1.9.tar.xz 10624 BLAKE2B 4b502aed968239f52321da548b257b2a06d4e3cf520090d7aa53dbbf77ef5cc9e64d1bb209389f1c51e48c5953666470186aaaa55db378cb34940ce492693271 SHA512 1d2d466b005cc7537aad1e8222411dad8a86bb82c185f139a6972f8354b47f758fb8555ef04b2217cd082db5b1852ba00b5a5eb0673a57c6423dacbe606c7d39
DIST patch-6.1.190.xz 8545036 BLAKE2B 7274d34639907c7046c0b0c3a0393237c2029b6ace1649988d2300595476efd6518d56012c5ec959f305e4d5aad0b096512421936f31a33bd8764668947aa357 SHA512 57dbccc1f17780b006c6220d4134fd52b4c90bef04d0103e4ad3f07ba730bae6c04b0cbc3d6cc160d60803b75f48fa3b3b9895b9b18cb96a4e97b1e32ef0c032
DIST patch-6.12.113.xz 6689048 BLAKE2B 609315b7d6a35740264de198d74d15590699bcbea961498447dfa4ad3dfbd2456d46acc53c67e01f3273f6c0b598c27bb9bfeccf38dde683e07526565996d0ce SHA512 5deb2c19be8ae04054ae5b8071c70bab134a10d1af5356cd415ae6b3930822b0667a749bef3306c37d4b23a9a8cec3dc150f3a7813c04f188d3ab08512066e7e
+DIST patch-6.12.114.xz 7053696 BLAKE2B 34bba5dc19d612d689641a79ecedf2fcdf93c056035dbd61f3dce7fceeef609032b56c6954d25ec5414cbb44242f419440693d2e936927d37d78d01202eb68cf SHA512 e9e101066d5903322db14106aaab0d965586d43d1cde6af8595bf2209f49fd40917799afc686c5afde86edaf4c4c2660d9123d6eb717c1b13474d3d2c099f1c7
DIST patch-6.18.57.xz 4853352 BLAKE2B bbba2577501892839aec780373bebdcce4519cc57dfbb0884f1f445acfc8bc7652e734a902bb13d7040c5d81257b3cf0f8b8eb1d7ef2e4187edd2bbe0e2ce7a9 SHA512 893f32e4eae9ebe826222876b846b7c0ffc7d19d1e2e5cd837d4af7c29431d549fdf7c3485f03effc64668d7d07d7271210862a8ca0f0bbf9db5b248fd0f1e06
+DIST patch-6.18.58.xz 4871040 BLAKE2B f1777cc10ee5db95f35e1138a01331e77a88b85cf9ac768c30596df6388977718262a21d681ea7a92b7c3cd16715cc1eb54c53026ae43ee2d3f20c85f0c0fc1f SHA512 71fb2885de97bc9eee53c71d0d891822c3b101fefeed1251838e94586b1f46cb3062c600c5edb161a6df2d5f125c4209aab478f34bc78ad972704800d270a9b3
DIST patch-6.6.159.xz 7442892 BLAKE2B 06cd919a71b0483f8732f32ac8604b47e210976b8acacffd3ebe10b7f15bb9fa4143057ae4e109a23373d5dbe34ec3389bd7706776630e1e9a1f94f9368a888e SHA512 f40980ef05d3221b4c30036e6b529af9cc3ff8f497647dc244e48aeabb23613c73918bca63f21745fa7889f4644335adfd405d783cd863627ad54d12dad5d7c6
+DIST patch-6.6.160.xz 8136952 BLAKE2B 782ec29b5390fc50039adede1bf3c7efc244b96eec7de446a2772b9f6e8be42d5d57dfeca549b8b759c993dc14694030165421c3cf9d9c5b1b84ec349bbd12f8 SHA512 7636bbb770f9387872fe1405563e2e76d2f6b017a948b75ed8b2de76bdae54691d8ad5366baafaaafcb8dffa34d745b04459e21bbfdb939fbd1951fe94cc4d38
DIST patch-7.2.11.xz 1760352 BLAKE2B f8d1d6d2d15604ad5a9f533dce240bea99dae3d868d5ed54cac7316434307f6af0ffa3c69c3cc49c8ba1cd2ed731d77507364f81e0d850736926731ff9afcb75 SHA512 6da1c08ff2ed0d5780b3184d01607ad15de9270df2b4ee98a9a6fb56725445a5b6491624b0847a58c5277dd525960b850965cc0e14046bf9191ef2bc876a1550
+DIST patch-7.2.12.xz 1764632 BLAKE2B 07b449ac6c425b714dcc8d711f63e454dbd138953a173471da9834f87f676ef0fa100db2299e8d9ce17e5030b471363881f015d1a0a9a1284f8c7bbdc12164a7 SHA512 99db288c1b3b584b77e56ca0e8616d54558b1be93212f1e28854dc3c7bf083765066c7e27b2b239ab038c687a4909535a9f7d8172d718007b5ffeedca753e14d
diff --git a/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.12.114.ebuild b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.12.114.ebuild
new file mode 100644
index 000000000000..cf85a9087df5
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.12.114.ebuild
@@ -0,0 +1,177 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dist-kernel-utils toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.12.97
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Minimal subset of gentoo-kernel-bin for building modules, for containers"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/modprep/$(ver_cut 1-2)/${P}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}
+
+LICENSE="GPL-2"
+SLOT=${PV}
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+RDEPEND="
+ virtual/libelf
+ !sys-kernel/gentoo-kernel-bin:${SLOT}
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ app-alternatives/yacc
+ dev-util/pahole
+ virtual/libelf
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpack "${BASE_P}.tar.xz" "patch-${PATCH_PV}.xz" "${PATCHSET}.tar.xz"
+ local pkg_arch=${ARCH}
+ [[ ${ARCH} == ppc64 ]] && pkg_arch=ppc64le
+ tar -x -f "${DISTDIR}/${P}.tar.xz" "${P}/${pkg_arch}" || die
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir=( "${P}"/*/usr/src/"linux-${KV_FULL}" )
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local pkg_dir=( "${P}"/* )
+ local kernel_dir="${pkg_dir}/usr/src/linux-${KV_FULL}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ mv "${pkg_dir}"/lib "${ED}"/ || die
+ cd "${kernel_dir}" || die
+ insinto "${rel_kernel_dir}"
+ doins System.map Module.symvers
+ doins -r certs include scripts
+
+ local kern_arch=$(tc-arch-kernel)
+ insinto "${rel_kernel_dir}/arch/${kern_arch}"
+ doins -r "arch/${kern_arch}/include"
+
+ # Add the identifier
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${ED}${rel_kernel_dir}/dist-kernel" || die
+
+ cd "${WORKDIR}/${BASE_P}" || die
+ insinto "${rel_kernel_dir}"
+ doins -r include
+
+ # remove everything but Makefile* and Kconfig*
+ find -type f '!' '(' -name 'Makefile*' -o -name 'Kconfig*' ')' \
+ -delete || die
+ find -type l -delete || die
+ cp -p -R * "${ED}${rel_kernel_dir}/" || die
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ cd "${WORKDIR}" || die
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+}
+
+pkg_preinst() {
+ dist-kernel_update_lib_symlinks
+}
+
+pkg_postinst() {
+ dist-kernel_update_src_symlink "${EROOT}/usr/src/linux" "${KV_FULL}"
+}
diff --git a/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.58.ebuild b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.58.ebuild
new file mode 100644
index 000000000000..79e6906f872e
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.58.ebuild
@@ -0,0 +1,177 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dist-kernel-utils toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.18.42
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Minimal subset of gentoo-kernel-bin for building modules, for containers"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/modprep/$(ver_cut 1-2)/${P}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}
+
+LICENSE="GPL-2"
+SLOT=${PV}
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+RDEPEND="
+ virtual/libelf
+ !sys-kernel/gentoo-kernel-bin:${SLOT}
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ app-alternatives/yacc
+ dev-util/pahole
+ virtual/libelf
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpack "${BASE_P}.tar.xz" "patch-${PATCH_PV}.xz" "${PATCHSET}.tar.xz"
+ local pkg_arch=${ARCH}
+ [[ ${ARCH} == ppc64 ]] && pkg_arch=ppc64le
+ tar -x -f "${DISTDIR}/${P}.tar.xz" "${P}/${pkg_arch}" || die
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir=( "${P}"/*/usr/src/"linux-${KV_FULL}" )
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local pkg_dir=( "${P}"/* )
+ local kernel_dir="${pkg_dir}/usr/src/linux-${KV_FULL}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ mv "${pkg_dir}"/lib "${ED}"/ || die
+ cd "${kernel_dir}" || die
+ insinto "${rel_kernel_dir}"
+ doins System.map Module.symvers
+ doins -r certs include scripts
+
+ local kern_arch=$(tc-arch-kernel)
+ insinto "${rel_kernel_dir}/arch/${kern_arch}"
+ doins -r "arch/${kern_arch}/include"
+
+ # Add the identifier
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${ED}${rel_kernel_dir}/dist-kernel" || die
+
+ cd "${WORKDIR}/${BASE_P}" || die
+ insinto "${rel_kernel_dir}"
+ doins -r include
+
+ # remove everything but Makefile* and Kconfig*
+ find -type f '!' '(' -name 'Makefile*' -o -name 'Kconfig*' ')' \
+ -delete || die
+ find -type l -delete || die
+ cp -p -R * "${ED}${rel_kernel_dir}/" || die
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ cd "${WORKDIR}" || die
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+}
+
+pkg_preinst() {
+ dist-kernel_update_lib_symlinks
+}
+
+pkg_postinst() {
+ dist-kernel_update_src_symlink "${EROOT}/usr/src/linux" "${KV_FULL}"
+}
diff --git a/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.6.160.ebuild b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.6.160.ebuild
new file mode 100644
index 000000000000..0f37d2909384
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.6.160.ebuild
@@ -0,0 +1,177 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dist-kernel-utils toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.6.145
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Minimal subset of gentoo-kernel-bin for building modules, for containers"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/modprep/$(ver_cut 1-2)/${P}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}
+
+LICENSE="GPL-2"
+SLOT=${PV}
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+RDEPEND="
+ virtual/libelf
+ !sys-kernel/gentoo-kernel-bin:${SLOT}
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ app-alternatives/yacc
+ dev-util/pahole
+ virtual/libelf
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpack "${BASE_P}.tar.xz" "patch-${PATCH_PV}.xz" "${PATCHSET}.tar.xz"
+ local pkg_arch=${ARCH}
+ [[ ${ARCH} == ppc64 ]] && pkg_arch=ppc64le
+ tar -x -f "${DISTDIR}/${P}.tar.xz" "${P}/${pkg_arch}" || die
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir=( "${P}"/*/usr/src/"linux-${KV_FULL}" )
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local pkg_dir=( "${P}"/* )
+ local kernel_dir="${pkg_dir}/usr/src/linux-${KV_FULL}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ mv "${pkg_dir}"/lib "${ED}"/ || die
+ cd "${kernel_dir}" || die
+ insinto "${rel_kernel_dir}"
+ doins System.map Module.symvers
+ doins -r certs include scripts
+
+ local kern_arch=$(tc-arch-kernel)
+ insinto "${rel_kernel_dir}/arch/${kern_arch}"
+ doins -r "arch/${kern_arch}/include"
+
+ # Add the identifier
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${ED}${rel_kernel_dir}/dist-kernel" || die
+
+ cd "${WORKDIR}/${BASE_P}" || die
+ insinto "${rel_kernel_dir}"
+ doins -r include
+
+ # remove everything but Makefile* and Kconfig*
+ find -type f '!' '(' -name 'Makefile*' -o -name 'Kconfig*' ')' \
+ -delete || die
+ find -type l -delete || die
+ cp -p -R * "${ED}${rel_kernel_dir}/" || die
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ cd "${WORKDIR}" || die
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+}
+
+pkg_preinst() {
+ dist-kernel_update_lib_symlinks
+}
+
+pkg_postinst() {
+ dist-kernel_update_src_symlink "${EROOT}/usr/src/linux" "${KV_FULL}"
+}
diff --git a/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-7.2.12.ebuild b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-7.2.12.ebuild
new file mode 100644
index 000000000000..760e3fced7e5
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-7.2.12.ebuild
@@ -0,0 +1,178 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dist-kernel-utils toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-7.1.9
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Minimal subset of gentoo-kernel-bin for building modules, for containers"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/7.1/${PATCHSET}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/binpkg/modprep/$(ver_cut 1-2)/${P}.tar.xz
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}
+
+LICENSE="GPL-2"
+SLOT=${PV}
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+RDEPEND="
+ virtual/libelf
+ !sys-kernel/gentoo-kernel-bin:${SLOT}
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+BDEPEND="
+ app-alternatives/bc
+ app-alternatives/lex
+ app-alternatives/yacc
+ dev-util/pahole
+ sys-libs/binutils-libs
+ virtual/libelf
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+
+KV_LOCALVERSION='-gentoo-dist-bin'
+KV_FULL=${PV/_p/-p}${KV_LOCALVERSION}
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ unpack "${BASE_P}.tar.xz" "patch-${PATCH_PV}.xz" "${PATCHSET}.tar.xz"
+ local pkg_arch=${ARCH}
+ [[ ${ARCH} == ppc64 ]] && pkg_arch=ppc64le
+ tar -x -f "${DISTDIR}/${P}.tar.xz" "${P}/${pkg_arch}" || die
+}
+
+src_prepare() {
+ local patch
+ cd "${BASE_P}" || die
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+}
+
+src_configure() {
+ # force ld.bfd if we can find it easily
+ local HOSTLD="$(tc-getBUILD_LD)"
+ if type -P "${HOSTLD}.bfd" &>/dev/null; then
+ HOSTLD+=.bfd
+ fi
+ local LD="$(tc-getLD)"
+ if type -P "${LD}.bfd" &>/dev/null; then
+ LD+=.bfd
+ fi
+ tc-export_build_env
+ local makeargs=(
+ V=1
+ WERROR=0
+
+ HOSTCC="$(tc-getBUILD_CC)"
+ HOSTCXX="$(tc-getBUILD_CXX)"
+ HOSTLD="${HOSTLD}"
+ HOSTAR="$(tc-getBUILD_AR)"
+ HOSTCFLAGS="${BUILD_CFLAGS}"
+ HOSTLDFLAGS="${BUILD_LDFLAGS}"
+
+ CROSS_COMPILE=${CHOST}-
+ AS="$(tc-getAS)"
+ CC="$(tc-getCC)"
+ LD="${LD}"
+ AR="$(tc-getAR)"
+ NM="$(tc-getNM)"
+ STRIP="$(tc-getSTRIP)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ OBJDUMP="$(tc-getOBJDUMP)"
+ READELF="$(tc-getREADELF)"
+
+ # we need to pass it to override colliding Gentoo envvar
+ ARCH="$(tc-arch-kernel)"
+
+ O="${WORKDIR}"/modprep
+ )
+
+ local kernel_dir=( "${P}"/*/usr/src/"linux-${KV_FULL}" )
+
+ mkdir modprep || die
+ cp "${kernel_dir}/.config" modprep/ || die
+ emake -C "${BASE_P}" "${makeargs[@]}" modules_prepare
+}
+
+src_install() {
+ local rel_kernel_dir=/usr/src/linux-${KV_FULL}
+ local pkg_dir=( "${P}"/* )
+ local kernel_dir="${pkg_dir}/usr/src/linux-${KV_FULL}"
+ local image="${kernel_dir}/$(dist-kernel_get_image_path)"
+ local uki="${image%/*}/uki.efi"
+
+ mv "${pkg_dir}"/lib "${ED}"/ || die
+ cd "${kernel_dir}" || die
+ insinto "${rel_kernel_dir}"
+ doins System.map Module.symvers
+ doins -r certs include scripts
+
+ local kern_arch=$(tc-arch-kernel)
+ insinto "${rel_kernel_dir}/arch/${kern_arch}"
+ doins -r "arch/${kern_arch}/include"
+
+ # Add the identifier
+ echo "${CATEGORY}/${PF}:${SLOT}" > "${ED}${rel_kernel_dir}/dist-kernel" || die
+
+ cd "${WORKDIR}/${BASE_P}" || die
+ insinto "${rel_kernel_dir}"
+ doins -r include
+
+ # remove everything but Makefile* and Kconfig*
+ find -type f '!' '(' -name 'Makefile*' -o -name 'Kconfig*' ')' \
+ -delete || die
+ find -type l -delete || die
+ cp -p -R * "${ED}${rel_kernel_dir}/" || die
+
+ # strip out-of-source build stuffs from modprep
+ # and then copy built files
+ cd "${WORKDIR}" || die
+ find modprep -type f '(' \
+ -name Makefile -o \
+ -name '*.[ao]' -o \
+ '(' -name '.*' -a -not -name '.config' ')' \
+ ')' -delete || die
+ rm modprep/source || die
+ cp -p -R modprep/. "${ED}${rel_kernel_dir}"/ || die
+}
+
+pkg_preinst() {
+ dist-kernel_update_lib_symlinks
+}
+
+pkg_postinst() {
+ dist-kernel_update_src_symlink "${EROOT}/usr/src/linux" "${KV_FULL}"
+}
diff --git a/sys-kernel/gentoo-kernel/Manifest b/sys-kernel/gentoo-kernel/Manifest
index e95d04cb19ad..b2c54ea412ca 100644
--- a/sys-kernel/gentoo-kernel/Manifest
+++ b/sys-kernel/gentoo-kernel/Manifest
@@ -10,8 +10,10 @@ DIST linux-6.12.tar.xz 147906904 BLAKE2B b2ec2fc69218cacabbbe49f78384a5d259ca581
DIST linux-6.18.tar.xz 154309096 BLAKE2B b94b7b9bf18aca0c3e50baf79b009a1448fc6cd9c3ee019f641cc247dcf53a4abef4274ee0608ad8cd4943af69854363a95d26e117ff23620bb07dccb158859f SHA512 88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0
DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f9844a6c4db3e1fd461c93ce1ccda650ca72dceb4890ebcbbf768ba8fba0bce91efc49fbd2c307b04e95665f2 SHA512 458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35
DIST linux-6.x-sha256sums-20261015.asc 254444 BLAKE2B fb7843a33a6cd0a9754584fd5e2f457b920272eb45ec276111e5abb694e61e9bd21aa7df23886afc6f3b21b4199000f26edc4b105b377939fbf1e65c689e6b98 SHA512 f15b0ce4e7bec0e6ea9e1d70e5d8530aa8bd75a8213a7ecafbb07ee5292f3fc84b662c9e46af1d6963158186507606c048eb571cbdb2808b4a095a0aba178c6f
+DIST linux-6.x-sha256sums-20261021.asc 255471 BLAKE2B fc99332d5a7dea5cc11fefc47c853c4ee456956e60ebe6a3028f32bd4f21e75bc08b4619c53ae93e28201730a0f4bc07757ca8ca569f1d3845afa1a0804ecfa3 SHA512 98b87460ce3fdd1133c875419fa848618d9e02d9aef7a279d3b702ebb954afa89feb4f8bc5e316cd448a3fbc0b8cdaaaae5c08663f9dbd4f417dc5c75904b5bb
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261015.asc 14555 BLAKE2B ced3a0e412b1a07fc918ea42b6ccee91859a4e6d5f4a94408e86a7b3875a09d72b8312b5fd7c6ce22ad8e6d3d51bf20def1c3c064bb4d07cfc99f37b3df91245 SHA512 e36a0f0cff2c2eed4ad95ac91831f5617cba9f69a8262860e959f2dac891370f2a5259fda1404be82eda1215984341dfbe80df5a33b68ff1109bb247a38a9939
+DIST linux-7.x-sha256sums-20261021.asc 15217 BLAKE2B 45e2051163c00a9583f849ba7c4ae21a05e003048f194f9c5f0ba5dd0bb5c3b75585e23183ab77ab862255092d513220f808fdade03d8f80aafc29cf9acf0ae5 SHA512 04cb3f28f2a8a198e6933ad1e3a4647a81ec10b49a490fb0fcb67f50ec83e5ad227504eae2cb65b5ca0fdb61e27912b609728f50bf4f807e8f5ebae15c137646
DIST linux-b19b382f183d421a407f5d708dde1eff5009274d.tar.bz2 1401905 BLAKE2B fdb884e73fe206f91a39e76a76fdb1d703eb0529dc97b7f3129dacd3ae9f33c8acf14820a00facb07e99cee89acdad77b9cb43e95458656eabf375b1bb507b22 SHA512 1a9c210271a8a6b88a304b91a31caa693fbd289babfed8ee7767e834fc860f9a5cb52e457cbc548246cc7816d24490f7568389a71089975edfc4e31bd83f9490
DIST linux-gentoo-patches-6.1.178.tar.xz 14432 BLAKE2B fc278094f85f58b7aba5c3334503114d28aead086a1e62499111283f0410c02bc9db7f5187975fcf2a793a5ef32e323b9907bbd9e0fb4c0834dc1a823f36af52 SHA512 ae0606ab52f8d66f49cac198aada1cbcced465d8ae43e09ef02cee149125570e09eadfacc07f9ec0ad3b20b365df7b9718a478252771f7c6e09fecda6f701096
DIST linux-gentoo-patches-6.12.97.tar.xz 17192 BLAKE2B e0f09dd8ef2e6ebce9adcc2c050cb7e2c7ae08188e99635d3b541c6deca5bea792f4ec2c8d0c0dbc648b0c1f227b54a95d8d807a43859b3bf1b5f57767af2113 SHA512 af6b182d1e7661c35c215f4da63c8ab53b1ffffa7818a266b4c5639ed8d03428d050f1045d02e885c1b9bdc9fb2464c3f384dcd55d7536eddf2b90ffe1f8c530
@@ -20,6 +22,10 @@ DIST linux-gentoo-patches-6.6.145.tar.xz 39848 BLAKE2B 46a5473d9d056b691af2bcda3
DIST linux-gentoo-patches-7.1.9.tar.xz 10624 BLAKE2B 4b502aed968239f52321da548b257b2a06d4e3cf520090d7aa53dbbf77ef5cc9e64d1bb209389f1c51e48c5953666470186aaaa55db378cb34940ce492693271 SHA512 1d2d466b005cc7537aad1e8222411dad8a86bb82c185f139a6972f8354b47f758fb8555ef04b2217cd082db5b1852ba00b5a5eb0673a57c6423dacbe606c7d39
DIST patch-6.1.190.xz 8545036 BLAKE2B 7274d34639907c7046c0b0c3a0393237c2029b6ace1649988d2300595476efd6518d56012c5ec959f305e4d5aad0b096512421936f31a33bd8764668947aa357 SHA512 57dbccc1f17780b006c6220d4134fd52b4c90bef04d0103e4ad3f07ba730bae6c04b0cbc3d6cc160d60803b75f48fa3b3b9895b9b18cb96a4e97b1e32ef0c032
DIST patch-6.12.113.xz 6689048 BLAKE2B 609315b7d6a35740264de198d74d15590699bcbea961498447dfa4ad3dfbd2456d46acc53c67e01f3273f6c0b598c27bb9bfeccf38dde683e07526565996d0ce SHA512 5deb2c19be8ae04054ae5b8071c70bab134a10d1af5356cd415ae6b3930822b0667a749bef3306c37d4b23a9a8cec3dc150f3a7813c04f188d3ab08512066e7e
+DIST patch-6.12.114.xz 7053696 BLAKE2B 34bba5dc19d612d689641a79ecedf2fcdf93c056035dbd61f3dce7fceeef609032b56c6954d25ec5414cbb44242f419440693d2e936927d37d78d01202eb68cf SHA512 e9e101066d5903322db14106aaab0d965586d43d1cde6af8595bf2209f49fd40917799afc686c5afde86edaf4c4c2660d9123d6eb717c1b13474d3d2c099f1c7
DIST patch-6.18.57.xz 4853352 BLAKE2B bbba2577501892839aec780373bebdcce4519cc57dfbb0884f1f445acfc8bc7652e734a902bb13d7040c5d81257b3cf0f8b8eb1d7ef2e4187edd2bbe0e2ce7a9 SHA512 893f32e4eae9ebe826222876b846b7c0ffc7d19d1e2e5cd837d4af7c29431d549fdf7c3485f03effc64668d7d07d7271210862a8ca0f0bbf9db5b248fd0f1e06
+DIST patch-6.18.58.xz 4871040 BLAKE2B f1777cc10ee5db95f35e1138a01331e77a88b85cf9ac768c30596df6388977718262a21d681ea7a92b7c3cd16715cc1eb54c53026ae43ee2d3f20c85f0c0fc1f SHA512 71fb2885de97bc9eee53c71d0d891822c3b101fefeed1251838e94586b1f46cb3062c600c5edb161a6df2d5f125c4209aab478f34bc78ad972704800d270a9b3
DIST patch-6.6.159.xz 7442892 BLAKE2B 06cd919a71b0483f8732f32ac8604b47e210976b8acacffd3ebe10b7f15bb9fa4143057ae4e109a23373d5dbe34ec3389bd7706776630e1e9a1f94f9368a888e SHA512 f40980ef05d3221b4c30036e6b529af9cc3ff8f497647dc244e48aeabb23613c73918bca63f21745fa7889f4644335adfd405d783cd863627ad54d12dad5d7c6
+DIST patch-6.6.160.xz 8136952 BLAKE2B 782ec29b5390fc50039adede1bf3c7efc244b96eec7de446a2772b9f6e8be42d5d57dfeca549b8b759c993dc14694030165421c3cf9d9c5b1b84ec349bbd12f8 SHA512 7636bbb770f9387872fe1405563e2e76d2f6b017a948b75ed8b2de76bdae54691d8ad5366baafaaafcb8dffa34d745b04459e21bbfdb939fbd1951fe94cc4d38
DIST patch-7.2.11.xz 1760352 BLAKE2B f8d1d6d2d15604ad5a9f533dce240bea99dae3d868d5ed54cac7316434307f6af0ffa3c69c3cc49c8ba1cd2ed731d77507364f81e0d850736926731ff9afcb75 SHA512 6da1c08ff2ed0d5780b3184d01607ad15de9270df2b4ee98a9a6fb56725445a5b6491624b0847a58c5277dd525960b850965cc0e14046bf9191ef2bc876a1550
+DIST patch-7.2.12.xz 1764632 BLAKE2B 07b449ac6c425b714dcc8d711f63e454dbd138953a173471da9834f87f676ef0fa100db2299e8d9ce17e5030b471363881f015d1a0a9a1284f8c7bbdc12164a7 SHA512 99db288c1b3b584b77e56ca0e8616d54558b1be93212f1e28854dc3c7bf083765066c7e27b2b239ab038c687a4909535a9f7d8172d718007b5ffeedca753e14d
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.12.114.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.12.114.ebuild
new file mode 100644
index 000000000000..f1788e4e222c
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.12.114.ebuild
@@ -0,0 +1,152 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.12.97
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=6.12.41-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Linux kernel built with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://gitweb.gentoo.org/fork/fedora/kernel.git/snapshot/kernel-${CONFIG_VER}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ arm? ( savedconfig )
+ hppa? ( savedconfig )
+ sparc? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ local patch
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+
+ local biendian=false
+
+ # prepare the default config
+ case ${ARCH} in
+ arm | hppa | loong | sparc)
+ > .config || die
+ ;;
+ amd64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ ppc)
+ # assume powermac/powerbook defconfig
+ # we still package.use.force savedconfig
+ cp "arch/powerpc/configs/pmac32_defconfig" .config || die
+ ;;
+ ppc64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ riscv)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-riscv64-fedora.config" .config || die
+ ;;
+ x86)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-gentoo-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ local merge_configs=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ "${dist_conf_path}"/6.12+.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.18.58.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.18.58.ebuild
new file mode 100644
index 000000000000..686461f5d599
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.18.58.ebuild
@@ -0,0 +1,192 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.18.42
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=6.18.12-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+# Debian kconfig commit from:
+# https://salsa.debian.org/kernel-team/linux/-/tree/debian/latest/debian/
+DEBIAN_COMMIT=b19b382f183d421a407f5d708dde1eff5009274d
+
+DESCRIPTION="Linux kernel built with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://gitweb.gentoo.org/fork/fedora/kernel.git/snapshot/kernel-${CONFIG_VER}.tar.bz2
+ https://salsa.debian.org/kernel-team/linux/-/archive/${DEBIAN_COMMIT}/linux-${DEBIAN_COMMIT}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ hppa? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ local patch
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+
+ local biendian=false
+ local merge_configs=()
+
+ # prepare the default config
+ case ${ARCH} in
+ hppa | mips)
+ > .config || die
+ ;;
+ alpha)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config.alpha-smp"
+ )
+ ;;
+ amd64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config.armmp-lpae"
+ )
+ ;;
+ arm64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ loong)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/loong64/config"
+ )
+ ;;
+ m68k)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/m68k/config"
+ )
+ ;;
+ ppc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/powerpc/config.powerpc"
+ )
+ ;;
+ ppc64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ riscv)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-riscv64-fedora.config" .config || die
+ ;;
+ s390)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-s390x-fedora.config" .config || die
+ ;;
+ sparc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config.sparc64" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config.sparc64-smp"
+ )
+ ;;
+ x86)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-gentoo-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ merge_configs+=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ "${dist_conf_path}"/6.12+.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.160.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.160.ebuild
new file mode 100644
index 000000000000..62f4e224e390
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.6.160.ebuild
@@ -0,0 +1,149 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-6.6.145
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=6.6.12-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Linux kernel built with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/$(ver_cut 1-2)/${PATCHSET}.tar.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://gitweb.gentoo.org/fork/fedora/kernel.git/snapshot/kernel-${CONFIG_VER}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ arm? ( savedconfig )
+ hppa? ( savedconfig )
+ riscv? ( savedconfig )
+ sparc? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ local patch
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+
+ local biendian=false
+
+ # prepare the default config
+ case ${ARCH} in
+ arm | hppa | loong | riscv | sparc)
+ > .config || die
+ ;;
+ amd64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ ppc)
+ # assume powermac/powerbook defconfig
+ # we still package.use.force savedconfig
+ cp "arch/powerpc/configs/pmac32_defconfig" .config || die
+ ;;
+ ppc64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ x86)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-gentoo-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ local merge_configs=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-7.2.12.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-7.2.12.ebuild
new file mode 100644
index 000000000000..afae67b7402e
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-7.2.12.ebuild
@@ -0,0 +1,191 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+PATCH_PV=${PV%_p*}
+PATCHSET=linux-gentoo-patches-7.1.9
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=7.2.10-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+# Debian kconfig commit from:
+# https://salsa.debian.org/kernel-team/linux/-/tree/debian/latest/debian/
+DEBIAN_COMMIT=31e70f1f469ef1ce4c910df1d12b7de09da561d1
+
+DESCRIPTION="Linux kernel built with Gentoo patches"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/patchsets/7.1/${PATCHSET}.tar.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/config/fedora-kernel-config-${CONFIG_VER}.tar.xz
+ https://salsa.debian.org/kernel-team/linux/-/archive/${DEBIAN_COMMIT}/linux-${DEBIAN_COMMIT}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ hppa? ( savedconfig )
+ mips? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ local patch
+ eapply "${WORKDIR}/patch-${PATCH_PV}"
+ eapply "${WORKDIR}/${PATCHSET}"
+
+ default
+
+ # add Gentoo patchset version
+ local extraversion=${PV#${PATCH_PV}}
+ sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
+
+ local biendian=false
+ local merge_configs=()
+
+ # prepare the default config
+ case ${ARCH} in
+ hppa | mips)
+ > .config || die
+ ;;
+ alpha)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config"
+ )
+ ;;
+ amd64)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config.armmp-lpae"
+ )
+ ;;
+ arm64)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ loong)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/loong64/config"
+ )
+ ;;
+ m68k)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/m68k/config"
+ )
+ ;;
+ ppc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/powerpc/config"
+ )
+ ;;
+ ppc64)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ riscv)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-riscv64-fedora.config" .config || die
+ ;;
+ s390)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-s390x-fedora.config" .config || die
+ ;;
+ sparc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config"
+ )
+ ;;
+ x86)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-gentoo-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ merge_configs+=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ "${dist_conf_path}"/6.12+.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/gentoo-sources/Manifest b/sys-kernel/gentoo-sources/Manifest
index 34ef33741afb..b909a0d4e904 100644
--- a/sys-kernel/gentoo-sources/Manifest
+++ b/sys-kernel/gentoo-sources/Manifest
@@ -4,14 +4,25 @@ DIST genpatches-6.1-206.extras.tar.xz 2184 BLAKE2B e75f8d1d446ddf5fe5f04ac323734
DIST genpatches-6.12-125.base.tar.xz 7951436 BLAKE2B d4e87c8feb07d22a68f0f2d5cf5ca567cc20a0c787dff2df5a9be3e12deaacf7ca089afa359604098c7bdcaf0d4185e0221c6fffa179ce0b7acbb69195d19280 SHA512 f774f3b49f0276d3de281eb628c37482e2763b20f64b4bfa280d7a6998e035e713e130091cdfa9579af2ce724397a5138bfe9dc28e34e87118f784ffffb4b19f
DIST genpatches-6.12-125.experimental.tar.xz 6056 BLAKE2B 725aae19856603a9b6e686eb895152015d5fd49340e4a74bdd6e0d8bb005ec57112186c124e4955b55fed034b216a9bbf8b753b46ff43d5dc22517b67e361a21 SHA512 92c9b5b04ae063dcc387ca4d91b652d19b7fb906f432263f3163ce69a263319159a4004b4f4d2d4dc032797647dbc7ab7d31a0466a3b333e2635590e3c31130c
DIST genpatches-6.12-125.extras.tar.xz 2184 BLAKE2B 7695e6788b1c3c2cac83dd6d06833b9751afe50a80d77ce6ebfd0656b99111e0ea844f90f59d2a5601fcce8d57795159cb2da9e8498cc167b4f62a75bf20c3c3 SHA512 f3f44ab4456081562554c6f8c9d34fc37fc2ceed5226d00d8c4a61aa97d6ad2ca44645d81955430310739f63877623b47843be2727b25e15f95b49035b56d8b6
+DIST genpatches-6.12-126.base.tar.xz 8413456 BLAKE2B a2cca0da0de4f288a232440bfec3872598866de8e234e23695b6ccf69f601698404f4e86ffd176738e76857954bdf2b372ed030cd113c12510a7580ecc416371 SHA512 8e52eb2ed2f1ae9238380817f8da1ed57e97a14e000f59875a6f2e790d353a9b70d82df1f825f974eb443e15e7ebb1df723d3cd53db683ba0031c6e41dd9ebf1
+DIST genpatches-6.12-126.experimental.tar.xz 6052 BLAKE2B e70a98d72dfb259e3b9cda312beccbb943c6572843f9240d983659a29bc9cdcc532ae3da2be38657eada0b0517253a20c2768d491f7ab371865c3d221469de05 SHA512 864d4731cef1b1323bc5b1754cdfd4abe61ce72d6fd7b1a6b5d780f407f3ab8ec1fbd6706acb5f4a1f127f7822b70748ec2945de9eb4b961f2b88800a408c0ba
+DIST genpatches-6.12-126.extras.tar.xz 2184 BLAKE2B 43a561fb23f8950af71154f69e3a6131596eedb9eb8208f2c90cab38773461ace04b4a51f3b4ea4bdcd16438f9879e042f76fdc9495590659f2ec028f25cfead SHA512 cb2189a50aaca19f01644b82fb3cea83a91c4aff37c87ef0c9e02c1d1338f1ef3c07af5f7c5c1ea2737d5f4f33de462eb69756e6e1b743972014e927d7d1f5f4
DIST genpatches-6.18-65.base.tar.xz 5494548 BLAKE2B 31f28db0325175b87eb01d69a295f041d5147c91675613bb6777a2f6ca4ddbb4371cb03d2ad630c03e8abd41c8a8a7133b8b3aebbc774fb02741cb0fbb4eebed SHA512 5acab9d4927b9ea8a84a2fd2ed573cb7fb23d4ef1850715910f53b675146f4047b87fba8ab4c0d104fe8158aff4ecb6c798f86a06d567ecfbc62130f93ff3059
DIST genpatches-6.18-65.extras.tar.xz 2176 BLAKE2B 88a29161733f41ca8afb97e362cd3898c6bed14d5f671b0842ab11c95980b0842d986bc69ec861de95788fa17791db2687b27c70cea78095dce4350ab976dac7 SHA512 3059fdbaa804d06f9b7fd79b20fc3f086905942ae7ee147e094bea82e6783b592431f973baead879dfdfc79709aa682c730511084aac482ff34c21e08bd1714d
+DIST genpatches-6.18-66.base.tar.xz 5519780 BLAKE2B c5f8a402b1cee8e3c9453ae0e6549baf9448f03da4c019baa95a0de08bcac5885814593682befb28f99ffeae45b38db2990a9faf66d272a57a244cbae0e2ad94 SHA512 8d12c4bb9a8db0c6674506c47857be37b8ca842f98407930dcb8a1d907f41b5cde9006a61e39344ed155976dae48229de020b99510b5ff02b1e03c5ae8decf33
+DIST genpatches-6.18-66.extras.tar.xz 2176 BLAKE2B 9dedfa705234a680fe4966d0c9af41a45ea93de52a969de12081d95d04aac7ca080467242fd17394b0fdd3ea4e911b8ebc77b2c7606ae1d2b64a08adfaf6f76a SHA512 e92649426baa6abbc9ebeea5d94bf1e2e1a87040c0ecf65483fb68a92b4b41abf2ea2bf143f7f34596df5b638cfe5f0a746cc924ba5a88cd8b237e29b0f34c62
DIST genpatches-6.6-173.base.tar.xz 9111132 BLAKE2B 7801e17ef186f1af7ba17d00564cd06ca6898628a71d041564f4dfb48dd623043928fbb147e4bc222c76868e6503e0f0299ed60a1023a025703b664841c8e4eb SHA512 48b9d1ef645313499e959132ce58582b9574f9d59d553c56e450beb5ca7603af55f59d0fb919507e67fb9e8621cb27a6c7b360d5ce095e040284f79ce34e040a
DIST genpatches-6.6-173.experimental.tar.xz 6048 BLAKE2B eae8ad089ad59b978604219058320b1dfb46b91eff3a48fdcd1dd02b8a40d54d875562648f73b4f827c911173378cd0b633e24a14a104c206013582417b9d99f SHA512 93a5518f0c3457b1dc3d7c9d9f8501d727749f8fac5342a1b83a550a95742f247c8bd31ba29bdc54b0be9d6c303a4c9c2e2a3d81c44ad0968bb25e7d35ae3557
DIST genpatches-6.6-173.extras.tar.xz 2184 BLAKE2B c931dc4f4b52a15bb8f28516fa7aefa036a25b370f0f9f1d7384a041eef256aa79b33158c0c09eeff31086b67e4db2d7b7c0ede8183335e3519595136d0cc0ac SHA512 342ba82fe762444ff7398a5704d79a061490e51beeb43ca70fb6b20e60261fd4bd4d14e5fe1bc3d45450937d5c8159f266f467fa8bf496025e350b431d99f1a5
+DIST genpatches-6.6-174.base.tar.xz 10041932 BLAKE2B 50f99ec791856acb5cf744016b6955c0b7edec1bd5616d3ac3bf447a4cf2b74dc4c6acf35db5a9470aaa240212f417f16921338267ea33f1c5d8803a6766f97d SHA512 aa66c312c225a4155d39d368e599d198c25368e5b7e85b9172e1a8d19402a73ae91f16f0bb22a13190af51bb20ac524e4306f2e5c36e4edea08dfbc42878a83b
+DIST genpatches-6.6-174.experimental.tar.xz 6048 BLAKE2B 94c2b375838f72575f5b85d15f97f6e4ff629fc2751d2522d38c8e5465a426bd947156c303d4c3c777f696488b547f9ea73ee6cb06ededabdb6ca5c4e1723f0c SHA512 261c7d45a6e6caac5daa21e09b9ea56d241f33f8e5b3e33529c1fdd129459f2e65dfa8689ea695c72ac94011da083c4203a79ccd5af5016e38c567b692e2b2d1
+DIST genpatches-6.6-174.extras.tar.xz 2180 BLAKE2B 89f83f9b62b9aa5e69b7584c0261c0f9bc3891f9de888d8f0299df9659e0c3eb0a480ffef08a9a974e15b17112e234af06e31612faf1af2ac209d56d8d8012f7 SHA512 34ed2ce46e37afdc723022da6ab210100b67412456eca9a75c3c319030ba6890c81233ef80087eb549ec6f941e8d4beae8486f69c87d5acbb09e9698e2af6c65
DIST genpatches-7.2-12.base.tar.xz 1815156 BLAKE2B f85c485cbe3bcf605468a6c696bbd2f72016694e9363489c9478d618184e22b992449d6b76c45c75ffe47bcb63bd8661629c638820b48c1f50dd620440a91433 SHA512 76c6d559b5994615269d62c924732ab7496fe5d5c9a220a1b84da60244016ee0bb189ecf577df7bfc65420ab9f0ef2a1fb9e6c27406293a3e608ff203c1d5a90
DIST genpatches-7.2-12.experimental.tar.xz 77880 BLAKE2B 0f907d5f7eacc61565395bef2673d02553ca6b6c8a32c2cad93838cec5fa496a4c869db0fdfc49611d2c111220ad163134e4069535246440968a2c7f7e4af96e SHA512 323a8255b53e3189cb311f78d44f56685ba1f98672bbe70c8e64d5ba8832dc6c6d552adc7f255e101edc5b537476bd619cdc11a3c543a1d093ce5f2e62db17bb
DIST genpatches-7.2-12.extras.tar.xz 2176 BLAKE2B d1fd459d829f26631c2c9d50fe8f4592a9611fe14a937ca45e882e1fff2262ae6b4adc856fd4081ce2de7a59abfb787fa75c1a2c7bcbd3f917b7de6df476638d SHA512 fc4be6845503a00a7ba301d14c9aa063d4981b855c632314c25d65dcc1e904520fb63749560d448b600f487ad3996a295c28708d8d834a4ab605e7c00d10ce9e
+DIST genpatches-7.2-13.base.tar.xz 1820764 BLAKE2B f1e4374c395021152041edd5ed9574855b940cc5450642eedd9dd097234b2ef606498719cd8d3b04a3599642927d575612b28b891a6061845e11ff8afd93b215 SHA512 aa06f51a46be6572f410fc598c73ed9109d38646786208fd4ffcf1e6a74d99c4e5e214a5fd2d73af575f5ef8105ae43961bc5e4847c5d3579a9ef6f6e25b57df
+DIST genpatches-7.2-13.experimental.tar.xz 77864 BLAKE2B 13cf2a1d256831cfe2aa9c1faf8a5f022d675b8d03849edf59cef376190cebbc9f656d77b967cec060345e0658166ea19d2ea397f953931a381cd0480b891098 SHA512 6ea1be870e9f641a786829ff1809a07f87760ef105b9c9c19e4596624ef782112957adcd0fe058c69a454053b7cacc375f51bf59ff2156c9edf842596b546fa8
+DIST genpatches-7.2-13.extras.tar.xz 2176 BLAKE2B 0c4cab8150af85c31c6daf2323de963b050b5a095cc2ad0e853f499452c42f6d736bfde6d3786fd23f5211888e557820bbaec34c5f50fc15d19c39213deddad6 SHA512 0c552a22ccc87a072ec2dddf51a6eb0e42b7a5fa872be6aa8a0eca9513bf7de65a5c2274580b08fda7c64db8745feec6812abc7e1e7354bee89ce62d249e4185
DIST genpatches-7.3-1.base.tar.xz 10956 BLAKE2B b76cc5965646dd7f2e18a48b63c0f2aaf6d837318958c86b4984905e3dc154fc68c338299c48dea9a5140fe0422f429824d7a522b3fba74a324597cbb68cd752 SHA512 687aef8c7fea431ba8a14c07fcaf0c02bbce71bab9931301860fa02568ac393ce5b3050adc2a5874cd472075d75a1446056a0fb38ef7b6bc997760a0aa5f8dfa
DIST genpatches-7.3-1.extras.tar.xz 2176 BLAKE2B 24ff15a0d2319a48979402337b620fbc0298d676b0f87156718e2db367e2fb5c7ef7badd707e9708623d567cc0b00e849cf0b05a8ca52872883c28c1781093d3 SHA512 3f728fe4312823fbd2701439cba88e62f13c7c4ed5aba0bbd3e7c908e6340d1e159c7210502212d311f7fdd84b59c784a6d6acc89f77fa270ca33285917718c7
DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b3d535c45e44c2e541bd0928530a3b62de6385dd4e4726ebbedcc0a871d4f3ffb4105b9f1f6d8ed7467f5688e SHA512 6ed2a73c2699d0810e54753715635736fc370288ad5ce95c594f2379959b0e418665cd71bc512a0273fe226fe90074d8b10d14c209080a6466498417a4fdda68
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-6.12.114.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-6.12.114.ebuild
new file mode 100644
index 000000000000..68882aa5527f
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-6.12.114.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras experimental"
+K_GENPATCHES_VER="126"
+
+inherit check-reqs kernel-2
+detect_version
+detect_arch
+
+DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
+HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="experimental"
+
+pkg_pretend() {
+ CHECKREQS_DISK_BUILD="4G"
+ check-reqs_pkg_pretend
+}
+
+src_prepare() {
+ kernel-2_src_prepare
+ rm "${S}/tools/testing/selftests/tc-testing/action-ebpf"
+}
+
+pkg_postinst() {
+ kernel-2_pkg_postinst
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+}
+
+pkg_postrm() {
+ kernel-2_pkg_postrm
+}
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-6.18.58.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-6.18.58.ebuild
new file mode 100644
index 000000000000..13a01a8081e3
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-6.18.58.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras"
+K_GENPATCHES_VER="66"
+
+inherit check-reqs kernel-2
+detect_version
+detect_arch
+
+DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
+HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="experimental"
+
+pkg_pretend() {
+ CHECKREQS_DISK_BUILD="4G"
+ check-reqs_pkg_pretend
+}
+
+src_prepare() {
+ kernel-2_src_prepare
+ rm "${S}/tools/testing/selftests/tc-testing/action-ebpf"
+}
+
+pkg_postinst() {
+ kernel-2_pkg_postinst
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+}
+
+pkg_postrm() {
+ kernel-2_pkg_postrm
+}
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-6.6.160.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-6.6.160.ebuild
new file mode 100644
index 000000000000..4cce32a650c5
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-6.6.160.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras experimental"
+K_GENPATCHES_VER="174"
+
+inherit kernel-2
+detect_version
+detect_arch
+
+DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
+HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="experimental"
+
+pkg_postinst() {
+ kernel-2_pkg_postinst
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+}
+
+pkg_postrm() {
+ kernel-2_pkg_postrm
+}
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-7.2.12.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-7.2.12.ebuild
new file mode 100644
index 000000000000..b656a3497aff
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-7.2.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+ETYPE="sources"
+K_WANT_GENPATCHES="base extras experimental"
+K_GENPATCHES_VER="13"
+K_NO_VERSION_CHECK=0
+
+inherit check-reqs kernel-2
+detect_version
+detect_arch
+
+DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
+HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches"
+SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="experimental"
+
+pkg_pretend() {
+ CHECKREQS_DISK_BUILD="4G"
+ check-reqs_pkg_pretend
+}
+
+src_prepare() {
+ kernel-2_src_prepare
+ rm "${S}/tools/testing/selftests/tc-testing/action-ebpf"
+}
+
+pkg_postinst() {
+ kernel-2_pkg_postinst
+ einfo "For more info on this patchset, and how to report problems, see:"
+ einfo "${HOMEPAGE}"
+}
+
+pkg_postrm() {
+ kernel-2_pkg_postrm
+}
diff --git a/sys-kernel/vanilla-kernel/Manifest b/sys-kernel/vanilla-kernel/Manifest
index e0a9f84c5eb3..a5ffa7db72e0 100644
--- a/sys-kernel/vanilla-kernel/Manifest
+++ b/sys-kernel/vanilla-kernel/Manifest
@@ -12,11 +12,17 @@ DIST linux-6.12.tar.xz 147906904 BLAKE2B b2ec2fc69218cacabbbe49f78384a5d259ca581
DIST linux-6.18.tar.xz 154309096 BLAKE2B b94b7b9bf18aca0c3e50baf79b009a1448fc6cd9c3ee019f641cc247dcf53a4abef4274ee0608ad8cd4943af69854363a95d26e117ff23620bb07dccb158859f SHA512 88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0
DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f9844a6c4db3e1fd461c93ce1ccda650ca72dceb4890ebcbbf768ba8fba0bce91efc49fbd2c307b04e95665f2 SHA512 458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35
DIST linux-6.x-sha256sums-20261015.asc 254444 BLAKE2B fb7843a33a6cd0a9754584fd5e2f457b920272eb45ec276111e5abb694e61e9bd21aa7df23886afc6f3b21b4199000f26edc4b105b377939fbf1e65c689e6b98 SHA512 f15b0ce4e7bec0e6ea9e1d70e5d8530aa8bd75a8213a7ecafbb07ee5292f3fc84b662c9e46af1d6963158186507606c048eb571cbdb2808b4a095a0aba178c6f
+DIST linux-6.x-sha256sums-20261021.asc 255471 BLAKE2B fc99332d5a7dea5cc11fefc47c853c4ee456956e60ebe6a3028f32bd4f21e75bc08b4619c53ae93e28201730a0f4bc07757ca8ca569f1d3845afa1a0804ecfa3 SHA512 98b87460ce3fdd1133c875419fa848618d9e02d9aef7a279d3b702ebb954afa89feb4f8bc5e316cd448a3fbc0b8cdaaaae5c08663f9dbd4f417dc5c75904b5bb
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261015.asc 14555 BLAKE2B ced3a0e412b1a07fc918ea42b6ccee91859a4e6d5f4a94408e86a7b3875a09d72b8312b5fd7c6ce22ad8e6d3d51bf20def1c3c064bb4d07cfc99f37b3df91245 SHA512 e36a0f0cff2c2eed4ad95ac91831f5617cba9f69a8262860e959f2dac891370f2a5259fda1404be82eda1215984341dfbe80df5a33b68ff1109bb247a38a9939
+DIST linux-7.x-sha256sums-20261021.asc 15217 BLAKE2B 45e2051163c00a9583f849ba7c4ae21a05e003048f194f9c5f0ba5dd0bb5c3b75585e23183ab77ab862255092d513220f808fdade03d8f80aafc29cf9acf0ae5 SHA512 04cb3f28f2a8a198e6933ad1e3a4647a81ec10b49a490fb0fcb67f50ec83e5ad227504eae2cb65b5ca0fdb61e27912b609728f50bf4f807e8f5ebae15c137646
DIST linux-b19b382f183d421a407f5d708dde1eff5009274d.tar.bz2 1401905 BLAKE2B fdb884e73fe206f91a39e76a76fdb1d703eb0529dc97b7f3129dacd3ae9f33c8acf14820a00facb07e99cee89acdad77b9cb43e95458656eabf375b1bb507b22 SHA512 1a9c210271a8a6b88a304b91a31caa693fbd289babfed8ee7767e834fc860f9a5cb52e457cbc548246cc7816d24490f7568389a71089975edfc4e31bd83f9490
DIST patch-6.1.190.xz 8545036 BLAKE2B 7274d34639907c7046c0b0c3a0393237c2029b6ace1649988d2300595476efd6518d56012c5ec959f305e4d5aad0b096512421936f31a33bd8764668947aa357 SHA512 57dbccc1f17780b006c6220d4134fd52b4c90bef04d0103e4ad3f07ba730bae6c04b0cbc3d6cc160d60803b75f48fa3b3b9895b9b18cb96a4e97b1e32ef0c032
DIST patch-6.12.113.xz 6689048 BLAKE2B 609315b7d6a35740264de198d74d15590699bcbea961498447dfa4ad3dfbd2456d46acc53c67e01f3273f6c0b598c27bb9bfeccf38dde683e07526565996d0ce SHA512 5deb2c19be8ae04054ae5b8071c70bab134a10d1af5356cd415ae6b3930822b0667a749bef3306c37d4b23a9a8cec3dc150f3a7813c04f188d3ab08512066e7e
+DIST patch-6.12.114.xz 7053696 BLAKE2B 34bba5dc19d612d689641a79ecedf2fcdf93c056035dbd61f3dce7fceeef609032b56c6954d25ec5414cbb44242f419440693d2e936927d37d78d01202eb68cf SHA512 e9e101066d5903322db14106aaab0d965586d43d1cde6af8595bf2209f49fd40917799afc686c5afde86edaf4c4c2660d9123d6eb717c1b13474d3d2c099f1c7
DIST patch-6.18.57.xz 4853352 BLAKE2B bbba2577501892839aec780373bebdcce4519cc57dfbb0884f1f445acfc8bc7652e734a902bb13d7040c5d81257b3cf0f8b8eb1d7ef2e4187edd2bbe0e2ce7a9 SHA512 893f32e4eae9ebe826222876b846b7c0ffc7d19d1e2e5cd837d4af7c29431d549fdf7c3485f03effc64668d7d07d7271210862a8ca0f0bbf9db5b248fd0f1e06
+DIST patch-6.18.58.xz 4871040 BLAKE2B f1777cc10ee5db95f35e1138a01331e77a88b85cf9ac768c30596df6388977718262a21d681ea7a92b7c3cd16715cc1eb54c53026ae43ee2d3f20c85f0c0fc1f SHA512 71fb2885de97bc9eee53c71d0d891822c3b101fefeed1251838e94586b1f46cb3062c600c5edb161a6df2d5f125c4209aab478f34bc78ad972704800d270a9b3
DIST patch-6.6.159.xz 7442892 BLAKE2B 06cd919a71b0483f8732f32ac8604b47e210976b8acacffd3ebe10b7f15bb9fa4143057ae4e109a23373d5dbe34ec3389bd7706776630e1e9a1f94f9368a888e SHA512 f40980ef05d3221b4c30036e6b529af9cc3ff8f497647dc244e48aeabb23613c73918bca63f21745fa7889f4644335adfd405d783cd863627ad54d12dad5d7c6
+DIST patch-6.6.160.xz 8136952 BLAKE2B 782ec29b5390fc50039adede1bf3c7efc244b96eec7de446a2772b9f6e8be42d5d57dfeca549b8b759c993dc14694030165421c3cf9d9c5b1b84ec349bbd12f8 SHA512 7636bbb770f9387872fe1405563e2e76d2f6b017a948b75ed8b2de76bdae54691d8ad5366baafaaafcb8dffa34d745b04459e21bbfdb939fbd1951fe94cc4d38
DIST patch-7.2.11.xz 1760352 BLAKE2B f8d1d6d2d15604ad5a9f533dce240bea99dae3d868d5ed54cac7316434307f6af0ffa3c69c3cc49c8ba1cd2ed731d77507364f81e0d850736926731ff9afcb75 SHA512 6da1c08ff2ed0d5780b3184d01607ad15de9270df2b4ee98a9a6fb56725445a5b6491624b0847a58c5277dd525960b850965cc0e14046bf9191ef2bc876a1550
+DIST patch-7.2.12.xz 1764632 BLAKE2B 07b449ac6c425b714dcc8d711f63e454dbd138953a173471da9834f87f676ef0fa100db2299e8d9ce17e5030b471363881f015d1a0a9a1284f8c7bbdc12164a7 SHA512 99db288c1b3b584b77e56ca0e8616d54558b1be93212f1e28854dc3c7bf083765066c7e27b2b239ab038c687a4909535a9f7d8172d718007b5ffeedca753e14d
diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-6.12.114.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-6.12.114.ebuild
new file mode 100644
index 000000000000..b416c294cdcc
--- /dev/null
+++ b/sys-kernel/vanilla-kernel/vanilla-kernel-6.12.114.ebuild
@@ -0,0 +1,142 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=6.12.41-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Linux kernel built from vanilla upstream sources"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PV}.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://gitweb.gentoo.org/fork/fedora/kernel.git/snapshot/kernel-${CONFIG_VER}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ arm? ( savedconfig )
+ hppa? ( savedconfig )
+ sparc? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/patch-${PV}"
+ default
+
+ local biendian=false
+
+ # prepare the default config
+ case ${ARCH} in
+ arm | hppa | loong | sparc)
+ > .config || die
+ ;;
+ amd64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ ppc)
+ # assume powermac/powerbook defconfig
+ # we still package.use.force savedconfig
+ cp "arch/powerpc/configs/pmac32_defconfig" .config || die
+ ;;
+ ppc64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ riscv)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-riscv64-fedora.config" .config || die
+ ;;
+ x86)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ local merge_configs=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ "${dist_conf_path}"/6.12+.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-6.18.58.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-6.18.58.ebuild
new file mode 100644
index 000000000000..f66e23881f32
--- /dev/null
+++ b/sys-kernel/vanilla-kernel/vanilla-kernel-6.18.58.ebuild
@@ -0,0 +1,182 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=6.18.12-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+# Debian kconfig commit from:
+# https://salsa.debian.org/kernel-team/linux/-/tree/debian/latest/debian/
+DEBIAN_COMMIT=b19b382f183d421a407f5d708dde1eff5009274d
+
+DESCRIPTION="Linux kernel built from vanilla upstream sources"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PV}.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://gitweb.gentoo.org/fork/fedora/kernel.git/snapshot/kernel-${CONFIG_VER}.tar.bz2
+ https://salsa.debian.org/kernel-team/linux/-/archive/${DEBIAN_COMMIT}/linux-${DEBIAN_COMMIT}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ hppa? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/patch-${PV}"
+ default
+
+ local biendian=false
+ local merge_configs=()
+
+ # prepare the default config
+ case ${ARCH} in
+ hppa | mips)
+ > .config || die
+ ;;
+ alpha)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config.alpha-smp"
+ )
+ ;;
+ amd64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config.armmp-lpae"
+ )
+ ;;
+ arm64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ loong)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/loong64/config"
+ )
+ ;;
+ m68k)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/m68k/config"
+ )
+ ;;
+ ppc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/powerpc/config.powerpc"
+ )
+ ;;
+ ppc64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ riscv)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-riscv64-fedora.config" .config || die
+ ;;
+ s390)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-s390x-fedora.config" .config || die
+ ;;
+ sparc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config.sparc64" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config.sparc64-smp"
+ )
+ ;;
+ x86)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ merge_configs+=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ "${dist_conf_path}"/6.12+.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-6.6.160.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-6.6.160.ebuild
new file mode 100644
index 000000000000..f7f1873bd4a3
--- /dev/null
+++ b/sys-kernel/vanilla-kernel/vanilla-kernel-6.6.160.ebuild
@@ -0,0 +1,139 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=6.6.12-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+
+DESCRIPTION="Linux kernel built from vanilla upstream sources"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PV}.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://gitweb.gentoo.org/fork/fedora/kernel.git/snapshot/kernel-${CONFIG_VER}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ arm? ( savedconfig )
+ hppa? ( savedconfig )
+ riscv? ( savedconfig )
+ sparc? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/patch-${PV}"
+ default
+
+ local biendian=false
+
+ # prepare the default config
+ case ${ARCH} in
+ arm | hppa | loong | riscv | sparc)
+ > .config || die
+ ;;
+ amd64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ ppc)
+ # assume powermac/powerbook defconfig
+ # we still package.use.force savedconfig
+ cp "arch/powerpc/configs/pmac32_defconfig" .config || die
+ ;;
+ ppc64)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ x86)
+ cp "${WORKDIR}/kernel-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ local merge_configs=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-7.2.12.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-7.2.12.ebuild
new file mode 100644
index 000000000000..b0f8851a7443
--- /dev/null
+++ b/sys-kernel/vanilla-kernel/vanilla-kernel-7.2.12.ebuild
@@ -0,0 +1,181 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KERNEL_IUSE_GENERIC_UKI=1
+
+inherit kernel-build toolchain-funcs verify-sig
+
+BASE_P=linux-${PV%.*}
+# https://koji.fedoraproject.org/koji/packageinfo?packageID=8
+# forked to git.gentoo.org:fork/fedora/kernel
+CONFIG_VER=7.2.10-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261021
+# Debian kconfig commit from:
+# https://salsa.debian.org/kernel-team/linux/-/tree/debian/latest/debian/
+DEBIAN_COMMIT=31e70f1f469ef1ce4c910df1d12b7de09da561d1
+
+DESCRIPTION="Linux kernel built from vanilla upstream sources"
+HOMEPAGE="
+ https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
+ https://www.kernel.org/
+"
+SRC_URI+="
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PV}.xz
+ https://gitweb.gentoo.org/proj/dist-kernel/gentoo-kernel-config.git/snapshot/${GENTOO_CONFIG_P}.tar.bz2
+ https://distfiles.gentoo.org/pub/proj/dist-kernel/config/fedora-kernel-config-${CONFIG_VER}.tar.xz
+ https://salsa.debian.org/kernel-team/linux/-/archive/${DEBIAN_COMMIT}/linux-${DEBIAN_COMMIT}.tar.bz2
+ verify-sig? (
+ https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
+ -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
+ )
+"
+S=${WORKDIR}/${BASE_P}
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="debug hardened"
+REQUIRED_USE="
+ hppa? ( savedconfig )
+ mips? ( savedconfig )
+"
+
+BDEPEND="
+ debug? ( dev-util/pahole )
+ verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
+"
+PDEPEND="
+ >=virtual/dist-kernel-${PV}
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
+
+QA_FLAGS_IGNORED="
+ usr/src/linux-.*/scripts/gcc-plugins/.*.so
+ usr/src/linux-.*/vmlinux
+ usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
+"
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
+ sha256 "${BASE_P}.tar.xz patch-${PV}.xz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/patch-${PV}"
+ default
+
+ local biendian=false
+ local merge_configs=()
+
+ # prepare the default config
+ case ${ARCH} in
+ hppa | mips )
+ > .config || die
+ ;;
+ alpha)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config"
+ )
+ ;;
+ arm)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/armhf/config.armmp-lpae"
+ )
+ ;;
+ amd64)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-x86_64-fedora.config" .config || die
+ ;;
+ arm64)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-aarch64-fedora.config" .config || die
+ biendian=true
+ ;;
+ loong)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/loong64/config"
+ )
+ ;;
+ m68k)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/m68k/config"
+ )
+ ;;
+ ppc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/powerpc/config"
+ )
+ ;;
+ ppc64)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-ppc64le-fedora.config" .config || die
+ biendian=true
+ ;;
+ riscv)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-riscv64-fedora.config" .config || die
+ ;;
+ s390)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-s390x-fedora.config" .config || die
+ ;;
+ sparc)
+ cp "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/config" .config || die
+ merge_configs+=(
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config"
+ )
+ ;;
+ x86)
+ cp "${WORKDIR}/fedora-kernel-config-${CONFIG_VER}/kernel-i686-fedora.config" .config || die
+ ;;
+ *)
+ die "Unsupported arch ${ARCH}"
+ ;;
+ esac
+
+ local myversion="-dist"
+ use hardened && myversion+="-hardened"
+ echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
+ local dist_conf_path="${WORKDIR}/${GENTOO_CONFIG_P}"
+
+ merge_configs+=(
+ "${T}"/version.config
+ "${dist_conf_path}"/base.config
+ "${dist_conf_path}"/6.12+.config
+ )
+ use debug || merge_configs+=(
+ "${dist_conf_path}"/no-debug.config
+ )
+ if use hardened; then
+ merge_configs+=( "${dist_conf_path}"/hardened-base.config )
+
+ tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
+
+ if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
+ merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
+ fi
+ fi
+
+ # this covers ppc64 and aarch64_be only for now
+ if [[ ${biendian} == true && $(tc-endian) == big ]]; then
+ merge_configs+=( "${dist_conf_path}/big-endian.config" )
+ fi
+
+ use secureboot && merge_configs+=(
+ "${dist_conf_path}/secureboot.config"
+ "${dist_conf_path}/zboot.config"
+ )
+
+ kernel-build_merge_configs "${merge_configs[@]}"
+}
diff --git a/sys-kernel/vanilla-sources/Manifest b/sys-kernel/vanilla-sources/Manifest
index 1ed685aa576b..aed149678b47 100644
--- a/sys-kernel/vanilla-sources/Manifest
+++ b/sys-kernel/vanilla-sources/Manifest
@@ -5,7 +5,7 @@ DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.3.tar.xz 162399360 BLAKE2B b7fb8c74de664fdd0cd7b42afff2720bda5c4bdb2ffffa80a745c5fecd029c6fe739a3ecbdaa5c5e27194a8acb9bf861271e7bafe6eb475bb3ccd6862e4caf60 SHA512 14b99ea7cc2adc0798a183ac5f3e184587f2496c3b2d1d53b625574389891c69e8be375b5d03875fe859b09ac9314aa15da604087274ba815671135bd6a0e590
DIST patch-6.1.190.xz 8545036 BLAKE2B 7274d34639907c7046c0b0c3a0393237c2029b6ace1649988d2300595476efd6518d56012c5ec959f305e4d5aad0b096512421936f31a33bd8764668947aa357 SHA512 57dbccc1f17780b006c6220d4134fd52b4c90bef04d0103e4ad3f07ba730bae6c04b0cbc3d6cc160d60803b75f48fa3b3b9895b9b18cb96a4e97b1e32ef0c032
-DIST patch-6.12.113.xz 6689048 BLAKE2B 609315b7d6a35740264de198d74d15590699bcbea961498447dfa4ad3dfbd2456d46acc53c67e01f3273f6c0b598c27bb9bfeccf38dde683e07526565996d0ce SHA512 5deb2c19be8ae04054ae5b8071c70bab134a10d1af5356cd415ae6b3930822b0667a749bef3306c37d4b23a9a8cec3dc150f3a7813c04f188d3ab08512066e7e
-DIST patch-6.18.57.xz 4853352 BLAKE2B bbba2577501892839aec780373bebdcce4519cc57dfbb0884f1f445acfc8bc7652e734a902bb13d7040c5d81257b3cf0f8b8eb1d7ef2e4187edd2bbe0e2ce7a9 SHA512 893f32e4eae9ebe826222876b846b7c0ffc7d19d1e2e5cd837d4af7c29431d549fdf7c3485f03effc64668d7d07d7271210862a8ca0f0bbf9db5b248fd0f1e06
-DIST patch-6.6.158.xz 7441668 BLAKE2B 6250c577b430a6ae4883af6d8fba6d5baf5a09cc2ab1365010f1ba53b5b6e1a7b392364a3cd18e3a34b00488ffcf6abf8eef3b7c9137a6e26bfccf41002e93bf SHA512 4c455be321bb92e276bc422d0370297c9e648dd49f32198f5db843bb1caa826b30446aa9bdd1f051c59b97daddbb47e6fe62c2ee122f604b0d226bf14291002f
-DIST patch-7.2.11.xz 1760352 BLAKE2B f8d1d6d2d15604ad5a9f533dce240bea99dae3d868d5ed54cac7316434307f6af0ffa3c69c3cc49c8ba1cd2ed731d77507364f81e0d850736926731ff9afcb75 SHA512 6da1c08ff2ed0d5780b3184d01607ad15de9270df2b4ee98a9a6fb56725445a5b6491624b0847a58c5277dd525960b850965cc0e14046bf9191ef2bc876a1550
+DIST patch-6.12.114.xz 7053696 BLAKE2B 34bba5dc19d612d689641a79ecedf2fcdf93c056035dbd61f3dce7fceeef609032b56c6954d25ec5414cbb44242f419440693d2e936927d37d78d01202eb68cf SHA512 e9e101066d5903322db14106aaab0d965586d43d1cde6af8595bf2209f49fd40917799afc686c5afde86edaf4c4c2660d9123d6eb717c1b13474d3d2c099f1c7
+DIST patch-6.18.58.xz 4871040 BLAKE2B f1777cc10ee5db95f35e1138a01331e77a88b85cf9ac768c30596df6388977718262a21d681ea7a92b7c3cd16715cc1eb54c53026ae43ee2d3f20c85f0c0fc1f SHA512 71fb2885de97bc9eee53c71d0d891822c3b101fefeed1251838e94586b1f46cb3062c600c5edb161a6df2d5f125c4209aab478f34bc78ad972704800d270a9b3
+DIST patch-6.6.159.xz 7442892 BLAKE2B 06cd919a71b0483f8732f32ac8604b47e210976b8acacffd3ebe10b7f15bb9fa4143057ae4e109a23373d5dbe34ec3389bd7706776630e1e9a1f94f9368a888e SHA512 f40980ef05d3221b4c30036e6b529af9cc3ff8f497647dc244e48aeabb23613c73918bca63f21745fa7889f4644335adfd405d783cd863627ad54d12dad5d7c6
+DIST patch-7.2.12.xz 1764632 BLAKE2B 07b449ac6c425b714dcc8d711f63e454dbd138953a173471da9834f87f676ef0fa100db2299e8d9ce17e5030b471363881f015d1a0a9a1284f8c7bbdc12164a7 SHA512 99db288c1b3b584b77e56ca0e8616d54558b1be93212f1e28854dc3c7bf083765066c7e27b2b239ab038c687a4909535a9f7d8172d718007b5ffeedca753e14d
diff --git a/sys-kernel/vanilla-sources/vanilla-sources-6.12.113.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-6.12.114.ebuild
index 5cd983bb2664..5cd983bb2664 100644
--- a/sys-kernel/vanilla-sources/vanilla-sources-6.12.113.ebuild
+++ b/sys-kernel/vanilla-sources/vanilla-sources-6.12.114.ebuild
diff --git a/sys-kernel/vanilla-sources/vanilla-sources-6.18.57.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-6.18.58.ebuild
index 99d9dcaf656f..99d9dcaf656f 100644
--- a/sys-kernel/vanilla-sources/vanilla-sources-6.18.57.ebuild
+++ b/sys-kernel/vanilla-sources/vanilla-sources-6.18.58.ebuild
diff --git a/sys-kernel/vanilla-sources/vanilla-sources-6.6.158.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-6.6.159.ebuild
index 5cd983bb2664..5cd983bb2664 100644
--- a/sys-kernel/vanilla-sources/vanilla-sources-6.6.158.ebuild
+++ b/sys-kernel/vanilla-sources/vanilla-sources-6.6.159.ebuild
diff --git a/sys-kernel/vanilla-sources/vanilla-sources-7.2.11.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-7.2.12.ebuild
index 99d9dcaf656f..99d9dcaf656f 100644
--- a/sys-kernel/vanilla-sources/vanilla-sources-7.2.11.ebuild
+++ b/sys-kernel/vanilla-sources/vanilla-sources-7.2.12.ebuild
diff --git a/sys-process/iotop-c/Manifest b/sys-process/iotop-c/Manifest
index c97ad4f2dc0b..64fe701694e8 100644
--- a/sys-process/iotop-c/Manifest
+++ b/sys-process/iotop-c/Manifest
@@ -1,3 +1,4 @@
+DIST iotop-1.32.tar.xz 133216 BLAKE2B bd6b1105e9d9b8c8b257a72f90056efaee710a40d4a09c54433173fd12baba7974ea35956e676b3a3b62d62b120b565195dd376be110c65f1c9bca3f108c787a SHA512 bcd4c67547f02d8f10510aa5aa87c65d7dd92aab8b333a95eabf87fbeae417af3a1c7876da66585e30fac8e553e080812f59439a4f1653a7a6a98fe3d71dc3f1
DIST iotop-c-1.27.tar.gz 142334 BLAKE2B 80e8ff6d90d325533a9097596dd0353d26214e2302931d0268a2d8f491a9e531d795ba450eac2b0f4bea7beb88317053f8d23308fcdbf52570991255afb81ea0 SHA512 55a93e2f3c6aaeb46ca219a77e64706083b8746d1299e8ab576780a2c6a17eb5612c1280531432748afb90ded5e6677149301ea2641b4f77cd3a2d91700b1fbb
DIST iotop-c-1.29.tar.gz 145648 BLAKE2B d89499161b899d8d62f5c41913c2b1d3dbecf0239e307fa374c85717df7568acf73f68fc14da44410d215215e7b9991f384d5a5591f957198caa79311a7a6274 SHA512 23593814c1ae70db0b1c1a47c09132efbe57ef912d8b120593b0d1c78a96eb457acdb4742505e659759ff87e91cbc630091c698b6583fe1be36dbd81c54281fd
DIST iotop-c-1.30.tar.gz 145992 BLAKE2B df43e66696924e0b875e495bc3c8be2228946fc596e6611280020ef39bd18f90f52d9c9a1908111b2d4e01cf2d4911fbe79be5eb2ae897e83ff2e5e17d9e355d SHA512 8447a617371b23d32fbb8dad7c328985faa246cbce800f66d0a1ed1223167bf5a43245318fa35ac33d7c0bbd90a93d495f011811f4547b285ea0377812e9bb1e
diff --git a/sys-process/iotop-c/iotop-c-1.32.ebuild b/sys-process/iotop-c/iotop-c-1.32.ebuild
new file mode 100644
index 000000000000..9bc5ea3f0b06
--- /dev/null
+++ b/sys-process/iotop-c/iotop-c-1.32.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fcaps linux-info toolchain-funcs
+
+DESCRIPTION="top utility for IO (C port)"
+HOMEPAGE="https://github.com/Tomas-M/iotop"
+SRC_URI="https://github.com/Tomas-M/iotop/releases/download/v${PV}/iotop-${PV}.tar.xz"
+S="${WORKDIR}/iotop-${PV}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ sys-libs/ncurses:=
+ !sys-process/iotop
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+CONFIG_CHECK="~TASK_IO_ACCOUNTING ~TASK_DELAY_ACCT ~TASKSTATS ~VM_EVENT_COUNTERS"
+
+FILECAPS=(
+ cap_net_admin=eip usr/bin/iotop
+)
+
+src_prepare() {
+ sed -e 's/-D_FORTIFY_SOURCE=2//' -i Makefile || die
+ default
+}
+
+src_compile() {
+ emake V=1 CC="$(tc-getCC)" PKG_CONFIG="$(tc-getPKG_CONFIG)" NO_FLTO=1
+}
+
+src_install() {
+ dobin iotop
+ dodoc README.md
+ doman iotop.8
+}
diff --git a/virtual/dist-kernel/dist-kernel-6.12.114.ebuild b/virtual/dist-kernel/dist-kernel-6.12.114.ebuild
new file mode 100644
index 000000000000..13848dc136b6
--- /dev/null
+++ b/virtual/dist-kernel/dist-kernel-6.12.114.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Virtual to depend on any Distribution Kernel"
+SLOT="0/${PVR}"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ || (
+ ~sys-kernel/gentoo-kernel-${PV}
+ ~sys-kernel/gentoo-kernel-bin-${PV}
+ ~sys-kernel/vanilla-kernel-${PV%_p*}
+ )
+"
diff --git a/virtual/dist-kernel/dist-kernel-6.18.58.ebuild b/virtual/dist-kernel/dist-kernel-6.18.58.ebuild
new file mode 100644
index 000000000000..3e0fb5394edd
--- /dev/null
+++ b/virtual/dist-kernel/dist-kernel-6.18.58.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Virtual to depend on any Distribution Kernel"
+SLOT="0/${PVR}"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ || (
+ ~sys-kernel/gentoo-kernel-${PV}
+ ~sys-kernel/gentoo-kernel-bin-${PV}
+ ~sys-kernel/vanilla-kernel-${PV%_p*}
+ )
+"
diff --git a/virtual/dist-kernel/dist-kernel-6.6.160.ebuild b/virtual/dist-kernel/dist-kernel-6.6.160.ebuild
new file mode 100644
index 000000000000..13848dc136b6
--- /dev/null
+++ b/virtual/dist-kernel/dist-kernel-6.6.160.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Virtual to depend on any Distribution Kernel"
+SLOT="0/${PVR}"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ || (
+ ~sys-kernel/gentoo-kernel-${PV}
+ ~sys-kernel/gentoo-kernel-bin-${PV}
+ ~sys-kernel/vanilla-kernel-${PV%_p*}
+ )
+"
diff --git a/virtual/dist-kernel/dist-kernel-7.2.12.ebuild b/virtual/dist-kernel/dist-kernel-7.2.12.ebuild
new file mode 100644
index 000000000000..c6e96ed25616
--- /dev/null
+++ b/virtual/dist-kernel/dist-kernel-7.2.12.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Virtual to depend on any Distribution Kernel"
+SLOT="0/${PVR}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ || (
+ ~sys-kernel/gentoo-kernel-${PV}
+ ~sys-kernel/gentoo-kernel-bin-${PV}
+ ~sys-kernel/vanilla-kernel-${PV%_p*}
+ ~sys-kernel/gentoo-kernel-modprep-${PV}
+ )
+"
diff --git a/www-apps/byparr/byparr-3.0.4-r1.ebuild b/www-apps/byparr/byparr-3.0.4-r1.ebuild
new file mode 100644
index 000000000000..3b077dd1563a
--- /dev/null
+++ b/www-apps/byparr/byparr-3.0.4-r1.ebuild
@@ -0,0 +1,83 @@
+# 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=no
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 systemd
+
+DESCRIPTION="Proxy server to bypass captchas"
+HOMEPAGE="https://github.com/ThePhaseless/Byparr"
+SRC_URI="https://github.com/ThePhaseless/Byparr/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/Byparr-${PV}"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ acct-group/byparr
+ acct-user/byparr
+
+ $(python_gen_cond_dep '
+ dev-python/fastapi[${PYTHON_USEDEP}]
+ dev-python/invisible-playwright[${PYTHON_USEDEP}]
+ dev-python/playwright-captcha[${PYTHON_USEDEP}]
+ dev-python/playwright[${PYTHON_USEDEP}]
+ dev-python/pydantic-settings[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/trafilatura[${PYTHON_USEDEP}]
+ dev-python/uvicorn[${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/httpx2[${PYTHON_USEDEP}]
+ dev-python/starlette[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.4-r1-pass-log_level-to-uvicorn.run.patch"
+)
+
+EPYTEST_DESELECT=(
+ "tests/main_test.py::test_bypass"
+ "tests/main_test.py::test_health_check"
+ "tests/main_test.py::test_json_api"
+ "tests/main_test.py::test_pdf_handling"
+ "tests/owui_test.py::test_networkidle_timeout_still_extracts_content"
+ "tests/owui_test.py::test_owui_load_accepts_valid_key"
+ "tests/owui_test.py::test_owui_load_basic"
+ "tests/owui_test.py::test_owui_load_invalid_url_graceful"
+ "tests/owui_test.py::test_owui_load_multiple_urls"
+)
+
+EPYTEST_PLUGINS=( pytest-asyncio )
+distutils_enable_tests pytest
+
+src_prepare() {
+ # Let's turn `src` into a proper Python module
+ find . \
+ -type f -name "*.py" \
+ -exec sed 's/from src/from byparr/g' -i {} + || die
+ sed 's/src\./byparr\./g' -i tests/owui_test.py || die
+ mv src byparr || die
+
+ sed -e '1i #!/usr/bin/env python' -i main.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_install() {
+ python_domodule "${PN}"
+ python_newscript main.py "${PN}"
+
+ systemd_dounit "${FILESDIR}/byparr.service"
+}
diff --git a/www-apps/byparr/files/byparr-3.0.4-r1-pass-log_level-to-uvicorn.run.patch b/www-apps/byparr/files/byparr-3.0.4-r1-pass-log_level-to-uvicorn.run.patch
new file mode 100644
index 000000000000..a55f4a78bb27
--- /dev/null
+++ b/www-apps/byparr/files/byparr-3.0.4-r1-pass-log_level-to-uvicorn.run.patch
@@ -0,0 +1,26 @@
+From: Pavel Sobolev <contact@paveloom.dev>
+Subject: [PATCH] Pass `log_level` to `uvicorn.run`
+
+FastAPI dropped support for extra keyword arguments since `0.145.0`.
+
+See https://github.com/fastapi/fastapi/pull/16518.
+
+Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
+
+--- a/main.py
++++ b/main.py
+@@ -17,7 +17,7 @@ from src.utils import get_browser, logger
+ logger.info("Using version %s", VERSION)
+ logger.info("Log level set to %s", logging.getLevelName(LOG_LEVEL))
+
+-app = FastAPI(debug=LOG_LEVEL == logging.DEBUG, log_level=LOG_LEVEL)
++app = FastAPI(debug=LOG_LEVEL == logging.DEBUG)
+ app.add_middleware(GZipMiddleware)
+ app.add_middleware(LogRequest)
+
+@@ -40,4 +40,4 @@ if __name__ == "__main__":
+ loop.run_until_complete(init())
+ logger.info("Initialization complete.")
+ else:
+- uvicorn.run(app, host=HOST, port=PORT)
++ uvicorn.run(app, host=HOST, port=PORT, log_level=LOG_LEVEL)
diff --git a/www-apps/chromedriver-bin/Manifest b/www-apps/chromedriver-bin/Manifest
index 06a6e918e9da..a0491a59e229 100644
--- a/www-apps/chromedriver-bin/Manifest
+++ b/www-apps/chromedriver-bin/Manifest
@@ -2,5 +2,5 @@ DIST chromedriver-bin-154.0.8037.57.linux-arm64.zip 10935974 BLAKE2B f3557b42779
DIST chromedriver-bin-154.0.8037.57.linux64.zip 11911979 BLAKE2B 4adde8c05e4bed5df1b7a6ea9badd319a0d709cdbaf5a86e9421590013dd287780db58e89e8ed1b5df7b7243b1feff6666fd6f6a6e5d1fc2633168ff32ff641b SHA512 e4e93064c136f42ab0cc356a3bb5c0aa2586cc83bb3023a2cfb80b476ddf7a75ea93a1b990bde6989a154b9f8ebb8c2bb89a40c9ec7090340bcff852bd98f37e
DIST chromedriver-bin-154.0.8037.92.linux-arm64.zip 10936830 BLAKE2B ee99bbb0a782cb3c9c19ba5b24281a7c0cf9ca3a274b6f6766de977407d15117e7e3c9320caa6ee534555961aead08b396f2f1a7b6b26a3cae8b96195ecfa607 SHA512 40fcd6e5cbb36e29c898b475305c50ca00db8c88950cd5a4be814a031ba4e656bffc0158e56a670097d9508349e5d65bcb4010424f9b731a495940a297d9ff48
DIST chromedriver-bin-154.0.8037.92.linux64.zip 11857075 BLAKE2B bb7dedf9391633d1877bca2684c29283a914fc964b64f0bcd0d4370175507d08a45ca14a55c8b98d29c40888f1bef25b2ba7ab1cd9a2fe7e986d206e688a6918 SHA512 30b9b5d3d978ffd0f07964e73b8f1ac5df4099893ccafc2554c6fcf89eb0aa70fbfb1bc6edfa1a305cb2bbefbe6f365d9b2f4363194964d2708f27015a69bdd3
-DIST chromedriver-bin-155.0.8059.39.linux-arm64.zip 10955888 BLAKE2B 059d8defb1adcd32c68c5248bc2f22736961aa00db84041604724df34db4ee42b42e2d9f84af340d27ddb11704109b0dde61a579543e8317264155e67989d3de SHA512 8eb98150c8576fee07f12e06a188dac0b973fcbe8d3068bd8d49ba46e58b52a3d9cfafafc85e679e275e4bf69f53c2ee89e4d3e4d6c4dc4da95bb5cd579b79d8
-DIST chromedriver-bin-155.0.8059.39.linux64.zip 11879709 BLAKE2B b1e5c65bbc87534a73d4004b09c8e842a5d87758a5b2980b3aa1dd18fa7f82f22df2e64bd6abdfdb38f3d4a5b35b75d3e8692cb843d141a55d6be4ab5cde5032 SHA512 5d6ba960eb05c3dc898efe2fe3f1b1468fc917d600ad4601309669cd750db2378c01847478a14c3b8b984e50b3967f3688a3c4f6551dd8503aadbc804d72e04d
+DIST chromedriver-bin-156.0.8078.47.linux-arm64.zip 10946358 BLAKE2B 4924d8beb1117a050f79f59dc79ee68861ef5b87c15de51985f7f590e4ca7c9b41a85d928df4e221f4128377f312b49b13ad7e2f6cf9b09e2a2d5a5c9168c2e1 SHA512 d2e9bced456d20e589069b7ea6ab46f2aa328eb8947e15c675a02a93b76f67f7f9eb34b510f46f659f2b362c046411a3130d10e991bf54e11ba3fbededcc8c50
+DIST chromedriver-bin-156.0.8078.47.linux64.zip 11883134 BLAKE2B 45ba20ffc5a8ee35203a3fd976816f03eef193c27f73a2aff4a4be0d6a8153068f477ba3512121dd796ed51083cfac036935f3768da120968409b8bd0f13e3c7 SHA512 1b4bede6b067698e21f6338bf73e29191f205c07e29378ba2591bec23e61468111d32a8f5a4e548e1d42f962565290149eb52caf1ed65b6ad03cdb75687d054b
diff --git a/www-apps/chromedriver-bin/chromedriver-bin-155.0.8059.39.ebuild b/www-apps/chromedriver-bin/chromedriver-bin-156.0.8078.47.ebuild
index bea1fc095480..b81b83c66c01 100644
--- a/www-apps/chromedriver-bin/chromedriver-bin-155.0.8059.39.ebuild
+++ b/www-apps/chromedriver-bin/chromedriver-bin-156.0.8078.47.ebuild
@@ -14,7 +14,7 @@ S="${WORKDIR}"
LICENSE="google-chrome"
SLOT="0"
-KEYWORDS="-* amd64"
+KEYWORDS="-* amd64 arm64"
RESTRICT="bindist mirror strip"
RDEPEND="
diff --git a/www-client/google-chrome-beta/Manifest b/www-client/google-chrome-beta/Manifest
index 43dcb4372ff7..21f6c7400a8b 100644
--- a/www-client/google-chrome-beta/Manifest
+++ b/www-client/google-chrome-beta/Manifest
@@ -1,6 +1,6 @@
DIST google-chrome-beta_155.0.8059.12-1_amd64.deb 143605280 BLAKE2B c61da480e05b6da92f77c5a50df4870981b6097cc06c71597f4317346d8d42fa99e3151f92b4c8e565622cafb9ad6a0a810989a58b3c3854f85c6e349091e83c SHA512 63e39d2bed7cab9cee876dad071eb928e6509443cc8397232cc7d334047aba610235b25bdad241e14104e6a5ae457d01370dd67d445aac7bf1222ce341055ddc
DIST google-chrome-beta_155.0.8059.12-1_arm64.deb 135813912 BLAKE2B d44ec2ec4d33d484a5ac56f836749eb2dfe3f7789d45f1cabd12842ca3ffe9743973eeb31750bfdf3a5de72df10d6894992ce9eabe92b71698b0f1bd38d5a82f SHA512 e811af724fc4294df0488816490ea3e35a9124e7f113a7c03c511934e9ddcc49d39b2462699c568050dec010c8e0347cc601eea04be20057e8b59e5d10033dd1
-DIST google-chrome-beta_156.0.8078.12-1_amd64.deb 144873264 BLAKE2B 32481c9a0537c28f826d3ca1e4c619d14a26134d4baee7bc57a96e2b96a7dd13ae8550f2ccffd173437431dabd90a5243d20d5457d8ceed4e3ca9f41cb1f495b SHA512 703ca46bfe6c2df7e3ebf81c5868d3e47a3a0afeb7c22fee63aed45cc41fb19a64128bb21f2d955c71a376c68f934997381118ad905d0969734485dc37f4f06a
-DIST google-chrome-beta_156.0.8078.12-1_arm64.deb 136702628 BLAKE2B 9fdcaf05ddc02a1fa99b758bdacf7f52d17de0850d5d43de16450aebb4ffc85005ac2f98ade27c84f7aace1ba5bcf151bcaf2f34dac4514d073911e91f24e874 SHA512 62d3d5ca3270cf884376527275c98f541a097e5735dd0800f6f8ffda3334759e95596dfaade39738f52fec9259be3627fcd92386c4a5af86c6beb59f9535827c
DIST google-chrome-beta_156.0.8078.4-1_amd64.deb 144860768 BLAKE2B 8d1802e9fcefb1be2d946ddc74430dabe490b49041291dc3bd907ec62ff506b627662388fa038f33a2001a7b11afb27d23581725fb685403569a1bd7915f28f1 SHA512 4f43eed048a4a648a42f9d28a7ab9e7db8a911be7066e13b0811ea941886abc1421390d5d66cfefbe915e373e67f979395679343ebaaef7b19dde84215ef87cd
DIST google-chrome-beta_156.0.8078.4-1_arm64.deb 136586204 BLAKE2B 66e88833ebad934229dab42af8e9d078643aea0382e438ba458f6f3251ff6eec464a87ff507cfd5dccfedbd1372b02c38809fe51cc788241bb0289eb5dd3c3f7 SHA512 1dede01b45ff8f6bac8c7fd4db06866edfe93407859297d2e8f9557356e6845d8841a5b24e013153479d903be932bbb6e7ece9a8ad6e48ace3882037ef8f23f9
+DIST google-chrome-beta_157.0.8103.6-1_amd64.deb 146776016 BLAKE2B c6be5502b766db1ed629c5ebcc4d478c4d7b8bedb73492aa1702faa174d09f510a26ba1750ac2355ff65369432bd0f9020c2e4c29929c9c9340c749ea1b37b33 SHA512 6ddb804e2ad4b7c9adaf64e025014d46c0ad07866915849340c860356a8ede2374f051575f8b7916e5657f47306c7f7e84711238fbd5e0bddc5cc70ec3f8987b
+DIST google-chrome-beta_157.0.8103.6-1_arm64.deb 138959112 BLAKE2B e6d22f7b426eafd34ac1277f4d2a7f2ecd6fe79f8fba7677e537964a3362761440ed8da38a6f3fe127eb85b5f1f9a8913dd75e2e2004092f14d24f94cec54195 SHA512 fb875947090416f98b0501dd418694094e61f1cfbf735a5a0f6a47b33069a7c4a740359abb7c4be8638e8f0f6caf8852733e27794f82ba63053e7f24b7cc0a6b
diff --git a/www-client/google-chrome-beta/google-chrome-beta-156.0.8078.12.ebuild b/www-client/google-chrome-beta/google-chrome-beta-157.0.8103.6.ebuild
index 575099ccee4f..575099ccee4f 100644
--- a/www-client/google-chrome-beta/google-chrome-beta-156.0.8078.12.ebuild
+++ b/www-client/google-chrome-beta/google-chrome-beta-157.0.8103.6.ebuild
diff --git a/www-client/google-chrome-unstable/Manifest b/www-client/google-chrome-unstable/Manifest
index 3a4555b674bd..85ff9dc936d6 100644
--- a/www-client/google-chrome-unstable/Manifest
+++ b/www-client/google-chrome-unstable/Manifest
@@ -2,5 +2,5 @@ DIST google-chrome-unstable_156.0.8063.3-1_amd64.deb 143651480 BLAKE2B 1861b5322
DIST google-chrome-unstable_156.0.8063.3-1_arm64.deb 135866780 BLAKE2B 406f6b578f12b0dc330292531a2cb04ea6621e8c982a1b12660a3eef6be0ec41be14e895f1aa56e7f3bd0a4face95781151f92b89a45122f7c618ba1dfdf0900 SHA512 42d5cb16a9638090ab23bf51678618527f06262327320fa3e1eabd96a94c8708962e8a85a9c30b7a2bd1e1adc10ed1227a62faed6d82b6129db8cfd2edc1adfb
DIST google-chrome-unstable_156.0.8072.0-1_amd64.deb 144573000 BLAKE2B 3212d057c97f25d6f5d417e214f2b432931ff357766b5889ea298375c02d7e57b0901b34d9796638cbf45ccf97e018da880682771dffbe25b70375204a3098cf SHA512 8114d6c511e6cafb2d38747e3bdb56e208eb8ebd12bc36bf7f0d54bf930cc4ddfce78bfbcac52502c0dc93c14a407b41dafde1c10861d89c72bcc575ca66211d
DIST google-chrome-unstable_156.0.8072.0-1_arm64.deb 136466616 BLAKE2B f5d269426f151ef6f208107de7305f8c05eade97051c299077fca981ccc8cb6f9a433b90f6180bfcdcc4f4a1ac7756ee5d532ce2183ee75be8ea1d1967d37069 SHA512 cbe08929f18d7461bd868075bedddbaef84d18283ccf5e671cffb5b38cd6e096398053bded512498b51fe08ef3f955f14edd7276e4091d0ba8ef229b0c4ea1ff
-DIST google-chrome-unstable_157.0.8081.0-1_amd64.deb 144920716 BLAKE2B ef98665e1ce97874c9c7b0989fc6dd470c4ea1fff1d5dfc032e497dba1c530561c0eb8cc0a17851d58f2f7aff3a89cbd3b2c8a863765f3da193b21672ac0ee55 SHA512 a7ca8158e8c8d8344fad74b5daf4d22a0b0148a20ca07fa1f3fbf9b6b7ec7ab237f3ee160efc8c8a55edcc6d3cf10d14497cda5c23f770e233f10dcff4fe932b
-DIST google-chrome-unstable_157.0.8081.0-1_arm64.deb 136923704 BLAKE2B b5131d9c3282166672074c6381b30eb141a91accbf2f39867bbeeb4a384b4edff2b8a8aa496864ac662463e16f0bc29341149fac08ab8e6bf1070df3cf837cac SHA512 994c38c1e0dc3a2c0302a30d3da205cd11a0fba48b6921519e8e4c507c0bf8b57af7290f0086c0bc7274410d6da38042df3151acc624b7e1eccc616ecc9e5451
+DIST google-chrome-unstable_158.0.8106.0-1_amd64.deb 147679128 BLAKE2B 7cf35bdc85e22b9e83c0fb0378b952cb48e8fc937044846bae26d6b0c43423b090a161de2eab13dfbdc35b269f6242810ce761ffb9fcab81b5dd1f1a1eb3b6f6 SHA512 3c556358bcc307388b25e0f666d221d379554dc39d024dda254383d58385cbc6cd20f03233d43189485ec183d494623d6005793c2f3541ecf3eccb1d97236313
+DIST google-chrome-unstable_158.0.8106.0-1_arm64.deb 139405792 BLAKE2B ce892cd013481a54f45ef26cca9d9b3ee0a88a8cb07fc536f21dd693f6fcb0eb673affa51f755aabda353fc4291c108deac87823e977877104b3ea2f4cc14679 SHA512 374b852f2f59c3afe032d67058e70da9e2e9e0962db0d22b8940b219b43f8614c3fb0562e9df27378071bb8773ffe792a6ddc134fb85dabb2c826db8c7dfeff9
diff --git a/www-client/google-chrome-unstable/google-chrome-unstable-157.0.8081.0.ebuild b/www-client/google-chrome-unstable/google-chrome-unstable-158.0.8106.0.ebuild
index 575099ccee4f..575099ccee4f 100644
--- a/www-client/google-chrome-unstable/google-chrome-unstable-157.0.8081.0.ebuild
+++ b/www-client/google-chrome-unstable/google-chrome-unstable-158.0.8106.0.ebuild
diff --git a/www-client/google-chrome/Manifest b/www-client/google-chrome/Manifest
index c14ec1a51584..3eee226044d4 100644
--- a/www-client/google-chrome/Manifest
+++ b/www-client/google-chrome/Manifest
@@ -2,5 +2,5 @@ DIST google-chrome-stable_154.0.8037.57-1_amd64.deb 142114088 BLAKE2B cfa2681547
DIST google-chrome-stable_154.0.8037.57-1_arm64.deb 134410956 BLAKE2B d170e1784ac890e3551ea669cd3bb898bdf38fc0a507d37b8d67727d9cb98d580b800a81aaaa56b74ae21dbe6d958e9b08928a07c1a0fe00067a19ddb35f0ebd SHA512 b409cd701801d0e1c204c4eede536d9439a481db5b5ab6e475016f8845cfc3d47ae656412fac6e0988072d05037f3a94a4059ac2b0534b6f283471b8778bf6c3
DIST google-chrome-stable_154.0.8037.92-1_amd64.deb 142883344 BLAKE2B de3f3f7272319f62aa12d034e8feac4b3dd0ed7b7b1a76e113d78c1908b25c90a33f19d9b3018f2c4da155c9575624c8c9457387a176cd8ea33092a04f6eb081 SHA512 528f474f27254d188c9bc837b863f559d37ff1037b16053387075c0d0d3314c5506312112fa19c36c9d2c321fb83b8b38f77a6703ab1920a8e1d751c9c900101
DIST google-chrome-stable_154.0.8037.92-1_arm64.deb 134430076 BLAKE2B 8397b0855b070db490852d2cc27535c38d9820d272c681b6dafc5338ac394e8496711c7e3470ffee819255f72a8badad84c054bb5adc6f45d3dcab875ef240e4 SHA512 2f5fc99557158172f001bbef10c031be6be7f25564bb7655289956d05468f89c42972608987de47ccd3e2ec1d4db6ed1f5ac6f734a914150252de46c202d3b6a
-DIST google-chrome-stable_155.0.8059.39-1_amd64.deb 143552428 BLAKE2B 2efaa44e68ac2a36feae57f0dc82cb8472f28ca0016b0d7b9ea1fc7ff09c175bd6cad1791a8a73af993aa7e448432d95a1708ae06568f7efd95c313481d825ca SHA512 42b4ec9ec61fee532a848fdf35973d3aba6c083028ee45c98572f1bbd9e51e865cbd5bf9fbbe695b6c9a76936472aaccd58f860ecb8bcce380afa6fd57bcb472
-DIST google-chrome-stable_155.0.8059.39-1_arm64.deb 135706836 BLAKE2B ffb420df6aaddc6fda8cc796c4443a8e792e937d919aa4836251b706db6035e62a707f3bb896c1f691e664a01fa7c098b3d06054ddc20e6767063ab1dd77ac38 SHA512 bcb58757677389245952e4fba354c71c586228abe1e91cf7563895dda3702dcddd031838dbde8e246525e1b15fbfdf6b13c59ed7fc1f4cb52c088d499857adb7
+DIST google-chrome-stable_156.0.8078.47-1_amd64.deb 144849192 BLAKE2B a401589aef8cbccc1a2f7adce44a83ca44338d95e241bf384ef2654e4a7456cb77169fd28c835cce1e3e8b8e30379cb692bf7d84aa2c3707d9ebcbb51e6df861 SHA512 ffd886eb17c3993aef9fe440a2ab56c7b82b95555c693eb81efe09eeb3cf308434a69293bec36b7e363f55d453925c1b2763c989b66d847df67e714ef237b3fc
+DIST google-chrome-stable_156.0.8078.47-1_arm64.deb 136588320 BLAKE2B df690a06124bc7cd5bf80543d14e3ec83aa2496d8d037c492b7fcddd10193005c2e2eff005629e1a107175b5dbc44a3273d3416018b156899d72cc03a7d2acf4 SHA512 732099a8779c4389f7eb3605b2c624a3e659d3a0eeee8d225e80d48813d53468fdd8d5048f670b4d69eecb64e96c573f712f8eabd6d9e28386d4fa0ce0820486
diff --git a/www-client/google-chrome/google-chrome-155.0.8059.39.ebuild b/www-client/google-chrome/google-chrome-156.0.8078.47.ebuild
index f1faad75233a..f1faad75233a 100644
--- a/www-client/google-chrome/google-chrome-155.0.8059.39.ebuild
+++ b/www-client/google-chrome/google-chrome-156.0.8078.47.ebuild
diff --git a/www-client/microsoft-edge-beta/Manifest b/www-client/microsoft-edge-beta/Manifest
index b0439c15e892..23ff79cff00e 100644
--- a/www-client/microsoft-edge-beta/Manifest
+++ b/www-client/microsoft-edge-beta/Manifest
@@ -1,3 +1,3 @@
-DIST microsoft-edge-beta_155.0.4283.33-1_amd64.deb 194343886 BLAKE2B bc519c3927514b92f0211112c6a5ee9e2bee9ff66cb22873f5a30fe7a18511e1fae05462de2aa3f4c905f12d10a526b58fe0eb022a9ba0b91da6e721568bb9c3 SHA512 8ea34ddf65be719b17f6971d96fa84409636a5670dac2a1803ec6741432418f22edfc346db779127ef1bac52aa60678fe8bdc59c7fd5aca8ebefdb5f8c90c116
-DIST microsoft-edge-beta_155.0.4283.39-1_amd64.deb 194332474 BLAKE2B eda7e353d2298205255a94eb37df39773e560ad5759e619c84ad51086d88f64a073226ef029aacdfd27feabac7ab32f8a1da0e818e072cc7799558b72ef25a8a SHA512 220d1f15244580dfd491aaabd83a098143197ffbd960cd06ae19ff2f726cd23c4ca4ad63c344cf6599f59c0add843e870fd1b9a9efa106190427e93458e464f7
-DIST microsoft-edge-beta_156.0.4314.8-1_amd64.deb 200229074 BLAKE2B b7d223f3d046b3d44b6c9511b6bf91df48d6c241e2dd9aca3b3395e21c48b84bdf2b69c07e2e46905e02ade3988e8ca73167ff8ef913e49e449b169b329a7d7f SHA512 5c5beecc7aeea90223d3da0452d8c0741f430a5b8fa9cd399b0312f89a518828f7f93201f8e6d555dd952436fa9ac495e80d259c8e291d1d4df6a4e121cff037
+DIST microsoft-edge-beta_156.0.4314.30-1_amd64.deb 200165634 BLAKE2B b3a043e516d1318d2ad544156c31a035df52066ee67fb4766e35c54fde7a3182811caa2e0b46bfa75ee5c45992f9e606ed4362c4d847cf0457bab2e89745d4bc SHA512 9f39bdba91682c3225e42c9a7234bf9c9a715e44c6a643a215af0270aedc1634b8038c92bb892f3e240449e53277eae4c2d4c0dfb2f555617aa0c993d3f3f478
+DIST microsoft-edge-beta_156.0.4314.36-1_amd64.deb 200137866 BLAKE2B cd005f2a8bdd97db7a7142996b635957efdfa613e853d2b76bcaf16f24361a03f931158487b0762cfb437824d51574197a2887a2fb49b4cfcbf823a320bf0443 SHA512 1707c235efeaa609b4fac25611841a6798b71bccf4b1c6a645144ac59ddb709b0b9058fd9deca9046b978dc2dbc663da075a2ac7c85f099f54e25ef973db4aa6
+DIST microsoft-edge-beta_157.0.4341.10-1_amd64.deb 201119594 BLAKE2B e334e82b91fd1717bc7bb6b556b3f07abaabee4dbff5b962321160b7d7836e0b29de30aeac74e4b6575c1ef2cd42019d4263c31cbe30412d6261e8cdb8efecec SHA512 440b63d9998cd20cdc7e56abf1f7ac81f65ba2e851b8bbb7ab0cef9ae3ed69b8389df93438607a11714359fdb54b01fd6710b6a034662402a925f251639e737d
diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-155.0.4283.33.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.30.ebuild
index 4a155cc26040..4a155cc26040 100644
--- a/www-client/microsoft-edge-beta/microsoft-edge-beta-155.0.4283.33.ebuild
+++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.30.ebuild
diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-155.0.4283.39.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.36.ebuild
index 4a155cc26040..4a155cc26040 100644
--- a/www-client/microsoft-edge-beta/microsoft-edge-beta-155.0.4283.39.ebuild
+++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.36.ebuild
diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.8.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-157.0.4341.10.ebuild
index 4a155cc26040..4a155cc26040 100644
--- a/www-client/microsoft-edge-beta/microsoft-edge-beta-156.0.4314.8.ebuild
+++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-157.0.4341.10.ebuild
diff --git a/www-client/microsoft-edge-dev/Manifest b/www-client/microsoft-edge-dev/Manifest
index 9ebc6768e5c7..1c062eaff79b 100644
--- a/www-client/microsoft-edge-dev/Manifest
+++ b/www-client/microsoft-edge-dev/Manifest
@@ -1,3 +1,3 @@
-DIST microsoft-edge-dev_156.0.4285.0-1_amd64.deb 194145114 BLAKE2B ae5b8370f656e4123a523e75ee336ae0594ff44988868648ff0945f749895a854e787b371a8d3279aed0011a41bf1da8ddff87976b7dfe82f55f833e3a6eed73 SHA512 383f7cd152c95e544eefde37e4069958821be711c8d6c71138f9d2a2f6b0c39a153ace89458739d763fcf14b0a9c50615b2d6e453aa7b1883a4fd39d988c6f48
-DIST microsoft-edge-dev_156.0.4301.0-1_amd64.deb 199578146 BLAKE2B 5ca966aa618241c9aa584f2a35e5e689b34c0b596e9d4377947a86c8df2664e8f05f21f6e2037573c882b8d01fb8308d9bbe8ac5f171183f559375423ec167b3 SHA512 c6fde78a30b9aaa8c70e7e8d745df8b73ff87f33f17b45380026a55c3ad84c8cb1eb137d714aa30e8532967495f787643f2055f3663c0ea174da5385829f3ec1
DIST microsoft-edge-dev_157.0.4322.0-1_amd64.deb 200127938 BLAKE2B 2b966d1ea7ee37214b5c69f1c691571b54600626b13e17993e8814ee40c2d715e6e8ab371891fa16cd56a1c7b574ec9fdd6d16553086c433cfc57178834bbb91 SHA512 a19a5ada85f968ac61e1258a4a9e87d39ff52b94cc0d3ed6e4f7e5cfcd0d5279b0e845e42874a0a2c6c51a440d98e3fce30aa5143941e0f07f65afc8bab1c495
+DIST microsoft-edge-dev_157.0.4329.0-1_amd64.deb 200692094 BLAKE2B 90f0d0993a8c0eaeefb8361ca0fedb56e20349e27ccdb14c7727ad548363beba8e64e165d665184957e3b0c1fd4e62d889adb6fa303ed5efd0492782a80d0acc SHA512 44a87e6bde50566029b363bb7f70c7d41670915c1997c94036dae8ea283d902cc9642ce91a0823c2014f9ebff8357fdca8f60aec636cc79ef4aeb32f73dd4320
+DIST microsoft-edge-dev_158.0.4344.0-1_amd64.deb 200824210 BLAKE2B ca2215469e2935b8725c2426754e3c2199212160c52c208e9ba9c58b7c9e56b2e758d5964c61669c9251439721d62bfce53126779005e616447f57c6e4c372da SHA512 216bac52bd8c0ddfaf202f3dde351f021f58033e02e0b107081371e35cbe312760b171f69b6ad4d357c15003e148ef3867913b43bf29d24909853f127b68b34c
diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-156.0.4285.0.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-157.0.4329.0.ebuild
index 4a155cc26040..4a155cc26040 100644
--- a/www-client/microsoft-edge-dev/microsoft-edge-dev-156.0.4285.0.ebuild
+++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-157.0.4329.0.ebuild
diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-156.0.4301.0.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-158.0.4344.0.ebuild
index 4a155cc26040..4a155cc26040 100644
--- a/www-client/microsoft-edge-dev/microsoft-edge-dev-156.0.4301.0.ebuild
+++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-158.0.4344.0.ebuild
diff --git a/www-client/microsoft-edge/Manifest b/www-client/microsoft-edge/Manifest
index b5f96194a7ac..cb43939c94b0 100644
--- a/www-client/microsoft-edge/Manifest
+++ b/www-client/microsoft-edge/Manifest
@@ -1 +1 @@
-DIST microsoft-edge-stable_155.0.4283.45-1_amd64.deb 194372662 BLAKE2B ea7aa42ef24fa8c869958ac4632946d7b08fc74822b0e05af8c05418e0d650150184aefe5c28436e3c8a73b26f4e774563e60df21073174d7544c5b287232050 SHA512 caabfa83982155ca8afd831e43948681cc689d9b1998c04b0c5048f10d2846cd74210ad635e9c4ffec184a89fef1e71dd227a9a1e1a0ea87d7aa1444b0b31ee2
+DIST microsoft-edge-stable_155.0.4283.62-1_amd64.deb 194357122 BLAKE2B b8ac4121f7ebfeda13077eb49972b158022a7fb56900c3f1e0a06af492845464191c67c43850a5b88e6a34c728a6476669796d94158032577c276380b15ce19c SHA512 97290a44fc32c4a20aeb2cf894ee8147fff7d1fb19cc4dd9a08ee67399303a6bd9e24605bfdd9ce2e0333a93caa3b1545d272ebe2c8ecc40ee084a47709b00a5
diff --git a/www-client/microsoft-edge/microsoft-edge-155.0.4283.45.ebuild b/www-client/microsoft-edge/microsoft-edge-155.0.4283.62.ebuild
index a2d7b75bd501..a2d7b75bd501 100644
--- a/www-client/microsoft-edge/microsoft-edge-155.0.4283.45.ebuild
+++ b/www-client/microsoft-edge/microsoft-edge-155.0.4283.62.ebuild
diff --git a/www-client/opera-developer/Manifest b/www-client/opera-developer/Manifest
index c67357c43024..84077f61925b 100644
--- a/www-client/opera-developer/Manifest
+++ b/www-client/opera-developer/Manifest
@@ -1,2 +1,4 @@
DIST opera-developer_138.0.6038.0_amd64.deb 145483810 BLAKE2B 8a42a25a5f5d6265c7e27565e746e2cf2bd50145d27f9c7ad7d3a6c64caa8cff561ebbfe140d7794f77d34d8f3abec8c80969ebd9c750034b26f890e6000967a SHA512 d8ade99eddef03e2c470351acadebfa68943216f5dfa5d6d6c872d1897dd6c91b9a3bc38045f32fd51a789b2fa90aa19f4ff0f9c0aa7131fae8f92133a8c3440
DIST opera-developer_138.0.6038.0_arm64.deb 154459740 BLAKE2B 3599f0c75e8c09b270201a38b1915f6687ec6ec66b7d49bb01c925906a1822412e20370fc7064622b2018410702a8949cf590a20e5670b575923de54728846f6 SHA512 d55f4f84a31bd984b06770a454e12b729857f1b5c4df2d079f60de8b8a60d2264606a00a76c0ea488f1b58ac4ae2adf99b9d4237ae11625f0432c9243fbe88f3
+DIST opera-developer_139.0.6051.0_amd64.deb 146953004 BLAKE2B e5a504dde8a710583fd3d54cb51e7701b013102aea532b00edaa740c1302eb96bdbbfe322476c14d2da7861b9c915b05d325469ac102f8b8e21072422050dcc0 SHA512 3701319eb7d999688367f773de58c5e6979027ec3cbdc24194fb93fb3047e10156120718a4821c087d69a2621b4c1da61e6acc1a001a49323a6754c78c6bd713
+DIST opera-developer_139.0.6051.0_arm64.deb 155497376 BLAKE2B 89646989aa08098f7ad0271d16a457d51b7988807b743e812b33615a6eeb2b5bf83ebbd77d5823778be7ee6ee8e8e3b4e8d107b3691a367eba09e8f8eeff2775 SHA512 ed9be9d7bbb55b959388b899f9e9b74d967d6cb4a36d0e68d07d70324e5bf61189279829905aa16afa02274f801a0eb3258a910be3054e6c552958e142edbad8
diff --git a/www-client/opera/opera-137.0.6036.39.ebuild b/www-client/opera-developer/opera-developer-139.0.6051.0.ebuild
index 9e07d5e923a0..9e07d5e923a0 100644
--- a/www-client/opera/opera-137.0.6036.39.ebuild
+++ b/www-client/opera-developer/opera-developer-139.0.6051.0.ebuild
diff --git a/www-client/opera/Manifest b/www-client/opera/Manifest
index 16c8ffc26465..f5d6f9260560 100644
--- a/www-client/opera/Manifest
+++ b/www-client/opera/Manifest
@@ -1,2 +1,2 @@
-DIST opera-stable_137.0.6036.39_amd64.deb 145426356 BLAKE2B 7dbf050b3b71538855a0dd2791cf26143292c9d19a5d73474a2767f067464d6d5d6113fe4ddb6ffb83e3efe87b053f9f316bb76d8652012563d7f3d0abbfcc3c SHA512 10464f77cc26619d46406df136f1c6d41e1cab70a1c14345d17c9913e86db65a6875ba7a0ee19c85f341b16f815605ce646d33e309e81696b28e4937cc871520
-DIST opera-stable_137.0.6036.39_arm64.deb 154454248 BLAKE2B 74daa53c6f8836e98a3bd06a66fdf04b4a77ace5b48076fa37ab98161da2b532e3f58b2b0901bcbe3a721b3b44cedb6497f0fc1f3428f036a64279e8c7f0152f SHA512 ea4fe8dfdd242843fa497e53889bbf86b8dcc758a52668a5ca36df2d4816ee73f5d99fc90c2d1a8a53cf5f2ef730afdc32a7253f9d6618aa6c1cbc0c46c3bf97
+DIST opera-stable_138.0.6044.24_amd64.deb 149221902 BLAKE2B 1fa7d13f7c57aa0b00deab0470b8aeef966114b7be275a668ccd259f57d087d3f4511aa6c790b6328d4e5baa708fa89533f0fc790ca747706a6d783121c8f250 SHA512 d232950c76786e4ccf99397c5a0a10147d3972b3540d9dd1ae35074d59be60599f0fa9346dfdc5ca1bce63e6f5efedc84070cd9e98a3222ec0b157b72eee695e
+DIST opera-stable_138.0.6044.24_arm64.deb 157563732 BLAKE2B 053a1e4952f04ed308d23ebcbf754cee0dfdd010c1b16b67fa6ec235072e7542a1854b1a664ddbb7efbf62f7b09683cfffb85e536f007d7bfc65f1c092c761e4 SHA512 f33a4fb1e9c4b1cb4bf4f1be684c78cd1c8b8afb9be467526000683112d72e4f5711c545ba0a2088577ede1af1c2c9bf69524dcdcb87079f3124babd8dbd3e07
diff --git a/www-client/opera/opera-138.0.6044.24.ebuild b/www-client/opera/opera-138.0.6044.24.ebuild
new file mode 100644
index 000000000000..9e07d5e923a0
--- /dev/null
+++ b/www-client/opera/opera-138.0.6044.24.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHROMIUM_LANGS="
+ bg bn ca cs da de el en-GB en-US es-419 es fil fi fr hi hr hu id
+ it ja ko lt lv ms nb nl pl pt-BR pt-PT ro ru sk sr sv sw ta te th tr uk vi
+ zh-CN zh-TW
+"
+
+inherit chromium-2 pax-utils unpacker xdg
+
+DESCRIPTION="A fast and secure web browser"
+HOMEPAGE="https://www.opera.com/"
+
+SRC_URI_BASE=(
+ "https://download1.operacdn.com/pub/${PN}"
+ "https://download2.operacdn.com/pub/${PN}"
+ "https://download3.operacdn.com/pub/${PN}"
+ "https://download4.operacdn.com/pub/${PN}"
+)
+
+if [[ ${PN} == opera ]]; then
+ MY_PN=${PN}-stable
+ SRC_URI_BASE=( "${SRC_URI_BASE[@]/%//desktop}" )
+else
+ MY_PN=${PN}
+fi
+
+# Commit ref from `strings libffmpeg.so | grep -F "FFmpeg version"` matches this Chromium version
+# or use Chromicler to handle bumps.
+# Does not _need_ to be updated for every new version of Opera, only when it breaks.
+CHROMIUM_VERSION="153"
+SRC_URI="
+ amd64? ( ${SRC_URI_BASE[*]/%//${PV}/linux/${MY_PN}_${PV}_amd64.deb} )
+ arm64? ( https://deb.opera.com/opera-stable/pool/non-free/o/${MY_PN}/${MY_PN}_${PV}_arm64.deb )
+"
+S=${WORKDIR}
+
+LICENSE="OPERA-2018"
+SLOT="0"
+KEYWORDS="-* amd64 arm64"
+IUSE="+ffmpeg-chromium +proprietary-codecs +suid qt6"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ gnome-base/gsettings-desktop-schemas
+ media-libs/alsa-lib
+ media-libs/mesa[gbm(+)]
+ net-misc/curl
+ net-print/cups
+ sys-apps/dbus
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:3
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/libxshmfence
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/pango
+ proprietary-codecs? (
+ !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
+ ffmpeg-chromium? ( media-video/ffmpeg-chromium:${CHROMIUM_VERSION} )
+ )
+ qt6? ( dev-qt/qtbase:6[gui,widgets] )
+"
+
+QA_PREBUILT="*"
+OPERA_HOME="opt/${MY_PN}"
+
+pkg_pretend() {
+ # Protect against people using autounmask overzealously
+ use amd64 || use arm64 || die "opera only works on amd64 or arm64"
+}
+
+pkg_setup() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_unpack() {
+ :
+}
+
+src_install() {
+ local deb_libdir="x86_64-linux-gnu"
+ use arm64 && deb_libdir="aarch64-linux-gnu"
+
+ dodir /
+ cd "${ED}" || die
+ unpacker
+
+ # move to /opt, bug #573052
+ mkdir opt || die
+ mv "usr/lib/${deb_libdir}/${MY_PN}" "${OPERA_HOME}" || die
+ rm -r "usr/lib" || die
+
+ # disable auto update
+ rm "${OPERA_HOME}/${PN%-*}_autoupdate"{,.licenses,.version} || die
+
+ rm -r "usr/share/lintian" || die
+
+ # fix docs
+ mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die
+ gzip -d usr/share/doc/${PF}/changelog.gz || die
+
+ # fix desktop file
+ sed -i \
+ -e 's|^TargetEnvironment|X-&|g' \
+ usr/share/applications/${PN}.desktop || die
+
+ # remove unused language packs
+ pushd "${OPERA_HOME}/localization" > /dev/null || die
+ chromium_remove_language_paks
+ popd > /dev/null || die
+
+ # setup opera symlink
+ rm "usr/bin/${PN}" || die
+ dosym "../../${OPERA_HOME}/${PN}" "/usr/bin/${PN}"
+
+ # install proprietary codecs
+ rm "${OPERA_HOME}/resources/ffmpeg_preload_config.json" || die
+ if use proprietary-codecs; then
+ dosym ../../usr/$(get_libdir)/chromium/libffmpeg.so$(usex ffmpeg-chromium .${CHROMIUM_VERSION} "") \
+ /${OPERA_HOME}/libffmpeg.so
+ fi
+
+ rm "${OPERA_HOME}/libqt5_shim.so" || die
+ if ! use qt6; then
+ rm "${OPERA_HOME}/libqt6_shim.so" || die
+ fi
+
+ # pax mark opera, bug #562038
+ pax-mark m "${OPERA_HOME}/opera"
+ # enable suid sandbox if requested
+ use suid && fperms 4711 "/${OPERA_HOME}/opera_sandbox"
+}
diff --git a/www-client/ungoogled-chromium/Manifest b/www-client/ungoogled-chromium/Manifest
index 0cab0418c66e..21e402ff87cd 100644
--- a/www-client/ungoogled-chromium/Manifest
+++ b/www-client/ungoogled-chromium/Manifest
@@ -3,6 +3,7 @@ DIST chromium-154.0.8037.92-linux.tar.xz 1929777968 BLAKE2B 1058fc666f44f3d14fff
DIST chromium-154.0.8037.97-linux.tar.xz 1929902700 BLAKE2B a72ba0c8eee9816513ce64d5b569313f73bbcd9b2e55e4be3f4d4a10507cfac1ac3dccb6c61272235b146bc3a895324345efe6b83881b98b947bda50a3c36881 SHA512 a2d441e02e31629b70d8cb2c6e4cb6bae9fbcaf19483469c7e320d6fdfb5e3da57e7dbee396cf0bf5b36db78d422b0ac019d4570cd39050d4d68d7c584786f83
DIST chromium-155.0.8059.84-linux.tar.xz 2021301468 BLAKE2B 6f4a1bd9b85f2197c81c30b04f0a4693b62d92f1ffba9af37e665a592c9d3335ca553b24a2952fd27b1050410abc3c3ef04b8ff2512923c1467766c1926c0fcb SHA512 6944708d4ee9f6b8c52885ea7174d9a7f013ffb389630e6695238cb75934f1a59f3ff60ea5a1a6422c8685df9ed0c6d966563530010b1cdc5bbf18e823c3c2b2
DIST chromium-156.0.8078.35-lite.tar.xz 2008242132 BLAKE2B 2962ed30c8c16a4dea84032c76294f521708e057ec208ac2ca2cdb60c1b40ba6b2c34f41bd9c7dbc28d371885cbae6a60a47eee5e923415f25c98fe9ee942ffa SHA512 724be07859361ec6958f0b0486c47ba8b4fb343426d4162ee8039080a6a2a05a9c78fba8ecac7eee9d5ee3f40aa2a73b4650472eff8bcf9f7582aa5fcd135c9e
+DIST chromium-156.0.8078.47-lite.tar.xz 2009127748 BLAKE2B 431c387b54217bdfa21e926fd00fe72584694f074a1d9ee70bed85faeafedb369c6c1b987eaeff78f574a0048db796915346cc3faf446cec04ddd6877d5645ab SHA512 798ec60ea2761cec31f88e8f6e34b47ae6d34c1132f6213e6655414622e8584e8e4254e3347dcecb5419408c00bd3e6fbcc4628df5c988e6baea484c6ff2a8d4
DIST chromium-162dc276a85b4f7d353adbe312d05d8e7a4c28e3.patch 36662 BLAKE2B 86a893d1d48e5c6e180c63f801f81bad9dde7dbc0dd15e9e8b39cfd2f61daedf2f4a81fc3f1ce58030f7b46d6de009f2e6ab9c9b35c40fb45c45d44438cf2d55 SHA512 da80aa255081a6c3abec80b25c17756f0f3d1c93e23a9682878551b7879da3cf331d3368d5f7295ee30693a5746875182b5bb2059a23acf98dba6d9c43ddeab9
DIST chromium-cf94ed446320d35c8613ed9b3ffb6e6a61bfcb5f.patch 9972 BLAKE2B 72d3b755214a8cc0299129c645b938746a2e4dff31cc9aa154019ebaf5c29d5ce9a8378dbecbf0455f253c5e10b83dbfd03a10573d8fa93992f2d6ac965a2b1f SHA512 62ffd3162a0c1aa4be51d3ead238b3a84463f8c6d55b9aad5806bcb23dfb2b832ad6aec7f348690c4b3aaf430260352ca558e791ca611d5e791e6b3eadcffcf1
DIST chromium-clang-llvmorg-23-init-19482-g53d18800-1.tar.xz 59093892 BLAKE2B faf8c5011b0271903a9a09a4539002088030eac34ac01c4b84581a556f761f89eac035feda5b97be350679325968db99face036c201972b01dd081ced3468edc SHA512 5d88f1ed4901c80963b6740c9b15a28c33db397f8bf31503502b00caff172e17d37f7b946da31162e04794fee763e0b7456a9fc476827c8a19cdd1e737b9b68a
@@ -13,6 +14,7 @@ DIST chromium-rust-toolchain-b998449636-2-llvmorg-23-init-19482-g53d18800.tar.xz
DIST chromium-testfonts-9c07d19d9c.tar.gz 33413117 BLAKE2B 95cb79288de5697b6de2a6f503f81bcfb7687ea1af0bd0e6db8cfc09af7cdaedd9a83f36dd9d0a3ac19dfca8ac7a6c3a891922a192db012688565c06da8a9cf8 SHA512 2d3602b7a924d2bb8d538882f13a05428e23bf16ea3a9cf07eb13801fe7f33261ce61f2e5dc12e5c6f61f21b392526024d1969e8a967cf1f5138c647b84025b6
DIST cromite-a44e28b8992c99aae7e67478bcdb81b13a724812.tar.gz 175466562 BLAKE2B 97a59de6d35070bb6070f9c8763de819f5ecad99a823868793776708844d1a38229b9650e0f1559f2ac82a74d4cb8382e381b6f79a995e250a1460c626088bda SHA512 ad11b1639d666c68cf24641041f7aade01d827c4c24ab727d9f930b37b10fbd71769bb8698e8146c5c87f67086ab346615a1f8603c1abe19f589a8db42c69014
DIST rollup-wasm-node-4.57.1.tgz 792515 BLAKE2B 52fa9c4b65f3e20149c66fdd44b3c2a8b47e836d87de85535dbbf8b7243acef3d65c5be9f794eebb1533af2f16888a1cb42a75ed392ba65251cf60b73b41d559 SHA512 6f4adc247f329046a77e04de0ed94fb9b86984850ec74a1a01e93ede18b34da164a02d450524ec6341a2c700780f91d9e6bdc6b76c88f5cf0cd7739c5bf916e4
+DIST ungoogled-chromium-0673f8701c94e5688c33ef8ce5e36602d311d246.tar.gz 679725 BLAKE2B 577177fd197718be716f50d9612638b6fef0e7d7673597e206f4a2c422a67f2a2f30a660e6e8b3458c8dc640d72e5af354fcc9d9ec9e9ae437eb7a2b71b0ab7f SHA512 b9b9df8f12c62749d1cf01fa50b27516eca2551eb01541fb3d8c72042d79814fd83d1b0134890e83c5f20263e3d8a436cf7ed9d48df6e54bdb12c3507aabec53
DIST ungoogled-chromium-154.0.8037.57-1.tar.gz 678563 BLAKE2B 954fef8c4d82f850c9b7f6fa1b1fdce8b5989d94eee1a9702ee5fc57e4675d8c835d0b4b4cc32a7fb3feddb717f95b473db61587c8bf3dfacff7ffeedf863404 SHA512 74b64e3586966730259d468874c9368d7d309007bfd2861076eef1cc5a858e790166c78472e42c32ed6adef1aa1deec7012af53289fc1c78c56aa43cd08e71e6
DIST ungoogled-chromium-154.0.8037.92-1.tar.gz 678526 BLAKE2B cd14264bb37e277a06c54176ff7a82711e67de04ee6dc8350856c07b8c73465169809cb4e48932d7ff1cbf77d27aae97bf1caf093e713eae37f5ca3931a4c92f SHA512 3e13c0b4c64be5c96ea2ab9d78af5108f84c4de4d3911ee0b6d919f4b88b11e02cc1c1980c43d1f742ab443a235da35d473b77ecf51c2bac3e7f54605601116c
DIST ungoogled-chromium-154.0.8037.97-1.tar.gz 678518 BLAKE2B 075e345ada027aed58ac3c5ac6bdc9928bbc3989f6741d4f30615459ca75f2e6c4ae6379911a2bb52392f4446b3b90f2eeb1d40527e128579f3b25141a9c47bb SHA512 dfdc053b0fc47261c37755d6b25d08bfd979e1b8eb42f2c3f8ffbccfd614dddd85187f2fc3d896722a2b61ec449278f43c9ed89abf98416303de4abb0191cd62
diff --git a/www-plugins/chrome-binary-plugins/Manifest b/www-plugins/chrome-binary-plugins/Manifest
index 89fa6fae142c..d9418b2738e6 100644
--- a/www-plugins/chrome-binary-plugins/Manifest
+++ b/www-plugins/chrome-binary-plugins/Manifest
@@ -1,18 +1,18 @@
DIST google-chrome-beta_155.0.8059.12-1_amd64.deb 143605280 BLAKE2B c61da480e05b6da92f77c5a50df4870981b6097cc06c71597f4317346d8d42fa99e3151f92b4c8e565622cafb9ad6a0a810989a58b3c3854f85c6e349091e83c SHA512 63e39d2bed7cab9cee876dad071eb928e6509443cc8397232cc7d334047aba610235b25bdad241e14104e6a5ae457d01370dd67d445aac7bf1222ce341055ddc
DIST google-chrome-beta_155.0.8059.12-1_arm64.deb 135813912 BLAKE2B d44ec2ec4d33d484a5ac56f836749eb2dfe3f7789d45f1cabd12842ca3ffe9743973eeb31750bfdf3a5de72df10d6894992ce9eabe92b71698b0f1bd38d5a82f SHA512 e811af724fc4294df0488816490ea3e35a9124e7f113a7c03c511934e9ddcc49d39b2462699c568050dec010c8e0347cc601eea04be20057e8b59e5d10033dd1
-DIST google-chrome-beta_156.0.8078.12-1_amd64.deb 144873264 BLAKE2B 32481c9a0537c28f826d3ca1e4c619d14a26134d4baee7bc57a96e2b96a7dd13ae8550f2ccffd173437431dabd90a5243d20d5457d8ceed4e3ca9f41cb1f495b SHA512 703ca46bfe6c2df7e3ebf81c5868d3e47a3a0afeb7c22fee63aed45cc41fb19a64128bb21f2d955c71a376c68f934997381118ad905d0969734485dc37f4f06a
-DIST google-chrome-beta_156.0.8078.12-1_arm64.deb 136702628 BLAKE2B 9fdcaf05ddc02a1fa99b758bdacf7f52d17de0850d5d43de16450aebb4ffc85005ac2f98ade27c84f7aace1ba5bcf151bcaf2f34dac4514d073911e91f24e874 SHA512 62d3d5ca3270cf884376527275c98f541a097e5735dd0800f6f8ffda3334759e95596dfaade39738f52fec9259be3627fcd92386c4a5af86c6beb59f9535827c
DIST google-chrome-beta_156.0.8078.4-1_amd64.deb 144860768 BLAKE2B 8d1802e9fcefb1be2d946ddc74430dabe490b49041291dc3bd907ec62ff506b627662388fa038f33a2001a7b11afb27d23581725fb685403569a1bd7915f28f1 SHA512 4f43eed048a4a648a42f9d28a7ab9e7db8a911be7066e13b0811ea941886abc1421390d5d66cfefbe915e373e67f979395679343ebaaef7b19dde84215ef87cd
DIST google-chrome-beta_156.0.8078.4-1_arm64.deb 136586204 BLAKE2B 66e88833ebad934229dab42af8e9d078643aea0382e438ba458f6f3251ff6eec464a87ff507cfd5dccfedbd1372b02c38809fe51cc788241bb0289eb5dd3c3f7 SHA512 1dede01b45ff8f6bac8c7fd4db06866edfe93407859297d2e8f9557356e6845d8841a5b24e013153479d903be932bbb6e7ece9a8ad6e48ace3882037ef8f23f9
+DIST google-chrome-beta_157.0.8103.6-1_amd64.deb 146776016 BLAKE2B c6be5502b766db1ed629c5ebcc4d478c4d7b8bedb73492aa1702faa174d09f510a26ba1750ac2355ff65369432bd0f9020c2e4c29929c9c9340c749ea1b37b33 SHA512 6ddb804e2ad4b7c9adaf64e025014d46c0ad07866915849340c860356a8ede2374f051575f8b7916e5657f47306c7f7e84711238fbd5e0bddc5cc70ec3f8987b
+DIST google-chrome-beta_157.0.8103.6-1_arm64.deb 138959112 BLAKE2B e6d22f7b426eafd34ac1277f4d2a7f2ecd6fe79f8fba7677e537964a3362761440ed8da38a6f3fe127eb85b5f1f9a8913dd75e2e2004092f14d24f94cec54195 SHA512 fb875947090416f98b0501dd418694094e61f1cfbf735a5a0f6a47b33069a7c4a740359abb7c4be8638e8f0f6caf8852733e27794f82ba63053e7f24b7cc0a6b
DIST google-chrome-stable_154.0.8037.57-1_amd64.deb 142114088 BLAKE2B cfa2681547cd70d686f7c6c36892a05085fd442a1eb28d185cc34ca39b612bc819ab90c64c2fde5e80f8d85b30efa0173ae23df8a48c75e78df17d5db61d5c98 SHA512 503bfdac8639dddeb44c339b37a295383a5a766e47204b26f4e3e11b550937a1e1c1b0c41d63c3bcbbcf26795d53a2b731385065c9245fb5509f33e59cff6864
DIST google-chrome-stable_154.0.8037.57-1_arm64.deb 134410956 BLAKE2B d170e1784ac890e3551ea669cd3bb898bdf38fc0a507d37b8d67727d9cb98d580b800a81aaaa56b74ae21dbe6d958e9b08928a07c1a0fe00067a19ddb35f0ebd SHA512 b409cd701801d0e1c204c4eede536d9439a481db5b5ab6e475016f8845cfc3d47ae656412fac6e0988072d05037f3a94a4059ac2b0534b6f283471b8778bf6c3
DIST google-chrome-stable_154.0.8037.92-1_amd64.deb 142883344 BLAKE2B de3f3f7272319f62aa12d034e8feac4b3dd0ed7b7b1a76e113d78c1908b25c90a33f19d9b3018f2c4da155c9575624c8c9457387a176cd8ea33092a04f6eb081 SHA512 528f474f27254d188c9bc837b863f559d37ff1037b16053387075c0d0d3314c5506312112fa19c36c9d2c321fb83b8b38f77a6703ab1920a8e1d751c9c900101
DIST google-chrome-stable_154.0.8037.92-1_arm64.deb 134430076 BLAKE2B 8397b0855b070db490852d2cc27535c38d9820d272c681b6dafc5338ac394e8496711c7e3470ffee819255f72a8badad84c054bb5adc6f45d3dcab875ef240e4 SHA512 2f5fc99557158172f001bbef10c031be6be7f25564bb7655289956d05468f89c42972608987de47ccd3e2ec1d4db6ed1f5ac6f734a914150252de46c202d3b6a
-DIST google-chrome-stable_155.0.8059.39-1_amd64.deb 143552428 BLAKE2B 2efaa44e68ac2a36feae57f0dc82cb8472f28ca0016b0d7b9ea1fc7ff09c175bd6cad1791a8a73af993aa7e448432d95a1708ae06568f7efd95c313481d825ca SHA512 42b4ec9ec61fee532a848fdf35973d3aba6c083028ee45c98572f1bbd9e51e865cbd5bf9fbbe695b6c9a76936472aaccd58f860ecb8bcce380afa6fd57bcb472
-DIST google-chrome-stable_155.0.8059.39-1_arm64.deb 135706836 BLAKE2B ffb420df6aaddc6fda8cc796c4443a8e792e937d919aa4836251b706db6035e62a707f3bb896c1f691e664a01fa7c098b3d06054ddc20e6767063ab1dd77ac38 SHA512 bcb58757677389245952e4fba354c71c586228abe1e91cf7563895dda3702dcddd031838dbde8e246525e1b15fbfdf6b13c59ed7fc1f4cb52c088d499857adb7
+DIST google-chrome-stable_156.0.8078.47-1_amd64.deb 144849192 BLAKE2B a401589aef8cbccc1a2f7adce44a83ca44338d95e241bf384ef2654e4a7456cb77169fd28c835cce1e3e8b8e30379cb692bf7d84aa2c3707d9ebcbb51e6df861 SHA512 ffd886eb17c3993aef9fe440a2ab56c7b82b95555c693eb81efe09eeb3cf308434a69293bec36b7e363f55d453925c1b2763c989b66d847df67e714ef237b3fc
+DIST google-chrome-stable_156.0.8078.47-1_arm64.deb 136588320 BLAKE2B df690a06124bc7cd5bf80543d14e3ec83aa2496d8d037c492b7fcddd10193005c2e2eff005629e1a107175b5dbc44a3273d3416018b156899d72cc03a7d2acf4 SHA512 732099a8779c4389f7eb3605b2c624a3e659d3a0eeee8d225e80d48813d53468fdd8d5048f670b4d69eecb64e96c573f712f8eabd6d9e28386d4fa0ce0820486
DIST google-chrome-unstable_156.0.8063.3-1_amd64.deb 143651480 BLAKE2B 1861b5322342dc8238fe14caa2e017a040a349616266f147911d49b310b4ca009c6f0602b98f776faa08da2f9e9bb331266ea756ca549ec41aa9e79ddfb97c79 SHA512 ad57ea1064036ccea7a3087a1ef4898913a13f3a88f7651e2cde5e6f9b85e63e00e92c71c14ebbb93e5bbcb0d6255c98df6e31ef540e7965326808bd0769a2a9
DIST google-chrome-unstable_156.0.8063.3-1_arm64.deb 135866780 BLAKE2B 406f6b578f12b0dc330292531a2cb04ea6621e8c982a1b12660a3eef6be0ec41be14e895f1aa56e7f3bd0a4face95781151f92b89a45122f7c618ba1dfdf0900 SHA512 42d5cb16a9638090ab23bf51678618527f06262327320fa3e1eabd96a94c8708962e8a85a9c30b7a2bd1e1adc10ed1227a62faed6d82b6129db8cfd2edc1adfb
DIST google-chrome-unstable_156.0.8072.0-1_amd64.deb 144573000 BLAKE2B 3212d057c97f25d6f5d417e214f2b432931ff357766b5889ea298375c02d7e57b0901b34d9796638cbf45ccf97e018da880682771dffbe25b70375204a3098cf SHA512 8114d6c511e6cafb2d38747e3bdb56e208eb8ebd12bc36bf7f0d54bf930cc4ddfce78bfbcac52502c0dc93c14a407b41dafde1c10861d89c72bcc575ca66211d
DIST google-chrome-unstable_156.0.8072.0-1_arm64.deb 136466616 BLAKE2B f5d269426f151ef6f208107de7305f8c05eade97051c299077fca981ccc8cb6f9a433b90f6180bfcdcc4f4a1ac7756ee5d532ce2183ee75be8ea1d1967d37069 SHA512 cbe08929f18d7461bd868075bedddbaef84d18283ccf5e671cffb5b38cd6e096398053bded512498b51fe08ef3f955f14edd7276e4091d0ba8ef229b0c4ea1ff
-DIST google-chrome-unstable_157.0.8081.0-1_amd64.deb 144920716 BLAKE2B ef98665e1ce97874c9c7b0989fc6dd470c4ea1fff1d5dfc032e497dba1c530561c0eb8cc0a17851d58f2f7aff3a89cbd3b2c8a863765f3da193b21672ac0ee55 SHA512 a7ca8158e8c8d8344fad74b5daf4d22a0b0148a20ca07fa1f3fbf9b6b7ec7ab237f3ee160efc8c8a55edcc6d3cf10d14497cda5c23f770e233f10dcff4fe932b
-DIST google-chrome-unstable_157.0.8081.0-1_arm64.deb 136923704 BLAKE2B b5131d9c3282166672074c6381b30eb141a91accbf2f39867bbeeb4a384b4edff2b8a8aa496864ac662463e16f0bc29341149fac08ab8e6bf1070df3cf837cac SHA512 994c38c1e0dc3a2c0302a30d3da205cd11a0fba48b6921519e8e4c507c0bf8b57af7290f0086c0bc7274410d6da38042df3151acc624b7e1eccc616ecc9e5451
+DIST google-chrome-unstable_158.0.8106.0-1_amd64.deb 147679128 BLAKE2B 7cf35bdc85e22b9e83c0fb0378b952cb48e8fc937044846bae26d6b0c43423b090a161de2eab13dfbdc35b269f6242810ce761ffb9fcab81b5dd1f1a1eb3b6f6 SHA512 3c556358bcc307388b25e0f666d221d379554dc39d024dda254383d58385cbc6cd20f03233d43189485ec183d494623d6005793c2f3541ecf3eccb1d97236313
+DIST google-chrome-unstable_158.0.8106.0-1_arm64.deb 139405792 BLAKE2B ce892cd013481a54f45ef26cca9d9b3ee0a88a8cb07fc536f21dd693f6fcb0eb673affa51f755aabda353fc4291c108deac87823e977877104b3ea2f4cc14679 SHA512 374b852f2f59c3afe032d67058e70da9e2e9e0962db0d22b8940b219b43f8614c3fb0562e9df27378071bb8773ffe792a6ddc134fb85dabb2c826db8c7dfeff9
diff --git a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-155.0.8059.39.ebuild b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-156.0.8078.47.ebuild
index be38f4ebe3ba..be38f4ebe3ba 100644
--- a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-155.0.8059.39.ebuild
+++ b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-156.0.8078.47.ebuild
diff --git a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-156.0.8078.12_beta.ebuild b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-157.0.8103.6_beta.ebuild
index 242237db0437..242237db0437 100644
--- a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-156.0.8078.12_beta.ebuild
+++ b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-157.0.8103.6_beta.ebuild
diff --git a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-157.0.8081.0_alpha.ebuild b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-158.0.8106.0_alpha.ebuild
index 242237db0437..242237db0437 100644
--- a/www-plugins/chrome-binary-plugins/chrome-binary-plugins-157.0.8081.0_alpha.ebuild
+++ b/www-plugins/chrome-binary-plugins/chrome-binary-plugins-158.0.8106.0_alpha.ebuild
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
index 8b0d5db37c56..d5d503f5ba99 100644
--- a/x11-drivers/nvidia-drivers/Manifest
+++ b/x11-drivers/nvidia-drivers/Manifest
@@ -1,5 +1,6 @@
DIST NVIDIA-Linux-aarch64-535.309.01.run 270033799 BLAKE2B 3f5ce5f024d0bb35707034f41211d0c60a3711643dbae8d8f29830c9029c9c66a1e232651c9a5b9c1fb699078ab6aef0c3f2df476a14eee7cd1258e0c8141971 SHA512 ee2f59716d06652dc9083376d758a1f1ba60a11139534d67c39d8b6a4abd2290017d97cc2c8b1ed8bf5ef659e075ccd1a546125a3ce57b6ddd61ada5ba7e6cf2
DIST NVIDIA-Linux-aarch64-580.178.04.run 314757575 BLAKE2B 2dbe1f8ccd0df8ef882be9745c94732f7da691b960054b0ebaba8932486d30504251e263b2614c732c1ad15dfd9ac22962a6d0b3e00d811407a0fd41adef70cf SHA512 3753150ab1fc319137431d24d38aabab9d4dcb11d988cfe7f80813f946926a181415640ac874bf28104274b305ec2d29c7806fbea945224ea97fa5b4afb2475a
+DIST NVIDIA-Linux-aarch64-580.196.07.run 314791776 BLAKE2B 6128906d54956b9348eacef092500dc94826dc908d869f7294e6b12443661520be3685fc53c1c76482673c20e2cabe0260245caa5da86a8b6ca68a715075e38d SHA512 d5197bebdcfec6cd4c03e0987fd40cbaa4e75e663393e1925d7388859883f809b8d9c7b5836368d561581e3ad7dcaa9b393dc7840c7c8965769f687af1baefea
DIST NVIDIA-Linux-aarch64-595.104.02.run 317793631 BLAKE2B dacfb4a822b7e6a8fa57826f9bcac5a444bd77ed61a9e87cb89d4dee1ef22716527ea39a0119f74795e131a1543aa46e2c9396af0259fe5e8ccae04a0a50d142 SHA512 8bb367b77a44427e70c23b8362be74fb7d6d28357e90349bb9ea293a6b99d9e05f05b7002f8b4cd0b1b35ebf431bed4b5dbf5a64ba9698ed69e0da3fdde5d6a7
DIST NVIDIA-Linux-aarch64-615.78.08.run 394587485 BLAKE2B 8ac847f2277f5761aa11965c41ec7f64d9ca4baa91979c64f2254b529e95760e83521f3f6fc85aba9d75636b44e39e0a2c03af1541e2c2d2c3f2ffb908e98464 SHA512 6844c78be6e2780ad38461a6b87cfefa702d403c1d20e888003a999dffa609733d0933daa24f3bc077005b95638cc9d76f76c465bfbe9e46f7dbe832cbb90a5d
DIST NVIDIA-Linux-x86-390.157.run 49417041 BLAKE2B 435b5e0e60468cc74b41cc5d9b5bb0105d29c11a2d408457835212a96519c9334ecf19278b36749d3ff7f498f5b0ae45a2efae2d428703dac21245c62f1efebe SHA512 dae9ac2c12f9ad90f7441e00e01a984147c577892421911d7f67f6a31e616ac1cb7d434bc9c7f58fbd9b8ae909521b5bece607a63c79588c0bb9d99c6bad5fb0
@@ -7,17 +8,20 @@ DIST NVIDIA-Linux-x86_64-390.157.run 85835541 BLAKE2B 44b855cd11f3b2f231f9fb9049
DIST NVIDIA-Linux-x86_64-470.256.02.run 272850014 BLAKE2B 0fdc867f92b82b2a60810c3b43751cad7ac2c39928c92c6c343c0c6044f4d7d923d93b8599db3f7c999c0ee7d16940e65d991a61cbb30e1d9e49c5639ac6bdc8 SHA512 a837946dd24d7945c1962a695f1f31965f3ceb6927f52cd08fd51b8db138b7a888bbeab69243f5c8468a7bd7ccd47f5dbdb48a1ca81264866c1ebb7d88628f88
DIST NVIDIA-Linux-x86_64-535.309.01.run 341945818 BLAKE2B dc7bca19eee348648ed6ded096ed9eedc953d7e5be84bb812baf98230096c9f3a92421abb9adfcd0c257dc63a31d9f4fe4a02c7bdc4be65975229941fc39fa5a SHA512 16a505fb053d514b98bed816559279cbe2962eef8a3d64cce7aaf859b2d27602ac9018bb099a56ab4223532f70e00984e5468a4ba9c2914dc68dcbe0d8b2d64d
DIST NVIDIA-Linux-x86_64-580.178.04.run 397214534 BLAKE2B 53ea96e4d1342003238aaa37495df8939b0e8813b8088347ec406a4c066bdfcf9947abc71f05da9433bfbee7b04b67f8a2bfb9729423ec776c0b1e31d5ce1b77 SHA512 b463dec07dab14370e3bd89d559e54e5f81d5b01be9de2bac6c700334c10a8bce2f9049b978a01a97d515d5ebb16ec4ecf02ce35979a8833a619bc6bd97084de
+DIST NVIDIA-Linux-x86_64-580.196.07.run 397209845 BLAKE2B 69315e16040d32ffa922dfbc0a9dc96625ccc42306e1f724cadeb0f597d434a13e7a391e54ea88949c095c4e29a7f9af220b6722711efb4316c0220fab8fc63f SHA512 dabd0b33fae2c4f05501202a4bcac3b8dd8dc1e5121b6e0991b8ba47eec36beb33af5b3fde2994567e0133a55910a2dab80facca682e14ac8c09990fcf9166e4
DIST NVIDIA-Linux-x86_64-595.104.02.run 423378754 BLAKE2B 02cf64ce916433e00afbb82c6e7bbc4e7e6723ebaa84a90b431641ed918a21a527545e844666067df29bb1bf097b064842ebe4737336a54074fed55e5f5bceaf SHA512 8c6bbc638a0192c43595dda9db70c86da0dc1f7d768838b452af7070449c4967d7e1abfc969ec4d2505e460fb8bbf9e261c4c918f1fc3efe6d56be33f8a14b16
DIST NVIDIA-Linux-x86_64-595.44.15.run 423974279 BLAKE2B 9a13bfbe7612a95041c43a14d7b579675504b28953449c037900b53488ab9f3391d357ef4bc9e642da54c9dee8f3d34a22655daaf9a1fb7de816e5ac9957a788 SHA512 b36af6233c795a6538bc0d1af678546b35330545b82bb7d2f70dcea59f9fd596861acb0cdca68404321716c1657589ba22d37c8cd6c513b320a80c36fb6a4130
DIST NVIDIA-Linux-x86_64-615.78.08.run 529834675 BLAKE2B 0d866b034ce9ca496fc60fff606dad264b35dd6895fb13314ba5071e265de45dd7376950720c2b1033e065cbe34ca09bc8565e04eab83c7d08d06f68037bbe92 SHA512 fb0c16c9812e60ac1f5ca663f03dd84f386ae4ad55beab4655c65fe8d094c98246c5acbcf9e385e93e38dbfb340472712fc80593a8bf0be47f34ff871bf4d83d
DIST NVIDIA-kernel-module-source-535.309.01.tar.xz 12537052 BLAKE2B 2bff6a129c7c407de95d140fefefd50c266c7c8dcf938a71690545cff65b3502872645e79d47f9091deac54b7e140bd93a321b18af0b9cb24ca958f033461c53 SHA512 5bd08038823f3f9c39307b441cadc6231d71195adf1835f33e5af794df24be8abed83d3b246edbf5cbaae2379b52ecdd5c975c722001e19fc96054528bada773
DIST NVIDIA-kernel-module-source-580.178.04.tar.xz 22267204 BLAKE2B 7566451a6b13c24bb80476c68bbcd93c0d8dbd0bc4eae2ca5fcda06690a2d386b6a0782aa1836e07061e84bf923fab479746294f229acd4c53e7a6da4a309b9f SHA512 38b5ad1895946287073e5951a88733898a805d02325eb7f23169e61663d43b73bb4db65b0d9648daef11edcc50646320a4e18af6e7584d63cec960fcd3b75de5
+DIST NVIDIA-kernel-module-source-580.196.07.tar.xz 22303836 BLAKE2B badfe37049b6e06b5a38cb0ac834262029eccdc22e0749d4faff2fd889a3d52c070d74acb0ec0449fa63c7709de829589c45a693ddcb52a3b77f8b4bff984ad2 SHA512 a520cb76dbdbafca9a9a11fc73abf9711596309b226b9b5cc8f9d69cdb0d7b7db89ac71c92275d470b7a3dd6b945a466742d2990c10a3c39526b43acf21b1440
DIST NVIDIA-kernel-module-source-595.104.02.tar.xz 23810384 BLAKE2B 1466b186c17156280a1e97dab7e72da6b112ed877be281915a33c6d9fa8c664db90059432913d787f31ea605e12ba2f5eaff51eec8949f473e87eb1db32917d0 SHA512 83875be617c3d8a40abe8584603017de0048aa7f4649ee1262cfe5bb6da00ac60de5b0ab45509736254d320a15da2206fd3c6935705f97b490aaf67e11c72a91
DIST NVIDIA-kernel-module-source-615.78.08.tar.xz 25908104 BLAKE2B 7a73f396965056bf7ca8506e37cb7719bfcc2a79e8c44a7477a038cf39ca7630c6de96b42d8d56e23640d40b80f6fa8dde20bdb843832913de3d0f93f650ce68 SHA512 5ced2c7e3e9df21f8494ea439ac2103307fcbcb295a3f11e5fdf4f1dbeda3f0b13800a06f8147ebd064f98897c24e92f5de82023a8ca43a582694d951c9620c9
DIST nvidia-installer-390.157.tar.bz2 150323 BLAKE2B 8058ca87a6dea956d564af9f7eab9b1fc82b1f2382bd5cb2f6d97cbe2e19292533522d5f8f2eacbeb16520372715fcb72f8f9b0998962af5d4e75522c8d74524 SHA512 93a7ece648602157496c8e27a88864ede341a100f5328a4c1a25faf8f0b94d252060e5e2f71d0c302fd0566c10773c30b76b3b5f431d8039b71c90a7969f7d7e
DIST nvidia-installer-470.256.02.tar.bz2 146269 BLAKE2B 4402e725c8fd0157eb84d4ec140a33f97e873014577487ef1e32fb8921cabe79c60ff46532e5bfaabb2b6ac894f7c80086dbab19e61906e2e27346fb85f98829 SHA512 c962dc17d9696256d1ebedcaeb3010994f2ce3895aedc47987599ebfec132a9b9a249d2ece6502b15bd4a93f9b0106aa13487a7da5f64199c274ce11eba27cfd
DIST nvidia-installer-535.309.01.tar.bz2 149086 BLAKE2B 14ed4eed4d3f998bf3c93d7cdcca8748bad9fa4751b81d193ce00dbd9694b9ae38fa865a2e82c5ec78ba58f10a73c0d5120b5aa2069cd418b9d423c3da592aab SHA512 e4a362fc0980e34c984be811570fac7b2b0ace3a7105643f8b3d15122cbc6fb9988d017e22a72659dba40588638b60eaf243bd228a386e8d2d12db0f50f42f0a
DIST nvidia-installer-580.178.04.tar.bz2 169996 BLAKE2B 231762680ac9dfb88ff553ad655dc9498b81f1c505d30ecd620609f2e912670c2846b16d05dc85273a4f5ec74bbf717d02f9b976adfa951dbd621a172e8a7174 SHA512 6995905e3c06ed1c284ec1302149f590ebca2278604f0206d543cc3202891044fe2badedf0608e31f522857c431dcd7d35f6c281667b2556fa0b290a9eccb62c
+DIST nvidia-installer-580.196.07.tar.bz2 169967 BLAKE2B 66832b2e873fb548878904a7861b1970817fc06a39d9e5fecbc10e8db101163f5441f1c37b11954a1d52bec3744df2b61098367afc489c7f2e0f35418df61d62 SHA512 89c6dd0e0999d09049cb34a2609c3f28226ba5d95d7d728d9bf2f72a837752e0f51c144443b763d7f4ee4f6728121f80feb8c66b65c6b9e028f2063cef0fb4c2
DIST nvidia-installer-595.104.02.tar.bz2 172685 BLAKE2B a15646a5b40c51a55417df1570c257b40d591a20fe4bf5c1658c64e597de448cc2b0807ce47b4ef5c654161ebb5ce82184631966e7fb6885c8bfcba5d7eb24b6 SHA512 90adf5b1d6af339d46ee82217b7c1187316be8268577b776e5313907119fd9b8a796e6da33ed687c2b9baa2124dff624f584dcc5ec4a29dcc733e1b27975088f
DIST nvidia-installer-595.91.07.tar.bz2 172429 BLAKE2B b4128b9075a5b302f825ff70af8ad210030292b920c5f9cb88930c6853e9fa915c9033b80d7ba1ac729a8a8c6c8787f61444419ae0aae47ceeefdefb4984fc19 SHA512 316d278f3f3500f33a92c993accb62333cbd6d719a8e730e28a387d5c80987f4bc7d6b05f0d2897f766d51cb067736e254057a0984d72207c67accb8510233e4
DIST nvidia-installer-615.78.08.tar.bz2 172150 BLAKE2B 72cbbc1faf2406bf1d5b36c5b01e91475b785182389ddeff77e76070a67aa20b519a12fbc409389817453f39173c0253a5dc926adbbc71d80c7ec1e248764bed SHA512 03e2ad38bb07dca362ba3308e2d5a55557b30fa8b7923b7d0ec8a0147e8c59b5d0fff2cf9393ef2b1d66690ac16cb826de308c006c5b4c644e9be0055c190108
@@ -25,6 +29,7 @@ DIST nvidia-modprobe-390.157.tar.bz2 35306 BLAKE2B 80d202b39c2f95ec0f909712c2e10
DIST nvidia-modprobe-470.256.02.tar.bz2 38769 BLAKE2B 0db444b09b0b6d24c04877fae95249e781d82b3141f90eb05d869b64d2b6e65ad00bf44c4e427c64dbd4765fa99a8699f80a1d95b00c66137a54dc878d7ea298 SHA512 c1cbfa6c8e188e5a5eb5d390b9a903406cbff103d212fc30e611e4023be3fde896ad84e8bb45b030beb5d1bcd8155c9e55a8f9636c45ce1e2a5c03f672989a31
DIST nvidia-modprobe-535.309.01.tar.bz2 40756 BLAKE2B 4c8d41c3f8d811155aad952e7120bed92e44d50e6af3551396f4be73f733f64b72d76d670676adc957efcf4c0e05df6473ca50a7cd378e56a0da52f8dfb2246e SHA512 b39f282034320836cc4424901d0230b5bdeb72050f18e0d024715a89b0085fe5a420ca82425ded4218a25ee3f7e8f6fa1abb37ac37843eb1b9e35aa8a2657a66
DIST nvidia-modprobe-580.178.04.tar.bz2 41668 BLAKE2B 9d7f239a3189db7528a5a9c0f2565f6dc785d48cabb5a2d12857d8fc69cc4ef00a1a6c4f1b75e8a0af989b48764878c3cb80b21756a908a1bb2140ab56376f95 SHA512 80ee138546022b0bca3824a563fe5df26f14337e9ee3df7b28917455525f9ef4606d12d5394f74e53089d7ba3955fa077b1dd3702beb5688c4c6b1d6e796fa68
+DIST nvidia-modprobe-580.196.07.tar.bz2 41669 BLAKE2B 490ca02f5027b4a73cdb610ef49c29e20bc2f3b2e11694eb2725891476d3040f5f9fb95692ccab7d9a844aa430955d9faf63b2270ac407206fc0abfea32f03ef SHA512 b975ea7d9d7d6afed625402930999f09085735fb169a735d445f7c7e61ab451d955d40bea6f7785d05296af9998f02c2bab22373056da30ed4e1639446e6012e
DIST nvidia-modprobe-595.104.02.tar.bz2 41729 BLAKE2B ac72388d9c628cf601f4f298ec0d7a571e4ddfe3c19a9289c5c4e531c62e82f197d7b1d27f77d4d2f71fe9940f127271929a1c0dfea398fe5eb55d5c31ab740c SHA512 c4e6f843030406eb4cd3f8fff44f574b4cafaa422b7789381f83b991ea32806dde6e0a7c6edd17fab34e5de634669b83a781b16b653d0d3ed599abc4a879aac3
DIST nvidia-modprobe-595.91.07.tar.bz2 41725 BLAKE2B 0ceec46af414ea6232014b25c384b01390fd85ca81c39f994f5bafcdc2e3bbf670ed6416fc7d8b8d0ae56bc689106356f956b5f9c4b7e69ff66b5fe3d05729c9 SHA512 9ad2780218119eaa55d2da0c1007ffa73c3262b0e692cae25260f18d993d531e4cacfe83356b4f4f923e62cc80903915073d0225810656798a9462c75a769a98
DIST nvidia-modprobe-615.78.08.tar.bz2 41943 BLAKE2B 7ee4f83738020491488b12e861ba4bfcd8c1106583360caa6cb766051e3d75cc42f3aa804dc0e2962ac66fb5f93458ad1948c739a0942a1d0c6ca1a59c9f934e SHA512 eb5bb4535dcc5298d345b16a8d4a9772d2b18f342b1790bbf455774049c1dc1f8aacd2b40d9285dc56952b3a04281cb620b0ec83f11ef72f616f51e506f38ebb
@@ -32,6 +37,7 @@ DIST nvidia-persistenced-390.157.tar.bz2 48654 BLAKE2B 2cf6c92da90acff55e8c180a0
DIST nvidia-persistenced-470.256.02.tar.bz2 46567 BLAKE2B 8f837322a3b88412fd2f6acf38721b49a6cb444fbd842d652519e5596f2e545d8f06bbdf017f46a22301ce87455f96147fab2829ca5fbf26131ec3e4a772e282 SHA512 4fd19258649b7d39945fb5c8578bf11ab118617dd14f3d11cdf15cb3fe77daf7b4719e4ae57af59031b1b809d02f4e8e8afed0ec60b9d0aed4d2488bd3013cd9
DIST nvidia-persistenced-535.309.01.tar.bz2 48569 BLAKE2B 5756b1335d6a1932529babcc401de4f544ea18dd6da271fde258ba046c98584fc736f211e4c5ac485eab70a6d1717b5aac3cb15f818cbf9eda29a64151fbcdf1 SHA512 e49631fbbc1466820c87fe9a7538b7dfaed512690d1b14e4482bfb471c4e144c62d0f2df5bc8dd3aae443475278b0aa1ab9cbe27059a38fce9b82212477b87b1
DIST nvidia-persistenced-580.178.04.tar.bz2 62230 BLAKE2B 387f778b3ec3e48112e35bd3cd3e161527005ff5dc52774755acbcee5e18a1d02f7dd88c7a58d2632863262ff0f4a7b1e091c60caf8f8823d49fe38e3791a0f9 SHA512 2b9e26833e63a81401d3c83c0379f2d86bb0f8f44e1fcbe3ff235739f284a0adf46d76520d802274d8e19df0de656d9a2e9b52dac539ced6ca7bb7b1f4be6629
+DIST nvidia-persistenced-580.196.07.tar.bz2 62228 BLAKE2B 5743acd5bfb20a55b86312460a71bda0d73e6422390457839f809862f0a7cbdf87bc80255e9da11a08317ee109c44f6c5b830be5520648ea0ef1da82d9456b93 SHA512 4876712dcefd691dcee018fa71c09bfbbfced420c5e8661de96fddf3f52384a88d853a4a61fe861478d3f6603f4b339530f0d2439b62a505b36721c9d58aeec4
DIST nvidia-persistenced-595.104.02.tar.bz2 62545 BLAKE2B 7212c5fe14af130825f60290b324afd711d4ec664a3f5b3c37adc40f02887cf639a555ad8c087117b36e0aff212c5312e97afc0d87d494e8fde88a0059c72e6d SHA512 ac88efaa447106c3205468fdeb2513ef87048579ebd21ac9b19e006606523f653ac58147597ed1a26a69df7885868316ca355686b1418a0e2479451070762282
DIST nvidia-persistenced-595.91.07.tar.bz2 62519 BLAKE2B 9da9fbacebc6c3c1b56621d7676ec78cf61081d824dbcabf8599168ce673444adf736b6cd62129b0f87d619f79c6d5f0bbce311f5ecba346cda8881bb7bce6f8 SHA512 b9f9c69fb85ce22676789f5d88c460dee1961c42e1bf4ad3e677ac800715f888ded41590fe287b2c5972e3b89982e7b4d6290ccdf7ff2fa870f3a5ef3a7ae9ae
DIST nvidia-persistenced-615.78.08.tar.bz2 64040 BLAKE2B 21c49bc244d8ec6e1734a366c74b525807bbea71b719ebee9c9c4f7af4937fdedbf0e814566855848fbedf7165a375f69626691358941e58ae51ea2c1e5f372b SHA512 f0b8b02cd16875404974e55411aa6750872962b8b518ac522b10c6a67778a404a721d19b80beca80ac91d0b0363b9bd92591f1ea14e99278e4478d1d29103ebe
@@ -39,6 +45,7 @@ DIST nvidia-settings-390.157.tar.bz2 1108938 BLAKE2B d9ec1ab5d7f157d74627272adf7
DIST nvidia-settings-470.256.02.tar.bz2 1062273 BLAKE2B 8e66201e7861469b12932595ef8f9fd29d4cfd570c2576ae7fbb7383f61c55ac71fe721cc431e79d6d69f86d998b5b4c3cafe531b573f439e6b499b0fc047a19 SHA512 626e66118ae2e62eacfdf44e37529c409b945a6f33637b9690d74abd87a2afb581aaca5f90328d280da99ceb659959d0e5dc5c22ef8013b2205b2b1c72e08007
DIST nvidia-settings-535.309.01.tar.bz2 1094768 BLAKE2B 6a951e7e8e1ccd968a0727d2c8aa5008044d789dac5002f148930ba7ceb07cd3caa59f265c818392a7fd996bf0418729be349bbc1ea0b8870b1a38f5fa9470f1 SHA512 d0d62c3abffe52ad65585f6e88b894efa07cfb9918d2cb628b771d4d8a40149d9097ad7cb66b01a9bc0b4067e63540f2bd67412fe52105348bcca60955f228c8
DIST nvidia-settings-580.178.04.tar.bz2 1132866 BLAKE2B d17b698a73be1c1346eb2ba10f50432250b4167cffdc8cde40610f2dc733b9ff6e1ba5214ee0c0509c59e82f6984c1ab686d39379f7a00edba94e45166c6fa97 SHA512 2d336afd1ebbe6272404bd43f8756ac35932a3d7650c6d524fae0d77ee33cffc71cba94f6fe038c001964d5de20d7814d1e6092c062fb9cea946e8b60766a140
+DIST nvidia-settings-580.196.07.tar.bz2 1132924 BLAKE2B 4c045ec4b743528d2004fe8dc38058805493512a4d3ae1c02174f7c06314f98b6a1c9d5ccbfa65c0ed34500a40b180ba87cb7aba30aa4f3820adb0bc36c12264 SHA512 4a9ad25d84efc099055e031c846b32bb277f1d012c5b688e51eea552d6ede9feafe3089f73f3b3bec6704d43b54c39def7f2bbf35bf26eca1115f65ba2b00e07
DIST nvidia-settings-595.104.02.tar.bz2 1136465 BLAKE2B 78735592dee4b0131a646880b8c0ab8acea65153941e3a49ac095ce7fe4523c3adf45deb5eb24363a14f0e76d22bceb6e95d1904232f61153fbaa82d08383d4d SHA512 0fd8a2488dff64e682ccbb2c596a1304041467e3d87f8b093b7dec81ccdadde1dd582a1329c768b0520ca850f2925eb07e370ed0f5e9e3e779b99d151bf561c3
DIST nvidia-settings-595.91.07.tar.bz2 1136346 BLAKE2B 56e4ed3d51b3210935f49918e9975a8ef7ae0a199ff45f9512ed5058a379fb8e7402e599965da071481e3501fa8081b0ef034e36981ab8816636e7b6b49e8ee7 SHA512 0a412f7923c4b8227b154106280165f9930b41c137beddf5f69e49e70b348ede664f859a51159b7d3e5eb6c0c271ba9a1c1a5930c7f652dbc861cdea9c59265d
DIST nvidia-settings-615.78.08.tar.bz2 1148466 BLAKE2B 62e698e984847b941ccdf08904c98fd0811653b66a3731b8990635c4ebdfa9a5a20f6e1298188f36cfa6170f2ee895c6fc812bbf79e6f8f86e82b09caf5ef760 SHA512 fa01f1f2a1b3931d7ab16f7625cc6bf472053246dbbd41301b8ff697f004d854c69551586bc4d2b3e9511c981c738d4e24a0979efcb1b855962393f475fa4bfd
@@ -46,6 +53,7 @@ DIST nvidia-xconfig-390.157.tar.bz2 107399 BLAKE2B 0cbb3b1ba508ddc3ba4a161c290b3
DIST nvidia-xconfig-470.256.02.tar.bz2 108698 BLAKE2B e468574e4bc57e7279d4120e2b08a201671b50d408be0c530eabe5da7d45daaf21cbf5c7fa31410d0d732fe8ea1551cbfb21d1ae193c1b3f5b5c50c764c9e236 SHA512 9dcec1e0c2b56b4d38a5f2c76086302f8bc0860cc15012cce29c3a5062f801a48b6a2bb78344361b07a2717b58502783441a2daf402d9973a17526175b1f15ca
DIST nvidia-xconfig-535.309.01.tar.bz2 111085 BLAKE2B 7a2f55989f93bbfecef0ae0c76113b42cc79c3fefce12f3becb2c3722978115b2408efefa63845ef2f9ef7563f9ce79c5a9cafcc3de4f70605f34aae44d485f5 SHA512 710f279b6e4ac143c39344c44cda5950777c613f193170a76fa948def5a13b5b9177b44651e3b46a2630e7f420a9189671042f76b88c14a31ba6f6dcd78fdb7d
DIST nvidia-xconfig-580.178.04.tar.bz2 111557 BLAKE2B 0ad4c36edafa3086ccd0189ad0b1768cdddd7159b8bc2153830ec95ec4b06b5d41215dd1c2408bb5ea2a529ea54996d9be952ad1effd437ce7eb82926e56dd74 SHA512 9cb3060e62c56686dab3d6ba75ac42998a5a16ac34b2785d47c15f50df67a85eefb475507fd0a605f4e60203e0cdecbe38a7d8d9e579687cb529d72806874d01
+DIST nvidia-xconfig-580.196.07.tar.bz2 111524 BLAKE2B b27d13e5ed5f9aa198b4437bf8ccdeaafe513c4331b93e77d4c0d475c7ebc2516e658fe1bfe5d54a196da55c5d3e683438e396da577af44173a67b074f747388 SHA512 f60e76aa615675084ce2d8fe8586f05df604d848b636b75769eb4f9da24a3b92c8a3c7eb174e7e5aa747092fbb580d8b46884a87d2470c7845fe3730094e5e17
DIST nvidia-xconfig-595.104.02.tar.bz2 111065 BLAKE2B 962277dd2e663a60e935d41bdfd32f9a6fdf0cd67a8c28b2b816c0034fa81ce9b62e696357a3f30863d997d5bb69b28595d1fd6e10cf22f4a06fa48461dbf523 SHA512 27cfcdbb7f4a2b5adc6c7de17a9d8e9fe47ba048dac2d665cfb03b039bc5b7903ee5f9988b9ee8566086ec9424eabf5b2ff4e5a1dcc8139e068328fd6fc4a429
DIST nvidia-xconfig-595.91.07.tar.bz2 111007 BLAKE2B 30f556a5b8c41cedc637f52064c402e39590d5df0381a8b2b74cd5bfa3c94a42bb6b95ff68898e240eef36736205a592cacf1595e8ea054b5290314bce8bcdea SHA512 6675a2f56fb2574f55b7342c1c3da221f5b1dc55329018075f71903706cbbf8b9e2ba91190d0c021e66a03e758c7cad1f5a1f1b266653849fe85773092ebc6e1
DIST nvidia-xconfig-615.78.08.tar.bz2 111311 BLAKE2B 0d1d934f9f27fad53a7a4f50882edf33932f4ada19483c299f8c5521a0d16dc0a998f91ecd59915e61672f3653139e1ffe71566d46c2d3838e4de1b13ceb3bf7 SHA512 bd779fa9ef0edea8985bd7d7bcc742cd1c648411715a7fa3e5bca7db780dc84b2d48ee62323120eeba1ceca9f7454515409cfc51453ad1821c19757956bf950d
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-580.196.07.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-580.196.07.ebuild
new file mode 100644
index 000000000000..d2e8e7e45f78
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-580.196.07.ebuild
@@ -0,0 +1,600 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MODULES_OPTIONAL_IUSE=+modules
+inherit desktop dot-a eapi9-pipestatus eapi9-ver flag-o-matic linux-mod-r1
+inherit readme.gentoo-r1 systemd toolchain-funcs unpacker user-info
+
+MODULES_KERNEL_MAX=7.3
+NV_URI="https://download.nvidia.com/XFree86/"
+
+DESCRIPTION="NVIDIA Accelerated Graphics Driver"
+HOMEPAGE="https://www.nvidia.com/"
+SRC_URI="
+ amd64? ( ${NV_URI}Linux-x86_64/${PV}/NVIDIA-Linux-x86_64-${PV}.run )
+ arm64? ( ${NV_URI}Linux-aarch64/${PV}/NVIDIA-Linux-aarch64-${PV}.run )
+ $(printf "${NV_URI}%s/%s-${PV}.tar.bz2 " \
+ nvidia-{installer,modprobe,persistenced,settings,xconfig}{,})
+ ${NV_URI}NVIDIA-kernel-module-source/NVIDIA-kernel-module-source-${PV}.tar.xz
+"
+# nvidia-installer is unused but here for GPL-2's "distribute sources"
+S=${WORKDIR}
+
+LICENSE="
+ NVIDIA-2025 Apache-2.0 Boost-1.0 BSD BSD-2 GPL-2 MIT ZLIB
+ curl openssl public-domain
+"
+SLOT="0/${PV%%.*}"
+KEYWORDS="-* ~amd64 ~arm64"
+IUSE="
+ +X abi_x86_32 abi_x86_64 kernel-open persistenced powerd
+ +static-libs +tools wayland
+"
+
+COMMON_DEPEND="
+ acct-group/video
+ X? ( x11-libs/libpciaccess )
+ persistenced? (
+ acct-user/nvpd
+ net-libs/libtirpc:=
+ )
+ tools? (
+ >=app-accessibility/at-spi2-core-2.46:2
+ dev-libs/glib:2
+ dev-libs/jansson:=
+ media-libs/harfbuzz:=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXxf86vm
+ x11-libs/pango
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ || (
+ dev-libs/openssl-compat:3
+ dev-libs/openssl:0/3
+ )
+ sys-libs/glibc
+ X? (
+ media-libs/libglvnd[X,abi_x86_32(-)?]
+ x11-libs/libX11[abi_x86_32(-)?]
+ x11-libs/libXext[abi_x86_32(-)?]
+ )
+ powerd? ( sys-apps/dbus[abi_x86_32(-)?] )
+ wayland? (
+ >=gui-libs/egl-gbm-1.1.1-r2[abi_x86_32(-)?]
+ >=gui-libs/egl-wayland-1.1.13.1[abi_x86_32(-)?]
+ X? ( gui-libs/egl-x11[abi_x86_32(-)?] )
+ )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ static-libs? (
+ x11-base/xorg-proto
+ x11-libs/libX11
+ x11-libs/libXext
+ )
+ tools? (
+ dev-util/vulkan-headers
+ media-libs/libglvnd
+ sys-apps/dbus
+ x11-base/xorg-proto
+ x11-libs/libXrandr
+ x11-libs/libXv
+ x11-libs/libvdpau
+ )
+"
+BDEPEND="
+ sys-devel/m4
+ virtual/pkgconfig
+"
+
+# there is some non-prebuilt exceptions but rather not maintain a list
+QA_PREBUILT="lib/firmware/* usr/bin/* usr/lib*"
+
+PATCHES=(
+ "${FILESDIR}"/nvidia-modprobe-390.141-uvm-perms.patch
+ "${FILESDIR}"/nvidia-settings-530.30.02-desktop.patch
+)
+
+pkg_setup() {
+ use modules && [[ ${MERGE_TYPE} != binary ]] || return
+
+ # do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK
+ get_version
+ require_configured_kernel
+
+ local CONFIG_CHECK="
+ PROC_FS
+ ~DRM_KMS_HELPER
+ ~SYSVIPC
+ ~!LOCKDEP
+ ~!PREEMPT_RT
+ ~!SLUB_DEBUG_ON
+ !DEBUG_MUTEXES
+ $(usev amd64 'X86_PAT')
+ $(usev powerd '~CPU_FREQ')
+ "
+
+ kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION &&
+ CONFIG_CHECK+=" DRM_TTM_HELPER"
+
+ linux_chkconfig_present DRM_KMS_HELPER &&
+ CONFIG_CHECK+=" DRM_FBDEV_EMULATION"
+
+ use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827
+
+ local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need
+ selection of a DRM device even if unused, e.g. CONFIG_DRM_QXL=m or
+ DRM_AMDGPU=m (among others, consult the kernel config's help), can
+ also use DRM_NOUVEAU=m as long as built as module *not* built-in."
+ local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but is needed for nvidia-drm.modeset=1
+ support (see ${EPREFIX}/etc/modprobe.d/nvidia.conf) which is needed for wayland
+ and for config-less Xorg auto-detection.
+ ${drm_helper_msg}"
+ local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using
+ kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set.
+ ${drm_helper_msg}"
+ local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open.
+ Cannot be directly selected in the kernel's menuconfig, and may need
+ selection of another option that requires it such as CONFIG_AMD_IOMMU=y,
+ or DRM_I915=m (among others, consult the kernel config's help)."
+ local ERROR_PREEMPT_RT="CONFIG_PREEMPT_RT: is set but is unsupported by NVIDIA upstream and
+ will fail to build unless the env var IGNORE_PREEMPT_RT_PRESENCE=1 is
+ set. Please do not report issues if run into e.g. kernel panics while
+ ignoring this."
+
+ linux-mod-r1_pkg_setup
+}
+
+src_prepare() {
+ # make patches usable across versions
+ rm nvidia-modprobe && mv nvidia-modprobe{-${PV},} || die
+ rm nvidia-persistenced && mv nvidia-persistenced{-${PV},} || die
+ rm nvidia-settings && mv nvidia-settings{-${PV},} || die
+ rm nvidia-xconfig && mv nvidia-xconfig{-${PV},} || die
+ mv NVIDIA-kernel-module-source-${PV} kernel-module-source || die
+
+ default
+
+ # prevent detection of incomplete kernel DRM support (bug #603818)
+ sed 's/defined(CONFIG_DRM/defined(CONFIG_DRM_KMS_HELPER/g' \
+ -i kernel{,-module-source/kernel-open}/conftest.sh || die
+
+ sed 's/__USER__/nvpd/' \
+ nvidia-persistenced/init/systemd/nvidia-persistenced.service.template \
+ > "${T}"/nvidia-persistenced.service || die
+
+ # use alternative vulkan icd option if USE=-X (bug #909181)
+ use X || sed -i 's/"libGLX/"libEGL/' nvidia_{layers,icd}.json || die
+
+ # makefile attempts to install wayland library even if not built
+ use wayland || sed -i 's/ WAYLAND_LIB_install$//' \
+ nvidia-settings/src/Makefile || die
+}
+
+src_compile() {
+ tc-export AR CC CXX LD OBJCOPY OBJDUMP PKG_CONFIG
+
+ # extra flags for the libXNVCtrl.a static library
+ local xnvflags=-fPIC #840389
+ tc-is-lto && xnvflags+=" $(test-flags-CC -ffat-lto-objects)"
+
+ # same as uname -m
+ local target_arch
+ case ${ARCH} in
+ amd64) target_arch=x86_64;;
+ arm64) target_arch=aarch64;;
+ *) die "Unrecognised architecture: ${ARCH}";;
+ esac
+
+ NV_ARGS=(
+ PREFIX="${EPREFIX}"/usr
+ HOST_CC="$(tc-getBUILD_CC)"
+ HOST_LD="$(tc-getBUILD_LD)"
+ BUILD_GTK2LIB=
+ NV_USE_BUNDLED_LIBJANSSON=0
+ NV_VERBOSE=1 DO_STRIP= MANPAGE_GZIP= OUTPUTDIR=out
+ TARGET_ARCH="${target_arch}"
+ WAYLAND_AVAILABLE=$(usex wayland 1 0)
+ XNVCTRL_CFLAGS="${xnvflags}"
+ )
+
+ if use modules; then
+ local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS} o_ldflags=${LDFLAGS}
+
+ local modlistargs=video:kernel
+ if use kernel-open; then
+ modlistargs+=-module-source:kernel-module-source/kernel-open
+
+ # environment flags are normally unused for modules, but nvidia
+ # uses it for building the "blob" and it is a bit fragile
+ filter-flags -fno-plt #912949
+ filter-lto
+ CC=${KERNEL_CC} CXX=${KERNEL_CXX} strip-unsupported-flags
+
+ LDFLAGS=$(raw-ldflags)
+
+ # the "blob" uses C++ which is an issue if there is debug symbols
+ # when running pahole, there is a pahole.sh wrapper that tries to
+ # exclude C++ but it did not seem to be enough last time tried
+ linux_chkconfig_present DEBUG_INFO_BTF_MODULES && append-flags -g0
+ fi
+
+ local modlist=( nvidia{,-drm,-modeset,-peermem,-uvm}=${modlistargs} )
+ local modargs=(
+ IGNORE_CC_MISMATCH=yes NV_VERBOSE=1
+ SYSOUT="${KV_OUT_DIR}" SYSSRC="${KV_DIR}"
+ TARGET_ARCH="${target_arch}"
+
+ # kernel takes "x86" and "x86_64" as meaning the same, but nvidia
+ # makes the distinction (since 550.135) and is not happy with "x86"
+ # TODO?: it should be ok/better for tc-arch-kernel to do x86_64
+ $(usev amd64 ARCH=x86_64)
+ )
+
+ # temporary workaround for bug #914468
+ addpredict "${KV_OUT_DIR}"
+
+ linux-mod-r1_src_compile
+ CFLAGS=${o_cflags} CXXFLAGS=${o_cxxflags} LDFLAGS=${o_ldflags}
+ fi
+
+ emake "${NV_ARGS[@]}" -C nvidia-modprobe
+ use persistenced && emake "${NV_ARGS[@]}" -C nvidia-persistenced
+ use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig
+
+ if use tools; then
+ # avoid noisy *very* noisy logs with deprecation warnings
+ CFLAGS="-Wno-deprecated-declarations ${CFLAGS}" \
+ emake "${NV_ARGS[@]}" -C nvidia-settings
+ elif use static-libs; then
+ # pretend GTK+3 is available, not actually used (bug #880879)
+ emake "${NV_ARGS[@]}" BUILD_GTK3LIB=1 \
+ -C nvidia-settings/src out/libXNVCtrl.a
+ fi
+}
+
+src_install() {
+ local libdir=$(get_libdir) libdir32=$(ABI=x86 get_libdir)
+
+ NV_ARGS+=( DESTDIR="${D}" LIBDIR="${ED}"/usr/${libdir} )
+
+ local -A paths=(
+ [APPLICATION_PROFILE]=/usr/share/nvidia
+ [CUDA_ICD]=/etc/OpenCL/vendors
+ [EGL_EXTERNAL_PLATFORM_JSON]=/usr/share/egl/egl_external_platform.d
+ [FIRMWARE]=/lib/firmware/nvidia/${PV}
+ [GBM_BACKEND_LIB_SYMLINK]=/usr/${libdir}/gbm
+ [GLVND_EGL_ICD_JSON]=/usr/share/glvnd/egl_vendor.d
+ [OPENGL_DATA]=/usr/share/nvidia
+ [VULKANSC_ICD_JSON]=/usr/share/vulkansc
+ [VULKAN_ICD_JSON]=/usr/share/vulkan
+ [WINE_LIB]=/usr/${libdir}/nvidia/wine
+ [XORG_OUTPUTCLASS_CONFIG]=/usr/share/X11/xorg.conf.d
+
+ [GLX_MODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules/extensions
+ [GLX_MODULE_SYMLINK]=/usr/${libdir}/xorg/modules
+ [XMODULE_SHARED_LIB]=/usr/${libdir}/xorg/modules
+ )
+
+ local skip_files=(
+ $(usev !X "libGLX_nvidia libglxserver_nvidia")
+ libGLX_indirect # non-glvnd unused fallback
+ libnvidia-{gtk,wayland-client} nvidia-{settings,xconfig} # from source
+ libnvidia-egl-gbm 15_nvidia_gbm # gui-libs/egl-gbm
+ libnvidia-egl-wayland 10_nvidia_wayland # gui-libs/egl-wayland
+ libnvidia-egl-xcb 20_nvidia_xcb.json # gui-libs/egl-x11
+ libnvidia-egl-xlib 20_nvidia_xlib.json # gui-libs/egl-x11
+ libnvidia-pkcs11.so # using the openssl3 version instead
+ )
+ local skip_modules=(
+ $(usev !X "nvfbc vdpau xdriver")
+ $(usev !modules gsp)
+ $(usev !powerd nvtopps)
+ installer nvpd # handled separately / built from source
+ )
+ local skip_types=(
+ GLVND_LIB GLVND_SYMLINK EGL_CLIENT.\* GLX_CLIENT.\* # media-libs/libglvnd
+ OPENCL_WRAPPER.\* # virtual/opencl
+ DOCUMENTATION DOT_DESKTOP .\*_SRC DKMS_CONF SYSTEMD_UNIT # handled separately / unused
+ )
+
+ local DOCS=(
+ README.txt NVIDIA_Changelog supported-gpus/supported-gpus.json
+ nvidia-settings/doc/{FRAMELOCK,NV-CONTROL-API}.txt
+ )
+ local HTML_DOCS=( html/. )
+ einstalldocs
+
+ local DISABLE_AUTOFORMATTING=yes
+ local DOC_CONTENTS="\
+Trusted users should be in the 'video' group to use NVIDIA devices.
+You can add yourself by using: gpasswd -a my-user video\
+$(usev modules "
+
+Like all out-of-tree kernel modules, it is necessary to rebuild
+${PN} after upgrading or rebuilding the Linux kernel
+by for example running \`emerge @module-rebuild\`. Alternatively,
+if using a distribution kernel (sys-kernel/gentoo-kernel{,-bin}),
+this can be automated by setting USE=dist-kernel globally.
+
+Loaded kernel modules also must not mismatch with the installed
+${PN} version (excluding -r revision), meaning should
+ensure \`eselect kernel list\` points to the kernel that will be
+booted before building and preferably reboot after upgrading
+${PN} (the ebuild will emit a warning if mismatching).
+
+See '${EPREFIX}/etc/modprobe.d/nvidia.conf' for modules options.")\
+$(use amd64 && usev !abi_x86_32 "
+
+Note that without USE=abi_x86_32 on ${PN}, 32bit applications
+(typically using wine / steam) will not be able to use GPU acceleration.")
+
+Be warned that USE=kernel-open may need to be either enabled or
+disabled for certain cards to function:
+- GTX 50xx (blackwell) and higher require it to be enabled
+- GTX 1650 and higher (pre-blackwell) should work either way
+- Older cards require it to be disabled
+
+For additional information or for troubleshooting issues, please see
+https://wiki.gentoo.org/wiki/NVIDIA/nvidia-drivers and NVIDIA's own
+documentation that is installed alongside this README."
+ readme.gentoo_create_doc
+
+ if use modules; then
+ linux-mod-r1_src_install
+
+ insinto /etc/modprobe.d
+ newins "${FILESDIR}"/nvidia-580.conf nvidia.conf
+
+ # used for gpu verification with binpkgs (not kept, see pkg_preinst)
+ insinto /usr/share/nvidia
+ doins supported-gpus/supported-gpus.json
+ fi
+
+ emake "${NV_ARGS[@]}" -C nvidia-modprobe install
+ fowners :video /usr/bin/nvidia-modprobe #505092
+ fperms 4710 /usr/bin/nvidia-modprobe
+
+ if use persistenced; then
+ emake "${NV_ARGS[@]}" -C nvidia-persistenced install
+ newconfd "${FILESDIR}"/nvidia-persistenced.confd nvidia-persistenced
+ newinitd "${FILESDIR}"/nvidia-persistenced.initd nvidia-persistenced
+ systemd_dounit "${T}"/nvidia-persistenced.service
+ fi
+
+ if use tools; then
+ emake "${NV_ARGS[@]}" -C nvidia-settings install
+
+ doicon nvidia-settings/doc/nvidia-settings.png
+ domenu nvidia-settings/doc/nvidia-settings.desktop
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
+ fi
+
+ if use static-libs; then
+ dolib.a nvidia-settings/src/out/libXNVCtrl.a
+ strip-lto-bytecode
+
+ insinto /usr/include/NVCtrl
+ doins nvidia-settings/src/libXNVCtrl/NVCtrl{Lib,}.h
+ fi
+
+ use X && emake "${NV_ARGS[@]}" -C nvidia-xconfig install
+
+ # mimic nvidia-installer by reading .manifest to install files
+ # 0:file 1:perms 2:type 3+:subtype/arguments -:module
+ local m into
+ while IFS=' ' read -ra m; do
+ ! [[ ${#m[@]} -ge 2 && ${m[-1]} =~ MODULE: ]] ||
+ [[ " ${m[0]##*/}" =~ ^(\ ${skip_files[*]/%/.*|\\} )$ ]] ||
+ [[ " ${m[2]}" =~ ^(\ ${skip_types[*]/%/|\\} )$ ]] ||
+ has ${m[-1]#MODULE:} "${skip_modules[@]}" && continue
+
+ case ${m[2]} in
+ MANPAGE)
+ gzip -dc ${m[0]} | newman - ${m[0]%.gz}
+ pipestatus || die
+ continue
+ ;;
+ GBM_BACKEND_LIB_SYMLINK) m[4]=../${m[4]};; # missing ../
+ VDPAU_SYMLINK) m[4]=vdpau/; m[5]=${m[5]#vdpau/};; # .so to vdpau/
+ esac
+
+ if [[ -v 'paths[${m[2]}]' ]]; then
+ into=${paths[${m[2]}]}
+ elif [[ ${m[2]} == EXPLICIT_PATH ]]; then
+ into=${m[3]}
+ elif [[ ${m[2]} == *_BINARY ]]; then
+ into=/usr/bin
+ elif [[ ${m[3]} == COMPAT32 ]]; then
+ use abi_x86_32 || continue
+ into=/usr/${libdir32}
+ elif [[ ${m[2]} == *_@(LIB|SYMLINK) ]]; then
+ into=/usr/${libdir}
+ else
+ die "No known installation path for ${m[0]}"
+ fi
+ [[ ${m[3]: -2} == ?/ ]] && into+=/${m[3]%/}
+ [[ ${m[4]: -2} == ?/ ]] && into+=/${m[4]%/}
+
+ if [[ ${m[2]} =~ _SYMLINK$ ]]; then
+ [[ ${m[4]: -1} == / ]] && m[4]=${m[5]}
+ dosym ${m[4]} ${into}/${m[0]}
+ continue
+ fi
+ # avoid portage warning due to missing soname links in manifest
+ [[ ${m[0]} =~ ^libnvidia-ngx.so ]] &&
+ dosym ${m[0]} ${into}/${m[0]%.so*}.so.1
+
+ printf -v m[1] %o $((m[1] | 0200)) # 444->644
+ insopts -m${m[1]}
+ insinto ${into}
+ doins ${m[0]}
+ done < .manifest || die
+ insopts -m0644 # reset
+
+ # MODULE:installer non-skipped extras
+ : "$(systemd_get_sleepdir)"
+ exeinto "${_#"${EPREFIX}"}"
+ doexe systemd/system-sleep/nvidia
+ dobin systemd/nvidia-sleep.sh
+ systemd_dounit systemd/system/nvidia-{hibernate,resume,suspend,suspend-then-hibernate}.service
+
+ dobin nvidia-bug-report.sh
+
+ insinto /usr/share/nvidia/files.d
+ doins sandboxutils-filelist.json
+
+ # MODULE:powerd extras
+ if use powerd; then
+ newinitd "${FILESDIR}"/nvidia-powerd.initd nvidia-powerd #923117
+ systemd_dounit systemd/system/nvidia-powerd.service
+
+ insinto /usr/share/dbus-1/system.d
+ doins nvidia-dbus.conf
+ fi
+
+ # enabling is needed for sleep to work properly and little reason not to do
+ # it unconditionally for a better user experience
+ : "$(systemd_get_systemunitdir)"
+ local unitdir=${_#"${EPREFIX}"}
+ # not using relative symlinks to match systemd's own links
+ dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-hibernate.service
+ dosym {"${unitdir}",/etc/systemd/system/systemd-hibernate.service.wants}/nvidia-resume.service
+ dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-suspend.service
+ dosym {"${unitdir}",/etc/systemd/system/systemd-suspend.service.wants}/nvidia-resume.service
+ dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-suspend-then-hibernate.service
+ dosym {"${unitdir}",/etc/systemd/system/systemd-suspend-then-hibernate.service.wants}/nvidia-resume.service
+ # also add a custom elogind hook to do the equivalent of the above
+ exeinto /usr/lib/elogind/system-sleep
+ newexe "${FILESDIR}"/system-sleep.elogind nvidia
+ # <elogind-255.5 used a different path (bug #939216), keep a compat symlink
+ # TODO: cleanup after 255.5 been stable for a few months
+ dosym {/usr/lib,/"${libdir}"}/elogind/system-sleep/nvidia
+
+ # needed with >=systemd-256 or may fail to resume with some setups
+ # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1072722
+ insinto "${unitdir}"/systemd-homed.service.d
+ newins - 10-nvidia.conf <<-EOF
+ [Service]
+ Environment=SYSTEMD_HOME_LOCK_FREEZE_SESSION=false
+ EOF
+ insinto "${unitdir}"/systemd-suspend.service.d
+ newins - 10-nvidia.conf <<-EOF
+ [Service]
+ Environment=SYSTEMD_SLEEP_FREEZE_USER_SESSIONS=false
+ EOF
+ dosym -r "${unitdir}"/systemd-{suspend,hibernate}.service.d/10-nvidia.conf
+ dosym -r "${unitdir}"/systemd-{suspend,hybrid-sleep}.service.d/10-nvidia.conf
+ dosym -r "${unitdir}"/systemd-{suspend,suspend-then-hibernate}.service.d/10-nvidia.conf
+
+ # symlink non-versioned so nvidia-settings can use it even if misdetected
+ dosym nvidia-application-profiles-${PV}-key-documentation \
+ ${paths[APPLICATION_PROFILE]}/nvidia-application-profiles-key-documentation
+
+ # don't attempt to strip firmware files (silences errors)
+ dostrip -x ${paths[FIRMWARE]}
+
+ # sandbox issues with /dev/nvidiactl and others (bug #904292,#921578)
+ # are widespread and sometime affect revdeps of packages built with
+ # USE=opencl/cuda making it hard to manage in ebuilds (minimal set,
+ # ebuilds should handle manually if need others or addwrite)
+ insinto /etc/sandbox.d
+ newins - 20nvidia <<<'SANDBOX_PREDICT="/dev/nvidiactl:/dev/nvidia-caps:/dev/char"'
+
+ # dracut does not use /etc/modprobe.d if hostonly=no, but want to make sure
+ # our settings are used for bug 932781#c8 and nouveau blacklist if either
+ # modules are included (however, just best-effort without initramfs regen)
+ if use modules; then
+ echo "install_items+=\" ${EPREFIX}/etc/modprobe.d/nvidia.conf \"" >> \
+ "${ED}"/usr/lib/dracut/dracut.conf.d/10-${PN}.conf || die
+ fi
+}
+
+pkg_preinst() {
+ has_version "${CATEGORY}/${PN}[kernel-open]" && NV_HAD_KERNEL_OPEN=
+
+ use modules || return
+
+ # set video group id based on live system (bug #491414)
+ local g=$(egetent group video | cut -d: -f3)
+ [[ ${g} =~ ^[0-9]+$ ]] || die "Failed to determine video group id (got '${g}')"
+ sed -i "s/@VIDEOGID@/${g}/" "${ED}"/etc/modprobe.d/nvidia.conf || die
+
+ # try to find driver mismatches using temporary supported-gpus.json
+ for g in $(grep -l 0x10de /sys/bus/pci/devices/*/vendor 2>/dev/null); do
+ g=$(grep -io "\"devid\":\"$(<${g%vendor}device)\"[^}]*branch\":\"[0-9]*" \
+ "${ED}"/usr/share/nvidia/supported-gpus.json 2>/dev/null)
+ if [[ ${g} ]]; then
+ g=$((${g##*\"}+1))
+ if ver_test -ge ${g}; then
+ NV_LEGACY_MASK=">=${CATEGORY}/${PN}-${g}"
+ break
+ fi
+ fi
+ done
+ rm "${ED}"/usr/share/nvidia/supported-gpus.json || die
+}
+
+pkg_postinst() {
+ linux-mod-r1_pkg_postinst
+
+ readme.gentoo_print_elog
+
+ if [[ -r /proc/driver/nvidia/version &&
+ $(</proc/driver/nvidia/version) != *" ${PV} "* ]]; then
+ ewarn "\nCurrently loaded NVIDIA modules do not match the newly installed"
+ ewarn "libraries and may prevent launching GPU-accelerated applications."
+ if use modules; then
+ ewarn "Easiest way to fix this is normally to reboot. If still run into issues"
+ ewarn "(e.g. API mismatch messages in the \`dmesg\` output), please verify"
+ ewarn "that the running kernel is ${KV_FULL} and that (if used) the"
+ ewarn "initramfs does not include NVIDIA modules (or at least, not old ones)."
+ fi
+ fi
+
+ if [[ $(</proc/cmdline) == *slub_debug=[!-]* ]]; then
+ ewarn "\nDetected that the current kernel command line is using 'slub_debug=',"
+ ewarn "this may lead to system instability/freezes with this version of"
+ ewarn "${PN}. Bug: https://bugs.gentoo.org/796329"
+ fi
+
+ if [[ -v NV_LEGACY_MASK ]]; then
+ ewarn "\n***WARNING***"
+ ewarn "\nYou are installing a version of ${PN} known not to work"
+ ewarn "with a GPU of the current system. If unwanted, add the mask:"
+ if [[ -d ${EROOT}/etc/portage/package.mask ]]; then
+ ewarn "\n echo '${NV_LEGACY_MASK}' > ${EROOT}/etc/portage/package.mask/${PN}"
+ else
+ ewarn "\n echo '${NV_LEGACY_MASK}' >> ${EROOT}/etc/portage/package.mask"
+ fi
+ ewarn "\n...then downgrade to a legacy[1] branch if possible (not all old versions"
+ ewarn "are available or fully functional, may need to consider nouveau[2])."
+ ewarn "\n[1] https://www.nvidia.com/object/IO_32667.html"
+ ewarn "[2] https://wiki.gentoo.org/wiki/Nouveau"
+ fi
+
+ if use kernel-open && use modules && [[ ! -v NV_HAD_KERNEL_OPEN ]]; then
+ ewarn "\nOpen source variant of ${PN} was selected, note that it requires"
+ ewarn "Turing/Ampere+ GPUs (aka GTX 1650+). Try disabling if run into issues."
+ ewarn "Also see: ${EROOT}/usr/share/doc/${PF}/html/kernel_open.html"
+ fi
+
+ if ver_replacing -lt 580.126.09-r1; then
+ elog "\n>=nvidia-drivers-580.126.09-r1 changes some defaults that may or may"
+ elog "not need attention:"
+ elog "1. nvidia-drm.modeset=1 is now default regardless of USE=wayland"
+ elog "2. nvidia-drm.fbdev=1 is now also tentatively default to match upstream"
+ elog "See ${EROOT}/etc/modprobe.d/nvidia.conf to modify settings if needed,"
+ elog "fbdev=1 *could* cause issues for the console display with some setups."
+ fi
+}
diff --git a/x11-misc/sddm/Manifest b/x11-misc/sddm/Manifest
deleted file mode 100644
index c51e0283272c..000000000000
--- a/x11-misc/sddm/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST sddm-0.21.0-pam.tar.xz 676 BLAKE2B 06a79f74a5833eca9877df4be8639311382d13061b21aa3627e6c4b07725878ded62221fca943440bacc143f6be2a23b2e0a2124012ff2c9fac82e1eded11144 SHA512 6d91eef2434346f7707122454522cf19f104994ac95d562417f6060a92b4e6c9792bebcccabac8290479200b4ba02fc4d92c6098c435c7ceda796d619d8913c2
-DIST sddm-0.21.0_p20240723.tar.gz 3557578 BLAKE2B b92feb20a39eaf34822b077fcb8b89a100ff65814f9b523b2a1a0ffd3592edf2e86fa8fbdfcd8b592756a0b4baf0b085e8c7b4ad2aaa2f08b90e25e580df9925 SHA512 1ea2f758099f86086aebf05a77b176227475c1eb9c21c77bc99b9bb5a2882ce087e020ae6a11585b793fe09a3567e0ea4d0c1632a5823b7be83e33882964de48
-DIST sddm-0.21.0_p20251101-dfa5315f.tar.gz 3558488 BLAKE2B c7d5c2dd5b8e8f306024715e4654c41db8a4914f23657ab3a81e0729ae5a263db9d6323f197e44207a41bcf4b6b1d0cb943a2642fb880fac926fa49063007a7b SHA512 e8a16f6e0cc0f314a545431d84c59ab1cc77e323d31a53181d6e83aaca8ecaf014f8f9fefed2b86ba632f21878c8d94501ed1714134f2c83d68711e93ab4ba6c
-DIST sddm-0.21.0_p20260819-da0b64d8.tar.gz 3559093 BLAKE2B 663b1856b3d16000865b1f77e7fedfbaa9d42e371db874b3f4a009384cf1049ce8ee587e5778b2e85aaf3c17eea87e3f4ff5d5bae628a2f1a8e8eb7cd1f3eaed SHA512 910674edb48249965ca24bbdfe8a8ee8a573b62ef20d16bf052ba75d6c10629aa5fa7a7a8932b834d3d48ddda50ee3110213ba23d442afa17a7a90788bddd20c
diff --git a/x11-misc/sddm/files/sddm-0.21.0-Xsession.patch b/x11-misc/sddm/files/sddm-0.21.0-Xsession.patch
deleted file mode 100644
index 0388ee894231..000000000000
--- a/x11-misc/sddm/files/sddm-0.21.0-Xsession.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From dac9752495d1467d11e30450989194177677f30a Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sat, 21 Oct 2017 14:44:59 2017 +0200
-Subject: [PATCH 2/5] Xsession
-
-Thanks-to: Joakim Tjernlund <joakim.tjernlund@infinera.com>
-Bug: https://bugs.gentoo.org/611210
-
----
- data/scripts/Xsession | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/data/scripts/Xsession b/data/scripts/Xsession
-index a971d40..2d84a5a 100755
---- a/data/scripts/Xsession
-+++ b/data/scripts/Xsession
-@@ -39,6 +39,10 @@ case $SHELL in
- ;;
- esac
-
-+# Make D-Bus start properly, see:
-+# /etc/X11/xinit/xinitrc.d/80-dbus
-+command="$@"
-+
- [ -f /etc/xprofile ] && . /etc/xprofile
- [ -f /usr/local/etc/xprofile ] && . /usr/local/etc/xprofile
- [ -f $HOME/.xprofile ] && . $HOME/.xprofile
-@@ -87,8 +91,8 @@ if [ -f "$USERXSESSION" ]; then
- . "$USERXSESSION"
- fi
-
--if [ -z "$*" ]; then
-+if [ -z "$command" ]; then
- exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
- else
-- exec $@
-+ exec $command
- fi
---
-2.43.0
-
diff --git a/x11-misc/sddm/sddm-0.21.0_p20240723-r10.ebuild b/x11-misc/sddm/sddm-0.21.0_p20240723-r10.ebuild
deleted file mode 100644
index 37d61531c354..000000000000
--- a/x11-misc/sddm/sddm-0.21.0_p20240723-r10.ebuild
+++ /dev/null
@@ -1,150 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PAM_TAR="${PN}-0.21.0-pam"
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
-else
- COMMIT=4ec29a8bba033d475f197693fac6cb0c383a1da2
- SRC_URI="https://github.com/${PN}/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-${COMMIT}"
- KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
-fi
-
-QTMIN=6.7.2
-inherit cmake linux-info optfeature pam systemd tmpfiles
-
-DESCRIPTION="Simple Desktop Display Manager"
-HOMEPAGE="https://github.com/sddm/sddm"
-SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PAM_TAR}.tar.xz"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
-SLOT="0"
-IUSE="+elogind systemd test +X"
-
-REQUIRED_USE="^^ ( elogind systemd )"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- acct-group/sddm
- acct-user/sddm
- >=dev-qt/qtbase-${QTMIN}:6[dbus,gui,network]
- >=dev-qt/qtdeclarative-${QTMIN}:6
- sys-libs/pam
- x11-libs/libXau
- x11-libs/libxcb:=
- elogind? (
- sys-auth/elogind[pam]
- sys-power/upower
- )
- systemd? ( sys-apps/systemd:=[pam] )
-"
-RDEPEND="${DEPEND}
- X? ( x11-base/xorg-server )
- !systemd? ( gui-libs/display-manager-init )
-"
-BDEPEND="
- dev-python/docutils
- >=dev-build/cmake-3.25.0
- >=dev-qt/qttools-${QTMIN}[linguist]
- kde-frameworks/extra-cmake-modules:0
- virtual/pkgconfig
-"
-
-PATCHES=(
- # Downstream patches
- "${FILESDIR}/${PN}-0.20.0-respect-user-flags.patch"
- "${FILESDIR}/${PN}-0.21.0-Xsession.patch" # bug 611210
-)
-
-pkg_setup() {
- local CONFIG_CHECK="~DRM"
- use kernel_linux && linux-info_pkg_setup
-}
-
-src_unpack() {
- [[ ${PV} == *9999* ]] && git-r3_src_unpack
- default
-}
-
-src_prepare() {
- touch 01gentoo.conf || die
-
-cat <<-EOF >> 01gentoo.conf
-[General]
-# Remove qtvirtualkeyboard as InputMethod default
-InputMethod=
-EOF
-
- cmake_src_prepare
-
- if ! use test; then
- sed -e "/^find_package/s/ Test//" -i CMakeLists.txt || die
- cmake_comment_add_subdirectory test
- fi
-
- if use systemd; then
- sed -e "/pam_elogind.so/s/elogind/systemd/" \
- -i "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam || die
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- -DBUILD_MAN_PAGES=ON
- -DBUILD_WITH_QT6=ON
- -DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
- -DRUNTIME_DIR=/run/sddm
- -DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
- -DNO_SYSTEMD=$(usex !systemd)
- -DUSE_ELOGIND=$(usex elogind)
- )
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- insinto /etc/sddm.conf.d/
- doins "${S}"/01gentoo.conf
-
- # with systemd logs are sent to journald, so no point to bother in that case
- if ! use systemd; then
- insinto /etc/logrotate.d
- newins "${FILESDIR}/sddm.logrotate" sddm
- fi
-
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}.pam ${PN}
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-autologin.pam ${PN}-autologin
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam ${PN}-greeter
-}
-
-pkg_postinst() {
- tmpfiles_process "${PN}.conf"
-
- elog "NOTE: If SDDM startup appears to hang then entropy pool is too low."
- elog "This can be fixed by configuring one of the following:"
- elog " - Enable CONFIG_RANDOM_TRUST_CPU in linux kernel"
- elog " - # emerge sys-apps/haveged && rc-update add haveged boot"
- elog " - # emerge sys-apps/rng-tools && rc-update add rngd boot"
- elog
- elog "SDDM example config can be shown with:"
- elog " ${EROOT}/usr/bin/sddm --example-config"
- elog "Use ${EROOT}/etc/sddm.conf.d/ directory to override specific options."
- elog
- elog "For more information on how to configure SDDM, please visit the wiki:"
- elog " https://wiki.gentoo.org/wiki/SDDM"
- if has_version x11-drivers/nvidia-drivers; then
- elog
- elog " Nvidia GPU owners in particular should pay attention"
- elog " to the troubleshooting section."
- fi
-
- optfeature "Weston DisplayServer support (EXPERIMENTAL)" "dev-libs/weston[kiosk]"
- optfeature "KWin DisplayServer support (EXPERIMENTAL)" "kde-plasma/kwin"
-
- systemd_reenable sddm.service
-}
diff --git a/x11-misc/sddm/sddm-0.21.0_p20251101.ebuild b/x11-misc/sddm/sddm-0.21.0_p20251101.ebuild
deleted file mode 100644
index 5508d7582f84..000000000000
--- a/x11-misc/sddm/sddm-0.21.0_p20251101.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PAM_TAR="${PN}-0.21.0-pam"
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
-else
- COMMIT=dfa5315fd600760f8f3abddf7fb704202ffb07b3
- SRC_URI="https://github.com/${PN}/${PN}/archive/${COMMIT}.tar.gz -> ${P}-${COMMIT:0:8}.tar.gz"
- S="${WORKDIR}/${PN}-${COMMIT}"
- KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
-fi
-
-QTMIN=6.7.2
-inherit cmake linux-info pam systemd tmpfiles
-
-DESCRIPTION="Simple Desktop Display Manager"
-HOMEPAGE="https://github.com/sddm/sddm"
-SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PAM_TAR}.tar.xz"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
-SLOT="0"
-IUSE="+elogind systemd test"
-
-REQUIRED_USE="^^ ( elogind systemd )"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- acct-group/sddm
- acct-user/sddm
- >=dev-qt/qtbase-${QTMIN}:6[dbus,gui,network]
- >=dev-qt/qtdeclarative-${QTMIN}:6
- sys-libs/pam
- x11-libs/libXau
- x11-libs/libxcb:=
- elogind? (
- sys-auth/elogind[pam]
- sys-power/upower
- )
- systemd? ( sys-apps/systemd:=[pam] )
-"
-RDEPEND="${DEPEND}
- gui-apps/sddm-gentoo-config
- !systemd? ( gui-libs/display-manager-init )
-"
-BDEPEND="
- dev-python/docutils
- >=dev-qt/qttools-${QTMIN}[linguist]
- kde-frameworks/extra-cmake-modules:0
- virtual/pkgconfig
-"
-
-PATCHES=(
- # Downstream patches
- "${FILESDIR}/${PN}-0.20.0-respect-user-flags.patch"
- "${FILESDIR}/${PN}-0.21.0_p20250310-Xsession-xinitrc.patch" # bug 611210
- "${FILESDIR}/${P}-cmake-minreqver-3.16.patch" # pending upstream, bug 964439
- "${FILESDIR}/${P}-fix-restart-greeter.patch" # pending upstream
- # thx opensuse
- "${FILESDIR}/${PN}-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch" # bug 913862
- "${FILESDIR}/${P}-fix-terminal-clearing.patch"
-)
-
-pkg_setup() {
- local CONFIG_CHECK="~DRM"
- use kernel_linux && linux-info_pkg_setup
-}
-
-src_unpack() {
- [[ ${PV} == *9999* ]] && git-r3_src_unpack
- default
-}
-
-src_prepare() {
- cmake_src_prepare
-
- if ! use test; then
- sed -e "/^find_package/s/ Test//" -i CMakeLists.txt || die
- cmake_comment_add_subdirectory test
- fi
-
- if use systemd; then
- sed -e "/pam_elogind.so/s/elogind/systemd/" \
- -i "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam || die
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- -DBUILD_MAN_PAGES=ON
- -DBUILD_WITH_QT6=ON
- -DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
- -DRUNTIME_DIR=/run/sddm
- -DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
- -DNO_SYSTEMD=$(usex !systemd)
- -DUSE_ELOGIND=$(usex elogind)
- )
-
- if use elogind; then
- mycmakeargs+=(
- # try to use VT7 first.
- # Keep the same as CHECKVT from display-manager
- -DSDDM_INITIAL_VT=7
- )
- fi
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # with systemd logs are sent to journald, so no point to bother in that case
- if ! use systemd; then
- insinto /etc/logrotate.d
- newins "${FILESDIR}/sddm.logrotate" sddm
- fi
-
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}.pam ${PN}
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-autologin.pam ${PN}-autologin
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam ${PN}-greeter
-}
-
-pkg_postinst() {
- tmpfiles_process "${PN}.conf"
-
- elog "NOTE: If SDDM startup appears to hang then entropy pool is too low."
- elog "This can be fixed by configuring one of the following:"
- elog " - Enable CONFIG_RANDOM_TRUST_CPU in linux kernel"
- elog " - # emerge sys-apps/haveged && rc-update add haveged boot"
- elog " - # emerge sys-apps/rng-tools && rc-update add rngd boot"
- elog
- elog "SDDM example config can be shown with:"
- elog " ${EROOT}/usr/bin/sddm --example-config"
- elog "Use ${EROOT}/etc/sddm.conf.d/ directory to override specific options."
- elog
- elog "For more information on how to configure SDDM, please visit the wiki:"
- elog " https://wiki.gentoo.org/wiki/SDDM"
- if has_version x11-drivers/nvidia-drivers; then
- elog
- elog " Nvidia GPU owners in particular should pay attention"
- elog " to the troubleshooting section."
- fi
-
- systemd_reenable sddm.service
-}
diff --git a/x11-misc/sddm/sddm-0.21.0_p20260819.ebuild b/x11-misc/sddm/sddm-0.21.0_p20260819.ebuild
deleted file mode 100644
index 7bb7297b4027..000000000000
--- a/x11-misc/sddm/sddm-0.21.0_p20260819.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PAM_TAR="${PN}-0.21.0-pam"
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
-else
- COMMIT=da0b64d8e2378c4bce16cbea6cac2ffc89ad1a4a
- SRC_URI="https://github.com/${PN}/${PN}/archive/${COMMIT}.tar.gz -> ${P}-${COMMIT:0:8}.tar.gz"
- S="${WORKDIR}/${PN}-${COMMIT}"
- KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
-fi
-
-inherit cmake linux-info pam systemd tmpfiles
-
-DESCRIPTION="Simple Desktop Display Manager"
-HOMEPAGE="https://github.com/sddm/sddm"
-SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PAM_TAR}.tar.xz"
-
-LICENSE="GPL-2+ MIT CC-BY-3.0 CC-BY-SA-3.0 public-domain"
-SLOT="0"
-IUSE="+elogind systemd test"
-
-REQUIRED_USE="^^ ( elogind systemd )"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- acct-group/sddm
- acct-user/sddm
- dev-qt/qtbase:6[dbus,gui,network]
- dev-qt/qtdeclarative:6
- sys-libs/pam
- x11-libs/libXau
- x11-libs/libxcb:=
- elogind? (
- sys-auth/elogind[pam]
- sys-power/upower
- )
- systemd? ( sys-apps/systemd:=[pam] )
-"
-RDEPEND="${DEPEND}
- gui-apps/sddm-gentoo-config
- !systemd? ( gui-libs/display-manager-init )
-"
-BDEPEND="
- dev-python/docutils
- dev-qt/qttools[linguist]
- kde-frameworks/extra-cmake-modules:0
- virtual/pkgconfig
-"
-
-PATCHES=(
- # Downstream patches
- "${FILESDIR}/${PN}-0.20.0-respect-user-flags.patch"
- "${FILESDIR}/${PN}-0.21.0_p20250310-Xsession-xinitrc.patch" # bug 611210
- "${FILESDIR}/${PN}-0.21.0_p20251101-cmake-minreqver-3.16.patch" # pending upstream, bug 964439
- "${FILESDIR}/${PN}-0.21.0_p20251101-fix-restart-greeter.patch" # pending upstream
- "${FILESDIR}/${P}-dont-request-vt-signal-delivery.patch" # pending upstream, bug 966586 (?)
- # thx opensuse
- "${FILESDIR}/${PN}-0.21.0_p20250310-set-XAUTHLOCALHOSTNAME.patch" # bug 913862
- "${FILESDIR}/${PN}-0.21.0_p20251101-fix-terminal-clearing.patch"
-)
-
-pkg_setup() {
- local CONFIG_CHECK="~DRM"
- use kernel_linux && linux-info_pkg_setup
-}
-
-src_unpack() {
- [[ ${PV} == *9999* ]] && git-r3_src_unpack
- default
-}
-
-src_prepare() {
- cmake_src_prepare
-
- if ! use test; then
- sed -e "/^find_package/s/ Test//" -i CMakeLists.txt || die
- cmake_comment_add_subdirectory test
- fi
-
- if use systemd; then
- sed -e "/pam_elogind.so/s/elogind/systemd/" \
- -i "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam || die
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- -DBUILD_MAN_PAGES=ON
- -DBUILD_WITH_QT6=ON
- -DDBUS_CONFIG_FILENAME="org.freedesktop.sddm.conf"
- -DRUNTIME_DIR=/run/sddm
- -DSYSTEMD_TMPFILES_DIR="/usr/lib/tmpfiles.d"
- -DNO_SYSTEMD=$(usex !systemd)
- -DUSE_ELOGIND=$(usex elogind)
- )
-
- if use elogind; then
- mycmakeargs+=(
- # try to use VT7 first.
- # Keep the same as CHECKVT from display-manager
- -DSDDM_INITIAL_VT=7
- )
- fi
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # with systemd logs are sent to journald, so no point to bother in that case
- if ! use systemd; then
- insinto /etc/logrotate.d
- newins "${FILESDIR}/sddm.logrotate" sddm
- fi
-
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}.pam ${PN}
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-autologin.pam ${PN}-autologin
- newpamd "${WORKDIR}"/${PAM_TAR}/${PN}-greeter.pam ${PN}-greeter
-}
-
-pkg_postinst() {
- tmpfiles_process "${PN}.conf"
-
- elog "NOTE: If SDDM startup appears to hang then entropy pool is too low."
- elog "This can be fixed by configuring one of the following:"
- elog " - Enable CONFIG_RANDOM_TRUST_CPU in linux kernel"
- elog " - # emerge sys-apps/haveged && rc-update add haveged boot"
- elog " - # emerge sys-apps/rng-tools && rc-update add rngd boot"
- elog
- elog "SDDM example config can be shown with:"
- elog " ${EROOT}/usr/bin/sddm --example-config"
- elog "Use ${EROOT}/etc/sddm.conf.d/ directory to override specific options."
- elog
- elog "For more information on how to configure SDDM, please visit the wiki:"
- elog " https://wiki.gentoo.org/wiki/SDDM"
- if has_version x11-drivers/nvidia-drivers; then
- elog
- elog " Nvidia GPU owners in particular should pay attention"
- elog " to the troubleshooting section."
- fi
-
- systemd_reenable sddm.service
-}
diff --git a/x11-misc/silent-sddm-theme/silent-sddm-theme-1.4.2.ebuild b/x11-misc/silent-sddm-theme/silent-sddm-theme-1.4.2.ebuild
index c82e89d68b3d..31c015cb8ff5 100644
--- a/x11-misc/silent-sddm-theme/silent-sddm-theme-1.4.2.ebuild
+++ b/x11-misc/silent-sddm-theme/silent-sddm-theme-1.4.2.ebuild
@@ -19,7 +19,7 @@ LICENSE="GPL-3"
SLOT="0"
RDEPEND="
- x11-misc/sddm
+ gui-apps/sddm
media-fonts/redhat[otf,variable,redhatmono,redhatdisplay,redhattext]
>=dev-qt/qtsvg-6.10.1
>=dev-qt/qtvirtualkeyboard-6.10.1
diff --git a/x11-misc/silent-sddm-theme/silent-sddm-theme-1.5.0.ebuild b/x11-misc/silent-sddm-theme/silent-sddm-theme-1.5.0.ebuild
index fec8ba8e313f..bd71574226d7 100644
--- a/x11-misc/silent-sddm-theme/silent-sddm-theme-1.5.0.ebuild
+++ b/x11-misc/silent-sddm-theme/silent-sddm-theme-1.5.0.ebuild
@@ -19,7 +19,7 @@ LICENSE="GPL-3"
SLOT="0"
RDEPEND="
- x11-misc/sddm
+ gui-apps/sddm
media-fonts/redhat[otf,variable,redhatmono,redhatdisplay,redhattext]
>=dev-qt/qtsvg-6.10.1
>=dev-qt/qtvirtualkeyboard-6.10.1
diff --git a/x11-misc/silent-sddm-theme/silent-sddm-theme-9999.ebuild b/x11-misc/silent-sddm-theme/silent-sddm-theme-9999.ebuild
index fec8ba8e313f..bd71574226d7 100644
--- a/x11-misc/silent-sddm-theme/silent-sddm-theme-9999.ebuild
+++ b/x11-misc/silent-sddm-theme/silent-sddm-theme-9999.ebuild
@@ -19,7 +19,7 @@ LICENSE="GPL-3"
SLOT="0"
RDEPEND="
- x11-misc/sddm
+ gui-apps/sddm
media-fonts/redhat[otf,variable,redhatmono,redhatdisplay,redhattext]
>=dev-qt/qtsvg-6.10.1
>=dev-qt/qtvirtualkeyboard-6.10.1