summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCrucible <crucible@localhost>2026-10-12 03:05:03 -0500
committerCrucible <crucible@localhost>2026-10-12 03:05:03 -0500
commit4b55d0eea228906cd0864c9de5dccd8e2dde88dc (patch)
tree09a0345d9af716b6a911cd5653524bf5a44c66e4
parent170dbd8dd96efb51132a4957c7c58a21422297b8 (diff)
downloadsrcux-4b55d0eea228906cd0864c9de5dccd8e2dde88dc.tar.gz
srcux-4b55d0eea228906cd0864c9de5dccd8e2dde88dc.tar.xz
srcux-4b55d0eea228906cd0864c9de5dccd8e2dde88dc.zip
Publish srcux candidate 0000000640-20261012-030307HEADdevelop
-rw-r--r--app-admin/gtkdiskfree/gtkdiskfree-2.0.4_p20200224-r3.ebuild2
-rw-r--r--app-arch/brotli/brotli-1.2.0-r1.ebuild2
-rw-r--r--app-arch/xz-utils/xz-utils-5.8.4.ebuild2
-rw-r--r--app-benchmarks/stress-ng/Manifest2
-rw-r--r--app-benchmarks/stress-ng/stress-ng-0.22.01.ebuild (renamed from app-benchmarks/stress-ng/stress-ng-0.22.00.ebuild)0
-rw-r--r--app-crypt/acme-sh/Manifest2
-rw-r--r--app-crypt/acme-sh/acme-sh-3.1.6.ebuild (renamed from app-crypt/acme-sh/acme-sh-3.1.4.ebuild)0
-rw-r--r--app-crypt/gnupg/gnupg-2.5.24-r1.ebuild2
-rw-r--r--app-crypt/libsecret/libsecret-0.21.8.2-r1.ebuild2
-rw-r--r--app-dicts/myspell-en/myspell-en-20260901.ebuild2
-rw-r--r--app-dicts/myspell-uk/myspell-uk-6.8.5.ebuild2
-rw-r--r--app-doc/gimp-help/gimp-help-3.2.0.ebuild2
-rw-r--r--app-editors/emacs/Manifest14
-rw-r--r--app-editors/emacs/emacs-27.2-r25.ebuild436
-rw-r--r--app-editors/emacs/emacs-27.2-r26.ebuild (renamed from app-editors/emacs/emacs-27.2-r24.ebuild)2
-rw-r--r--app-editors/emacs/emacs-28.2-r23.ebuild559
-rw-r--r--app-editors/emacs/emacs-28.2-r24.ebuild (renamed from app-editors/emacs/emacs-28.2-r22.ebuild)2
-rw-r--r--app-editors/emacs/emacs-29.4-r11.ebuild646
-rw-r--r--app-editors/emacs/emacs-29.4-r12.ebuild (renamed from app-editors/emacs/emacs-29.4-r10.ebuild)9
-rw-r--r--app-editors/emacs/emacs-30.2-r7.ebuild644
-rw-r--r--app-editors/emacs/emacs-30.2-r8.ebuild (renamed from app-editors/emacs/emacs-30.2-r6.ebuild)9
-rw-r--r--app-editors/emacs/emacs-31.1-r2.ebuild (renamed from app-editors/emacs/emacs-31.1-r1.ebuild)6
-rw-r--r--app-emulation/faudio/Manifest2
-rw-r--r--app-emulation/faudio/faudio-26.09.ebuild2
-rw-r--r--app-emulation/faudio/faudio-26.10.ebuild (renamed from app-emulation/faudio/faudio-26.08.ebuild)2
-rw-r--r--app-misc/tmux/Manifest1
-rw-r--r--app-misc/tmux/tmux-3.8.ebuild104
-rw-r--r--app-office/dia/dia-0.98_pre20250913.ebuild2
-rw-r--r--app-office/dia/files/dia-0.98-fix_crash_pdf.patch93
-rw-r--r--app-office/dia/files/dia-0.98-fix_poppler_2606.patch27
-rw-r--r--app-portage/portpeek/portpeek-3.2.9.ebuild1
-rw-r--r--app-shells/bash/bash-5.3_p20.ebuild2
-rw-r--r--app-text/bdf2psf/bdf2psf-1.230.ebuild4
-rw-r--r--app-text/doxygen/Manifest5
-rw-r--r--app-text/doxygen/doxygen-1.13.2.ebuild158
-rw-r--r--app-text/doxygen/doxygen-1.14.0.ebuild146
-rw-r--r--app-text/doxygen/doxygen-1.16.1.ebuild2
-rw-r--r--app-text/doxygen/doxygen-1.17.0-r1.ebuild (renamed from app-text/doxygen/doxygen-1.15.0.ebuild)41
-rw-r--r--app-text/doxygen/doxygen-1.18.0-r1.ebuild (renamed from app-text/doxygen/doxygen-1.15.0-r2.ebuild)37
-rw-r--r--app-text/doxygen/doxygen-9999.ebuild2
-rw-r--r--app-text/doxygen/files/doxygen-1.14.0-suppress-unused-option-libcxx.patch16
-rw-r--r--app-text/doxygen/files/doxygen-1.15.0-duplicate-type-names.patch50
-rw-r--r--app-text/doxygen/files/doxygen-1.17.0-test-tagfile-without-git.patch25
-rw-r--r--app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch24
-rw-r--r--app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch16
-rw-r--r--app-text/pdfjam/pdfjam-4.3.1.ebuild2
-rw-r--r--app-text/ps2eps/Manifest1
-rw-r--r--app-text/ps2eps/ps2eps-1.68.ebuild6
-rw-r--r--app-text/ps2eps/ps2eps-1.70.ebuild41
-rw-r--r--dev-cpp/ada/ada-4.0.0.ebuild2
-rw-r--r--dev-db/duckdb/Manifest2
-rw-r--r--dev-db/duckdb/duckdb-1.5.6.ebuild (renamed from dev-db/duckdb/duckdb-1.5.4.ebuild)4
-rw-r--r--dev-db/mariadb/mariadb-11.4.13-r1.ebuild2
-rw-r--r--dev-db/mysql-connector-c++/mysql-connector-c++-26.7.0.ebuild2
-rw-r--r--dev-debug/gdb/gdb-17.2-r1.ebuild2
-rw-r--r--dev-libs/apr-util/apr-util-1.6.5.ebuild2
-rw-r--r--dev-libs/intel-compute-runtime/Manifest1
-rw-r--r--dev-libs/intel-compute-runtime/intel-compute-runtime-26.35.39758.15.ebuild87
-rw-r--r--dev-libs/intel-compute-runtime/metadata.xml3
-rw-r--r--dev-libs/intel-metrics-discovery/Manifest2
-rw-r--r--dev-libs/intel-metrics-discovery/intel-metrics-discovery-1.16.197.ebuild (renamed from dev-libs/intel-metrics-discovery/intel-metrics-discovery-1.16.193.ebuild)2
-rw-r--r--dev-libs/intel-metrics-library/Manifest1
-rw-r--r--dev-libs/intel-metrics-library/intel-metrics-library-1.0.242.ebuild24
-rw-r--r--dev-libs/kirigami-addons/kirigami-addons-1.14.2.ebuild2
-rw-r--r--dev-libs/level-zero/Manifest1
-rw-r--r--dev-libs/level-zero/level-zero-1.30.0-r1.ebuild (renamed from dev-libs/level-zero/level-zero-1.32.0.ebuild)7
-rw-r--r--dev-libs/level-zero/level-zero-1.32.0-r1.ebuild (renamed from dev-libs/level-zero/level-zero-1.30.0.ebuild)7
-rw-r--r--dev-libs/level-zero/level-zero-1.33.1-r1.ebuild (renamed from dev-libs/level-zero/level-zero-1.33.1.ebuild)7
-rw-r--r--dev-libs/level-zero/level-zero-1.34.0.ebuild29
-rw-r--r--dev-libs/libebml/libebml-1.4.7.ebuild2
-rw-r--r--dev-libs/libfmt/libfmt-12.1.0.ebuild2
-rw-r--r--dev-libs/libunibreak/libunibreak-8.0.ebuild2
-rw-r--r--dev-libs/libzip/Manifest1
-rw-r--r--dev-libs/libzip/libzip-1.12.ebuild73
-rw-r--r--dev-libs/ls-qpack/Manifest2
-rw-r--r--dev-libs/ls-qpack/files/ls-qpack-2.7.0-fortify.patch38
-rw-r--r--dev-libs/ls-qpack/ls-qpack-2.6.4.ebuild39
-rw-r--r--dev-libs/ls-qpack/ls-qpack-2.7.0.ebuild44
-rw-r--r--dev-libs/mxml/Manifest4
-rw-r--r--dev-libs/mxml/mxml-4.0.5.ebuild69
-rw-r--r--dev-libs/mxml/mxml-4.0.6.ebuild (renamed from dev-libs/mxml/mxml-4.0.5-r1.ebuild)5
-rw-r--r--dev-libs/plasma-wayland-protocols/plasma-wayland-protocols-1.23.0.ebuild2
-rw-r--r--dev-libs/qtkeychain/qtkeychain-0.17.0-r2.ebuild2
-rw-r--r--dev-libs/spdlog/spdlog-1.17.0.ebuild2
-rw-r--r--dev-libs/tree-sitter/tree-sitter-0.27.0.ebuild2
-rw-r--r--dev-lua/lgi/lgi-0.9.2_p20260407.ebuild2
-rw-r--r--dev-lua/luaposix/Manifest1
-rw-r--r--dev-lua/luaposix/luaposix-37.0.ebuild73
-rw-r--r--dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild5
-rw-r--r--dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild5
-rw-r--r--dev-python/aioquic/Manifest1
-rw-r--r--dev-python/aioquic/aioquic-1.5.0.ebuild36
-rw-r--r--dev-python/beartype/Manifest2
-rw-r--r--dev-python/beartype/beartype-0.23.1.ebuild46
-rw-r--r--dev-python/bitarray/Manifest1
-rw-r--r--dev-python/bitarray/bitarray-3.12.1.ebuild24
-rw-r--r--dev-python/bitstring/Manifest1
-rw-r--r--dev-python/bitstring/bitstring-5.0.0.ebuild38
-rw-r--r--dev-python/bracex/Manifest6
-rw-r--r--dev-python/bracex/bracex-2.7.ebuild29
-rw-r--r--dev-python/bracex/bracex-3.1.ebuild (renamed from dev-python/bracex/bracex-2.6.ebuild)2
-rw-r--r--dev-python/filelock/Manifest2
-rw-r--r--dev-python/filelock/filelock-4.1.1.ebuild38
-rw-r--r--dev-python/hypothesis/Manifest2
-rw-r--r--dev-python/hypothesis/hypothesis-6.169.0.ebuild (renamed from dev-python/hypothesis/hypothesis-6.167.1.ebuild)12
-rw-r--r--dev-python/moto/Manifest2
-rw-r--r--dev-python/moto/moto-5.2.4.ebuild105
-rw-r--r--dev-python/patiencediff/Manifest2
-rw-r--r--dev-python/patiencediff/patiencediff-1.0.0.ebuild72
-rw-r--r--dev-python/pikepdf/Manifest2
-rw-r--r--dev-python/pikepdf/pikepdf-10.17.0.ebuild61
-rw-r--r--dev-python/platformdirs/Manifest4
-rw-r--r--dev-python/platformdirs/platformdirs-4.13.0.ebuild (renamed from dev-python/platformdirs/platformdirs-4.11.7.ebuild)14
-rw-r--r--dev-python/pycryptodome/Manifest1
-rw-r--r--dev-python/pycryptodome/pycryptodome-3.24.1.ebuild60
-rw-r--r--dev-python/pydantic/Manifest3
-rw-r--r--dev-python/pydantic/pydantic-2.14.1.ebuild234
-rw-r--r--dev-python/pyglet/Manifest1
-rw-r--r--dev-python/pyglet/pyglet-2.1.19.ebuild80
-rw-r--r--dev-python/pylint/Manifest4
-rw-r--r--dev-python/pylint/pylint-4.1.3.ebuild (renamed from dev-python/pylint/pylint-4.0.7.ebuild)10
-rw-r--r--dev-python/pylsqpack/Manifest1
-rw-r--r--dev-python/pylsqpack/pylsqpack-1.0.0.ebuild39
-rw-r--r--dev-python/pyrfc3339/Manifest1
-rw-r--r--dev-python/pyrfc3339/pyrfc3339-2.1.1.ebuild33
-rw-r--r--dev-python/pyspelling/Manifest2
-rw-r--r--dev-python/pyspelling/pyspelling-2.13.ebuild45
-rw-r--r--dev-python/pytest-check/Manifest2
-rw-r--r--dev-python/pytest-check/pytest-check-3.0.0.ebuild (renamed from dev-python/pytest-check/pytest-check-2.8.0.ebuild)3
-rw-r--r--dev-python/python-utils/Manifest2
-rw-r--r--dev-python/python-utils/python-utils-4.1.1.ebuild43
-rw-r--r--dev-python/pyzstd/Manifest2
-rw-r--r--dev-python/pyzstd/pyzstd-0.20.0.ebuild38
-rw-r--r--dev-python/soupsieve/Manifest1
-rw-r--r--dev-python/soupsieve/soupsieve-3.0.2.ebuild34
-rw-r--r--dev-python/tox/Manifest2
-rw-r--r--dev-python/tox/tox-4.65.3.ebuild84
-rw-r--r--dev-python/utidylib/Manifest1
-rw-r--r--dev-python/utidylib/utidylib-1.1.0.ebuild33
-rw-r--r--dev-python/validators/Manifest2
-rw-r--r--dev-python/validators/validators-0.36.0.ebuild28
-rw-r--r--dev-python/virtualenv/Manifest6
-rw-r--r--dev-python/virtualenv/virtualenv-21.14.7.ebuild (renamed from dev-python/virtualenv/virtualenv-21.7.8.ebuild)11
-rw-r--r--dev-python/virtualenv/virtualenv-21.7.7.ebuild117
-rw-r--r--dev-qt/qtbase/files/qtbase-6.11.3-skip-gentoo-chainload.patch9
-rw-r--r--dev-qt/qtbase/qtbase-6.11.9999.ebuild1
-rw-r--r--dev-qt/qtbase/qtbase-6.12.9999.ebuild1
-rw-r--r--dev-qt/qtbase/qtbase-6.9999.ebuild1
-rw-r--r--dev-ruby/base64/base64-0.3.0.ebuild2
-rw-r--r--dev-ruby/bigdecimal/bigdecimal-4.0.1.ebuild2
-rw-r--r--dev-ruby/csv/csv-3.3.5.ebuild2
-rw-r--r--dev-ruby/drb/drb-2.2.3.ebuild2
-rw-r--r--dev-ruby/ipaddr/ipaddr-1.2.8.ebuild2
-rw-r--r--dev-ruby/mutex_m/mutex_m-0.3.0.ebuild2
-rw-r--r--dev-ruby/nkf/nkf-0.2.0.ebuild2
-rw-r--r--dev-ruby/ostruct/ostruct-0.6.3.ebuild2
-rw-r--r--dev-ruby/pstore/pstore-0.2.0.ebuild2
-rw-r--r--dev-ruby/readline/readline-0.0.4.ebuild2
-rw-r--r--dev-ruby/rrdtool-bindings/Manifest1
-rw-r--r--dev-ruby/rrdtool-bindings/rrdtool-bindings-1.11.0.ebuild59
-rw-r--r--dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild2
-rw-r--r--dev-ruby/sqlite3/sqlite3-2.9.5.ebuild2
-rw-r--r--dev-util/cargo-c/Manifest2
-rw-r--r--dev-util/cargo-c/cargo-c-0.10.26.ebuild58
-rw-r--r--dev-util/cvise/cvise-2.12.0-r1.ebuild2
-rw-r--r--dev-util/intel-graphics-compiler/Manifest1
-rw-r--r--dev-util/intel-graphics-compiler/intel-graphics-compiler-2.42.3.ebuild110
-rw-r--r--dev-util/source-highlight/source-highlight-9999.ebuild88
-rw-r--r--dev-util/tree-sitter-cli/tree-sitter-cli-0.27.0.ebuild2
-rw-r--r--eclass/librewolf-r3.eclass172
-rw-r--r--games-server/bedrock-server/Manifest2
-rw-r--r--games-server/bedrock-server/bedrock-server-1.26.52.3.ebuild (renamed from games-server/bedrock-server/bedrock-server-1.26.45.1.ebuild)0
-rw-r--r--games-server/minecraft-server/Manifest2
-rw-r--r--games-server/minecraft-server/minecraft-server-26.3.ebuild (renamed from games-server/minecraft-server/minecraft-server-26.2.ebuild)2
-rw-r--r--games-simulation/openrct2/Manifest4
-rw-r--r--games-simulation/openrct2/openrct2-0.5.6.ebuild (renamed from games-simulation/openrct2/openrct2-0.5.5.ebuild)4
-rw-r--r--gnome-base/gvfs/gvfs-1.58.5.ebuild2
-rw-r--r--gui-apps/xwaylandvideobridge/xwaylandvideobridge-0.5.3.ebuild2
-rw-r--r--gui-libs/gtk4-layer-shell/gtk4-layer-shell-1.3.0.ebuild2
-rw-r--r--kde-apps/okular/okular-26.04.3-r1.ebuild2
-rw-r--r--kde-plasma/ksshaskpass/ksshaskpass-6.7.5-r1.ebuild2
-rw-r--r--kde-plasma/spectacle/spectacle-6.7.5-r1.ebuild2
-rw-r--r--mail-mta/opensmtpd/Manifest2
-rw-r--r--mail-mta/opensmtpd/opensmtpd-7.8.0_p1.ebuild2
-rw-r--r--mail-mta/opensmtpd/opensmtpd-7.9.0_p0.ebuild117
-rw-r--r--media-fonts/unifont/unifont-18.0.01.ebuild2
-rw-r--r--media-gfx/photoqt/photoqt-5.4.1.ebuild2
-rw-r--r--media-libs/babl/babl-0.1.128.ebuild2
-rw-r--r--media-libs/libkate/libkate-0.4.3.ebuild2
-rw-r--r--media-libs/libmatroska/libmatroska-1.7.2.ebuild2
-rw-r--r--media-libs/libxmp/Manifest2
-rw-r--r--media-libs/libxmp/libxmp-4.7.4.ebuild (renamed from media-libs/libxmp/libxmp-4.7.3.ebuild)0
-rw-r--r--media-libs/netpbm/Manifest2
-rw-r--r--media-libs/netpbm/files/netpbm-11.15.1-fix-test-pm_message.patch12
-rw-r--r--media-libs/netpbm/netpbm-11.16.1.ebuild (renamed from media-libs/netpbm/netpbm-11.15.8.ebuild)17
-rw-r--r--media-libs/netpbm/netpbm-11.2.22.ebuild2
-rw-r--r--media-libs/netpbm/netpbm-11.2.30.ebuild2
-rw-r--r--media-libs/netpbm/netpbm-9999.ebuild18
-rw-r--r--media-libs/pulseaudio-qt/pulseaudio-qt-1.9.0.ebuild2
-rw-r--r--media-libs/taglib/taglib-2.3.2.ebuild2
-rw-r--r--media-plugins/photoqt-extensions/photoqt-extensions-5.4.1.ebuild2
-rw-r--r--media-plugins/qmmp-plugin-pack/qmmp-plugin-pack-2.4.0.ebuild2
-rw-r--r--media-sound/lollypop/Manifest1
-rw-r--r--media-sound/lollypop/lollypop-1.4.48.ebuild79
-rw-r--r--media-sound/qmmp/qmmp-2.4.2.ebuild2
-rw-r--r--media-sound/vorbis-tools/vorbis-tools-1.4.3.ebuild2
-rw-r--r--media-video/ffmpeg/ffmpeg-8.1.3.ebuild2
-rw-r--r--net-analyzer/icinga2/icinga2-2.16.5.ebuild2
-rw-r--r--net-analyzer/rrdtool/Manifest1
-rw-r--r--net-analyzer/rrdtool/rrdtool-1.11.0.ebuild286
-rw-r--r--net-dns/knot/knot-3.5.8.ebuild2
-rw-r--r--net-dns/redis-knot/redis-knot-3.5.8.ebuild2
-rw-r--r--net-im/telegram-desktop-bin/Manifest4
-rw-r--r--net-im/telegram-desktop-bin/telegram-desktop-bin-7.3.1.ebuild (renamed from net-im/telegram-desktop-bin/telegram-desktop-bin-7.1.3.ebuild)4
-rw-r--r--net-im/telegram-desktop/Manifest2
-rw-r--r--net-im/telegram-desktop/telegram-desktop-7.0.9.ebuild252
-rw-r--r--net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild (renamed from net-im/telegram-desktop/telegram-desktop-7.1.2.ebuild)9
-rw-r--r--net-libs/libupnp/Manifest2
-rw-r--r--net-libs/libupnp/files/libupnp-22.0.8-disable-network-tests.patch110
-rw-r--r--net-libs/libupnp/libupnp-1.18.5.ebuild2
-rw-r--r--net-libs/libupnp/libupnp-22.1.8.ebuild (renamed from net-libs/libupnp/libupnp-22.1.0.ebuild)2
-rw-r--r--net-libs/ngtcp2/ngtcp2-1.25.0.ebuild2
-rw-r--r--net-mail/getmail/getmail-6.20.01.ebuild2
-rw-r--r--net-misc/chrony/chrony-4.9.ebuild2
-rw-r--r--net-misc/networkmanager/networkmanager-1.58.1-r1.ebuild2
-rw-r--r--net-misc/ptpd/metadata.xml1
-rw-r--r--net-misc/ptpd/ptpd-2.3.1-r2.ebuild6
-rw-r--r--net-misc/smb4k/smb4k-4.0.7.ebuild2
-rw-r--r--net-vpn/networkmanager-strongswan/Manifest4
-rw-r--r--net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild2
-rw-r--r--net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.6.ebuild (renamed from net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.4.ebuild)2
-rw-r--r--net-vpn/openconnect/openconnect-9.21.ebuild2
-rw-r--r--net-wireless/unifi/Manifest3
-rw-r--r--net-wireless/unifi/unifi-10.6.101.ebuild109
-rw-r--r--net-wireless/unifi/unifi-10.6.106.ebuild (renamed from net-wireless/unifi/unifi-10.5.54.ebuild)0
-rw-r--r--profiles/package.mask/00-gentoo2
-rw-r--r--sci-electronics/gerbv/gerbv-2.13.0.ebuild2
-rw-r--r--sci-libs/dealii/dealii-9.7.1-r1.ebuild (renamed from sci-libs/dealii/dealii-9.7.1.ebuild)21
-rw-r--r--sci-libs/dealii/dealii-9.8.0-r1.ebuild (renamed from sci-libs/dealii/dealii-9.8.0.ebuild)21
-rw-r--r--sci-libs/dealii/dealii-9999.ebuild23
-rw-r--r--sci-libs/m4ri/Manifest1
-rw-r--r--sci-libs/m4ri/files/m4ri-20240729-pkgconfig.patch33
-rw-r--r--sci-libs/m4ri/m4ri-20240729.ebuild57
-rw-r--r--sci-libs/mumps/Manifest2
-rw-r--r--sci-libs/mumps/mumps-5.5.1.ebuild221
-rw-r--r--sci-libs/mumps/mumps-5.6.2.ebuild221
-rw-r--r--sci-libs/scalapack/files/scalapack-2.2.3-scalapack.pc.patch29
-rw-r--r--sci-libs/scalapack/scalapack-2.2.3-r2.ebuild (renamed from sci-libs/scalapack/scalapack-2.2.3-r1.ebuild)9
-rw-r--r--sci-libs/trilinos/Manifest8
-rw-r--r--sci-libs/trilinos/files/trilinos-17.2.1-fix_compilation.patch22
-rw-r--r--sci-libs/trilinos/metadata.xml1
-rw-r--r--sci-libs/trilinos/trilinos-14.4.0-r1.ebuild259
-rw-r--r--sci-libs/trilinos/trilinos-15.1.1-r1.ebuild250
-rw-r--r--sci-libs/trilinos/trilinos-16.2.2.ebuild (renamed from sci-libs/trilinos/trilinos-16.2.1.ebuild)15
-rw-r--r--sci-libs/trilinos/trilinos-17.0.0-r1.ebuild252
-rw-r--r--sci-libs/trilinos/trilinos-17.0.0.ebuild249
-rw-r--r--sci-libs/trilinos/trilinos-17.1.2.ebuild (renamed from sci-libs/trilinos/trilinos-17.1.0-r1.ebuild)20
-rw-r--r--sci-libs/trilinos/trilinos-17.2.1.ebuild (renamed from sci-libs/trilinos/trilinos-17.1.0.ebuild)40
-rw-r--r--sci-ml/ollama/Manifest4
-rw-r--r--sci-ml/ollama/ollama-0.40.3.ebuild (renamed from sci-ml/ollama/ollama-0.40.2.ebuild)0
-rw-r--r--sci-ml/tinygrad/Manifest1
-rw-r--r--sci-ml/tinygrad/metadata.xml8
-rw-r--r--sci-ml/tinygrad/tinygrad-0.14.0.ebuild61
-rw-r--r--sci-visualization/paraview/Manifest1
-rw-r--r--sci-visualization/paraview/files/paraview-6.2.0-avoid_file_collisions.patch12
-rw-r--r--sci-visualization/paraview/paraview-6.2.0.ebuild233
-rw-r--r--sec-keys/openpgp-keys-moritzbunkus/openpgp-keys-moritzbunkus-20260524.ebuild2
-rw-r--r--sys-apps/iproute2/iproute2-7.2.0.ebuild2
-rw-r--r--sys-auth/AusweisApp/AusweisApp-2.5.5.ebuild2
-rw-r--r--sys-auth/AusweisApp/AusweisApp-2.6.0.ebuild (renamed from sys-auth/AusweisApp/AusweisApp-2.5.4.ebuild)2
-rw-r--r--sys-auth/AusweisApp/Manifest2
-rw-r--r--sys-block/arcconf/Manifest1
-rw-r--r--sys-block/arcconf/arcconf-5.12.00.28542.ebuild41
-rw-r--r--sys-cluster/zookeeper-bin/Manifest7
-rw-r--r--sys-cluster/zookeeper-bin/zookeeper-bin-3.8.5.ebuild70
-rw-r--r--sys-cluster/zookeeper-bin/zookeeper-bin-3.8.7.ebuild (renamed from sys-cluster/zookeeper-bin/zookeeper-bin-3.8.6.ebuild)2
-rw-r--r--sys-cluster/zookeeper-bin/zookeeper-bin-3.9.3.ebuild70
-rw-r--r--sys-cluster/zookeeper-bin/zookeeper-bin-3.9.4.ebuild70
-rw-r--r--sys-cluster/zookeeper-bin/zookeeper-bin-3.9.6.ebuild (renamed from sys-cluster/zookeeper-bin/zookeeper-bin-3.9.5.ebuild)0
-rw-r--r--sys-devel/bpf-toolchain/bpf-toolchain-16.1.0_p2.ebuild2
-rw-r--r--sys-devel/crossdev/crossdev-20260623.ebuild2
-rw-r--r--sys-devel/dwz/dwz-0.17.ebuild2
-rw-r--r--sys-devel/gcc/Manifest5
-rw-r--r--sys-devel/gcc/gcc-14.4.1_p20261008.ebuild56
-rw-r--r--sys-devel/gcc/gcc-15.3.1_p20261009.ebuild56
-rw-r--r--sys-devel/gcc/gcc-16.2.1_p20261010.ebuild56
-rw-r--r--sys-devel/gcc/gcc-17.0.0_p20261011.ebuild56
-rw-r--r--sys-fs/unionfs-fuse/Manifest2
-rw-r--r--sys-fs/unionfs-fuse/unionfs-fuse-3.7.ebuild48
-rw-r--r--sys-fs/unionfs-fuse/unionfs-fuse-3.8.ebuild (renamed from sys-fs/unionfs-fuse/unionfs-fuse-3.7-r1.ebuild)0
-rw-r--r--sys-kernel/gentoo-kernel-bin/Manifest12
-rw-r--r--sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.56.ebuild222
-rw-r--r--sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.2.10.ebuild223
-rw-r--r--sys-kernel/gentoo-kernel-modprep/Manifest6
-rw-r--r--sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.56.ebuild177
-rw-r--r--sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-7.2.10.ebuild178
-rw-r--r--sys-kernel/gentoo-kernel/Manifest4
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-6.18.56.ebuild192
-rw-r--r--sys-kernel/gentoo-kernel/gentoo-kernel-7.2.10.ebuild193
-rw-r--r--sys-kernel/gentoo-sources/Manifest5
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-6.18.56.ebuild38
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-7.2.10.ebuild39
-rw-r--r--sys-kernel/vanilla-kernel/Manifest4
-rw-r--r--sys-kernel/vanilla-kernel/vanilla-kernel-6.18.56.ebuild182
-rw-r--r--sys-kernel/vanilla-kernel/vanilla-kernel-7.2.10.ebuild183
-rw-r--r--sys-kernel/vanilla-sources/Manifest4
-rw-r--r--sys-kernel/vanilla-sources/vanilla-sources-6.18.56.ebuild (renamed from sys-kernel/vanilla-sources/vanilla-sources-6.18.55.ebuild)0
-rw-r--r--sys-kernel/vanilla-sources/vanilla-sources-7.2.10.ebuild (renamed from sys-kernel/vanilla-sources/vanilla-sources-7.2.9.ebuild)0
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.5.2.ebuild2
-rw-r--r--sys-libs/readline/readline-8.3_p6.ebuild2
-rw-r--r--sys-libs/timezone-data/timezone-data-2026c.ebuild2
-rw-r--r--sys-process/audit/audit-4.2.1.ebuild2
-rw-r--r--virtual/dist-kernel/dist-kernel-6.18.56.ebuild16
-rw-r--r--virtual/dist-kernel/dist-kernel-7.2.10.ebuild17
-rw-r--r--www-client/librewolf-bin/metadata.xml9
-rw-r--r--www-client/librewolf/metadata.xml9
-rw-r--r--x11-misc/pcmanfm-qt/pcmanfm-qt-2.4.1.ebuild2
317 files changed, 6023 insertions, 5138 deletions
diff --git a/app-admin/gtkdiskfree/gtkdiskfree-2.0.4_p20200224-r3.ebuild b/app-admin/gtkdiskfree/gtkdiskfree-2.0.4_p20200224-r3.ebuild
index 4839a4278cd3..50d2637fed76 100644
--- a/app-admin/gtkdiskfree/gtkdiskfree-2.0.4_p20200224-r3.ebuild
+++ b/app-admin/gtkdiskfree/gtkdiskfree-2.0.4_p20200224-r3.ebuild
@@ -11,7 +11,7 @@ S="${WORKDIR}/${PN}-${COMMIT}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="amd64 ~ppc ~ppc64 ~sparc x86"
RDEPEND="
dev-libs/glib
diff --git a/app-arch/brotli/brotli-1.2.0-r1.ebuild b/app-arch/brotli/brotli-1.2.0-r1.ebuild
index f9e38a3f56c5..0c37661c4f85 100644
--- a/app-arch/brotli/brotli-1.2.0-r1.ebuild
+++ b/app-arch/brotli/brotli-1.2.0-r1.ebuild
@@ -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
diff --git a/app-arch/xz-utils/xz-utils-5.8.4.ebuild b/app-arch/xz-utils/xz-utils-5.8.4.ebuild
index 31d2ace89ac9..e484cbaa4306 100644
--- a/app-arch/xz-utils/xz-utils-5.8.4.ebuild
+++ b/app-arch/xz-utils/xz-utils-5.8.4.ebuild
@@ -35,7 +35,7 @@ else
"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~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"
fi
S="${WORKDIR}/${MY_P}"
diff --git a/app-benchmarks/stress-ng/Manifest b/app-benchmarks/stress-ng/Manifest
index f068f2eb2ec3..20d36a03bbd2 100644
--- a/app-benchmarks/stress-ng/Manifest
+++ b/app-benchmarks/stress-ng/Manifest
@@ -1,2 +1,2 @@
DIST stress-ng-0.21.04.tar.gz 8503336 BLAKE2B e314fb3277da300c284b98e2ef068a55943c77a0860d9f02f03f29b3ecd1a19187915f2bec179539a0b020e38d0ef0c5a992111991e30ea5b947778c3f0f384c SHA512 cd03fef0b7d4a2cc98d6a0ac465472545ab2ecb76e71b82e71c8af67130ae497e43eb57dfce9a8099ed5da7617dc7ef5d34236e796b703dbf457f1db6654f29f
-DIST stress-ng-0.22.00.tar.gz 8559532 BLAKE2B 496d5a1cc7052a0408ac183a395003857c57b45797cda8294f043e458f1bb99ba0917fee9011d9348f4b4625eb1037dfda5094de4b39bd7c4ec9b38cfdcb0b31 SHA512 8109ee190af9a9079d0d3eeb9ddd043f0877ea75c802b01084d45d561905d981381637bcad9ddd6674c24f4857c505b4b798234cda00166ea0f719fbf46a57ac
+DIST stress-ng-0.22.01.tar.gz 8567452 BLAKE2B 42b39a9a9d85a60eebdb5f2d0aadcb32f190ba9f9bca7d6c4de1cd25e08ce032756eab6fd7d54116b53a8d4878a3cfdbebe0eb2f8da6260b3f41802652cbb0c4 SHA512 87153d7753fb46fbb775e142bb355d514f3fbb5c3cfd07e1ef36be0cb289e1fbba5dff7c6b1c6047beb6693db63e0c66bd91abd6a019436bcad1e659e784a3a4
diff --git a/app-benchmarks/stress-ng/stress-ng-0.22.00.ebuild b/app-benchmarks/stress-ng/stress-ng-0.22.01.ebuild
index e5159e8ef450..e5159e8ef450 100644
--- a/app-benchmarks/stress-ng/stress-ng-0.22.00.ebuild
+++ b/app-benchmarks/stress-ng/stress-ng-0.22.01.ebuild
diff --git a/app-crypt/acme-sh/Manifest b/app-crypt/acme-sh/Manifest
index f37b57d3eb6a..43e980ff49cd 100644
--- a/app-crypt/acme-sh/Manifest
+++ b/app-crypt/acme-sh/Manifest
@@ -1 +1 @@
-DIST acme.sh-3.1.4.tar.gz 439109 BLAKE2B 2cf164a81db9523c78b75e798657525224d0ac1e4fc1807498d3a7af26d1ff9836799e3df0942a3692c5cfc762c6e2420a99290ecbcae125d8545c7f5a1ab2d6 SHA512 64b6419f08cff8a759b230fe7e7bce207626996be607d8e1a46b59bb203d0f94a13862f98807425bbcd5dde668058355913693a87277b36ef9082a2f268dff32
+DIST acme.sh-3.1.6.tar.gz 488447 BLAKE2B a3e1a69549689a67979462d5ecbcd44c557235cc7d130adc310f5fbc7b326c1caf01e8711e670ff55a5605088dceeb046114c984ce11761663459a61632841c6 SHA512 aeb0bb03b491f81899daf0176049cd2c63c862e2b347bc5511e82a57aed2b8e9676e825f69bb1119674b4ccbd8b7327a5ac037c58d055b84565508973d844274
diff --git a/app-crypt/acme-sh/acme-sh-3.1.4.ebuild b/app-crypt/acme-sh/acme-sh-3.1.6.ebuild
index 271f5fc80d8f..271f5fc80d8f 100644
--- a/app-crypt/acme-sh/acme-sh-3.1.4.ebuild
+++ b/app-crypt/acme-sh/acme-sh-3.1.6.ebuild
diff --git a/app-crypt/gnupg/gnupg-2.5.24-r1.ebuild b/app-crypt/gnupg/gnupg-2.5.24-r1.ebuild
index 3d3094b1e144..352fe30f9207 100644
--- a/app-crypt/gnupg/gnupg-2.5.24-r1.ebuild
+++ b/app-crypt/gnupg/gnupg-2.5.24-r1.ebuild
@@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~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"
IUSE="+alternatives bzip2 doc ldap nls readline selinux +smartcard ssl test +tofu tpm tools usb user-socket wks-server"
RESTRICT="!test? ( test )"
REQUIRED_USE="test? ( tofu )"
diff --git a/app-crypt/libsecret/libsecret-0.21.8.2-r1.ebuild b/app-crypt/libsecret/libsecret-0.21.8.2-r1.ebuild
index e895de60691f..aad9e140bc41 100644
--- a/app-crypt/libsecret/libsecret-0.21.8.2-r1.ebuild
+++ b/app-crypt/libsecret/libsecret-0.21.8.2-r1.ebuild
@@ -13,7 +13,7 @@ HOMEPAGE="https://gnome.pages.gitlab.gnome.org/libsecret"
LICENSE="LGPL-2.1+ test? ( || ( GPL-2+ Apache-2.0 ) )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="+crypt +gcrypt gnutls gtk-doc +introspection pam test test-rust tpm +vala"
RESTRICT="!test? ( test )"
diff --git a/app-dicts/myspell-en/myspell-en-20260901.ebuild b/app-dicts/myspell-en/myspell-en-20260901.ebuild
index 22d065303f8e..828caf6d0a0d 100644
--- a/app-dicts/myspell-en/myspell-en-20260901.ebuild
+++ b/app-dicts/myspell-en/myspell-en-20260901.ebuild
@@ -15,7 +15,7 @@ SRC_URI="https://extensions.libreoffice.org/assets/downloads/41/1788231883/dict-
LICENSE="BSD MIT LGPL-3+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
src_prepare() {
local PLOCALES=( "en_AU" "en_CA" "en_GB" "en_US" "en_GB-oxendict" "en_ZA" )
diff --git a/app-dicts/myspell-uk/myspell-uk-6.8.5.ebuild b/app-dicts/myspell-uk/myspell-uk-6.8.5.ebuild
index 6c004e32977d..062ffcdd7aef 100644
--- a/app-dicts/myspell-uk/myspell-uk-6.8.5.ebuild
+++ b/app-dicts/myspell-uk/myspell-uk-6.8.5.ebuild
@@ -25,4 +25,4 @@ SRC_URI="https://extensions.libreoffice.org/assets/downloads/521/1787530499/dict
LICENSE="GPL-3 LGPL-2.1 MPL-1.1"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
diff --git a/app-doc/gimp-help/gimp-help-3.2.0.ebuild b/app-doc/gimp-help/gimp-help-3.2.0.ebuild
index 40756f9a7ad7..ebd18670853e 100644
--- a/app-doc/gimp-help/gimp-help-3.2.0.ebuild
+++ b/app-doc/gimp-help/gimp-help-3.2.0.ebuild
@@ -12,7 +12,7 @@ SRC_URI="mirror://gimp/help/${P}.tar.bz2"
LICENSE="FDL-1.2+"
SLOT="3.0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~hppa ppc ppc64 ~riscv ~sparc x86"
IUSE="nls"
RDEPEND="!=app-doc/gimp-help-3*:2"
diff --git a/app-editors/emacs/Manifest b/app-editors/emacs/Manifest
index 979bdb2d65a7..9ebe5a67c22e 100644
--- a/app-editors/emacs/Manifest
+++ b/app-editors/emacs/Manifest
@@ -1,17 +1,13 @@
DIST emacs-18.59-patches-17.tar.xz 34812 BLAKE2B c517c177ec14a238d5c816951dc88ce42e7b0235f856e9a5b7454555c80493c2f76b21a458b5694f833d5dbb292cb49b4d8120b36385e020d541c01b79f2ecca SHA512 a8fff9de5046037e219f98f17c792fa67e545b239e577644c02337183b6929d16a3fb7d7a415ebeb9be684b3643cb332fe833e22b5a5ccfc2a278b8b8406615f
DIST emacs-18.59.tar.gz 2962652 BLAKE2B d617636daff41e672af2dcda26ec24b2495cf0a3e6373561ee26a2a922b7252c074dd6b79289d771853a4720c60f084f5726b904bf65989718173232ac874b0b SHA512 03ce565e346e89b7aacb1852f4783e8907f394de7da0c543b475cb038eb89b87f980d0f7ca1841b1d2108b20f211e95113c7214e4a33e5767a1827ff43173f33
-DIST emacs-27.2-patches-13.tar.xz 21480 BLAKE2B 02bc580fbb50fe7c8f6e50d9f98e454349e95b09fa686836b0c1969acd412f2726eca3dbeee72731c56d0ec786f640c370abf7bb711eb4663a52fd443a0d6e06 SHA512 0325e4d5229ee405863f6ac0cabe2f121266e3e2ace9d95b4891dc43450c198e3a895a8c78070d835aeb8fc527d0f269137719fe44133e991776fc110fd8d723
-DIST emacs-27.2-patches-15.tar.xz 22044 BLAKE2B b9eca7c4eebf45416c96701ae97f6185a44fb5d8c98ca7f748c66736fbc95a7cf0b919b11232ddc456147c608db2dac0ebe49276c466b9fc1eeb1191f75fa831 SHA512 9b5039eed87ca8937a33370bd3794c81fe9d59459b42b4ba275a8dddaace954a5a9624ab4d52cc283baf74bb201bbf5c916614559b31d87a3f7d84ebdd96b930
+DIST emacs-27.2-patches-16.tar.xz 22136 BLAKE2B a587a35817892cce3f4a3f827d711fa0a9840ede634aab8dc0750d6eba813372ff7d7c45746dffd71ab040668ff73365d1d7b3139a94dce77a2a3cb0c0d3de49 SHA512 f2c659dc8d843662f750263cfcb6aa239b7fd245dd9244e0a6a76633310170f2855bb88bb8b6fa89dee2d8888e3893e6fcf7cdd1270a9bf935b5f6d6b13d2d84
DIST emacs-27.2.tar.xz 44624480 BLAKE2B 245ea96004b90f81ac74de74521cbbe086caf1176937e08157eae12cdde5a0f35fc77f7119272ed812974358e5e95abb05e1c2e4f3b501cf5401ea9274f62156 SHA512 0f63a5a8709b113ef790c1a64845dad05ead096f93f62164ff221c517a35b91ea7bced75a992d794981a85382cda03cca7338da2f5ef8f6ef1459b88018a4ce9
-DIST emacs-28.2-patches-13.tar.xz 17568 BLAKE2B a2843188e2f9a5da5d4cf40ea771016b36bfa888974897a6f03abb3f5d4f3a477474ad3b35ce7ae9af610f8bba59b5f21f39c12d429612665bc2c8f333d23ef2 SHA512 3618979ce1bb0a4d4ad27a50000b4dba3bf90ff9df38ff77157dee0490cf25c359bcdf94f89ba6c6e09572cbe566c2fdcec4e39f958863a4f45d802482c094a5
-DIST emacs-28.2-patches-15.tar.xz 18124 BLAKE2B 30f0a4016d47db902f6afe4d84bf5bc8b90f9bd5df91a4c98ec0445dedf3e03a80eb53d9db34c2e3596b766e2bee60c606d260037d53d76183d4c8d8c974204a SHA512 59cb0e3eade8a286a3f7a19655823542e877e656b4abfe15daa156adfbadee122242af57c842b66239cba6ea0ed879e8d305b44242a4e1bf6e56deba2120c2a0
+DIST emacs-28.2-patches-16.tar.xz 18220 BLAKE2B 21a75dff3727bf78338ff23613caa2bba51597d6aece6fd011f1fc8a8c01ed877223327d14240c08db28a1aa9b64ff616945ec365b9f7f0a8e63650fb15e5de8 SHA512 bc7d275da00b53f9bcf6fc2578cbe09b4219de96f3983a8b8d6e00d3c4c8bbb0061391373ef1568f0a260b7b7def6bf0b2206eef901af483a7838069aa9cb9f2
DIST emacs-28.2.tar.xz 47722600 BLAKE2B a7e4990658b5e7306510f8dded93aaf0b82cdd9306df8b786526d038c3249ef9579287075f2235eb01a71ae1699db555254f137b86ab2d2305b45895053df552 SHA512 a7cec7e3e82367815a1442f69af54102dbfc434069810a9dec5938a6660cb8b076e6f1fb0bfff9695b15603dbbe05eb9c7dfd92e90cf40fc4d1e5746bce83bd8
-DIST emacs-29.4-patches-7.tar.xz 11112 BLAKE2B 37e76abc7046044b04aee6713366b837fdd9c9b2872ee247ddc859f1463c4a7149aea011aaef192dedc1f950d46ce7af24947ed69d9aa2d748af1906ea53100b SHA512 622bdcb1c59aca0ff7b694c80175ffdfeda4ad94553857b2cabeaaa27110b9b74e9d635cf1de7575a55dcb4c2c56575edeeb516aee909cd82c22f8963f76f90e
-DIST emacs-29.4-patches-9.tar.xz 11680 BLAKE2B 3e145ca6a2d4d5c4c3a24a212015a42aa78f5fd7f49ee71837b4ec4f385ed4a797a71a6fb86853e956424c6b09730b4a97d3ade9e9eb7b70eb61b45ab9a8e074 SHA512 caf2aadfdd7ada92ffe76415c50a41f81679f7062ccd66d26b294fe04eafc3a126c8aebfff9900e5c65e24cd19a845ee8888f5496a863bbe18410b3e4a816801
+DIST emacs-29.4-patches-10.tar.xz 11788 BLAKE2B a433dc49131f9baee97be027b5bdf64134fb334bf7e7bf645376c0cb83df18af2a2abd6129f5486b6f400dad014e732a8c8ec71cfeeed2153c99912fb64b0238 SHA512 39a3a8567edc30d92b94c067cabe8fbf95f822556b56860ef36135b46c7f0a8a2e3e6000374e668afed9cd56db74d814354d8ba0f7a16bdb352ecc287d9c4407
DIST emacs-29.4.tar.xz 52210344 BLAKE2B 825fd2665b6427dbc3cb618b40df2f71fa6b08883bdd07be6d8acf0039df2aeebd294e679e98f4c64a9dd9bdad93589fc7c176cf3860d4fb823fce23f7f2b3cd SHA512 66b38081cb01d2c46ff7beefb45986cc225b4c922c30712ad0d456c6cae5507176ed99418c8f26948c5375c8afde4e4b2507d23ed997dbb5392d12150a121d80
-DIST emacs-30.2-patches-5.tar.xz 8564 BLAKE2B d47d2ac461c352058950c1cb98602c550797f7e9864f05d20f728aa62dd36bf6b6089f34a9bda6c490df149ad526f11e7d0edf586c16e20754df1412edb560fc SHA512 bccc94d31da384b86887a4d153be0946720ef7c66369b591ca567159d0ed83fc0613d7ecb27c7de9a31a98b5886be4fc3498c36a12d878dff36e03cfd55aa7f1
-DIST emacs-30.2-patches-7.tar.xz 9280 BLAKE2B 711b74ca5092e4a7397707d580d6482ba162181ec2a121815fc28b8c2f52557c884214c829ba3fe2d1a04039cc78910095e97bb4a3889d987fadebfc487d6e35 SHA512 910763d9a05a8475c27e19aa0ac98d3d45884d4ef3bf96ec4d9bb5f4674004f2a55d019598603181eea645bfe897f3d86f18ba9bf8ab53e92c2b6b33c9d8a312
+DIST emacs-30.2-patches-8.tar.xz 9428 BLAKE2B dd644f7ec3a80342cac477b174bfbea841c59446c78fbc84f2bdc780707de559674ae4f077e6639e4454d55c905825f3033f5cda09f4b75be8f99db57194fbe7 SHA512 32b6c50794ce117b0a9548a41c79cc218a75a0f6b5bf14f607a7e08ba051d36294eab9ae67604fdb5c7702aaf55d7e16972b46bc72159e3dded5b80e5bdbb13f
DIST emacs-30.2.tar.xz 55320324 BLAKE2B 9163ba6bfab1010a156c669ac085ad363545d73e3ffac21c710b14b618df61a4c6a80a50fd3fa81d852c2ccace5080e614b679606fa584e28509f99ad6196784 SHA512 313432d11e95c74f8cd35c5b1da442e6223f5d40f9173c55883c0339ecbfb97a0bedf79177ef8902afd3e33c078a233777bed01f5caffa1e7524f17d58bfc9a2
-DIST emacs-31.1-patches-2.tar.xz 1600 BLAKE2B 7cc7666772db541294a1148d994fa0fc7ece967333247f57e2f0578b4c180d783373f8ba468ae65019973fe5e2ed6129b35a0f292254f5fd9d820e0c4fe008b3 SHA512 0f39d04f94dc24d5a3cef4fff087cea5f89617f0249735cccd24a17860511e9be5d6c12d455c6a511928ef0f7737efa4e49989b17dfbab26bfa708b6eab93578
+DIST emacs-31.1-patches-3.tar.xz 2780 BLAKE2B c93c53b0d51cc03ee4ce4edc49ea91f9eaa40b51585a713d69fe5951d692ddf3e771a1b7ffb6491398c332ab55184efe0a4856c129d9f2a3e032dc54d87be487 SHA512 d648ff7482f5288c9cf1072c81cde7512dc531c87e29d9cd6eae61857e829e78d4e781d0ba563e5cf5e424e94ce367db81d18f3bf612e7f12a7a26a5d6c2c176
DIST emacs-31.1.tar.xz 57977476 BLAKE2B c9f8cf37553c0e2913eb12d7e069735c23baca3b725332f17b4b4784d1e4987c9ae098dae669e65e49fa01d8b9a63e518b210640892216e0a9ae02e51f3d0581 SHA512 25cb810d09eaaa58306f4c10f406466c424517657dd1c9db056dadb624f0bc33db58f3bcdf527d81e5059e492b81c237f164eb3997bf4357bd84c696537f6836
DIST emacs-32.0.50_pre20260831.tar.xz 36653692 BLAKE2B 76b8696ee19f5bcc231cbe95168a6d4ca16a1da6556ea92f1b811f4bc374704326998c0edff6dfde1be7921fc11dcdfd634148f1c17329af291f675bad5c4297 SHA512 ffaecaac32629045d85076d5ec59607cba4c3671d161814fdb4e641e498a16170d1370f3fa2ad88079901946ad132d74863b13f1f92b0649610ab7fe9244bc3c
diff --git a/app-editors/emacs/emacs-27.2-r25.ebuild b/app-editors/emacs/emacs-27.2-r25.ebuild
deleted file mode 100644
index 3deff35532ff..000000000000
--- a/app-editors/emacs/emacs-27.2-r25.ebuild
+++ /dev/null
@@ -1,436 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=9
-
-inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
-
-if [[ ${PV##*.} = 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
- EGIT_BRANCH="emacs-27"
- EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
- S="${EGIT_CHECKOUT_DIR}"
- SLOT="${PV%%.*}-vcs"
-else
- # FULL_VERSION keeps the full version number, which is needed in
- # order to determine some path information correctly for copy/move
- # operations later on
- FULL_VERSION="${PV%%_*}"
- SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
- S="${WORKDIR}/emacs-${FULL_VERSION}"
- # PV can be in any of the following formats:
- # 27.1 released version (slot 27)
- # 27.1_rc1 upstream release candidate (27)
- # 27.0.9999 live ebuild (slot 27-vcs)
- # 27.0.90 upstream prerelease snapshot (27-vcs)
- # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
- if [[ ${PV} == *_pre* ]]; then
- SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
- S="${WORKDIR}/emacs"
- elif [[ ${PV//[0-9]} != "." ]]; then
- SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
- fi
- # Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-15.tar.xz"
- PATCHES=("${WORKDIR}/patch")
- SLOT="${PV%%.*}"
- [[ ${PV} == *.*.* ]] && SLOT+="-vcs"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
-fi
-
-DESCRIPTION="The advanced, extensible, customizable, self-documenting editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-
-LICENSE="GPL-3+ FDL-1.3+ Boost-1.0 BSD HPND MIT MPL-2.0 PCRE PSF-2 unicode W3C"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jpeg json lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm zlib"
-RESTRICT="test"
-
-RDEPEND=">=app-emacs/emacs-common-1.11[games?,gui?]
- sys-libs/ncurses:0=
- acl? ( virtual/acl )
- alsa? ( media-libs/alsa-lib )
- dbus? ( sys-apps/dbus )
- games? ( acct-group/gamestat )
- gmp? ( dev-libs/gmp:0= )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- json? ( dev-libs/jansson:= )
- lcms? ( media-libs/lcms:2 )
- libxml2? ( >=dev-libs/libxml2-2.2.0:= )
- mailutils? ( net-mail/mailutils[clients] )
- !mailutils? ( acct-group/mail net-libs/liblockfile )
- selinux? ( sys-libs/libselinux )
- ssl? ( net-libs/gnutls:0= )
- systemd? ( sys-apps/systemd )
- valgrind? ( dev-debug/valgrind )
- zlib? ( virtual/zlib:= )
- gui? ( !aqua? (
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb
- x11-misc/xbitmaps
- gsettings? ( >=dev-libs/glib-2.28.6 )
- gif? ( media-libs/giflib:0= )
- jpeg? ( media-libs/libjpeg-turbo:0= )
- png? ( >=media-libs/libpng-1.4:0= )
- svg? ( >=gnome-base/librsvg-2.0 )
- tiff? ( media-libs/tiff:= )
- xpm? ( x11-libs/libXpm )
- imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXrender
- cairo? ( >=x11-libs/cairo-1.12.18[X] )
- !cairo? ( x11-libs/libXft )
- harfbuzz? ( media-libs/harfbuzz:0= )
- m17n-lib? (
- >=dev-libs/libotf-0.9.4
- >=dev-libs/m17n-lib-1.5.1
- )
- )
- gtk? ( x11-libs/gtk+:3[X] )
- !gtk? (
- motif? (
- >=x11-libs/motif-2.3:0=
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )
- ) )"
-
-DEPEND="${RDEPEND}
- gui? ( !aqua? ( x11-base/xorg-proto ) )"
-
-BDEPEND="sys-apps/texinfo
- virtual/pkgconfig
- gzip-el? ( app-arch/gzip )"
-
-IDEPEND="app-eselect/eselect-emacs"
-
-RDEPEND+=" ${IDEPEND}"
-
-EMACS_SUFFIX="emacs-${SLOT}"
-SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
-
-# Suppress false positive QA warnings #898304 #925449
-QA_CONFIG_IMPL_DECL_SKIP=( malloc_{get,set}_state statvfs64 )
-
-src_prepare() {
- if [[ ${PV##*.} = 9999 ]]; then
- FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
- configure.ac)
- [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
- einfo "Emacs branch: ${EGIT_BRANCH}"
- einfo "Commit: ${EGIT_VERSION}"
- einfo "Emacs version number: ${FULL_VERSION}"
- [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
- || die "Upstream version number changed to ${FULL_VERSION}"
- fi
-
- default
-
- # Fix filename reference in redirected man page
- sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
-
- AT_M4DIR=m4 eautoreconf
-}
-
-src_configure() {
- replace-flags "-O[3-9]" -O2 #839405
-
- # We want floating-point arithmetic to be correct #933380
- replace-flags -Ofast -O2
- append-flags -fno-fast-math -ffp-contract=off
-
- export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
-
- local myconf=(
- --program-suffix="-${EMACS_SUFFIX}"
- --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX}
- --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX}
- --localstatedir="${EPREFIX}"/var
- --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}"
- --without-compress-install
- --without-pop
- --with-file-notification=$(usev inotify || usev gfile || echo no)
- --with-pdumper
- $(use_enable acl)
- $(use_with dbus)
- $(use_with dynamic-loading modules)
- $(use_with games gameuser ":gamestat")
- $(use_with gmp libgmp)
- $(use_with gpm)
- $(use_with json)
- $(use_with lcms lcms2)
- $(use_with libxml2 xml2)
- $(use_with mailutils)
- $(use_with selinux)
- $(use_with ssl gnutls)
- $(use_with systemd libsystemd)
- $(use_with threads)
- $(use_with wide-int)
- $(use_with zlib)
- )
-
- if use alsa; then
- use sound || ewarn \
- "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
- myconf+=( --with-sound=alsa )
- else
- myconf+=( --with-sound=$(usex sound oss no) )
- fi
-
- if ! use gui; then
- einfo "Configuring to build without window system support"
- myconf+=(
- --without-x --without-ns
- )
- elif use aqua; then
- einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
- myconf+=(
- --with-ns --disable-ns-self-contained
- --without-x
- )
- else
- myconf+=(
- --with-x --without-ns
- --without-gconf
- $(use_with gsettings)
- $(use_with toolkit-scroll-bars)
- $(use_with gif)
- $(use_with jpeg)
- $(use_with png)
- $(use_with svg rsvg)
- $(use_with tiff)
- $(use_with xpm)
- $(use_with imagemagick)
- )
-
- if use xft; then
- myconf+=(
- --with-xft
- $(use_with cairo)
- $(use_with harfbuzz)
- $(use_with m17n-lib libotf)
- $(use_with m17n-lib m17n-flt)
- )
- else
- myconf+=(
- --without-xft
- --without-cairo
- --without-libotf --without-m17n-flt
- )
- use cairo && ewarn \
- "USE flag \"cairo\" has no effect if \"xft\" is not set."
- use m17n-lib && ewarn \
- "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
- fi
-
- local f line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- There is a long-standing bug in GTK+ that prevents Emacs
- from recovering from X disconnects:
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
- This is not a problem if you use only one display, but if
- you use more than one and close one of them, Emacs may crash.
- If you intend to use more than one display or to run Emacs
- as a daemon, then it is strongly recommended that you compile
- it with the Athena/Lucid or the Motif toolkit instead,
- i.e. with USE="athena Xaw3d -gtk -motif" or USE="motif -gtk".
- EOF
- myconf+=( --with-x-toolkit=gtk3 --without-xwidgets )
- for f in motif Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"gtk\" is set."
- done
- elif use motif; then
- einfo "Configuring to build with Motif toolkit"
- myconf+=( --with-x-toolkit=motif )
- for f in Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"motif\" is set."
- done
- elif use athena || use Xaw3d; then
- einfo "Configuring to build with Athena/Lucid toolkit"
- myconf+=( --with-x-toolkit=lucid $(use_with Xaw3d xaw3d) )
- else
- einfo "Configuring to build with no toolkit"
- myconf+=( --with-x-toolkit=no )
- fi
- fi
-
- if tc-is-cross-compiler; then
- # Configure a CBUILD directory when cross-compiling to make tools
- mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die
- ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
- popd >/dev/null || die
- # Don't try to execute the binary for dumping during the build
- myconf+=( --with-dumping=none )
- elif use m68k; then
- # Workaround for https://debbugs.gnu.org/44531
- myconf+=( --with-dumping=unexec )
- else
- myconf+=( --with-dumping=pdumper )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- if tc-is-cross-compiler; then
- # Build native tools for compiling lisp etc.
- emake -C "${S}-build" src
- emake lib # Cross-compile dependencies first for timestamps
- # Save native build tools in the cross-directory
- cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
- # Specify the native Emacs to compile lisp
- emake -C lisp all EMACS="${S}-build/src/emacs"
- fi
-
- emake
-}
-
-src_install() {
- emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
-
- mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
- mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
- mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
-
- # dissuade Portage from removing our dir file #257260
- touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
- docompress -x /usr/share/info/${EMACS_SUFFIX}/dir
-
- # movemail must be setgid mail
- if ! use mailutils; then
- fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fi
-
- # avoid collision between slots, see bug #169033 e.g.
- rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
- rm -rf "${ED}"/usr/share/{applications,icons} || die
- rm -rf "${ED}/usr/$(get_libdir)" || die
- rm -rf "${ED}"/var || die
-
- # remove unused <version>/site-lisp dir
- rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
-
- # remove COPYING file (except for etc/COPYING used by describe-copying)
- rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
-
- if use gzip-el; then
- # compress .el files when a corresponding .elc exists
- find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
- -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
- pipestatus || die "gzip .el pipeline failed"
- fi
-
- local cdir
- if use source; then
- cdir="/usr/share/emacs/${FULL_VERSION}/src"
- insinto "${cdir}"
- # This is not meant to install all the source -- just the
- # C source you might find via find-function
- doins src/*.{c,h,m}
- elif has installsources ${FEATURES}; then
- cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
- fi
-
- sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
- ;;; ${EMACS_SUFFIX} site-lisp configuration -*-lexical-binding:t-*-
- X
- (when (string-equal emacs-version "${FULL_VERSION}")
- Y (setq find-function-C-source-directory
- Y "${EPREFIX}${cdir}")
- X (let ((path (getenv "INFOPATH"))
- X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
- X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
- X (and path
- X ;; move Emacs Info dir before anything else in /usr/share
- X (let* ((p (cons nil (split-string path ":" t))) (q p))
- X (while (and (cdr q) (not (string-match re (cadr q))))
- X (setq q (cdr q)))
- X (setcdr q (cons dir (delete dir (cdr q))))
- X (setenv "INFOPATH" (mapconcat #'identity (cdr p) ":"))))))
- EOF
- elisp-site-file-install "${T}/${SITEFILE}" || die
-
- dodoc README BUGS CONTRIBUTE
-
- if use gui && use aqua; then
- dodir /Applications/Gentoo
- rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- mv nextstep/Emacs.app \
- "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- fi
-
- local DOC_CONTENTS="You can set the version to be started by
- /usr/bin/emacs through the Emacs eselect module, which also
- redirects man and info pages. Therefore, several Emacs versions can
- be installed at the same time. \"man emacs.eselect\" for details.
- \\n\\nIf you upgrade from a previous major version of Emacs, then
- it is strongly recommended that you use app-admin/emacs-updater
- to rebuild all byte-compiled elisp files of the installed Emacs
- packages."
- if use gui; then
- DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
- Installing media-fonts/font-adobe-{75,100}dpi on the X server's
- machine would satisfy basic Emacs requirements under X11.
- See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
- for how to enable anti-aliased fonts."
- use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
- \"${EPREFIX}/Applications/Gentoo\". You may want to copy or
- symlink it into /Applications by yourself."
- fi
- tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
- a portable dump file due to being cross-compiled.
- To create this file at run time, execute the following command:
- \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
- \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- # verify that the PM hasn't removed our Info directory index #257260
- local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}"
- [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die
-}
-
-pkg_postinst() {
- elisp-site-regen
- readme.gentoo_print_elog
-
- # Force an update of the emacs symlink for the livecd/dvd,
- # because some microemacs packages set it with USE=livecd.
- # Otherwise, create it only when it is not yet set.
- eselect --root="${ROOT}" emacs update $(usev !livecd ifunset)
-}
-
-pkg_postrm() {
- elisp-site-regen
- eselect --root="${ROOT}" emacs update ifunset
-}
diff --git a/app-editors/emacs/emacs-27.2-r24.ebuild b/app-editors/emacs/emacs-27.2-r26.ebuild
index 86740008bcbc..05aacca519bc 100644
--- a/app-editors/emacs/emacs-27.2-r24.ebuild
+++ b/app-editors/emacs/emacs-27.2-r26.ebuild
@@ -32,7 +32,7 @@ else
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
fi
# Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-13.tar.xz"
+ SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-16.tar.xz"
PATCHES=("${WORKDIR}/patch")
SLOT="${PV%%.*}"
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
diff --git a/app-editors/emacs/emacs-28.2-r23.ebuild b/app-editors/emacs/emacs-28.2-r23.ebuild
deleted file mode 100644
index 2b0add778793..000000000000
--- a/app-editors/emacs/emacs-28.2-r23.ebuild
+++ /dev/null
@@ -1,559 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=9
-
-inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
-
-if [[ ${PV##*.} = 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
- EGIT_BRANCH="emacs-28"
- EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
- S="${EGIT_CHECKOUT_DIR}"
- SLOT="${PV%%.*}-vcs"
-else
- # FULL_VERSION keeps the full version number, which is needed in
- # order to determine some path information correctly for copy/move
- # operations later on
- FULL_VERSION="${PV%%_*}"
- SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
- S="${WORKDIR}/emacs-${FULL_VERSION}"
- # PV can be in any of the following formats:
- # 27.1 released version (slot 27)
- # 27.1_rc1 upstream release candidate (27)
- # 27.0.9999 live ebuild (slot 27-vcs)
- # 27.0.90 upstream prerelease snapshot (27-vcs)
- # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
- if [[ ${PV} == *_pre* ]]; then
- SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
- S="${WORKDIR}/emacs"
- elif [[ ${PV//[0-9]} != "." ]]; then
- SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
- fi
- # Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-15.tar.xz"
- PATCHES=("${WORKDIR}/patch")
- SLOT="${PV%%.*}"
- [[ ${PV} == *.*.* ]] && SLOT+="-vcs"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
-fi
-
-DESCRIPTION="The advanced, extensible, customizable, self-documenting editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-
-LICENSE="GPL-3+ FDL-1.3+ Boost-1.0 BSD CC-BY-SA-3.0 CC-BY-SA-4.0 HPND MIT MPL-2.0 PCRE PSF-2 unicode W3C"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm zlib"
-
-RDEPEND=">=app-emacs/emacs-common-1.11[games?,gui?]
- sys-libs/ncurses:0=
- acl? ( virtual/acl )
- alsa? ( media-libs/alsa-lib )
- dbus? ( sys-apps/dbus )
- games? ( acct-group/gamestat )
- gmp? ( dev-libs/gmp:0= )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- jit? (
- sys-devel/gcc:=[jit(-)]
- virtual/zlib:=
- )
- json? ( dev-libs/jansson:= )
- lcms? ( media-libs/lcms:2 )
- libxml2? ( >=dev-libs/libxml2-2.2.0:= )
- mailutils? ( net-mail/mailutils[clients] )
- !mailutils? ( acct-group/mail net-libs/liblockfile )
- selinux? ( sys-libs/libselinux )
- ssl? ( net-libs/gnutls:0= )
- systemd? ( sys-apps/systemd )
- valgrind? ( dev-debug/valgrind )
- zlib? ( virtual/zlib:= )
- gui? ( !aqua? (
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb
- x11-misc/xbitmaps
- gsettings? ( >=dev-libs/glib-2.28.6 )
- gif? ( media-libs/giflib:0= )
- jpeg? ( media-libs/libjpeg-turbo:0= )
- png? ( >=media-libs/libpng-1.4:0= )
- svg? ( >=gnome-base/librsvg-2.0 )
- tiff? ( media-libs/tiff:= )
- xpm? ( x11-libs/libXpm )
- imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXrender
- cairo? ( >=x11-libs/cairo-1.12.18[X] )
- !cairo? ( x11-libs/libXft )
- harfbuzz? ( media-libs/harfbuzz:0= )
- m17n-lib? (
- >=dev-libs/libotf-0.9.4
- >=dev-libs/m17n-lib-1.5.1
- )
- )
- gtk? ( x11-libs/gtk+:3[X] )
- !gtk? (
- motif? (
- >=x11-libs/motif-2.3:0=
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )
- ) )"
-
-DEPEND="${RDEPEND}
- gui? ( !aqua? ( x11-base/xorg-proto ) )"
-
-BDEPEND="sys-apps/texinfo
- virtual/pkgconfig
- gzip-el? ( app-arch/gzip )"
-
-IDEPEND="app-eselect/eselect-emacs"
-
-RDEPEND+=" ${IDEPEND}"
-
-EMACS_SUFFIX="emacs-${SLOT}"
-SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
-
-# Suppress false positive QA warnings #898304 #925449
-QA_CONFIG_IMPL_DECL_SKIP=( malloc_{get,set}_state statvfs64 )
-
-src_prepare() {
- if [[ ${PV##*.} = 9999 ]]; then
- FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \
- configure.ac)
- [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
- einfo "Emacs branch: ${EGIT_BRANCH}"
- einfo "Commit: ${EGIT_VERSION}"
- einfo "Emacs version number: ${FULL_VERSION}"
- [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
- || die "Upstream version number changed to ${FULL_VERSION}"
- fi
-
- if use jit; then
- export NATIVE_FULL_AOT=1
- find lisp -type f -name "*.elc" -delete || die
-
- # These files ignore LDFLAGS. We assign the variable here, because
- # for live ebuilds FULL_VERSION doesn't exist in global scope
- QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*"
-
- # The build system requires gcc for native compilation #874657
- if ! tc-is-gcc; then
- ewarn "Emacs must be built with gcc[jit] if USE=jit is enabled."
- ewarn "Ignoring CC=$(tc-getCC) and forcing ${CHOST}-gcc"
- export CC=${CHOST}-gcc AR=${CHOST}-gcc-ar NM=${CHOST}-gcc-nm \
- RANLIB=${CHOST}-gcc-ranlib
- tc-is-gcc || die "tc-is-gcc failed in spite of CC=${CC}"
- fi
-
- # gccjit doesn't play well with ccache or distcc #801580
- # For now, work around the problem with an explicit LIBRARY_PATH
- if has ccache ${FEATURES} || has distcc ${FEATURES}; then
- export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \
- | sed -n '/^libraries:/{s:^[^/]*::;p}')
- fi
- fi
-
- default
-
- # Fix filename reference in redirected man page
- sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
-
- # Tests that use bubblewrap don't work in the sandbox:
- # "bwrap: setting up uid map: Permission denied"
- # So, disrupt the search for the bwrap executable.
- sed -i -e 's/(executable-find "bwrap")/nil/' test/src/emacs-tests.el \
- test/lisp/emacs-lisp/bytecomp-tests.el || die
-
- AT_M4DIR=m4 eautoreconf
-}
-
-src_configure() {
- replace-flags "-O[3-9]" -O2 #839405
-
- # We want floating-point arithmetic to be correct #933380
- replace-flags -Ofast -O2
- append-flags -fno-fast-math -ffp-contract=off
-
- export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
- append-cppflags -DUSE_VALGRIND=$(usex valgrind)
-
- # Prevents e.g. tests interfering with running Emacs.
- unset EMACS_SOCKET_NAME
-
- local myconf=(
- --program-suffix="-${EMACS_SUFFIX}"
- --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX}
- --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX}
- --localstatedir="${EPREFIX}"/var
- --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}"
- --without-compress-install
- --without-pop
- --with-file-notification=$(usev inotify || usev gfile || echo no)
- --with-pdumper
- $(use_enable acl)
- $(use_with dbus)
- $(use_with dynamic-loading modules)
- $(use_with games gameuser ":gamestat")
- $(use_with gmp libgmp)
- $(use_with gpm)
- $(use_with jit native-compilation)
- $(use_with json)
- $(use_with lcms lcms2)
- $(use_with libxml2 xml2)
- $(use_with mailutils)
- $(use_with selinux)
- $(use_with ssl gnutls)
- $(use_with systemd libsystemd)
- $(use_with threads)
- $(use_with wide-int)
- )
-
- if use alsa; then
- use sound || ewarn \
- "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
- myconf+=( --with-sound=alsa )
- else
- myconf+=( --with-sound=$(usex sound oss no) )
- fi
-
- if use jit; then
- use zlib || ewarn \
- "USE flag \"jit\" overrides \"-zlib\"; enabling zlib support."
- myconf+=( --with-zlib )
- else
- myconf+=( $(use_with zlib) )
- fi
-
- if ! use gui; then
- einfo "Configuring to build without window system support"
- myconf+=(
- --without-x --without-ns
- )
- elif use aqua; then
- einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
- myconf+=(
- --with-ns --disable-ns-self-contained
- --without-x
- )
- else
- myconf+=(
- --with-x --without-ns
- --without-gconf
- $(use_with gsettings)
- $(use_with toolkit-scroll-bars)
- $(use_with gif)
- $(use_with jpeg)
- $(use_with png)
- $(use_with svg rsvg)
- $(use_with tiff)
- $(use_with xpm)
- $(use_with imagemagick)
- )
-
- if use xft; then
- myconf+=(
- --with-xft
- $(use_with cairo)
- $(use_with harfbuzz)
- $(use_with m17n-lib libotf)
- $(use_with m17n-lib m17n-flt)
- )
- else
- myconf+=(
- --without-xft
- --without-cairo
- --without-libotf --without-m17n-flt
- )
- use cairo && ewarn \
- "USE flag \"cairo\" has no effect if \"xft\" is not set."
- use m17n-lib && ewarn \
- "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
- fi
-
- local f line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- There is a long-standing bug in GTK+ that prevents Emacs
- from recovering from X disconnects:
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
- This is not a problem if you use only one display, but if
- you use more than one and close one of them, Emacs may crash.
- If you intend to use more than one display or to run Emacs
- as a daemon, then it is strongly recommended that you compile
- it with the Athena/Lucid or the Motif toolkit instead,
- i.e. with USE="athena Xaw3d -gtk -motif" or USE="motif -gtk".
- EOF
- myconf+=( --with-x-toolkit=gtk3 --without-xwidgets )
- for f in motif Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"gtk\" is set."
- done
- elif use motif; then
- einfo "Configuring to build with Motif toolkit"
- myconf+=( --with-x-toolkit=motif )
- for f in Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"motif\" is set."
- done
- elif use athena || use Xaw3d; then
- einfo "Configuring to build with Athena/Lucid toolkit"
- myconf+=( --with-x-toolkit=lucid $(use_with Xaw3d xaw3d) )
- else
- einfo "Configuring to build with no toolkit"
- myconf+=( --with-x-toolkit=no )
- fi
- fi
-
- if tc-is-cross-compiler; then
- # Configure a CBUILD directory when cross-compiling to make tools
- mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die
- ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
- popd >/dev/null || die
- # Don't try to execute the binary for dumping during the build
- myconf+=( --with-dumping=none )
- elif use m68k; then
- # Workaround for https://debbugs.gnu.org/44531
- myconf+=( --with-dumping=unexec )
- else
- myconf+=( --with-dumping=pdumper )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- if tc-is-cross-compiler; then
- # Build native tools for compiling lisp etc.
- emake -C "${S}-build" src
- emake lib # Cross-compile dependencies first for timestamps
- # Save native build tools in the cross-directory
- cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
- # Specify the native Emacs to compile lisp
- emake -C lisp all EMACS="${S}-build/src/emacs"
- fi
-
- emake
-}
-
-src_test() {
- # List .el test files with a comment above listing the exact
- # subtests which caused failure. Elements should begin with a %.
- # e.g. %lisp/gnus/mml-sec-tests.el.
- local exclude_tests=(
- # Reason: not yet known
- # mml-secure-en-decrypt-{1,2,3,4}
- # mml-secure-find-usable-keys-{1,2}
- # mml-secure-key-checks
- # mml-secure-select-preferred-keys-4
- # mml-secure-sign-verify-1
- %lisp/gnus/mml-sec-tests.el
-
- # Reason: race condition
- # Looks like it should be fixed in 29.x at least:
- # https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55706
- # files-tests-file-name-non-special-file-in-directory-p
- %lisp/files-tests.el
-
- # Reason: permission denied on /nonexistent
- # (vc-*-bzr only fails if breezy is installed, as they
- # try to access cache dirs under /nonexistent)
- #
- # rmail-undigest-test-multipart-mixed-digest
- # rmail-undigest-test-rfc1153-less-strict-digest
- # rmail-undigest-test-rfc1153-sloppy-digest
- # rmail-undigest-test-rfc934-digest
- # vc-test-bzr02-state
- # vc-test-bzr05-rename-file
- # vc-test-bzr06-version-diff
- # vc-bzr-test-bug9781
- %lisp/mail/undigest-tests.el
- %lisp/vc/vc-tests.el
- %lisp/vc/vc-bzr-tests.el
-
- # Reason: some copyright years differ
- %lisp/emacs-lisp/copyright-tests.el
-
- # Reason: quoting issues (fixed in Emacs 29)
- %lib-src/emacsclient-tests.el
-
- # Reason: tries to access network
- # internet-is-working
- %src/process-tests.el
-
- # Reason: fails with app-crypt/freepg
- %lisp/epg-tests.el
-
- # Reason: tests not backported
- # tramp-test01-file-name-syntax
- # tramp-test02-file-name-dissect
- # tramp-test03-file-name-defaults
- # tramp-test03-file-name-method-rules
- # url-tramp-test-convert-tramp-to-url
- %lisp/net/tramp-tests.el
- %lisp/url/url-tramp-tests.el
- )
- use elibc_musl && exclude_tests+=(
- # Reason: newlocale(3) lenient locale validation #906012
- # fns-tests-collate-strings
- %src/fns-tests.el
- )
- use threads || exclude_tests+=(
- %src/emacs-module-tests.el
- %src/keyboard-tests.el
- %src/thread-tests.el
- )
-
- # See test/README for possible options
- emake \
- EMACS_TEST_VERBOSE=1 \
- EXCLUDE_TESTS="${exclude_tests[*]}" \
- TERM=dumb \
- TEST_BACKTRACE_LINE_LENGTH=nil \
- check
-}
-
-src_install() {
- emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
-
- mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
- mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
- mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die
-
- # dissuade Portage from removing our dir file #257260
- touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
- docompress -x /usr/share/info/${EMACS_SUFFIX}/dir
-
- # movemail must be setgid mail
- if ! use mailutils; then
- fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fi
-
- # avoid collision between slots, see bug #169033 e.g.
- rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
- rm -rf "${ED}"/usr/share/{applications,icons} || die
- rm -rf "${ED}/usr/$(get_libdir)/systemd" || die
- rm -rf "${ED}"/var || die
-
- # remove unused <version>/site-lisp dir
- rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
-
- # remove COPYING file (except for etc/COPYING used by describe-copying)
- rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
-
- if use gzip-el; then
- # compress .el files when a corresponding .elc exists
- find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
- -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
- pipestatus || die "gzip .el pipeline failed"
- fi
-
- local cdir
- if use source; then
- cdir="/usr/share/emacs/${FULL_VERSION}/src"
- insinto "${cdir}"
- # This is not meant to install all the source -- just the
- # C source you might find via find-function
- doins src/*.{c,h,m}
- elif has installsources ${FEATURES}; then
- cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
- fi
-
- sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
- ;;; ${EMACS_SUFFIX} site-lisp configuration -*-lexical-binding:t-*-
- X
- (when (string-equal emacs-version "${FULL_VERSION}")
- Y (setq find-function-C-source-directory
- Y "${EPREFIX}${cdir}")
- X (let ((path (getenv "INFOPATH"))
- X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
- X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
- X (and path
- X ;; move Emacs Info dir before anything else in /usr/share
- X (let* ((p (cons nil (split-string path ":" t))) (q p))
- X (while (and (cdr q) (not (string-match re (cadr q))))
- X (setq q (cdr q)))
- X (setcdr q (cons dir (delete dir (cdr q))))
- X (setenv "INFOPATH" (mapconcat #'identity (cdr p) ":"))))))
- EOF
- elisp-site-file-install "${T}/${SITEFILE}" || die
-
- dodoc README BUGS CONTRIBUTE
-
- if use gui && use aqua; then
- dodir /Applications/Gentoo
- rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- mv nextstep/Emacs.app \
- "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- fi
-
- local DOC_CONTENTS="You can set the version to be started by
- /usr/bin/emacs through the Emacs eselect module, which also
- redirects man and info pages. Therefore, several Emacs versions can
- be installed at the same time. \"man emacs.eselect\" for details.
- \\n\\nIf you upgrade from a previous major version of Emacs, then
- it is strongly recommended that you use app-admin/emacs-updater
- to rebuild all byte-compiled elisp files of the installed Emacs
- packages."
- if use gui; then
- DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
- Installing media-fonts/font-adobe-{75,100}dpi on the X server's
- machine would satisfy basic Emacs requirements under X11.
- See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
- for how to enable anti-aliased fonts."
- use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
- \"${EPREFIX}/Applications/Gentoo\". You may want to copy or
- symlink it into /Applications by yourself."
- fi
- tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
- a portable dump file due to being cross-compiled.
- To create this file at run time, execute the following command:
- \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
- \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- # verify that the PM hasn't removed our Info directory index #257260
- local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}"
- [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die
-}
-
-pkg_postinst() {
- elisp-site-regen
- readme.gentoo_print_elog
-
- # Force an update of the emacs symlink for the livecd/dvd,
- # because some microemacs packages set it with USE=livecd.
- # Otherwise, create it only when it is not yet set.
- eselect --root="${ROOT}" emacs update $(usev !livecd ifunset)
-}
-
-pkg_postrm() {
- elisp-site-regen
- eselect --root="${ROOT}" emacs update ifunset
-}
diff --git a/app-editors/emacs/emacs-28.2-r22.ebuild b/app-editors/emacs/emacs-28.2-r24.ebuild
index 7e747e529242..72da029f2630 100644
--- a/app-editors/emacs/emacs-28.2-r22.ebuild
+++ b/app-editors/emacs/emacs-28.2-r24.ebuild
@@ -32,7 +32,7 @@ else
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
fi
# Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-13.tar.xz"
+ SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-16.tar.xz"
PATCHES=("${WORKDIR}/patch")
SLOT="${PV%%.*}"
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
diff --git a/app-editors/emacs/emacs-29.4-r11.ebuild b/app-editors/emacs/emacs-29.4-r11.ebuild
deleted file mode 100644
index 82d014190b33..000000000000
--- a/app-editors/emacs/emacs-29.4-r11.ebuild
+++ /dev/null
@@ -1,646 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=9
-
-inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
-
-if [[ ${PV##*.} = 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
- EGIT_BRANCH="emacs-29"
- EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
- S="${EGIT_CHECKOUT_DIR}"
- SLOT="${PV%%.*}-vcs"
-else
- # FULL_VERSION keeps the full version number, which is needed in
- # order to determine some path information correctly for copy/move
- # operations later on
- FULL_VERSION="${PV%%_*}"
- SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
- S="${WORKDIR}/emacs-${FULL_VERSION}"
- # PV can be in any of the following formats:
- # 27.1 released version (slot 27)
- # 27.1_rc1 upstream release candidate (27)
- # 27.0.9999 live ebuild (slot 27-vcs)
- # 27.0.90 upstream prerelease snapshot (27-vcs)
- # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
- if [[ ${PV} == *_pre* ]]; then
- SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
- S="${WORKDIR}/emacs"
- elif [[ ${PV//[0-9]} != "." ]]; then
- SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
- fi
- # Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-9.tar.xz"
- PATCHES=("${WORKDIR}/patch")
- SLOT="${PV%%.*}"
- [[ ${PV} == *.*.* ]] && SLOT+="-vcs"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
-fi
-
-DESCRIPTION="The advanced, extensible, customizable, self-documenting editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-
-LICENSE="GPL-3+ FDL-1.3+ Boost-1.0 BSD CC-BY-SA-3.0 CC-BY-SA-4.0 HPND MIT MPL-2.0 PCRE PSF-2 unicode W3C"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source sqlite ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter valgrind webp wide-int +X Xaw3d xft +xpm zlib"
-
-X_DEPEND="x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXi
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb
- x11-libs/xcb-util
- x11-misc/xbitmaps
- xpm? ( x11-libs/libXpm )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXrender
- cairo? ( >=x11-libs/cairo-1.12.18[X] )
- !cairo? ( x11-libs/libXft )
- harfbuzz? ( media-libs/harfbuzz:0= )
- m17n-lib? (
- >=dev-libs/libotf-0.9.4
- >=dev-libs/m17n-lib-1.5.1
- )
- )
- gtk? ( x11-libs/gtk+:3[X] )
- !gtk? (
- motif? (
- >=x11-libs/motif-2.3:0=
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )"
-
-RDEPEND=">=app-emacs/emacs-common-1.11[games?,gui?]
- sys-libs/ncurses:0=
- acl? ( virtual/acl )
- alsa? ( media-libs/alsa-lib )
- dbus? ( sys-apps/dbus )
- games? ( acct-group/gamestat )
- gmp? ( dev-libs/gmp:0= )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- jit? (
- sys-devel/gcc:=[jit(-)]
- virtual/zlib:=
- )
- json? ( dev-libs/jansson:= )
- lcms? ( media-libs/lcms:2 )
- libxml2? ( >=dev-libs/libxml2-2.2.0:= )
- mailutils? ( net-mail/mailutils[clients] )
- !mailutils? ( acct-group/mail net-libs/liblockfile )
- selinux? ( sys-libs/libselinux )
- sqlite? ( dev-db/sqlite:3 )
- ssl? ( net-libs/gnutls:0= )
- systemd? ( sys-apps/systemd )
- tree-sitter? ( dev-libs/tree-sitter:= )
- valgrind? ( dev-debug/valgrind )
- zlib? ( virtual/zlib:= )
- gui? (
- gif? ( media-libs/giflib:0= )
- jpeg? ( media-libs/libjpeg-turbo:0= )
- png? ( >=media-libs/libpng-1.4:0= )
- svg? ( >=gnome-base/librsvg-2.0 )
- tiff? ( media-libs/tiff:= )
- webp? ( media-libs/libwebp:0= )
- imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] )
- !aqua? (
- gsettings? (
- >=app-emacs/emacs-common-1.11[gsettings]
- >=dev-libs/glib-2.28.6
- )
- gtk? ( !X? (
- media-libs/fontconfig
- media-libs/freetype
- >=x11-libs/cairo-1.12.18
- x11-libs/gtk+:3[wayland]
- harfbuzz? ( media-libs/harfbuzz:0= )
- m17n-lib? (
- >=dev-libs/libotf-0.9.4
- >=dev-libs/m17n-lib-1.5.1
- )
- ) )
- !gtk? ( ${X_DEPEND} )
- X? ( ${X_DEPEND} )
- )
- )"
-
-DEPEND="${RDEPEND}
- gui? ( !aqua? (
- !gtk? ( x11-base/xorg-proto )
- X? ( x11-base/xorg-proto )
- ) )"
-
-BDEPEND="sys-apps/texinfo
- virtual/pkgconfig
- gzip-el? ( app-arch/gzip )"
-
-IDEPEND="app-eselect/eselect-emacs"
-
-RDEPEND+=" ${IDEPEND}"
-
-EMACS_SUFFIX="emacs-${SLOT}"
-SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
-
-# Suppress false positive QA warnings #898304 #925091
-QA_CONFIG_IMPL_DECL_SKIP=( malloc_{get,set}_state statvfs64 )
-
-src_prepare() {
- if [[ ${PV##*.} = 9999 ]]; then
- FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \
- configure.ac)
- [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
- einfo "Emacs branch: ${EGIT_BRANCH}"
- einfo "Commit: ${EGIT_VERSION}"
- einfo "Emacs version number: ${FULL_VERSION}"
- [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
- || die "Upstream version number changed to ${FULL_VERSION}"
- fi
-
- default
-
- if use jit; then
- find lisp -type f -name "*.elc" -delete || die
-
- # These files ignore LDFLAGS. We assign the variable here, because
- # for live ebuilds FULL_VERSION doesn't exist in global scope
- QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*"
-
- # The build system requires gcc for native compilation #874657
- if ! tc-is-gcc; then
- ewarn "Emacs must be built with gcc[jit] if USE=jit is enabled."
- ewarn "Ignoring CC=$(tc-getCC) and forcing ${CHOST}-gcc"
- export CC=${CHOST}-gcc AR=${CHOST}-gcc-ar NM=${CHOST}-gcc-nm \
- RANLIB=${CHOST}-gcc-ranlib
- tc-is-gcc || die "tc-is-gcc failed in spite of CC=${CC}"
- fi
-
- # gccjit doesn't play well with ccache or distcc #801580
- # For now, work around the problem with an explicit LIBRARY_PATH
- if has ccache ${FEATURES} || has distcc ${FEATURES}; then
- export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \
- | sed -n '/^libraries:/{s:^[^/]*::;p}')
- fi
- fi
-
- # Fix filename reference in redirected man page
- sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
-
- # libseccomp is detected by configure but doesn't appear to have any
- # effect on the installed image. Suppress it by supplying pkg-config
- # with a wrong library name.
- sed -i -e "/CHECK_MODULES/s/libseccomp/DiSaBlE&/" configure.ac || die
-
- # Tests that use bubblewrap don't work in the sandbox:
- # "bwrap: setting up uid map: Permission denied"
- # So, disrupt the search for the bwrap executable.
- sed -i -e 's/(executable-find "bwrap")/nil/' test/src/emacs-tests.el \
- test/lisp/emacs-lisp/bytecomp-tests.el || die
-
- AT_M4DIR=m4 eautoreconf
-}
-
-src_configure() {
- replace-flags "-O[3-9]" -O2 #839405
-
- # We want floating-point arithmetic to be correct #933380
- replace-flags -Ofast -O2
- append-flags -fno-fast-math -ffp-contract=off
-
- export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
- append-cppflags -DUSE_VALGRIND=$(usex valgrind)
-
- # Prevents e.g. tests interfering with running Emacs.
- unset EMACS_SOCKET_NAME
-
- local myconf=(
- --program-suffix="-${EMACS_SUFFIX}"
- --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX}
- --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX}
- --localstatedir="${EPREFIX}"/var
- --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}"
- --without-compress-install
- --without-pop
- --with-file-notification=$(usev inotify || usev gfile || echo no)
- --with-pdumper
- $(use_enable acl)
- $(use_with dbus)
- $(use_with dynamic-loading modules)
- $(use_with games gameuser ":gamestat")
- $(use_with gmp libgmp)
- $(use_with gpm)
- $(use_with jit native-compilation aot)
- $(use_with json)
- $(use_with lcms lcms2)
- $(use_with libxml2 xml2)
- $(use_with mailutils)
- $(use_with selinux)
- $(use_with sqlite sqlite3)
- $(use_with ssl gnutls)
- $(use_with systemd libsystemd)
- $(use_with threads)
- $(use_with tree-sitter)
- $(use_with wide-int)
- )
-
- if use alsa; then
- use sound || ewarn \
- "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
- myconf+=( --with-sound=alsa )
- else
- myconf+=( --with-sound=$(usex sound oss no) )
- fi
-
- if use jit; then
- use zlib || ewarn \
- "USE flag \"jit\" overrides \"-zlib\"; enabling zlib support."
- myconf+=( --with-zlib )
- else
- myconf+=( $(use_with zlib) )
- fi
-
- # Emacs supports these window systems:
- # X11, pure GTK (without X11), or Nextstep (Aqua/Cocoa).
- # General GUI support is enabled by the "gui" USE flag, then
- # the window system is selected as follows:
- # "aqua" -> Nextstep
- # "gtk -X" -> pure GTK
- # otherwise -> X11
- # For X11 there is the further choice of toolkits GTK, Motif,
- # Athena (Lucid), or no toolkit. They are enabled (in order of
- # preference) with the "gtk", "motif", "Xaw3d", and "athena" flags.
-
- if ! use gui; then
- einfo "Configuring to build without window system support"
- myconf+=(
- --without-x --without-pgtk --without-ns
- )
- elif use aqua; then
- einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
- myconf+=(
- --with-ns --disable-ns-self-contained
- --without-x --without-pgtk
- )
- elif use gtk && ! use X; then
- einfo "Configuring to build with pure GTK (without X11) support"
- myconf+=(
- --with-pgtk --without-x --without-ns
- --with-toolkit-scroll-bars #836392
- --without-gconf
- --without-xwidgets
- $(use_with gsettings)
- $(use_with harfbuzz)
- $(use_with m17n-lib libotf)
- $(use_with m17n-lib m17n-flt)
- )
- else
- # X11
- myconf+=(
- --with-x --without-pgtk --without-ns
- --without-gconf
- $(use_with gsettings)
- $(use_with toolkit-scroll-bars)
- $(use_with xpm)
- )
-
- if use xft; then
- myconf+=(
- --with-xft
- $(use_with cairo)
- $(use_with harfbuzz)
- $(use_with m17n-lib libotf)
- $(use_with m17n-lib m17n-flt)
- )
- else
- myconf+=(
- --without-xft
- --without-cairo
- --without-libotf --without-m17n-flt
- )
- use cairo && ewarn \
- "USE flag \"cairo\" has no effect if \"xft\" is not set."
- use m17n-lib && ewarn \
- "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
- fi
-
- local f line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- There is a long-standing bug in GTK+ that prevents Emacs
- from recovering from X disconnects:
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
- This is not a problem if you use only one display, but if
- you use more than one and close one of them, Emacs may crash.
- If you intend to use more than one display or to run Emacs
- as a daemon, then it is strongly recommended that you compile
- it with the Athena/Lucid or the Motif toolkit instead,
- i.e. with USE="athena Xaw3d -gtk -motif" or USE="motif -gtk".
- EOF
- myconf+=( --with-x-toolkit=gtk3 --without-xwidgets )
- for f in motif Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"gtk\" is set."
- done
- elif use motif; then
- einfo "Configuring to build with Motif toolkit"
- myconf+=( --with-x-toolkit=motif )
- for f in Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"motif\" is set."
- done
- elif use athena || use Xaw3d; then
- einfo "Configuring to build with Athena/Lucid toolkit"
- myconf+=( --with-x-toolkit=lucid $(use_with Xaw3d xaw3d) )
- else
- einfo "Configuring to build with no toolkit"
- myconf+=( --with-x-toolkit=no )
- fi
- fi
-
- if use gui; then
- # Common flags recognised for all GUIs
- myconf+=(
- $(use_with gif)
- $(use_with jpeg)
- $(use_with png)
- $(use_with svg rsvg)
- $(use_with tiff)
- $(use_with webp)
- $(use_with imagemagick)
- )
- fi
-
- if tc-is-cross-compiler; then
- # Configure a CBUILD directory when cross-compiling to make tools
- mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die
- ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
- popd >/dev/null || die
- # Don't try to execute the binary for dumping during the build
- myconf+=( --with-dumping=none )
- elif use m68k; then
- # Workaround for https://debbugs.gnu.org/44531
- myconf+=( --with-dumping=unexec )
- else
- myconf+=( --with-dumping=pdumper )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- if tc-is-cross-compiler; then
- # Build native tools for compiling lisp etc.
- emake -C "${S}-build" src
- emake lib # Cross-compile dependencies first for timestamps
- # Save native build tools in the cross-directory
- cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
- # Specify the native Emacs to compile lisp
- EMACS_EMAKE_ARGS=( EMACS="${S}-build/src/emacs" )
- emake "${EMACS_EMAKE_ARGS[@]}" actual-all
- else
- EMACS_EMAKE_ARGS=()
- emake
- fi
-}
-
-src_test() {
- # List .el test files with a comment above listing the exact
- # subtests which caused failure. Elements should begin with a %.
- # e.g. %lisp/gnus/mml-sec-tests.el.
- local exclude_tests=(
- # Reason: not yet known
- # mml-secure-sign-verify-1 #967849
- %lisp/gnus/mml-sec-tests.el
-
- # Reason: permission denied on /nonexistent
- # (vc-*-bzr only fails if breezy is installed, as they
- # try to access cache dirs under /nonexistent)
- #
- # rmail-undigest-test-multipart-mixed-digest
- # rmail-undigest-test-rfc1153-less-strict-digest
- # rmail-undigest-test-rfc1153-sloppy-digest
- # rmail-undigest-test-rfc934-digest
- # vc-test-bzr02-state
- # vc-test-bzr05-rename-file
- # vc-test-bzr06-version-diff
- # vc-bzr-test-bug9781
- %lisp/mail/undigest-tests.el
- %lisp/vc/vc-tests.el
- %lisp/vc/vc-bzr-tests.el
-
- # Reason: tries to access network
- # internet-is-working
- %src/process-tests.el
-
- # Reason: test not skipped if tree-sitter-cpp is missing #979386
- # c-ts-mode-test-filling
- %lisp/progmodes/c-ts-mode-tests.el
-
- # Reason: test is not skipped if tree-sitter-tsx is not installed
- # Bug #922525
- %lisp/progmodes/typescript-ts-mode-tests.el
-
- # eglot-test-lsp-abiding-column #977411
- %lisp/progmodes/eglot-tests.el
-
- # Reason: fails with app-crypt/freepg
- %lisp/epg-tests.el
-
- # Reason: https://bugs.gnu.org/72120
- # dired-test-bug27243-02
- %lisp/dired-tests.el
-
- # Reason: does not pass -Q to emacs (https://bugs.gnu.org/81676)
- # emacsclient-test-alternate-editor-allows-arguments
- # emacsclient-test-alternate-editor-allows-quotes
- %lib-src/emacsclient-tests.el
- )
- use elibc_musl && exclude_tests+=(
- # Reason: newlocale(3) lenient locale validation #906012
- # fns-tests-collate-strings
- %src/fns-tests.el
- )
- use threads || exclude_tests+=(
- %lisp/server-tests.el
- %lisp/progmodes/eglot-tests.el
- %src/emacs-module-tests.el
- %src/keyboard-tests.el
- )
- use xpm || exclude_tests+=( %src/image-tests.el )
-
- # Redirect GnuPG's sockets, in order not to exceed the 108 char limit
- # for socket paths on Linux.
- mkdir -p "${T}"/gpg || die
- local f
- for f in browser extra ssh; do
- printf "%%Assuan%%\nsocket=%s\n" "${T}/gpg/S.${f}" \
- > "test/lisp/gnus/mml-sec-resources/S.gpg-agent.${f}" || die
- done
-
- # See test/README for possible options
- emake \
- EMACS_TEST_VERBOSE=1 \
- EXCLUDE_TESTS="${exclude_tests[*]}" \
- TERM=dumb \
- TEST_BACKTRACE_LINE_LENGTH=nil \
- check
-}
-
-src_install() {
- emake \
- "${EMACS_EMAKE_ARGS[@]}" \
- DESTDIR="${D}" \
- NO_BIN_LINK=t \
- BLESSMAIL_TARGET="" \
- install
-
- mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
- mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
- mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die
-
- # dissuade Portage from removing our dir file #257260
- touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
- docompress -x /usr/share/info/${EMACS_SUFFIX}/dir
-
- # movemail must be setgid mail
- if ! use mailutils; then
- fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fi
-
- # avoid collision between slots, see bug #169033 e.g.
- rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
- rm -rf "${ED}"/usr/share/{applications,icons} || die
- rm -rf "${ED}"/usr/share/glib-2.0 || die #911117
- rm -rf "${ED}/usr/$(get_libdir)/systemd" || die
- rm -rf "${ED}"/var || die
-
- # remove unused <version>/site-lisp dir
- rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
-
- # remove COPYING file (except for etc/COPYING used by describe-copying)
- rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
-
- if use gzip-el; then
- # compress .el files when a corresponding .elc exists
- find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
- -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
- pipestatus || die "gzip .el pipeline failed"
- fi
-
- local cdir
- if use source; then
- cdir="/usr/share/emacs/${FULL_VERSION}/src"
- insinto "${cdir}"
- # This is not meant to install all the source -- just the
- # C source you might find via find-function
- doins src/*.{c,h,m}
- elif has installsources ${FEATURES}; then
- cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
- fi
-
- sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
- ;;; ${EMACS_SUFFIX} site-lisp configuration -*-lexical-binding:t-*-
- X
- (when (string-equal emacs-version "${FULL_VERSION}")
- Y (setq find-function-C-source-directory
- Y "${EPREFIX}${cdir}")
- X (let ((path (getenv "INFOPATH"))
- X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
- X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
- X (and path
- X ;; move Emacs Info dir before anything else in /usr/share
- X (let* ((p (cons nil (split-string path ":" t))) (q p))
- X (while (and (cdr q) (not (string-match re (cadr q))))
- X (setq q (cdr q)))
- X (setcdr q (cons dir (delete dir (cdr q))))
- X (setenv "INFOPATH" (mapconcat #'identity (cdr p) ":"))))))
- EOF
- elisp-site-file-install "${T}/${SITEFILE}" || die
-
- dodoc README BUGS CONTRIBUTE
-
- if use gui && use aqua; then
- dodir /Applications/Gentoo
- rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- mv nextstep/Emacs.app \
- "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- fi
-
- local DOC_CONTENTS="You can set the version to be started by
- /usr/bin/emacs through the Emacs eselect module, which also
- redirects man and info pages. Therefore, several Emacs versions can
- be installed at the same time. \"man emacs.eselect\" for details.
- \\n\\nIf you upgrade from a previous major version of Emacs, then
- it is strongly recommended that you use app-admin/emacs-updater
- to rebuild all byte-compiled elisp files of the installed Emacs
- packages."
- if use gui; then
- DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
- Installing media-fonts/font-adobe-{75,100}dpi on the X server's
- machine would satisfy basic Emacs requirements under X11.
- See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
- for how to enable anti-aliased fonts."
- use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
- \"${EPREFIX}/Applications/Gentoo\". You may want to copy or
- symlink it into /Applications by yourself."
- fi
- if ! use mailutils; then
- DOC_CONTENTS+="\\n\\nThe mailutils USE flag is disabled. If Emacs'
- own e-mail features are going to be used as an e-mail client
- (e.g. Rmail), you are strongly encouraged to enable it. If not,
- Emacs will use its own implementation of movemail; which has
- fewer features and is less secure. For more information see the
- Info node '(emacs)Movemail' in the Emacs manual."
- fi
- tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
- a portable dump file due to being cross-compiled.
- To create this file at run time, execute the following command:
- \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
- \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- # verify that the PM hasn't removed our Info directory index #257260
- local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}"
- [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die
-}
-
-pkg_postinst() {
- elisp-site-regen
- readme.gentoo_print_elog
-
- # Force an update of the emacs symlink for the livecd/dvd,
- # because some microemacs packages set it with USE=livecd.
- # Otherwise, create it only when it is not yet set.
- eselect --root="${ROOT}" emacs update $(usev !livecd ifunset)
-}
-
-pkg_postrm() {
- elisp-site-regen
- eselect --root="${ROOT}" emacs update ifunset
-}
diff --git a/app-editors/emacs/emacs-29.4-r10.ebuild b/app-editors/emacs/emacs-29.4-r12.ebuild
index b76cc0545424..b56ee6e031f1 100644
--- a/app-editors/emacs/emacs-29.4-r10.ebuild
+++ b/app-editors/emacs/emacs-29.4-r12.ebuild
@@ -32,7 +32,7 @@ else
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
fi
# Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-7.tar.xz"
+ SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-10.tar.xz"
PATCHES=("${WORKDIR}/patch")
SLOT="${PV%%.*}"
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
@@ -134,7 +134,7 @@ RDEPEND=">=app-emacs/emacs-common-1.11[games?,gui?]
media-libs/fontconfig
media-libs/freetype
>=x11-libs/cairo-1.12.18
- x11-libs/gtk+:3
+ x11-libs/gtk+:3[wayland]
harfbuzz? ( media-libs/harfbuzz:0= )
m17n-lib? (
>=dev-libs/libotf-0.9.4
@@ -477,6 +477,11 @@ src_test() {
# emacsclient-test-alternate-editor-allows-arguments
# emacsclient-test-alternate-editor-allows-quotes
%lib-src/emacsclient-tests.el
+
+ # Reason: tests not backported #981157
+ # tramp-test41-special-characters
+ # tramp-test42-utf8
+ %lisp/net/tramp-tests.el
)
use elibc_musl && exclude_tests+=(
# Reason: newlocale(3) lenient locale validation #906012
diff --git a/app-editors/emacs/emacs-30.2-r7.ebuild b/app-editors/emacs/emacs-30.2-r7.ebuild
deleted file mode 100644
index b581fcc9907b..000000000000
--- a/app-editors/emacs/emacs-30.2-r7.ebuild
+++ /dev/null
@@ -1,644 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=9
-
-inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
-
-if [[ ${PV##*.} = 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
- EGIT_BRANCH="emacs-30"
- EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
- S="${EGIT_CHECKOUT_DIR}"
- SLOT="${PV%%.*}-vcs"
-else
- # FULL_VERSION keeps the full version number, which is needed in
- # order to determine some path information correctly for copy/move
- # operations later on
- FULL_VERSION="${PV%%_*}"
- SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
- S="${WORKDIR}/emacs-${FULL_VERSION}"
- # PV can be in any of the following formats:
- # 27.1 released version (slot 27)
- # 27.1_rc1 upstream release candidate (27)
- # 27.0.9999 live ebuild (slot 27-vcs)
- # 27.0.90 upstream prerelease snapshot (27-vcs)
- # 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
- if [[ ${PV} == *_pre* ]]; then
- SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
- S="${WORKDIR}/emacs"
- elif [[ ${PV//[0-9]} != "." ]]; then
- SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
- fi
- # Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-7.tar.xz"
- PATCHES=("${WORKDIR}/patch")
- SLOT="${PV%%.*}"
- [[ ${PV} == *.*.* ]] && SLOT+="-vcs"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
-fi
-
-DESCRIPTION="The advanced, extensible, customizable, self-documenting editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-
-LICENSE="GPL-3+ FDL-1.3+ Boost-1.0 BSD CC-BY-SA-3.0 CC-BY-SA-4.0 HPND MIT MPL-2.0 PCRE PSF-2 unicode W3C"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source sqlite ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter valgrind webp wide-int +X xattr Xaw3d xft +xpm zlib"
-
-X_DEPEND="x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXi
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb
- x11-libs/xcb-util
- x11-misc/xbitmaps
- xpm? ( x11-libs/libXpm )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXrender
- cairo? ( >=x11-libs/cairo-1.12.18[X] )
- !cairo? ( x11-libs/libXft )
- harfbuzz? ( media-libs/harfbuzz:0= )
- m17n-lib? (
- >=dev-libs/libotf-0.9.4
- >=dev-libs/m17n-lib-1.5.1
- )
- )
- gtk? ( x11-libs/gtk+:3[X] )
- !gtk? (
- motif? (
- >=x11-libs/motif-2.3:0=
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )"
-
-RDEPEND=">=app-emacs/emacs-common-1.11[games?,gui?]
- sys-libs/ncurses:0=
- acl? ( virtual/acl )
- alsa? ( media-libs/alsa-lib )
- dbus? ( sys-apps/dbus )
- games? ( acct-group/gamestat )
- gmp? ( dev-libs/gmp:0= )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- jit? (
- sys-devel/gcc:=[jit(-)]
- virtual/zlib:=
- )
- lcms? ( media-libs/lcms:2 )
- libxml2? ( >=dev-libs/libxml2-2.2.0:= )
- mailutils? ( net-mail/mailutils[clients] )
- !mailutils? ( acct-group/mail net-libs/liblockfile )
- selinux? ( sys-libs/libselinux )
- sqlite? ( dev-db/sqlite:3 )
- ssl? ( net-libs/gnutls:0= )
- systemd? ( sys-apps/systemd )
- tree-sitter? ( dev-libs/tree-sitter:= )
- valgrind? ( dev-debug/valgrind )
- xattr? ( sys-apps/attr )
- zlib? ( virtual/zlib:= )
- gui? (
- gif? ( media-libs/giflib:0= )
- jpeg? ( media-libs/libjpeg-turbo:0= )
- png? ( >=media-libs/libpng-1.4:0= )
- svg? ( >=gnome-base/librsvg-2.0 )
- tiff? ( media-libs/tiff:= )
- webp? ( media-libs/libwebp:0= )
- imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] )
- !aqua? (
- gsettings? (
- >=app-emacs/emacs-common-1.11[gsettings]
- >=dev-libs/glib-2.28.6
- )
- gtk? ( !X? (
- media-libs/fontconfig
- media-libs/freetype
- >=x11-libs/cairo-1.12.18
- x11-libs/gtk+:3[wayland]
- harfbuzz? ( media-libs/harfbuzz:0= )
- m17n-lib? (
- >=dev-libs/libotf-0.9.4
- >=dev-libs/m17n-lib-1.5.1
- )
- ) )
- !gtk? ( ${X_DEPEND} )
- X? ( ${X_DEPEND} )
- )
- )"
-
-DEPEND="${RDEPEND}
- gui? ( !aqua? (
- !gtk? ( x11-base/xorg-proto )
- X? ( x11-base/xorg-proto )
- ) )"
-
-BDEPEND="sys-apps/texinfo
- virtual/pkgconfig
- gzip-el? ( app-arch/gzip )"
-
-IDEPEND="app-eselect/eselect-emacs"
-
-RDEPEND+=" ${IDEPEND}"
-
-EMACS_SUFFIX="emacs-${SLOT}"
-SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
-
-# Suppress false positive QA warnings #898304 #925091
-QA_CONFIG_IMPL_DECL_SKIP=( malloc_{get,set}_state statvfs64 )
-
-src_prepare() {
- if [[ ${PV##*.} = 9999 ]]; then
- FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \
- configure.ac)
- [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
- einfo "Emacs branch: ${EGIT_BRANCH}"
- einfo "Commit: ${EGIT_VERSION}"
- einfo "Emacs version number: ${FULL_VERSION}"
- [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
- || die "Upstream version number changed to ${FULL_VERSION}"
- fi
-
- default
-
- if use jit; then
- find lisp -type f -name "*.elc" -delete || die
-
- # These files ignore LDFLAGS. We assign the variable here, because
- # for live ebuilds FULL_VERSION doesn't exist in global scope
- QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*"
-
- # The build system requires gcc for native compilation #874657
- if ! tc-is-gcc; then
- ewarn "Emacs must be built with gcc[jit] if USE=jit is enabled."
- ewarn "Ignoring CC=$(tc-getCC) and forcing ${CHOST}-gcc"
- export CC=${CHOST}-gcc AR=${CHOST}-gcc-ar NM=${CHOST}-gcc-nm \
- RANLIB=${CHOST}-gcc-ranlib
- tc-is-gcc || die "tc-is-gcc failed in spite of CC=${CC}"
- fi
-
- # gccjit doesn't play well with ccache or distcc #801580
- # For now, work around the problem with an explicit LIBRARY_PATH
- if has ccache ${FEATURES} || has distcc ${FEATURES}; then
- export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \
- | sed -n '/^libraries:/{s:^[^/]*::;p}')
- fi
- fi
-
- # Fix filename reference in redirected man page
- sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
-
- # libseccomp is detected by configure but doesn't appear to have any
- # effect on the installed image. Suppress it by supplying pkg-config
- # with a wrong library name.
- sed -i -e "/CHECK_MODULES/s/libseccomp/DiSaBlE&/" configure.ac || die
-
- # Tests that use bubblewrap don't work in the sandbox:
- # "bwrap: setting up uid map: Permission denied"
- # So, disrupt the search for the bwrap executable.
- sed -i -e 's/(executable-find "bwrap")/nil/' test/src/emacs-tests.el \
- test/lisp/emacs-lisp/bytecomp-tests.el || die
-
- AT_M4DIR=m4 eautoreconf
-}
-
-src_configure() {
- replace-flags "-O[3-9]" -O2 #839405
-
- # We want floating-point arithmetic to be correct #933380
- replace-flags -Ofast -O2
- append-flags -fno-fast-math -ffp-contract=off
-
- export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
- append-cppflags -DUSE_VALGRIND=$(usex valgrind)
-
- # Prevents e.g. tests interfering with running Emacs.
- unset EMACS_SOCKET_NAME
-
- local myconf=(
- --program-suffix="-${EMACS_SUFFIX}"
- --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX}
- --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX}
- --localstatedir="${EPREFIX}"/var
- --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}"
- --without-compress-install
- --without-pop
- --with-file-notification=$(usev inotify || usev gfile || echo no)
- --with-pdumper
- $(use_enable acl)
- $(use_enable xattr)
- $(use_with dbus)
- $(use_with dynamic-loading modules)
- $(use_with games gameuser ":gamestat")
- $(use_with gmp libgmp)
- $(use_with gpm)
- $(use_with jit native-compilation aot)
- $(use_with lcms lcms2)
- $(use_with libxml2 xml2)
- $(use_with mailutils)
- $(use_with selinux)
- $(use_with sqlite sqlite3)
- $(use_with ssl gnutls)
- $(use_with systemd libsystemd)
- $(use_with threads)
- $(use_with tree-sitter)
- $(use_with wide-int)
- )
-
- if use alsa; then
- use sound || ewarn \
- "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
- myconf+=( --with-sound=alsa )
- else
- myconf+=( --with-sound=$(usex sound oss no) )
- fi
-
- if use jit; then
- use zlib || ewarn \
- "USE flag \"jit\" overrides \"-zlib\"; enabling zlib support."
- myconf+=( --with-zlib )
- else
- myconf+=( $(use_with zlib) )
- fi
-
- # Emacs supports these window systems:
- # X11, pure GTK (without X11), or Nextstep (Aqua/Cocoa).
- # General GUI support is enabled by the "gui" USE flag, then
- # the window system is selected as follows:
- # "aqua" -> Nextstep
- # "gtk -X" -> pure GTK
- # otherwise -> X11
- # For X11 there is the further choice of toolkits GTK, Motif,
- # Athena (Lucid), or no toolkit. They are enabled (in order of
- # preference) with the "gtk", "motif", "Xaw3d", and "athena" flags.
-
- if ! use gui; then
- einfo "Configuring to build without window system support"
- myconf+=(
- --without-x --without-pgtk --without-ns
- )
- elif use aqua; then
- einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
- myconf+=(
- --with-ns --disable-ns-self-contained
- --without-x --without-pgtk
- )
- elif use gtk && ! use X; then
- einfo "Configuring to build with pure GTK (without X11) support"
- myconf+=(
- --with-pgtk --without-x --without-ns
- --with-toolkit-scroll-bars #836392
- --without-gconf
- --without-xwidgets
- $(use_with gsettings)
- $(use_with harfbuzz)
- $(use_with m17n-lib libotf)
- $(use_with m17n-lib m17n-flt)
- )
- else
- # X11
- myconf+=(
- --with-x --without-pgtk --without-ns
- --without-gconf
- $(use_with gsettings)
- $(use_with toolkit-scroll-bars)
- $(use_with xpm)
- )
-
- if use xft; then
- myconf+=(
- --with-xft
- $(use_with cairo)
- $(use_with harfbuzz)
- $(use_with m17n-lib libotf)
- $(use_with m17n-lib m17n-flt)
- )
- else
- myconf+=(
- --without-xft
- --without-cairo
- --without-libotf --without-m17n-flt
- )
- use cairo && ewarn \
- "USE flag \"cairo\" has no effect if \"xft\" is not set."
- use m17n-lib && ewarn \
- "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
- fi
-
- local f line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- There is a long-standing bug in GTK+ that prevents Emacs
- from recovering from X disconnects:
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
- <https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
- This is not a problem if you use only one display, but if
- you use more than one and close one of them, Emacs may crash.
- If you intend to use more than one display or to run Emacs
- as a daemon, then it is strongly recommended that you compile
- it with the Athena/Lucid or the Motif toolkit instead,
- i.e. with USE="athena Xaw3d -gtk -motif" or USE="motif -gtk".
- EOF
- myconf+=( --with-x-toolkit=gtk3 --without-xwidgets )
- for f in motif Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"gtk\" is set."
- done
- elif use motif; then
- einfo "Configuring to build with Motif toolkit"
- myconf+=( --with-x-toolkit=motif )
- for f in Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"motif\" is set."
- done
- elif use athena || use Xaw3d; then
- einfo "Configuring to build with Athena/Lucid toolkit"
- myconf+=( --with-x-toolkit=lucid $(use_with Xaw3d xaw3d) )
- else
- einfo "Configuring to build with no toolkit"
- myconf+=( --with-x-toolkit=no )
- fi
- fi
-
- if use gui; then
- # Common flags recognised for all GUIs
- myconf+=(
- $(use_with gif)
- $(use_with jpeg)
- $(use_with png)
- $(use_with svg rsvg)
- $(use_with tiff)
- $(use_with webp)
- $(use_with imagemagick)
- )
- fi
-
- if tc-is-cross-compiler; then
- # Configure a CBUILD directory when cross-compiling to make tools
- mkdir -p "${S}-build" && pushd "${S}-build" >/dev/null || die
- ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
- popd >/dev/null || die
- # Don't try to execute the binary for dumping during the build
- myconf+=( --with-dumping=none )
- elif use m68k; then
- # Workaround for https://debbugs.gnu.org/44531
- myconf+=( --with-dumping=unexec )
- else
- myconf+=( --with-dumping=pdumper )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- unset SHELL #965834
-
- if tc-is-cross-compiler; then
- # Build native tools for compiling lisp etc.
- emake -C "${S}-build" src
- emake lib # Cross-compile dependencies first for timestamps
- # Save native build tools in the cross-directory
- cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
- # Specify the native Emacs to compile lisp
- EMACS_EMAKE_ARGS=( EMACS="${S}-build/src/emacs" )
- emake "${EMACS_EMAKE_ARGS[@]}" actual-all
- else
- EMACS_EMAKE_ARGS=()
- emake
- fi
-}
-
-src_test() {
- # List .el test files with a comment above listing the exact
- # subtests which caused failure. Elements should begin with a %.
- # e.g. %lisp/gnus/mml-sec-tests.el.
- local exclude_tests=(
- # Reason: not yet known
- # mml-secure-sign-verify-1 #967849 #979419
- %lisp/gnus/mml-sec-tests.el
-
- # Reason: permission denied on /nonexistent
- # (vc-*-bzr only fails if breezy is installed, as they
- # try to access cache dirs under /nonexistent)
- #
- # rmail-undigest-test-multipart-mixed-digest
- # rmail-undigest-test-rfc1153-less-strict-digest
- # rmail-undigest-test-rfc1153-sloppy-digest
- # rmail-undigest-test-rfc934-digest
- # vc-test-bzr02-state
- # vc-test-bzr05-rename-file
- # vc-test-bzr06-version-diff
- # vc-bzr-test-bug9781
- %lisp/mail/undigest-tests.el
- %lisp/vc/vc-tests.el
- %lisp/vc/vc-bzr-tests.el
-
- # Reason: malformed html tag in test, https://bugs.gnu.org/79041
- # shr-test/zoom-image
- %lisp/net/shr-tests.el
-
- %lisp/progmodes/eglot-tests.el #966957
-
- # Reason: flaky (https://bugs.gnu.org/73441, fails even with the fix)
- # proced-refine-test
- %lisp/proced-tests.el
-
- # Reason: test not skipped if tree-sitter-cpp is missing #979386
- # c-ts-mode-test-filling
- %lisp/progmodes/c-ts-mode-tests.el
-
- # Reason: tries to access network
- # internet-is-working
- %src/process-tests.el
-
- # Reason: fails with app-crypt/freepg
- %lisp/epg-tests.el
-
- # Reason: does not pass -Q to emacs (https://bugs.gnu.org/81676)
- # emacsclient-test-alternate-editor-allows-arguments
- # emacsclient-test-alternate-editor-allows-quotes
- %lib-src/emacsclient-tests.el
- )
- use elibc_musl && exclude_tests+=(
- # Reason: newlocale(3) lenient locale validation #906012
- # fns-tests-collate-strings
- %src/fns-tests.el
- )
- use threads || exclude_tests+=(
- %src/emacs-module-tests.el
- %src/keyboard-tests.el
- )
-
- # Redirect GnuPG's sockets, in order not to exceed the 108 char limit
- # for socket paths on Linux.
- mkdir -p "${T}"/gpg || die
- local f
- for f in browser extra ssh; do
- printf "%%Assuan%%\nsocket=%s\n" "${T}/gpg/S.${f}" \
- > "test/lisp/gnus/mml-sec-resources/S.gpg-agent.${f}" || die
- done
-
- # See test/README for possible options
- emake \
- EMACS_TEST_VERBOSE=1 \
- EXCLUDE_TESTS="${exclude_tests[*]}" \
- TERM=dumb \
- TEST_BACKTRACE_LINE_LENGTH=nil \
- check
-}
-
-src_install() {
- emake \
- "${EMACS_EMAKE_ARGS[@]}" \
- DESTDIR="${D}" \
- NO_BIN_LINK=t \
- BLESSMAIL_TARGET="" \
- install
-
- mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
- mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
- mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die
-
- # dissuade Portage from removing our dir file #257260
- touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
- docompress -x /usr/share/info/${EMACS_SUFFIX}/dir
-
- # movemail must be setgid mail
- if ! use mailutils; then
- fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
- fi
-
- # avoid collision between slots, see bug #169033 e.g.
- rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
- rm -rf "${ED}"/usr/share/{applications,icons} || die
- rm -rf "${ED}"/usr/share/glib-2.0 || die #911117
- rm -rf "${ED}/usr/$(get_libdir)/systemd" || die
- rm -rf "${ED}"/var || die
-
- # remove unused <version>/site-lisp dir
- rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
-
- # remove COPYING file (except for etc/COPYING used by describe-copying)
- rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
-
- if use gzip-el; then
- # compress .el files when a corresponding .elc exists
- find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
- -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
- pipestatus || die "gzip .el pipeline failed"
- fi
-
- local cdir
- if use source; then
- cdir="/usr/share/emacs/${FULL_VERSION}/src"
- insinto "${cdir}"
- # This is not meant to install all the source -- just the
- # C source you might find via find-function
- doins src/*.{c,h,m}
- elif has installsources ${FEATURES}; then
- cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
- fi
-
- sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
- ;;; ${EMACS_SUFFIX} site-lisp configuration -*-lexical-binding:t-*-
- X
- (when (string-equal emacs-version "${FULL_VERSION}")
- Y (setq find-function-C-source-directory
- Y "${EPREFIX}${cdir}")
- X (let ((path (getenv "INFOPATH"))
- X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
- X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
- X (and path
- X ;; move Emacs Info dir before anything else in /usr/share
- X (let* ((p (cons nil (split-string path ":" t))) (q p))
- X (while (and (cdr q) (not (string-match re (cadr q))))
- X (setq q (cdr q)))
- X (setcdr q (cons dir (delete dir (cdr q))))
- X (setenv "INFOPATH" (mapconcat #'identity (cdr p) ":"))))))
- EOF
- elisp-site-file-install "${T}/${SITEFILE}" || die
-
- dodoc README BUGS CONTRIBUTE
-
- if use gui && use aqua; then
- dodir /Applications/Gentoo
- rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- mv nextstep/Emacs.app \
- "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
- fi
-
- local DOC_CONTENTS="You can set the version to be started by
- /usr/bin/emacs through the Emacs eselect module, which also
- redirects man and info pages. Therefore, several Emacs versions can
- be installed at the same time. \"man emacs.eselect\" for details.
- \\n\\nIf you upgrade from a previous major version of Emacs, then
- it is strongly recommended that you use app-admin/emacs-updater
- to rebuild all byte-compiled elisp files of the installed Emacs
- packages."
- if use gui; then
- DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
- Installing media-fonts/font-adobe-{75,100}dpi on the X server's
- machine would satisfy basic Emacs requirements under X11.
- See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
- for how to enable anti-aliased fonts."
- use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
- \"${EPREFIX}/Applications/Gentoo\". You may want to copy or
- symlink it into /Applications by yourself."
- fi
- if ! use mailutils; then
- DOC_CONTENTS+="\\n\\nThe mailutils USE flag is disabled. If Emacs'
- own e-mail features are going to be used as an e-mail client
- (e.g. Rmail), you are strongly encouraged to enable it. If not,
- Emacs will use its own implementation of movemail; which has
- fewer features and is less secure. For more information see the
- Info node '(emacs)Movemail' in the Emacs manual."
- fi
- tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
- a portable dump file due to being cross-compiled.
- To create this file at run time, execute the following command:
- \\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
- \"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- # verify that the PM hasn't removed our Info directory index #257260
- local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}"
- [[ -f ${infodir}/dir || ! -d ${infodir} ]] || die
-}
-
-pkg_postinst() {
- elisp-site-regen
- readme.gentoo_print_elog
-
- # Force an update of the emacs symlink for the livecd/dvd,
- # because some microemacs packages set it with USE=livecd.
- # Otherwise, create it only when it is not yet set.
- eselect --root="${ROOT}" emacs update $(usev !livecd ifunset)
-}
-
-pkg_postrm() {
- elisp-site-regen
- eselect --root="${ROOT}" emacs update ifunset
-}
diff --git a/app-editors/emacs/emacs-30.2-r6.ebuild b/app-editors/emacs/emacs-30.2-r8.ebuild
index bfda6fb62b81..8071c96d9cfa 100644
--- a/app-editors/emacs/emacs-30.2-r6.ebuild
+++ b/app-editors/emacs/emacs-30.2-r8.ebuild
@@ -32,7 +32,7 @@ else
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
fi
# Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-5.tar.xz"
+ SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-8.tar.xz"
PATCHES=("${WORKDIR}/patch")
SLOT="${PV%%.*}"
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
@@ -134,7 +134,7 @@ RDEPEND=">=app-emacs/emacs-common-1.11[games?,gui?]
media-libs/fontconfig
media-libs/freetype
>=x11-libs/cairo-1.12.18
- x11-libs/gtk+:3
+ x11-libs/gtk+:3[wayland]
harfbuzz? ( media-libs/harfbuzz:0= )
m17n-lib? (
>=dev-libs/libotf-0.9.4
@@ -478,6 +478,11 @@ src_test() {
# emacsclient-test-alternate-editor-allows-arguments
# emacsclient-test-alternate-editor-allows-quotes
%lib-src/emacsclient-tests.el
+
+ # Reason: tests not backported #981157
+ # tramp-test41-special-characters
+ # tramp-test42-utf8
+ %lisp/net/tramp-tests.el
)
use elibc_musl && exclude_tests+=(
# Reason: newlocale(3) lenient locale validation #906012
diff --git a/app-editors/emacs/emacs-31.1-r1.ebuild b/app-editors/emacs/emacs-31.1-r2.ebuild
index 3a50f467fb26..27a8044b4c24 100644
--- a/app-editors/emacs/emacs-31.1-r1.ebuild
+++ b/app-editors/emacs/emacs-31.1-r2.ebuild
@@ -32,7 +32,7 @@ else
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
fi
# Patchset from proj/emacs-patches.git
- SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-2.tar.xz"
+ SRC_URI+=" https://distfiles.gentoo.org/pub/proj/emacs/${P}-patches-3.tar.xz"
PATCHES=("${WORKDIR}/patch")
SLOT="${PV%%.*}"
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
@@ -472,6 +472,10 @@ src_test() {
# Reason: fails with app-crypt/freepg
%lisp/epg-tests.el
+
+ # Reason: tests not backported #981157
+ # tramp-test41-special-characters
+ %lisp/net/tramp-tests.el
)
use threads || exclude_tests+=(
%src/emacs-module-tests.el
diff --git a/app-emulation/faudio/Manifest b/app-emulation/faudio/Manifest
index 21b36df0272d..e779c0acebe2 100644
--- a/app-emulation/faudio/Manifest
+++ b/app-emulation/faudio/Manifest
@@ -1,2 +1,2 @@
-DIST faudio-26.08.tar.gz 1137124 BLAKE2B 3fb2794078dad503e8bec646b2607f100e7bc61630ba3528fd695987f5950c0d52691f54306ee7a1356bf3a7732c4dc5a59ec3e9786e761d0e01ef2a677ed1cd SHA512 07d262b2cb000b8d1d0419e38c3d6692c9eed4d01f0324b102a97f55b4830d330359b0d60456601aab6e22e80ebd4cd1badc71654512aff90d7f1f0a1ab8816d
DIST faudio-26.09.tar.gz 1137246 BLAKE2B 53436c76c8c9fb82aed2d72ed36e597044da734c6fcf016e690ff4f4c62e95f4c744959f9bbe5f2234672662aec2a3b661440eb0719b97800ff99d142e78db27 SHA512 94a123767375a460e1cd87c582ec878adafa2cb976d9fb73f445e022ac9baa00bb2333c2f9c647911f0a6a0dcbb821cbe3e9c411f2bd77585121f1205a01fcc4
+DIST faudio-26.10.tar.gz 1137844 BLAKE2B 8a904dcaa579e61ed16f6215a8b7c40066a897b27661b2244baa4bec24a96e9ee851e5e0d57f515bc794a0d144dd541dd718a0ac797dc3f770a9a537bd105dd7 SHA512 3d1001caa1394b194e64a23ecbb859ab8a6d7f446d107b0554241df966a4123994dc6eccb78d21b89d4890aef5709db78534f5a6d775da44950ff6ebf1f6a669
diff --git a/app-emulation/faudio/faudio-26.09.ebuild b/app-emulation/faudio/faudio-26.09.ebuild
index 70f5ae591a4b..b29949c0a633 100644
--- a/app-emulation/faudio/faudio-26.09.ebuild
+++ b/app-emulation/faudio/faudio-26.09.ebuild
@@ -12,7 +12,7 @@ S="${WORKDIR}/FAudio-${PV}"
LICENSE="ZLIB"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="debug dumpvoices sdl3 test"
RESTRICT="!test? ( test )"
diff --git a/app-emulation/faudio/faudio-26.08.ebuild b/app-emulation/faudio/faudio-26.10.ebuild
index b29949c0a633..70f5ae591a4b 100644
--- a/app-emulation/faudio/faudio-26.08.ebuild
+++ b/app-emulation/faudio/faudio-26.10.ebuild
@@ -12,7 +12,7 @@ S="${WORKDIR}/FAudio-${PV}"
LICENSE="ZLIB"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="~amd64 ~x86"
IUSE="debug dumpvoices sdl3 test"
RESTRICT="!test? ( test )"
diff --git a/app-misc/tmux/Manifest b/app-misc/tmux/Manifest
index aca8f5e4f299..2434e738a88e 100644
--- a/app-misc/tmux/Manifest
+++ b/app-misc/tmux/Manifest
@@ -2,3 +2,4 @@ DIST tmux-3.4.tar.gz 707213 BLAKE2B 2b1990b95d7439702e9287402d9828d4ecab573202c0
DIST tmux-3.5a.tar.gz 715619 BLAKE2B 2314bc127f805071c9f2fe28be549b0948042a153aa68d997efc1dc0d6eba198b04aa16932d0a84b03250567100fb81c464919fcc8ba98660d3d0750ff5fe879 SHA512 2383e99aec2dcdb1d899793d5ecab40a68b921194f84770d3f4d19712bfc85590657a99d2a9a7bec36d4ba5ab39fa713f13937b0acad3b61cd9b2302dba61d43
DIST tmux-3.6a.tar.gz 750698 BLAKE2B 4b5f6b4dbdbb90af64204f300604f2d4df2c1746770d722057577b6b2d1c95014de1c8ada3f984295380ca6d6afa05292a8fb590b12b37c1699203fe4d7c469c SHA512 bdc1a1dc7505b98966c5ed1303decc0cad883aae73ed9bc6d628ae060a7e9c4828a6ad64335de2a2f9b610118ce161ba456185676bb289c6f063091afa0a5b8b
DIST tmux-3.7c.tar.gz 789431 BLAKE2B 854a27ad7fd2326057c516e60a88219548bbbf7001c01d1b64b83289b22c923a8b4c94f48971381d88cd8a6c9a15084c253742dfb155dd6e32aee97b78f9f68c SHA512 86c4c136a844fe0ac167e6f360c555a138253867fd234ba7447342fe8f2cb660df44e51e99ca9eb9ec773851f2c04e4a64de81a43a3d1bcd42ba99c704843d79
+DIST tmux-3.8.tar.gz 895926 BLAKE2B 5a6ff93e78dd4380fa0769ac76de25365b326dce3403a71eb74f218c124f17b8d27504a7d89985db6fb4d1d0321815657ffc40212a58257363b315515581a82f SHA512 8836978b4676d3d03d1eeedd7b6a55241eec400d44ab6b5a743fe053c52749a9f1d2cf32ef9b444e8ed8216c5577e2aecaa9663d2e693c4b95f6af638f21a872
diff --git a/app-misc/tmux/tmux-3.8.ebuild b/app-misc/tmux/tmux-3.8.ebuild
new file mode 100644
index 000000000000..de94d5e59606
--- /dev/null
+++ b/app-misc/tmux/tmux-3.8.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools eapi9-ver flag-o-matic systemd
+
+DESCRIPTION="Terminal multiplexer"
+HOMEPAGE="https://tmux.github.io/"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/tmux/tmux.git"
+else
+ SRC_URI="https://github.com/tmux/tmux/releases/download/${PV}/${P/_/-}.tar.gz"
+ if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+ fi
+ S="${WORKDIR}/${P/_/-}"
+fi
+
+LICENSE="ISC"
+SLOT="0"
+IUSE="debug jemalloc selinux sixel systemd utempter vim-syntax"
+
+DEPEND="
+ dev-libs/libevent:=
+ sys-libs/ncurses:=
+ jemalloc? ( dev-libs/jemalloc:= )
+ systemd? ( sys-apps/systemd:= )
+ utempter? ( sys-libs/libutempter )
+ kernel_Darwin? ( dev-libs/libutf8proc:= )
+"
+
+BDEPEND="
+ virtual/pkgconfig
+ app-alternatives/yacc
+"
+
+RDEPEND="
+ ${DEPEND}
+ selinux? ( sec-policy/selinux-screen )
+ vim-syntax? ( app-vim/vim-tmux )
+"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # BSD only functions
+ strtonum recallocarray
+ # missing on musl, tmux has fallback impl which it uses
+ b64_ntop
+)
+
+DOCS=( CHANGES README )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --sysconfdir="${EPREFIX}"/etc
+ $(use_enable debug)
+ $(use_enable jemalloc)
+ $(use_enable sixel)
+ $(use_enable systemd)
+ $(use_enable utempter)
+
+ # For now, we only expose this for macOS, because
+ # upstream strongly encourage it. I'm not sure it's
+ # needed on Linux right now.
+ $(use_enable kernel_Darwin utf8proc)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ einstalldocs
+
+ dodoc example_tmux.conf
+ docompress -x /usr/share/doc/${PF}/example_tmux.conf
+
+ if use systemd; then
+ systemd_newuserunit "${FILESDIR}"/tmux.service tmux@.service
+ systemd_newuserunit "${FILESDIR}"/tmux.socket tmux@.socket
+ fi
+}
+
+pkg_postinst() {
+ # https://github.com/tmux/tmux/issues/4711
+ if ver_replacing -lt 3.6a ; then
+ ewarn "Please restart all running tmux sessions (client+server)."
+ ewarn "3.6a has an incompatible protocol change, so it is especially important:"
+ ewarn " https://github.com/tmux/tmux/issues/4699#issue-3666479306"
+ elif ver_replacing -lt ${PV} ; then
+ # https://github.com/tmux/tmux/issues/4699#issue-3666479306
+ # > Note that it is very important to restart tmux entirely after upgrading.
+ # > This is particularly important with this release because one of the libraries
+ # > that tmux uses changed its protocol.
+ ewarn "Please restart all running tmux clients+servers after upgrading tmux."
+ fi
+}
diff --git a/app-office/dia/dia-0.98_pre20250913.ebuild b/app-office/dia/dia-0.98_pre20250913.ebuild
index 6b777f6eb1a3..238b92ccfc00 100644
--- a/app-office/dia/dia-0.98_pre20250913.ebuild
+++ b/app-office/dia/dia-0.98_pre20250913.ebuild
@@ -56,6 +56,8 @@ PATCHES=(
"${FILESDIR}"/${PN}-0.98-fix_poppler_2510.patch #965768
"${FILESDIR}"/${PN}-0.98-fix_poppler_2601.patch
"${FILESDIR}"/${PN}-0.98-fix_poppler_2602.patch #970103
+ "${FILESDIR}"/${PN}-0.98-fix_poppler_2606.patch #983078
+ "${FILESDIR}"/${PN}-0.98-fix_crash_pdf.patch #983078
)
pkg_setup() {
diff --git a/app-office/dia/files/dia-0.98-fix_crash_pdf.patch b/app-office/dia/files/dia-0.98-fix_crash_pdf.patch
new file mode 100644
index 000000000000..dcf7a90b9bb4
--- /dev/null
+++ b/app-office/dia/files/dia-0.98-fix_crash_pdf.patch
@@ -0,0 +1,93 @@
+PR pending https://gitlab.gnome.org/GNOME/dia/-/merge_requests/149
+see also https://bugs.gentoo.org/983078
+Fix crash when importing pdf
+From 72fad360a06c46214b81081ec7778c8e3a0313c7 Mon Sep 17 00:00:00 2001
+From: Ted Rodgers <ted.d.rodgers@gmail.com>
+Date: Tue, 29 Sep 2026 09:51:23 -0400
+Subject: [PATCH] apply this first:
+ https://gitlab.gnome.org/GNOME/dia/-/merge_requests/146
+
+pdf:
+- Modern Poppler matrix handling and coordinate scaling
+- Update updateCTM to use const auto& to match modern Poppler APIs
+- Fix undefined behavior in restoreState by checking for an empty matrix stack before poppin
+- Remove redundant scaling factors from subpath points and text positioning
+- Correct coordinate scaling in doPath for starting points and Bezier curves
+--- a/plug-ins/pdf/pdf-import.cpp
++++ b/plug-ins/pdf/pdf-import.cpp
+@@ -144,17 +144,13 @@ public :
+ double m21, double m22,
+ double m31, double m32)
+ {
+- DiaMatrix mat;
+-
+- mat.xx = m11;
+- mat.yx = m12;
+- mat.xy = m21;
+- mat.yy = m22;
+- mat.x0 = m31 * scale;
+- mat.y0 = m32 * scale;
+-
+- //this->matrix = mat;
+- dia_matrix_multiply (&this->matrix, &mat, &this->matrix);
++ const auto& ctm = state->getCTM();
++ this->matrix.xx = ctm[0];
++ this->matrix.yx = ctm[1];
++ this->matrix.xy = ctm[2];
++ this->matrix.yy = ctm[3];
++ this->matrix.x0 = ctm[4] * scale;
++ this->matrix.y0 = ctm[5] * scale;
+
+ updateLineDash(state);
+ updateLineJoin(state);
+@@ -437,9 +433,12 @@ public :
+ //! Change back to the old state
+ void restoreState(GfxState *state)
+ {
+- // just restore the matrix for now
+- this->matrices.pop_back();
+- this->matrix = this->matrices.back();
++ if (!this->matrices.empty()) {
++ this->matrix = this->matrices.back();
++ this->matrices.pop_back();
++ } else {
++ g_warning("PDF import: restoreState called with an empty matrix stack");
++ }
+ // should contain all of our update*() methods?
+ updateLineWidth(state);
+ updateLineDash(state);
+@@ -467,6 +466,7 @@ public :
+ startPage (int pageNum, GfxState *state G_GNUC_UNUSED)
+ {
+ this->pageNum = pageNum;
++ this->matrices.clear();
+ }
+
+
+@@ -474,7 +474,8 @@ public :
+ void endPage()
+ {
+ DiaObject *group;
+- g_return_if_fail (objects != NULL);
++ if (this->objects == NULL)
++ return;
+
+ /* approx 4:3 page distribution */
+ int m = (int)sqrt (num_pages / 0.75);
+@@ -839,13 +840,9 @@ DiaOutputDev::drawString(GfxState *state, GooString *s)
+ text_color.alpha = 0.0;
+
+ // not sure how state->getLineX() is related, it's 0 in my test cases
+- double tx = state->getCurX();
+- double ty = state->getCurY();
+- int rot = state->getRotate();
+- if (rot == 0)
+- obj = create_standard_text (tx * scale, page_height - ty * scale);
+- else /* XXX: at least for rot==90 */
+- obj = create_standard_text (ty * scale, tx * scale);
++ Point p = { state->getCurX(), state->getCurY() };
++ transform_point(&p, &this->matrix);
++ obj = create_standard_text (p.x, p.y);
+ //not applyStyle (obj, TEXT);
+ GPtrArray *plist = g_ptr_array_new ();
+ // the "text" property is special, it must be initialized with text
diff --git a/app-office/dia/files/dia-0.98-fix_poppler_2606.patch b/app-office/dia/files/dia-0.98-fix_poppler_2606.patch
new file mode 100644
index 000000000000..674a7d7b2a74
--- /dev/null
+++ b/app-office/dia/files/dia-0.98-fix_poppler_2606.patch
@@ -0,0 +1,27 @@
+PR pending https://gitlab.gnome.org/GNOME/dia/-/merge_requests/146.patch
+see https://bugs.gentoo.org/983078
+fix compile with >=poppler-26.06
+From 2373861a858fb6ee7d50870ae66a59f05c6cd4bd Mon Sep 17 00:00:00 2001
+From: Nadzeya Hutsko <nadzeya@ubuntu.com>
+Date: Wed, 22 Jul 2026 20:46:52 +0200
+Subject: [PATCH] Fix build with Poppler >= 26.06
+
+poppler 26.06 changed the Page box accessors to return a const reference
+instead of a pointer. Take the address of the result, guarded by a
+version check so older poppler still builds
+--- a/plug-ins/pdf/pdf-import.cpp
++++ b/plug-ins/pdf/pdf-import.cpp
+@@ -93,8 +93,13 @@ public :
+ (Annot *annot, void *user_data) G_GNUC_UNUSED,
+ void *annotDisplayDecideCbkData G_GNUC_UNUSED)
+ {
++#if POPPLER_VERSION_MAJOR > 26 || (POPPLER_VERSION_MAJOR == 26 && POPPLER_VERSION_MINOR >= 6)
++ const PDFRectangle *mediaBox = &page->getMediaBox();
++ const PDFRectangle *clipBox = &page->getCropBox ();
++#else
+ const PDFRectangle *mediaBox = page->getMediaBox();
+ const PDFRectangle *clipBox = page->getCropBox ();
++#endif
+
+ if (page->isOk()) {
+ real w1 = (clipBox->x2 - clipBox->x1);
diff --git a/app-portage/portpeek/portpeek-3.2.9.ebuild b/app-portage/portpeek/portpeek-3.2.9.ebuild
index cc396105648d..d0a55cf01a31 100644
--- a/app-portage/portpeek/portpeek-3.2.9.ebuild
+++ b/app-portage/portpeek/portpeek-3.2.9.ebuild
@@ -2,6 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
+
PYTHON_COMPAT=( python3_{13..14} )
inherit python-r1
diff --git a/app-shells/bash/bash-5.3_p20.ebuild b/app-shells/bash/bash-5.3_p20.ebuild
index c593e7fa276c..9b4f607f6424 100644
--- a/app-shells/bash/bash-5.3_p20.ebuild
+++ b/app-shells/bash/bash-5.3_p20.ebuild
@@ -75,7 +75,7 @@ fi
LICENSE="GPL-3+"
SLOT="0"
if (( PLEVEL >= 0 )); then
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~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"
fi
IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline"
diff --git a/app-text/bdf2psf/bdf2psf-1.230.ebuild b/app-text/bdf2psf/bdf2psf-1.230.ebuild
index 990653a0a14b..2b5ad5173692 100644
--- a/app-text/bdf2psf/bdf2psf-1.230.ebuild
+++ b/app-text/bdf2psf/bdf2psf-1.230.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
@@ -10,7 +10,7 @@ S="${WORKDIR}/console-setup-${PV}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="dev-lang/perl"
diff --git a/app-text/doxygen/Manifest b/app-text/doxygen/Manifest
index 626692da9acb..7f53ce39589a 100644
--- a/app-text/doxygen/Manifest
+++ b/app-text/doxygen/Manifest
@@ -1,4 +1,3 @@
-DIST doxygen-1.13.2.src.tar.gz 8512178 BLAKE2B d1a5051b49924580cf2e4f58df12da6ff6f9f02490957b1a1562a7587763ab32bac11b0c7d3456d6fee48e7284ee8a265e90d1862a40af2c6deb9d1ebdef72e9 SHA512 7b6b3285706e10c0b27230503b83cc669aec83ebc3ef9cc1087d5e36118fd726a5368d567dd553ba01acf4d739cdbb41c5e66af4541fc8e51effbbdaa241c812
-DIST doxygen-1.14.0.src.tar.gz 8681251 BLAKE2B 7de83955033348bea7ecb8d4b2b106192496ffcd062b5fff7f7cfe1f8d25b372d661608f92a5fdfc14489b7343fd19819dd1c86de0d936136714a4f1edd89595 SHA512 b042f7f731cd17bea55f7393dd90433f49fa296a61054950c2e1457ff1d57e218706cbc4f5248f42c2242bf1acccd91e88cf545ca394a31a4d2d8b7f5954baa9
-DIST doxygen-1.15.0.src.tar.gz 9203196 BLAKE2B 461d65ad4a18488cd8c89fc1268bb57e31964cac431acfca8c5ad3947d70f47af441579cad6b54945b337c57fb8ad0e219f804a1d8cfdda3b2595fb9803e7605 SHA512 e53cc8da6cf1fe3ca3b3637647ed6afa28365351eac81d010f6691d939df5e449b3d898a6f695dd850d12659dfd7018fc864071b30fbca5dd196dc094ec4371e
DIST doxygen-1.16.1.src.tar.gz 8962809 BLAKE2B 534064d1207d5e44430fa1bde14f0b4dd0afd56e7bafd7b3866d2037dd87063099fe32c2fee652a6508298fa8bba610c0198601bca2a42743d34ad1db83051cc SHA512 16c348e2943319e38fe2c0c3539c9b481c613a094f59c4fe16251bf7c62fa77cd979cff97507296721dd7f6cd9c1bd2bda13ab1740a13cef8fda31601878d09d
+DIST doxygen-1.17.0.src.tar.gz 9350308 BLAKE2B 93c09ea2c0154c7da1887ef76f51c85f53335e57fa4bb564fca3887085db55f816ef87fbfecf8a93ddad355cf9e2b9c83492be57af4f68cea9dab00b914ca11e SHA512 dacaddc74919941f82ec7c80bb7a49267cad34f0dcc98f41bb5563a6537530b5669145e142855083cfac335b43b3e3063701092366440a57ab5c762310996b20
+DIST doxygen-1.18.0.src.tar.gz 9905783 BLAKE2B 1342f1912b2a83e08fb37c1020e4fd2c15fcae12669f498d4db2edae569e05417a5842f5401fa1523fb6698c38d4bd5a78dff09dacef175593909e9d34d8f310 SHA512 c5f009ed91394870940aeb21d1094f7e610324f8e0f07b232fb9399040b083fc7a0be8c90dee484ccc3d38bf00f204a01484e0e2f5a63b62d2fb97337840b746
diff --git a/app-text/doxygen/doxygen-1.13.2.ebuild b/app-text/doxygen/doxygen-1.13.2.ebuild
deleted file mode 100644
index 7985dd75e41c..000000000000
--- a/app-text/doxygen/doxygen-1.13.2.ebuild
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 18 19 20 )
-LLVM_OPTIONAL=1
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="xml(+)"
-
-inherit cmake flag-o-matic llvm-r2 python-any-r1
-
-DESCRIPTION="Documentation system for most programming languages"
-HOMEPAGE="https://www.doxygen.nl/"
-
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/doxygen/doxygen.git"
-else
- SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz"
- SRC_URI+=" https://downloads.sourceforge.net/doxygen/rel-${PV}/${P}.src.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
-fi
-
-# GPL-2 also for bundled libmscgen
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="clang debug doc dot doxysearch gui test"
-# - We need TeX for tests, bug #765472
-# - We keep the odd construct of noop USE=test because of
-# the special relationship b/t RESTRICT & USE for tests.
-# Also, it's a hint which avoids tests being silently skipped during arch testing.
-REQUIRED_USE="clang? ( ${LLVM_REQUIRED_USE} ) test? ( doc )"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- app-alternatives/yacc
- app-alternatives/lex
- ${PYTHON_DEPS}
-"
-RDEPEND="
- app-text/ghostscript-gpl
- dev-db/sqlite:3
- dev-lang/perl
- dev-libs/libfmt:=
- dev-libs/spdlog:=
- virtual/libiconv
- clang? (
- $(llvm_gen_dep '
- llvm-core/clang:${LLVM_SLOT}=
- llvm-core/llvm:${LLVM_SLOT}=
- ')
- )
- dot? (
- media-gfx/graphviz[freetype(+)]
- )
- doc? (
- dev-texlive/texlive-bibtexextra
- dev-texlive/texlive-fontsextra
- dev-texlive/texlive-fontutils
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- dev-texlive/texlive-plaingeneric
- )
- doxysearch? ( dev-libs/xapian:= )
- gui? ( dev-qt/qtbase:6[gui,widgets,xml] )
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch"
- "${FILESDIR}/${PN}-1.9.8-suppress-unused-option-libcxx.patch"
-)
-
-DOCS=( LANGUAGE.HOWTO README.md )
-
-pkg_setup() {
- use clang && llvm-r2_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- cmake_src_prepare
-
- # Call dot with -Teps instead of -Tps for EPS generation - bug #282150
- sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die
-
- # fix pdf doc
- sed -i.orig -e "s:g_kowal:g kowal:" \
- doc/maintainers.txt || die
-
- if is-flagq "-O3" ; then
- # TODO: Investigate this and report a bug accordingly...
- ewarn "Compiling with -O3 is known to produce incorrectly"
- ewarn "optimized code which breaks doxygen. Using -O2 instead."
- replace-flags "-O3" "-O2"
- fi
-}
-
-src_configure() {
- # Very slow to compile, bug #920092
- filter-flags -fipa-pta
- # -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287
- filter-lto
-
- local mycmakeargs=(
- -Duse_libclang=$(usex clang)
- # Let the user choose instead, see also bug #822615
- -Duse_libc++=OFF
- -Dbuild_doc=$(usex doc)
- -Dbuild_search=$(usex doxysearch)
- -Dbuild_wizard=$(usex gui)
- -Dforce_qt=Qt6
- -Duse_sys_spdlog=ON
- -Duse_sys_sqlite3=ON
- -DBUILD_SHARED_LIBS=OFF
- -DGIT_EXECUTABLE="false"
-
- # Noisy and irrelevant downstream
- -Wno-dev
- )
-
- use doc && mycmakeargs+=(
- -DDOC_INSTALL_DIR="share/doc/${P}"
- )
-
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
-
- if use doc; then
- export VARTEXFONTS="${T}/fonts" # bug #564944
-
- if ! use dot; then
- sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \
- {testing/Doxyfile,doc/Doxyfile} \
- || die "disabling dot failed"
- fi
-
- # -j1 for bug #770070
- cmake_src_compile docs -j1
- fi
-}
-
-src_install() {
- cmake_src_install
-
- # manpages are only automatically installed when docs are
- # https://github.com/doxygen/doxygen/pull/10647
- doman doc/doxygen.1
- use gui && doman doc/doxywizard.1
- use doxysearch && {
- doman doc/doxyindexer.1
- doman doc/doxysearch.1
- }
-}
diff --git a/app-text/doxygen/doxygen-1.14.0.ebuild b/app-text/doxygen/doxygen-1.14.0.ebuild
deleted file mode 100644
index d688431472ec..000000000000
--- a/app-text/doxygen/doxygen-1.14.0.ebuild
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 18 19 20 )
-LLVM_OPTIONAL=1
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="xml(+)"
-
-inherit cmake flag-o-matic llvm-r2 python-any-r1
-
-DESCRIPTION="Documentation system for most programming languages"
-HOMEPAGE="https://www.doxygen.nl/"
-
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/doxygen/doxygen.git"
-else
- SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz"
- SRC_URI+=" https://downloads.sourceforge.net/doxygen/rel-${PV}/${P}.src.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
-fi
-
-# GPL-2 also for bundled libmscgen
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="clang debug doc dot doxysearch gui test"
-# - We need TeX for tests, bug #765472
-# - We keep the odd construct of noop USE=test because of
-# the special relationship b/t RESTRICT & USE for tests.
-# Also, it's a hint which avoids tests being silently skipped during arch testing.
-REQUIRED_USE="clang? ( ${LLVM_REQUIRED_USE} ) test? ( doc )"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- app-alternatives/yacc
- app-alternatives/lex
- ${PYTHON_DEPS}
-"
-RDEPEND="
- app-text/ghostscript-gpl
- dev-db/sqlite:3
- dev-lang/perl
- dev-libs/libfmt:=
- dev-libs/spdlog:=
- virtual/libiconv
- clang? (
- $(llvm_gen_dep '
- llvm-core/clang:${LLVM_SLOT}=
- llvm-core/llvm:${LLVM_SLOT}=
- ')
- )
- dot? (
- media-gfx/graphviz[freetype(+)]
- )
- doc? (
- dev-texlive/texlive-bibtexextra
- dev-texlive/texlive-fontsextra
- dev-texlive/texlive-fontutils
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- dev-texlive/texlive-plaingeneric
- )
- doxysearch? ( dev-libs/xapian:= )
- gui? ( dev-qt/qtbase:6[gui,widgets,xml] )
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch"
- "${FILESDIR}/${PN}-1.14.0-suppress-unused-option-libcxx.patch"
-)
-
-DOCS=( LANGUAGE.HOWTO README.md )
-
-pkg_setup() {
- use clang && llvm-r2_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- cmake_src_prepare
-
- # Call dot with -Teps instead of -Tps for EPS generation - bug #282150
- sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die
-
- # fix pdf doc
- sed -i.orig -e "s:g_kowal:g kowal:" \
- doc/maintainers.txt || die
-
- if is-flagq "-O3" ; then
- # TODO: Investigate this and report a bug accordingly...
- ewarn "Compiling with -O3 is known to produce incorrectly"
- ewarn "optimized code which breaks doxygen. Using -O2 instead."
- replace-flags "-O3" "-O2"
- fi
-}
-
-src_configure() {
- # Very slow to compile, bug #920092
- filter-flags -fipa-pta
- # -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287
- filter-lto
-
- local mycmakeargs=(
- -Duse_libclang=$(usex clang)
- # Let the user choose instead, see also bug #822615
- -Duse_libc++=OFF
- -Dbuild_doc=$(usex doc)
- -Dbuild_search=$(usex doxysearch)
- -Dbuild_wizard=$(usex gui)
- -Dforce_qt=Qt6
- -Duse_sys_fmt=ON
- -Duse_sys_spdlog=ON
- -Duse_sys_sqlite3=ON
- -DBUILD_SHARED_LIBS=OFF
- -DGIT_EXECUTABLE="false"
-
- # Noisy and irrelevant downstream
- -Wno-dev
- )
-
- use doc && mycmakeargs+=(
- -DDOC_INSTALL_DIR="share/doc/${P}"
- )
-
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
-
- if use doc; then
- export VARTEXFONTS="${T}/fonts" # bug #564944
-
- if ! use dot; then
- sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \
- {testing/Doxyfile,doc/Doxyfile} \
- || die "disabling dot failed"
- fi
-
- # -j1 for bug #770070
- cmake_src_compile docs -j1
- fi
-}
diff --git a/app-text/doxygen/doxygen-1.16.1.ebuild b/app-text/doxygen/doxygen-1.16.1.ebuild
index 320e04538ac6..0ea440cc6c3c 100644
--- a/app-text/doxygen/doxygen-1.16.1.ebuild
+++ b/app-text/doxygen/doxygen-1.16.1.ebuild
@@ -19,7 +19,7 @@ if [[ ${PV} == *9999* ]]; then
else
SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz"
SRC_URI+=" https://downloads.sourceforge.net/doxygen/rel-${PV}/${P}.src.tar.gz"
- 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"
fi
# GPL-2 also for bundled libmscgen
diff --git a/app-text/doxygen/doxygen-1.15.0.ebuild b/app-text/doxygen/doxygen-1.17.0-r1.ebuild
index 89ca83e3c5e1..adcbf47cb8bb 100644
--- a/app-text/doxygen/doxygen-1.15.0.ebuild
+++ b/app-text/doxygen/doxygen-1.17.0-r1.ebuild
@@ -3,12 +3,12 @@
EAPI=8
-LLVM_COMPAT=( 18 19 20 21 )
+LLVM_COMPAT=( 18 19 20 21 22 )
LLVM_OPTIONAL=1
PYTHON_COMPAT=( python3_{13..14} )
PYTHON_REQ_USE="xml(+)"
-inherit cmake flag-o-matic llvm-r2 python-any-r1
+inherit cmake flag-o-matic llvm-r2 optfeature python-any-r1
DESCRIPTION="Documentation system for most programming languages"
HOMEPAGE="https://www.doxygen.nl/"
@@ -19,7 +19,7 @@ if [[ ${PV} == *9999* ]]; then
else
SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz"
SRC_URI+=" https://downloads.sourceforge.net/doxygen/rel-${PV}/${P}.src.tar.gz"
- 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"
fi
# GPL-2 also for bundled libmscgen
@@ -39,7 +39,6 @@ BDEPEND="
${PYTHON_DEPS}
"
RDEPEND="
- app-text/ghostscript-gpl
dev-db/sqlite:3
dev-lang/perl
dev-libs/libfmt:=
@@ -52,24 +51,31 @@ RDEPEND="
')
)
dot? (
- media-gfx/graphviz[freetype(+)]
+ media-gfx/graphviz[cairo,freetype(+)]
)
doc? (
+ app-text/ghostscript-gpl
dev-texlive/texlive-bibtexextra
dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontsrecommended
dev-texlive/texlive-fontutils
dev-texlive/texlive-latex
dev-texlive/texlive-latexextra
dev-texlive/texlive-plaingeneric
+ media-gfx/graphviz[cairo,freetype(+)]
)
doxysearch? ( dev-libs/xapian:= )
- gui? ( dev-qt/qtbase:6[gui,widgets,xml] )
+ gui? (
+ dev-qt/qtbase:6[gui,widgets,xml]
+ dev-qt/qtsvg:6
+ )
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${PN}-1.15.0-link_with_pthread.patch"
- "${FILESDIR}/${PN}-1.14.0-suppress-unused-option-libcxx.patch"
+ "${FILESDIR}/${PN}-1.16.1-suppress-unused-option-libcxx.patch"
+ "${FILESDIR}/${PN}-1.17.0-test-tagfile-without-git.patch"
)
DOCS=( LANGUAGE.HOWTO README.md )
@@ -82,9 +88,6 @@ pkg_setup() {
src_prepare() {
cmake_src_prepare
- # Call dot with -Teps instead of -Tps for EPS generation - bug #282150
- sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die
-
# fix pdf doc
sed -i.orig -e "s:g_kowal:g kowal:" \
doc/maintainers.txt || die
@@ -116,13 +119,15 @@ src_configure() {
-Duse_sys_sqlite3=ON
-DBUILD_SHARED_LIBS=OFF
-DGIT_EXECUTABLE="false"
+ # The default of 256 KiB is too small for large projects, bug #912261
+ -Denlarge_lex_buffers=1048576
# Noisy and irrelevant downstream
-Wno-dev
)
use doc && mycmakeargs+=(
- -DDOC_INSTALL_DIR="share/doc/${P}"
+ -DDOC_INSTALL_DIR="share/doc/${PF}"
)
cmake_src_configure
@@ -138,3 +143,17 @@ src_compile() {
cmake_src_compile docs -j1
fi
}
+
+src_install() {
+ cmake_src_install
+
+ # The HTML manual contains SVG images, bug #913584
+ use doc && docompress -x /usr/share/doc/${PF}/html
+}
+
+pkg_postinst() {
+ optfeature "rendering formulas as images in HTML output" \
+ "app-text/ghostscript-gpl dev-texlive/texlive-latex"
+ optfeature "converting EPS images and diagrams for PDF LaTeX output" \
+ dev-texlive/texlive-fontutils
+}
diff --git a/app-text/doxygen/doxygen-1.15.0-r2.ebuild b/app-text/doxygen/doxygen-1.18.0-r1.ebuild
index 967e4ba47bce..771936b2b3cf 100644
--- a/app-text/doxygen/doxygen-1.15.0-r2.ebuild
+++ b/app-text/doxygen/doxygen-1.18.0-r1.ebuild
@@ -3,12 +3,12 @@
EAPI=8
-LLVM_COMPAT=( 18 19 20 21 )
+LLVM_COMPAT=( 18 19 20 21 22 )
LLVM_OPTIONAL=1
PYTHON_COMPAT=( python3_{13..14} )
PYTHON_REQ_USE="xml(+)"
-inherit cmake flag-o-matic llvm-r2 python-any-r1
+inherit cmake flag-o-matic llvm-r2 optfeature python-any-r1
DESCRIPTION="Documentation system for most programming languages"
HOMEPAGE="https://www.doxygen.nl/"
@@ -19,7 +19,7 @@ if [[ ${PV} == *9999* ]]; then
else
SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz"
SRC_URI+=" https://downloads.sourceforge.net/doxygen/rel-${PV}/${P}.src.tar.gz"
- 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"
fi
# GPL-2 also for bundled libmscgen
@@ -37,9 +37,9 @@ BDEPEND="
app-alternatives/yacc
app-alternatives/lex
${PYTHON_DEPS}
+ gui? ( dev-qt/qttools:6[linguist] )
"
RDEPEND="
- app-text/ghostscript-gpl
dev-db/sqlite:3
dev-lang/perl
dev-libs/libfmt:=
@@ -52,15 +52,18 @@ RDEPEND="
')
)
dot? (
- media-gfx/graphviz[freetype(+)]
+ media-gfx/graphviz[cairo,freetype(+)]
)
doc? (
+ app-text/ghostscript-gpl
dev-texlive/texlive-bibtexextra
dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontsrecommended
dev-texlive/texlive-fontutils
dev-texlive/texlive-latex
dev-texlive/texlive-latexextra
dev-texlive/texlive-plaingeneric
+ media-gfx/graphviz[cairo,freetype(+)]
)
doxysearch? ( dev-libs/xapian:= )
gui? (
@@ -72,8 +75,7 @@ DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${PN}-1.15.0-link_with_pthread.patch"
- "${FILESDIR}/${PN}-1.14.0-suppress-unused-option-libcxx.patch"
- "${FILESDIR}/${PN}-1.15.0-duplicate-type-names.patch"
+ "${FILESDIR}/${PN}-1.16.1-suppress-unused-option-libcxx.patch"
)
DOCS=( LANGUAGE.HOWTO README.md )
@@ -86,9 +88,6 @@ pkg_setup() {
src_prepare() {
cmake_src_prepare
- # Call dot with -Teps instead of -Tps for EPS generation - bug #282150
- sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die
-
# fix pdf doc
sed -i.orig -e "s:g_kowal:g kowal:" \
doc/maintainers.txt || die
@@ -120,13 +119,15 @@ src_configure() {
-Duse_sys_sqlite3=ON
-DBUILD_SHARED_LIBS=OFF
-DGIT_EXECUTABLE="false"
+ # The default of 256 KiB is too small for large projects, bug #912261
+ -Denlarge_lex_buffers=1048576
# Noisy and irrelevant downstream
-Wno-dev
)
use doc && mycmakeargs+=(
- -DDOC_INSTALL_DIR="share/doc/${P}"
+ -DDOC_INSTALL_DIR="share/doc/${PF}"
)
cmake_src_configure
@@ -142,3 +143,17 @@ src_compile() {
cmake_src_compile docs -j1
fi
}
+
+src_install() {
+ cmake_src_install
+
+ # The HTML manual contains SVG images, bug #913584
+ use doc && docompress -x /usr/share/doc/${PF}/html
+}
+
+pkg_postinst() {
+ optfeature "rendering formulas as images in HTML output" \
+ "app-text/ghostscript-gpl dev-texlive/texlive-latex"
+ optfeature "converting EPS images and diagrams for PDF LaTeX output" \
+ dev-texlive/texlive-fontutils
+}
diff --git a/app-text/doxygen/doxygen-9999.ebuild b/app-text/doxygen/doxygen-9999.ebuild
index 606c587322dc..980ef51be07d 100644
--- a/app-text/doxygen/doxygen-9999.ebuild
+++ b/app-text/doxygen/doxygen-9999.ebuild
@@ -69,7 +69,7 @@ DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${PN}-1.15.0-link_with_pthread.patch"
- "${FILESDIR}/${PN}-1.14.0-suppress-unused-option-libcxx.patch"
+ "${FILESDIR}/${PN}-1.16.1-suppress-unused-option-libcxx.patch"
)
DOCS=( LANGUAGE.HOWTO README.md )
diff --git a/app-text/doxygen/files/doxygen-1.14.0-suppress-unused-option-libcxx.patch b/app-text/doxygen/files/doxygen-1.14.0-suppress-unused-option-libcxx.patch
deleted file mode 100644
index 676609026cb5..000000000000
--- a/app-text/doxygen/files/doxygen-1.14.0-suppress-unused-option-libcxx.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Always expose the use_libc++ option. It's only useful for Clang but cmake.class
-tries to find when we've used CMake options which are unused/unknown and this
-triggers it for GCC builds if we set -Duse_libc++=OFF.
-
-So, always expose the option so we can turn it off without a warning.
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -22,7 +22,7 @@ option(build_parse "Parses source code and dumps the dependencies between th
- option(build_search "Build external search tools (doxysearch and doxyindexer)" OFF)
- option(build_doc "Build user manual (HTML and PDF)" OFF)
- option(build_doc_chm "Build user manual (CHM)" OFF)
--if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
-+if (TRUE)
- option(use_libc++ "Use libc++ as C++ standard library." ON)
- endif()
- option(use_libclang "Add support for libclang parsing." OFF)
diff --git a/app-text/doxygen/files/doxygen-1.15.0-duplicate-type-names.patch b/app-text/doxygen/files/doxygen-1.15.0-duplicate-type-names.patch
deleted file mode 100644
index 99331064a258..000000000000
--- a/app-text/doxygen/files/doxygen-1.15.0-duplicate-type-names.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-https://bugs.gentoo.org/966843
-https://github.com/wxWidgets/Phoenix/issues/2820
-https://github.com/doxygen/doxygen/issues/11889
-https://github.com/doxygen/doxygen/commit/148e93969da016a8d8ecf1fcdb9fcf045471d688
-
-From 148e93969da016a8d8ecf1fcdb9fcf045471d688 Mon Sep 17 00:00:00 2001
-From: Blake Batson <bbatson101@gmail.com>
-Date: Wed, 10 Dec 2025 20:43:32 -0500
-Subject: [PATCH] Fix duplicate type names
-
----
- src/util.cpp | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/src/util.cpp b/src/util.cpp
-index 89e49d9aff1..ddb4829117c 100644
---- a/src/util.cpp
-+++ b/src/util.cpp
-@@ -979,6 +979,7 @@ void linkifyText(const TextGeneratorIntf &out, const Definition *scope,
- {
- const ClassDef *cd=nullptr;
- const ConceptDef *cnd=nullptr;
-+ const Definition *d=nullptr;
- //printf("** Match word '%s'\n",qPrint(matchWord));
-
- SymbolResolver resolver(fileScope);
-@@ -1010,7 +1011,12 @@ void linkifyText(const TextGeneratorIntf &out, const Definition *scope,
- }
- }
- };
-- if ((cd=getClass(matchWord)))
-+
-+ if (found)
-+ {
-+ //printf(" -> skip\n");
-+ }
-+ else if ((cd=getClass(matchWord)))
- {
- writeCompoundName(cd);
- }
-@@ -1022,7 +1028,7 @@ void linkifyText(const TextGeneratorIntf &out, const Definition *scope,
- {
- writeCompoundName(cnd);
- }
-- else if (const Definition *d=nullptr; cd==nullptr && !found && (d=resolver.resolveSymbol(scope,matchWord)))
-+ else if ((d=resolver.resolveSymbol(scope,matchWord)))
- {
- writeCompoundName(d);
- }
-
diff --git a/app-text/doxygen/files/doxygen-1.17.0-test-tagfile-without-git.patch b/app-text/doxygen/files/doxygen-1.17.0-test-tagfile-without-git.patch
new file mode 100644
index 000000000000..a7fa94ec58e5
--- /dev/null
+++ b/app-text/doxygen/files/doxygen-1.17.0-test-tagfile-without-git.patch
@@ -0,0 +1,25 @@
+https://github.com/doxygen/doxygen/issues/12116
+https://github.com/doxygen/doxygen/commit/a819808ca4dd0264be2ea80fe2d08736e70eacdd
+
+From: albert-github <albert.tests@gmail.com>
+Date: Fri, 1 May 2026 14:27:24 +0200
+Subject: [PATCH] issue #12116 Test suite's test tagfile fails
+
+In case building without git the `doxygen_gitid` is not present in the tag file though the test required it.
+Added extra replacement statement
+---
+ testing/runtests.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/testing/runtests.py b/testing/runtests.py
+index 198aea740db..02611ee7090 100755
+--- a/testing/runtests.py
++++ b/testing/runtests.py
+@@ -346,6 +346,7 @@ def perform_test(self,testmgr):
+ data = xpopen('%s --format --noblanks --nowarning %s' % (self.args.xmllint,check_file))
+ if data:
+ # strip version
++ data = re.sub(r'<tagfile doxygen_version="[^"]+">','<tagfile doxygen_version="" doxygen_gitid="">',data)
+ data = re.sub(r'tagfile doxygen_version="[^"]+" doxygen_gitid="[^"]+"','tagfile doxygen_version="" doxygen_gitid=""',data)
+ data = re.sub(r'xsd" version="[0-9.-]+"','xsd" version=""',data).rstrip('\n')
+ else:
diff --git a/app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch b/app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch
deleted file mode 100644
index 66093eb7deb9..000000000000
--- a/app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/addon/doxywizard/.CMakeLists.txt.swp b/addon/doxywizard/.CMakeLists.txt.swp
-deleted file mode 100644
-index fc379d2..0000000
-Binary files a/addon/doxywizard/.CMakeLists.txt.swp and /dev/null differ
-diff --git a/addon/doxywizard/CMakeLists.txt b/addon/doxywizard/CMakeLists.txt
-index bb0e0eb..b6135bd 100644
---- a/addon/doxywizard/CMakeLists.txt
-+++ b/addon/doxywizard/CMakeLists.txt
-@@ -132,12 +132,12 @@ apply_editbin(doxywizard windows)
- endif()
-
- if(Qt5Core_FOUND)
-- target_link_libraries(doxywizard Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Xml doxygen_version)
-+ target_link_libraries(doxywizard Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Xml doxygen_version pthread)
- else()
- if(Qt6Core_FOUND)
-- target_link_libraries(doxywizard Qt6::Core Qt6::Gui Qt6::Widgets Qt6::Xml doxygen_version)
-+ target_link_libraries(doxywizard Qt6::Core Qt6::Gui Qt6::Widgets Qt6::Xml doxygen_version pthread)
- else()
-- target_link_libraries(doxywizard ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY} doxygen_version)
-+ target_link_libraries(doxywizard ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY} doxygen_version pthread)
- endif()
- endif()
-
diff --git a/app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch b/app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch
deleted file mode 100644
index 1da9a2da6459..000000000000
--- a/app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Always expose the use_libc++ option. It's only useful for Clang but cmake.class
-tries to find when we've used CMake options which are unused/unknown and this
-triggers it for GCC builds if we set -Duse_libc++=OFF.
-
-So, always expose the option so we can turn it off without a warning.
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -21,7 +21,7 @@ option(build_xmlparser "Automatically update the XML parser modules when updatin
- option(build_search "Build external search tools (doxysearch and doxyindexer)" OFF)
- option(build_doc "Build user manual (HTML and PDF)" OFF)
- option(build_doc_chm "Build user manual (CHM)" OFF)
--if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
-+if (TRUE)
- option(use_libc++ "Use libc++ as C++ standard library." ON)
- endif()
- option(use_libclang "Add support for libclang parsing." OFF)
diff --git a/app-text/pdfjam/pdfjam-4.3.1.ebuild b/app-text/pdfjam/pdfjam-4.3.1.ebuild
index b3735b4d64e9..c69586f0e8d4 100644
--- a/app-text/pdfjam/pdfjam-4.3.1.ebuild
+++ b/app-text/pdfjam/pdfjam-4.3.1.ebuild
@@ -35,7 +35,9 @@ DEPEND="
)
"
BDEPEND="
+ app-text/ghostscript-gpl
dev-tex/latexmk
+ dev-texlive/texlive-luatex
test? (
app-shells/bash
app-shells/ksh
diff --git a/app-text/ps2eps/Manifest b/app-text/ps2eps/Manifest
index 3b424d2d8f2b..84572cb357d7 100644
--- a/app-text/ps2eps/Manifest
+++ b/app-text/ps2eps/Manifest
@@ -1 +1,2 @@
DIST ps2eps-1.68.tar.gz 97304 BLAKE2B 594b894b2d81f64c8c6a7461d1df96d7b6e3ce3ef8f7eaf58161eb6a05ebca7b2d304a531be954898f1a9ad53cccd84536b64127b080afbc3902265d2e4e1108 SHA512 7fc84da5da00d5b1169d6e337b1db232adf80d9d957e48bfdd9272946151adca3e44f712587387ef557488cd15f44210b3fbd8c545488ec0071641d9d25a9c2b
+DIST ps2eps-1.70.tar.gz 135657 BLAKE2B 6367a907fb1361db700256f7002247e3e1f832a0e977fa9a9bc4576ee101166993f9bb4098d188a8c98cf1ae1e4e7d83d28972dd2492f6f7c729eb5383549b4e SHA512 a7f458bf40e069ae739be126beaea59183a3d562c02b0012e7c13adb48d6a47a5ea7d395e2ec4b9bd63e4eb610cbf40e86ba67ecb2a104483b1a4b678252cd5b
diff --git a/app-text/ps2eps/ps2eps-1.68.ebuild b/app-text/ps2eps/ps2eps-1.68.ebuild
index 28ae5baf2a15..bfc6e3869db4 100644
--- a/app-text/ps2eps/ps2eps-1.68.ebuild
+++ b/app-text/ps2eps/ps2eps-1.68.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=7
@@ -6,8 +6,8 @@ EAPI=7
inherit toolchain-funcs
DESCRIPTION="Generate Encapsulated Postscript Format files from one-page Postscript documents"
-HOMEPAGE="http://www.tm.uka.de/~bless/ps2eps"
-SRC_URI="http://www.tm.uka.de/~bless/${P}.tar.gz"
+HOMEPAGE="https://telematics.tm.kit.edu/staff_bless.php?tab=%5B1512%5D#tabpanel-1512"
+SRC_URI="https://tm.kit.edu/~bless/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
diff --git a/app-text/ps2eps/ps2eps-1.70.ebuild b/app-text/ps2eps/ps2eps-1.70.ebuild
new file mode 100644
index 000000000000..d662fe1b99bd
--- /dev/null
+++ b/app-text/ps2eps/ps2eps-1.70.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=9
+
+inherit toolchain-funcs
+
+DESCRIPTION="Generate Encapsulated Postscript Format files from one-page Postscript documents"
+HOMEPAGE="https://telematics.tm.kit.edu/staff_bless.php?tab=%5B1512%5D#tabpanel-1512"
+SRC_URI="https://tm.kit.edu/~bless/${P}.tar.gz"
+
+S="${WORKDIR}/${PN}"
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ app-text/ghostscript-gpl
+"
+
+src_configure() {
+ tc-export CC
+}
+
+src_compile() {
+ cd src/C || die
+ emake bbox
+}
+
+src_install() {
+ dobin src/C/bbox
+ dobin bin/ps2eps
+
+ doman doc/man/man1/bbox.1
+ doman doc/man/man1/ps2eps.1
+
+ local DOCS=( Changes.txt README.txt doc/pdf )
+ local HTML_DOCS=( doc/html/. )
+ einstalldocs
+}
diff --git a/dev-cpp/ada/ada-4.0.0.ebuild b/dev-cpp/ada/ada-4.0.0.ebuild
index f7201dd452f6..0f38e5c14257 100644
--- a/dev-cpp/ada/ada-4.0.0.ebuild
+++ b/dev-cpp/ada/ada-4.0.0.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/ada-url/ada/archive/refs/tags/v${PV}.tar.gz -> ${P}.
LICENSE="Apache-2.0 MIT"
SLOT="0/$(ver_cut 1)"
-KEYWORDS="~amd64 arm arm64 ~loong ppc64 ~riscv ~x86"
+KEYWORDS="~amd64 arm arm64 ~loong ppc64 ~riscv x86"
RESTRICT="test"
src_configure() {
diff --git a/dev-db/duckdb/Manifest b/dev-db/duckdb/Manifest
index 74176196e8fc..c35af1e44e11 100644
--- a/dev-db/duckdb/Manifest
+++ b/dev-db/duckdb/Manifest
@@ -1,2 +1,2 @@
-DIST duckdb-1.5.4.tar.gz 101078007 BLAKE2B 2f6fe629faaa6359d3d910c1ff5333814430b3ca1fcafa7bdad0adffaae3c50e1dc59b7bd05c515cf1262a8905d87fc1e254839c78952ddcfb61607823d4a6e6 SHA512 7aa69dcce4d74fceac243433a0f6cc19a99338a6f30e4d68aff6179ea3b744955b15cdb2df7b97e41c80c41d977d7dd06804983b403739ff413bee5f79cee392
DIST duckdb-1.5.5.tar.gz 101169313 BLAKE2B 99d6274e0b514673e0a0a6b7651a7b8f6f07b22a68a098f30e4c342ec43395c04d5b553f39319d54d2defbc3db77ffa3ef806b2470d77045b835760acc90986b SHA512 cf94976a80135234e37de3e3998009397ba6edcded8bd5e9762f0f48666888cc814a5b5e2b5e155f02a4678aa54b9dabf53fc1bd48fd60178bbe4c8aa7ec3e7e
+DIST duckdb-1.5.6.tar.gz 100988480 BLAKE2B 7ba2e0e13192cff915e06a3ab2ef637f86cb2d238699d75ad8ed65498eda45c1ecb6d966e0d5faa4013ff61ef4ad36a33d2ae05480db2df41f9f780246e3b014 SHA512 ca6866600430b977a970fc3dd83911d719ffae7aae68f39106f3b6667f0b2d481290141f93e0bb35a595357c8d316859b133c08839fd6b1e1cdce7c9fb8b78ac
diff --git a/dev-db/duckdb/duckdb-1.5.4.ebuild b/dev-db/duckdb/duckdb-1.5.6.ebuild
index 0035204b4cda..18fe1d20ebe8 100644
--- a/dev-db/duckdb/duckdb-1.5.4.ebuild
+++ b/dev-db/duckdb/duckdb-1.5.6.ebuild
@@ -3,7 +3,9 @@
EAPI=8
-inherit cmake dot-a
+CHECKREQS_DISK_BUILD="20G"
+
+inherit cmake dot-a check-reqs
DESCRIPTION="high-performance analytical database system"
HOMEPAGE="https://duckdb.org https://github.com/duckdb/duckdb"
diff --git a/dev-db/mariadb/mariadb-11.4.13-r1.ebuild b/dev-db/mariadb/mariadb-11.4.13-r1.ebuild
index cea347c1fc28..4566675a69fc 100644
--- a/dev-db/mariadb/mariadb-11.4.13-r1.ebuild
+++ b/dev-db/mariadb/mariadb-11.4.13-r1.ebuild
@@ -22,7 +22,7 @@ S="${WORKDIR}/mysql"
LICENSE="GPL-2 LGPL-2.1+"
SLOT="$(ver_cut 1-2)/${SUBSLOT:-0}"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 x86"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 x86"
IUSE="aws-km +backup bindist columnstore cracklib debug extraengine galera innodb-lz4
innodb-lzo innodb-snappy jdbc jemalloc kerberos latin1 mroonga
numa odbc oqgraph pam +perl profiling rocksdb selinux +server sphinx
diff --git a/dev-db/mysql-connector-c++/mysql-connector-c++-26.7.0.ebuild b/dev-db/mysql-connector-c++/mysql-connector-c++-26.7.0.ebuild
index b894e2c2ff83..8d4d4ffbfd12 100644
--- a/dev-db/mysql-connector-c++/mysql-connector-c++-26.7.0.ebuild
+++ b/dev-db/mysql-connector-c++/mysql-connector-c++-26.7.0.ebuild
@@ -17,7 +17,7 @@ LICENSE="Artistic GPL-2"
# See ABI_VERSION(s) is version.cmake
SLOT="0/2.10" # ABI_VERSION_MAJOR/JDBC_ABI_VERSION_MAJOR
# -ppc, -sparc for bug #711940
-KEYWORDS="~amd64 ~arm ~arm64 -ppc ~ppc64 -sparc ~x86"
+KEYWORDS="amd64 arm ~arm64 -ppc ~ppc64 -sparc x86"
IUSE="+legacy test"
RESTRICT="!test? ( test )"
diff --git a/dev-debug/gdb/gdb-17.2-r1.ebuild b/dev-debug/gdb/gdb-17.2-r1.ebuild
index 79131c1590e2..957768357ac4 100644
--- a/dev-debug/gdb/gdb-17.2-r1.ebuild
+++ b/dev-debug/gdb/gdb-17.2-r1.ebuild
@@ -78,7 +78,7 @@ LICENSE="GPL-3+ LGPL-2.1+"
SLOT="0"
IUSE="babeltrace cet +debuginfod guile lzma multitarget nls +python rocm +server sim source-highlight test vanilla +xml xxhash zstd"
if [[ -n ${REGULAR_RELEASE} ]] ; then
- 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 ~x64-macos ~x64-solaris"
fi
REQUIRED_USE="
guile? ( ${GUILE_REQUIRED_USE} )
diff --git a/dev-libs/apr-util/apr-util-1.6.5.ebuild b/dev-libs/apr-util/apr-util-1.6.5.ebuild
index 569b3151fc38..04b143dc2a8c 100644
--- a/dev-libs/apr-util/apr-util-1.6.5.ebuild
+++ b/dev-libs/apr-util/apr-util-1.6.5.ebuild
@@ -19,7 +19,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
IUSE="berkdb doc gdbm ldap mysql nss odbc openssl postgres sqlite static-libs"
RDEPEND="
diff --git a/dev-libs/intel-compute-runtime/Manifest b/dev-libs/intel-compute-runtime/Manifest
index a126c42d7cd0..a8a5b225bb20 100644
--- a/dev-libs/intel-compute-runtime/Manifest
+++ b/dev-libs/intel-compute-runtime/Manifest
@@ -3,3 +3,4 @@ DIST intel-compute-runtime-24.35.30872.36.tar.gz 7377285 BLAKE2B 3c80f0dd7d48534
DIST intel-compute-runtime-26.22.38646.4.tar.gz 9173397 BLAKE2B aa234d0d244f300db1bd4244674f1a89c62c2c4691fa68cee2971f2fdab3bed872e2929d93be6e4227c05c7e3f672de66c6179d030138d370dc7a168c9fd115b SHA512 16bacf6b030bcc292bee16f964936bcb13ef6e3f12e76aa4cdee807dd1a3b9b32dca49a0cb3cc59e62b616a1662389db4505e6b05edaef10c9ca67a73bbc77d1
DIST intel-compute-runtime-26.27.39122.12.tar.gz 9384549 BLAKE2B b929ac2d1d0a7d064500b7d78dcb008a441d07e9348d25798d6fc319cf62a39050910be93f5ea1516c44b36dcd7fbb922304d7dacab02c4c35a5e616840655b5 SHA512 df75b82dba99852a71497fe99b0e974454a1aa9b96623f54efd978d10cb51513aef4d94d774ff5f2ee3c266a7dc4cd90efd0e9b1b9bd1164d9b0b9d1879f30a6
DIST intel-compute-runtime-26.31.39395.14.tar.gz 9420076 BLAKE2B 8ba4caf6c4853c7d6ef5ad6f8253f3c6fe6c5188cbf41455a60f87252214e2fb2cf717dc1f4593d3e3445330bd68952f6ec6418d265c16a7ae26db12571d6cb8 SHA512 1f002c703bd82a1d447a5ea7fda97620ba127fce7cdc2833e6322a2d3c3bec4a062b0a2ffbd192aa67c458b5f2391dc68eacba9c92fbde65b617174efdddf8d5
+DIST intel-compute-runtime-26.35.39758.15.tar.gz 9686761 BLAKE2B df406c86fdff215d66a6b133a2d6d5bd00c451f62deaef55e9df7625540faa4e7ed9b8433f3d2768d35bfdd8942d7c2c0e6e47d64946c2b8488dd25e95292155 SHA512 19c47d2080b0a6dd86417351791702167b6baedafd1feabbf945d82ebe0afffe8cc59b58309b7e436993b603349737282ee9836e5b6f26faf71a2d78a473cf1a
diff --git a/dev-libs/intel-compute-runtime/intel-compute-runtime-26.35.39758.15.ebuild b/dev-libs/intel-compute-runtime/intel-compute-runtime-26.35.39758.15.ebuild
new file mode 100644
index 000000000000..39443acbd9fe
--- /dev/null
+++ b/dev-libs/intel-compute-runtime/intel-compute-runtime-26.35.39758.15.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_BUILD_TYPE="Release"
+MY_PN="${PN/intel-/}"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="Intel Graphics Compute Runtime for oneAPI Level Zero and OpenCL Driver"
+HOMEPAGE="https://github.com/intel/compute-runtime"
+SRC_URI="https://github.com/intel/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0/1.6.$(ver_cut 3)"
+KEYWORDS="~amd64"
+IUSE="disable-mitigations +level-zero +vaapi"
+
+RDEPEND="
+ !dev-libs/intel-compute-runtime:legacy
+ >=dev-util/intel-graphics-compiler-2.42.3:0
+ !dev-util/intel-graphics-compiler:legacy
+ >=media-libs/gmmlib-22.10.2:=
+"
+
+DEPEND="
+ ${RDEPEND}
+ dev-libs/intel-metrics-discovery:=
+ >=dev-libs/intel-metrics-library-1.0.242:=
+ dev-libs/libnl:3
+ dev-libs/libxml2:2
+ >=dev-util/intel-graphics-system-controller-1.3.2:=
+ media-libs/mesa
+ >=virtual/opencl-3
+ level-zero? ( <dev-libs/level-zero-1.33.1:= )
+ vaapi? (
+ x11-libs/libdrm[video_cards_intel]
+ media-libs/libva
+ )
+"
+
+BDEPEND="virtual/pkgconfig"
+
+DOCS=( "README.md" "Security.md" )
+
+src_prepare() {
+ # Remove '-Werror' from default
+ sed -e '/Werror/d' -i CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ # Filtered for two reasons:
+ # 1) https://github.com/intel/compute-runtime/issues/528
+ # 2) bug #930199
+ filter-lto
+
+ local mycmakeargs=(
+ -DCCACHE_ALLOWED="OFF"
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
+ -DCMAKE_INSTALL_LIBDIR="$(get_libdir)"
+ -DBUILD_WITH_L0="$(usex level-zero)"
+ -DDISABLE_LIBVA="$(usex !vaapi)"
+ -DNEO_ALLOW_LEGACY_PLATFORMS_SUPPORT="ON"
+ -DNEO_DISABLE_LTO="ON"
+ -DNEO_DISABLE_MITIGATIONS="$(usex disable-mitigations)"
+ -DNEO__METRICS_LIBRARY_INCLUDE_DIR="${ESYSROOT}/usr/include"
+ -DKHRONOS_GL_HEADERS_DIR="${ESYSROOT}/usr/include"
+ -DOCL_ICD_VENDORDIR="${EPREFIX}/etc/OpenCL/vendors"
+ -DSUPPORT_DG1="ON"
+ -Wno-dev
+
+ # See https://github.com/intel/intel-graphics-compiler/issues/204
+ # -DNEO_DISABLE_BUILTINS_COMPILATION="ON"
+
+ # If enabled, tests are automatically run during
+ # the compile phase and we cannot run them because
+ # they require permissions to access the hardware.
+ -DSKIP_UNIT_TESTS="1"
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-libs/intel-compute-runtime/metadata.xml b/dev-libs/intel-compute-runtime/metadata.xml
index 609e6557ead9..c30c1e732581 100644
--- a/dev-libs/intel-compute-runtime/metadata.xml
+++ b/dev-libs/intel-compute-runtime/metadata.xml
@@ -25,8 +25,9 @@
please consult upstream release notices for details.
</longdescription>
<use>
- <flag name="l0">Install the oneAPI Level Zero driver alongside the OpenCL one</flag>
<flag name="disable-mitigations">This will disable spectre mitigation, which can speed up the performance.</flag>
+ <flag name="l0">Install the oneAPI Level Zero driver alongside the OpenCL one</flag>
+ <flag name="level-zero">Install the oneAPI Level Zero driver alongside the OpenCL one</flag>
<flag name="vaapi">Support the sharing of surfaces with Video Acceleration API (OpenCL Extension #36)</flag>
</use>
<origin>srcux</origin>
diff --git a/dev-libs/intel-metrics-discovery/Manifest b/dev-libs/intel-metrics-discovery/Manifest
index d44a16f1dfd1..5ca5f4204958 100644
--- a/dev-libs/intel-metrics-discovery/Manifest
+++ b/dev-libs/intel-metrics-discovery/Manifest
@@ -1,2 +1,2 @@
-DIST intel-metrics-discovery-1.16.193.tar.gz 4511825 BLAKE2B 48e2e0e8bccce1934317750408e59c9b1507b1d2ed45dd88510e193d8110eb0953384bf30486ace1bb743a985b8eef931330b28eba81b1427debf555f3ff24e0 SHA512 3a65a9e7ee14dc06391465e56e3afdf3f39db58c724d9ca6d223bc080c057878e9cdd8146130f35b471bed025c021470933ef7131d70b4c60fd904d59b303903
DIST intel-metrics-discovery-1.16.194.tar.gz 4523989 BLAKE2B ff987e6867b5dc1b47ce6067ff929f198e4b8e8273c3f5dd53675707b7caca90cc86777e28ebbef03ab3b9b76ba6d22ec68bc2366213fcdf7ee968a726af0626 SHA512 0cef5bfd0b2b828dc7c1c841b4da85245750add2c7519edf6ec2a43ff873722c5221b7a0baf13345c7f24c4c43e1a8fd109abae1909c621d48a034f44ff3f6b1
+DIST intel-metrics-discovery-1.16.197.tar.gz 4526215 BLAKE2B 751602c9bcc6fce59d8abbeb7aa1e4136dc3cf6fc7ed3e86518514b08638db23631a328645febf3be7356900b67e8d81f9fa62a7e68403d00f64d0d0bb337d7b SHA512 157965ae8f423a3f97143f0f08fef3bcff4d59a47c176b23c3be6e3de6a5007d216d3f45522be7675c47c9861321b3e1fdde088dfb0fafe5ea0172877c73d67e
diff --git a/dev-libs/intel-metrics-discovery/intel-metrics-discovery-1.16.193.ebuild b/dev-libs/intel-metrics-discovery/intel-metrics-discovery-1.16.197.ebuild
index ff7797e5a0ef..7bf64abbc38b 100644
--- a/dev-libs/intel-metrics-discovery/intel-metrics-discovery-1.16.193.ebuild
+++ b/dev-libs/intel-metrics-discovery/intel-metrics-discovery-1.16.197.ebuild
@@ -16,7 +16,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
SLOT="0/${PV}"
-KEYWORDS="amd64"
+KEYWORDS="~amd64"
DEPEND="x11-libs/libdrm"
RDEPEND="${DEPEND}"
diff --git a/dev-libs/intel-metrics-library/Manifest b/dev-libs/intel-metrics-library/Manifest
index 9ccbdaeb324f..9e87bb0b4e26 100644
--- a/dev-libs/intel-metrics-library/Manifest
+++ b/dev-libs/intel-metrics-library/Manifest
@@ -1 +1,2 @@
DIST intel-metrics-library-1.0.238.tar.gz 274656 BLAKE2B 03a45261f8b5112d92cb07c35b2f2a03384490b405631b2746935499d277efd7e135ae58f50e9ac83c3bf47b66aa5bb3b8ea4ecd5b58e99b9d2a01be711d0429 SHA512 13717c640a68f69c7685628f3bc180571eafc31f0271bdbbf30f6989fbd3142b07b6adb104d58379d34533776c480d881edeffe09a594827ce7003716812f8c1
+DIST intel-metrics-library-1.0.242.tar.gz 275493 BLAKE2B d9a3c44d241e065fd40b0a4e9d18880c1092aca23e451a9fedd61af8d7bcbfb3ea115738db43b9a16c4478e13a1b91c60d673d0c4fb0c72d5c13868f3fb17de8 SHA512 f4f64db564f2ae57ea076c105810fac4b5da3dfb636e7d1dfc9f63ef0b9e0cb1b16f757f64faf5e82d2dc67d7528a428646c8ec4ef6bfb00f1234f4ab9df7062
diff --git a/dev-libs/intel-metrics-library/intel-metrics-library-1.0.242.ebuild b/dev-libs/intel-metrics-library/intel-metrics-library-1.0.242.ebuild
new file mode 100644
index 000000000000..58bc1e6335c1
--- /dev/null
+++ b/dev-libs/intel-metrics-library/intel-metrics-library-1.0.242.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_BUILD_TYPE="Release"
+MY_PN="${PN/intel-/}"
+MY_P="${MY_PN}-${PV}"
+
+inherit cmake
+
+DESCRIPTION="User mode driver helper library that provides access to GPU performance counters"
+HOMEPAGE="https://github.com/intel/metrics-library"
+SRC_URI="https://github.com/intel/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+
+DEPEND="x11-libs/libdrm"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-1.0.238-cmake.patch" )
diff --git a/dev-libs/kirigami-addons/kirigami-addons-1.14.2.ebuild b/dev-libs/kirigami-addons/kirigami-addons-1.14.2.ebuild
index f55fee8ab698..bbf07bad0cc9 100644
--- a/dev-libs/kirigami-addons/kirigami-addons-1.14.2.ebuild
+++ b/dev-libs/kirigami-addons/kirigami-addons-1.14.2.ebuild
@@ -11,7 +11,7 @@ inherit ecm kde.org
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
fi
DESCRIPTION="Visual end user components for Kirigami-based applications"
diff --git a/dev-libs/level-zero/Manifest b/dev-libs/level-zero/Manifest
index 6eccafbf21a7..8150b34332f4 100644
--- a/dev-libs/level-zero/Manifest
+++ b/dev-libs/level-zero/Manifest
@@ -1,3 +1,4 @@
DIST level-zero-1.30.0.tar.gz 1669762 BLAKE2B 141ac08ccb66e483576d2dabf3b574e348a9914e586b34048cb28b1e4215e6d11d48cd450292f45c2592e878e87b557d4fa462877dcc21de4a72793bcb7ec915 SHA512 40eaf2a6d6556aff76f8b85429504bf71d4361aae8b46131ae413e90e406bcf7694b6baad6e972e28428b7e17eeaa2e4b52adf117407c86ab48aa19f05432dd9
DIST level-zero-1.32.0.tar.gz 1744847 BLAKE2B e9814029991db5dcca362a0509a5e106905fb7bb87ab75fb3a94fb41b5959d2637be36a60e094aa331b8ce0ca2c7c0e550e2398b140f1f599581afce4aacb7d2 SHA512 ef24fd574b09d31f4447a21d435614dedb5ef8fabd51e1f1ec20e2e2ae92ffdf3b6d53b8b7fad7fa910d05960d368789264747f00bd0a5d1bb119b88f5dc1ec4
DIST level-zero-1.33.1.tar.gz 2338367 BLAKE2B fc8e1814fa949a0a41e56c4eaf1e3b7c55fa7f0f812fdbaf39d7b13789e6ec7c11756eda1d0ee52b90d161e111d97a58c566401c9f8ef294e54a5133859f9766 SHA512 9420b8dd115c6e509d5f9b381656615bfcda920ad589f184645f522e88352b380d27a15c8c148a02591221d6c57bff4fd90482a5c8b18e3a85227b454ba9a6ec
+DIST level-zero-1.34.0.tar.gz 2393782 BLAKE2B 63b3018f35d1c4190c2b3aeff6277c15743a402fc0095d7791acfc04cf9e6d14cf244e582828b7c0c29814b65e7c7eddf081ea6df2ae4cf809b0eb21bfd13920 SHA512 91b20f4c73deaec012b1a7671d532a40e474a80967d6094552dbe0e9a5d63f94ee4422a74e93203ae91ffce4a3682da6de7c25bf4983a8b596c3f30cea53adf1
diff --git a/dev-libs/level-zero/level-zero-1.32.0.ebuild b/dev-libs/level-zero/level-zero-1.30.0-r1.ebuild
index 129421cc6122..d0919295386d 100644
--- a/dev-libs/level-zero/level-zero-1.32.0.ebuild
+++ b/dev-libs/level-zero/level-zero-1.30.0-r1.ebuild
@@ -13,9 +13,6 @@ LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="amd64"
-RDEPEND="dev-libs/spdlog:="
-DEPEND="${RDEPEND}"
-
src_prepare() {
# Don't hardcore -Werror
sed -e 's/-Werror//g' -e '/CMAKE_COMPILE_WARNING_AS_ERROR/ s/ON/OFF/' -i CMakeLists.txt || die
@@ -28,9 +25,5 @@ src_prepare() {
}
src_configure() {
- local mycmakeargs=(
- -DSYSTEM_SPDLOG="ON"
- )
-
cmake_src_configure
}
diff --git a/dev-libs/level-zero/level-zero-1.30.0.ebuild b/dev-libs/level-zero/level-zero-1.32.0-r1.ebuild
index 129421cc6122..d0919295386d 100644
--- a/dev-libs/level-zero/level-zero-1.30.0.ebuild
+++ b/dev-libs/level-zero/level-zero-1.32.0-r1.ebuild
@@ -13,9 +13,6 @@ LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="amd64"
-RDEPEND="dev-libs/spdlog:="
-DEPEND="${RDEPEND}"
-
src_prepare() {
# Don't hardcore -Werror
sed -e 's/-Werror//g' -e '/CMAKE_COMPILE_WARNING_AS_ERROR/ s/ON/OFF/' -i CMakeLists.txt || die
@@ -28,9 +25,5 @@ src_prepare() {
}
src_configure() {
- local mycmakeargs=(
- -DSYSTEM_SPDLOG="ON"
- )
-
cmake_src_configure
}
diff --git a/dev-libs/level-zero/level-zero-1.33.1.ebuild b/dev-libs/level-zero/level-zero-1.33.1-r1.ebuild
index 6b62457c8db6..f73b7c0e2095 100644
--- a/dev-libs/level-zero/level-zero-1.33.1.ebuild
+++ b/dev-libs/level-zero/level-zero-1.33.1-r1.ebuild
@@ -13,9 +13,6 @@ LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="~amd64"
-RDEPEND="dev-libs/spdlog:="
-DEPEND="${RDEPEND}"
-
src_prepare() {
# Don't hardcore -Werror
sed -e 's/-Werror//g' -e '/CMAKE_COMPILE_WARNING_AS_ERROR/ s/ON/OFF/' -i CMakeLists.txt || die
@@ -28,9 +25,5 @@ src_prepare() {
}
src_configure() {
- local mycmakeargs=(
- -DSYSTEM_SPDLOG="ON"
- )
-
cmake_src_configure
}
diff --git a/dev-libs/level-zero/level-zero-1.34.0.ebuild b/dev-libs/level-zero/level-zero-1.34.0.ebuild
new file mode 100644
index 000000000000..f73b7c0e2095
--- /dev/null
+++ b/dev-libs/level-zero/level-zero-1.34.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="oneAPI Level Zero headers, loader and validation layer"
+HOMEPAGE="https://github.com/oneapi-src/level-zero"
+SRC_URI="https://github.com/oneapi-src/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+
+src_prepare() {
+ # Don't hardcore -Werror
+ sed -e 's/-Werror//g' -e '/CMAKE_COMPILE_WARNING_AS_ERROR/ s/ON/OFF/' -i CMakeLists.txt || die
+
+ cmake_src_prepare
+
+ # According to upstream, release tarballs should contain this file but at least
+ # some of them do not. Fortunately it is trivial to make one ourselves.
+ echo "$(ver_cut 3)" > "${S}"/VERSION_PATCH || die
+}
+
+src_configure() {
+ cmake_src_configure
+}
diff --git a/dev-libs/libebml/libebml-1.4.7.ebuild b/dev-libs/libebml/libebml-1.4.7.ebuild
index 703fa1520b95..7c2a89d06b63 100644
--- a/dev-libs/libebml/libebml-1.4.7.ebuild
+++ b/dev-libs/libebml/libebml-1.4.7.ebuild
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="LGPL-2.1"
SLOT="0/5" # subslot = soname major version
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86"
DEPEND="dev-libs/utfcpp"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-moritzbunkus )"
diff --git a/dev-libs/libfmt/libfmt-12.1.0.ebuild b/dev-libs/libfmt/libfmt-12.1.0.ebuild
index bdab5e539d41..65789c461c13 100644
--- a/dev-libs/libfmt/libfmt-12.1.0.ebuild
+++ b/dev-libs/libfmt/libfmt-12.1.0.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == *9999 ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/fmtlib/fmt/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
S="${WORKDIR}/fmt-${PV}"
fi
diff --git a/dev-libs/libunibreak/libunibreak-8.0.ebuild b/dev-libs/libunibreak/libunibreak-8.0.ebuild
index 092f3421226f..36ce62a86f1e 100644
--- a/dev-libs/libunibreak/libunibreak-8.0.ebuild
+++ b/dev-libs/libunibreak/libunibreak-8.0.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://github.com/adah1972/libunibreak/releases/download/${PN}_${PV/./
LICENSE="ZLIB"
SLOT="0/$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
IUSE="doc man static-libs test"
RESTRICT="!test? ( test )"
diff --git a/dev-libs/libzip/Manifest b/dev-libs/libzip/Manifest
index 816ab7f40dcb..7281a6f6e451 100644
--- a/dev-libs/libzip/Manifest
+++ b/dev-libs/libzip/Manifest
@@ -1 +1,2 @@
DIST libzip-1.11.4.tar.xz 793340 BLAKE2B 940df082260bffde68579a8eac3e23e987d8e8ef3a87710dce1401e8c73acc8ba4503ac2418bc4aed595a1ca930feb2335ae2b595237cb5e37e5c68df96b7ac7 SHA512 dc7929ed7a0f43e793041fc3f0639649233d4ecbe59f90b0275582b51d2951e240ce5182220fb14ade7dcccc08dab90fda22c87dc7365fec4fe70ee4f14eaa37
+DIST libzip-1.12.tar.xz 810672 BLAKE2B ff9216b497436bef63b98c114d1de508b0abb95d1630434a766039c5e3445546c867de2caf7d078c31ac09c9585e23fee1720f91b37484246a3dcf69b4648c84 SHA512 00e300dee97e4c8664c9bef0c21e25b1e37c1a565870264b85f6a35ba4e6252c78c93a36243ad7e219767c64e822081ee1174a42d1fee80090573c81f5be3c6d
diff --git a/dev-libs/libzip/libzip-1.12.ebuild b/dev-libs/libzip/libzip-1.12.ebuild
new file mode 100644
index 000000000000..b18bfc418c6e
--- /dev/null
+++ b/dev-libs/libzip/libzip-1.12.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="Library for manipulating zip archives"
+HOMEPAGE="https://nih.at/libzip/"
+SRC_URI="https://www.nih.at/libzip/${P}.tar.xz"
+
+LICENSE="BSD"
+SLOT="0/5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="bzip2 gnutls lzma ssl test tools zstd"
+REQUIRED_USE="test? ( ssl tools )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ virtual/zlib:=
+ bzip2? ( app-arch/bzip2:= )
+ lzma? ( app-arch/xz-utils )
+ ssl? (
+ gnutls? (
+ dev-libs/nettle:=
+ >=net-libs/gnutls-3.6.5:=
+ )
+ !gnutls? ( dev-libs/openssl:= )
+ )
+ zstd? ( >=app-arch/zstd-1.4.0:= )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-util/nihtest )"
+
+src_prepare() {
+ rm -r examples/cmake-project || die # bug #964582
+ cmake_src_prepare
+}
+
+src_configure() {
+ append-lfs-flags
+ local mycmakeargs=(
+ -DBUILD_DOC=ON
+ -DBUILD_OSSFUZZ=OFF
+ -DBUILD_EXAMPLES=OFF # nothing is installed
+ -DENABLE_COMMONCRYPTO=OFF # not in tree
+ -DENABLE_BZIP2=$(usex bzip2)
+ -DENABLE_LZMA=$(usex lzma)
+ -DENABLE_ZSTD=$(usex zstd)
+ -DBUILD_REGRESS=$(usex test)
+ -DBUILD_TOOLS=$(usex tools)
+ )
+
+ if use ssl; then
+ if use gnutls; then
+ mycmakeargs+=(
+ -DENABLE_GNUTLS=$(usex gnutls)
+ -DENABLE_OPENSSL=OFF
+ )
+ else
+ mycmakeargs+=(
+ -DENABLE_GNUTLS=OFF
+ -DENABLE_OPENSSL=ON
+ )
+ fi
+ else
+ mycmakeargs+=(
+ -DENABLE_GNUTLS=OFF
+ -DENABLE_OPENSSL=OFF
+ )
+ fi
+ cmake_src_configure
+}
diff --git a/dev-libs/ls-qpack/Manifest b/dev-libs/ls-qpack/Manifest
index a82413ad06d9..a3556e4d996a 100644
--- a/dev-libs/ls-qpack/Manifest
+++ b/dev-libs/ls-qpack/Manifest
@@ -1 +1,3 @@
DIST ls-qpack-2.6.1.gh.tar.gz 709629 BLAKE2B 57af4c243560f166d0fad6a1ee88a35c2a51299fe14534f862f4acd9b58206b9d11473c68fbb09096cf7298e4809bf487d0c823e1fb7b9cace829463347865ab SHA512 2ca90df7660b315a61a657f7b1f56ac5706ad51fe3edaa07b0cc24405a4c691419f2ae17315d9ad6cb13779ed5d6714b3cd932c670b4d571c6bf1dde10540f84
+DIST ls-qpack-2.6.4.gh.tar.gz 705153 BLAKE2B 3665182cf32b689aaa9654e7fc9f9083474cc2695befc8a4c790d177e304eb423c1ea36f5a2c80be86977860cfe6fb9900e451e3d79128d1c1bef59953232f1d SHA512 d6593011c709510e790c4af0598b2a9051e7c377291753408f678745303b787cc52f102066a8d0d3dc3514588587b59f23ed7c62fbe2188f0b32b00f0a5766f9
+DIST ls-qpack-2.7.0.gh.tar.gz 709030 BLAKE2B 336cc278fe291a2ab55c13129f9912222ca3c0a438ad2e46537d87245498ca92fa874e4ba398d9382db20d2d35006c598eb2f5e53433e0337bbde5176fb55011 SHA512 2f2596486bb505feb3899ec20a94c52c1ee4b2bcda28f506f6ba5302dd3997fd18150a78428a3fd1944a5ba5ab17cc9b0c73ede9e90d3cf9dddf7bc2ab708438
diff --git a/dev-libs/ls-qpack/files/ls-qpack-2.7.0-fortify.patch b/dev-libs/ls-qpack/files/ls-qpack-2.7.0-fortify.patch
new file mode 100644
index 000000000000..4623282fa0e2
--- /dev/null
+++ b/dev-libs/ls-qpack/files/ls-qpack-2.7.0-fortify.patch
@@ -0,0 +1,38 @@
+From 3da1d2b6c230ea97ca5819a4c743b8813e0555b8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sun, 11 Oct 2026 22:10:36 +0200
+Subject: [PATCH] Explicitly disable `_FORTIFY_FORCE` for `fuzz-decode.c`
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Explicitly disable `_FORTIFY_FORCE` in `fuzz-decode.c`, to fix build
+failures with optimizations enabled. The file disables optimizations
+halfway through, so we need to ensure that the standard library headers
+are included with fortification disabled.
+
+Fixes #91
+
+Thanks to @thesamesam and @amonakov for help.
+
+Signed-off-by: Michał Górny <mgorny@gentoo.org>
+---
+ bin/fuzz-decode.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/bin/fuzz-decode.c b/bin/fuzz-decode.c
+index 222167b..a215662 100644
+--- a/bin/fuzz-decode.c
++++ b/bin/fuzz-decode.c
+@@ -4,6 +4,11 @@
+ * forgoes several advanced options.
+ */
+
++/* _FORTIFY_SOURCE cannot be used with non-optimized code, and the code
++ * is using pragmas to disable optimization below
++ */
++#undef _FORTIFY_SOURCE
++
+ #ifdef WIN32
+
+ #include <stdio.h>
diff --git a/dev-libs/ls-qpack/ls-qpack-2.6.4.ebuild b/dev-libs/ls-qpack/ls-qpack-2.6.4.ebuild
new file mode 100644
index 000000000000..34f89813b40f
--- /dev/null
+++ b/dev-libs/ls-qpack/ls-qpack-2.6.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="QPACK compression library for use with HTTP/3"
+HOMEPAGE="https://github.com/litespeedtech/ls-qpack/"
+SRC_URI="
+ https://github.com/litespeedtech/ls-qpack/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0/2"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/xxhash:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+src_configure() {
+ local mycmakeargs=(
+ # no support for shared + static both
+ -DBUILD_SHARED_LIBS=ON
+ # these are only test helpers
+ -DLSQPACK_BIN=OFF
+ -DLSQPACK_TESTS=$(usex test)
+ # use system xxhash
+ -DLSQPACK_XXH=OFF
+ )
+ cmake_src_configure
+}
diff --git a/dev-libs/ls-qpack/ls-qpack-2.7.0.ebuild b/dev-libs/ls-qpack/ls-qpack-2.7.0.ebuild
new file mode 100644
index 000000000000..4310fd9f435e
--- /dev/null
+++ b/dev-libs/ls-qpack/ls-qpack-2.7.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="QPACK compression library for use with HTTP/3"
+HOMEPAGE="https://github.com/litespeedtech/ls-qpack/"
+SRC_URI="
+ https://github.com/litespeedtech/ls-qpack/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0/2"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/xxhash:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+PATCHES=(
+ # https://github.com/litespeedtech/ls-qpack/pull/92
+ "${FILESDIR}/${P}-fortify.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ # no support for shared + static both
+ -DBUILD_SHARED_LIBS=ON
+ # these are only test helpers
+ -DLSQPACK_BIN=OFF
+ -DLSQPACK_TESTS=$(usex test)
+ # use system xxhash
+ -DLSQPACK_XXH=OFF
+ )
+ cmake_src_configure
+}
diff --git a/dev-libs/mxml/Manifest b/dev-libs/mxml/Manifest
index bdef58ef4cba..fd4b612fa7f1 100644
--- a/dev-libs/mxml/Manifest
+++ b/dev-libs/mxml/Manifest
@@ -1,4 +1,4 @@
DIST mxml-3.3.1.tar.gz 1554784 BLAKE2B e0d599fd947dfef72edae40c1e70ea76c92105128dd46e772a7c71f9293cab3339c980396dffe105246cad64d0474935cc1939005ad9a2bffc8e8107f025a466 SHA512 43e6a92806d9c3f5db39fbf960c15ebfa6d92ef98274b7ce39b57724d6c26ad4362d6d8f3c1023efda92e6a815df068e5038a0cd479562b6be9dbdda8e827a41
DIST mxml-4.0.4.tar.gz 1576163 BLAKE2B dd7cbaf3c918589afd6c452cf8c279f6efa563a32214478f5bf0896cbe3b11a5b626e7670d17cd7e83f4c20487c40d5717fbfdd62b1ce6ef120780f28903bfb8 SHA512 11ef51b7e8abe8f5b1728ee072217605456e11e56bd0abc5375820c1a0e30ea1a6f0a306e65a40c1cdda3394486b51e2d67cc9081113dbc570b6d9d835f5890f
-DIST mxml-4.0.5.tgz 1572200 BLAKE2B 54e1149b715a39a8f68dc9f5b3b58c6f82355d675496cb815bc9ef56b63ade6ccceca6579b6d2c81238ab55849c63f596a16ee0f2caf4e48c5546f7ff06262ce SHA512 2ff971d29d13da899615059f9ba54e1003562e94519bdb8ab445796f8de2eb34fd40613dc6432b9434c9181aed9d6bdcfe39f7534d1b96e42eb82568a258db9f
-DIST mxml-4.0.5.tgz.sig 566 BLAKE2B d40274df4d80ea077c56c062362048cd58a95018580ca95918fc140bcb693c867a6eaf46d9e2bac38298515058395b20a3efa69ad931badbbf995212095e8964 SHA512 86770adfd1c7054c0b33ed1e4f065cb1bba0ff497d2f30cbceee476d47b683d2b363a6ee75583d218184a8beb416f7e3295455f806e0fba56cd26513d9186a63
+DIST mxml-4.0.6.tar.gz 1572941 BLAKE2B e65400cd51a329ba829a60ba658db215b4e5d0ebbd3f8603471b924f308a3b1322c47900bc625a5a1e2525afc96a9c7dc8ffa3294b9058d70c190afd85ee1c89 SHA512 3c2c7569e0cfc133e7511f071e57d11217ead4eb3f85bfedc8cc289b1cbdba82fecdc0cb7fa3c72f5084be1b6126dc86b36a307ceb2612c6fdc36475a63babc4
+DIST mxml-4.0.6.tar.gz.sig 566 BLAKE2B b23de1a0dbc7440e22ed501beb293ec62259fcffa5c745ac249c310c948a75293a6a10f0dfe1ec044295c6552bced28a5e758aec140b8b5f2308eee982aa9511 SHA512 ed20aaeadf0d482989666356ae7798a2f3ea6abfaa4edf665885402893df34c44ee442bc959cac49e1de58586957256a441e99c29b4eb82637106c2147c1d59e
diff --git a/dev-libs/mxml/mxml-4.0.5.ebuild b/dev-libs/mxml/mxml-4.0.5.ebuild
deleted file mode 100644
index be1e79294aa3..000000000000
--- a/dev-libs/mxml/mxml-4.0.5.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
-
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/michaelrsweet.asc
-inherit autotools toolchain-funcs verify-sig
-
-DESCRIPTION="A small XML parsing library that you can use to read XML data files or strings"
-HOMEPAGE="
- https://github.com/michaelrsweet/mxml
- https://www.msweet.org/mxml/
-"
-# Drop rename after 4.0.5
-SRC_URI="
- https://github.com/michaelrsweet/mxml/releases/download/v${PV}/${P}.tar.gz -> ${P}.tgz
- verify-sig? ( https://github.com/michaelrsweet/mxml/releases/download/v${PV}/${P}.tar.gz.sig -> ${P}.tgz.sig )
-"
-
-LICENSE="Mini-XML"
-SLOT="4"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="static-libs test threads"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- virtual/pkgconfig
- verify-sig? ( sec-keys/openpgp-keys-michaelrsweet )
-"
-
-src_prepare() {
- default
-
- # Don't hardcode FORTIFY_SOURCE
- sed -e 's/-D_FORTIFY_SOURCE=3//g' -i configure || die
- sed -e 's/-D_FORTIFY_SOURCE=3//g' -i configure.ac || die
-
- # Don't run always tests
- # Enable verbose compiling
- sed -e '/ALLTARGETS/s/testmxml//g' -e '/.SILENT:/d' -i Makefile.in || die
- eautoconf
-}
-
-src_configure() {
- local myeconfargs=(
- AR="$(tc-getAR)"
- $(use_enable static-libs static)
- $(use_enable threads)
- --with-docdir=/usr/share/doc/"${PF}"
- --with-dsoflags="${LDFLAGS}"
- --with-ldflags="${LDFLAGS}"
-
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_compile() {
- default
- use test && emake testmxml
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- emake DSTROOT="${ED}" install
-}
diff --git a/dev-libs/mxml/mxml-4.0.5-r1.ebuild b/dev-libs/mxml/mxml-4.0.6.ebuild
index 18fd7b410e89..834487ff12c9 100644
--- a/dev-libs/mxml/mxml-4.0.5-r1.ebuild
+++ b/dev-libs/mxml/mxml-4.0.6.ebuild
@@ -11,10 +11,9 @@ HOMEPAGE="
https://github.com/michaelrsweet/mxml
https://www.msweet.org/mxml/
"
-# Drop rename after 4.0.5
SRC_URI="
- https://github.com/michaelrsweet/mxml/releases/download/v${PV}/${P}.tar.gz -> ${P}.tgz
- verify-sig? ( https://github.com/michaelrsweet/mxml/releases/download/v${PV}/${P}.tar.gz.sig -> ${P}.tgz.sig )
+ https://github.com/michaelrsweet/mxml/releases/download/v${PV}/${P}.tar.gz
+ verify-sig? ( https://github.com/michaelrsweet/mxml/releases/download/v${PV}/${P}.tar.gz.sig )
"
LICENSE="Mini-XML"
diff --git a/dev-libs/plasma-wayland-protocols/plasma-wayland-protocols-1.23.0.ebuild b/dev-libs/plasma-wayland-protocols/plasma-wayland-protocols-1.23.0.ebuild
index 642cd7cbee7e..20a03b3ea608 100644
--- a/dev-libs/plasma-wayland-protocols/plasma-wayland-protocols-1.23.0.ebuild
+++ b/dev-libs/plasma-wayland-protocols/plasma-wayland-protocols-1.23.0.ebuild
@@ -10,7 +10,7 @@ HOMEPAGE="https://invent.kde.org/libraries/plasma-wayland-protocols"
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv ~x86"
fi
LICENSE="LGPL-2.1"
diff --git a/dev-libs/qtkeychain/qtkeychain-0.17.0-r2.ebuild b/dev-libs/qtkeychain/qtkeychain-0.17.0-r2.ebuild
index bcf9078f39a1..6df47cf727dc 100644
--- a/dev-libs/qtkeychain/qtkeychain-0.17.0-r2.ebuild
+++ b/dev-libs/qtkeychain/qtkeychain-0.17.0-r2.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://github.com/frankosterfeld/qtkeychain"
if [[ ${PV} != *9999* ]]; then
SRC_URI="https://github.com/frankosterfeld/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
else
inherit git-r3
EGIT_REPO_URI="https://github.com/frankosterfeld/${PN}.git"
diff --git a/dev-libs/spdlog/spdlog-1.17.0.ebuild b/dev-libs/spdlog/spdlog-1.17.0.ebuild
index 8fc6bdb5a855..66768a76b018 100644
--- a/dev-libs/spdlog/spdlog-1.17.0.ebuild
+++ b/dev-libs/spdlog/spdlog-1.17.0.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://github.com/gabime/${PN}"
else
SRC_URI="https://github.com/gabime/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
fi
LICENSE="MIT"
diff --git a/dev-libs/tree-sitter/tree-sitter-0.27.0.ebuild b/dev-libs/tree-sitter/tree-sitter-0.27.0.ebuild
index 3abf2d9fb7d4..dd1667f5a0d1 100644
--- a/dev-libs/tree-sitter/tree-sitter-0.27.0.ebuild
+++ b/dev-libs/tree-sitter/tree-sitter-0.27.0.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/${PN}/${PN}"
else
SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
fi
LICENSE="MIT"
diff --git a/dev-lua/lgi/lgi-0.9.2_p20260407.ebuild b/dev-lua/lgi/lgi-0.9.2_p20260407.ebuild
index f6bbeb3f36fd..005f93b4fb67 100644
--- a/dev-lua/lgi/lgi-0.9.2_p20260407.ebuild
+++ b/dev-lua/lgi/lgi-0.9.2_p20260407.ebuild
@@ -19,7 +19,7 @@ fi
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~loong ppc ppc64 ~riscv x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv x86"
IUSE="test"
RESTRICT="!test? ( test )"
REQUIRED_USE="${LUA_REQUIRED_USE}"
diff --git a/dev-lua/luaposix/Manifest b/dev-lua/luaposix/Manifest
index 0b8ac8a3de65..6540481a4735 100644
--- a/dev-lua/luaposix/Manifest
+++ b/dev-lua/luaposix/Manifest
@@ -1 +1,2 @@
DIST luaposix-36.3.tar.gz 189299 BLAKE2B 2d19844499dd48e71cd86216ee5bc27857a5d96586722f8395c7558c54c95a65c5675df6fe5c150f6d096b582a9cc1d3834a0731c9b865bbb66add9983006b30 SHA512 a2ad040089e2d334fe3e73ee1fb4cc741287e180962f54c0fbf9f74a0b4fd648eabef85f1d3260d904e1ba7072cdc3388d08c868da81c79f5a446004db92b7ef
+DIST luaposix-37.0.tar.gz 190641 BLAKE2B 8bcacb121dc92916c0fe92e33a58d6600f8aedcc21d7c64b7df73ccfe0a515d181ac6a523b0849a06ebba55264019431a2d0db391044c8ab359e3e397853220d SHA512 97cf2e808a3d7d97ccb18d0f3a053ccce8628b32e8830ab2080521eab923b7339e7d4b0f57a67838f9aef645c9e38ebca5f0419bc21c961fcc640d8286414080
diff --git a/dev-lua/luaposix/luaposix-37.0.ebuild b/dev-lua/luaposix/luaposix-37.0.ebuild
new file mode 100644
index 000000000000..ac9d58438b26
--- /dev/null
+++ b/dev-lua/luaposix/luaposix-37.0.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+
+inherit lua toolchain-funcs
+
+DESCRIPTION="Bindings for POSIX APIs"
+HOMEPAGE="https://luaposix.github.io/luaposix/ https://github.com/luaposix/luaposix"
+SRC_URI="https://github.com/luaposix/luaposix/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="doc"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+# Requires specl, which is not in the tree yet
+RESTRICT="test"
+
+DEPEND="${LUA_DEPS}
+ virtual/libcrypt:=
+"
+RDEPEND="${DEPEND}
+ lua_targets_lua5-1? ( dev-lua/lua-bit32[lua_targets_lua5-1(-)] )
+ lua_targets_luajit? ( dev-lua/lua-bit32[lua_targets_luajit(-)] )
+"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+ lua_copy_sources
+}
+
+lua_src_compile() {
+ pushd "${BUILD_DIR}" || die
+
+ # LDOC=true means disable ldoc update documentation
+ ./build-aux/luke --verbose package="${PN}" version="${PV}" \
+ LDOC=true \
+ PREFIX="${ED}/usr" \
+ INST_LIBDIR="${ED}/$(lua_get_cmod_dir)" \
+ INST_LUADIR="${ED}/$(lua_get_lmod_dir)" \
+ LUA_INCDIR="${EPREFIX}/$(lua_get_include_dir)" \
+ CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" || die
+
+ popd || die
+}
+
+src_compile() {
+ lua_foreach_impl lua_src_compile
+}
+
+lua_src_install() {
+ pushd "${BUILD_DIR}" || die
+
+ ./build-aux/luke install \
+ LDOC=true \
+ PREFIX="${ED}/usr" \
+ INST_LIBDIR="${ED}/$(lua_get_cmod_dir)" \
+ INST_LUADIR="${ED}/$(lua_get_lmod_dir)" \
+ || die
+
+ popd || die
+}
+
+src_install() {
+ lua_foreach_impl lua_src_install
+ dodoc {NEWS,README}.md
+ use doc && dodoc -r doc
+}
diff --git a/dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild
index 91308dd72ec1..9ec92c2adc6a 100644
--- a/dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild
+++ b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.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
@@ -18,10 +18,11 @@ SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="ocamlopt test"
+# <cryptokit-1.21, bug #971205
RDEPEND="
<dev-lang/ocaml-5.4
dev-ml/ocurl:=[ocamlopt?]
- dev-ml/cryptokit:=[ocamlopt?]
+ <dev-ml/cryptokit-1.21:=[ocamlopt?]
dev-ml/yojson:=[ocamlopt?]
dev-ml/camlp-streams:=[ocamlopt?]
"
diff --git a/dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild
index d2f82ac6ce27..4814395c4607 100644
--- a/dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild
+++ b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.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
@@ -18,9 +18,10 @@ SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="ocamlopt test"
+# <cryptokit-1.21, bug #971205
RDEPEND="
dev-ml/ocurl:=[ocamlopt?]
- dev-ml/cryptokit:=[ocamlopt?]
+ <dev-ml/cryptokit-1.21:=[ocamlopt?]
dev-ml/yojson:=[ocamlopt?]
dev-ml/camlp-streams:=[ocamlopt?]
"
diff --git a/dev-python/aioquic/Manifest b/dev-python/aioquic/Manifest
index 234549c249a1..2964a24f5c51 100644
--- a/dev-python/aioquic/Manifest
+++ b/dev-python/aioquic/Manifest
@@ -1,3 +1,4 @@
DIST aioquic-1.2.0.tar.gz 179891 BLAKE2B fcf7821a93c166c98cdb7e6e2eb3b80df65c1faa484268faa0fc1386bb59bdfffdf801a8de23c2a2d9dec826640ad75717b068b558081959089e9be7d414bca3 SHA512 6833a19e52ac702a3ae12fdfa3dcd3011125e38d9c16ae88881533f6c607d61c6eac43215eae80c75513d616432a98d124fc92545d63697159658e611af50ee9
DIST aioquic-1.3.0.tar.gz 181923 BLAKE2B cc15af13fc83510f041b8be53b8a19f6f9f95dfa0374d2cee8194350b72a160f1d885ae1ea4846fc46ea5b6cb6d3ec09315a130e4226db9d466e3f7b71650baf SHA512 149d46d5c3b7db26edb418569bec224f2e4c2ce419a0374a9241ea570d70cd09f0230c1fe5fd5ee73e1ff84adac41ab48dd15aa2f48d1b3b6c8caaa34b70c8fd
DIST aioquic-1.4.0.tar.gz 184137 BLAKE2B 59cc3db143b01e8c1b0eabc5c54d10d27d735debe642f87c485f10d3421d018af5b35856f6eca12f6a5675a37a6d08ed4076fca0be64884879906e90d2f1ab60 SHA512 ff0cdaa44d74759bcc785e30529a737b967ca614dbbe7cb33735d9ca02d649c33d47f2d1f4a6ab4049f956c5f29196ac8bbd012e5af7a5ff6e4377d5a2a0c44a
+DIST aioquic-1.5.0.tar.gz 189228 BLAKE2B 38784efabb5e922057f90a8291ea9bb006020b6d2f7a6dd6e70f8b6d4cad4a347b5ffcb30b88e684d25f37949d3034063ebb9b3fc9b19d7cf09b6ed6ed5b975d SHA512 705153dc22060c240fea8c54f5dd9574ff8f0802e5794a954f79297017f2a6be23f083287f879d7bce2a328b262992a056ad6c681487ea4cc9e2f2486bde6c97
diff --git a/dev-python/aioquic/aioquic-1.5.0.ebuild b/dev-python/aioquic/aioquic-1.5.0.ebuild
new file mode 100644
index 000000000000..7f72fd414139
--- /dev/null
+++ b/dev-python/aioquic/aioquic-1.5.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="An implementation of QUIC and HTTP/3"
+HOMEPAGE="
+ https://github.com/aiortc/aioquic/
+ https://pypi.org/project/aioquic/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+DEPEND="
+ dev-libs/openssl:=
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/certifi[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-43.0.0[${PYTHON_USEDEP}]
+ =dev-python/pylsqpack-1*[${PYTHON_USEDEP}]
+ >=dev-python/pyopenssl-24[${PYTHON_USEDEP}]
+ >=dev-python/service-identity-24.1.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
diff --git a/dev-python/beartype/Manifest b/dev-python/beartype/Manifest
index e89831d9fdac..1bbf7cb9d1c4 100644
--- a/dev-python/beartype/Manifest
+++ b/dev-python/beartype/Manifest
@@ -2,3 +2,5 @@ DIST beartype-0.22.9.tar.gz 1608866 BLAKE2B a53a4b8565b0ed3773b52128752bb83a1b69
DIST beartype-0.22.9.tar.gz.provenance 9418 BLAKE2B 684ce17710a9dc33fd8fa6982fbf4b5836f0411191c61c340199ab392ddab2d672f0c71c6a63cd65042bf85562b7e4427ef2084ea99e54ce3ada66a6fa009b31 SHA512 3488aa8a3c0fb680ddf67042b83304009c5a70d9bb667cd5dccee4c4b8c9d4180dd9ae85b9a81510519e4729b20f46e9da6ef729ca99ddc62ea460699d72c499
DIST beartype-0.23.0.tar.gz 1992744 BLAKE2B 2a49e37ff9f3790a88da767f10d85f41533c087d972d1a333e252eeb0914741d1231e392f8d69e53f6f2dec5ac363bc1646e8a0e22be99e7d578d3a535773d20 SHA512 d1bca602a5ee498c1df2cfc74c01eca2d9df01cc75296012dd0d22ec1fc83495c3dea8b7c810e81de87d35cabe1f9b9ebf3d5f3c5d550e69fedb6f9d376c70de
DIST beartype-0.23.0.tar.gz.provenance 9712 BLAKE2B 2d398242c9b7b97c2d21427bffc4b7b94bf1cd0c05a3ce5b209d89ef6d13396ffd6c203b33600842706a7bd1252c70edc9d318e5a5c7ea5a3a5066b1d887fc09 SHA512 e2f687bca85053ae3bec36b3974ef9ed80e1e09dd98b25aece5c9f83f8525d909352ecb1ac5641ce8de2ac372dabfb76cede721cf9fe9f5d22cf84cb1ed1c8df
+DIST beartype-0.23.1.tar.gz 1993714 BLAKE2B 8f33e1bab16430638f8398effee9ffae0843c5fabe9cdeb5558af7197fba3aaf226d0be2e5dce70b11b9ff68720f36258c42e5aa78efb2fbb4f195ef0cfcc0ca SHA512 a523cf31ef7a442f0bd700193a257bdbd2dfc0eefc1ae264ed1d7b92b0b021969e794963320e69ad5a7598a709c41356613634c4655a92296266fe10bc2a87f6
+DIST beartype-0.23.1.tar.gz.provenance 9677 BLAKE2B fc31988e99cc9f67fdac94581d203fb54fc0dd0f5a8467916ecb4d6fd6322ae477a4e217f184ae83670811245ad0b320ad191af12cc8c4ea4a888434a269cbb4 SHA512 e45b039d68c4d40970fbeeccfb23602f1f740e3c8a074aea33b46cffe9624a9a78cee6c9d231556731547993a2b9d680f8f95dcbdce0272d2a5fbc6d52e3787f
diff --git a/dev-python/beartype/beartype-0.23.1.ebuild b/dev-python/beartype/beartype-0.23.1.ebuild
new file mode 100644
index 000000000000..42752fae45e1
--- /dev/null
+++ b/dev-python/beartype/beartype-0.23.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2022-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/beartype/beartype
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Unbearably fast runtime type checking in pure Python"
+HOMEPAGE="
+ https://pypi.org/project/beartype/
+ https://github.com/beartype/beartype/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+BDEPEND="
+ test? (
+ dev-python/click[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.22[${PYTHON_USEDEP}]
+ dev-python/mypy[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/redis[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/xarray[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # fragile performance test
+ beartype_test/a00_unit/a70_decor/test_decorwrapper.py::test_wrapper_fail_obj_large
+ # test for building docs, apparently broken too
+ beartype_test/a90_func/z90_lib/a00_sphinx
+ # poetry, also broken
+ beartype_test/a90_func/a50_external/test_poetry.py
+ # broken
+ beartype_test/a90_func/a90_pep/test_pep561_static.py::test_pep561_mypy
+)
diff --git a/dev-python/bitarray/Manifest b/dev-python/bitarray/Manifest
index 78f9d45cf908..51a2e68a6fdc 100644
--- a/dev-python/bitarray/Manifest
+++ b/dev-python/bitarray/Manifest
@@ -1,3 +1,4 @@
DIST bitarray-3.10.1.tar.gz 168648 BLAKE2B 12b22225a86c93db32dc70854c17a5046fd0ec2baa6686edea9c0cb795ce0714713c7c8f3964714d16a59ee8343636b68a0da4d54f35233df904d954b2e6f76a SHA512 330881a94c31f51501b9ab610b6567e6c347e17833cb882d7268281ee876da41bea7242ce061633eca8fd1a5826fedab7dba313aa896d4579335037b9a0afead
DIST bitarray-3.11.0.tar.gz 174911 BLAKE2B e9a2444607225488576e565046039ae5fa8787543ca6a3c75cd72fc28a49944168cc5cbdf0f573c32ba1387007dc665bbde7c11d260af3cc1fc85c1e3d7f77af SHA512 de61eff60c8534af4505046e99b1343d49e6a29f39bcd02693ad28a6ff03643c04103c2ab21c19d1515a9720721765a41a3acfb5c1452df44fb4561e8b79c691
DIST bitarray-3.12.0.tar.gz 186999 BLAKE2B 258cb651eb603b391f7713e6590122375cee85448f2d009c817602b4bdf2a56af2df3631d7f27cb51429008a2059e5349e9a7b4e8b103a8ab109db9f6f551d78 SHA512 36852e5dce353a640aff490064b0604effac3481c9ed9f32ba510f4bb2ed98b7fc9a06e3ea19a78fe838ea7a2177835d0376dfde7c5366452f73830d97194528
+DIST bitarray-3.12.1.tar.gz 187103 BLAKE2B f8d9d2c3959f2bfadfea5addbc176bf78feac812644d3508979784b841f6fb8af9bfac1b4781887421813dd45b895956c7a8e2917e089d0fe48fe953868e16b5 SHA512 83ac90d9d2b6422862b978847c8511e5c254e13e30909a4da199aab9c826ea0f3c17a7f6b816288b1880b48638d1ee597046d77b3cad624cd0e8b7765d28b1ce
diff --git a/dev-python/bitarray/bitarray-3.12.1.ebuild b/dev-python/bitarray/bitarray-3.12.1.ebuild
new file mode 100644
index 000000000000..c70a37e0f30b
--- /dev/null
+++ b/dev-python/bitarray/bitarray-3.12.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Efficient arrays of booleans -- C extension"
+HOMEPAGE="
+ https://github.com/ilanschnell/bitarray/
+ https://pypi.org/project/bitarray/
+"
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+python_test() {
+ "${EPYTHON}" bitarray/test_bitarray.py -v || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/bitstring/Manifest b/dev-python/bitstring/Manifest
index d63992109a84..723cc8d81b91 100644
--- a/dev-python/bitstring/Manifest
+++ b/dev-python/bitstring/Manifest
@@ -1 +1,2 @@
DIST bitstring-4.4.0.tar.gz 255209 BLAKE2B f060e2ac349cb5b8430b87d262f738b3c028e9246cc6f3e2e041bd35f23326d36b48b79f43b1dd3d8974997db941b6068f42f9b84f618ce82217187be8aaad9a SHA512 ee845ba43cf77f9e36fee1109b73a0f61c35a4f08fd5bcba38bc3be934b9405830f4666704d77811593302bfcdecc25403c1a455a3fdf9174b133be758a46ccc
+DIST bitstring-5.0.0.tar.gz 275582 BLAKE2B dd8f1396522ddbc90f827ec67bba19f27b5f6af2adf3ced9b92da3d27bbc62a9e9f53ed443ec6e99c7729a60c67083677e9ea418979290c9cc2bafe3be5c2735 SHA512 cba7ec77836faeb0fc832568826063b396ba9470a9b320ae7df8b0eb61e13c4359c481535336bc04b136c448aad2773cc712501734d4a1617fe05e6a65baae85
diff --git a/dev-python/bitstring/bitstring-5.0.0.ebuild b/dev-python/bitstring/bitstring-5.0.0.ebuild
new file mode 100644
index 000000000000..f3d84403ecce
--- /dev/null
+++ b/dev-python/bitstring/bitstring-5.0.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A pure Python module for creation and analysis of binary data"
+HOMEPAGE="
+ https://github.com/scott-griffiths/bitstring/
+ https://pypi.org/project/bitstring/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/gfloat-0.5.2[${PYTHON_USEDEP}]
+ >=dev-python/tibs-2.0.2[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=( hypothesis )
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ tests/test_benchmarks.py
+)
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # unpin dependencies
+ sed -i -e 's:, < [0-9.]*::' pyproject.toml || die
+}
diff --git a/dev-python/bracex/Manifest b/dev-python/bracex/Manifest
index c718d03363ea..42199b83d543 100644
--- a/dev-python/bracex/Manifest
+++ b/dev-python/bracex/Manifest
@@ -1,6 +1,4 @@
-DIST bracex-2.6.tar.gz 26642 BLAKE2B 283e73a59afb6f90a59c4fb11ba999a13284a2044817feed9af952564387e5caf7e2900bf4bc6ebcc5c9dfce803784d842d9ad0bda6abf8217f0891265a5f148 SHA512 2cd9967751a904d766a07817348727ae913c250b61696e75979c1873f5fe4ef0590a2b78998a784d847f3b6bbbd17b9d5d284b685f642df9f6504bf90233abc0
-DIST bracex-2.6.tar.gz.provenance 9192 BLAKE2B 5d528916e13c892df9d1e3b56132a6ff2092cf1f0653c6b1813ad50aa8775f99a1b7216e5f294f445ad0543ee315bd0b171460a04c8a1220c7fa09a45c40baea SHA512 8dd2fd4919d001f69198eaafb78de0f91d3f826cd88cb7ca57573d1e367893c21dda627cbd94cb5946a0001283065d5f1237e8b4266d7237f285980d31ae6ea6
-DIST bracex-2.7.tar.gz 42150 BLAKE2B 600124d6611f4592436b22bff66ea909d491526949fd0946b0e02b81ce887a999902945845bc0be7389b71a6428c9cb37665b9f97f729453177b03df960468f2 SHA512 b5deb52f0f552c0a3bc1910fa0826a5ae0b0b64e287d953df338d3946a82c215c06fd6bc2aa9fa5fc6532726b7e4db863b4059c6fb484543e5ab729b4d3d96e5
-DIST bracex-2.7.tar.gz.provenance 9839 BLAKE2B e03ba0fc9427ab6a1509abc0de758976dc9733817ca4e2e7038f53dbb7b4c744013982a7b28c481955d6a72f874f8b5636d38bfe38a12de486299a124dbd3789 SHA512 a1df0296f57fe2f43b56cb92ebc6fb10bdcf274db1743e054adc730a89d4d32f27f948c9a118285397341bc09a2ee36c110bf711d0e979cebf3ae4b1a0ed484f
DIST bracex-3.0.1.tar.gz 44019 BLAKE2B 12a8d7510c80e48b2461efbc85078aee51f0bf93b50394b3c451bc0e55f6e5e795035d7812a907f5e3e0251713bb334297416760e3371f5bf45112913bfab124 SHA512 7a8e408e6b4dc572f6899f12fce6ce039b7e61a614af4b7cc4b1b8056c9f4eb63b3f44dbc66103491ce1f25ae36f6287fc8357ec1aa2ff9acda3906fcb0cce30
DIST bracex-3.0.1.tar.gz.provenance 9626 BLAKE2B 24fee61e3b213b97bc72a053c8377ea82c397eb2e1361c639c040a68dc81e25a318e41c3699cfad9f9d8f7ba934f163c7bac5d2a78edbf5e54223b7924bd4daf SHA512 377c69a0f72fb83cfb74659b6c76c6a733f92b85174dd42952746e7e905a2b9d60e4ca8d76df126857d685de557daa6da192f50d1903124addf7bf48efa77861
+DIST bracex-3.1.tar.gz 29040 BLAKE2B 63c4440f9a4b2e374cf576c912b064240010d664be6bf578ea6b58110c2e4a72142693651fc0bbf692d9cc4caef23e192bdca6acbed0fab3e7e6c4d6a5d2ac5c SHA512 ea08acb29cabe0a0903af382b73c9e63ec02c4af6784728cd332949a0c19db44d1beef487455075f66b08599132ae3524d616b1646f41c39e86f9c691739a8c3
+DIST bracex-3.1.tar.gz.provenance 9559 BLAKE2B 784da80e4cc9a89a66dcbc3cfb6cc9482762c53598d60608c7d88f7332d17b87128b647f78d202a993eb98d9b7874fe23f5eb29b8293a4bd64bdb0a1401efbd8 SHA512 440ee763aa7b6ff243e48db7584faa2e7b73604b95354c19fa93bd72eec4b95f0b87da952b85b225ec0236f3ff281aa09921161a23a9101901d8f5092524745f
diff --git a/dev-python/bracex/bracex-2.7.ebuild b/dev-python/bracex/bracex-2.7.ebuild
deleted file mode 100644
index 832909d93257..000000000000
--- a/dev-python/bracex/bracex-2.7.ebuild
+++ /dev/null
@@ -1,29 +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/facelessuser/bracex
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Bash style brace expansion for Python"
-HOMEPAGE="
- https://github.com/facelessuser/bracex/
- https://pypi.org/project/bracex/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-BDEPEND="
- test? (
- dev-vcs/git
- )
-"
-
-EPYTEST_PLUGINS=()
-distutils_enable_tests pytest
diff --git a/dev-python/bracex/bracex-2.6.ebuild b/dev-python/bracex/bracex-3.1.ebuild
index 832909d93257..06fae3104a7d 100644
--- a/dev-python/bracex/bracex-2.6.ebuild
+++ b/dev-python/bracex/bracex-3.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
BDEPEND="
test? (
diff --git a/dev-python/filelock/Manifest b/dev-python/filelock/Manifest
index 792ddce073c2..cb6a9b1b910a 100644
--- a/dev-python/filelock/Manifest
+++ b/dev-python/filelock/Manifest
@@ -20,3 +20,5 @@ DIST filelock-4.0.9.tar.gz 251200 BLAKE2B 1190286a3407f940203b9beba059c744dd0e1c
DIST filelock-4.0.9.tar.gz.provenance 9790 BLAKE2B f047c65d86669e37d89d19e53e408d8f864b60b1a68802ffd44c44754a1760afffb1dc66763e98db3416358b3091d8ca2d7b88bdbf8e4f041f8411d499299501 SHA512 b31f2cb8d6dbd6058bae573a2a5f1338290f04cd4d6058a2f00c450f5a73e66bc0766f80b971736401bec399ebf8e6e3d75ca5e285e48e6511f54378c87fb8fd
DIST filelock-4.1.0.tar.gz 561277 BLAKE2B 4e8a7cc38da18ca61323a0c6fe6a733ed56843fca09f673abc2c616cc577838c33fbeedbef2ffc8556fad1bea7bed67893a3a9fdebf89baf18e0eccd41f95169 SHA512 c2126c4163b5d66c3842722e0c7edeb984a46921839a188f4ba1c3f01604c6ec8d517b4d5664734c6021a7ee2ee3dbdaaf4612f268ac57cdfe3dcb774bd2f37b
DIST filelock-4.1.0.tar.gz.provenance 9815 BLAKE2B edeae542d4fe299d180e674402fa07da3432893b1ec757267fea6a0b0589a18a03ed4de3180e2be71ae726c46d1163b49d51a7a437401bbc5269247a585fb4f0 SHA512 b96c082948fba515e3d14d0d14e90954b26da26da1235d5d09c858dac10e174f38c3959c8c2c843a9050b21fb1582fdaecd2faab8c9c88af4ef60839c670b4de
+DIST filelock-4.1.1.tar.gz 563430 BLAKE2B 6fc4121e54e9ace488526aae23fff5640a5999fa61d33805f7ce0c051426fa9bd5033ecfa376d7ab58cbe44b709d2f16c1a5953af7881394e7077cb799bb0ac9 SHA512 09744b4b68a124f358bfacd938034aab7ff8c7ff66c12a1a0aba3966c5534b473d83945ef85c6cd74811a702bf84e0336cc41e7e4d831bf767e9a50ed9ab3fa1
+DIST filelock-4.1.1.tar.gz.provenance 9627 BLAKE2B ccd2e9cf36f325dcc1e321dde825f9290e9d007bb7a1db9d872ab6ae40ff351a557f1debdcf655a4baef8be1aebe7912c34e2f78320490a636da7ba49d104f0b SHA512 e4bc59fbf1426c90868607ed7d4ab5b000438a6185ac5eec332cf07a45950d8ae4665b977486ffc0e3ee3530559183e652cf6227285fdb30fee4f10725691cc8
diff --git a/dev-python/filelock/filelock-4.1.1.ebuild b/dev-python/filelock/filelock-4.1.1.ebuild
new file mode 100644
index 000000000000..51d73c002e05
--- /dev/null
+++ b/dev-python/filelock/filelock-4.1.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2018-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/tox-dev/filelock
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A platform independent file lock for Python"
+HOMEPAGE="
+ https://github.com/tox-dev/filelock/
+ https://pypi.org/project/filelock/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-{asyncio,mock,timeout} )
+EPYTEST_RERUNS=5
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # TODO
+ tests/soft_rw/test_soft_rw_async.py::test_async_leaked_singleton_is_closed_on_teardown
+ tests/soft_rw/test_soft_rw_sync.py::test_leaked_acquired_singleton_is_closed_on_teardown
+)
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 458c31652b8f..24ead8eec37c 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -3,12 +3,12 @@ DIST crunchy-0.2.4.crate 3887 BLAKE2B f957597c82795eb10d43a6a98f7575e19b9484dcdf
DIST getrandom-0.3.4.crate 50932 BLAKE2B 34165a6994877aeaf3063affd48eb499512371a1fdc0d890feee598b5e22c14cb8347642a0e9374cd5d8a59a8281db839e45923769260312379321bef54c687d SHA512 43c44ec3ba0668f388519b2cefbee63f959f0e078730b3f7563742522e5f4b120472024b95fc94aeb90900a15d327c3573271bb26b2de4785e589a8bc1bc9da8
DIST half-2.7.1.crate 61040 BLAKE2B bd78abf71b1b0ae219d2293f8edd5084fa630150016c95786d0af38a898d2775ff73ce848c4b2bbf02c2ea2dc8a610b2e045df78892d2b1de28981e8033625a7 SHA512 f47cc8bfb4c754a8585d4e8eca1a35039dc0879e87e59acb72e91bf2d33eca8c4f8dd17b3a56e8953bcba62cb08122120866e9d4b3ab9f008847d86a5f81716d
DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
-DIST hypothesis-6.167.1.gh.tar.gz 9702396 BLAKE2B 484559752fe8b3047df0ecd53d2eab79dc90ad83e6f98fddf18aebee6cfcbb845786bfa87f78186715f4e34f84ee628769ab274bb90366841c7e92ee35af92a5 SHA512 e38edc39515d5fe682804377fc75bf0d06c1db4d585cd30f2fb4cc6e95b5ff0da8b5928e475a6653f1e37f12003d4a293967d34b09132dcbf84bc737fa24154d
DIST hypothesis-6.168.0.gh.tar.gz 9712003 BLAKE2B f6d77a8df01f8c385b4d0f23126503460f6c9a3e397a865481f0e02cfab5fe68450d3e2dfc5fac15e75ad03a08c03652e88bbd36996abb6fac7b200e50fc89b3 SHA512 38c38b042f3c7e0617a29b37681ef661dd30b6941f60699c809808474c74b1b6d25b533d32f68bd570837739217933d8e9faf2e89762acf8ef80450fa1f4731d
DIST hypothesis-6.168.1.gh.tar.gz 9712065 BLAKE2B 7aa61ef58f527641192ad366330a9f4e2f8cc7a761ff1d64cf15f084e648a7d426d8e728881324e9be36c6775cd8bf987c09dab4b424bf9344bdb1b6c22d80a1 SHA512 b187073d81fb787e7a547fa625d7513eeadad99351fcfe118d7e602c78c4233068169f0e5f1ed4ef5477c7d85231f6ef3ca8fdec4b4b1bdf71ef3e52592087e0
DIST hypothesis-6.168.2.gh.tar.gz 9712765 BLAKE2B d3fc44380250a737fd78e6dd4696486d2f7299cca721a93b01c4220d8fc5a6457e133439a46f9ed7f25cee1298ef34cf4370d4230ddb968452492d1bc7feef48 SHA512 6bdc2c52be103805509bdda870d5e1eb2686b12b7acf3ec02148ab300621271f803177aa4c434510022e586a283ad6a2129027ef59fb15b604f060a2422113ad
DIST hypothesis-6.168.4.gh.tar.gz 9712927 BLAKE2B 7eb0492041769b05668cbdc847c27dfbeecaf04238ce728cfc8c2d2dba83e906b96f6ea481ad63a2feb9858289bd274b58d4c28ca8da711cb4550d97ecd5aa86 SHA512 c3deeb889951ac216b0253d129c0b97baaa2a10ead9565b85c79e747c9732f1bf2c4becb2ee5766e38c91ec416df92aada3485641fd192ad063b24e059af9bff
DIST hypothesis-6.168.5.gh.tar.gz 9713032 BLAKE2B a6c90a5f65a551f6378e5d98b604f401fb795ff7f9c6a6c94d2789e69b4fc8435dce1338d807f1a85392335c8219956aa7af56bbf735e3499aba3587ae461c25 SHA512 2ccf3bcb0a2cbfb3073003e6c6df56c02a4745f1b4b94627732d1977c50642abf2ca41ad7808c218aa75d4dceff965b6c5de4d0dab836ddb55e82f0b32fe11fd
+DIST hypothesis-6.169.0.gh.tar.gz 9710358 BLAKE2B fb65497c921687a5e1a3b551528b38c2c96d1c1e2280770bf279d46005ae2baae8e9adb1d84f5cf7e17ea57972c96d57699f64140e94261b12fb6b473ac2260a SHA512 c42efd6d1c5345281babccca909d18cebb65c74a0c3aa7c03e7d6944f9004e752fd2e6f4f29cb581ea38577f40479387835627fbeeac3bf972014891665009f0
DIST libc-0.2.186.crate 821883 BLAKE2B ebe7aac5f8937a8064c64a0d4dc72e5fc794080e09b96c6d245bdec0fd9a19d49ab38e25306e22e47564764cf5dcde45855237cffc70230a143eca2626bd5c3c SHA512 6a58e671ec6811dff9a0d7d4db8f37d38bcbca9efff20dad4706190e5cdb77b426567754bcf0ef0f2d0c31d6506401f724f3ca500b9bed57bb8605b1141ed690
DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155
DIST portable-atomic-1.13.1.crate 197001 BLAKE2B 6d0898c2a537a9bf204b7749cca5f5fddf280772b56eb7ce8fdd9cf7d71561137b26ef89f415c40277a1c89981333eef78e5bb4624515a294ba28fdaeb4c70ea SHA512 2a1b31ac9814af884640b3398ab824a9795c72d260527a0966b193113808cfbb3345d50cd1beaebb45863437c3d06c8706d34b26efecceefc649319a4bc274a3
diff --git a/dev-python/hypothesis/hypothesis-6.167.1.ebuild b/dev-python/hypothesis/hypothesis-6.169.0.ebuild
index f1f3ea75a998..d6e8b8e38d1c 100644
--- a/dev-python/hypothesis/hypothesis-6.167.1.ebuild
+++ b/dev-python/hypothesis/hypothesis-6.169.0.ebuild
@@ -21,11 +21,11 @@ CRATES="
portable-atomic@1.13.1
ppv-lite86@0.2.21
proc-macro2@1.0.106
- pyo3-build-config@0.29.2
- pyo3-ffi@0.29.2
- pyo3-macros-backend@0.29.2
- pyo3-macros@0.29.2
- pyo3@0.29.2
+ pyo3-build-config@0.29.3
+ pyo3-ffi@0.29.3
+ pyo3-macros-backend@0.29.3
+ pyo3-macros@0.29.3
+ pyo3@0.29.3
quote@1.0.46
r-efi@5.3.0
rand@0.9.4
@@ -58,7 +58,7 @@ LICENSE="MPL-2.0"
# Dependent crate licenses
LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="cli"
RDEPEND="
diff --git a/dev-python/moto/Manifest b/dev-python/moto/Manifest
index a85f35b0d5ea..81f1ed4bb082 100644
--- a/dev-python/moto/Manifest
+++ b/dev-python/moto/Manifest
@@ -3,3 +3,5 @@ DIST moto-5.2.2.tar.gz 8678761 BLAKE2B e920f3b92f9b29e2c4390540e413865be10fa717f
DIST moto-5.2.2.tar.gz.provenance 9361 BLAKE2B 1aae6952ea53fa7a5adc795fdca15ae3b8c24eb4e80845db3bd9b8ac34d384bfb30d02efa69702d5eb34af8949f4b8e49bc84b3ce94328ffd81c6433e88f8a75 SHA512 5845f3eacbe22321c01122ec35d8e4e5ac093ec27a760bc87d7848394392f1f469b5271aad3580423557afcf8dda80ca870743683d792c0d66f6d1416ca5a92c
DIST moto-5.2.3.tar.gz 8785514 BLAKE2B f513836441c0977aca4711e8cefaee76cd6fa2707bcacba274dd0f74a693294e0ff13f454f891c13af5cf22b3024fe8bbb339ddb5f580b2dbf156332c2a857fe SHA512 1caa5a0d89c1c9bcc7844a4b850686d735283a728c0ac62eef074edef7ee235167d6adda372016b0e8523c89d6d6352d04ec6cbac4bee61e1346e09f8c6cc9d2
DIST moto-5.2.3.tar.gz.provenance 9445 BLAKE2B 7ea74599fa7891e5e3a44620d035c86cee59892f32db8317bb042e4266dd0f027dac4a6b88e5ba80635354107b3f6b156e034acbe78b5d9c36732e7bed4a914e SHA512 dcef66ca2c70990859a6b591d01bfdbf0f2a1055e996628041d33b80207624520b34a398cb55ab5ac545c33f91f2d5e5a363e8cc4bd972a4e68d924eb6efcb2b
+DIST moto-5.2.4.tar.gz 9228741 BLAKE2B e2ecb77bea9585326db7be3263a093a3a3c93f3f546e79090444464d37a709d43e47c80da85e5068b5c691dfdcaeaa02e8244809a29c44cd51a2bfc6e951cd0f SHA512 523ad0b553f4a408be35658b4949d4a17a862717c93544f8f0c01a62ef10d7dd012e80db3770c16ba9303f90ddc823cf4429540d5e6d342d2615f92e77203b58
+DIST moto-5.2.4.tar.gz.provenance 9349 BLAKE2B 24344d0a9af4d3d171b7e84fd38a5d732b3785ff18ee3a53ab403be86cf4d09546a5b287e79ba8bad5f10dc21de91b1d61930102c3f7bc797bc53db1a0477e2b SHA512 ff97230b0a14ebfe719787aa4eda9d0f5d37ed188699c7dd8fef036f6486c1ec65eb612ca20869e3aa5775aa605727357767e30b7e0ecb3887ebe18b0510739b
diff --git a/dev-python/moto/moto-5.2.4.ebuild b/dev-python/moto/moto-5.2.4.ebuild
new file mode 100644
index 000000000000..c4730448fef9
--- /dev/null
+++ b/dev-python/moto/moto-5.2.4.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_VERIFY_REPO=https://github.com/getmoto/moto
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi toolchain-funcs
+
+DESCRIPTION="Mock library for boto"
+HOMEPAGE="
+ https://github.com/getmoto/moto/
+ https://pypi.org/project/moto/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ >=dev-python/aws-xray-sdk-2.10.0[${PYTHON_USEDEP}]
+ dev-python/boto3[${PYTHON_USEDEP}]
+ >=dev-python/botocore-1.35.47[${PYTHON_USEDEP}]
+ >=dev-python/cfn-lint-0.40.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-35.0.0[${PYTHON_USEDEP}]
+ dev-python/cookies[${PYTHON_USEDEP}]
+ >=dev-python/docker-3.0.0[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/flask-cors[${PYTHON_USEDEP}]
+ >=dev-python/idna-2.5[${PYTHON_USEDEP}]
+ dev-python/jsonpath-ng[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/more-itertools[${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-3.0.7[${PYTHON_USEDEP}]
+ >=dev-python/openapi-spec-validator-0.5.0[${PYTHON_USEDEP}]
+ dev-python/pyaml[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}]
+ dev-python/python-jose[${PYTHON_USEDEP}]
+ >=dev-python/responses-0.25.6[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.5[${PYTHON_USEDEP}]
+ dev-python/sshpubkeys[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/xmltodict[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/zipp[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/antlr4-python3-runtime[${PYTHON_USEDEP}]
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/joserfc[${PYTHON_USEDEP}]
+ dev-python/pyotp[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_RERUNS=5
+: "${EPYTEST_TIMEOUT:=180}"
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ tests/test_dynamodb/test_dynamodb_import_table.py
+ # require py_partiql_parser
+ tests/test_dynamodb/test_dynamodb_statements.py
+ tests/test_s3/test_s3_select.py
+ # require graphql
+ tests/test_appsync/test_appsync_schema.py
+ # Internet
+ tests/test_core/test_request_passthrough.py::test_passthrough_calls_for_entire_service
+ tests/test_core/test_request_passthrough.py::test_passthrough_calls_for_specific_url
+ tests/test_core/test_request_passthrough.py::test_passthrough_calls_for_wildcard_urls
+ tests/test_firehose/test_firehose_put.py::test_put_record_http_destination
+ tests/test_firehose/test_firehose_put.py::test_put_record_batch_http_destination
+ # Appears to be internet issues with timing out
+ tests/test_s3/test_multiple_accounts_server.py::TestAccountIdResolution::test_with_custom_request_header
+ tests/test_s3/test_server.py::test_s3_server_post_cors_multiple_origins
+ )
+ local EPYTEST_IGNORE=(
+ # require joserfc
+ tests/test_cognitoidp/test_cognitoidp.py
+ )
+
+ if ! tc-has-64bit-time_t; then
+ einfo "time_t is smaller than 64 bits, will skip broken tests"
+ EPYTEST_DESELECT+=(
+ tests/test_acm/test_acm.py::test_request_certificate_with_optional_arguments
+ tests/test_s3/test_multiple_accounts_server.py::TestAccountIdResolution::test_with_custom_request_header
+ tests/test_s3/test_server.py::test_s3_server_post_cors_multiple_origins
+ )
+ EPYTEST_IGNORE+=(
+ tests/test_route53domains/test_route53domains_domain.py
+ )
+ fi
+
+ local -x TZ=UTC
+ local -x AWS_DEFAULT_REGION=us-east-1
+
+ # -o timeout_func_only=true: bad interaction with pytest-rerunfailures and pytest-timeout leads to a permanent hang otherwise
+ epytest -m 'not network and not requires_docker' -o timeout_func_only=true
+}
diff --git a/dev-python/patiencediff/Manifest b/dev-python/patiencediff/Manifest
index 6fe730f9820e..a018b393d089 100644
--- a/dev-python/patiencediff/Manifest
+++ b/dev-python/patiencediff/Manifest
@@ -4,6 +4,8 @@ DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051
DIST patiencediff-0.2.1.crate 21717 BLAKE2B 839dab29b4a5f830df1edc2eb9b46373e8adf6a2f2474b3cb7622899e5cad4de9d19d2b6ace3e6b44d3772a934c3469c85cdd9d2bb31d138f8a28edcd52e7ab3 SHA512 500b3f42a6fd936a3a2fa6b65f5ea0f6b8e37f50be5f002dd2ae76d2138765e45547a6aac68586ded2d5970609e5c2238ce0f5b2fb5b7396e7ca8914f0c1c2c1
DIST patiencediff-0.2.19.tar.gz 24536 BLAKE2B 7df2f59d1de7fb3b4d0c0a8f2a1acb08c7d43dc96fc23a2cd788641eae0079fa869c82a79a18a820419bc0db352f0de99f19d7e7270e51f1588baa22578045c4 SHA512 714dd4f1107d75070233ff545d026c075e3afafb91e86571ef8a1a27fe938a678716b660bbac1caaa708144e52de76414d36dd1987d5f09dfcf6d8ee7a8820ed
DIST patiencediff-0.2.19.tar.gz.provenance 10070 BLAKE2B 3093fc309254ad05b3b33304aac4217b11f6d152d4e07e906748b684a730003f415c31b33b037d7438337dcfe6f3cc1b0d4ab62a8d2025ef10ecbec763702288 SHA512 b45c71dbc773d3e3c381324f37511dbdc48219cccfd6909c8c162e40b35290d515f0ad4001dffeca786968126c816b038cbf4d1bddb4d8f5636ec4104857fe3e
+DIST patiencediff-1.0.0.tar.gz 24575 BLAKE2B 0dc4c27fbc4302e3f1b8eb4c09633b0dc877a4322f361fe71e8c728355bd7536b1f9efcabea3534a6ca690eae9811594e7e3b96bcb98a1fe20578612dd0ccdb4 SHA512 f1a5da1fc2d133e0168749ee4199a27e70912544fc3441015915b1979611e588ea910f9a44f76b17205b7136cf863261fa10a82ec29d93f7a102a743c61aed81
+DIST patiencediff-1.0.0.tar.gz.provenance 9909 BLAKE2B 0eb43459b98a91bdfc999328c7cacff200a3b9f552239df466faf82c1d5b9dab4dd5e006887ea8e104a6ef90afcec3a9316b00ba5c4afbba7c0ec2ae1bddd197 SHA512 168bd4d76461db66f504fc0c4dfa62ad2b5e52d46348fb5d0cd303e56c54260662c739b99f5f94d89ad3618a81787dad626d3dde07b75abae1e22507a8de3e50
DIST portable-atomic-1.13.1.crate 197001 BLAKE2B 6d0898c2a537a9bf204b7749cca5f5fddf280772b56eb7ce8fdd9cf7d71561137b26ef89f415c40277a1c89981333eef78e5bb4624515a294ba28fdaeb4c70ea SHA512 2a1b31ac9814af884640b3398ab824a9795c72d260527a0966b193113808cfbb3345d50cd1beaebb45863437c3d06c8706d34b26efecceefc649319a4bc274a3
DIST proc-macro2-1.0.106.crate 59765 BLAKE2B 87f95795621c4c992c370dc3a1240a2d5580e3362356525efe640f8f26ad0492b3c88755d575c080ff7db11376b0d82f31141bf6f86c895249b85e46c081220f SHA512 b726e2c92af434bfa88cd4f53c3fe6db647503567675fb439890dee3d15f5111137e3242b28d164114ce081c10acf3fd11950753ddb349190c87ee04e7d97744
DIST pyo3-0.29.0.crate 1241253 BLAKE2B 29deb7fa70010bf3d7e9e93bbcd87c0b56c4ee7ef0c2e5956181d2fb5f06f4c9b3f28bd1ad280126c26c048808b91b847e1fb69ddd617ef9e9e5e004cf4e48ae SHA512 e6822400de53ebcef4a14c899dc065abae621a126483873139f5eb850877c94f4bccee3a183d4e2a69eadcd3c3b82b0a6f3e1053d926b103be572329607f2f67
diff --git a/dev-python/patiencediff/patiencediff-1.0.0.ebuild b/dev-python/patiencediff/patiencediff-1.0.0.ebuild
new file mode 100644
index 000000000000..852641dae8a1
--- /dev/null
+++ b/dev-python/patiencediff/patiencediff-1.0.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYPI_VERIFY_REPO=https://github.com/breezy-team/patiencediff
+PYTHON_COMPAT=( python3_{13..14} )
+
+RUST_MIN_VER="1.83.0"
+CRATES="
+ heck@0.5.0
+ libc@0.2.186
+ once_cell@1.21.4
+ patiencediff@0.2.1
+ portable-atomic@1.13.1
+ proc-macro2@1.0.106
+ pyo3-build-config@0.29.0
+ pyo3-ffi@0.29.0
+ pyo3-macros-backend@0.29.0
+ pyo3-macros@0.29.0
+ pyo3@0.29.0
+ quote@1.0.45
+ syn@2.0.117
+ target-lexicon@0.13.5
+ unicode-ident@1.0.24
+"
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Python implementation of the patiencediff algorithm"
+HOMEPAGE="
+ https://github.com/breezy-team/patiencediff/
+ https://pypi.org/project/patiencediff/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="GPL-2+"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions GPL-2+ Unicode-3.0
+ || ( Apache-2.0 MIT )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+BDEPEND="
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/patiencediff/_patiencediff_rs.*.so"
+
+src_unpack() {
+ pypi_src_unpack
+ cargo_crate_unpack
+ cargo_gen_config
+}
+
+src_configure() {
+ # makes extension builds fatal
+ export CIBUILDWHEEL=1
+}
+
+python_test() {
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+ eunittest
+}
diff --git a/dev-python/pikepdf/Manifest b/dev-python/pikepdf/Manifest
index 34de8268c19c..8890fd5a1b12 100644
--- a/dev-python/pikepdf/Manifest
+++ b/dev-python/pikepdf/Manifest
@@ -8,6 +8,8 @@ DIST pikepdf-10.15.0.tar.gz 9921227 BLAKE2B ff09f24c7eb0f0f4dafe7f18a91e710a7926
DIST pikepdf-10.15.0.tar.gz.provenance 9820 BLAKE2B 7133a3081323515f3500c29791210ecb7a38202273a70acbd74b43c658fde0102e8eaad4bed7dff0aa52217ae136e0f5ae5a517136847c4b29bcd656fabea310 SHA512 360d88b434fbfcfbda5ece411528749a3d330fa70f3ce10eb305bd4c062d019f6191caf5a5f03b7087d6bca83494647f213822aef554ff96e0e9733465516502
DIST pikepdf-10.16.0.tar.gz 9924107 BLAKE2B 3abfd6860cb737ef8655b3c960e38bc37c8573a57bf16b46f130c7b5234b8019de1b38a06a57ebe73769fb4d2f0eabb53427d02a004c7b44093ff7d23ffe8b6f SHA512 f7303b52e36315caa160e5a34fb95c3de4820cbcee8767d5a94a0ab7c0a8fbb53e7af6e7254ad682bd1ded45b287dd402a67af2f9c03513dce651b792e90e4e4
DIST pikepdf-10.16.0.tar.gz.provenance 9773 BLAKE2B ec3bfec47680bd4ffd079ba7499a597e0b9275f9b7d44695e5896f39cbec15ac41e6ac99b6c02f28f81c202b38f0dac4459680660609f91d4d967a3f3f92d604 SHA512 789a4503ae4566f432e365e0c5cf8f386567fa564b752dc0a41a52f00ae5ebf52f1be859dbf4e11ed3c837443310bff421dbfc08e32d1275eb54a6c6fc3e50e7
+DIST pikepdf-10.17.0.tar.gz 9973818 BLAKE2B 4edd47ac2aa156caf2fdd3561a854a5e4eced4921cff5a48b28c0f7846295b66c80a2c6f075f4d94369b3aca8868a92a63b2ee79e72361007fa98c9b7b0efc5f SHA512 613fc3c04309fbf4b9d6adfbe69327cda7a10d72dac51d001b3d009ea453464dba9b2f5c68705706d3bef2f383d8fbb363a097a5bbba3a761cc1750765ab9cfa
+DIST pikepdf-10.17.0.tar.gz.provenance 9567 BLAKE2B b101e05855eefb060ea075eec1bdc1469d49f40d2c76a2203e400a537ee947d4a83952afb2fbab7c3443b2ff744bb5a315bcd6b86fca56dd13da8a2f55bb4210 SHA512 c7013c6c1fe61e748c2a21a66566793e387b330e8550cde31e3b9de5b4e908dae32abc9f39b1e3f2de5c4153aab2188166acb9c41ed2ab66d730a07b18a9ff37
DIST pikepdf-10.5.1.tar.gz 4582470 BLAKE2B 9a92e465f0972b289016786bba91fc322ed17cfba20c81f4f31aa9cdda65eab91f0203f668a713050d2d7551625f0d94cf6d4f16077e3cc44df3bc27d6c24da7 SHA512 a99abea6f54fe9f813e1fe6c0052d9e40537c7605c6e7f3a930cfb2dd59cd3eeb2c40afc5f0ad98aac7a76e692c842f0577e8188a6319a07e9461a3ac9c2cb73
DIST pikepdf-10.5.1.tar.gz.provenance 9398 BLAKE2B a760b31f221da8c04c350adf36a52a8664cfcd5ca74fdcaed26fa38f6a9b7ed57fb1e58eff525c8f03e3d8aa3924b6e82bfb759d7746db841cf0747e4428c482 SHA512 06357efef746dc2b316cf603e7c435ae4b9a1b354f895afc835877e7d7e95887a22e69261b1c6c345ebaee86f14a11f075991e714c4b6861547482719d71f906
DIST pikepdf-10.7.3.tar.gz 23669571 BLAKE2B 837ba311d77a1da30e83afad86c6911500766b5c006ebbdd346a15efbceba0107083e572d79ff836534d071912000907d61a60e95dccb9a45d6e205aa65d228b SHA512 7b9c1e15a792e6c01bde0d9bee342f1be9023081b2b43e44e6d7ab37485db5b3542d9813344e9b24e3f8ceea17a5cb75e25af1943ab738a54f362f52e05cc6f7
diff --git a/dev-python/pikepdf/pikepdf-10.17.0.ebuild b/dev-python/pikepdf/pikepdf-10.17.0.ebuild
new file mode 100644
index 000000000000..be5c4a003487
--- /dev/null
+++ b/dev-python/pikepdf/pikepdf-10.17.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-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
+PYPI_VERIFY_REPO=https://github.com/pikepdf/pikepdf
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python library to work with pdf files based on qpdf"
+HOMEPAGE="
+ https://github.com/pikepdf/pikepdf/
+ https://pypi.org/project/pikepdf/
+"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="big-endian"
+
+# Check QPDF_MIN_VERSION in pyproject.toml on bumps, as well as
+# https://qpdf.readthedocs.io/en/stable/release-notes.html.
+DEPEND="
+ >=app-text/qpdf-12.4.2:0=
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/lxml-4.0[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/pillow-10.0.1[lcms,${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/nanobind-2.0[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-77.0.3[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/attrs-20.2.0[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.21.0[${PYTHON_USEDEP}]
+ >=dev-python/pillow-5.0.0[${PYTHON_USEDEP},jpeg,lcms,tiff]
+ >=dev-python/psutil-5.9[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}]
+ !big-endian? (
+ >=dev-python/python-xmp-toolkit-2.0.1[${PYTHON_USEDEP}]
+ )
+ media-libs/tiff[zlib]
+ )
+"
+
+EPYTEST_PLUGINS=( hypothesis pytest-timeout )
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ sed -e '/-n auto/d' -i pyproject.toml || die
+ # remove bundled qpdf
+ rm -rf qpdf || die
+}
diff --git a/dev-python/platformdirs/Manifest b/dev-python/platformdirs/Manifest
index e31ee2a2f67f..f650e8c1a5e2 100644
--- a/dev-python/platformdirs/Manifest
+++ b/dev-python/platformdirs/Manifest
@@ -4,8 +4,6 @@ DIST platformdirs-4.11.12.tar.gz 40016 BLAKE2B d8f5b81cdde33623e59b21c5309d357e5
DIST platformdirs-4.11.12.tar.gz.provenance 9617 BLAKE2B fd02ecf2e8bceb5f143d5184e8a242ddcce1b981af46f679de638714096c0e30ba8cc6040e594680a049c9ef5544e324503f95ddc372c885dda7365687a43491 SHA512 7b588b06856b2a61c83bc0607325befb42b95146db61ec34d6620dd07f93a74b07c9e055576271e40f4082383b009317707c39edef8eaa8b10480e62f49c1bfa
DIST platformdirs-4.11.15.tar.gz 46059 BLAKE2B 69da625f4bad69e17c1739c0f4133ff619671f0c592035c91b98b7fe88d6da2b9c6a98e11a52c1d6368f7a383da4c0ce32bbeaeb1e24a191533c6f8f1db00144 SHA512 0e8f7b7fa2fe817695e61a4df091346cf56e0493ab80abe0871df5c88be7a0e96f63f64451e8848da53e5bda7cd33296a1e8475f847a68c4798f59771fe0d855
DIST platformdirs-4.11.15.tar.gz.provenance 9958 BLAKE2B c85324fdb9dc97ab5d29503da0916a13f3416f31362466182d9bd62cb1f0ce5bb55a6b350ceec05e600e7fb3e5895222517e2cd84610ff4670bf350fcf8f18f4 SHA512 7a18eb7c497cd2af7ad0dd1903c5b482d05d814fade6e3aefbc6363056de78ec2607eb46c9a416d47a701e995ae3c784efbb3df3e3bcc09af795ff3a3c0707e3
-DIST platformdirs-4.11.7.tar.gz 35127 BLAKE2B 1cd3f4461c0f1c2c1c7ac62491d23a7d57ad14fb4f1a58f0ce78f72ea6fd9cc7ac2428dad2129a3ca70335377085a7854cd4d45ec229b178c65339377d3f439d SHA512 717cfe7407e3afcbd9a115d4a7758d8e70c96f7b26479c8d3144bc41aebe87852197b534a86c11c0c3ed01687955aacd049c656062fb3ca4e802476872a65197
-DIST platformdirs-4.11.7.tar.gz.provenance 9640 BLAKE2B 2cbc679cbcabea84ba9533d4aedd50a9339f2c727823dab79726aa8d005fb8a4e65995b65b6df3d9924290d4c8f9e3266a459353eb713509af967d4536fe0acd SHA512 814547814683965b3285c82b66747b7c712ef01ec92e90be5ef4b50d9bb0e103cbcdc848dd7b27c2aa95dccbb4f813c64bc3dd76cb51bc9ce69b518cf3540f18
DIST platformdirs-4.11.8.tar.gz 37182 BLAKE2B 223120ca204637bfa8b1f13182ea73aaf03d9d0abd6cba6a190e587fb9c3a7c27678ebe2893a662ada540e2de1fcd35e8bcd1b6caf52c0e8b0d696aeb522d6fd SHA512 eaca02bb4fd5526b68cd820cdddfbb2fc9a837d8a7c0f18afd2871b134738ec180406e9f886ad318b7c1812a751055f958756ccdd8942681fe78b0976c2f6eb5
DIST platformdirs-4.11.8.tar.gz.provenance 9930 BLAKE2B 3039cea46b90560c85320e0f6dfc5d851efb047df90b3596ea1144bc3e1f09355a355b992885571459d18d7bfd9035f30092efed476f2c1c11e0d3c5a109ac3b SHA512 ec6d06cdf399f660f639fc741839244094cc6028c037b9ab24e66cdda1e91aa2ee7819d5b02c4e3adfa651d4cd0cd37374da580bbf5424ef973719e2cfa48606
DIST platformdirs-4.12.0.tar.gz 58964 BLAKE2B df81467e591fd665e33ceaad67a5709eee8eb54e84d7246d23ccd2cc9e60f3b595721131389e041c5d752610d97fddd6d6ef6301447be0b6b0c02d19a27bb8fe SHA512 75429dabf2e94ae72394dc60431fbb63a1d9f1236cd9809e72992b18ca5d055e52cf64622f21dea829842732a9e8df95a06516ec2897c7db611837e16ca08401
@@ -18,3 +16,5 @@ DIST platformdirs-4.12.3.tar.gz 59538 BLAKE2B c70282025e61d0a46767b51bf731b5bd7e
DIST platformdirs-4.12.3.tar.gz.provenance 9636 BLAKE2B 45435c79304e89cf1d65a3ea2b9998fd31c40c662e8ba2f83b622d1f5d877f02a188c707129abccfcc249e2e37843fa1389c5b788b885377984777b08738902a SHA512 6e557d5014f9f1360a1d5459331e08779b9786e779fcc12d16d0ff5c632de65d5e0db9b485c5954e4bec52888bffb16570dc4a3bb0921b14474a21ea362dcc85
DIST platformdirs-4.12.4.tar.gz 60010 BLAKE2B fc3753f290a1d353b3faaf013a2b4d974e61cf81b063dd991749ef8a9d344d714e1fabb1f1f35bfda395c62364aa714b826e3b12b8c9578c60cbeb2ccd070b32 SHA512 161ff116ef13ed6c2948dd4827da0ad824772b66c68d88cbe44ea888ba7bb782db9d49711c506a5b106b19dce40ac27e437e9a5fab63697128e258a947863cd2
DIST platformdirs-4.12.4.tar.gz.provenance 9900 BLAKE2B e204a46f856a98e38643287554056231edd241294d45ef4e007b88edd6f789af2fbf6fe14a30cdb997141f86380618c2faabe8630724c97ffeec94a4644e2d3b SHA512 d7e8dd55b785ef2bf08c50490fddee1729d4bc38c02e37e6e4fdb984a96c2734e5d14da4faa795b28aa509c51377ba88ed8235bb188152196065e722257f7d80
+DIST platformdirs-4.13.0.tar.gz 61094 BLAKE2B b75cd5ec0567804dbd1d17c94c47f7d0a42cfae31f26b57a279e3a620a7dd200a323eac14d71d896f808a5cfa855626a0034f6b40e6c005f6e31314a39b1fc13 SHA512 98aae5c205a61e707921f8635d80dd866324aec91ef17f15adf3cf65660ed9e83f11d51edf7187d98e51ee535d0843a7268da225196fe6e5de2c297f170cd429
+DIST platformdirs-4.13.0.tar.gz.provenance 9853 BLAKE2B 8979b27b8cc88bbb93ba3b4724ef8b48589cc63b358985174080e034509219b729c18bb6e338ff9dd0b398627572bf88b3fbf80814ba0269c91e4dfc76964a4c SHA512 466c7045f45c6e54a39fb00898e10a7f9d2d1c4ff57549cd41c9d42a2d01b356f9c925cca5ec6698e218683dc218f04a8491d0e2cf808c08ff57d551257527ab
diff --git a/dev-python/platformdirs/platformdirs-4.11.7.ebuild b/dev-python/platformdirs/platformdirs-4.13.0.ebuild
index efc02002085f..64fa02613d59 100644
--- a/dev-python/platformdirs/platformdirs-4.11.7.ebuild
+++ b/dev-python/platformdirs/platformdirs-4.13.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~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"
BDEPEND="
test? (
@@ -48,3 +48,15 @@ src_configure() {
__version_tuple__ = version_tuple = (${PV//./, })
EOF
}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # failing on -Werror, because upstream doesn't bother using
+ # new pytest
+ tests/test_pytest_plugin.py::test_import_before_pytest_main
+ )
+
+ # have to disable removing tmp_paths since upstream mocks are
+ # incomplete and break teardown
+ epytest -p platformdirs.pytest_plugin -o tmp_path_retention_policy=all
+}
diff --git a/dev-python/pycryptodome/Manifest b/dev-python/pycryptodome/Manifest
index c31616dc83f5..708add6eb371 100644
--- a/dev-python/pycryptodome/Manifest
+++ b/dev-python/pycryptodome/Manifest
@@ -1,2 +1,3 @@
DIST pycryptodome-3.23.0.gh.tar.gz 19732639 BLAKE2B 55ba3bea9d215dfd1f20262f9e333c78c126a7bb07b4f0ed795bb354a609082aea5ba1571fd29c76c716cfd7c74a6187509de7a8cc0e1eb03e27a2068c7aacb3 SHA512 564bad0257f50eaf9f4318c39bc224b79fe0051b4e2d6cff4c1070d2065cf9eb03bce661f9d21346414f9942bbc10a9f40e976eee104231718d1b9484fcbb022
DIST pycryptodome-3.24.0.gh.tar.gz 19738917 BLAKE2B 12bd670a7862d7e6f8e108cc56f8c11515556b06ea9333132527b50444451348dfceb61458e1a0455483886ee412f95ad386d1d2af5dc80280b72f9ba35c8c18 SHA512 091ddb8baa0ca5632b08e4acfb7ddc010ba2580be41a6e5bd8f6b040de0b369fb7e4fc8730b84332800618b15defc5d9a07a44939c2a76c10ac567b08484e6be
+DIST pycryptodome-3.24.1.gh.tar.gz 19739898 BLAKE2B 7db01c5bd78f14d61620272d6a15105e3c640b933263a4720d5d047c55a0bd57e984fc150f96469aa29b7947b0fb62dbbe3e199587d146b08f30af28d781600b SHA512 90df69c1f003d9a06391709e09d1cb3124053c4eb4a062cba01e6048c1fc07ba29db36b94dbafc6e5f7f6f173321b8e687358d8a3cca88921234e74f46c17c37
diff --git a/dev-python/pycryptodome/pycryptodome-3.24.1.ebuild b/dev-python/pycryptodome/pycryptodome-3.24.1.ebuild
new file mode 100644
index 000000000000..e2677a1156e5
--- /dev/null
+++ b/dev-python/pycryptodome/pycryptodome-3.24.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="A self-contained cryptographic library for Python"
+HOMEPAGE="
+ https://www.pycryptodome.org/
+ https://github.com/Legrandin/pycryptodome/
+ https://pypi.org/project/pycryptodome/
+"
+SRC_URI="
+ https://github.com/Legrandin/pycryptodome/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD-2 Unlicense"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ dev-libs/gmp:=
+ >=dev-libs/libtomcrypt-1.18.2-r1:=
+"
+BDEPEND="
+ $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*')
+"
+RDEPEND="
+ ${DEPEND}
+ ${BDEPEND}
+"
+
+PATCHES=(
+ "${FILESDIR}/pycryptodome-3.10.1-system-libtomcrypt.patch"
+)
+
+python_prepare_all() {
+ # make sure we're unbundling it correctly
+ rm -r src/libtom || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTHONPATH=${S}/test_vectors:${PYTHONPATH}
+ "${EPYTHON}" - <<-EOF || die
+ import sys
+ from Crypto import SelfTest
+ SelfTest.run(verbosity=2, stream=sys.stdout)
+ EOF
+
+ # TODO: run cmake tests from src/test?
+}
diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest
index 3d1b44716bc3..c07b0c61a53a 100644
--- a/dev-python/pydantic/Manifest
+++ b/dev-python/pydantic/Manifest
@@ -57,8 +57,11 @@ DIST pydantic-2.13.5.tar.gz 845750 BLAKE2B d9eede45bbbc759bb1039ec1fe69dced9d20e
DIST pydantic-2.13.5.tar.gz.provenance 9659 BLAKE2B abe19f7ff107cdfb6d6c534aec8a7a2e2ff2d77b495d56beac6bc35f731ed18e8551145d5e23c3926e69c2929fbff14c97891578e5702561afc2030eda2f8cb4 SHA512 ddf3e6087c331e10405ec7c0fd52583c4042f8dce566a74306c8f04f4ec36df6a48c81f7714d816fbc1a8fef28406ee9144a06d1dd3489e7ed8b143b0c923365
DIST pydantic-2.14.0.tar.gz 898613 BLAKE2B 003f6b6d303686fb30cd64be3c017e246e229bf10a156a9aaa93ecd98bc5aa315197c6883f4a112ec6057fb4aa9a08cc9a18cf779c094391c75a7f9302374b7a SHA512 05323fe3930410c47e98f87d1201a4f428d4e4853c05d174d5fd56925594062ec931d4752f8e7e2a827fbf76eebbbb8acf795597a3dd5a1ad5a0fb5764036023
DIST pydantic-2.14.0.tar.gz.provenance 9500 BLAKE2B c1473e60712a8d72927933583f3e95df0b34d06f2643828c8e33d4f6bc8d36d3b89dad98b1a2067989db1ddd9fe9463d7085affa051669c84cd2ee6c5bb59b90 SHA512 15173e04473881b29d5641d7df63ed8531ba9cee576089b10c90bb170f29489eb6c46145eedec283e03676ad64461c72974987b7490d3b050fe3448bb22a25c3
+DIST pydantic-2.14.1.tar.gz 900362 BLAKE2B 261b60d22ddcfff3876c99daae4f7fc6a61ec968c2d58315a4fa94d30132a795b527978be1c082841083aa8cc9670ec687af879ea1857aaa20f5f3de46d7ac7b SHA512 f5c0f0f856e4a9cb50482b4a9ec1366a11b16a996d480addec22738b07648cf97f33f44680cfea203ee7f773facfdc899b40d6096f65b56c615e30ce4dc6bd48
+DIST pydantic-2.14.1.tar.gz.provenance 9739 BLAKE2B 2f87a8ff71827e9e375ef03a80d6d366b739866be905a003e394419143103fc5959219bb6f92dbc451e5a44482006088413d04f2d6c26f742f7fdcf0ffe92e74 SHA512 7de220a74a8df7cbfad19fdef8971bef0e7abb990e619ba1ced202b3cc784a3b864b5a22af97de8ab1e11a8f9908fa10c580ea1c3e6b0009ea9e505ceb821475
DIST pydantic_core-2.46.5.tar.gz 472262 BLAKE2B 2f18c27ddcc2f84f3f97f228d72e17c1eb3e22f89513124488f1b0daca1bdf5a456fc1e2aefe046291f38ec6afe7d1fe6b5d158968466cb4af1241900bfe5281 SHA512 7af13f280d74ab0ded8e9299820930b0257502017f6a688d7d598e72351e127e178db11aeab987decaf95ca8619e151f244392ad9638ea184625728dcbb7cfff
DIST pydantic_core-2.50.0.tar.gz 513355 BLAKE2B eecf0692326afb88181fa3e93d65dd8bc415c9502dc4c6e9a2845473109f8b9c079c1e07af6cb7f59fc5800c28ce4fcc87b505b3e9daf9d94efa9450662fcbf8 SHA512 50967ffd2f1a438a458f7cc6226a85f034c6ad946b24dd509b8aa5d30e5c8b7ddc666cb28bcd2d9cf5fd9e5baddca785179b489b22665d7f6fd7fd0b4f377d83
+DIST pydantic_core-2.50.1.tar.gz 513515 BLAKE2B c2535ba27fb2152792c2b9593e9970eaa1184ab87bdbbcd39624e76d0ee2e9f0426c3772765383cd54597bf2c97781b9cb59fb43a280ca443a4dee9f246b076d SHA512 1287904873f36825beff3e7a76f8f897c95849ed55b4a95409964420265ba30dd85006e0b727da0dc3a877521fa79e700e20c4f8046da6649dd634d7615feda6
DIST pyo3-0.28.3.crate 1204476 BLAKE2B 8540a1c51bac4fbe04ea34d5ce38471c13d5a3f0759e60cf21d67e846b00feb8316e70f32cb8dc6b74d09f0901ffc83d5f41b1a06da6d34790ef13e4cefcad45 SHA512 f955957eec4b95cc9337d331bba3bba52b4754b301cf86cd974601e64eb20c2424023b19be89a224661fe2e185de646cd3d0d00705b6b5cbd139856c9443a247
DIST pyo3-0.29.2.crate 1255741 BLAKE2B 5187b7dc0f0b2b1441b451850f442a9cf7b8e65baab3c94996be80e39543350ce8739baccb2df0caae1049a4cf744274e4ca9a9d752887d09df5c03e380d42b0 SHA512 85326462a932fd49441f320a879192306a7a6f3a66468ca468fefdb3dff9a530b7895010f156c8c3b125279b94dd304b72825fd4bbdcaeba8e3a58bd8cdcc929
DIST pyo3-build-config-0.28.3.crate 35961 BLAKE2B 61a0101913c6d563721049ca99256c2aefd89b017a7e18c82f4a6aceca0aefeaa71fd559cd43adfb5034ce076c904e5188f8f73961ea217287fbfd12caab9401 SHA512 78f85696901b16540d42187d10e888bd929b9f23415faeb73f9798abda1af3506a308145dd4113b070521271c72624d7930fb4b19bad25aa1afd3082030c9126
diff --git a/dev-python/pydantic/pydantic-2.14.1.ebuild b/dev-python/pydantic/pydantic-2.14.1.ebuild
new file mode 100644
index 000000000000..372986ba345e
--- /dev/null
+++ b/dev-python/pydantic/pydantic-2.14.1.ebuild
@@ -0,0 +1,234 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=hatchling
+# no provenance for pydantic-core:
+# https://github.com/pydantic/pydantic-core/issues/1842
+PYPI_VERIFY_REPO=https://github.com/pydantic/pydantic
+PYTHON_COMPAT=( python3_{13..14} )
+
+PYDANTIC_CORE_PV=2.50.${PV##*.}
+RUST_MIN_VER="1.88.0"
+CRATES="
+ ahash@0.8.12
+ aho-corasick@1.1.3
+ autocfg@1.3.0
+ base64@0.23.1
+ bitflags@2.9.1
+ bitvec@1.0.1
+ bumpalo@3.19.0
+ cfg-if@1.0.0
+ displaydoc@0.2.5
+ enum_dispatch@0.3.13
+ foldhash@0.2.0
+ form_urlencoded@1.2.2
+ funty@2.0.0
+ getrandom@0.3.3
+ hashbrown@0.17.1
+ heck@0.5.0
+ hex@0.4.3
+ icu_collections@1.5.0
+ icu_locid@1.5.0
+ icu_locid_transform@1.5.0
+ icu_locid_transform_data@1.5.0
+ icu_normalizer@1.5.0
+ icu_normalizer_data@1.5.0
+ icu_properties@1.5.1
+ icu_properties_data@1.5.0
+ icu_provider@1.5.0
+ icu_provider_macros@1.5.0
+ idna@1.1.0
+ idna_adapter@1.2.0
+ itoa@1.0.11
+ jiter@0.16.0
+ js-sys@0.3.77
+ lexical-parse-float@1.0.5
+ lexical-parse-integer@1.0.5
+ lexical-util@1.0.6
+ libc@0.2.185
+ litemap@0.7.3
+ log@0.4.27
+ lru@0.18.5
+ memchr@2.7.4
+ num-bigint@0.4.6
+ num-integer@0.1.46
+ num-traits@0.2.19
+ once_cell@1.21.3
+ percent-encoding@2.3.2
+ portable-atomic@1.6.0
+ proc-macro2@1.0.107
+ pyo3-build-config@0.29.2
+ pyo3-ffi@0.29.2
+ pyo3-macros-backend@0.29.2
+ pyo3-macros@0.29.2
+ pyo3@0.29.2
+ quote@1.0.44
+ r-efi@5.2.0
+ radium@0.7.0
+ regex-automata@0.4.18
+ regex-syntax@0.8.11
+ regex@1.13.1
+ serde@1.0.229
+ serde_core@1.0.229
+ serde_derive@1.0.229
+ serde_json@1.0.151
+ smallvec@1.16.2
+ speedate@0.17.0
+ stable_deref_trait@1.2.0
+ static_assertions@1.1.0
+ strum@0.27.2
+ strum_macros@0.27.2
+ syn@2.0.82
+ syn@3.0.6
+ synstructure@0.13.1
+ tap@1.0.1
+ target-lexicon@0.13.4
+ tinystr@0.7.6
+ unicode-ident@1.0.12
+ url@2.5.8
+ utf16_iter@1.0.5
+ utf8_iter@1.0.4
+ uuid@1.23.4
+ version_check@0.9.5
+ wasi@0.14.2+wasi-0.2.4
+ wasm-bindgen-backend@0.2.100
+ wasm-bindgen-macro-support@0.2.100
+ wasm-bindgen-macro@0.2.100
+ wasm-bindgen-shared@0.2.100
+ wasm-bindgen@0.2.100
+ wit-bindgen-rt@0.39.0
+ write16@1.0.0
+ writeable@0.5.5
+ wyz@0.5.1
+ yoke-derive@0.7.4
+ yoke@0.7.4
+ zerocopy-derive@0.8.25
+ zerocopy@0.8.25
+ zerofrom-derive@0.1.4
+ zerofrom@0.1.4
+ zerovec-derive@0.10.3
+ zerovec@0.10.4
+ zmij@1.0.6
+"
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Data parsing and validation using Python type hints"
+HOMEPAGE="
+ https://github.com/pydantic/pydantic/
+ https://pypi.org/project/pydantic/
+"
+# pydantic-core & pydantic have a perfect circular test dep now
+SRC_URI+="
+ $(pypi_sdist_url pydantic_core "${PYDANTIC_CORE_PV}")
+ ${CARGO_CRATE_URIS}
+"
+PYDANTIC_CORE_S=${WORKDIR}/pydantic_core-${PYDANTIC_CORE_PV}
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0 Unicode-DFS-2016
+ ZLIB
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/annotated-types-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.16.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-inspection-0.4.4[${PYTHON_USEDEP}]
+ dev-python/tzdata[${PYTHON_USEDEP}]
+ !dev-python/pydantic-core
+"
+BDEPEND="
+ >=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}]
+ dev-util/maturin[${PYTHON_USEDEP}]
+ test? (
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ dev-python/dirty-equals[${PYTHON_USEDEP}]
+ >=dev-python/email-validator-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/faker-18.13.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/rich[${PYTHON_USEDEP}]
+ )
+"
+# pydantic-core
+BDEPEND+="
+ test? (
+ >=dev-python/dirty-equals-0.5.0[${PYTHON_USEDEP}]
+ >=dev-python/inline-snapshot-0.13.3[${PYTHON_USEDEP}]
+ >=dev-python/typing-inspection-0.4.1[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( hypothesis pytest-mock )
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/pydantic_core/_pydantic_core.*.so"
+
+src_unpack() {
+ pypi_src_unpack
+ cargo_crate_unpack
+ cargo_gen_config
+}
+
+src_prepare() {
+ sed -i -e '/benchmark/d' {.,"${PYDANTIC_CORE_S}"}/pyproject.toml || die
+ sed -i -e '/^strip/d' "${PYDANTIC_CORE_S}"/Cargo.toml || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ local DISTUTILS_USE_PEP517=maturin
+ local DISTUTILS_UPSTREAM_PEP517=maturin
+ cd "${PYDANTIC_CORE_S}" || die
+ distutils-r1_python_compile
+ cd - >/dev/null || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # == pydantic ==
+ # -Werror, sigh
+ tests/test_types_typeddict.py::test_readonly_qualifier_warning
+ # random regressions?
+ tests/test_deprecated_fields.py::test_computed_field_deprecated
+ tests/test_deprecated_fields.py::test_deprecated_field_forward_annotation
+ tests/test_deprecated_fields.py::test_deprecated_fields
+ tests/test_deprecated_fields.py::test_deprecated_fields_deprecated_class
+ tests/test_deprecated_fields.py::test_deprecated_with_boolean
+
+ # == pydantic-core ==
+ # TODO: recursion till segfault
+ tests/serializers/test_functions.py::test_recursive_call
+ )
+ local EPYTEST_IGNORE=(
+ # require pytest-examples (pydantic)
+ tests/test_docs.py
+ tests/test_docstrings.py
+ # benchmarks (both)
+ tests/benchmarks
+ )
+
+ if ! has_version "dev-python/cloudpickle[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ # (pydantic)
+ tests/test_pickle.py
+ )
+ fi
+
+ cd "${PYDANTIC_CORE_S}" || die
+ rm -rf pydantic_core || die
+ cargo_src_test
+ epytest -o xfail_strict=False -o addopts=
+ cd - 2>/dev/null || die
+
+ epytest -o strict=False
+}
diff --git a/dev-python/pyglet/Manifest b/dev-python/pyglet/Manifest
index 3c856d533553..b4df9749d367 100644
--- a/dev-python/pyglet/Manifest
+++ b/dev-python/pyglet/Manifest
@@ -1 +1,2 @@
DIST pyglet-2.1.16.tar.gz 6598246 BLAKE2B a6613e1d2c69d6be44ea4f8e301be8b9366eb7fbe4c3097b52c2ab868ad799bd1c0e862325edf8c180f69237da80de74f965d82b69d3d12abe8e8a0de25f020d SHA512 2e3e216d06ffd8eb2c5a12c9b0c5d78fac50ced7cd58fc84e73f0cd65d148125fd990c0a71d9a890657e9554660b5c960d7a3e25252bf44f7d395334d9e7d8e1
+DIST pyglet-2.1.19.tar.gz 3915885 BLAKE2B 9743a1410ffbf661be595c251d5fdf08377d550c59e96472f7feffc61aaddc9a24aaa98d34253a0a0b56c91570ca2335f21398be256e41748cdc2d7f7259f1fa SHA512 dc6bba2ebd31fb028648c265c10990713a5bd1340b50235ad72b3f0008f18c2b300fc9ad966d755c66656025a16b2f54fcd45136fd042eefa5b57c7de974282f
diff --git a/dev-python/pyglet/pyglet-2.1.19.ebuild b/dev-python/pyglet/pyglet-2.1.19.ebuild
new file mode 100644
index 000000000000..b63a87ceabab
--- /dev/null
+++ b/dev-python/pyglet/pyglet-2.1.19.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit-core
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi virtualx xdg-utils
+
+MY_P=${P/_/.}
+DESCRIPTION="Cross-platform windowing and multimedia library for Python"
+HOMEPAGE="
+ https://pyglet.org/
+ https://github.com/pyglet/pyglet/
+ https://pypi.org/project/pyglet/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="examples image +sound"
+
+RDEPEND="
+ virtual/glu
+ virtual/opengl
+ image? (
+ || (
+ dev-python/pillow[${PYTHON_USEDEP}]
+ x11-libs/gtk+:2
+ )
+ )
+ sound? (
+ || (
+ media-libs/libpulse
+ media-libs/openal
+ )
+ )
+"
+# ffmpeg? ( media-libs/avbin-bin )
+BDEPEND="
+ test? (
+ dev-python/pillow[${PYTHON_USEDEP}]
+ media-libs/fontconfig
+ x11-base/xorg-server[-minimal]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ xdg_environment_reset
+
+ local EPYTEST_DESELECT=(
+ # lacking device/server permissions
+ tests/unit/media/test_listener.py::test_openal_listener
+ tests/unit/media/test_listener.py::test_pulse_listener
+ # fragile to system load
+ tests/unit/media/test_player.py::PlayerTestCase::test_pause_resume
+ tests/unit/test_clock_freq.py::test_elapsed_time_between_tick
+ )
+
+ # Specify path to avoid running interactive tests
+ # We could add in integration tests, but they're slow
+ nonfatal epytest tests/unit || die "Tests failed with ${EPYTHON}"
+}
+
+python_install_all() {
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pylint/Manifest b/dev-python/pylint/Manifest
index 9c4cd154d6b6..6da6e818bc5c 100644
--- a/dev-python/pylint/Manifest
+++ b/dev-python/pylint/Manifest
@@ -1,5 +1,3 @@
-DIST pylint-4.0.7.tar.gz 1594770 BLAKE2B 61fed33be0c7eb766d6faacc76eb05fc10552433a1972e111ffcef1d9f73ff8acf7b5008d6661f743c7b7e6f3397e6753c320451ffecb9127440e17a97968925 SHA512 daba4199eb7aa228bba2b906148fb08a448fba8ece4458963d4a3fbaa916c206496e6f1ae6ed96cab69974b8a70b5c3a9f0429418bc34c098e10aad9c639b2bb
-DIST pylint-4.0.7.tar.gz.provenance 9625 BLAKE2B 0da3aa9f6b35b7b39f097323044863916b5b4295de8a49ed49ffcf40a56a36654fa56ef05734db393e8ca41cb2421747f7627c087c6ea043a53ac4917646fc33 SHA512 d827a42df13127d3038b48a9d3058d7a54b5c1ec089d1f82968017fe922b5e0e5f99e498e87e36aeb3e2b35b7be6de6fe6709e771fe776e4f4e5483c184e5169
DIST pylint-4.0.8.tar.gz 1599177 BLAKE2B c78dd90deddbdedbcc2c19adb46556353d9a357b663ca913db5b646d86cf33b70441b8693029d7afd3b7fff7cd9303a1ce5c01a758b0cd8886dd3b168d983893 SHA512 c0a30dc3c5a76d2c87009487eba44a7b8e14488de5d569e570e7538bb68001d0656e9926c7f28f2bf731cd8680bbdceee98d12182b0bb5bec4f73022f41e33df
DIST pylint-4.0.8.tar.gz.provenance 9674 BLAKE2B 3f8f1f1c01c346ba601a8af0f474ba428665c81fa8900ccbfff3417cd6e03e1bb8cf5aa25ab15579c58f889bb600761dae40cc7023f528964fd2c5d7531aca91 SHA512 0861c5fafb24c4f02ff86eabcb3a320d63d0df1e78e0ea9ac140be4486e685b9af23b38d46a52619b597eca473b7d1b53938811e94067403ae7200f054003784
DIST pylint-4.0.9.tar.gz 1604187 BLAKE2B 3c47fcd713aa6fee21418591c562462eb4d69e4a7864bd6fdb841941f0d0c8940cd2a3e919c859fd69de1e25905784a17bc1569a23fdff1c29864af05f5d0571 SHA512 499c7e5887b8b9781c7d051d7b332e4302477640433f344e6e99e35a1898266913ad74803958920ff884687929a9c2fa2ca1fee1cbdbbf5798520ddbebf8033c
@@ -8,3 +6,5 @@ DIST pylint-4.1.1.tar.gz 1737156 BLAKE2B 41625f82bd2091897ccdf6e1efb869b52d7f42e
DIST pylint-4.1.1.tar.gz.provenance 9956 BLAKE2B bc0a0bad48d44d73bed0675f24c907fc405b2db3d647dbd8e18fabbb57bb452d81dd75aabb1c77713406864c5b2d5f59f9c39a516dc19481861eab0739e097a7 SHA512 7e17a1a08c0d25f6713a1e75fe33ad35b5a989c4ae60e71c9f6e9158e02ea5cd6985f901db89f89607deda579eb8a04f711f3138b79e1f0f6bbbec36f3bce04d
DIST pylint-4.1.2.tar.gz 1739885 BLAKE2B bc0474c44d6a3fde543bc3895c77e9728d3aac8ae12319c19a0d33a24715b6d8e391ab447392d3bd5a4278c0bc5708c1a384745a45a03d83a1597576c1a22458 SHA512 8f2fb385d0866865fe8ce7e5382586e1e5b4420544ab58773079c2387be4c6e93033f0f749a7972cce91faae9f957e3be397d695cab294f0752e4d1bc71f1c93
DIST pylint-4.1.2.tar.gz.provenance 9913 BLAKE2B 16a071063ff401d99c740878b8ba3ab59c6780b6d606fb2e95d3218094fc5c96ca121b83bf1bd07629b06a474edeb37963cc9614c3669b4c096a36b8c46a6c2e SHA512 341968d19d1530a928e732a3edb07d90fc23cb649a0c9ea2189795aa2da347bdd59d724ba119c71485e09deb2cd6b8458f63b84fbd03742ab27fe35ef173a758
+DIST pylint-4.1.3.tar.gz 1756180 BLAKE2B d687680f521e5dc14c5d84581d7e7ffb0712327a2f70bda5a02e602512cdf294c063f86a592524b7eea5ce59ca39de4eb48de6da41601c082f693c933223efec SHA512 7f56b157a477f0b4447103467f9397f5b59b580002a9c7ac8dce9c4b34a1b6c8a3814e7218f8f8af9496b6acd785848f3d63388c202f9744291ac27a76c7b04a
+DIST pylint-4.1.3.tar.gz.provenance 9609 BLAKE2B e95cbd1c6b8d8e2172afc3e616a7901b38255f2524d1f32739bc47507b74266119f74b64243a5874eef5eaab3c2c9e53f90d3e8e7773acc5a57b05c2d430a1d3 SHA512 9403dc46918c7c955f4175ce69968ff032ab18feb380529fbc538b5ecfc6f0adcd5bbfd7902c2b4368f525b76433133efc400f87a6b7f37e04a501b889868e72
diff --git a/dev-python/pylint/pylint-4.0.7.ebuild b/dev-python/pylint/pylint-4.1.3.ebuild
index 702b432624f2..f70b72d15fd5 100644
--- a/dev-python/pylint/pylint-4.0.7.ebuild
+++ b/dev-python/pylint/pylint-4.1.3.ebuild
@@ -18,15 +18,15 @@ HOMEPAGE="
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="examples"
RDEPEND="
- <dev-python/astroid-4.1[${PYTHON_USEDEP}]
- >=dev-python/astroid-4.0.2[${PYTHON_USEDEP}]
+ <dev-python/astroid-4.4[${PYTHON_USEDEP}]
+ >=dev-python/astroid-4.3.4[${PYTHON_USEDEP}]
>=dev-python/dill-0.3.7[${PYTHON_USEDEP}]
>=dev-python/isort-5.14[${PYTHON_USEDEP}]
- <dev-python/isort-9[${PYTHON_USEDEP}]
+ <dev-python/isort-10[${PYTHON_USEDEP}]
>=dev-python/mccabe-0.6[${PYTHON_USEDEP}]
<dev-python/mccabe-0.8[${PYTHON_USEDEP}]
>=dev-python/platformdirs-2.2.0[${PYTHON_USEDEP}]
@@ -58,6 +58,8 @@ python_test() {
tests/benchmark/test_baseline_benchmarks.py
# Internal stuff, missing data in sdist
tests/testutils/_primer/test_primer.py
+ # needs pytest_remaster
+ tests/reporters/unittest_junit_reporter.py
)
if ! has_version "dev-python/gitpython[${PYTHON_USEDEP}]"; then
diff --git a/dev-python/pylsqpack/Manifest b/dev-python/pylsqpack/Manifest
index f8e7e83ec498..f51621049e79 100644
--- a/dev-python/pylsqpack/Manifest
+++ b/dev-python/pylsqpack/Manifest
@@ -1 +1,2 @@
DIST pylsqpack-0.3.24.tar.gz 677187 BLAKE2B 48bfa64f309013d40ad4afd898eee6068179441b1f1bc8e113603e46aa73830bd30a3deb8b80969c219e7d92ae30f6eb99a19b4d8d095de4825fb2e35531d2f7 SHA512 04efa117a679d04a2a7e3ffc9943fe5b51155d92ebf4aea89606878328c70d19f7943a29650cd4751ca8e09bd5a5b63e0049e87576bc2315cf998f5af0757abe
+DIST pylsqpack-1.0.0.tar.gz 678928 BLAKE2B 1250cb646b7a968acf5cb6082d798c6e69d68797e1883b157ff9daf5c0b09a70aef5c26875288545bf093aa2b5fbcb1e985983f2f3d2b07ed683ea37e3ec2ba4 SHA512 a9ce230714adf7a4b218e470cdd36e55de416074b4c69175efc35650ae9594d074fc053d5d89571649335b973d4fd61b534bfe252414110c81c8a5f6f61879c2
diff --git a/dev-python/pylsqpack/pylsqpack-1.0.0.ebuild b/dev-python/pylsqpack/pylsqpack-1.0.0.ebuild
new file mode 100644
index 000000000000..a6edf50facd8
--- /dev/null
+++ b/dev-python/pylsqpack/pylsqpack-1.0.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python wrapper for the ls-qpack QPACK library"
+HOMEPAGE="
+ https://github.com/aiortc/pylsqpack/
+ https://pypi.org/project/pylsqpack/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+DEPEND="
+ >=dev-libs/ls-qpack-2.6.4:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${PN}-0.3.20-unbundle.patch"
+ )
+
+ distutils-r1_src_prepare
+ rm -r vendor || die
+}
diff --git a/dev-python/pyrfc3339/Manifest b/dev-python/pyrfc3339/Manifest
index 8cfde70ceebe..4461dba66bfe 100644
--- a/dev-python/pyrfc3339/Manifest
+++ b/dev-python/pyrfc3339/Manifest
@@ -1 +1,2 @@
DIST pyrfc3339-2.1.0.gh.tar.gz 15561 BLAKE2B 28a135bf19874a6767884c73e6c9a51cf2b36da276208294ebbe5315cc4ac13b7372e725a3ab4afded3113a069a14fe233eb4a2a5376153e90f701fdc6042a32 SHA512 85743ab6dc478467e925f909ed9dd9b1b65bc666b3364cb623e0f65e3c624b33022f8958f6d63bac82cfe12cc6e75bd1c92991d13b039445d4267880795edb96
+DIST pyrfc3339-2.1.1.gh.tar.gz 15481 BLAKE2B 4c22078490d8e672e656b4677c8d7d51fc194f7ce2047c82cb51c50a955fa0bb1029dcfb7ae12cfaa0600e784429669a747be19fb12562acf21336bfed9fcbd4 SHA512 4d683925f99ffaed19761da15ec7323411fde65439e43e7d43d218a51817648dfe391ae70b0c5b1a1206ffba5c310adcae1146481576488439a09ce9db6170db
diff --git a/dev-python/pyrfc3339/pyrfc3339-2.1.1.ebuild b/dev-python/pyrfc3339/pyrfc3339-2.1.1.ebuild
new file mode 100644
index 000000000000..1d64dc258fc9
--- /dev/null
+++ b/dev-python/pyrfc3339/pyrfc3339-2.1.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Generates and parses RFC 3339 timestamps"
+HOMEPAGE="
+ https://github.com/kurtraschke/pyRFC3339/
+ https://pypi.org/project/pyRFC3339/
+"
+SRC_URI="
+ https://github.com/kurtraschke/pyRFC3339/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/pyRFC3339-${PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ >=dev-python/setuptools-scm-8[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/pyspelling/Manifest b/dev-python/pyspelling/Manifest
index 976e99500033..b2337ec780a9 100644
--- a/dev-python/pyspelling/Manifest
+++ b/dev-python/pyspelling/Manifest
@@ -1,2 +1,4 @@
DIST pyspelling-2.12.1.tar.gz 163855 BLAKE2B b4837980ccbe42cd39469ee5aac8481bdad0058682315150a125caac1e0b2f7e4663eb6ba0ab4bbd41c0b7fb142ef1ea2f43d1702f86377c0cbae34a3adf4589 SHA512 31480bf588035077339629743929981c52d3129899b82473048d0ca87ec93e3ce3600e29d6fd0077c4973a220d3c351674e4937f1cf1a47edf6f752058a1749a
DIST pyspelling-2.12.1.tar.gz.provenance 9383 BLAKE2B 4dbe9f89f3690dd329b8207139360fc52a6c3c7458a632c388a2c87024ecaec9dbfa813b9bbea78be9c83b92de8b5e3bf968517b5cbaad49e3d3df468bbcaee4 SHA512 4d4d781bb5f72065c33e56e111c7a9497df933cefb9c83162b94b1835dc5660db224c6cfd336bd587367f4755d9900cb296c8c5ee7f418c2b3656054834ea2d4
+DIST pyspelling-2.13.tar.gz 148325 BLAKE2B fb9e77f450644ae8cd43594d1a10ffe87f3dffd6a9bf721c5acaf34d039bbcd24838dc16e453819e4113d1388dc9711503a8802dc0ee9727daeeafc6d9969874 SHA512 9ad92712b383b29a420d9b6182addce7ded9b21f0861cc4efd341fa1a8df830b650d70981b5ad942ff32def944526f1b65db506b1fb34d9df3c28e36e03e4be8
+DIST pyspelling-2.13.tar.gz.provenance 9800 BLAKE2B d3d264c62cb356749406c6efa3de0c8252fd32d207630d0ca0bf51304309c4186127eb2d20266abf3c25c03b910796a6ec7ff010759e599853477d50795829e8 SHA512 bf35292878fc6dad20d079923d0915bdc9f7dd04722cdb592e4cea2961ddd948ec58622987ba5a3b8e89b5ebfcc6370f5168471c0b67e364c9590bfe8e372629
diff --git a/dev-python/pyspelling/pyspelling-2.13.ebuild b/dev-python/pyspelling/pyspelling-2.13.ebuild
new file mode 100644
index 000000000000..297e73437fe5
--- /dev/null
+++ b/dev-python/pyspelling/pyspelling-2.13.ebuild
@@ -0,0 +1,45 @@
+# 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/facelessuser/pyspelling
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Spell checker automation tool"
+HOMEPAGE="
+ https://github.com/facelessuser/pyspelling/
+ https://pypi.org/project/pyspelling/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ || ( app-text/aspell app-text/hunspell )
+
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/markdown[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/soupsieve-3.0.1[${PYTHON_USEDEP}]
+ >=dev-python/wcmatch-6.5[${PYTHON_USEDEP}]
+"
+# The package can use either aspell or hunspell but tests both if both
+# are installed. Therefore, we need to ensure that both have English
+# dictionary installed.
+BDEPEND="
+ test? (
+ app-dicts/aspell-en
+ app-dicts/myspell-en
+ dev-vcs/git
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-check/Manifest b/dev-python/pytest-check/Manifest
index e57e78775e09..88d665932b6b 100644
--- a/dev-python/pytest-check/Manifest
+++ b/dev-python/pytest-check/Manifest
@@ -1,2 +1,2 @@
-DIST pytest_check-2.8.0.tar.gz 37723 BLAKE2B 27cd1c716966637e7acba166dd2e63b76712442440d75c4a9d19ebb13486a8f9324888539cd5ea45ff9e7a44e6c65b4ad7424aab4586d837b7d8313e7174bf91 SHA512 90e86038e37b8cae6bb464c21d5e826173b48705524b82f2aed25851e3271923700fcdeae3605c2f0eee1eecb3630d746444cccb86a835990b78f7490a38836f
DIST pytest_check-2.9.1.tar.gz 41394 BLAKE2B ac4a9b88bbf0da7162b7948d7305335189893a0ad9a5591db206d7e332cfec82763a7a6f07124a1e405555f291abbc35aba5dcc4502223165d4fbc3047d45dd3 SHA512 39d8d8d2b9377b79fa18106bb91c0a662ef1823cd58a8ef681fa07a9f97ce435ebad9063397ed72bbca53f0235199ba242b0708ea65a07345d515cfa22b1885c
+DIST pytest_check-3.0.0.tar.gz 48136 BLAKE2B 6cc899d9ef3c7211b25be33fcd3bad264f589ad9a8f478305b81141eef72996897ae15f1cdbf21b646de55082cf3575aba23b47d83e12a51839068b1345254ee SHA512 95a3e6e7ae3033c13b29c94375be0f2c65fa3cbd1ba7ce0dbaaab7a1cc0d742673abfbbb156b08c69ccbae0904ec075ef88e49a8cad917f88832a2df6a2534ee
diff --git a/dev-python/pytest-check/pytest-check-2.8.0.ebuild b/dev-python/pytest-check/pytest-check-3.0.0.ebuild
index a0b4dc995d4e..4b61f86b9463 100644
--- a/dev-python/pytest-check/pytest-check-2.8.0.ebuild
+++ b/dev-python/pytest-check/pytest-check-3.0.0.ebuild
@@ -16,9 +16,10 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
>=dev-python/pytest-7.0.0[${PYTHON_USEDEP}]
"
diff --git a/dev-python/python-utils/Manifest b/dev-python/python-utils/Manifest
index f0fbe960f3db..c7917ff91dbb 100644
--- a/dev-python/python-utils/Manifest
+++ b/dev-python/python-utils/Manifest
@@ -2,3 +2,5 @@ DIST python_utils-4.0.0.tar.gz 43027 BLAKE2B 4abdcaace88afe2e6d0a4a7ec1f47fe11fd
DIST python_utils-4.0.0.tar.gz.provenance 9555 BLAKE2B 574af1303e7ef2e7d328e949346d78a3e6b58a40031820646b253d184f0aad13fde3b98edc2e2f265a71dd0c299eafa736df4e9306586eee79ffcab61aa8dd1f SHA512 236ab21a0447e8dd9408f54e20d45895e84158ae175b17526d68a17d20c049ac98b193886c8856c42652e21af4c8500be3a262114fa42933acc430ac0554ede5
DIST python_utils-4.1.0.tar.gz 70942 BLAKE2B eabe65eb66b557af23437308dfe92632060b51d753d506c05218f4369e03e6b1846ef5074147480bbf240f158c47495e6588f2ef2d6d626fba76f54b6c97364b SHA512 f8150a0469bd5756710f9e8f032385aa10b6b302f7df97265463b60dba13ddfd9423325c176a9639e6d5302b5682088d9cdcdd1f5d251239bcd0b08cee1a3334
DIST python_utils-4.1.0.tar.gz.provenance 9698 BLAKE2B 1cab51eb2fed3be792b00fa157a1ea3f873ac6a417d54986ad7870db38f5e3a4085f632769e273b9c0e5f15b4c2f2ff8988608f60056da562af380320e49ba18 SHA512 271cfc9612df9842ce193d1052564ac1fb3d91d80e851fc931f1eafe2de8b557f72ebcd6ccfdf2fabe8d9f92e9af27defbe7daf5935ce635cdc106327a12b79a
+DIST python_utils-4.1.1.tar.gz 77721 BLAKE2B 530de67b178393c338e37dbd392a5300b1069307793c3a78dd327f2f457e9935ae8fafcfe1cab1d5012125824a68b4ea93b6e4f513332070cb71cf1ff7de6d59 SHA512 5150527ddc85af218a9b91b4b905a61b78f17cf8507419b2bc6e62c041838346499d35beb55c139f44cf7471a1ef78644a4fc527038a74829a29e59d0c8c3150
+DIST python_utils-4.1.1.tar.gz.provenance 9727 BLAKE2B 4be8d63bf851012d2c587f1030d161ef9b5a86bb81088ccc824006b27453cd4eac0968e25d5204c004455d12d9748d4ffbeec7409ae920874f25e2c0a46f88b4 SHA512 a42a5fc3a5002c466d1eead08456d1ec3af80778d0f1a41de8447c83ba15ead24504111fd9672f2102c421d964b2ca9460781b16fd66d2b7b899a911b378826e
diff --git a/dev-python/python-utils/python-utils-4.1.1.ebuild b/dev-python/python-utils/python-utils-4.1.1.ebuild
new file mode 100644
index 000000000000..05d102d2521e
--- /dev/null
+++ b/dev-python/python-utils/python-utils-4.1.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=uv-build
+PYPI_VERIFY_REPO=https://github.com/wolph/python-utils
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Collection of small Python functions & classes"
+HOMEPAGE="
+ https://github.com/WoLpH/python-utils/
+ https://pypi.org/project/python-utils/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=( pytest-asyncio )
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ docs
+ _python_utils_tests/test_logger.py
+ python_utils/loguru.py
+)
+
+EPYTEST_DESELECT=(
+ # fragile
+ _python_utils_tests/test_time.py::test_timeout_generator
+)
+
+python_prepare_all() {
+ sed -i -e '/--cov/d' pyproject.toml || die
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/pyzstd/Manifest b/dev-python/pyzstd/Manifest
index 9e3af2c94a0d..0860b84b4fa6 100644
--- a/dev-python/pyzstd/Manifest
+++ b/dev-python/pyzstd/Manifest
@@ -1,2 +1,4 @@
DIST pyzstd-0.19.1.tar.gz 69531 BLAKE2B 2378b9c5f913ec4385d3549901a9075efb3f88a5767ad71e81f116dcce127f5030dafc913bb3427b436ec6a13f40060e5282a6907efbe14202e269b3d39ed270 SHA512 6916e4d0c4a957a7869c7fe8ae9448127fc4af1fdee0153945e114039716f63e1d5c0c99c7acdacc6dd6c015c5f7edfea434b87707e36b779a1bafa942b399d1
DIST pyzstd-0.19.1.tar.gz.provenance 9142 BLAKE2B 2b171c7ee907396917a99f0662e56bf353512e6d949403e435743d9a0e21ed9b5e755006257f309effaaacaf8db15d84928bcd111c9c4465b8c82daad4cb9ca4 SHA512 231e6ff79fccd63ab891719c212d82d4866738fcb878079c95affb9afab4797c11dade8a4eca0cba5980d480f1418b5aa9710459492374a85852a102b1bcb42e
+DIST pyzstd-0.20.0.tar.gz 71001 BLAKE2B ede67e7f1fa2c7f1a9bd40491287e0ef5d184d54a43bd59d4b1ac933e72e15993a83a9674c2e1fb05d0ec3d0b49c0fb00ac20acdfec27795f334dd3153678945 SHA512 fba4f919b4a4c85739b5ec43bb84ef60fb469a3666b72fe66eb581dad78e9b5b260954f97ada7fd0d5516bb885a1fd74020b3186ae3d4d99cd3c8b619493241e
+DIST pyzstd-0.20.0.tar.gz.provenance 9440 BLAKE2B 6053dc32375d9311f36b0331b965d9e0381ae8ed5c6a6168bea3c6dd11cb1825c0cba0499144dc74a3cc328eb96c25b25eb9db3b8bf75c05226b975290de3bac SHA512 6002beb7597b110e692ccf5c695de0014036cc089e3cd6ba8adae71660698c05b728e8720416e766de86f71d9337c1af384b3dfa957db7a4902655226ee87d07
diff --git a/dev-python/pyzstd/pyzstd-0.20.0.ebuild b/dev-python/pyzstd/pyzstd-0.20.0.ebuild
new file mode 100644
index 000000000000..a1d9ca91f871
--- /dev/null
+++ b/dev-python/pyzstd/pyzstd-0.20.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2025-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/Rogdham/pyzstd
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Support for Zstandard (zstd) compression"
+HOMEPAGE="
+ https://github.com/Rogdham/pyzstd/
+ https://pypi.org/project/pyzstd/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/backports-zstd-1.0.0[${PYTHON_USEDEP}]
+ ' 3.11 3.12 3.13)
+ $(python_gen_cond_dep '
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ ' 3.11 3.12)
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest tests
+}
diff --git a/dev-python/soupsieve/Manifest b/dev-python/soupsieve/Manifest
index f2707bda2d8b..07a0fc534bde 100644
--- a/dev-python/soupsieve/Manifest
+++ b/dev-python/soupsieve/Manifest
@@ -1,3 +1,4 @@
DIST soupsieve-2.10.gh.tar.gz 160025 BLAKE2B 17d1ba7b9cb21ea79de01fb7d5481c75762deee8bd2024b141b55815da3c2214563f00cceaead7f65d51b40e956842bc6ecf94427e0e96582dd4e7fee5fb2dff SHA512 c7fe75fa3a4a55b73baaa185386220a3638a2e0b6f649e4df1838205e2f693c2612ab485737b28ed4c2a04815a4faddc941b2d0e1318dcc99047e60f01039b9d
DIST soupsieve-2.9.2.gh.tar.gz 157707 BLAKE2B b57eef6a67ddf33c03bdd418a22229877b206022298e534ba6fa59992f7a21adaf3c6bee13e381140e812a390dd67f73f4e7147eefc169dc3d6a6432c6c23715 SHA512 262d422900fd0f60760a02668e556b8eee4589b578f397083b87b78e6b03e7c43055fac70e290666e64b111d0e9f0ed21f8ed989ff5a1ff5a05ed8adbf341726
DIST soupsieve-3.0.1.gh.tar.gz 119766 BLAKE2B 01a1f300d336182a3e055fcad4ee5d321c311ace28363f5c800e36cc5c7c813b66786b3e8f464c90511be236ff64709122759a5332c7127f7d4c11fc27dab461 SHA512 4609a5c9701e1b51a1dfa447bb33993a2ce3a781c9f0b8fa1fdee1fed3bdd05b9e79f25967d82f64252be8c66b823f652365236dcfd4a82c5b835a5fc8504955
+DIST soupsieve-3.0.2.gh.tar.gz 119863 BLAKE2B 0a3f4628f5727e1b757ab7c91ceb95aace7be3e8606d6bd3d965444203dcd595a4acd8b4b45ede24da4bc6ff52843942c45c675082d25c1b6bff43f4dde7f7b3 SHA512 891bdf03ffc4497141aecc888ee5c55b3d138031e24a79562b38d2c17bfc364fd6025fcd15210bdce238b5534882ef9088e1b6f2e887ed09d86ee432a8177aa5
diff --git a/dev-python/soupsieve/soupsieve-3.0.2.ebuild b/dev-python/soupsieve/soupsieve-3.0.2.ebuild
new file mode 100644
index 000000000000..a386cbdf6652
--- /dev/null
+++ b/dev-python/soupsieve/soupsieve-3.0.2.ebuild
@@ -0,0 +1,34 @@
+# 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 modern CSS selector implementation for BeautifulSoup"
+HOMEPAGE="
+ https://github.com/facelessuser/soupsieve/
+ https://pypi.org/project/soupsieve/
+"
+SRC_URI="
+ https://github.com/facelessuser/soupsieve/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="
+ test? (
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest
index 9db20b629001..481072a88c0d 100644
--- a/dev-python/tox/Manifest
+++ b/dev-python/tox/Manifest
@@ -20,3 +20,5 @@ DIST tox-4.64.9.tar.gz 331588 BLAKE2B de9f2da818c516b51492acdf437b3b16d7e06736d8
DIST tox-4.64.9.tar.gz.provenance 9544 BLAKE2B b1dd15e89b1e22227b138d4f5999aa926d3993cf28898f98c6b93eca23522de63675cbdeaa4c71590606143eaa5bfae14b77b61579ef1ea3d191e509c698d255 SHA512 61078355d7e17261071e375cb6c5181e764d29a028a5d288ae37243f22d3544194f123527ac10ad36cb6f1e926a59e511323223f771e8eb4aacb919cd5e8f653
DIST tox-4.65.2.tar.gz 343387 BLAKE2B 3639dc0956edcb9e7351b28c435bcc20be48b9011907fd0c946140347e6e0a2c6d4e6fa7c591b91baccbdc3434f9d716ebd0339934e9a1edbc3f023add9edb28 SHA512 5327a2c0a52834f52788a86a34b066999dd6d1f5ff7387950e2bbd1737ad17eb0444135a908b6a93b80834b7704fde3ac616e73de2d54125588c60b0df9fb78c
DIST tox-4.65.2.tar.gz.provenance 9796 BLAKE2B 9ec3ebdcf067036a77802d1c016f84594e721ed9ff9a2fe1c0c2bc7221bfe9040c3026a860c8f094f35eabc300ae74f1f6c259a84edbaa54d031549eba8f0644 SHA512 a9f9db00a3f34cef34f3c3f9415c96ef1ddf1c028cefad63b0368e8a4275e321efae705752921c7397dfaf1c6222954deeafc3be27530cbbb7f90d6ddb0d7cc1
+DIST tox-4.65.3.tar.gz 343641 BLAKE2B cebbd34e606c1ae7690bba2111761179052e8850a725444ba13d9934810871f33a6ead71b6a4e3a9eb53bb359dd1c3dc4ec5bee0db7d94ea3c38f92bff77ff4e SHA512 693eb9b5fac5468c5fc44cead6246c8826c589838d1f23df76be9fb2cfe764bd507d4735646f5d78df6d53910adfbc866e8230dedf2ed2200c83524148c1a426
+DIST tox-4.65.3.tar.gz.provenance 9467 BLAKE2B 1555b83212e604e195969c0af68057937f3e68e722d9bf459e60078339789fe004974e8957dc0634f08d5c407dc66987b0ccd7128c087e34085b12b908d16c33 SHA512 aff924722aa30a455ec424f4d508ed4cf60f695da4a6e0e78a57ac6af868c1814378a7162d28e1899f2abaf2e0873a113bf175ead66ded58ba66017891dba94d
diff --git a/dev-python/tox/tox-4.65.3.ebuild b/dev-python/tox/tox-4.65.3.ebuild
new file mode 100644
index 000000000000..9d80c8ee22b8
--- /dev/null
+++ b/dev-python/tox/tox-4.65.3.ebuild
@@ -0,0 +1,84 @@
+# 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/tox-dev/tox
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="virtualenv-based automation of test activities"
+HOMEPAGE="
+ https://tox.readthedocs.io/
+ https://github.com/tox-dev/tox/
+ https://pypi.org/project/tox/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
+
+RDEPEND="
+ dev-python/cachetools[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/platformdirs[${PYTHON_USEDEP}]
+ dev-python/pluggy[${PYTHON_USEDEP}]
+ dev-python/pyproject-api[${PYTHON_USEDEP}]
+ dev-python/python-discovery[${PYTHON_USEDEP}]
+ dev-python/tomli-w[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.15[${PYTHON_USEDEP}]
+ ' 3.12)
+"
+BDEPEND="
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/argcomplete[${PYTHON_USEDEP}]
+ dev-python/build[${PYTHON_USEDEP}]
+ dev-python/distlib[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/re-assert[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-{mock,rerunfailures,timeout,xdist} time-machine )
+EPYTEST_RERUNS=3
+# upstream timeouts are quite short
+: ${EPYTEST_TIMEOUT:=180}
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # upstream lower bounds are meaningless
+ sed -i -e 's:>=[0-9.]*::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # devpi_process is not packaged, and has lots of dependencies
+ cat > "${T}"/devpi_process.py <<-EOF || die
+ def IndexServer(*args, **kwargs): raise NotImplementedError()
+ EOF
+
+ local -x PYTHONPATH=${T}:${PYTHONPATH}
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz
+ tests/tox_env/python/virtual_env/package/test_package_pyproject.py::test_pyproject_installpkg_pep517_envs
+ # require tombi
+ tests/session/cmd/test_schema.py::test_schema_tombi_lint
+ )
+ local EPYTEST_IGNORE=(
+ # requires devpi*
+ tests/test_provision.py
+ )
+
+ epytest -o addopts=
+}
diff --git a/dev-python/utidylib/Manifest b/dev-python/utidylib/Manifest
index aa6e0b0ce8dc..e557902752e0 100644
--- a/dev-python/utidylib/Manifest
+++ b/dev-python/utidylib/Manifest
@@ -1 +1,2 @@
DIST utidylib-1.0.0.gh.tar.gz 17275 BLAKE2B 745d554600ca1d9151ea037885caa51b4a06220f15c7eb05c6003080f44107aa46b4c1938ed1d876e217cffad7d7c9e70576be22d3a949fabd232ecb1d17e41d SHA512 1e4e4def91f4cc2e34c3adea81d6e16f272724fae119bf3dfc88eebac58a0930c45cfb6a181272b46aaf0acb87f47c30a1de5cbf81095f1fa67aecb67e4d5553
+DIST utidylib-1.1.0.gh.tar.gz 17237 BLAKE2B 30e773f284c62ba7414dd65cb258ab05503a1ca9edf41ea5437fadcf1c7d4d5eb0a2db7c44a874d0e47cb651c64e6c6a483ee340c24b046e2848117a63548203 SHA512 f7f14a5e0f837179308cca560303dffbb61983de816bccfbdd1b317ac830bfb3cb9f7a3b1bf4392b6bdae562b82f4c3541b8db12e4dfd54cda6c0707ff9a3731
diff --git a/dev-python/utidylib/utidylib-1.1.0.ebuild b/dev-python/utidylib/utidylib-1.1.0.ebuild
new file mode 100644
index 000000000000..7f62b660c8b0
--- /dev/null
+++ b/dev-python/utidylib/utidylib-1.1.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="TidyLib Python wrapper"
+HOMEPAGE="
+ https://cihar.com/software/utidylib/
+ https://github.com/nijel/utidylib/
+ https://pypi.org/project/uTidylib/
+"
+SRC_URI="
+ https://github.com/nijel/utidylib/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=app-text/htmltidy-5.0.0
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/furo
diff --git a/dev-python/validators/Manifest b/dev-python/validators/Manifest
index 93d8445ef1d9..2419a4fddb0b 100644
--- a/dev-python/validators/Manifest
+++ b/dev-python/validators/Manifest
@@ -1 +1,3 @@
DIST validators-0.35.0.tar.gz 73399 BLAKE2B d9ff2d3959b7113c48af93420ff8d6d15e4be4a7525484da3a115335382ff2a3c101bdc10d7c2086736f6ff055a05d37a3553fa801cd04f3b17433d4d2a15d34 SHA512 abc447981df4747c6c167b8d79170ec4081d4c9b30b81d0ab3b2652e9eb94e5770b012149c3a49a328ec531785ce57d34a76de06e58ac0e0ad88b55d51e9590c
+DIST validators-0.36.0.tar.gz 79234 BLAKE2B de477c8ff4e7c8fba67bbb12134d0059cdde6aa93ecf0396f462708197d798a5e23f3541ed6beb122115b52ae279ed2ec76020cede9d86cfcf661367125efd88 SHA512 c3f02d98afd47518d8b3d5d1b6a48b190ae472d78cc7d5580ec0d4bb764be06534d06f18d1bd4c4af5aa28a5b0164da5a09a9ef72ee95380b600bf913334f555
+DIST validators-0.36.0.tar.gz.provenance 10205 BLAKE2B 97700b05ae70e514c9a408dd2476adce07fa6eaeb145da6d61a29100d3d764fe8f8db11c46630e724e7a8df6446b3abe661db6568a78101b51ce4c094defdb6d SHA512 38894eb10e1f30525286d0214e0359d1bab11d7d1d1654d678fbd595b36fca4fbd8db217aee0cb768fb17905322927b1850ce6a44c40ea5a31b06ad760251bdc
diff --git a/dev-python/validators/validators-0.36.0.ebuild b/dev-python/validators/validators-0.36.0.ebuild
new file mode 100644
index 000000000000..8d786d528767
--- /dev/null
+++ b/dev-python/validators/validators-0.36.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_VERIFY_REPO=https://github.com/python-validators/validators
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python Data Validation for Humans"
+HOMEPAGE="
+ https://github.com/python-validators/validators/
+ https://pypi.org/project/validators/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # requires eth-hash
+ tests/crypto_addresses/test_eth_address.py
+)
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index f9acd4a80763..68ac64910e4c 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -10,11 +10,9 @@ DIST virtualenv-21.14.5.tar.gz 5467127 BLAKE2B 029434d3c647a5898664b98ddd9fcb757
DIST virtualenv-21.14.5.tar.gz.provenance 9624 BLAKE2B 0aba2ff51e093e537f3ea5cd30f4e678a92febf982061501ad9901b256902812029ec639587b2464d73cbb73d4ddc3ea4f3d5b20d1d54d853bb904fc3265e4d4 SHA512 1cadd5ac6f51f90d0dae20ba9b545cd06d4e116ebbfc0a355a036ee316ceec7e6ce9952e499c9d3dca8dfc5f697813b936b8bc3937bd4c3658a678470e23593d
DIST virtualenv-21.14.6.tar.gz 5467961 BLAKE2B d0d0c88e0496096d76ebdf5ba43c9bee17483879c0d5a682aebeb45bbbe064fb9d4ccba5e713adc20ba67fb712a4d43f2ce5fc45de0a9ed0ae322d0374ff6200 SHA512 b4ca0cf4d7c1d501a269175b226cf25c986062542a8d54f37695432cf7e514327e53ce539daae2353b76d1db6de2518649a368c5e239dca41a987db5373b162f
DIST virtualenv-21.14.6.tar.gz.provenance 9410 BLAKE2B b91e96ec96c90f44fd1b73a72830968e1789ea59ed9893b3ee40444e0a559008363d66b0928efbc57ca48e00b37400df398e33211213233fb90b627a7a18bf57 SHA512 1689e71518b82674191786b4d80cdc795f1fd1f5dc341bd367de850fbffcb377c3a5d9c433532e7b6e3328eea2c6d681866cdde944deb2c93e654e3bbd774819
+DIST virtualenv-21.14.7.tar.gz 5471741 BLAKE2B e6ccf4ec3dc91ca64813aba9297ff5ea5fc9b45fe597a87c0411329718ab33fa5e58d1ce3cce146d8ca3a02ca506e62fc1798deb85e7b73d25756ba8449776be SHA512 f876f15523af82bee67cedf742710993cb1f8edbfb87b900fbef7f5c248bf6af82ed2ccd0711444570e438d4afa188f18f2443d147106daa8224e253a527dd47
+DIST virtualenv-21.14.7.tar.gz.provenance 9410 BLAKE2B 59744577d671b3eb95c175ba34720c17264e4b24d4fa2099e7ea756849d1309b46a2facf0524c4b10812534237b0dab38d7e1c909b4244f1fd2b9f8f45382d97 SHA512 99c3fb379962b0d8ab713c2d673550028cb993991cea2d562caf7b9b10ffc0a851f6380de1b8a118eb021433bb9b29b638e0aa25652853e7348609849dbd42b4
DIST virtualenv-21.7.16.tar.gz 5363081 BLAKE2B 80a957de88379940d7faf6173d27aba49f24d2c35d162ae666b00e4822e9bbb14dcaa95c7d2515a967ba03a1f6437c1d388fd78fae3e4ded5d596d5ac8802291 SHA512 eacdb1e4216dd00b1948c78bb3facd42e8aeb5566efa6ca85660c2b926bf7e92fc240547b05b2ee795f547edf0aff6bf5e7df4d6f1ef8c7f489af5c0cde20169
DIST virtualenv-21.7.16.tar.gz.provenance 9667 BLAKE2B 9c9fd750ee8403a59dc5c6eb5bf6932ac13ac4e6f2a0c2572292143886d07294bf99cab554f127b20a36f38e76e279100a1f3cf6047e1767750d551ace8cb5cc SHA512 c1a15d2fda5a94460bda461594e2b41fe83da57b1a17afdb0786f270bbd7af40445f92f7cafc494961eeed7e97c9747f7d105ae0453259a174704441dfc5b597
-DIST virtualenv-21.7.7.tar.gz 5347022 BLAKE2B fbd9fbbb3e48ef719ddf097eca32557ba4ae980d0a752c0d0e900a086b144ef0a52d87ee75ca902dc24bdad973c0588a148573dcdc982fdf460f1e8ffb71cb7c SHA512 b577552968f9e3fe72af4a5771fbcacbd5efb8808d0b7a23e709a90bb4d9df9cf51bc74a5dff0c978e4da9a9977d22300b6a75c7a57396c4fed09a5946e0e03d
-DIST virtualenv-21.7.7.tar.gz.provenance 9416 BLAKE2B 1908bbb5a2b25e4e2d94661f3939716816c3739a79665e561e139be70802c96012decf5ed8598fd87c466dac83446e55310a6155917a1ef74c98043b694ff863 SHA512 48eb2eedb8d65373496d77fee372c46810768a74be9388f3810ffe97e5e96b44e12ff50dc37c076e7d0f85fb4750851a963bf228c30f7115008a647df122b36c
-DIST virtualenv-21.7.8.tar.gz 5347580 BLAKE2B d5b2c8258b36b19d646a4e907e938bd336a05a501d66d5f9b3ce38b55d8473b4c2443eca60f06e78ce4afb210b7c4a247f68be3f1bd286a7b859aa8fc1af57e6 SHA512 df5a7fa1fa924f4294d4248ea1ab8aebf43b1efae1fce94932135e3fac53d2e2070f3369d2509253215d7ed824a936d7d9f51672575700981ac12f2b9a3b4a5e
-DIST virtualenv-21.7.8.tar.gz.provenance 9342 BLAKE2B 2d8b235ef47c92657a63bac84558e3eba85afafb71e46c0aa2d4231c1246d12e7b03f81518c1f67d1c4fef07fb9ad3a02b38d6e2ba67c7790a0b5f42193715fe SHA512 23292aebd030e5990faa2e141e0ef10a1b2dc29bfbcc2a95c87aeed8902c9497b92d0bbfbd6e5ef51a3f4ab0de395139f110be7e94c8120da242a16259c33300
DIST virtualenv-21.7.9.tar.gz 5348882 BLAKE2B cadcd4423bbe28d58363e653a62a0408fb4e989379b1cdc72b4e1d63ce27f5427732b9682fb794292b56d79e411e59fb46aa19246b9cb866c8029805ba174586 SHA512 e226116dc1cca408490caa1ac03d6759dd9bf33874b9546c426a8e850869fceb7f8d79e80fa029ec1d55b1649535ef34114be63683004052256fe8bb83b46622
DIST virtualenv-21.7.9.tar.gz.provenance 9655 BLAKE2B e7b7b08f61878dedc3cdfb09de2bb3925e7ac661b7a5995bfd5d1ddefc84df0cb118d5221ab33250b5d50c5835b96847edf28bb6b737f6217976cdf6940575b2 SHA512 5ded379491dd1e652326b839451b8ac20ff56bd170eaa25b1c28a7f2bdb0a6666c2d5579f5ce83ba75eeb86afb0d3eb518889956eb18815370cda278ca31d8dd
diff --git a/dev-python/virtualenv/virtualenv-21.7.8.ebuild b/dev-python/virtualenv/virtualenv-21.14.7.ebuild
index 5875640262a6..e4353ab1e703 100644
--- a/dev-python/virtualenv/virtualenv-21.7.8.ebuild
+++ b/dev-python/virtualenv/virtualenv-21.14.7.ebuild
@@ -19,13 +19,14 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
>=dev-python/filelock-3.24.2[${PYTHON_USEDEP}]
+ >=dev-python/packaging-23.1[${PYTHON_USEDEP}]
>=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
>=dev-python/python-discovery-1.6[${PYTHON_USEDEP}]
@@ -41,6 +42,7 @@ BDEPEND="
${RDEPEND}
$(python_gen_cond_dep '
dev-python/coverage[${PYTHON_USEDEP}]
+ >=dev-python/hatchling-1.27[${PYTHON_USEDEP}]
>=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
>=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
@@ -99,6 +101,13 @@ python_test() {
tests/unit/create/test_creator.py::test_create_distutils_cfg
# we do not use bundled wheels
tests/unit/seed/wheels/test_bundle.py::test_every_wheel_on_disk_has_sha256
+ # requires bundled packages in pip
+ tests/unit/test_sbom.py::test_sbom_spdx_declared_license
+ # require pre-commit = internet
+ tests/unit/test_wheel_age.py::test_generator_converges
+ tests/unit/test_wheel_age.py::test_generator_updates_license
+ # TODO
+ tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest
)
local -x TZ=UTC
diff --git a/dev-python/virtualenv/virtualenv-21.7.7.ebuild b/dev-python/virtualenv/virtualenv-21.7.7.ebuild
deleted file mode 100644
index 5875640262a6..000000000000
--- a/dev-python/virtualenv/virtualenv-21.7.7.ebuild
+++ /dev/null
@@ -1,117 +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/pypa/virtualenv
-PYTHON_TESTED=( python3_{13..14} )
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Virtual Python Environment builder"
-HOMEPAGE="
- https://virtualenv.pypa.io/en/stable/
- https://pypi.org/project/virtualenv/
- https://github.com/pypa/virtualenv/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
- >=dev-python/filelock-3.24.2[${PYTHON_USEDEP}]
- >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
- >=dev-python/python-discovery-1.6[${PYTHON_USEDEP}]
-
- dev-python/ensurepip-pip
- >=dev-python/ensurepip-setuptools-70.1
- dev-python/ensurepip-wheel
-"
-# coverage is used somehow magically in virtualenv, maybe it actually
-# tests something useful
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- ${RDEPEND}
- $(python_gen_cond_dep '
- dev-python/coverage[${PYTHON_USEDEP}]
- >=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- >=dev-python/setuptools-67.8[${PYTHON_USEDEP}]
- dev-python/time-machine[${PYTHON_USEDEP}]
- dev-python/wheel[${PYTHON_USEDEP}]
- >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
- )
-"
-
-src_prepare() {
- local PATCHES=(
- # use wheels from ensurepip bundle
- "${FILESDIR}/${PN}-21.5.1-ensurepip.patch"
- )
-
- distutils-r1_src_prepare
-
- # workaround test failures due to warnings from setuptools-scm, sigh
- echo '[tool.setuptools_scm]' >> pyproject.toml || die
-
- # remove useless pins
- sed -i -e 's:,<[=0-9.]*::' pyproject.toml || die
-
- # remove bundled wheels
- rm src/virtualenv/seed/wheels/embed/*.whl || die
-}
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Skipping testing on ${EPYTHON}"
- return
- fi
-
- local EPYTEST_DESELECT=(
- tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data
- # tests for old wheels with py3.7 support
- tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke
- tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support
- # broken by different wheel versions in ensurepip
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none
- tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output
- tests/unit/seed/wheels/test_wheels_util.py::test_embed_wheel_below_oldest_supported_is_missing
- # hangs on a busy system, sigh
- tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe
- # TODO
- tests/unit/create/via_global_ref/test_build_c_ext.py::test_can_build_c_extensions
- # random resource leaks or xdist
- tests/unit/test_file_limit.py::test_too_many_open_files
- # Internet
- tests/unit/create/test_creator.py::test_create_distutils_cfg
- # we do not use bundled wheels
- tests/unit/seed/wheels/test_bundle.py::test_every_wheel_on_disk_has_sha256
- )
-
- local -x TZ=UTC
- local EPYTEST_PLUGINS=( pytest-{mock,rerunfailures} time-machine )
- local EPYTEST_RERUNS=5
- local EPYTEST_TIMEOUT=180
- local EPYTEST_XDIST=1
- epytest -o addopts=
-}
-
-src_install() {
- distutils-r1_src_install
-
- # remove bundled wheels, we're using ensurepip bundle instead
- find "${ED}" -name '*.whl' -delete || die
-}
diff --git a/dev-qt/qtbase/files/qtbase-6.11.3-skip-gentoo-chainload.patch b/dev-qt/qtbase/files/qtbase-6.11.3-skip-gentoo-chainload.patch
new file mode 100644
index 000000000000..4ccdf17294d5
--- /dev/null
+++ b/dev-qt/qtbase/files/qtbase-6.11.3-skip-gentoo-chainload.patch
@@ -0,0 +1,9 @@
+cmake.eclass sets CMAKE_TOOLCHAIN_FILE to a temporary file, but
+Qt expects it to not be temporary. Projects shouldn't be loading
+gentoo's toolchain file outside ebuilds either way.
+
+https://bugs.gentoo.org/984102
+--- a/cmake/qt.toolchain.cmake.in
++++ b/cmake/qt.toolchain.cmake.in
+@@ -23 +22,0 @@
+-@init_original_toolchain_file@
diff --git a/dev-qt/qtbase/qtbase-6.11.9999.ebuild b/dev-qt/qtbase/qtbase-6.11.9999.ebuild
index 155555f15585..ed95016b036e 100644
--- a/dev-qt/qtbase/qtbase-6.11.9999.ebuild
+++ b/dev-qt/qtbase/qtbase-6.11.9999.ebuild
@@ -188,6 +188,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.6.3-gcc14-avx512fp16.patch
"${FILESDIR}"/${PN}-6.8.2-cross.patch
"${FILESDIR}"/${PN}-6.9.0-no-direct-extern-access.patch
+ "${FILESDIR}"/${PN}-6.11.3-skip-gentoo-chainload.patch
)
src_prepare() {
diff --git a/dev-qt/qtbase/qtbase-6.12.9999.ebuild b/dev-qt/qtbase/qtbase-6.12.9999.ebuild
index 72bc7e8dd188..d2284a551ac5 100644
--- a/dev-qt/qtbase/qtbase-6.12.9999.ebuild
+++ b/dev-qt/qtbase/qtbase-6.12.9999.ebuild
@@ -187,6 +187,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.6.3-gcc14-avx512fp16.patch
"${FILESDIR}"/${PN}-6.8.2-cross.patch
"${FILESDIR}"/${PN}-6.9.0-no-direct-extern-access.patch
+ "${FILESDIR}"/${PN}-6.11.3-skip-gentoo-chainload.patch
)
src_prepare() {
diff --git a/dev-qt/qtbase/qtbase-6.9999.ebuild b/dev-qt/qtbase/qtbase-6.9999.ebuild
index 72bc7e8dd188..d2284a551ac5 100644
--- a/dev-qt/qtbase/qtbase-6.9999.ebuild
+++ b/dev-qt/qtbase/qtbase-6.9999.ebuild
@@ -187,6 +187,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.6.3-gcc14-avx512fp16.patch
"${FILESDIR}"/${PN}-6.8.2-cross.patch
"${FILESDIR}"/${PN}-6.9.0-no-direct-extern-access.patch
+ "${FILESDIR}"/${PN}-6.11.3-skip-gentoo-chainload.patch
)
src_prepare() {
diff --git a/dev-ruby/base64/base64-0.3.0.ebuild b/dev-ruby/base64/base64-0.3.0.ebuild
index 7a56b864ae20..1ba18f01d032 100644
--- a/dev-ruby/base64/base64-0.3.0.ebuild
+++ b/dev-ruby/base64/base64-0.3.0.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/ruby/base64/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
all_ruby_prepare() {
sed -e 's/__FILE__/"base64.gemspec"/' \
diff --git a/dev-ruby/bigdecimal/bigdecimal-4.0.1.ebuild b/dev-ruby/bigdecimal/bigdecimal-4.0.1.ebuild
index b2ce7332ab6a..b00ab4aa3809 100644
--- a/dev-ruby/bigdecimal/bigdecimal-4.0.1.ebuild
+++ b/dev-ruby/bigdecimal/bigdecimal-4.0.1.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://github.com/ruby/bigdecimal/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="|| ( Ruby-BSD BSD-2 )"
SLOT="$(ver_cut 1)"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test"
ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
diff --git a/dev-ruby/csv/csv-3.3.5.ebuild b/dev-ruby/csv/csv-3.3.5.ebuild
index 973592df04b1..3c77c61c4aa6 100644
--- a/dev-ruby/csv/csv-3.3.5.ebuild
+++ b/dev-ruby/csv/csv-3.3.5.ebuild
@@ -20,7 +20,7 @@ SRC_URI="https://github.com/ruby/csv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="$(ver_cut 1)"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3.4.8 )"
diff --git a/dev-ruby/drb/drb-2.2.3.ebuild b/dev-ruby/drb/drb-2.2.3.ebuild
index 662ac5580d80..25a20a40e89d 100644
--- a/dev-ruby/drb/drb-2.2.3.ebuild
+++ b/dev-ruby/drb/drb-2.2.3.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://github.com/ruby/drb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test"
ruby_add_rdepend "dev-ruby/ruby2_keywords"
diff --git a/dev-ruby/ipaddr/ipaddr-1.2.8.ebuild b/dev-ruby/ipaddr/ipaddr-1.2.8.ebuild
index d61654e73a73..f009f808ba59 100644
--- a/dev-ruby/ipaddr/ipaddr-1.2.8.ebuild
+++ b/dev-ruby/ipaddr/ipaddr-1.2.8.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/ruby/ipaddr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test"
ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
diff --git a/dev-ruby/mutex_m/mutex_m-0.3.0.ebuild b/dev-ruby/mutex_m/mutex_m-0.3.0.ebuild
index 179cf290bae3..2299dcfd3157 100644
--- a/dev-ruby/mutex_m/mutex_m-0.3.0.ebuild
+++ b/dev-ruby/mutex_m/mutex_m-0.3.0.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/ruby/mutex_m/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
all_ruby_prepare() {
sed -e 's:_relative ": "./:' \
diff --git a/dev-ruby/nkf/nkf-0.2.0.ebuild b/dev-ruby/nkf/nkf-0.2.0.ebuild
index a8f678aa21c1..67caa0213c10 100644
--- a/dev-ruby/nkf/nkf-0.2.0.ebuild
+++ b/dev-ruby/nkf/nkf-0.2.0.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://github.com/ruby/nkf/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar
LICENSE="BSD-2"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test"
ruby_add_bdepend "test? ( dev-ruby/test-unit )"
diff --git a/dev-ruby/ostruct/ostruct-0.6.3.ebuild b/dev-ruby/ostruct/ostruct-0.6.3.ebuild
index 4e729d4edf99..26583ebf1769 100644
--- a/dev-ruby/ostruct/ostruct-0.6.3.ebuild
+++ b/dev-ruby/ostruct/ostruct-0.6.3.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/ruby/ostruct/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test"
ruby_add_depend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
diff --git a/dev-ruby/pstore/pstore-0.2.0.ebuild b/dev-ruby/pstore/pstore-0.2.0.ebuild
index 2d73dbe470ae..f3b0a5eeb1c9 100644
--- a/dev-ruby/pstore/pstore-0.2.0.ebuild
+++ b/dev-ruby/pstore/pstore-0.2.0.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/ruby/pstore/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test"
ruby_add_depend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
diff --git a/dev-ruby/readline/readline-0.0.4.ebuild b/dev-ruby/readline/readline-0.0.4.ebuild
index 82df831ff922..d58fbe4af53b 100644
--- a/dev-ruby/readline/readline-0.0.4.ebuild
+++ b/dev-ruby/readline/readline-0.0.4.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://github.com/ruby/readline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test"
all_ruby_prepare() {
diff --git a/dev-ruby/rrdtool-bindings/Manifest b/dev-ruby/rrdtool-bindings/Manifest
index 6c50cae8e6bd..7aa08abebc71 100644
--- a/dev-ruby/rrdtool-bindings/Manifest
+++ b/dev-ruby/rrdtool-bindings/Manifest
@@ -1,2 +1,3 @@
DIST rrdtool-1.10.3.tar.gz 2996378 BLAKE2B 5ceacdeb3c653db27516f65ea1748bc1e50c1b4a44ec2bdfe4375e34807654eff29d0c14e350a2b95b1b59da61e159d5cbadfb5bedcd44ab0ce79ee250e41733 SHA512 99149f69545c613eaee914a543113ac0744f2b1d18577b049cdfd0dc0cd74cf2ed00c01d094d40aeb047504fc0e81c52b932e87d51cfa9544a1aa8bcb2afceec
+DIST rrdtool-1.11.0.tar.gz 2994499 BLAKE2B 3c02df300dcd096aeccecf24b8331df5227d1ec5c24dfe3382357e8c1dc5ec66620e276b8834894c17200063788a6825c37936a716f7220bdc9169965519c964 SHA512 3b84bb3370ef7a6e8eb98aa17074bdc6a507b14dc13e3982226bd08d3aadb88a4c92e75247fb920aecd1c48f7ad44e2ec3d9559fdafcc7a112150ec4df47e7a1
DIST rrdtool-1.9.0.tar.gz 2972593 BLAKE2B a5633b1bcacf53823f95f7899872e67d9941faec235c56546de8b66faf15a958a7c0d6a86d569c078e11a478dc272b1fbe784c3d3d9d45e8c3de696f0d6e378a SHA512 ebeb1fd9e1eed8e01d4d08a4f07aa22c272cc95ac87852f81a892690e6f446b5398bf64689ea99622779cba490722d97b325bda2d2a6d4dfc0719929b2a4c041
diff --git a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.11.0.ebuild b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.11.0.ebuild
new file mode 100644
index 000000000000..e2ceed8ed348
--- /dev/null
+++ b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.11.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${P/-bindings}"
+MY_P="${MY_P/_/-}"
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+RUBY_FAKEGEM_TASK_DOC=""
+
+inherit ruby-ng
+
+DESCRIPTION="Ruby bindings for rrdtool"
+HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
+SRC_URI="https://github.com/oetiker/${PN/-bindings}-1.x/releases/download/v${PV}/${MY_P}.tar.gz"
+RUBY_S="${MY_P}/bindings/ruby"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="graph test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ ~net-analyzer/rrdtool-${PV}:=
+"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ eapply -p3 "${FILESDIR}"/${PN}-1.4.8-graph-ruby.patch
+ use !graph && eapply -p3 "${FILESDIR}"/${PN}-1.4.8-no-graph-ruby-test.patch
+}
+
+each_ruby_configure() {
+ rm ../../src/rrd_config.h || die
+ touch ../../src/rrd_config.h || die
+
+ export ABS_TOP_BUILDDIR="../.."
+
+ ${RUBY} extconf.rb \
+ --with-cflags="${CFLAGS} $(usex graph -DHAVE_RRD_GRAPH -UHAVE_RRD_GRAPH)" || die
+}
+
+each_ruby_compile() {
+ emake V=1
+}
+
+each_ruby_test() {
+ ${RUBY} -I. test.rb || die
+}
+
+all_ruby_install() {
+ dodoc CHANGES README
+}
+
+each_ruby_install() {
+ DESTDIR=${D} emake install
+}
diff --git a/dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild b/dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild
index f6d46e4d6943..a704e75537c9 100644
--- a/dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild
+++ b/dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild
@@ -16,4 +16,4 @@ HOMEPAGE="https://github.com/ruby/ruby2_keywords"
LICENSE="|| ( BSD-2 Ruby-BSD )"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
diff --git a/dev-ruby/sqlite3/sqlite3-2.9.5.ebuild b/dev-ruby/sqlite3/sqlite3-2.9.5.ebuild
index 0b506b254fc4..7dcbb891a178 100644
--- a/dev-ruby/sqlite3/sqlite3-2.9.5.ebuild
+++ b/dev-ruby/sqlite3/sqlite3-2.9.5.ebuild
@@ -23,7 +23,7 @@ RUBY_S="sqlite3-ruby-${PV}"
LICENSE="BSD"
SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos ~x64-solaris"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~x64-macos ~x64-solaris"
IUSE="doc test"
# We track the bundled sqlite version here
diff --git a/dev-util/cargo-c/Manifest b/dev-util/cargo-c/Manifest
index 22e6ce2c4b48..4d56473fd208 100644
--- a/dev-util/cargo-c/Manifest
+++ b/dev-util/cargo-c/Manifest
@@ -20,3 +20,5 @@ DIST cargo-c-0.10.23-crates.tar.xz 40352456 BLAKE2B 1d6dc199a8fe2a266b43bfaf1b0b
DIST cargo-c-0.10.23.tar.gz 38076 BLAKE2B cea92b666d3237d706e746ad97792f4400672dfa284ed4fad06c3e204f47f8a789a69aa2b4dc9753def4cf6140648a717629021de4b97c0afb6e31ce1c9645fb SHA512 c979e3f2ed549d34a00a63afc031b2bc3eaee910523a398af492fcad5633dfcada47850b2b9e5af667fc6ba40447649016f48438c37fc1d360aa670d803dce09
DIST cargo-c-0.10.25-crates.tar.xz 33240352 BLAKE2B 2e8032afada834cd129f7794862f38ae674ff68938cff363a85859d8c165042fbf29bbdcfa9be515e5aa989eabf6dc350582dcde2c97bbd3b9cd0f367c87cfca SHA512 6b267e094d730c36372decbc1d5e2583a37d286bb085ec8b7e7b348cc27d3cfd16a31527b9ccdbcc5da8b01fcf47e8b0ccbd95b88d003eed3330347e7c5845a4
DIST cargo-c-0.10.25.tar.gz 41486 BLAKE2B 48e69c2a64ffb49fae54340a8e1f9f2448d28d7d14b9b5c2390be2ebf5e601244d9d4c051cae64849564b653b34c07b4f396cfbda483babd6d6c45fce67cb752 SHA512 d4825463fbb49a42d3298d0ab4fbc4c34f518985aa16f5e2884cda676e8ae34102c2e677f2ec19d578ff7db73266b0075636eb65d3f1bac0aa41bafd89d20628
+DIST cargo-c-0.10.26-crates.tar.xz 33177500 BLAKE2B 852a28ea8a5afb6439af746334d330e0b653452516243207dd30c8343cd31708b6536b178a9e873921a88a16368452d467c3b6752c3169ef05762288e8386105 SHA512 d315d0ca4333df448179222363f08d7ec697da1bf4f42e2dc37bea34211e82e6520e72e42f2dd89c308de2a903f2d2d0cf4fe1b5d0f1014827030fcc80950ad8
+DIST cargo-c-0.10.26.tar.gz 41528 BLAKE2B 30ba00b7a0c543ca841a4dcb4d41018375031d44381fcbd0d6feaeeac989b874a303023ea752001ccf311bdf050360a4b77410efa099dffae13ac5a9d6a24430 SHA512 42fbc2c35c929020ab6d208fbb31216541a7df68df99bba6ca0a422934ecffbbb350b258ee118d5db8557d5bf5d27606f8d23a460c8c08304a237915640548f6
diff --git a/dev-util/cargo-c/cargo-c-0.10.26.ebuild b/dev-util/cargo-c/cargo-c-0.10.26.ebuild
new file mode 100644
index 000000000000..b25b56951307
--- /dev/null
+++ b/dev-util/cargo-c/cargo-c-0.10.26.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Auto-Generated by cargo-ebuild 0.5.4
+
+EAPI=8
+
+# Only bother defining this if the github tarball doesn't work!
+# Otherwise just comment it out and things should Just Work (TM).
+#MY_P="${P}+cargo-{CARGO_V}"
+
+CRATES="
+"
+
+RUST_MIN_VER="1.97.0"
+
+inherit cargo
+
+DESCRIPTION="Helper program to build and install c-like libraries"
+HOMEPAGE="https://github.com/lu-zero/cargo-c"
+if [[ -z ${MY_P} ]] ; then
+ SRC_URI="https://github.com/lu-zero/cargo-c/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+else
+ S="${WORKDIR}/${MY_P}"
+fi
+
+SRC_URI+="
+ https://github.com/gentoo-crate-dist/cargo-c/releases/download/v${PV}/${P}-crates.tar.xz
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 BSD-2 BSD ISC MIT MPL-2.0 MPL-2.0 Unicode-3.0 ZLIB
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-libs/libgit2-1.9.7:=
+ dev-libs/openssl:=
+ net-libs/libssh2:=
+ net-misc/curl[ssl]
+ virtual/zlib:=
+ dev-db/sqlite:3
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/cargo-capi usr/bin/cargo-cbuild usr/bin/cargo-ctest usr/bin/cargo-cinstall"
+
+src_configure() {
+ # Some crates will auto-build and statically link C libraries(!)
+ # Tracker bug #709568
+ export LIBSSH2_SYS_USE_PKG_CONFIG=1
+ export LIBGIT2_NO_VENDOR=1
+ export LIBSQLITE3_SYS_USE_PKG_CONFIG=1
+ export PKG_CONFIG_ALLOW_CROSS=1
+}
diff --git a/dev-util/cvise/cvise-2.12.0-r1.ebuild b/dev-util/cvise/cvise-2.12.0-r1.ebuild
index c9fc638be0b4..c2d46e1ede87 100644
--- a/dev-util/cvise/cvise-2.12.0-r1.ebuild
+++ b/dev-util/cvise/cvise-2.12.0-r1.ebuild
@@ -15,7 +15,7 @@ SRC_URI="
LICENSE="UoI-NCSA"
SLOT="0"
-KEYWORDS="~amd64 arm arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
REQUIRED_USE=${PYTHON_REQUIRED_USE}
diff --git a/dev-util/intel-graphics-compiler/Manifest b/dev-util/intel-graphics-compiler/Manifest
index 667b66b03dbb..3767b2495fb1 100644
--- a/dev-util/intel-graphics-compiler/Manifest
+++ b/dev-util/intel-graphics-compiler/Manifest
@@ -1,2 +1,3 @@
DIST intel-graphics-compiler-2.37.1.tar.gz 12508039 BLAKE2B 9555401482133ab6efa6b214179d8c2986efe261c03613684f3db3b5f8482b53310f70682dc2fc7b69ae3d8dc6bb93c26a24a64a29b3b0069f4a860f86e50084 SHA512 27a69e8f08527d6a1f1f88a6b326d151da2806085a7c23984a8dc2d3edf33342005d4931ffc84a502b64b9f45405d50df856258caae4ff8372373cf434b7d659
DIST intel-graphics-compiler-2.41.9.tar.gz 12952218 BLAKE2B 0471dab27e17a60e7c7c57ff22495532b4b5b083f33b8b7530bc20fd27769b55372746e6cadabd58e37bfcceb16139247e146b3c157f04780ea9153074d68e34 SHA512 f2decb6b8634d003816b403162407fc2884093914703fd2ad602855e67c07686ea94fdd301af74f7d41358d6e19f853350b5577678c8d40f17b2de66067c7882
+DIST intel-graphics-compiler-2.42.3.tar.gz 13106687 BLAKE2B 9aef4b15bc22ea519e2e6ab3e0955a2a2929f6081911196b566c3cb5653d3b1101ddfbec64b6b27f1ef0f0346d296e65a36bf0bbcf46e204ac7b02e024aee388 SHA512 5ddeff32f36af8bb19c5170b76b14b1e3863343c35b048792edc3ddfe6211bef2ede95e9a26d7117afbd1d95066b51eac5911544a140c59ea8d702c92b9d0efa
diff --git a/dev-util/intel-graphics-compiler/intel-graphics-compiler-2.42.3.ebuild b/dev-util/intel-graphics-compiler/intel-graphics-compiler-2.42.3.ebuild
new file mode 100644
index 000000000000..33940bfd45cd
--- /dev/null
+++ b/dev-util/intel-graphics-compiler/intel-graphics-compiler-2.42.3.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_BUILD_TYPE="Release"
+LLVM_COMPAT=( 22 )
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit cmake flag-o-matic llvm-r2 python-any-r1
+
+DESCRIPTION="LLVM-based OpenCL compiler for OpenCL targetting Intel Gen graphics hardware"
+HOMEPAGE="https://github.com/intel/intel-graphics-compiler"
+SRC_URI="https://github.com/intel/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="debug vc"
+
+DEPEND="
+ dev-libs/opencl-clang:22[${LLVM_USEDEP}]
+ >=dev-util/spirv-tools-1.4.363.0
+ $(llvm_gen_dep '
+ llvm-core/lld:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ ')
+ vc? (
+ >=dev-libs/intel-vc-intrinsics-0.25.0[${LLVM_USEDEP}]
+ dev-util/spirv-llvm-translator:22=
+ )
+"
+
+RDEPEND="
+ !dev-util/intel-graphics-compiler:legacy
+ ${DEPEND}
+"
+
+BDEPEND="
+ $(python_gen_any_dep 'dev-python/mako[${PYTHON_USEDEP}]')
+ $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
+ $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}')
+ ${PYTHON_DEPS}
+"
+
+python_check_deps() {
+ python_has_version "dev-python/mako[${PYTHON_USEDEP}]"
+ python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.0.8365-disable-git.patch"
+ "${FILESDIR}/${PN}-2.30.1-Werror.patch"
+ "${FILESDIR}/${PN}-2.41.5-guard-debug.patch"
+)
+
+pkg_setup() {
+ llvm-r2_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # Don't hardcode FORTIFY_SOURCE
+ sed -e '/-D_FORTIFY_SOURCE=2/d' -i IGC/CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ # Get LLVM version
+ local llvm_version="$(best_version -d llvm-core/llvm:${LLVM_SLOT})"
+ local llvm_version="${llvm_version%%-r*}"
+
+ # See https://github.com/intel/intel-graphics-compiler/issues/212
+ append-ldflags -Wl,-z,undefs
+
+ # See bug #938519 and https://github.com/intel/intel-graphics-compiler/issues/362
+ filter-lto
+
+ # See bug #893370 and https://github.com/intel/intel-graphics-compiler/issues/282
+ append-flags -U_GLIBCXX_ASSERTIONS
+
+ # See https://bugs.gentoo.org/718824
+ ! use debug && append-cppflags -DNDEBUG
+
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS="OFF"
+ -DCCLANG_FROM_SYSTEM="ON"
+ -DCMAKE_LIBRARY_PATH="$(get_llvm_prefix)/$(get_libdir)"
+ -DIGC_BUILD__VC_ENABLED="$(usex vc)"
+ -DIGC_OPTION__ARCHITECTURE_TARGET="Linux64"
+ -DIGC_OPTION__CLANG_MODE="Prebuilds"
+ -DIGC_OPTION__ENABLE_BF16_BIF="ON"
+ -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR="ON"
+ -DIGC_OPTION__LLD_MODE="Prebuilds"
+ -DIGC_OPTION__LLDELF_H_DIR="$(get_llvm_prefix)/include/lld/Common"
+ -DIGC_OPTION__LLVM_MODE="Prebuilds"
+ -DIGC_OPTION__LLVM_PREFERRED_VERSION="${llvm_version##*-}"
+ -DIGC_OPTION__OPENCL_HEADER_PATH="/usr/lib/clang/${LLVM_SLOT}/include/opencl-c.h"
+ -DIGC_OPTION__SPIRV_TOOLS_MODE="Prebuilds"
+ -DIGC_OPTION__SPIRV_TRANSLATOR_MODE="Prebuilds"
+ -DIGC_OPTION__USE_PREINSTALLED_SPIRV_HEADERS="ON"
+ $(usex vc '-DIGC_OPTION__VC_INTRINSICS_MODE=Prebuilds' '')
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ -DSPIRVLLVMTranslator_INCLUDE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_SLOT}/include/LLVMSPIRVLib"
+ -Wno-dev
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-util/source-highlight/source-highlight-9999.ebuild b/dev-util/source-highlight/source-highlight-9999.ebuild
new file mode 100644
index 000000000000..e53da05cff33
--- /dev/null
+++ b/dev-util/source-highlight/source-highlight-9999.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 flag-o-matic libtool optfeature autotools
+
+DESCRIPTION="Generate highlighted source code as an (x)html document"
+HOMEPAGE="https://www.gnu.org/software/src-highlite/source-highlight.html"
+
+LICENSE="GPL-3"
+SLOT="0"
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://https.git.savannah.gnu.org/git/src-highlite.git"
+else
+ SRC_URI="mirror://gnu/src-highlite/${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-solaris"
+fi
+
+IUSE="doc static-libs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-libs/boost:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-devel/bison
+ sys-devel/flex
+ test? ( dev-util/ctags )
+"
+
+src_prepare() {
+ default
+
+ [[ ${PV} == 9999 ]] && eautoreconf
+
+ if ! use doc; then
+ sed -i -e 's/ doc / /g' Makefile* || die
+ fi
+
+ # Although all unpatched libtools are probably broken, this one ignores LTO
+ # warning flags.
+ elibtoolize
+}
+
+src_configure() {
+ # Needs bison
+ unset YACC LEX
+
+ # Fails to build otherwise with some ambiguous refs
+ append-cxxflags -std=gnu++17
+
+ # ODR violations: https://savannah.gnu.org/bugs/index.php?65086
+ filter-lto
+
+ econf \
+ --without-bash-completion \
+ $(use_enable static-libs static) \
+ --with-boost="${EPREFIX}/usr" \
+ --with-boost-regex="boost_regex"
+}
+
+src_compile() {
+ local -x LD_LIBRARY_PATH="${S}/lib/srchilite/.libs/"
+ emake
+}
+
+src_test() {
+ local -x LD_LIBRARY_PATH="${S}/lib/srchilite/.libs/"
+ emake check
+}
+
+src_install() {
+ use doc && local HTML_DOCS=( doc/*.{html,css,java} )
+ default
+
+ # That's not how we want it
+ rm -rf "${ED}"/usr/share/{aclocal,doc} || die
+
+ # package provides .pc file
+ find "${D}" -name '*.la' -delete || die
+
+ dobashcomp completion/source-highlight
+}
+
+pkg_postinst() {
+ optfeature "ctags support" dev-util/ctags
+}
diff --git a/dev-util/tree-sitter-cli/tree-sitter-cli-0.27.0.ebuild b/dev-util/tree-sitter-cli/tree-sitter-cli-0.27.0.ebuild
index 70b27ace6644..333a4f97afff 100644
--- a/dev-util/tree-sitter-cli/tree-sitter-cli-0.27.0.ebuild
+++ b/dev-util/tree-sitter-cli/tree-sitter-cli-0.27.0.ebuild
@@ -27,7 +27,7 @@ LICENSE+="
MIT Unicode-3.0 ZLIB
"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
# Test seems to require files (grammar definitions) that we don't have.
RESTRICT="test"
diff --git a/eclass/librewolf-r3.eclass b/eclass/librewolf-r3.eclass
deleted file mode 100644
index 53c51c0a70ec..000000000000
--- a/eclass/librewolf-r3.eclass
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: librewolf-r3.eclass
-# @MAINTAINER:
-# yamabiiko
-# @AUTHOR:
-# yamabiiko
-# @BLURB:
-# @DESCRIPTION: librewolf customisation/configuration
-
-if [[ ! ${_LIBREWOLF_R3} ]]; then
-
-inherit git-r3
-
-librewolf-r3_src_configure() {
-local _PN="LibreWolf"
-[[ "${PN}" == "librewolf-nightly" ]] && _PN="${_PN}-Nightly"
-# stolen from the AUR PKGBUILD with irrelevant options removed (here irrelvant means the feature is controlled via a useflag so there's no need to unconditionally enable/disable it here. Only the common options we want to always apply are listed here)
-cat >> "${S}/.mozconfig" <<END
-ac_add_options --enable-application=browser
-
-ac_add_options --prefix=/usr
-ac_add_options --enable-release
-ac_add_options --enable-hardening
-ac_add_options --enable-rust-simd
-
-# Branding
-ac_add_options --enable-update-channel=release
-ac_add_options --with-app-name='${PN}'
-ac_add_options --with-branding=browser/branding/${PN}
-ac_add_options --with-distribution-id=io.gitlab.${PN}
-ac_add_options --with-unsigned-addon-scopes=app,system
-ac_add_options --allow-addon-sideload
-export MOZ_REQUIRE_SIGNING=
-
-# Features
-ac_add_options --disable-crashreporter
-ac_add_options --disable-updater
-
-# Disables crash reporting, telemetry and other data gathering tools
-mk_add_options MOZ_CRASHREPORTER=0
-mk_add_options MOZ_DATA_REPORTING=0
-mk_add_options MOZ_SERVICES_HEALTHREPORT=0
-mk_add_options MOZ_TELEMETRY_REPORTING=0
-END
-
- # Remove some pre-installed addons that might be questionable
- eapply "${WORKDIR}/patches/remove_addons.patch"
-
- # Disable (some) megabar functionality
- # Adapted from https://github.com/WesleyBranton/userChrome.css-Customizations
- eapply "${WORKDIR}/patches/megabar.patch"
-
- # Disabling Pocket
- sed -i "s/'pocket'/#'pocket'/g" "${S}"/browser/components/moz.build
-
- eapply "${WORKDIR}/patches/context-menu.patch"
-
- # Remove mozilla vpn ads
- eapply "${WORKDIR}/patches/mozilla-vpn-ad.patch"
-
- # Prevent creation of '.mozilla' (Will need to be symlinked for some browser plugins)
- eapply "${WORKDIR}/patches/mozilla_dirs.patch"
-
- # this one only to remove an annoying error message:
- sed -i 's#SaveToPocket.init();#// SaveToPocket.init();#g' "${S}"/browser/components/BrowserGlue.jsm
-
- # Remove Internal Plugin Certificates
- _cert_sed='s#if (aCert.organizationalUnit == "Mozilla [[:alpha:]]\+") {\n'
- _cert_sed+='[[:blank:]]\+return AddonManager\.SIGNEDSTATE_[[:upper:]]\+;\n'
- _cert_sed+='[[:blank:]]\+}#'
- _cert_sed+='// NOTE: removed#g'
- sed -z "$_cert_sed" -i "${S}"/toolkit/mozapps/extensions/internal/XPIInstall.jsm
-
- # allow SearchEngines option in non-ESR builds
- sed -i 's#"enterprise_only": true,#"enterprise_only": false,#g' "${S}"/browser/components/enterprisepolicies/schemas/policies-schema.json
-
- _settings_services_sed='s#firefox.settings.services.mozilla.com#f.s.s.m.c.qjz9zk#g'
-
- # stop some undesired requests (https://gitlab.com/librewolf-community/browser/common/-/issues/10)
- sed "$_settings_services_sed" -i "${S}"/browser/components/newtab/data/content/activity-stream.bundle.js
- sed "$_settings_services_sed" -i "${S}"/modules/libpref/init/all.js
- sed "$_settings_services_sed" -i "${S}"/services/settings/Utils.jsm
- sed "$_settings_services_sed" -i "${S}"/toolkit/components/search/SearchUtils.jsm
-
- rm -f ${WORKDIR}/common/source_files/mozconfig
- cp -r ${WORKDIR}/common/source_files/* "${S}"/
- if [[ "$PN" == "librewolf-nightly" ]]
- then
- # This makes it so librewolf-nightly can be installed alongside librewolf using a different profile so things don't conflict
- mv "${S}/browser/branding/librewolf" "${S}/browser/branding/librewolf-nightly"
- eapply "${FILESDIR}/librewolf-nightly-branding.diff"
- fi
-}
-
-librewolf-r3_src_unpack() {
- if [[ "$PN" == "librewolf-nightly" ]]
- then
- mercurial_src_unpack
- fi
-
- git-r3_fetch "https://gitlab.com/librewolf-community/browser/common.git" \
- "v${LIBREWOLF_PV}"
- git-r3_checkout "https://gitlab.com/librewolf-community/browser/common.git" \
- "${WORKDIR}/common"
-
- git-r3_fetch "https://gitlab.com/librewolf-community/settings.git"
- git-r3_checkout "https://gitlab.com/librewolf-community/settings.git" \
- "${WORKDIR}/settings"
-
- # Grab patches
- # pre-89 patches can be grabed from the 'linux' librewolf repository
- # after 89 patches were moved to 'common'
- patch_list=(
- "remove_addons.patch"
- "megabar.patch"
- "context-menu.patch"
- "mozilla-vpn-ad.patch"
- "mozilla_dirs.patch"
- )
-
- if ver_test -lt "89.0"; then
- git-r3_fetch "https://gitlab.com/librewolf-community/browser/linux.git" \
- "v${LIBREWOLF_PV}"
- git-r3_checkout "https://gitlab.com/librewolf-community/browser/linux.git" \
- "${WORKDIR}/linux"
-
- mkdir "${WORKDIR}/patches"
-
- for patch in ${patch_list[@]}; do
- cp "${WORKDIR}/linux/${patch}" "${WORKDIR}/patches"
- done
- else
- mkdir "${WORKDIR}/patches"
- for patch in ${patch_list[@]}; do
- cp "${WORKDIR}/common/patches/${patch}" "${WORKDIR}/patches"
- cp "${WORKDIR}/common/patches/removed-patches/${patch}" "${WORKDIR}/patches"
- done
- fi
-}
-
-librewolf-r3_src_install() {
- local vendorjs="$ED/usr/$(get_libdir)/${PN}/browser/defaults/preferences/vendor.js"
-
- cat >> "$vendorjs" <<END
-// Use system-provided dictionaries
-pref("spellchecker.dictionary_path", "/usr/share/hunspell");
-
-// Don't disable extensions in the application directory
-// done in librewolf.cf
-// pref("extensions.autoDisableScopes", 11);
-END
-
- cp -r ${WORKDIR}/settings/* ${ED}/usr/$(get_libdir)/${PN}/
-
- local distini="$ED/usr/$(get_libdir)/${PN}/distribution/distribution.ini"
- install -Dvm644 /dev/stdin "$distini" <<END
-[Global]
-id=io.gitlab.${_pkgname}
-version=1.0
-about=LibreWolf
-
-[Preferences]
-app.distributor="LibreWolf Community"
-app.distributor.channel=${PN}
-app.partner.librewolf=${PN}
-END
-}
-
-_LIBREWOLF_R3=1
-fi
diff --git a/games-server/bedrock-server/Manifest b/games-server/bedrock-server/Manifest
index d6317d69c19c..8ae5e1ee22d5 100644
--- a/games-server/bedrock-server/Manifest
+++ b/games-server/bedrock-server/Manifest
@@ -1 +1 @@
-DIST bedrock-server-1.26.45.1.zip 104052820 BLAKE2B 132d20395e9618161f6447d5f14f79816d59ff47f5cef9c05c6adf40f5944edaaf21cc2dfe622f228d5b4f604548af6e9362d4b7f39ea9538896d63cf71dfc33 SHA512 6027cba2edfb7dd6a78b760c58f885987b429f5538a9da9b993a997a49f32bf4f9489c56238fd15a921a7550ddc77a1a6d1db9156c3fa4ffedf85e0c1719aec3
+DIST bedrock-server-1.26.52.3.zip 94927522 BLAKE2B ad62e5f15bcaf08df6f64f079714caf28144e5e60977dc46d25a4c61b431df72dd5dd0ee578044b068ad06f841420f10fadfe238409dccbc1299b5a5305ad645 SHA512 9f503d06d48a89abdebc69ff12141cb0eac4bf0d246b0d98d749ff0bfee21b4930ee10dea7bf66eec104c65fdc666f4d9486e429c9c1e9fd4577a7349b2a1933
diff --git a/games-server/bedrock-server/bedrock-server-1.26.45.1.ebuild b/games-server/bedrock-server/bedrock-server-1.26.52.3.ebuild
index e363e29bfbd4..e363e29bfbd4 100644
--- a/games-server/bedrock-server/bedrock-server-1.26.45.1.ebuild
+++ b/games-server/bedrock-server/bedrock-server-1.26.52.3.ebuild
diff --git a/games-server/minecraft-server/Manifest b/games-server/minecraft-server/Manifest
index 3ffe03bd0f7b..7f1e540c38e6 100644
--- a/games-server/minecraft-server/Manifest
+++ b/games-server/minecraft-server/Manifest
@@ -1 +1 @@
-DIST minecraft-server-26.2.jar 60894273 BLAKE2B d6e2c61053e8cedd078718ab3078f7540a7953f387556995f55e20c5e72ab047d820b90218c2c8051bbfefd978eec586cda16ebcabcb64b9f7b0047c41ebca4c SHA512 a7d6df49426295102c6ae8fc1453af64d463e4dd8523c870466dd0410d12a998aec464fdb7bbf99889c80fc72aaac26a55bc675d2e32f49ede0e1839ecaf4592
+DIST minecraft-server-26.3.jar 62294556 BLAKE2B 206329fb6e084e66539669f5d1dffc684acc24049b306e901cef83d7a0c633f17ef7dbbb33a6e6b34879283952f9c2eb333af8a4d39612e4662296db2c333119 SHA512 b72752ccbf9be62d4ec6aa9c7c2f53c6842a8f1eb0ce418256150f5993abea65f859af7d7c30df12c5a1f2831250458df06831e1db10501015501452ad260968
diff --git a/games-server/minecraft-server/minecraft-server-26.2.ebuild b/games-server/minecraft-server/minecraft-server-26.3.ebuild
index 55085ff54cd0..089e6c793f87 100644
--- a/games-server/minecraft-server/minecraft-server-26.2.ebuild
+++ b/games-server/minecraft-server/minecraft-server-26.3.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-EGIT_COMMIT="823e2250d24b3ddac457a60c92a6a941943fcd6a"
+EGIT_COMMIT="33680f5f2ac32864d6d7cf5e56a705fdb3e05f4c"
README_GENTOO_SUFFIX="-r1"
inherit readme.gentoo-r1 java-pkg-2 systemd
diff --git a/games-simulation/openrct2/Manifest b/games-simulation/openrct2/Manifest
index 6101ff23824e..dcebf550f47e 100644
--- a/games-simulation/openrct2/Manifest
+++ b/games-simulation/openrct2/Manifest
@@ -1,7 +1,9 @@
DIST openrct2-0.5.4.tar.gz 24954384 BLAKE2B 9f50700dc3acaae1802dda41d69e85e4a2646a949e8297e07cdf79c35e42c90de609a788319d4b45b83fb2b073858560551886e91e72f500a1ce4d8c7c0b8a1b SHA512 69fb69ee6387d12ac9bd17c20e3096054ce0ef9f78e7ec90caffc379e029cc0f9534375300d22fc836695e9e6dece8e94a38f7f718e37375aa5d0c24d7b71df1
-DIST openrct2-0.5.5.tar.gz 31396987 BLAKE2B 165369b585cde0b6a322f90a4a6910df5494282005c610702fbf83e0fdb0f82d93470c5fad92252f15a3bdff204ce41d9618eb33861f23d15847dd1818907572 SHA512 812c850bb831ab1635411cd47334d4dd75c2efc5056de070f37a319df6ffcaa4753f9cb58e8d7ce0eb0095f00587e2b8b316f1346029fca62659973e0dd3e47c
+DIST openrct2-0.5.6.tar.gz 31422067 BLAKE2B 4d3304ce2a0b046e59432f3a8a08816031e522e3b5aaea6ea4113e7132c8afacafe9a2c181dce34b2b764e45c65c5a57aa3f89339bd76d97d86e8826767b71f6 SHA512 6d59e1778e1d157134fad19c94bc9ff894e1a27de5af72ee3d9f05892dc5f87c8544a4e774690e51c6ded097c5ead00e6e503488ba04287a853f0816401fd328
DIST openrct2-objects-1.7.11.zip 11071539 BLAKE2B 8ccb9a52ba20d729980bcb826e5ad868cf24d86270c759118e85d0fb4662b4ef5be1c1e17bb92a7b6b48e8d765828e9dfc755a3aa047caaddf3e1023f22e0fbd SHA512 7c679f17af23fdd861867939aa46df4a89336d27668e7c0ffa956cc61a6f4572a20b7c5b83a4e2a705d4f989af64207842cbb428d0bf13510206ea03fbfe6f6d
+DIST openrct2-objects-1.8.0.zip 11117346 BLAKE2B 58d6b62fa0ed3aac11a8a537b613700f2a6d1046ef1122c7c14712447823923e8a55f78b73ae5496673abf4df2b0a3082510673237adc49b0c207ed378c59b6c SHA512 48c9eb3887d6d8d0b880abd16c1ffc75c18895f893067d65247505152389892821d82f03829e217af5d2e2e27ac314139707ae45abfd71c13a3f954076fdfec5
DIST openrct2-openmusic-1.6.1.zip 42921420 BLAKE2B cdec26dda1797b27a57d0ffd87c44c740869dff8cffc1ac077d6ce1eee747d32ce09547dc9a70256106b48126e08f04c04668c7fb8b3df2e04db72ef5f0cc344 SHA512 bc524b20ab72696a5f38bd65d96a4a83f29a0e65884d9b847540631d31aae42f3bdc4a6db5fa5fe34869012e598543b9327ad92d34e8f4f0f274c7f04d4a2e7f
DIST openrct2-opensound-1.0.6.zip 4273495 BLAKE2B ae92336d8b4a1793a01dda701a2bfdbd5efad285029d6c199f657caaade3a6341c2cb7f1a4a9f420e399b6a7763ed2a50a4c2663dadfea3e3079e374b8d2f707 SHA512 8ae2d31687c29cfcdc7630da5addc3bed4b94ed1712891bb1e22d2747f2f8435b7fda843b4490543dbd9d63d392c8b3e4863cd3e669df9ca34f9780c8d9e5485
DIST openrct2-replays-0.0.97.zip 1356551 BLAKE2B 542dbc79ae3c4c22e9fdc90f06868a9c042b21c58807455df327245854a18af02020e26bfa3e417c234bc3df38c7f132759dd25918c0c549976d9169d2c6ecbe SHA512 435a48149f2c03a4854e30edf4bf901f8370a035fe988cab6cf2260143c5904c2057b5f7e541bb4b3bb7b88d0255d087577208e3c201bc1c368aec0528d68acd
DIST openrct2-title-sequences-0.4.26.zip 8751039 BLAKE2B d01ae8952f482c34166e593f774c0e195daa1586d295a0129ecbae2d59e3d8d5cac18640041eece3f72a223cc19cbf62a9a367dcb1355db7b7cfc32f9d07692e SHA512 7faa5afcebd0f95e184862bcb77f3ef41b59b900ad55eadbf4373b16fac315470734a854a4bd15496e832478ca0de6ea6f8f42f20c8f5d8f0403cbaae71338c5
+DIST openrct2-title-sequences-0.5.6.zip 6867838 BLAKE2B 2311c7f365ada99237d987782fc3a72362412aef257453d33774aca70635e34f4593b7f1c623c8e27e935ef2e6f856928d8c69c4ac4bbbde16da517e0eafa2df SHA512 ba6b1cfc436f74606d6f21183ce295a1bd07fb152d2df766e3dc35206f2b14df08649d818e71db6eaaea53a04d755fa927a327bc7bc28eeb61b8fee1525cbeb7
diff --git a/games-simulation/openrct2/openrct2-0.5.5.ebuild b/games-simulation/openrct2/openrct2-0.5.6.ebuild
index 636811b90775..6d29ba9ff9bf 100644
--- a/games-simulation/openrct2/openrct2-0.5.5.ebuild
+++ b/games-simulation/openrct2/openrct2-0.5.6.ebuild
@@ -12,10 +12,10 @@ MY_PN_RPL="replays"
MY_PN_SFX="opensound"
MY_PN_TS="title-sequences"
MY_PV_MSX="1.6.1"
-MY_PV_OBJ="1.7.11"
+MY_PV_OBJ="1.8.0"
MY_PV_RPL="0.0.97"
MY_PV_SFX="1.0.6"
-MY_PV_TS="0.4.26"
+MY_PV_TS="0.5.6"
DESCRIPTION="An open source re-implementation of Chris Sawyer's RollerCoaster Tycoon 2"
HOMEPAGE="https://openrct2.org/"
diff --git a/gnome-base/gvfs/gvfs-1.58.5.ebuild b/gnome-base/gvfs/gvfs-1.58.5.ebuild
index 7d6b6f6ff7d2..6b9cccb4adca 100644
--- a/gnome-base/gvfs/gvfs-1.58.5.ebuild
+++ b/gnome-base/gvfs/gvfs-1.58.5.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://gitlab.gnome.org/GNOME/gvfs"
LICENSE="LGPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
IUSE="afp archive bluray cdda cdr elogind fuse +gcr google keyring gnome-online-accounts gphoto2 +http ios mtp nfs onedrive policykit samba +sftp systemd test +udev udisks zeroconf"
RESTRICT="!test? ( test )"
# elogind/systemd only relevant to udisks (in v1.38.1)
diff --git a/gui-apps/xwaylandvideobridge/xwaylandvideobridge-0.5.3.ebuild b/gui-apps/xwaylandvideobridge/xwaylandvideobridge-0.5.3.ebuild
index 1ac72102f6bc..dade1e173c20 100644
--- a/gui-apps/xwaylandvideobridge/xwaylandvideobridge-0.5.3.ebuild
+++ b/gui-apps/xwaylandvideobridge/xwaylandvideobridge-0.5.3.ebuild
@@ -14,7 +14,7 @@ https://invent.kde.org/system/xwaylandvideobridge"
if [[ ${KDE_BUILD_TYPE} == release ]]; then
SRC_URI="mirror://kde/stable/${PN}/src/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
fi
LICENSE="GPL-2+"
diff --git a/gui-libs/gtk4-layer-shell/gtk4-layer-shell-1.3.0.ebuild b/gui-libs/gtk4-layer-shell/gtk4-layer-shell-1.3.0.ebuild
index d5109cb956be..074b4d2274bc 100644
--- a/gui-libs/gtk4-layer-shell/gtk4-layer-shell-1.3.0.ebuild
+++ b/gui-libs/gtk4-layer-shell/gtk4-layer-shell-1.3.0.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/wmww/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.t
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 arm64"
IUSE="doc examples introspection +smoke-tests test vala"
REQUIRED_USE="vala? ( introspection )"
diff --git a/kde-apps/okular/okular-26.04.3-r1.ebuild b/kde-apps/okular/okular-26.04.3-r1.ebuild
index 49f7e2eae8b1..d44cecc63927 100644
--- a/kde-apps/okular/okular-26.04.3-r1.ebuild
+++ b/kde-apps/okular/okular-26.04.3-r1.ebuild
@@ -15,7 +15,7 @@ HOMEPAGE="https://okular.kde.org https://apps.kde.org/okular/"
LICENSE="GPL-2" # TODO: CHECK
SLOT="6"
-KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
IUSE="crypt djvu epub markdown mobi +pdf +postscript share speech +tiff"
# slot op: Uses Qt6::CorePrivate
diff --git a/kde-plasma/ksshaskpass/ksshaskpass-6.7.5-r1.ebuild b/kde-plasma/ksshaskpass/ksshaskpass-6.7.5-r1.ebuild
index 69518efd4651..0f56ee8d264b 100644
--- a/kde-plasma/ksshaskpass/ksshaskpass-6.7.5-r1.ebuild
+++ b/kde-plasma/ksshaskpass/ksshaskpass-6.7.5-r1.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE+=" https://invent.kde.org/plasma/ksshaskpass"
LICENSE="GPL-2" # TODO: CHECK
SLOT="6"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86"
IUSE=""
DEPEND="
diff --git a/kde-plasma/spectacle/spectacle-6.7.5-r1.ebuild b/kde-plasma/spectacle/spectacle-6.7.5-r1.ebuild
index d0ebf508ac84..288b6d3b42fa 100644
--- a/kde-plasma/spectacle/spectacle-6.7.5-r1.ebuild
+++ b/kde-plasma/spectacle/spectacle-6.7.5-r1.ebuild
@@ -14,7 +14,7 @@ HOMEPAGE="https://apps.kde.org/spectacle/"
LICENSE="LGPL-2+ handbook? ( FDL-1.3 )"
SLOT="6"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86"
IUSE="share"
# slot op: Uses Qt::GuiPrivate for qtx11extras_p.h
diff --git a/mail-mta/opensmtpd/Manifest b/mail-mta/opensmtpd/Manifest
index 584dcaf412de..c6c66279a975 100644
--- a/mail-mta/opensmtpd/Manifest
+++ b/mail-mta/opensmtpd/Manifest
@@ -6,3 +6,5 @@ DIST opensmtpd-7.7.0p0.sum.sig 256 BLAKE2B 4a57ed2b3f93b224f66280bc4c98181d77f25
DIST opensmtpd-7.7.0p0.tar.gz 978481 BLAKE2B 0462c7f9c92c2af61498c0a2633e9f8863951cf4edfcfc6bf6683520a2653aa3e148cb90075a73b53135396f0b2a903685c9469f83362c25725a1e637a29c219 SHA512 6a46a93bc0689603250376e414fc481fd5997c2bc7fc4e12d1522a9f4a2cad610f1c9452e9501b077e3ba2219a253e693160540fcfba595da8f68349bf795b92
DIST opensmtpd-7.8.0p1.sum.sig 256 BLAKE2B 5b463c124b15ce68660dacf5553a62fdaea031980b5e0868a8713a129a407ca71651d92e8c73351cec377ef231b9010945e5297e2c6da9703908f71bd1691a9d SHA512 e77b1538660c95bd9c3c0bdd6aa7ba65066fba7edb6c294d396b80aa82f202ec2ca966fe7ee6c6eac2f863a9b1ce9b8184938b93bceb24a87d802605bc10e375
DIST opensmtpd-7.8.0p1.tar.gz 745487 BLAKE2B c263b5203e0a9e299900ba4d6d8c7ad036afb1e05d6b0e4c060a1bbfdfb398349d4bd3af3b0b865506e6d0a35edd149ef0f33a69847e26909e50a3d7a6b3ca64 SHA512 5364036cc0503436ed0836ccd8b5a756e1aec3625b142f15fc3a029dba47e05e6c9fe94e40d6d475a1bfb1b0ca1ee39ba21a4c9d8a98eb5d97b335f5e1389a3a
+DIST opensmtpd-7.9.0p0.sum.sig 256 BLAKE2B b403b664b9f031e25f6c50eae5abfb663929eee67d3f880125eb5645f0f996cd4beead4e580398be9f6b3d35bf9cb874f8eb2e1fe377c35ccfa333f44439d716 SHA512 9607ecd7c3eac444d6284e821d1432d628450915b69868f7270d633d8d52ee70681a21202d153f870e2fabcb13eb4c2526a2ddad171b56ea6e7a6c0f8091150a
+DIST opensmtpd-7.9.0p0.tar.gz 981105 BLAKE2B 0bb3a0cf140a113750876e51dca3a3a38064a21f2da9c229f1af43004fd9c7af9ed79e33f46c2862e75df822b8e13ed2b53011734a78326757c178be62d291de SHA512 8a893adb5c291f19a64b569df27565ddeee8c13f376146b13f33b4515d4ac5f149cad351ab2a4624bc81cf182ccf84307f36283ab0e33de0944e67f8aef3e919
diff --git a/mail-mta/opensmtpd/opensmtpd-7.8.0_p1.ebuild b/mail-mta/opensmtpd/opensmtpd-7.8.0_p1.ebuild
index 662a1278e0d7..92d695ca1cae 100644
--- a/mail-mta/opensmtpd/opensmtpd-7.8.0_p1.ebuild
+++ b/mail-mta/opensmtpd/opensmtpd-7.8.0_p1.ebuild
@@ -16,7 +16,7 @@ S="${WORKDIR}/${P/_}"
LICENSE="ISC BSD BSD-1 BSD-2 BSD-4"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
IUSE="berkdb +mta pam split-usr"
DEPEND="
diff --git a/mail-mta/opensmtpd/opensmtpd-7.9.0_p0.ebuild b/mail-mta/opensmtpd/opensmtpd-7.9.0_p0.ebuild
new file mode 100644
index 000000000000..662a1278e0d7
--- /dev/null
+++ b/mail-mta/opensmtpd/opensmtpd-7.9.0_p0.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_METHOD="signify"
+inherit autotools pam systemd verify-sig
+
+DESCRIPTION="Lightweight but featured SMTP daemon from OpenBSD"
+HOMEPAGE="https://www.opensmtpd.org"
+SRC_URI="
+ https://www.opensmtpd.org/archives/${P/_}.tar.gz
+ verify-sig? ( https://www.opensmtpd.org/archives/${P/_}.sum.sig )
+"
+S="${WORKDIR}/${P/_}"
+
+LICENSE="ISC BSD BSD-1 BSD-2 BSD-4"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="berkdb +mta pam split-usr"
+
+DEPEND="
+ dev-libs/libbsd
+ dev-libs/libevent:=
+ dev-libs/openssl:=
+ virtual/zlib:=
+ virtual/libcrypt:=
+ berkdb? ( sys-libs/db:= )
+ elibc_musl? ( sys-libs/fts-standalone )
+ pam? ( sys-libs/pam )
+"
+RDEPEND="${DEPEND}
+ acct-user/smtpd
+ acct-user/smtpq
+ app-misc/ca-certificates
+ net-mail/mailbase
+ !mail-client/mailx-support
+ !mail-mta/courier
+ !mail-mta/esmtp
+ !mail-mta/exim
+ !mail-mta/msmtp[mta]
+ !mail-mta/netqmail
+ !mail-mta/nullmailer
+ !mail-mta/postfix
+ !mail-mta/sendmail
+ !mail-mta/ssmtp[mta]
+"
+BDEPEND="
+ app-alternatives/yacc
+ virtual/pkgconfig
+ verify-sig? ( sec-keys/signify-keys-opensmtpd )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/signify-keys/${PN}.pub"
+
+QA_CONFIG_IMPL_DECL_SKIP=( closefrom )
+
+DOCS=( {CHANGES,README}.md )
+
+src_unpack() {
+ if use verify-sig; then
+ # Too many levels of symbolic links
+ cp "${DISTDIR}"/${P/_}.{sum.sig,tar.gz} "${WORKDIR}" || die
+ verify-sig_verify_signed_checksums \
+ ${P/_}.sum.sig sha256 ${P/_}.tar.gz
+ fi
+ default
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --sysconfdir="${EPREFIX}"/etc/smtpd
+ --with-path-CAfile="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
+ --with-path-empty="${EPREFIX}"/var/empty
+ --with-path-mbox="${EPREFIX}"/var/spool/mail
+ --with-path-queue="${EPREFIX}"/var/spool/smtpd
+ --with-path-pidfile=/run
+ --with-path-socket=/run
+ --with-user-smtpd=smtpd
+ --with-user-queue=smtpq
+ --with-group-queue=smtpq
+ --with-libevent="${EPREFIX}"/usr/$(get_libdir)
+ --with-libssl="${EPREFIX}"/usr/$(get_libdir)
+ --with-libz=="${EPREFIX}"/usr/$(get_libdir)
+ $(use_with berkdb table-db)
+ $(use_with pam auth-pam)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/smtpd.initd smtpd
+ systemd_newunit "${FILESDIR}"/smtpd-r1.service smtpd.service
+
+ use pam && newpamd "${FILESDIR}"/smtpd.pam smtpd
+
+ dosym smtpctl /usr/sbin/makemap
+ dosym smtpctl /usr/sbin/newaliases
+
+ if use mta; then
+ dodir /usr/sbin
+ dosym smtpctl /usr/sbin/sendmail
+ # on USE="-split-usr" system sbin and bin are merged
+ # so symlink made above will collide with one below
+ use split-usr && dosym ../sbin/smtpctl /usr/bin/sendmail
+ dodir /usr/$(get_libdir)
+ dosym -r /usr/sbin/smtpctl /usr/$(get_libdir)/sendmail
+ fi
+}
diff --git a/media-fonts/unifont/unifont-18.0.01.ebuild b/media-fonts/unifont/unifont-18.0.01.ebuild
index 682bb8fee2ca..fce54c25d98a 100644
--- a/media-fonts/unifont/unifont-18.0.01.ebuild
+++ b/media-fonts/unifont/unifont-18.0.01.ebuild
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="GPL-2+ || ( GPL-2+-with-font-exception OFL-1.1 ) public-domain utils? ( FDL-1.3+ )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="ttf utils"
REQUIRED_USE="ttf? ( utils )"
diff --git a/media-gfx/photoqt/photoqt-5.4.1.ebuild b/media-gfx/photoqt/photoqt-5.4.1.ebuild
index 68d9709d1463..3de79fb604fb 100644
--- a/media-gfx/photoqt/photoqt-5.4.1.ebuild
+++ b/media-gfx/photoqt/photoqt-5.4.1.ebuild
@@ -13,7 +13,7 @@ S="${WORKDIR}/${PN}-v${PV}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="barcode chromecast devil exif extensions ffmpegthumbnailer geolocation graphicsmagick +imagemagick lcms mpv pdf raw test vips wayland"
REQUIRED_USE="chromecast? ( ${PYTHON_REQUIRED_USE} )"
RESTRICT="!test? ( test )"
diff --git a/media-libs/babl/babl-0.1.128.ebuild b/media-libs/babl/babl-0.1.128.ebuild
index f8ddd8eadaf2..e8aff231336d 100644
--- a/media-libs/babl/babl-0.1.128.ebuild
+++ b/media-libs/babl/babl-0.1.128.ebuild
@@ -12,7 +12,7 @@ if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/babl.git"
else
SRC_URI="https://download.gimp.org/pub/${PN}/${PV:0:3}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv -sparc ~x86 ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv -sparc x86 ~x64-macos ~x64-solaris"
fi
DESCRIPTION="A dynamic, any to any, pixel format conversion library"
diff --git a/media-libs/libkate/libkate-0.4.3.ebuild b/media-libs/libkate/libkate-0.4.3.ebuild
index 9d883cad9743..ba767d39a970 100644
--- a/media-libs/libkate/libkate-0.4.3.ebuild
+++ b/media-libs/libkate/libkate-0.4.3.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://downloads.xiph.org/releases/kate/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
IUSE="debug"
RDEPEND="
diff --git a/media-libs/libmatroska/libmatroska-1.7.2.ebuild b/media-libs/libmatroska/libmatroska-1.7.2.ebuild
index 62e88d01bddd..40e7d762d85a 100644
--- a/media-libs/libmatroska/libmatroska-1.7.2.ebuild
+++ b/media-libs/libmatroska/libmatroska-1.7.2.ebuild
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="LGPL-2.1"
SLOT="0/7" # subslot = soname major version
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86"
RDEPEND=">=dev-libs/libebml-1.4.3:="
DEPEND="${RDEPEND}"
diff --git a/media-libs/libxmp/Manifest b/media-libs/libxmp/Manifest
index d333e9ca3830..916f086cd16c 100644
--- a/media-libs/libxmp/Manifest
+++ b/media-libs/libxmp/Manifest
@@ -1,2 +1,2 @@
DIST libxmp-4.6.3.tar.gz 805616 BLAKE2B 5cf99574d990d48f069f1ebb3f06d6b0658f41adb5f032b11c7d8849f4a8ad08597e3881d8804c10ef895c4620c329bf3369a2f7f84b553f5350407c520e06c9 SHA512 fc87fafa392ebd07f6f9823801cdf296d5f5a6216e15a437d0539bc4ebf0f963bb8d868c73499d1ece33a238b71a8da6da303be23d409975a62b166225853bec
-DIST libxmp-4.7.3.tar.gz 858590 BLAKE2B 14ca792584f9791bd99a107425530cec4e026a6fd455a733c1030cf5c3906231965fcebc83284564412d9860457317dc01a825fe05fa339d83b5455766a747cf SHA512 b8048711ddec131c4186bc710e64b542b6845327d97cfc167839c2cf96dbc4fc8882776ab7902446ae18de9c57718543c18c6d2ffdbfe032fedaf5a836ba3f32
+DIST libxmp-4.7.4.tar.gz 858950 BLAKE2B 74ab87b2e0ebe2cbff7f0942581a2b2f760459b16d7f413d66d28973572434e662a4fe226b6e57ae15e1efc9a22cb52e8b9ef2a2b0561bfaedbc2d1d8b5d6c7b SHA512 67c2911107aa92ebc162a99b6f9d181e8dd95a4d5539057a6de8366fa2f05f1eff9759122bb85816b9a2186641fb7e9b94495b7f928a62dc292ae6cd6de0f95c
diff --git a/media-libs/libxmp/libxmp-4.7.3.ebuild b/media-libs/libxmp/libxmp-4.7.4.ebuild
index c7c43b0ff092..c7c43b0ff092 100644
--- a/media-libs/libxmp/libxmp-4.7.3.ebuild
+++ b/media-libs/libxmp/libxmp-4.7.4.ebuild
diff --git a/media-libs/netpbm/Manifest b/media-libs/netpbm/Manifest
index 80b6cf0fcaee..4287647e2699 100644
--- a/media-libs/netpbm/Manifest
+++ b/media-libs/netpbm/Manifest
@@ -1,3 +1,3 @@
-DIST netpbm-11.15.8.tar.xz 3836348 BLAKE2B d492f623bb7d2e9747e8eb8ea589c15604e5246473853c96fa0328cd994475ffafa1610a96d24153ca54c2e4497e2a791563a67f917b77e9f56d638bda0b7e08 SHA512 8ef2f34016bbef81c52d906d6757c8a48bb5946580ca450daa6bc23f575a6f295a04924f2362a755d2aa1f2077d39730d3ce450e31018936fea9322e4a72590c
+DIST netpbm-11.16.1.tar.xz 3842496 BLAKE2B a3f07a84287f9e603233e6543ca997a2fe66db996291c980078dd6781e504875f11147c0f1f12a5b3ccc61c1362d131bf3ec741a2663697a934a219a084a4ef3 SHA512 9f40c8005317583d951d9beb9e7f6173942f61ef209bbfbdc7727c2dd09b26f7787e9f2629c14284831b73eb0a379fc1b4254ff36c2f8c2d2c6aa24347398610
DIST netpbm-11.2.22.tar.xz 3791232 BLAKE2B 1c3abe2e1c4be2264216530516f46a00c2b21f8e680dadfe6c83773e4982ed08726c99e661a46fe4c0fa02093992b13ac7ec691cfef104d6b27afc09c4500ce5 SHA512 2d419548f4dc2a3ad7667bae858121e000d48c77d3a04e3d4075eede8962343c723a0cd954495b6d0e9eddb2cc15e377691b11ff99d58b46f4f68990eecbc3f2
DIST netpbm-11.2.30.tar.xz 3796860 BLAKE2B 071a2c80cfad59d064d424fe274de6cb9ebf4585571668312c540b3205b7c6be18292df74abc484cbfe34ad07df56523a3040c94d9381f72d52454baafe6a747 SHA512 f62874fdf3e7e54cc93cbeeb6496f40141c98cd95bf8972b5f6e2e583d6edfd644f6e23e051ece649274fa9236756b2d4969bbb2696fde5157a87cf419fa28dc
diff --git a/media-libs/netpbm/files/netpbm-11.15.1-fix-test-pm_message.patch b/media-libs/netpbm/files/netpbm-11.15.1-fix-test-pm_message.patch
deleted file mode 100644
index ceba6918b79c..000000000000
--- a/media-libs/netpbm/files/netpbm-11.15.1-fix-test-pm_message.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-A change to pm_message causes the output of this test to be a bit off.
-
---- a/test/pnmtojpeg-scans.ok
-+++ a/test/pnmtojpeg-scans.ok
-@@ -1,6 +1,5 @@
- success
--pnmtojpeg: Input file has format P6.
--It has 149 rows of 227 columns of pixels with max sample value of 255.
-+pnmtojpeg: Input file has format P6. It has 149 rows of 227 columns of pixels with max sample value of 255.
- pnmtojpeg: A scan script with 7 entries is being used:
- pnmtojpeg: Scan 0: Ss= 0 Se= 0 Ah= 0 Al= 0 3 components
- pnmtojpeg: Color component 0 index: 0
diff --git a/media-libs/netpbm/netpbm-11.15.8.ebuild b/media-libs/netpbm/netpbm-11.16.1.ebuild
index 873a5f8e687e..4fa7fb7f6ae1 100644
--- a/media-libs/netpbm/netpbm-11.15.8.ebuild
+++ b/media-libs/netpbm/netpbm-11.16.1.ebuild
@@ -8,7 +8,7 @@ inherit flag-o-matic multilib toolchain-funcs
# Upstream has 3 flavors of netpbm: super stable, stable and advanced.
# They only provide a tarball for super stable, but super stable is a bit lagging.
# So we package the stable branch of their svn (currently versions 11.2.xx) on SLOT "0/stable"
-# and the advanced branch of their svn (currently versions 11.15.yy) on SLOT "0/advanced".
+# and the advanced branch of their svn (currently versions 11.16.yy) on SLOT "0/advanced".
# The stable branch is stabilized according to usual Gentoo rules, while the
# advanced branch will not be stabilized.
# A detailed explanation is here https://netpbm.sourceforge.net/release.html
@@ -20,15 +20,17 @@ SRC_URI="https://distfiles.gentoo.org/pub/dev/ceamac@gentoo.org/${CATEGORY}/${PN
LICENSE="Artistic BSD GPL-2 IJG LGPL-2.1 MIT public-domain"
SLOT="0/advanced"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="jbig jpeg png postscript rle cpu_flags_x86_sse2 static-libs test tiff X xml"
+IUSE="jpeg png postscript rle cpu_flags_x86_sse2 static-libs test tiff X xml"
RESTRICT="!test? ( test )"
# app-text/ghostscript-gpl is really needed for postscript
# some utilities execute /usr/bin/gs
# some installed programs are perl scripts
+#
+# netpbm 11.16+ has local changes to the bundled jbigkit, cannot use the system one;
+# set it to always enabled, remove the USE flag
RDEPEND="
dev-lang/perl
- jbig? ( media-libs/jbigkit:= )
jpeg? ( media-libs/libjpeg-turbo:=[static-libs?] )
png? (
>=media-libs/libpng-1.4:0=
@@ -61,7 +63,6 @@ PATCHES=(
"${FILESDIR}"/netpbm-11.0.0-misc-deps.patch
"${FILESDIR}"/netpbm-11.1.0-fix-clang-O2.patch
"${FILESDIR}"/netpbm-11.6.1-incompatible-pointer-types.patch
- "${FILESDIR}"/netpbm-11.15.1-fix-test-pm_message.patch
)
netpbm_libtype() {
@@ -99,7 +100,7 @@ src_prepare() {
# make sure we use system libs
sed '/SUPPORT_SUBDIRS/s:urt::' -i GNUmakefile || die
- rm -r urt converter/other/jbig/libjbig converter/other/jpeg2000/libjasper || die
+ rm -r urt converter/other/jpeg2000/libjasper || die
# take care of the importinc stuff ourselves by only doing it once
# at the top level and having all subdirs use that one set #149843
@@ -169,9 +170,9 @@ src_prepare() {
-i test/Test-Order || die
fi
- # gif-transparent1 broken by the latest changes; disable it temporarily
+ # pnmhisteq broken by the latest changes; disable it temporarily
sed \
- -e 's:gif-transparent1.*::' \
+ -e 's:pnmhisteq.*::' \
-i test/Test-Order || die
}
@@ -220,8 +221,6 @@ src_configure() {
ZLIB = $($(tc-getPKG_CONFIG) --libs zlib)
LINUXSVGALIB = NONE
XML2_LIBS = $(netpbm_config_lib xml xml2)
- JBIGLIB = $(netpbm_config_lib jbig)
- JBIGHDR_DIR =
JASPERLIB = NONE
JASPERHDR_DIR =
URTLIB = $(netpbm_config_lib rle)
diff --git a/media-libs/netpbm/netpbm-11.2.22.ebuild b/media-libs/netpbm/netpbm-11.2.22.ebuild
index 86e94603be71..6362150beab9 100644
--- a/media-libs/netpbm/netpbm-11.2.22.ebuild
+++ b/media-libs/netpbm/netpbm-11.2.22.ebuild
@@ -8,7 +8,7 @@ inherit flag-o-matic multilib toolchain-funcs
# Upstream has 3 flavors of netpbm: super stable, stable and advanced.
# They only provide a tarball for super stable, but super stable is a bit lagging.
# So we package the stable branch of their svn (currently versions 11.2.xx) on SLOT "0/stable"
-# and the advanced branch of their svn (currently versions 11.15.yy) on SLOT "0/advanced".
+# and the advanced branch of their svn (currently versions 11.16.yy) on SLOT "0/advanced".
# The stable branch is stabilized according to usual Gentoo rules, while the
# advanced branch will not be stabilized.
# A detailed explanation is here https://netpbm.sourceforge.net/release.html
diff --git a/media-libs/netpbm/netpbm-11.2.30.ebuild b/media-libs/netpbm/netpbm-11.2.30.ebuild
index aad73dbc422a..88cc04d88fc3 100644
--- a/media-libs/netpbm/netpbm-11.2.30.ebuild
+++ b/media-libs/netpbm/netpbm-11.2.30.ebuild
@@ -8,7 +8,7 @@ inherit flag-o-matic multilib toolchain-funcs
# Upstream has 3 flavors of netpbm: super stable, stable and advanced.
# They only provide a tarball for super stable, but super stable is a bit lagging.
# So we package the stable branch of their svn (currently versions 11.2.xx) on SLOT "0/stable"
-# and the advanced branch of their svn (currently versions 11.15.yy) on SLOT "0/advanced".
+# and the advanced branch of their svn (currently versions 11.16.yy) on SLOT "0/advanced".
# The stable branch is stabilized according to usual Gentoo rules, while the
# advanced branch will not be stabilized.
# A detailed explanation is here https://netpbm.sourceforge.net/release.html
diff --git a/media-libs/netpbm/netpbm-9999.ebuild b/media-libs/netpbm/netpbm-9999.ebuild
index fe69df769af8..d7098e42e25f 100644
--- a/media-libs/netpbm/netpbm-9999.ebuild
+++ b/media-libs/netpbm/netpbm-9999.ebuild
@@ -14,15 +14,17 @@ ESVN_REPO_URI="http://svn.code.sf.net/p/netpbm/code/trunk"
LICENSE="Artistic BSD GPL-2 IJG LGPL-2.1 MIT public-domain"
SLOT="0/devel"
-IUSE="jbig jpeg png postscript rle cpu_flags_x86_sse2 static-libs test tiff X xml"
+IUSE="jpeg png postscript rle cpu_flags_x86_sse2 static-libs test tiff X xml"
RESTRICT="!test? ( test )"
# app-text/ghostscript-gpl is really needed for postscript
# some utilities execute /usr/bin/gs
# some installed programs are perl scripts
+#
+# netpbm 11.16+ has local changes to the bundled jbigkit, cannot use the system one;
+# set it to always enabled, remove the USE flag
RDEPEND="
dev-lang/perl
- jbig? ( media-libs/jbigkit:= )
jpeg? ( media-libs/libjpeg-turbo:=[static-libs?] )
png? (
>=media-libs/libpng-1.4:0=
@@ -55,7 +57,6 @@ PATCHES=(
"${FILESDIR}"/netpbm-11.0.0-misc-deps.patch
"${FILESDIR}"/netpbm-11.1.0-fix-clang-O2.patch
"${FILESDIR}"/netpbm-11.6.1-incompatible-pointer-types.patch
- "${FILESDIR}"/netpbm-11.15.0-fix-test-pm_message.patch
)
netpbm_libtype() {
@@ -93,7 +94,7 @@ src_prepare() {
# make sure we use system libs
sed '/SUPPORT_SUBDIRS/s:urt::' -i GNUmakefile || die
- rm -r urt converter/other/jbig/libjbig converter/other/jpeg2000/libjasper || die
+ rm -r urt converter/other/jpeg2000/libjasper || die
# take care of the importinc stuff ourselves by only doing it once
# at the top level and having all subdirs use that one set #149843
@@ -163,8 +164,11 @@ src_prepare() {
-i test/Test-Order || die
fi
- # fix typo in test
- sed 's/cmps/cmp/' -i test/pnmhisteq.test
+ # pnmhisteq broken by the latest changes; disable it temporarily
+ sed \
+ -e 's:pnmhisteq.*::' \
+ -i test/Test-Order || die
+
}
src_configure() {
@@ -211,8 +215,6 @@ src_configure() {
ZLIB = $($(tc-getPKG_CONFIG) --libs zlib)
LINUXSVGALIB = NONE
XML2_LIBS = $(netpbm_config_lib xml xml2)
- JBIGLIB = $(netpbm_config_lib jbig)
- JBIGHDR_DIR =
JASPERLIB = NONE
JASPERHDR_DIR =
URTLIB = $(netpbm_config_lib rle)
diff --git a/media-libs/pulseaudio-qt/pulseaudio-qt-1.9.0.ebuild b/media-libs/pulseaudio-qt/pulseaudio-qt-1.9.0.ebuild
index bc1577bc6feb..79c6d0ee55f6 100644
--- a/media-libs/pulseaudio-qt/pulseaudio-qt-1.9.0.ebuild
+++ b/media-libs/pulseaudio-qt/pulseaudio-qt-1.9.0.ebuild
@@ -15,7 +15,7 @@ HOMEPAGE="https://invent.kde.org/libraries/pulseaudio-qt"
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86"
fi
LICENSE="LGPL-2.1"
diff --git a/media-libs/taglib/taglib-2.3.2.ebuild b/media-libs/taglib/taglib-2.3.2.ebuild
index 53544f7889d3..3c90ef07082d 100644
--- a/media-libs/taglib/taglib-2.3.2.ebuild
+++ b/media-libs/taglib/taglib-2.3.2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1 MPL-1.1"
SLOT="0/2"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv ~sparc ~x86"
IUSE="doc examples test"
RESTRICT="!test? ( test )"
diff --git a/media-plugins/photoqt-extensions/photoqt-extensions-5.4.1.ebuild b/media-plugins/photoqt-extensions/photoqt-extensions-5.4.1.ebuild
index 3243b966f582..a1729ccb7bcb 100644
--- a/media-plugins/photoqt-extensions/photoqt-extensions-5.4.1.ebuild
+++ b/media-plugins/photoqt-extensions/photoqt-extensions-5.4.1.ebuild
@@ -12,7 +12,7 @@ S="${WORKDIR}/${PN}-v${PV}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="geolocation histogram"
DEPEND="
diff --git a/media-plugins/qmmp-plugin-pack/qmmp-plugin-pack-2.4.0.ebuild b/media-plugins/qmmp-plugin-pack/qmmp-plugin-pack-2.4.0.ebuild
index 1e1985250c62..35cdf99bdb0e 100644
--- a/media-plugins/qmmp-plugin-pack/qmmp-plugin-pack-2.4.0.ebuild
+++ b/media-plugins/qmmp-plugin-pack/qmmp-plugin-pack-2.4.0.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://qmmp.ylsoftware.com/files/${PN}/$(ver_cut 1-2)/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="ffmpeg +libsamplerate mms modplug mplayer mpv timidity"
RDEPEND="
diff --git a/media-sound/lollypop/Manifest b/media-sound/lollypop/Manifest
index 8ab7014f617d..c5199347291b 100644
--- a/media-sound/lollypop/Manifest
+++ b/media-sound/lollypop/Manifest
@@ -1 +1,2 @@
DIST lollypop-1.4.45.tar.xz 602620 BLAKE2B 690ee370881d1aa83eff7e1dd8693997ac2df54f9fa9ffb1621aadb1c542097c1b5ec64b8e6401a65d9d3dfa0114c98b74e90dbc23a56024accc494f2b9a72f5 SHA512 1624e0467940e5a92acf26ec86b7c6a9a83baecc31bc4d3942be87abbe10cfc9110399802d2c42a900250340ad633671dfc9e731c63a9247ea710a03b01112eb
+DIST lollypop-1.4.48.tar.xz 602308 BLAKE2B 8e90336eac47fabc2df88b8c47713330321dff47a9341db7e2c8efd52531646afa7eff90f8b09059f01bbfcf7951ac61dd360e17e5c8365a6ef8994bb9c3a75f SHA512 19b736e42598ac1b1f950b40ccbaf5905c29458954fc810555111736487c3a1291d198046c649780e11a0800c4d57d8b5a6e0d767d41f71cfb2f5df149ef6d11
diff --git a/media-sound/lollypop/lollypop-1.4.48.ebuild b/media-sound/lollypop/lollypop-1.4.48.ebuild
new file mode 100644
index 000000000000..ff9ed7775398
--- /dev/null
+++ b/media-sound/lollypop/lollypop-1.4.48.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE="sqlite"
+inherit eapi9-ver gnome2-utils meson python-single-r1 xdg
+
+DESCRIPTION="Modern music player for GNOME"
+HOMEPAGE="https://wiki.gnome.org/Apps/Lollypop"
+# Tarballs on adishatz.org have files from Git submodule 'subprojects/po'
+SRC_URI="https://adishatz.org/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+IUSE="test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+# Dependencies being checked by Meson
+DEPEND="
+ dev-libs/glib:2
+ >=dev-libs/gobject-introspection-1.82.0-r2
+ net-libs/libsoup:3.0[introspection]
+ x11-libs/gtk+:3[introspection]
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ ')
+"
+
+BDEPEND="
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ dev-libs/appstream-glib
+ dev-util/desktop-file-utils
+ )
+"
+
+RDEPEND="
+ ${DEPEND}
+ app-crypt/libsecret[introspection]
+ dev-libs/totem-pl-parser[introspection]
+ gui-libs/libhandy:1[introspection]
+ media-plugins/gst-plugins-pulse
+ $(python_gen_cond_dep '
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/gst-python[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ ')
+"
+
+src_install() {
+ meson_src_install
+ python_optimize
+ python_fix_shebang "${ED}/usr/bin"
+ python_fix_shebang "${ED}/usr/libexec/lollypop-sp"
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ elog "Remember to install the necessary gst-plugins packages for your audio files."
+ elog "You can also use the gst-plugins-meta package and its USE flags."
+ elif ver_replacing -lt "1.4.36"; then
+ elog "Since version 1.4.36, Lollypop relies on yt-dlp instead of youtube-dl."
+ fi
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}
diff --git a/media-sound/qmmp/qmmp-2.4.2.ebuild b/media-sound/qmmp/qmmp-2.4.2.ebuild
index 04d5c11349ca..97148f030ec5 100644
--- a/media-sound/qmmp/qmmp-2.4.2.ebuild
+++ b/media-sound/qmmp/qmmp-2.4.2.ebuild
@@ -12,7 +12,7 @@ if [[ ${PV} != *9999* ]]; then
https://qmmp.ylsoftware.com/files/qmmp/$(ver_cut 1-2)/${P}.tar.bz2
https://downloads.sourceforge.net/project/qmmp-dev/qmmp/$(ver_cut 1-2)/${P}.tar.bz2
"
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="amd64 x86"
else
inherit subversion
ESVN_REPO_URI="svn://svn.code.sf.net/p/${PN}-dev/code/trunk/${PN}"
diff --git a/media-sound/vorbis-tools/vorbis-tools-1.4.3.ebuild b/media-sound/vorbis-tools/vorbis-tools-1.4.3.ebuild
index 4e7dd23f80a0..873172979441 100644
--- a/media-sound/vorbis-tools/vorbis-tools-1.4.3.ebuild
+++ b/media-sound/vorbis-tools/vorbis-tools-1.4.3.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://ftp.osuosl.org/pub/xiph/releases/vorbis/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86"
IUSE="flac kate +ogg123 speex"
RDEPEND="
diff --git a/media-video/ffmpeg/ffmpeg-8.1.3.ebuild b/media-video/ffmpeg/ffmpeg-8.1.3.ebuild
index ac617e419de9..64a0614b2a25 100644
--- a/media-video/ffmpeg/ffmpeg-8.1.3.ebuild
+++ b/media-video/ffmpeg/ffmpeg-8.1.3.ebuild
@@ -25,7 +25,7 @@ else
https://distfiles.gentoo.org/pub/dev/ionen@gentoo.org/ffmpeg-$(ver_cut 1-2)-patchset-2.tar.xz
"
S=${WORKDIR}/ffmpeg-${PV} # avoid ${P} for ffmpeg-compat
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
fi
DESCRIPTION="Complete solution to record/convert/stream audio and video"
diff --git a/net-analyzer/icinga2/icinga2-2.16.5.ebuild b/net-analyzer/icinga2/icinga2-2.16.5.ebuild
index d9e1e93bdc88..6144e86efc19 100644
--- a/net-analyzer/icinga2/icinga2-2.16.5.ebuild
+++ b/net-analyzer/icinga2/icinga2-2.16.5.ebuild
@@ -10,7 +10,7 @@ CMAKE_QA_COMPAT_SKIP=1
if [[ ${PV} != 9999 ]]; then
SRC_URI="https://github.com/Icinga/icinga2/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~arm64 ~x86"
+ KEYWORDS="amd64 ~arm64 x86"
else
inherit git-r3
EGIT_REPO_URI="https://github.com/Icinga/icinga2.git"
diff --git a/net-analyzer/rrdtool/Manifest b/net-analyzer/rrdtool/Manifest
index 319fbc346271..47d0e0245737 100644
--- a/net-analyzer/rrdtool/Manifest
+++ b/net-analyzer/rrdtool/Manifest
@@ -1,2 +1,3 @@
DIST rrdtool-1.10.3.gh.tar.gz 854611 BLAKE2B f649c7804974fef6f4f19f1a9fbd4c0095dc8e4390c432f587dc39ddd2c96c4c4fa732ba82845e8b3b2ccc7def45a46667fa6f5d800cd2423f3db9b2e198ebc4 SHA512 db24cc3f05bf44b8fbcdbb5272352deb64ffc8770528afebd4e725dfc75322013545d7b5eaf3f17f54af4a323dcc3c034d71e95eade59dfbfded7640909c7a06
+DIST rrdtool-1.11.0.gh.tar.gz 860843 BLAKE2B 69261b4666a5047b591e266065ce9a66c3c3ac3b85b71ee71718da4a0fef78ad1700e9be9e54b0ada3a59ecb0b03dd06436b371d9930bcf5e534b8eca89eccf7 SHA512 a3fac11e320a87253c64036a07674b2bc4d6e8df8b5f724593f507e7a006f7748e9702e2599742e805222b69ba359cf4231159da817d163c7752a4e297aa454d
DIST rrdtool-1.9.0.gh.tar.gz 833532 BLAKE2B f2b5ece76d5e229f210781e1cc3756cc350b84b771221cc64a31a8928f047c5caca55d15b237de1cf95d8ca2b80c98d5eb0c3530c8b8caf257238dbf7fcba512 SHA512 82d947f3cb41223437c4548cd30054f0b0b08f5f07438203deadcc2a0f106a6df8ef7b8e04eeac4cd31f8bc0549b5fa098ad1bb4c6b17fcfa20fc1bc40f634db
diff --git a/net-analyzer/rrdtool/rrdtool-1.11.0.ebuild b/net-analyzer/rrdtool/rrdtool-1.11.0.ebuild
new file mode 100644
index 000000000000..7f145c68594f
--- /dev/null
+++ b/net-analyzer/rrdtool/rrdtool-1.11.0.ebuild
@@ -0,0 +1,286 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# NOTE: Bump with dev-ruby/rrdtool-bindings
+
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+PYTHON_COMPAT=( python3_{13..14} )
+DISTUTILS_EXT=1
+DISTUTILS_OPTIONAL="true"
+DISTUTILS_USE_PEP517="setuptools"
+GENTOO_DEPEND_ON_PERL="no"
+MY_P="${P/_/-}"
+
+inherit autotools lua perl-module distutils-r1 flag-o-matic
+
+DESCRIPTION="A data logging and graphing system for time series data"
+HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
+# upstream dist doesnt include python tests
+SRC_URI="
+ https://github.com/oetiker/rrdtool-1.x/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/rrdtool-1.x-${PV}"
+
+LICENSE="GPL-2"
+SLOT="0/8.3.0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="dbi doc examples graph lua perl python rados rrdcached rrdcgi static-libs tcl tcpd test ${GENTOO_PERL_USESTRING}"
+
+RESTRICT="!test? ( test )"
+
+# perl? ( graph ) bug #940931
+REQUIRED_USE="
+ perl? ( graph )
+ python? ( ${PYTHON_REQUIRED_USE} )
+ lua? ( ${LUA_REQUIRED_USE} )
+"
+
+RDEPEND="
+ dev-libs/glib:2[static-libs(+)?]
+ dev-libs/libxml2:2=[static-libs(+)?]
+ dbi? ( dev-db/libdbi[static-libs(+)?] )
+ graph? (
+ media-libs/libpng:0=[static-libs(+)?]
+ x11-libs/cairo[svg(+),static-libs(+)?]
+ x11-libs/pango
+ )
+ lua? ( ${LUA_DEPS} )
+ perl? (
+ ${GENTOO_PERL_DEPSTRING}
+ dev-lang/perl:=
+ )
+ python? ( ${PYTHON_DEPS} )
+ rados? ( sys-cluster/ceph )
+ rrdcached? (
+ acct-group/rrdcached
+ acct-user/rrdcached
+ )
+ tcl? ( dev-lang/tcl:0= )
+ tcpd? ( sys-apps/tcp-wrappers )
+"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+ sys-apps/groff
+ virtual/pkgconfig
+ app-alternatives/awk
+ python? (
+ ${DISTUTILS_DEPS}
+ $(python_gen_cond_dep 'dev-python/setuptools[${PYTHON_USEDEP}]')
+ )
+ test? (
+ app-alternatives/bc
+ lua? ( ${LUA_DEPS} )
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.7.0-disable-rrd_graph-cgi.patch
+ "${FILESDIR}"/${PN}-1.7.1-configure.ac.patch
+)
+
+src_prepare() {
+ default
+
+ # Bug #456810
+ local mysedargs=(
+ -e 's|$LUA_CFLAGS|IGNORE_THIS_BAD_TEST|g'
+ -e 's|^sleep 1$||g'
+ -e '/^dnl.*png/s|^dnl||g'
+ -i configure.ac
+ )
+
+ sed "${mysedargs[@]}" || die
+
+ # Python bindings are built and installed manually
+ local mysedargs=(
+ -e '/^all-local:/s| @COMP_PYTHON@||'
+ -i bindings/Makefile.am
+ )
+
+ sed "${mysedargs[@]}" || die
+
+ if ! use graph ; then
+ # Makefile needs to be adjusted for disabling 'graph' feature
+ local mysedargs=(
+ -e '/^TESTS =/,/^$/ {
+ s:rpn[0-9]*::g;
+ s:create-with-source-4::;
+ s:xport1::;
+ s:dcounter1::;
+ s:vformatter1::;
+ s:graph[0-9]*::g;
+ }'
+ -i tests/Makefile.am
+ )
+
+ sed "${mysedargs[@]}" || die
+
+ # Remove graph test from lua
+ sed -i -e '/Testing rrd.graphv/,$ d' bindings/lua/test.lua{,50}.bottom || die
+ fi
+
+ # Makefile needs to be adjusted for disabling 'rrdcached' feature
+ if ! use rrdcached ; then
+ local mysedargs=(
+ -e '/^TESTS =/,/^$/ {
+ s:list1::;
+ }'
+ -i tests/Makefile.am
+ )
+
+ sed "${mysedargs[@]}" || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ export rd_cv_gcc_flag__Werror=no
+ export rd_cv_ms_async=ok
+ export RRDDOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+
+ # Bug #260380
+ [[ ${CHOST} == *-solaris* ]] && append-flags -D__EXTENSIONS__
+
+ # Enabling '-ffast-math' is known to cause problems.
+ filter-flags -ffast-math
+
+ # We will handle Lua bindings ourselves, upstream is not multi-impl-ready
+ # and their Lua-detection logic depends on having the right version of the Lua
+ # interpreter available at build time.
+ local myeconfargs=(
+ --disable-lua
+ --disable-ruby
+ --disable-ruby-site-install
+ --disable-python
+ $(usex !dbi '--disable-libdbi' '')
+ $(usex !examples '--disable-examples' '')
+ $(use_enable graph rrd_graph)
+ $(use_enable perl perl-site-install)
+ $(use_enable perl)
+ $(usex !rados '--disable-librados' '')
+ $(usex !rrdcached '--disable-rrdcached' '')
+ $(use_enable rrdcgi)
+ $(use_enable static-libs static)
+ $(usex !tcpd '--disable-libwrap' '')
+ $(use_enable tcl)
+ $(use_enable tcl tcl-site)
+ $(use_with tcl tcllib "${EPREFIX}"/usr/$(get_libdir))
+ --with-perl-options="INSTALLDIRS=vendor"
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+lua_src_compile() {
+ pushd "${BUILD_DIR}"/bindings/lua || die
+
+ # We do need the CMOD-dir path here, otherwise libtool complains.
+ # Use the real one (i.e. not within ${ED}) just in case.
+ local myemakeargs=(
+ LUA_CFLAGS="$(lua_get_CFLAGS)"
+ LUA_INSTALL_CMOD="$(lua_get_cmod_dir)"
+ )
+
+ emake "${myemakeargs[@]}"
+
+ popd || die
+}
+
+python_compile() {
+ cd bindings/python || die
+ distutils-r1_python_compile
+}
+
+src_compile() {
+ default
+
+ # Only copy sources now so that we do not
+ # trigger librrd compilation multiple times.
+ if use lua; then
+ lua_copy_sources
+ lua_foreach_impl lua_src_compile
+ fi
+
+ use python && distutils-r1_src_compile
+}
+
+lua_src_test() {
+ pushd "${BUILD_DIR}"/bindings/lua || die
+ LUA_CPATH="${PWD}/.libs/?.so" emake LUA="${LUA}" test
+ popd || die
+}
+
+python_test() {
+ LD_LIBRARY_PATH="${S}/src/.libs:${LD_LIBRARY_PATH}" eunittest
+}
+
+src_test() {
+ export LC_ALL=C
+ default
+
+ if use lua; then
+ lua_foreach_impl lua_src_test
+ fi
+
+ if use perl; then
+ pushd bindings/perl-shared >/dev/null || die
+ LD_LIBRARY_PATH="${S}/src/.libs:${LD_LIBRARY_PATH}" perl-module_src_test
+ popd >/dev/null || die
+ pushd bindings/perl-piped >/dev/null || die
+ LD_LIBRARY_PATH="${S}/src/.libs:${LD_LIBRARY_PATH}" perl-module_src_test
+ popd >/dev/null || die
+ fi
+
+ if use python && use graph ; then
+ # All tests explicitly use graph
+ pushd bindings/python >/dev/null || die
+ distutils-r1_src_test
+ popd >/dev/null || die
+ fi
+}
+
+lua_src_install() {
+ pushd "${BUILD_DIR}"/bindings/lua || die
+
+ # This time we must prefix the CMOD-dir path with ${ED},
+ # so that make does not try to violate the sandbox.
+ local myemakeargs=(
+ LUA_INSTALL_CMOD="${ED}/$(lua_get_cmod_dir)"
+ )
+
+ emake "${myemakeargs[@]}" install
+
+ popd || die
+}
+
+src_install() {
+ default
+
+ if ! use doc; then
+ rm -rf "${ED}"/usr/share/doc/"${PF}"/{html,txt} || die
+ fi
+
+ if use lua; then
+ lua_foreach_impl lua_src_install
+ fi
+
+ if use perl; then
+ perl_delete_localpod
+ perl_delete_packlist
+ fi
+
+ use python && distutils-r1_src_install
+
+ if use rrdcached; then
+ newconfd "${FILESDIR}"/rrdcached.confd-r1 rrdcached
+ newinitd "${FILESDIR}"/rrdcached.init-r1 rrdcached
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/net-dns/knot/knot-3.5.8.ebuild b/net-dns/knot/knot-3.5.8.ebuild
index 569a3e11864a..4340d70ec3a9 100644
--- a/net-dns/knot/knot-3.5.8.ebuild
+++ b/net-dns/knot/knot-3.5.8.ebuild
@@ -18,7 +18,7 @@ SRC_URI="
"
LICENSE="GPL-2+"
SLOT="0/${KNOT_SUBSLOT}"
-KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm64 ~riscv x86"
# Modules without dep and enabled by default. Built unconditionally.
KNOT_MODULES=(
diff --git a/net-dns/redis-knot/redis-knot-3.5.8.ebuild b/net-dns/redis-knot/redis-knot-3.5.8.ebuild
index d8199f90a76b..66a569e2c362 100644
--- a/net-dns/redis-knot/redis-knot-3.5.8.ebuild
+++ b/net-dns/redis-knot/redis-knot-3.5.8.ebuild
@@ -17,7 +17,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm64 ~riscv x86"
# no test, it requires a Redis instance and RLTest (not packaged)
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-knot )"
diff --git a/net-im/telegram-desktop-bin/Manifest b/net-im/telegram-desktop-bin/Manifest
index 96a81e12b2a8..dc5894f7ffa3 100644
--- a/net-im/telegram-desktop-bin/Manifest
+++ b/net-im/telegram-desktop-bin/Manifest
@@ -1,4 +1,4 @@
-DIST tdesktop-7.1.3.tar.gz 26314332 BLAKE2B 0322554d61dc95b25b6620f36bef615e8c7a5b9a56186b10ad4423ceff807e79b4488bc00e8f2719fc42cbbca8b674db8d868e9a4d0cf09b489c02421b9e3a55 SHA512 492ac8996603ff0b52131af8c4c9038124bdff443f8d8796296ec0ccbc53a006edb10bfc277dd9a4479f1e2ef4a2af02ea2d3f3637a6a2e0601517aa9d16a5c0
+DIST td-setup-linux-x64-7.3.1.tar.xz 85630860 BLAKE2B 8f53b552802ea63dd82d948c5bfb7b77bbb9e08c320aa6c30628b4af5137c98d2b591815834be9e41a4eaa2a69b65b22283f793ff4de81b2d36112e395417cbb SHA512 f784c291bab383b30746f5ba57cfacb8ffa3d04d8986bfe7d5143f3274040ea9beb6824dd3243013a52667c74fbc7e59497fd41bfae152f37d7cc1d578c85232
DIST tdesktop-7.1.5.tar.gz 26404625 BLAKE2B b02440f988d2385d3fa74c595e5e523bff162f3920c66005295922622e4e4708bb9699827d6b1cbb6752ccd3a69dfd3a0616e464af7be851448c34551ef58f8a SHA512 3b45ef381bfccab82327e7b3d11c1d94a2dcf4ec26e79492f9495ffeb882d4e5c4e95b356e202faf311d22fbba5079a1b4761c4ede06ce74643c09e367f89746
-DIST tsetup.7.1.3.tar.xz 78773656 BLAKE2B 90fbb838153b2a5628250c95ff910f9af6b6c416ba43811076483fc92ada57e59be12263bc4b11f512a34a61083bc8bdef9a66ee350ba653e5450fb6d7e189b8 SHA512 b0a2a3caa0722ad909458cc3f39e90bb6261a90e7459709ec0a3c68a590248ae3776e8531502b974be920364fa570fa22547830a4df32748615e5967c25929c5
+DIST tdesktop-7.3.1.tar.gz 29229143 BLAKE2B bc1c42bfb0027845154d9c0e5c683865cb497d02a9ae2f7f2e525d29a0e4a20bca9485cf3786a443913853929e2ab44f77a97ff52b276dfd482617ecb9395f3d SHA512 f334a690799c9692b1ac90fbde98f045c6c1074bdd13dbcf3fe5faa8592bbd47056c22212e290c54384ae4b10850b23c2fb7cf6780fe599dc3002b0fa9a91726
DIST tsetup.7.1.5.tar.xz 78817892 BLAKE2B 50b1135700fcd280d1689792a9fc8310a1944af3e46c90dedd8e6b62de2984e2f25bbb5dc748e41bf4d7c9c445e8a7993efcddd379b9a7feb64b4b72767d91dd SHA512 d422d3b69a1aea10f61291ab4eb41a7b65540d43ee4983c91804dc70e73c29c5f853c37f427ef0d823904e4ac13c8482291ce8e446432fe1b740368756fe2a2e
diff --git a/net-im/telegram-desktop-bin/telegram-desktop-bin-7.1.3.ebuild b/net-im/telegram-desktop-bin/telegram-desktop-bin-7.3.1.ebuild
index face8277fb3e..fefff9c3dfb9 100644
--- a/net-im/telegram-desktop-bin/telegram-desktop-bin-7.1.3.ebuild
+++ b/net-im/telegram-desktop-bin/telegram-desktop-bin-7.3.1.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Official desktop client for Telegram (binary package)"
HOMEPAGE="https://desktop.telegram.org"
SRC_URI="
https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.gz -> tdesktop-${PV}.tar.gz
- amd64? ( https://updates.tdesktop.com/tlinux/tsetup.${PV}.tar.xz )
+ amd64? ( https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/td-setup-linux-x64-${PV}.tar.xz )
"
S="${WORKDIR}/Telegram"
@@ -27,8 +27,10 @@ RDEPEND="
>=media-libs/fontconfig-2.13
media-libs/freetype:2
virtual/opengl
+ x11-libs/cairo
x11-libs/gtk+:3[X,wayland]
x11-libs/libX11
+ x11-libs/pango
>=x11-libs/libxcb-1.10
"
diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest
index bb6c91540964..1ee5c0623a58 100644
--- a/net-im/telegram-desktop/Manifest
+++ b/net-im/telegram-desktop/Manifest
@@ -1,3 +1,3 @@
+DIST CVE-2026-107181.patch 26231 BLAKE2B 03a66d4d466119a9d48e4248545aac49506cef9d136b342e38bbe6b96d7a241421f55d37d83ce324220c21f04e7c3958ffec786ec2d05d27a4cbae20b0192556 SHA512 6a0f71c68582e151ca06e018c778182a927bd5641f104fa2450a7ae68cbd2497c178a5743f3e809da084b5c27450b83d646a19f3069848d1901fd9ad30178f56
DIST tdesktop-7.0.2-full.tar.gz 80168405 BLAKE2B 17ddbee265ab5923324431e990907922147263c6d64b43d7ff62336f43d7fba62a0247478d40f8471489035eac044e0c6ca743ee2d83abc1fc81b7c931a4d346 SHA512 e3a99396dc710fb08aa6709904a9558aeb6953a160c23ccc1df00e4df5e1a1592145667c780fab676abe092848a6ec517981a25c35711e765769940218dd2a89
-DIST tdesktop-7.0.9-full.tar.gz 81403059 BLAKE2B c7c0c82fb0795719652c87d3f707dcb6bf184e1b954032487140078d1f907790b865a73b6ff9f5ca090da737abd34ef0c89d6334f83a2d569d77ab235b4116d6 SHA512 c5e97a146c903b3398b53a7451d86efcbb5f87a989586d20753c83e2cb1452b964ab1175b88977eb590b04bcffc14fc678eb9f6a629b7f6f7af522a0da811780
DIST tdesktop-7.1.2-full.tar.gz 81453088 BLAKE2B f23d97da198e29fb9990f32d504d2d832bff2fd3d87d59aef18de8d1f636288f644714e9a2a2af7514c893216182c6743c09a2b4571d1d9b847cfbeff37605d0 SHA512 b55e73a558d5191a00d13faad08e88e82482d700cc08bc04fb64c530ce5bfb72f8f82c266b0b85ef8c44635f75249bf6622d2f6dbca9fe0936cf212b13e5fb8d
diff --git a/net-im/telegram-desktop/telegram-desktop-7.0.9.ebuild b/net-im/telegram-desktop/telegram-desktop-7.0.9.ebuild
deleted file mode 100644
index 00d87a81fd0e..000000000000
--- a/net-im/telegram-desktop/telegram-desktop-7.0.9.ebuild
+++ /dev/null
@@ -1,252 +0,0 @@
-# Copyright 2020-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit xdg cmake python-any-r1 optfeature flag-o-matic
-
-DESCRIPTION="Official desktop client for Telegram"
-HOMEPAGE="https://desktop.telegram.org https://github.com/telegramdesktop/tdesktop"
-
-MY_P="tdesktop-${PV}-full"
-SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="dbus enchant +fonts screencast wayland webkit +X"
-
-CDEPEND="
- !net-im/telegram-desktop-bin
- app-arch/lz4:=
- app-text/cmark-gfm:=
- dev-cpp/abseil-cpp:=
- dev-cpp/ada:=
- dev-cpp/cld3:=
- >=dev-cpp/glibmm-2.77:2.68
- dev-cpp/toomanycooks
- dev-libs/glib:2
- dev-libs/libfido2:=
- dev-libs/openssl:=
- >=dev-libs/protobuf-21.12
- dev-libs/qr-code-generator:=
- dev-libs/xxhash
- >=dev-qt/qtbase-6.5:6=[dbus?,gui,network,opengl,ssl,wayland?,widgets]
- >=dev-qt/qtimageformats-6.5:6
- >=dev-qt/qtsvg-6.5:6
- kde-frameworks/kcoreaddons:6
- media-libs/libjpeg-turbo:=
- media-libs/openal
- media-libs/opus
- media-libs/rnnoise
- >=media-libs/tg_owt-0_pre20241202:=[screencast=,X=]
- >=media-video/ffmpeg-6:=[opus,vpx]
- net-libs/tdlib:=[tde2e]
- sys-apps/hwloc:=
- virtual/minizip:=
- !enchant? ( >=app-text/hunspell-1.7:= )
- enchant? ( app-text/enchant:= )
- webkit? ( wayland? (
- >=dev-qt/qtdeclarative-6.5:6
- >=dev-qt/qtwayland-6.5:6[compositor(+),qml]
- ) )
-"
-RDEPEND="${CDEPEND}
- webkit? ( || ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:6 ) )
-"
-DEPEND="${CDEPEND}
- >=dev-cpp/cppgir-2.0_p20240315
- dev-cpp/expected
- dev-cpp/expected-lite
- >=dev-cpp/ms-gsl-4.1.0
- dev-cpp/range-v3
-"
-BDEPEND="
- ${PYTHON_DEPS}
- >=dev-build/cmake-3.16
- >=dev-cpp/cppgir-2.0_p20260226
- >=dev-libs/gobject-introspection-1.82.0-r2
- dev-qt/qtshadertools
- >=dev-util/gdbus-codegen-2.80.5-r1
- virtual/pkgconfig
- wayland? ( dev-util/wayland-scanner )
-"
-# NOTE: dev-cpp/expected-lite used indirectly by a dev-cpp/cppgir header file
-# NOTE: sys-apps/hwloc is depended upon by dev-cpp/toomanycooks, but needs to
-# cause SLOT rebuilds here, as dev-cpp/toomanycooks is header-only
-
-PATCHES=(
- "${FILESDIR}"/tdesktop-5.7.2-cstring.patch
- "${FILESDIR}"/tdesktop-5.8.3-cstdint.patch
- "${FILESDIR}"/tdesktop-5.14.3-system-cppgir.patch
-)
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- if has ccache ${FEATURES}; then
- ewarn "ccache does not work with ${PN} out of the box"
- ewarn "due to usage of precompiled headers"
- ewarn "check bug https://bugs.gentoo.org/715114 for more info"
- ewarn
- fi
- fi
-}
-
-src_prepare() {
- # Happily fail if libraries aren't found...
- find -type f \( -name 'CMakeLists.txt' -o -name '*.cmake' \) \
- \! -path './cmake/external/qt/package.cmake' \
- -print0 | xargs -0 sed -i \
- -e '/pkg_check_modules(/s/[^ ]*)/REQUIRED &/' \
- -e '/find_package(/s/)/ REQUIRED)/' \
- -e '/find_library(/s/)/ REQUIRED)/' \
- -e '/find_path(/s/)/ REQUIRED)/' || die
- # Make sure to check the excluded files for new
- # CMAKE_DISABLE_FIND_PACKAGE/CMAKE_REQUIRE_FIND_PACKAGE entries.
-
- # Some packages are found through pkg_check_modules, rather than find_package
- sed -e '/find_package(lz4 /d' -i cmake/external/lz4/CMakeLists.txt || die
- sed -e '/find_package(Opus /d' -i cmake/external/opus/CMakeLists.txt || die
- sed -e '/find_package(xxHash /d' -i cmake/external/xxhash/CMakeLists.txt || die
- sed -e '/find_package(cmark-gfm\(-extensions\)\? /d' \
- -i cmake/external/cmark_gfm/CMakeLists.txt || die
-
- # Temporary workaround for https://bugs.gentoo.org/977603
- sed -e '/find_package(minizip /d' \
- -i cmake/external/minizip/CMakeLists.txt || die
-
- # Greedily remove ThirdParty directories, keep only ones that interest us
- local keep=(
- rlottie # Patched, not recommended to unbundle by upstream
- libprisma # Telegram-specific library, no stable releases
- tgcalls # Telegram-specific library, no stable releases
- xdg-desktop-portal # Only a few xml files are used with gdbus-codegen
- MicroTeX # Telegram-specific fork, no stable releases
- )
- for x in Telegram/ThirdParty/*; do
- has "${x##*/}" "${keep[@]}" || rm -r "${x}" || die
- done
-
- # Control libdispatch dependency from here, as there's no
- # CMAKE_DISABLE_FIND_PACKAGE for find_library
- : > cmake/external/dispatch/CMakeLists.txt || die
-
- # Control QtDBus dependency from here, to avoid messing with QtGui.
- # QtGui will use find_package to find QtDbus as well, which
- # conflicts with the -DCMAKE_DISABLE_FIND_PACKAGE method.
- if ! use dbus; then
- sed -e '/find_package(Qt[^ ]* OPTIONAL_COMPONENTS/s/DBus *//' \
- -i cmake/external/qt/package.cmake || die
- fi
-
- # Control automagic dep only needed when USE="webkit wayland"
- if ! use webkit || ! use wayland; then
- sed -e 's/QT_CONFIG(wayland_compositor_quick)/0/' \
- -i Telegram/lib_webview/webview/platform/linux/webview_linux_compositor.h || die
- fi
-
- # Shut the CMake 4 QA checker up by removing unused CMakeLists files
- rm Telegram/ThirdParty/rlottie/CMakeLists.txt || die
- rm cmake/external/glib/cppgir/expected-lite/example/CMakeLists.txt || die
- rm cmake/external/glib/cppgir/expected-lite/test/CMakeLists.txt || die
- rm cmake/external/glib/cppgir/expected-lite/CMakeLists.txt || die
-
- cmake_src_prepare
-}
-
-src_configure() {
- # Having user paths sneak into the build environment through the
- # XDG_DATA_DIRS variable causes all sorts of weirdness with cppgir:
- # - bug 909038: can't read from flatpak directories (fixed upstream)
- # - bug 920819: system-wide directories ignored when variable is set
- export XDG_DATA_DIRS="${ESYSROOT}/usr/share"
-
- # Evil flag (See https://bugs.gentoo.org/919201)
- filter-flags -fno-delete-null-pointer-checks
-
- # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep
- # the same state across both projects.
- # See https://bugs.gentoo.org/866055
- append-cppflags -DNDEBUG
-
- local no_webkit_wayland=$(use webkit && use wayland && echo no || echo yes)
- local use_webkit_wayland=$(use webkit && use wayland && echo yes || echo no)
- local mycmakeargs=(
- -DQT_VERSION_MAJOR=6
-
- # Override new cmake.eclass defaults (https://bugs.gentoo.org/921939)
- # Upstream never tests this any other way
- -DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF
-
- # Control automagic dependencies on certain packages
- ## These libraries are only used in lib_webview, for wayland
- ## See Telegram/lib_webview/webview/platform/linux/webview_linux_compositor.h
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Quick=${no_webkit_wayland}
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6QuickWidgets=${no_webkit_wayland}
- -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WaylandCompositor=${no_webkit_wayland}
-
- # Make sure dependencies that aren't patched to be REQUIRED in
- # src_prepare, are found. This was suggested to me by the telegram
- # devs, in lieu of having explicit flags in the build system.
- -DCMAKE_REQUIRE_FIND_PACKAGE_Qt6DBus=$(usex dbus)
- -DCMAKE_REQUIRE_FIND_PACKAGE_Qt6Quick=${use_webkit_wayland}
- -DCMAKE_REQUIRE_FIND_PACKAGE_Qt6QuickWidgets=${use_webkit_wayland}
- -DCMAKE_REQUIRE_FIND_PACKAGE_Qt6WaylandCompositor=${use_webkit_wayland}
-
- -DDESKTOP_APP_DISABLE_QT_PLUGINS=ON
- ## Enables enchant and disables hunspell
- -DDESKTOP_APP_USE_ENCHANT=$(usex enchant)
- ## Use system fonts instead of bundled ones
- -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts)
- )
-
- if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then
- einfo "Found custom API credentials"
- mycmakeargs+=(
- -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}"
- -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}"
- )
- else
- # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml
- # Building with snapcraft API credentials by default
- # Custom API credentials can be obtained here:
- # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md
- # After getting credentials you can export variables:
- # export MY_TDESKTOP_API_ID="17349""
- # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb"
- # and restart the build"
- # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop
- # portage will use custom variable every build automatically
- mycmakeargs+=(
- -DTDESKTOP_API_ID="611335"
- -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c"
- )
- fi
-
- cmake_src_configure
-}
-
-src_compile() {
- # The cppgir program causes the gen/gio/_types.hpp file to be updated.
- # Since this program can usually be invoked anywhere in the build process,
- # running it *after* some files depending on the header have been compiled
- # causes Telegram to be linked again during src_install(). This is a slow
- # process (especially with LTO), so we try to avoid it by running all
- # cppgir targets upfront.
- cmake_build $("${CMAKE_BINARY}" --build "${BUILD_DIR}" -t help | sed -n '/^[^/]*_cppgir:/s/:.*//p')
- cmake_build
- cmake_build # Just in case, should say "no work to do"
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- if ! use X && ! use screencast; then
- ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!"
- ewarn
- fi
- optfeature_header
- optfeature "AVIF, HEIF and JpegXL image support" kde-frameworks/kimageformats:6[avif,heif,jpegxl]
-}
diff --git a/net-im/telegram-desktop/telegram-desktop-7.1.2.ebuild b/net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild
index a68466cefba4..3f99da3a8416 100644
--- a/net-im/telegram-desktop/telegram-desktop-7.1.2.ebuild
+++ b/net-im/telegram-desktop/telegram-desktop-7.1.2-r1.ebuild
@@ -12,6 +12,14 @@ HOMEPAGE="https://desktop.telegram.org https://github.com/telegramdesktop/tdeskt
MY_P="tdesktop-${PV}-full"
SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz"
+# https://nvd.nist.gov/vuln/detail/cve-2026-107181
+# Telegram Desktop before 7.2.9 contains an IPC record-separator injection
+# vulnerability in Core::Sandbox that allows remote attackers to inject OPEN:
+# records via crafted tg:// links containing unescaped semicolons. Attackers
+# can reach the interpret: scheme handler to upload local files, including
+# tdata session keys, to an attacker channel, enabling account takeover.
+# Gentoo note: Confirmed with John Preston that this completely fixes the CVE.
+SRC_URI+=" https://github.com/telegramdesktop/tdesktop/commit/db3405699f8fc3ae28a58d2348b7d13a43c0590a.patch -> CVE-2026-107181.patch"
S="${WORKDIR}/${MY_P}"
LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+"
@@ -78,6 +86,7 @@ PATCHES=(
"${FILESDIR}"/tdesktop-5.7.2-cstring.patch
"${FILESDIR}"/tdesktop-5.8.3-cstdint.patch
"${FILESDIR}"/tdesktop-5.14.3-system-cppgir.patch
+ "${DISTDIR}"/CVE-2026-107181.patch
)
pkg_pretend() {
diff --git a/net-libs/libupnp/Manifest b/net-libs/libupnp/Manifest
index e3a139972be7..b43aa2b126ee 100644
--- a/net-libs/libupnp/Manifest
+++ b/net-libs/libupnp/Manifest
@@ -1,3 +1,3 @@
DIST libupnp-1.14.31.tar.gz 826590 BLAKE2B 2fcfcd00aab5e97821ad40125071d6c5354cfce63ff59a88783a1bed17658d71566a4834615826b37a681cc3f6ac26d9324f6202c824849e5399ca81e58f7b3a SHA512 be0f876adb7a0799187531cc83a29afd5bfe8f7772e909f88faf406e344f992ccb07ef410f7511766576bde8128478926e33cebfcfa8ed1ba15fe136e0bfc8c7
DIST libupnp-1.18.5.tar.gz 833624 BLAKE2B d4e94020f3e01e55eccdca089ede45715c812653120122d627daa0270b84f30329c9bcf5fc9ab0a66fdd83886fdf8f0768a10edd78abf514f7a6af1ac459bdb6 SHA512 a4ffb5977d9e103f8ce3ed8f9dec6a336424258c9541ae38790accaa35cd7bf92165cded285ce30f57c7aa5e03f05f0a639d846436b460800ee5e5fcb4d2d7c8
-DIST libupnp-22.1.0.tar.gz 881932 BLAKE2B ec34098705c84f1883f3e63a5bd8cc1a30dc65a4f9820efdf494a19dc331c55d733da208cf3eee86b03bb35f78cceedf0f95b50bc6cc825126523081d83f6884 SHA512 ff3a097c22655f5b9c063ae43ab639ef3f11427ca1b04954a278ec7f352044d70a203753b83d490fe8c401b355c92e6097957d3f1112ab88f6a5cad33dc81029
+DIST libupnp-22.1.8.tar.gz 918842 BLAKE2B 8f196596694c50bc97fb48490f8bc1ec00a0c679c1d4ae4334c11c134f4837222f1b27b6dbdb8b56d453d6cbab842a7d213023450b41467c3baa11420b5f5568 SHA512 13bf33f3aeb73fcf46902b50ba4db98101c1fb4865dea22d7dcf8000a4ddda28a1654ea296b2d88521c4a45884b0a8ff7fb53587787bca2eb963af0c6ed80bb9
diff --git a/net-libs/libupnp/files/libupnp-22.0.8-disable-network-tests.patch b/net-libs/libupnp/files/libupnp-22.0.8-disable-network-tests.patch
new file mode 100644
index 000000000000..70fe286316ef
--- /dev/null
+++ b/net-libs/libupnp/files/libupnp-22.0.8-disable-network-tests.patch
@@ -0,0 +1,110 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -17,13 +17,6 @@
+ return()
+ endif()
+
+-add_test(
+- NAME test-init-py
+- COMMAND ${Python3_EXECUTABLE} -m pytest
+- ${CMAKE_CURRENT_SOURCE_DIR}/test_init.py
+- -v
+-)
+-
+ set(_test_init_py_env "UPNP_BUILD_DIR=${CMAKE_BINARY_DIR}")
+ if(CMAKE_C_FLAGS MATCHES "sanitize=address" OR
+ CMAKE_SHARED_LINKER_FLAGS MATCHES "sanitize=address")
+@@ -38,10 +31,6 @@
+ list(APPEND _test_init_py_env "ASAN_OPTIONS=detect_leaks=0")
+ endif()
+
+-set_tests_properties(test-init-py PROPERTIES
+- ENVIRONMENT "${_test_init_py_env}"
+-)
+-
+ add_test(
+ NAME test-issue-110-py
+ COMMAND ${Python3_EXECUTABLE} -m pytest
+--- a/upnp/test/CMakeLists.txt
++++ b/upnp/test/CMakeLists.txt
+@@ -1,9 +1,6 @@
+ UPNP_Add_Unit_Test(test-upnp-list test_list.c)
+-UPNP_Add_Unit_Test(test-upnp-init test_init.c)
+ UPNP_Add_Unit_Test(test-upnp-log test_log.c)
+ UPNP_Add_Unit_Test(test-upnp-url test_url.c)
+-UPNP_Add_Unit_Test(test-upnp-sock-io test_sock_io.c)
+-UPNP_Add_Unit_Test(test-upnp-ssdp-req-port test_ssdp_req_port.c)
+ UPNP_Add_Unit_Test(test-upnp-virtual-dir test_virtual_dir.c)
+ UPNP_Add_Unit_Test(test-upnp-ssdp-multi-device test_ssdp_multi_device.c)
+ # test_threadpool_overflow calls internal ThreadPool API (ThreadPoolInit,
+@@ -191,40 +188,6 @@
+ )
+ endif()
+
+-# GHSA-gvhr-pxx7-ch7x: reads AUTO_RENEW_TIME and CP_MINIMUM_SUBSCRIPTION_TIME
+-# from config.h (a private header) and runs a fake publisher thread.
+-UPNP_Add_Unit_Test(test-upnp-gena-granted-timeout test_gena_granted_timeout.c)
+-if(UPNP_BUILD_SHARED)
+- target_include_directories(
+- test-upnp-gena-granted-timeout
+- PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../src/inc
+- )
+- target_link_libraries(
+- test-upnp-gena-granted-timeout PRIVATE Threads::Threads
+- )
+-endif()
+-if(UPNP_BUILD_STATIC)
+- target_include_directories(
+- test-upnp-gena-granted-timeout-static
+- PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../src/inc
+- )
+- target_link_libraries(
+- test-upnp-gena-granted-timeout-static PRIVATE Threads::Threads
+- )
+-endif()
+-
+-# GHSA-ggw2-jjv9-h22c: runs a fake publisher thread, then sends NOTIFY
+-# requests with malformed SIDs to the control point.
+-UPNP_Add_Unit_Test(test-upnp-gena-notify-sid test_gena_notify_sid.c)
+-if(UPNP_BUILD_SHARED)
+- target_link_libraries(test-upnp-gena-notify-sid PRIVATE Threads::Threads)
+-endif()
+-if(UPNP_BUILD_STATIC)
+- target_link_libraries(
+- test-upnp-gena-notify-sid-static PRIVATE Threads::Threads
+- )
+-endif()
+-
+ # On Solaris/illumos, getaddrinfo and freeaddrinfo live in libsocket (and
+ # sometimes libnsl) rather than in the C library. find_library() probes for
+ # each library at configure time and stores the full path (or "<VAR>-NOTFOUND")
+@@ -332,14 +295,6 @@
+ $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+ $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
+ )
+- target_link_libraries(test-upnp-gena-granted-timeout PRIVATE
+- $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+- $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
+- )
+- target_link_libraries(test-upnp-gena-notify-sid PRIVATE
+- $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+- $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
+- )
+ target_link_libraries(test-upnp-gena-subscribe-pressure PRIVATE
+ $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+ $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
+@@ -354,14 +309,6 @@
+ $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+ $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
+ )
+- target_link_libraries(test-upnp-gena-granted-timeout-static PRIVATE
+- $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+- $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
+- )
+- target_link_libraries(test-upnp-gena-notify-sid-static PRIVATE
+- $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+- $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
+- )
+ target_link_libraries(test-upnp-gena-subscribe-pressure-static PRIVATE
+ $<$<BOOL:${SOCKET_LIBRARY}>:${SOCKET_LIBRARY}>
+ $<$<BOOL:${NSL_LIBRARY}>:${NSL_LIBRARY}>
diff --git a/net-libs/libupnp/libupnp-1.18.5.ebuild b/net-libs/libupnp/libupnp-1.18.5.ebuild
index 3c5f6d94aadb..8e67ce4d9f5e 100644
--- a/net-libs/libupnp/libupnp-1.18.5.ebuild
+++ b/net-libs/libupnp/libupnp-1.18.5.ebuild
@@ -14,7 +14,7 @@ S="${WORKDIR}/${MY_PN}-release-${PV}"
LICENSE="BSD"
SLOT="0/20"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
IUSE="blocking-tcp debug doc +reuseaddr samples +ssl static-libs"
RDEPEND="ssl? ( dev-libs/openssl:0= )"
diff --git a/net-libs/libupnp/libupnp-22.1.0.ebuild b/net-libs/libupnp/libupnp-22.1.8.ebuild
index b8e25faeb275..f15a5d9cb64c 100644
--- a/net-libs/libupnp/libupnp-22.1.0.ebuild
+++ b/net-libs/libupnp/libupnp-22.1.8.ebuild
@@ -21,7 +21,7 @@ RDEPEND="ssl? ( dev-libs/openssl:0= )"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
-PATCHES=( "${FILESDIR}/${PN}-22.0.4-disable-network-tests.patch" )
+PATCHES=( "${FILESDIR}/${PN}-22.0.8-disable-network-tests.patch" )
src_configure() {
local mycmakeargs=(
diff --git a/net-libs/ngtcp2/ngtcp2-1.25.0.ebuild b/net-libs/ngtcp2/ngtcp2-1.25.0.ebuild
index 78ba22867e10..06fa403c5137 100644
--- a/net-libs/ngtcp2/ngtcp2-1.25.0.ebuild
+++ b/net-libs/ngtcp2/ngtcp2-1.25.0.ebuild
@@ -18,7 +18,7 @@ else
verify-sig? ( https://github.com/ngtcp2/ngtcp2/releases/download/v${PV}/${P}.tar.xz.asc )
"
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
+ KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-ngtcp2 )"
fi
diff --git a/net-mail/getmail/getmail-6.20.01.ebuild b/net-mail/getmail/getmail-6.20.01.ebuild
index 873677ce2554..78cf2707f390 100644
--- a/net-mail/getmail/getmail-6.20.01.ebuild
+++ b/net-mail/getmail/getmail-6.20.01.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/getmail6-${PV}"
# getmail-gmail-xoauth-tokens is under Apache 2.0
LICENSE="GPL-2 Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
PATCHES=(
"${FILESDIR}/${PN}-revert-doc-path.patch"
diff --git a/net-misc/chrony/chrony-4.9.ebuild b/net-misc/chrony/chrony-4.9.ebuild
index 514b858d2856..9dde362b1cab 100644
--- a/net-misc/chrony/chrony-4.9.ebuild
+++ b/net-misc/chrony/chrony-4.9.ebuild
@@ -19,7 +19,7 @@ else
SRC_URI+=" verify-sig? ( https://chrony-project.org/releases/${P/_/-}-tar-gz-asc.txt -> ${P/_/-}.tar.gz.asc )"
if [[ ${PV} != *_pre* ]] ; then
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
fi
diff --git a/net-misc/networkmanager/networkmanager-1.58.1-r1.ebuild b/net-misc/networkmanager/networkmanager-1.58.1-r1.ebuild
index 6c158114b876..130dae97943a 100644
--- a/net-misc/networkmanager/networkmanager-1.58.1-r1.ebuild
+++ b/net-misc/networkmanager/networkmanager-1.58.1-r1.ebuild
@@ -20,7 +20,7 @@ S="${WORKDIR}"/${MY_PN}-${PV}
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
IUSE="audit bluetooth clat +concheck connection-sharing debug dhcpcd elogind gnutls gtk-doc +introspection iptables iwd libedit +modemmanager nbft +nss nftables ofono ovs policykit +ppp psl resolvconf selinux syslog systemd teamd test +tools vala +wext +wifi"
RESTRICT="!test? ( test )"
diff --git a/net-misc/ptpd/metadata.xml b/net-misc/ptpd/metadata.xml
index e06a47602397..5924b96074bb 100644
--- a/net-misc/ptpd/metadata.xml
+++ b/net-misc/ptpd/metadata.xml
@@ -12,7 +12,6 @@
<use>
<flag name="debug">Enable debugging informations</flag>
<flag name="experimental">Enable experimental features</flag>
- <flag name="ntp">Enable NTPD cooperation</flag>
<flag name="snmp">Require <pkg>net-analyzer/net-snmp</pkg> to enable SNMP configuration</flag>
<flag name="statistics">Enable compution of statistics</flag>
<flag name="pcap">Require <pkg>net-libs/libpcap</pkg> to allow layer 2 (raw Ethernet) transport</flag>
diff --git a/net-misc/ptpd/ptpd-2.3.1-r2.ebuild b/net-misc/ptpd/ptpd-2.3.1-r2.ebuild
index 6b5600180760..1e4e1140d873 100644
--- a/net-misc/ptpd/ptpd-2.3.1-r2.ebuild
+++ b/net-misc/ptpd/ptpd-2.3.1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -13,14 +13,12 @@ S="${WORKDIR}/ptpd-${P}"
KEYWORDS="~amd64 ~arm ~x86"
LICENSE="BSD"
SLOT="0"
-IUSE="debug experimental ntp +pcap snmp slave-only +statistics"
+IUSE="debug experimental +pcap snmp slave-only +statistics"
RDEPEND="
pcap? ( net-libs/libpcap )
snmp? ( net-analyzer/net-snmp )"
DEPEND="${RDEPEND}"
-RDEPEND="${RDEPEND}
- ntp? ( net-misc/ntp )"
PATCHES=(
"${FILESDIR}"/${PN}-2.3.1-fix-snmp.patch
diff --git a/net-misc/smb4k/smb4k-4.0.7.ebuild b/net-misc/smb4k/smb4k-4.0.7.ebuild
index 18bae25db49c..9bb38dd21076 100644
--- a/net-misc/smb4k/smb4k-4.0.7.ebuild
+++ b/net-misc/smb4k/smb4k-4.0.7.ebuild
@@ -14,7 +14,7 @@ https://sourceforge.net/p/smb4k/home/Home/"
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+ KEYWORDS="amd64 ~arm64 ~riscv ~x86"
fi
LICENSE="GPL-2"
diff --git a/net-vpn/networkmanager-strongswan/Manifest b/net-vpn/networkmanager-strongswan/Manifest
index 029039bf35ae..71713d7942b7 100644
--- a/net-vpn/networkmanager-strongswan/Manifest
+++ b/net-vpn/networkmanager-strongswan/Manifest
@@ -1,4 +1,4 @@
-DIST NetworkManager-strongswan-1.6.4.tar.bz2 347849 BLAKE2B 126e07e1a0678ae1e11c0c2e94117a6c448a5110da3e7ec9347b9cef522cbc1c196c9fc2d77599a180b1b0f6e3bd9d12b6ad2f7ced4ac24b2420e17b28b3641f SHA512 7bc8e671eb85f7e9f4e6f7bb440292adee10d5bc150dcf264af30c61edf4f4db664ab3322a787f4dcbd05f2412f67faee01faeb8bd754f8c91785548a5902cca
-DIST NetworkManager-strongswan-1.6.4.tar.bz2.sig 833 BLAKE2B f0849ffa89def25df44dd3bfb3c55df6f0faea8b395ba2ae5fb3a783a01d5de6cd32d9f3e9c46e3ef7bd24e46e7bee8b6bfee4bdb9a455cd838f9278235a221e SHA512 ca4db624c036754d5d1429a198374dfe7d0225d05ed4b9f8bb27bd1d8ef01be48658b3ffa1775e4d910cd85cb31f20fca8c1f2d3a823089858a9a1a86187672a
DIST NetworkManager-strongswan-1.6.5.tar.bz2 355492 BLAKE2B 4591c8eeb6831ae38978725b97cfda9a58f9cb2579130435e6020c00ca192b478cb6fe4e9d1033de203774177faec7b990ed943c75363d2a0b0a5694c02e90e4 SHA512 53ea1e796328cda3419cb0003be6f58f00f7816cdb6e622e7c7ff124e8a0d91f8ff60d059899165ce116cecd9ef9e2f87c908e44077b4fa95099412e11ac561f
DIST NetworkManager-strongswan-1.6.5.tar.bz2.sig 833 BLAKE2B 95e2c3c58526bf51820a7295181ed9e468b7834f2fd94aa35ef630853419f8f12a433ea1ce9fe413069089d5202d8244b19d5ef7cc5495059307f404a1e24c56 SHA512 b0e5ca881386e9b13805c4bf19dba3e38d2c69aa1b4cee14944b0f15b3be5c02c78a00f2e4a80c26d598682844bbfd4677f4bd2be0a4e21dba18a8e2d71630cd
+DIST NetworkManager-strongswan-1.6.6.tar.bz2 355347 BLAKE2B cceff8d5fcd9c272eff6d43bc7702f2ec74dc9a75f0edbbd6522b0c1359eece8bed320dbfbfd835a13433e3a9c03f7357080aff3fa62d903f9a5a318a53504ec SHA512 964ff586d26fa80b690559eadccb4685c3e31a9a832da9c516a1fda089fe32f15e47f053443717a7bd00c40f5423d0cd728fe704334c50da2f66d323826c5e0a
+DIST NetworkManager-strongswan-1.6.6.tar.bz2.sig 833 BLAKE2B 1cb850a183e8b3423db09a6fac4b01f2e215ae31e15d1ee64d7200f6ad85b5c8fdcfab68754d82b1a2c7dfa21d09def5fb3fbc47d29fd7a8ccaca6f400f62e3c SHA512 e7e667d0975cf933be35b9456a8a0ec00072870204aeae6557ecd2be02a0ce4d453746e120fc71913a7d02f8a8d272874b0e936d456a8ac146eb09e9e9962b44
diff --git a/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild b/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild
index 57d6141df3ac..363f8b5c744f 100644
--- a/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild
+++ b/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.5.ebuild
@@ -19,7 +19,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 ~arm64 x86"
IUSE="gtk4"
RDEPEND="
diff --git a/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.4.ebuild b/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.6.ebuild
index 363f8b5c744f..57d6141df3ac 100644
--- a/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.4.ebuild
+++ b/net-vpn/networkmanager-strongswan/networkmanager-strongswan-1.6.6.ebuild
@@ -19,7 +19,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
+KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="gtk4"
RDEPEND="
diff --git a/net-vpn/openconnect/openconnect-9.21.ebuild b/net-vpn/openconnect/openconnect-9.21.ebuild
index 708793b6ced3..18f12587e160 100644
--- a/net-vpn/openconnect/openconnect-9.21.ebuild
+++ b/net-vpn/openconnect/openconnect-9.21.ebuild
@@ -15,7 +15,7 @@ else
inherit verify-sig
SRC_URI="https://www.infradead.org/openconnect/download/${P}.tar.gz
verify-sig? ( https://www.infradead.org/openconnect/download/${P}.tar.gz.asc )"
- KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 arm ~arm64 ~loong ppc64 ~riscv x86"
fi
DESCRIPTION="Free client for Cisco AnyConnect SSL VPN software"
diff --git a/net-wireless/unifi/Manifest b/net-wireless/unifi/Manifest
index 95809bd16a4b..a710dd9b1375 100644
--- a/net-wireless/unifi/Manifest
+++ b/net-wireless/unifi/Manifest
@@ -1,2 +1 @@
-DIST unifi-10.5.54.zip 149665055 BLAKE2B cef5903521f86390b557ae52275642df24b4c1fd03ede221e6fb5ff248937b88e57fea2a9c1f497f35cf788a43458e2eadead7558084fcbb66b8cecc2d4f9e32 SHA512 e05dde66a9315610e7d1b1ae5f978cd1e38a9d6c023658926ce2bdf46127d36392115b197709a23594adb3c394f986b050b6be1855c3612b58e9828b2dfd82ad
-DIST unifi-10.6.101.zip 165432403 BLAKE2B ff3a281ad3c117a5e8226de2b56262b8753d8ec3730f12a945617275f7979514e23d527e701a99ebeac21d814c8898c850dc103636799224177656b0dc326b86 SHA512 c02538c7c9e375cb4217b137ad50b968cd9b404d457e11018c79093ec28355ba335c8d8501db108d2000cc6070fbdb16ea5d2b78c660e10d5ba57ce6df7a38cf
+DIST unifi-10.6.106.zip 166100329 BLAKE2B fc5489a9e59ebfb070e79fb3aae4ba78fdaaa682baf0131f01bc65a41def68d33c44cd4ed36abffe57fd512c058f59fde540c572925c2bb420f445588e5da3cb SHA512 966171ea68d04e7e4ec52ef9e04175f833ec1326884f8a8910eb5885b122772c3d2808f4b985c02f4f4b2401b361162e88e59e3f869472ae5433f1511e9835d6
diff --git a/net-wireless/unifi/unifi-10.6.101.ebuild b/net-wireless/unifi/unifi-10.6.101.ebuild
deleted file mode 100644
index 6dd4f3560fc5..000000000000
--- a/net-wireless/unifi/unifi-10.6.101.ebuild
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Set this var for any releases except stable
-# RC_SUFFIX="-"
-
-inherit java-pkg-2 readme.gentoo-r1 systemd
-
-DESCRIPTION="A Management Controller for Ubiquiti Networks UniFi APs"
-HOMEPAGE="https://www.ubnt.com"
-SRC_URI="https://dl.ui.com/unifi/${PV}${RC_SUFFIX}/UniFi.unix.zip -> ${P}.zip"
-S="${WORKDIR}/UniFi"
-
-LICENSE="Apache-1.0 Apache-2.0 BSD-1 BSD-2 BSD CDDL EPL-1.0 GPL-2 LGPL-2.1 LGPL-3 MIT ubiquiti"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="-* ~amd64 ~arm64"
-IUSE="systemd system-mongodb"
-RESTRICT="bindist mirror"
-
-RDEPEND="
- acct-group/unifi
- acct-user/unifi
- dev-db/mongodb
- virtual/jre:25
-"
-
-BDEPEND="app-arch/unzip"
-
-DOCS=( "readme.txt" )
-
-QA_PREBUILT="
- usr/lib/unifi/lib/native/Linux/aarch64/*.so
- usr/lib/unifi/lib/native/Linux/x86_64/*.so
-"
-
-src_prepare() {
- if [[ ${CHOST} != aarch64* ]]; then
- rm -r lib/native/Linux/aarch64 || die
- fi
- if [[ ${CHOST} != x86_64* ]]; then
- rm -r lib/native/Linux/x86_64 || die
- fi
-
- if [[ ${CHOST} == aarch64* ]]; then
- if ! use systemd; then
- rm lib/native/Linux/aarch64/libubnt_sdnotify_jni.so || die
- fi
- fi
- if [[ ${CHOST} == x86_64* ]]; then
- if ! use systemd; then
- rm lib/native/Linux/x86_64/libubnt_sdnotify_jni.so || die
- fi
- fi
-
- default
-}
-
-src_compile() {
- :;
-}
-
-src_install() {
- insinto /usr/lib/unifi
- doins -r dl lib webapps
- ! use system-mongodb && doins -r bin
-
- diropts -o unifi -g unifi
- keepdir /var/lib/unifi/{conf,data,run,tmp,work} /var/log/unifi
-
- for symlink in conf data run tmp work; do
- dosym ../../../var/lib/unifi/${symlink} /usr/lib/unifi/${symlink}
- done
- dosym ../../../var/log/unifi /usr/lib/unifi/logs
-
- java-pkg_regjar "${D}"/usr/lib/unifi/lib/*.jar
- java-pkg_dolauncher \
- unifi \
- --java_args '-Dorg.xerial.snappy.tempdir=/usr/lib/unifi/tmp \
- -Djava.library.path= \
- --add-opens java.base/java.lang=ALL-UNNAMED \
- --add-opens java.base/java.time=ALL-UNNAMED \
- --add-opens java.base/sun.security.util=ALL-UNNAMED \
- --add-opens java.base/java.io=ALL-UNNAMED \
- --add-opens java.rmi/sun.rmi.transport=ALL-UNNAMED' \
- --jar ace.jar \
- --pwd '/usr/lib/unifi'
-
- if use system-mongodb; then
- systemd_newunit "${FILESDIR}"/unifi-mongodb.service unifi.service
- newinitd "${FILESDIR}"/unifi-mongodb.initd unifi
- else
- systemd_newunit "${FILESDIR}"/unifi.service-r2 unifi.service
- newinitd "${FILESDIR}"/unifi.initd-r2 unifi
- fi
-
- newconfd "${FILESDIR}"/unifi.confd unifi
-
- echo 'CONFIG_PROTECT="/var/lib/unifi"' > "${T}"/99unifi || die
- doenvd "${T}"/99unifi
-
- einstalldocs
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
diff --git a/net-wireless/unifi/unifi-10.5.54.ebuild b/net-wireless/unifi/unifi-10.6.106.ebuild
index bdad6bd3fc51..bdad6bd3fc51 100644
--- a/net-wireless/unifi/unifi-10.5.54.ebuild
+++ b/net-wireless/unifi/unifi-10.6.106.ebuild
diff --git a/profiles/package.mask/00-gentoo b/profiles/package.mask/00-gentoo
index be3ec54bdc0e..ee0adc42de8d 100644
--- a/profiles/package.mask/00-gentoo
+++ b/profiles/package.mask/00-gentoo
@@ -52,7 +52,9 @@ dev-lang/tuprolog
# Jaco Kroon <jkroon@gentoo.org> (2026-10-06)
# Unmaintained, abandoned by maintainer.
# You can look at net-misc/ntpsec or net-misc/chrony as replacement.
+# See also: https://wiki.gentoo.org/wiki/Network_Time_Protocol
# Removal on 2027-01-04. Bug #962880, and many more.
+net-misc/ntp
# Mike Pagano <mpagano@gentoo.org> (2026-10-06)
# Unmaintained, abandoned by maintainer.
diff --git a/sci-electronics/gerbv/gerbv-2.13.0.ebuild b/sci-electronics/gerbv/gerbv-2.13.0.ebuild
index be2997d468ea..19c4a20c03c4 100644
--- a/sci-electronics/gerbv/gerbv-2.13.0.ebuild
+++ b/sci-electronics/gerbv/gerbv-2.13.0.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
IUSE="doc examples unit-mm"
RESTRICT="test"
diff --git a/sci-libs/dealii/dealii-9.7.1.ebuild b/sci-libs/dealii/dealii-9.7.1-r1.ebuild
index 299241bf2c36..1fe445f99e6c 100644
--- a/sci-libs/dealii/dealii-9.7.1.ebuild
+++ b/sci-libs/dealii/dealii-9.7.1-r1.ebuild
@@ -42,13 +42,13 @@ RDEPEND="dev-libs/boost:=
virtual/zlib:=
dev-cpp/magic_enum:=
dev-cpp/taskflow:=
- arborx? ( sci-libs/arborx[mpi=] )
- adolc? ( sci-libs/adolc )
+ arborx? ( sci-libs/arborx:=[mpi=] )
+ adolc? ( sci-libs/adolc:= )
arpack? ( sci-libs/arpack[mpi=] )
assimp? ( media-libs/assimp:= )
- cgal? ( sci-mathematics/cgal )
- ginkgo? ( sci-libs/ginkgo )
- gmsh? ( sci-libs/gmsh )
+ cgal? ( sci-mathematics/cgal:= )
+ ginkgo? ( sci-libs/ginkgo:= )
+ gmsh? ( sci-libs/gmsh:= )
gsl? ( sci-libs/gsl:= )
hdf5? ( sci-libs/hdf5:=[mpi=] )
lapack? ( virtual/lapack )
@@ -58,7 +58,7 @@ RDEPEND="dev-libs/boost:=
)
mpi? ( virtual/mpi )
mumps? ( sci-libs/mumps[mpi] )
- muparser? ( dev-cpp/muParser )
+ muparser? ( dev-cpp/muParser:= )
opencascade? ( sci-libs/opencascade:= )
p4est? ( sci-libs/p4est[mpi] )
petsc? ( sci-mathematics/petsc[mpi=,int64?] )
@@ -67,12 +67,9 @@ RDEPEND="dev-libs/boost:=
sparse? ( sci-libs/umfpack )
sundials? ( sci-libs/sundials:= )
symengine? ( >=sci-libs/symengine-0.4:= )
- trilinos? ( sci-libs/trilinos )
- vtk? ( sci-libs/vtk )
- || (
- dev-cpp/kokkos
- sci-libs/trilinos
- )
+ trilinos? ( sci-libs/trilinos:=[int64=] )
+ vtk? ( sci-libs/vtk:= )
+ dev-cpp/kokkos:=
"
DEPEND="${RDEPEND}
diff --git a/sci-libs/dealii/dealii-9.8.0.ebuild b/sci-libs/dealii/dealii-9.8.0-r1.ebuild
index af0e1cbc5a0e..0f6f7694e0d7 100644
--- a/sci-libs/dealii/dealii-9.8.0.ebuild
+++ b/sci-libs/dealii/dealii-9.8.0-r1.ebuild
@@ -42,13 +42,13 @@ RDEPEND="dev-libs/boost:=
virtual/zlib:=
dev-cpp/magic_enum:=
dev-cpp/taskflow:=
- arborx? ( sci-libs/arborx[mpi=] )
- adolc? ( sci-libs/adolc )
+ arborx? ( sci-libs/arborx:=[mpi=] )
+ adolc? ( sci-libs/adolc:= )
arpack? ( sci-libs/arpack[mpi=] )
assimp? ( media-libs/assimp:= )
- cgal? ( sci-mathematics/cgal )
- ginkgo? ( sci-libs/ginkgo )
- gmsh? ( sci-libs/gmsh )
+ cgal? ( sci-mathematics/cgal:= )
+ ginkgo? ( sci-libs/ginkgo:= )
+ gmsh? ( sci-libs/gmsh:= )
gsl? ( sci-libs/gsl:= )
hdf5? ( sci-libs/hdf5:=[mpi=] )
lapack? ( virtual/lapack )
@@ -58,7 +58,7 @@ RDEPEND="dev-libs/boost:=
)
mpi? ( virtual/mpi )
mumps? ( sci-libs/mumps[mpi] )
- muparser? ( dev-cpp/muParser )
+ muparser? ( dev-cpp/muParser:= )
opencascade? ( sci-libs/opencascade:= )
p4est? ( sci-libs/p4est[mpi] )
petsc? ( sci-mathematics/petsc[mpi=,int64?] )
@@ -67,12 +67,9 @@ RDEPEND="dev-libs/boost:=
sparse? ( sci-libs/umfpack )
sundials? ( sci-libs/sundials:= )
symengine? ( >=sci-libs/symengine-0.4:= )
- trilinos? ( sci-libs/trilinos )
- vtk? ( sci-libs/vtk )
- || (
- dev-cpp/kokkos
- sci-libs/trilinos
- )
+ trilinos? ( sci-libs/trilinos:=[int64=] )
+ vtk? ( sci-libs/vtk:= )
+ dev-cpp/kokkos:=
"
DEPEND="${RDEPEND}
diff --git a/sci-libs/dealii/dealii-9999.ebuild b/sci-libs/dealii/dealii-9999.ebuild
index 712aa4132bc9..1c96bb6ccec7 100644
--- a/sci-libs/dealii/dealii-9999.ebuild
+++ b/sci-libs/dealii/dealii-9999.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
@@ -40,13 +40,13 @@ RDEPEND="dev-libs/boost:=
virtual/zlib:=
dev-cpp/magic_enum:=
dev-cpp/taskflow:=
- arborx? ( sci-libs/arborx[mpi=] )
- adolc? ( sci-libs/adolc )
+ arborx? ( sci-libs/arborx:=[mpi=] )
+ adolc? ( sci-libs/adolc:= )
arpack? ( sci-libs/arpack[mpi=] )
assimp? ( media-libs/assimp:= )
- cgal? ( sci-mathematics/cgal )
- ginkgo? ( sci-libs/ginkgo )
- gmsh? ( sci-libs/gmsh )
+ cgal? ( sci-mathematics/cgal:= )
+ ginkgo? ( sci-libs/ginkgo:= )
+ gmsh? ( sci-libs/gmsh:= )
gsl? ( sci-libs/gsl:= )
hdf5? ( sci-libs/hdf5:=[mpi=] )
lapack? ( virtual/lapack )
@@ -56,7 +56,7 @@ RDEPEND="dev-libs/boost:=
)
mpi? ( virtual/mpi )
mumps? ( sci-libs/mumps[mpi] )
- muparser? ( dev-cpp/muParser )
+ muparser? ( dev-cpp/muParser:= )
opencascade? ( sci-libs/opencascade:= )
p4est? ( sci-libs/p4est[mpi] )
petsc? ( sci-mathematics/petsc[mpi=,int64?] )
@@ -65,12 +65,9 @@ RDEPEND="dev-libs/boost:=
sparse? ( sci-libs/umfpack )
sundials? ( sci-libs/sundials:= )
symengine? ( >=sci-libs/symengine-0.4:= )
- trilinos? ( sci-libs/trilinos )
- vtk? ( sci-libs/vtk )
- || (
- dev-cpp/kokkos
- sci-libs/trilinos
- )
+ trilinos? ( sci-libs/trilinos:=[int64=] )
+ vtk? ( sci-libs/vtk:= )
+ dev-cpp/kokkos:=
"
DEPEND="${RDEPEND}
diff --git a/sci-libs/m4ri/Manifest b/sci-libs/m4ri/Manifest
index 16910dfe6762..7f07d590009d 100644
--- a/sci-libs/m4ri/Manifest
+++ b/sci-libs/m4ri/Manifest
@@ -1,2 +1 @@
DIST m4ri-20250128.tar.gz 530551 BLAKE2B c740e40f3cbcf3f5a9f269fd6a923e8206942b78582c21fe77831a9978d41215801a50749111b91c70433bf4a5da69d2d05da3d66c06ef7546111b83f8696be1 SHA512 698876c6250a61ec482bb36b56ef35226e1f2e08363511c2aa7de2ff066bc0cf13698c866e44ccef2aae05de44f46dda54a2f6012ebdc26032014d5176bef482
-DIST release-20240729.tar.gz 178851 BLAKE2B 7a8bee1417da56d561add3b2e7d79f005f03ebf825a150a105d14caeb64b75ba4e30658b616a03cedc49d4e5c1b1a70393c6d5c6231bb1ba35abf20aaf93fb2e SHA512 afd74b0f9a1e3f16b313dca9a73fde85bd08aa431f0ad7064f09600434f27d6cabddc117cf99396dc8d83d245f81b7ed4185e305caad56dad79ecfefc11cf817
diff --git a/sci-libs/m4ri/files/m4ri-20240729-pkgconfig.patch b/sci-libs/m4ri/files/m4ri-20240729-pkgconfig.patch
deleted file mode 100644
index 469b08e6dadb..000000000000
--- a/sci-libs/m4ri/files/m4ri-20240729-pkgconfig.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 132130a5e74dac9beeb42333a551d76714190f40 Mon Sep 17 00:00:00 2001
-From: Michael Orlitzky <michael@orlitzky.com>
-Date: Mon, 20 Jan 2025 23:11:30 -0500
-Subject: [PATCH] m4ri.pc.in: various compiler/linker flag improvements
-
- 1. libpng moved from Requires to Requires.private. Programs using m4ri
- don't need to pass -lpng unless they are statically linking.
-
- 2. Move $OPENMP_CFLAGS to Libs.private. This belongs in Libs.private
- (rather than Libs) for the same reason -lpng does, but it also does
- NOT belong in Cflags, because we don't want to accidentally enable
- OpenMP at compile time in every project that uses m4ri.
----
- m4ri.pc.in | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/m4ri.pc.in b/m4ri.pc.in
-index 0257aa6..ff1b3ce 100644
---- a/m4ri.pc.in
-+++ b/m4ri.pc.in
-@@ -6,6 +6,7 @@ includedir=@includedir@
- Name: M4RI
- Description: Dense linear algebra over GF(2).
- Version: @PACKAGE_VERSION@
--Requires: @M4RI_USE_PNG_PC@
-+Requires.private: @M4RI_USE_PNG_PC@
- Libs: -L${libdir} -lm4ri @RAW_LIBPNG@ @LIBM@ @LIBPNG_LIBADD@
--Cflags: -I${includedir} @SIMD_CFLAGS@ @OPENMP_CFLAGS@ @LIBPNG_CFLAGS@
-+Libs.private: @OPENMP_CFLAGS@
-+Cflags: -I${includedir} @LIBPNG_CFLAGS@
---
-2.45.2
-
diff --git a/sci-libs/m4ri/m4ri-20240729.ebuild b/sci-libs/m4ri/m4ri-20240729.ebuild
deleted file mode 100644
index 1ef6e6fb8028..000000000000
--- a/sci-libs/m4ri/m4ri-20240729.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools flag-o-matic toolchain-funcs
-
-DESCRIPTION="Method of four russian for inversion (M4RI)"
-HOMEPAGE="https://github.com/malb/m4ri"
-SRC_URI="https://github.com/malb/${PN}/archive/refs/tags/release-${PV}.tar.gz"
-
-S="${WORKDIR}/${PN}-release-${PV}"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 ppc64 ~riscv ~x86 ~x64-macos"
-IUSE="debug openmp cpu_flags_x86_sse2 png"
-
-BDEPEND="virtual/pkgconfig"
-DEPEND="png? ( media-libs/libpng:= )"
-RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}/${P}-pkgconfig.patch" )
-
-# NEWS and ChangeLog are empty as of 2025-01-20.
-DOCS=( AUTHORS README.md )
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- # when using openmp and -O0 the testsuite fails
- # https://github.com/cschwan/sage-on-gentoo/issues/475
- # Still current as of 20200115
- use openmp && replace-flags -O0 -O1
-
- econf \
- $(use_enable debug) \
- $(use_enable openmp) \
- $(use_enable png) \
- $(use_enable cpu_flags_x86_sse2 sse2)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -delete || die
-}
diff --git a/sci-libs/mumps/Manifest b/sci-libs/mumps/Manifest
index 4c031ab20576..56d75a1a5f55 100644
--- a/sci-libs/mumps/Manifest
+++ b/sci-libs/mumps/Manifest
@@ -1,2 +1,4 @@
DIST MUMPS_5.3.5.tar.gz 3940501 BLAKE2B f1767483bb23744a2c5ed11b0823c5b023377d5212abbe29a177cce5b5e51e6f2f391d7caa17022646e36c9e4b4fb4af80b03ac6cf8e89f37502ed960138bbbe SHA512 6e3bb081f38af8540ada7b4fb54c6e766739c854e2a3dd253e3e012eee05dae30064b1b4a8d7493f10691725aba4cc9e80544b0fe5b71670cb0b2726ccfc4439
DIST MUMPS_5.4.1.tar.gz 4027725 BLAKE2B e3ad2b759f3888dbe75b7dd4e8f325da07930a39b2dad62e25b7d95022f517942baa4d4db0899d9f2ef21a228cdd0a2ab10380c7aa334b98ed0ab41987910de8 SHA512 fbac0c449246e9db97080993ffc5187e948ed1d2fe2e51dcbffa044f3dd6dfb4ad13fe672baa6f1e2b7a0f29f58611ee375d43a6c4316702a67f8e6d0694412d
+DIST MUMPS_5.5.1.tar.gz 4229448 BLAKE2B 99e5b9413a2b5544299aa27122815daefdc2540c9d5678043f6b84826484626781135e157e4e7797321368d988ef708fba1ea0d5814629cf049defe82a29c69d SHA512 51ebc680ada41f5d622a353778233d6306f78ac25e30a3a5ba181b16961093215d4a2e715727340f6865abd0cf0a90d88665b13ddc36007f76eb8fcbc0ed5adf
+DIST MUMPS_5.6.2.tar.gz 4341079 BLAKE2B 567ae7475b8bb997d14df481e7563aa4b2424e0afc970f842275da58732a5f48f5f31b7d5a0d37a03e277c0e976b6bd1679f5955934ced04a195edaf25877695 SHA512 5ee2659ed963ca525fc253986504250d0529257d79f18534032b970985528670cbadea023ff596829936c1b18ec6ef8925c3a6c0451eb1ad50caa88b20706adf
diff --git a/sci-libs/mumps/mumps-5.5.1.ebuild b/sci-libs/mumps/mumps-5.5.1.ebuild
new file mode 100644
index 000000000000..967f2d87ecca
--- /dev/null
+++ b/sci-libs/mumps/mumps-5.5.1.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fortran-2 flag-o-matic multilib toolchain-funcs
+
+MYP=MUMPS_${PV}
+
+DESCRIPTION="MUltifrontal Massively Parallel sparse direct matrix Solver"
+HOMEPAGE="https://mumps-solver.org/"
+SRC_URI="https://mumps-solver.org/${MYP}.tar.gz"
+S="${WORKDIR}/${MYP}"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~riscv ~x86"
+IUSE="doc examples metis mpi +scotch static-libs"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+ virtual/blas
+ metis? (
+ >=sci-libs/metis-5
+ mpi? ( >=sci-libs/parmetis-4 )
+ )
+ mpi? (
+ sci-libs/scalapack
+ virtual/mpi[fortran]
+ )
+ !mpi? ( virtual/lapack )
+ scotch? ( >=sci-libs/scotch-6.0.1:=[mpi=] )
+"
+DEPEND="${RDEPEND}"
+
+_get_version_component_count() {
+ local cnt=( $(ver_rs 1- ' ') )
+ echo ${#cnt[@]} || die
+}
+
+static_to_shared() {
+ local libstatic=${1}
+ shift
+ local libname=$(basename ${libstatic%.a})
+ local soname=${libname}$(get_libname $(ver_cut 1-2))
+ local libdir=$(dirname ${libstatic})
+
+ einfo "Making ${soname} from ${libstatic}"
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ ${LINK:-$(tc-getCC)} ${LDFLAGS} \
+ -dynamiclib -install_name "${EPREFIX}"/usr/lib/"${soname}" \
+ -Wl,-all_load -Wl,${libstatic} \
+ "$@" -o ${libdir}/${soname} || die "${soname} failed"
+ else
+ ${LINK:-$(tc-getCC)} ${LDFLAGS} \
+ -shared -Wl,-soname=${soname} \
+ -Wl,--whole-archive ${libstatic} -Wl,--no-whole-archive \
+ "$@" -o ${libdir}/${soname} || die "${soname} failed"
+
+ if [[ $(_get_version_component_count) -ge 1 ]] ; then
+ ln -s ${soname} ${libdir}/${libname}$(get_libname $(ver_cut 1)) || die
+ fi
+
+ ln -s ${soname} ${libdir}/${libname}$(get_libname) || die
+ fi
+}
+
+src_prepare() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/862903
+ #
+ # There is an upstream mailing list but it seems to be broken. I *think*,
+ # because it's all in French. I tried and failed to report the bug.
+ #
+ # Do not trust with LTO either.
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ # workaround for gcc10 (bug #743442)
+ append-fflags $(test-flags-FC -fallow-argument-mismatch)
+
+ sed -e "s;^\(CC\s*=\).*;\1$(tc-getCC);" \
+ -e "s;^\(FC\s*=\).*;\1$(tc-getFC);" \
+ -e "s;^\(FL\s*=\).*;\1$(tc-getFC);" \
+ -e "s;^\(AR\s*=\).*;\1$(tc-getAR) cr ;" \
+ -e "s;^\(RANLIB\s*=\).*;\1$(tc-getRANLIB);" \
+ -e "s;^\(LIBBLAS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs blas);" \
+ -e "s;^\(INCPAR\s*=\).*;\1;" \
+ -e 's;^\(LIBPAR\s*=\).*;\1$(SCALAP);' \
+ -e "s;^\(OPTF\s*=\).*;\1${FFLAGS} -DALLOW_NON_INIT \$(PIC);" \
+ -e "s;^\(OPTC\s*=\).*;\1${CFLAGS} \$(PIC);" \
+ -e "s;^\(OPTL\s*=\).*;\1${LDFLAGS};" \
+ Make.inc/Makefile.inc.generic > Makefile.inc || die
+ # fixed a missing copy of libseq to libdir
+
+ default
+}
+
+src_configure() {
+ # We abuse LIBADD here to work around the fact that MUMPS is criminally
+ # underlinked.
+ LIBADD="$($(tc-getPKG_CONFIG) --libs blas) -Llib -lpord"
+ local ord="-Dpord"
+
+ if use metis && use mpi; then
+ sed -i \
+ -e "s;#\s*\(LMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs parmetis);" \
+ -e "s;#\s*\(IMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --cflags parmetis);" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs parmetis)"
+ ord="${ord} -Dparmetis"
+ elif use metis; then
+ sed -i \
+ -e "s;#\s*\(LMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs metis);" \
+ -e "s;#\s*\(IMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --cflags metis);" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs metis)"
+ ord="${ord} -Dmetis"
+ fi
+ if use scotch && use mpi; then
+ sed -i \
+ -e "s;#\s*\(LSCOTCH\s*=\).*;\1-lptesmumps -lptscotch -lptscotcherr -lscotch;" \
+ -e "s;#\s*\(ISCOTCH\s*=\).*;\1-I${ESYSROOT}/usr/include/scotch;" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} -lptesmumps -lptscotch -lptscotcherr"
+ ord="${ord} -Dptscotch"
+ elif use scotch; then
+ sed -i \
+ -e "s;#\s*\(LSCOTCH\s*=\).*;\1-lesmumps -lscotch -lscotcherr;" \
+ -e "s;#\s*\(ISCOTCH\s*=\).*;\1-I${ESYSROOT}/usr/include/scotch;" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} -lesmumps -lscotch -lscotcherr"
+ ord="${ord} -Dscotch"
+ fi
+ if use mpi; then
+ sed -i \
+ -e "s;^\(CC\s*=\).*;\1mpicc;" \
+ -e "s;^\(FC\s*=\).*;\1mpif90;" \
+ -e "s;^\(FL\s*=\).*;\1mpif90;" \
+ -e "s;^\(SCALAP\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs scalapack);" \
+ Makefile.inc || die
+ export LINK=mpif90
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs scalapack)"
+ else
+ sed -i \
+ -e 's;PAR);SEQ);g' \
+ -e "s;^\(SCALAP\s*=\).*;\1;" \
+ -e 's;^LIBSEQNEEDED =;LIBSEQNEEDED = libseqneeded;g' \
+ Makefile.inc || die
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs lapack)"
+ export LINK="$(tc-getFC)"
+ fi
+ sed -i -e "s;^\s*\(ORDERINGSF\s*=\).*;\1 ${ord};" Makefile.inc || die
+}
+
+src_compile() {
+ # Workaround #462602
+ export FAKEROOTKEY=1
+
+ # Use "-j1" to avoid a spurious race condition
+ emake -j1 all PIC="-fPIC"
+ if ! use mpi; then
+ #$(tc-getAR) crs lib/libmumps_common.a libseq/*.o || die
+ LIBADD+=" -Llibseq -lmpiseq"
+ static_to_shared libseq/libmpiseq.a
+ fi
+
+ static_to_shared lib/libpord.a ${LIBADD}
+ static_to_shared lib/libmumps_common.a ${LIBADD}
+
+ local i
+ for i in c d s z; do
+ static_to_shared lib/lib${i}mumps.a -Llib -lmumps_common ${LIBADD}
+ done
+
+ if use static-libs; then
+ emake clean
+ emake alllib
+ fi
+}
+
+src_test() {
+ emake all
+
+ local dotest
+ if use mpi; then
+ dotest="mpirun -np 2"
+ else
+ export LD_LIBRARY_PATH="${S}/libseq:${LD_LIBRARY_PATH}"
+ fi
+
+ cd examples
+ ${dotest} ./ssimpletest < input_simpletest_real || die
+ ${dotest} ./dsimpletest < input_simpletest_real || die
+ ${dotest} ./csimpletest < input_simpletest_cmplx || die
+ ${dotest} ./zsimpletest < input_simpletest_cmplx || die
+ einfo "The solutions should be close to (1,2,3,4,5)"
+ ${dotest} ./c_example || die
+ einfo "The solution should be close to (1,2)"
+ emake clean
+}
+
+src_install() {
+ dolib.so lib/lib*$(get_libname)*
+ use static-libs && dolib.a lib/lib*.a
+ insinto /usr
+
+ doins -r include
+ if ! use mpi; then
+ dolib.so libseq/lib*$(get_libname)*
+ insinto /usr/include/mpiseq
+ doins libseq/*.h
+ use static-libs && dolib.a libseq/libmpiseq.a
+ fi
+
+ dodoc README ChangeLog VERSION
+ use doc && dodoc doc/*.pdf
+ if use examples; then
+ dodoc -r examples
+ fi
+}
diff --git a/sci-libs/mumps/mumps-5.6.2.ebuild b/sci-libs/mumps/mumps-5.6.2.ebuild
new file mode 100644
index 000000000000..967f2d87ecca
--- /dev/null
+++ b/sci-libs/mumps/mumps-5.6.2.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fortran-2 flag-o-matic multilib toolchain-funcs
+
+MYP=MUMPS_${PV}
+
+DESCRIPTION="MUltifrontal Massively Parallel sparse direct matrix Solver"
+HOMEPAGE="https://mumps-solver.org/"
+SRC_URI="https://mumps-solver.org/${MYP}.tar.gz"
+S="${WORKDIR}/${MYP}"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~riscv ~x86"
+IUSE="doc examples metis mpi +scotch static-libs"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+ virtual/blas
+ metis? (
+ >=sci-libs/metis-5
+ mpi? ( >=sci-libs/parmetis-4 )
+ )
+ mpi? (
+ sci-libs/scalapack
+ virtual/mpi[fortran]
+ )
+ !mpi? ( virtual/lapack )
+ scotch? ( >=sci-libs/scotch-6.0.1:=[mpi=] )
+"
+DEPEND="${RDEPEND}"
+
+_get_version_component_count() {
+ local cnt=( $(ver_rs 1- ' ') )
+ echo ${#cnt[@]} || die
+}
+
+static_to_shared() {
+ local libstatic=${1}
+ shift
+ local libname=$(basename ${libstatic%.a})
+ local soname=${libname}$(get_libname $(ver_cut 1-2))
+ local libdir=$(dirname ${libstatic})
+
+ einfo "Making ${soname} from ${libstatic}"
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ ${LINK:-$(tc-getCC)} ${LDFLAGS} \
+ -dynamiclib -install_name "${EPREFIX}"/usr/lib/"${soname}" \
+ -Wl,-all_load -Wl,${libstatic} \
+ "$@" -o ${libdir}/${soname} || die "${soname} failed"
+ else
+ ${LINK:-$(tc-getCC)} ${LDFLAGS} \
+ -shared -Wl,-soname=${soname} \
+ -Wl,--whole-archive ${libstatic} -Wl,--no-whole-archive \
+ "$@" -o ${libdir}/${soname} || die "${soname} failed"
+
+ if [[ $(_get_version_component_count) -ge 1 ]] ; then
+ ln -s ${soname} ${libdir}/${libname}$(get_libname $(ver_cut 1)) || die
+ fi
+
+ ln -s ${soname} ${libdir}/${libname}$(get_libname) || die
+ fi
+}
+
+src_prepare() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/862903
+ #
+ # There is an upstream mailing list but it seems to be broken. I *think*,
+ # because it's all in French. I tried and failed to report the bug.
+ #
+ # Do not trust with LTO either.
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ # workaround for gcc10 (bug #743442)
+ append-fflags $(test-flags-FC -fallow-argument-mismatch)
+
+ sed -e "s;^\(CC\s*=\).*;\1$(tc-getCC);" \
+ -e "s;^\(FC\s*=\).*;\1$(tc-getFC);" \
+ -e "s;^\(FL\s*=\).*;\1$(tc-getFC);" \
+ -e "s;^\(AR\s*=\).*;\1$(tc-getAR) cr ;" \
+ -e "s;^\(RANLIB\s*=\).*;\1$(tc-getRANLIB);" \
+ -e "s;^\(LIBBLAS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs blas);" \
+ -e "s;^\(INCPAR\s*=\).*;\1;" \
+ -e 's;^\(LIBPAR\s*=\).*;\1$(SCALAP);' \
+ -e "s;^\(OPTF\s*=\).*;\1${FFLAGS} -DALLOW_NON_INIT \$(PIC);" \
+ -e "s;^\(OPTC\s*=\).*;\1${CFLAGS} \$(PIC);" \
+ -e "s;^\(OPTL\s*=\).*;\1${LDFLAGS};" \
+ Make.inc/Makefile.inc.generic > Makefile.inc || die
+ # fixed a missing copy of libseq to libdir
+
+ default
+}
+
+src_configure() {
+ # We abuse LIBADD here to work around the fact that MUMPS is criminally
+ # underlinked.
+ LIBADD="$($(tc-getPKG_CONFIG) --libs blas) -Llib -lpord"
+ local ord="-Dpord"
+
+ if use metis && use mpi; then
+ sed -i \
+ -e "s;#\s*\(LMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs parmetis);" \
+ -e "s;#\s*\(IMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --cflags parmetis);" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs parmetis)"
+ ord="${ord} -Dparmetis"
+ elif use metis; then
+ sed -i \
+ -e "s;#\s*\(LMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs metis);" \
+ -e "s;#\s*\(IMETIS\s*=\).*;\1$($(tc-getPKG_CONFIG) --cflags metis);" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs metis)"
+ ord="${ord} -Dmetis"
+ fi
+ if use scotch && use mpi; then
+ sed -i \
+ -e "s;#\s*\(LSCOTCH\s*=\).*;\1-lptesmumps -lptscotch -lptscotcherr -lscotch;" \
+ -e "s;#\s*\(ISCOTCH\s*=\).*;\1-I${ESYSROOT}/usr/include/scotch;" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} -lptesmumps -lptscotch -lptscotcherr"
+ ord="${ord} -Dptscotch"
+ elif use scotch; then
+ sed -i \
+ -e "s;#\s*\(LSCOTCH\s*=\).*;\1-lesmumps -lscotch -lscotcherr;" \
+ -e "s;#\s*\(ISCOTCH\s*=\).*;\1-I${ESYSROOT}/usr/include/scotch;" \
+ Makefile.inc || die
+ LIBADD="${LIBADD} -lesmumps -lscotch -lscotcherr"
+ ord="${ord} -Dscotch"
+ fi
+ if use mpi; then
+ sed -i \
+ -e "s;^\(CC\s*=\).*;\1mpicc;" \
+ -e "s;^\(FC\s*=\).*;\1mpif90;" \
+ -e "s;^\(FL\s*=\).*;\1mpif90;" \
+ -e "s;^\(SCALAP\s*=\).*;\1$($(tc-getPKG_CONFIG) --libs scalapack);" \
+ Makefile.inc || die
+ export LINK=mpif90
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs scalapack)"
+ else
+ sed -i \
+ -e 's;PAR);SEQ);g' \
+ -e "s;^\(SCALAP\s*=\).*;\1;" \
+ -e 's;^LIBSEQNEEDED =;LIBSEQNEEDED = libseqneeded;g' \
+ Makefile.inc || die
+ LIBADD="${LIBADD} $($(tc-getPKG_CONFIG) --libs lapack)"
+ export LINK="$(tc-getFC)"
+ fi
+ sed -i -e "s;^\s*\(ORDERINGSF\s*=\).*;\1 ${ord};" Makefile.inc || die
+}
+
+src_compile() {
+ # Workaround #462602
+ export FAKEROOTKEY=1
+
+ # Use "-j1" to avoid a spurious race condition
+ emake -j1 all PIC="-fPIC"
+ if ! use mpi; then
+ #$(tc-getAR) crs lib/libmumps_common.a libseq/*.o || die
+ LIBADD+=" -Llibseq -lmpiseq"
+ static_to_shared libseq/libmpiseq.a
+ fi
+
+ static_to_shared lib/libpord.a ${LIBADD}
+ static_to_shared lib/libmumps_common.a ${LIBADD}
+
+ local i
+ for i in c d s z; do
+ static_to_shared lib/lib${i}mumps.a -Llib -lmumps_common ${LIBADD}
+ done
+
+ if use static-libs; then
+ emake clean
+ emake alllib
+ fi
+}
+
+src_test() {
+ emake all
+
+ local dotest
+ if use mpi; then
+ dotest="mpirun -np 2"
+ else
+ export LD_LIBRARY_PATH="${S}/libseq:${LD_LIBRARY_PATH}"
+ fi
+
+ cd examples
+ ${dotest} ./ssimpletest < input_simpletest_real || die
+ ${dotest} ./dsimpletest < input_simpletest_real || die
+ ${dotest} ./csimpletest < input_simpletest_cmplx || die
+ ${dotest} ./zsimpletest < input_simpletest_cmplx || die
+ einfo "The solutions should be close to (1,2,3,4,5)"
+ ${dotest} ./c_example || die
+ einfo "The solution should be close to (1,2)"
+ emake clean
+}
+
+src_install() {
+ dolib.so lib/lib*$(get_libname)*
+ use static-libs && dolib.a lib/lib*.a
+ insinto /usr
+
+ doins -r include
+ if ! use mpi; then
+ dolib.so libseq/lib*$(get_libname)*
+ insinto /usr/include/mpiseq
+ doins libseq/*.h
+ use static-libs && dolib.a libseq/libmpiseq.a
+ fi
+
+ dodoc README ChangeLog VERSION
+ use doc && dodoc doc/*.pdf
+ if use examples; then
+ dodoc -r examples
+ fi
+}
diff --git a/sci-libs/scalapack/files/scalapack-2.2.3-scalapack.pc.patch b/sci-libs/scalapack/files/scalapack-2.2.3-scalapack.pc.patch
new file mode 100644
index 000000000000..a6d5752e1b77
--- /dev/null
+++ b/sci-libs/scalapack/files/scalapack-2.2.3-scalapack.pc.patch
@@ -0,0 +1,29 @@
+--- a/scalapack.pc.in 2026-10-11 15:53:16.065386553 +0200
++++ b/scalapack.pc.in 2026-10-11 15:53:53.300923025 +0200
+@@ -1,9 +1,9 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
+
+ Name: scalapack
+ Description: SCALAPACK reference implementation
+ Version: @SCALAPACK_VERSION@
+ URL: http://www.netlib.org/scalapack/
+ Libs: -L${libdir} -lscalapack
+-Requires: mpi lapack blas
++Requires: lapack blas
+--- a/CMakeLists.txt 2026-10-11 15:56:39.370855590 +0200
++++ b/CMakeLists.txt 2026-10-11 15:57:19.940350502 +0200
+@@ -306,7 +306,11 @@
+ configure_file(${SCALAPACK_SOURCE_DIR}/CMAKE/scalapack-config-build.cmake.in
+ ${SCALAPACK_BINARY_DIR}/scalapack-config.cmake @ONLY)
+
+-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/scalapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/scalapack.pc)
++configure_file(
++ ${CMAKE_CURRENT_SOURCE_DIR}/scalapack.pc.in
++ ${CMAKE_CURRENT_BINARY_DIR}/scalapack.pc
++ @ONLY
++)
+ install(FILES
+ ${CMAKE_CURRENT_BINARY_DIR}/scalapack.pc
+ DESTINATION ${PKG_CONFIG_DIR}
diff --git a/sci-libs/scalapack/scalapack-2.2.3-r1.ebuild b/sci-libs/scalapack/scalapack-2.2.3-r2.ebuild
index 2a6869906e71..ee28a065fd68 100644
--- a/sci-libs/scalapack/scalapack-2.2.3-r1.ebuild
+++ b/sci-libs/scalapack/scalapack-2.2.3-r2.ebuild
@@ -22,19 +22,14 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
+PATCHES=( "${FILESDIR}"/${P}-scalapack.pc.patch )
+
src_prepare() {
cmake_src_prepare
if use static-libs; then
mkdir "${WORKDIR}/${PN}_static" || die
fi
- # mpi does not have a pc file
- # fix missing -L path
- sed -i \
- -e 's/mpi//' \
- -e "/^libdir/s|@libdir@|${EPREFIX}/usr/$(get_libdir)|" \
- scalapack.pc.in \
- || die
}
src_configure() {
diff --git a/sci-libs/trilinos/Manifest b/sci-libs/trilinos/Manifest
index 033657900bd2..3ef7c61a0767 100644
--- a/sci-libs/trilinos/Manifest
+++ b/sci-libs/trilinos/Manifest
@@ -1,5 +1,3 @@
-DIST trilinos-14.4.0.tar.gz 188325969 BLAKE2B 909e3ebe229d035263d835e0d68977516d2a5df168785021fe300f7904e149586a82a6dba271cc1472455472397ee5467443244fb68fb27c00cf4e9b3d10a282 SHA512 497fc4fb4ab4338fffef7111635f3dc3b12cb7302bc3f56bafb5cc75b7c68e94cc22fcacd9dd625803a0f38e4fbce5105cab61df76e033a4581568c36a53fe8a
-DIST trilinos-15.1.1.tar.gz 183340366 BLAKE2B 4d1184fac143ae2b2950d0bf35bae8f813436f894734e5a9aa96d7622ed265cc41a04001a846437a1d1921258c20ae165e9e55f1754241541bde7136c08a6e5c SHA512 5a1a7d321dd3b47fafe0422884d1a7bf6731d5ee806a4fd1bf31f179ca5d6f4290cda4515d0d7786024ea15c17e88422a9518370c5cfb32b4b44761de232e0de
-DIST trilinos-16.2.1.tar.gz 198630592 BLAKE2B 2048f86dee8eafeef226be47c9de3e88cc3614fcfde288801f30706e702e0564ae35cdbbdb21245842017ddc99682c0b540f6185ee6ed56baa151038c66ed4ac SHA512 cc290b7c6ee2364d8c4461a45c957593f00f7bbe520b9a7e0adadbee09a67ab66319ce301f0ba530ab1b1a61825a065ddfc307dc32231552af106c924f5170a2
-DIST trilinos-17.0.0.tar.gz 181339559 BLAKE2B 8fae24679423532ccc274592b5bdd5ee218544b6d2f5cc0db76f6dfdc48bc69ac603d13d720b8e2480cba00f265172c37a93df5b5e2bf73090e076aeff6ab8eb SHA512 7b34293422e13a42bc5fc2ad25413b8b800a5fdd56c0d7211361514e188832e6a146e8e94931d202fa62c82baa5099347b0b98f7182cb11ec85a5e2a29f32d11
-DIST trilinos-17.1.0.tar.gz 180922724 BLAKE2B b868ec206c0cf0493328d1f7fb093ac5deed1bac6eebb21f43fab11caf2f296b61b8de70f14a517a2874bbf91fcec4eea8fe81156800f5795a89b0eb20a9a0dd SHA512 8a84ad44a053a9b73d5a3bbfafd926e05bec13c194f998e9d4ad7b3a716cc8eaaf2103ca1e5d42f8575e86f093f3848e6cfeb6a37dfd1ed366fe46390a0f5a50
+DIST trilinos-16.2.2.tar.gz 198630854 BLAKE2B a458098e87c8efef32666d8117872aeaf359c6b11ac05488a8655d9070261c06c1dfec9dadadcfa024252909a6da1abf2bc2d9a2bc1fe4c6832337746b98279f SHA512 6a673070e3aad1bbe301743fc3a29b0eaabc93135ad2bc1e76f3d34e331e81e1d6189b3361091b9250d2e099a701eb9b9c468527cf8919654642b10c7c7f4bd4
+DIST trilinos-17.1.2.tar.gz 180919361 BLAKE2B 576e2a89703d50906c9aa5a1def18dd8bfd8139a098a10b8cfd2497d094f4acd41ceb833a5529f5374401187bcf2d8c5aa45d7b4e81ef0f816dc5b367d12fc99 SHA512 f445ef05df1e85e2e9f9364214d3ac3937a9f3e423b7233baefe216a2c2fe706195ff73139aa9890e068b7122bfc86e64fe3e02257be2586eaeb273ef7aaba68
+DIST trilinos-17.2.1.tar.gz 179750906 BLAKE2B f4cc7647f037c6ae3660381cb08de1f21b90d241166e38ef7657454121ba2e656baad376ef9aefbc6b341a5761ca77a26e35ca9eddd10874ffea71c7b3a351d8 SHA512 d29f4055b37a69a285a540562016f5fdfe48e05b05d936e01c5ea05ade573bc7e2869a50e31c2399b789c82e2ff0ca176504ae81bf603607fa1cb027902395e7
diff --git a/sci-libs/trilinos/files/trilinos-17.2.1-fix_compilation.patch b/sci-libs/trilinos/files/trilinos-17.2.1-fix_compilation.patch
new file mode 100644
index 000000000000..55d6c21d9be9
--- /dev/null
+++ b/sci-libs/trilinos/files/trilinos-17.2.1-fix_compilation.patch
@@ -0,0 +1,22 @@
+diff --git a/packages/shylu/shylu_node/basker/src/shylubasker_order_scotch.hpp b/packages/shylu/shylu_node/basker/src/shylubasker_order_scotch.hpp
+--- a/packages/shylu/shylu_node/basker/src/shylubasker_order_scotch.hpp
++++ b/packages/shylu/shylu_node/basker/src/shylubasker_order_scotch.hpp
+@@ -1207,6 +1207,9 @@
+ #if !defined(HAVE_SHYLU_NODEBASKER_SCOTCH)
+ BASKER_ASSERT(false, ">> BASKER ASSERT: Scotch is not enabled <<");
+ #else
++ Int num_levels = num_domains;
++ Int num_doms = pow(2.0, (double)(num_levels+1)) - 1;
++
+ //----------------------INIT Scotch Graph------------//
+ sg.Ap = (graph_integral_type *)malloc((sg.m+1) *sizeof(graph_integral_type));
+ sg.Ai = (graph_integral_type *)malloc((M.nnz) *sizeof(graph_integral_type));
+@@ -1222,7 +1225,7 @@
+ {
+ if(M.row_idx(k) != i)
+ {
+- BASKER_ASSERT(sptr < M.nnz);
++ // BASKER_ASSERT(sptr < M.nnz);
+ sg.Ai[sptr++] = M.row_idx(k);
+ sj++;
+ }
diff --git a/sci-libs/trilinos/metadata.xml b/sci-libs/trilinos/metadata.xml
index 20e6f66bcb9e..9f5d89c4da12 100644
--- a/sci-libs/trilinos/metadata.xml
+++ b/sci-libs/trilinos/metadata.xml
@@ -25,6 +25,7 @@
<flag name="hwloc">Add support for hwloc (<pkg>sys-apps/hwloc</pkg>)</flag>
<flag name="hdf5">Add support for hdf5 (<pkg>sci-libs/hdf5</pkg>)</flag>
<flag name="hypre">Add support for hypre (<pkg>sci-libs/hypre</pkg>)</flag>
+ <flag name="int64">Use 64 bit indexes</flag>
<flag name="matio">Add support for matio (<pkg>sci-libs/matio</pkg>)</flag>
<flag name="metis">
Add support for metis (<pkg>sci-libs/metis</pkg> or <pkg>sci-libs/parmetis</pkg>)
diff --git a/sci-libs/trilinos/trilinos-14.4.0-r1.ebuild b/sci-libs/trilinos/trilinos-14.4.0-r1.ebuild
deleted file mode 100644
index 892bc96c02c6..000000000000
--- a/sci-libs/trilinos/trilinos-14.4.0-r1.ebuild
+++ /dev/null
@@ -1,259 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_MAKEFILE_GENERATOR=emake
-inherit cmake flag-o-matic toolchain-funcs
-
-DESCRIPTION="Scientific library collection for large scale problems"
-HOMEPAGE="http://trilinos.sandia.gov/"
-MY_PV="${PV//\./-}"
-PATCHSET="r0"
-SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
-
-LICENSE="BSD LGPL-2.1"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="
- adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
- matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
- superlu taucs tbb test threads tvmet yaml zlib X
-"
-
-# TODO: fix export cmake function for tests
-RESTRICT="test"
-
-RDEPEND="
- !dev-cpp/kokkos
- dev-libs/boost:=
- sys-libs/binutils-libs:=
- virtual/blas
- virtual/lapack
- virtual/mpi
- adolc? ( sci-libs/adolc )
- arprec? ( sci-libs/arprec )
- clp? ( sci-libs/coinor-clp )
- cuda? ( dev-util/nvidia-cuda-toolkit:= )
- eigen? ( dev-cpp/eigen:= )
- glpk? ( sci-mathematics/glpk )
- gtest? ( dev-cpp/gtest )
- hdf5? ( sci-libs/hdf5:=[mpi] )
- hypre? ( sci-libs/hypre:= )
- hwloc? ( sys-apps/hwloc:= )
- matio? ( sci-libs/matio )
- mkl? ( sci-libs/mkl )
- metis? ( sci-libs/metis )
- mumps? ( sci-libs/mumps )
- netcdf? ( sci-libs/netcdf:= )
- petsc? ( sci-mathematics/petsc )
- qd? ( sci-libs/qd )
- scalapack? ( sci-libs/scalapack )
- scotch? ( sci-libs/scotch:= )
- sparse? ( sci-libs/cxsparse sci-libs/umfpack )
- superlu? ( sci-libs/superlu:= )
- taucs? ( sci-libs/taucs )
- tbb? ( dev-cpp/tbb:= )
- tvmet? ( dev-libs/tvmet )
- yaml? ( dev-cpp/yaml-cpp:= )
- zlib? ( virtual/zlib:= )
- X? ( x11-libs/libX11 )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=(
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-trilinos_conf() {
- local dirs libs d
- for d in $($(tc-getPKG_CONFIG) --libs-only-L $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_DIRS=${dirs:1}" )
- for d in $($(tc-getPKG_CONFIG) --libs-only-l $1); do
- libs="${libs};${d:2}"
- done
- [[ -n ${libs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_NAMES=${libs:1}" )
- dirs=""
- for d in $($(tc-getPKG_CONFIG) --cflags-only-I $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" )
-}
-
-#
-# The following packages are currently disabled:
-# - SEACAS is incompatible with netcdf, see
-# https://github.com/trilinos/Trilinos/tree/master/packages/seacas#netcdf
-#
-
-src_configure() {
- # Trilinos is a massive C++ project. Fixing all of the lto warnings and
- # making safe for lto compilation/linking will be a massive
- # undertaking. Thus, simply filter lto flags. bug #862987
- filter-lto
-
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=ON
- -DCMAKE_INSTALL_PREFIX="${EPREFIX}"
- -DCMAKE_SKIP_RPATH=ON
- -DCMAKE_SKIP_INSTALL_RPATH=ON
- -DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos"
- -DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
- -DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
- -DTrilinos_ENABLE_Adelus=OFF
- -DTrilinos_ENABLE_Moertel=OFF
- -DTrilinos_ENABLE_PyTrilinos=OFF
- -DTrilinos_ENABLE_SEACAS=OFF
- -DTrilinos_ENABLE_Amesos=ON
- -DTrilinos_ENABLE_AztecOO=ON
- -DTrilinos_ENABLE_EpetraExt=ON
- -DTrilinos_ENABLE_Epetra=ON
- -DTrilinos_ENABLE_Ifpack=ON
- -DTrilinos_ENABLE_ML=ON
- -DTrilinos_ENABLE_MueLu=ON
- -DTrilinos_ENABLE_OpenMP="$(usex openmp)"
- -DTrilinos_ENABLE_ROL=ON
- -DTrilinos_ENABLE_Sacado=ON
- -DTrilinos_ENABLE_Teuchos=ON
- -DTrilinos_ENABLE_Tpetra=ON
- -DTrilinos_ENABLE_Zoltan=ON
- -DTrilinos_ENABLE_TESTS="$(usex test)"
- -DTPL_ENABLE_BinUtils=ON
- -DTPL_ENABLE_BLAS=ON
- -DTPL_ENABLE_LAPACK=ON
- -DTPL_ENABLE_MPI=ON
- -DTPL_ENABLE_ADOLC="$(usex adolc)"
- -DTPL_ENABLE_AMD="$(usex sparse)"
- -DTPL_ENABLE_ARPREC="$(usex arprec)"
- -DTPL_ENABLE_BLACS="$(usex scalapack)"
- -DTPL_ENABLE_BoostLib=ON
- -DTPL_ENABLE_Boost=ON
- -DTPL_ENABLE_Clp="$(usex clp)"
- -DTPL_ENABLE_CSparse="$(usex sparse)"
- -DTPL_ENABLE_CUDA="$(usex cuda)"
- -DTPL_ENABLE_CUSPARSE="$(usex cuda)"
- -DTPL_ENABLE_Eigen="$(usex eigen)"
- -DTPL_ENABLE_GLPK="$(usex glpk)"
- -DTPL_ENABLE_gtest="$(usex gtest)"
- -DTPL_ENABLE_HDF5="$(usex hdf5)"
- -DTPL_ENABLE_HWLOC="$(usex hwloc)"
- -DTPL_ENABLE_HYPRE="$(usex hypre)"
- -DTPL_ENABLE_Matio="$(usex matio)"
- -DTPL_ENABLE_METIS="$(usex metis)"
- -DTPL_ENABLE_MKL="$(usex mkl)"
- -DTPL_ENABLE_MUMPS="$(usex mumps)"
- -DTPL_ENABLE_Netcdf="$(usex netcdf)"
- -DTPL_ENABLE_PARDISO_MKL="$(usex mkl)"
- -DTPL_ENABLE_PETSC="$(usex petsc)"
- -DTPL_ENABLE_Pthread="$(usex threads)"
- -DTPL_ENABLE_QD="$(usex qd)"
- -DTPL_ENABLE_SCALAPACK="$(usex scalapack)"
- -DTPL_ENABLE_Scotch="$(usex scotch)"
- -DTPL_ENABLE_SuperLU="$(usex superlu)"
- -DTPL_ENABLE_TAUCS="$(usex taucs)"
- -DTPL_ENABLE_TBB="$(usex tbb)"
- -DTPL_ENABLE_Thrust="$(usex cuda)"
- -DTPL_ENABLE_TVMET="$(usex tvmet)"
- -DTPL_ENABLE_UMFPACK="$(usex sparse)"
- -DTPL_ENABLE_X11="$(usex X)"
- -DTPL_ENABLE_yaml-cpp="$(usex yaml)"
- -DTPL_ENABLE_Zlib="$(usex zlib)"
- )
-
- #
- # Make sure some critical configuration options are always set
- # correctly independently of what Trilinos dependency resolver thinks
- # it should be doing.
- #
- local mycmakeargs+=(
- -DAmesos2_ENABLE_LAPACK=ON
- -DAmesos2_ENABLE_MUMPS=OFF
- -DTpetra_INST_SERIAL=ON
- )
-
- use eigen && \
- mycmakeargs+=(
- -DEigen_INCLUDE_DIRS="${EPREFIX}/usr/include/eigen3"
- )
- use hypre && \
- mycmakeargs+=(
- -DHYPRE_INCLUDE_DIRS="${EPREFIX}/usr/include/hypre"
- )
- use scotch && \
- mycmakeargs+=(
- -DScotch_INCLUDE_DIRS="${EPREFIX}/usr/include/scotch"
- )
-
- # cxsparse is a rewrite of csparse + extras
- use sparse && \
- mycmakeargs+=(
- -DCSparse_LIBRARY_NAMES="cxsparse"
- )
-
- # mandatory blas and lapack
- trilinos_conf blas BLAS
- trilinos_conf lapack LAPACK
- use superlu && trilinos_conf superlu SuperLU
- use metis && trilinos_conf metis METIS
-
- # blacs library is included in scalapack these days
- if use scalapack; then
- trilinos_conf scalapack SCALAPACK
- mycmakeargs+=(
- -DBLACS_LIBRARY_NAMES="scalapack"
- -DBLACS_INCLUDE_DIRS="${EPREFIX}/usr/include/blacs"
- )
- fi
-
- #
- # Make sure we use the compiler wrappers in order to build trilinos.
- #
- [ ! -z "${CC}"] && export OMPI_CC="${CC}" MPICH_CC="${CC}" && tc-export OMPI_CC MPICH_CC
- [ ! -z "${CXX}"] && export OMPI_CXX="${CXX}" MPICH_CXX="${CXX}" && tc-export OMPI_CXX MPICH_CXX
- export CC=mpicc CXX=mpicxx && tc-export CC CXX
-
- # Trilinos needs a custom build type:
- local CMAKE_BUILD_TYPE=Release
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # Clean up the mess:
-
- # Let us move the bin directory out of the way to avoid potential
- # clashes due to very generically named binaries such as
- # "nvcc_wrapper", etc.
- mv "${ED}"/bin "${ED}/usr/$(get_libdir)"/trilinos || die "mv failed"
-
- # Move the cmake directory to the right location:
- mkdir -p "${ED}/usr/$(get_libdir)"/cmake
- mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv failed"
- # Fix up include paths:
- sed -i -e 's#external_packages#trilinos/external_packages#g' \
- "${ED}/usr/$(get_libdir)"/cmake/**/*.cmake || die "sed failed"
- rmdir "${ED}/usr/$(get_libdir)/trilinos/cmake" || die "rmdir failed"
-
- # Register $(get_libdir)/trilinos in LDPATH so that the dynamic linker
- # has a chance to pick up the libraries, also add Trilinos' binaries ot
- # the PATH environment variable.
- cat >> "${T}"/99trilinos <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/trilinos"
- PATH="${EPREFIX}/usr/$(get_libdir)/trilinos/bin"
- EOF
- doenvd "${T}"/99trilinos
-}
diff --git a/sci-libs/trilinos/trilinos-15.1.1-r1.ebuild b/sci-libs/trilinos/trilinos-15.1.1-r1.ebuild
deleted file mode 100644
index a87717e91fa7..000000000000
--- a/sci-libs/trilinos/trilinos-15.1.1-r1.ebuild
+++ /dev/null
@@ -1,250 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_MAKEFILE_GENERATOR=emake
-inherit cmake flag-o-matic toolchain-funcs
-
-DESCRIPTION="Scientific library collection for large scale problems"
-HOMEPAGE="http://trilinos.sandia.gov/"
-MY_PV="${PV//\./-}"
-PATCHSET="r0"
-SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
-
-LICENSE="BSD LGPL-2.1"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="
- adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
- matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
- superlu taucs tbb test threads tvmet yaml zlib X
-"
-
-# TODO: fix export cmake function for tests
-RESTRICT="test"
-
-RDEPEND="
- !dev-cpp/kokkos
- dev-libs/boost:=
- sys-libs/binutils-libs:=
- virtual/blas
- virtual/lapack
- virtual/mpi
- adolc? ( sci-libs/adolc )
- arprec? ( sci-libs/arprec )
- clp? ( sci-libs/coinor-clp )
- cuda? ( dev-util/nvidia-cuda-toolkit:= )
- eigen? ( dev-cpp/eigen:= )
- glpk? ( sci-mathematics/glpk )
- gtest? ( dev-cpp/gtest )
- hdf5? ( sci-libs/hdf5:=[mpi] )
- hypre? ( sci-libs/hypre:= )
- hwloc? ( sys-apps/hwloc:= )
- matio? ( sci-libs/matio )
- mkl? ( sci-libs/mkl )
- metis? ( sci-libs/metis )
- mumps? ( sci-libs/mumps )
- netcdf? ( sci-libs/netcdf:= )
- petsc? ( sci-mathematics/petsc )
- qd? ( sci-libs/qd )
- scalapack? ( sci-libs/scalapack )
- scotch? ( sci-libs/scotch:= )
- sparse? ( sci-libs/cxsparse sci-libs/umfpack )
- superlu? ( sci-libs/superlu:= )
- taucs? ( sci-libs/taucs )
- tbb? ( dev-cpp/tbb:= )
- tvmet? ( dev-libs/tvmet )
- yaml? ( dev-cpp/yaml-cpp:= )
- zlib? ( virtual/zlib:= )
- X? ( x11-libs/libX11 )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=(
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-trilinos_conf() {
- local dirs libs d
- for d in $($(tc-getPKG_CONFIG) --libs-only-L $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_DIRS=${dirs:1}" )
- for d in $($(tc-getPKG_CONFIG) --libs-only-l $1); do
- libs="${libs};${d:2}"
- done
- [[ -n ${libs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_NAMES=${libs:1}" )
- dirs=""
- for d in $($(tc-getPKG_CONFIG) --cflags-only-I $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" )
-}
-
-src_configure() {
- # Trilinos is a massive C++ project. Fixing all of the lto warnings and
- # making safe for lto compilation/linking will be a massive
- # undertaking. Thus, simply filter lto flags. bug #862987
- filter-lto
-
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=ON
- -DCMAKE_INSTALL_PREFIX="${EPREFIX}"
- -DCMAKE_SKIP_RPATH=ON
- -DCMAKE_SKIP_INSTALL_RPATH=ON
- -DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos"
- -DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
- -DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
- -DTrilinos_ENABLE_PyTrilinos=OFF
- -DTrilinos_ENABLE_Amesos=ON
- -DTrilinos_ENABLE_AztecOO=ON
- -DTrilinos_ENABLE_EpetraExt=ON
- -DTrilinos_ENABLE_Epetra=ON
- -DTrilinos_ENABLE_Ifpack=ON
- -DTrilinos_ENABLE_ML=ON
- -DTrilinos_ENABLE_MueLu=ON
- -DTrilinos_ENABLE_OpenMP="$(usex openmp)"
- -DTrilinos_ENABLE_ROL=ON
- -DTrilinos_ENABLE_Sacado=ON
- -DTrilinos_ENABLE_Teuchos=ON
- -DTrilinos_ENABLE_Tpetra=ON
- -DTrilinos_ENABLE_Zoltan=ON
- -DTrilinos_ENABLE_TESTS="$(usex test)"
- -DTPL_ENABLE_BinUtils=ON
- -DTPL_ENABLE_BLAS=ON
- -DTPL_ENABLE_LAPACK=ON
- -DTPL_ENABLE_MPI=ON
- -DTPL_ENABLE_ADOLC="$(usex adolc)"
- -DTPL_ENABLE_AMD="$(usex sparse)"
- -DTPL_ENABLE_ARPREC="$(usex arprec)"
- -DTPL_ENABLE_BLACS="$(usex scalapack)"
- -DTPL_ENABLE_BoostLib=ON
- -DTPL_ENABLE_Boost=ON
- -DTPL_ENABLE_Clp="$(usex clp)"
- -DTPL_ENABLE_CSparse="$(usex sparse)"
- -DTPL_ENABLE_CUDA="$(usex cuda)"
- -DTPL_ENABLE_CUSPARSE="$(usex cuda)"
- -DTPL_ENABLE_Eigen="$(usex eigen)"
- -DTPL_ENABLE_GLPK="$(usex glpk)"
- -DTPL_ENABLE_gtest="$(usex gtest)"
- -DTPL_ENABLE_HDF5="$(usex hdf5)"
- -DTPL_ENABLE_HWLOC="$(usex hwloc)"
- -DTPL_ENABLE_HYPRE="$(usex hypre)"
- -DTPL_ENABLE_Matio="$(usex matio)"
- -DTPL_ENABLE_METIS="$(usex metis)"
- -DTPL_ENABLE_MKL="$(usex mkl)"
- -DTPL_ENABLE_MUMPS="$(usex mumps)"
- -DTPL_ENABLE_Netcdf="$(usex netcdf)"
- -DTPL_ENABLE_PARDISO_MKL="$(usex mkl)"
- -DTPL_ENABLE_PETSC="$(usex petsc)"
- -DTPL_ENABLE_Pthread="$(usex threads)"
- -DTPL_ENABLE_QD="$(usex qd)"
- -DTPL_ENABLE_SCALAPACK="$(usex scalapack)"
- -DTPL_ENABLE_Scotch="$(usex scotch)"
- -DTPL_ENABLE_SuperLU="$(usex superlu)"
- -DTPL_ENABLE_TAUCS="$(usex taucs)"
- -DTPL_ENABLE_TBB="$(usex tbb)"
- -DTPL_ENABLE_Thrust="$(usex cuda)"
- -DTPL_ENABLE_TVMET="$(usex tvmet)"
- -DTPL_ENABLE_UMFPACK="$(usex sparse)"
- -DTPL_ENABLE_X11="$(usex X)"
- -DTPL_ENABLE_yaml-cpp="$(usex yaml)"
- -DTPL_ENABLE_Zlib="$(usex zlib)"
- )
-
- #
- # Make sure some critical configuration options are always set
- # correctly independently of what Trilinos dependency resolver thinks
- # it should be doing.
- #
- local mycmakeargs+=(
- -DAmesos2_ENABLE_LAPACK=ON
- -DAmesos2_ENABLE_MUMPS=OFF
- -DTpetra_INST_SERIAL=ON
- )
-
- use eigen && \
- mycmakeargs+=(
- -DEigen_INCLUDE_DIRS="${EPREFIX}/usr/include/eigen3"
- )
- use hypre && \
- mycmakeargs+=(
- -DHYPRE_INCLUDE_DIRS="${EPREFIX}/usr/include/hypre"
- )
- use scotch && \
- mycmakeargs+=(
- -DScotch_INCLUDE_DIRS="${EPREFIX}/usr/include/scotch"
- )
-
- # cxsparse is a rewrite of csparse + extras
- use sparse && \
- mycmakeargs+=(
- -DCSparse_LIBRARY_NAMES="cxsparse"
- )
-
- # mandatory blas and lapack
- trilinos_conf blas BLAS
- trilinos_conf lapack LAPACK
- use superlu && trilinos_conf superlu SuperLU
- use metis && trilinos_conf metis METIS
-
- # blacs library is included in scalapack these days
- if use scalapack; then
- trilinos_conf scalapack SCALAPACK
- mycmakeargs+=(
- -DBLACS_LIBRARY_NAMES="scalapack"
- -DBLACS_INCLUDE_DIRS="${EPREFIX}/usr/include/blacs"
- )
- fi
-
- #
- # Make sure we use the compiler wrappers in order to build trilinos.
- #
- [ ! -z "${CC}"] && export OMPI_CC="${CC}" MPICH_CC="${CC}" && tc-export OMPI_CC MPICH_CC
- [ ! -z "${CXX}"] && export OMPI_CXX="${CXX}" MPICH_CXX="${CXX}" && tc-export OMPI_CXX MPICH_CXX
- export CC=mpicc CXX=mpicxx && tc-export CC CXX
-
- # Trilinos needs a custom build type:
- local CMAKE_BUILD_TYPE=Release
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # Clean up the mess:
-
- # Let us move the bin directory out of the way to avoid potential
- # clashes due to very generically named binaries such as
- # "nvcc_wrapper", etc.
- mv "${ED}"/bin "${ED}/usr/$(get_libdir)"/trilinos || die "mv failed"
-
- # Move the cmake directory to the right location:
- mkdir -p "${ED}/usr/$(get_libdir)"/cmake
- mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv failed"
- # Fix up include paths:
- sed -i -e 's#external_packages#trilinos/external_packages#g' \
- "${ED}/usr/$(get_libdir)"/cmake/**/*.cmake || die "sed failed"
- rmdir "${ED}/usr/$(get_libdir)/trilinos/cmake" || die "rmdir failed"
-
- # Register $(get_libdir)/trilinos in LDPATH so that the dynamic linker
- # has a chance to pick up the libraries, also add Trilinos' binaries ot
- # the PATH environment variable.
- cat >> "${T}"/99trilinos <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/trilinos"
- PATH="${EPREFIX}/usr/$(get_libdir)/trilinos/bin"
- EOF
- doenvd "${T}"/99trilinos
-}
diff --git a/sci-libs/trilinos/trilinos-16.2.1.ebuild b/sci-libs/trilinos/trilinos-16.2.2.ebuild
index 964de9289a1f..58e3188c3efe 100644
--- a/sci-libs/trilinos/trilinos-16.2.1.ebuild
+++ b/sci-libs/trilinos/trilinos-16.2.2.ebuild
@@ -20,7 +20,7 @@ KEYWORDS="~amd64 ~x86"
IUSE="
adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
- matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
+ int64 matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
superlu taucs tbb test threads tvmet yaml zlib X
"
@@ -69,6 +69,9 @@ PATCHES=(
"${FILESDIR}/${PN}-17.0.0-drop_boost_system.patch"
)
+# Silence false positives: outdated bundled CMake files are unused, bug #976168
+CMAKE_QA_COMPAT_SKIP=1
+
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
@@ -147,6 +150,9 @@ src_configure() {
# unconditionally enforces that no newer version is installed.
# Thus, disable this check:
-DTpetra_IGNORE_KOKKOS_COMPATIBILITY=ON
+ # Tpetra supports a single global ordinal type which we select via USE=int64
+ -DTpetra_INST_INT_INT="$(usex int64 OFF ON)"
+ -DTpetra_INST_INT_LONG_LONG="$(usex int64 ON OFF)"
-DTPL_ENABLE_LAPACK=ON
-DTPL_ENABLE_Matio="$(usex matio)"
-DTPL_ENABLE_METIS="$(usex metis)"
@@ -224,6 +230,13 @@ src_configure() {
# Trilinos needs a custom build type:
local CMAKE_BUILD_TYPE=Release
+ # Do not let TriBITS hardcode -O3: setting a non-empty *_OVERRIDE value
+ # stops TriBITS from populating it, bug #908835
+ mycmakeargs+=(
+ -DCMAKE_C_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ -DCMAKE_CXX_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ -DCMAKE_Fortran_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ )
cmake_src_configure
}
diff --git a/sci-libs/trilinos/trilinos-17.0.0-r1.ebuild b/sci-libs/trilinos/trilinos-17.0.0-r1.ebuild
deleted file mode 100644
index ecd197c64ef3..000000000000
--- a/sci-libs/trilinos/trilinos-17.0.0-r1.ebuild
+++ /dev/null
@@ -1,252 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_MAKEFILE_GENERATOR=emake
-inherit cmake flag-o-matic toolchain-funcs
-
-DESCRIPTION="Scientific library collection for large scale problems"
-HOMEPAGE="http://trilinos.sandia.gov/"
-MY_PV="${PV//\./-}"
-PATCHSET="r0"
-SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
-
-LICENSE="BSD LGPL-2.1"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="
- adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
- matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
- superlu taucs tbb test threads tvmet yaml zlib X
-"
-
-# TODO: fix export cmake function for tests
-RESTRICT="test"
-
-RDEPEND="
- >=dev-cpp/kokkos-4.5.1:=[cuda(-)=,openmp=]
- dev-libs/boost:=
- sys-libs/binutils-libs:=
- virtual/blas
- virtual/lapack
- virtual/mpi
- adolc? ( sci-libs/adolc )
- arprec? ( sci-libs/arprec )
- clp? ( sci-libs/coinor-clp )
- cuda? ( dev-util/nvidia-cuda-toolkit:= )
- eigen? ( dev-cpp/eigen:= )
- glpk? ( sci-mathematics/glpk )
- gtest? ( dev-cpp/gtest )
- hdf5? ( sci-libs/hdf5:=[mpi] )
- hypre? ( sci-libs/hypre:= )
- hwloc? ( sys-apps/hwloc:= )
- matio? ( sci-libs/matio )
- mkl? ( sci-libs/mkl )
- metis? ( sci-libs/metis )
- mumps? ( sci-libs/mumps )
- netcdf? ( sci-libs/netcdf:= )
- petsc? ( sci-mathematics/petsc )
- qd? ( sci-libs/qd )
- scalapack? ( sci-libs/scalapack )
- scotch? ( sci-libs/scotch:= )
- sparse? ( sci-libs/cxsparse sci-libs/umfpack )
- superlu? ( <sci-libs/superlu-5.0.0:= )
- taucs? ( sci-libs/taucs )
- tbb? ( dev-cpp/tbb:= )
- tvmet? ( dev-libs/tvmet )
- yaml? ( dev-cpp/yaml-cpp:= )
- zlib? ( virtual/zlib:= )
- X? ( x11-libs/libX11 )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}/${P}-drop_boost_system.patch"
- )
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-trilinos_conf() {
- local dirs libs d
- for d in $($(tc-getPKG_CONFIG) --libs-only-L $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_DIRS=${dirs:1}" )
- for d in $($(tc-getPKG_CONFIG) --libs-only-l $1); do
- libs="${libs};${d:2}"
- done
- [[ -n ${libs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_NAMES=${libs:1}" )
- dirs=""
- for d in $($(tc-getPKG_CONFIG) --cflags-only-I $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" )
-}
-
-src_configure() {
- # Trilinos is a massive C++ project. Fixing all of the lto warnings and
- # making safe for lto compilation/linking will be a massive
- # undertaking. Thus, simply filter lto flags. bug #862987
- filter-lto
-
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=ON
- -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
- -DCMAKE_SKIP_RPATH=ON
- -DCMAKE_SKIP_INSTALL_RPATH=ON
- -DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos"
- -DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
- -DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
- -DTrilinos_ENABLE_PyTrilinos=OFF
- -DTrilinos_ENABLE_Amesos=ON
- -DTrilinos_ENABLE_AztecOO=ON
- -DTrilinos_ENABLE_EpetraExt=ON
- -DTrilinos_ENABLE_Epetra=ON
- -DTrilinos_ENABLE_Ifpack=ON
- -DTrilinos_ENABLE_ML=ON
- -DTrilinos_ENABLE_MueLu=ON
- -DTrilinos_ENABLE_OpenMP="$(usex openmp)"
- -DTrilinos_ENABLE_ROL=ON
- -DTrilinos_ENABLE_Sacado=ON
- -DTrilinos_ENABLE_Teuchos=ON
- -DTrilinos_ENABLE_Tpetra=ON
- -DTrilinos_ENABLE_Zoltan=ON
- -DTrilinos_ENABLE_TESTS="$(usex test)"
- -DTPL_ENABLE_ADOLC="$(usex adolc)"
- -DTPL_ENABLE_AMD="$(usex sparse)"
- -DTPL_ENABLE_ARPREC="$(usex arprec)"
- -DTPL_ENABLE_BinUtils=ON
- -DTPL_ENABLE_BLACS="$(usex scalapack)"
- -DTPL_ENABLE_BLAS=ON
- -DTPL_ENABLE_BoostLib=ON
- -DTPL_ENABLE_Boost=ON
- -DTPL_ENABLE_Clp="$(usex clp)"
- -DTPL_ENABLE_CSparse="$(usex sparse)"
- -DTPL_ENABLE_CUDA="$(usex cuda)"
- -DTPL_ENABLE_CUSPARSE="$(usex cuda)"
- -DTPL_ENABLE_Eigen="$(usex eigen)"
- -DTPL_ENABLE_GLPK="$(usex glpk)"
- -DTPL_ENABLE_gtest="$(usex gtest)"
- -DTPL_ENABLE_HDF5="$(usex hdf5)"
- -DTPL_ENABLE_HWLOC="$(usex hwloc)"
- -DTPL_ENABLE_HYPRE="$(usex hypre)"
- -DTPL_ENABLE_Kokkos=ON
- # Tpetra declares a dependency on kokkos-4.5.1, which we have in
- # our version constraints. But the logic in the build system also
- # unconditionally enforces that no newer version is installed.
- # Thus, disable this check:
- -DTpetra_IGNORE_KOKKOS_COMPATIBILITY=ON
- # Enable support for 32bit ordinals which is required for some
- # dependencies such as sci-libs/dealii
- -DTpetra_INST_INT_INT=ON
- -DTPL_ENABLE_LAPACK=ON
- -DTPL_ENABLE_Matio="$(usex matio)"
- -DTPL_ENABLE_METIS="$(usex metis)"
- -DTPL_ENABLE_MKL="$(usex mkl)"
- -DTPL_ENABLE_MPI=ON
- -DTPL_ENABLE_MUMPS="$(usex mumps)"
- -DTPL_ENABLE_Netcdf="$(usex netcdf)"
- -DTPL_ENABLE_PARDISO_MKL="$(usex mkl)"
- -DTPL_ENABLE_PETSC="$(usex petsc)"
- -DTPL_ENABLE_Pthread="$(usex threads)"
- -DTPL_ENABLE_QD="$(usex qd)"
- -DTPL_ENABLE_SCALAPACK="$(usex scalapack)"
- -DTPL_ENABLE_Scotch="$(usex scotch)"
- -DTPL_ENABLE_SuperLU="$(usex superlu)"
- -DTPL_ENABLE_TAUCS="$(usex taucs)"
- -DTPL_ENABLE_TBB="$(usex tbb)"
- -DTPL_ENABLE_TVMET="$(usex tvmet)"
- -DTPL_ENABLE_UMFPACK="$(usex sparse)"
- -DTPL_ENABLE_X11="$(usex X)"
- -DTPL_ENABLE_yamlcpp="$(usex yaml)"
- -DTPL_ENABLE_Zlib="$(usex zlib)"
- )
-
- #
- # Make sure some critical configuration options are always set
- # correctly independently of what Trilinos dependency resolver thinks
- # it should be doing.
- #
- local mycmakeargs+=(
- -DAmesos2_ENABLE_LAPACK=ON
- -DAmesos2_ENABLE_MUMPS=OFF
- -DTpetra_INST_SERIAL=ON
- )
-
- use eigen && \
- mycmakeargs+=(
- -DEigen_INCLUDE_DIRS="${EPREFIX}/usr/include/eigen3"
- )
- use hypre && \
- mycmakeargs+=(
- -DHYPRE_INCLUDE_DIRS="${EPREFIX}/usr/include/hypre"
- )
- use scotch && \
- mycmakeargs+=(
- -DScotch_INCLUDE_DIRS="${EPREFIX}/usr/include/scotch"
- )
-
- # cxsparse is a rewrite of csparse + extras
- use sparse && \
- mycmakeargs+=(
- -DCSparse_LIBRARY_NAMES="cxsparse"
- )
-
- # mandatory blas and lapack
- trilinos_conf blas BLAS
- trilinos_conf lapack LAPACK
- use superlu && trilinos_conf superlu SuperLU
- use metis && trilinos_conf metis METIS
-
- # blacs library is included in scalapack these days
- if use scalapack; then
- trilinos_conf scalapack SCALAPACK
- mycmakeargs+=(
- -DBLACS_LIBRARY_NAMES="scalapack"
- -DBLACS_INCLUDE_DIRS="${EPREFIX}/usr/include/blacs"
- )
- fi
-
- #
- # Make sure we use the compiler wrappers in order to build trilinos.
- #
- [ ! -z "${CC}"] && export OMPI_CC="${CC}" MPICH_CC="${CC}" && tc-export OMPI_CC MPICH_CC
- [ ! -z "${CXX}"] && export OMPI_CXX="${CXX}" MPICH_CXX="${CXX}" && tc-export OMPI_CXX MPICH_CXX
- export CC=mpicc CXX=mpicxx && tc-export CC CXX
-
- # Trilinos needs a custom build type:
- local CMAKE_BUILD_TYPE=Release
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # Move the cmake directory to the right location:
- mkdir -p "${ED}/usr/$(get_libdir)"/cmake
- mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv failed"
- # Fix up include paths:
- sed -i -e 's#external_packages#trilinos/external_packages#g' \
- "${ED}/usr/$(get_libdir)"/cmake/**/*.cmake || die "sed failed"
- rmdir "${ED}/usr/$(get_libdir)/trilinos/cmake" || die "rmdir failed"
-
- # Register $(get_libdir)/trilinos in LDPATH so that the dynamic linker
- # has a chance to pick up the libraries, also add Trilinos' binaries ot
- # the PATH environment variable.
- cat >> "${T}"/99trilinos <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/trilinos"
- PATH="${EPREFIX}/usr/$(get_libdir)/trilinos/bin"
- EOF
- doenvd "${T}"/99trilinos
-}
diff --git a/sci-libs/trilinos/trilinos-17.0.0.ebuild b/sci-libs/trilinos/trilinos-17.0.0.ebuild
deleted file mode 100644
index ca26acfa395e..000000000000
--- a/sci-libs/trilinos/trilinos-17.0.0.ebuild
+++ /dev/null
@@ -1,249 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_MAKEFILE_GENERATOR=emake
-inherit cmake flag-o-matic toolchain-funcs
-
-DESCRIPTION="Scientific library collection for large scale problems"
-HOMEPAGE="http://trilinos.sandia.gov/"
-MY_PV="${PV//\./-}"
-PATCHSET="r0"
-SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
-
-LICENSE="BSD LGPL-2.1"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="
- adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
- matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
- superlu taucs tbb test threads tvmet yaml zlib X
-"
-
-# TODO: fix export cmake function for tests
-RESTRICT="test"
-
-RDEPEND="
- >=dev-cpp/kokkos-4.5.1:=[cuda(-)=,openmp=]
- dev-libs/boost:=
- sys-libs/binutils-libs:=
- virtual/blas
- virtual/lapack
- virtual/mpi
- adolc? ( sci-libs/adolc )
- arprec? ( sci-libs/arprec )
- clp? ( sci-libs/coinor-clp )
- cuda? ( dev-util/nvidia-cuda-toolkit:= )
- eigen? ( dev-cpp/eigen:= )
- glpk? ( sci-mathematics/glpk )
- gtest? ( dev-cpp/gtest )
- hdf5? ( sci-libs/hdf5:=[mpi] )
- hypre? ( sci-libs/hypre:= )
- hwloc? ( sys-apps/hwloc:= )
- matio? ( sci-libs/matio )
- mkl? ( sci-libs/mkl )
- metis? ( sci-libs/metis )
- mumps? ( sci-libs/mumps )
- netcdf? ( sci-libs/netcdf:= )
- petsc? ( sci-mathematics/petsc )
- qd? ( sci-libs/qd )
- scalapack? ( sci-libs/scalapack )
- scotch? ( sci-libs/scotch:= )
- sparse? ( sci-libs/cxsparse sci-libs/umfpack )
- superlu? ( <sci-libs/superlu-5.0.0:= )
- taucs? ( sci-libs/taucs )
- tbb? ( dev-cpp/tbb:= )
- tvmet? ( dev-libs/tvmet )
- yaml? ( dev-cpp/yaml-cpp:= )
- zlib? ( virtual/zlib:= )
- X? ( x11-libs/libX11 )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}/${P}-drop_boost_system.patch"
- )
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-trilinos_conf() {
- local dirs libs d
- for d in $($(tc-getPKG_CONFIG) --libs-only-L $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_DIRS=${dirs:1}" )
- for d in $($(tc-getPKG_CONFIG) --libs-only-l $1); do
- libs="${libs};${d:2}"
- done
- [[ -n ${libs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_NAMES=${libs:1}" )
- dirs=""
- for d in $($(tc-getPKG_CONFIG) --cflags-only-I $1); do
- dirs="${dirs};${d:2}"
- done
- [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" )
-}
-
-src_configure() {
- # Trilinos is a massive C++ project. Fixing all of the lto warnings and
- # making safe for lto compilation/linking will be a massive
- # undertaking. Thus, simply filter lto flags. bug #862987
- filter-lto
-
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=ON
- -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
- -DCMAKE_SKIP_RPATH=ON
- -DCMAKE_SKIP_INSTALL_RPATH=ON
- -DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos"
- -DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
- -DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
- -DTrilinos_ENABLE_PyTrilinos=OFF
- -DTrilinos_ENABLE_Amesos=ON
- -DTrilinos_ENABLE_AztecOO=ON
- -DTrilinos_ENABLE_EpetraExt=ON
- -DTrilinos_ENABLE_Epetra=ON
- -DTrilinos_ENABLE_Ifpack=ON
- -DTrilinos_ENABLE_ML=ON
- -DTrilinos_ENABLE_MueLu=ON
- -DTrilinos_ENABLE_OpenMP="$(usex openmp)"
- -DTrilinos_ENABLE_ROL=ON
- -DTrilinos_ENABLE_Sacado=ON
- -DTrilinos_ENABLE_Teuchos=ON
- -DTrilinos_ENABLE_Tpetra=ON
- -DTrilinos_ENABLE_Zoltan=ON
- -DTrilinos_ENABLE_TESTS="$(usex test)"
- -DTPL_ENABLE_ADOLC="$(usex adolc)"
- -DTPL_ENABLE_AMD="$(usex sparse)"
- -DTPL_ENABLE_ARPREC="$(usex arprec)"
- -DTPL_ENABLE_BinUtils=ON
- -DTPL_ENABLE_BLACS="$(usex scalapack)"
- -DTPL_ENABLE_BLAS=ON
- -DTPL_ENABLE_BoostLib=ON
- -DTPL_ENABLE_Boost=ON
- -DTPL_ENABLE_Clp="$(usex clp)"
- -DTPL_ENABLE_CSparse="$(usex sparse)"
- -DTPL_ENABLE_CUDA="$(usex cuda)"
- -DTPL_ENABLE_CUSPARSE="$(usex cuda)"
- -DTPL_ENABLE_Eigen="$(usex eigen)"
- -DTPL_ENABLE_GLPK="$(usex glpk)"
- -DTPL_ENABLE_gtest="$(usex gtest)"
- -DTPL_ENABLE_HDF5="$(usex hdf5)"
- -DTPL_ENABLE_HWLOC="$(usex hwloc)"
- -DTPL_ENABLE_HYPRE="$(usex hypre)"
- -DTPL_ENABLE_Kokkos=ON
- # Tpetra declares a dependency on kokkos-4.5.1, which we have in
- # our version constraints. But the logic in the build system also
- # unconditionally enforces that no newer version is installed.
- # Thus, disable this check:
- -DTpetra_IGNORE_KOKKOS_COMPATIBILITY=ON
- -DTPL_ENABLE_LAPACK=ON
- -DTPL_ENABLE_Matio="$(usex matio)"
- -DTPL_ENABLE_METIS="$(usex metis)"
- -DTPL_ENABLE_MKL="$(usex mkl)"
- -DTPL_ENABLE_MPI=ON
- -DTPL_ENABLE_MUMPS="$(usex mumps)"
- -DTPL_ENABLE_Netcdf="$(usex netcdf)"
- -DTPL_ENABLE_PARDISO_MKL="$(usex mkl)"
- -DTPL_ENABLE_PETSC="$(usex petsc)"
- -DTPL_ENABLE_Pthread="$(usex threads)"
- -DTPL_ENABLE_QD="$(usex qd)"
- -DTPL_ENABLE_SCALAPACK="$(usex scalapack)"
- -DTPL_ENABLE_Scotch="$(usex scotch)"
- -DTPL_ENABLE_SuperLU="$(usex superlu)"
- -DTPL_ENABLE_TAUCS="$(usex taucs)"
- -DTPL_ENABLE_TBB="$(usex tbb)"
- -DTPL_ENABLE_TVMET="$(usex tvmet)"
- -DTPL_ENABLE_UMFPACK="$(usex sparse)"
- -DTPL_ENABLE_X11="$(usex X)"
- -DTPL_ENABLE_yamlcpp="$(usex yaml)"
- -DTPL_ENABLE_Zlib="$(usex zlib)"
- )
-
- #
- # Make sure some critical configuration options are always set
- # correctly independently of what Trilinos dependency resolver thinks
- # it should be doing.
- #
- local mycmakeargs+=(
- -DAmesos2_ENABLE_LAPACK=ON
- -DAmesos2_ENABLE_MUMPS=OFF
- -DTpetra_INST_SERIAL=ON
- )
-
- use eigen && \
- mycmakeargs+=(
- -DEigen_INCLUDE_DIRS="${EPREFIX}/usr/include/eigen3"
- )
- use hypre && \
- mycmakeargs+=(
- -DHYPRE_INCLUDE_DIRS="${EPREFIX}/usr/include/hypre"
- )
- use scotch && \
- mycmakeargs+=(
- -DScotch_INCLUDE_DIRS="${EPREFIX}/usr/include/scotch"
- )
-
- # cxsparse is a rewrite of csparse + extras
- use sparse && \
- mycmakeargs+=(
- -DCSparse_LIBRARY_NAMES="cxsparse"
- )
-
- # mandatory blas and lapack
- trilinos_conf blas BLAS
- trilinos_conf lapack LAPACK
- use superlu && trilinos_conf superlu SuperLU
- use metis && trilinos_conf metis METIS
-
- # blacs library is included in scalapack these days
- if use scalapack; then
- trilinos_conf scalapack SCALAPACK
- mycmakeargs+=(
- -DBLACS_LIBRARY_NAMES="scalapack"
- -DBLACS_INCLUDE_DIRS="${EPREFIX}/usr/include/blacs"
- )
- fi
-
- #
- # Make sure we use the compiler wrappers in order to build trilinos.
- #
- [ ! -z "${CC}"] && export OMPI_CC="${CC}" MPICH_CC="${CC}" && tc-export OMPI_CC MPICH_CC
- [ ! -z "${CXX}"] && export OMPI_CXX="${CXX}" MPICH_CXX="${CXX}" && tc-export OMPI_CXX MPICH_CXX
- export CC=mpicc CXX=mpicxx && tc-export CC CXX
-
- # Trilinos needs a custom build type:
- local CMAKE_BUILD_TYPE=Release
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- # Move the cmake directory to the right location:
- mkdir -p "${ED}/usr/$(get_libdir)"/cmake
- mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv failed"
- # Fix up include paths:
- sed -i -e 's#external_packages#trilinos/external_packages#g' \
- "${ED}/usr/$(get_libdir)"/cmake/**/*.cmake || die "sed failed"
- rmdir "${ED}/usr/$(get_libdir)/trilinos/cmake" || die "rmdir failed"
-
- # Register $(get_libdir)/trilinos in LDPATH so that the dynamic linker
- # has a chance to pick up the libraries, also add Trilinos' binaries ot
- # the PATH environment variable.
- cat >> "${T}"/99trilinos <<- EOF
- LDPATH="${EPREFIX}/usr/$(get_libdir)/trilinos"
- PATH="${EPREFIX}/usr/$(get_libdir)/trilinos/bin"
- EOF
- doenvd "${T}"/99trilinos
-}
diff --git a/sci-libs/trilinos/trilinos-17.1.0-r1.ebuild b/sci-libs/trilinos/trilinos-17.1.2.ebuild
index 26095ae6fffe..913543d65ea8 100644
--- a/sci-libs/trilinos/trilinos-17.1.0-r1.ebuild
+++ b/sci-libs/trilinos/trilinos-17.1.2.ebuild
@@ -20,7 +20,7 @@ KEYWORDS="~amd64 ~x86"
IUSE="
adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
- matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
+ int64 matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
superlu taucs tbb test threads tvmet yaml zlib X
"
@@ -66,9 +66,12 @@ DEPEND="${RDEPEND}
PATCHES=(
"${FILESDIR}/${PN}-17.0.0-drop_boost_system.patch"
- "${FILESDIR}/${P}-fix_compilation.patch"
+ "${FILESDIR}/${PN}-17.1.0-fix_compilation.patch"
)
+# Silence false positives: outdated bundled CMake files are unused, bug #976168
+CMAKE_QA_COMPAT_SKIP=1
+
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
@@ -147,9 +150,9 @@ src_configure() {
# unconditionally enforces that no newer version is installed.
# Thus, disable this check:
-DTpetra_IGNORE_KOKKOS_COMPATIBILITY=ON
- # Enable support for 32bit ordinals which is required for some
- # dependencies such as sci-libs/dealii
- -DTpetra_INST_INT_INT=ON
+ # Tpetra supports a single global ordinal type which we select via USE=int64
+ -DTpetra_INST_INT_INT="$(usex int64 OFF ON)"
+ -DTpetra_INST_INT_LONG_LONG="$(usex int64 ON OFF)"
-DTPL_ENABLE_LAPACK=ON
-DTPL_ENABLE_Matio="$(usex matio)"
-DTPL_ENABLE_METIS="$(usex metis)"
@@ -227,6 +230,13 @@ src_configure() {
# Trilinos needs a custom build type:
local CMAKE_BUILD_TYPE=Release
+ # Do not let TriBITS hardcode -O3: setting a non-empty *_OVERRIDE value
+ # stops TriBITS from populating it, bug #908835
+ mycmakeargs+=(
+ -DCMAKE_C_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ -DCMAKE_CXX_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ -DCMAKE_Fortran_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ )
cmake_src_configure
}
diff --git a/sci-libs/trilinos/trilinos-17.1.0.ebuild b/sci-libs/trilinos/trilinos-17.2.1.ebuild
index 63b0cbd05545..9a871b39ad67 100644
--- a/sci-libs/trilinos/trilinos-17.1.0.ebuild
+++ b/sci-libs/trilinos/trilinos-17.2.1.ebuild
@@ -3,13 +3,11 @@
EAPI=8
-CMAKE_MAKEFILE_GENERATOR=emake
inherit cmake flag-o-matic toolchain-funcs
DESCRIPTION="Scientific library collection for large scale problems"
-HOMEPAGE="http://trilinos.sandia.gov/"
+HOMEPAGE="https://trilinos.github.io/"
MY_PV="${PV//\./-}"
-PATCHSET="r0"
SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
@@ -20,7 +18,7 @@ KEYWORDS="~amd64 ~x86"
IUSE="
adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
- matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
+ int64 matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
superlu taucs tbb test threads tvmet yaml zlib X
"
@@ -67,7 +65,10 @@ DEPEND="${RDEPEND}
PATCHES=(
"${FILESDIR}/${PN}-17.0.0-drop_boost_system.patch"
"${FILESDIR}/${P}-fix_compilation.patch"
- )
+)
+
+# Silence false positives: outdated bundled CMake files are unused, bug #976168
+CMAKE_QA_COMPAT_SKIP=1
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
@@ -109,12 +110,6 @@ src_configure() {
-DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
-DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
-DTrilinos_ENABLE_PyTrilinos=OFF
- -DTrilinos_ENABLE_Amesos=ON
- -DTrilinos_ENABLE_AztecOO=ON
- -DTrilinos_ENABLE_EpetraExt=ON
- -DTrilinos_ENABLE_Epetra=ON
- -DTrilinos_ENABLE_Ifpack=ON
- -DTrilinos_ENABLE_ML=ON
-DTrilinos_ENABLE_MueLu=ON
-DTrilinos_ENABLE_OpenMP="$(usex openmp)"
-DTrilinos_ENABLE_ROL=ON
@@ -142,11 +137,13 @@ src_configure() {
-DTPL_ENABLE_HWLOC="$(usex hwloc)"
-DTPL_ENABLE_HYPRE="$(usex hypre)"
-DTPL_ENABLE_Kokkos=ON
- # Tpetra declares a dependency on kokkos-4.5.1, which we have in
- # our version constraints. But the logic in the build system also
- # unconditionally enforces that no newer version is installed.
- # Thus, disable this check:
+ # Tpetra insists on the exact Kokkos version bundled with
+ # Trilinos. We build against the system kokkos instead, thus
+ # disable this check:
-DTpetra_IGNORE_KOKKOS_COMPATIBILITY=ON
+ # Tpetra supports a single global ordinal type which we select via USE=int64
+ -DTpetra_INST_INT_INT="$(usex int64 OFF ON)"
+ -DTpetra_INST_INT_LONG_LONG="$(usex int64 ON OFF)"
-DTPL_ENABLE_LAPACK=ON
-DTPL_ENABLE_Matio="$(usex matio)"
-DTPL_ENABLE_METIS="$(usex metis)"
@@ -218,12 +215,19 @@ src_configure() {
#
# Make sure we use the compiler wrappers in order to build trilinos.
#
- [ ! -z "${CC}"] && export OMPI_CC="${CC}" MPICH_CC="${CC}" && tc-export OMPI_CC MPICH_CC
- [ ! -z "${CXX}"] && export OMPI_CXX="${CXX}" MPICH_CXX="${CXX}" && tc-export OMPI_CXX MPICH_CXX
- export CC=mpicc CXX=mpicxx && tc-export CC CXX
+ export OMPI_CC="$(tc-getCC)" MPICH_CC="$(tc-getCC)"
+ export OMPI_CXX="$(tc-getCXX)" MPICH_CXX="$(tc-getCXX)"
+ export CC=mpicc CXX=mpicxx
# Trilinos needs a custom build type:
local CMAKE_BUILD_TYPE=Release
+ # Do not let TriBITS hardcode -O3: setting a non-empty *_OVERRIDE value
+ # stops TriBITS from populating it, bug #908835
+ mycmakeargs+=(
+ -DCMAKE_C_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ -DCMAKE_CXX_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ -DCMAKE_Fortran_FLAGS_RELEASE_OVERRIDE="-DNDEBUG"
+ )
cmake_src_configure
}
diff --git a/sci-ml/ollama/Manifest b/sci-ml/ollama/Manifest
index af8a22f7e515..43ef08bf047f 100644
--- a/sci-ml/ollama/Manifest
+++ b/sci-ml/ollama/Manifest
@@ -1,3 +1,3 @@
DIST llama.cpp-b11351.tar.gz 37755766 BLAKE2B e3bc8a2809c9b4ccb490c53212993562e40a3599c84de2deaccc05631f4b0d7a8b1e069cbded88258229761b74726056bfd76169871a5b109d2f6cd3ebacd295 SHA512 74595f963f71bcda1cdf20f3bbed510cf053dc7068803bae73ab86eb77c8ca1426577d2d53554548a3fa18c5d003c5257cc527fa29321735362c848e696f2975
-DIST ollama-0.40.2-deps.tar.xz 77648092 BLAKE2B e8e87c098bb15aad0a1366538e2e6f3909069dd460f45b3f1e2a76db632436f24a2bbf1bc463168b94aa8b5b4994e797387ce560a622f4d18bcec0e9b5ebcb4f SHA512 e168c6e1e16482ebfe41ffa9f1794933c5881d49eb7f5ca348df46e909b85df327717979c835232a0782c3d40f2b1cfc6ec2b9eced820417a2d0d18251be7956
-DIST ollama-0.40.2.gh.tar.gz 26640670 BLAKE2B c17ddfaf3d96ee3c12abeeb30dbe6e9675183ccaa2f5adf7cddd135607a47d658f5d43f3975a0454c67a54f46d358fdf580c435ee71733948e419ab6cd1ec706 SHA512 c71113d0c586c288056a66719edf3658c89091cda05447d7c0da20d3c23e39d5038389971afd01a988b84f41bbaaafc6b2f4ecad35ec41f556080b658e4d81af
+DIST ollama-0.40.3-deps.tar.xz 77648092 BLAKE2B e8e87c098bb15aad0a1366538e2e6f3909069dd460f45b3f1e2a76db632436f24a2bbf1bc463168b94aa8b5b4994e797387ce560a622f4d18bcec0e9b5ebcb4f SHA512 e168c6e1e16482ebfe41ffa9f1794933c5881d49eb7f5ca348df46e909b85df327717979c835232a0782c3d40f2b1cfc6ec2b9eced820417a2d0d18251be7956
+DIST ollama-0.40.3.gh.tar.gz 26639796 BLAKE2B cec4ad050d85ccc08459cdd6ab6f56a516c5d6f042f869e578fb388edbb7955ba4fcb2339de2cc2c1ce2b6c5ccd7569db1cbc91ae60a00a889e1fdad527aed86 SHA512 aaf78337578bc7ed834ff851f798d9b61992a79dbec57b234a792d52424ef496eae12189358c953461cfbf9feb4b06ecd8f2ba63de560263f886563293e01641
diff --git a/sci-ml/ollama/ollama-0.40.2.ebuild b/sci-ml/ollama/ollama-0.40.3.ebuild
index 3ca554599751..3ca554599751 100644
--- a/sci-ml/ollama/ollama-0.40.2.ebuild
+++ b/sci-ml/ollama/ollama-0.40.3.ebuild
diff --git a/sci-ml/tinygrad/Manifest b/sci-ml/tinygrad/Manifest
new file mode 100644
index 000000000000..8a569309fcf2
--- /dev/null
+++ b/sci-ml/tinygrad/Manifest
@@ -0,0 +1 @@
+DIST tinygrad-0.14.0.gh.tar.gz 11878959 BLAKE2B 93e249a30fe33988d5a68ab5782392e465a4b6bbce5b93816631042619dd356d885d7523edfe8c014f46292eaf9eb279f33d1a231917866d95e528c302b5888e SHA512 0afcf70eb8bc858ea9850b7a8d06754aaea744234f251cf1ef28931f8e27b09c8691a03b59c54f7b3d9a5c01db5de02b664f08d223c4a91334446bd91d2477fa
diff --git a/sci-ml/tinygrad/metadata.xml b/sci-ml/tinygrad/metadata.xml
new file mode 100644
index 000000000000..a667e456b321
--- /dev/null
+++ b/sci-ml/tinygrad/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <use>
+ <flag name="numpy">Install NumPy for NumPy array interoperability</flag>
+ </use>
+ <origin>srcux</origin>
+</pkgmetadata>
diff --git a/sci-ml/tinygrad/tinygrad-0.14.0.ebuild b/sci-ml/tinygrad/tinygrad-0.14.0.ebuild
new file mode 100644
index 000000000000..ea1baf5d6e12
--- /dev/null
+++ b/sci-ml/tinygrad/tinygrad-0.14.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+LLVM_COMPAT=( 22 23 )
+
+inherit distutils-r1 llvm-r2
+
+DESCRIPTION="Tensor library and neural network framework with automatic differentiation"
+HOMEPAGE="https://tinygrad.org/ https://github.com/tinygrad/tinygrad"
+SRC_URI="https://github.com/tinygrad/tinygrad/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+# The visualization assets also bundle highlight.js (BSD) and d3 (ISC).
+LICENSE="BSD ISC MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="cuda numpy opencl"
+
+# The CPU backend invokes Clang at runtime, including for its worker kernels.
+RDEPEND="
+ $(llvm_gen_dep 'llvm-core/clang:${LLVM_SLOT}')
+ cuda? ( dev-util/nvidia-cuda-toolkit )
+ numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ opencl? ( virtual/opencl )
+"
+BDEPEND="
+ >=dev-python/setuptools-77[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+
+ # Slotted Clang is not necessarily available as /usr/bin/clang.
+ # Keep the upstream CC environment override for callers that need it.
+ sed -i \
+ -e "s@getenv(\"CC\", 'clang')@getenv(\"CC\", '${EPREFIX}/usr/lib/llvm/${LLVM_SLOT}/bin/clang')@" \
+ tinygrad/runtime/support/compiler_cpu.py || die
+}
+
+python_test() {
+ local -x DEV=CPU
+ local -x CC="$(get_llvm_prefix -b)/bin/clang"
+ local -x XDG_CACHE_HOME="${T}/cache-${EPYTHON}"
+
+ # Self-contained tensor, autograd, JIT, and dtype tests. The full suite
+ # additionally needs GPUs, model downloads, and other ML frameworks.
+ epytest test/test_tiny.py test/null/test_dtype.py
+}
+
+pkg_postinst() {
+ elog "Use DEV=CPU to select the CPU backend explicitly."
+ elog "GPU backends need compatible hardware and runtime libraries."
+ elog "See https://docs.tinygrad.org/runtime/ for backend configuration."
+}
diff --git a/sci-visualization/paraview/Manifest b/sci-visualization/paraview/Manifest
index bba636e91c4f..3ef2e1f70dcf 100644
--- a/sci-visualization/paraview/Manifest
+++ b/sci-visualization/paraview/Manifest
@@ -2,3 +2,4 @@ DIST ParaView-v5.13.2.tar.xz 147014296 BLAKE2B c9e841ff91099a54f66d1eca0659b2b33
DIST ParaView-v5.13.3.tar.xz 85255156 BLAKE2B bce853c06d28303f85f1a64a95cc10aea36d50f553729a2d9fcccea74d7ac3c451f3cf4fda8d97faf25e74dfd125f77ca32cccca2d34acdf3fc01292c6ed055f SHA512 2a862ae28c05af683e63a7c4a317f70bd58dc804354c84f70bca38689ef8e954ddec5b90218e5f1673ce7d8324d01a4a31b602a02dffdfd1e5b2abe8f54d10b7
DIST ParaView-v6.0.1.tar.xz 89088960 BLAKE2B e19a8b56f619fb47630152439af3ac7f3be1138b938db443f579e87a9c403bdd8b38798fa591c3607232252ebca49b62762935bb03f0ac416399d9502a24820d SHA512 ae6303061e11686b4fb06d98cbfce4ba058d51cd95c7da3c86d6bda69e2db9df92c74482e10e605f52280c803dc92605a644c19a641c171797e0dd520f00e7bf
DIST ParaView-v6.1.1.tar.xz 94602668 BLAKE2B 4af5c53a5b8d01ea9b621557fa328bfb5eeccc63ad694bd2c53523def19b5accd89167a6e44bcec7d44df8d5d435a9f743b4484e1ac20f6fd7fdf28b76d1547d SHA512 a4f9cbac548d0efaaa9f1b74ec135b1d1beff4f99c8aea748d684e1c6a3007afd46890f35c2b9e5ac236cdd3c5b55d3b6998bfee6a5c04e9195e62eb68de89d7
+DIST ParaView-v6.2.0.tar.xz 100726860 BLAKE2B c22d3a8bcde53d068dcf0cbb2792f0f23a81a838c8d67d9212b398cadc25482084012fbdabb9000afa2d4643ae20dc704d46f473f6d07431bde5d6771163ba09 SHA512 fb6afff288013fa2e987d5389f36eec7a7f174195fec06defb1164147af64a54dcd03e7c99854e0e5769dbde1403c881625d55db24f43126720f78e3f1435567
diff --git a/sci-visualization/paraview/files/paraview-6.2.0-avoid_file_collisions.patch b/sci-visualization/paraview/files/paraview-6.2.0-avoid_file_collisions.patch
new file mode 100644
index 000000000000..9afde55f22a5
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-6.2.0-avoid_file_collisions.patch
@@ -0,0 +1,12 @@
+diff --git a/VTK/CMake/vtkVersion.cmake b/VTK/CMake/vtkVersion.cmake
+index c22be0fd..bf759a75 100644
+--- a/VTK/CMake/vtkVersion.cmake
++++ b/VTK/CMake/vtkVersion.cmake
+@@ -1,6 +1,6 @@
+ # VTK version number components.
+ set(VTK_MAJOR_VERSION 9)
+-set(VTK_MINOR_VERSION 7)
++set(VTK_MINOR_VERSION 99)
+
+ # Git conflict avoidance barrier. When branching for an `X.Y.0.rc1` branch, if
+ # the date component is updated while it is in progress, the bump of the minor
diff --git a/sci-visualization/paraview/paraview-6.2.0.ebuild b/sci-visualization/paraview/paraview-6.2.0.ebuild
new file mode 100644
index 000000000000..c5b5d84f3858
--- /dev/null
+++ b/sci-visualization/paraview/paraview-6.2.0.ebuild
@@ -0,0 +1,233 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+DOCS_BUILDER="doxygen"
+inherit cmake flag-o-matic desktop docs python-single-r1 qmake-utils toolchain-funcs xdg
+
+MAJOR_PV="$(ver_cut 1-2)"
+MINOR_PV="$(ver_cut 3)"
+RC_PV="$(ver_cut 4-5)"
+RC_PV="${RC_PV:+-${RC_PV^^}}"
+MY_P="ParaView-v${MAJOR_PV}.${MINOR_PV}${RC_PV}"
+
+DESCRIPTION="Powerful scientific data visualization application"
+HOMEPAGE="https://www.paraview.org"
+SRC_URI="https://www.paraview.org/files/v${MAJOR_PV}/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+# TODO: check licenses of plugins (USE=plugins)
+LICENSE="BSD MIT PSF-2 VTK"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="boost cg examples ffmpeg mpi nvcontrol openmp plugins python +qt6 +sqlite test tk +webengine"
+
+RESTRICT="mirror test"
+
+REQUIRED_USE="
+ python? ( mpi ${PYTHON_REQUIRED_USE} )
+ tk? ( python )
+ webengine? ( qt6 )
+ qt6? ( sqlite )"
+
+RDEPEND="
+ app-arch/lz4
+ dev-libs/expat
+ dev-libs/jsoncpp:=
+ dev-libs/libxml2:2=
+ dev-libs/protobuf:=
+ dev-libs/pugixml
+ media-libs/freetype
+ media-libs/glew:0
+ media-libs/libpng:0
+ media-libs/libtheora:=
+ media-libs/tiff:=
+ sci-libs/cgnslib
+ sci-libs/hdf5:=[mpi=]
+ >=sci-libs/netcdf-4.2[hdf5]
+ >=sci-libs/netcdf-cxx-4.2:3
+ virtual/zlib:=
+ virtual/glu
+ media-libs/libjpeg-turbo:=
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXt
+ virtual/opengl
+ ffmpeg? ( media-video/ffmpeg )
+ mpi? ( virtual/mpi[romio] )
+ python? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/constantly[${PYTHON_USEDEP}]
+ dev-python/incremental[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/sip:5[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/twisted[${PYTHON_USEDEP}]
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+ mpi? ( dev-python/mpi4py )
+ qt6? ( dev-python/pyqt6[opengl,${PYTHON_USEDEP}] )
+ ')
+ )
+ qt6? (
+ dev-qt/qt5compat:6
+ dev-qt/qtbase:6[gui,opengl,sql,-gles2-only]
+ dev-qt/qtdeclarative:6
+ dev-qt/qtsvg:6
+ dev-qt/qttools:6[assistant,designer,widgets]
+ )
+ sqlite? ( dev-db/sqlite:3 )
+ tk? ( dev-lang/tk:0= )
+ webengine? ( dev-qt/qtwebengine:6[widgets] )
+"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ boost? (
+ $(python_gen_cond_dep '
+ dev-libs/boost[python,${PYTHON_USEDEP}]
+ ')
+ )
+"
+BDEPEND="
+ openmp? ( virtual/fortran )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-avoid_file_collisions.patch
+)
+
+# Silence false positives: outdated bundled CMake files are unused, bug #961186
+CMAKE_QA_COMPAT_SKIP=1
+
+# false positive when checking for available HDF5 interface
+QA_CONFIG_IMPL_DECL_SKIP=(
+ H5Pset_coll_metadata_write
+ H5Pset_all_coll_metadata_ops
+)
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ use python && python-single-r1_pkg_setup
+ PVLIBDIR=$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+src_prepare() {
+ # Bug #661812
+ mkdir -p Plugins/StreamLinesRepresentation/doc || die
+
+ cmake_src_prepare
+
+ # lib64 fixes
+ sed -i \
+ -e "s:/lib/python:/$(get_libdir)/python:g" \
+ VTK/ThirdParty/xdmf3/vtkxdmf3/CMakeLists.txt || die
+}
+
+src_configure() {
+ # Needed to compile bundled VTK in ParaView 5.11.1 with gcc 12
+ # see also, bug #863299
+ filter-lto
+ append-cflags $(test-flags-CC -fno-strict-aliasing \
+ -Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion)
+ append-cxxflags $(test-flags-CXX -fno-strict-aliasing \
+ -Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion)
+
+ # Make sure qmlplugindump is in path:
+ export PATH="$(qt6_get_bindir):${PATH}"
+
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_LIBDIR="${PVLIBDIR}"
+ # paraview-6.0.0 onwards expects a relative path for documentation
+ -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}"
+
+ -UBUILD_SHARED_LIBS
+ -DPARAVIEW_BUILD_SHARED_LIBS=ON
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+
+ # boost
+ -DVTK_MODULE_ENABLE_VTK_IOInfovis="$(usex boost YES NO)"
+
+ # doc
+ -DPARAVIEW_BUILD_DEVELOPER_DOCUMENTATION="$(usex doc)"
+
+ # examples
+ -DBUILD_EXAMPLES="$(usex examples)"
+
+ # ffmpeg
+ -DPARAVIEW_ENABLE_FFMPEG="$(usex ffmpeg)"
+
+ # mpi
+ -DPARAVIEW_USE_MPI="$(usex mpi)"
+ -DXDMF_BUILD_MPI="$(usex mpi)"
+ -DVTK_GROUP_ENABLE_MPI="$(usex mpi YES NO)"
+
+ # plugins
+ -DPARAVIEW_PLUGINS_DEFAULT="$(usex plugins)"
+
+ # python
+ -DPARAVIEW_USE_PYTHON="$(usex python)"
+
+ # qt6
+ -DPARAVIEW_USE_QT="$(usex qt6)"
+ -DPARAVIEW_QT_VERSION="6"
+ -DVTK_QT_VERSION="6"
+ -DVTK_USE_NVCONTROL="$(usex nvcontrol)"
+ -DVTK_GROUP_ENABLE_Qt="$(usex qt6 YES NO)"
+ -DCMAKE_INSTALL_QMLDIR="${EPREFIX}/usr/$(get_libdir)/qt6/qml"
+
+ # sqlite
+ -DVTK_MODULE_ENABLE_VTK_sqlite="$(usex sqlite YES NO)"
+
+ # test
+ -DBUILD_TESTING="$(usex test)"
+
+ # tk
+ -DVTK_USE_TK="$(usex tk)"
+
+ # webengine
+ -DPARAVIEW_USE_QTWEBENGINE="$(usex webengine)"
+ -DVTK_GROUP_ENABLE_Web="$(usex webengine YES NO)"
+ )
+
+ if use openmp; then
+ mycmakeargs+=( -DVTK_SMP_IMPLEMENTATION_TYPE=OpenMP )
+ fi
+
+ if use qt6; then
+ mycmakeargs+=(
+ -DOPENGL_gl_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGL.so
+ -DOPENGL_glu_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGLU.so
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ # remove wrapper binaries and put the actual executable in place
+ for i in {paraview-config,pvserver,pvdataserver,pvrenderserver,pvbatch,pvpython,paraview}; do
+ if [ -f "${ED}"/usr/lib/"$i" ]; then
+ mv "${ED}"/usr/lib/"$i" "${ED}"/usr/bin/"$i" || die
+ fi
+ done
+
+ # set up the environment
+ echo "LDPATH=${EPREFIX}/usr/${PVLIBDIR}" > "${T}"/40${PN} || die
+ doenvd "${T}"/40${PN}
+
+ newicon "${S}"/Clients/ParaView/pvIcon-96x96.png paraview.png
+ make_desktop_entry paraview "Paraview" paraview
+
+ use python && python_optimize "${ED}/usr/$(get_libdir)/${PN}-${MAJOR_PV}"
+}
diff --git a/sec-keys/openpgp-keys-moritzbunkus/openpgp-keys-moritzbunkus-20260524.ebuild b/sec-keys/openpgp-keys-moritzbunkus/openpgp-keys-moritzbunkus-20260524.ebuild
index 7e8774c27c42..d0bccde9590e 100644
--- a/sec-keys/openpgp-keys-moritzbunkus/openpgp-keys-moritzbunkus-20260524.ebuild
+++ b/sec-keys/openpgp-keys-moritzbunkus/openpgp-keys-moritzbunkus-20260524.ebuild
@@ -14,4 +14,4 @@ DESCRIPTION="OpenPGP keys used by Moritz Bunkus"
HOMEPAGE="https://www.bunkus.org/"
SRC_URI+=" https://www.bunkus.org/gpg-pub-moritzbunkus.txt -> ${P}-gpg-pub-moritzbunkus.txt"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
diff --git a/sys-apps/iproute2/iproute2-7.2.0.ebuild b/sys-apps/iproute2/iproute2-7.2.0.ebuild
index 63101cbcd97a..9d9dec506be7 100644
--- a/sys-apps/iproute2/iproute2-7.2.0.ebuild
+++ b/sys-apps/iproute2/iproute2-7.2.0.ebuild
@@ -10,7 +10,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit git-r3
else
SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
DESCRIPTION="kernel routing and traffic control utilities"
diff --git a/sys-auth/AusweisApp/AusweisApp-2.5.5.ebuild b/sys-auth/AusweisApp/AusweisApp-2.5.5.ebuild
index fb4c1827736b..58a8638f6d54 100644
--- a/sys-auth/AusweisApp/AusweisApp-2.5.5.ebuild
+++ b/sys-auth/AusweisApp/AusweisApp-2.5.5.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/Governikus/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
LICENSE="EUPL-1.2"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
BDEPEND="
dev-qt/qtshadertools:6
diff --git a/sys-auth/AusweisApp/AusweisApp-2.5.4.ebuild b/sys-auth/AusweisApp/AusweisApp-2.6.0.ebuild
index 58a8638f6d54..fb4c1827736b 100644
--- a/sys-auth/AusweisApp/AusweisApp-2.5.4.ebuild
+++ b/sys-auth/AusweisApp/AusweisApp-2.6.0.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/Governikus/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
LICENSE="EUPL-1.2"
SLOT="0"
-KEYWORDS="amd64 ~arm64"
+KEYWORDS="~amd64 ~arm64"
BDEPEND="
dev-qt/qtshadertools:6
diff --git a/sys-auth/AusweisApp/Manifest b/sys-auth/AusweisApp/Manifest
index a960441ead2d..1ce5f23c59b0 100644
--- a/sys-auth/AusweisApp/Manifest
+++ b/sys-auth/AusweisApp/Manifest
@@ -1,2 +1,2 @@
-DIST AusweisApp-2.5.4.tar.gz 6140833 BLAKE2B 6690058072c57d6c05bba4b07587840e2e6b24b10abb039fc32b2ab2ec807195bb94314706c32ea0718bd7ee6b875de019ed013bf3baa60be3a8d7946d345822 SHA512 c97026b30b21fbddfc9fa4ab649b6166ce8e4e1cb9d805bb9d8b7981ca2880816ba6260ecf11b0356ffdb406047ca6a2d1edc351476958e78f0c112dbff0835c
DIST AusweisApp-2.5.5.tar.gz 6144980 BLAKE2B e4081a11952aecac2d37af403fe9e93ef42fac48ad0060407cac865054de0846d18190d52d8d9032b1219f4b47d88cb07296974fd9412e94a316c6fdd7585a39 SHA512 ef2a8df4922165a37f3fa37b598a63ba2b50c8d12cf543763851a62eec35a0035b4f9fbc2b30c217b08f209155f34ee320a0d476d6bb7abde4f996ebb8a89796
+DIST AusweisApp-2.6.0.tar.gz 6061045 BLAKE2B 6d88cd262e50d7dfec5372fd186bec61f1acba11ff9c7cc4ce3b2462f58f4388b472dbaf33c0952289ab71eaa8aae6f87ece91f74f76bf09bd1e1629a2cf2020 SHA512 45d5df52dc16d034591d8223850dc4e47544baf176da3bbc1a91e623959eca6840ce71d0c9b8d618e2882701caa7abf72697ce75547750ced576948c428f3e92
diff --git a/sys-block/arcconf/Manifest b/sys-block/arcconf/Manifest
index e3c33a6d311c..28535c35a137 100644
--- a/sys-block/arcconf/Manifest
+++ b/sys-block/arcconf/Manifest
@@ -2,5 +2,6 @@ DIST arcconf_B27147.zip 14410508 BLAKE2B 679f3c75e0d34a924a9e7059e531db04467e0e8
DIST arcconf_B27449.zip 14628104 BLAKE2B a11006b8b0304a2c1be1a03904d46d70edc51c2b1cd6bed158fbecc2a0cc0bc4db79ba9738ccc2a69c03600ac373b88c899680605337b11edc176ecd3cab8250 SHA512 647e2f04fb9fe861c2ce01606eafa8d3db7bd808f8837087a72b7e72c645ef267e7e86dc7d24797775c5321c10c9d101ce324780a8e0395e8b0e53d70ad5d552
DIST arcconf_B28200.zip 15404951 BLAKE2B f02b532ad2d3ce41e163949978fff812beea46a2d15e4d0bd80a488a3abbd778a2b8c936cac56b099eef9f6a9164527a46ac00ec46a8b7b20b7a76e779b85536 SHA512 b602a83f295c6972450910a4027c8405e2317d509be4a0b0e3e75a62d23ea7f3d9ebfb063c7d7d4565461edfb510687b268ae0f828d084f4b795bf55d43b6763
DIST arcconf_B28391.zip 17009813 BLAKE2B 7914a5f8e8921c15dd965cdc815d1fe850386dc7272cd7bbc991e43d3433c08a94e18503fba5fcf10b9e11458531b31ef919ce85d99e5385dc132b0e7d921709 SHA512 7ab45d59f74dfb246cd9b69c1c1a27f379491edd7853b936ba281d91f16d3a4b88cd95c20da009effbec73005a5207df620bcc077c0587f78ba708a7fe2a8977
+DIST arcconf_B28542.zip 23791864 BLAKE2B 5b2789e2b83d10922fcfec7fe6b6f17c364e34506b8db8352117c99e637ec43734da40da1fb0121659c1f2ec20d204929b5ef24f0bdf593856be4124684a1cac SHA512 b76b31703868391023a3c206e337a815fc6f84c27ddd6372883831acce50ee09704560a145d7cba549db2129b5702609a5c9b70b9c887f104686cd28a552fc05
DIST arcconf_v2_01_22270.zip 47168976 BLAKE2B 95693a1408e5a4d0d638bbf265f2e1e64247dfec2b1078b56860c5fcd4b13ffa5967bfb9967abfd4b79c788aaeb20759b3a9070a84b083c1653e4868a96ac4cf SHA512 0f91a697c44ea0c0561bec9e432e7d4eba8eb8a2b0255a9867bdb183f81e745aee1dcc2b0017847803dbb27f55cad3e985f4bcd3a202c52f5b557fb724e94d9e
DIST arcconf_v3_07_23980.zip 95993025 BLAKE2B 7a681a05cea01b30fc6d6f152a7fd6b388a5b23c66306e14f3f4da1f257c78169a98590d071130f31df515d665e55fde5d260421dbd890a87eb39724c216a0b3 SHA512 f2b0b17390e62caee08c5835ffb18aaa3c30b4d5878e3f859d03acbd6e45757ff35686fde69103ea1010a8c76ae95571a916d526504f52984f586a6f3a7fc270
diff --git a/sys-block/arcconf/arcconf-5.12.00.28542.ebuild b/sys-block/arcconf/arcconf-5.12.00.28542.ebuild
new file mode 100644
index 000000000000..3973ddaa7f08
--- /dev/null
+++ b/sys-block/arcconf/arcconf-5.12.00.28542.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV="B$(ver_cut 4)"
+
+inherit linux-info
+
+DESCRIPTION="Microsemi Adaptec RAID Controller Command Line Utility"
+HOMEPAGE="https://www.microsemi.com/"
+SRC_URI="arcconf_${MY_PV}.zip"
+S="${WORKDIR}"
+
+LICENSE="Microsemi"
+SLOT="0"
+KEYWORDS="-* amd64 arm64"
+
+BDEPEND="app-arch/unzip"
+
+RESTRICT="fetch mirror bindist"
+
+QA_PREBUILT="usr/bin/arcconf"
+
+pkg_nofetch() {
+ elog "Please download ${A} from"
+ elog "https://www.touslesdrivers.com/index.php?v_page=23&v_code=86644"
+ elog "and place it in your DISTDIR directory."
+}
+
+pkg_setup() {
+ # CONFIG_HARDENED_USERCOPY_PAGESPAN makes ARCCONF segault
+ if linux-info_get_any_version && linux_config_src_exists; then
+ CONFIG_CHECK="!HARDENED_USERCOPY_PAGESPAN"
+ check_extra_config
+ fi
+}
+
+src_install() {
+ dobin linux$(usex arm64 'arm' '')_x64/cmdline/arcconf
+}
diff --git a/sys-cluster/zookeeper-bin/Manifest b/sys-cluster/zookeeper-bin/Manifest
index d543fab30a4d..e10079456725 100644
--- a/sys-cluster/zookeeper-bin/Manifest
+++ b/sys-cluster/zookeeper-bin/Manifest
@@ -1,6 +1,3 @@
DIST zookeeper-bin-3.8.4.tar.gz 14609453 BLAKE2B 40f3267655469be4cfa50841ad924f37e05fc9316098934b52f89fb2adb601142b2557d141e485b04e012489c061e33a6691e96cff21936361ab5fea6b7e39dc SHA512 4d85d6f7644d5f36d9c4d65e78bd662ab35ebe1380d762c24c12b98af029027eee453437c9245dbdf2b9beb77cd6b690b69e26f91cf9d11b0a183a979c73fa43
-DIST zookeeper-bin-3.8.5.tar.gz 15384869 BLAKE2B 7323587cf95852774f87b3bdc21b0c2eaabc52575ee1b262a9e7c54ed91af54ba78dbf0d8a78ffbf8687c136a4c69d0b5188aa32db6c1c05946809b1fe0e4254 SHA512 ab9bf90649df19d8fd8378f2e8d9159bc8528d8e4c166a93d9fa4a9c98e39ee9de0279cc9dc58cd6d593141c0a45576d0df9db47d143d63951598a43efdc0a30
-DIST zookeeper-bin-3.8.6.tar.gz 16520101 BLAKE2B d139d3245cec65709e13ddd61309ae4661290988947587d6716fcdb0c3b6dc1941b93d689283c6d473651297959d16206173913275344ef3da877e13560e915b SHA512 86bfc94b9fad9fe020c662cd3644aa944f96e2ae0fb48fc3cb77ec3a82896499a58a2389dbec869adf8cacc889cf862319cbbf1f1c644915bbb95d3a26155303
-DIST zookeeper-bin-3.9.3.tar.gz 20655617 BLAKE2B 6f12a5eb825535620edc5af8e6935ba5f7da66b5195405b3b5371521e88fec9142ad86e25eda4a4181e083dbb168c33ff4e8ac427e0895c4a2fb9d328a0cf218 SHA512 d44d870c1691662efbf1a8baf1859c901b820dc5ff163b36e81beb27b6fbf3cd31b5f1f075697edaaf6d3e7a4cb0cc92f924dcff64b294ef13d535589bdaf143
-DIST zookeeper-bin-3.9.4.tar.gz 21087090 BLAKE2B ebe62e738454df60754ff7991e8ed6aa61fe5c1e28462b3c2b96eedfc051201da95b98cd812ac08a887360f33ee99dfdeb3e553a28995d13927a87dadea29222 SHA512 36bffae6440ed0d71ed83a621b8c52c583860b414812197373237f0c148bd16e6b599977c90e5eb81c0fce6b82ef44aa782621535417cffc4c2a0a51a56f2cdf
-DIST zookeeper-bin-3.9.5.tar.gz 22757799 BLAKE2B 6d43b3aed2b2c799ed31feb539dde9790c1f4dfbe360307028f77c8db5e6edccb60da25f57e4995816508fc1a3b66b4e25bda336962d1aced17f0fb40b57d96f SHA512 baa1c21dda4d57238fca751e4fa2bbf1daff9a28612b125e497dccd5c188ee6449e2f79947e474c2dd4d19992789d4d36b27b1ba2feb80c2b0c45e7df0e22aa8
+DIST zookeeper-bin-3.8.7.tar.gz 15817732 BLAKE2B 53413c23f45d68ba7b7488488f3a05584f26db00d79e7f97a809569201258c32676fa61d8e6b35859d9a680c34b5532ef33ca54cea755739a9dfe1aa89be22a5 SHA512 9a83f2814221f7174614c7367c968c2d1c7f9ae5a48b9e4d45f7229f4bf0b19d312cc168f92a101b432f78183f4ca228e34d5722972a7511851a5d412c700718
+DIST zookeeper-bin-3.9.6.tar.gz 22901907 BLAKE2B 67563e586177c61e0d192cf5a4e2c017675a93147b76454ee7be3836d1dbcebd7a7fd36ec2674eb3a74f77f534c0354c1ed7c2aa56708937a940f3f97715aeda SHA512 e999626df06de30dc8bb53bb51da9bb786b1658406adafc6b92f104d72ca25e869f70a57c83a726f8b9558cc0fb519fc20f201aa5d6da09884bc4be5fe6dd3b0
diff --git a/sys-cluster/zookeeper-bin/zookeeper-bin-3.8.5.ebuild b/sys-cluster/zookeeper-bin/zookeeper-bin-3.8.5.ebuild
deleted file mode 100644
index c1d3f61c81ae..000000000000
--- a/sys-cluster/zookeeper-bin/zookeeper-bin-3.8.5.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit java-utils-2
-
-MY_PN="zookeeper"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="A high-performance coordination service for distributed applications"
-HOMEPAGE="https://zookeeper.apache.org/"
-SRC_URI="
- mirror://apache/${MY_PN}/${MY_P}/apache-${MY_P}-bin.tar.gz -> ${P}.tar.gz
-"
-S="${WORKDIR}/apache-${MY_P}-bin"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="mirror binchecks"
-
-BDEPEND="
- acct-group/zookeeper
- acct-user/zookeeper
-"
-RDEPEND="
- ${BDEPEND}
- >=virtual/jre-1.8
-"
-
-INSTALL_DIR=/opt/"${PN}"
-export CONFIG_PROTECT="${CONFIG_PROTECT} ${INSTALL_DIR}/conf"
-
-src_prepare() {
- default
- rm "${S}"/docs/skin/instruction_arrow.png || die
-}
-
-src_install() {
- local DATA_DIR=/var/lib/"${MY_P}"
-
- # cleanup sources
- rm bin/*.cmd || die
-
- keepdir "${DATA_DIR}"
- sed "s:^dataDir=.*:dataDir=${DATA_DIR}:" conf/zoo_sample.cfg > conf/zoo.cfg || die
- cp "${FILESDIR}"/log4j.properties conf/ || die
-
- dodir "${INSTALL_DIR}"
- cp -a "${S}"/* "${ED}${INSTALL_DIR}" || die
-
- # data dir perms
- fowners zookeeper:zookeeper "${DATA_DIR}"
-
- # log dir
- keepdir /var/log/zookeeper
- fowners zookeeper:zookeeper /var/log/zookeeper
-
- # init script
- newinitd "${FILESDIR}"/zookeeper.initd zookeeper
- newconfd "${FILESDIR}"/zookeeper.confd zookeeper
-
- # env file
- cat > 99"${PN}" <<-EOF
- PATH="${INSTALL_DIR}"/bin
- CONFIG_PROTECT="${INSTALL_DIR}"/conf
- EOF
- doenvd 99"${PN}"
-}
diff --git a/sys-cluster/zookeeper-bin/zookeeper-bin-3.8.6.ebuild b/sys-cluster/zookeeper-bin/zookeeper-bin-3.8.7.ebuild
index 28d0f58e9faa..464f61bddfb1 100644
--- a/sys-cluster/zookeeper-bin/zookeeper-bin-3.8.6.ebuild
+++ b/sys-cluster/zookeeper-bin/zookeeper-bin-3.8.7.ebuild
@@ -17,7 +17,7 @@ S="${WORKDIR}/apache-${MY_P}-bin"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
RESTRICT="mirror binchecks"
BDEPEND="
diff --git a/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.3.ebuild b/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.3.ebuild
deleted file mode 100644
index c1d3f61c81ae..000000000000
--- a/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.3.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit java-utils-2
-
-MY_PN="zookeeper"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="A high-performance coordination service for distributed applications"
-HOMEPAGE="https://zookeeper.apache.org/"
-SRC_URI="
- mirror://apache/${MY_PN}/${MY_P}/apache-${MY_P}-bin.tar.gz -> ${P}.tar.gz
-"
-S="${WORKDIR}/apache-${MY_P}-bin"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="mirror binchecks"
-
-BDEPEND="
- acct-group/zookeeper
- acct-user/zookeeper
-"
-RDEPEND="
- ${BDEPEND}
- >=virtual/jre-1.8
-"
-
-INSTALL_DIR=/opt/"${PN}"
-export CONFIG_PROTECT="${CONFIG_PROTECT} ${INSTALL_DIR}/conf"
-
-src_prepare() {
- default
- rm "${S}"/docs/skin/instruction_arrow.png || die
-}
-
-src_install() {
- local DATA_DIR=/var/lib/"${MY_P}"
-
- # cleanup sources
- rm bin/*.cmd || die
-
- keepdir "${DATA_DIR}"
- sed "s:^dataDir=.*:dataDir=${DATA_DIR}:" conf/zoo_sample.cfg > conf/zoo.cfg || die
- cp "${FILESDIR}"/log4j.properties conf/ || die
-
- dodir "${INSTALL_DIR}"
- cp -a "${S}"/* "${ED}${INSTALL_DIR}" || die
-
- # data dir perms
- fowners zookeeper:zookeeper "${DATA_DIR}"
-
- # log dir
- keepdir /var/log/zookeeper
- fowners zookeeper:zookeeper /var/log/zookeeper
-
- # init script
- newinitd "${FILESDIR}"/zookeeper.initd zookeeper
- newconfd "${FILESDIR}"/zookeeper.confd zookeeper
-
- # env file
- cat > 99"${PN}" <<-EOF
- PATH="${INSTALL_DIR}"/bin
- CONFIG_PROTECT="${INSTALL_DIR}"/conf
- EOF
- doenvd 99"${PN}"
-}
diff --git a/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.4.ebuild b/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.4.ebuild
deleted file mode 100644
index c1d3f61c81ae..000000000000
--- a/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.4.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit java-utils-2
-
-MY_PN="zookeeper"
-MY_P="${MY_PN}-${PV}"
-
-DESCRIPTION="A high-performance coordination service for distributed applications"
-HOMEPAGE="https://zookeeper.apache.org/"
-SRC_URI="
- mirror://apache/${MY_PN}/${MY_P}/apache-${MY_P}-bin.tar.gz -> ${P}.tar.gz
-"
-S="${WORKDIR}/apache-${MY_P}-bin"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="mirror binchecks"
-
-BDEPEND="
- acct-group/zookeeper
- acct-user/zookeeper
-"
-RDEPEND="
- ${BDEPEND}
- >=virtual/jre-1.8
-"
-
-INSTALL_DIR=/opt/"${PN}"
-export CONFIG_PROTECT="${CONFIG_PROTECT} ${INSTALL_DIR}/conf"
-
-src_prepare() {
- default
- rm "${S}"/docs/skin/instruction_arrow.png || die
-}
-
-src_install() {
- local DATA_DIR=/var/lib/"${MY_P}"
-
- # cleanup sources
- rm bin/*.cmd || die
-
- keepdir "${DATA_DIR}"
- sed "s:^dataDir=.*:dataDir=${DATA_DIR}:" conf/zoo_sample.cfg > conf/zoo.cfg || die
- cp "${FILESDIR}"/log4j.properties conf/ || die
-
- dodir "${INSTALL_DIR}"
- cp -a "${S}"/* "${ED}${INSTALL_DIR}" || die
-
- # data dir perms
- fowners zookeeper:zookeeper "${DATA_DIR}"
-
- # log dir
- keepdir /var/log/zookeeper
- fowners zookeeper:zookeeper /var/log/zookeeper
-
- # init script
- newinitd "${FILESDIR}"/zookeeper.initd zookeeper
- newconfd "${FILESDIR}"/zookeeper.confd zookeeper
-
- # env file
- cat > 99"${PN}" <<-EOF
- PATH="${INSTALL_DIR}"/bin
- CONFIG_PROTECT="${INSTALL_DIR}"/conf
- EOF
- doenvd 99"${PN}"
-}
diff --git a/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.5.ebuild b/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.6.ebuild
index c14d90c06a47..c14d90c06a47 100644
--- a/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.5.ebuild
+++ b/sys-cluster/zookeeper-bin/zookeeper-bin-3.9.6.ebuild
diff --git a/sys-devel/bpf-toolchain/bpf-toolchain-16.1.0_p2.ebuild b/sys-devel/bpf-toolchain/bpf-toolchain-16.1.0_p2.ebuild
index b72ec0437027..cc2dceedc47f 100644
--- a/sys-devel/bpf-toolchain/bpf-toolchain-16.1.0_p2.ebuild
+++ b/sys-devel/bpf-toolchain/bpf-toolchain-16.1.0_p2.ebuild
@@ -40,7 +40,7 @@ LICENSE="
LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
"
SLOT="0"
-KEYWORDS="~amd64 arm arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+bin-symlinks custom-cflags +strip"
RDEPEND="
diff --git a/sys-devel/crossdev/crossdev-20260623.ebuild b/sys-devel/crossdev/crossdev-20260623.ebuild
index 4ca6a185e4f3..057a9d812839 100644
--- a/sys-devel/crossdev/crossdev-20260623.ebuild
+++ b/sys-devel/crossdev/crossdev-20260623.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == "99999999" ]] ; then
"
else
SRC_URI="https://distfiles.gentoo.org/pub/proj/toolchain/crossdev/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
DESCRIPTION="Gentoo Cross-toolchain generator"
diff --git a/sys-devel/dwz/dwz-0.17.ebuild b/sys-devel/dwz/dwz-0.17.ebuild
index 97d424c72e23..273cf9aa7255 100644
--- a/sys-devel/dwz/dwz-0.17.ebuild
+++ b/sys-devel/dwz/dwz-0.17.ebuild
@@ -20,7 +20,7 @@ else
"
S="${WORKDIR}/${PN}"
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-dwz )"
fi
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index bfa00dc5983b..cab8d4511a5c 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -20,6 +20,7 @@ DIST gcc-14-20260903.tar.xz 88538140 BLAKE2B b5fd80fd8addf04d296f12c26f4ce1feb7c
DIST gcc-14-20260917.tar.xz 88546212 BLAKE2B 74daba98307cd5c1d1941e5ac4c9e7aa169935a5363c6d3cbbc833906977ca8f43f8aef4a6388e867c9b886860aaa976e9b12139828a8023d5aa1fb9d991a4e3 SHA512 e4532c9447db2c044bbee715170a5a48c17478b3404fc283fe5bf13454d91f166b7fe424670c33e3735cf23738fb1f7c49b70c15e285df106e446da45d53831f
DIST gcc-14-20260924.tar.xz 88597088 BLAKE2B 1d7c55465a84d274853266416adf0f60dabbc9eede0c7552dbbc08d7ecf82a9af3d54751dd060e8f7868dccd86f92cc61468c4bcd5c843a24e176b8202af8e18 SHA512 517fa0a27b39c3734008eb71d785db612d763e5a1fab83836b28f7a6f25b9d4102c15e7bc44fef9c5cbc158b5412b8f57421dabd685fc83bed173b5fc58d3464
DIST gcc-14-20261001.tar.xz 88548420 BLAKE2B 9139eb26c73ebfe9922d576b8a8b51656bd807be82258dd5c7dd5190ba5259a4ef58737dd89a535dc7a1a2b619da42f5d0f83d561bcaedd3eb0b6460abf414c8 SHA512 13864e591278dcaf7f15275f7510e7ad1d1ece9ef451b3980e9dbbd49168aa72790c1ae1c1f74e475ff5be623fc2ec162fe72da328835cf6d6a79a9686eac138
+DIST gcc-14-20261008.tar.xz 88553116 BLAKE2B 249eec2c31bab4aa41b5c78122324686c290efa4c01d488754aab05045df42013a412a6fbfb69b9be4a4f9a40159e806c4747a57386eea0f6825b0820726e4a4 SHA512 281617d19d38663573e04f925dbb3786b7c753be588fee8b9f51c23c7c1d5df0f52e814845384672779edbd86aeb89f6666ce8bb9f1a6d62f5467b538f7f9f55
DIST gcc-14.3.0-musl-patches-2.tar.xz 6888 BLAKE2B e2f9ce6d445b7ced8f78c18585887422ffdd32356368a456a7cfde5a1854515b32546c1d25a2ab8637ee62d04a2c0bda1afc8d53c44e5c80c12499918c3c18fc SHA512 0b59d228213024cd93d9ffbd4ae5947021db2dc71bd320cc0e4ccf523d39f72e61be25c1a49a343729fe7b9abf7181503de3e650b255d80ab6d969d0de317d19
DIST gcc-14.3.0-patches-6.tar.xz 28148 BLAKE2B ba80a00289da26d3b5a813a9878aae6b34640e5cf8f37431ef846894087096dc84869e120ed17f23062bd2702a8059d73ead3ba28115e9c3bad55f46e7f474ee SHA512 7ee900f327bd92484ffba03ff80827b42ffba75d7527e26e09ea07e6d61622d812e1a00f77f3d669d7bde0366bab43085552d6140b28bc319edab9eb0e9a73f5
DIST gcc-14.4.0.tar.xz 91586872 BLAKE2B 10a512f9f95fcc70a13f4eb2142927277d2e6c0a16bad76f01078dc0d7e5cb6831204f8beec22c83c1ff2d0ed1d9df8c8d0a4118ba657d1aefef2a6f15636a28 SHA512 725ed8bdd43ef1726ffe8b5e8615a13e247fac9575b7626ae013a2975d000ea213212dc414b2f2631ac4785c1c8beca85555222faf9904d3b2fa6a3807a83a15
@@ -29,6 +30,7 @@ DIST gcc-15-20260911.tar.xz 92514232 BLAKE2B fac0cdb3c6dbab3b156c5bd406e377f6859
DIST gcc-15-20260918.tar.xz 92514296 BLAKE2B 55475e8430e4effad4549b8cc023c0fa41f08b2eccea9abda721e67acc2f466fcc53594671c3a1648254e619fb7d644a32e78abaf0f0c436a3a61742bb8961ca SHA512 82002b232ac18021fffa45e60219d6fb9a1158b7b7a9adf7fe543eb911be7a209fd4c8139db9771964c996640003db4899ccadee50396e473185fc0653480b6e
DIST gcc-15-20260925.tar.xz 92517824 BLAKE2B 55070a523abb68fdcb1f18ae1bd478788e4facbd84f44ce04eaa208feeaac81fc2ebeb0336cd8e0c09baac9acd22c4aa2c743ed4acda023299ad9b0d2fe13452 SHA512 da40b34c712d82201f4dd32612f40977faf0b7c59fa00e32b7a1bc264719480cdb07f4d9da33bf721d22fce4cd5542465f856f35808e74a1f0c81297e2d6d75a
DIST gcc-15-20261002.tar.xz 92508268 BLAKE2B ad9a6de5178c47f649759e9018db27fa9d402920470982b73d357851564145bf49716fdb5de84e8c2b0d0b176c76ab21c4dd27641b4e33b40cc27b5563da977c SHA512 353389fcc99994463f419125fca494f2b5683a73ade129d8ec1ef18de72ca3ac595a732d17d42401bcbf1dcc5d53dbdcccfc4f3004cba28d9ca71abaa728132c
+DIST gcc-15-20261009.tar.xz 92521948 BLAKE2B 29a028d57fbd457a4f3bd0563a56da122a00ceee3aa76647dcea5eec0a22869dd9175206f5e6a7c29eb8c98ecb6bf92fedd8ef4363601a65a075e28214b14e9b SHA512 2d7682203875130f5c61f04f51370cdcf65c56067a87ea5156138863a62ad3078173ef8cdbf933338b8c226843b81342a45217a70949a369c3f64f70e7f3c43b
DIST gcc-15.2.0-musl-patches-1.tar.xz 7168 BLAKE2B 6b7cfb123c3a691693240db815e6852a1e6c3820baa499368c463e0a0c1490c701053cfea10bf1d33f89dd2ba7bbddf63c4e6e0976590e3aaf1fee78b9282079 SHA512 ab80ffd69b9ead1fe06a9433faaa97ae53947d214999e77ea363fa6435de080d031a1aa6869e1dc088e800317952f2dc249a9e872113db56fb76f0a432240871
DIST gcc-15.2.0-patches-8.tar.xz 17584 BLAKE2B e35d85b993fc2ad86924158cac893a815f70332335ed02d970bcdf89c1ceafc2972576bcd85b4912e6ada91bdd80e8f10cbc6be798c804438368bae60abe2731 SHA512 6440a792320037b746ba405469773b96c1d4272c5248ae3808e6d8a2d576564c0f52889a6f88c3271233c8c2fe7ecb974d31ced2141f16f2c5ca68b9e47ace8c
DIST gcc-15.3.0.tar.xz 101253696 BLAKE2B 9e37d6560addf936b8dae6f34a2621004e888b1436c9b95d6a09c2a792f909c7ec4aa5e8d0e63baa1be742fd8dc8162b366b5c48766fc83e44b3842891af44df SHA512 0de9e296153b52c021b1c7e63c9c62151d7a0ac03f23ce6e9f772c1b0eb783f6acdd81cc4567bfe4128a6f64968c2cfc8eff40b36229cba7425349f7d637c654
@@ -36,6 +38,7 @@ DIST gcc-16-20260905.tar.xz 99118908 BLAKE2B 1a65b1fbc842e153389840274a5a3f844e3
DIST gcc-16-20260912.tar.xz 99109248 BLAKE2B 0011cbe5676a9c468762e1ccf1cf57c2fd08d4da05c9aba449a8485537a1e9ac30cbe07e6ede60adc5d63c8a3ae1060611006e93bc150c843a4eb8f48f9d9da3 SHA512 e9382e1caee349a55c4bb2de1cfd4b3e9a411f4b5a3fd70ffe98b8fe7adccc89648d39548564285e1bba9647f7bf62915928c783b160137ddc4c91b0f3a4db6b
DIST gcc-16-20260926.tar.xz 99133088 BLAKE2B e1193f78cdd795fb4f81ec0fe8e43158665c1d35dcd4d0482650574f80da12b5492bc8a82099321b29cda0945eb2e6f6b63dd774953313cb60d2078f32c13b0c SHA512 80a9e020117407a9d0f50a1e155dae31bae3472565d8084696fb20c61d33780645db3880f854537ea79a33d672f6edde7a34c9e20443de5e5f3e4ec7d0db09f6
DIST gcc-16-20261003.tar.xz 99133792 BLAKE2B 4c17cff6e7a9584527f1e744d8da3c68c9cd29fab0b1b31f382b81561e1d43690d9ab6d4e4855acb3150165de7d5a5bbafe92c8ba834f4af86035cae7b156673 SHA512 e880721a15355b335f3aa12a048ce172902e2b62435e03ceea4fad0bc38c0520a99341f0a8b6263115240025b5b856cfc39cf4bbdfbd181ad3e638d7276e62e0
+DIST gcc-16-20261010.tar.xz 99137776 BLAKE2B 48980635258d8031da77047c40e2460f192f3f4fdb61b5146394103771ccd913f3ab5c951e55aeb80275799e834d13934829b774d9e248909661cd2f234aa6af SHA512 569949462d240b474053f4c7aa4382b819448a97d0a6b7b50d9b90b73d44378abf3a73d18cbce32439b62f5d7eec51b5df4b4ac83d03b211e27cec2c23aebd48
DIST gcc-16.1.0-musl-patches-1.tar.xz 3036 BLAKE2B 348d0233c92e6b269011342a170989bb6375ff267b6ecfc00aafab2f793b925f1cccd654f438a4f88168a7999cab965aadfb6dfc9957a9b1a5bca62c326e0b84 SHA512 dc9c2d4a6e9088ad245039a962333ecba8476288844c686e7df9c867c8018451fccbd645a5690d554ee39809e6467285b3c619553edfed379c5f84c003bcb7e5
DIST gcc-16.1.0-patches-3.tar.xz 25156 BLAKE2B 874afd3239c0794082568738c837786fff71ad48c24677c11110630fc6e0c0baf17720aec53dc7cd6580102a3a3b7daa2b78c82488f758af8afcb6cd5621ee25 SHA512 dbead66ac0899e2833e88cd7a95b12d2f2dd1379ec3cc085701efd7f8e446feff4d6c00f1481026bb9c699487a143f6a429a8f95ad7228f8bbef5faf2d1b5a5e
DIST gcc-16.2.0-musl-patches-1.tar.xz 3036 BLAKE2B 8545e2499a8af4af9483e0372f253db13ee296c77e8514d409c9a43a2fd8919bdca4791c2747579fc57c62b08c0e4054314b7511ddc921074a60ab9f192e7983 SHA512 d029857ffeae60fa5577dddc0136f04ceadf77a282a3ebda9dda1da67a17301978028aa6d768f46f4b0fa9778f5e8f0052a731d087fb4b841a4f30244ee41fec
@@ -46,10 +49,12 @@ DIST gcc-17-20260913.tar.xz 100376020 BLAKE2B 3c30df5725a8f68487f979dc6f314996db
DIST gcc-17-20260920.tar.xz 100782884 BLAKE2B eab26e9592d53dfd7fe415c42ff54951ce78a5f317c488753fdcc64fa59511b2469d4df4069c3093b5321dc9a67398336217abaa75768bdd2a5fc12b5c121c28 SHA512 5f14f49ba56d0305002fb4378e6245ac525521f53bb7054baa99791a9f142f11528c9b5a416333f091219ff236bb486011ac79d8a0635150facc2a36457dddb1
DIST gcc-17-20260927.tar.xz 100812644 BLAKE2B b88bf05b7cc81245805bffa4c7e0d3cd6ffa308b199272d5cec688ba9de1a010cd1293dde40b7c7fa5e5f0a07a55d9cf3b7d6cb5100b419edc5cad34648abe1c SHA512 14526b6287dfa0197ebb4c5b56c6a68c92f44062cdc87d2391c8d5d04b0e01fcda94ac370f70c4f13a11a110f04a36ed2b792b64f791ca996c4e1df646ec71b6
DIST gcc-17-20261004.tar.xz 100817204 BLAKE2B ae4e5b25802455d041e7c90b7764419e368bdf4a988ea44d46559d061bb021c5a6c626676b1f8e8e7eaa657d025c0fc8526abd86d9df45199f0f3ad1fea9f573 SHA512 0b033d6a618594bd70eb887e79affb9a7c77427438afdb3bd42286be4ad2231c2238d65c6e632e7e75d3869cd471185e49d4148455d7982b264b937539aae5d2
+DIST gcc-17-20261011.tar.xz 100832744 BLAKE2B 5359469360f4824847df49d44809cc21e30c999cb629a77af346a084d0415bf686762e0370dc49628520d4850b4123e3d94b71f00e625155d177490d1f114a53 SHA512 f097861da66891e3d802057f515fd56418eac7e061c4b9b2f301f457222ff58e6adf6f63e88ae9fb70563084771ab58165b7b0d4e47a0a9371df7b195b6955bd
DIST gcc-17.0.0-musl-patches-1.tar.xz 3040 BLAKE2B cc39906facd9c395bae9f87c67124066b8081521df39857d752f1e398dca5113240d24a836ca0f793313f954d6c38ff39961bf71a8036a1d5bc62751e71eb7c9 SHA512 4e330ee1c87229ba30644ad7a6841683aba368ce00585b5a7af433f215e248534a8d81f6f95fcf7b348c7d9aeaf1eeae015d76601e3d918a0ca39d94ed7e521c
DIST gcc-17.0.0-patches-13.tar.xz 23248 BLAKE2B e09e2a4a2e51ad7275fe7d3ac3981d5a9873ce1af1f9de60dde2aa5f3df31ef4d73f48553170333a73251614c9bf666a7a93dadcde59d9dde3a20d8b5b2e902a SHA512 3c1aac5abda361d3407ba02ca19ad24c038671254714e82ec6a96f49286a4c551346eaaa718ae340cbfde6515685e665c91f6252adbfff16322b8dfb70b92e47
DIST gcc-17.0.0-patches-14.tar.xz 24236 BLAKE2B f94a5dd6f939246096b9179d7eaed6095388ef533cf29e250ae84a608874765d91717419738d9c6f1b7aa1de5a49fc9cb66121e7d3fa4e6726684223deb221c1 SHA512 caed1613786bc48aa3632974bc02ac4b878e7aadc6d41008baec8a2fe20a952daf0299557f394088618735e08d1c9cd2836fb33ec223b092ad29b9641ed922d1
DIST gcc-17.0.0-patches-15.tar.xz 24832 BLAKE2B 4524340e6c02583d5077aeca68273159b6a3904f6fe077bc95676033f3e6f1a3f316283027b1274e0c927cc2aa4b0ed4108d131fe991b5d438d92828785d1b0d SHA512 66c1d9faa86c1cdaa013c745f75951da261dc4f003cfcdcf18eb1b6f3042ad0fd26e5b040110c215153d1d5e35ba5f97153cdc57d4b784a0cdc7f92f9a927eb1
+DIST gcc-17.0.0-patches-16.tar.xz 24900 BLAKE2B bc3c49a7a349972afd47f54aa463aebe771f58c5ce0d4c280d13518edd88816eef2cf3f03c07e061bd284900f4964a666e10ab6b7d7f67962fbdec8ba8ec6e6a SHA512 a642af59b1679f6fe56ac4402622bdd44787fd81de7d868e8cccdf450e5090cf7658c6d60d231165b1a66ee19d23d833ba1bbd1ca9124f84f3d0ae1e8ce88aef
DIST gcc-8.5.0-patches-5.tar.xz 20188 BLAKE2B 45b29161105edc6344bb48f5bdf17e1aad6e8d9edb4d9434816425996c1b12c10f1303963776adad9db866d845f864d80d198a30e35ee6c204ca3659cf7a1401 SHA512 f22ab5d8e3116e2e896a5dcbbf5cef67dc5090182af364ef64fc22d2b28c029da5ed39f126f446721e388e7b6848239d01f5fc0346e49b96d5c04068b557f8f8
DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8
DIST gcc-9.5.0-patches-3.tar.xz 17888 BLAKE2B f2be05f32f4ecca41ebf4f402bf8fb3c11a36a8b7bd912ee9fe6baea980929774b629e12df7afb3405f1f5d044766a437b3eca5433f4af6c757f4a9dbb2e77eb SHA512 d31bb1964cdb2376572e4981b22c7ffa6fa695259c27af5d0d12aebc334cd1122c2f75739033f25f1e672300adeab2b3772622cb16099d002f3f8c5a8fe694f9
diff --git a/sys-devel/gcc/gcc-14.4.1_p20261008.ebuild b/sys-devel/gcc/gcc-14.4.1_p20261008.ebuild
new file mode 100644
index 000000000000..7ec1c652158d
--- /dev/null
+++ b/sys-devel/gcc/gcc-14.4.1_p20261008.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="14.3.0"
+PATCH_VER="6"
+MUSL_VER="2"
+MUSL_GCC_VER="14.3.0"
+PYTHON_COMPAT=( python3_{13..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=releases/gcc-$(ver_cut 1)
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # m68k doesnt build (ICE, bug 932733)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ eapply_user
+}
diff --git a/sys-devel/gcc/gcc-15.3.1_p20261009.ebuild b/sys-devel/gcc/gcc-15.3.1_p20261009.ebuild
new file mode 100644
index 000000000000..8b374ff41d1d
--- /dev/null
+++ b/sys-devel/gcc/gcc-15.3.1_p20261009.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="15.2.0"
+PATCH_VER="8"
+MUSL_VER="1"
+MUSL_GCC_VER="15.2.0"
+PYTHON_COMPAT=( python3_{13..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # Don't keyword live ebuilds
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ [[ ${CHOST} == m68k-* ]] && eapply "${FILESDIR}"/${PN}-15-m68k-workaround.patch
+ eapply_user
+}
diff --git a/sys-devel/gcc/gcc-16.2.1_p20261010.ebuild b/sys-devel/gcc/gcc-16.2.1_p20261010.ebuild
new file mode 100644
index 000000000000..4b9f5cdea6d0
--- /dev/null
+++ b/sys-devel/gcc/gcc-16.2.1_p20261010.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="16.2.0"
+PATCH_VER="1"
+MUSL_VER="1"
+MUSL_GCC_VER="16.2.0"
+PYTHON_COMPAT=( python3_{13..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # Don't keyword live ebuilds
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ [[ ${CHOST} == m68k-* ]] && eapply "${FILESDIR}"/${PN}-15-m68k-workaround.patch
+ eapply_user
+}
diff --git a/sys-devel/gcc/gcc-17.0.0_p20261011.ebuild b/sys-devel/gcc/gcc-17.0.0_p20261011.ebuild
new file mode 100644
index 000000000000..2648c52cfe71
--- /dev/null
+++ b/sys-devel/gcc/gcc-17.0.0_p20261011.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="17.0.0"
+PATCH_VER="16"
+MUSL_GCC_VER="17.0.0"
+MUSL_VER="1"
+PYTHON_COMPAT=( python3_{13..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # Don't keyword live ebuilds
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ [[ ${CHOST} == m68k-* ]] && eapply "${FILESDIR}"/${PN}-15-m68k-workaround.patch
+ eapply_user
+}
diff --git a/sys-fs/unionfs-fuse/Manifest b/sys-fs/unionfs-fuse/Manifest
index 1a370c039f50..6a47a4fb6d23 100644
--- a/sys-fs/unionfs-fuse/Manifest
+++ b/sys-fs/unionfs-fuse/Manifest
@@ -1 +1 @@
-DIST unionfs-fuse-3.7.tar.gz 56444 BLAKE2B 04005de76c6fb75297a1910047dbb0f33f5728383acbdd8311e227f02a5d12bbfb83ff9b6c304440c8dd9fc578007e62334fba980fb074f83b295215bddbac27 SHA512 51f5c4854af5d826ab3ddbf7e106f3bbd48f3af63dff667ea47f35a171b7d683ec13c61776a8280766e1e21382a576831f73ce4575c538f05c5e1648bf7376f3
+DIST unionfs-fuse-3.8.tar.gz 57711 BLAKE2B 3db8b3dcc2260d85ce386f52c76f32b799dcc2a6dc5e5c9cc7938ea28ff037e4dc19a1f32ae0f781fa5823263f257ec661d43e71cb9662bbdabf623eaf5f68d0 SHA512 b4b15ff94fd497055404f4f95dd3df70a7ea68424937306b4131a68fd3ad16420c48d1a5d06648932b9f47324a3e3d54e10a58eb0a36a826bd3f86abb29240ba
diff --git a/sys-fs/unionfs-fuse/unionfs-fuse-3.7.ebuild b/sys-fs/unionfs-fuse/unionfs-fuse-3.7.ebuild
deleted file mode 100644
index e23a214b947a..000000000000
--- a/sys-fs/unionfs-fuse/unionfs-fuse-3.7.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-PYTHON_COMPAT=( python3_{13..14} )
-inherit python-any-r1 toolchain-funcs
-
-DESCRIPTION="Self-syncing tree-merging file system based on FUSE"
-HOMEPAGE="https://github.com/rpodgorny/unionfs-fuse"
-SRC_URI="https://github.com/rpodgorny/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-fs/fuse:3="
-DEPEND="${RDEPEND}"
-BDEPEND="
- test? (
- $(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
- )
-"
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-python_check_deps() {
- use test || return 0
- python_has_version "dev-python/pytest[${PYTHON_USEDEP}]"
-}
-
-src_compile() {
- emake AR="$(tc-getAR)" CC="$(tc-getCC)"
-}
-
-src_install() {
- emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install
-}
-
-src_test() {
- [[ -e /dev/fuse ]] || return 0
- addwrite /dev/fuse
- pytest -vv || die "Tests fail with ${EPYTHON}"
-}
diff --git a/sys-fs/unionfs-fuse/unionfs-fuse-3.7-r1.ebuild b/sys-fs/unionfs-fuse/unionfs-fuse-3.8.ebuild
index f4e915ec111c..f4e915ec111c 100644
--- a/sys-fs/unionfs-fuse/unionfs-fuse-3.7-r1.ebuild
+++ b/sys-fs/unionfs-fuse/unionfs-fuse-3.8.ebuild
diff --git a/sys-kernel/gentoo-kernel-bin/Manifest b/sys-kernel/gentoo-kernel-bin/Manifest
index 6b7ee3d0b175..ab8818c066cf 100644
--- a/sys-kernel/gentoo-kernel-bin/Manifest
+++ b/sys-kernel/gentoo-kernel-bin/Manifest
@@ -22,6 +22,10 @@ DIST gentoo-kernel-6.18.55-1.amd64.gpkg.tar 471674880 BLAKE2B a18280080251081d81
DIST gentoo-kernel-6.18.55-1.arm64.gpkg.tar 457902080 BLAKE2B 5424bb485b30bc8aa557bcf2d8e6e0f57b59d0623fc1c4b2f98af328126fb7620c0f20c6303bb416dd1dc030147210d80bf597351668044b3b70869346cb4b0a SHA512 91cc707e26cb12d4b47c766797469937c620e4225931c64245ff9a9b3eeec5258d54a92f4f6777151f1fccb2228301401aa18a6b0f6d2d5020d67fd4004f6849
DIST gentoo-kernel-6.18.55-1.ppc64le.gpkg.tar 77363200 BLAKE2B 9d8a33d390fe7e5f6c418ba199d869329482f7da5316cac58f7459e4d76816d198be0a6753792d0242c70b3edbff05b9c45f6ed538e41c507905c9f053f367fc SHA512 dcd14500dee11ff08220a3ebbae4a82023e25f9206660627d89c78db1d460d0dbc2e956090cef1f77caf87ecb2bb58e9beff28568571d3956a363e1dd4fe4bee
DIST gentoo-kernel-6.18.55-1.x86.gpkg.tar 83824640 BLAKE2B f57c5b8a6985f52338cf9745791eea75e5599d733251bb603475417ccd1d17a682be56c39876b45861059835de9b1d3d664bde3d93e6ba26493bf427c35ed7e7 SHA512 1fefc3de597b406966e2ee6f9d1c6d88b2579b9f5bfe5e99b77ccac5f2aa7a7ea044ed04579fa7a63b63db3e4c53f25be5aaf57e02cbdfb906c9dbe607698528
+DIST gentoo-kernel-6.18.56-1.amd64.gpkg.tar 471746560 BLAKE2B fe845678e01035d2df26e2e9e2721d54498bd9c1ad0b4ef60c9f3ffc1cea155cd8d335510e52e7d5b854c2d521907d16e96feef61eabc0118d15f111e129786d SHA512 5ac9a62a1ac8be474ad9fd5f2b48e5e0e65d9d842617ed10819defcc220ee98ee62595bc7a638d6b77609482685c5f61446a74f3eb19d8cccc30263835c3f7f5
+DIST gentoo-kernel-6.18.56-1.arm64.gpkg.tar 457973760 BLAKE2B 6c69b1d54e8879f930fd9b9fd9bd68ba4d8896e941270d4587f05caff4433e05bfe5a0e244b2b1ff14a660a4c4730bf76c0511dd76ba39c29025e18a7ce712d9 SHA512 616100b372fa0517be6868b5bd462756ab2e856916f66691d77e8e5e07e2e4b0388cf32e2cfa95f0217be505d2651a36a4834bfb216f8823a185e2b18ddb9cb8
+DIST gentoo-kernel-6.18.56-1.ppc64le.gpkg.tar 77352960 BLAKE2B db4a8647b29fd7ec993e3fcf76c206cfc2d1937481e2590f2516972751fd3c75e9cdef123bda7bf218022985b76328ef1864f31b56d21fe1eb1a65205255c841 SHA512 2638520bc1edfc3902f3975d96f24e31055f08916fc2fd5c94b723097c15f090a9def3f0165c13afa1fda8857da8da17ace6c6955533d842bdc282d92810f04d
+DIST gentoo-kernel-6.18.56-1.x86.gpkg.tar 83845120 BLAKE2B bbafb3990ad8eeb77da901921652a274c3d8b3e01f91de775879e2417d25e9482f85a1c820f79c50834d44aff8170c98d3169a29e604b7feb2625ae92775a4f7 SHA512 c99869a672af35a024260747c86f74ba4752b4d5fb853fe4ab3acca9eebc23666da69f35a93a31daafdb49e3a1c137d8016aa156491cd259a0f3b1519866aaba
DIST gentoo-kernel-6.6.157-1.amd64.gpkg.tar 292147200 BLAKE2B c2b0f4e63550f9fee42c396ba1081b6ace28d01fa4e6bbf9c7f19f34bad641e766d81a7305a304f722b8609a29c58b86665f45650dcf83bd878681210c51ca26 SHA512 772d9eb65a6a58fad9cec2b595a107243e69918fbdf4b6e6a3975bff38043ca61dc564e911cd2d38dec1bef68dd86932179e801146002bc761114231e207eb06
DIST gentoo-kernel-6.6.157-1.arm64.gpkg.tar 261160960 BLAKE2B a76b38b5e2a496c6c63913650d37755d6cc95f4d9075ac9b2f4898b4f7d340ed8c6a5b4ebef9775efc7a2664891af084b0a94eef35dfc6da7929e9689c79298f SHA512 8cad93f8d29ac46dca9824847c75570b651da68afce6474fd0c8f97367f88267453af424519fc3b9d4408ddea9c6e325679cf5067a286cf78766a938f72ef44b
DIST gentoo-kernel-6.6.157-1.ppc64le.gpkg.tar 65372160 BLAKE2B 91560f7feb1d1741eb64c53d920de608bc492ddb3d49a78892fe800c72dce21fa3228fbf42e063c44554154b331ec5aae094e2d601a521d897f8bd4386b93a7e SHA512 cbbe6f6bfe8ff250907179f6fd0e3e0933e7025662cb7f1a3e9915b882f35db0d9effe45fd0dc50df1680c66240f5e233fd7586d786b15a0fdb50242531c6d6c
@@ -30,6 +34,10 @@ DIST gentoo-kernel-6.6.158-1.amd64.gpkg.tar 294758400 BLAKE2B d94e968aa0c487ddd4
DIST gentoo-kernel-6.6.158-1.arm64.gpkg.tar 264345600 BLAKE2B 014dcc8fa8e0e9e3737c0de779752c1c491e2f31922243629441db91214dafdefbb1473b7796a171247106923ddee12e4be2e706fa7a977714defe2c00eff10e SHA512 9b84021b4cc750692bf055c14878379adbe1b4fa02d3ab9218664ec94ab33173316b11ba84b20e32098ae8f7d1041b98e300807eea0237575b90e802ed8ffc68
DIST gentoo-kernel-6.6.158-1.ppc64le.gpkg.tar 65382400 BLAKE2B d76c9b55d52f23f3465381fe94551a2003b1c7d364206bd3e178026904915c01a6ad42ae4b54997e2241e27193b44ac95de74a2d8e95bcd005159d26b784d368 SHA512 e32099f179d98ea3b1467f147b2e85e0922bade0e33436df40d170b275025aafa09511307d8ce9c314feec40f4186bb9b3b6953b1cfad351e0e1fde06c31316a
DIST gentoo-kernel-6.6.158-1.x86.gpkg.tar 68720640 BLAKE2B 9b07debd8430e182e55f50a9755bb86a3e8fd743b53393f825bd94a02bc18e668fea9e8eb25ab6ef058744bb2c7627d5fdce8ac58cafe67967615ad4a55818e8 SHA512 6e1b8827af635915e23f6eefbfecee24778398a6047970f155ecb86088a84f446e31d1a6cbba0eaf597efd22fc9ff407b0df201a4914659a6e168d986e888ecb
+DIST gentoo-kernel-7.2.10-1.amd64.gpkg.tar 368711680 BLAKE2B 67f7af86ba254f55bd805de72180280caa2af21535f3ec9d557cf7dde412c8a27f07946066dacd0a7cbeddb67e80304ed3b83c082faac436b874043dbfdd684a SHA512 06a8a640e097463499eff06b8346760b246adb5744380d026b3d06386c8077c5936d2f9a3288c5533d71277de0cbbd287857a720a00582f51491954eec289eeb
+DIST gentoo-kernel-7.2.10-1.arm64.gpkg.tar 341698560 BLAKE2B 86c7d8d4a60b8f7390f529362733a1dc9834af9da755670d24ebedab013dacf0e2b02877c22ac3779c68862542ea43143d6c489148c4bae6c870dbed2321788d SHA512 d15e2500eee7e019a6661ca979f5e8bd6452aa055e6eb0d2f9ec6cf31e820c352cc15e4995eba2877f50beacbcaecc7b6aabe83c83f3647f3e019fe7011ae464
+DIST gentoo-kernel-7.2.10-1.ppc64le.gpkg.tar 79902720 BLAKE2B 140ed4b4f72591377e440f9b2d311cfa4e0bbfc2363922a722c2e541c3c57c75a3f65417a6e8b98146edd68830249ff9767395676bfbd91423c4c7002d2d3f47 SHA512 7e571b922307baed4b460cccab085a385a8a6ad3c7bc0c9b27e275f7e63daf0c6e77cda607dd2fd11d66e70ee4418c958a176b7a5668ab34842b6d18b45b0e4d
+DIST gentoo-kernel-7.2.10-1.x86.gpkg.tar 87971840 BLAKE2B dc2651d85a071f93c746b2fe806e3871f238d10b8e0ef00dd3f9732ab17be1613c37eb07b6446ac0470692c0de9dbc7ae3b21205041d404b0293b452ae0c9ab5 SHA512 d59f94cfd3841d35c88fd03662ea0ec582a0f7bc95a3f41707c3c82710ed3758f95a317f966963248adeefe157b53232f2752b9cc112218d78093730fbdc2cb4
DIST gentoo-kernel-7.2.9-1.amd64.gpkg.tar 368629760 BLAKE2B be330e69658434eaaf7ce531a547ac841e8cf9045a78b811a1cf90ed8b44b1eb45e9fe835f7d32aab9fafb2d6050c5ab5deb8c2cd1e12b59c4c4ead6d9ec6c65 SHA512 214a56d32ca20640d55a0c8147eb5f399cf552e86a6fe3a5ef5eee807dcd6a043e1b080eecefcd25ada267636587cbf2aa20863a1b2b3d6ff8e4589c314b2534
DIST gentoo-kernel-7.2.9-1.arm64.gpkg.tar 341596160 BLAKE2B 32589501f6a6a51e7cd38532e99122ca51af3d6d51bcc346afc0e023811a5a63d67c82b7074812e336f5254d5ac27801dd739486dacdc64f1f618f5e457fa374 SHA512 38fccb423a9f04d3370c73694c85fd77e5b3db7bc4def6a91ce0ce84335ce223d92a14a4075e9c0a7db224021c00e67ce7d296108b1a04736edb1aef13f2a893
DIST gentoo-kernel-7.2.9-1.ppc64le.gpkg.tar 79912960 BLAKE2B f25149274bed57b9f5d982b2a8b137b68cbb8e25d26dca16b3978f6ee4d31b4cfa84b9398c1520ad5c87332aa2c9b7eca39ab785b80d09f531f7db2614d39d38 SHA512 c74d801701804c839fca5cb6d04b34b4691e97bf7cd65a1d9c64ff3e968d4441bfbc275165f34f633b690c5d21835d1fd66287856653ac06f0132c46fc851609
@@ -42,8 +50,10 @@ DIST linux-6.x-sha256sums-20260914.asc 250340 BLAKE2B 93c4ed0eb9073fb36fdceafb66
DIST linux-6.x-sha256sums-20260921.asc 251026 BLAKE2B 35ad5c29b1fb5ae124f04f949452c90a9ca5b3efce69d768b18f05ad86527acbd61594bb96c7cf8e77ccb9bfc9564d47b06e2e186b6b1a0173f3e0eb4901a949 SHA512 6d4cd01128f4b5148ad27b6a1b38e386262871114237fa62d2ea5b7d96180437a6a29bf34d8ae9d131bb5cebac1a8103deffaf43a1999102e25e728830f6880a
DIST linux-6.x-sha256sums-20260925.asc 251367 BLAKE2B 8b0e090a492d50e4c4e7d968a08ea6d34fc01ae9604f4cf8e859a437690777e29816b36186c7a5c2942c7672f9ee40c228e9c0e701d20ba6170e2818db1fcbf1 SHA512 9c67b790ffcea4588b6e4ada0b7e214df00f67b0e7be7b556e033c4e1e459afee8b4d7231637c2212a37739de20a2442387185bd879f433056f112fcd00c8763
DIST linux-6.x-sha256sums-20261003.asc 252735 BLAKE2B c9a9f38a282f29a998d465075ba156c80fe56a4059cc77909247da8a8d12848ad3046dc7b424bb5e69196b1711c9119b67d66edb66330092094d341d658cec31 SHA512 203652a97a32645909522f8e2862271d93803d47f05304280c669b26b08b97f169b3ba840a0b46a549d5c440e83ba170a8e2cdc188fc80b0e5748272b3015925
+DIST linux-6.x-sha256sums-20261011.asc 253076 BLAKE2B 6ed89e4763ca1aba3f4fd63af531201c6f0771ad7378c0f007bb6783dbf5c676597af014c1ddbdee0ab337cc331720599342cd751e5efaf50e42c73bc6b89f2e SHA512 cd48031347c6b6463208ab828538bcb6ace7ac508fa5915cd5eb96f1806b68f7fdc3dd2cb15177ef1a65398a1ea7ef59d6e63a1d512d97d0c5f80814c91314f2
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261003.asc 13881 BLAKE2B 110b61c6030ca1bd5851a55737a99bad7d6c6cbb791c59e3e2581c48fd6d7c94b39073a91a1532c81fd8bcfd550f6e26681d5e58d8e7c9644558ab9137bd6877 SHA512 7858e309c9a2fcd5a2ac06acf3192fb4bc74ed92417914df3557ad9dc353a50de69acc7c7bf27c857df57f488aa5e57bc598981c009a64ac9f8475c7e57d4c67
+DIST linux-7.x-sha256sums-20261011.asc 14218 BLAKE2B cc4fffdfc99100e6a986a3b6305f05933e6f1a0adb22576e39d9a9766904fe1b91abc3d85263f8075db5a24eb0fb9e71a1a76f00440f3c3996ade46affa4d9fb SHA512 dcec5e0181d11b5fd4d3af8f0a9b9f5c9694515e7e1458068d072af830159aef9616beec011b346caa93266093b66408f8cd5de053dbf3273240b54b436f032a
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
@@ -55,6 +65,8 @@ DIST patch-6.12.111.xz 6351668 BLAKE2B 5c82ae2deb7ee2abffa91f6126b4dbba602cff5ca
DIST patch-6.12.112.xz 6579860 BLAKE2B e0867a6d1c04ac86cb807435ac169c6cf9346bb60381410d8fbfb0fbc4f78ac293f934e84bca8335458930bcf8dc42cfd9203c2854ad3bfb2659186970c5314c SHA512 f6544c78ae6484275f27e0742cc37f3043b9c4d945717ce2627f826609efdb3cd22c47a61497632dd41deb6647e7fd4ccbd7d1e3e9ad8df9fda77823412b6c42
DIST patch-6.18.54.xz 4442704 BLAKE2B 4cacc92a71210f994fb3a2b30a8d46136eb4c0d5796f203f458db47c3ac8c86a92cc57a93832813757dc494a44d09c2692224209e8c31eda1226a22339f3f00d SHA512 9bc159d518172c35540c1ebb82315f56b2052506119017eddae4a3200a21255b56937f452e73eb3799e4a0bf4f7deb814e7c7430223333b9ac6e85c13d532f2f
DIST patch-6.18.55.xz 4532424 BLAKE2B 88ecc8834445f76189c5c7effb6d482f54bd71097afb8843bb63f747cff390293bc570caeae3770b8e5e5592f44b812ae8e9b851012ae0afb97b0304b212e84a SHA512 274d804a47fc28a8260907ac27f2efc95a4668f67d31a036e88c82cdaf16e8a2ba33dce18f7b344595d2cbd60d310e7b6b0ccae6d1f4dab2eb65badb61e8ef66
+DIST patch-6.18.56.xz 4622540 BLAKE2B a55629d145cfb6c4bf7780399423c96670595faa42f033f2a4ed7e011cc7d63683ab78a4d36eeecda5c681813d47dbae389a3e58e2e8cd44e116a74c94aeb61a SHA512 4c903ee382529a67a252baf76477683e1ed13e012a7d5215130ba8a7ff30672107369f7450a03233663ffcb930fdabc11c5e4423c7f5b5a3b5bc9adeab251271
DIST patch-6.6.157.xz 7211724 BLAKE2B 0b1c80d86bc3fac163ef830979d2c3492e6b72ee56f17c18ce561b399a8b36d7292aabd56012bc978a7bd0b319551f7fb86d688a5e974be01a069446058f72b0 SHA512 6aca3405b62daa0e1fac66d5500705d6d780900b2960e2f50449b0db84cb4a1a814e7eadc9d97a3c959262e3cffb8ec63492ee6c3c0af163c1c8f8a10c184e1c
DIST patch-6.6.158.xz 7441668 BLAKE2B 6250c577b430a6ae4883af6d8fba6d5baf5a09cc2ab1365010f1ba53b5b6e1a7b392364a3cd18e3a34b00488ffcf6abf8eef3b7c9137a6e26bfccf41002e93bf SHA512 4c455be321bb92e276bc422d0370297c9e648dd49f32198f5db843bb1caa826b30446aa9bdd1f051c59b97daddbb47e6fe62c2ee122f604b0d226bf14291002f
+DIST patch-7.2.10.xz 1682820 BLAKE2B 9db4b0747500158482beeef395da970547fd0854c4b2d5b637c29c3923a13c89d91a37be2a9e766e7aaece77f2efcd59aafb16ee75202edd9e3af7bb77de54dd SHA512 a7fd8f07ce4aec46cfb5ac1fb52265245bb9a292a28985c3338c3bd59e7d2ebaf47574a6650b6adba926506a3673050b9723e7dfae95f57f51e03ed2bb6f78cb
DIST patch-7.2.9.xz 1567124 BLAKE2B 3697ce331e777fac8d2174fbc9f3abdbd17e355fec94761587cc0d6d841809691be721575c8b298ab22455d0265fe4efcf9fb3572dc0d2be9eb787532a8e8f8c SHA512 7f53f7fb4d7208dabaf257a1f031d188de262897c5a136d332b8fb53903122ad2a599531a679ee365bedac7bbc06f341fa3a4410da9245e8d529ce70fb827d85
diff --git a/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.56.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.56.ebuild
new file mode 100644
index 000000000000..26821b7fcc2b
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-6.18.56.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=20261011
+
+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-7.2.10.ebuild b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.2.10.ebuild
new file mode 100644
index 000000000000..c123ffbf52c1
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-bin/gentoo-kernel-bin-7.2.10.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=20261011
+
+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 44380bd68029..40942bae64ec 100644
--- a/sys-kernel/gentoo-kernel-modprep/Manifest
+++ b/sys-kernel/gentoo-kernel-modprep/Manifest
@@ -4,8 +4,10 @@ DIST gentoo-kernel-modprep-6.12.111.tar.xz 8919804 BLAKE2B 57dd05ed757df0292dfaf
DIST gentoo-kernel-modprep-6.12.112.tar.xz 8905236 BLAKE2B 4e0aaa1a0213feb02390089350915183511fb8e3aba0cfa11f1ce5e0ad687feaeff21b010dfd0df3c1a58f09c59dde679757f404b6899eac486eae0e3219fc3b SHA512 87075dae514a3687ae12e4dd2d086fa95829cf9ceff6e1b79012570b742d6073e060baf66c89cfb16abef90079219208bd45c1f52a2607390dd874eaf6ad96ae
DIST gentoo-kernel-modprep-6.18.54.tar.xz 9618800 BLAKE2B 3cadc29d4d7baac5f147f12e6b92cc14830cd292196efade30a6834aaa88a76bdb215ec4a77f9cade7ad5ad59e7a9fe428d7218a7124e6f199747f1546b16f7a SHA512 30aedf9b5bf04c1f2e1c4f8c642c542c193fe09b8dbe6dc7f4069a5845947576b147d33c1f164a3c0c378e2a3bb0ac821ff52cb60593bc682482247112b46726
DIST gentoo-kernel-modprep-6.18.55.tar.xz 9606724 BLAKE2B 2d282bfda7a14f1446e43203dc2b09bfc1d406b8dfd60bf7c8732663103c32fbb93a87eb902bf45c57b61a6bd37b1406b452ea7b169e5773b73098026132bc17 SHA512 5f5c20bc5b523728c095da2d7d0912c1273e31b60e4eed2edf3e901c838f4c990c2eef4490e109db44da4c9a85e0c2d475adff4ac2f1788cdc0066a87f0255fb
+DIST gentoo-kernel-modprep-6.18.56.tar.xz 9619528 BLAKE2B 62d8aa3c9e270d027c707550e250948506563043f1d86a8f577bf7a976b7546a84d3b0f44b4161e17b1455b34044bcf78a0d2301143db1deed61d57db9aa20da SHA512 cc9d62b35c63f25a2ec86b40316e3798e7673dbed8d31d72cf420dcb4f3b6c560a2b955f56139b4f2af55cd94d209425fde7edf511218b65209f44efa41163e3
DIST gentoo-kernel-modprep-6.6.157.tar.xz 8256156 BLAKE2B 1367734e3acbe6f8a877bdef5b4add258e196f30d5ca7f922cb9533b23e49ddb3ca77d4d962fad2df9c44a84ec85adac3dec65bd18b853e60743b04678c50db0 SHA512 d47bd8210cad1ff66428b2aab3ae5ad90570d6d7278ba47f59b6f39592526953b5896c0e035eb4b8b248a1ea035582e93caf7229044e359511d346ac330d250e
DIST gentoo-kernel-modprep-6.6.158.tar.xz 8267656 BLAKE2B 7c444b912b1157968903441f3c7ea01cb502fc7fefbe813c7244898450a43f3251519bc4a13326ebce3400a55d030b6e12eb33d37f211025f130262d84b3164f SHA512 353b012b3b32b3d2fac93801b0d4064d5ad440a1c5b844310fad555ccb38d4d8445a4a7916074fea900a9f94b7dcab668be3e0203b6b75a0480ab2fbbd547c74
+DIST gentoo-kernel-modprep-7.2.10.tar.xz 10190336 BLAKE2B 5a6a92fb2d6ba706035844ccd2976b68cc761685ec7dedde8373f1bdba34c94fbc4dd9d318ef773eb819818708400ce9efc0d1e8676a5f6522a61e36322636f1 SHA512 c6cf5620173480c8f2981ac46215f295e54c64c377ad6ea6f733e1e82c410713227c4d7aa065c0b8756bef27c061bf81c92e0c2810d80d0a651fa31bf01cf91d
DIST gentoo-kernel-modprep-7.2.9.tar.xz 10179636 BLAKE2B 9b9f236a53ef3afe149335381ba0f65c96fafc709685c72ef5d7b91026479df9d43f4be4569e97603c38d06ecf0c702dd61451f44b62c4e61468e65159b622e2 SHA512 5e6b41fd40e975bbcc67e272e6fc6e8c214db1b1579a42b3a831940f6d9cbb3dae5352a0239c8745ff615a7b574433153fb3b618a5e648af655e07734313c29b
DIST linux-6.1.tar.xz 134728520 BLAKE2B ae60257860b2bd1bd708d183f0443afc60ebbd2b3d535c45e44c2e541bd0928530a3b62de6385dd4e4726ebbedcc0a871d4f3ffb4105b9f1f6d8ed7467f5688e SHA512 6ed2a73c2699d0810e54753715635736fc370288ad5ce95c594f2379959b0e418665cd71bc512a0273fe226fe90074d8b10d14c209080a6466498417a4fdda68
DIST linux-6.12.tar.xz 147906904 BLAKE2B b2ec2fc69218cacabbbe49f78384a5d259ca581b717617c12b000b16f4a4c59ee348ea886b37147f5f70fb9a7a01c1e2c8f19021078f6b23f5bc62d1c48d5e5e SHA512 a37b1823df7b4f72542f689b65882634740ba0401a42fdcf6601d9efd2e132e5a7650e70450ba76f6cd1f13ca31180f2ccee9d54fe4df89bc0000ade4380a548
@@ -15,8 +17,10 @@ DIST linux-6.x-sha256sums-20260914.asc 250340 BLAKE2B 93c4ed0eb9073fb36fdceafb66
DIST linux-6.x-sha256sums-20260921.asc 251026 BLAKE2B 35ad5c29b1fb5ae124f04f949452c90a9ca5b3efce69d768b18f05ad86527acbd61594bb96c7cf8e77ccb9bfc9564d47b06e2e186b6b1a0173f3e0eb4901a949 SHA512 6d4cd01128f4b5148ad27b6a1b38e386262871114237fa62d2ea5b7d96180437a6a29bf34d8ae9d131bb5cebac1a8103deffaf43a1999102e25e728830f6880a
DIST linux-6.x-sha256sums-20260925.asc 251367 BLAKE2B 8b0e090a492d50e4c4e7d968a08ea6d34fc01ae9604f4cf8e859a437690777e29816b36186c7a5c2942c7672f9ee40c228e9c0e701d20ba6170e2818db1fcbf1 SHA512 9c67b790ffcea4588b6e4ada0b7e214df00f67b0e7be7b556e033c4e1e459afee8b4d7231637c2212a37739de20a2442387185bd879f433056f112fcd00c8763
DIST linux-6.x-sha256sums-20261003.asc 252735 BLAKE2B c9a9f38a282f29a998d465075ba156c80fe56a4059cc77909247da8a8d12848ad3046dc7b424bb5e69196b1711c9119b67d66edb66330092094d341d658cec31 SHA512 203652a97a32645909522f8e2862271d93803d47f05304280c669b26b08b97f169b3ba840a0b46a549d5c440e83ba170a8e2cdc188fc80b0e5748272b3015925
+DIST linux-6.x-sha256sums-20261011.asc 253076 BLAKE2B 6ed89e4763ca1aba3f4fd63af531201c6f0771ad7378c0f007bb6783dbf5c676597af014c1ddbdee0ab337cc331720599342cd751e5efaf50e42c73bc6b89f2e SHA512 cd48031347c6b6463208ab828538bcb6ace7ac508fa5915cd5eb96f1806b68f7fdc3dd2cb15177ef1a65398a1ea7ef59d6e63a1d512d97d0c5f80814c91314f2
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261003.asc 13881 BLAKE2B 110b61c6030ca1bd5851a55737a99bad7d6c6cbb791c59e3e2581c48fd6d7c94b39073a91a1532c81fd8bcfd550f6e26681d5e58d8e7c9644558ab9137bd6877 SHA512 7858e309c9a2fcd5a2ac06acf3192fb4bc74ed92417914df3557ad9dc353a50de69acc7c7bf27c857df57f488aa5e57bc598981c009a64ac9f8475c7e57d4c67
+DIST linux-7.x-sha256sums-20261011.asc 14218 BLAKE2B cc4fffdfc99100e6a986a3b6305f05933e6f1a0adb22576e39d9a9766904fe1b91abc3d85263f8075db5a24eb0fb9e71a1a76f00440f3c3996ade46affa4d9fb SHA512 dcec5e0181d11b5fd4d3af8f0a9b9f5c9694515e7e1458068d072af830159aef9616beec011b346caa93266093b66408f8cd5de053dbf3273240b54b436f032a
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
@@ -28,6 +32,8 @@ DIST patch-6.12.111.xz 6351668 BLAKE2B 5c82ae2deb7ee2abffa91f6126b4dbba602cff5ca
DIST patch-6.12.112.xz 6579860 BLAKE2B e0867a6d1c04ac86cb807435ac169c6cf9346bb60381410d8fbfb0fbc4f78ac293f934e84bca8335458930bcf8dc42cfd9203c2854ad3bfb2659186970c5314c SHA512 f6544c78ae6484275f27e0742cc37f3043b9c4d945717ce2627f826609efdb3cd22c47a61497632dd41deb6647e7fd4ccbd7d1e3e9ad8df9fda77823412b6c42
DIST patch-6.18.54.xz 4442704 BLAKE2B 4cacc92a71210f994fb3a2b30a8d46136eb4c0d5796f203f458db47c3ac8c86a92cc57a93832813757dc494a44d09c2692224209e8c31eda1226a22339f3f00d SHA512 9bc159d518172c35540c1ebb82315f56b2052506119017eddae4a3200a21255b56937f452e73eb3799e4a0bf4f7deb814e7c7430223333b9ac6e85c13d532f2f
DIST patch-6.18.55.xz 4532424 BLAKE2B 88ecc8834445f76189c5c7effb6d482f54bd71097afb8843bb63f747cff390293bc570caeae3770b8e5e5592f44b812ae8e9b851012ae0afb97b0304b212e84a SHA512 274d804a47fc28a8260907ac27f2efc95a4668f67d31a036e88c82cdaf16e8a2ba33dce18f7b344595d2cbd60d310e7b6b0ccae6d1f4dab2eb65badb61e8ef66
+DIST patch-6.18.56.xz 4622540 BLAKE2B a55629d145cfb6c4bf7780399423c96670595faa42f033f2a4ed7e011cc7d63683ab78a4d36eeecda5c681813d47dbae389a3e58e2e8cd44e116a74c94aeb61a SHA512 4c903ee382529a67a252baf76477683e1ed13e012a7d5215130ba8a7ff30672107369f7450a03233663ffcb930fdabc11c5e4423c7f5b5a3b5bc9adeab251271
DIST patch-6.6.157.xz 7211724 BLAKE2B 0b1c80d86bc3fac163ef830979d2c3492e6b72ee56f17c18ce561b399a8b36d7292aabd56012bc978a7bd0b319551f7fb86d688a5e974be01a069446058f72b0 SHA512 6aca3405b62daa0e1fac66d5500705d6d780900b2960e2f50449b0db84cb4a1a814e7eadc9d97a3c959262e3cffb8ec63492ee6c3c0af163c1c8f8a10c184e1c
DIST patch-6.6.158.xz 7441668 BLAKE2B 6250c577b430a6ae4883af6d8fba6d5baf5a09cc2ab1365010f1ba53b5b6e1a7b392364a3cd18e3a34b00488ffcf6abf8eef3b7c9137a6e26bfccf41002e93bf SHA512 4c455be321bb92e276bc422d0370297c9e648dd49f32198f5db843bb1caa826b30446aa9bdd1f051c59b97daddbb47e6fe62c2ee122f604b0d226bf14291002f
+DIST patch-7.2.10.xz 1682820 BLAKE2B 9db4b0747500158482beeef395da970547fd0854c4b2d5b637c29c3923a13c89d91a37be2a9e766e7aaece77f2efcd59aafb16ee75202edd9e3af7bb77de54dd SHA512 a7fd8f07ce4aec46cfb5ac1fb52265245bb9a292a28985c3338c3bd59e7d2ebaf47574a6650b6adba926506a3673050b9723e7dfae95f57f51e03ed2bb6f78cb
DIST patch-7.2.9.xz 1567124 BLAKE2B 3697ce331e777fac8d2174fbc9f3abdbd17e355fec94761587cc0d6d841809691be721575c8b298ab22455d0265fe4efcf9fb3572dc0d2be9eb787532a8e8f8c SHA512 7f53f7fb4d7208dabaf257a1f031d188de262897c5a136d332b8fb53903122ad2a599531a679ee365bedac7bbc06f341fa3a4410da9245e8d529ce70fb827d85
diff --git a/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.56.ebuild b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.56.ebuild
new file mode 100644
index 000000000000..c8f89d4549cd
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-6.18.56.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=20261011
+
+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.10.ebuild b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-7.2.10.ebuild
new file mode 100644
index 000000000000..0051b1a98b48
--- /dev/null
+++ b/sys-kernel/gentoo-kernel-modprep/gentoo-kernel-modprep-7.2.10.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=20261011
+
+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 33ba00e79c5a..d32524525490 100644
--- a/sys-kernel/gentoo-kernel/Manifest
+++ b/sys-kernel/gentoo-kernel/Manifest
@@ -13,8 +13,10 @@ DIST linux-6.x-sha256sums-20260914.asc 250340 BLAKE2B 93c4ed0eb9073fb36fdceafb66
DIST linux-6.x-sha256sums-20260921.asc 251026 BLAKE2B 35ad5c29b1fb5ae124f04f949452c90a9ca5b3efce69d768b18f05ad86527acbd61594bb96c7cf8e77ccb9bfc9564d47b06e2e186b6b1a0173f3e0eb4901a949 SHA512 6d4cd01128f4b5148ad27b6a1b38e386262871114237fa62d2ea5b7d96180437a6a29bf34d8ae9d131bb5cebac1a8103deffaf43a1999102e25e728830f6880a
DIST linux-6.x-sha256sums-20260925.asc 251367 BLAKE2B 8b0e090a492d50e4c4e7d968a08ea6d34fc01ae9604f4cf8e859a437690777e29816b36186c7a5c2942c7672f9ee40c228e9c0e701d20ba6170e2818db1fcbf1 SHA512 9c67b790ffcea4588b6e4ada0b7e214df00f67b0e7be7b556e033c4e1e459afee8b4d7231637c2212a37739de20a2442387185bd879f433056f112fcd00c8763
DIST linux-6.x-sha256sums-20261003.asc 252735 BLAKE2B c9a9f38a282f29a998d465075ba156c80fe56a4059cc77909247da8a8d12848ad3046dc7b424bb5e69196b1711c9119b67d66edb66330092094d341d658cec31 SHA512 203652a97a32645909522f8e2862271d93803d47f05304280c669b26b08b97f169b3ba840a0b46a549d5c440e83ba170a8e2cdc188fc80b0e5748272b3015925
+DIST linux-6.x-sha256sums-20261011.asc 253076 BLAKE2B 6ed89e4763ca1aba3f4fd63af531201c6f0771ad7378c0f007bb6783dbf5c676597af014c1ddbdee0ab337cc331720599342cd751e5efaf50e42c73bc6b89f2e SHA512 cd48031347c6b6463208ab828538bcb6ace7ac508fa5915cd5eb96f1806b68f7fdc3dd2cb15177ef1a65398a1ea7ef59d6e63a1d512d97d0c5f80814c91314f2
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261003.asc 13881 BLAKE2B 110b61c6030ca1bd5851a55737a99bad7d6c6cbb791c59e3e2581c48fd6d7c94b39073a91a1532c81fd8bcfd550f6e26681d5e58d8e7c9644558ab9137bd6877 SHA512 7858e309c9a2fcd5a2ac06acf3192fb4bc74ed92417914df3557ad9dc353a50de69acc7c7bf27c857df57f488aa5e57bc598981c009a64ac9f8475c7e57d4c67
+DIST linux-7.x-sha256sums-20261011.asc 14218 BLAKE2B cc4fffdfc99100e6a986a3b6305f05933e6f1a0adb22576e39d9a9766904fe1b91abc3d85263f8075db5a24eb0fb9e71a1a76f00440f3c3996ade46affa4d9fb SHA512 dcec5e0181d11b5fd4d3af8f0a9b9f5c9694515e7e1458068d072af830159aef9616beec011b346caa93266093b66408f8cd5de053dbf3273240b54b436f032a
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
@@ -27,6 +29,8 @@ DIST patch-6.12.111.xz 6351668 BLAKE2B 5c82ae2deb7ee2abffa91f6126b4dbba602cff5ca
DIST patch-6.12.112.xz 6579860 BLAKE2B e0867a6d1c04ac86cb807435ac169c6cf9346bb60381410d8fbfb0fbc4f78ac293f934e84bca8335458930bcf8dc42cfd9203c2854ad3bfb2659186970c5314c SHA512 f6544c78ae6484275f27e0742cc37f3043b9c4d945717ce2627f826609efdb3cd22c47a61497632dd41deb6647e7fd4ccbd7d1e3e9ad8df9fda77823412b6c42
DIST patch-6.18.54.xz 4442704 BLAKE2B 4cacc92a71210f994fb3a2b30a8d46136eb4c0d5796f203f458db47c3ac8c86a92cc57a93832813757dc494a44d09c2692224209e8c31eda1226a22339f3f00d SHA512 9bc159d518172c35540c1ebb82315f56b2052506119017eddae4a3200a21255b56937f452e73eb3799e4a0bf4f7deb814e7c7430223333b9ac6e85c13d532f2f
DIST patch-6.18.55.xz 4532424 BLAKE2B 88ecc8834445f76189c5c7effb6d482f54bd71097afb8843bb63f747cff390293bc570caeae3770b8e5e5592f44b812ae8e9b851012ae0afb97b0304b212e84a SHA512 274d804a47fc28a8260907ac27f2efc95a4668f67d31a036e88c82cdaf16e8a2ba33dce18f7b344595d2cbd60d310e7b6b0ccae6d1f4dab2eb65badb61e8ef66
+DIST patch-6.18.56.xz 4622540 BLAKE2B a55629d145cfb6c4bf7780399423c96670595faa42f033f2a4ed7e011cc7d63683ab78a4d36eeecda5c681813d47dbae389a3e58e2e8cd44e116a74c94aeb61a SHA512 4c903ee382529a67a252baf76477683e1ed13e012a7d5215130ba8a7ff30672107369f7450a03233663ffcb930fdabc11c5e4423c7f5b5a3b5bc9adeab251271
DIST patch-6.6.157.xz 7211724 BLAKE2B 0b1c80d86bc3fac163ef830979d2c3492e6b72ee56f17c18ce561b399a8b36d7292aabd56012bc978a7bd0b319551f7fb86d688a5e974be01a069446058f72b0 SHA512 6aca3405b62daa0e1fac66d5500705d6d780900b2960e2f50449b0db84cb4a1a814e7eadc9d97a3c959262e3cffb8ec63492ee6c3c0af163c1c8f8a10c184e1c
DIST patch-6.6.158.xz 7441668 BLAKE2B 6250c577b430a6ae4883af6d8fba6d5baf5a09cc2ab1365010f1ba53b5b6e1a7b392364a3cd18e3a34b00488ffcf6abf8eef3b7c9137a6e26bfccf41002e93bf SHA512 4c455be321bb92e276bc422d0370297c9e648dd49f32198f5db843bb1caa826b30446aa9bdd1f051c59b97daddbb47e6fe62c2ee122f604b0d226bf14291002f
+DIST patch-7.2.10.xz 1682820 BLAKE2B 9db4b0747500158482beeef395da970547fd0854c4b2d5b637c29c3923a13c89d91a37be2a9e766e7aaece77f2efcd59aafb16ee75202edd9e3af7bb77de54dd SHA512 a7fd8f07ce4aec46cfb5ac1fb52265245bb9a292a28985c3338c3bd59e7d2ebaf47574a6650b6adba926506a3673050b9723e7dfae95f57f51e03ed2bb6f78cb
DIST patch-7.2.9.xz 1567124 BLAKE2B 3697ce331e777fac8d2174fbc9f3abdbd17e355fec94761587cc0d6d841809691be721575c8b298ab22455d0265fe4efcf9fb3572dc0d2be9eb787532a8e8f8c SHA512 7f53f7fb4d7208dabaf257a1f031d188de262897c5a136d332b8fb53903122ad2a599531a679ee365bedac7bbc06f341fa3a4410da9245e8d529ce70fb827d85
diff --git a/sys-kernel/gentoo-kernel/gentoo-kernel-6.18.56.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-6.18.56.ebuild
new file mode 100644
index 000000000000..0b5aaea8f1d8
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-6.18.56.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=20261011
+# 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-7.2.10.ebuild b/sys-kernel/gentoo-kernel/gentoo-kernel-7.2.10.ebuild
new file mode 100644
index 000000000000..9df71f3cd7a2
--- /dev/null
+++ b/sys-kernel/gentoo-kernel/gentoo-kernel-7.2.10.ebuild
@@ -0,0 +1,193 @@
+# 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.5-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261011
+# 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" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config.alpha-smp"
+ )
+ ;;
+ 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.powerpc"
+ )
+ ;;
+ 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.sparc64" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config.sparc64-smp"
+ )
+ ;;
+ 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 c4c5c3253269..23660d5a89bc 100644
--- a/sys-kernel/gentoo-sources/Manifest
+++ b/sys-kernel/gentoo-sources/Manifest
@@ -20,6 +20,8 @@ DIST genpatches-6.18-62.base.tar.xz 4941476 BLAKE2B 691b62f02c811eaf67ce4620fd80
DIST genpatches-6.18-62.extras.tar.xz 2176 BLAKE2B 8996f041ee709eee05059aa16f9f5189519b0ebb585926a9be3491a9cc08a3850d1fa4b989f6628cba0eb631818f0ff33155db2c32329b5d44d53ec076725bc9 SHA512 d00bf3118b90731eb592e37300bdb18889d3f01f7601f17cbfdfce705c23797fe4638521400c29a8bf7feee3f0af6314d8f80afe3a9c90ec44670655c9a647fc
DIST genpatches-6.18-63.base.tar.xz 5063784 BLAKE2B 3645bf1223eb1fb0ca5f594eeeebc3082e9f0454debf698c2484a13356157360fde7a8746ca4854e664648e7f47d5ab863ea36f42d266edce6e9f87505bd7ca3 SHA512 d0b4fe730a5457599ff6e08090659facd87c549d4b42183ef11043124df4afef622843fe3e379596aa900cb6c3bacb5767dcada279bf3fafb61c2c5833996d13
DIST genpatches-6.18-63.extras.tar.xz 2176 BLAKE2B 3a6a2c2eaab9adf3bc1533e9dcd1cb15b5dd0516b9c016bb763fa85234811ed37f4d4550effaea03bc90b2679ab985ad363c65f2604318c91c564913d5cf7545 SHA512 19d965b239f2af1f9f67808b5b42810a098acfaa6808609d8f27705bb3cb33a50c868426cb879e565c2afcbacec93c263f8c2d8054622750b6b18ac333bdb101
+DIST genpatches-6.18-64.base.tar.xz 5185564 BLAKE2B 449de1f7b30b53cf1d4414783a5f0fb21fb0d3ee0e7d9153743b8e4bffc375a5bb5b396e00f491cc33f0dafcd93685d8bae6732b03b457b7fedef8f560dcc3d5 SHA512 8d2e8c8dbb9223ae1b3c6830395abd0b39d205eef7537f37936f833fc55f253dac5b7b49efe121f0cd1178d03003c0311c365dc87afc79fb27d0a3b440d40725
+DIST genpatches-6.18-64.extras.tar.xz 2176 BLAKE2B 344471113abfef2ddf0c546c649aeac8ffac4e98a569d98d5f1cf051ea1c4fd2b5230a92c660477d391da6b7a7252fe6d72c189c65672f68917331146f0b551d SHA512 4cdc8da299767e63427931d51a4f209abf8d328f7efbf0655f6b49186c09893d92d9f1f43f2c1caf883e9779cff67a0d779ea8cadbd3d5363cf2c451ec5442ee
DIST genpatches-6.6-171.base.tar.xz 8794668 BLAKE2B 59c8660afe0581d3814068f4a1984588807ebb464ce6b4e00222784dca0e7d2312bc3578b74631d1c795716ce2fd7191ee1fa467555d04e3e911f9e4154092b6 SHA512 f69296a5e0b888065054f0977e37d58c22e4dd8586c7b8dd82248ae46518f04d2a209e6e0cbdcae7fdce8947bd35d237c4c4ee24003c2ed8b04a3fc73b7169a2
DIST genpatches-6.6-171.experimental.tar.xz 6048 BLAKE2B 0ceb54d9ddf2d5924b658c7b4a35f5ca2b00226de03d7fd96b5097f4533e295b53a5a0269849b6005865552ff5ec4da780abf9a5711886545b17efc61824431d SHA512 9456dc5fe6b9219fc24412ee11b14e2e9d2a92d746a10ab4f596a709811b93d337dcc63d368a597dbe394e8f5b94990c135d35e03abecc641c4b01c7b964d401
DIST genpatches-6.6-171.extras.tar.xz 4032 BLAKE2B 3df3f41a4de0a744c58de290dcd0d26d5163c427da4f9aa3c76a9c742c7f83682ddd6f67df3c1f068abe28f0cd5b71e2098fc39ff37aea6992b412a83cc5c7a6 SHA512 85b6b2824945f7799b8f79a4a814f157b67f2f20e2be7ce267593fa7020e9bfa2cb1bc0eaffee1f855c7ae441a31fd5d8f08ff3721da139460962e04f07affb6
@@ -29,6 +31,9 @@ DIST genpatches-6.6-172.extras.tar.xz 2184 BLAKE2B c4f142d9cd908e5c0311cf614e52c
DIST genpatches-7.2-10.base.tar.xz 1607788 BLAKE2B f6ae6e4c802b0983e4cab43dcccf9dcd4b2cc42ae27b28780f77b64eefd8c8ab1e75707ebc42360565aab7c788348521a67efc19342ae85c637d1e688f5d365f SHA512 9709686351b427223b873bfecbdd7120f7469a3efc96e7d3b9c9abb574f0b167af4e2e8466801137d063866ee06717d8af3941e3e94ce77bf32c2eaac3ca1178
DIST genpatches-7.2-10.experimental.tar.xz 77864 BLAKE2B e2d3a7df30386eddbb00697bd891b179c4ef28ac0a19170e876b24fee03c58cc424f58052c8984490ed62818b0170a345b9973a62876b1f3b6aee7baa08286e5 SHA512 0fbbe12005e3c0d5a5328cac5e3841592b39267c16af6dc4775b84095b8e0c47dc56b34db7ed5abf1f48a0ae6da2fefe316a31c8ad333f2857403299c25b8fde
DIST genpatches-7.2-10.extras.tar.xz 2176 BLAKE2B b59c1662695d0cd5eb2cc7968d1031f7ea7348910f04c23a2e36f4bf144491d20f11309a81e43fd7f311937e730e08cd2a6d13e74e7b5d92f12f77e8498c8065 SHA512 8a27182145dc99ce6d8ac127665eb22b342ed3f5fec3bd97551a80e827746b1ce5a7fc92d636f46c645361511ab0809808daeeaa9fd157a0f67d1c864c686fbe
+DIST genpatches-7.2-11.base.tar.xz 1731972 BLAKE2B aba241cbc1009b3594163a41aba66e2ffa9d339b1b7d1e293eec9f1630b14a21d6b31f1914fc8b6fa04bbb9134e61ef9ba81672d9bbbf294a658f0d319909e51 SHA512 1c61f7426de70c38057638202068bf64344b658902ecdcda8ce22491d423173f80ae6591c0f44a5acac651d76f50db759a3bad57c495147ba1ed392b8bc3bb16
+DIST genpatches-7.2-11.experimental.tar.xz 77856 BLAKE2B 0c4f2b8db5f2b29ab47292b401ee710b7785da8526358d8f4bfad51d87e1763813aecac309d4bf0d4233c4763522347e34ea0ceb43c2f6df0124d40e4af70f81 SHA512 443eca1771988b9b4d534c50443de2ec348e2afbb24e18f5f3d5c432d3c4b13a925a4330b80d40d725152a7e7a02d9790b0de7b4a840d0aa4aa537a29e30b2d4
+DIST genpatches-7.2-11.extras.tar.xz 2176 BLAKE2B 2a99e44f24728318779f5ba24be750c89717c8828ca245e52ee3e1346870fa87fb72a33732e4bb757728469a83454497dbc56eb0269712e14f6c35f30d9fd8f8 SHA512 b99950b41c3afa1bb0698b3cbbeae956fb168a9b40e999cb8d7fe78da5cadde17b2553baae12a2ccd222dd5a305111d9bb142193012c171e236c231e9e657c15
DIST genpatches-7.2-8.base.tar.xz 1316304 BLAKE2B 25e8fa7ae2ce885f737d0fc3e60f2a501b3cb2b77d31b215796cf7bc6214ebab57327b82d055c202923cf0cdbc47a47e12c425f95bba2422d160f399f927bd0a SHA512 ddcd47871bc44d8532f0d81ade22ed07bd419e096119f1c0436ae8ec10fbeb31775c21234edf5ef302ab8ad0eaf568ae4ac7a1ef28136ce8c2c6fdbec7e66515
DIST genpatches-7.2-8.experimental.tar.xz 77880 BLAKE2B 1d15cc1a466a7bafe83ec3cae6487515d78d84df64457123cc623dd49c938cbea2258dc382184206225c70afc70bffb252ed50736075d82bd0e7bed5d7af5430 SHA512 2229adc0e1b79871916327a2e184ec548ce6f7e6cd05be167190ef95bf57660009a2123cf99ac0b0b6bbebc2c42d49dde27e4f1405f2cdc559a53f4e9cea1de5
DIST genpatches-7.2-8.extras.tar.xz 2172 BLAKE2B 4758466a0ab95c2091f148a119bd1e560c7f876f39e54ac516e86abd2062ea2001b44cfdc96e449816cb9df07a5854907db3b26c27fae8e3eab2a184307d9b1b SHA512 3b4957530904115607c978f0bdd9728e25b9ade858edc8477c4c42be651779c1335a15ad2d7ba2eed583ea3c4ee608a4a6bb57c6a28a75342b06845861f8a0b0
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-6.18.56.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-6.18.56.ebuild
new file mode 100644
index 000000000000..b7ecd940a902
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-6.18.56.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="64"
+
+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-7.2.10.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-7.2.10.ebuild
new file mode 100644
index 000000000000..da45dd398877
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-7.2.10.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="11"
+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 2baec5a9cb16..9d317de7b5fa 100644
--- a/sys-kernel/vanilla-kernel/Manifest
+++ b/sys-kernel/vanilla-kernel/Manifest
@@ -15,8 +15,10 @@ DIST linux-6.x-sha256sums-20260914.asc 250340 BLAKE2B 93c4ed0eb9073fb36fdceafb66
DIST linux-6.x-sha256sums-20260921.asc 251026 BLAKE2B 35ad5c29b1fb5ae124f04f949452c90a9ca5b3efce69d768b18f05ad86527acbd61594bb96c7cf8e77ccb9bfc9564d47b06e2e186b6b1a0173f3e0eb4901a949 SHA512 6d4cd01128f4b5148ad27b6a1b38e386262871114237fa62d2ea5b7d96180437a6a29bf34d8ae9d131bb5cebac1a8103deffaf43a1999102e25e728830f6880a
DIST linux-6.x-sha256sums-20260925.asc 251367 BLAKE2B 8b0e090a492d50e4c4e7d968a08ea6d34fc01ae9604f4cf8e859a437690777e29816b36186c7a5c2942c7672f9ee40c228e9c0e701d20ba6170e2818db1fcbf1 SHA512 9c67b790ffcea4588b6e4ada0b7e214df00f67b0e7be7b556e033c4e1e459afee8b4d7231637c2212a37739de20a2442387185bd879f433056f112fcd00c8763
DIST linux-6.x-sha256sums-20261003.asc 252735 BLAKE2B c9a9f38a282f29a998d465075ba156c80fe56a4059cc77909247da8a8d12848ad3046dc7b424bb5e69196b1711c9119b67d66edb66330092094d341d658cec31 SHA512 203652a97a32645909522f8e2862271d93803d47f05304280c669b26b08b97f169b3ba840a0b46a549d5c440e83ba170a8e2cdc188fc80b0e5748272b3015925
+DIST linux-6.x-sha256sums-20261011.asc 253076 BLAKE2B 6ed89e4763ca1aba3f4fd63af531201c6f0771ad7378c0f007bb6783dbf5c676597af014c1ddbdee0ab337cc331720599342cd751e5efaf50e42c73bc6b89f2e SHA512 cd48031347c6b6463208ab828538bcb6ace7ac508fa5915cd5eb96f1806b68f7fdc3dd2cb15177ef1a65398a1ea7ef59d6e63a1d512d97d0c5f80814c91314f2
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST linux-7.x-sha256sums-20261003.asc 13881 BLAKE2B 110b61c6030ca1bd5851a55737a99bad7d6c6cbb791c59e3e2581c48fd6d7c94b39073a91a1532c81fd8bcfd550f6e26681d5e58d8e7c9644558ab9137bd6877 SHA512 7858e309c9a2fcd5a2ac06acf3192fb4bc74ed92417914df3557ad9dc353a50de69acc7c7bf27c857df57f488aa5e57bc598981c009a64ac9f8475c7e57d4c67
+DIST linux-7.x-sha256sums-20261011.asc 14218 BLAKE2B cc4fffdfc99100e6a986a3b6305f05933e6f1a0adb22576e39d9a9766904fe1b91abc3d85263f8075db5a24eb0fb9e71a1a76f00440f3c3996ade46affa4d9fb SHA512 dcec5e0181d11b5fd4d3af8f0a9b9f5c9694515e7e1458068d072af830159aef9616beec011b346caa93266093b66408f8cd5de053dbf3273240b54b436f032a
DIST linux-b19b382f183d421a407f5d708dde1eff5009274d.tar.bz2 1401905 BLAKE2B fdb884e73fe206f91a39e76a76fdb1d703eb0529dc97b7f3129dacd3ae9f33c8acf14820a00facb07e99cee89acdad77b9cb43e95458656eabf375b1bb507b22 SHA512 1a9c210271a8a6b88a304b91a31caa693fbd289babfed8ee7767e834fc860f9a5cb52e457cbc548246cc7816d24490f7568389a71089975edfc4e31bd83f9490
DIST patch-6.1.188.xz 8362360 BLAKE2B 2f97dbb61f5f7f29a009866ccb3ebe10f87b18ef8da32245303edc68a6ad18e80ec27f08bc6bfdcd7a6387139437559e7aa3f30357c298e88c7ed8287875fb9e SHA512 78c57eabe1dbb76fe39add4d54efa8ca3e34af601aa6869e46a6d58d6e9cdcd51cfa03808c167c22996e09c1471fff7bb062631f09e6de60d5b03e9b85822ae2
DIST patch-6.1.189.xz 8545088 BLAKE2B 5f40adb878de59b4d41c27ae0aa4707c63873b452291f74221c47e1391938be0bddd49d3eb597de86fc7818ca94e85f139c40dfbe40b614252391e7ad369ff82 SHA512 dc5a506f62e1f0ad8bf33aad610e9158e22c5a63ddb1bd565976d284d77d61a8ebdf0403c94f75c36e384dfd164809738eac34a451c50e605b65c550ff6d5cb6
@@ -24,6 +26,8 @@ DIST patch-6.12.111.xz 6351668 BLAKE2B 5c82ae2deb7ee2abffa91f6126b4dbba602cff5ca
DIST patch-6.12.112.xz 6579860 BLAKE2B e0867a6d1c04ac86cb807435ac169c6cf9346bb60381410d8fbfb0fbc4f78ac293f934e84bca8335458930bcf8dc42cfd9203c2854ad3bfb2659186970c5314c SHA512 f6544c78ae6484275f27e0742cc37f3043b9c4d945717ce2627f826609efdb3cd22c47a61497632dd41deb6647e7fd4ccbd7d1e3e9ad8df9fda77823412b6c42
DIST patch-6.18.54.xz 4442704 BLAKE2B 4cacc92a71210f994fb3a2b30a8d46136eb4c0d5796f203f458db47c3ac8c86a92cc57a93832813757dc494a44d09c2692224209e8c31eda1226a22339f3f00d SHA512 9bc159d518172c35540c1ebb82315f56b2052506119017eddae4a3200a21255b56937f452e73eb3799e4a0bf4f7deb814e7c7430223333b9ac6e85c13d532f2f
DIST patch-6.18.55.xz 4532424 BLAKE2B 88ecc8834445f76189c5c7effb6d482f54bd71097afb8843bb63f747cff390293bc570caeae3770b8e5e5592f44b812ae8e9b851012ae0afb97b0304b212e84a SHA512 274d804a47fc28a8260907ac27f2efc95a4668f67d31a036e88c82cdaf16e8a2ba33dce18f7b344595d2cbd60d310e7b6b0ccae6d1f4dab2eb65badb61e8ef66
+DIST patch-6.18.56.xz 4622540 BLAKE2B a55629d145cfb6c4bf7780399423c96670595faa42f033f2a4ed7e011cc7d63683ab78a4d36eeecda5c681813d47dbae389a3e58e2e8cd44e116a74c94aeb61a SHA512 4c903ee382529a67a252baf76477683e1ed13e012a7d5215130ba8a7ff30672107369f7450a03233663ffcb930fdabc11c5e4423c7f5b5a3b5bc9adeab251271
DIST patch-6.6.157.xz 7211724 BLAKE2B 0b1c80d86bc3fac163ef830979d2c3492e6b72ee56f17c18ce561b399a8b36d7292aabd56012bc978a7bd0b319551f7fb86d688a5e974be01a069446058f72b0 SHA512 6aca3405b62daa0e1fac66d5500705d6d780900b2960e2f50449b0db84cb4a1a814e7eadc9d97a3c959262e3cffb8ec63492ee6c3c0af163c1c8f8a10c184e1c
DIST patch-6.6.158.xz 7441668 BLAKE2B 6250c577b430a6ae4883af6d8fba6d5baf5a09cc2ab1365010f1ba53b5b6e1a7b392364a3cd18e3a34b00488ffcf6abf8eef3b7c9137a6e26bfccf41002e93bf SHA512 4c455be321bb92e276bc422d0370297c9e648dd49f32198f5db843bb1caa826b30446aa9bdd1f051c59b97daddbb47e6fe62c2ee122f604b0d226bf14291002f
+DIST patch-7.2.10.xz 1682820 BLAKE2B 9db4b0747500158482beeef395da970547fd0854c4b2d5b637c29c3923a13c89d91a37be2a9e766e7aaece77f2efcd59aafb16ee75202edd9e3af7bb77de54dd SHA512 a7fd8f07ce4aec46cfb5ac1fb52265245bb9a292a28985c3338c3bd59e7d2ebaf47574a6650b6adba926506a3673050b9723e7dfae95f57f51e03ed2bb6f78cb
DIST patch-7.2.9.xz 1567124 BLAKE2B 3697ce331e777fac8d2174fbc9f3abdbd17e355fec94761587cc0d6d841809691be721575c8b298ab22455d0265fe4efcf9fb3572dc0d2be9eb787532a8e8f8c SHA512 7f53f7fb4d7208dabaf257a1f031d188de262897c5a136d332b8fb53903122ad2a599531a679ee365bedac7bbc06f341fa3a4410da9245e8d529ce70fb827d85
diff --git a/sys-kernel/vanilla-kernel/vanilla-kernel-6.18.56.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-6.18.56.ebuild
new file mode 100644
index 000000000000..426a34387c0c
--- /dev/null
+++ b/sys-kernel/vanilla-kernel/vanilla-kernel-6.18.56.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=20261011
+# 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-7.2.10.ebuild b/sys-kernel/vanilla-kernel/vanilla-kernel-7.2.10.ebuild
new file mode 100644
index 000000000000..24afeedbd1a3
--- /dev/null
+++ b/sys-kernel/vanilla-kernel/vanilla-kernel-7.2.10.ebuild
@@ -0,0 +1,183 @@
+# 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.5-gentoo
+GENTOO_CONFIG_P=gentoo-kernel-config-g19
+SHA256SUM_DATE=20261011
+# 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" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/alpha/config.alpha-smp"
+ )
+ ;;
+ 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.powerpc"
+ )
+ ;;
+ 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.sparc64" \
+ "${WORKDIR}/linux-${DEBIAN_COMMIT}/debian/config/sparc64/config.sparc64-smp"
+ )
+ ;;
+ 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 677f396a3665..35862ba125ea 100644
--- a/sys-kernel/vanilla-sources/Manifest
+++ b/sys-kernel/vanilla-sources/Manifest
@@ -5,6 +5,6 @@ DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f
DIST linux-7.2.tar.xz 160068116 BLAKE2B cf5f3d87b96f223034c47c6e5fc972fe52c2556310eb2f064632537b8727231135a8540179fd5d51343738c8a51f51f09c7e8da374324b68551c84a4124bb71b SHA512 47e63679363261a864d271277340a6f2d45f544e1a056be4159df081f4f6537d0efa865c4af26611ab33a3079ee65db88ec2f6bc0e5fff43e0c043cde0cd91e1
DIST patch-6.1.189.xz 8545088 BLAKE2B 5f40adb878de59b4d41c27ae0aa4707c63873b452291f74221c47e1391938be0bddd49d3eb597de86fc7818ca94e85f139c40dfbe40b614252391e7ad369ff82 SHA512 dc5a506f62e1f0ad8bf33aad610e9158e22c5a63ddb1bd565976d284d77d61a8ebdf0403c94f75c36e384dfd164809738eac34a451c50e605b65c550ff6d5cb6
DIST patch-6.12.112.xz 6579860 BLAKE2B e0867a6d1c04ac86cb807435ac169c6cf9346bb60381410d8fbfb0fbc4f78ac293f934e84bca8335458930bcf8dc42cfd9203c2854ad3bfb2659186970c5314c SHA512 f6544c78ae6484275f27e0742cc37f3043b9c4d945717ce2627f826609efdb3cd22c47a61497632dd41deb6647e7fd4ccbd7d1e3e9ad8df9fda77823412b6c42
-DIST patch-6.18.55.xz 4532424 BLAKE2B 88ecc8834445f76189c5c7effb6d482f54bd71097afb8843bb63f747cff390293bc570caeae3770b8e5e5592f44b812ae8e9b851012ae0afb97b0304b212e84a SHA512 274d804a47fc28a8260907ac27f2efc95a4668f67d31a036e88c82cdaf16e8a2ba33dce18f7b344595d2cbd60d310e7b6b0ccae6d1f4dab2eb65badb61e8ef66
+DIST patch-6.18.56.xz 4622540 BLAKE2B a55629d145cfb6c4bf7780399423c96670595faa42f033f2a4ed7e011cc7d63683ab78a4d36eeecda5c681813d47dbae389a3e58e2e8cd44e116a74c94aeb61a SHA512 4c903ee382529a67a252baf76477683e1ed13e012a7d5215130ba8a7ff30672107369f7450a03233663ffcb930fdabc11c5e4423c7f5b5a3b5bc9adeab251271
DIST patch-6.6.157.xz 7211724 BLAKE2B 0b1c80d86bc3fac163ef830979d2c3492e6b72ee56f17c18ce561b399a8b36d7292aabd56012bc978a7bd0b319551f7fb86d688a5e974be01a069446058f72b0 SHA512 6aca3405b62daa0e1fac66d5500705d6d780900b2960e2f50449b0db84cb4a1a814e7eadc9d97a3c959262e3cffb8ec63492ee6c3c0af163c1c8f8a10c184e1c
-DIST patch-7.2.9.xz 1567124 BLAKE2B 3697ce331e777fac8d2174fbc9f3abdbd17e355fec94761587cc0d6d841809691be721575c8b298ab22455d0265fe4efcf9fb3572dc0d2be9eb787532a8e8f8c SHA512 7f53f7fb4d7208dabaf257a1f031d188de262897c5a136d332b8fb53903122ad2a599531a679ee365bedac7bbc06f341fa3a4410da9245e8d529ce70fb827d85
+DIST patch-7.2.10.xz 1682820 BLAKE2B 9db4b0747500158482beeef395da970547fd0854c4b2d5b637c29c3923a13c89d91a37be2a9e766e7aaece77f2efcd59aafb16ee75202edd9e3af7bb77de54dd SHA512 a7fd8f07ce4aec46cfb5ac1fb52265245bb9a292a28985c3338c3bd59e7d2ebaf47574a6650b6adba926506a3673050b9723e7dfae95f57f51e03ed2bb6f78cb
diff --git a/sys-kernel/vanilla-sources/vanilla-sources-6.18.55.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-6.18.56.ebuild
index 99d9dcaf656f..99d9dcaf656f 100644
--- a/sys-kernel/vanilla-sources/vanilla-sources-6.18.55.ebuild
+++ b/sys-kernel/vanilla-sources/vanilla-sources-6.18.56.ebuild
diff --git a/sys-kernel/vanilla-sources/vanilla-sources-7.2.9.ebuild b/sys-kernel/vanilla-sources/vanilla-sources-7.2.10.ebuild
index 99d9dcaf656f..99d9dcaf656f 100644
--- a/sys-kernel/vanilla-sources/vanilla-sources-7.2.9.ebuild
+++ b/sys-kernel/vanilla-sources/vanilla-sources-7.2.10.ebuild
diff --git a/sys-libs/libxcrypt/libxcrypt-4.5.2.ebuild b/sys-libs/libxcrypt/libxcrypt-4.5.2.ebuild
index 26237df230aa..6ea426415c63 100644
--- a/sys-libs/libxcrypt/libxcrypt-4.5.2.ebuild
+++ b/sys-libs/libxcrypt/libxcrypt-4.5.2.ebuild
@@ -21,7 +21,7 @@ fi
LICENSE="LGPL-2.1+ public-domain BSD BSD-2"
SLOT="0/1"
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+compat static-libs +system test headers-only"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/readline/readline-8.3_p6.ebuild b/sys-libs/readline/readline-8.3_p6.ebuild
index 0976a544fc48..c8f52140a000 100644
--- a/sys-libs/readline/readline-8.3_p6.ebuild
+++ b/sys-libs/readline/readline-8.3_p6.ebuild
@@ -78,7 +78,7 @@ fi
LICENSE="GPL-3+"
SLOT="0/8" # subslot matches SONAME major
if (( PLEVEL >= 0 )); then
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~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"
fi
IUSE="static-libs +unicode utils"
diff --git a/sys-libs/timezone-data/timezone-data-2026c.ebuild b/sys-libs/timezone-data/timezone-data-2026c.ebuild
index 5763d8f28bc8..4d726575e9e9 100644
--- a/sys-libs/timezone-data/timezone-data-2026c.ebuild
+++ b/sys-libs/timezone-data/timezone-data-2026c.ebuild
@@ -14,7 +14,7 @@ S="${WORKDIR}"/tzdb-${PV}
LICENSE="BSD public-domain"
SLOT="0"
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~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"
IUSE="nls leaps-timezone zic-slim"
DEPEND="nls? ( virtual/libintl )"
diff --git a/sys-process/audit/audit-4.2.1.ebuild b/sys-process/audit/audit-4.2.1.ebuild
index ed9cae60ab70..4acfb23cc09b 100644
--- a/sys-process/audit/audit-4.2.1.ebuild
+++ b/sys-process/audit/audit-4.2.1.ebuild
@@ -20,7 +20,7 @@ S="${WORKDIR}/audit-userspace-${PV}"
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="build gssapi io-uring ldap python ssl static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
diff --git a/virtual/dist-kernel/dist-kernel-6.18.56.ebuild b/virtual/dist-kernel/dist-kernel-6.18.56.ebuild
new file mode 100644
index 000000000000..3e0fb5394edd
--- /dev/null
+++ b/virtual/dist-kernel/dist-kernel-6.18.56.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-7.2.10.ebuild b/virtual/dist-kernel/dist-kernel-7.2.10.ebuild
new file mode 100644
index 000000000000..c6e96ed25616
--- /dev/null
+++ b/virtual/dist-kernel/dist-kernel-7.2.10.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-client/librewolf-bin/metadata.xml b/www-client/librewolf-bin/metadata.xml
index bfa4fab6d9d8..716d1a389726 100644
--- a/www-client/librewolf-bin/metadata.xml
+++ b/www-client/librewolf-bin/metadata.xml
@@ -5,5 +5,14 @@
<email>james@thegreatmcpain.xyz</email>
<name>James McClain</name>
</maintainer>
+ <maintainer type="project">
+ <email>mozilla@gentoo.org</email>
+ <name>Gentoo Mozilla Team</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://librewolf.dev/librewolf/issues</bugs-to>
+ <changelog>https://librewolf.dev/librewolf/bsys6/releases</changelog>
+ <doc>https://librewolf.net/docs/faq/</doc>
+ </upstream>
<origin>srcux</origin>
</pkgmetadata>
diff --git a/www-client/librewolf/metadata.xml b/www-client/librewolf/metadata.xml
index ce966a874131..eda478666e95 100644
--- a/www-client/librewolf/metadata.xml
+++ b/www-client/librewolf/metadata.xml
@@ -1,6 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd">
<pkgmetadata>
+ <maintainer type="person">
+ <email>james@thegreatmcpain.xyz</email>
+ <name>James McClain</name>
+ </maintainer>
<maintainer type="project">
<email>mozilla@gentoo.org</email>
<name>Gentoo Mozilla Team</name>
@@ -41,5 +45,10 @@
<flag name="wifi">Enable necko-wifi for NetworkManager integration, and access point MAC
address scanning for better precision with opt-in geolocation services</flag>
</use>
+ <upstream>
+ <bugs-to>https://librewolf.dev/librewolf/issues</bugs-to>
+ <changelog>https://librewolf.dev/librewolf/bsys6/releases</changelog>
+ <doc>https://librewolf.net/docs/faq/</doc>
+ </upstream>
<origin>srcux</origin>
</pkgmetadata>
diff --git a/x11-misc/pcmanfm-qt/pcmanfm-qt-2.4.1.ebuild b/x11-misc/pcmanfm-qt/pcmanfm-qt-2.4.1.ebuild
index 7b4dc6815782..f42147db46ea 100644
--- a/x11-misc/pcmanfm-qt/pcmanfm-qt-2.4.1.ebuild
+++ b/x11-misc/pcmanfm-qt/pcmanfm-qt-2.4.1.ebuild
@@ -18,7 +18,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/lxqt/${PN}.git"
else
SRC_URI="https://github.com/lxqt/${PN}/releases/download/${PV}/${P}.tar.xz"
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86"
fi
LICENSE="GPL-2 GPL-2+ LGPL-2.1+"