summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-04-22 06:58:07 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-04-22 06:58:07 +0000
commitbb96bc8d0f3302220568a00ac7f22af7936889dc (patch)
treeff383ced0ef617338152c81c327a4ab3af61c93a
parent5518d4fe34f4c2539c0be73c806f1614be941a7c (diff)
downloadbaldeagleos-repo-bb96bc8d0f3302220568a00ac7f22af7936889dc.tar.gz
baldeagleos-repo-bb96bc8d0f3302220568a00ac7f22af7936889dc.tar.xz
baldeagleos-repo-bb96bc8d0f3302220568a00ac7f22af7936889dc.zip
Adding metadata
-rw-r--r--app-admin/awscli/Manifest1
-rw-r--r--app-admin/awscli/awscli-1.38.38.ebuild93
-rw-r--r--app-containers/containers-common/Manifest1
-rw-r--r--app-containers/containers-common/containers-common-0.63.0.ebuild83
-rw-r--r--app-containers/podman/podman-5.4.2.ebuild4
-rw-r--r--app-containers/podman/podman-9999.ebuild4
-rw-r--r--app-emulation/wine-desktop-common/wine-desktop-common-20150204-r2.ebuild2
-rw-r--r--app-emulation/wine-staging/wine-staging-10.5-r1.ebuild2
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-10.6.ebuild2
-rw-r--r--app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild2
-rw-r--r--app-misc/broot/broot-1.45.0.ebuild2
-rw-r--r--dev-ada/gnatcoll-bindings/gnatcoll-bindings-25.0.0.ebuild2
-rw-r--r--dev-cpp/edencommon/Manifest1
-rw-r--r--dev-cpp/edencommon/edencommon-2025.04.14.00.ebuild67
-rw-r--r--dev-cpp/fb303/Manifest1
-rw-r--r--dev-cpp/fb303/fb303-2025.04.14.00.ebuild53
-rw-r--r--dev-cpp/fb303/files/fb303-2025.04.14.00-Fix-using-the-Thrift-annotation-library-for-the-Pyth.patch28
-rw-r--r--dev-cpp/fbthrift/Manifest1
-rw-r--r--dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild60
-rw-r--r--dev-cpp/fbthrift/files/fbthrift-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch27
-rw-r--r--dev-cpp/fizz/Manifest1
-rw-r--r--dev-cpp/fizz/fizz-2025.04.14.00.ebuild57
-rw-r--r--dev-cpp/folly/Manifest1
-rw-r--r--dev-cpp/folly/files/folly-2025.04.14.00-force-liburing-off.patch27
-rw-r--r--dev-cpp/folly/folly-2025.04.14.00.ebuild121
-rw-r--r--dev-cpp/mvfst/Manifest1
-rw-r--r--dev-cpp/mvfst/mvfst-2025.04.14.00.ebuild63
-rw-r--r--dev-cpp/wangle/Manifest1
-rw-r--r--dev-cpp/wangle/wangle-2025.04.14.00.ebuild69
-rw-r--r--dev-cpp/xsimd/xsimd-13.1.0.ebuild2
-rw-r--r--dev-go/golangci-lint/Manifest2
-rw-r--r--dev-go/golangci-lint/golangci-lint-2.1.2.ebuild46
-rw-r--r--dev-lang/ocaml/Manifest2
-rw-r--r--dev-lang/ocaml/ocaml-5.2.0-r1.ebuild108
-rw-r--r--dev-lang/ocaml/ocaml-5.2.1-r1.ebuild108
-rw-r--r--dev-ml/camlp4/Manifest1
-rw-r--r--dev-ml/camlp4/camlp4-5.2_p1.ebuild58
-rw-r--r--dev-ml/core_bench/core_bench-0.17.0.ebuild2
-rw-r--r--dev-ml/core_extended/core_extended-0.17.0.ebuild4
-rw-r--r--dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild4
-rw-r--r--dev-ml/record_builder/record_builder-0.17.0.ebuild4
-rw-r--r--dev-python/aiohttp/Manifest1
-rw-r--r--dev-python/aiohttp/aiohttp-3.11.18.ebuild146
-rw-r--r--dev-python/bitarray/bitarray-3.3.1.ebuild2
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.37.38.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.37.38.ebuild67
-rw-r--r--dev-python/bottle/Manifest1
-rw-r--r--dev-python/bottle/bottle-0.13.3.ebuild34
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-1.34.1.ebuild61
-rw-r--r--dev-python/coverage/coverage-7.8.0.ebuild2
-rw-r--r--dev-python/jellyfish/Manifest23
-rw-r--r--dev-python/jellyfish/jellyfish-1.1.3.ebuild79
-rw-r--r--dev-python/jellyfish/jellyfish-1.2.0.ebuild2
-rw-r--r--dev-python/pyzmq/pyzmq-26.4.0.ebuild2
-rw-r--r--dev-python/recurring-ical-events/Manifest2
-rw-r--r--dev-python/recurring-ical-events/recurring-ical-events-3.7.0.ebuild (renamed from dev-python/recurring-ical-events/recurring-ical-events-3.6.0.ebuild)0
-rw-r--r--dev-python/setuptools-rust/setuptools-rust-1.11.1.ebuild2
-rw-r--r--dev-python/stestr/Manifest1
-rw-r--r--dev-python/stestr/stestr-4.2.0.ebuild43
-rw-r--r--dev-python/stripe/Manifest1
-rw-r--r--dev-python/stripe/stripe-12.0.1.ebuild95
-rw-r--r--dev-python/symengine/Manifest1
-rw-r--r--dev-python/symengine/symengine-0.14.1.ebuild53
-rw-r--r--dev-python/uncertainties/Manifest2
-rw-r--r--dev-python/uncertainties/uncertainties-3.2.3.ebuild (renamed from dev-python/uncertainties/uncertainties-3.2.1.ebuild)2
-rw-r--r--dev-python/zeroconf/zeroconf-0.146.3.ebuild2
-rw-r--r--dev-qt/qtxml/qtxml-5.15.16.ebuild29
-rw-r--r--dev-ruby/async-pool/Manifest1
-rw-r--r--dev-ruby/async-pool/async-pool-0.10.3.ebuild2
-rw-r--r--dev-ruby/async-pool/async-pool-0.7.0.ebuild34
-rw-r--r--dev-ruby/io-endpoint/io-endpoint-0.15.2.ebuild2
-rw-r--r--dev-ruby/pkg-config/pkg-config-1.5.9.ebuild2
-rw-r--r--dev-ruby/psych/psych-5.2.3.ebuild2
-rw-r--r--dev-util/kernelshark/kernelshark-2.3.2-r1.ebuild (renamed from dev-util/kernelshark/kernelshark-2.3.2.ebuild)1
-rw-r--r--dev-util/kernelshark/kernelshark-2.4.0-r1.ebuild (renamed from dev-util/kernelshark/kernelshark-2.4.0.ebuild)1
-rw-r--r--dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild50
-rw-r--r--dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild48
-rw-r--r--dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild18
-rw-r--r--dev-util/nvidia-cuda-toolkit/Manifest3
-rw-r--r--dev-util/nvidia-cuda-toolkit/files/parse_manifest.py20
-rw-r--r--dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1-r1.ebuild333
-rw-r--r--dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild16
-rw-r--r--dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r3.ebuild380
-rw-r--r--dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild16
-rw-r--r--dev-util/reuse/reuse-5.0.2.ebuild4
-rw-r--r--dev-util/unicorn/unicorn-2.1.3.ebuild2
-rw-r--r--dev-util/watchman/Manifest70
-rw-r--r--dev-util/watchman/watchman-2025.04.14.00.ebuild375
-rw-r--r--kde-frameworks/kcontacts/kcontacts-6.13.0.ebuild4
-rw-r--r--kde-plasma/kwin/files/kwin-6.3.4-0006-gpu-reset-crash.patch39
-rw-r--r--kde-plasma/kwin/kwin-6.3.4-r2.ebuild (renamed from kde-plasma/kwin/kwin-6.3.4.ebuild)9
-rw-r--r--media-gfx/blender-bin/Manifest3
-rw-r--r--media-gfx/blender-bin/blender-bin-3.6.22.ebuild179
-rw-r--r--media-gfx/blender-bin/blender-bin-4.2.9.ebuild202
-rw-r--r--media-gfx/blender-bin/blender-bin-4.4.1.ebuild202
-rw-r--r--media-gfx/blender/Manifest5
-rw-r--r--media-gfx/blender/blender-3.6.18-r1.ebuild447
-rw-r--r--media-gfx/blender/blender-4.2.4-r2.ebuild34
-rw-r--r--media-gfx/blender/blender-4.2.9.ebuild (renamed from media-gfx/blender/blender-4.3.2-r2.ebuild)40
-rw-r--r--media-gfx/blender/blender-4.3.2-r3.ebuild (renamed from media-gfx/blender/blender-4.1.1-r5.ebuild)448
-rw-r--r--media-gfx/blender/blender-4.4.1.ebuild841
-rw-r--r--media-gfx/blender/blender-9999.ebuild656
-rw-r--r--media-gfx/blender/files/blender-4.2.9-python3.12.patch68
-rw-r--r--media-gfx/blender/files/blender-4.2.9-python3.12_1.patch39
-rw-r--r--media-gfx/blender/files/blender-4.2.9-python3.13.patch626
-rw-r--r--media-gfx/blender/files/blender-4.3.2-openvdb-12.patch76
-rw-r--r--media-gfx/blender/files/blender-4.3.2-optix-8.1.0.patch34
-rw-r--r--media-gfx/blender/files/blender-4.3.2-system-gtest.patch57
-rw-r--r--media-gfx/blender/files/blender-4.4.0-optix-compile-flags.patch43
-rw-r--r--media-gfx/blender/metadata.xml10
-rw-r--r--media-libs/babl/babl-0.1.112.ebuild2
-rw-r--r--media-libs/gegl/gegl-0.4.58.ebuild2
-rw-r--r--media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild2
-rw-r--r--media-libs/libheif/libheif-1.19.7.ebuild2
-rw-r--r--media-libs/osl/Manifest1
-rw-r--r--media-libs/osl/osl-1.12.14.0-r3.ebuild420
-rw-r--r--media-libs/osl/osl-1.13.10.0-r1.ebuild2
-rw-r--r--media-libs/osl/osl-1.13.12.0-r1.ebuild2
-rw-r--r--media-libs/osl/osl-9999.ebuild2
-rw-r--r--media-libs/qhull/Manifest1
-rw-r--r--media-libs/qhull/files/qhull-2020.2.8.1_alpha4-update-version-alpha3.patch55
-rw-r--r--media-libs/qhull/metadata.xml3
-rw-r--r--media-libs/qhull/qhull-2020.2-r3.ebuild2
-rw-r--r--media-libs/qhull/qhull-2020.2.8.1_alpha4.ebuild77
-rw-r--r--media-sound/liblc3/liblc3-1.1.3.ebuild2
-rw-r--r--media-sound/mac/Manifest1
-rw-r--r--media-sound/mac/mac-10.96.ebuild28
-rw-r--r--metadata/md5-cache/app-admin/awscli-1.38.3816
-rw-r--r--metadata/md5-cache/app-containers/containers-common-0.63.014
-rw-r--r--metadata/md5-cache/app-containers/podman-5.4.22
-rw-r--r--metadata/md5-cache/app-containers/podman-99992
-rw-r--r--metadata/md5-cache/app-emulation/wine-desktop-common-20150204-r24
-rw-r--r--metadata/md5-cache/app-emulation/wine-staging-10.5-r14
-rw-r--r--metadata/md5-cache/app-emulation/wine-vanilla-10.64
-rw-r--r--metadata/md5-cache/app-eselect/eselect-wine-2.0.2-r24
-rw-r--r--metadata/md5-cache/app-misc/broot-1.45.04
-rw-r--r--metadata/md5-cache/dev-ada/gnatcoll-bindings-25.0.04
-rw-r--r--metadata/md5-cache/dev-cpp/edencommon-2025.04.14.0016
-rw-r--r--metadata/md5-cache/dev-cpp/fb303-2025.04.14.0016
-rw-r--r--metadata/md5-cache/dev-cpp/fbthrift-2025.04.14.0016
-rw-r--r--metadata/md5-cache/dev-cpp/fizz-2025.04.14.0015
-rw-r--r--metadata/md5-cache/dev-cpp/folly-2025.04.14.0016
-rw-r--r--metadata/md5-cache/dev-cpp/mvfst-2025.04.14.0016
-rw-r--r--metadata/md5-cache/dev-cpp/wangle-2025.04.14.0016
-rw-r--r--metadata/md5-cache/dev-cpp/xsimd-13.1.04
-rw-r--r--metadata/md5-cache/dev-go/golangci-lint-2.1.213
-rw-r--r--metadata/md5-cache/dev-lang/ocaml-5.2.0-r116
-rw-r--r--metadata/md5-cache/dev-lang/ocaml-5.2.1-r116
-rw-r--r--metadata/md5-cache/dev-ml/camlp4-5.2_p114
-rw-r--r--metadata/md5-cache/dev-ml/core_bench-0.17.04
-rw-r--r--metadata/md5-cache/dev-ml/core_extended-0.17.06
-rw-r--r--metadata/md5-cache/dev-ml/delimited_parsing-0.17.06
-rw-r--r--metadata/md5-cache/dev-ml/record_builder-0.17.06
-rw-r--r--metadata/md5-cache/dev-python/aiohttp-3.11.1817
-rw-r--r--metadata/md5-cache/dev-python/bitarray-3.3.14
-rw-r--r--metadata/md5-cache/dev-python/boto3-1.37.3816
-rw-r--r--metadata/md5-cache/dev-python/botocore-1.37.3816
-rw-r--r--metadata/md5-cache/dev-python/bottle-0.13.316
-rw-r--r--metadata/md5-cache/dev-python/cfn-lint-1.34.116
-rw-r--r--metadata/md5-cache/dev-python/coverage-7.8.04
-rw-r--r--metadata/md5-cache/dev-python/jellyfish-1.1.317
-rw-r--r--metadata/md5-cache/dev-python/jellyfish-1.2.04
-rw-r--r--metadata/md5-cache/dev-python/pyzmq-26.4.04
-rw-r--r--metadata/md5-cache/dev-python/recurring-ical-events-3.7.0 (renamed from metadata/md5-cache/dev-python/recurring-ical-events-3.6.0)2
-rw-r--r--metadata/md5-cache/dev-python/setuptools-rust-1.11.14
-rw-r--r--metadata/md5-cache/dev-python/stestr-4.2.016
-rw-r--r--metadata/md5-cache/dev-python/stripe-12.0.116
-rw-r--r--metadata/md5-cache/dev-python/symengine-0.14.117
-rw-r--r--metadata/md5-cache/dev-python/uncertainties-3.2.3 (renamed from metadata/md5-cache/dev-python/uncertainties-3.2.1)4
-rw-r--r--metadata/md5-cache/dev-python/zeroconf-0.146.34
-rw-r--r--metadata/md5-cache/dev-qt/qtxml-5.15.1616
-rw-r--r--metadata/md5-cache/dev-ruby/async-pool-0.10.312
-rw-r--r--metadata/md5-cache/dev-ruby/async-pool-0.7.017
-rw-r--r--metadata/md5-cache/dev-ruby/io-endpoint-0.15.212
-rw-r--r--metadata/md5-cache/dev-ruby/pkg-config-1.5.94
-rw-r--r--metadata/md5-cache/dev-ruby/psych-5.2.34
-rw-r--r--metadata/md5-cache/dev-util/kernelshark-2.3.2-r1 (renamed from metadata/md5-cache/dev-util/kernelshark-2.3.2)6
-rw-r--r--metadata/md5-cache/dev-util/kernelshark-2.4.0-r1 (renamed from metadata/md5-cache/dev-util/kernelshark-2.4.0)6
-rw-r--r--metadata/md5-cache/dev-util/nsight-compute-2025.1.1.26
-rw-r--r--metadata/md5-cache/dev-util/nsight-graphics-2025.2.06
-rw-r--r--metadata/md5-cache/dev-util/nsight-systems-2025.2.16
-rw-r--r--metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.1-r115
-rw-r--r--metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.36
-rw-r--r--metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.0-r316
-rw-r--r--metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.16
-rw-r--r--metadata/md5-cache/dev-util/reuse-5.0.24
-rw-r--r--metadata/md5-cache/dev-util/unicorn-2.1.34
-rw-r--r--metadata/md5-cache/dev-util/watchman-2025.04.14.0017
-rw-r--r--metadata/md5-cache/kde-frameworks/kcontacts-6.13.02
-rw-r--r--metadata/md5-cache/kde-plasma/kwin-6.3.4-r2 (renamed from metadata/md5-cache/kde-plasma/kwin-6.3.4)2
-rw-r--r--metadata/md5-cache/media-gfx/blender-3.6.18-r117
-rw-r--r--metadata/md5-cache/media-gfx/blender-4.2.4-r28
-rw-r--r--metadata/md5-cache/media-gfx/blender-4.2.9 (renamed from metadata/md5-cache/media-gfx/blender-4.1.1-r5)14
-rw-r--r--metadata/md5-cache/media-gfx/blender-4.3.2-r217
-rw-r--r--metadata/md5-cache/media-gfx/blender-4.3.2-r317
-rw-r--r--metadata/md5-cache/media-gfx/blender-4.4.117
-rw-r--r--metadata/md5-cache/media-gfx/blender-999920
-rw-r--r--metadata/md5-cache/media-gfx/blender-bin-3.6.2214
-rw-r--r--metadata/md5-cache/media-gfx/blender-bin-4.2.914
-rw-r--r--metadata/md5-cache/media-gfx/blender-bin-4.4.114
-rw-r--r--metadata/md5-cache/media-libs/babl-0.1.1124
-rw-r--r--metadata/md5-cache/media-libs/gegl-0.4.584
-rw-r--r--metadata/md5-cache/media-libs/libdisplay-info-0.2.0-r14
-rw-r--r--metadata/md5-cache/media-libs/libheif-1.19.74
-rw-r--r--metadata/md5-cache/media-libs/osl-1.12.14.0-r317
-rw-r--r--metadata/md5-cache/media-libs/osl-1.13.10.0-r110
-rw-r--r--metadata/md5-cache/media-libs/osl-1.13.12.0-r110
-rw-r--r--metadata/md5-cache/media-libs/osl-999910
-rw-r--r--metadata/md5-cache/media-libs/qhull-2020.2-r32
-rw-r--r--metadata/md5-cache/media-libs/qhull-2020.2.8.1_alpha415
-rw-r--r--metadata/md5-cache/media-sound/liblc3-1.1.34
-rw-r--r--metadata/md5-cache/media-sound/mac-10.9612
-rw-r--r--metadata/md5-cache/net-analyzer/dhcpdump-1.914
-rw-r--r--metadata/md5-cache/net-libs/libcapi-3.2.34
-rw-r--r--metadata/md5-cache/net-mail/isync-1.5.1 (renamed from metadata/md5-cache/net-mail/isync-1.4.4)4
-rw-r--r--metadata/md5-cache/net-misc/miniupnpd-2.3.915
-rw-r--r--metadata/md5-cache/net-misc/passt-2025.04.1512
-rw-r--r--metadata/md5-cache/net-misc/passt-99992
-rw-r--r--metadata/md5-cache/net-proxy/sshuttle-1.3.14
-rw-r--r--metadata/md5-cache/net-wireless/aic8800-1.0.616
-rw-r--r--metadata/md5-cache/net-wireless/dump1090-10.0.14
-rw-r--r--metadata/md5-cache/net-wireless/dump1090-9.015
-rw-r--r--metadata/md5-cache/net-wireless/dump1090-99992
-rw-r--r--metadata/md5-cache/sys-apps/cyme-2.2.0 (renamed from metadata/md5-cache/sys-apps/cyme-2.1.2)6
-rw-r--r--metadata/md5-cache/www-client/elinks-0.18.04
-rw-r--r--metadata/md5-cache/www-client/httrack-3.49.6 (renamed from metadata/md5-cache/www-client/httrack-3.49.4)4
-rw-r--r--metadata/md5-cache/x11-misc/kdocker-6.24
-rw-r--r--metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.3.212
-rw-r--r--metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.4.04
-rw-r--r--net-analyzer/dhcpdump/Manifest1
-rw-r--r--net-analyzer/dhcpdump/dhcpdump-1.9.ebuild30
-rw-r--r--net-analyzer/dhcpdump/metadata.xml6
-rw-r--r--net-libs/libcapi/libcapi-3.2.3.ebuild4
-rw-r--r--net-mail/isync/Manifest2
-rw-r--r--net-mail/isync/isync-1.5.1.ebuild (renamed from net-mail/isync/isync-1.4.4.ebuild)5
-rw-r--r--net-misc/miniupnpd/Manifest2
-rw-r--r--net-misc/miniupnpd/miniupnpd-2.3.9.ebuild108
-rw-r--r--net-misc/passt/Manifest1
-rw-r--r--net-misc/passt/passt-2025.04.15.ebuild38
-rw-r--r--net-misc/passt/passt-9999.ebuild2
-rw-r--r--net-proxy/sshuttle/sshuttle-1.3.1.ebuild2
-rw-r--r--net-wireless/aic8800/Manifest1
-rw-r--r--net-wireless/aic8800/aic8800-1.0.6.ebuild60
-rw-r--r--net-wireless/aic8800/files/aic8800-1.0.6-linux-6.12.patch47
-rw-r--r--net-wireless/dump1090/Manifest1
-rw-r--r--net-wireless/dump1090/dump1090-10.0.1.ebuild7
-rw-r--r--net-wireless/dump1090/dump1090-9.0.ebuild117
-rw-r--r--net-wireless/dump1090/dump1090-9999.ebuild5
-rw-r--r--net-wireless/dump1090/files/dump1090-10.0.1-gcc15.patch45
-rw-r--r--net-wireless/dump1090/files/dump1090-9.0-gcc14.patch24
-rw-r--r--sys-apps/cyme/Manifest4
-rw-r--r--sys-apps/cyme/cyme-2.2.0.ebuild (renamed from sys-apps/cyme/cyme-2.1.2.ebuild)11
-rw-r--r--www-client/elinks/elinks-0.18.0.ebuild2
-rw-r--r--www-client/httrack/Manifest2
-rw-r--r--www-client/httrack/httrack-3.49.6.ebuild (renamed from www-client/httrack/httrack-3.49.4.ebuild)7
-rw-r--r--x11-misc/kdocker/kdocker-6.2.ebuild2
-rw-r--r--xfce-extra/thunar-shares-plugin/Manifest1
-rw-r--r--xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.3.2.ebuild35
-rw-r--r--xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.4.0.ebuild2
262 files changed, 6283 insertions, 3136 deletions
diff --git a/app-admin/awscli/Manifest b/app-admin/awscli/Manifest
index b4797545681c..59d55b06de9d 100644
--- a/app-admin/awscli/Manifest
+++ b/app-admin/awscli/Manifest
@@ -1,3 +1,4 @@
DIST aws-cli-1.38.28.gh.tar.gz 2949031 BLAKE2B be411308619abb7ff1f8abfae4ab4c6112b65e2536bca52202ac612f0159cef30f9a8776e0dc489d201542fd0688b9803eaacff617c726e9f859944548851497 SHA512 6134a58f4e980e13a4bca958df3c6b7c0b8401d1cdb64db7942bebbb583830e675b482d4ad9cea673110c11c06960558c3c846c6c6f2bb7e6c6a2c41acd00615
DIST aws-cli-1.38.33.gh.tar.gz 2918023 BLAKE2B 2e9539c86425b6b07594d3c8793d9935679afe3f244e79fa0e0db501f9e7809a61c352e3a00d6d8b3d4bddd63131d8b3c6f3690c2c62c34de3ed49b7bad15de9 SHA512 473c781d2cfd3957b5ab469d22c3a811766c4e1f2223db0c02d6e231cb673efa08913869945521b03ef6f2d7ad109e0ddda1b96f9bfa97a8b57e633e3ca7feaf
DIST aws-cli-1.38.37.gh.tar.gz 2920466 BLAKE2B bcbe824e4b867fee378e0b9f8ce59604f0a20fc7a0ada64743439f2ff596418f7ca486250f8416a85564e3d0bc9541ff8227f808b2dd2cf19c04f4b6234c753b SHA512 9f4f6ac5e97579a1b2d119ee59ecbebf423534781a90c265c9c685cb360fce7cd18dbee8cf7a747084828f6fce85882156f1223d6f228f6cc50b5b9da1100f7b
+DIST aws-cli-1.38.38.gh.tar.gz 2921253 BLAKE2B e976caff4d201d52676743c3be9675be047df1b6466cccfaac9e0687ec0adfcf609d3a7420eb393c0a3d143ed412a6dbf55c4881cd8cc5f998dd93231d8bd54c SHA512 43f98738238484f32c3747af34485708635f333535907be948e6a915b5a53fe7dd295c0c00fd41e74fc92632ac5f8f58cda0c176906eef0d50fe00c7e0e14754
diff --git a/app-admin/awscli/awscli-1.38.38.ebuild b/app-admin/awscli/awscli-1.38.38.ebuild
new file mode 100644
index 000000000000..723ee94df50c
--- /dev/null
+++ b/app-admin/awscli/awscli-1.38.38.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 shell-completion
+
+MY_P=aws-cli-${PV}
+DESCRIPTION="Universal Command Line Environment for AWS"
+HOMEPAGE="
+ https://github.com/aws/aws-cli/
+ https://pypi.org/project/awscli/
+"
+SRC_URI="
+ https://github.com/aws/aws-cli/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+# botocore is x.(y-1).z
+BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) - 1)).$(ver_cut 3-)"
+RDEPEND="
+ >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/rsa[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.11.0[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ !app-admin/awscli-bin
+"
+BDEPEND="
+ test? (
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pytest-forked[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+ # strip overzealous upper bounds on requirements
+ sed -i -e 's:,<[=0-9.]*::' -e 's:==:>=:' setup.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local serial_tests=(
+ tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success
+ tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success}
+ tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success
+ tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking
+ tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows
+ tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking
+ tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success
+ tests/unit/customizations/test_sessionmanager.py
+ tests/unit/test_compat.py::TestIgnoreUserSignals
+ tests/unit/test_help.py
+ tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored
+ )
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ EPYTEST_XDIST= epytest "${serial_tests[@]}"
+
+ local EPYTEST_DESELECT=(
+ "${serial_tests[@]}"
+
+ # flaky (some ordering?)
+ tests/functional/s3/test_cp_command.py::TestCPCommand::test_multipart_upload_with_checksum_algorithm_crc32
+ )
+ # integration tests require AWS credentials and Internet access
+ epytest tests/{functional,unit}
+}
+
+python_install_all() {
+ newbashcomp bin/aws_bash_completer aws
+ newzshcomp bin/aws_zsh_completer.sh _aws
+
+ distutils-r1_python_install_all
+
+ rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
+}
diff --git a/app-containers/containers-common/Manifest b/app-containers/containers-common/Manifest
index f2e2c4b5cd7f..a3b39337074c 100644
--- a/app-containers/containers-common/Manifest
+++ b/app-containers/containers-common/Manifest
@@ -1,2 +1,3 @@
DIST containers-common-0.60.4.tar.gz 13106900 BLAKE2B 1afb428044bc8eebd002b884f2a2072971cd83fca561fd509b83088ccdf82b3a62d63ff32ec5ef856c3d0ee0ffac316201fa8f1d7956153ce30e2244cc860f02 SHA512 5d61415d4959486223a36ff98304363a558e6da9ccbdca94f976649a37d404ac00c8454019f60a79360029c91c9565d22868b109dbb84c19f13377e0e23dcc4d
DIST containers-common-0.62.2.tar.gz 13367528 BLAKE2B 05a16b12cdf89263836df4b4d09ff7b12aba758a08c4f85a0c124dfb378a28fcb33dc6fa41adc81b33e4c3b0949344cc18af5537d3b741bdd07498e7b13e52be SHA512 5e4b6bc6df79e75e5360130ef7b837e216c05955e03968b8df44997c4d88fc095e5ab2ed5db716edaccfb912063d29ba54460231ae5907413da3b6f9771d095e
+DIST containers-common-0.63.0.tar.gz 13516320 BLAKE2B f9d57d11210041065f2d5479d68d0318d5d49c634038f7db8601becc1c6bb801314a5aaacb6392f3f802ed8acde60284d78d49351ea8a8f9eaa3a3c449ba5727 SHA512 5d09a5d5fda8a3bafc2b1954b8b82cbc73747e9a088f220090d790cca203f330d0dbe45148a6ea2808448705506f4ff13ca05c85a2c2643cceff41cbe0f5ce9f
diff --git a/app-containers/containers-common/containers-common-0.63.0.ebuild b/app-containers/containers-common/containers-common-0.63.0.ebuild
new file mode 100644
index 000000000000..d4f8c244621b
--- /dev/null
+++ b/app-containers/containers-common/containers-common-0.63.0.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit readme.gentoo-r1
+
+DESCRIPTION="Common config files and docs for Containers stack"
+HOMEPAGE="https://github.com/containers/common"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/containers/common.git"
+else
+ SRC_URI="https://github.com/containers/common/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${P#containers-}"
+ KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+RESTRICT="test"
+RDEPEND="
+ >=app-containers/aardvark-dns-1.12.0
+ >=app-containers/crun-1.17
+ >=app-containers/containers-image-5.32.0
+ >=app-containers/containers-storage-1.55.0
+ app-containers/containers-shortnames
+ >=app-containers/netavark-1.12.0
+ net-firewall/nftables
+ net-firewall/iptables[nftables]
+ >=net-misc/passt-2024.09.06
+ >=sys-fs/fuse-overlayfs-1.14
+"
+
+BDEPEND="
+ >=dev-go/go-md2man-2.0.3
+"
+
+PATCHES=(
+ "${FILESDIR}/examplify-mounts-conf.patch"
+)
+
+DOC_CONTENTS="\n
+For rootless operations, one needs to configure subuid(5) and subgid(5)\n
+See /etc/sub{uid,gid} to check whether rootless user is already configured\n
+If not, quickly configure it with:\n
+usermod --add-subuids 1065536-1131071 <rootless user>\n
+usermod --add-subgids 1065536-1131071 <rootless user>\n
+"
+
+src_prepare() {
+ default
+
+ [[ -f docs/Makefile && -f Makefile ]] || die
+ sed -i -e 's|/usr/local|/usr|g;' docs/Makefile Makefile || die
+}
+
+src_compile() {
+ emake docs
+ touch {images,layers}.lock || die
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+ readme.gentoo_create_doc
+
+ insinto /usr/share/containers
+ doins pkg/seccomp/seccomp.json pkg/subscriptions/mounts.conf
+
+ keepdir /etc/containers/{certs.d,oci/hooks.d,networks,systemd} /var/lib/containers/sigstore \
+ /usr/lib/containers/storage
+ diropts -m0700
+ dodir /usr/lib/containers/storage/overlay-{images,layers}
+ for i in images layers; do
+ insinto /usr/lib/containers/storage/overlay-"${i}"
+ doins "${i}".lock
+ done
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/app-containers/podman/podman-5.4.2.ebuild b/app-containers/podman/podman-5.4.2.ebuild
index 7dd141db91ac..e80eecf8d63a 100644
--- a/app-containers/podman/podman-5.4.2.ebuild
+++ b/app-containers/podman/podman-5.4.2.ebuild
@@ -125,10 +125,10 @@ src_install() {
newins "${FILESDIR}/podman.logrotated" podman
exeinto /etc/user/init.d
- newexe "${FILESDIR}/podman-5.0.0_rc4.user.initd"
+ newexe "${FILESDIR}/podman-5.0.0_rc4.user.initd" podman
insinto /etc/user/conf.d
- newins "${FILESDIR}/podman-5.0.0_rc4.user.confd"
+ newins "${FILESDIR}/podman-5.0.0_rc4.user.confd" podman
fi
keepdir /var/lib/containers
diff --git a/app-containers/podman/podman-9999.ebuild b/app-containers/podman/podman-9999.ebuild
index 7dd141db91ac..e80eecf8d63a 100644
--- a/app-containers/podman/podman-9999.ebuild
+++ b/app-containers/podman/podman-9999.ebuild
@@ -125,10 +125,10 @@ src_install() {
newins "${FILESDIR}/podman.logrotated" podman
exeinto /etc/user/init.d
- newexe "${FILESDIR}/podman-5.0.0_rc4.user.initd"
+ newexe "${FILESDIR}/podman-5.0.0_rc4.user.initd" podman
insinto /etc/user/conf.d
- newins "${FILESDIR}/podman-5.0.0_rc4.user.confd"
+ newins "${FILESDIR}/podman-5.0.0_rc4.user.confd" podman
fi
keepdir /var/lib/containers
diff --git a/app-emulation/wine-desktop-common/wine-desktop-common-20150204-r2.ebuild b/app-emulation/wine-desktop-common/wine-desktop-common-20150204-r2.ebuild
index 83b107d46a91..2987d1694d5b 100644
--- a/app-emulation/wine-desktop-common/wine-desktop-common-20150204-r2.ebuild
+++ b/app-emulation/wine-desktop-common/wine-desktop-common-20150204-r2.ebuild
@@ -18,7 +18,7 @@ S=${WORKDIR}/${PN}-${PV//./}
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~arm64 x86"
PDEPEND="app-eselect/eselect-wine"
diff --git a/app-emulation/wine-staging/wine-staging-10.5-r1.ebuild b/app-emulation/wine-staging/wine-staging-10.5-r1.ebuild
index 91af4428c1be..b5e50667aa5c 100644
--- a/app-emulation/wine-staging/wine-staging-10.5-r1.ebuild
+++ b/app-emulation/wine-staging/wine-staging-10.5-r1.ebuild
@@ -21,7 +21,7 @@ else
https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${P}.tar.gz
"
# TODO: re-add -*
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~amd64 ~arm64 ~x86"
fi
DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
diff --git a/app-emulation/wine-vanilla/wine-vanilla-10.6.ebuild b/app-emulation/wine-vanilla/wine-vanilla-10.6.ebuild
index 89da9dd2865a..ccc8b6e11c97 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-10.6.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-10.6.ebuild
@@ -16,7 +16,7 @@ else
SRC_URI="https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz"
S=${WORKDIR}/wine-${PV}
# TODO: re-add -*
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~amd64 ~arm64 ~x86"
fi
DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
diff --git a/app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild b/app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild
index 275da8e22183..515baa210fa7 100644
--- a/app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild
+++ b/app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://gitweb.gentoo.org/proj/eselect-wine.git/snapshot/${P}.tar.bz2"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~arm64 x86"
IUSE="+xdg"
# xdg-utils needed for bug #884077
diff --git a/app-misc/broot/broot-1.45.0.ebuild b/app-misc/broot/broot-1.45.0.ebuild
index 724f7228de57..9a9011b8c455 100644
--- a/app-misc/broot/broot-1.45.0.ebuild
+++ b/app-misc/broot/broot-1.45.0.ebuild
@@ -18,7 +18,7 @@ LICENSE+="
LGPL-3+ MIT MPL-2.0 UoI-NCSA Unicode-3.0 ZLIB
"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="X"
DEPEND="
diff --git a/dev-ada/gnatcoll-bindings/gnatcoll-bindings-25.0.0.ebuild b/dev-ada/gnatcoll-bindings/gnatcoll-bindings-25.0.0.ebuild
index b5ed2257d152..e9a22845ec53 100644
--- a/dev-ada/gnatcoll-bindings/gnatcoll-bindings-25.0.0.ebuild
+++ b/dev-ada/gnatcoll-bindings/gnatcoll-bindings-25.0.0.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz
LICENSE="GPL-3"
SLOT="0/${PV}"
-KEYWORDS="~amd64 ~arm64 x86"
+KEYWORDS="amd64 ~arm64 x86"
IUSE="doc gmp lzma openmp +shared static-libs static-pic"
REQUIRED_USE="|| ( shared static-libs static-pic )
${PYTHON_REQUIRED_USE}
diff --git a/dev-cpp/edencommon/Manifest b/dev-cpp/edencommon/Manifest
index 8565d9281f21..5cd4f95ddaf3 100644
--- a/dev-cpp/edencommon/Manifest
+++ b/dev-cpp/edencommon/Manifest
@@ -1,2 +1,3 @@
DIST edencommon-2023.06.19.00.gh.tar.gz 146697 BLAKE2B 8b2419671c50eea43aa4b8d5d85eee75ed24ff9745a71c2d11b1994605552ffc288b55520639585631aed0e2528482a01daa9b47ef676fed7c14b4c7d75d018f SHA512 47b37a6acf93a6c6f2903f3113021aa1d54230cf3e31a8071aa7f276601a8eae56bd95767ec23c3027695367261d4db1483b637513c72ce220778f1f1a4c42ce
DIST edencommon-2024.11.04.00.gh.tar.gz 311977 BLAKE2B 2b152c3cc243c684b8b802981494816b5114e100bc31cc07a96d000dae2be70da4e205d52a30776e930c7c01d63e01baa102cb49a431c961ef133ed936c5eb76 SHA512 c1c428d7392d279e1b0c4348b0fd41ef9a53e50d8a65ff513a56919a7834c118af4adb1145153d10821efb7c8b30b62c1c6d6365b368b90cd567e350c8be0e81
+DIST edencommon-2025.04.14.00.gh.tar.gz 321818 BLAKE2B da50e90bfa6f020ac9b41b4214b52359500e6b8c60e6a5794749b4a87724940aada0493c56e1d6a9b42a0d4d2363b13084a3dee02527fb52defc4fdcf845c326 SHA512 ebf66941d622443a439e3c40ba891e60d274ba259e795b6e046a342be57c0d3c3cdb70f9cada11086b51c2b7f64a4593ba6ab8bc33380aba4976a91d793d0326
diff --git a/dev-cpp/edencommon/edencommon-2025.04.14.00.ebuild b/dev-cpp/edencommon/edencommon-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..3bf3c414765e
--- /dev/null
+++ b/dev-cpp/edencommon/edencommon-2025.04.14.00.ebuild
@@ -0,0 +1,67 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+inherit cmake toolchain-funcs
+
+DESCRIPTION="Shared library for Watchman and Eden projects"
+HOMEPAGE="https://github.com/facebookexperimental/edencommon"
+SRC_URI="https://github.com/facebookexperimental/edencommon/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64"
+IUSE="llvm-libunwind test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-cpp/glog:=
+ ~dev-cpp/folly-${PV}:=
+ ~dev-cpp/fb303-${PV}:=
+ dev-libs/boost:=
+ dev-libs/libfmt:=
+ llvm-libunwind? ( llvm-runtimes/libunwind:= )
+ !llvm-libunwind? ( sys-libs/libunwind:= )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}"
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ CMAKE_SKIP_TESTS=(
+ # Tests fail because they try to obtain the real UID/username,
+ # which is different from the test runner (portage).
+ # https://github.com/facebookexperimental/edencommon/issues/25
+ "ProcessInfoTest.readUserInfoForCurrentProcess"
+ "ProcessInfoTest.testUidToUsername"
+ )
+
+ # This test fails on GCC 13.
+ # https://github.com/facebookexperimental/edencommon/issues/22
+ if tc-is-gcc && ver_test $(gcc-version) -lt 14.0.0; then
+ CMAKE_SKIP_TESTS+=(PathFuncs.move_or_copy)
+ fi
+
+ cmake_src_test
+}
diff --git a/dev-cpp/fb303/Manifest b/dev-cpp/fb303/Manifest
index 78209c541e02..e14857c8b999 100644
--- a/dev-cpp/fb303/Manifest
+++ b/dev-cpp/fb303/Manifest
@@ -1 +1,2 @@
DIST fb303-2024.11.04.00.gh.tar.gz 256825 BLAKE2B a7cb9b56f38f0a8f20a860b4b288f37cb59315242b50ac757bcd472e0310491a575149b2580a67a837a52badaf7ca4b72a769293d248830f90a0cf48f351835a SHA512 4ec54931f23267197e74cc0c3a0dd500f443221d5c4a6bb6a4d707feb6fbc377ef6c16f8fa94f2162e2c0a192fce01016f249890f7384a6c042b5f94b657dc11
+DIST fb303-2025.04.14.00.gh.tar.gz 265271 BLAKE2B f1075ecd4af340a3f801c67b72dfb04ed8e40fbfb818967fd059565a554569dd9caac195abfa1ff8dab3d0beb8f7ccfbd4b52005dc1bb334a944577188ea6366 SHA512 00f0859d22c907665cd7d4381797b0436bb36c8acd64f69cb001eec86a6e4a51ac17cb0e1cd6e3d329e0a4c850d46d8b54c042676d13549da6e2cdcb8515307c
diff --git a/dev-cpp/fb303/fb303-2025.04.14.00.ebuild b/dev-cpp/fb303/fb303-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..a3f81fb910ff
--- /dev/null
+++ b/dev-cpp/fb303/fb303-2025.04.14.00.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+inherit cmake
+
+DESCRIPTION="Core set of Thrift functions querying stats and other information from a service"
+HOMEPAGE="https://github.com/facebook/fb303"
+SRC_URI="https://github.com/facebook/fb303/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+# See https://github.com/facebook/fb303/issues/61
+RESTRICT="test"
+
+RDEPEND="
+ ~dev-cpp/fbthrift-${PV}:=
+ ~dev-cpp/folly-${PV}:=
+ dev-cpp/gflags:=
+ dev-cpp/glog:=[gflags]
+ dev-libs/libfmt:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2025.04.14.00-Fix-using-the-Thrift-annotation-library-for-the-Pyth.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}"
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/fb303/files/fb303-2025.04.14.00-Fix-using-the-Thrift-annotation-library-for-the-Pyth.patch b/dev-cpp/fb303/files/fb303-2025.04.14.00-Fix-using-the-Thrift-annotation-library-for-the-Pyth.patch
new file mode 100644
index 000000000000..0983529dd3ce
--- /dev/null
+++ b/dev-cpp/fb303/files/fb303-2025.04.14.00-Fix-using-the-Thrift-annotation-library-for-the-Pyth.patch
@@ -0,0 +1,28 @@
+From bedbdc263694291f04f8df51f1f44671920ead65 Mon Sep 17 00:00:00 2001
+From: sin-ack <sin-ack@protonmail.com>
+Date: Mon, 21 Apr 2025 17:12:13 +0200
+Subject: [PATCH] Fix using the Thrift annotation library for the Python
+ generator
+
+Same as commit 536ff1c00, but this time for the Python code generator.
+
+Ref: https://github.com/facebook/fb303/commit/536ff1c002cfc2e20a044b474bb73a21350c5d69
+---
+ build/fbcode_builder/CMake/FBThriftPyLibrary.cmake | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/build/fbcode_builder/CMake/FBThriftPyLibrary.cmake b/build/fbcode_builder/CMake/FBThriftPyLibrary.cmake
+index fa77cde71..1aed8fbf4 100644
+--- a/build/fbcode_builder/CMake/FBThriftPyLibrary.cmake
++++ b/build/fbcode_builder/CMake/FBThriftPyLibrary.cmake
+@@ -87,6 +87,7 @@ function(add_fbthrift_py_library LIB_NAME THRIFT_FILE)
+ --legacy-strict
+ --gen "py:${GEN_ARG_STR}"
+ "${thrift_include_options}"
++ -I "${FBTHRIFT_INCLUDE_DIR}"
+ -o "${output_dir}"
+ "${CMAKE_CURRENT_SOURCE_DIR}/${THRIFT_FILE}"
+ WORKING_DIRECTORY
+--
+2.49.0
+
diff --git a/dev-cpp/fbthrift/Manifest b/dev-cpp/fbthrift/Manifest
index 211037528008..01937fbbcad1 100644
--- a/dev-cpp/fbthrift/Manifest
+++ b/dev-cpp/fbthrift/Manifest
@@ -1 +1,2 @@
DIST fbthrift-2024.11.04.00.gh.tar.gz 15541383 BLAKE2B 447fdeba8b9f270e77066d7cf8dedd64ff0e74baf58b8848b0225e936c5d0815cae764f0b38c26c4ce17d9b0f2c0ba46df3a03b2512065b7bd5d685ac7dc99d6 SHA512 b2175eac20ef9b4f15b5d9002583db7339549f660d03a1ced34289009cd99a4308a9ce340b9a37b9771a32340e80b7877b7c5498619241819cf0664e1e395bf7
+DIST fbthrift-2025.04.14.00.gh.tar.gz 15021132 BLAKE2B aba075fc0c7bf915b3927135c63fd06d902bef8943e09c0984601ffd910838d7458fee109895851135c38d99f53cd6bdd462ae71f1d1d659ffff848752b631b2 SHA512 ee109564121c28472980ee0bad975918b81997a0b0d544030a7e5c0c717d8c2d7e8bdb29adef851802271ce8f97fd637a8fe993b9f1c0e176b3f24414a9f9af7
diff --git a/dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild b/dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..d1fe71adac53
--- /dev/null
+++ b/dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+inherit cmake
+
+DESCRIPTION="Facebook's branch of Apache Thrift (C++ bindings)"
+HOMEPAGE="https://github.com/facebook/fbthrift"
+SRC_URI="https://github.com/facebook/fbthrift/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+# See https://github.com/facebook/fbthrift/issues/628
+RESTRICT="test"
+
+DEPEND="
+ ~dev-cpp/fizz-${PV}:=
+ ~dev-cpp/folly-${PV}:=
+ ~dev-cpp/wangle-${PV}:=
+ dev-cpp/gflags:=
+ dev-cpp/glog:=[gflags]
+ dev-libs/boost:=[nls(+)]
+ dev-libs/double-conversion:=
+ dev-libs/libfmt:=
+ dev-libs/openssl:=
+ dev-libs/xxhash
+ sys-libs/zlib:=
+"
+RDEPEND="
+ ${DEPEND}
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}"
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+ -Denable_tests=$(usex test 'ON' 'OFF')
+ -Wno-dev
+ )
+ cmake_src_configure
+}
diff --git a/dev-cpp/fbthrift/files/fbthrift-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch b/dev-cpp/fbthrift/files/fbthrift-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch
new file mode 100644
index 000000000000..bcb039ad8e4d
--- /dev/null
+++ b/dev-cpp/fbthrift/files/fbthrift-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch
@@ -0,0 +1,27 @@
+From 99f1ffbd2ff912d0407aa75f980ef918187c6525 Mon Sep 17 00:00:00 2001
+From: sin-ack <sin-ack@protonmail.com>
+Date: Mon, 21 Apr 2025 16:31:18 +0200
+Subject: [PATCH] Use FOLLY_HAS_LIBURING to check for liburing support in Folly
+
+Folly may not be compiled with liburing support enabled, in which case
+the liburing classes must not be used.
+---
+ thrift/lib/cpp2/security/SSLUtil.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/thrift/lib/cpp2/security/SSLUtil.cpp b/thrift/lib/cpp2/security/SSLUtil.cpp
+index 52a15b66de..dbc67dfd81 100644
+--- a/thrift/lib/cpp2/security/SSLUtil.cpp
++++ b/thrift/lib/cpp2/security/SSLUtil.cpp
+@@ -133,7 +133,7 @@ folly::AsyncSocketTransport::UniquePtr moveToPlaintext(FizzSocket* fizzSock) {
+
+ auto sock = fizzSock->template getUnderlyingTransport<folly::AsyncSocket>();
+ folly::AsyncSocketTransport::UniquePtr plaintextTransport;
+-#if defined(__linux__) && __has_include(<liburing.h>)
++#if FOLLY_HAS_LIBURING
+ if (!sock &&
+ fizzSock->template getUnderlyingTransport<folly::AsyncIoUringSocket>()) {
+ // `AsyncFdSocket` currently lacks uring support, so hardcode `AsyncSocket`
+--
+2.49.0
+
diff --git a/dev-cpp/fizz/Manifest b/dev-cpp/fizz/Manifest
index cfcd6fbbd6e1..9de574e6c824 100644
--- a/dev-cpp/fizz/Manifest
+++ b/dev-cpp/fizz/Manifest
@@ -1 +1,2 @@
DIST fizz-2024.11.04.00.gh.tar.gz 736821 BLAKE2B af8ecc3f78dfc98d854b402f3e44f8be7b57684d09a34c4a6a19d7c47d7663cc835f27328ed0ee0a25465e7d8dbbb46c8f8085c0b9da7948c99aaf868c8c1fcc SHA512 004665bca243ac835be3628e2196450fee30852e414b068ae98555193c3e9788800536a6280e218614df89061c3f05e501dfd89f08f3c5ba3942c3e9d476bf2c
+DIST fizz-2025.04.14.00.gh.tar.gz 752503 BLAKE2B e7d23ba77e5d788cca84826ec670b1279c21a0576211916cff15135166891e779e4c77ba9d5f8cd3e543e7736a4bb8abf2e7ccb18e4c00a38733664a0f6e0e0d SHA512 89572d49c353b0f29c701d1dce5aa0840074907ec3b43617f95f6938375a3ead2a3a22b6794b78892722be05f0e1d2b75090612bace8fd3fcc1fa9023c920123
diff --git a/dev-cpp/fizz/fizz-2025.04.14.00.ebuild b/dev-cpp/fizz/fizz-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..2d4381e9da12
--- /dev/null
+++ b/dev-cpp/fizz/fizz-2025.04.14.00.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+CMAKE_USE_DIR="${S}/fizz"
+
+inherit cmake
+
+DESCRIPTION="C++14 implementation of the TLS-1.3 standard"
+HOMEPAGE="https://github.com/facebookincubator/fizz"
+SRC_URI="https://github.com/facebookincubator/fizz/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# NOTE: Fizz supports multiple backends but the CMake build only
+# allows building against OpenSSL. Can't do anything about
+# that unless Facebook supports other backends in CMake.
+RDEPEND="
+ app-arch/zstd:=
+ ~dev-cpp/folly-${PV}:=
+ dev-cpp/gflags:=
+ dev-cpp/glog:=[gflags]
+ dev-libs/double-conversion:=
+ dev-libs/libfmt:=
+ dev-libs/libsodium:=
+ dev-libs/openssl:=
+ sys-libs/zlib
+"
+uEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}"
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+ -DBUILD_TESTS="$(usex test ON OFF)"
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/folly/Manifest b/dev-cpp/folly/Manifest
index 529f0a646c6e..c4bbc6ffb626 100644
--- a/dev-cpp/folly/Manifest
+++ b/dev-cpp/folly/Manifest
@@ -1,2 +1,3 @@
DIST folly-v2023.06.19.00.tar.gz 3850872 BLAKE2B 6332b6de28fd4a0c19b20c4b23fa7093bded940fb07de92ad9fa7f44b8347fb5e5543e5a57c32d2414f345b4f7b306eed806c5d48a871a06833c1d2a71a34584 SHA512 9189adddf59019787969c7edb27a3e57436c2dca772f3142cdbf66e3a69b398be7ae4f2c36a9576c7ad9c51fd3703555e2a7ad6ed1ddce4036f8760d8095d371
DIST folly-v2024.11.04.00.tar.gz 4185762 BLAKE2B 16eca3bde4320b2c5dd535afddb2640f567135ea90e7a270814bda56eb0d2ba4e864e07015879bb79d1146c68e05695eb06e2219e3dd3b4f71a1434e6f2998a5 SHA512 918ec7217a58789818c502c47302d9296867456bb3dd1c36480406905875eae9a7d52900def34ac1a936af9be6010b8b77897b351c36aa8ca09c16fe1775f508
+DIST folly-v2025.04.14.00.tar.gz 4297358 BLAKE2B df2687d1fe27cc71b0e5a5bfc4b82e1b45d7537bd372f51b3db7c2d20b467d3f0354b377f1c0a64a795f125fd56fb472b585eaad656e07df84c83efe9373d1dd SHA512 19623482df0372a9e2b43b0e718aeed22571f773b0f4e479a41b3e2cac58814f7dc73fb4ae3a3311e87d2836b32c72b92cbe51ef8621242a059e820a70a75e48
diff --git a/dev-cpp/folly/files/folly-2025.04.14.00-force-liburing-off.patch b/dev-cpp/folly/files/folly-2025.04.14.00-force-liburing-off.patch
new file mode 100644
index 000000000000..e0c76d131a29
--- /dev/null
+++ b/dev-cpp/folly/files/folly-2025.04.14.00-force-liburing-off.patch
@@ -0,0 +1,27 @@
+From 1a86fa74e6468f1e10a361a79a441e95f2706d0d Mon Sep 17 00:00:00 2001
+From: sin-ack <sin-ack@protonmail.com>
+Date: Mon, 21 Apr 2025 14:43:56 +0200
+Subject: [PATCH] Forcibly disable liburing support
+
+Folly doesn't have a configure option for disabling liburing, so we
+must manually disable it with this patch.
+---
+ folly/io/async/Liburing.h | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/folly/io/async/Liburing.h b/folly/io/async/Liburing.h
+index 8e81aaae9..64c3ffc0c 100644
+--- a/folly/io/async/Liburing.h
++++ b/folly/io/async/Liburing.h
+@@ -16,8 +16,4 @@
+
+ #pragma once
+
+-#if defined(__linux__) && __has_include(<liburing.h>)
+-#define FOLLY_HAS_LIBURING 1
+-#else
+ #define FOLLY_HAS_LIBURING 0
+-#endif
+--
+2.49.0
+
diff --git a/dev-cpp/folly/folly-2025.04.14.00.ebuild b/dev-cpp/folly/folly-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..05ec9d0a3f03
--- /dev/null
+++ b/dev-cpp/folly/folly-2025.04.14.00.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+inherit flag-o-matic cmake toolchain-funcs
+
+DESCRIPTION="An open-source C++ library developed and used at Facebook"
+HOMEPAGE="https://github.com/facebook/folly"
+SRC_URI="https://github.com/facebook/folly/releases/download/v${PV}/${PN}-v${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+IUSE="llvm-libunwind test"
+RESTRICT="!test? ( test )"
+
+# NOTE: liburing support is disabled because Folly depends on features
+# that are not available in the current stable version of liburing.
+#
+# See: https://github.com/facebook/folly/issues/2420
+#
+# NOTE: Re-check during next bump whether liburing released a version with
+# zcrx support.
+RDEPEND="
+ app-arch/bzip2
+ app-arch/lz4:=
+ app-arch/snappy:=
+ app-arch/xz-utils
+ app-arch/zstd:=
+ dev-cpp/fast_float:=
+ dev-cpp/gflags:=
+ dev-cpp/glog:=[gflags]
+ dev-libs/boost:=[context]
+ dev-libs/double-conversion:=
+ dev-libs/libaio
+ dev-libs/libevent:=
+ dev-libs/libfmt:=
+ dev-libs/libsodium:=
+ dev-libs/openssl:=
+ sys-libs/zlib
+ llvm-libunwind? ( llvm-runtimes/libunwind:= )
+ !llvm-libunwind? ( sys-libs/libunwind:= )
+"
+# libiberty is linked statically
+DEPEND="
+ ${RDEPEND}
+ sys-libs/binutils-libs
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2024.11.04.00-musl-fix.patch
+ # NOTE: Disable liburing support as mentioned above. Folly doesn't have
+ # a configure flag for this so we must patch the check out.
+ "${FILESDIR}"/${PN}-2025.04.14.00-force-liburing-off.patch
+)
+
+src_unpack() {
+ # Workaround for bug #889420
+ mkdir -p "${S}" || die
+ cd "${S}" || die
+ default
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}"
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+
+ -DBUILD_TESTS=$(usex test)
+
+ # https://github.com/gentoo/gentoo/pull/29393
+ -DCMAKE_LIBRARY_ARCHITECTURE=$(usex amd64 x86_64 ${ARCH})
+ )
+
+ # https://github.com/facebook/folly/issues/1984
+ use arm64 && append-cxxflags "-flax-vector-conversions"
+
+ cmake_src_configure
+}
+
+src_test() {
+ CMAKE_SKIP_TESTS=(
+ # Mysterious "invalid json" failure
+ io_async_ssl_session_test.SSLSessionTest
+ singleton_thread_local_test.SingletonThreadLocalDeathTest
+ # TODO: All SIGSEGV, report upstream!
+ 'concurrency_concurrent_hash_map_test.*'
+ )
+
+ if use arm64; then
+ CMAKE_SKIP_TESTS+=(
+ # Tests are flaky/timing dependent on both QEMU chroot and real hardware
+ io_async_hh_wheel_timer_test.HHWheelTimerTest
+ # Times out on real hardware
+ concurrent_skip_list_test.ConcurrentSkipList
+ futures_retrying_test.RetryingTest.largeRetries
+ )
+ fi
+
+ if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then
+ CMAKE_SKIP_TESTS+=(
+ # Aborts with libc++.
+ # https://github.com/facebook/folly/issues/2345
+ buffered_atomic_test.BufferedAtomic.singleThreadUnguardedAccess
+ )
+ fi
+
+ cmake_src_test
+}
diff --git a/dev-cpp/mvfst/Manifest b/dev-cpp/mvfst/Manifest
index 404d5e40b48e..16254b7df1fd 100644
--- a/dev-cpp/mvfst/Manifest
+++ b/dev-cpp/mvfst/Manifest
@@ -1 +1,2 @@
DIST mvfst-2024.11.04.00.gh.tar.gz 1983543 BLAKE2B 9c8b0da32baddd04af29e892a379333f89af45957a415dfa7f6da86f9a9b39fc8fbc73e450deb51e7a61b4ddfd37f08dc3d9ba8f48f83557aab4ae762068ec14 SHA512 4a000583884777fa876f3bfc52a3420c9cf8818f943c07898ac3b313837092fc173d8db497fd59027ef405d8fa5e3114a53b3bc5cf3fef398ca712c06a1da3e0
+DIST mvfst-2025.04.14.00.gh.tar.gz 2046690 BLAKE2B 7d8861d082b027b4c5b95cb755bc89907037b7e5e71be0bbb97806fa37d24bfec48979e1a8576c1c49b3007babe9e327c16d0d0971a66899e0a0ef9f373a8be7 SHA512 65fe3d5aee2ccffd0d459b3d07901c9d1085d6ec195d896ea66eb509ec1d662d4721b39242bab44ef10cafa479aae335a7a8904214871e28728857fc709061df
diff --git a/dev-cpp/mvfst/mvfst-2025.04.14.00.ebuild b/dev-cpp/mvfst/mvfst-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..718303e3ffd6
--- /dev/null
+++ b/dev-cpp/mvfst/mvfst-2025.04.14.00.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+inherit cmake
+
+DESCRIPTION="An implementation of the QUIC transport protocol"
+HOMEPAGE="https://github.com/facebook/mvfst"
+SRC_URI="https://github.com/facebook/mvfst/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ ~dev-cpp/fizz-${PV}:=
+ ~dev-cpp/folly-${PV}:=
+ dev-cpp/gflags:=
+ dev-cpp/glog:=[gflags]
+ dev-libs/double-conversion:=
+ dev-libs/libfmt:=
+ dev-libs/openssl:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_MODULE_DIR="$(get_libdir)/cmake/${PN}"
+ -DCMAKE_INSTALL_LIBDIR="$(get_libdir)"
+ -DBUILD_TESTS="$(usex test ON OFF)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ if use arm64; then
+ # These tests segfault on arm64.
+ # https://github.com/facebook/mvfst/issues/363
+ CMAKE_SKIP_TESTS=(
+ QuicClientTransportIntegrationTest.ResetClient
+ QuicClientTransportIntegrationTest.TestStatelessResetToken
+ )
+ fi
+
+ cmake_src_test
+}
diff --git a/dev-cpp/wangle/Manifest b/dev-cpp/wangle/Manifest
index aa9e398f55a5..0e219585fcaa 100644
--- a/dev-cpp/wangle/Manifest
+++ b/dev-cpp/wangle/Manifest
@@ -1 +1,2 @@
DIST wangle-2024.11.04.00.gh.tar.gz 372838 BLAKE2B 5d6636aa9cbea7f1438269a8c935b93dd5e3c6abef0cc6c668088d883a9b9326f44409649d809c80c08e79c2fa0527fd26a4db7ceed616f27aea2a3921c5ae75 SHA512 d44f3553b04f378935c2a6cf072d6b4a911be3bb71f3480ccdbb269f83c0f62dce4451bcb2edb365d9b398f719c7162269690d07aab07054dafaa55b5b38e0ad
+DIST wangle-2025.04.14.00.gh.tar.gz 368600 BLAKE2B 092e7fcc97016158aeefa64018a0ef4e5e91542d11677d7b20adcda128817f85a7155aee71618add311dcab2dde88d54a19a04da950da4cb05393ca1905e1bd6 SHA512 d3aa8dc6ef184356f520341b858d9064f18a413cccec52d541cb4fc7895f700c1cbbf00ede7ee8ac52d6cc7c0779e68c6078a475ace25f24854c706bbe462798
diff --git a/dev-cpp/wangle/wangle-2025.04.14.00.ebuild b/dev-cpp/wangle/wangle-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..855a40ce89ff
--- /dev/null
+++ b/dev-cpp/wangle/wangle-2025.04.14.00.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+CMAKE_USE_DIR="${S}/wangle"
+
+inherit cmake
+
+DESCRIPTION="A framework providing common abstractions for building services"
+HOMEPAGE="https://github.com/facebook/wangle"
+SRC_URI="https://github.com/facebook/wangle/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ ~dev-cpp/fizz-${PV}:=
+ ~dev-cpp/folly-${PV}:=
+ dev-cpp/gflags:=
+ dev-cpp/glog:=[gflags]
+ dev-libs/double-conversion:=
+ dev-libs/libfmt:=
+ dev-libs/openssl:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}"
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+ -DBUILD_TESTS="$(usex test ON OFF)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ CMAKE_SKIP_TESTS=(
+ # These tests expect test certificates to be present in /usr/include/folly/io/async/test/certs/, which folly
+ # doesn't install.
+ SSLContextManagerTest
+ )
+
+ if use arm64; then
+ # This test fails on arm64.
+ # https://github.com/facebook/wangle/issues/241
+ CMAKE_SKIP_TESTS+=(TLSInMemoryTicketProcessorTest)
+ fi
+
+ cmake_src_test
+}
diff --git a/dev-cpp/xsimd/xsimd-13.1.0.ebuild b/dev-cpp/xsimd/xsimd-13.1.0.ebuild
index e225f4fbd3d0..29a0c64f142f 100644
--- a/dev-cpp/xsimd/xsimd-13.1.0.ebuild
+++ b/dev-cpp/xsimd/xsimd-13.1.0.ebuild
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/xtensor-stack/${PN}/archive/refs/tags/${PV}.tar.gz
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="doc test"
RESTRICT="!test? ( test )"
diff --git a/dev-go/golangci-lint/Manifest b/dev-go/golangci-lint/Manifest
index 2f9492a0894c..cdb3e63eeff8 100644
--- a/dev-go/golangci-lint/Manifest
+++ b/dev-go/golangci-lint/Manifest
@@ -14,3 +14,5 @@ DIST golangci-lint-1.64.7-deps.tar.xz 26242404 BLAKE2B e979fc047debbf7530b087677
DIST golangci-lint-1.64.7.tar.gz 2070704 BLAKE2B a2b920e32a282119ce94ab30b2efcce510b344c4b29a8c94485a2bb44e248a86931850bf2072b26e1d4672191f969db43f4b7112d209c959a90d62d925e111de SHA512 7b9370fd2fe8ade529792f5837d014385530cd07439c057cf9506de0bbcb8fc5d937ed5df005b589a944f643bec752c026c6c976969828782ca79890f5922847
DIST golangci-lint-2.1.0-deps.tar.xz 36222896 BLAKE2B c4bd86befc7701dc9951626e1b33e8abe3b150ef4b447c2291abadced70f2bef562759ad90c234b8c15555ea34e30a473a75912f99858a1e37b456de24b9c702 SHA512 0bb47f4f4926da5251c5a910b2e3418402a273395e6846d6a5de92025582ad543831058468fea0763aa916f4301eb03dbeb5a937e0e70d7db7f6e10dac4807fa
DIST golangci-lint-2.1.0.tar.gz 2347631 BLAKE2B b716b7d019b114ae66d1de630b0abe710aefd2010cacf27b126d041b5bd28684884b2f4573b047837033f2bfb1ea4166e1973298d22e07e8aed640d1ce16cf86 SHA512 c10e62f5c8e7cd055c70d5ab7608f1fc80d6133dfa6ffa7661ea9625f07e65b96c99574fe9a239f64a49d1f4ee289d7a80a6719e91fae7c2d0d66e2b8fac2088
+DIST golangci-lint-2.1.2-deps.tar.xz 36225632 BLAKE2B b74443aa04fa63ffcd8d392c13fdd7c0c5ceb6546afa73c9e84a22d83e18ef9239eea41ac500200d8390baa0e2e6e37f21d42098e7e6f2f56d42734d8a1d7f63 SHA512 b8103177e12f647c610571c31c7aea98bf9704ee6102cc226a2af6781f77cc49b784f8b68b586bc5fb9bfe8a55a20cac9afe024ed119943f6598ef52ba987135
+DIST golangci-lint-2.1.2.tar.gz 2348422 BLAKE2B b3e7a12c0fae73b0652f19e759208143f432d589820b091632a1429ea52a20c8795b3a295d6c895152c2230f2dcde3ab016ad92639343e3a613387788e85b996 SHA512 e4dbb2baa333f6bc81e62a6624b58554dfb91390c55c8f14c441d96d267fc956c99cf37403d7878f1a8c21b4a87b15446f595794c3646ce689a9cb1ec538b587
diff --git a/dev-go/golangci-lint/golangci-lint-2.1.2.ebuild b/dev-go/golangci-lint/golangci-lint-2.1.2.ebuild
new file mode 100644
index 000000000000..7fd588351a36
--- /dev/null
+++ b/dev-go/golangci-lint/golangci-lint-2.1.2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module shell-completion toolchain-funcs
+
+DESCRIPTION="Fast linters runner for Go"
+HOMEPAGE="https://golangci-lint.run/ https://github.com/golangci/golangci-lint"
+SRC_URI="https://github.com/golangci/golangci-lint/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="GPL-3"
+# Dependent licenses
+LICENSE+=" Apache-2.0 BSD BSD-2 GPL-3 ISC MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ emake build
+
+ if ! tc-is-cross-compiler; then
+ einfo "generating shell completion files"
+ ./golangci-lint completion bash > ${PN}.bash || die
+ ./golangci-lint completion zsh > ${PN}.zsh || die
+ ./golangci-lint completion fish > ${PN}.fish || die
+ fi
+}
+
+src_test() {
+ emake test
+}
+
+src_install() {
+ dobin golangci-lint
+ local DOCS=( README.md CHANGELOG.md )
+ einstalldocs
+
+ if ! tc-is-cross-compiler; then
+ newbashcomp ${PN}.bash ${PN}
+ newzshcomp ${PN}.zsh _${PN}
+ dofishcomp ${PN}.fish
+ else
+ ewarn "Shell completion files not installed! Install them manually with '${PN} completion --help'"
+ fi
+}
diff --git a/dev-lang/ocaml/Manifest b/dev-lang/ocaml/Manifest
index 6c201a53e59e..c132ced09c7d 100644
--- a/dev-lang/ocaml/Manifest
+++ b/dev-lang/ocaml/Manifest
@@ -7,6 +7,4 @@ DIST ocaml-4.12.1.tar.gz 5181696 BLAKE2B 9d21438e09b1a9680eabb65f5c78d9fe8445959
DIST ocaml-4.13.1.tar.gz 5323203 BLAKE2B f1dcb1601ebfa2a37351e3a466a7ca601518c2da403b01aeb182738a54d5887523ab554d747d6591cb09b07b417865e20907f7877117b2d2d069ef6c9edc0fae SHA512 da3434177438c852da53c0fda7bc2519adcda6384d97d45e44137ed0fd384ffb3da61958a7b51296edb3f88f5a5310ca71b6862f6d756aaa4012d1f54e5955f6
DIST ocaml-4.14.1.tar.gz 5498436 BLAKE2B 6113283ab0f7ac39ade1f35a02c203a6956f8f4efa4f174daf53483c1d874613195c2705ca02760f0ff4abd9b37c91f8dec59c010ac8ae8731790cdd6f429673 SHA512 6340e145c7d11a1ee9fa1699fc6a8a6785f14ff9c05dca708cf278194642ec9b7c562d744d8b38e5dab74b88fa3a5760035e214f5f8fab8b233a344b035db8fb
DIST ocaml-4.14.2.tar.gz 5505119 BLAKE2B 518c2a69ee32e1c141b574a9800a64efc445381eb2808985b5dbb9d5ec54228aa25042a1c410307c3556488ba12a751980396b0d9a01e60a1ea84ac5b52e6dd6 SHA512 61bfa7961aae02458210f10865a5703f7a50a9be2452379e820cf2dfac2c6037da553c31835145e50a776880bdeb2ec78cd7a3147d65f418e7b3e593534e8a04
-DIST ocaml-5.2.0.tar.gz 6047633 BLAKE2B 5d0a7d48d9ed9fcd2974237a93e30ffee20fc444b5ede296bd35cb3285909f8cf5a489ac1cdc75778ca6d45f8ff40a92939bfcfc42e218aeda0170b1ac0bfd49 SHA512 78115690186c13c1f2480e4812a9fe34cce2c28bf8a89d5c9810bca0391f930cecd9cee2b53daca8a32da1815628b33be68f3948f1ad03fa50b72b14e3ea84f2
-DIST ocaml-5.2.1.tar.gz 6051609 BLAKE2B 5cefbddcb97c7e9de5a5e1c4385086972bf78f545d3a649278c9582b3c527374f80fd32b072e51ff7c753a50431f373e0d584c9c8187a25d8f828adb3e595234 SHA512 b0803dd90a0ac6fdf609345c481b3dc637eb9cbb9bea296cfd79f6913ab34b9e02970bcddd83e8bc419cbe1c4694bb7889146615841b5ee101081a82eee024e2
DIST ocaml-5.3.0.tar.gz 6239856 BLAKE2B a790293d14a31d34b10f2fac22a416e967c2a06f64001b54665e691a6aecdb71caf60dd6217460257f8d18191551ffa01d0d3d62327c6eb9bc63c254c162752e SHA512 73817ada340bdf4091b3edd7b292bd0074c87b4836f202f48ecf0f620a00feaa70ebc9101b97155e8caa6907646dfdf21eff728fa0e14542df3b5e5436229d06
diff --git a/dev-lang/ocaml/ocaml-5.2.0-r1.ebuild b/dev-lang/ocaml/ocaml-5.2.0-r1.ebuild
deleted file mode 100644
index 5e0ea8f304bc..000000000000
--- a/dev-lang/ocaml/ocaml-5.2.0-r1.ebuild
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit flag-o-matic
-
-DESCRIPTION="Programming language supporting functional, imperative & object-oriented styles"
-HOMEPAGE="https://ocaml.org/"
-SRC_URI="https://github.com/ocaml/ocaml/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="QPL-1.0 LGPL-2"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE="emacs flambda latex +ocamlopt test xemacs"
-
-RDEPEND="sys-libs/binutils-libs:=
- !dev-ml/findlib:0/0"
-BDEPEND="${RDEPEND}
- virtual/pkgconfig"
-PDEPEND="emacs? ( app-emacs/ocaml-mode )
- xemacs? ( app-xemacs/ocaml )"
-
-QA_FLAGS_IGNORED='/usr/lib.*/ocaml/bigarray.cmxs'
-
-RESTRICT="!test? ( test )"
-
-src_prepare() {
- default
-
- cp "${FILESDIR}"/ocaml.conf "${T}" || die
-
- # OCaml generates textrels on 32-bit arches
- # We can't do anything about it, but disabling it means that tests
- # for OCaml-based packages won't fail on unexpected output
- # bug #773226
- if use arm || use ppc || use x86 ; then
- append-ldflags "-Wl,-z,notext"
- fi
-
- # Upstream build ignores LDFLAGS in several places.
- sed -i -e 's/\(^MKDLL=.*\)/\1 $(LDFLAGS)/' \
- -e 's/\(^OC_CFLAGS=.*\)/\1 $(LDFLAGS)/' \
- -e 's/\(^OC_LDFLAGS=.*\)/\1 $(LDFLAGS)/' \
- Makefile.config.in || die "LDFLAGS fix failed"
-}
-
-src_configure() {
- filter-lto #bug 870349
- local opt=(
- --bindir="${EPREFIX}/usr/bin"
- --libdir="${EPREFIX}/usr/$(get_libdir)/ocaml"
- --mandir="${EPREFIX}/usr/share/man"
- --prefix="${EPREFIX}/usr"
- $(use_enable test ocamltest) \
- $(use_enable flambda)
- )
-
- econf "${opt[@]}"
-}
-
-src_compile() {
- env -u P emake world
-
- if use ocamlopt ; then
- env -u P emake opt
- env -u P emake opt.opt
- fi
-}
-
-src_test() {
- emake -j
-
- # OCaml tests only work when run sequentially
- if use ocamlopt ; then
- emake -j1 ocamltest.opt
- else
- emake -j1 ocamltest
- #ewarn "${PN} was built without 'ocamlopt' USE flag; skipping tests."
- fi
-
- emake -j1 tests
-}
-
-src_install() {
- # OCaml generates textrels on 32-bit arches
- if use arm || use ppc || use x86 ; then
- export QA_TEXTRELS='.*'
- fi
- default
-
- dodir /usr/include
- # Create symlink for header files
- dosym "../$(get_libdir)/ocaml/caml" /usr/include/caml
- dodoc Changes README.adoc
-
- # Create envd entry for latex input files
- if use latex ; then
- echo "TEXINPUTS=\"${EPREFIX}/usr/$(get_libdir)/ocaml/ocamldoc:\"" > "${T}"/99ocamldoc || die
- doenvd "${T}"/99ocamldoc
- fi
-
- sed -i -e "s:lib:$(get_libdir):" "${T}"/ocaml.conf || die
-
- # Install ocaml-rebuild portage set
- insinto /usr/share/portage/config/sets
- doins "${T}"/ocaml.conf
-}
diff --git a/dev-lang/ocaml/ocaml-5.2.1-r1.ebuild b/dev-lang/ocaml/ocaml-5.2.1-r1.ebuild
deleted file mode 100644
index 5e0ea8f304bc..000000000000
--- a/dev-lang/ocaml/ocaml-5.2.1-r1.ebuild
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit flag-o-matic
-
-DESCRIPTION="Programming language supporting functional, imperative & object-oriented styles"
-HOMEPAGE="https://ocaml.org/"
-SRC_URI="https://github.com/ocaml/ocaml/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="QPL-1.0 LGPL-2"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE="emacs flambda latex +ocamlopt test xemacs"
-
-RDEPEND="sys-libs/binutils-libs:=
- !dev-ml/findlib:0/0"
-BDEPEND="${RDEPEND}
- virtual/pkgconfig"
-PDEPEND="emacs? ( app-emacs/ocaml-mode )
- xemacs? ( app-xemacs/ocaml )"
-
-QA_FLAGS_IGNORED='/usr/lib.*/ocaml/bigarray.cmxs'
-
-RESTRICT="!test? ( test )"
-
-src_prepare() {
- default
-
- cp "${FILESDIR}"/ocaml.conf "${T}" || die
-
- # OCaml generates textrels on 32-bit arches
- # We can't do anything about it, but disabling it means that tests
- # for OCaml-based packages won't fail on unexpected output
- # bug #773226
- if use arm || use ppc || use x86 ; then
- append-ldflags "-Wl,-z,notext"
- fi
-
- # Upstream build ignores LDFLAGS in several places.
- sed -i -e 's/\(^MKDLL=.*\)/\1 $(LDFLAGS)/' \
- -e 's/\(^OC_CFLAGS=.*\)/\1 $(LDFLAGS)/' \
- -e 's/\(^OC_LDFLAGS=.*\)/\1 $(LDFLAGS)/' \
- Makefile.config.in || die "LDFLAGS fix failed"
-}
-
-src_configure() {
- filter-lto #bug 870349
- local opt=(
- --bindir="${EPREFIX}/usr/bin"
- --libdir="${EPREFIX}/usr/$(get_libdir)/ocaml"
- --mandir="${EPREFIX}/usr/share/man"
- --prefix="${EPREFIX}/usr"
- $(use_enable test ocamltest) \
- $(use_enable flambda)
- )
-
- econf "${opt[@]}"
-}
-
-src_compile() {
- env -u P emake world
-
- if use ocamlopt ; then
- env -u P emake opt
- env -u P emake opt.opt
- fi
-}
-
-src_test() {
- emake -j
-
- # OCaml tests only work when run sequentially
- if use ocamlopt ; then
- emake -j1 ocamltest.opt
- else
- emake -j1 ocamltest
- #ewarn "${PN} was built without 'ocamlopt' USE flag; skipping tests."
- fi
-
- emake -j1 tests
-}
-
-src_install() {
- # OCaml generates textrels on 32-bit arches
- if use arm || use ppc || use x86 ; then
- export QA_TEXTRELS='.*'
- fi
- default
-
- dodir /usr/include
- # Create symlink for header files
- dosym "../$(get_libdir)/ocaml/caml" /usr/include/caml
- dodoc Changes README.adoc
-
- # Create envd entry for latex input files
- if use latex ; then
- echo "TEXINPUTS=\"${EPREFIX}/usr/$(get_libdir)/ocaml/ocamldoc:\"" > "${T}"/99ocamldoc || die
- doenvd "${T}"/99ocamldoc
- fi
-
- sed -i -e "s:lib:$(get_libdir):" "${T}"/ocaml.conf || die
-
- # Install ocaml-rebuild portage set
- insinto /usr/share/portage/config/sets
- doins "${T}"/ocaml.conf
-}
diff --git a/dev-ml/camlp4/Manifest b/dev-ml/camlp4/Manifest
index 61d0b88e0dcd..5002a750e7fa 100644
--- a/dev-ml/camlp4/Manifest
+++ b/dev-ml/camlp4/Manifest
@@ -4,5 +4,4 @@ DIST camlp4-4.11_p1.tar.gz 650280 BLAKE2B 6fe46b49c1f2b2e5fc87fbbbdba3ccae795c55
DIST camlp4-4.12.tar.gz 650428 BLAKE2B 4957d3db73ec82fbac58dd95fa13c48f9f8480a70cd6bded43a00df0a182f9b9e31a43acef8264f9d940776667d10b0a5c46bded59ebf4a645719264628428fc SHA512 0a19bb596e47076a28a6bea62007f1d3b59c4d688075f6b723abaa205c555707feb4ea0624259994a4ba5251fdea9dc61cdc936dc13611b36937e755a4bc9b7b
DIST camlp4-4.13.tar.gz 650642 BLAKE2B 5bf70b21f47eefe4631227d0d30fdd08ab965020026d0183fc94b9dbfd1eee45626afbe62bf9507b1a887217cf9245901d40f25cce9430155eb9ec1ddc577554 SHA512 d3307bd11b813540d126719c0afe7e75a7740d0851b272be9bd1a28e8b1ab1ed9a7576109000c8d6cee7ece7f777122aa83917a48147d42ed8f4d72994397819
DIST camlp4-4.14_p1.tar.gz 641790 BLAKE2B 3e1054a924956e9c23d43fb4ef00cf99fe09f6d2a5eb4216cb3d5079a439159d36703b6ae268789d73e51e87ed0329531b25c2e846df03c4ae99b1a6403b84c3 SHA512 1853ae0465a1366cf73d7aa9de56c037ef3d4bb5b341fe3eeb39677b5b08bda44316634b93d5d35d917a98dff8eb40da974937f714ab609818e7d25f716de811
-DIST camlp4-5.2_p1.tar.gz 653548 BLAKE2B 27002802bbf0d0a67d5c2c967fa54d72087c9b08020d290ec081545ef4d4c7bea794ab8ea74608d63ed4a51b58fe44a1ac921d4de9f66f754a7b3d931e5ed818 SHA512 7034cf32575b6a7dc0406fea3c354068598195aa84a75e8576ea1219c38e4bffdc048c936d440bab235aea76510972a174bffba13f4f94f531b80fb4d80ca4ad
DIST camlp4-5.3_p1.tar.gz 653589 BLAKE2B 3fd9b063132a02081f3af79ebc02d6e7788ca60f3776a65b92d29faec1db4016d01b4a5b8556a818a39ab65d3aa4aadc281f5480f12fa36be9ca00f9323c6016 SHA512 30d0a1a52d5e359f16158e10b025e8d05fb7ccf1fa7f45cecd3584e5ba5ba995f85917680904c347437f3bdf6376ade9a666bbef7a337e5f41bc73ec1bb126d8
diff --git a/dev-ml/camlp4/camlp4-5.2_p1.ebuild b/dev-ml/camlp4/camlp4-5.2_p1.ebuild
deleted file mode 100644
index e7445e57932a..000000000000
--- a/dev-ml/camlp4/camlp4-5.2_p1.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-MY_PV=${PV/_p/+}
-MY_P=${PN}-${MY_PV}
-
-inherit edo
-
-DESCRIPTION="System for writing extensible parsers for programming languages"
-HOMEPAGE="https://github.com/camlp4/camlp4"
-SRC_URI="https://github.com/camlp4/camlp4/archive/${MY_PV}.tar.gz
- -> ${P}.tar.gz"
-S="${WORKDIR}"/${P/_p/-}
-
-LICENSE="LGPL-2-with-linking-exception"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="+ocamlopt"
-
-RDEPEND="
- =dev-lang/ocaml-5.2*:=[ocamlopt?]
- dev-ml/camlp-streams:=[ocamlopt?]
-"
-DEPEND="
- ${RDEPEND}
- dev-ml/ocamlbuild[ocamlopt?]
- dev-ml/findlib:=
-"
-
-QA_FLAGS_IGNORED='.*'
-
-PATCHES=( "${FILESDIR}/reload.patch" )
-
-src_configure() {
- edo ./configure \
- --bindir="${EPREFIX}/usr/bin" \
- --libdir="$(ocamlc -where)" \
- --pkgdir="$(ocamlc -where)"
-}
-
-src_compile() {
- # Increase stack limit to 11GiB to avoid stack overflow error.
- ulimit -s 11530000
-
- emake byte
- use ocamlopt && emake native
-}
-
-src_install() {
- # OCaml generates textrels on 32-bit arches
- if use arm || use ppc || use x86 ; then
- export QA_TEXTRELS='.*'
- fi
- emake DESTDIR="${D}" install install-META
- dodoc CHANGES.md README.md
-}
diff --git a/dev-ml/core_bench/core_bench-0.17.0.ebuild b/dev-ml/core_bench/core_bench-0.17.0.ebuild
index ac886ae2b450..debaca4cef4b 100644
--- a/dev-ml/core_bench/core_bench-0.17.0.ebuild
+++ b/dev-ml/core_bench/core_bench-0.17.0.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.g
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~arm64"
IUSE="+ocamlopt"
DEPEND="
diff --git a/dev-ml/core_extended/core_extended-0.17.0.ebuild b/dev-ml/core_extended/core_extended-0.17.0.ebuild
index 253fd5475f5d..405b9ca9ef8b 100644
--- a/dev-ml/core_extended/core_extended-0.17.0.ebuild
+++ b/dev-ml/core_extended/core_extended-0.17.0.ebuild
@@ -11,8 +11,8 @@ SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE="ocamlopt"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+ocamlopt"
RDEPEND="
>=dev-lang/ocaml-5
diff --git a/dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild b/dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild
index b39aa14b3645..59a89d47c7b2 100644
--- a/dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild
+++ b/dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild
@@ -11,8 +11,8 @@ SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE="ocamlopt"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+ocamlopt"
RDEPEND="
>=dev-lang/ocaml-5
diff --git a/dev-ml/record_builder/record_builder-0.17.0.ebuild b/dev-ml/record_builder/record_builder-0.17.0.ebuild
index 4838bc956893..a65fdc70fd30 100644
--- a/dev-ml/record_builder/record_builder-0.17.0.ebuild
+++ b/dev-ml/record_builder/record_builder-0.17.0.ebuild
@@ -11,8 +11,8 @@ SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE="ocamlopt"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+ocamlopt"
RDEPEND="
>=dev-lang/ocaml-5
diff --git a/dev-python/aiohttp/Manifest b/dev-python/aiohttp/Manifest
index 20b4a4cc0bed..f70f5c3a9951 100644
--- a/dev-python/aiohttp/Manifest
+++ b/dev-python/aiohttp/Manifest
@@ -2,3 +2,4 @@ DIST aiohttp-3.11.14.tar.gz 7676994 BLAKE2B e8e048c01db9600df3bdc7bdc6e5066094b4
DIST aiohttp-3.11.15.tar.gz 7676625 BLAKE2B 02a5230bd9d038f0e90e4b63e69502a8f2445b781e0b4ff6e40657d7c0d49ddce011ba28c3ddc03cd75a4e205d3544af15f9944f9908064d6f9b922862cc8ab0 SHA512 deeaed7f204fef23641d076d1fd455ebe97173726e2cfc47f82fffc654c51e975fb3012ac78bf60181771e001f3e6f3aac67e2bfc9ed9291ff6d92873969eb0e
DIST aiohttp-3.11.16.tar.gz 7676826 BLAKE2B ae430c8d5e3c84442c95f6c485be2ca69df00b7dd2047ed34d7825c0f250b71ca1490140a1aff8b3dfcdb2af367958e59c94c60b288b7f534b1e1b0457debc10 SHA512 890f576d5ec8c364f8db29b1c4a540cd39cf61fa1fd17ec70049a8c1bf401745d8326e2b7b51bbbc7a2569bfe42f7aab022c23be186bb67f064a32ed16af18dd
DIST aiohttp-3.11.17.tar.gz 7679092 BLAKE2B 1eabacddbbf03c22a156c30641c6b476760b12dd19b2f0d2e8fc066c60cee0c84745f8636257a356a87dab5b06d6f845a67c58da6abaeb513ae7bac86f8f3d9e SHA512 c514e772957e5b20da398bd38682ba10f43e1697a4f743c85fe5242437a0d7010a13b918b071a1bbe9e62c56cd58f76e5470056f917a23734449f9f2de225d78
+DIST aiohttp-3.11.18.tar.gz 7678653 BLAKE2B 5886778fd0456ef40f1da5abd3d6a3864db03fad01d53755bb34afd77152da338480ba534c5dc1574bd5aa178943ec52814f1ceff736d668868803b19f6c102f SHA512 9b25ad5f9800cd84014c55f6a4f7ac217a788a43e301a83c18667b6f294388adf53c81360fd3219007b10b42ce165331dad1907582dc9d3081fd8585b5bcd042
diff --git a/dev-python/aiohttp/aiohttp-3.11.18.ebuild b/dev-python/aiohttp/aiohttp-3.11.18.ebuild
new file mode 100644
index 000000000000..06772b8404ff
--- /dev/null
+++ b/dev-python/aiohttp/aiohttp-3.11.18.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2025 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_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="HTTP client/server for asyncio"
+HOMEPAGE="
+ https://github.com/aio-libs/aiohttp/
+ https://pypi.org/project/aiohttp/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+native-extensions test-rust"
+
+DEPEND="
+ native-extensions? (
+ $(python_gen_cond_dep '
+ net-libs/llhttp:=
+ ' 'python3*')
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/aiodns-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/aiohappyeyeballs-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}]
+ >=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
+ dev-python/brotlicffi[${PYTHON_USEDEP}]
+ >=dev-python/frozenlist-1.1.1[${PYTHON_USEDEP}]
+ >=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/propcache-0.2.0[${PYTHON_USEDEP}]
+ >=dev-python/yarl-1.17.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ <dev-python/async-timeout-6[${PYTHON_USEDEP}]
+ >=dev-python/async-timeout-4.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/re-assert[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' 'python3*')
+ test-rust? (
+ dev-python/trustme[${PYTHON_USEDEP}]
+ )
+ )
+"
+
+DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${PN}-3.11.17-unbundle-llhttp.patch"
+ )
+
+ distutils-r1_src_prepare
+
+ # increase the timeout a little
+ sed -e '/abs=/s/0.001/0.01/' -i tests/test_helpers.py || die
+ # xfail_strict fails on py3.10
+ sed -i -e '/--cov/d' -e '/pytest_cov/d' -e '/xfail_strict/d' setup.cfg || die
+ sed -i -e 's:-Werror::' Makefile || die
+ # remove vendored llhttp
+ rm -r vendor || die
+}
+
+python_configure() {
+ # check for .install-cython, so that we do this only once
+ if [[ ! -f .install-cython && ${EPYTHON} != pypy3 ]] &&
+ use native-extensions
+ then
+ # force rehashing first
+ emake requirements/.hash/cython.txt.hash
+ > .update-pip || die
+ > .install-cython || die
+ emake cythonize
+ fi
+}
+
+python_compile() {
+ # implicitly disabled for pypy3
+ if ! use native-extensions; then
+ local -x AIOHTTP_NO_EXTENSIONS=1
+ fi
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # proxy is not packaged
+ tests/test_proxy_functional.py
+ # python_on_whales is not packaged
+ tests/autobahn/test_autobahn.py
+ # benchmarks
+ tests/test_benchmarks_client.py
+ tests/test_benchmarks_client_request.py
+ tests/test_benchmarks_client_ws.py
+ tests/test_benchmarks_cookiejar.py
+ tests/test_benchmarks_http_websocket.py
+ tests/test_benchmarks_http_writer.py
+ tests/test_benchmarks_web_fileresponse.py
+ tests/test_benchmarks_web_middleware.py
+ tests/test_benchmarks_web_response.py
+ tests/test_benchmarks_web_urldispatcher.py
+ )
+
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/test_client_session.py::test_client_session_timeout_zero
+ # broken by irrelevant deprecation warnings
+ tests/test_circular_imports.py::test_no_warnings
+ )
+
+ # upstream unconditionally blocks building C extensions
+ # on PyPy3 but the test suite needs an explicit switch
+ if [[ ${EPYTHON} == pypy3* ]] || ! use native-extensions; then
+ local -x AIOHTTP_NO_EXTENSIONS=1
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=pytest_mock,xdist.plugin
+ rm -rf aiohttp || die
+ epytest -m "not internal and not dev_mode" \
+ -p rerunfailures --reruns=5
+}
diff --git a/dev-python/bitarray/bitarray-3.3.1.ebuild b/dev-python/bitarray/bitarray-3.3.1.ebuild
index f97dad95a295..b30f7f7d65ad 100644
--- a/dev-python/bitarray/bitarray-3.3.1.ebuild
+++ b/dev-python/bitarray/bitarray-3.3.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="PSF-2"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~arm arm64 x86 ~amd64-linux ~x86-linux"
python_test() {
"${EPYTHON}" bitarray/test_bitarray.py -v || die "Tests fail with ${EPYTHON}"
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 0bf771d7716e..bdfff4c8b02e 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,3 +1,4 @@
DIST boto3-1.37.28.gh.tar.gz 922848 BLAKE2B 134a4054d1142de5f63198f6fd97eef3dc5fe38523e688ccda56960200f2b1cd2ee862d95a275a13744844006e78584d1510850b2873da74d3ebdf53ceecd0a1 SHA512 f794769b083f52dd7e546758fec9a42dbf6fa8e09eef82a631b8d3b9dcb3b449aa85b7e72cb9a1f33c6bcaf89ef2bede4f771110e723efd98b47c9ab5c31c51f
DIST boto3-1.37.33.gh.tar.gz 927758 BLAKE2B ed246a9e8966bfb51a3ef567461a5ec6103cb7e710799db908b5c5e790c09b765a1b977f8b1a0b4f65ecc013178afe1c8e0b03729e1c4ae9f20a22a21e248267 SHA512 373b5eb1340c7da82b3d4e493f63e4b9e4b80fa4fe3a215961ea8c793382efca83de9b3c744456de572c9b6bb7bbb73cffdbc7d892d501da3213ed9073ae2264
DIST boto3-1.37.37.gh.tar.gz 930327 BLAKE2B 93ed4e903189a9620f13e71fe64557ebcfa5c696688b4a21fc4de0f9d21f51fd3b9c9dafa4a5dc91fc88165c14207b17b3f121e9eebdf1c1ab7e55472573d2ec SHA512 e19700633ccf6be76ab1baa0811c24d36aba7e0b8f1933fc10d1dc67d73ec0cd66a4c45ace1f2bdf815c3b35ffafaff2ce7ce9a4678e7f57984039f96d0f9fa0
+DIST boto3-1.37.38.gh.tar.gz 930949 BLAKE2B 387213d4d7bf3eeec902f0720d8a5be87004a9a45f92243636a9ad8e4157cf5ab1b2673387959ae31fc6605078654a7f571bfbaa5cc421b27bb7912c91a93121 SHA512 1723f0b2239c5837759b5f0a5bdedb19decb4d179a5e9e1ef8412bf5f927eda89670578dfec9cefffa694ece5397e2a5a601380252ab125bfe99a968619d360a
diff --git a/dev-python/boto3/boto3-1.37.38.ebuild b/dev-python/boto3/boto3-1.37.38.ebuild
new file mode 100644
index 000000000000..dfe05b3d9a81
--- /dev/null
+++ b/dev-python/boto3/boto3-1.37.38.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.11.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 30799766595a..573b855c45fb 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,3 +1,4 @@
DIST botocore-1.37.28.gh.tar.gz 14529730 BLAKE2B aa04a445d45d24ff7dad8553ce19676fc73e6cd852b5ee41c3cc29039aa6b353399ce9e17b8081e21652fd2bb06b1f58822cf1143a0305256c78515f21d64fa9 SHA512 ea757146393a94faee45487d3b0b4ba0927f0d3a5a37349788a2e2a4d1b4950d027d47bc92c3eb021d2253ce80fc4399a5dbfca447382d6b68e49786951fa02f
DIST botocore-1.37.33.gh.tar.gz 14547041 BLAKE2B 65fc9cd205b582dd5b046670dec5708d16e638789edfa3c3c6126f404b83a150210d92bb108156540523b0ed30ad06b5ecaa832ed8c751b99ba49b8cc975e4cd SHA512 e07480e100aa3b58831fb76f58d69e1ccea85c629ce9048909d51072d1b2a66ce10b65f97bfc0b82ba5235257035e85442b31b09a3fe4bbb2dfed7bcbeebfc37
DIST botocore-1.37.37.gh.tar.gz 14563135 BLAKE2B 290689f13333ab7ebdbac0bccf6568035776482dbab62c542a41ce6bf93b9d5e01400526c50534fb068798dc5626408c039f8746f091fe881cb70629c6ccd6e4 SHA512 3e020f6f264ef19a71f812733536812abe92e5998f3c19766782e01cdd235a17648b330bdb64289ea8b87a520625e0c7ece9436e014ade111d66bc4181f5bec9
+DIST botocore-1.37.38.gh.tar.gz 14568062 BLAKE2B ca684d02e52ecb0f12597b9e1ab8de4a4979cd177c40d4d71af3bcdaf7d5a27187521624cb178553054acd1eefed7ff10abedb29b86fa0f0025978349ef9a21f SHA512 ed1cedf46a47853a889d6daa63113e0900732fd40af4f44d1787a0d12238aed4c2262de0e1380d2eab2e4a667720d985d48b57e558a3f5305edd3172fe686808
diff --git a/dev-python/botocore/botocore-1.37.38.ebuild b/dev-python/botocore/botocore-1.37.38.ebuild
new file mode 100644
index 000000000000..df85ee0d220c
--- /dev/null
+++ b/dev-python/botocore/botocore-1.37.38.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/bottle/Manifest b/dev-python/bottle/Manifest
index 8f253d1d417b..761bfcb39c86 100644
--- a/dev-python/bottle/Manifest
+++ b/dev-python/bottle/Manifest
@@ -1,2 +1,3 @@
DIST bottle-0.12.25.tar.gz 74231 BLAKE2B 2856d94e1525f21e272d70ca3101188ea65417179342d7b3e971c5d1a3be77265e4197e5d29764a5739adbd984883ed121524f29e6a5933b8681e2c34b511a57 SHA512 14b8ed1ffd58f9667d451872ccf73a6f4bf8f7ffb9329f55314f90c770630cfe3f9956f786bcc7fd5f67fde22d14961952969af405912ebe71f019ca6599c975
DIST bottle-0.13.2.tar.gz 98472 BLAKE2B 44c47d052e1daa99bea23fa0be9bb9977c4747bbee496e6815e7267b473cfa659026b8abed248d89235915c5018c29b455c379fa9ed22df8ba861b909b27cbce SHA512 3923070d3723fa975aaed79a6edc7ec47ce2d3cbc4b3fbddff340e19e3e13215034208c2bd198726b0461008313c4600021bd2766b7f0a0dfae2b12ff988f52d
+DIST bottle-0.13.3.tar.gz 98555 BLAKE2B c076de717641022441b6fd2a225c7dd9f68baf68cd19f0fb64639e38e14bcd187f6bb4a04bbade95252715bca5cccaed94de0809f6ab9c8c431f0c2db0e9abb9 SHA512 a84ec4851eaff4238b31fe9eeac02d694a94678e4f4cae9513599fb9062df4e8593bcd15fbdf8a6b020f9f67e75345de964da06a66a28708c066d1c8e94f5564
diff --git a/dev-python/bottle/bottle-0.13.3.ebuild b/dev-python/bottle/bottle-0.13.3.ebuild
new file mode 100644
index 000000000000..6bc64a88ede6
--- /dev/null
+++ b/dev-python/bottle/bottle-0.13.3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="A fast and simple micro-framework for small web-applications"
+HOMEPAGE="
+ https://bottlepy.org/
+ https://github.com/bottlepy/bottle/
+ https://pypi.org/project/bottle/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-python/mako[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+pkg_postinst() {
+ optfeature "Templating support" dev-python/mako
+}
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index ddd860e4f8cf..97fd2765e59d 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -1,3 +1,4 @@
DIST cfn_lint-1.32.4.tar.gz 3090585 BLAKE2B 348c0a4326bcd8a7c0c0230d6090774b300192e4a68086ab4a8350ed0b854b750feae0ad55953c1f3a8ccf32990b58078668b76bfbd41ee59bc736bede87f524 SHA512 81545db95bca2f31a41f327e4303e4ec5d398b7b1b25030bb0a8f550ff79591d0e350173234c2a54ae4317180442943bd0c0e4d8327e3163c1f5ff9b92dc5fac
DIST cfn_lint-1.33.2.tar.gz 3163304 BLAKE2B f61d6a55e1fe2edd3229d6e9281b6267b3231afea43376d0ef2046ed941ef1c910c56e1af05b9eec08c8f0bec87fcddc95757a2433e1c46b2c8863280bebae2a SHA512 d935009da692e5003461d9c9f806733d17de426e0598a33a53470d3ee6c8a194c735b542bd346e9b33d462a71a6043f6ae1f8e9ff55cff3b6b942d2f1f49913c
DIST cfn_lint-1.34.0.tar.gz 3150863 BLAKE2B 83c43e72113cfabc9f3548077fd899dd9f6fd484b9d19d7b10a4a3b1176686715330153d6aaa0d07d681b879f2ce465cfd4da27fdb5104e4f5169ec62b8e6be2 SHA512 89225300054046cbff821d109bddc889b558d3e29d6c6fca619b18083072ebb4ea4e6c0e473b50273b949eab37ae9bf74d08c49610cd0ce39ad40fcbe106f049
+DIST cfn_lint-1.34.1.tar.gz 3192324 BLAKE2B ce9d082f9d20f2bd54a178ead36d82d9c84f8802db453256399059acd6aa1ed86b11cd02a45c4da401d586db514434ef57978be961e4f533d672c015865cbab3 SHA512 2cb598419f8a8f083c11899eeb20be759f198411d932aba20b717c6c0bbd42be28196387c02b633bb1625b9d6c1a6aff4177709f261aaf161b7281646d83b78e
diff --git a/dev-python/cfn-lint/cfn-lint-1.34.1.ebuild b/dev-python/cfn-lint/cfn-lint-1.34.1.ebuild
new file mode 100644
index 000000000000..669286dc533a
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-1.34.1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="CloudFormation Linter"
+HOMEPAGE="
+ https://github.com/aws-cloudformation/cfn-lint/
+ https://pypi.org/project/cfn-lint/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.97.0[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-5[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
+ dev-python/junit-xml[${PYTHON_USEDEP}]
+ <dev-python/networkx-4[${PYTHON_USEDEP}]
+ >dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+ >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}]
+ >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}]
+ >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools-77.0.3[${PYTHON_USEDEP}]
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # different line wrapping somehow
+ test/unit/module/template/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/coverage/coverage-7.8.0.ebuild b/dev-python/coverage/coverage-7.8.0.ebuild
index 8cd865ac61ee..bda6274afbc2 100644
--- a/dev-python/coverage/coverage-7.8.0.ebuild
+++ b/dev-python/coverage/coverage-7.8.0.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 ~arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="+native-extensions"
RDEPEND="
diff --git a/dev-python/jellyfish/Manifest b/dev-python/jellyfish/Manifest
index 52e748f21b60..d5c5509076af 100644
--- a/dev-python/jellyfish/Manifest
+++ b/dev-python/jellyfish/Manifest
@@ -2,59 +2,36 @@ DIST ahash-0.8.11.crate 43607 BLAKE2B 7dff8e41798ba25df8c4827ff414a182bb25da4825
DIST autocfg-1.4.0.crate 17712 BLAKE2B 7f7300439899be03d001dd32b7e797bc4b9a58103081b6f7353c4b5897813cedf870b3fb1fa25d320a75326b334b44d8287e8603de34fc560d0b567143915cc6 SHA512 3b5e7c30bc73e105e4bfcab584c24fc4016db41fac9c356c6649fd841051704bbe8848e09546eb50d7c1f18ea8ce1cb72fbc268a620d5c609b3472114b5be73c
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST csv-1.3.1.crate 888542 BLAKE2B cbb2a64cbde9c315bfdf2ddc3c14b2cf650595dda8fe233d8b84ceacf4756e72dd9b5a932e4c27b496c70ea5cb8fa1d29abea3d833b8169b6f271bc3834ed2aa SHA512 6b0be5e017b2b2cb926d11d7a36cdae1bf0ddb56165127f25f6fd55956f95a572ed7e054f863610e91c9c2329f5af0eee9678f9020644800587d6daa5a94755b
-DIST csv-core-0.1.11.crate 25852 BLAKE2B 9f56cea786b5b35f6fd5c4f41fc3cc06d777f6d643d939ca7d57b1f1a24d4ee16ae3a4de629e484b0e4cf87009abf4911dc4d1bc199968ef5c7f4100cd238d1a SHA512 0445c8a4d4d0f90f03e5d6507c26454aaeac0b355fb39d19e1676a7cb27b4372db3541367ce838d38151862b7bfbf19750cb550e24e74ab5e07ae9bb4edeedee
DIST csv-core-0.1.12.crate 26298 BLAKE2B 6ad0052ff32aa788a784540a4c34f441eba0cf0ea026b2bffafc9bde2d1c253f758b6fc013c8f3378078d7f5da413044318da229255e1c2b34d77d8a7237a635 SHA512 f3b02c2d95db7c9af2636b0bf496dc721d0b880d490cd63d29c0b1a25f98624b4e072e6824788cbcce25d855eaecbfe33b0cb72cd013a6af600208ea660d99e4
DIST getrandom-0.2.15.crate 37163 BLAKE2B 7d534e799a4711d01c6553b8c9422dbf01e384a850fb0f7cd76e444628f2b96d28d0f5e8dae042f8081a2bf9340f57c558be50a6f22ed5fa6b0301a15898fb35 SHA512 04789a53d3f4a84862e1e8b2113641af67e471b468de1222470d5e6cef0015232463a2cf3c3518dc2a533b3983b175a7c8922da00665bcf71c1e4e279b67e6fb
DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
-DIST indoc-2.0.5.crate 14396 BLAKE2B fe838c6a855d6ff7396675a3fe9b2e0b06a93cfd4013b0b843d24d2fb81f6566528bfd1753c649646f06cb7e59262bd6ec3ed79d4e6f01d740cf0682355f2e5a SHA512 095fb56a3d87946c42a63065a8b276c2d4b9b835800014b400bb987593bf56701bad9f55d947f090740fdb7641a4f3c87fe8bfa5724709e95254d1e8e2e3616f
DIST indoc-2.0.6.crate 17164 BLAKE2B 1a6cff95bc12ea885ef36b935bf4f1c7870d65be0ff31ffc67dcab904fa80215c1254c1803c5d0c5686252addfad3512e9e1ec79d3edcba026a879f4706926d1 SHA512 e2ea2e5c8226c802bbe0631c1a99d2edd088cbafbf978b2a7b71c7c7f47754c6d4653f466e286441b61cc46def1c7f7a02d4785caab93a61dd785211dba7d1a9
-DIST itoa-1.0.14.crate 11210 BLAKE2B b2d33dc384757963eab3ae7d80bb672d828a549967986e3af8c70fe71a0ad46c4a278da2db4dfccef99e804e6cd4934067e97c0697a33ac3302cafbc46eeb416 SHA512 ea2d38df373652ddacccd11e610dfdad4e3ae7f0d476514e6ac58092733c817bd834e8cd88c3bc4178dd5a646ba628ae626195e0aa407e8534ae3c2a7b049987
DIST itoa-1.0.15.crate 11231 BLAKE2B 17c261baf95bff2f6cf0dbc33ab78ebbab0cf5dc56aeb7f8977377af868deb5957918f1763c2fe8c080e931489ea89ebcc16b3ebd976eeeb7663ff74989a1071 SHA512 158ca5dd4b04cb12d9292a4df63c72443adaf5aab1bd9aacdb964dc58878d847a64251f84897cb25c34648d4c973b44fef5b4c175d7c04cabc2c13b4631c2e42
-DIST jellyfish-1.1.3.tar.gz 364473 BLAKE2B d2c41dffa8efaef96d89258005cdedfa831f049ba1a58d2a19a62aba7f5b6a324dadc09950175bf2e3303e5f98a97f1779c990f393d88578b1f3b9c15fd10e1c SHA512 bf70b87aa97832efd04b498d07e1fa50928fb40f1a308fbeaaf48353b6c5f7f45ce26334c49bf1fbb267b2557b69844f42bef58968529bb98c45a31865d314e5
DIST jellyfish-1.2.0.tar.gz 364693 BLAKE2B 417a61ce70b8e957b408a20ba5f338feacae37b2cd89c0fa00c2044ef39a88de3e7dbc72599cb07a9b439f31ea98c3bd879bf01afbe8a60443ca640917936763 SHA512 e279d8871755576f3ebe847e2912da20736fa491daa63c393c9d9010b7b04f7637b65185a3929fe0b918d08a129669e5b6369db21fddff989e3426ecbf58ae63
-DIST libc-0.2.168.crate 757025 BLAKE2B 2597fdf5a77345754b8c9168d9f07f83ebaa0413262b94ebb19f976f49cc2c47893e788ee2abb3d00a995bc8f99b6ebcf24abbdb320e18037e779e1241599b44 SHA512 499f7273ab5eac0961fd927d5204ff4d5b3b290c20d00ac99054ee596b6d3ec4d6712772c52b09c84554f0514a8f66b41995ceb5b0ec38a7295a4fccf0e94349
DIST libc-0.2.171.crate 785246 BLAKE2B 2bfbb3146d63444632b924520bc3d8af4adc6bbc38f4a7c6e8a003365430372ac1c05246684b54f0a98c36c8a7f02c325e1a6dd7fec44adeff41767e427ea77f SHA512 aca8b5f769dff18d9b3d73cae2c496f64a9828edfb0b57412da01a89158e770a5dcbb74bd83612870f9a08eb31647c1a2c92463189f16b01be8cdfc76fe0bacd
DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2
DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956
-DIST once_cell-1.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8
DIST once_cell-1.21.3.crate 34534 BLAKE2B 3578aaef305cad2fdffdc40c392775a3540bfab3f3aeafd22466d9507bf8346b9fcc200929d48525b051070c0aaa423ecbcaa12868b34dca007991effb224166 SHA512 32a87506c6f4598f3ca2c88556014ef2093d5db9a08602335e847caa537a866492fa74c894e7e1da2e4289a1d3dbffcb90a9e37a4a1453203832f434b8206990
-DIST portable-atomic-1.10.0.crate 174760 BLAKE2B 9a05d6162c95f5140709cbd005c1997449fb6373700e8ed3966e3379898e95f3cbdb90b387f1c7deb3f1eb33125378852a7168d0d22b433813f6c082112b0365 SHA512 fb47ab53fe240d5b0824dd068c6dda473d3e71ae6f5dfccaa17262a8b6de0e1dde05d83975e53bbfcf43f10ef5c634fc024f94613937927ae93f1adad1dadb19
DIST portable-atomic-1.11.0.crate 181258 BLAKE2B 627bd7c306f6c4d7991abd9f995b7e0ce110a7ace738690c287a43ce3b979691214e525876f8ace0c2f0d10d781fba95c7d3bf29aea28e09b05b06f4764db03f SHA512 71774f8308963c5399095c6b755befdf9ff3d28f9529b4bae1fe0f2aba733339a267aa6f0ff854e59fa5044a9b0c2c86bad3bc4fcaa951724c839b0d6a22041e
-DIST proc-macro2-1.0.92.crate 52353 BLAKE2B 9aa29fa6f1c56c0392a94a81b4c61953f4d185012cdca37e356817845535da79d7094bf43472ce63109ce479a2fd0cbef4d802afd61daf92c4db303bcac60e7e SHA512 e614f08acc0a7e97ef580479cf5b682378df1ca16f09bfb2296ebb3490a435229dea9d682c621c54ce57e8e1d3b7803eb8ff83c88bd02e07228dba6d02f14aee
DIST proc-macro2-1.0.94.crate 52391 BLAKE2B c50986bb34468379e22215c6572c2b722f54381c02258fcba6805eef0166e4bb591d20b94b9084b5d68972df8ef12476ce0d1081588cf80dad3c4ffffa347660 SHA512 3fc4552187d4130f0fdb415f94e625c156a1fdc6cc955fda8a68b49983ac8a83b897f43d1caa130c4f0932fbd9651140b7670601faa2b9b936947c3fd89f7769
-DIST pyo3-0.22.6.crate 546746 BLAKE2B 2a6f8c5ce2ee96e1812177a11c5fad7e15f3a73d9e30850edf0855b13db6cc95427e186883b4aae25a2d2466d3fe82f56180a39f3e6e0a54bb0a3ef78d495400 SHA512 d746007eae22f5b7bbf173759c61cbd2aa893898d88b8be5680a0237deec4d113246edf5f62fbbec3579ad4bd7307499b94b887ec306112ffe3df5190fe70e44
DIST pyo3-0.24.0.crate 1108432 BLAKE2B 03098e1ed1f2bcb489ab5fbaf2605631f75804ad138591ae88975c287b8e7544e5f70ef7e3261625075498ac00545b79f6c0b5aab3bcdee2897cbbfabc3f7e87 SHA512 2b9be3cc780c48198ccad08c304053c5248d7c3b7a32e8a3eeba48246b962aa71cbf31ab8c49cab9b555933cccd447412761017b477019a35dc2598999fe63ad
-DIST pyo3-build-config-0.22.6.crate 31369 BLAKE2B a1a72de120c4ac4f23a3faaf9b2e340231d7a778a29083ef25fd863fa213afb2a9b720333e3d46a6e1d32105f63073276a23b9bcd999a97fe71eaff3afc7db99 SHA512 9ab44c830e56ddb9ee537ce438fc690664d2c5416f01cdf72498ce062e4c1e7192eac8b7dc2de86c9f2212890b133b69a66209b1615c4eabdf4eaa6882a980fe
DIST pyo3-build-config-0.24.0.crate 33982 BLAKE2B 7972eb69fafdfc73ab7e2ef65498a05a5eeb122e332d10db9990d1a7849fc651a9179fa7dba71707150b005258a7f32fe711d7068fac5c5ca071abdb10bdb55d SHA512 f1f571ead6731d1d775210a02df5ca8ef850460eeabfbe04552403477f9d656eebe25a8833ea03b2e2bc7080bdcf9c6ce3b2b3f9b0f746c316ee31b11b5a2365
-DIST pyo3-ffi-0.22.6.crate 69352 BLAKE2B 99eea6ed87001b23fdeb263937bc14be0fadadc1ad77d4fa8834045ba2fc6ba5c0b89f4051916a058b7640be655afe22785b1da42aac8a32d10209b7b37bf810 SHA512 616e51a0eae1207830fe95251d5b62f126daf446bec68ac98cb1b8538aaa59761dbde62d446a9ee205c23453dbd32bd8ecb15e26265ed1fa1e5e2056efd96369
DIST pyo3-ffi-0.24.0.crate 76274 BLAKE2B 2f5873a9b2e6bb6a420056a2cfc063e6e04c184bce58a39498307730aa5e061f277de6e805a70ef2448d4473b0bf32e8413c281438464391ffce457749d43c91 SHA512 2206cfaaa157ce7ab7b480823af0f96524e9d78abab1b042c00fd74f872a8df9e9014a3ab1db28492b750e8ecc8150f6519c3190b7ef297837597b72b64f999a
-DIST pyo3-macros-0.22.6.crate 8182 BLAKE2B 81998e4f4cb325763e4d3477af05b332e184cabf6391761f850d23508cebcf8d496ce12f747ea241523bb3899886eb20494b076a0651151744bb81d52901a1b4 SHA512 63f7a7b42e099742518c8a3bbc7647e98debb5500d08c39e11e8140fc146e790ab06e005d8d14c89aba79ebc5bf04fe1c92c0e9c5b13421307d3a4682d044179
DIST pyo3-macros-0.24.0.crate 8850 BLAKE2B 7470b3c8af49c3da5da979a08051d549255ed2bbf1e77e2e186ed43daa832ffe51c28c732e5d390effb8662f66c5c138a517a07cd0e90a73a4476e9d018eefdd SHA512 e949224b6ff3368f4594eb946859afd777efc43ca9fd436e176eef9d4549bd7428d04cee55ea8af02c8cb066dd9396a405de5ee6290a966ee52a0f1c64fd2749
-DIST pyo3-macros-backend-0.22.6.crate 66312 BLAKE2B ec0b11bee1ad2192e8d95cebab0075d6ec5bf628e3344b86fb8e20a6d0bc1f891b56ccfa4622840a609480581f32bd211b9a3d1dd989716cf255efe3fdc89331 SHA512 87463939b5a5674e30e8ca05ae747f652f8679f0c5c85d20967e9910ad853768a769a914580e82e409188fe4add80a3117ccb9da24c250406bc6f76fe4453799
DIST pyo3-macros-backend-0.24.0.crate 71998 BLAKE2B d3cd57fdf2a8b0f750d8f00fa36f32b95f9f13adf9453e0823fec0791ae99af018db6e596205ff9f9f555489cec024e23eb19c53379c09381c0cb209d8a5a695 SHA512 58b06343fa03b2b7aacdafcf219865bbb5b80cc2b28fdf16133a7d43fb7723cd83718e067bf6e01f96b94738bb83cda87d4ac2703d8d59588708d938df8e66eb
-DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
DIST quote-1.0.40.crate 31063 BLAKE2B 09036ff3e5ebbd775c466bb936de91d4c070481eb4b98c62a4cddcda57cd7b67d63f979b321f6ec64aabee3f5da6c28e7a3efb83f4647768ba578f1bd0bd0bdb SHA512 45a76e22a2b0bec47e4ba73c3b73cc41d821dfcce9876134c5d8eed514da214aee4ce7612e372c8709f888c0d8b9b7e5442f27adb7a59f3571f0339ed7e2ac99
-DIST ryu-1.0.18.crate 47713 BLAKE2B 409cdf4b4e77685394018371e91ad6fdb175ac57e1df9f902871f13208515e5a2ab1daa226fc1e7291278e64448332845be4cc9409bce3b2f3daed409259e104 SHA512 a9b2beac778ec47e6be303148d7512ee681bd2361f6e4ac6db32c8b4baf86a8c5eb5b0d02eacd6131ae88c7b5105c57018c3050676e0b3dd1ed9c4d2fd650e84
DIST ryu-1.0.20.crate 48738 BLAKE2B b126085448cb58639a7b5867fe313dcaabaf19df478f67fcb6cf15b8e881a21e641878345e0bf1fea7d24b56b921e667fd26a39cb81fca7ea02585332068263f SHA512 329c581429d9b8baa7d9edd9cf20e23fb8002f339d9fb3d50ed4c7eb68fb19c1ba966d52a9c9602265ca5f59f2bd4393ddcb3a7ac20c64aee3096e137eb2a384
-DIST serde-1.0.216.crate 79000 BLAKE2B 98c0f5cee2f9212c6b7620d2068665379471ceb7557d1454cab9b1c2120b526ef597fbb642f65440e70f92a4764cad33613b478bacf99138dd5bd51fdbdbee6b SHA512 baabf4c7aac4a540c9ed18b336662087258b71c9cb0e547c8d83a2734818ab2cbbe62f910d812eb61d3d46e653c41a3eebc99b1d679bfc51f95710c71a8ecc20
DIST serde-1.0.219.crate 78983 BLAKE2B 7e9542a04c7f1aeff95b821245034368ff1721d98d7138bb1e0a99cdd6436dc37d69606308834fd33daaea3a1792409b3b2305b802433fa1d155816c55ca2a7d SHA512 0d3fe9a47af027d0d79499e60d940661dba6e29e8f0ce47d0db2ab722030d255aff637248af6f893a9c4224239733db09ffcdc6e1923a7177bfae55c98ebe769
-DIST serde_derive-1.0.216.crate 57674 BLAKE2B 12a9228679c16288c08c8b256707e276aec79f84ac7af0c4cfd1f109500dfea80438df17d798acdd30a9743c753e70093b22bd324217529bac483f257682a3e2 SHA512 80fcb552279ac7562297df878f2f5e9ac09241701f5cf1088fcbf473b638f58cd3092a7930d8937ca0df9a47b9ae1a42d490cd46a275259cd8089fe8f5426469
DIST serde_derive-1.0.219.crate 57798 BLAKE2B 071f02019f829a2753769ce915d11df8f0d202ca67314fe83b42e1f1f3d07bc91b7e7c38fe498a0513714f80d3a3dbf2b447b1f85762de06dd021119801afa89 SHA512 1676bbf09e11273705a35c540d52d35d1bba7cdf1f347d40a364d7ae9269167f9f0f62ff4fa384aaa613c83e432a8eb3c016587ea643bb11434c00664a5c116b
-DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
DIST smallvec-1.14.0.crate 35561 BLAKE2B aa8ee61800a6d13eda5acb4e9dc03543160849479a96a72c50ab38013b23e9593a665773b455a09777038edd436d7a35b501f6d4a0e16ff49544be60345a1e50 SHA512 90de38f208f551cdbf4980fda2314dee57d4e2bbf769a01c47bc849189e9243474932052faa92fe0ca59ecc9c5d1ed84091ef87f724343d38ebbbf710ba232be
DIST syn-2.0.100.crate 297947 BLAKE2B 50a9b244732eebc16464bef152bb620d86aba590942b0d68710d36e89c0ee752629be5bb8db48866c7d252d545ab910625891a5a9b499ad9142191881eb9b42b SHA512 082a975c6448febe38abdc0b43ae929a97a303c0f980ecd2bdd6c44aa2b39ee5aeedf6b1c84316cf088e0d97aff011ec0482a5242ddb338dcf7db5d55926cf6c
-DIST syn-2.0.90.crate 290584 BLAKE2B 9f469001c1439ffe57c578119653d3021c2709767e8e881441459a190402679f4fb78aa65e7822ff20913801c3be00d9b8f115189ea8e63ed94ed359b40fc9e1 SHA512 44606124f113c259c19edcb2adc1378d8292b422d800604c0e0d1ba89bd2d13d518cf4a6afa58daded54da9cb285464aadb113815406a0f09c5e18f865789ae0
-DIST target-lexicon-0.12.16.crate 26488 BLAKE2B e7950e4a302059a1bfc9bc15618a3c1b971a17cffae117a6e8f5f63a0d82fd2bd02680301d15338612d5426d349dd24cfee30ee787a15a7d3187f2a6825e69ce SHA512 092639957c4a0391560b6442b31c47159c04d12e971010f730a6ec9cb5389e4be903ef3d7daa06db95e64dc78b6970731fb647179ebaad2b12e9ed5e9b24da27
DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a
-DIST tinyvec-1.8.0.crate 46796 BLAKE2B 720d0e6d881855a36779e12f5ffa708d3a8b96e6d0de9056cb33c9b8ce0d408f99b22f5b2bb9d64bee72a011fef846dbebbea2ccd238d7b951eb5ef0c4866e05 SHA512 b7b32e38229645965900f80f298685f13e6d13e58cfd6945409a6643ca9c9adc2621456956d5998ab9dd91c2db4ae79638b156ca0d9c7c5505023fd9b28414df
DIST tinyvec-1.9.0.crate 54137 BLAKE2B 68a96ec0ffa392586c3bdadf2323b2a3b416ecb81db5d18ae0e05187b097c7882da6678bc881e70f935554862fab5cf41ae590b27e0fab7c1c73995449b84f5f SHA512 5f42811be51c58c72b80fe9a7199250fb6176f5766dc774b39ff656ae5ebead0d9c91ed7db1046288b8e05e20edba36455e4cc6fc0766c60898187f30c232aab
DIST tinyvec_macros-0.1.1.crate 5865 BLAKE2B 2bf4f68ca11dc19c72232951605a4c809b34ff38ee365ee4f592a3c41360e23c9330cfba961e2692a0ad568fef4aaaac51c40808d491178cf7a0c4b5a1c5d484 SHA512 10008c7b3a3d50c94b9c370015b76ee082f5dfb6dcacf014dc2f2dbe92f903618d10d0202b21f48fcf98a94ae76fb712db55a5e8ad353645d378cf0e6ec74f7e
-DIST unicode-ident-1.0.14.crate 47547 BLAKE2B 30e0b6d7f3a967aaf5b9d91237008a60c3a8ded53bda901696e23cea3931dd71b01ddab866dca9e31e17c395d5f5a68f2a938655b693e894962568c2cff5ca15 SHA512 7c6dcd1724e8cfedc37546d1abd49088b633dad228097acc73d7b6cab255b223e830c541144e05a00388fd8ca8066f27c18792419cfa58ee9da4460a38d0bc0a
DIST unicode-ident-1.0.18.crate 47743 BLAKE2B 517ab42a847020515b2b871844d0571ea672340f89a762631a791eac18935ac122122fa5566e58b99ab47de179eadb5298e8ff1d05b123c4e93b7fa989c8e31f SHA512 d11f89fb696f9e2953c96a40b5478832651b268c83b9c7a700b07e768e795d6e8dc346597d1226df21219d36866768d1f640bd8edb68db8bd3d5d437b2bfd324
DIST unicode-normalization-0.1.24.crate 126536 BLAKE2B 1d6d535a1236562918d2625172d38c261854cd8c45cccc81c5d5aefb052db5d0e33981d95f5c87e8760cf77b3651c60b7ec1762421a7a9caa72fe7eac3f562a0 SHA512 f7af59688773319b9d1523955ce9b82e6735bd72358715ba5c056f41956ca050b6a612cae1b39199cc089674b3c71e4016d85d48167277c794c5cef3df881754
DIST unicode-segmentation-1.12.0.crate 106323 BLAKE2B 268b60aff6694434f05afb7e2b8187eeccdceb77460f8ce2ac0f84d470f8a4e03182ce3f7906177cd2f00f989273a7e69061a763006245f0876bf21b15076804 SHA512 55eebfe5e9972b39d7c0011d80eb5f517d636de37870999119a3d8f064f21f67b66a5ba9761d562738b05f220e21d56b5be7bbd9cc51662994e40dd67c38f946
-DIST unindent-0.2.3.crate 7306 BLAKE2B a57407b117e99c230750c7d4a2a0899586c8271e4ba88ecb409c976905c014f42885372c234a75fbfbedf71dbed779f95f735975d150adacdcb61152a49db4c2 SHA512 2f1eb420ea3653b00d3e5fa0c2c105da8fd8a37cb3e699373c168604b799fccd5f0faf0cddce4212d119c2afb0c86b41efc3a50752b83ff7beda2bd84d360505
DIST unindent-0.2.4.crate 7422 BLAKE2B 2e7870cd4f78240dbb1e5fb9c0f9b55c57bb40242fe668f105a0e862f1d6300e31efbffe0cdff676a5f96a8d19dfb148f88bfef1cd8a710556d777fd0f4ee37f SHA512 58bd4fd20a0b0a7200e0ea3ea70553cea135a5a8f7a2fb178520c41228f435becce4b9981019b7c73a17df87a2ee9b2a47c4cec29a3011bfe848d48b2473761b
DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db
DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
diff --git a/dev-python/jellyfish/jellyfish-1.1.3.ebuild b/dev-python/jellyfish/jellyfish-1.1.3.ebuild
deleted file mode 100644
index 9c8319a62bf6..000000000000
--- a/dev-python/jellyfish/jellyfish-1.1.3.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=maturin
-PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
-
-CRATES="
- ahash@0.8.11
- autocfg@1.4.0
- cfg-if@1.0.0
- csv-core@0.1.11
- csv@1.3.1
- getrandom@0.2.15
- heck@0.5.0
- indoc@2.0.5
- itoa@1.0.14
- libc@0.2.168
- memchr@2.7.4
- memoffset@0.9.1
- num-traits@0.2.19
- once_cell@1.20.2
- portable-atomic@1.10.0
- proc-macro2@1.0.92
- pyo3-build-config@0.22.6
- pyo3-ffi@0.22.6
- pyo3-macros-backend@0.22.6
- pyo3-macros@0.22.6
- pyo3@0.22.6
- quote@1.0.37
- ryu@1.0.18
- serde@1.0.216
- serde_derive@1.0.216
- smallvec@1.13.2
- syn@2.0.90
- target-lexicon@0.12.16
- tinyvec@1.8.0
- tinyvec_macros@0.1.1
- unicode-ident@1.0.14
- unicode-normalization@0.1.24
- unicode-segmentation@1.12.0
- unindent@0.2.3
- version_check@0.9.5
- wasi@0.11.0+wasi-snapshot-preview1
- zerocopy-derive@0.7.35
- zerocopy@0.7.35
-"
-
-inherit cargo distutils-r1 pypi
-
-DESCRIPTION="Python module for doing approximate and phonetic matching of strings"
-HOMEPAGE="
- https://github.com/jamesturk/jellyfish/
- https://pypi.org/project/jellyfish/
-"
-SRC_URI+="
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="MIT"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0
- || ( Apache-2.0 Boost-1.0 )
-"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86"
-
-QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/jellyfish/_rustyfish.*.so"
-
-distutils_enable_tests pytest
-
-export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
-
-python_test_all() {
- cargo_src_test
-}
diff --git a/dev-python/jellyfish/jellyfish-1.2.0.ebuild b/dev-python/jellyfish/jellyfish-1.2.0.ebuild
index bcd1a91067ad..5b7b30d7414f 100644
--- a/dev-python/jellyfish/jellyfish-1.2.0.ebuild
+++ b/dev-python/jellyfish/jellyfish-1.2.0.ebuild
@@ -66,7 +66,7 @@ LICENSE+="
|| ( Apache-2.0 Boost-1.0 )
"
SLOT="0"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86"
QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/jellyfish/_rustyfish.*.so"
diff --git a/dev-python/pyzmq/pyzmq-26.4.0.ebuild b/dev-python/pyzmq/pyzmq-26.4.0.ebuild
index 78772793f0a8..e6f6da28ef1b 100644
--- a/dev-python/pyzmq/pyzmq-26.4.0.ebuild
+++ b/dev-python/pyzmq/pyzmq-26.4.0.ebuild
@@ -23,7 +23,7 @@ SRC_URI="
LICENSE="LGPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha amd64 ~arm arm64 hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
IUSE="drafts"
# There are additional test failures if zeromq has the draft api enabled, but pyzmq has it disabled.
diff --git a/dev-python/recurring-ical-events/Manifest b/dev-python/recurring-ical-events/Manifest
index 738b0bc79fed..73b09f1f0070 100644
--- a/dev-python/recurring-ical-events/Manifest
+++ b/dev-python/recurring-ical-events/Manifest
@@ -1,2 +1,2 @@
-DIST recurring_ical_events-3.6.0.tar.gz 606489 BLAKE2B ee2f24c86bb39ec661389da98a9d126fe5f24891d7ec08d90d625ce9d491b9ea8cfba47b0a03c0a80951e0c4941e30bf774855e1048892b855a92995f6471dca SHA512 fa13e7a5c396ccd468f3d505efe1075dbfe789b4defd5f47fb38cf20895269852a4663cf1fef78004958b040217ea1cc29068f88fb4970f5f15ba8ff59f0caea
DIST recurring_ical_events-3.6.1.tar.gz 601919 BLAKE2B 1dd855880b45bc7c093e49670d5ef11d3d5bb121041e1bcaaee6ebe131d8fc925cd290f4a433ef99ed0a49a547bc547c2355920d46c86b8a02b521989648a040 SHA512 4a4c2e04ce9c2cd2022055a9d623ec76b3e95102b6b40bb1b0370b238fa850d5a6ed5ceec10d81836f047e4df0319d66b07355cdb537dd811fd4526143169066
+DIST recurring_ical_events-3.7.0.tar.gz 603282 BLAKE2B 365359d337c55a1cafbd7600e6a95ff8942d6ace14747def608f8afd8c815989ecd4d5630244b64d0dce78a520112cf2e794c4eeb0848545ad4bc22573b773a2 SHA512 2b27a4e222e9f13bcc49a53539afe64a6d4c25e8d5b72ca02432e7abe4cb2e0f3a5d85a48cdda5ae08e940c66b6a91f9791f4b5fa2d7abdb915cb4a8cc946cf7
diff --git a/dev-python/recurring-ical-events/recurring-ical-events-3.6.0.ebuild b/dev-python/recurring-ical-events/recurring-ical-events-3.7.0.ebuild
index 2a915b110f67..2a915b110f67 100644
--- a/dev-python/recurring-ical-events/recurring-ical-events-3.6.0.ebuild
+++ b/dev-python/recurring-ical-events/recurring-ical-events-3.7.0.ebuild
diff --git a/dev-python/setuptools-rust/setuptools-rust-1.11.1.ebuild b/dev-python/setuptools-rust/setuptools-rust-1.11.1.ebuild
index c922ebef13f0..0cacca395d77 100644
--- a/dev-python/setuptools-rust/setuptools-rust-1.11.1.ebuild
+++ b/dev-python/setuptools-rust/setuptools-rust-1.11.1.ebuild
@@ -118,7 +118,7 @@ SRC_URI="
# crates are used at test time only, update via pycargoebuild -L -i ...
LICENSE="MIT"
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"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/stestr/Manifest b/dev-python/stestr/Manifest
index cbb82d763777..392356421283 100644
--- a/dev-python/stestr/Manifest
+++ b/dev-python/stestr/Manifest
@@ -1 +1,2 @@
DIST stestr-4.1.0.tar.gz 113187 BLAKE2B 6bd423aaad6189c90fe9b43db9390e85a5f458cfa899c33bd34b1340ca7f111d2edd2981d9c664d63ec6b880a904b08a26c09c332548ac5f2ebdabd2bad6a00a SHA512 77287ffdfe59042c4d189aa6c662df4357633d3a134ea60a4533b5b8b1b433ffd6f265a430977da175f242cc1c8e8514f876a486cc900a436cf93ab629fe7b7d
+DIST stestr-4.2.0.tar.gz 79824 BLAKE2B 85ec7ad7a029ba4ebe75c71863ea0962d5d8d3add6fe8f4903013d4c72620b98fd4baf6a1690ccc2084b299930fb8c7f00f9108211742cf850040f4ed2219c86 SHA512 2d870604f671b720bfa7ac21d58b5beb56aab2fe4e70e99c8f332ed0081c0c86e791eeb92d4477b6dafaed50ffa17a0ac8e776bd35713fa5a1b0785803a27ba8
diff --git a/dev-python/stestr/stestr-4.2.0.ebuild b/dev-python/stestr/stestr-4.2.0.ebuild
new file mode 100644
index 000000000000..34a72418eabd
--- /dev/null
+++ b/dev-python/stestr/stestr-4.2.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 multiprocessing pypi
+
+DESCRIPTION="A parallel Python test runner built around subunit"
+HOMEPAGE="
+ https://github.com/mtreinish/stestr/
+ https://pypi.org/project/stestr/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.10.0[${PYTHON_USEDEP}]
+ >=dev-python/python-subunit-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tomlkit-0.11.6[${PYTHON_USEDEP}]
+ >=dev-python/voluptuous-0.8.9[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+python_test() {
+ stestr init || die
+ stestr run --test-path stestr/tests \
+ --concurrency "${EPYTEST_JOBS:-$(makeopts_jobs)}" ||
+ die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest
index 0f4e3984ebe9..3157c96be6f7 100644
--- a/dev-python/stripe/Manifest
+++ b/dev-python/stripe/Manifest
@@ -1 +1,2 @@
DIST stripe-12.0.0.tar.gz 1369861 BLAKE2B abd767466760e8e43d313e7072dcab5d74b09cd395eafb894ef0ee7d21db5503e3f36493e194ab02100f3b9d648342a91efd5c46574af290481c2a260680a974 SHA512 ab9cac4712989227562ade7a7058c2c3342c04f98f02496597047755d9f790f720c29b5f8c26da1a2f4d795793931a8a073789708f395cdfa0057a8e71724a49
+DIST stripe-12.0.1.tar.gz 1370176 BLAKE2B 72298f444c491b1166cb2b6e7e16e25737531b65c6320404be5b1d5ece5b6a62dd36f66e8e95ff7aa6972c7046f04b0ccc0b5b2ccfb7cea7da7d8ca8cdd9b18e SHA512 aa5a02f6a1e2f7e6be649399ffe8af93e3a637128a4e8db3dd12abe3faa4c876b33a93128ecefb3e9119931b690ca7a14fcbf83cf77fd2b8d9ac1068d5b8a426
diff --git a/dev-python/stripe/stripe-12.0.1.ebuild b/dev-python/stripe/stripe-12.0.1.ebuild
new file mode 100644
index 000000000000..865cef97ef18
--- /dev/null
+++ b/dev-python/stripe/stripe-12.0.1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Stripe Python bindings"
+HOMEPAGE="
+ https://github.com/stripe/stripe-python/
+ https://pypi.org/project/stripe/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="telemetry"
+
+RDEPEND="
+ >=dev-python/requests-2.20[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}]
+"
+# please bump dev-util/stripe-mock dep to the latest version on every bump
+BDEPEND="
+ test? (
+ >=dev-util/stripe-mock-0.192.0
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/anyio[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ net-misc/curl
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+DOCS=( LONG_DESCRIPTION.rst CHANGELOG.md README.md )
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ if ! use telemetry; then
+ sed -i -e '/enable_telemetry/s:True:False:' stripe/__init__.py || die
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/test_http_client.py::TestLiveHTTPClients::test_httpx_request_async_https
+ 'tests/test_integration.py::TestIntegration::test_async_raw_request_timeout[asyncio-aiohttp]'
+ # timing
+ tests/test_integration.py::TestIntegration::test_passes_client_telemetry_when_enabled
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests -p anyio -p pytest_mock
+}
+
+src_test() {
+ local stripe_mock_port=12111
+ local stripe_mock_max_port=12121
+ local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log"
+ # Try to start stripe-mock until we find a free port
+ while [[ ${stripe_mock_port} -le ${stripe_mock_max_port} ]]; do
+ ebegin "Trying to start stripe-mock on port ${stripe_mock_port}"
+ stripe-mock --http-port "${stripe_mock_port}" &> "${stripe_mock_logfile}" &
+ local stripe_mock_pid=${!}
+ sleep 2
+ # Did stripe-mock start?
+ curl --fail -u "sk_test_123:" \
+ "http://127.0.0.1:${stripe_mock_port}/v1/customers" &> /dev/null
+ eend ${?} "Port ${stripe_mock_port} unavailable"
+ if [[ ${?} -eq 0 ]]; then
+ einfo "stripe-mock running on port ${stripe_mock_port}"
+ break
+ fi
+ (( stripe_mock_port++ ))
+ done
+ if [[ ${stripe_mock_port} -gt ${stripe_mock_max_port} ]]; then
+ eerror "Unable to start stripe-mock for tests"
+ die "Please see the logfile located at: ${stripe_mock_logfile}"
+ fi
+
+ local -x STRIPE_MOCK_PORT=${stripe_mock_port}
+ distutils-r1_src_test
+
+ # Tear down stripe-mock
+ kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock"
+}
diff --git a/dev-python/symengine/Manifest b/dev-python/symengine/Manifest
index 877743339dfa..a9115d937c6e 100644
--- a/dev-python/symengine/Manifest
+++ b/dev-python/symengine/Manifest
@@ -1,3 +1,4 @@
DIST symengine.py-0.11.0.gh.tar.gz 111973 BLAKE2B 0e85e97b55b6a537a1a13cf308ddd878fe02968f0da648fafb8a11583b1ca39758ef38625cb95fbdeb03713d9e84ab6f0d3a092c1b9365cdfca179c4173c70a2 SHA512 9e70d84126b65fb8a9f7acf076ef8de39c3c65f1868708541cd861f694fb36cf4cc09ed676bac00b40460287c90ec411b56aba35e43308438a4830087c02e42e
DIST symengine.py-0.13.0.gh.tar.gz 112450 BLAKE2B b8f3d429e91ee7f7ddd1f916850e9798b5d3b0ca815869db5e2c28c253d9f0bb44e84b7be91ca6ed1a822cb7a1f747194973c0bf6b6776767e18f193d69d7a5a SHA512 bbdb88900c97f237f5ce8353059e0d5213325aeaa0f0d546959ddd40e47d138a4b295a761ea2150085268782b7257c082b5b409f2e559f1b6a5845b460072386
DIST symengine.py-0.14.0.gh.tar.gz 113074 BLAKE2B 093909d5fd4f0472d048d541149d53ed14b5813f66b26ffd3f7f67dc0c956d8f9a63a3581d3a3f16d1275985452e69c7843448717262cbf998851ce3499160f0 SHA512 97fe423c3c8bd1de753cc68b4e628926ef0d35414fee9a2e2e6e11fa2584fee21228d3660f2c1873e978409bdc53b4bd2f28bfb387f6dd46ef55594b10fe6378
+DIST symengine.py-0.14.1.gh.tar.gz 113167 BLAKE2B d773d3f65cedf3eedb38e750ee7b7c5158d5921011231990079f249bf6eb50f3e7be59df189e69ea885065d7225f1e5c68b01ceaaa50306b5cda6e779cb3739f SHA512 33ec5a1d9ad41d0f5752c65c0323cb162949922b000db31f3a9754eaad6b222fb6ba753db878c8c2979ace2b2845344b345360dd1752093a1580126632a42c34
diff --git a/dev-python/symengine/symengine-0.14.1.ebuild b/dev-python/symengine/symengine-0.14.1.ebuild
new file mode 100644
index 000000000000..9f227be7d57d
--- /dev/null
+++ b/dev-python/symengine/symengine-0.14.1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 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_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1
+
+MY_P=symengine.py-${PV}
+DESCRIPTION="Python wrappers to the symengine C++ library"
+HOMEPAGE="
+ https://github.com/symengine/symengine.py/
+ https://pypi.org/project/symengine/
+"
+SRC_URI="
+ https://github.com/symengine/symengine.py/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ dev-build/cmake
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ dev-python/sympy[${PYTHON_USEDEP}]
+ )
+"
+# See bug #786582 for symengine constraint
+# See also https://github.com/symengine/symengine.py/blob/master/symengine_version.txt
+DEPEND="
+ dev-python/numpy[${PYTHON_USEDEP}]
+ =sci-libs/symengine-$(ver_cut 1-2)*
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+# The C library installs the same docs
+DOCS=()
+
+distutils_enable_tests pytest
+
+python_test() {
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+ epytest
+}
diff --git a/dev-python/uncertainties/Manifest b/dev-python/uncertainties/Manifest
index 7d8d73d2822b..abb109a2ed96 100644
--- a/dev-python/uncertainties/Manifest
+++ b/dev-python/uncertainties/Manifest
@@ -1,2 +1,2 @@
-DIST uncertainties-3.2.1.tar.gz 143154 BLAKE2B 68a0e840878eed602666f1b315ea575f3ab07ca12555f6153801ffbb54b9b1ae8742e4d87c7cec9ec0ace505c4dd8aeb45d3a010663691db31145a146390c932 SHA512 4b1b1738bed60dddacaa0e7f6d8672e32c8282681c4f2f5222e26798150774a24349fb1a98011ff37dc990ab2dd271a3fff2abbc7a0279d499d08585df1b814f
DIST uncertainties-3.2.2.tar.gz 143865 BLAKE2B 38f88ba147f2ef43749ddf2735fc26c1804e8acd504db2b8317abe69b37daded70b7e111edae1793dc3000d5bde207fe4156221d17c9284eb0006d3369efb367 SHA512 b78efc09cc572ecd24ead89db4136741429ab9032295c9e9050a79e14662b41c7537580f698e38d4ee1a36ae460ee22a463eeb473806a1f72246ab6868d950a3
+DIST uncertainties-3.2.3.tar.gz 160492 BLAKE2B 404de12e28ba139f18876a0486ebe8e6bc06606b48ba4c0a79c121e7912b9dcc0affca637092c102d16ae18f75212f30669972fa267515df8cba4a1969df83ed SHA512 4b2c45f2955a6c3e4009f47521f2dbe725a71c2e417653445b180ea4661e96002b864e364f212af7c4acb333ec31228c24f74cfc4197435d2ca56ba74502bce2
diff --git a/dev-python/uncertainties/uncertainties-3.2.1.ebuild b/dev-python/uncertainties/uncertainties-3.2.3.ebuild
index 307c5744a260..5bf605965c85 100644
--- a/dev-python/uncertainties/uncertainties-3.2.1.ebuild
+++ b/dev-python/uncertainties/uncertainties-3.2.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/zeroconf/zeroconf-0.146.3.ebuild b/dev-python/zeroconf/zeroconf-0.146.3.ebuild
index f2ea7674ed7f..dbce9937b8fc 100644
--- a/dev-python/zeroconf/zeroconf-0.146.3.ebuild
+++ b/dev-python/zeroconf/zeroconf-0.146.3.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 ~arm arm64 x86 ~amd64-linux ~x86-linux"
RDEPEND="
>=dev-python/ifaddr-0.1.7[${PYTHON_USEDEP}]
diff --git a/dev-qt/qtxml/qtxml-5.15.16.ebuild b/dev-qt/qtxml/qtxml-5.15.16.ebuild
deleted file mode 100644
index e02f4f74e7d3..000000000000
--- a/dev-qt/qtxml/qtxml-5.15.16.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-if [[ ${PV} != *9999* ]]; then
- QT5_KDEPATCHSET_REV=1
- KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86"
-fi
-
-QT5_MODULE="qtbase"
-inherit qt5-build
-
-DESCRIPTION="Implementation of SAX and DOM for the Qt5 framework"
-
-IUSE=""
-
-RDEPEND="=dev-qt/qtcore-${QT5_PV}*:5="
-DEPEND="${RDEPEND}
- test? ( =dev-qt/qtnetwork-${QT5_PV}* )
-"
-
-QT5_TARGET_SUBDIRS=(
- src/xml
-)
-
-QT5_GENTOO_PRIVATE_CONFIG=(
- :xml
-)
diff --git a/dev-ruby/async-pool/Manifest b/dev-ruby/async-pool/Manifest
index 1ceac85b4433..5ffed016ec48 100644
--- a/dev-ruby/async-pool/Manifest
+++ b/dev-ruby/async-pool/Manifest
@@ -1,3 +1,2 @@
DIST async-pool-0.10.2.tar.gz 12930 BLAKE2B 73bdcf9c792e5b3ffc6110dbb74c9b2a603c9d07ea6b3f4b282310c4b6050b25037fa62d75fe4606e6782a0072bc956499766290751d68f8d7d981d6e9d6c2fd SHA512 d1ba39c15726aa7f95c96e74473c85086de53fe9de60061baad707eb89a01ce0c73472d0f3ca23fb0bbda8167cfd63d261714ae5d205a62d0ffec6100d7c5ed2
DIST async-pool-0.10.3.tar.gz 13171 BLAKE2B 99ff19a24bd991e9c3bf6ee8f0c5517384017c6e8cc05d32aedf308cd4a8379dbae3f68ff067d20181a175767ce308839a25fb92b11dcb4ba29b8f0f0ec6075f SHA512 68ba131e2f2cf487c94545bfcd8b9079c13fd177dee4dea997ed338248437a52d9e363c09d84a729fb93bbc24aba104f0bc707a89b7b7b9aef79d9cfa45235ec
-DIST async-pool-0.7.0.tar.gz 10850 BLAKE2B 9426f0a04d282a5808b92b9d177979118583e13fc22bb91466fdf41538fd4f26794710dfc5cf014de0fdb04be175a0cbe515e021a7923b8c17fe78fd4f075a96 SHA512 00a6a2bae6a82d69768a778cc21eff260ccab6b8843963aa1ec0d646a3b25c07879cf3292a8905049b1ba125913b19162cc66826d66c3e45499e8c33720f5e13
diff --git a/dev-ruby/async-pool/async-pool-0.10.3.ebuild b/dev-ruby/async-pool/async-pool-0.10.3.ebuild
index 70ca5cfcf2d0..969d3c6beed3 100644
--- a/dev-ruby/async-pool/async-pool-0.10.3.ebuild
+++ b/dev-ruby/async-pool/async-pool-0.10.3.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-USE_RUBY="ruby31 ruby32 ruby33"
+USE_RUBY="ruby31 ruby32 ruby33 ruby34"
RUBY_FAKEGEM_RECIPE_TEST="sus"
RUBY_FAKEGEM_EXTRADOC="readme.md"
diff --git a/dev-ruby/async-pool/async-pool-0.7.0.ebuild b/dev-ruby/async-pool/async-pool-0.7.0.ebuild
deleted file mode 100644
index 4a6044261d69..000000000000
--- a/dev-ruby/async-pool/async-pool-0.7.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-USE_RUBY="ruby31 ruby32 ruby33"
-
-RUBY_FAKEGEM_RECIPE_TEST="sus"
-RUBY_FAKEGEM_EXTRADOC="readme.md"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A singleplex and multiplex resource pool for implementing robust clients"
-HOMEPAGE="https://github.com/socketry/async-pool"
-SRC_URI="https://github.com/socketry/async-pool/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/async-1.25:*"
-
-ruby_add_bdepend "test? (
- dev-ruby/sus-fixtures-async
-)"
-
-all_ruby_prepare() {
- sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
-
- # Avoid test dependency on unpackaged covered
- rm -f config/sus.rb || die
-}
diff --git a/dev-ruby/io-endpoint/io-endpoint-0.15.2.ebuild b/dev-ruby/io-endpoint/io-endpoint-0.15.2.ebuild
index 6b1a2f788144..1afd836573e9 100644
--- a/dev-ruby/io-endpoint/io-endpoint-0.15.2.ebuild
+++ b/dev-ruby/io-endpoint/io-endpoint-0.15.2.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-USE_RUBY="ruby32 ruby33"
+USE_RUBY="ruby32 ruby33 ruby34"
RUBY_FAKEGEM_RECIPE_TEST="sus"
RUBY_FAKEGEM_EXTRADOC="readme.md"
diff --git a/dev-ruby/pkg-config/pkg-config-1.5.9.ebuild b/dev-ruby/pkg-config/pkg-config-1.5.9.ebuild
index 8ac409bf529e..52396dd8d4e4 100644
--- a/dev-ruby/pkg-config/pkg-config-1.5.9.ebuild
+++ b/dev-ruby/pkg-config/pkg-config-1.5.9.ebuild
@@ -13,7 +13,7 @@ HOMEPAGE="https://github.com/ruby-gnome/pkg-config"
LICENSE="|| ( LGPL-2 LGPL-2.1 LGPL-3 )"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test"
ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
diff --git a/dev-ruby/psych/psych-5.2.3.ebuild b/dev-ruby/psych/psych-5.2.3.ebuild
index 827fe160ce94..d281932ef52f 100644
--- a/dev-ruby/psych/psych-5.2.3.ebuild
+++ b/dev-ruby/psych/psych-5.2.3.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/ruby/psych/archive/refs/tags/v${PV}.tar.gz -> ${P}.t
LICENSE="BSD-2"
SLOT="$(ver_cut 1)"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test"
RDEPEND=">=dev-libs/libyaml-0.2.5"
diff --git a/dev-util/kernelshark/kernelshark-2.3.2.ebuild b/dev-util/kernelshark/kernelshark-2.3.2-r1.ebuild
index 391400270b4d..498342171df3 100644
--- a/dev-util/kernelshark/kernelshark-2.3.2.ebuild
+++ b/dev-util/kernelshark/kernelshark-2.3.2-r1.ebuild
@@ -29,6 +29,7 @@ DEPEND="
dev-libs/json-c:=
dev-qt/qtbase:6=[network,opengl,widgets]
dev-qt/qtscxml:6=
+ dev-util/trace-cmd:=
>=media-libs/freeglut-3.0.0:=
x11-libs/libXmu:=
x11-libs/libXi:=
diff --git a/dev-util/kernelshark/kernelshark-2.4.0.ebuild b/dev-util/kernelshark/kernelshark-2.4.0-r1.ebuild
index 9b642e282e8e..f3fae78cbd8f 100644
--- a/dev-util/kernelshark/kernelshark-2.4.0.ebuild
+++ b/dev-util/kernelshark/kernelshark-2.4.0-r1.ebuild
@@ -31,6 +31,7 @@ DEPEND="
dev-qt/qtscxml:6=
>=dev-libs/libtracefs-1.3
>=dev-libs/libtraceevent-1.5
+ dev-util/trace-cmd:=
>=media-libs/freeglut-3.0.0:=
sys-devel/gcc:=[openmp]
x11-libs/libXmu:=
diff --git a/dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild b/dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild
index 7efa373cda03..40b25470751a 100644
--- a/dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild
+++ b/dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild
@@ -3,13 +3,14 @@
EAPI=8
-inherit desktop unpacker
+inherit desktop edo unpacker
DESCRIPTION="performance analysis tool designed to visualize an application’s algorithms"
HOMEPAGE="https://developer.nvidia.com/nsight-systems"
-MY_PV=$(ver_cut 1-3)
-MY_PV=${MY_PV//./_}
+MY_PV="$(ver_rs 1-3 '_' "$(ver_cut 1-3)")"
+MY_PN="${PN//nsight-}"
+MY_PN_SHORT="cu"
PV_BUILD="35528883"
SRC_URI="
@@ -19,9 +20,10 @@ SRC_URI="
arm64? (
https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/${PN}-armserver-${PV}-${PV_BUILD}.run
)
- mirror+https://developer.download.nvidia.com/images/nvidia-nsight-compute-icon-gbp-shaded-128.png
- -> nvidia-nsight-compute-icon-gbp-shaded-128.20231126.png
+ mirror+https://developer.download.nvidia.com/images/nvidia-nsight-${MY_PN}-icon-gbp-shaded-128.png
+ -> nvidia-nsight-${MY_PN}-icon-gbp-shaded-128.20231126.png
"
+
S="${WORKDIR}/pkg"
LICENSE="NVIDIA-r2"
@@ -67,6 +69,7 @@ RDEPEND="
x11-libs/xcb-util-renderutil
x11-libs/xcb-util-wm
"
+
BDEPEND="
dev-util/patchelf
"
@@ -80,18 +83,18 @@ src_prepare() {
pushd host/linux-desktop-* >/dev/null || die
- readarray -t rpath_bins < <(find . -maxdepth 1 -name '*.bin')
- for rpath_bin in "${rpath_bins[@]}"; do
- ebegin "fixing rpath for ${rpath_bin}"
- patchelf --set-rpath '$ORIGIN' "${rpath_bin}" || die
- eend $?
+ local rpaths rpath
+ readarray -t rpaths < <(find . -maxdepth 1 -name '*.bin')
+ for rpath in "${rpaths[@]}"; do
+ edob -m "fixing rpath for ${rpath}" \
+ patchelf --set-rpath '$ORIGIN' "${rpath}"
# OpenGLVersionChecker stumbles on "OpenGL ES profile version string" so disable the check
sed \
-e "s/NV_AGORA_PATH/NV_AGORA_PATH_/g" \
-e "4i export QT_PLUGIN_PATH=\"\${NV_AGORA_PATH_}/Plugins\"" \
-e "s/AGORA_USE_MESA_FALLBACK=true/AGORA_USE_MESA_FALLBACK=false/" \
- -i "$(basename "${rpath_bin}" .bin)" \
+ -i "$(basename "${rpath}" .bin)" \
|| die
done
@@ -115,28 +118,29 @@ src_install() {
dodir "${dir}"
mv ./* "${ED}${dir}" || die
- local arch_dir="$(find "${ED}${dir}/host" -mindepth 1 -maxdepth 1 -name 'linux-*' -exec basename {} \;)"
- if [[ -z "${arch_dir}" ]]; then
+ local arch_dirs
+ readarray -t arch_dirs < <(find "${ED}${dir}/host" -mindepth 1 -maxdepth 1 -name 'linux-*' -exec basename {} \;)
+ if [[ -z "${arch_dirs[*]}" ]]; then
die "failed to find arch dir"
fi
- if [[ "$(echo "${arch_dir}" | wc -l )" -gt 1 ]]; then
- echo ${arch_dir}
- die "found $(echo "${arch_dir}" | wc -l )"
+ if [[ "$(echo "${#arch_dirs[@]}" | wc -l )" -gt 1 ]]; then
+ eerror "${arch_dirs[*]}"
+ die "found ${#arch_dirs[*]} arch dirs"
fi
cp \
- "${DISTDIR}/nvidia-nsight-compute-icon-gbp-shaded-128.20231126.png" \
- "${ED}${dir}/host/${arch_dir}/ncu-ui.png" \
+ "${DISTDIR}/nvidia-nsight-${MY_PN}-icon-gbp-shaded-128.20231126.png" \
+ "${ED}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui.png" \
|| die
newmenu - "${P}.desktop" <<-EOF || die
[Desktop Entry]
Type=Application
- Name=NVIDIA Nsight Compute ${PV}
- GenericName=NVIDIA Nsight Compute
- Icon=${EPREFIX}${dir}/host/${arch_dir}/ncu-ui.png
- Exec=env WAYLAND_DISPLAY= ${EPREFIX}${dir}/host/${arch_dir}/ncu-ui
- TryExec=${EPREFIX}${dir}/host/${arch_dir}/ncu-ui
+ Name=NVIDIA Nsight ${MY_PN^} ${PV}
+ GenericName=NVIDIA Nsight ${MY_PN^}
+ Icon=${EPREFIX}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui.png
+ Exec=env WAYLAND_DISPLAY= ${EPREFIX}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui
+ TryExec=${EPREFIX}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui
Keywords=cuda;gpu;nvidia;nsight;
X-AppInstall-Keywords=cuda;gpu;nvidia;nsight;
X-GNOME-Keywords=cuda;gpu;nvidia;nsight;
diff --git a/dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild b/dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild
index 36bad1006898..b120943f6c73 100644
--- a/dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild
+++ b/dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild
@@ -3,18 +3,21 @@
EAPI=8
-inherit desktop unpacker
+inherit desktop edo unpacker
DESCRIPTION="standalone developer tool with ray-tracing support"
HOMEPAGE="https://developer.nvidia.com/nsight-graphics"
MY_PV="$(ver_rs 1-3 '_')"
+MY_PN="${PN//nsight-}"
+MY_PN_SHORT="gfx"
+
PV_BUILD="25073"
SRC_URI="
https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/linux/NVIDIA_Nsight_Graphics_${PV}.${PV_BUILD}.run
- mirror+https://developer.download.nvidia.com/images/nvidia-nsight-graphics-icon-gbp-shaded-128.png
- -> nvidia-nsight-graphics-icon-gbp-shaded-128.20231126.png
+ mirror+https://developer.download.nvidia.com/images/nvidia-nsight-${MY_PN}-icon-gbp-shaded-128.png
+ -> nvidia-nsight-${MY_PN}-icon-gbp-shaded-128.20231126.png
"
S="${WORKDIR}/pkg"
@@ -60,16 +63,18 @@ src_prepare() {
pushd host/linux-desktop-nomad-* >/dev/null || die
- readarray -t rpath_bins < <(find . -maxdepth 1 -name '*.bin')
- for rpath_bin in "${rpath_bins[@]}"; do
- ebegin "fixing rpath for ${rpath_bin}"
- patchelf --set-rpath '$ORIGIN' "${rpath_bin}" || die
- eend $?
+ local rpaths rpath
+ readarray -t rpaths < <(find . -maxdepth 1 -name '*.bin')
+ for rpath in "${rpaths[@]}"; do
+ edob -m "fixing rpath for ${rpath}" \
+ patchelf --set-rpath '$ORIGIN' "${rpath}"
+ # OpenGLVersionChecker stumbles on "OpenGL ES profile version string" so disable the check
sed \
-e "s/NV_AGORA_PATH/NV_AGORA_PATH_/g" \
-e "4i export QT_PLUGIN_PATH=\"\${NV_AGORA_PATH_}/Plugins\"" \
- -i "$(basename "${rpath_bin}" .bin)" \
+ -e "s/AGORA_USE_MESA_FALLBACK=true/AGORA_USE_MESA_FALLBACK=false/" \
+ -i "$(basename "${rpath}" .bin)" \
|| die
done
@@ -93,28 +98,29 @@ src_install() {
dodir "${dir}"
mv ./* "${ED}${dir}" || die
- local arch_dir="$(find "${ED}${dir}/host" -mindepth 1 -maxdepth 1 -name 'linux-*' -exec basename {} \;)"
- if [[ -z "${arch_dir}" ]]; then
+ local arch_dirs
+ readarray -t arch_dirs < <(find "${ED}${dir}/host" -mindepth 1 -maxdepth 1 -name 'linux-*' -exec basename {} \;)
+ if [[ -z "${arch_dirs[*]}" ]]; then
die "failed to find arch dir"
fi
- if [[ "$(echo "${arch_dir}" | wc -l )" -gt 1 ]]; then
- echo ${arch_dir}
- die "found $(echo "${arch_dir}" | wc -l )"
+ if [[ "$(echo "${#arch_dirs[@]}" | wc -l )" -gt 1 ]]; then
+ eerror "${arch_dirs[*]}"
+ die "found ${#arch_dirs[*]} arch dirs"
fi
cp \
- "${DISTDIR}/nvidia-nsight-graphics-icon-gbp-shaded-128.20231126.png" \
- "${ED}${dir}/host/${arch_dir}/ngfx-ui.png" \
+ "${DISTDIR}/nvidia-nsight-${MY_PN}-icon-gbp-shaded-128.20231126.png" \
+ "${ED}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui.png" \
|| die
newmenu - "${P}.desktop" <<-EOF || die
[Desktop Entry]
Type=Application
- Name=NVIDIA Nsight Graphics ${PV}
- GenericName=NVIDIA Nsight Graphics
- Icon=${EPREFIX}${dir}/host/${arch_dir}/ngfx-ui.png
- Exec=env WAYLAND_DISPLAY= ${EPREFIX}${dir}/host/${arch_dir}/ngfx-ui
- TryExec=${EPREFIX}${dir}/host/${arch_dir}/ngfx-ui
+ Name=NVIDIA Nsight ${MY_PN^} ${PV}
+ GenericName=NVIDIA Nsight ${MY_PN^}
+ Icon=${EPREFIX}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui.png
+ Exec=env WAYLAND_DISPLAY= ${EPREFIX}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui
+ TryExec=${EPREFIX}${dir}/host/${arch_dirs[0]}/n${MY_PN_SHORT}-ui
Keywords=cuda;gpu;nvidia;nsight;
X-AppInstall-Keywords=cuda;gpu;nvidia;nsight;
X-GNOME-Keywords=cuda;gpu;nvidia;nsight;
diff --git a/dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild b/dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild
index 283c2aec821b..139300596fc4 100644
--- a/dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild
+++ b/dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild
@@ -3,13 +3,14 @@
EAPI=8
-inherit unpacker
+inherit edo unpacker
DESCRIPTION="performance analysis tool designed to visualize an application’s algorithms"
HOMEPAGE="https://developer.nvidia.com/nsight-systems"
-MY_PV=$(ver_cut 1-2)
-MY_PV=${MY_PV//./_}
+MY_PV="$(ver_rs 1-2 '_' "$(ver_cut 1-2)")"
+MY_PN="${PN//nsight-}"
+MY_PN_SHORT="sys"
PV_BUILD="130-1"
@@ -21,6 +22,7 @@ SRC_URI="
https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/${PN}-${PV}_${PV}.${PV_BUILD}_arm64.deb
)
"
+
S="${WORKDIR}"
LICENSE="NVIDIA-r2"
@@ -86,16 +88,16 @@ src_prepare() {
fi
fi
- readarray -t rpath_libs < <(
+ local rpaths rpath
+ readarray -t rpaths < <(
find "${S}/opt/nvidia/${PN}/${PV}/host-linux-"* \
-name 'libparquet*.so*.0.0' -o \
-name 'libarrow*.so*.0.0' -o \
-name 'libssh.so'|| die
)
- for rpath_lib in "${rpath_libs[@]}"; do
- # ebegin "fixing rpath for ${rpath_lib}"
- patchelf --set-rpath '$ORIGIN' "${rpath_lib}" || die
- # eend $?
+ for rpath in "${rpaths[@]}"; do
+ edob -m "fixing rpath for ${rpath}" \
+ patchelf --set-rpath '$ORIGIN' "${rpath}"
done
eapply_user
diff --git a/dev-util/nvidia-cuda-toolkit/Manifest b/dev-util/nvidia-cuda-toolkit/Manifest
index e0a9986d4ca6..d64a1a51b757 100644
--- a/dev-util/nvidia-cuda-toolkit/Manifest
+++ b/dev-util/nvidia-cuda-toolkit/Manifest
@@ -2,10 +2,7 @@ DIST cuda_11.8.0_520.61.05_linux.run 4336730777 BLAKE2B cfdb4a51c49ee504e56a4a95
DIST cuda_12.3.2_545.23.08_linux.run 4368514070 BLAKE2B bfb6239b7669636e2ef424921f5a1dd99409a0351ea7d3453fcec3d484e714d87639e733cfae913b0f222d7af8acb7bebae340ea8af53fb7ab320805abb7b230 SHA512 dce569e42955fc351a6b52b2876948029d5183bb000754f0cdcba754673a280acfd4c9e4d8cf61d572ed045de006e0bbb0e8ff32012e6cc336be9c05fd529340
DIST cuda_12.4.1_550.54.15_linux.run 4454730420 BLAKE2B 643513a673e72aeab2e0268c4f91b504132aee378e5e483c46803ed9b1b109274e23bce0cd1022de1220e81dbfb0442c9d84370ad9c6a17e14fe2aaff23ccf13 SHA512 340fab9aad2f3e03fb773c2ec1d4f2c3b1428b350c2072b02263f68f3c521b7ec42086ae7b5e66594a0b91862cc165d8519e4c92e428268bc1e98adcfe106d42
DIST cuda_12.5.1_555.42.06_linux.run 4311634770 BLAKE2B 3546faeb24687dd11ad0a61a4f02cfbd97119d9e3cd3e24ea294b81ed488de7dfef03607c69d7b5a8087db10cf794205936add7cfa8ccda207e3aca315be48df SHA512 604843e09717c2af0873b2d5a2e242ff1b99122d515b6a7a29e70c55ab605524744359781f5b642059550b4def57877597111914965efe7d3a1a1387c9dbb1a0
-DIST cuda_12.6.1_560.35.03_linux.run 4345714567 BLAKE2B 147c7f03e0d9ade4c603d93920d0cd6bb1706efc268797ae870b5244feaa8159393015f96e920c6255e93d8040dd5b046075804cfa7c5da18a645800d65b8c3d SHA512 514ec89f847457c3ba78cd0dc22c25aebf2a19a6bbd5a8d071f31519d1007889cde6ba888a01596434216a8a88bfba21059cdc8e3fa9397133c93d2a9f0c015e
DIST cuda_12.6.3_560.35.05_linux.run 4446722669 BLAKE2B 9ff67a3fca58af6fcb259a5b114b3babd842290d0ba5d7761ea30d8c7b33d293f86d32f19c252d12bb49e0ff10da9bf62f3c34cc87f0589bab0e134575852bba SHA512 a93d9d812d3a3f5823622e2274d1d6dbe17a298b33463fdf9f6d211d38766eab76608f9d545e312b2be2b86b3c59fcd92c37c54b38b0e8206191563d00546d62
DIST cuda_12.6.3_560.35.05_linux_sbsa.run 3760696924 BLAKE2B 06d2ce57911fd73dd64db8bb864b85f0f52a1f21382ac79e681cf4e55302ae57b700cf7a0943fee9924ff6024f056021acec50e3d90c9ee853c0d61121686603 SHA512 ad20647c8dd72937ba74c31c6e04b75d717c16a851972ba2da78cfe11453586702b28a1383f589e4c67825588c29924f87abae9cde964c41a59cf5fe43e7c632
-DIST cuda_12.8.0_570.86.10_linux.run 5412604598 BLAKE2B 21ea184fd428ea638934788847e023213c38c1079d489d04bbd1ca277d1c285d57a7ac9c02020cbd73970e703daeec9e806831cf54a427cff90fc036c4da7705 SHA512 7939552d38c39b184946df455233eb9ffe91051656b3091b0414b2acc2939bc35dd92724b584e507976c3b4cd51f489abee2e2d0da27bfebaf8999c3f2c2bb2e
-DIST cuda_12.8.0_570.86.10_linux_sbsa.run 4636253689 BLAKE2B 53df0ee05a9563bf9db1b813a75d4a81c391cf67c24bc0b9fadf74809ebf1534cbf5762317e2f04e4e7482adf97612d8d3f16d78146abe715a9dc4b8654a1bbf SHA512 bcd91a914d09e72a2f2320d9912a3928a491c8d7062f65d027bc172630944bc0fc319ef2ded10e3c4ade564cf2a4f9a166698dca1d493632ee7ef7ff5d7f1ad5
DIST cuda_12.8.1_570.124.06_linux.run 5382238770 BLAKE2B 6dff4eb32e97f960bdb2bd57d0dbf0920a9f85c19c26199adcac64eb9d30d7b6f6e2691c7a7a0b5b8249c7860cc685931080a3775c804f6e4e3294c43380e94f SHA512 2ac14ba054bf01924e1953053850f679ebdbc2b9150715398365464eae9d686cde2b82abb8f385b74e4eafa8d68421a9ea216c7647c08956ccba8b2299b50a6e
DIST cuda_12.8.1_570.124.06_linux_sbsa.run 4606631442 BLAKE2B 142c3a231f2a621c4d6a74059b72125baca83d2653ba95c726e3e3c12cf8a0a6b75ced7c0bdaa98450c3d2c2224e88886598191b594ac69be52ba5765bb30592 SHA512 108a75e0ca098b0fd514b3380d42b4752669201dcd68c41f2c1ecf9f29c216ac5937fa33d60e11be06e8a2ad8ae73aa49e6685a363ea77af943e1a1b936b8349
diff --git a/dev-util/nvidia-cuda-toolkit/files/parse_manifest.py b/dev-util/nvidia-cuda-toolkit/files/parse_manifest.py
index 57adad1ca975..d50545c4b8cc 100644
--- a/dev-util/nvidia-cuda-toolkit/files/parse_manifest.py
+++ b/dev-util/nvidia-cuda-toolkit/files/parse_manifest.py
@@ -157,7 +157,7 @@ def main():
# optional dir offset, we merge it into path
dir = ""
if "dir" in node.attrib:
- dir = f" \"{Path(node.attrib["dir"])}\""
+ dir = f" \"{Path(node.attrib['dir'])}\""
filepath = basedir / path / file
@@ -183,12 +183,12 @@ def main():
subdir = ""
if "subdir" in node.attrib:
- subdir = f" \"{node.attrib["subdir"]}\""
+ subdir = f" \"{node.attrib['subdir']}\""
print(f"{ind * (level + 1) * indent}dopcfile "
f"\"{lib_name}\" "
f"\"{lib_version}\" "
- f"\"{node.attrib["description"]}\"{subdir}")
+ f"\"{node.attrib['description']}\"{subdir}")
# <desktopFile
# filename="nsight"
@@ -202,13 +202,13 @@ def main():
# create a .desktop file
for node in el.findall("./desktopFile"):
print(f"{ind * (level + 1) * indent}dodesktopFile \\")
- print(f"{ind * (level + 2) * indent}\"{node.attrib["filename"]}\" \\")
- print(f"{ind * (level + 2) * indent}\"{node.attrib["name"]}\" \\")
- print(f"{ind * (level + 2) * indent}\"{node.attrib["categories"]}\" \\")
- print(f"{ind * (level + 2) * indent}\"{node.attrib["keywords"]}\" \\")
- print(f"{ind * (level + 2) * indent}\"{node.attrib["iconPath"]}\" \\")
- print(f"{ind * (level + 2) * indent}\"{node.attrib["execPath"]}\" \\")
- print(f"{ind * (level + 2) * indent}\"{node.attrib["tryExecPath"]}\"")
+ print(f"{ind * (level + 2) * indent}\"{node.attrib['filename']}\" \\")
+ print(f"{ind * (level + 2) * indent}\"{node.attrib['name']}\" \\")
+ print(f"{ind * (level + 2) * indent}\"{node.attrib['categories']}\" \\")
+ print(f"{ind * (level + 2) * indent}\"{node.attrib['keywords']}\" \\")
+ print(f"{ind * (level + 2) * indent}\"{node.attrib['iconPath']}\" \\")
+ print(f"{ind * (level + 2) * indent}\"{node.attrib['execPath']}\" \\")
+ print(f"{ind * (level + 2) * indent}\"{node.attrib['tryExecPath']}\"")
# iterator over all nested packages
for node in el.findall("./package"):
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1-r1.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1-r1.ebuild
deleted file mode 100644
index 449229fd2631..000000000000
--- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1-r1.ebuild
+++ /dev/null
@@ -1,333 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit check-reqs toolchain-funcs unpacker
-
-DRIVER_PV="560.35.03"
-
-DESCRIPTION="NVIDIA CUDA Toolkit (compiler and friends)"
-HOMEPAGE="https://developer.nvidia.com/cuda-zone"
-SRC_URI="https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux.run"
-S="${WORKDIR}"
-
-LICENSE="NVIDIA-CUDA"
-SLOT="0/${PV}"
-KEYWORDS="-* ~amd64 ~amd64-linux"
-IUSE="debugger examples nsight profiler rdma vis-profiler sanitizer"
-RESTRICT="bindist mirror"
-
-# since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the
-# actual required minimum driver version are different.
-RDEPEND="
- <sys-devel/gcc-14_pre[cxx]
- virtual/libcrypt
- examples? (
- media-libs/freeglut
- media-libs/glu
- )
- nsight? (
- app-crypt/mit-krb5
- dev-libs/libpfm
- dev-libs/wayland
- dev-qt/qtwayland:6
- >=dev-libs/openssl-3
- media-libs/tiff-compat:4
- sys-libs/zlib
- )
- rdma? ( sys-cluster/rdma-core )
- vis-profiler? (
- >=virtual/jre-1.8:*
- )"
-BDEPEND="nsight? ( dev-util/patchelf )"
-
-QA_PREBUILT="opt/cuda/*"
-CHECKREQS_DISK_BUILD="15000M"
-
-pkg_setup() {
- check-reqs_pkg_setup
-}
-
-src_prepare() {
- # ATTENTION: change requires revbump, see link below for supported GCC # versions
- # https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements
- local cuda_supported_gcc="8.5 9.5 10 11 12 13"
-
- sed \
- -e "s:CUDA_SUPPORTED_GCC:${cuda_supported_gcc}:g" \
- "${FILESDIR}"/cuda-config.in > "${T}"/cuda-config || die
-
- default
-
- # we assume you can't downgrade glibc
- if has_version ">=sys-libs/glibc-2.41"; then
- eapply "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41.patch"
- fi
-}
-
-src_install() {
- local cudadir=/opt/cuda
- local ecudadir="${EPREFIX}${cudadir}"
- local pathextradirs ldpathextradirs
- dodir ${cudadir}
- into ${cudadir}
-
- # Install standard sub packages
- local builddirs=(
- builds/cuda_{cccl,cudart,cuobjdump,cuxxfilt,demo_suite,nvcc,nvdisasm,nvml_dev,nvprune,nvrtc,nvtx,opencl}
- builds/lib{cublas,cufft,cufile,curand,cusolver,cusparse,npp,nvjitlink,nvjpeg}
- builds/nvidia_fs
- $(usex profiler "builds/cuda_nvprof builds/cuda_cupti builds/cuda_profiler_api" "")
- $(usex vis-profiler "builds/cuda_nvvp" "")
- $(usex debugger "builds/cuda_gdb" "")
- )
-
- local d f
- for d in "${builddirs[@]}"; do
- ebegin "Installing ${d}"
- [[ -d ${d} ]] || die "Directory does not exist: ${d}"
-
- if [[ -d ${d}/bin ]]; then
- for f in ${d}/bin/*; do
- if [[ -f ${f} ]]; then
- dobin "${f}"
- else
- insinto ${cudadir}/bin
- doins -r "${f}"
- fi
- done
- fi
-
- insinto ${cudadir}
- if [[ -d ${d}/targets ]]; then
- doins -r "${d}"/targets
- fi
- if [[ -d ${d}/share ]]; then
- doins -r "${d}"/share
- fi
- if [[ -d ${d}/extras ]]; then
- doins -r "${d}"/extras
- fi
- eend $?
- done
- dobin "${T}"/cuda-config
-
- doins builds/EULA.txt
- # nvml and nvvm need special handling
- ebegin "Installing nvvm"
- doins -r builds/cuda_nvcc/nvvm
- fperms +x ${cudadir}/nvvm/bin/cicc
- eend $?
-
- ebegin "Installing nvml"
- doins -r builds/cuda_nvml_dev/nvml
- eend $?
-
- if use sanitizer; then
- ebegin "Installing sanitizer"
- dobin builds/integration/Sanitizer/compute-sanitizer
- doins -r builds/cuda_sanitizer_api/compute-sanitizer
- # special handling for the executable
- fperms +x ${cudadir}/compute-sanitizer/compute-sanitizer
- eend $?
- fi
-
- use debugger && ldpathextradirs+=":${ecudadir}/extras/Debugger/lib64"
- use profiler && ldpathextradirs+=":${ecudadir}/extras/CUPTI/lib64"
-
- if use vis-profiler; then
- ebegin "Installing libnvvp"
- doins -r builds/cuda_nvvp/libnvvp
- # special handling for the executable
- fperms +x ${cudadir}/libnvvp/nvvp
- eend $?
- pathextradirs+=":${ecudadir}/libnvvp"
- fi
-
- if use nsight; then
- local ncu_dir=$(grep -o 'nsight-compute-[0-9][0-9\.]*' -m1 manifests/cuda_x86_64.xml)
- ebegin "Installing ${ncu_dir}"
- mv builds/nsight_compute builds/${ncu_dir} || die
- doins -r builds/${ncu_dir}
-
- # check this list on every bump
- local exes=(
- ${ncu_dir}/ncu
- ${ncu_dir}/ncu-ui
- ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/libexec/QtWebEngineProcess
- ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/CrashReporter
- ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/OpenGLVersionChecker
- ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/QdstrmImporter
- ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/ncu-ui
- ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/ncu-ui.bin
- ${ncu_dir}/target/linux-desktop-glibc_2_11_3-x64/TreeLauncherSubreaper
- ${ncu_dir}/target/linux-desktop-glibc_2_11_3-x64/TreeLauncherTargetLdPreloadHelper
- ${ncu_dir}/target/linux-desktop-glibc_2_11_3-x64/ncu
- )
-
- dobin builds/integration/nsight-compute/{ncu,ncu-ui}
- eend $?
-
- # remove rdma libs (unless USE=rdma)
- if ! use rdma; then
- rm -r "${ED}"/${cudadir}/${ncu_dir}/host/target-linux-x64/CollectX || die
- fi
-
- local nsys_dir=$(grep -o 'nsight-systems-[0-9][0-9\.]*' -m1 manifests/cuda_x86_64.xml)
- ebegin "Installing ${nsys_dir}"
- mv builds/nsight_systems builds/${nsys_dir} || die
- doins -r builds/${nsys_dir}
-
- # check this list on every bump
- exes+=(
- ${nsys_dir}/host-linux-x64/nsys-ui
- ${nsys_dir}/host-linux-x64/nsys-ui.bin
- ${nsys_dir}/host-linux-x64/ResolveSymbols
- ${nsys_dir}/host-linux-x64/ImportNvtxt
- ${nsys_dir}/host-linux-x64/CrashReporter
- ${nsys_dir}/host-linux-x64/QdstrmImporter
- ${nsys_dir}/host-linux-x64/libexec/QtWebEngineProcess
- ${nsys_dir}/target-linux-x64/nsys
- ${nsys_dir}/target-linux-x64/launcher
- ${nsys_dir}/target-linux-x64/nvgpucs
- ${nsys_dir}/target-linux-x64/nsys-launcher
- ${nsys_dir}/target-linux-x64/sqlite3
- ${nsys_dir}/target-linux-x64/python/bin/python
- ${nsys_dir}/target-linux-x64/CudaGpuInfoDumper
- )
-
- # remove rdma libs (unless USE=rdma)
- if ! use rdma; then
- rm -r "${ED}"/${cudadir}/${nsys_dir}/target-linux-x64/CollectX || die
- fi
-
- dobin builds/integration/nsight-systems/{nsight-sys,nsys,nsys-ui}
- eend $?
-
- # nsight scripts and binaries need to have their executable bit set, #691284
- for f in "${exes[@]}"; do
- fperms +x ${cudadir}/${f}
- done
-
- # fix broken RPATHs
- patchelf --set-rpath '$ORIGIN' \
- "${ED}"/${cudadir}/${ncu_dir}/host/{linux-desktop-glibc_2_11_3-x64,target-linux-x64}/{libarrow.so,libparquet.so.500.0.0} || die
- patchelf --set-rpath '$ORIGIN' \
- "${ED}"/${cudadir}/${nsys_dir}/{host-linux-x64,target-linux-x64}/{libarrow.so,libparquet.so.500.0.0} || die
-
- # remove foreign archs (triggers SONAME warning, #749903)
- rm -r "${ED}"/${cudadir}/${ncu_dir}/target/linux-desktop-t210-a64 || die
-
- # unbundle libstdc++
- rm "${ED}"/${cudadir}/${nsys_dir}/host-linux-x64/libstdc++.so.6 || die
-
- # unbundle openssl
- rm "${ED}"/${cudadir}/${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/lib{crypto,ssl}.so* || die
- rm "${ED}"/${cudadir}/${nsys_dir}/host-linux-x64/lib{crypto,ssl}.so* || die
-
- # unbundle libpfm
- rm "${ED}"/${cudadir}/${nsys_dir}/host-linux-x64/libpfm.so* || die
-
- # TODO: unbundle qt5
- # TODO: unbundle boost
- # TODO: unbundle icu
- # TODO: unbundle mesa
- # TODO: unbundle libSshClient
- # TODO: unbundle sqlite
- fi
-
- if use examples; then
- local exes=(
- extras/demo_suite/bandwidthTest
- extras/demo_suite/busGrind
- extras/demo_suite/deviceQuery
- extras/demo_suite/nbody
- extras/demo_suite/oceanFFT
- extras/demo_suite/randomFog
- extras/demo_suite/vectorAdd
- )
-
- # set executable bit on demo_suite binaries
- for f in "${exes[@]}"; do
- fperms +x ${cudadir}/${f}
- done
- else
- rm -r "${ED}"/${cudadir}/extras/demo_suite || die
- fi
-
- # remove rdma libs (unless USE=rdma)
- if ! use rdma; then
- rm "${ED}"/${cudadir}/targets/x86_64-linux/lib/libcufile_rdma* || die
- fi
-
- # Add include and lib symlinks
- dosym targets/x86_64-linux/include ${cudadir}/include
- dosym targets/x86_64-linux/lib ${cudadir}/lib64
-
- # Remove bad symlinks
- rm "${ED}"/${cudadir}/targets/x86_64-linux/include/include || die
- rm "${ED}"/${cudadir}/targets/x86_64-linux/lib/lib64 || die
-
- # Remove dead gdb plugins
- if use debugger; then
- rm "${ED}"/${cudadir}/bin/cuda-gdb-python3.{8,9}-tui || die
- fi
-
- newenvd - 99cuda <<-EOF
- PATH=${ecudadir}/bin${pathextradirs}
- ROOTPATH=${ecudadir}/bin
- LDPATH=${ecudadir}/lib64:${ecudadir}/nvvm/lib64${ldpathextradirs}
- EOF
-
- # Cuda prepackages libraries, don't revdep-build on them
- insinto /etc/revdep-rebuild
- newins - 80${PN} <<-EOF
- SEARCH_DIRS_MASK="${ecudadir}"
- EOF
-
- # https://bugs.gentoo.org/926116
- insinto /etc/sandbox.d
- newins - 80${PN} <<-EOF
- SANDBOX_PREDICT="/proc/self/task"
- EOF
-}
-
-pkg_postinst_check() {
- local a="$("${EROOT}"/opt/cuda/bin/cuda-config -s)"
- local b="0.0"
- local v
- for v in ${a}; do
- ver_test "${v}" -gt "${b}" && b="${v}"
- done
-
- # if gcc and if not gcc-version is at least greatest supported
- if tc-is-gcc && \
- ver_test $(gcc-version) -gt "${b}"; then
- ewarn
- ewarn "gcc > ${b} will not work with CUDA"
- ewarn "Make sure you set an earlier version of gcc with gcc-config"
- ewarn "or append --compiler-bindir= pointing to a gcc bindir like"
- ewarn "--compiler-bindir=${EPREFIX}/usr/*pc-linux-gnu/gcc-bin/gcc${b}"
- ewarn "to the nvcc compiler flags"
- ewarn
- fi
-}
-
-pkg_postinst() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- pkg_postinst_check
- fi
-
- if use profiler || use nsight; then
- einfo
- einfo "nvidia-drivers restrict access to performance counters."
- einfo "You'll need to either run profiling tools (nvprof, nsight) "
- einfo "using sudo (needs cap SYS_ADMIN) or add the following line to "
- einfo "a modprobe configuration file "
- einfo "(e.g. /etc/modprobe.d/nvidia-prof.conf): "
- einfo
- einfo "options nvidia NVreg_RestrictProfilingToAdminUsers=0"
- einfo
- fi
-}
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild
index 859607e7dc6a..0a79bbfea360 100644
--- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild
+++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild
@@ -6,7 +6,7 @@
EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-inherit check-reqs toolchain-funcs
+inherit check-reqs edo toolchain-funcs
inherit python-r1
DRIVER_PV="560.35.05"
@@ -78,16 +78,7 @@ cuda-toolkit_check_reqs() {
}
cuda_verify() {
- if has_version "sys-apps/grep[pcre]"; then
- local DRIVER_PV_info
- DRIVER_PV_info="$(bash "${DISTDIR}/${A}" --info | grep -oP "cuda_${PV}.*run" | cut -d '_' -f 3)"
-
- if [[ "${DRIVER_PV}" != "${DRIVER_PV_info}" ]]; then
- die "check DRIVER_PV is ${DRIVER_PV} and should be ${DRIVER_PV_info}"
- fi
- fi
-
- # rest only works in with unpacked sources
+ # only works with unpacked sources
[[ "${EBUILD_PHASE}" != prepare ]] && return
# run self checks
@@ -148,7 +139,8 @@ src_unpack() {
"builds/nvidia_fs"
)
- bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}") || die "failed to extract ${A}"
+ edob -m "failed to extract ${A}" \
+ bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}")
}
src_prepare() {
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r3.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r3.ebuild
deleted file mode 100644
index 7ae26cabc3bd..000000000000
--- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r3.ebuild
+++ /dev/null
@@ -1,380 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# shellcheck disable=SC2317
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-inherit check-reqs toolchain-funcs
-inherit python-r1
-
-DRIVER_PV="570.86.10"
-GCC_MAX_VER="14"
-CLANG_MAX_VER="19"
-
-DESCRIPTION="NVIDIA CUDA Toolkit (compiler and friends)"
-HOMEPAGE="https://developer.nvidia.com/cuda-zone"
-SRC_URI="
- amd64? (
- https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux.run
- )
- arm64? (
- https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux_sbsa.run
- )
-"
-S="${WORKDIR}"
-
-LICENSE="NVIDIA-CUDA"
-
-SLOT="0/${PV}" # UNSLOTTED
-# SLOT="${PV}" # SLOTTED
-
-KEYWORDS="-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux"
-IUSE="debugger examples profiler rdma sanitizer"
-RESTRICT="bindist mirror strip test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the
-# actual required minimum driver version are different.
-RDEPEND="
- || (
- <sys-devel/gcc-$(( GCC_MAX_VER + 1 ))_pre[cxx]
- <llvm-core/clang-$(( CLANG_MAX_VER + 1 ))_pre
- )
- sys-process/numactl
- debugger? (
- ${PYTHON_DEPS}
- )
- examples? (
- media-libs/freeglut
- media-libs/glu
- )
- rdma? ( sys-cluster/rdma-core )
-"
-BDEPEND="
- $(python_gen_any_dep '
- dev-python/defusedxml[${PYTHON_USEDEP}]
- ')
-"
-
-# CUDA_PATH="/opt/cuda-${PV}" #950207
-CUDA_PATH="/opt/cuda"
-QA_PREBUILT="${CUDA_PATH#/}/*"
-
-python_check_deps() {
- python_has_version "dev-python/defusedxml[${PYTHON_USEDEP}]"
-}
-
-cuda-toolkit_check_reqs() {
- if use amd64; then
- export CHECKREQS_DISK_BUILD="6645M"
- elif use arm64; then
- export CHECKREQS_DISK_BUILD="6412M"
- fi
-
- "check-reqs_pkg_${EBUILD_PHASE}"
-}
-
-cuda_verify() {
- if has_version "sys-apps/grep[pcre]"; then
- local DRIVER_PV_info
- DRIVER_PV_info="$(bash "${DISTDIR}/${A}" --info | grep -oP "cuda_${PV}.*run" | cut -d '_' -f 3)"
-
- if [[ "${DRIVER_PV}" != "${DRIVER_PV_info}" ]]; then
- die "check DRIVER_PV is ${DRIVER_PV} and should be ${DRIVER_PV_info}"
- fi
- fi
-
- # rest only works in with unpacked sources
- [[ "${EBUILD_PHASE}" != prepare ]] && return
-
- # run self checks
- local compiler_versions GCC_HAS_VER CLANG_HAS_VER
- compiler_versions="$(
- grep -oP "unsupported (GNU|clang) version.*(gcc versions later than|clang version must be less than) [0-9]*" \
- "${S}"/builds/cuda_nvcc/targets/*/include/crt/host_config.h
- )"
-
- GCC_HAS_VER="$( echo "${compiler_versions}" | grep gcc | grep -oP "(?<=than )[0-9]*")"
- if [[ "${GCC_MAX_VER}" -ne "${GCC_HAS_VER}" ]]; then
- eqawarn "check GCC_MAX_VER is ${GCC_MAX_VER} and should be ${GCC_HAS_VER}"
- fi
-
- CLANG_HAS_VER="$(( $(echo "${compiler_versions}" | grep clang | grep -oP "(?<=than )[0-9]*") - 1 ))"
- if [[ "${CLANG_MAX_VER}" -ne "${CLANG_HAS_VER}" ]]; then
- eqawarn "check CLANG_MAX_VER is ${CLANG_MAX_VER} and should be ${CLANG_HAS_VER}"
- fi
-}
-
-pkg_pretend() {
- cuda-toolkit_check_reqs
-}
-
-pkg_setup() {
- cuda-toolkit_check_reqs
-
- if [[ "${MERGE_TYPE}" == binary ]]; then
- return
- fi
-
- # we need python for manifest parsing and to determine the supported python versions for cuda-gdb
- python_setup
-
- if use amd64; then
- narch=x86_64
- elif use arm64; then
- narch=sbsa
- else
- die "unknown arch ${ARCH}"
- fi
-
- export narch
-}
-
-src_unpack() {
- cuda_verify
-
- local exclude=(
- "cuda-installer"
- "*-uninstaller"
- "NVIDIA-Linux-${narch}-${DRIVER_PV}.run"
- "builds/cuda_documentation"
- "builds/cuda_nsight"
- "builds/cuda_nvvp"
- "builds/nsight_compute"
- "builds/nsight_systems"
- "builds/nvidia_fs"
- )
-
- bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}") || die "failed to extract ${A}"
-}
-
-src_prepare() {
- pushd "builds/cuda_nvcc/targets/${narch}-linux" >/dev/null || die
- eapply -p5 "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41-r1.patch"
- popd >/dev/null || die
-
- default
-}
-
-src_configure() {
- :
-}
-
-src_compile() {
- :
-}
-
-src_install() {
- local -x SKIP_COMPONENTS=(
- "Kernel_Objects"
- "Visual_Tools"
- "Documentation" # obsolete
- "cuda-gdb-src" # not used
- )
-
- ! use debugger && SKIP_COMPONENTS+=( "cuda-gdb" )
- ! use examples && SKIP_COMPONENTS+=( "Demo_Suite" )
- ! use profiler && SKIP_COMPONENTS+=( "cuda-cupti" "cuda-profiler-api" "nvprof" )
- ! use sanitizer && SKIP_COMPONENTS+=( "compute-sanitizer" )
-
- dodir "${CUDA_PATH}"
- into "${CUDA_PATH}"
-
- dofile() {
- debug-print-function "${FUNCNAME[0]}" "$@"
-
- if [[ $# -ne 1 ]] && [[ $# -ne 2 ]]; then
- die "${FUNCNAME[0]} must receive one or two arguments"
- fi
-
- local _DESTDIR
- _DESTDIR="$(dirname "${CUDA_PATH}/${1%/}")${2:+/${2%/}}"
- mkdir -p "${ED}${_DESTDIR}" || die "mkdir ${_DESTDIR} failed"
-
- local dir
- dir="$(dirname "${1}")"
-
- if test -z "$(find "${dir}" -maxdepth 1 -name "$(basename "$1")" -print -quit)"; then
- if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then
- return
- fi
- if [[ "$1" == "targets/x86_64-linux/lib/stubs/libcusolverMg*" ]] ||
- [[ "$1" == "targets/x86_64-linux/lib/libcusparse.so.*" ]]; then
- return
- fi
- return
- fi
-
- if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then
- # skip noisy warnings
- if [[ "$(basename "${1}")" == "include" ]] ||
- [[ "$(basename "${1}")" == "lib64" ]]; then
- return
- fi
- eqawarn "${ED}${_DESTDIR}/$(basename "${1}") exists"
- return
- fi
-
- eval mv -i "${1}" "${ED}${_DESTDIR}" || die "mv failed ${PWD} / ${1} -> ${ED} ${_DESTDIR}"
- }
-
- dopcfile() {
- [[ $# -eq 0 ]] && return
-
- dodir "${CUDA_PATH}/pkgconfig"
- cat > "${ED}${CUDA_PATH}/pkgconfig/${1}-${2}.pc" <<-EOF || die "dopcfile"
- cudaroot=${EPREFIX}${CUDA_PATH}
- libdir=\${cudaroot}/targets/${narch}-linux/lib${4}
- includedir=\${cudaroot}/targets/${narch}-linux/include
-
- Name: ${1}
- Description: ${3}
- Version: ${2}
- Libs: -L\${libdir} -l${1}
- Cflags: -I\${includedir}
- EOF
- }
-
- pushd builds >/dev/null || die
- fix_executable_bit=(
- cuda_cupti/extras/CUPTI/samples/pc_sampling_utility/pc_sampling_utility_helper.h
- cuda_cupti/extras/CUPTI/samples/pc_sampling_continuous/libpc_sampling_continuous.pl
-
- libcufile/gds/tools/run_gdsio.cfg
- )
-
- if use amd64; then
- fix_executable_bit+=(
- cuda_opencl/targets/*/include/CL/cl.hpp
-
- libcufile/targets/*/lib/libcufile_rdma_static.a
- libcufile/targets/*/lib/libcufile_static.a
- )
- fi
- chmod -x "${fix_executable_bit[@]}" || die "failed chmod"
- popd >/dev/null || die
-
- ebegin "parsing manifest" "${S}/manifests/cuda_"*.xml # {{{
-
- "${EPYTHON}" "${FILESDIR}/parse_manifest.py" "${S}/manifests/cuda_"*".xml" &> "${T}/install.sh" \
- || die "failed to parse manifest"
- # shellcheck disable=SC1091
- source "${T}/install.sh" || die "failed to source install script"
-
- eend $? # }}}
-
- if use debugger; then
- if [[ -d "${ED}/${CUDA_PATH}/extras/Debugger/lib64" ]]; then
- rmdir "${ED}/${CUDA_PATH}/extras/Debugger/lib64" || die "remove debugger lib64"
- fi
-
- find "${ED}/${CUDA_PATH}/bin" -maxdepth 1 -name "cuda-gdb-*-tui" -print0 | while read -rd $'\0' tui_name; do
- impl="$(basename "${tui_name}" | cut -d '-' -f 3 | tr '.' '_')"
-
- if ! has "${impl}" "${PYTHON_COMPAT[@]}" || ! use "python_targets_${impl}"; then
- rm "${tui_name}" || die "tui-name rm ${tui_name}"
- sed -e "/$(basename "${tui_name}")\"/d" -i "${ED}/${CUDA_PATH}/bin/cuda-gdb" || die "tui_name sed"
- fi
- done
- fi
-
- # remove rdma libs (unless USE=rdma)
- if ! use rdma; then
- rm "${ED}/${CUDA_PATH}/targets/${narch}-linux/lib/libcufile_rdma"* || die "failed to remove rdma files"
- fi
-
- # Add include and lib symlinks
- dosym "targets/${narch}-linux/include" "${CUDA_PATH}/include"
- dosym "targets/${narch}-linux/lib" "${CUDA_PATH}/lib64"
-
- find "${ED}/${CUDA_PATH}" -empty -delete || die
-
- local ldpathextradirs pathextradirs
-
- use debugger && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/Debugger/lib64"
- use profiler && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/CUPTI/lib64"
-
- local revord=$(( 999999 - $(printf "%02d%02d%02d" "$(ver_cut 1)" "$(ver_cut 2)" "$(ver_cut 3)") ))
- newenvd - "99cuda${revord}" <<-EOF
- PATH=${EPREFIX}${CUDA_PATH}/bin${pathextradirs}
- PKG_CONFIG_PATH=${EPREFIX}${CUDA_PATH}/pkgconfig
- LDPATH=${EPREFIX}${CUDA_PATH}/lib64:${EPREFIX}${CUDA_PATH}/nvvm/lib64${ldpathextradirs}
- EOF
-
- # CUDA prepackages libraries, don't revdep-build on them
- insinto /etc/revdep-rebuild
- newins - "80${PN}${revord}" <<-EOF
- SEARCH_DIRS_MASK="${EPREFIX}${CUDA_PATH}"
- EOF
-
- # https://bugs.gentoo.org/926116
- insinto /etc/sandbox.d
- newins - "80${PN}" <<-EOF
- SANDBOX_PREDICT="/proc/self/task"
- EOF
-
- # TODO drop and replace with runtime detection similar to what python does {{{
- # ATTENTION: change requires revbump, see link below for supported GCC # versions
- # https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements
- local cuda_supported_gcc=( 8.5 9.5 10 11 12 13 "${GCC_MAX_VER}" )
-
- sed \
- -e "s:CUDA_SUPPORTED_GCC:${cuda_supported_gcc[*]}:g" \
- "${FILESDIR}"/cuda-config.in > "${ED}/${CUDA_PATH}/bin/cuda-config" || die
- fperms +x "${CUDA_PATH}/bin/cuda-config"
- # }}}
-
- # skip til cudnn has been changed #950207
- # if [[ "${SLOT}" != "${PV}" ]]; then
- # dosym "${CUDA_PATH}" "${CUDA_PATH%"-${PV}"}"
- # fi
-
- fowners -R root:root "${CUDA_PATH}"
-}
-
-pkg_postinst_check() {
- if tc-is-gcc &&
- ver_test "$(gcc-major-version)" -gt "${GCC_MAX_VER}"; then
- ewarn
- ewarn "gcc > ${GCC_MAX_VER} will not work with CUDA"
- ewarn
- ewarn "Append --ccbin= pointing to a gcc bindir to the nvcc compiler flags (NVCCFLAGS)"
- ewarn "or set NVCC_CCBIN to the same bindir."
- ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")\""
- ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")"
- ewarn
- fi
-
- if tc-is-clang &&
- ver_test "$(clang-major-version)" -gt "${CLANG_MAX_VER}"; then
- ewarn
- ewarn "clang > ${CLANG_MAX_VER} will not work with CUDA"
- ewarn
- ewarn "Append --ccbin= pointing to a clang bindir to the nvcc compiler flags (NVCCFLAGS)"
- ewarn "or set NVCC_CCBIN to the same bindir."
- ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")\""
- ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")"
- ewarn
- fi
-}
-
-pkg_postinst() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- pkg_postinst_check
- fi
-
- if use profiler; then
- einfo
- einfo "nvidia-drivers restricts access to performance counters."
- einfo "You'll need to run profiling tools (nvprof) "
- einfo "using sudo (needs cap SYS_ADMIN) or add the following line to "
- einfo "a modprobe configuration file "
- einfo "(e.g. /etc/modprobe.d/nvidia-prof.conf): "
- einfo
- einfo "options nvidia NVreg_RestrictProfilingToAdminUsers=0"
- einfo
- fi
-}
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild
index e4f481dd1097..95be87a71f3e 100644
--- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild
+++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild
@@ -6,7 +6,7 @@
EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-inherit check-reqs toolchain-funcs
+inherit check-reqs edo toolchain-funcs
inherit python-r1
DRIVER_PV="570.124.06"
@@ -78,16 +78,7 @@ cuda-toolkit_check_reqs() {
}
cuda_verify() {
- if has_version "sys-apps/grep[pcre]"; then
- local DRIVER_PV_info
- DRIVER_PV_info="$(bash "${DISTDIR}/${A}" --info | grep -oP "cuda_${PV}.*run" | cut -d '_' -f 3)"
-
- if [[ "${DRIVER_PV}" != "${DRIVER_PV_info}" ]]; then
- die "check DRIVER_PV is ${DRIVER_PV} and should be ${DRIVER_PV_info}"
- fi
- fi
-
- # rest only works in with unpacked sources
+ # only works with unpacked sources
[[ "${EBUILD_PHASE}" != prepare ]] && return
# run self checks
@@ -148,7 +139,8 @@ src_unpack() {
"builds/nvidia_fs"
)
- bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}") || die "failed to extract ${A}"
+ edob -m "failed to extract ${A}" \
+ bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}")
}
src_prepare() {
diff --git a/dev-util/reuse/reuse-5.0.2.ebuild b/dev-util/reuse/reuse-5.0.2.ebuild
index c9f3ed71959f..ae1ffe26d948 100644
--- a/dev-util/reuse/reuse-5.0.2.ebuild
+++ b/dev-util/reuse/reuse-5.0.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2024 Gentoo Authors
+# Copyright 2022-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="GPL-3+ CC-BY-SA-4.0 CC0-1.0 Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
RDEPEND=">=dev-python/binaryornot-0.4.4[${PYTHON_USEDEP}]
>=dev-python/boolean-py-3.8[${PYTHON_USEDEP}]
diff --git a/dev-util/unicorn/unicorn-2.1.3.ebuild b/dev-util/unicorn/unicorn-2.1.3.ebuild
index 43d9e13cf9d8..0b5f73f7a1d1 100644
--- a/dev-util/unicorn/unicorn-2.1.3.ebuild
+++ b/dev-util/unicorn/unicorn-2.1.3.ebuild
@@ -19,7 +19,7 @@ if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://github.com/unicorn-engine/unicorn"
else
SRC_URI="https://github.com/unicorn-engine/unicorn/archive/${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 ~riscv x86"
fi
S="${WORKDIR}/${PN}-${MY_PV}"
diff --git a/dev-util/watchman/Manifest b/dev-util/watchman/Manifest
index ed10cab45b12..325c986e7451 100644
--- a/dev-util/watchman/Manifest
+++ b/dev-util/watchman/Manifest
@@ -11,8 +11,10 @@ DIST anstyle-1.0.10.crate 15725 BLAKE2B 36e656bd8f9c584f11fda5cfe0c2e24e8426b9e1
DIST anstyle-parse-0.2.6.crate 22343 BLAKE2B 85eba405dc5cf806283cf442984e86583dfe6c681f849eb7a347b7b67bd2b6f692e84fc9b5bd86486633cb2f05960ec16e8778300df114ae6676da43442db9bb SHA512 e28c9818afcda0e9b84c205d9c6697ce64cb06c21df2c3666869c07d66893105d9c5e96a27fcf2410a09f6af00735252e22b5c7d8c6cb3f68c4a8f376c49d396
DIST anstyle-query-1.1.2.crate 9969 BLAKE2B 179b8dd6dd709c2ca67f4eb5c9a502b2867cb6744a39f824c4fdebedc67c6c3e07d107c7d817e2ffb589d13b7ed4900cf9653ddc0a43663217042ee92ce8c9da SHA512 26069d936c4b1fb09bc65cda0253fe9be8fa4e96c0821f980c772602b4e9230035ec8c9d092ef95e0a0354ac559f8d25f57a14c34086d4d241b5fba688951837
DIST anstyle-wincon-3.0.6.crate 12271 BLAKE2B d9f4d9d46fa93a1168ca340562681718be852ffa94e30c9ea208af53af9d6697ca84921837a325ddc36681caab2b866b7f574901c80b5c0d862dcb765b81b68b SHA512 59ec6f5a53bd68b6344d82e923eb8c45ddac481dd0d270a7b452dc5b0540ee1656705697c1508942ecc131e7c075248c85d8f4159f27d97ea94f22469ce2eeb5
+DIST anstyle-wincon-3.0.7.crate 12400 BLAKE2B 2023529aa12ebe1b7073a88180ac7491fbba7e8556ba20061bec22b1db9d0f3da058faa5bd7f499d8e5da18422dec7e7648f3b4acd7b4a2d2064824f1b881259 SHA512 782440c1093235ad481f0b854f5a3d3acb7908d2e5ddbd4143139b8bfd0faaf2f9816c1034e760d9261a233e6d645098cd5a594064f190662908eaf79972c903
DIST anyhow-1.0.71.crate 43808 BLAKE2B 1ec6b440758e26b2328738bab7c6b1fe8670959793cc24f61cecd0d8b0ebe60b9855ee1cdac9b5f5a5b238daf796eae5b7c82b903e7c822a5625d95130f8b61f SHA512 401b1c5d04fa0581f303395fcb3af5e7684ead367e2a173b4d90db9c04ac20010c5330a686f3ba91a541e1526a7185091b7dbfddce5134b5a74cc749b0338da5
DIST anyhow-1.0.93.crate 47490 BLAKE2B 1c64b24d3df3307430deb8189ded345ee2858c1990fc343f2400bd67b6d79ee2cf90876326fb29ea311bd857a941fc8319dccbe6c81f2cca2c085dc0c1fffb27 SHA512 237b36bdefeaf8dd2f7d4c5c92d8f7627a5206ded5fa3dafd5710f2fbd3dd7d7187d4a8ae917ae03d0cf06bc8d101a7663bb7bb022507ac1ec88577a37475efc
+DIST anyhow-1.0.98.crate 53334 BLAKE2B 469c6bb7f535c0c665daae37b61a001fb7da688db3bedcb8e7b76392af109e5b9335dadaa5775c80d365d599674ce3961240a07582d4fc9a45c6367a6e7bd7da SHA512 6affa8a4f148aefb5a20f193bbe93f694786bc1e707b298a3ccaae1a22d60898a46121532ad5ca5819fc180d4593a8ce2455d754315a9ab3b5c998a4cd20adc6
DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
DIST autocfg-1.4.0.crate 17712 BLAKE2B 7f7300439899be03d001dd32b7e797bc4b9a58103081b6f7353c4b5897813cedf870b3fb1fa25d320a75326b334b44d8287e8603de34fc560d0b567143915cc6 SHA512 3b5e7c30bc73e105e4bfcab584c24fc4016db41fac9c356c6649fd841051704bbe8848e09546eb50d7c1f18ea8ce1cb72fbc268a620d5c609b3472114b5be73c
@@ -20,40 +22,55 @@ DIST backtrace-0.3.74.crate 88516 BLAKE2B 594b537f3860560bc790d04d72a91ea25bbf5f
DIST base64-0.10.1.crate 41988 BLAKE2B 6e28a70cc0d5e426d9a3944825952851928ec2e32fa2543a8e1d1b886ad306f38fd6e673da62e96581e56613f133265feeff5b0d2f1e2e34593e58c0424eee9e SHA512 674a8cbee95a41f755499a4e3bb93ebd3f80140c3e8e2d44a0b73890ee423754e7ba8abcd92132683cd54501ff5d14438d023a202eaf12776aecbe36df9e5535
DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
DIST bitflags-2.6.0.crate 45357 BLAKE2B 3a368bd2eb58c095b7b4a46680cc2d90a28e24b2e37c854bbf8647c861c4b8fb37eca827599673c5c7df763048149dd82123d1ede1f8a0e58a6bc23c8250f7e6 SHA512 f9bb3c48931ed7e7e05ec6d13305af5da6b6c18861ff307d7dc17c658f63972c87b70b0527287b3625c8592befc207cfe15550654995faf3862bb12a6d95bacf
+DIST bitflags-2.9.0.crate 47654 BLAKE2B df924872ccb929f3e428976764d50e5468112cb83e563f663a5e51a21ef4363b4c639e617ed8afd42a39fed522ee468ce7186adf88bd41f5f4a2a6c833d9ff35 SHA512 f314d5391745e5a7eeeda0c014d739981d8639a8e23e1120d9c006ef1a6d5d5b9292ec85ed2fdc117121b6ed7a67df41345116ed311d8523344928a725763446
DIST bumpalo-3.16.0.crate 85677 BLAKE2B 08da17b757931d2910e0299df53eb62731aa8c4ebd8915859b81d1982b331e7455dfac977c754e500a35ee07ba8eff00a61d2f62be99744e2ddbba06c1268f49 SHA512 a51b75c36f6794db444cab20eeb24f42a319080ecb486a56d254d6f873f3d188b5ccba11db30c068bd0c52c4322d4a3f5f5195c81c94b0bc04387030418835b1
+DIST bumpalo-3.17.0.crate 91975 BLAKE2B b0aca1d64373425384eddcdf8d60dc977058a3d1570451de944ce48aacdb984e73a29ab64fb5b23413582d57a8e32ad8155f6a1479eb00f804afe9d8a9d9e163 SHA512 b2acfb463aa705b9c6a9555858b84f565234110988c880cdb761ab8dc87892ee5d22e65fa935d2cfef9d58869fec0ab64d810b26bf122fdd89b454b6ce65ea1f
DIST byteorder-1.4.3.crate 22512 BLAKE2B d39c546ba7346df315297fc53da4bfc77ecb1f38567ddb788549ee31cae2719a8bc0b7d1f1705abb3cff033aa57af004987d90748f5a31765273b3223a011c0d SHA512 8c8000eb8ecf40351c9ce36a3a8acd7a02f81786d1b11aab85adfeffa0f2267ed74df29b2ca5d1d38128484d1d3cad2b673aa0d0441dcd0620dfd3934bb888fa
DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f
+DIST bytes-1.10.1.crate 76779 BLAKE2B 96573ff7852cd2d4f37a68cb4d76bc43d2018dc25b7b7e2164df022de4e1974f22d4d3ea7cbfb280667650cdb5063d600f4f76cbdca43dae508f29ced449b0f7 SHA512 03429f01927b94ba6c958c46b2e5bf92a23b39ce9385689e21accd34a5d3be01fd0f665f4bbffb1f7c5bdf1edfb1bf11d5ccad00eff0f9388be39fe2f753d296
DIST bytes-1.4.0.crate 58080 BLAKE2B 99a9d343424e04649bd209bf2a6c3a089a6cc9fdb799968f8c3a711189328e4499df2e09cc6a2a8ce05d2cc668149b364cf30cb3b09e96e21d50a39519c2f49f SHA512 502c63b9fdcd36ed28ede55a63cd359dc7b28658ecd43020511d17d48d7c34e45aa8ff7e4b17770f12197451040c2b724fe68d2aa3ab4f81c9171d052f2aa000
DIST bytes-1.8.0.crate 64824 BLAKE2B 9af490b43146b04704e8bf0f7df1f251d7db414b68aa614d47daebcb374a7e18908192cf0a2ecc80f40e70379395b88f60f85fa80f66e3be5661752c4ac560f2 SHA512 a721724e5cbfc73b79102a9c4a00fc9da520417819ca5c82b798c8cfb45af3d77b33f7035ad33d6187399c613cc2e83644236ac772aec934f521f87d4680059a
DIST cc-1.1.37.crate 92262 BLAKE2B ebbd4ade5db96c0a60fd6e00bf00c47cc306760e66987ef0e7714138348c522bee84a573a29c52bfb057295ccb03b3ec6e7529cb1ff8552680ec2b54ffd56dee SHA512 a63f1de45ac8458cac3d459e95f6b3c9bab1dcb6031fa63c60b2471b5ac79875a1311ffff2506c27298a0e6d6699d3263f4146f24bd3ded864771849647f6e7e
+DIST cc-1.2.19.crate 105910 BLAKE2B 1c3d757f8155e2987ca8fa7709428905d3c66afe5d3379c3a3741c26b6abe288170bf414a9aaacd30eefa75f06dfde4e3f75cbe5cd384c558f2487ef29f1d012 SHA512 d56ebd19090e63bcdf65a738fbe34c03cdd294803ed46d66a6428ff60f2ac14a4eaf3e34870ca0ddb38e489878cb632b5912012e5ffb4e84fd813bb7585f2e2a
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST cfg_aliases-0.2.1.crate 6355 BLAKE2B a758d9c88527f0e6e7cfd6d4c83eda1bcb4d6e2438189fe08e8ecbcaa78d56afc5a4873f3b82bf7da96afd690b44cdf1e44466b6da0f37c358b340481017103e SHA512 74969d12d5d24002a29e08d52e30fbce014dd481a7c35ee0162e69333c5f2d7755f3b02439b31522e12444cf1ac8e65880ce33fe6778dac03757e362cbf8a72c
DIST chrono-0.4.38.crate 220559 BLAKE2B ab828bfeed56eb737a1797d5e1132cafe87a1e14bf7a1fe4a5098f50e6ceead50ca2e7f041cc2ff63d5f4e41e2853322f6c345bb31ff12a5b412e3e5202f5fea SHA512 858e47e3facebd5383e71898f26b27d92fe4a69027e2cc47da2af59975ead7767355e0b699f4228eabe76a3eff8b2519c7cecf8b60dc3fc60fbf9b28e2f3d4d9
+DIST chrono-0.4.40.crate 229824 BLAKE2B adf06e469c3294ce5899d602c42e6d25d63c7e8518530b365e926e402488eff6dd6f00abbaa4bcb693d4d2f406e8d2c71f2067ab09c2ce96867a09268231faa9 SHA512 345542dba10aff787c0bbe17e0ad1be7b279fe2b58763aca289ecd2e79ee1c518f9bd007ca3d89080191f272611776bc368cce9b25206b96bdbd710201cd0f3f
DIST clap-2.34.0.crate 202210 BLAKE2B f383adf1d757ac4b68995132b33837686ce451f85a02a8d05d2c746da398510d05d46330f3efade063c3952aacb1754cdac73dd0afcae0df5340a89f9353aa1c SHA512 c648a761b9996a7e7464a538bb53621bae22090b846a42c3b729beca3363958ae67e3da9f93f58b10a10e043cadf7ff930388680d168646178c2824177832db8
DIST clap-4.5.20.crate 56376 BLAKE2B 8efa9c3e171ef38c98a25c526f528629e7e72850c6ec27e7e89a212403ee90d7d005b00750769e4335423ecec1d86abb35c19b0bf7f2c063bc7c6a8bd59d6804 SHA512 e432a118a2ec15b273a404c3cb75bbe579b11034ba55def1823d4670c6553e3d8611074a24f50a0f4adc8bda184213b06106c44c68a19d267342c53e345351d4
+DIST clap-4.5.37.crate 56962 BLAKE2B 2639e860fe71b9773ae3f1f7c276e592481fdba2740d0abb079f0be0076c50b448fea0e34d195ea5b37b15ecd651f0a2e2449f48e6aa33e217bfc7dd85742599 SHA512 b040f239a75b99ee8f4585036d4570e026eb1bef00b8110853c11604dee1db1c3180336b0894fcdbc5cce9278ae05d48595511b51d65bb5bb988a9eb9bf0c4b0
DIST clap_builder-4.5.20.crate 163812 BLAKE2B 689110f2e4f46e8c4c779b6c39cb5f5758c3a32ea5bbfa1faaa6642da7d650cac0827a3e5b503c5054a85e0e7dbf04e7c53d65991a45f3be90c75070cc9c200a SHA512 e914c8b6592f9d230b4f4290cf4b4d73d0160c12a1fa3976c74bad21ff16da532d6af792f0a33fa472166f1cd551291b5d1d71fe8b359040040418694ec52000
+DIST clap_builder-4.5.37.crate 168761 BLAKE2B eae4efdc380820966d4633d1fd1128ff364897cb3d03aaf89b033708a968e9eb6536779b43ced1b55a2ec9c110b614cde6ec618d1a9ce30c81619f559068ac9b SHA512 c677c5ecbdd1363e14f5833ca2a8a479206d4fd8d5dcc430fba866632714b19707f36a2885671046f98a9df3673b96542e650fb4422b348306785262111bdb95
DIST clap_derive-4.5.18.crate 30131 BLAKE2B ff962e52d8d8afcc9639365e27753c6c6943fd809ef89d9e555e8be5b2f13efa650bf1f9ae451f4c127c1529a0af1d892c3b02153b46deb912029b45983e01cb SHA512 035bb918bc7e9badd59341560f23e3a8a2e7cf945b6d8183f74052c4edfcbecf07c9ea6fce0ceef0b84c89a99d62b11760af39398897e4ee7dad0170a96cfefa
+DIST clap_derive-4.5.32.crate 33441 BLAKE2B de532305380fd457c0fac504f845ba595f157661de7ae72b14598dde1f3d4ec1961196220354a2eac97943004ca8354f4623b29fc2b6557c6ef4a83ab6fd61d8 SHA512 ddac7bfd885efdc97ed07b23eb1a42827aff9cb0c6eabde0a0b247233316f99fb80acb8122d8faa054dc65b6fd7a76091ea2e533cb44e85e8dda125330cdbf86
DIST clap_lex-0.7.2.crate 12805 BLAKE2B 952bf3f3885ae7bedd0e8add236590da5fce72a7ccd88ebda063410aef337ce7ccdb5e5e929cb870bc993891610edc0197150a3aa82a62fadc4bbfd96324fcdf SHA512 a8726397e5372fca3389748efdfdbd016b6baedad5b4bd95f33e4e820d4f40e0b94c88b1918ded3678aecf23911028e2261837e73d58ba7fd6f091eb47267380
+DIST clap_lex-0.7.4.crate 12858 BLAKE2B a5ecd50cc503157dd69746f3b6e9c288e0fe4f6d5d82271499f657134fd401fbe076255e2be6a23ed0b69daf3941c6429dad8b288223b0ad390a2c435575cdd1 SHA512 a2566868f4619679d3b74b70592ffa6a04b13e38e3196c56bb1dae8bea0c711bddbccd778d2aba3cc0ee074c9b1cc0335222818f0d47fb3cc8109cbc35bb992e
DIST colorchoice-1.0.3.crate 7923 BLAKE2B 7055fe61677143f0d4445ed5f6be2cbc284c155aa6ceac04df6f3fa2563a225e440ba708bf40e298ad09775ab7c7e1842b5f6dd78422b06dbd1250908e3227ee SHA512 fc26696189d3935d5510a1237504339c1f354d03ffd3b4e830b7080335aa778bc72787ac5fa9a67a731b9bde2788da778d497f2ef97ec68bdec5145fedf4cd14
DIST core-foundation-sys-0.8.4.crate 17725 BLAKE2B 8afe47838dc91c8848c0d6a96a604149e5f0762228dbc10c17b85e4e9cd2c3928712bd0b28e1071f5fd6fd76d4ef972cb86c6c929246fb6e84577776933a8ac7 SHA512 15da472316d6decc213e4e5f08ecd22a108ebefe427b890741de4f9199614f19123e64329da76de5e8b4c9ff74ffc31738fd929acc1460fc757b4aa1fd3fdbb6
DIST core-foundation-sys-0.8.7.crate 37712 BLAKE2B 0e1dd99a5bbb0fe92f55181a37426f6e86445cb20e355f553b3162c88ccc075644461731a0cdcd93dcca65b6cef1de62b409afbd73ba3070a199ab8e7422dcfa SHA512 17492d5314db03abdb3b1998bf0c396ec8ed0f83bc978ae22d6026afdc86c50b58cbac073b3a0d97b92da7e98be11302faf1249d24313494bc058add4f4cb63a
DIST crossbeam-0.8.2.crate 10502 BLAKE2B 487a7a5f197898ebea0fd41a413647db0fc3380790cfdfc6cb7cf3caef48197bb7c2498579ce676d3c5796480a8541ae37ae03f009d768a6157246b1f7d63a33 SHA512 bd2e54372595daeaddcaa26802780959465bd571cac64f23256b7ecc68ff5c0161a36740a51386ee54abe7c509ad1ff870b6f6877a7921f4335661f2c554c3a0
DIST crossbeam-0.8.4.crate 10500 BLAKE2B 03212d9789a66c1eee7d1f4c7883eec1267089ab9d652ba5d7d59a22e04ab878e5defeccf8cff4587a34d976488ffa689bffde596588057d814b633ab3d67d1d SHA512 63650fe2d46ff2e593342b398c153facd3cb7cd72dac9b057ee0aac5ef5e9dd9df0e71536d66879676c0edaa89787d1f365eea35c82604ca46090e527749f994
DIST crossbeam-channel-0.5.13.crate 91174 BLAKE2B 7a9aed6f4922c1d10e4ae12508a03dc7daca773adad6a317c4ea38e544d7c28c56a06623d958aec540fcaa86fa9051a1aaa2c859dadff72873f18f2f3a951449 SHA512 0f31223a7099f84e39e6b76b19cf26736e0c3907fffc2ed3eb0012c7984b1993570bf6d155eba5bfb82897ef0e4fc93b89096071410bbac256ca6be9a9568ff8
+DIST crossbeam-channel-0.5.15.crate 92716 BLAKE2B 089f85b11078942328f89f74faf39597e08b221c142a7f06859a65ca4f3c73f13d077e49d8d709a7a5cc0cc205e3f614a457bb6bdb2b48151f66edc9a4699ede SHA512 b5174329fbdb2a742992b3450a6b11e4330e1d542132acd22d0aebaf49332aad8ceb6eb4e52ccaf8617eb02f191f881b011e5521098082919672f06ac70a4e5b
DIST crossbeam-channel-0.5.8.crate 90455 BLAKE2B 017132056f1b40e55fbc7a09b75509d72b0a6123a0e5ea5d6104fe822f73b3ccce670d711d3b84b5ce743dcab5f10445297a6701b71213b77c0d56e2c3fd7160 SHA512 47677d6fe63050c51393e4a0537a3c65d7055c9eae118ebe60c5d716b4f47f23c2b1947b1e1b66bfb34a57c4db3a44631d323e996dd545565fe4f58c25863ff4
DIST crossbeam-deque-0.8.3.crate 21746 BLAKE2B c24025c65d7c1c98e442af95491749dd4f777af0509636ed66886dcf656359ec50dc2a5e26327559c6659f6b355d2b0b992dafa691a36571c99637cb47372d0f SHA512 f3201c9afef7d2d119702696f7e5e7997a104b8f7d67c7adebd1cbed84d3a3415636ff674f1ccdfd95d0dc162384e46c6138c8203ede69577b0d5359a4b44672
DIST crossbeam-deque-0.8.5.crate 21726 BLAKE2B d97b35e8e8858deaa7fa9a836e836d02914aad29e5c34ab121f52ed65e95213cb2574df82273277365889ea771f04eb40bb2439347c259979f1dd6d5e9853bcf SHA512 0f0c9745763ab156136227cf1415de514952a3f8282ffe413cc249f9f4b345b029940e6a6c87b3be8331a7c783655a35b89c7a2547360ea5ae10aa64ba7ae864
+DIST crossbeam-deque-0.8.6.crate 22471 BLAKE2B 02b854df171b0430ca8a40349674ff251698d0c322c317055da8678da6661730c945d86737fa4947c3bd824ffe402271ee2f77fd6a505d2d46b4a41454c510c8 SHA512 9368c0c224c4b84356f1d422d8869a5ab4bfb36b0ff69244a9e7a7304ed51f034001cd9b2bc35849df874d36ed34285c66574943573522ea32bbdc5a05df6989
DIST crossbeam-epoch-0.9.15.crate 48553 BLAKE2B 23aa0532d3126e22efc779859478098e505b4ec895c643530a3f7e8dba0543df3d8ffcb6825b1d3869a4418e17d798d464b3e1bb51522435d50f53ac224e22c8 SHA512 d9292c059ef1d156da52950137b2b3ea5eab66c4cc2f763d02078d0b0106980839ebed2ae2aec53e026ee7b3ddc37c4b51370d925ada1ad13d9981934daa7bde
DIST crossbeam-epoch-0.9.18.crate 46875 BLAKE2B 200c256cad6011a3a14c4664bea6b150fce72d561c4fffc387fa561b08c0480e8756bf51c14874c5fb19f427424547f72d2cd7dd6f56fb8b6666a85f8d52bfd1 SHA512 0a8a199b9d77f4e28e91fe0a0cbff7e0dec58cac283631fd972477fa912d2f6ddfddaed2c695e4978b01cb5440b702822af6333e7c3dfbcb9a2c2086999516b2
DIST crossbeam-queue-0.3.11.crate 15581 BLAKE2B 91b9797f985af06c854c38b8124cb67864bdb47979d2e253928678118515fbc1257108c7102bad66e1f65fd6f324a93749dde86b4ea28f3bb5a16491f3f56ed2 SHA512 c6007307ef9d219889e6244805ae759998396e1d0548e3664ce9ab366ea78917dee75251c4265b0e3ef4ab15b5c6d42d6a5e9b286d17ad42ec169e7fcddb8ffe
+DIST crossbeam-queue-0.3.12.crate 16270 BLAKE2B 75be9d53340ab72e5e52c940bf6ba5dc417d3245fe18c456ca68b460c7747f7d99340517fa1387c7153faa8a0beac002fe3eabedc8638d044e0c05f4c5b98d56 SHA512 a117977e55c0c2eca2a6141e3292dbc75ae5d80c087f0667cd767b9e9ee0f9c87084ceab34937b66b28a586b071e518a483684bb041e6410b2c3ab5924bef769
DIST crossbeam-queue-0.3.8.crate 16731 BLAKE2B 80a8647bf491adc1a5dc736f662c01e77bcceb4bb2b876eaf684cb2a742a2f46d09e1221f6ca8b19340ddc9ed3a10bf07a08305a5bf069338d00873b1296ad96 SHA512 3c4e855184f8e2656305a59463f0170aab99f9c2df1001f54341b62e05e533864f384477a7a9cbc2b8b1a36bbe4b8076531c11b1492485029ef81ade6e7cbf8b
DIST crossbeam-utils-0.8.16.crate 42508 BLAKE2B dfaf9e7cade2cb5a2de90dc622e58a69c5b28fe9f69d3cbb945431683cf48fb409565190e3414a815563afb12631d990476919890fc482ce6b5792fdc25536a7 SHA512 4b8d599a8b93015eea2fd404cdf1526fbb94662fffc7c64d2f0659aeef349e4ad682f61b2b85d075c7f3fbbc4d8106cd7caf6e65dae117ba982f31262df3f831
DIST crossbeam-utils-0.8.20.crate 42487 BLAKE2B b50da06721cfbfff07825574feada8a28d3814edb218434288683eec31bddabe2ffbf7e5ef1281ee14a8a77c56db3b66f3c5ceabaea9c72317c1bd2cecda0c26 SHA512 7175eadf9fa7c526fa11ff87e40ff203f0e7a4bcec15cb972f924f3c7ff7cc20b6e2e8dbbc1ede142a0207cd2baa4f446deb25d825d28a54cbd25c263701bfaa
+DIST crossbeam-utils-0.8.21.crate 42691 BLAKE2B cd9015c41f532eb3c90101603f32d383f01e6880718b727d6d1fe46872ae276cda685e1b548cf77dd22bb1a05f0d4c4982332c2bde90e1743dbd7f51919022a7 SHA512 6f4aa7ca10c20da291c4714b56ceb1fab1c06b03b2f4e28e474e9aeb95ab6615a25462dc7819713652c3b5f6a06fa0f24ebc92c533fcf35dfcf2655857d975f8
DIST deelevate-0.1.1.crate 49075 BLAKE2B ca3b833664490720ff2e36c601b9e2280b473232cd6cdc715ba82b72498656a7d04cab6634b009c663a700f4beeb91e546e58a9cdd8c7ad323c59ec3422bf6a7 SHA512 292fd0b3ea2d19fc10f666c6e336970c1fe679eec426f0a574a170b8c0585e5be4681728db2777c988642978f29594d969d854b19c50453e8648667d45409641
DIST dirs-4.0.0.crate 12503 BLAKE2B 02c0b9b68d09ca713e365410c72d761de5adb87a0fc5176c4f980050198cc05078fa67b43a8af1b16e80e7edf41a428dbe55807463bab59f3fade09b53d7399e SHA512 be582e5045f1916fb6b918c8e8c5907b4b663534025e4227ea4828e2aa9fe7fbcb3c48f1f0d08d163ba684aa4404076ac210e7f14766a09b9ed89a2825121b3b
DIST dirs-sys-0.3.7.crate 10597 BLAKE2B bbeadbfe15d9b92e4057cb600f1957e066e295e0208e1645ee49fa76c55c45e273ae5b87337eeb398dd3ef3adf0a5584087b8fc0fb780aa23c6d9392029d6581 SHA512 e630964e4c452950a475c10a490b49b2979dd7dfda48172b905cc789153ae4a0ba2d7d91f690705cbfff23737c4b4a339eb0c49e922efd7d68a92fe6368a929f
DIST duct-0.13.6.crate 29320 BLAKE2B 11a7502f89ed7e2cbe787b131275b135c36273d074aa689c6a1d6184248d6a9667518b75c4884e1504b925e62a1e589c3822bf0ab316a21d5320a9c73471962a SHA512 bf6a69fc2eda5dbf79dd785eea131d5c9ee38ffa3c99e7ffb9fcd47ef0beae8b3e5e75ef78172e54ef076531a38c4598880694a7b93573ffeffd3861e7776369
DIST duct-0.13.7.crate 30055 BLAKE2B f1259e9818a7c2f1df3dc387be3837a987e0246dacac84d3ac3443a0c6870b6cb4dab36d380ef8d04db47545655ef4def8c713c62f6e86f2b995fa3b69a16b6f SHA512 b6e524144360b61b5c134d40aec409664388e88ada241443d152c5f7ef8795535ba243cc792c881557412bf75c2ba73c84e2f620eaf7d4668a15ba6bc274b1e7
DIST either-1.13.0.crate 19169 BLAKE2B d6223c76421babf163a694aa513fe07adcf4cea329872c02f5af5956e89b2c353a899f5708e5a2924e5a92d871ba748490350ba30c17dcd78dd4379e229f6e11 SHA512 72e803079bae621d282136ab1e423ba71415bf12038b6f386f294cae68a67ad9ff16e4fdf4344eb3fee4418e853f9cac344c248f6befa3006d1c954668b36322
+DIST either-1.15.0.crate 20114 BLAKE2B 2f87cb6408b1e1a15ea19d930cfca3948d867d268c8ff18cbaf39dcb7f7fdc628811575ec87a7728940dfb2c26775995a3165ab9c17dd42880d56569b22c6f88 SHA512 d70c34d903e8e5088fd065a6da6673eadb569a20af183fa9bd6418940b37c8c2a777c44dbdab1b9960890cba5cb7464b805667ac42f4e05499ddcd4277d24e3f
DIST either-1.8.1.crate 16027 BLAKE2B 2fad54b5f20bb8540fff5959ca7b2f9021c814ee610895d770f7081b12ebe2c93ce754c462df9d81824d479ca75e07f4a9e398c07a655f4abe2740b9c9de9c62 SHA512 5e4da301a605e0bc1ee3a269fe449aef044df05b5e833940c7f79bed61bbff4fc248e9c82b45dab92b2688d578ada000b271aaf67f2f4f7c82b35f05663cfe7e
DIST embed-resource-1.8.0.crate 13927 BLAKE2B 8dd95acb409fa7003746502b5dc304057207a5ca9967cfb027127e06a25280363459e9cf857a976abcfe7d7d035467f3cb82e5bae5a94c0be338ae52f82cc387 SHA512 34dbcdb6fce1a877ec111d271fa1e0181387ff5238e8074c250e453eee07434153d7f36b5a46a74a03cdd5700e486435bb8e8f268ee6cbb180c656a80559ef76
DIST filedescriptor-0.7.3.crate 9846 BLAKE2B c7f7a208e08b9f690ca51fd4eed57d7ef207b1f7c23700fa41fb778f3855aba00686db98513a7ba5efe52bad7fe8b3f24b5f307cb4e8e68176ed61e0719edce1 SHA512 657073f010ae3ecd9f87d8d826e398eba6a336318292c3a659de2afd19c64777e16d37c1673af9c26fe50781d48237d33ee003501b0981209a4b5344f037ea12
@@ -87,21 +104,26 @@ DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b6
DIST hermit-abi-0.2.6.crate 13027 BLAKE2B 4df5306639511a5f69594e903f8ce62482cbbfbfe272a91a12f407483dbac4e87c2d7e5668cc06ca5c0fc149ca93a3152fe6ad4bb3b96cacf56a22cb635e5b7f SHA512 bad8442bb822a9c99f6536db16523c80f5139af6a139bcc359c03725c59ff935816e2ecc5c491dc362ac75ab2dff41ab1e9dd29431f5e9a109b60eb9b7a8dc28
DIST hermit-abi-0.3.9.crate 16165 BLAKE2B b779f005bd4cb9ba9abe401a0a559a5bbcc44726ac37f53e9c8d1f7218389ec8b48f74d14666261bc4fba4fbe5558cfefae873c49a2312c8c8bd4010b8344064 SHA512 f3a5a51d834a6ad55480b53f7e9cdc73a512ab0cc6c246a6ab1e8bf8f9851a0c8a55982f5bba6cb57b5a03b54870e73b0bab0a79195764c308318394a3ea8045
DIST iana-time-zone-0.1.61.crate 27685 BLAKE2B 2091f0bdbfae3f63ff846e27136d9779a2d65f85cef899ea3ab0ff7c987329e6a584cf49c57de566f08e0277bd4981ac3db30ea0cec6a6757ed50d96e2c6583f SHA512 d16c67f435606334042c3a286350db46ff3409f142c0782509b136150b4069aafff0dc5c2ecfb7519dd8d105b9a2e6649df2a7bec33ee3966dc94034c9d5a1c4
+DIST iana-time-zone-0.1.63.crate 32919 BLAKE2B 252417d7689156bfef5386f3cddb06703f033324ec7c3223e6db44cdd62c74ff57028c8a4b93f79d079cd69449f97b35823dd6cae712f820dc04a4f0a7d408ac SHA512 9e595c10884bccdbcb171b547ec0add02ccc2c126e6c0372f658bb418c4b4972c031c5fa547f0b11ec8c99a52ca8f5e97e9f1d2a8a6a0f4fef30b5ad15d179de
DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
DIST is_terminal_polyfill-1.70.1.crate 7492 BLAKE2B fa663f858ab8e5fd56202d731b572bfdd4ab0e8262100424e27360a9ffd2820182bc57d6718a305ef82d04c3798111841c0d9f9dcfe219765c0f63edb560dc1e SHA512 4730fa09401cb4e69c92b38b2b43afd74699c61f5bd7b37605efbc0c08ca7a1318d43e4a844e46e0f84f83f42432f01e33771be2b18eb5977702ab9f894837e1
DIST itoa-1.0.11.crate 10563 BLAKE2B 94da07e0f7f2535d0b1491b3a3c64905274b315ffd35ec8e9a3e36e26cd7211733b462eefb5208963e388345f65be9694804c344a6132b2b595b0bc716c0b328 SHA512 7e22dffac34c9c9f432daef395e0ec710ed658164bc9cd9fc6445c9f984c912a10bac556214a026bcddbe27a3197b35b0c87d6709fd605062637d086b2d20311
+DIST itoa-1.0.15.crate 11231 BLAKE2B 17c261baf95bff2f6cf0dbc33ab78ebbab0cf5dc56aeb7f8977377af868deb5957918f1763c2fe8c080e931489ea89ebcc16b3ebd976eeeb7663ff74989a1071 SHA512 158ca5dd4b04cb12d9292a4df63c72443adaf5aab1bd9aacdb964dc58878d847a64251f84897cb25c34648d4c973b44fef5b4c175d7c04cabc2c13b4631c2e42
DIST itoa-1.0.6.crate 10410 BLAKE2B 8b1dc9ae9d55a006bb2abe3b0282e5e77397814b692a87b9becdc2bb74deabf5db09e3d5a2f604964cbff046148025988a5d916480e0402b2b80646fbed32875 SHA512 e1fb82fe16e1248141d48de9e05e7abed0c6fef58f2ff8b77b52aca5f16f3600c46707ff4c7a0f0307047610f29775bda74948d6d1efceb74b37cdd22e1fcf31
DIST js-sys-0.3.72.crate 54096 BLAKE2B 76c1044b7684ccfbc06c6d43541fc39552c058fda5ccdcb7154c930d03f5260706ed42b36b305e56c5a0eb0dcee27180d3df3fbde92f3b7ba5104b0709f5714e SHA512 5a83d711a02bead2d9c05aaf8a7e3f351307b3219f4f6697bf190d9a9b36bcc10fd33ce0a334e4f3e251d52fc7411020a3631d0874097e9b519e839b713e1c42
+DIST js-sys-0.3.77.crate 55538 BLAKE2B 8a4c04a8e93bf5dab63784a24320a314cc5cb629df788e116c452857b8c049c6bf357f3bf8f35086eaa81bc2d7f0954001addfd0577d845844871ee138e81bc6 SHA512 d9370ed6ea892bd51ea181630ca661c348f82d575381aa4c8b529113dfcab6687f4d19bceecad7e1b28ebaca74d405862150a5b5ee2d5d55efdaf98eed1ab255
DIST jwalk-0.6.2.crate 37673 BLAKE2B c4c5912fc4c0fce31537a9c70237036bb31d49bf88ca1a556f43d72208fbb9f885a7b9258fb79aa56f7ca6768a503c95d60a94615be0794b8602baea9895568b SHA512 c73b8bafe77359b49dd07d2ecbf6428c228128df64886809cabb14a8c9ef7546f369f572ab80197078f8e2b3b27f1b23ac945a5e7783128d0d6114eaf510f301
DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
DIST lazy_static-1.5.0.crate 14025 BLAKE2B df29e0e3d1c061815bdd608b41074436024dc407d454f32517705ab04b2fe06075e310086c5e4961df0b4885e91021589d0bca2c1cbe6f0aeffa3ff1b3fd4637 SHA512 6d2f9887cd7f34f019644e42f02f2bf0111accd73aeaa60973ba0b039b6774670debece1ea9a6978e923208ef5d3ab7326473ee3560c078817f0f7ab8ed0f65f
DIST libc-0.2.146.crate 684707 BLAKE2B 53091a46262389e327973185c26bf187beba392c45a92bfa424fc0976333d6c8afdac6527484032574086e32412a712bc2616468f7cb14e6bd0480ca2bef6da6 SHA512 4112c17cfda83041f33a7b616a365a0eb6603ba857fd7bedd64162021a6305c81da6ae8f37395732d7eea40d4fe648bae435ee0bf0b1a1a48400e6546d4d50b6
DIST libc-0.2.162.crate 769354 BLAKE2B 3bac6124db801cdcd6918ccd86e84c99cced45c44dba11f198ec5852354942db511966fc85347d2ce4c8ff82c89eef2c47016766b2f6ffbea20d99c1deab4ead SHA512 f43e294d587e7cd9c2da9b67be83fc70801ea66c318342cf1e11556566ecc1c8a612925770d85c75af1e887b425f326fac59229b78877d2377092243ea8e6a99
+DIST libc-0.2.172.crate 791646 BLAKE2B 3a6eb0eba1e31cf89ac792a8e667c0f68b2a0e62502710ffe77c2b06321103a30ffdc4516c0a91fd3ff44508d5304dfb04ab919bd3e723e34c66b560a20e7f86 SHA512 7bfe400ee65c1b7e540fd19a9b7eb1429a66863d5e94ee7caa83a227d19a4143316d3b401013fb7f88c8e4cdb1a40cfbd58826597c8e23799e02e29553b67e34
DIST libredox-0.1.3.crate 6068 BLAKE2B cf09f261d3a945d290ecaaa724903e0042d66eca46dde8a40c261ccb1e82c0d6b9926898eadafc6313fdb9f19cde56377b8a9179935482559c4b9707e327511a SHA512 c62142fdca92388664eef83fc89b8607e2df318cbadff6edf9e3d927837853d5cfeb54445299a82054a0ca81853b0a33536966ab26f1f2e0fa43b39aaaf67c49
DIST lock_api-0.4.10.crate 26713 BLAKE2B 113adf8554c65e9782e8fd0360d0398567dfbfddb1fea4928cc152fbab98dbe086e42b81170f6f5c333d61dd3261e8a1ebfbaed786e6bf6378e6afde6d7f9e5c SHA512 ffe8cad8099bc382832181c1ff95e0935993491f247114604201be7d4ddf8402fd4db8fd6499c611f95fbce7d57dc3d3738eddfab31c52f50ab8709e549697db
DIST lock_api-0.4.12.crate 27591 BLAKE2B 4504d146a114d8f8e1fe9ae70b993c713cbfe884dd69c61c54dec978733b95a853c3e5af26f237e48ebb4ee9dbebfce0f6c06067f74a3d122e92f5ace40e22d7 SHA512 525d971f495449bbd02eb70fcd84d4aab05ca582142144a5f314f9aa67ad4c5b4c98dc919a416d0ed2e555063eab037a441d671d56b633f2cb75dfab5d99bcf7
DIST log-0.4.19.crate 38073 BLAKE2B bbc8ce51ad4a01562ecd204a531ec7d82101a342ec26405dfadd1761372f7039297dc97f4899889ebdf4eccbd56345e015d4ec6d2788851e523db56eb541aab3 SHA512 8f11ca6f5a99b61a5f3baeb7a23b7a879b3a5bed666337936bd1d8794864d14a6c4f0747d03505831783f15d8c14ebcf507267915481dfb1b32188b8ab36a038
DIST log-0.4.22.crate 44027 BLAKE2B 831dc5092db05123bf2e909eafa708339983edece9bc8cb802f0ab418d47ddc5045a72c1b58bc7c46ffa68080eebd0fd55d6e4f5b3d5ad3b0bc6b2ea0dcaace1 SHA512 bd7baa9c8a5523fd0864a53bcde955d484cacd782412b5b02c890b89dbf62137624da3a27337a310dd8f62bcc6606925a42bbd4ca161a3b7936ea4ff96bc0d71
+DIST log-0.4.27.crate 48120 BLAKE2B 09a2159032baaff7eede480062da30ffec1c1d4c77e76288467941dc13722ab1566742c1821326ca5f8c2f9f7597099e235213ecbf883fd93daf5ae9ad5ee981 SHA512 8d57219b76c8a25bae193e4d16d4d03bf0b8523e1ed3bdc80a692cabe00fc0359ae9bc3be989f04476ecda7187f27e4ad23fe260a96fcefc819af00fe12a1151
DIST maplit-1.0.2.crate 8871 BLAKE2B 3cf975d35de2d2fbd50227a6d2c5e72227e99197b620c8f29be97bd3666ec162deeef0d9e6bd327a063f175201beeb73c4ed27272449b1df0b78238b2d36ca22 SHA512 917b5cf665e12b687035c895b60b2ae05622963f495f5693515fd24d56f49e95a06ffced68606d061bd20822c655100035930673fd4b0d4790168763b6961a9f
DIST maybe-uninit-2.0.0.crate 11809 BLAKE2B 5e517b8c59f9ae4f1a4f86b48679ea64d62450ec2519c8caaa914479ce9e5b3aff24707e2e37272ba74bb60499afdc602fff17756337b0c50a9184edbd8b8805 SHA512 3006fc009c7c743d9147a4122e677cdeb2546f7bb46963b2f266839614eb906f9d763c161044fd0bf3f7b54124ac0734ac9ae7f7151b1a7a5f45cbc739976434
DIST memchr-2.5.0.crate 65812 BLAKE2B 57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab SHA512 444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
@@ -109,10 +131,14 @@ DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e322
DIST memmem-0.1.1.crate 10665 BLAKE2B 430da33ee602a8aefb0a827afd288cbf0ec16f1d5377f38d17e44dd1d4cf5847b2123f50385c911423ad4b72721fa5b244e4bf093fb2fb1d3ceb53a3782a6152 SHA512 f4ee8123e0263c30898ff1e397bb3daf4e027aadf520977ccaf5bfc4ec8158b398a19bae6d48a85a084e43d80d5ddcbb3cbfdf986080041ce958d2c8f5eb897a
DIST memoffset-0.6.5.crate 7686 BLAKE2B 9a797388702389076c426052c3d54dc62802d5db8bc5c9c83990429f2ffaec4fab4c7dd3f09cd0704d1ea555e87976563bb43408ba54b5e66ce7e406d4604009 SHA512 11bdd9185b99dfee8e659e051b09ee301c7142a372a8117864745a5085c015436d2efbb1478192886f09cbc562529e209d2e3325d94938a64bc75b1d91d2bf3f
DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec7080aa476139c1721ef71555495e1bc513b1efaddc7e7702f83e0e1c2a8f71ff40009d266539484c9297e0ed SHA512 2f04f9b6fed31e94388c18162ad275897a835df7b9ac827f4df0f4b0ecf71064ef247f7ad11dbc27d7a6d448984a0f29d1c000e3c8d5fa6e121fa9571770ec55
+DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
DIST miniz_oxide-0.8.0.crate 56343 BLAKE2B e4abcacab4c8698d0489faca8556faa7bff53d272ea0c80e2e7843dc0f6f9229b7d5b0a17ae210344722a379853e7f14212505ee05da4e60549081cf77717c1b SHA512 044b641ce6d98d1968c1ee0906f91963f9f524d6f3fdf3059708177a759e1d498c63e595d3a3f0f9f3210c45c828b9b70274134ba078b899d7fefc2bbddbeee6
+DIST miniz_oxide-0.8.8.crate 67065 BLAKE2B 8cffe475d689a07246c00f979db6ea37d7e2ec3f8f2e6b5ac548f1182ec97e2ef1374e26ef275edb6f67814f33e32f130f77dc6731fc33f2e786bd9eb3ff22a5 SHA512 3537bb17c9d67c71b601e48008d44c51ba087ef4c827c5fc04b08ab09df92e87392c56b03ff52c66323f5923130580a81f4641d549ebb3f5f7e36bfab90bad04
DIST mio-0.8.8.crate 94264 BLAKE2B f70334d3daa8794079c865c5e91d9b32fee2b90af95a6690f7cbe0765818ed9a0f5d539f3390119565c3ed47025979657e30ee2e871760a776829dcddb59783c SHA512 448a05f19a147fe119965f7f1aaf24c2a40ed816ddf2e5c95ba3bdaded5e2812314c64a50dc7baada93bb005b65159cb6597f82a407936885ea376bb128b0c9a
DIST mio-1.0.2.crate 102777 BLAKE2B 9b87abd99269c62e48c6be4fa197d2b12527b672c435d5f1f623f986c60ed391597dbde7d5b73a624a4df0eeaf9c9cedcd56cfd7ce4239757d59e67e9892c59f SHA512 77eae1170a318d4a53550dda3462ae070d25656cda51db4cb2dbcb28210802f9b7e279900e6d6eba68314a0c814c90eb4af7acc561f611535cb364f75ad4e317
+DIST mio-1.0.3.crate 103703 BLAKE2B 0d2360e4ef45f37104208a31e9aa467d6db041dfeb97403a010a36e1e1427f51d97f8408948c75c0084e6c118f058267bfe87d36e7911cb37366f2b1ac6eb693 SHA512 2142edc7e9378fc3437110c85ba2cee9c9683e87034cd44275d2c389645979db53fbbc29fec304f1d8c8f0464ae17d2a5db1aa9215d696fa0282f5069700b1e2
DIST nix-0.25.1.crate 272312 BLAKE2B 5981fec66eb96dfeb4b380130c4f2927a1f904b10744690e361b480355be31ac625f52614f95a89ea19fa07cc383b0975b3985f743c64f6780800e64a2f11f14 SHA512 e80b3a4e38b26687ba39b52ebebc6415e9618ca41e037d571fcaa33638ef28d022be02e2265db0149088a927fb81935329e651e2cda5c29c92038eb07fe55538
+DIST nix-0.29.0.crate 318248 BLAKE2B 3a13a88375a359cf77b28d7f77f47f178bd31ef74b7627b6701bc6fc601024706be4e9ac1a076c7cba26b64d3bac4de17aab45fe3c045aa7a36e2d9232e872ca SHA512 86c05084aa0e6238f8d48df0f5ce6e6d7661b589f4f3fbdad43387c59c0d6afafea4badf25d31db1611615de19a0b9ef18ce614846b79a47cad4e2c9367dbe7f
DIST nom-5.1.3.crate 135018 BLAKE2B dffb33fc85029809be6dbbf1945b996b2cb68d01b61e13b3c45c4de4fd5a61d66723a51988d281b0d066b5452979327e1ff4249596bd5fa914257e1b2155a467 SHA512 a0ecedc809a64c22280ca305b9dfdd54d06e8f080cbf443ccaa2e688666a1b2bddf7e9f8057e7f6f02cdb69ca478829d9fe4d6d0cb916903d050af3a7a0c911b
DIST ntapi-0.4.1.crate 126552 BLAKE2B ef5291a32f5edab4b29648fcc73df30f993558e45ed862a62a4d7e85f963f195f0a74c9e61eecf928c8966799da45a23694d0c6a1ad5f7d9ab3a8bce86d6d2eb SHA512 8e32d45a508d20f0d3537e056f363270120980dc23564713306e36acbc12a6d379eb3857026fecc16ca75080431e06742e3806801d3e0a848a01f64a8dd4f2d7
DIST num-0.2.1.crate 9082 BLAKE2B d82bf8cf2f53ad30cee1364d65358e8421aedf66126184936d575e359307373ede66358e7672e1eedf3b8ec6a997439a077943c6f20045aa24a89bcdeb611e70 SHA512 9d094e0a29b2bb42d382d5167150418bc2ed81e8deb3c6636c99c86ca14abf5f69b82a49f1678dd110119eeaec2f476fe7a5d57e60558473a6b7c710dec7f778
@@ -125,8 +151,10 @@ DIST num-rational-0.2.4.crate 21694 BLAKE2B 6e8dbb873b1c62046c3fc45eeea0533a8375
DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956
DIST num_cpus-1.15.0.crate 15680 BLAKE2B a4d98b29ad534de9bc262f58f615ec06bde5d5a2f5252f09b5a0a6ecb06a9daf9709ad9045eb08f7cb744d8a838854b9095aa73918e06624a84efbc11a9a5c1d SHA512 fd4772868def9460a6ee17ef6fc00b0bc74115eec891bb3fdb07ba5b5fe4057a2ac69eb31ba8beddbd3189c7be4545888e5724879f3a89132fbc9b32aa7bb10f
DIST object-0.36.5.crate 327435 BLAKE2B 1ffbb8ba57024a7273217edb1db76eff03e0689f81ba27b0aef0a622972e7f6acdbdc480384b50d603dee6c38c960fd25125a313264187aa0e429aa839198dd4 SHA512 b85375ab3660a8a0c57833c28c4dc665dc0664857e1eb3cd472a61b9ec8c16c470b16475545c2c311fc23cb3c43755967f93feac12c7bfad013cfed5f879e355
+DIST object-0.36.7.crate 329938 BLAKE2B 0b02cf2f44e99002909b38125edada1a259feae59fd0e5ef52001755b6878cac710c87c60fbafdbe405281e039f68572ea3d8093d16128899090fd70df7f2fa8 SHA512 dd69172349ecf51fd2351d32cc4453760ca1d15e854a1cf5ed99112032901a54b4645b24163b946deed11f81d3e3035e1a5afd8bff20f335dbd05eceab073478
DIST once_cell-1.18.0.crate 32969 BLAKE2B a08d5beee50a7add28bd9e50b18709e7b34574f0f55f80909d5efb7ac5917e5f30bdcf3fb43ddd0a4f420a427390c7ffe1cc1c7191a3a1d939bc6e3139e6eef7 SHA512 9328968afdf3535b2d9e0113d75afa725259d76994ef2e1948ad7efa4ec8a65bac7cfdc31b749d5cd55ad4e28d2e28ac57b871e3067b89182453c7e2413a13b8
DIST once_cell-1.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8
+DIST once_cell-1.21.3.crate 34534 BLAKE2B 3578aaef305cad2fdffdc40c392775a3540bfab3f3aeafd22466d9507bf8346b9fcc200929d48525b051070c0aaa423ecbcaa12868b34dca007991effb224166 SHA512 32a87506c6f4598f3ca2c88556014ef2093d5db9a08602335e847caa537a866492fa74c894e7e1da2e4289a1d3dbffcb90a9e37a4a1453203832f434b8206990
DIST ordered-float-1.1.1.crate 9983 BLAKE2B c6c2f5c33676fc88ca85c5a986b5f547e798dc93f35d6fcf4f3c71feb0c05d40965936c509c269d1b4ecc737bc425f479c78821572e646c96aeab09bc213faaf SHA512 defec68f53e35793f579dedbfba46443df91a78332fb755ab6ab90831e09b02519c88c61f9270e9093f6843a19ebae516fac0a06e1080421eb038bf4944e3f96
DIST os_pipe-1.1.4.crate 11436 BLAKE2B 215f548a5b16854e156f785a1cc57ff16c241b50223c75159081017889cfe718d6dbdc6567dfc751d71eebda7476c95701c8ae88b1320a0cbba66a694b471d08 SHA512 8568008e30fdc47c1c89f7368654d26407fb6594cd89e2b85786c875d9dd99e77ed2bb84d281351072670e2dfe7a952d6251c6fb4d111ebe6a63cb34942b6aa3
DIST os_pipe-1.2.1.crate 10691 BLAKE2B 563b108a8ce21dc4406a35bd2776b156ec77053f9449ba92acb81b9194a6df58a72a1fbbcbfe0b8d88c3fd3b4f8b1244a4d6737916f8e4050c6cd3eff7a8b130 SHA512 3a184359185495e8a931d3e875c5ebdc822e6fc76ecb9fb4264409f68d8a145406001339bdc00585f3ed7d9ecc74fc89f662fa8e08f4ed764a258302a198d4ff
@@ -136,21 +164,29 @@ DIST parking_lot_core-0.9.10.crate 32406 BLAKE2B 25339d028579eb45a957ae5fdbac002
DIST parking_lot_core-0.9.8.crate 32383 BLAKE2B 2f9666872894d1c85895437d1353f9e15be2bc8d004ffc8f0e5be95e9dd4b274797db3752eba1c0b5b6071c1b8a71e4857cae0b2aff1afdaa39e92e70be2e6fd SHA512 8d6dfdf661b0f7d0774cb9f61121f2daefd182ac8a2a0d24eab451febfbe1a664c815c163d34a7f3d15a54915a8e22e6c6cd10e89cb7d7598d48d81ad6a3c256
DIST pathsearch-0.2.0.crate 3463 BLAKE2B 6e1ce6e06e12249be3e03096aea7adbe27ad1b34a1f8921da9b287cd5a64d092dd8347fa582da05f069191e1c370d28ebbf875be7d44f5e544f1be8da75c1de0 SHA512 22b0da34d88d264cd920959202053fcb9384160d7ac241c2bfa27386fe5827889a0daca06b8883fb0d6ea38caffe5192f482c1521b4002d09d8e719a3ce4574f
DIST phf-0.11.2.crate 21569 BLAKE2B c809201298f1c5046874b3bbdd30e33f2bee2e4b977152a2c5faa91019ee5a1c8fe1d42cf91f6d0b0dd52015fc66f0a84c1b3ae014291ad7d5ba647a78debded SHA512 97752bfb44f3d1f9347b4ccfb6fa2fb80b3263d6f67aa703c52ae90d693c537a0db878acef828c79bd4c41e8f7ca0ea45588dee073d12c9bb0f2980c511b65b4
+DIST phf-0.11.3.crate 23231 BLAKE2B 588ff9dfc05a3d2cbe223d97c36c8a596d89cd421b568a0526992a089958e4b4ae8f7d33b3f15cf935d20bffea8f60d39ef2d2e1904101f285ca9b8b8155ecb0 SHA512 20a834481bc43ac8c560b00e337294d3c14d1fe359e7f78ed08166b096305e40277f4cd3c179a740911b5c241aeb4e263afa1a50d37f383ef63da113bd6270a9
DIST phf_codegen-0.11.2.crate 12977 BLAKE2B 5ceceead850a45fb0f6ad706ca26e79267bba0ffc0870b8a31ee8a586b37dc421d31e5af3453d62eb85efada260a2eb9ceb12d2f76434dcbaaee2f71cd43d38d SHA512 0a11be13927f6d4303a2f10bc3a0c986dfcc4bc91c9e885e8912d077e434098f75ff4ed9633085ccfbeb052d573721750fb80c7a19ee1e75fc09660aac2a6c5d
+DIST phf_codegen-0.11.3.crate 13741 BLAKE2B 88b6f0c206a95945c115401a30ba1bbf6a74e3acd4458f892fcd1eae5312765ed4e17272a814b6242240b97cc0d4eaedbf8c1c37a090d9aeda6ab23bd2280e78 SHA512 e86c3b73de198aa0ac67beb6eeebb88865f77d075b9d7f290eb9b73bfdd6728d9479f796d56e4f3358226ee88b877d848017cd951a14804534e4cb656eed209e
DIST phf_generator-0.11.2.crate 14190 BLAKE2B a20d6d3d815ca0eb5ef18780587b9963459887a3ddfe3408c99f5ad7c382da014cc0bbbdca24fe13c780460f3e4ec4580665004afbd300fa470a91d3becf1a5f SHA512 122ee5ddb1f65f386d35e438396eafb7c9f2b1254daa11aefe0a6a45aa0662190c0b7fce32b6e003b04d022e60c2af4e355f995d5ddbd1b58df93eedacb809b3
+DIST phf_generator-0.11.3.crate 15431 BLAKE2B 0c8fa88e391141d36d6f128fdc3708a87e34ebd56e201ad56d62de8c05e9bff62258dd7f3a03b432ddcbd83c4f61fb9a57d93574a9f9a68e931720733ecfe1c6 SHA512 52998e20648b6ecd1eaafa407f7da4667fa829d48fe0c9f8f718377cc86a232a6261fc2f831ffc7051b62dbdb880654b1207ac314e57b23d2b70f634d07c2115
DIST phf_shared-0.11.2.crate 14284 BLAKE2B 3c3bbd24de77b032d194d0b0679a84a4e2848d41ceea5552f73e51e3ebddd5e61188393f126f668689dccbbfa92a8accd9c09a77de39eeaf72b8993dae280dcf SHA512 f2cf9e8ceabde75bb7548e5a47dece9a8fb7eea4a6c5568675e7bd735860c3e51181d749a26cd3dcad1476ec22d524ccb77a956dd267cd0f2b7dfb81db9abcbe
+DIST phf_shared-0.11.3.crate 15199 BLAKE2B 82441a3f6db12e9021552b51ef4ad8b564532833dce782938d7d721e9f2d8b7015eee7483724552b8fcfeeed365259cdfd5044e9d2a999f42baf476df8141db4 SHA512 34bc3c0dff5568f0276777614d92d87882ca6be9e3d405c1e7de90ac16ec52a12acc30ea9ab2033074d0e988fa514247f37de1a21a3727de0ef43f42f477e27e
DIST pin-project-lite-0.2.15.crate 29683 BLAKE2B da9dd581eca047f089c2a069a355caf66a631b3ff81fc07220a3c378dc77ea2c399b165ff8a1d2f6556595ec52dc1bbdcbbdea5ad9e5e317281650c9158b3669 SHA512 ba3c22c70f98ee0d0e78fb8a25bdc3100b26c3f03f3e4c6c0c238fde75774c5634d6014660c39406a828d1c28f17f44f20fe19dacd331c4da2f4961a7f7c124c
+DIST pin-project-lite-0.2.16.crate 30504 BLAKE2B efd0b426fcc6ea8852bce499fac61f9755a11c6a2999cbec514f093ba7b3f94b1f2d437ee9abb243e31f3838ac1c74491a212851d7798eb249e209b35e015332 SHA512 971adfe54cfed304647fd944c1c915e78b37eaf0de3a582fb984a5e91f1b7d4db2cf0f53a9a64b64427062d4b41c0a36baddef782411a76ae3be0f8ca45f0718
DIST pin-project-lite-0.2.9.crate 27713 BLAKE2B d6985b5add432fb6287d1b0c9fb0cc91a195f82c5a748a9ea430e4ba884717ec7b16d730b5ea62de5b2bfead1771da2d115b3776e12e605f70f2538f374a28fa SHA512 cef0b77233adca712db1183f780732ea577cf1b27c2643de221d54c837c75ce749f907e24a967be7474812c7682cba613a3fc5d553a9578a1b80569da0e562e4
DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
DIST ppv-lite86-0.2.20.crate 22478 BLAKE2B 9d68dc36d8148047d571c0147ed29f586f3c6ac9394b56bd955c8ae5bb18f5a8da5369809f7b8c3199074e23660325158c32c62e1bf69a16cb1f5da2a01f5df0 SHA512 6d171f63b42296f7765732fce3af7ea05d0d81f1541ffb3ad86e81210715ef4afe5bc9e58926e97e757aea6ff96a8012c8411eac78be0fd080898318ed21d7d1
+DIST ppv-lite86-0.2.21.crate 22522 BLAKE2B 150b2ae019f296dc0a15090bcabcf4981bc58159d592b07da729565ef8976e3d1b4416381c6ecaac77874d8e259995254255c8831861ac20922b810753128cd4 SHA512 94710d5b25b67539cfa828476367849e1ecaca744f2e0429b48c05b47ec48cd57f950fb9845a361fbfd96f361ac00fd2d47cc27c584b79ce3d9d8fc133f5b7bc
DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315af00431139e4dff66346bf798e3a429f91d12a79776c150412fdda0b158a72badd5e1044ac4d6917f8482d4b5a7110b7 SHA512 8a47bc9d3e24e9561d1e384d8f5a633284c2cf9b5e6733c5f9d1dbfe1870ccc8e2152482852e50b551cecb68e009148585b910ffb0508a7b4875598eaf8657db
DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
DIST proc-macro2-0.4.30.crate 34731 BLAKE2B 0a27a06151b54e4ba50f08803a5de44d9c7702ed72cab1b775408696057246e3336dee3a61560886cb24fc4cf582339c8bde7d9211e4e0524f2c719b774339be SHA512 73a8de3f1d76a8baf2d45afc1497bba8c0cbf231bf9b6750b9cee2473f492d5f3957ac149998da720acc8287c96d604971b51dcdfa629523bbdd97c297856ac0
DIST proc-macro2-1.0.60.crate 44160 BLAKE2B 3cca40d5ffa85607212ea8da63995b35b1d59bf077ad1f708bb08f20a3f3d477e934205008984bf2e947e6e53689192df1d437772c75148e122e0f1f4fe43455 SHA512 2a3d33d2e42e3b7edac7a099dcaf83c43ad47852217424c2bcf8ed5b894292975ef5a11df01ebb3479971e94d5b032b9d043c28bed476d6f7087fb9297fbaac0
DIST proc-macro2-1.0.89.crate 49446 BLAKE2B 844c021394e7a2551bc179592a6769d672360150abf92debcb9ac60a94a2e426c48c408f06aeb2128686f5f04d66dc12973714670c21a5063ee6b9f3bae4e671 SHA512 488ab38a04df1d0330309382a7e4f667238cbc9b4d513da6a8f5718f8a762f76cc122af67fefe8f4b021a286b3d23e3ec83d781fe6ac823042a6daf14d147e2f
+DIST proc-macro2-1.0.95.crate 51820 BLAKE2B 93229d80556ec03bce4031607d13c7902cacc2d7e2586a692ffe8543d52e3f3ba253c9c311ddedf6d9348ce8758ae8ff64577675cda2dac557f936a328de47e3 SHA512 f78e4d47ecd29c1b2315554705e445507bbfb9449afd0bf1b74df28f266ac6382ca8c3ce135ddc55c989eaee64d1794a0933a941c8ff55f543fa21c400016547
DIST quote-0.6.13.crate 17475 BLAKE2B 985287f3e619c46b052e704c6da78565fe5d8e4f9a0d503aa0e8818f595fbef32a437d67228c35cd02d817ee3e19efc03e75239013a87a79553bb252f15c8ac5 SHA512 bafa9ba42ea6ff2d6df652384485c58327de6eaea2832423eedd8ef8b4aace673c23b70f1f22106515ac13d7f625cb8b1a5e8c4388c1701ea3cd86fb9ac3056e
DIST quote-1.0.28.crate 28382 BLAKE2B 9fb16c3bb2a7fec3d8138ffec1f58277061f4a643c9051e1f6525f9e347ed9de41a3797eb3140a6dd828526eb4114c1f7ca562151dc933f338d64b175ed35d9f SHA512 846d718153f78cbae6dc714caa9413a5d5964bcc5e032f5c6c5356c62c33bf22635955ebdff0dede69ba1c9657387e65d61de7c537f6f56f8060721dfa52d735
DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
+DIST quote-1.0.40.crate 31063 BLAKE2B 09036ff3e5ebbd775c466bb936de91d4c070481eb4b98c62a4cddcda57cd7b67d63f979b321f6ec64aabee3f5da6c28e7a3efb83f4647768ba578f1bd0bd0bdb SHA512 45a76e22a2b0bec47e4ba73c3b73cc41d821dfcce9876134c5d8eed514da214aee4ce7612e372c8709f888c0d8b9b7e5442f27adb7a59f3571f0339ed7e2ac99
DIST rand-0.7.3.crate 112246 BLAKE2B ecc7c1bd70ac874c03bd8b7faa3016bb2d5ee5c19603280a12a45a81598f706e445971ee081e6ca410ab6f0f5f7a06d9315848cd556a2d8522a82024f6ff91e4 SHA512 f9b68ef9446f1ca2c8092c50990f15c1b4cb5529eeeac4df8d69755e0b7253c663c587775e7cb0a7298c31edb444975dda34926759306541f6d43d0d3cf57b7e
DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
DIST rand_chacha-0.2.2.crate 13267 BLAKE2B 7908867ceac98243ade22e1b38f1903fe0249324484d91c948a5058a1e099e5213f325c5ba3400898c8319158ed69f4ed064164f235470856a8191bd990d5a10 SHA512 1e2117442e4ffdd834dcbf0ea1829e73202c0ff9041d5969d81a59330242145f2753f2a56de2fdbff65f26cf0d227c7d08b2094ab2f946b764aef88106a6ac84
@@ -162,27 +198,36 @@ DIST rayon-1.7.0.crate 169488 BLAKE2B 518f0eda1fcbd1b1b230587ea18cab0023a699e796
DIST rayon-core-1.11.0.crate 73118 BLAKE2B 313d65bb6e3a010569b317b32ac91c72e38282f4fcddbcb56ffa97de42d88c0d34f35f76b62e1ad60ee96b596aa681caf2071a8d5dfdca085fb1fbafb07c3ee4 SHA512 00ac782f49d688da90e823980e83b5ccd858f93769e2d801061fdef78728cff37d3a9fa4fd47a5cddb058f28f3289de349f8c8fdd94fa2f8c400d73bc4529800
DIST rayon-core-1.12.1.crate 70701 BLAKE2B a32eb9ae9a71b4f0881f7bfd5375aa7db5681f20f7e0b25e6ecb3161f2aad36b93026c1691d02bf298a48ea07ec9475a237fba457ed0b0b8624aebab2b4988df SHA512 33d0297b682f131c50e1eabc3be583211a5abe790301cbca91bf510e43d6714b7564ca39fab7c4bf6f02aa0df6bb394f386a61320f21ddb6bd7aea1372b5e99e
DIST redox_syscall-0.3.5.crate 23404 BLAKE2B 85aa4299d9816666bf576f523da5cdeae87b3c8fbb2af103e82258d23f73303c068a4b6c3ef4117ad67958cb31e41f836a9f59f2ce1bc52c23605e34399afcf1 SHA512 16f8f4766932bb54e4740cfdb4f0802f76246c0bf88c1d76c69c115949b124b625d8c3b85d8947073c2e9544f425aa16c10f71fabe3c03d29e424c47fe4ccdde
+DIST redox_syscall-0.5.11.crate 30300 BLAKE2B 715e9f507aa5b56a9779d9800141cdc044bb52c93d018b95f596e13fda2e9ea7bd57fbcecd2ef4a418fdfce234018587795c7ec25d7da7c491bf037dbb1c8781 SHA512 74a0549484fe332a6192227889165847732e87441058f75c6962034b816f258035a20760ab19c6a5c6f008bdbf092cae02d11e232b69a2cbca94ff1b000f5226
DIST redox_syscall-0.5.7.crate 26249 BLAKE2B 97f848b130403686404dc193415e5060c32585aa3638b825b4775e54d9a058695b86457ae9e3cc0240bcac27ab4c05dd6b488bdc1c797faecd236c6e477fbc3f SHA512 e9f2d254279a4063089436b699ecca766a997a72718d132a9b35f7c8c8fc82c4b5e25fd8f3e6cbd17920fec484140db520c262376ed1c74f847929b7f43fb97e
DIST redox_users-0.4.6.crate 15585 BLAKE2B 1d60d0b7781395ff271d79264910d24fb021cd8ef612714265abae25b26ac158d48f542f1e73701bf5b99bd67546a7b878e4a14e40cdbd478b35bcc8b4778f5f SHA512 719d63fec42bad3cbed39deb9242ce1daf3f391bccafa8121f63198120371f112d78b0da8d66458519e946581511004983f04b0a697071f22294ac7c831120c9
DIST regex-1.11.1.crate 254170 BLAKE2B 5cf41012fc2ba8a006c0eb4a922cbbf1614bf300be361c9e2d98956a9a5e9b140e37bea09132fab7bfb633d4439158723624bcf45e8c619c4061b399253c1b82 SHA512 d065f6dc405771518260425f39a5eaaf8cab62e78c91ceed3b3994a9a121674d2484cadaaf816bdad89c87a40550d57b66a3d9de6618a7119a658301ce7e67d8
DIST regex-automata-0.4.8.crate 617784 BLAKE2B 7535c79f6ddf1b1225e21171921594dcf32fc3afd47519d2067b2047b19070cb7e6fdfd1563b884fec6f91dd568522fc95d85bf095c11f8c02daeac128c45020 SHA512 278e3e2ab230ed5fa7d4837e8ea879fae68ebf35c2da5cc3a67f46b7d593abbcf71e6326a0cf34e38edc0f3f2166ff42a4fcc17a400d9604429aa5b4be075a3f
+DIST regex-automata-0.4.9.crate 618525 BLAKE2B ee3fc41c8c445be4c1aa3e5b19a3e61efd641b1a24e7a1ed55f837c1fba9c816272cb4645c13232b66b170bc7c413802928beb22e3891500141ad4ede65b60b0 SHA512 40bde0ec91cc27bc0c3fa237a37ecee5a1f023dbe006a999c5888f8f578ee2c4c64d9edfe1827546cea8e92ca3c10f8b4d494d81f3d0422b40d90bca9cf598d2
DIST regex-syntax-0.8.5.crate 357541 BLAKE2B fc6d125f7a8574c37d81c75cbfd447cbcff736f2d9991b19814ffc1a414ebc5b76e84fb8fd36c983b38e8e391d165cdd9047832b0d9100f0e1ba7085484b7db5 SHA512 549d8d130fea9ec0d5806126f57f31d433f50e9328c5532ad417c44bb5488ec0d20acb0983dbe54dabaa0b453cbea4533cf7baac7144df119e8f78dfe55c5ab8
DIST rustc-demangle-0.1.24.crate 29047 BLAKE2B 8248b014eedb26cdc0b748544ba91b9aae9c992a6f93b4d3ac256b78f691d572f8885a3575492ea556698a241d2759743968293079ca02bb6a5f318b0ed66dd4 SHA512 eb897c35300b87766e6105917a907fca1c5b1f7691fc03c6c1aaf38075ac883a73d1eb54a245d13ba59c7b0f0333d6543e23fc1b1c542fbbd5c750a84660b9e8
DIST rustc_version-0.4.1.crate 12245 BLAKE2B 0ed627c560d88e5ade830cc5f72c62f6ba88be3e30d0f8db34761fcd0b284e5b2fc063c240149aabdfb12c8410ecdbe50cb10a3544500b5a020f95a31cd6709c SHA512 7aa8a487ca7411b6d23cae62f7568fa3474a7b1fd1589621071be3428a550ed3b7c4ad68277a8f86849e5900397d7d0e9d678f5d423742a045dc7c660fa6c598
+DIST rustversion-1.0.20.crate 20666 BLAKE2B 49fabcf276fe3f59b4a1c2e8a07364ba59c5ba4e0a33fe4150ce2eb93c6da42d32ad4d4a197baf6616c1cd703d34fcf5a90186c5467c1656388d55e7962d01a3 SHA512 250be168a4ee64f4b85d78658706659122d5fbbc748f321fe2b9baf48c547de4f0004c87882642645994b7798077c514a44e06b73784a800d04e4cc673aa8906
DIST ryu-1.0.13.crate 46823 BLAKE2B c6d661cbff5e7b273da5a6bb704bb1910b897c55d854b05bd417f53853a832791afc351e5a5aeaa94ba99a8fe64c8a930221c52a8784519728da748371a4ae04 SHA512 25f60216d91e68cb47695ce4e966fae674d5b3e4b0cf33e740248c1605fdcf0c963acd278a485c5b4bb0a1c1144002e73173592222af4989df7a4ba402508c13
DIST ryu-1.0.18.crate 47713 BLAKE2B 409cdf4b4e77685394018371e91ad6fdb175ac57e1df9f902871f13208515e5a2ab1daa226fc1e7291278e64448332845be4cc9409bce3b2f3daed409259e104 SHA512 a9b2beac778ec47e6be303148d7512ee681bd2361f6e4ac6db32c8b4baf86a8c5eb5b0d02eacd6131ae88c7b5105c57018c3050676e0b3dd1ed9c4d2fd650e84
+DIST ryu-1.0.20.crate 48738 BLAKE2B b126085448cb58639a7b5867fe313dcaabaf19df478f67fcb6cf15b8e881a21e641878345e0bf1fea7d24b56b921e667fd26a39cb81fca7ea02585332068263f SHA512 329c581429d9b8baa7d9edd9cf20e23fb8002f339d9fb3d50ed4c7eb68fb19c1ba966d52a9c9602265ca5f59f2bd4393ddcb3a7ac20c64aee3096e137eb2a384
DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
DIST semver-0.9.0.crate 17344 BLAKE2B ae782bc78f29e45577de8574ee58959c70b54bb0b6f45a5a7b09cc4d358d9a0a80bbefc6e0f2a330e2b55adfbbe5c1f64f4ec9bb94c4adf7bb3e4fc9c142db6c SHA512 03a2ea563456f812c301721c3572370fe4934a22db60079da0dd6ffa33fa789e5e2436ef09e62fc35e0b742b06fabc290992c74eed80419a353c9de9449928dc
DIST semver-1.0.23.crate 30622 BLAKE2B af5f7401daa2004ac1fc419ff907a65feb9b11743ad0feca0929bf2409eb81e03637ec5f92ba9f38ea386c4ee5cde72bd3d2042083e2fb0d6fa0b839b1c5093a SHA512 5ea1fa17c08d1280c3a4bc8d28494e88ee05acd5dc969ef6f0c6f91fd3b5a8fbe999c9e8bbd2da383413038b8d29fabf02b87bd5265bbb8333f3fcbe409103ec
+DIST semver-1.0.26.crate 31303 BLAKE2B f99e282e2bc7844a451a4f600308840c4a96dfe032fad6e897e9ce66c8b5ee44ace8f94f93dc50a53792c8c485fa81dfa5477255c211017f06937212d9473dca SHA512 2d2c5edd771b67a9e32664255cc4c4eea8c9a6a4ab08a8ed968a493db70774b393ae98e20be0a87ff60149b7c142a01acc0ace28205b41b39320d63fd5dc6155
DIST semver-parser-0.7.0.crate 10268 BLAKE2B e46b7cf9d292f8fc54561fca4df8534dc96f6be920a5c869c405ddb31b9d1a18eab0799207113cf4910a52cc0df5017ab1bc1883a7c3787ebf2d60f09ac0ab4f SHA512 17320468ec6b9862d595f358d70c09ac6e09db7885fe0ead7a1e596f79350a6306e8bfde5bbd6512008a7c5454da1c7ae55fe1e3bc1c1ff02ac9df54c0a6121f
DIST serde-1.0.164.crate 77057 BLAKE2B a3c9c7deaa841a559ec901eed72a768e0718a77683897a84149dc8211f3e6f8f016e6b86e5b3c7c3c3d512486dd7fdda2860f69e7d9e600fff6ca6da8870bfd4 SHA512 17376fad0d3f0fc696d713c0eec81fc4a83992f6f9dfbed7c3e700e7ca8a3241abd46d4c11303d26a5fe049ddaf3308c2e76b650cc7350e03a1e34002700552a
DIST serde-1.0.214.crate 78523 BLAKE2B c701f316a3204625d475668d2722991d75c8d9c573ae32e9175ccf99780fbe0c9c9d1dd0b4bac35f2cc91aca888c7f3dc41af2842dd833ab82776a38c2a2f6c0 SHA512 100eac65a39b9b9c32c1671d36fa9cf8aca84a2673e24c2521fdbdb3ed9f932c71548f3f1a26b1e73dd7c92a34ffa8ed1c76eb173fa20d6e85736cdf8dc9a8ee
+DIST serde-1.0.219.crate 78983 BLAKE2B 7e9542a04c7f1aeff95b821245034368ff1721d98d7138bb1e0a99cdd6436dc37d69606308834fd33daaea3a1792409b3b2305b802433fa1d155816c55ca2a7d SHA512 0d3fe9a47af027d0d79499e60d940661dba6e29e8f0ce47d0db2ab722030d255aff637248af6f893a9c4224239733db09ffcdc6e1923a7177bfae55c98ebe769
DIST serde_bytes-0.11.15.crate 12191 BLAKE2B 71cfa0a91b274a2f31c2541c230ac16041d4454c56c70206f9b1874884cc9bf5b6ecb5a490f6f849daf391dae5888b5cc7428d8397b14e47cd8e13d973b1eeb9 SHA512 96c9f7749b15773df420fae1307ff1a8699856362775a9c9ef6a9eedaed4d5bbd4919872d8c2f9c24caed6dca6e3d82b929a9a3e7536df7e2be954bd1f4d56c4
+DIST serde_bytes-0.11.17.crate 13256 BLAKE2B 9c92131460592ed50c261e84113bb2f21fc06f20e8ebc158a94f69a468fa83dcf29ee95e983d4de97a477817dd7c0abdb349c9623a49fefc8493735dc77ebd0b SHA512 3174fd530cd120099c2a2ee233152750c7a52251b2429f2713a75937b14a77a42f3c061d1b962dbccd146f09ed7c1b9b37aa210f731a9f056d02ece9e4180c82
DIST serde_bytes-0.11.9.crate 10833 BLAKE2B cf429312342a13d0590271c4b3c5b841e5831ffcc5be76cf0dbbcc7e17fc6f1ebd5b701dd7a14c13cc1c40de5aa9aae1c6baab5f048378a213a37c2244df6ce0 SHA512 1b449758986aff89b931bfaff938ca5ca9ef01f37602afe1b0082627ae9cdff50ae57ef0320acf71a4d97543013861a9ed348caaae8f57c5cdfa2162ec8d3d00
DIST serde_derive-1.0.164.crate 54789 BLAKE2B fb8e50cabecb66bfbb4eff07bbd034510ebc4eef5fa21c855887beb84d19b1201a4e9dc0f68a2aeabc559f2229a905cc44e780a7e6bdc55aaed399bde5dbe168 SHA512 08777ed5775ee6ea47daf084f4ee15869b3969d54e43e6820277535e79b70f61f6152decaeea29bca67137d354bad079393a6709fd10d7cfeb50728e46030c04
DIST serde_derive-1.0.214.crate 56630 BLAKE2B c284561109e5d60e103f1bb421e4da48f35c5046aa52359177e286449cf8fe51a92f6295f5bec3dc4cd737025e8d0bc618436e2f7640873f66bc5b77bb4f450a SHA512 70bc0a31d344cfec8d30f2034beab25097ef76ab8d89947b21753f737759e5d4e60e5596e0c7994a7cc35993bae01148120f6cdf5239be25fb243056effa27f0
+DIST serde_derive-1.0.219.crate 57798 BLAKE2B 071f02019f829a2753769ce915d11df8f0d202ca67314fe83b42e1f1f3d07bc91b7e7c38fe498a0513714f80d3a3dbf2b447b1f85762de06dd021119801afa89 SHA512 1676bbf09e11273705a35c540d52d35d1bba7cdf1f347d40a364d7ae9269167f9f0f62ff4fa384aaa613c83e432a8eb3c016587ea643bb11434c00664a5c116b
DIST serde_json-1.0.132.crate 150549 BLAKE2B a49aef7737fad2e6f6ec79cb6da00c734e7de7ef16be321846d1f6229534b58e15ceb0f6306eeae6f85bf07431d82959c0a56ed1394d21a67b65c8c48e971f3f SHA512 9d157ce7d705fee8245569e7c577310782b69675a6e459f21904544b824a1ca5c9b445d17419fee438dfeb6fcc35343ba14e022043fffade0210b6d2c1b5795e
+DIST serde_json-1.0.140.crate 154852 BLAKE2B 733aecfb88fc37de37b60fdd33a45fecc2bf0ac2165b81bdb12665de7e26633836160e927be5d538eb2056a799e85ca4a1008cbd30af23b72a594643c6015f22 SHA512 bafa26fd43ba30cbf73572b8203292b1f275995636e9dfc3d47954939453fe4ecf0c60f25d2af1ec16c7cb0e7ce3b96cc07507d1b53b7db566fe7cb2624f0e12
DIST serde_json-1.0.99.crate 145102 BLAKE2B c6911880feab10a782aebfbe06b1eb37f415cc362db41ee8f6b0353c3f909d3c92512197503da81c7b74e54cb7dae49fe62c53487b1981480269fd1e657e3088 SHA512 7636fbd4f1f12e0675a8b13d8af80f09a2dc6036f8d6eaccfe0593e2f2e7a36a2ea28fcbf36d396217a8f7995ba29c14a17e695d1c914866055c69768292b292
DIST shared_child-1.0.0.crate 8939 BLAKE2B dd7aa5bc4f87cab26cd0cd382fa00f42ae45ab6944e3367e355d19fd1007ded068642a35941e0cecc100120bcb1ea7d07d91bc36227261e8207b87c53de87a17 SHA512 d0e16cc7253271e6468659db0d7344c2d75772dd3428f686c49ce34bfea6ba8fa010b1ba83375241bf019e77c842001c6e1ab5096af54af03586e05c3f8fc476
DIST shared_child-1.0.1.crate 8967 BLAKE2B ff47cb9e567415976817eaa8ad7a229570036ff09214083746861eef76df7c897fee06e9ca1bec0b16e07cd6f9d7e0e6253a550e66be8dce65604f3681433158 SHA512 3596285e36724fefcbfcd8c877fd66e2179dbc47ad7ddf601ed793ed74df871eaccf15184f8355f3e355aa64583d6757872d9777864347d36922cc40b731c82a
@@ -191,20 +236,25 @@ DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997
DIST signal-hook-0.1.17.crate 27085 BLAKE2B 0e58cb64b07cb8c76a043f603edbf27bcc92040a1aadb2d0c96993b1ea1a55ef63a222ec51e1396d95bb4907016e1dbf20ba3f0c1915303828f187af44ba2df4 SHA512 253d1478d7a6491a0b423637a706c941cc2a9707d32d29126f48af808daf8acd88e59013936f8e164df687c04e3a8f5c201b5eeb1952e3269b1419efdb4df94f
DIST signal-hook-registry-1.4.1.crate 17987 BLAKE2B f1df8bba55c72a506b9210347f9dcac4d158948e73f6d1e60f43340ddfae368aff1bbb6a109af326af47246d9738d49f76d380c52208efc3c6f79ea0acd31f0b SHA512 e83acec2b0083967555f6c659dfaacc32d851a9485c9f6f4b4cf257742ae3ffba8c14708c75f1a5520e9d132ea9e21d6eb65aba492eec481e8492af8b798c5d1
DIST signal-hook-registry-1.4.2.crate 18064 BLAKE2B 7274d4c115678eae2640a709bf9d682ce867c1f6295a0c5f49e492f95dd1c457f20b56207a74221df1fd9d744b24c6260e28f705777e3c7d47b7bdd36f1d57fb SHA512 16362d232b1d301007c069198d7716848aa73d898ef92e050422b36c09001b4334390dc95a6650e5315377fd8960d4336e5ae869b0a305e8525e977b8327c508
+DIST signal-hook-registry-1.4.5.crate 19004 BLAKE2B 6537f8523aa03e3941bdd115b35716c62ea523a67f99662e28a2d384a5917c43c68a3a26ee9af82ca44f07494ddf39a5ddf2cbff22b0e0a9fc917cf72bf57b5f SHA512 8e7c41c4b57bc5ecd6cc16e6ea8206af0005ba1e7640e2eaabe84c81312c400c74efc229b563f4627fb7d167cd7bb43e0d2d75ae5b8c545ec9ef43f967ba838a
DIST siphasher-0.3.11.crate 10442 BLAKE2B 771221614bbd56f609b9743da4352dc7a2cbd0f6257952fab0cd052e5e5b258a4c95a0461d6d1b579dec90b72d66a0e58e036899b3db8341ae753a421a4cd4d5 SHA512 601121bd41da896142dc6ccc74a6eec3ebee3e976857ab8b5d21e915fdc8bc6e979af66a489c406371fbbbfc7a13338cc4b3744aa981206e43c53998f3e1699b
+DIST siphasher-1.0.1.crate 10351 BLAKE2B 6653898cf0eb071fe83b7c317f93ffb73bd26ed601961173875b26ec8851632599891ec178b7e14318abb9eb98d522db8022deb852af9ad9f6bf38a5a5708e82 SHA512 d230991add51a555af95b30ef104c0e5ed7011fafb92d6ac9ba0f238c8bf4d2fbd39f4b04dbbe960453f8fdd16d3768ba39f39e4877ad453562e689ec8f24a28
DIST slab-0.4.8.crate 16928 BLAKE2B f20603e1331a767c3f55b56d58bbdb9fc126794a116db128fce6d204122c420e9a65478f9f10a26f86c045dbd55a62556862f4339f3a41419f810bcfa9fd145d SHA512 1d713a217b3816a1e6c230d4bb52c32c90f600e64520f0c339ea8255ee8aefd887d969fa23497f1bd8b2b1f7dcb4b220957889746f04dc3453240b5f28517192
DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
DIST smallvec-0.6.14.crate 22855 BLAKE2B 5f96c825c57ee6ab80bc13469793dc7ee780cd856e614c6cc0c747e1cd43fd5e27b589652610198e7757252bb6fb25905f616ea82fb9d8a9ffd5c8cd394b4f49 SHA512 4ba563b542922523566efbe0aac9df499c694bea9ba8ba14a74026d516e02f1fa8f542774b8044150a8e27f01a4b1c71c5280b5a82f61d5b45f022ed223f3977
DIST smallvec-1.10.0.crate 31564 BLAKE2B e3e46a0781d3a7892a739b001592d462d0704f010363984c439e3fe4f75aecb9720648aa1e9bcc56bb3be848dd40cee578212439f78f07a807c9441c3c3e0147 SHA512 a09110184582dcc01d7a0d3fa8f74c17bf726935126d3654667b8e9c4bc43ad16ccfd8fa94feae7d9b31913aa7ee030fe5936e4b44a36302b6ce5fe37372a7ae
DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
+DIST smallvec-1.15.0.crate 38113 BLAKE2B c8507c870d84d528c9e17faeb342e4d91356c86af563a8cac7b3a29cb5aa760d4a9f54e5f267d0452cb7301f8acf4da1ac0f48296216417b327441c18971a06d SHA512 c1fbd7865a629d368776544c2faeccc711df3d27d97db5fb2a169933f3cdf66abbdbf476dc8af88f30d5cd6cbb3d601acef8abb74e7dc9a36dfc538dbdeaa988
DIST socket2-0.4.9.crate 45421 BLAKE2B 19c296b1b42839086793a29234f604a6c94ed1b9d30c4eb1ec695a76acfa266840f482e64b4ee2d5b4520f70849fbaf88984020ac25ec393918b89b2682d2541 SHA512 6cb2aabc409fc7d9942afc2073a36ad8730c06dcdab1866b9d3d72dc55afc643be6a2ca1f38c2e19fbfe782ae584512a1ab357c0f4974f98967a4f489e65331f
DIST socket2-0.5.7.crate 55758 BLAKE2B 148d2e2b6610895ec555b1357b340576984eb76cb3ea719f85af50cc4215b2ea2db739e2a61434c09360a0c1ff8e05911764e18dc4a59451c0aeb0eb60b8403f SHA512 ca37157bfa970cf3cee8b45c7fe64930becf2ffbbc309ea4613be968400279b70edd084d159f65b76fe1130917312d81455023c0d7c1bab7a59c79542aef9dcd
+DIST socket2-0.5.9.crate 57432 BLAKE2B 07876ec6fbe32656bb7d8dc7dd03c3b09bebbc77ff11b9581345473b3d420298432f3ec4271b6e0d2b4ffc113b1237937b2a6fa204856255f8027cc47d9ff2e1 SHA512 a73a30999b30694dab5c1c129244a46dc1773a95d30b82d58ece646c401553719d9830d62c793a7616c7f2e77280d3121ef1b0287936b19b97368ccf040f0918
DIST strsim-0.11.1.crate 14266 BLAKE2B 252a9ede4241b165525486aa8855dece37af77f5b28e0e1858c4a5d2047db9fa958328db10989234aad69463ab51b2303785ec056c63ea8c95bf95e111ddabf2 SHA512 0cebe0155a92640e56db9a599ae62078cbb32e1d2da8bfa67ed0e8f410a7558dfcf7b3c2720ff5913282e291ecf076aed9fe9bf84c8d44e814a642b1bed3335c
DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
DIST structopt-0.3.26.crate 53798 BLAKE2B 04be64637d18bcc87d261320668023459a42c167bb5a4c52216df556a7dd19be28032e7bf759cbcf710a3729a9dfaeb20c29f37f35fcf33533db583ac4fa049a SHA512 dec27090b57107473c9d398db68bde3b1b5191e7c7980d7d2c20fc723f92c64a6cf1d391d5122a103222c4262253d8073fd0fdfb11c74f235af79b2ae0caf069
DIST structopt-derive-0.4.18.crate 20996 BLAKE2B 2ae17e0d365a7ce7a4d0e007513623ee0d5acf45afdc3844114e02975b855fd1a9f7df404a24044cf33a3a4cc4142eccc34d1e97925646d54d460a89baa28275 SHA512 68a7f9c2ed987993fdd8bb7e81c31969a1fdf5351c58cba9de61a2f5957aba1626be4b0742f31d4de502301675ba24b0d91dd3acb24f5607bdeec83070626a57
DIST syn-0.15.44.crate 184212 BLAKE2B b735040d69d10b30c94de2e8f776d25ff5ec427e79a7371345a9bb694d50c4f3ab848ed30166c683aa88f5f73f7361dda2a74880d21882975485fabe5bf65d33 SHA512 c6c9b5887425e1e5fab905e477fcea41bba191693c471cf26922a9dfdd59ed957155a399406cc3723933a869565e7295183dabedfc34e3e2a20874ba94c7ead7
DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.100.crate 297947 BLAKE2B 50a9b244732eebc16464bef152bb620d86aba590942b0d68710d36e89c0ee752629be5bb8db48866c7d252d545ab910625891a5a9b499ad9142191881eb9b42b SHA512 082a975c6448febe38abdc0b43ae929a97a303c0f980ecd2bdd6c44aa2b39ee5aeedf6b1c84316cf088e0d97aff011ec0482a5242ddb338dcf7db5d55926cf6c
DIST syn-2.0.20.crate 241198 BLAKE2B c7ed95aa079577ed8630fa8ee1d8b87c825f6987224f898297af5eb34f4b1037181ccfb74c111598081ba1747070c741fa28f9ff5338139dc378032aba828c39 SHA512 ef73db46cfad2bdd8d3a28f3c28be8111deb3acc30cf49eaabba47f6d4102755a57c7fd10a8d698d4e78e4893cda35e0e209f8716f6912e977f28c868c5d7a2f
DIST syn-2.0.87.crate 278076 BLAKE2B 93385f64103fdb482bec34c7912474ae7a5935948715e6eb9a54907e0db5c39f089f6cd393bab33c935c59a1bbb0f4099431f206343811c1a450554d96a35756 SHA512 bcfff545d6dfefd81e09f8f30a86bdd85759b3a7d4093ef3365ed02718e10dbd604c52b94c9d7fa955d339fdc5b6c079940c6f345b5a48c52b5c8607794ca6f2
DIST sysinfo-0.26.9.crate 137194 BLAKE2B 854af1c7b7f197c68d772cf4d665c3773511f8e32bacec27dbd81bb1c4a96f7c4c0de6c4707975bedb09e320e3e6d115e043f5b3bc4fa2a5cf037b48e6c41961 SHA512 899fca372fd82d1ee694181f334bb0f80c36f3dc7dba3fe88f0aa019eea8d4886dc16ac8701eab5e6a68156ade9c1302d7b390ac68173e1c68daf3f34b5b50e8
@@ -220,15 +270,20 @@ DIST thiserror-impl-1.0.40.crate 15138 BLAKE2B 7590428b5a97efde6a823440a9c91e1d1
DIST thiserror-impl-1.0.69.crate 18365 BLAKE2B 51663251ea6ec99c59aec35fe73c5f9760809d6b6b7eaa8ecbc8f6939acdc4d0ebc11f9034d9204dde7bd689d5e8303ae0be86e298745e9ef96825bf73453a08 SHA512 579eb796c8885feb01d27638862823acd96c79440655bb444c3445ac00121852603396ce7439aed617c0a0ac69f62102167fde5845411c906997574a46d6d9e3
DIST tokio-1.28.2.crate 660565 BLAKE2B cd0ef19422856248ec9a8c6a70fabb300064377fb3a7dc73c36b46a18941ffab10627422bf0a17a40952696f5ba179af51b39855d06807fb749c192eccf82fd6 SHA512 434a74d93e5069b0081538289478a1fa7929f3fef9f7db01105df5be57aa30bfb7cb234be2a087028e3ac6da350eb564d70544cd004f2a1a3857b725f5734d03
DIST tokio-1.41.1.crate 805675 BLAKE2B dd389d00a78c341cc91f6b26389dbcc7aafa193572f7c6692cb4cca93aa25d4128f7a5f0a65c60c8941fd8015f558ec88bfded2db32d986be9408c8a2d493e7a SHA512 6299350980baac47f6d37a16e75f97eeca9f8419e073c5372e984e755d7444ab9f88f104d07bfb1d73bd8a72d997a1d6a49edec457f681ca1ba15c4481c7fe8e
+DIST tokio-1.44.2.crate 841618 BLAKE2B be4c5f7aed9ea72ca70eda0b51f2c410cf03ee2caf783e48498eb7374bd3ad4085206f05948b7c30e1154f6a52b36dc3035e5e399d05f0b648c7d9f412feb671 SHA512 26cf5dc0439429c3f8d38c4cbd8a5e3a1db8c5188e0509ebfdaa45c7b71d586db89e8441bd65eb8269b095bf3d42f7bdb2baf6b788168ea19f953e638f4af6e1
DIST tokio-macros-2.1.0.crate 11472 BLAKE2B ae03d8812bc2b8f833e0ca77f1df8edeb8e0476c06f8f5104fa632ce77369ec54a80ff3da86439192971bf2e11147eade3765c447d76238b768732702004db95 SHA512 e2a24c1befd512d68b5d8b26a3f1d940dd10bfe0979b5d61a71052478d9fd19b28eb7bcbeaca4cf3c9736fd3da0386c899e3a619f47c2d9f7e6b497140586b9d
DIST tokio-macros-2.4.0.crate 12501 BLAKE2B 9b358adb86e828faeb956d24a1ebf68b51a69bce519ad9760ec3d3b8eb1cf4435afd4edc5ddbf634fe152bc77b8675182dda3f076f1011c5b5b97850c1fa1689 SHA512 f4a445f6c2cc7c1cfb5825919cd3dea3af52720c7793c20601d05870e7efbcfe0c6231fba7ada49b5ce46757f0e1475b3667914ff33c2fcb25e9a40151bd2501
+DIST tokio-macros-2.5.0.crate 12617 BLAKE2B c30d0011173d246dc82a5c24ba97b0ed6b66bd8f19b0977e0305b03843b3611528fc5911b632d2c46bd22b8fd2e8488956bde0037c322a3ff8b7306e72cb9bdb SHA512 c1d24cbb8b3f500357e39f93cf139790e4bd3ad1657dd5d695f5e4f9a2a460cd63e8c1c32a36b64d3cadd7b6467e59ee34cd5b1548a99449d8e46c2db83e9ec4
DIST tokio-util-0.6.10.crate 71140 BLAKE2B 54dae89f8c3886feeccb905d371d9c3f1411fecc398eeb388677e364583fa42ecaa3ea21f10ad76e1873eb91da017ad19ab56befcca81d4e89ebc1253a9bf029 SHA512 0fbf96817b32fe561b26793e599377e9b58c28513e48d0ac070e81f64c0c64fb4d41a626f27b841e88970e8beb75fc2e94a8e9564e63416719756a9d845d8bc1
DIST toml-0.5.11.crate 54910 BLAKE2B 9ecd5103b33ab47d4be23c897c7095ca381cb79bedcaac4918cddc36fc7cf5d34ab664da52c2273d935f04486e9325241d6b66785d50aac78453c219aab49e1e SHA512 eddb82aeb8fdeb5436579292c6f7a64a90a2c7bb54070beb437bc7890b99795d0505faa8d6451a99e8bcf440f78db8a1b273a697c8ad44275cc4163a9ee49317
DIST tracing-0.1.37.crate 73888 BLAKE2B 60c74379bf84d7b152f0b4d5b4d4669a1227dce0f3b5c10210338193853ca332de7eed3cc3b6160ee3719da7fdfe565665a887f2f82fb1e1c716c421048a2e87 SHA512 2116045f51b35e90fc933cc136d045d09c0aaa33400a9056051d887fea2d2982b394830e4d4c3bcb4b831e62b9c19f6c751c2d216169f663aa18c4067aed7d75
DIST tracing-0.1.40.crate 79459 BLAKE2B 33693ee71564fe5925a63dca351e838dfd8612b4b1e49a33a70095e56ca63287c13c772661ace0e540d08c92942d7cbdc51ff2cce4f4b372164d9aa20ec05dee SHA512 5622188a45dddc0d6d3a8244a9b12db6221f4180944ce1019d18f4e613e4bd113dae5d45fb57dd0754f6e8e153b047cdf00c8f200782bb2b868bc2d423d99275
+DIST tracing-0.1.41.crate 82448 BLAKE2B c056d938e001654e03efaec7a11eb8ecfbdfe9af2099271fcefa43f4f4683b40c59f7111fdf7f27df4da38bcbe94f1b2ac0abb6ec3d6e6a0d165b9fbb14da3a3 SHA512 dffb8d3a1375f1b9d5418550a46cb7b1d92b2cc8ffbccb430a38f7731547960775bb42798074186711847d256eee30fb3e74078b69cb36f28c07d9f231dbf96c
DIST tracing-core-0.1.31.crate 61263 BLAKE2B feec046ddd3e04995bfe24defd6ae1187fd7ad78d80d69031178f67ed534e9aa6ab6aaea92dad509f57e220df5f6f025ab8f96bbc957834126f53dcad36580c3 SHA512 66fcd0b4f32de3816b1dcbeda1af26fae0a79d088894637984dc6a0ca65b609f5f166cea376601f6a75f8e3a281da6d4450dc796aa0a7177ad615330237e2bed
DIST tracing-core-0.1.32.crate 61221 BLAKE2B a7815c46af9852ce62498083103c6d359351f4d33609b4291330073b6abf4b63f5e1bb1a7dfed3bbf4d6913ad5217e96999416261af8a70609408a29109e4db6 SHA512 164f79cacfcca533a53b7dbbdc2015aaf851a16e00c72fbc4e5f515b6a6dedfa464e964810009b54f08cbcdc5a314e50245ac7b1b01a71fce4c63db135bf5521
+DIST tracing-core-0.1.33.crate 63434 BLAKE2B bc36332ffe5f4c95ae2d12df43944bcf589746cdb923a39098e5f4007fd1f19d7c3bb115011ddc40c13e3ae0e5cfc9a59c49861824e99fed7430fd29479abacf SHA512 1c6f0cf3b7bd6c8f6316ed9ea0b315a619308de6cbf7e50e665a193cf8c3399b5227d4f145d83b10c7e01a2f9fbc83d16e108cf09b7fd6cef413aa5c1acf89ef
DIST unicode-ident-1.0.13.crate 43279 BLAKE2B b5e935020d1c9f3aa24f7d382f6b73d6510d654a61ce1c9c024e2e365bb817182e076139f370e822573531356fb78ff7499049b1f29aa1e2f4a2cc74a955b47b SHA512 5ba884f39debe9c8eb0b1d251ca713f7e2bc191d211707ed10cd81465487dbdca53914c19e131edfa1da15af132dc2c346260c3969c61e3747b63399ccb1cc51
+DIST unicode-ident-1.0.18.crate 47743 BLAKE2B 517ab42a847020515b2b871844d0571ea672340f89a762631a791eac18935ac122122fa5566e58b99ab47de179eadb5298e8ff1d05b123c4e93b7fa989c8e31f SHA512 d11f89fb696f9e2953c96a40b5478832651b268c83b9c7a700b07e768e795d6e8dc346597d1226df21219d36866768d1f640bd8edb68db8bd3d5d437b2bfd324
DIST unicode-ident-1.0.9.crate 41978 BLAKE2B 4e78cefb4e7d7f173f1826a5ab6c8ffde386fea67cf3227bd22e6a6e65d3348dc53c9438e6bde9af06fb5e04b0beac866209d2426e7f04cd10b2435db85df7e3 SHA512 4d8cffe699c6f15ee82ab5f5a73421a6bb8b1a476237aefefa6e932c45c30683a4fb015f138bce99d7cb27a27fb7972909c828e77daef091da84ec162315625a
DIST unicode-segmentation-1.10.1.crate 98416 BLAKE2B 4c391ad34c5f8a00096ce89793b15212555f2d8a367f3ae78f26a36c5897b69f3efcd280a1bd3eb3f61c87b8a26061804b1cd56e1c1500cbcd62e8bc74520014 SHA512 e96224bba73fe9a167bbf226bb13fe5bea085765a90f7232cb20b42f3c584242b7291aeba1eb8edbe2ae40e5bee2f4714f434324f79316b22e8437c77a50e86b
DIST unicode-segmentation-1.12.0.crate 106323 BLAKE2B 268b60aff6694434f05afb7e2b8187eeccdceb77460f8ce2ac0f84d470f8a4e03182ce3f7906177cd2f00f989273a7e69061a763006245f0876bf21b15076804 SHA512 55eebfe5e9972b39d7c0011d80eb5f517d636de37870999119a3d8f064f21f67b66a5ba9761d562738b05f220e21d56b5be7bbd9cc51662994e40dd67c38f946
@@ -243,21 +298,34 @@ DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d23
DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db
DIST vswhom-0.1.0.crate 9420 BLAKE2B ad748822fa9650d011c5f240f5e52ae1e27380fc1b22db2ceaaece4fbc814ac2f2792cf6772079199202efe88fb968618a13d91609e5245639f25b32640fad44 SHA512 0ac192e6a1d296904246d89a08021b55384b48959f26f1f0dca893f8fa1e71a012a0d731d1e48e41ca8e4427da84e50fa43ced621e435b010cbcda4f19c45a58
DIST vswhom-sys-0.1.2.crate 15852 BLAKE2B b21fbc0af440d3feac8ffb769f951f504e01f630d6f806d78a8f218eeb09ff8940328d6a9289e195deae9fdc43fdd55cfd037ae9c57b366ae57906b80d2f4785 SHA512 cd7e7b9e1953c70470d2f17210e83d28cd2c5ab8fc34ef0c9e06390e928853e375ed7bc2bda343b2f15820e989b5adc5bd33d9cea078716bc31545ff019435c8
+DIST vswhom-sys-0.1.3.crate 16242 BLAKE2B b5354697de3031bce28e2568f8b5e5dedeece44dafffe11cc8b7b92cde75adff0d184b2edd16d0475b0ec15e440d7c3e8254b506cb8b616454c0bb6652894b60 SHA512 e6076f9f4797b2f985bbb374f0ccb44218ab95f906152e1dec1b9947b30f6cacd4794473e7acaa5cfb2f4a2cc8ecfcab725a0b63fe1d1f6bfd752afe5f9c594e
DIST vtparse-0.2.2.crate 10058 BLAKE2B 5abd89a6295a31e64a23e5d174af148c076cc2c3d7e7c7afe19a0c4255b44047da97100ff603c5d7ccdce9560f1703b83f240893bdd70178f000ee1eabe32326 SHA512 6b2f92981ceb3369379c3923ec37cacc87f5db73a6f30f3a5c1e168e23b75f17c4fb04e0f54ac9173a3fb9612dd5cb6bbc220f097f57e4baac58bb2b730ad731
DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
DIST wasi-0.9.0+wasi-snapshot-preview1.crate 31521 BLAKE2B 716bdd2ec46d0bc9911c5e5e29fc783840559931b2563d8619675fc11da9527ddbe653a0f1ce0b782ee0c5f7a3131aba2b0867d415f003aa9c2389357569e7dc SHA512 dbe641f796ee3a5daafcaafc911ecc6dff170340f477c2df7a61fb4858a85aefc2637c9e61973ecce66a987aa8e08a736273a4aad3ef47eaf61ed4268dbf9c47
+DIST wasm-bindgen-0.2.100.crate 48288 BLAKE2B 8fc4f71c7d6cef15f131a9bdbb50e3eaf9f3894a5b6c1d73876824efb731b46e8c3449947893103f23bc15cad228a1b8bcccd45ada20df53b3f3dde6e419c184 SHA512 2a8ea7ec669efe10f5701dc3b2bf496e33afa70c31dbc65fda5191c9c28ddde54fa38bb168a41b0319a4ff0bb5ccd897ce51ccd7e523e647b3544fb390f8a4e3
DIST wasm-bindgen-0.2.95.crate 43894 BLAKE2B f14fa63110c62d3bd51c947f31ee96b11812fa60d6adb9cf1907f99c011bd43ab8e14b437fe8b6357cde37124769080b3bd20a2a947fafe3bfd6cccdb875b5a2 SHA512 5a303a6e9bc71030371d6a60a04064b148423d89b6d5de4232b24ff5205175c5236812209eccfc60d8f82a876d3b745ae76ebcb30811eaa6f39701c9a84e1251
+DIST wasm-bindgen-backend-0.2.100.crate 32111 BLAKE2B 6bbbef709753e22230176121388a95fdb8f4dd32e0755dce5bf6c1127c54a236af292f319d14b5cd97bdb310fee65288e8f404921b83693e287164cf9d589a2e SHA512 a2ee30c1185644f989af6be34e93149a791c05125de24c0ff91c320f683f6f5d939fe42b8ca09d629096388a39256469f8b96a6e35722ccfdbe8d978c9a51770
DIST wasm-bindgen-backend-0.2.95.crate 30487 BLAKE2B f199e3392e964c4b0e6a7b2e3ccbbdc458973b4aae4193ce36ee0ac18d595230be9ea6708caa439d70aa92a7b924f51928059984f560e5dad20d41eaf06616dd SHA512 1bea648ca248cf13383b297917a5c315da9e4830a8c49cd3ba23392566725cceae818b4e7e60ad85360c9073c2e557fa36452a2cbc8e05b60318feda7404026e
+DIST wasm-bindgen-macro-0.2.100.crate 9663 BLAKE2B b8a3fc6b3571f8caf106a9e9f3d9cc48b86096d714c5d0208f03d44d47003b3b26441b5cd68bcd49a8c05758bc1b984e460fb62ab439ff2d68c72766ce20358f SHA512 a1942f838eff5fd54406b573d81fe18f262df48a19535245b1a46cb31db2a022746e861d72e5286c632969d15d416655460d3865309c4947cd3d7965dead5c42
DIST wasm-bindgen-macro-0.2.95.crate 6938 BLAKE2B 672509ff595fae86492dad98a4480f28d74a51fc8156ce7f96928b148f3af7f0f45ca9560b72148c6ad2d45ddfbbf3dbe39e2c94603ef92a925ac5503d939d2f SHA512 1f52188932e20145cb23d527a733fb5fe211813826c6b5ec04277e376127b700aea181efa5f60e34d120f10652066fbdf001952024017cccc7af728a3c8e41d9
+DIST wasm-bindgen-macro-support-0.2.100.crate 26243 BLAKE2B c18e35978b62dd2822ba8a4f6955cd5154b2a0d81b8e8032c2f8bda42c1c25f74a13f3e1c3a7bf47a823de2517a237e6a1aef18b189bf1f2b934123c58d1eb34 SHA512 0d03eaeda37c9c6ae06c0fa96e872b54780c4cf545b621c730dcc113dd59a8cb6333c5e3818f51365f71913b9669d8a870a06e70729722d03c07a49cff8a4fdf
DIST wasm-bindgen-macro-support-0.2.95.crate 21331 BLAKE2B a1f71b727736b7166af5a9ad739da33f07ac3d7a190a27621f8a9821530f9bed78a6c437d194f9609bef91ebea0ed9ce1738eea0a9800344b8af9ce7df868da0 SHA512 f45d78831c37401a417c837281d1705b84eae5db430630a9caf544ce5d92f1ddd945baa3bccf26f4c58170e3cbea035174d8b60f906d2757b152e1d090baea58
+DIST wasm-bindgen-shared-0.2.100.crate 8570 BLAKE2B 886fa72cae891d4c2311e12e28f0a7bde9bcaca893603afa3428a402726b3b2bcdb6cb7dca6fdf983bd8fac5f049f0543537f2161318769b43c7eebfc906df27 SHA512 3fca8ddd1c6b2f66f70f6608c9b341822603f1c0dd71d47d27c6be8fe3f2c88598619946627720734b48cf999cafd0c63a08af5db28ea78a1538d2165a5fba61
DIST wasm-bindgen-shared-0.2.95.crate 7649 BLAKE2B c18f531c6094b49af3b2beea93914d16b0054a707011890f9054f4cb313ed6b433e3f73c7b42accbd1fa59d1f14c2db5ab0f0a82cde107b9cf437fad8b4cd7bd SHA512 3ce689a4c845765bd6e1f84b94948df3ef84560d98d830a15c1932a2ab1942ec91465db65cbf14a045526cf003218aa5c3209dd06e8ee8a39815757f56356099
DIST watchman-2023.06.19.00.tar.gz 3966589 BLAKE2B 69e4545e1c6e288bff2ac37af27c4066bc677cdfc64e09feecd466d5225619320c4c371498cf81f29a51442c5acf737bf288a066fd837ebe27c43ba0ca74c9af SHA512 0a4fa3883d6a5418b63641d344b43df2516532371e1ef9c3cc6e6395948a6cd9702475fd20adb68aff3f47f6f4355d5acaf11a4515f0fae57495010948612738
DIST watchman-2024.11.04.00.tar.gz 3989543 BLAKE2B 89285cfbf21718dc96e22c27522f72269ccf048d31ea9ac2adedaa44b3df6a681826ec7ff97050ee8b9604c662f14990b7b978556012f99a5edc90ee0c40daed SHA512 ad786da549ebfde8402b0c174879596db486c0f0fda402ced8f7ddbf893451d4c0a3838fb55d9756d47314fbfea85fa8f6fcbac862560f1eafebef412395d488
+DIST watchman-2025.04.14.00.tar.gz 4006999 BLAKE2B a5e4e31892d85cd6d9bc3c7a9bae0f2f94bda38bc62aadd17f2c68f45d3ec5f693169c82804300efa03f0ac8f14841b5eb893b4c4b7902e445b3cfa74d371d3a SHA512 5f4658ff2a20395a8e343322a1abe079dd0300f08a401148c3f57473a0a856e1fcd332d02f5c4ecbe91036f1cc8e38a2e386cb8e4fb6e242dc1afc3bde4df594
DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
DIST windows-0.52.0.crate 11843715 BLAKE2B 0d35225f5d61f71b0cb768f03825031101e05c83d7f12e05cb17b14ba28e6bc6a3d5aaee5ba07e54c1a773b6eadde4ce3523ab87e8e313e5578e2de01a3dcdc7 SHA512 8a9d443cfae3b44ab50bdffd70b70ea3b3d536f464e4beb7cfa9e15eb4e4505cbac20266b44d589bb7231790a87f473ead6d2160b8cd18d62f31b78bf61417da
DIST windows-core-0.52.0.crate 42154 BLAKE2B 9670bf02261b4ab2a24eff97dad11e305deac823cacfae286965b62b11bc035f19a55ca710eaa4359c8a4905433a94fe62a836b77ddd68f244ad6ac2c9657f58 SHA512 0c8f1c7e63c11bdcf1361150ecc83abbfba8da2c6d28523799bd286bf8aa1df61ffed19175e8cb3ef516a9afb6248b640c2101a2e0c09a99bfd7a18c6741bd36
+DIST windows-core-0.61.0.crate 36707 BLAKE2B 4575282e8f633066e3d3b62ee1cf83cfb2f6755436ace7368f9788c4f87e3bc3e4bcc334f89fee5aa8e364df38cfe5a9d01c44dbeb08e503cc4ddc4cf680a1fc SHA512 56960fbcb37276bc0a23b44bdda7b9cf577710f8c83ae3092b57dfcd5eba0ad7279314aada9a3ca9074a87e2dad4de68e3e3acfa1f318080e37417e9c743fafb
+DIST windows-implement-0.60.0.crate 15073 BLAKE2B ee01abf1393df94e57860440c2b768ffe0469628af014df24799947c923a7fadcce652622c29e6820857607f8ea4024c784021473ea2532e2d51c60d7037600b SHA512 e0e423629b17edd8e7a202170759dc07e51eac3184111ffcf58e2bf8c94cea5c9c50015789873cad526b5a0cd3a12890461a91cdb6a04b0ad14926534e0a6d76
+DIST windows-interface-0.59.1.crate 11735 BLAKE2B ecb776c43d0c1c8e635975a141ea5c3e04639c10058d7bd55e8408fc460def54feca0984bf03504b004f2403b7b62a1df14f31ac2f2dc128b9b7f1e4c373fc87 SHA512 2aab8271746f67998a893f97aebcbb333b5c83d0ba28931b4cbd356c3897899cdab0b58c4fc82abddc1eedf758fadc6880e8bf35340929827e572d5b2653f9a2
+DIST windows-link-0.1.1.crate 6154 BLAKE2B d8f59d91147725361731f1ac6cff6dab321f8abc3f48905bcf931cfbe549d7531bf078f7aa2c5575bd76f467d89d10d08c42f8a3f60ef8e22e82d3643cf3f415 SHA512 bdc166363e08dacd4c320984b239a8976467e59a0e6431a0174cbf603f547bf2d38b6008bf8e135cc3610b71811c77121e6bd61c27622a7be1d143eaa9325fa4
+DIST windows-result-0.3.2.crate 13399 BLAKE2B 89f42f3e4a849d8bb1f6f490a42dc2b29b9486228de4dffd66d6be5072e594f5417e0de840094c5559cae57d21998c131d28f1368c5cd055cd6451265f37318a SHA512 4a1126f92c6bf2f52fc3fdc3e9fedbce83f082c2f929cbff593e825c56423bb449ae47374d4403ae6222d80bcaaf4f8a532b5ab6a67b734e545a606ecf8fbad9
+DIST windows-strings-0.4.0.crate 13939 BLAKE2B c2b1e1d75497dcc0001a755d1cd53ed7879c13998a7825797de35fad89e34c1760f59958594954d25aaa8c1b991ca8a76cffb30afef6f10beb4bb490c28cdf64 SHA512 934bf16d7cee8b34dfa838f40361e0c0cdb0b4480230d19fd09a51fa7f28af4bc2602586088264d4807abf27a23a0e06c0aa7a2e4ce1ca061367c5be58e8ebd0
DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
DIST windows-sys-0.59.0.crate 2387323 BLAKE2B 3110c8cd2bc005f8c95cd038a8d574af648dc19788fe4485f977376f92e36b911b1a542d669a07ae9cd4ea72a884ab01ec78b8a2b5587456eb202452d1d8fa0d SHA512 d35e009e979633a1f3c8468cd038bd5c8c0381405165ce03497decd7d9edaaac485d704487e4a61d9aaf4e4d011b4248408912df6a0044d50e8457259867e061
@@ -281,4 +349,6 @@ DIST windows_x86_64_msvc-0.52.6.crate 832564 BLAKE2B 8e9a3044654c6de99a9153e7cac
DIST winreg-0.10.1.crate 25725 BLAKE2B db536f2a098e4ff6ae4ff80a19bd2029030d68007c3d6100f5135da1a7c223463fc17640f533bc1d4e8c53e9becb186d98351719b3b6276802c68cc755b9ba4e SHA512 09f2d18f62c3c427ebed40d667b672bb778629502ad3c39541f324b2d5ac41f0822c98b7e5320314144130580da46f1e8e51928941850e7d4af28455a564360c
DIST xi-unicode-0.2.1.crate 88229 BLAKE2B a091b894959e665e2b46086a3512a6193b54bd8328816d7f3ba31e30fab71ad507eb970e6bcb93ae4a4ba339154b55c4bf9ef513560d6067a46cd53735c24414 SHA512 cd5dde20cde2c9180247df4f6912139a436f7ab71ef86dac66418c0459df665c09fc3c5b497f8157a6209da32b3e9fda5f50d1ef06c1c8cc2557c4b90363e586
DIST zerocopy-0.7.35.crate 152645 BLAKE2B 8f13123c9d9257ac5a5c6954d38c3510fa658624442f7e03cdcc6db5a0977d9f26bb4e277be172b7872ec365cf6e58ac742e5578636f7698f9f37093e9249d9a SHA512 17fcb31c029ae89c01e5bae5fb2bb46bd434120199a3dc2c7fe0012dbbcfe2a0bb38934c4a7d3a4920e3fe47c097403beee554fefa54b66cb390f8b1de638d3c
+DIST zerocopy-0.8.24.crate 243777 BLAKE2B 01742167e36d19de6cdbbbddbd0ae303e729094fc68ac05a11cedc50a99c6fa6ea7622cf984d6945eda133b73d87e2bcf3173cdb57a9e15707882e119ae3849c SHA512 8d9d909486248fd2b3487cb7dbea1d944ceeb5bcfeca227df80c869dd0b6b5c78a73389f171d3f6c33d9a8772e7d6197abcc540d47db70906f12c45cc76dd6e8
DIST zerocopy-derive-0.7.35.crate 37829 BLAKE2B badeb7fa5e0bfe93a6788d93fd297604ed31de526b121549300ead3c49d450f49265f499e2e7ce606dcce2b59dd01f7fa817b8fbb3f237475185c5b42f5299c4 SHA512 dbe23573b62a6267d7bc8c744320b75b2fbda03b908c1d175211f7394374fe182bce58021e25485c10671d726b2007f250565dfe53134d51c89293bb607e9feb
+DIST zerocopy-derive-0.8.24.crate 86487 BLAKE2B 0a66fd7d9a07f919fbe774a1480e1b4a9d5302ef207d8d7427a03b05f457792f6f758969ccae0e4f3422edc06d017e635dfee4129f8030b36ff9f9443856bd36 SHA512 cd683875b46361fa0423e4fe0c933018b254c753681d5e14b941e443374a065236e6af553caf1f452c1aaa4ebf22e0fa6f304217367b66e141eb31b265e6b31a
diff --git a/dev-util/watchman/watchman-2025.04.14.00.ebuild b/dev-util/watchman/watchman-2025.04.14.00.ebuild
new file mode 100644
index 000000000000..a5fcd2111289
--- /dev/null
+++ b/dev-util/watchman/watchman-2025.04.14.00.ebuild
@@ -0,0 +1,375 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# These must be bumped together:
+# dev-cpp/edencommon
+# dev-cpp/fb303
+# dev-cpp/fbthrift
+# dev-cpp/fizz
+# dev-cpp/folly
+# dev-cpp/mvfst
+# dev-cpp/wangle
+# dev-util/watchman
+
+# TODO: Split into different variables then combine for each component?
+# Not all is in rust/ dir.
+# Rust components:
+# - thirdparty/deelevate_binding/Cargo.toml
+# - rust/watchman_client/Cargo.toml
+# - rust/serde_bser/Cargo.toml
+# - cli/Cargo.toml
+CRATES="
+ addr2line@0.24.2
+ adler2@2.0.0
+ ahash@0.8.11
+ aho-corasick@1.1.3
+ android-tzdata@0.1.1
+ android_system_properties@0.1.5
+ ansi_term@0.12.1
+ anstream@0.6.18
+ anstyle-parse@0.2.6
+ anstyle-query@1.1.2
+ anstyle-wincon@3.0.7
+ anstyle@1.0.10
+ anyhow@1.0.98
+ atty@0.2.14
+ autocfg@1.4.0
+ backtrace@0.3.74
+ base64@0.10.1
+ bitflags@1.3.2
+ bitflags@2.9.0
+ bumpalo@3.17.0
+ byteorder@1.5.0
+ bytes@1.10.1
+ cc@1.2.19
+ cfg-if@1.0.0
+ cfg_aliases@0.2.1
+ chrono@0.4.40
+ clap@2.34.0
+ clap@4.5.37
+ clap_builder@4.5.37
+ clap_derive@4.5.32
+ clap_lex@0.7.4
+ colorchoice@1.0.3
+ core-foundation-sys@0.8.7
+ crossbeam-channel@0.5.15
+ crossbeam-deque@0.8.6
+ crossbeam-epoch@0.9.18
+ crossbeam-queue@0.3.12
+ crossbeam-utils@0.8.21
+ crossbeam@0.8.4
+ deelevate@0.1.1
+ dirs-sys@0.3.7
+ dirs@4.0.0
+ duct@0.13.7
+ either@1.15.0
+ embed-resource@1.8.0
+ filedescriptor@0.7.3
+ fnv@1.0.7
+ futures-channel@0.3.31
+ futures-core@0.3.31
+ futures-executor@0.3.31
+ futures-io@0.3.31
+ futures-macro@0.3.31
+ futures-sink@0.3.31
+ futures-task@0.3.31
+ futures-util@0.3.31
+ futures@0.1.31
+ futures@0.3.31
+ getrandom@0.1.16
+ getrandom@0.2.15
+ gimli@0.31.1
+ heck@0.3.3
+ heck@0.5.0
+ hermit-abi@0.1.19
+ iana-time-zone-haiku@0.1.2
+ iana-time-zone@0.1.63
+ is_terminal_polyfill@1.70.1
+ itoa@1.0.15
+ js-sys@0.3.77
+ jwalk@0.6.2
+ lazy_static@1.5.0
+ libc@0.2.172
+ libredox@0.1.3
+ lock_api@0.4.12
+ log@0.4.27
+ maplit@1.0.2
+ maybe-uninit@2.0.0
+ memchr@2.7.4
+ memmem@0.1.1
+ memoffset@0.9.1
+ miniz_oxide@0.8.8
+ mio@1.0.3
+ nix@0.29.0
+ nom@5.1.3
+ ntapi@0.4.1
+ num-bigint@0.2.6
+ num-complex@0.2.4
+ num-derive@0.2.5
+ num-integer@0.1.46
+ num-iter@0.1.45
+ num-rational@0.2.4
+ num-traits@0.2.19
+ num@0.2.1
+ object@0.36.7
+ once_cell@1.21.3
+ ordered-float@1.1.1
+ os_pipe@1.2.1
+ parking_lot@0.12.3
+ parking_lot_core@0.9.10
+ pathsearch@0.2.0
+ phf@0.11.3
+ phf_codegen@0.11.3
+ phf_generator@0.11.3
+ phf_shared@0.11.3
+ pin-project-lite@0.2.16
+ pin-utils@0.1.0
+ ppv-lite86@0.2.21
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro2@0.4.30
+ proc-macro2@1.0.95
+ quote@0.6.13
+ quote@1.0.40
+ rand@0.7.3
+ rand@0.8.5
+ rand_chacha@0.2.2
+ rand_core@0.5.1
+ rand_core@0.6.4
+ rand_hc@0.2.0
+ rayon-core@1.12.1
+ rayon@1.10.0
+ redox_syscall@0.5.11
+ redox_users@0.4.6
+ regex-automata@0.4.9
+ regex-syntax@0.8.5
+ regex@1.11.1
+ rustc-demangle@0.1.24
+ rustc_version@0.4.1
+ rustversion@1.0.20
+ ryu@1.0.20
+ scopeguard@1.2.0
+ semver-parser@0.7.0
+ semver@0.9.0
+ semver@1.0.26
+ serde@1.0.219
+ serde_bytes@0.11.17
+ serde_derive@1.0.219
+ serde_json@1.0.140
+ shared_child@1.0.1
+ shared_library@0.1.9
+ shlex@1.3.0
+ signal-hook-registry@1.4.5
+ signal-hook@0.1.17
+ siphasher@1.0.1
+ slab@0.4.9
+ smallvec@0.6.14
+ smallvec@1.15.0
+ socket2@0.5.9
+ strsim@0.11.1
+ strsim@0.8.0
+ structopt-derive@0.4.18
+ structopt@0.3.26
+ syn@0.15.44
+ syn@1.0.109
+ syn@2.0.100
+ sysinfo@0.30.13
+ tabular@0.2.0
+ terminfo@0.7.5
+ termios@0.3.3
+ termwiz@0.8.0
+ textwrap@0.11.0
+ thiserror-impl@1.0.69
+ thiserror@1.0.69
+ tokio-macros@2.5.0
+ tokio-util@0.6.10
+ tokio@1.44.2
+ toml@0.5.11
+ tracing-core@0.1.33
+ tracing@0.1.41
+ unicode-ident@1.0.18
+ unicode-segmentation@1.12.0
+ unicode-width@0.1.14
+ unicode-xid@0.1.0
+ utf8parse@0.1.1
+ utf8parse@0.2.2
+ vec_map@0.8.2
+ vergen@3.2.0
+ version_check@0.9.5
+ vswhom-sys@0.1.3
+ vswhom@0.1.0
+ vtparse@0.2.2
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasi@0.9.0+wasi-snapshot-preview1
+ 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
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-core@0.52.0
+ windows-core@0.61.0
+ windows-implement@0.60.0
+ windows-interface@0.59.1
+ windows-link@0.1.1
+ windows-result@0.3.2
+ windows-strings@0.4.0
+ windows-sys@0.52.0
+ windows-sys@0.59.0
+ windows-targets@0.52.6
+ windows@0.52.0
+ windows_aarch64_gnullvm@0.52.6
+ windows_aarch64_msvc@0.52.6
+ windows_i686_gnu@0.52.6
+ windows_i686_gnullvm@0.52.6
+ windows_i686_msvc@0.52.6
+ windows_x86_64_gnu@0.52.6
+ windows_x86_64_gnullvm@0.52.6
+ windows_x86_64_msvc@0.52.6
+ winreg@0.10.1
+ xi-unicode@0.2.1
+ zerocopy-derive@0.7.35
+ zerocopy-derive@0.8.24
+ zerocopy@0.7.35
+ zerocopy@0.8.24
+"
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit cargo cmake distutils-r1 tmpfiles
+
+DESCRIPTION="A file watching service"
+HOMEPAGE="https://facebook.github.io/watchman/"
+SRC_URI="https://github.com/facebook/watchman/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" ${CARGO_CRATE_URIS}"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 MIT Unicode-3.0 WTFPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="llvm-libunwind python test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/libfmt-8.1.1-r1:=
+ ~dev-cpp/edencommon-${PV}:=
+ ~dev-cpp/fb303-${PV}:=
+ ~dev-cpp/fbthrift-${PV}:=
+ ~dev-cpp/folly-${PV}:=
+ dev-cpp/cpptoml:=
+ dev-cpp/glog:=
+ dev-libs/boost:=
+ dev-libs/libpcre2:=
+ dev-libs/openssl:=
+ llvm-libunwind? ( llvm-runtimes/libunwind:= )
+ !llvm-libunwind? ( sys-libs/libunwind:= )
+ python? ( ${PYTHON_DEPS} )
+"
+# TODO: Make gtest test-only (needs a fair bit of patching)
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2022.02.28.00-libatomic.patch
+ "${FILESDIR}"/${PN}-2022.08.08.00-musl-fsword-fix.patch
+ "${FILESDIR}"/${PN}-2023.06.19.00-gcc15.patch
+)
+
+# Rust utility
+QA_FLAGS_IGNORED="usr/bin/watchmanctl"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # Avoid cargo_src_prepare
+ cmake_src_prepare
+}
+
+src_configure() {
+ # https://github.com/facebook/watchman/blob/789678cf9855fb07b402afb75b01e4f8786deba2/build/fbcode_builder/CMake/RustStaticLibrary.cmake#L17
+ export RUST_VENDORED_CRATES_DIR="${ECARGO_VENDOR}"
+ export RUST_CARGO_HOME="${ECARGO_HOME}"
+ export CARGO_HOME="${ECARGO_HOME}"
+ # Build system already handles avoiding Rust-jobs-while-CMake-jobs-spawned issue
+ # https://github.com/facebook/watchman/blob/789678cf9855fb07b402afb75b01e4f8786deba2/build/fbcode_builder/CMake/RustStaticLibrary.cmake#L69
+ # so no need to force -j1 via cargo jobs
+
+ local mycmakeargs=(
+ # Rust wrangling
+ -DUSE_CARGO_VENDOR=ON
+ -DGENERATE_CARGO_VENDOR_CONFIG=OFF
+ -DRUST_CARGO_HOME="${RUST_CARGO_HOME}"
+
+ # General bits
+ -DWATCHMAN_STATE_DIR="${EPREFIX}"/run/watchman
+ -DWATCHMAN_VERSION_OVERRIDE=${PV}
+
+ # We handle this ourselves
+ -DCMAKE_DISABLE_FIND_PACKAGE_Python3=ON
+
+ # The generated thrift services need to be statically linked into the watchman binary, otherwise
+ # watchman fails to find them.
+ -DBUILD_SHARED_LIBS=OFF
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use python ; then
+ pushd watchman/python >/dev/null || die
+ distutils-r1_src_compile
+ popd >/dev/null || die
+ fi
+}
+
+src_test() {
+ cmake_src_test
+
+ if use python ; then
+ pushd watchman/python >/dev/null || die
+
+ # NOTE: The bser module is built as a C extension.
+ # pywatchman/__init__.py will try to import bser.so from
+ # the current directory; however, since we have phased
+ # installation, it will instead be installed in
+ # ${WORKDIR}/${P}_build-${PYTHON_USEDEP}/install.
+ # To ensure that the installed version of pywatchman is
+ # picked up, we delete the pywatchman directory and force
+ # it to be imported through the installed version. See:
+ #
+ # https://projects.gentoo.org/python/guide/test.html#importerrors-for-c-extensions
+ rm -rf pywatchman || die
+
+ distutils-r1_src_test
+ popd >/dev/null || die
+ fi
+}
+
+src_install() {
+ cmake_src_install
+
+ newtmpfiles "${FILESDIR}"/watchman.tmpfiles watchman.conf
+
+ if use python ; then
+ pushd watchman/python >/dev/null || die
+ distutils-r1_src_install
+ popd >/dev/null || die
+ fi
+}
+
+pkg_postinst() {
+ tmpfiles_process watchman.conf
+}
diff --git a/kde-frameworks/kcontacts/kcontacts-6.13.0.ebuild b/kde-frameworks/kcontacts/kcontacts-6.13.0.ebuild
index 7e72ef4b7aa5..d0065b4eaa7c 100644
--- a/kde-frameworks/kcontacts/kcontacts-6.13.0.ebuild
+++ b/kde-frameworks/kcontacts/kcontacts-6.13.0.ebuild
@@ -26,6 +26,6 @@ DEPEND="${RDEPEND}"
CMAKE_SKIP_TESTS=(
# bug #566648 (access to /dev/dri/card0 denied)
kcontacts-picturetest
- # bugs #712798, 838502 (again some Qt translations loading related err...)
- kcontacts-{address,phonenumber}test
+ # bugs #712798, 838502, 953969 (again some Qt translations loading related err...)
+ kcontacts-{address{,format},phonenumber}test
)
diff --git a/kde-plasma/kwin/files/kwin-6.3.4-0006-gpu-reset-crash.patch b/kde-plasma/kwin/files/kwin-6.3.4-0006-gpu-reset-crash.patch
new file mode 100644
index 000000000000..057f7a61d6a1
--- /dev/null
+++ b/kde-plasma/kwin/files/kwin-6.3.4-0006-gpu-reset-crash.patch
@@ -0,0 +1,39 @@
+https://invent.kde.org/plasma/kwin/-/merge_requests/7525
+
+From 87fa6e16c7b744f3e92856eb0dbb3f20943403ff Mon Sep 17 00:00:00 2001
+From: Xaver Hugl <xaver.hugl@gmail.com>
+Date: Thu, 17 Apr 2025 13:17:09 +0000
+Subject: [PATCH] opengl/eglcontext: only delete the vao if the context is
+ current
+
+Making the context can fail during a GPU reset, and then we'd crash trying
+to access the OpenGL function.
+
+This fixes https://crash-reports.kde.org/share/issue/425cb2a56d6d4cdeadfc9e985726a7e8/
+
+
+(cherry picked from commit 8dbfdb9420c227b8be729dfa6265f6212359ca45)
+
+Co-authored-by: Xaver Hugl <xaver.hugl@gmail.com>
+---
+ src/opengl/eglcontext.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/opengl/eglcontext.cpp b/src/opengl/eglcontext.cpp
+index 48017391281..f1f9a4e3fa6 100644
+--- a/src/opengl/eglcontext.cpp
++++ b/src/opengl/eglcontext.cpp
+@@ -71,8 +71,8 @@ EglContext::EglContext(EglDisplay *display, EGLConfig config, ::EGLContext conte
+
+ EglContext::~EglContext()
+ {
+- makeCurrent();
+- if (m_vao) {
++ const bool current = makeCurrent();
++ if (m_vao && current) {
+ glDeleteVertexArrays(1, &m_vao);
+ }
+ m_shaderManager.reset();
+--
+GitLab
+
diff --git a/kde-plasma/kwin/kwin-6.3.4.ebuild b/kde-plasma/kwin/kwin-6.3.4-r2.ebuild
index 31fe9e72e38a..c66972a685b5 100644
--- a/kde-plasma/kwin/kwin-6.3.4.ebuild
+++ b/kde-plasma/kwin/kwin-6.3.4-r2.ebuild
@@ -115,6 +115,15 @@ BDEPEND="
# -m 0755 to avoid suid with USE="-filecaps"
FILECAPS=( -m 0755 cap_sys_nice=ep usr/bin/kwin_wayland )
+PATCHES=(
+ "${FILESDIR}"/${P}-0001-drm-crash.patch
+ "${FILESDIR}"/${P}-0002-layer-shell.patch
+ "${FILESDIR}"/${P}-0003-renderloop-crash.patch
+ "${FILESDIR}"/${P}-0004-xwayland.patch
+ "${FILESDIR}"/${P}-0005-x11-crash.patch
+ "${FILESDIR}"/${P}-0006-gpu-reset-crash.patch
+)
+
src_prepare() {
ecm_src_prepare
diff --git a/media-gfx/blender-bin/Manifest b/media-gfx/blender-bin/Manifest
index 2307738fb92b..683749f7ec87 100644
--- a/media-gfx/blender-bin/Manifest
+++ b/media-gfx/blender-bin/Manifest
@@ -1,2 +1,5 @@
DIST blender-3.6.21-linux-x64.tar.xz 273421500 BLAKE2B a34f4bee3d2725a85a206c90fd408215abe174fe7b2ee379884b69cb3e7dd3a1b1b8180f2fbd415141da474d8cbe94976d32493e95cfeaeeba2e08ce93661761 SHA512 84609f8a76e1f340bcfe9ef329a64d9a81de37c940d392b4bb5074f6c9a4c7d7b605dbc67d81d2f46af74dcf03347dac40bde9fea8b507be3ff4a5a8683b604c
+DIST blender-3.6.22-linux-x64.tar.xz 272633304 BLAKE2B 20751b784bce4808807d074b1d08d48160e7227c36cd36b8980420c934956e4aebe66d054b06cd62fcd5cab89fbb5e6fa870e386a75ba29af08f07118bc844f9 SHA512 16a804fd550b275ebfb945aab2685d65528ae9b49a7ffaf76e7b338a8d073f2215dc3adad9b2142cd222e1f7dd9c40a75924c5783b93ace663063f486869d279
DIST blender-4.2.7-linux-x64.tar.xz 352614068 BLAKE2B d4e6f44c027f3a23bb59ef27e3591d9c6665389ca68f2dbd77a290e45bbd2e34f6ed61ab8347bdf755408da234451910dc26a69d58f9accf9959099ff7f1942d SHA512 4b6d829cfeca41df74e41485b6e8518519a337b9e245cdd3a836480fb0762f9fc8a7fa7acc41e978c4ce2914cfc2e21c9cb4dbf4a0fdf679b52ac37394ba0bb8
+DIST blender-4.2.9-linux-x64.tar.xz 355259956 BLAKE2B c009c1f992ceaac8a5671d8d34cc4775d27771e9c9af79ca1a98cf4cdce6f0fcaa0225755c7fc80e4cdc3e9abce64707ba19b9bbbf28ebb7a200549efe446e9d SHA512 4cce94a7b399d17a74f2cab5f82cb9adc44ad9c09275460771041aa195c6e9f9c4d9793a942e00ad5a9b86da85bacf6a666d76e0b6b06842f7692028419824e6
+DIST blender-4.4.1-linux-x64.tar.xz 363958284 BLAKE2B 1042da45dc2c5056427db06c26ac7c29d5d58d1e3ee156187ec8ab18acf3077680d5d46108563e5519ec9a01af03a16056d8025a0ff5fe017c2de21a099bd94e SHA512 874529109598fa5a78f478ba66e93942f2d54d6c33497f8c5be4f4f78b34a4bf8d319900a84bd17038b08616094d85190c07b098cdfed47bf283cd8b5e1c337a
diff --git a/media-gfx/blender-bin/blender-bin-3.6.22.ebuild b/media-gfx/blender-bin/blender-bin-3.6.22.ebuild
new file mode 100644
index 000000000000..a4f751ca53e5
--- /dev/null
+++ b/media-gfx/blender-bin/blender-bin-3.6.22.ebuild
@@ -0,0 +1,179 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop xdg-utils
+
+DESCRIPTION="3D Creation/Animation/Publishing System"
+HOMEPAGE="https://www.blender.org"
+
+LICENSE="GPL-3+ Apache-2.0"
+SLOT="$(ver_cut 1-2)"
+
+if [[ ${PV} == *9999* ]] ; then
+ # BLENDER_BIN_URL can be used to point to the url of an upstream release archive.
+ PROPERTIES="live"
+else
+ SRC_URI="
+ https://download.blender.org/release/Blender${SLOT}/blender-${PV}-linux-x64.tar.xz
+ "
+ KEYWORDS="~amd64"
+fi
+
+IUSE="oneapi"
+RESTRICT="strip test"
+
+QA_PREBUILT="opt/${P}/*"
+
+if [[ ${PV} == *9999* ]] ; then
+ BDEPEND="
+ app-misc/jq
+ "
+fi
+
+# no := here, this is prebuilt
+RDEPEND="
+ app-arch/zstd
+ media-libs/libglvnd[X]
+ sys-libs/glibc
+ sys-libs/ncurses
+ sys-libs/zlib
+ virtual/libcrypt
+ x11-base/xorg-server
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+ x11-libs/libxkbcommon
+ oneapi? (
+ dev-libs/level-zero
+ )
+"
+
+src_unpack() {
+ local my_A
+ if [[ ${PV} == *9999* ]] ; then
+ local file_name url
+ if [[ -n "${BLENDER_BIN_URL}" ]]; then
+ einfo "Using ${BLENDER_BIN_URL} as SRC_URI. You are on your own."
+ file_name="$(basename "${BLENDER_BIN_URL}")"
+ url="${BLENDER_BIN_URL}"
+ else
+ wget "https://builder.blender.org/download/daily/?format=json&v=2" -O "${T}/release.json" \
+ || die "failed to retrieve release.json"
+
+ local branch commit rel_json release_cycle version
+ rel_json=$(
+ jq -r 'map(select(.platform == "linux" and .branch == "'"${EGIT_BRANCH:-main}"'" and .file_extension == "xz"))
+ | .[0]' \
+ "${T}/release.json"
+ )
+ branch=$( echo "${rel_json}" | jq -r '.branch' )
+ commit=$( echo "${rel_json}" | jq -r '.hash' )
+ file_name=$( echo "${rel_json}" | jq -r '.file_name' )
+ release_cycle=$( echo "${rel_json}" | jq -r '.release_cycle' )
+ url=$( echo "${rel_json}" | jq -r '.url' )
+ version=$( echo "${rel_json}" | jq -r '.version' )
+
+ einfo "Fetching blender-${version}-${release_cycle}-${branch}-${commit}"
+ einfo " url: ${url}"
+ einfo " version: ${version}"
+ einfo " release_cycle: ${release_cycle}"
+ einfo " branch: ${branch}"
+ einfo " commit: ${commit}"
+ einfo
+ fi
+
+ wget -c "${url}"{,.sha256} -P "${T}" || die "failed to fetch ${url}"
+
+ my_A="${T}/${file_name}"
+
+ # Check sha256sum
+ local sha256sum_exp sha256sum_is
+ sha256sum_exp="$(cat "${T}/${file_name}.sha256")"
+ sha256sum_is="$(sha256sum "${T}/${file_name}" | cut -d ' ' -f 1)"
+ if [[ "${sha256sum_exp}" != "${sha256sum_is}" ]]; then
+ eerror "sha256sum mismatch for ${file_name}"
+ eerror " expected ${sha256sum_exp}"
+ eerror " found ${sha256sum_is}"
+ die "sha256sum mismatch"
+ fi
+ else
+ my_A="${DISTDIR}/blender-${PV}-linux-x64.tar.xz"
+ fi
+
+ unpack "${my_A}"
+
+ local dirs
+ dirs="$(find "${WORKDIR}" -mindepth 1 -maxdepth 1 | wc -l)"
+ if [[ "${dirs}" -ne 1 ]]; then
+ die "unpack resulted in ${dirs} dirs in ${WORKDIR}"
+ fi
+
+ mv "${WORKDIR}"/* "${S}" || die "mv"
+}
+
+src_prepare() {
+ default
+
+ if ! use oneapi; then
+ rm \
+ lib/libpi_level_zero* \
+ || eqawarn "failed cleaning oneapi"
+ fi
+
+ # Prepare icons and .desktop for menu entry
+ mv blender.desktop "${P}.desktop" || die
+ mv blender.svg "${P}.svg" || die
+ mv blender-symbolic.svg "${P}-symbolic.svg" || die
+
+ # X-KDE-RunOnDiscreteGpu is obsolete, so trim it
+ sed \
+ -e "s/=blender/=${P}/" \
+ -e "s/Name=Blender/Name=Blender Bin ${PV}/" \
+ -e "/X-KDE-RunOnDiscreteGpu.*/d" \
+ -i "${P}.desktop" || die
+}
+
+src_configure() {
+ :;
+}
+
+src_compile() {
+ :;
+}
+
+src_install() {
+ # We could use the version from the release.json instead of PN here
+ local BLENDER_OPT_HOME="/opt/${P}"
+
+ # Install icons and .desktop for menu entry
+ doicon -s scalable "${S}"/blender*.svg
+ domenu "${P}.desktop"
+
+ # Install all the blender files in /opt
+ dodir "${BLENDER_OPT_HOME%/*}"
+ mv "${S}" "${ED}${BLENDER_OPT_HOME}" || die
+
+ # Create symlink /usr/bin/blender-bin
+ dodir "/usr/bin"
+ dosym -r "${BLENDER_OPT_HOME}/blender" "/usr/bin/${P}"
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
diff --git a/media-gfx/blender-bin/blender-bin-4.2.9.ebuild b/media-gfx/blender-bin/blender-bin-4.2.9.ebuild
new file mode 100644
index 000000000000..87dd1d99ad52
--- /dev/null
+++ b/media-gfx/blender-bin/blender-bin-4.2.9.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop xdg-utils
+
+DESCRIPTION="3D Creation/Animation/Publishing System"
+HOMEPAGE="https://www.blender.org"
+
+LICENSE="GPL-3+ Apache-2.0"
+SLOT="$(ver_cut 1-2)"
+
+if [[ ${PV} == *9999* ]] ; then
+ # BLENDER_BIN_URL can be used to point to the url of an upstream release archive.
+ PROPERTIES="live"
+else
+ SRC_URI="
+ https://download.blender.org/release/Blender${SLOT}/blender-${PV}-linux-x64.tar.xz
+ "
+ KEYWORDS="~amd64"
+fi
+
+IUSE="cuda hip oneapi"
+RESTRICT="strip test"
+
+QA_PREBUILT="opt/${P}/*"
+
+if [[ ${PV} == *9999* ]] ; then
+ BDEPEND="
+ app-misc/jq
+ "
+fi
+
+# no := here, this is prebuilt
+RDEPEND="
+ app-arch/zstd
+ media-libs/libglvnd[X]
+ sys-apps/util-linux
+ sys-libs/glibc
+ sys-libs/ncurses
+ sys-libs/zlib
+ virtual/libcrypt
+ x11-base/xorg-server
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ cuda? (
+ x11-drivers/nvidia-drivers
+ )
+ hip? (
+ >=dev-util/hip-6
+ )
+ oneapi? (
+ dev-libs/level-zero
+ )
+"
+
+src_unpack() {
+ local my_A
+ if [[ ${PV} == *9999* ]] ; then
+ local file_name url
+ if [[ -n "${BLENDER_BIN_URL}" ]]; then
+ einfo "Using ${BLENDER_BIN_URL} as SRC_URI. You are on your own."
+ file_name="$(basename "${BLENDER_BIN_URL}")"
+ url="${BLENDER_BIN_URL}"
+ else
+ wget "https://builder.blender.org/download/daily/?format=json&v=2" -O "${T}/release.json" \
+ || die "failed to retrieve release.json"
+
+ local branch commit rel_json release_cycle version
+ rel_json=$(
+ jq -r 'map(select(.platform == "linux" and .branch == "'"${EGIT_BRANCH:-main}"'" and .file_extension == "xz"))
+ | .[0]' \
+ "${T}/release.json"
+ )
+ branch=$( echo "${rel_json}" | jq -r '.branch' )
+ commit=$( echo "${rel_json}" | jq -r '.hash' )
+ file_name=$( echo "${rel_json}" | jq -r '.file_name' )
+ release_cycle=$( echo "${rel_json}" | jq -r '.release_cycle' )
+ url=$( echo "${rel_json}" | jq -r '.url' )
+ version=$( echo "${rel_json}" | jq -r '.version' )
+
+ einfo "Fetching blender-${version}-${release_cycle}-${branch}-${commit}"
+ einfo " url: ${url}"
+ einfo " version: ${version}"
+ einfo " release_cycle: ${release_cycle}"
+ einfo " branch: ${branch}"
+ einfo " commit: ${commit}"
+ einfo
+ fi
+
+ wget -c "${url}"{,.sha256} -P "${T}" || die "failed to fetch ${url}"
+
+ my_A="${T}/${file_name}"
+
+ # Check sha256sum
+ local sha256sum_exp sha256sum_is
+ sha256sum_exp="$(cat "${T}/${file_name}.sha256")"
+ sha256sum_is="$(sha256sum "${T}/${file_name}" | cut -d ' ' -f 1)"
+ if [[ "${sha256sum_exp}" != "${sha256sum_is}" ]]; then
+ eerror "sha256sum mismatch for ${file_name}"
+ eerror " expected ${sha256sum_exp}"
+ eerror " found ${sha256sum_is}"
+ die "sha256sum mismatch"
+ fi
+ else
+ my_A="${DISTDIR}/blender-${PV}-linux-x64.tar.xz"
+ fi
+
+ unpack "${my_A}"
+
+ local dirs
+ dirs="$(find "${WORKDIR}" -mindepth 1 -maxdepth 1 | wc -l)"
+ if [[ "${dirs}" -ne 1 ]]; then
+ die "unpack resulted in ${dirs} dirs in ${WORKDIR}"
+ fi
+
+ mv "${WORKDIR}"/* "${S}" || die "mv"
+}
+
+src_prepare() {
+ default
+
+ # Remove unused gpu libraries so we don't get missing libraries from QA
+ if ! use cuda; then
+ rm \
+ lib/libOpenImageDenoise_device_cuda* \
+ || eqawarn "failed cleaning cuda"
+ fi
+
+ if ! use hip; then
+ rm \
+ lib/libOpenImageDenoise_device_hip* \
+ || eqawarn "failed cleaning hip"
+ fi
+
+ if ! use oneapi; then
+ rm \
+ lib/libOpenImageDenoise_device_sycl* \
+ lib/libpi_level_zero* \
+ || eqawarn "failed cleaning oneapi"
+ fi
+
+ # Prepare icons and .desktop for menu entry
+ mv blender.desktop "${P}.desktop" || die
+ mv blender.svg "${P}.svg" || die
+ mv blender-symbolic.svg "${P}-symbolic.svg" || die
+
+ # X-KDE-RunOnDiscreteGpu is obsolete, so trim it
+ sed \
+ -e "s/=blender/=${P}/" \
+ -e "s/Name=Blender/Name=Blender Bin ${PV}/" \
+ -e "/X-KDE-RunOnDiscreteGpu.*/d" \
+ -i "${P}.desktop" || die
+}
+
+src_configure() {
+ :;
+}
+
+src_compile() {
+ :;
+}
+
+src_install() {
+ # We could use the version from the release.json instead of PN here
+ local BLENDER_OPT_HOME="/opt/${P}"
+
+ # Install icons and .desktop for menu entry
+ doicon -s scalable "${S}"/blender*.svg
+ domenu "${P}.desktop"
+
+ # Install all the blender files in /opt
+ dodir "${BLENDER_OPT_HOME%/*}"
+ mv "${S}" "${ED}${BLENDER_OPT_HOME}" || die
+
+ # Create symlink /usr/bin/blender-bin
+ dodir "/usr/bin"
+ dosym -r "${BLENDER_OPT_HOME}/blender" "/usr/bin/${P}"
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
diff --git a/media-gfx/blender-bin/blender-bin-4.4.1.ebuild b/media-gfx/blender-bin/blender-bin-4.4.1.ebuild
new file mode 100644
index 000000000000..87dd1d99ad52
--- /dev/null
+++ b/media-gfx/blender-bin/blender-bin-4.4.1.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop xdg-utils
+
+DESCRIPTION="3D Creation/Animation/Publishing System"
+HOMEPAGE="https://www.blender.org"
+
+LICENSE="GPL-3+ Apache-2.0"
+SLOT="$(ver_cut 1-2)"
+
+if [[ ${PV} == *9999* ]] ; then
+ # BLENDER_BIN_URL can be used to point to the url of an upstream release archive.
+ PROPERTIES="live"
+else
+ SRC_URI="
+ https://download.blender.org/release/Blender${SLOT}/blender-${PV}-linux-x64.tar.xz
+ "
+ KEYWORDS="~amd64"
+fi
+
+IUSE="cuda hip oneapi"
+RESTRICT="strip test"
+
+QA_PREBUILT="opt/${P}/*"
+
+if [[ ${PV} == *9999* ]] ; then
+ BDEPEND="
+ app-misc/jq
+ "
+fi
+
+# no := here, this is prebuilt
+RDEPEND="
+ app-arch/zstd
+ media-libs/libglvnd[X]
+ sys-apps/util-linux
+ sys-libs/glibc
+ sys-libs/ncurses
+ sys-libs/zlib
+ virtual/libcrypt
+ x11-base/xorg-server
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ cuda? (
+ x11-drivers/nvidia-drivers
+ )
+ hip? (
+ >=dev-util/hip-6
+ )
+ oneapi? (
+ dev-libs/level-zero
+ )
+"
+
+src_unpack() {
+ local my_A
+ if [[ ${PV} == *9999* ]] ; then
+ local file_name url
+ if [[ -n "${BLENDER_BIN_URL}" ]]; then
+ einfo "Using ${BLENDER_BIN_URL} as SRC_URI. You are on your own."
+ file_name="$(basename "${BLENDER_BIN_URL}")"
+ url="${BLENDER_BIN_URL}"
+ else
+ wget "https://builder.blender.org/download/daily/?format=json&v=2" -O "${T}/release.json" \
+ || die "failed to retrieve release.json"
+
+ local branch commit rel_json release_cycle version
+ rel_json=$(
+ jq -r 'map(select(.platform == "linux" and .branch == "'"${EGIT_BRANCH:-main}"'" and .file_extension == "xz"))
+ | .[0]' \
+ "${T}/release.json"
+ )
+ branch=$( echo "${rel_json}" | jq -r '.branch' )
+ commit=$( echo "${rel_json}" | jq -r '.hash' )
+ file_name=$( echo "${rel_json}" | jq -r '.file_name' )
+ release_cycle=$( echo "${rel_json}" | jq -r '.release_cycle' )
+ url=$( echo "${rel_json}" | jq -r '.url' )
+ version=$( echo "${rel_json}" | jq -r '.version' )
+
+ einfo "Fetching blender-${version}-${release_cycle}-${branch}-${commit}"
+ einfo " url: ${url}"
+ einfo " version: ${version}"
+ einfo " release_cycle: ${release_cycle}"
+ einfo " branch: ${branch}"
+ einfo " commit: ${commit}"
+ einfo
+ fi
+
+ wget -c "${url}"{,.sha256} -P "${T}" || die "failed to fetch ${url}"
+
+ my_A="${T}/${file_name}"
+
+ # Check sha256sum
+ local sha256sum_exp sha256sum_is
+ sha256sum_exp="$(cat "${T}/${file_name}.sha256")"
+ sha256sum_is="$(sha256sum "${T}/${file_name}" | cut -d ' ' -f 1)"
+ if [[ "${sha256sum_exp}" != "${sha256sum_is}" ]]; then
+ eerror "sha256sum mismatch for ${file_name}"
+ eerror " expected ${sha256sum_exp}"
+ eerror " found ${sha256sum_is}"
+ die "sha256sum mismatch"
+ fi
+ else
+ my_A="${DISTDIR}/blender-${PV}-linux-x64.tar.xz"
+ fi
+
+ unpack "${my_A}"
+
+ local dirs
+ dirs="$(find "${WORKDIR}" -mindepth 1 -maxdepth 1 | wc -l)"
+ if [[ "${dirs}" -ne 1 ]]; then
+ die "unpack resulted in ${dirs} dirs in ${WORKDIR}"
+ fi
+
+ mv "${WORKDIR}"/* "${S}" || die "mv"
+}
+
+src_prepare() {
+ default
+
+ # Remove unused gpu libraries so we don't get missing libraries from QA
+ if ! use cuda; then
+ rm \
+ lib/libOpenImageDenoise_device_cuda* \
+ || eqawarn "failed cleaning cuda"
+ fi
+
+ if ! use hip; then
+ rm \
+ lib/libOpenImageDenoise_device_hip* \
+ || eqawarn "failed cleaning hip"
+ fi
+
+ if ! use oneapi; then
+ rm \
+ lib/libOpenImageDenoise_device_sycl* \
+ lib/libpi_level_zero* \
+ || eqawarn "failed cleaning oneapi"
+ fi
+
+ # Prepare icons and .desktop for menu entry
+ mv blender.desktop "${P}.desktop" || die
+ mv blender.svg "${P}.svg" || die
+ mv blender-symbolic.svg "${P}-symbolic.svg" || die
+
+ # X-KDE-RunOnDiscreteGpu is obsolete, so trim it
+ sed \
+ -e "s/=blender/=${P}/" \
+ -e "s/Name=Blender/Name=Blender Bin ${PV}/" \
+ -e "/X-KDE-RunOnDiscreteGpu.*/d" \
+ -i "${P}.desktop" || die
+}
+
+src_configure() {
+ :;
+}
+
+src_compile() {
+ :;
+}
+
+src_install() {
+ # We could use the version from the release.json instead of PN here
+ local BLENDER_OPT_HOME="/opt/${P}"
+
+ # Install icons and .desktop for menu entry
+ doicon -s scalable "${S}"/blender*.svg
+ domenu "${P}.desktop"
+
+ # Install all the blender files in /opt
+ dodir "${BLENDER_OPT_HOME%/*}"
+ mv "${S}" "${ED}${BLENDER_OPT_HOME}" || die
+
+ # Create symlink /usr/bin/blender-bin
+ dodir "/usr/bin"
+ dosym -r "${BLENDER_OPT_HOME}/blender" "/usr/bin/${P}"
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
diff --git a/media-gfx/blender/Manifest b/media-gfx/blender/Manifest
index 44f476638693..cd7f4d2f807b 100644
--- a/media-gfx/blender/Manifest
+++ b/media-gfx/blender/Manifest
@@ -1,4 +1,5 @@
-DIST blender-3.6.18.tar.xz 67900952 BLAKE2B d4a619197abc3e4969846913f3c88cd64fd679bbefe007354af6ba2e83d47a8fcd27b3bcbaf6d850d28960eedeb3c50ff9336d0e61fd488d4916b6628bfd67dd SHA512 48a8b3e8b2fe75305061d7cb9b7b8491cef4f23fbd809d1fc34663a4f97f487d6e7e6e92848110fe6aa5a2fed18a2c1a2a0c1c928aa813e2456f7786681eae60
-DIST blender-4.1.1.tar.xz 82146268 BLAKE2B 1ab4a6c1046851ef619394c62fc73794430dc091e2cab26d3d1d542e9d4519889e9b9731606385e9dc8657448ca3827875526f4a57dd1b5c326a73d8a6f9be8d SHA512 13ad0cdd09879b5c28554faca5a54172f43dc3dcb749d2d1723d3e89e741e6255179af3bd88309b735e058b9b350191e44f3158e882e55f1cedea70b8b21540e
DIST blender-4.2.4.tar.xz 72804204 BLAKE2B 613ae4671cc9263d18fe988b07e8744eb04f67fe53f1c14ad3fbc7d80c58a577e7753871ca775cd40ab5f26ef2bc9030cda57012dda0c4785769f04263aea15b SHA512 1f61c1866aaa680c91fc6e3402b1e10533c8cce32572ffb825c53dc7c15ca51f1157a32d10134ca9e612fbf719406421ccc920b2d8ddd2993675784797381c6a
+DIST blender-4.2.9.tar.xz 72811408 BLAKE2B b33227a3d2ab97578d919d37419b5486e049d42404f7d3e0e4f096dae813004749facba571b3525de10c0a9b9d7c9d67a0eefcf7200a3975e4e5b6874c4d47b0 SHA512 71d08f22ee8dd25f9ad260ab16fc7266586a92de5b6ba784a825c179d75ac423a570f62ddccc51a1f22bc86dbee9a628472b26dcd35d2a97b7d0bd951fceeee8
DIST blender-4.3.2.tar.xz 74473996 BLAKE2B 9a5c8973561f3296b0ec35990ab4951e34f7c0dd5bee3dd120a49989dc8ca7ebfc9610654e8be9d14463af2197626f490324cdd03118db755f5d0b1f7acce375 SHA512 44697faf9acc2c1e75783d432a1a0040339c3445834961a995e95974d4088e75ee5cb647a3908125259d1910d180910e5bc50d34d40d35f33e03197893581477
+DIST blender-4.4.1.tar.xz 85518840 BLAKE2B a482a2d246222b5395f5e1c5cfa9fd2dbab0d5dc33145ec5cfaae3e7d7083e65034e1f5b54bc4605ab45905d08c2938c97ab488659d822997ee853c9e34fcc55 SHA512 db6b117b841890b172f4d13c6f38b73f36aae5648ed74f5233eb311328d467644005bd24fb4f9c7ea9b2dad7ff584fc7b3831f5ab34f3f900555c68f4af5b901
+DIST blender-assets-4.3.2.tar.xz 8763844 BLAKE2B 0eca4a7bfb630096dfe9dd5f8c8071d9ca8c1aaab560a8694df4add507c3e8a641a4e0ad197f110b639d2d399a23c5c25af6fb060ca3316e1a44d286f6b23f7e SHA512 ce9483b3e5b83d1b29bdfa3a14f7be7176e85ec50a414213a67badcce3c24cd8da349fee22b08cc95d6e5906420bbcd5c5f15855445da6364e6054f968c20678
diff --git a/media-gfx/blender/blender-3.6.18-r1.ebuild b/media-gfx/blender/blender-3.6.18-r1.ebuild
deleted file mode 100644
index c5b307bb0466..000000000000
--- a/media-gfx/blender/blender-3.6.18-r1.ebuild
+++ /dev/null
@@ -1,447 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-inherit check-reqs cmake flag-o-matic pax-utils python-single-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="3D Creation/Animation/Publishing System"
-HOMEPAGE="https://www.blender.org"
-
-if [[ ${PV} = *9999* ]] ; then
- # Subversion is needed for downloading unit test files
- inherit git-r3 subversion
- EGIT_REPO_URI="https://projects.blender.org/blender/blender.git"
- ADDONS_EGIT_REPO_URI="https://projects.blender.org/blender/blender-addons.git"
-else
- SRC_URI="https://download.blender.org/source/${P}.tar.xz"
- # Update these between major releases.
- TEST_TARBALL_VERSION="$(ver_cut 1-2).0"
- # SRC_URI+=" test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-${TEST_TARBALL_VERSION}-tests.tar.xz )"
- KEYWORDS="amd64 ~arm ~arm64"
-fi
-
-LICENSE="GPL-3+ cycles? ( Apache-2.0 )"
-SLOT="${PV%.*}"
-IUSE="+bullet +dds +fluid +openexr +tbb
- alembic collada +color-management cuda +cycles cycles-bin-kernels
- debug doc +embree +ffmpeg +fftw +gmp jack jemalloc jpeg2k
- man +nanovdb ndof nls openal +oidn +openmp +openpgl +opensubdiv
- +openvdb optix osl +pdf +potrace +pugixml pulseaudio sdl
- +sndfile test +tiff valgrind wayland X"
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- alembic? ( openexr )
- cuda? ( cycles )
- cycles? ( openexr tiff )
- fluid? ( tbb )
- openvdb? ( tbb )
- optix? ( cuda )
- osl? ( cycles )
- test? ( color-management )"
-
-# Library versions for official builds can be found in the blender source directory in:
-# build_files/build_environment/install_deps.sh
-RDEPEND="${PYTHON_DEPS}
- dev-libs/boost:=[nls?]
- dev-libs/lzo:2=
- $(python_gen_cond_dep '
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/zstandard[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- ')
- media-libs/freetype:=[brotli]
- media-libs/libepoxy:=
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- media-libs/libsamplerate
- >=media-libs/openimageio-2.4.6.0:=
- sys-libs/zlib:=
- virtual/glu
- virtual/libintl
- virtual/opengl
- alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] )
- collada? ( >=media-libs/opencollada-1.6.68 )
- color-management? ( media-libs/opencolorio:= )
- cuda? ( dev-util/nvidia-cuda-toolkit:= )
- embree? ( >=media-libs/embree-3.10.0:=[raymask] )
- ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] )
- fftw? ( sci-libs/fftw:3.0= )
- gmp? ( dev-libs/gmp[cxx] )
- jack? ( virtual/jack )
- jemalloc? ( dev-libs/jemalloc:= )
- jpeg2k? ( media-libs/openjpeg:2= )
- ndof? (
- app-misc/spacenavd
- dev-libs/libspnav
- )
- nls? ( virtual/libiconv )
- openal? ( media-libs/openal )
- oidn? ( >=media-libs/oidn-1.4.1 )
- openexr? (
- >=dev-libs/imath-3.1.4-r2:=
- >=media-libs/openexr-3:0=
- )
- openpgl? ( media-libs/openpgl:0/0.5 )
- opensubdiv? ( >=media-libs/opensubdiv-3.4.0 )
- openvdb? (
- <media-gfx/openvdb-11.0.0:=[nanovdb?]
- dev-libs/c-blosc:=
- )
- optix? ( <dev-libs/optix-7.5.0 )
- osl? ( <media-libs/osl-1.13:= )
- pdf? ( media-libs/libharu )
- potrace? ( media-gfx/potrace )
- pugixml? ( dev-libs/pugixml )
- pulseaudio? ( media-libs/libpulse )
- sdl? ( media-libs/libsdl2[sound,joystick] )
- sndfile? ( media-libs/libsndfile )
- tbb? ( dev-cpp/tbb:= )
- tiff? ( media-libs/tiff:= )
- valgrind? ( dev-debug/valgrind )
- wayland? (
- >=dev-libs/wayland-1.12
- >=dev-libs/wayland-protocols-1.15
- >=x11-libs/libxkbcommon-0.2.0
- media-libs/mesa[wayland]
- sys-apps/dbus
- )
- X? (
- x11-libs/libX11
- x11-libs/libXi
- x11-libs/libXxf86vm
- )
-"
-
-DEPEND="${RDEPEND}
- dev-cpp/eigen:=
-"
-
-BDEPEND="
- virtual/pkgconfig
- doc? (
- app-text/doxygen[dot]
- dev-python/sphinx[latex]
- dev-texlive/texlive-bibtexextra
- dev-texlive/texlive-fontsextra
- dev-texlive/texlive-fontutils
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- )
- nls? ( sys-devel/gettext )
- wayland? (
- dev-util/wayland-scanner
- )
-"
-
-blender_check_requirements() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-
- if use doc; then
- CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend
- fi
-}
-
-blender_get_version() {
- # Get blender version from blender itself.
- BV=$(grep "BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d " " -f 3; assert)
- if ((${BV:0:1} < 3)) ; then
- # Add period (290 -> 2.90).
- BV=${BV:0:1}.${BV:1}
- else
- # Add period and skip the middle number (301 -> 3.1)
- BV=${BV:0:1}.${BV:2}
- fi
-}
-
-pkg_pretend() {
- blender_check_requirements
-}
-
-pkg_setup() {
- blender_check_requirements
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- if [[ ${PV} = *9999* ]] ; then
- git-r3_src_unpack
-
- git-r3_fetch "${ADDONS_EGIT_REPO_URI}"
- git-r3_checkout "${ADDONS_EGIT_REPO_URI}" "${S}/scripts/addons"
-
- if use test; then
- TESTS_SVN_URL=https://svn.blender.org/svnroot/bf-blender/trunk/lib/tests
- subversion_fetch ${TESTS_SVN_URL} ../lib/tests
- fi
- ASSETS_SVN_URL=https://svn.blender.org/svnroot/bf-blender/trunk/lib/assets
- subversion_fetch ${ASSETS_SVN_URL} ../lib/assets
- else
- default
- if use test; then
- #The tests are downloaded from: https://svn.blender.org/svnroot/bf-blender/tags/blender-${SLOT}-release/lib/tests
- mkdir -p lib || die
- mv "${WORKDIR}/blender-${TEST_TARBALL_VERSION}-tests/tests" lib || die
- fi
- fi
-
-}
-
-src_prepare() {
- cmake_src_prepare
-
- blender_get_version
-
- # Disable MS Windows help generation. The variable doesn't do what it
- # it sounds like.
- sed -e "s|GENERATE_HTMLHELP = YES|GENERATE_HTMLHELP = NO|" \
- -i doc/doxygen/Doxyfile || die
-
- # Prepare icons and .desktop files for slotting.
- sed -e "s|blender.svg|blender-${BV}.svg|" -i source/creator/CMakeLists.txt || die
- sed -e "s|blender-symbolic.svg|blender-${BV}-symbolic.svg|" -i source/creator/CMakeLists.txt || die
- sed -e "s|blender.desktop|blender-${BV}.desktop|" -i source/creator/CMakeLists.txt || die
-
- sed -e "s|Name=Blender|Name=Blender ${PV}|" -i release/freedesktop/blender.desktop || die
- sed -e "s|Exec=blender|Exec=blender-${BV}|" -i release/freedesktop/blender.desktop || die
- sed -e "s|Icon=blender|Icon=blender-${BV}|" -i release/freedesktop/blender.desktop || die
-
- mv release/freedesktop/icons/scalable/apps/blender.svg "release/freedesktop/icons/scalable/apps/blender-${BV}.svg" || die
- mv release/freedesktop/icons/symbolic/apps/blender-symbolic.svg "release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg" || die
- mv release/freedesktop/blender.desktop "release/freedesktop/blender-${BV}.desktop" || die
-
- if use test; then
- # Without this the tests will try to use /usr/bin/blender and /usr/share/blender/ to run the tests.
- sed -e "s|set(TEST_INSTALL_DIR.*|set(TEST_INSTALL_DIR ${T}/usr)|g" -i tests/CMakeLists.txt || die
- sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${T}/usr)|g" -i build_files/cmake/Modules/GTestTesting.cmake || die
- fi
-}
-
-src_configure() {
- # -Werror=odr, -Werror=lto-type-mismatch
- # https://bugs.gentoo.org/859607
- # https://projects.blender.org/blender/blender/issues/120444
- filter-lto
-
- # Workaround for bug #922600
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-
- append-lfs-flags
- blender_get_version
-
- local mycmakeargs=(
- -DBUILD_SHARED_LIBS=OFF
- -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
- -DPYTHON_LIBRARY="$(python_get_library_path)"
- -DPYTHON_VERSION="${EPYTHON/python/}"
- -DWITH_ALEMBIC=$(usex alembic)
- -DWITH_ASSERT_ABORT=$(usex debug)
- -DWITH_BOOST=ON
- -DWITH_BULLET=$(usex bullet)
- -DWITH_CODEC_FFMPEG=$(usex ffmpeg)
- -DWITH_CODEC_SNDFILE=$(usex sndfile)
- -DWITH_CXX_GUARDEDALLOC=$(usex debug)
- -DWITH_CYCLES=$(usex cycles)
- -DWITH_CYCLES_CUDA_BINARIES=$(usex cycles-bin-kernels)
- -DWITH_CYCLES_DEVICE_CUDA=$(usex cuda TRUE FALSE)
- -DWITH_CYCLES_DEVICE_OPTIX=$(usex optix)
- -DWITH_CYCLES_EMBREE=$(usex embree)
- -DWITH_CYCLES_OSL=$(usex osl)
- -DWITH_CYCLES_PATH_GUIDING=$(usex openpgl)
- -DWITH_CYCLES_STANDALONE=OFF
- -DWITH_CYCLES_STANDALONE_GUI=OFF
- -DWITH_DOC_MANPAGE=$(usex man)
- -DWITH_FFTW3=$(usex fftw)
- -DWITH_GHOST_WAYLAND=$(usex wayland)
- -DWITH_GHOST_WAYLAND_APP_ID="blender-${BV}"
- -DWITH_GHOST_WAYLAND_DBUS=$(usex wayland)
- -DWITH_GHOST_WAYLAND_DYNLOAD=OFF
- -DWITH_GHOST_WAYLAND_LIBDECOR=OFF
- -DWITH_GHOST_X11=$(usex X)
- -DWITH_GMP=$(usex gmp)
- -DWITH_GTESTS=$(usex test)
- -DWITH_HARU=$(usex pdf)
- -DWITH_HEADLESS=$($(use X || use wayland) && echo OFF || echo ON)
- -DWITH_INSTALL_PORTABLE=OFF
- -DWITH_IMAGE_DDS=$(usex dds)
- -DWITH_IMAGE_OPENEXR=$(usex openexr)
- -DWITH_IMAGE_OPENJPEG=$(usex jpeg2k)
- -DWITH_IMAGE_TIFF=$(usex tiff)
- -DWITH_INPUT_NDOF=$(usex ndof)
- -DWITH_INTERNATIONAL=$(usex nls)
- -DWITH_JACK=$(usex jack)
- -DWITH_MEM_JEMALLOC=$(usex jemalloc)
- -DWITH_MEM_VALGRIND=$(usex valgrind)
- -DWITH_MOD_FLUID=$(usex fluid)
- -DWITH_MOD_OCEANSIM=$(usex fftw)
- -DWITH_NANOVDB=$(usex nanovdb)
- -DWITH_OPENAL=$(usex openal)
- -DWITH_OPENCOLLADA=$(usex collada)
- -DWITH_OPENCOLORIO=$(usex color-management)
- -DWITH_OPENIMAGEDENOISE=$(usex oidn)
- -DWITH_OPENMP=$(usex openmp)
- -DWITH_OPENSUBDIV=$(usex opensubdiv)
- -DWITH_OPENVDB=$(usex openvdb)
- -DWITH_OPENVDB_BLOSC=$(usex openvdb)
- -DWITH_POTRACE=$(usex potrace)
- -DWITH_PUGIXML=$(usex pugixml)
- -DWITH_PULSEAUDIO=$(usex pulseaudio)
- -DWITH_PYTHON_INSTALL=OFF
- -DWITH_SDL=$(usex sdl)
- -DWITH_STATIC_LIBS=OFF
- -DWITH_SYSTEM_EIGEN3=ON
- -DWITH_SYSTEM_FREETYPE=ON
- -DWITH_SYSTEM_LZO=ON
- -DWITH_TBB=$(usex tbb)
- -DWITH_USD=OFF
- -DWITH_XR_OPENXR=OFF
- )
-
- if use optix; then
- mycmakeargs+=(
- -DCYCLES_RUNTIME_OPTIX_ROOT_DIR="${EPREFIX}"/opt/optix
- -DOPTIX_ROOT_DIR="${EPREFIX}"/opt/optix
- )
- fi
-
- # This is currently needed on arm64 to get the NEON SIMD wrapper to compile the code successfully
- use arm64 && append-flags -flax-vector-conversions
-
- append-flags $(usex debug '-DDEBUG' '-DNDEBUG')
-
- if tc-is-gcc ; then
- # These options only exist when GCC is detected.
- # We disable these to respect the user's choice of linker.
- mycmakeargs+=(
- -DWITH_LINKER_GOLD=OFF
- -DWITH_LINKER_LLD=OFF
- )
- fi
-
- cmake_src_configure
-}
-
-src_test() {
- # A lot of tests needs to have access to the installed data files.
- # So install them into the image directory now.
- DESTDIR="${T}" cmake_build install
-
- blender_get_version
- # Define custom blender data/script file paths not be able to find them otherwise during testing.
- # (Because the data is in the image directory and it will default to look in /usr/share)
- export BLENDER_SYSTEM_SCRIPTS="${T}/usr/share/blender/${BV}/scripts"
- export BLENDER_SYSTEM_DATAFILES="${T}/usr/share/blender/${BV}/datafiles"
-
- # Sanity check that the script and datafile path is valid.
- # If they are not vaild, blender will fallback to the default path which is not what we want.
- [ -d "$BLENDER_SYSTEM_SCRIPTS" ] || die "The custom script path is invalid, fix the ebuild!"
- [ -d "$BLENDER_SYSTEM_DATAFILES" ] || die "The custom datafiles path is invalid, fix the ebuild!"
-
- cmake_src_test
-
- # Clean up the image directory for src_install
- rm -fr "${T}"/usr || die
-}
-
-src_install() {
- blender_get_version
-
- # Pax mark blender for hardened support.
- pax-mark m "${BUILD_DIR}"/bin/blender
-
- cmake_src_install
-
- if use man; then
- # Slot the man page
- mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die
- fi
-
- if use doc; then
- # Define custom blender data/script file paths. Otherwise Blender will not be able to find them during doc building.
- # (Because the data is in the image directory and it will default to look in /usr/share)
- export BLENDER_SYSTEM_SCRIPTS=${ED}/usr/share/blender/${BV}/scripts
- export BLENDER_SYSTEM_DATAFILES=${ED}/usr/share/blender/${BV}/datafiles
-
- # Workaround for binary drivers.
- addpredict /dev/ati
- addpredict /dev/dri
- addpredict /dev/nvidiactl
-
- einfo "Generating Blender C/C++ API docs ..."
- cd "${CMAKE_USE_DIR}"/doc/doxygen || die
- doxygen -u Doxyfile || die
- doxygen || die "doxygen failed to build API docs."
-
- cd "${CMAKE_USE_DIR}" || die
- einfo "Generating (BPY) Blender Python API docs ..."
- "${BUILD_DIR}"/bin/blender --background --python doc/python_api/sphinx_doc_gen.py -noaudio || die "sphinx failed."
-
- cd "${CMAKE_USE_DIR}"/doc/python_api || die
- sphinx-build sphinx-in BPY_API || die "sphinx failed."
-
- docinto "html/API/python"
- dodoc -r "${CMAKE_USE_DIR}"/doc/python_api/BPY_API/.
-
- docinto "html/API/blender"
- dodoc -r "${CMAKE_USE_DIR}"/doc/doxygen/html/.
- fi
-
- # Fix doc installdir
- docinto html
- dodoc "${CMAKE_USE_DIR}"/release/text/readme.html
- rm -r "${ED}"/usr/share/doc/blender || die
-
- python_optimize "${ED}/usr/share/blender/${BV}/scripts"
-
- mv "${ED}/usr/bin/blender-thumbnailer" "${ED}/usr/bin/blender-${BV}-thumbnailer" || die
- mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die
-}
-
-pkg_postinst() {
- elog
- elog "Blender uses python integration. As such, may have some"
- elog "inherent risks with running unknown python scripts."
- elog
- elog "It is recommended to change your blender temp directory"
- elog "from /tmp to /home/user/tmp or another tmp file under your"
- elog "home directory. This can be done by starting blender, then"
- elog "changing the 'Temporary Files' directory in Blender preferences."
- elog
-
- if use osl; then
- ewarn ""
- ewarn "OSL is know to cause runtime segfaults if Mesa has been linked to"
- ewarn "an other LLVM version than what OSL is linked to."
- ewarn "See https://bugs.gentoo.org/880671 for more details"
- ewarn ""
- fi
-
- if ! use python_single_target_python3_10; then
- elog "You are building Blender with a newer python version than"
- elog "supported by this version upstream."
- elog "If you experience breakages with e.g. plugins, please switch to"
- elog "python_single_target_python3_10 instead."
- elog "Bug: https://bugs.gentoo.org/737388"
- elog
- fi
-
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
- xdg_desktop_database_update
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_mimeinfo_database_update
- xdg_desktop_database_update
-
- ewarn ""
- ewarn "You may want to remove the following directory."
- ewarn "~/.config/${PN}/${SLOT}/cache/"
- ewarn "It may contain extra render kernels not tracked by portage"
- ewarn ""
-}
diff --git a/media-gfx/blender/blender-4.2.4-r2.ebuild b/media-gfx/blender/blender-4.2.4-r2.ebuild
index f58af016b9a3..4e7df911cfb0 100644
--- a/media-gfx/blender/blender-4.2.4-r2.ebuild
+++ b/media-gfx/blender/blender-4.2.4-r2.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
# NOTE must match media-libs/osl
-LLVM_COMPAT=( {15..18} )
+LLVM_COMPAT=( {18..19} )
LLVM_OPTIONAL=1
inherit check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils
@@ -36,7 +36,7 @@ SLOT="${PV%.*}"
IUSE="
alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels
debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack
- jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp +openpgl
+ jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +openmp +openpgl
+opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio
renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X
"
@@ -96,11 +96,6 @@ RDEPEND="${PYTHON_DEPS}
nls? ( virtual/libiconv )
openal? ( media-libs/openal )
oidn? ( >=media-libs/oidn-2.1.0 )
- oneapi? ( || (
- dev-libs/intel-compute-runtime:0[l0]
- dev-libs/intel-compute-runtime:legacy[l0]
- )
- )
openexr? (
>=dev-libs/imath-3.1.7:=
>=media-libs/openexr-3.2.1:0=
@@ -209,12 +204,6 @@ blender_get_version() {
pkg_pretend() {
blender_check_requirements
-
- if use oneapi; then
- einfo "The Intel oneAPI support is rudimentary."
- einfo ""
- einfo "Please report any bugs you find to https://bugs.gentoo.org/"
- fi
}
pkg_setup() {
@@ -235,10 +224,11 @@ src_unpack() {
else
default
- if use test; then
- mkdir -p "${S}/tests/data/" || die
- mv blender-test-data/* "${S}/tests/data/" || die
- fi
+ # BUG upstream returns LFS references instead of files
+ # if use test; then
+ # mkdir -p "${S}/tests/data/" || die
+ # mv blender-test-data/* "${S}/tests/data/" || die
+ # fi
fi
}
@@ -325,9 +315,6 @@ src_configure() {
-DWITH_CYCLES_DEVICE_HIP="$(usex hip)"
-DWITH_CYCLES_HIP_BINARIES=$(usex hip $(usex cycles-bin-kernels))
- -DWITH_CYCLES_DEVICE_ONEAPI="$(usex oneapi)"
- -DWITH_CYCLES_ONEAPI_BINARIES="$(usex oneapi $(usex cycles-bin-kernels))"
-
-DWITH_CYCLES_HYDRA_RENDER_DELEGATE="no" # TODO: package Hydra
-DWITH_CYCLES_EMBREE="$(usex embree)"
-DWITH_CYCLES_OSL=$(usex osl)
@@ -513,6 +500,13 @@ src_install() {
cmake_src_install
+ # X-KDE-RunOnDiscreteGpu is obsolete, so trim it
+ sed \
+ -e "s/=blender/=${P}/" \
+ -e "s/Name=Blender/Name=Blender Bin ${PV}/" \
+ -e "/X-KDE-RunOnDiscreteGpu.*/d" \
+ -i "${ED}/usr/share/applications/blender-${BV}.desktop" || die
+
if use man; then
# Slot the man page
mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die
diff --git a/media-gfx/blender/blender-4.3.2-r2.ebuild b/media-gfx/blender/blender-4.2.9.ebuild
index 8d729f0cc798..5a2422e5ff15 100644
--- a/media-gfx/blender/blender-4.3.2-r2.ebuild
+++ b/media-gfx/blender/blender-4.2.9.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
# NOTE must match media-libs/osl
-LLVM_COMPAT=( {15..18} )
+LLVM_COMPAT=( {18..19} )
LLVM_OPTIONAL=1
inherit check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils
@@ -36,7 +36,7 @@ SLOT="${PV%.*}"
IUSE="
alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels
debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack
- jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp +openpgl
+ jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +openmp +openpgl
+opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio
renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X
"
@@ -81,7 +81,7 @@ RDEPEND="${PYTHON_DEPS}
color-management? ( media-libs/opencolorio:= )
cuda? ( dev-util/nvidia-cuda-toolkit:= )
embree? ( media-libs/embree:=[raymask] )
- ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] )
+ ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] )
fftw? ( sci-libs/fftw:3.0= )
gmp? ( dev-libs/gmp[cxx] )
gnome? ( gui-libs/libdecor )
@@ -96,11 +96,6 @@ RDEPEND="${PYTHON_DEPS}
nls? ( virtual/libiconv )
openal? ( media-libs/openal )
oidn? ( >=media-libs/oidn-2.1.0 )
- oneapi? ( || (
- dev-libs/intel-compute-runtime:0[l0]
- dev-libs/intel-compute-runtime:legacy[l0]
- )
- )
openexr? (
>=dev-libs/imath-3.1.7:=
>=media-libs/openexr-3.2.1:0=
@@ -185,7 +180,9 @@ PATCHES=(
"${FILESDIR}/${PN}-4.0.2-CUDA_NVCC_FLAGS.patch"
"${FILESDIR}/${PN}-4.1.1-FindLLVM.patch"
"${FILESDIR}/${PN}-4.1.1-numpy.patch"
- "${FILESDIR}/${PN}-4.3.2-ffmpeg7.patch"
+ "${FILESDIR}/${PN}-4.2.9-python3.12.patch"
+ "${FILESDIR}/${PN}-4.2.9-python3.13.patch"
+ "${FILESDIR}/${PN}-4.2.9-python3.12_1.patch"
)
blender_check_requirements() {
@@ -210,12 +207,6 @@ blender_get_version() {
pkg_pretend() {
blender_check_requirements
-
- if use oneapi; then
- einfo "The Intel oneAPI support is rudimentary."
- einfo ""
- einfo "Please report any bugs you find to https://bugs.gentoo.org/"
- fi
}
pkg_setup() {
@@ -236,10 +227,11 @@ src_unpack() {
else
default
- if use test; then
- mkdir -p "${S}/tests/data/" || die
- mv blender-test-data/* "${S}/tests/data/" || die
- fi
+ # BUG upstream returns LFS references instead of files
+ # if use test; then
+ # mkdir -p "${S}/tests/data/" || die
+ # mv blender-test-data/* "${S}/tests/data/" || die
+ # fi
fi
}
@@ -326,9 +318,6 @@ src_configure() {
-DWITH_CYCLES_DEVICE_HIP="$(usex hip)"
-DWITH_CYCLES_HIP_BINARIES=$(usex hip $(usex cycles-bin-kernels))
- -DWITH_CYCLES_DEVICE_ONEAPI="$(usex oneapi)"
- -DWITH_CYCLES_ONEAPI_BINARIES="$(usex oneapi $(usex cycles-bin-kernels))"
-
-DWITH_CYCLES_HYDRA_RENDER_DELEGATE="no" # TODO: package Hydra
-DWITH_CYCLES_EMBREE="$(usex embree)"
-DWITH_CYCLES_OSL=$(usex osl)
@@ -514,6 +503,13 @@ src_install() {
cmake_src_install
+ # X-KDE-RunOnDiscreteGpu is obsolete, so trim it
+ sed \
+ -e "s/=blender/=${P}/" \
+ -e "s/Name=Blender/Name=Blender Bin ${PV}/" \
+ -e "/X-KDE-RunOnDiscreteGpu.*/d" \
+ -i "${ED}/usr/share/applications/blender-${BV}.desktop" || die
+
if use man; then
# Slot the man page
mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die
diff --git a/media-gfx/blender/blender-4.1.1-r5.ebuild b/media-gfx/blender/blender-4.3.2-r3.ebuild
index 6ae23c36158a..8ca1be49acff 100644
--- a/media-gfx/blender/blender-4.1.1-r5.ebuild
+++ b/media-gfx/blender/blender-4.3.2-r3.ebuild
@@ -1,48 +1,89 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# shellcheck disable=SC2207
+
+# TODO
+# - Package Hydra
+# https://github.com/Ray-Tracing-Systems/HydraCore
+# https://github.com/Ray-Tracing-Systems/HydraAPI
+# - Package USD
+# https://github.com/PixarAnimationStudios/OpenUSD
+# - Package MaterialX
+# https://github.com/AcademySoftwareFoundation/MaterialX
+# - Package Draco
+# https://github.com/google/draco
+# - Package Audaspace
+# https://github.com/neXyon/audaspace
+
EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
# NOTE must match media-libs/osl
-LLVM_COMPAT=( {15..18} )
+LLVM_COMPAT=( {18..19} )
LLVM_OPTIONAL=1
-inherit check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils
+ROCM_SKIP_GLOBALS=1
+
+inherit cuda rocm llvm-r1
+inherit eapi9-pipestatus check-reqs flag-o-matic pax-utils python-single-r1 toolchain-funcs virtualx
+inherit cmake xdg-utils
DESCRIPTION="3D Creation/Animation/Publishing System"
HOMEPAGE="https://www.blender.org"
-if [[ ${PV} = *9999* ]] ; then
+# NOTE BLENDER_VERSION
+# https://projects.blender.org/blender/blender/src/branch/main/source/blender/blenkernel/BKE_blender_version.h
+BLENDER_BRANCH="$(ver_cut 1-2)"
+
+if [[ "${PV}" == *9999* ]]; then
EGIT_LFS="yes"
inherit git-r3
EGIT_REPO_URI="https://projects.blender.org/blender/blender.git"
EGIT_SUBMODULES=( '*' '-lib/*' )
- ADDONS_EGIT_REPO_URI="https://projects.blender.org/blender/blender-addons.git"
+
+ if [[ "${PV}" == 9999* ]]; then
+ EGIT_BRANCH="main"
+ else
+ EGIT_BRANCH="blender-v${BLENDER_BRANCH}-release"
+ fi
+
RESTRICT="!test? ( test )"
else
SRC_URI="
https://download.blender.org/source/${P}.tar.xz
+ https://github.com/negril/gentoo-overlay-vendored/raw/refs/heads/blobs/blender-assets-${PV}.tar.xz
"
+ # BUG upstream returns LFS references instead of files
+ # SRC_URI+="
# test? (
- # https://projects.blender.org/blender/blender-test-data/archive/blender-v$(ver_cut 1-2)-release.tar.gz
+ # https://projects.blender.org/blender/blender-test-data/archive/blender-v${BLENDER_BRANCH}-release.tar.gz
# )
# "
- KEYWORDS="amd64 ~arm ~arm64"
- RESTRICT="test" # the test archive returns LFS references.
+ KEYWORDS="~amd64 ~arm ~arm64"
+ RESTRICT="test" # the test archive contains LFS references
fi
-LICENSE="GPL-3+ cycles? ( Apache-2.0 )"
-SLOT="${PV%.*}"
+# assets is CC0-1.0
+LICENSE="GPL-3+ cycles? ( Apache-2.0 ) CC0-1.0"
+SLOT="${BLENDER_BRANCH}"
+
+# NOTE +openpgl breaks on very old amd64 hardware
+# potentially mirror cpu_flags_x86 + REQUIRED_USE
IUSE="
alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels
- debug doc +embree experimental +ffmpeg +fftw +fluid +gmp gnome hip jack
- jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp openpgl
- +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio
- renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X
+ debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack
+ jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +opengl +openmp +openpgl
+ +opensubdiv +openvdb optix osl +pdf +potrace +pugixml pulseaudio
+ renderdoc sdl +sndfile +tbb test +tiff +truetype valgrind vulkan wayland +webp X
"
+if [[ "${PV}" == *9999* ]]; then
+ IUSE+="experimental"
+fi
+
REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ || ( opengl vulkan )
alembic? ( openexr )
cuda? ( cycles )
cycles? ( openexr tiff tbb )
@@ -53,12 +94,18 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}
openvdb? ( tbb openexr )
optix? ( cuda )
osl? ( cycles pugixml )
- test? ( color-management )"
+ test? (
+ color-management
+ jpeg2k
+ )
+"
# Library versions for official builds can be found in the blender source directory in:
# build_files/build_environment/cmake/versions.cmake
RDEPEND="${PYTHON_DEPS}
app-arch/zstd
+ dev-cpp/gflags:=
+ dev-cpp/glog:=
dev-libs/boost:=[nls?]
dev-libs/lzo:2=
$(python_gen_cond_dep '
@@ -76,17 +123,20 @@ RDEPEND="${PYTHON_DEPS}
sys-libs/zlib:=
virtual/glu
virtual/libintl
- virtual/opengl
+ virtual/opengl[X?]
alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] )
+ bullet? ( sci-physics/bullet:=[double-precision] )
collada? ( >=media-libs/opencollada-1.6.68 )
color-management? ( media-libs/opencolorio:= )
cuda? ( dev-util/nvidia-cuda-toolkit:= )
embree? ( media-libs/embree:=[raymask] )
- ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] )
- fftw? ( sci-libs/fftw:3.0= )
+ ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] )
+ fftw? ( sci-libs/fftw:3.0=[threads] )
gmp? ( dev-libs/gmp[cxx] )
gnome? ( gui-libs/libdecor )
- hip? ( >=dev-util/hip-5.7 )
+ hip? (
+ >=dev-util/hip-5.7:=
+ )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc:= )
jpeg2k? ( media-libs/openjpeg:2= )
@@ -97,17 +147,12 @@ RDEPEND="${PYTHON_DEPS}
nls? ( virtual/libiconv )
openal? ( media-libs/openal )
oidn? ( >=media-libs/oidn-2.1.0 )
- oneapi? ( || (
- dev-libs/intel-compute-runtime:0[l0]
- dev-libs/intel-compute-runtime:legacy[l0]
- )
- )
openexr? (
>=dev-libs/imath-3.1.7:=
>=media-libs/openexr-3.2.1:0=
)
openpgl? ( media-libs/openpgl:= )
- opensubdiv? ( >=media-libs/opensubdiv-3.5.0 )
+ opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,openmp?,tbb?] )
openvdb? (
>=media-gfx/openvdb-11.0.0:=[nanovdb?]
dev-libs/c-blosc:=
@@ -140,7 +185,7 @@ RDEPEND="${PYTHON_DEPS}
dev-util/glslang
media-libs/vulkan-loader
)
- otf? (
+ truetype? (
media-libs/harfbuzz
)
renderdoc? (
@@ -155,11 +200,19 @@ RDEPEND="${PYTHON_DEPS}
DEPEND="${RDEPEND}
dev-cpp/eigen:=
- vulkan? (
- dev-util/spirv-headers
- dev-util/vulkan-headers
+"
+
+if [[ "${PV}" == *9999* ]]; then
+DEPEND+="
+ test? (
+ experimental? (
+ wayland? (
+ dev-libs/weston
+ )
+ )
)
"
+fi
BDEPEND="
virtual/pkgconfig
@@ -172,6 +225,10 @@ BDEPEND="
dev-texlive/texlive-latex
dev-texlive/texlive-latexextra
)
+ vulkan? (
+ dev-util/spirv-headers
+ dev-util/vulkan-headers
+ )
nls? ( sys-devel/gettext )
wayland? (
dev-util/wayland-scanner
@@ -183,9 +240,16 @@ BDEPEND="
PATCHES=(
"${FILESDIR}/${PN}-4.0.2-FindClang.patch"
- "${FILESDIR}/${PN}-4.0.2-CUDA_NVCC_FLAGS.patch"
"${FILESDIR}/${PN}-4.1.1-FindLLVM.patch"
"${FILESDIR}/${PN}-4.1.1-numpy.patch"
+ "${FILESDIR}/${PN}-4.2.9-python3.12.patch"
+ "${FILESDIR}/${PN}-4.2.9-python3.13.patch"
+ "${FILESDIR}/${PN}-4.2.9-python3.12_1.patch"
+ "${FILESDIR}/${PN}-4.3.2-ffmpeg7.patch"
+ "${FILESDIR}/${PN}-4.3.2-openvdb-12.patch"
+ "${FILESDIR}/${PN}-4.3.2-optix-8.1.0.patch"
+ "${FILESDIR}/${PN}-4.3.2-system-gtest.patch"
+ "${FILESDIR}/${PN}-4.4.0-optix-compile-flags.patch"
)
blender_check_requirements() {
@@ -197,52 +261,55 @@ blender_check_requirements() {
}
blender_get_version() {
+ if [[ -n "${BV}" && -n "${BVC}" ]]; then
+ return
+ fi
+
+ local status
# Get blender version from blender itself.
- BV=$(grep "BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d " " -f 3; assert)
- if ((${BV:0:1} < 3)) ; then
- # Add period (290 -> 2.90).
- BV=${BV:0:1}.${BV:1}
- else
- # Add period and skip the middle number (301 -> 3.1)
- BV=${BV:0:1}.${BV:2}
+ # mirrors build_files/cmake/macros.cmake function(get_blender_version)
+ # NOTE maps x0y to x.y
+ # TODO this can potentially break for x > 9 and y > 9
+ BV="$(grep "define BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d ' ' -f 3)"
+ status="$(pipestatus -v)" || die "fails to detect BLENDER_VERSION, (PIPESTATUS: ${status})"
+ BV="$(printf "%d.%d" "${BV:0: -2}" "${BV: -2}")"
+
+ if [[ "${PV}" != 9999* && "${BLENDER_BRANCH}" != "${BV}" ]]; then
+ eerror "ebuild (${BLENDER_BRANCH}) and code (${BV}) version mismatch"
+ die "blender_get_version"
fi
+
+ BVC="$(grep "define BLENDER_VERSION_CYCLE " source/blender/blenkernel/BKE_blender_version.h | cut -d ' ' -f 3)"
+ status="$(pipestatus -v)" || die "fails to detect BLENDER_VERSION_CYCLE, (PIPESTATUS: ${status})"
}
pkg_pretend() {
blender_check_requirements
-
- if use oneapi; then
- einfo "The Intel oneAPI support is rudimentary."
- einfo ""
- einfo "Please report any bugs you find to https://bugs.gentoo.org/"
- fi
}
pkg_setup() {
+ blender_check_requirements
+ python-single-r1_pkg_setup
+
if use osl; then
llvm-r1_pkg_setup
fi
-
- blender_check_requirements
- python-single-r1_pkg_setup
}
src_unpack() {
- if [[ ${PV} = *9999* ]] ; then
+ if [[ "${PV}" == *9999* ]]; then
if ! use test; then
EGIT_SUBMODULES+=( '-tests/*' )
fi
git-r3_src_unpack
-
- git-r3_fetch "${ADDONS_EGIT_REPO_URI}"
- git-r3_checkout "${ADDONS_EGIT_REPO_URI}" "${S}/scripts/addons"
else
default
- if use test; then
- mkdir -p "${S}/tests/data/" || die
- mv blender-test-data/* "${S}/tests/data/" || die
- fi
+ # BUG upstream returns LFS references instead of files
+ # if use test; then
+ # mkdir -p "${S}/tests/data/" || die
+ # mv blender-test-data/* "${S}/tests/data/" || die
+ # fi
fi
}
@@ -253,11 +320,6 @@ src_prepare() {
blender_get_version
- # Disable MS Windows help generation. The variable doesn't do what it
- # it sounds like.
- sed -e "s|GENERATE_HTMLHELP = YES|GENERATE_HTMLHELP = NO|" \
- -i doc/doxygen/Doxyfile || die
-
# Prepare icons and .desktop files for slotting.
sed \
-e "s|blender.svg|blender-${BV}.svg|" \
@@ -272,22 +334,62 @@ src_prepare() {
-e "s|Icon=blender|Icon=blender-${BV}|" \
-i release/freedesktop/blender.desktop || die
- sed -e "s|\${CMAKE_INSTALL_PREFIX}/\${BLENDER_BIN}|${T}/usr/\${BLENDER_BIN}|g" -i source/creator/CMakeLists.txt || die
+ sed \
+ -e "/CMAKE_INSTALL_PREFIX_WITH_CONFIG/{s|\${CMAKE_INSTALL_PREFIX}|${T}\${CMAKE_INSTALL_PREFIX}|g}" \
+ -i CMakeLists.txt \
+ || die CMAKE_INSTALL_PREFIX_WITH_CONFIG
mv \
- release/freedesktop/icons/scalable/apps/blender.svg \
- "release/freedesktop/icons/scalable/apps/blender-${BV}.svg" || die
+ "release/freedesktop/icons/scalable/apps/blender.svg" \
+ "release/freedesktop/icons/scalable/apps/blender-${BV}.svg" \
+ || die
+ mv \
+ "release/freedesktop/icons/symbolic/apps/blender-symbolic.svg" \
+ "release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg" \
+ || die
+ mv \
+ "release/freedesktop/blender.desktop" \
+ "release/freedesktop/blender-${BV}.desktop" \
+ || die
+
mv \
- release/freedesktop/icons/symbolic/apps/blender-symbolic.svg \
- "release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg" || die
- mv release/freedesktop/blender.desktop "release/freedesktop/blender-${BV}.desktop" || die
- mv release/freedesktop/org.blender.Blender.metainfo.xml "release/freedesktop/blender-${BV}.metainfo.xml"
- mv release/freedesktop/org.blender.Blender.appdata.xml "release/freedesktop/blender-${BV}.appdata.xml"
+ "release/freedesktop/org.blender.Blender.metainfo.xml" \
+ "release/freedesktop/blender-${BV}.metainfo.xml" \
+ || die
+
+ sed \
+ -e "s#\(set(cycles_kernel_runtime_lib_target_path \)\${cycles_kernel_runtime_lib_target_path}\(/lib)\)#\1\${CYCLES_INSTALL_PATH}\2#" \
+ -i intern/cycles/kernel/CMakeLists.txt \
+ || die
+
+ if use hip; then
+ # fix hardcoded path
+ sed \
+ -e "s#opt/rocm/hip/bin#$(hipconfig -p)/bin#g" \
+ -i extern/hipew/src/hipew.c \
+ || die
+ fi
if use test; then
# Without this the tests will try to use /usr/bin/blender and /usr/share/blender/ to run the tests.
- sed -e "s|set(TEST_INSTALL_DIR.*|set(TEST_INSTALL_DIR ${T}/usr)|g" -i tests/CMakeLists.txt || die
- sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${T}/usr)|g" -i build_files/cmake/testing.cmake || die
+ sed \
+ -e "/string(REPLACE.*TEST_INSTALL_DIR/{s|\${CMAKE_INSTALL_PREFIX}|${T}\${CMAKE_INSTALL_PREFIX}|g}" \
+ -i "build_files/cmake/testing.cmake" \
+ || die "REPLACE.*TEST_INSTALL_DIR"
+
+ # assertEquals was deprecated in Python-3.2 use assertEqual instead
+ sed \
+ -e 's/assertEquals/assertEqual/g' \
+ -i tests/python/bl_animation_action.py \
+ || die
+
+ sed -e '1i #include <cstdint>' -i extern/gtest/src/gtest-death-test.cc || die
+ else
+ cmake_comment_add_subdirectory tests
+ fi
+
+ if [[ "${PV}" != *9999* ]]; then
+ rm "${WORKDIR}/blender-assets/publish/LICENSE" || die
fi
if use vulkan; then
@@ -302,14 +404,23 @@ src_configure() {
filter-lto
# Workaround for bug #922600
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+ append-ldflags "$(test-flags-CCLD -Wl,--undefined-version)"
append-lfs-flags
blender_get_version
local mycmakeargs=(
- -DWITH_LIBS_PRECOMPILED=no
- -DBUILD_SHARED_LIBS=no
+ -DCMAKE_POLICY_DEFAULT_CMP0177="OLD"
+
+ # we build a host-specific binary
+ -DWITH_INSTALL_PORTABLE="no"
+ -DWITH_CPU_CHECK="no"
+
+ -DWITH_STRICT_BUILD_OPTIONS="yes"
+ -DWITH_LIBS_PRECOMPILED="no"
+ -DBUILD_SHARED_LIBS="no" # quadriflow only?
+ -DWITH_STATIC_LIBS=OFF
+
-DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
-DPYTHON_LIBRARY="$(python_get_library_path)"
-DPYTHON_VERSION="${EPYTHON/python/}"
@@ -328,9 +439,6 @@ src_configure() {
-DWITH_CYCLES_DEVICE_HIP="$(usex hip)"
-DWITH_CYCLES_HIP_BINARIES=$(usex hip $(usex cycles-bin-kernels))
- -DWITH_CYCLES_DEVICE_ONEAPI="$(usex oneapi)"
- -DWITH_CYCLES_ONEAPI_BINARIES="$(usex oneapi $(usex cycles-bin-kernels))"
-
-DWITH_CYCLES_HYDRA_RENDER_DELEGATE="no" # TODO: package Hydra
-DWITH_CYCLES_EMBREE="$(usex embree)"
-DWITH_CYCLES_OSL=$(usex osl)
@@ -340,22 +448,20 @@ src_configure() {
-DWITH_DOC_MANPAGE=$(usex man)
-DWITH_DRACO="no" # TODO: Package Draco
- -DWITH_EXPERIMENTAL_FEATURES="$(usex experimental)"
-DWITH_FFTW3=$(usex fftw)
-DWITH_GHOST_WAYLAND=$(usex wayland)
-DWITH_GHOST_WAYLAND_DYNLOAD="no"
-DWITH_GHOST_X11=$(usex X)
-DWITH_GMP=$(usex gmp)
-DWITH_GTESTS=$(usex test)
- -DWITH_HARFBUZZ="$(usex otf)"
+ -DWITH_HARFBUZZ="$(usex truetype)"
-DWITH_HARU=$(usex pdf)
- -DWITH_HEADLESS=$($(use X || use wayland) && echo OFF || echo ON)
+ -DWITH_HEADLESS="$(usex !X "$(use !wayland)")"
-DWITH_HYDRA="no" # TODO: Package Hydra
-DWITH_IMAGE_OPENEXR=$(usex openexr)
-DWITH_IMAGE_OPENJPEG=$(usex jpeg2k)
-DWITH_IMAGE_WEBP=$(usex webp)
-DWITH_INPUT_NDOF=$(usex ndof)
- -DWITH_INSTALL_PORTABLE="no"
-DWITH_INTERNATIONAL=$(usex nls)
-DWITH_JACK=$(usex jack)
-DWITH_MATERIALX="no" # TODO: Package MaterialX
@@ -367,6 +473,7 @@ src_configure() {
-DWITH_OPENAL=$(usex openal)
-DWITH_OPENCOLLADA=$(usex collada)
-DWITH_OPENCOLORIO=$(usex color-management)
+ -DWITH_OPENGL_BACKEND=$(usex opengl)
-DWITH_OPENIMAGEDENOISE=$(usex oidn)
-DWITH_OPENMP=$(usex openmp)
-DWITH_OPENSUBDIV=$(usex opensubdiv)
@@ -380,15 +487,16 @@ src_configure() {
-DWITH_PYTHON_INSTALL_ZSTANDARD=no
-DWITH_RENDERDOC="$(usex renderdoc)"
-DWITH_SDL=$(usex sdl)
- -DWITH_STATIC_LIBS=no
- -DWITH_STRICT_BUILD_OPTIONS=yes
+ -DWITH_SYSTEM_BULLET="yes"
-DWITH_SYSTEM_EIGEN3=yes
-DWITH_SYSTEM_FREETYPE=yes
+ -DWITH_SYSTEM_GFLAGS="yes"
+ -DWITH_SYSTEM_GLOG="yes"
-DWITH_SYSTEM_LZO=yes
-DWITH_TBB=$(usex tbb)
-DWITH_USD="no" # TODO: Package USD
- -DWITH_VULKAN_BACKEND="$(usex vulkan)"
-DWITH_XR_OPENXR=no
+ -DWITH_UNITY_BUILD="no"
)
if has_version ">=dev-python/numpy-2"; then
@@ -399,29 +507,44 @@ src_configure() {
fi
# requires dev-vcs/git
- if [[ ${PV} = *9999* ]] ; then
- mycmakeargs+=( -DWITH_BUILDINFO="yes" )
+ if [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]]; then
+ mycmakeargs+=(
+ # -DWITH_BUILDINFO="no"
+ -DWITH_EXPERIMENTAL_FEATURES="$(usex experimental)"
+ )
else
- mycmakeargs+=( -DWITH_BUILDINFO="no" )
+ mycmakeargs+=(
+ -DWITH_EXPERIMENTAL_FEATURES="no"
+ )
fi
if use cuda; then
- mycmakeargs+=(
- -DCUDA_NVCC_FLAGS="--compiler-bindir;$(cuda_gccdir)"
- )
+ # Ease compiling with required gcc similar to cuda_sanitize but for cmake
+ if use cycles-bin-kernels; then
+ local -x CUDAHOSTCXX="$(cuda_gccdir)"
+ local -x CUDAHOSTLD="$(tc-getCXX)"
+
+ if [[ -n "${CUDAARCHS}" ]]; then
+ mycmakeargs+=(
+ -DCYCLES_CUDA_BINARIES_ARCH="$(echo "${CUDAARCHS}" | sed -e 's/^/sm_/g' -e 's/;/;sm_/g')"
+ )
+ fi
+ fi
fi
if use hip; then
mycmakeargs+=(
- -DROCM_PATH="$(hipconfig -R)"
+ -DHIP_ROOT_DIR="$(hipconfig -p)"
-DHIP_HIPCC_FLAGS="-fcf-protection=none"
+ -DCMAKE_HIP_LINK_EXECUTABLE="$(get_llvm_prefix)/bin/clang++"
+ -DCYCLES_HIP_BINARIES_ARCH="$(get_amdgpu_flags)"
)
fi
if use optix; then
mycmakeargs+=(
- -DCYCLES_RUNTIME_OPTIX_ROOT_DIR="${EPREFIX}"/opt/optix
- -DOPTIX_ROOT_DIR="${EPREFIX}"/opt/optix
+ -DCYCLES_RUNTIME_OPTIX_ROOT_DIR="${ESYSROOT}/opt/optix"
+ -DOPTIX_ROOT_DIR="${ESYSROOT}/opt/optix"
)
fi
@@ -436,17 +559,13 @@ src_configure() {
use arm64 && append-flags -flax-vector-conversions
append-cflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
- append-cppflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
+ append-cxxflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
- if tc-is-gcc ; then
- # These options only exist when GCC is detected.
+ if tc-is-gcc; then
# We disable these to respect the user's choice of linker.
mycmakeargs+=(
-DWITH_LINKER_GOLD=no
- -DWITH_LINKER_LLD=no
)
- # Ease compiling with required gcc similar to cuda_sanitize but for cmake
- use cuda && use cycles-bin-kernels && mycmakeargs+=( -DCUDA_HOST_COMPILER="$(cuda_gccdir)" )
fi
if tc-is-clang || use osl; then
@@ -456,7 +575,7 @@ src_configure() {
)
fi
- if use test ; then
+ if use test; then
local CYCLES_TEST_DEVICES=( "CPU" )
if use cycles-bin-kernels; then
use cuda && CYCLES_TEST_DEVICES+=( "CUDA" )
@@ -464,43 +583,110 @@ src_configure() {
use hip && CYCLES_TEST_DEVICES+=( "HIP" )
fi
mycmakeargs+=(
- -DCYCLES_TEST_DEVICES:STRING="$(local IFS=";"; echo "${CYCLES_TEST_DEVICES[*]}")"
- -DWITH_COMPOSITOR_REALTIME_TESTS=yes
- -DWITH_GPU_DRAW_TESTS=yes
- -DWITH_GPU_RENDER_TESTS=yes
+ -DCMAKE_INSTALL_PREFIX_WITH_CONFIG="${T}/usr"
+ -DCYCLES_TEST_DEVICES="$(local IFS=";"; echo "${CYCLES_TEST_DEVICES[*]}")"
)
+
+ # NOTE in lieu of a FEATURE/build_options
+ if [[ "${EXPENSIVE_TESTS:-0}" -gt 0 ]]; then
+ mycmakeargs+=(
+ -DWITH_COMPOSITOR_REALTIME_TESTS="yes"
+
+ -DWITH_CYCLES_TEST_OSL="$(usex osl)"
+
+ -DWITH_GPU_DRAW_TESTS="yes"
+
+ -DWITH_GPU_RENDER_TESTS="yes"
+ -DWITH_GPU_RENDER_TESTS_SILENT="no"
+ )
+
+ if [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]] && use experimental; then
+ mycmakeargs+=(
+ # Enable user-interface tests using a headless display server.
+ # Currently this depends on WITH_GHOST_WAYLAND and the weston compositor (Experimental)
+ -DWITH_UI_TESTS="$(usex wayland)"
+ -DWESTON_BIN="${ESYSROOT}/usr/bin/weston"
+ )
+ fi
+ else
+ mycmakeargs+=(
+ -DWITH_GPU_RENDER_TESTS="no"
+ )
+ fi
fi
cmake_src_configure
}
src_test() {
- # A lot of tests needs to have access to the installed data files.
+ # A lot of tests need to have access to the installed data files.
# So install them into the image directory now.
DESTDIR="${T}" cmake_build install
blender_get_version
- # Define custom blender data/script file paths not be able to find them otherwise during testing.
+ # Define custom blender data/script file paths, or we won't be able to find them otherwise during testing.
# (Because the data is in the image directory and it will default to look in /usr/share)
- export BLENDER_SYSTEM_SCRIPTS="${T}/usr/share/blender/${BV}/scripts"
- export BLENDER_SYSTEM_DATAFILES="${T}/usr/share/blender/${BV}/datafiles"
+ local -x BLENDER_SYSTEM_RESOURCES="${T%/}/usr/share/blender/${BV}"
# Sanity check that the script and datafile path is valid.
- # If they are not vaild, blender will fallback to the default path which is not what we want.
- [ -d "$BLENDER_SYSTEM_SCRIPTS" ] || die "The custom script path is invalid, fix the ebuild!"
- [ -d "$BLENDER_SYSTEM_DATAFILES" ] || die "The custom datafiles path is invalid, fix the ebuild!"
+ # If they are not valid, blender will fallback to the default path which is not what we want.
+ [[ -d "${BLENDER_SYSTEM_RESOURCES}" ]] || die "The custom resources path is invalid, fix the ebuild!"
+
+ # TODO only picks first card
+ addwrite "/dev/dri/card0"
+ addwrite "/dev/dri/renderD128"
+ addwrite "/dev/udmabuf"
if use cuda; then
cuda_add_sandbox -w
- addwrite "/dev/dri/renderD128"
addwrite "/dev/char/"
fi
- if use X; then
- xdg_environment_reset
+ if ! has_version "media-libs/openusd"; then
+ CMAKE_SKIP_TESTS+=(
+ # from pxr import Usd # ModuleNotFoundError: No module named 'pxr'
+ "^script_bundled_modules$"
+ )
fi
- cmake_src_test
+ # For debugging, print out all information.
+ local -x VERBOSE="$(usex debug "true" "false")"
+
+ # Show the window in the foreground.
+ local -x USE_WINDOW="false"
+ local -x USE_DEBUG="false"
+
+ if [[ "${EXPENSIVE_TESTS:-0}" -gt 0 ]]; then
+ if [[ "${USE_WINDOW}" = "true" ]] &&
+ [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]] &&
+ use experimental && use wayland; then
+ # This runs weston
+ xdg_environment_reset
+ fi
+
+ if [[ "${USE_WINDOW}" == "true" ]]; then
+ xdg_environment_reset
+ # WITH_GPU_RENDER_TESTS_HEADED
+ if use wayland; then
+ local compositor exit_code
+ local logfile=${T}/weston.log
+ weston --xwayland --backend=headless --socket=wayland-5 --idle-time=0 2>"${logfile}" &
+ compositor=$!
+ local -x WAYLAND_DISPLAY=wayland-5
+ sleep 1 # wait for xwayland to be up
+ local -x DISPLAY="$(grep "xserver listening on display" "${logfile}" | cut -d ' ' -f 5)"
+
+ cmake_src_test
+
+ exit_code=$?
+ kill "${compositor}"
+ elif use X; then
+ virtx cmake_src_test
+ fi
+ fi
+ else
+ cmake_src_test
+ fi
# Clean up the image directory for src_install
rm -fr "${T}/usr" || die
@@ -514,6 +700,13 @@ src_install() {
cmake_src_install
+ # X-KDE-RunOnDiscreteGpu is obsolete, so trim it
+ sed \
+ -e "s/=blender/=${P}/" \
+ -e "s/Name=Blender/Name=Blender Bin ${PV}/" \
+ -e "/X-KDE-RunOnDiscreteGpu.*/d" \
+ -i "${ED}/usr/share/applications/blender-${BV}.desktop" || die
+
if use man; then
# Slot the man page
mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die
@@ -522,8 +715,7 @@ src_install() {
if use doc; then
# Define custom blender data/script file paths. Otherwise Blender will not be able to find them during doc building.
# (Because the data is in the image directory and it will default to look in /usr/share)
- export BLENDER_SYSTEM_SCRIPTS=${ED}/usr/share/blender/${BV}/scripts
- export BLENDER_SYSTEM_DATAFILES=${ED}/usr/share/blender/${BV}/datafiles
+ local -x BLENDER_SYSTEM_RESOURCES="${ED}/usr/share/blender/${BV}"
# Workaround for binary drivers.
addpredict /dev/ati
@@ -549,6 +741,11 @@ src_install() {
dodoc -r "${CMAKE_USE_DIR}"/doc/doxygen/html/.
fi
+ if [[ "${PV}" != *9999* ]]; then
+ insinto "/usr/share/blender/${BV}/datafiles/assets"
+ doins -r "${WORKDIR}/blender-assets/publish/"*
+ fi
+
# Fix doc installdir
docinto html
dodoc "${CMAKE_USE_DIR}"/release/text/readme.html
@@ -556,8 +753,9 @@ src_install() {
python_optimize "${ED}/usr/share/blender/${BV}/scripts"
- mv "${ED}/usr/bin/blender-thumbnailer" "${ED}/usr/bin/blender-${BV}-thumbnailer" || die
- mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die
+ mv "${ED}/usr/bin/blender-thumbnailer" "${ED}/usr/bin/blender-${BV}-thumbnailer" \
+ || die "blender-thumbnailer version rename failed"
+ mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die "blender version rename failed"
}
pkg_postinst() {
@@ -571,7 +769,7 @@ pkg_postinst() {
elog "changing the 'Temporary Files' directory in Blender preferences."
elog
- if use osl; then
+ if use osl && ! has_version "media-libs/mesa[${LLVM_USEDEP}]"; then
ewarn ""
ewarn "OSL is know to cause runtime segfaults if Mesa has been linked to"
ewarn "an other LLVM version than what OSL is linked to."
@@ -579,11 +777,12 @@ pkg_postinst() {
ewarn ""
fi
+ # NOTE build_files/cmake/Modules/FindPythonLibsUnix.cmake: set(_PYTHON_VERSION_SUPPORTED 3.11)
if ! use python_single_target_python3_11; then
elog "You are building Blender with a newer python version than"
elog "supported by this version upstream."
elog "If you experience breakages with e.g. plugins, please switch to"
- elog "python_single_target_python3_11 instead."
+ elog "PYTHON_SINGLE_TARGET: python3_11 instead."
elog "Bug: https://bugs.gentoo.org/737388"
elog
fi
@@ -598,9 +797,12 @@ pkg_postrm() {
xdg_mimeinfo_database_update
xdg_desktop_database_update
- ewarn ""
- ewarn "You may want to remove the following directory."
- ewarn "~/.config/${PN}/${BV}/cache/"
- ewarn "It may contain extra render kernels not tracked by portage"
- ewarn ""
+ if [[ -z "${REPLACED_BY_VERSION}" ]]; then
+ ewarn
+ ewarn "You may want to remove the following directories"
+ ewarn "- ~/.config/${PN}/${BV}/cache/"
+ ewarn "- ~/.cache/cycles/"
+ ewarn "It may contain extra render kernels not tracked by portage"
+ ewarn
+ fi
}
diff --git a/media-gfx/blender/blender-4.4.1.ebuild b/media-gfx/blender/blender-4.4.1.ebuild
new file mode 100644
index 000000000000..ceafd3a979c6
--- /dev/null
+++ b/media-gfx/blender/blender-4.4.1.ebuild
@@ -0,0 +1,841 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# shellcheck disable=SC2207
+
+# TODO
+# - Package Hydra
+# https://github.com/Ray-Tracing-Systems/HydraCore
+# https://github.com/Ray-Tracing-Systems/HydraAPI
+# - Package USD
+# https://github.com/PixarAnimationStudios/OpenUSD
+# - Package MaterialX
+# https://github.com/AcademySoftwareFoundation/MaterialX
+# - Package Draco
+# https://github.com/google/draco
+# - Package Audaspace
+# https://github.com/neXyon/audaspace
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+# NOTE must match media-libs/osl
+LLVM_COMPAT=( {18..19} )
+LLVM_OPTIONAL=1
+
+ROCM_SKIP_GLOBALS=1
+
+inherit cuda rocm llvm-r1
+inherit eapi9-pipestatus check-reqs flag-o-matic pax-utils python-single-r1 toolchain-funcs virtualx
+inherit cmake xdg-utils
+
+DESCRIPTION="3D Creation/Animation/Publishing System"
+HOMEPAGE="https://www.blender.org"
+
+# NOTE BLENDER_VERSION
+# https://projects.blender.org/blender/blender/src/branch/main/source/blender/blenkernel/BKE_blender_version.h
+BLENDER_BRANCH="$(ver_cut 1-2)"
+
+if [[ "${PV}" == *9999* ]]; then
+ EGIT_LFS="yes"
+ inherit git-r3
+ EGIT_REPO_URI="https://projects.blender.org/blender/blender.git"
+ EGIT_SUBMODULES=( '*' '-lib/*' )
+
+ if [[ "${PV}" == 9999* ]]; then
+ EGIT_BRANCH="main"
+ else
+ EGIT_BRANCH="blender-v${BLENDER_BRANCH}-release"
+ fi
+
+ RESTRICT="!test? ( test )"
+else
+ SRC_URI="
+ https://download.blender.org/source/${P}.tar.xz
+ "
+ # BUG upstream returns LFS references instead of files
+ # SRC_URI+="
+ # test? (
+ # https://projects.blender.org/blender/blender-test-data/archive/blender-v${BLENDER_BRANCH}-release.tar.gz
+ # )
+ # "
+ KEYWORDS="~amd64 ~arm ~arm64"
+ RESTRICT="test" # the test archive contains LFS references
+fi
+
+# assets is CC0-1.0
+LICENSE="GPL-3+ cycles? ( Apache-2.0 ) CC0-1.0"
+SLOT="${BLENDER_BRANCH}"
+
+# NOTE +openpgl breaks on very old amd64 hardware
+# potentially mirror cpu_flags_x86 + REQUIRED_USE
+IUSE="
+ alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels
+ debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack
+ jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +opengl +openmp +openpgl
+ +opensubdiv +openvdb optix osl pipewire +pdf +potrace +pugixml pulseaudio
+ renderdoc sdl +sndfile +tbb test +tiff +truetype valgrind vulkan wayland +webp X
+"
+
+if [[ "${PV}" == *9999* ]]; then
+ IUSE+="experimental"
+fi
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ || ( opengl vulkan )
+ alembic? ( openexr )
+ cuda? ( cycles )
+ cycles? ( openexr tiff tbb )
+ fluid? ( tbb )
+ gnome? ( wayland )
+ hip? ( cycles )
+ nanovdb? ( openvdb )
+ openvdb? ( tbb openexr )
+ optix? ( cuda )
+ osl? ( cycles pugixml )
+ test? (
+ color-management
+ jpeg2k
+ )
+"
+
+# Library versions for official builds can be found in the blender source directory in:
+# build_files/build_environment/cmake/versions.cmake
+RDEPEND="${PYTHON_DEPS}
+ app-arch/zstd
+ dev-cpp/gflags:=
+ dev-cpp/glog:=
+ dev-libs/boost:=[nls?]
+ dev-libs/lzo:2=
+ $(python_gen_cond_dep '
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/zstandard[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ ')
+ media-libs/freetype:=[brotli]
+ media-libs/libepoxy:=
+ media-libs/libjpeg-turbo:=
+ media-libs/libpng:=
+ media-libs/libsamplerate
+ >=media-libs/openimageio-2.5.6.0:=
+ sys-libs/zlib:=
+ virtual/glu
+ virtual/libintl
+ virtual/opengl[X?]
+ alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] )
+ bullet? ( sci-physics/bullet:=[double-precision] )
+ collada? ( >=media-libs/opencollada-1.6.68 )
+ color-management? ( media-libs/opencolorio:= )
+ cuda? ( dev-util/nvidia-cuda-toolkit:= )
+ embree? ( media-libs/embree:=[raymask] )
+ ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] )
+ fftw? ( sci-libs/fftw:3.0=[threads] )
+ gmp? ( dev-libs/gmp[cxx] )
+ gnome? ( gui-libs/libdecor )
+ hip? (
+ >=dev-util/hip-5.7:=
+ )
+ jack? ( virtual/jack )
+ jemalloc? ( dev-libs/jemalloc:= )
+ jpeg2k? ( media-libs/openjpeg:2= )
+ ndof? (
+ app-misc/spacenavd
+ dev-libs/libspnav
+ )
+ nls? ( virtual/libiconv )
+ openal? ( media-libs/openal )
+ oidn? ( >=media-libs/oidn-2.1.0 )
+ openexr? (
+ >=dev-libs/imath-3.1.7:=
+ >=media-libs/openexr-3.2.1:0=
+ )
+ openpgl? ( media-libs/openpgl:= )
+ opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,openmp?,tbb?] )
+ openvdb? (
+ >=media-gfx/openvdb-11.0.0:=[nanovdb?]
+ dev-libs/c-blosc:=
+ )
+ optix? ( dev-libs/optix )
+ osl? (
+ >=media-libs/osl-1.13:=[${LLVM_USEDEP}]
+ media-libs/mesa[${LLVM_USEDEP}]
+ )
+ pdf? ( media-libs/libharu )
+ potrace? ( media-gfx/potrace )
+ pugixml? ( dev-libs/pugixml )
+ pulseaudio? ( media-libs/libpulse )
+ sdl? ( media-libs/libsdl2[sound,joystick] )
+ sndfile? ( media-libs/libsndfile )
+ tbb? ( dev-cpp/tbb:= )
+ tiff? ( media-libs/tiff:= )
+ valgrind? ( dev-debug/valgrind )
+ wayland? (
+ >=dev-libs/wayland-1.12
+ >=dev-libs/wayland-protocols-1.15
+ >=x11-libs/libxkbcommon-0.2.0
+ dev-util/wayland-scanner
+ media-libs/mesa[wayland]
+ sys-apps/dbus
+ )
+ vulkan? (
+ media-libs/shaderc
+ dev-util/spirv-tools
+ dev-util/glslang
+ media-libs/vulkan-loader
+ )
+ truetype? (
+ media-libs/harfbuzz
+ )
+ renderdoc? (
+ media-gfx/renderdoc
+ )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXi
+ x11-libs/libXxf86vm
+ )
+"
+
+DEPEND="${RDEPEND}
+ dev-cpp/eigen:=
+"
+
+if [[ "${PV}" == *9999* ]]; then
+DEPEND+="
+ test? (
+ experimental? (
+ wayland? (
+ dev-libs/weston
+ )
+ )
+ )
+"
+fi
+
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ app-text/doxygen[dot]
+ dev-python/sphinx[latex]
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ )
+ vulkan? (
+ dev-util/spirv-headers
+ dev-util/vulkan-headers
+ )
+ nls? ( sys-devel/gettext )
+ wayland? (
+ dev-util/wayland-scanner
+ )
+ X? (
+ x11-base/xorg-proto
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.0.2-FindClang.patch"
+ "${FILESDIR}/${PN}-4.1.1-FindLLVM.patch"
+ "${FILESDIR}/${PN}-4.1.1-numpy.patch"
+ "${FILESDIR}/${PN}-4.3.2-system-gtest.patch"
+ "${FILESDIR}/${PN}-4.4.0-optix-compile-flags.patch"
+)
+
+blender_check_requirements() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+
+ if use doc; then
+ CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend
+ fi
+}
+
+blender_get_version() {
+ if [[ -n "${BV}" && -n "${BVC}" ]]; then
+ return
+ fi
+
+ local status
+ # Get blender version from blender itself.
+ # mirrors build_files/cmake/macros.cmake function(get_blender_version)
+ # NOTE maps x0y to x.y
+ # TODO this can potentially break for x > 9 and y > 9
+ BV="$(grep "define BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d ' ' -f 3)"
+ status="$(pipestatus -v)" || die "fails to detect BLENDER_VERSION, (PIPESTATUS: ${status})"
+ BV="$(printf "%d.%d" "${BV:0: -2}" "${BV: -2}")"
+
+ if [[ "${PV}" != 9999* && "${BLENDER_BRANCH}" != "${BV}" ]]; then
+ eerror "ebuild (${BLENDER_BRANCH}) and code (${BV}) version mismatch"
+ die "blender_get_version"
+ fi
+
+ BVC="$(grep "define BLENDER_VERSION_CYCLE " source/blender/blenkernel/BKE_blender_version.h | cut -d ' ' -f 3)"
+ status="$(pipestatus -v)" || die "fails to detect BLENDER_VERSION_CYCLE, (PIPESTATUS: ${status})"
+}
+
+pkg_pretend() {
+ blender_check_requirements
+}
+
+pkg_setup() {
+ blender_check_requirements
+ python-single-r1_pkg_setup
+
+ if use osl; then
+ llvm-r1_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ "${PV}" == *9999* ]]; then
+ if ! use test; then
+ EGIT_SUBMODULES+=( '-tests/*' )
+ fi
+ git-r3_src_unpack
+ else
+ default
+
+ # BUG upstream returns LFS references instead of files
+ # if use test; then
+ # mkdir -p "${S}/tests/data/" || die
+ # mv blender-test-data/* "${S}/tests/data/" || die
+ # fi
+ fi
+}
+
+src_prepare() {
+ use cuda && cuda_src_prepare
+
+ cmake_src_prepare
+
+ blender_get_version
+
+ # Prepare icons and .desktop files for slotting.
+ sed \
+ -e "s|blender.svg|blender-${BV}.svg|" \
+ -e "s|blender-symbolic.svg|blender-${BV}-symbolic.svg|" \
+ -e "s|blender.desktop|blender-${BV}.desktop|" \
+ -e "s|org.blender.Blender.metainfo.xml|blender-${BV}.metainfo.xml|" \
+ -i source/creator/CMakeLists.txt || die
+
+ sed \
+ -e "s|Name=Blender|Name=Blender ${BV}|" \
+ -e "s|Exec=blender|Exec=blender-${BV}|" \
+ -e "s|Icon=blender|Icon=blender-${BV}|" \
+ -i release/freedesktop/blender.desktop || die
+
+ sed \
+ -e "/CMAKE_INSTALL_PREFIX_WITH_CONFIG/{s|\${CMAKE_INSTALL_PREFIX}|${T}\${CMAKE_INSTALL_PREFIX}|g}" \
+ -i CMakeLists.txt \
+ || die CMAKE_INSTALL_PREFIX_WITH_CONFIG
+
+ mv \
+ "release/freedesktop/icons/scalable/apps/blender.svg" \
+ "release/freedesktop/icons/scalable/apps/blender-${BV}.svg" \
+ || die
+ mv \
+ "release/freedesktop/icons/symbolic/apps/blender-symbolic.svg" \
+ "release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg" \
+ || die
+ mv \
+ "release/freedesktop/blender.desktop" \
+ "release/freedesktop/blender-${BV}.desktop" \
+ || die
+
+ mv \
+ "release/freedesktop/org.blender.Blender.metainfo.xml" \
+ "release/freedesktop/blender-${BV}.metainfo.xml" \
+ || die
+
+ sed \
+ -e "s#\(set(cycles_kernel_runtime_lib_target_path \)\${cycles_kernel_runtime_lib_target_path}\(/lib)\)#\1\${CYCLES_INSTALL_PATH}\2#" \
+ -i intern/cycles/kernel/CMakeLists.txt \
+ || die
+
+ if use hip; then
+ # fix hardcoded path
+ sed \
+ -e "s#opt/rocm/hip/bin#$(hipconfig -p)/bin#g" \
+ -i extern/hipew/src/hipew.c \
+ || die
+ fi
+
+ if use test; then
+ # Without this the tests will try to use /usr/bin/blender and /usr/share/blender/ to run the tests.
+ sed \
+ -e "/string(REPLACE.*TEST_INSTALL_DIR/{s|\${CMAKE_INSTALL_PREFIX}|${T}\${CMAKE_INSTALL_PREFIX}|g}" \
+ -i "build_files/cmake/testing.cmake" \
+ || die "REPLACE.*TEST_INSTALL_DIR"
+
+ # assertEquals was deprecated in Python-3.2 use assertEqual instead
+ sed \
+ -e 's/assertEquals/assertEqual/g' \
+ -i tests/python/bl_animation_action.py \
+ || die
+
+ sed -e '1i #include <cstdint>' -i extern/gtest/src/gtest-death-test.cc || die
+ else
+ cmake_comment_add_subdirectory tests
+ fi
+}
+
+src_configure() {
+ # -Werror=odr, -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/859607
+ # https://projects.blender.org/blender/blender/issues/120444
+ filter-lto
+
+ # Workaround for bug #922600
+ append-ldflags "$(test-flags-CCLD -Wl,--undefined-version)"
+
+ append-lfs-flags
+ blender_get_version
+
+ local mycmakeargs=(
+ # we build a host-specific binary
+ -DWITH_CPU_CHECK="no"
+
+ -DWITH_STRICT_BUILD_OPTIONS="yes"
+ -DWITH_LIBS_PRECOMPILED="no"
+ -DBUILD_SHARED_LIBS="no" # quadriflow only?
+ -DWITH_STATIC_LIBS=OFF
+
+ # Build Options:
+ -DWITH_ALEMBIC="$(usex alembic)"
+ -DWITH_BOOST="yes"
+ -DWITH_BULLET="$(usex bullet)"
+ -DWITH_CYCLES="$(usex cycles)"
+ -DWITH_DOC_MANPAGE="$(usex man)"
+ -DWITH_FFTW3="$(usex fftw)"
+ -DWITH_GMP="$(usex gmp)"
+ -DWITH_GTESTS="$(usex test)"
+ -DWITH_HARFBUZZ="$(usex truetype)"
+ -DWITH_HARU="$(usex pdf)"
+ -DWITH_HEADLESS="$(usex !X "$(use !wayland)")"
+ -DWITH_INPUT_NDOF="$(usex ndof)"
+ -DWITH_INTERNATIONAL="$(usex nls)"
+ -DWITH_MATERIALX="no" # TODO: Package MaterialX
+ -DWITH_NANOVDB="$(usex nanovdb)"
+ -DWITH_OPENCOLLADA="$(usex collada)"
+ -DWITH_OPENCOLORIO="$(usex color-management)"
+ -DWITH_OPENGL_BACKEND="$(usex opengl)"
+ -DWITH_OPENIMAGEDENOISE="$(usex oidn)"
+ -DWITH_OPENSUBDIV="$(usex opensubdiv)"
+ -DWITH_OPENVDB="$(usex openvdb)"
+ -DWITH_OPENVDB_BLOSC="$(usex openvdb)"
+ -DWITH_POTRACE="$(usex potrace)"
+ -DWITH_PUGIXML="$(usex pugixml)"
+ # -DWITH_QUADRIFLOW=ON
+ -DWITH_RENDERDOC="$(usex renderdoc)"
+ -DWITH_TBB="$(usex tbb)"
+ -DWITH_UNITY_BUILD="no"
+ -DWITH_USD="no" # TODO: Package USD
+ -DWITH_VULKAN_BACKEND="$(usex vulkan)" # experimental
+ -DWITH_XR_OPENXR="no"
+
+ -DWITH_SYSTEM_BULLET="yes"
+ -DWITH_SYSTEM_EIGEN3="yes"
+ -DWITH_SYSTEM_FREETYPE="yes"
+ -DWITH_SYSTEM_GFLAGS="yes"
+ -DWITH_SYSTEM_GLOG="yes"
+ -DWITH_SYSTEM_LZO="yes"
+
+ # Compiler Options:
+ # -DWITH_BUILDINFO="yes"
+ -DWITH_OPENMP="$(usex openmp)"
+
+ # System Options:
+ -DWITH_INSTALL_PORTABLE="no"
+ -DWITH_MEM_JEMALLOC="$(usex jemalloc)"
+ -DWITH_MEM_VALGRIND="$(usex valgrind)"
+
+ # GHOST Options:
+ -DWITH_GHOST_WAYLAND="$(usex wayland)"
+ -DWITH_GHOST_WAYLAND_APP_ID="blender-${BV}"
+ -DWITH_GHOST_WAYLAND_DYNLOAD="no"
+ -DWITH_GHOST_X11="$(usex X)"
+ # -DWITH_GHOST_XDND=ON
+ # -DWITH_X11_XF86VMODE=ON
+ # -DWITH_X11_XFIXES=ON
+ # -DWITH_X11_XINPUT=ON
+ # -DWITH_GHOST_WAYLAND_DYNLOAD # visible wayland?
+ # -DWITH_GHOST_WAYLAND_LIBDECOR # visible wayland?
+
+ # Image Formats:
+ # -DWITH_IMAGE_CINEON=ON
+ -DWITH_IMAGE_OPENEXR="$(usex openexr)"
+ -DWITH_IMAGE_OPENJPEG="$(usex jpeg2k)"
+ -DWITH_IMAGE_WEBP="$(usex webp)" # unlisted
+
+ # Audio:
+ # -DWITH_AUDASPACE=OFF
+ # -DWITH_SYSTEM_AUDASPACE=OFF
+ -DWITH_CODEC_FFMPEG="$(usex ffmpeg)"
+ -DWITH_CODEC_SNDFILE="$(usex sndfile)"
+ # -DWITH_COREAUDIO=OFF
+ -DWITH_JACK="$(usex jack)"
+ # -DWITH_JACK_DYNLOAD=
+ -DWITH_OPENAL="$(usex openal)"
+ -DWITH_PIPEWIRE="$(usex pipewire)"
+ # -DWITH_PIPEWIRE_DYNLOAD=
+ -DWITH_PULSEAUDIO="$(usex pulseaudio)"
+ # -DWITH_PULSEAUDIO_DYNLOAD=
+ -DWITH_SDL="$(usex sdl)"
+ # -DWITH_WASAPI=OFF
+
+ # Python:
+ # -DWITH_PYTHON=ON
+ -DWITH_PYTHON_INSTALL="no"
+ # -DWITH_PYTHON_INSTALL_NUMPY="no"
+ # -DWITH_PYTHON_INSTALL_ZSTANDARD="no"
+ # -DWITH_PYTHON_MODULE="no"
+ # -DWITH_PYTHON_SAFETY=
+ -DWITH_PYTHON_SECURITY="yes"
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ -DPYTHON_LIBRARY="$(python_get_library_path)"
+ -DPYTHON_VERSION="${EPYTHON/python/}"
+ -DWITH_DRACO="no" # TODO: Package Draco
+
+ # Modifiers:
+ -DWITH_MOD_FLUID="$(usex fluid)"
+ # -DWITH_MOD_REMESH=ON
+ -DWITH_MOD_OCEANSIM="$(usex fftw)"
+
+ # Rendering:
+ -DWITH_HYDRA="no" # TODO: Package Hydra
+
+ # Rendering (Cycles):
+ -DWITH_CYCLES_OSL="$(usex osl)"
+ -DWITH_CYCLES_EMBREE="$(usex embree)"
+ -DWITH_CYCLES_PATH_GUIDING="$(usex openpgl)"
+
+ -DWITH_CYCLES_DEVICE_OPTIX="$(usex optix)"
+ -DWITH_CYCLES_DEVICE_CUDA="$(usex cuda)"
+ -DWITH_CYCLES_CUDA_BINARIES="$(usex cuda "$(usex cycles-bin-kernels)")"
+
+ -DWITH_CYCLES_DEVICE_HIP="$(usex hip)"
+ -DWITH_CYCLES_HIP_BINARIES="$(usex hip "$(usex cycles-bin-kernels)")"
+ -DWITH_CYCLES_HYDRA_RENDER_DELEGATE="no" # TODO: package Hydra
+
+ # -DWITH_CYCLES_STANDALONE=OFF
+ # -DWITH_CYCLES_STANDALONE_GUI=OFF
+
+ -DWITH_BLENDER_THUMBNAILER="yes"
+ )
+
+ if has_version ">=dev-python/numpy-2"; then
+ mycmakeargs+=(
+ -DPYTHON_NUMPY_INCLUDE_DIRS="$(python_get_sitedir)/numpy/_core/include"
+ -DPYTHON_NUMPY_PATH="$(python_get_sitedir)/numpy/_core/include"
+ )
+ fi
+
+ # requires dev-vcs/git
+ if [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]]; then
+ mycmakeargs+=(
+ # -DWITH_BUILDINFO="no"
+ -DWITH_EXPERIMENTAL_FEATURES="$(usex experimental)"
+ )
+ else
+ mycmakeargs+=(
+ -DWITH_EXPERIMENTAL_FEATURES="no"
+ )
+ fi
+
+ if use cuda; then
+ # Ease compiling with required gcc similar to cuda_sanitize but for cmake
+ if use cycles-bin-kernels; then
+ local -x CUDAHOSTCXX="$(cuda_gccdir)"
+ local -x CUDAHOSTLD="$(tc-getCXX)"
+
+ if [[ -n "${CUDAARCHS}" ]]; then
+ mycmakeargs+=(
+ -DCYCLES_CUDA_BINARIES_ARCH="$(echo "${CUDAARCHS}" | sed -e 's/^/sm_/g' -e 's/;/;sm_/g')"
+ )
+ fi
+ fi
+ fi
+
+ if use hip; then
+ # local -x HIP_PATH="$(hipconfig -p)"
+ mycmakeargs+=(
+ # -DROCM_PATH="$(hipconfig -R)"
+ -DHIP_ROOT_DIR="$(hipconfig -p)"
+
+ -DHIP_HIPCC_FLAGS="-fcf-protection=none"
+
+ # -DHIP_LINKER_EXECUTABLE="$(get_llvm_prefix)/bin/clang++"
+ -DCMAKE_HIP_LINK_EXECUTABLE="$(get_llvm_prefix)/bin/clang++"
+
+ -DCYCLES_HIP_BINARIES_ARCH="$(get_amdgpu_flags)"
+ )
+ fi
+
+ if use optix; then
+ mycmakeargs+=(
+ -DCYCLES_RUNTIME_OPTIX_ROOT_DIR="${ESYSROOT}/opt/optix"
+ -DOPTIX_ROOT_DIR="${ESYSROOT}/opt/optix"
+ )
+ fi
+
+ if use wayland; then
+ mycmakeargs+=(
+ -DWITH_GHOST_WAYLAND_APP_ID="blender-${BV}"
+ -DWITH_GHOST_WAYLAND_LIBDECOR="$(usex gnome)"
+ )
+ fi
+
+ # This is currently needed on arm64 to get the NEON SIMD wrapper to compile the code successfully
+ use arm64 && append-flags -flax-vector-conversions
+
+ append-cflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
+ append-cxxflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
+
+ if tc-is-gcc; then
+ # We disable these to respect the user's choice of linker.
+ mycmakeargs+=(
+ -DWITH_LINKER_GOLD="no"
+ )
+ fi
+
+ if tc-is-clang || use osl; then
+ mycmakeargs+=(
+ -DWITH_CLANG="yes"
+ -DWITH_LLVM="yes"
+ )
+ fi
+
+ if use test; then
+ local CYCLES_TEST_DEVICES=( "CPU" )
+ if use cycles-bin-kernels; then
+ use cuda && CYCLES_TEST_DEVICES+=( "CUDA" )
+ use optix && CYCLES_TEST_DEVICES+=( "OPTIX" )
+ use hip && CYCLES_TEST_DEVICES+=( "HIP" )
+ fi
+ mycmakeargs+=(
+ -DCMAKE_INSTALL_PREFIX_WITH_CONFIG="${T}/usr"
+ -DCYCLES_TEST_DEVICES="$(local IFS=";"; echo "${CYCLES_TEST_DEVICES[*]}")"
+ )
+
+ # NOTE in lieu of a FEATURE/build_options
+ if [[ "${EXPENSIVE_TESTS:-0}" -gt 0 ]]; then
+ mycmakeargs+=(
+ -DWITH_CYCLES_TEST_OSL="$(usex osl)"
+
+ -DWITH_GPU_BACKEND_TESTS="yes"
+ -DWITH_GPU_COMPOSITOR_TESTS="yes"
+
+ -DWITH_GPU_DRAW_TESTS="yes"
+
+ -DWITH_GPU_RENDER_TESTS="no"
+ -DWITH_GPU_RENDER_TESTS_HEADED="no"
+ -DWITH_GPU_RENDER_TESTS_SILENT="yes"
+ -DWITH_GPU_RENDER_TESTS_VULKAN="$(usex vulkan)"
+
+ -DWITH_SYSTEM_PYTHON_TESTS="yes"
+ )
+
+ if [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]] && use experimental; then
+ mycmakeargs+=(
+ # Enable user-interface tests using a headless display server.
+ # Currently this depends on WITH_GHOST_WAYLAND and the weston compositor (Experimental)
+ -DWITH_UI_TESTS="$(usex wayland)"
+ -DWESTON_BIN="${ESYSROOT}/usr/bin/weston"
+ )
+ fi
+ else
+ mycmakeargs+=(
+ -DWITH_GPU_RENDER_TESTS="no"
+ )
+ fi
+ fi
+
+ cmake_src_configure
+}
+
+src_test() {
+ # A lot of tests need to have access to the installed data files.
+ # So install them into the image directory now.
+ DESTDIR="${T}" cmake_build install
+
+ blender_get_version
+ # Define custom blender data/script file paths, or we won't be able to find them otherwise during testing.
+ # (Because the data is in the image directory and it will default to look in /usr/share)
+ local -x BLENDER_SYSTEM_RESOURCES="${T%/}/usr/share/blender/${BV}"
+
+ # Sanity check that the script and datafile path is valid.
+ # If they are not valid, blender will fallback to the default path which is not what we want.
+ [[ -d "${BLENDER_SYSTEM_RESOURCES}" ]] || die "The custom resources path is invalid, fix the ebuild!"
+
+ # TODO only picks first card
+ addwrite "/dev/dri/card0"
+ addwrite "/dev/dri/renderD128"
+ addwrite "/dev/udmabuf"
+
+ if use cuda; then
+ cuda_add_sandbox -w
+ addwrite "/dev/char/"
+ fi
+
+ local -x CMAKE_SKIP_TESTS=(
+ "^script_pyapi_bpy_driver_secure_eval$"
+ "^cycles_image_colorspace_cpu$"
+ "^compositor_cpu_color$"
+ "^compositor_cpu_filter$"
+ )
+
+ if ! has_version "media-libs/openusd"; then
+ CMAKE_SKIP_TESTS+=(
+ # from pxr import Usd # ModuleNotFoundError: No module named 'pxr'
+ "^script_bundled_modules$"
+ )
+ fi
+
+ # For debugging, print out all information.
+ local -x VERBOSE="$(usex debug "true" "false")"
+
+ # Show the window in the foreground.
+ local -x USE_WINDOW="false"
+ local -x USE_DEBUG="false"
+
+ if [[ "${EXPENSIVE_TESTS:-0}" -gt 0 ]]; then
+ if [[ "${USE_WINDOW}" = "true" ]] &&
+ [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]] &&
+ use experimental && use wayland; then
+ # This runs weston
+ xdg_environment_reset
+ fi
+
+ if [[ "${USE_WINDOW}" == "true" ]]; then
+ xdg_environment_reset
+ # WITH_GPU_RENDER_TESTS_HEADED
+ if use wayland; then
+ local compositor exit_code
+ local logfile=${T}/weston.log
+ weston --xwayland --backend=headless --socket=wayland-5 --idle-time=0 2>"${logfile}" &
+ compositor=$!
+ local -x WAYLAND_DISPLAY=wayland-5
+ sleep 1 # wait for xwayland to be up
+ local -x DISPLAY="$(grep "xserver listening on display" "${logfile}" | cut -d ' ' -f 5)"
+
+ cmake_src_test
+
+ exit_code=$?
+ kill "${compositor}"
+ elif use X; then
+ virtx cmake_src_test
+ fi
+ fi
+ else
+ cmake_src_test
+ fi
+
+ # Clean up the image directory for src_install
+ rm -fr "${T}/usr" || die
+}
+
+src_install() {
+ blender_get_version
+
+ # Pax mark blender for hardened support.
+ pax-mark m "${BUILD_DIR}/bin/blender"
+
+ cmake_src_install
+
+ if use man; then
+ # Slot the man page
+ mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die
+ fi
+
+ if use doc; then
+ # Define custom blender data/script file paths. Otherwise Blender will not be able to find them during doc building.
+ # (Because the data is in the image directory and it will default to look in /usr/share)
+ local -x BLENDER_SYSTEM_RESOURCES="${ED}/usr/share/blender/${BV}"
+
+ # Workaround for binary drivers. # TODO
+ addpredict /dev/ati
+ addpredict /dev/dri
+ addpredict /dev/nvidiactl
+
+ einfo "Generating Blender C/C++ API docs ..."
+ cd "${CMAKE_USE_DIR}/doc/doxygen" || die
+ doxygen -u Doxyfile || die
+ doxygen || die "doxygen failed to build API docs."
+
+ cd "${CMAKE_USE_DIR}" || die
+ einfo "Generating (BPY) Blender Python API docs ..."
+ "${BUILD_DIR}"/bin/blender --background --python "doc/python_api/sphinx_doc_gen.py" -noaudio || die "sphinx failed."
+
+ cd "${CMAKE_USE_DIR}/doc/python_api" || die
+ sphinx-build sphinx-in BPY_API || die "sphinx failed."
+
+ docinto "html/API/python"
+ dodoc -r "${CMAKE_USE_DIR}/doc/python_api/BPY_API/"
+
+ docinto "html/API/blender"
+ dodoc -r "${CMAKE_USE_DIR}/doc/doxygen/html/"
+ fi
+
+ # Fix doc installdir
+ docinto html
+ dodoc "${CMAKE_USE_DIR}/release/text/readme.html"
+ rm -r "${ED}/usr/share/doc/blender" || die
+
+ python_optimize "${ED}/usr/share/blender/${BV}/scripts"
+
+ mv "${ED}/usr/bin/blender-thumbnailer" "${ED}/usr/bin/blender-${BV}-thumbnailer" \
+ || die "blender-thumbnailer version rename failed"
+ mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die "blender version rename failed"
+}
+
+pkg_postinst() {
+ elog
+ elog "Blender uses python integration. As such, may have some"
+ elog "inherent risks with running unknown python scripts."
+ elog
+ elog "It is recommended to change your blender temp directory"
+ elog "from /tmp to /home/user/tmp or another tmp file under your"
+ elog "home directory. This can be done by starting blender, then"
+ elog "changing the 'Temporary Files' directory in Blender preferences."
+ elog
+
+ if use osl && ! has_version "media-libs/mesa[${LLVM_USEDEP}]"; then
+ ewarn ""
+ ewarn "OSL is know to cause runtime segfaults if Mesa has been linked to"
+ ewarn "an other LLVM version than what OSL is linked to."
+ ewarn "See https://bugs.gentoo.org/880671 for more details"
+ ewarn ""
+ fi
+
+ # NOTE build_files/cmake/Modules/FindPythonLibsUnix.cmake: set(_PYTHON_VERSION_SUPPORTED 3.11)
+ if ! use python_single_target_python3_11; then
+ elog "You are building Blender with a newer python version than"
+ elog "supported by this version upstream."
+ elog "If you experience breakages with e.g. plugins, please switch to"
+ elog "PYTHON_SINGLE_TARGET: python3_11 instead."
+ elog "Bug: https://bugs.gentoo.org/737388"
+ elog
+ fi
+
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+ xdg_desktop_database_update
+
+ if [[ -z "${REPLACED_BY_VERSION}" ]]; then
+ ewarn
+ ewarn "You may want to remove the following directories"
+ ewarn "- ~/.config/${PN}/${BV}/cache/"
+ ewarn "- ~/.cache/cycles/"
+ ewarn "It may contain extra render kernels not tracked by portage"
+ ewarn
+ fi
+}
diff --git a/media-gfx/blender/blender-9999.ebuild b/media-gfx/blender/blender-9999.ebuild
index 4b0da064d761..a58140effea8 100644
--- a/media-gfx/blender/blender-9999.ebuild
+++ b/media-gfx/blender/blender-9999.ebuild
@@ -1,47 +1,88 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# shellcheck disable=SC2207
+
+# TODO
+# - Package Hydra
+# https://github.com/Ray-Tracing-Systems/HydraCore
+# https://github.com/Ray-Tracing-Systems/HydraAPI
+# - Package USD
+# https://github.com/PixarAnimationStudios/OpenUSD
+# - Package MaterialX
+# https://github.com/AcademySoftwareFoundation/MaterialX
+# - Package Draco
+# https://github.com/google/draco
+# - Package Audaspace
+# https://github.com/neXyon/audaspace
+
EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
# NOTE must match media-libs/osl
-LLVM_COMPAT=( {15..18} )
+LLVM_COMPAT=( {18..19} )
LLVM_OPTIONAL=1
-inherit check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils
+ROCM_SKIP_GLOBALS=1
+
+inherit cuda rocm llvm-r1
+inherit eapi9-pipestatus check-reqs flag-o-matic pax-utils python-single-r1 toolchain-funcs virtualx
+inherit cmake xdg-utils
DESCRIPTION="3D Creation/Animation/Publishing System"
HOMEPAGE="https://www.blender.org"
-if [[ ${PV} = *9999* ]] ; then
+# NOTE BLENDER_VERSION
+# https://projects.blender.org/blender/blender/src/branch/main/source/blender/blenkernel/BKE_blender_version.h
+BLENDER_BRANCH="$(ver_cut 1-2)"
+
+if [[ "${PV}" == *9999* ]]; then
EGIT_LFS="yes"
inherit git-r3
EGIT_REPO_URI="https://projects.blender.org/blender/blender.git"
EGIT_SUBMODULES=( '*' '-lib/*' )
+
+ if [[ "${PV}" == 9999* ]]; then
+ EGIT_BRANCH="main"
+ else
+ EGIT_BRANCH="blender-v${BLENDER_BRANCH}-release"
+ fi
+
RESTRICT="!test? ( test )"
else
SRC_URI="
https://download.blender.org/source/${P}.tar.xz
"
+ # BUG upstream returns LFS references instead of files
+ # SRC_URI+="
# test? (
- # https://projects.blender.org/blender/blender-test-data/archive/blender-v$(ver_cut 1-2)-release.tar.gz
+ # https://projects.blender.org/blender/blender-test-data/archive/blender-v${BLENDER_BRANCH}-release.tar.gz
# )
# "
KEYWORDS="~amd64 ~arm ~arm64"
- RESTRICT="test" # the test archive returns LFS references.
+ RESTRICT="test" # the test archive contains LFS references
fi
-LICENSE="GPL-3+ cycles? ( Apache-2.0 )"
-SLOT="${PV%.*}"
+# assets is CC0-1.0
+LICENSE="GPL-3+ cycles? ( Apache-2.0 ) CC0-1.0"
+SLOT="${BLENDER_BRANCH}"
+
+# NOTE +openpgl breaks on very old amd64 hardware
+# potentially mirror cpu_flags_x86 + REQUIRED_USE
IUSE="
alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels
debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack
- jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp +openpgl
- +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio
- renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X
+ jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +opengl +openpgl
+ +opensubdiv +openvdb optix osl pipewire +pdf +potrace +pugixml pulseaudio
+ renderdoc sdl +sndfile +tbb test +tiff +truetype valgrind vulkan wayland +webp X
"
+if [[ "${PV}" == *9999* ]]; then
+ IUSE+="experimental"
+fi
+
REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ || ( opengl vulkan )
alembic? ( openexr )
cuda? ( cycles )
cycles? ( openexr tiff tbb )
@@ -52,12 +93,18 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}
openvdb? ( tbb openexr )
optix? ( cuda )
osl? ( cycles pugixml )
- test? ( color-management )"
+ test? (
+ color-management
+ jpeg2k
+ )
+"
# Library versions for official builds can be found in the blender source directory in:
# build_files/build_environment/cmake/versions.cmake
RDEPEND="${PYTHON_DEPS}
app-arch/zstd
+ dev-cpp/gflags:=
+ dev-cpp/glog:=
dev-libs/boost:=[nls?]
dev-libs/lzo:2=
$(python_gen_cond_dep '
@@ -75,17 +122,20 @@ RDEPEND="${PYTHON_DEPS}
sys-libs/zlib:=
virtual/glu
virtual/libintl
- virtual/opengl
+ virtual/opengl[X?]
alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] )
+ bullet? ( sci-physics/bullet:=[double-precision] )
collada? ( >=media-libs/opencollada-1.6.68 )
color-management? ( media-libs/opencolorio:= )
cuda? ( dev-util/nvidia-cuda-toolkit:= )
embree? ( media-libs/embree:=[raymask] )
ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] )
- fftw? ( sci-libs/fftw:3.0= )
+ fftw? ( sci-libs/fftw:3.0=[threads] )
gmp? ( dev-libs/gmp[cxx] )
gnome? ( gui-libs/libdecor )
- hip? ( >=dev-util/hip-5.7 )
+ hip? (
+ >=dev-util/hip-5.7:=
+ )
jack? ( virtual/jack )
jemalloc? ( dev-libs/jemalloc:= )
jpeg2k? ( media-libs/openjpeg:2= )
@@ -96,17 +146,13 @@ RDEPEND="${PYTHON_DEPS}
nls? ( virtual/libiconv )
openal? ( media-libs/openal )
oidn? ( >=media-libs/oidn-2.1.0 )
- oneapi? ( || (
- dev-libs/intel-compute-runtime:0[l0]
- dev-libs/intel-compute-runtime:legacy[l0]
- )
- )
+ oneapi? ( dev-libs/intel-compute-runtime:=[l0] )
openexr? (
>=dev-libs/imath-3.1.7:=
>=media-libs/openexr-3.2.1:0=
)
openpgl? ( media-libs/openpgl:= )
- opensubdiv? ( >=media-libs/opensubdiv-3.5.0 )
+ opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,tbb?] )
openvdb? (
>=media-gfx/openvdb-11.0.0:=[nanovdb?]
dev-libs/c-blosc:=
@@ -139,7 +185,7 @@ RDEPEND="${PYTHON_DEPS}
dev-util/glslang
media-libs/vulkan-loader
)
- otf? (
+ truetype? (
media-libs/harfbuzz
)
renderdoc? (
@@ -154,11 +200,19 @@ RDEPEND="${PYTHON_DEPS}
DEPEND="${RDEPEND}
dev-cpp/eigen:=
- vulkan? (
- dev-util/spirv-headers
- dev-util/vulkan-headers
+"
+
+if [[ "${PV}" == *9999* ]]; then
+DEPEND+="
+ test? (
+ experimental? (
+ wayland? (
+ dev-libs/weston
+ )
+ )
)
"
+fi
BDEPEND="
virtual/pkgconfig
@@ -171,6 +225,10 @@ BDEPEND="
dev-texlive/texlive-latex
dev-texlive/texlive-latexextra
)
+ vulkan? (
+ dev-util/spirv-headers
+ dev-util/vulkan-headers
+ )
nls? ( sys-devel/gettext )
wayland? (
dev-util/wayland-scanner
@@ -182,29 +240,39 @@ BDEPEND="
PATCHES=(
"${FILESDIR}/${PN}-4.0.2-FindClang.patch"
- "${FILESDIR}/${PN}-4.0.2-CUDA_NVCC_FLAGS.patch"
"${FILESDIR}/${PN}-4.1.1-FindLLVM.patch"
"${FILESDIR}/${PN}-4.1.1-numpy.patch"
+ "${FILESDIR}/${PN}-4.3.2-system-gtest.patch"
+ "${FILESDIR}/${PN}-4.4.0-optix-compile-flags.patch"
)
blender_check_requirements() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-
if use doc; then
CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend
fi
}
blender_get_version() {
+ if [[ -n "${BV}" && -n "${BVC}" ]]; then
+ return
+ fi
+
+ local status
# Get blender version from blender itself.
- BV=$(grep "BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d " " -f 3; assert)
- if ((${BV:0:1} < 3)) ; then
- # Add period (290 -> 2.90).
- BV=${BV:0:1}.${BV:1}
- else
- # Add period and skip the middle number (301 -> 3.1)
- BV=${BV:0:1}.${BV:2}
+ # mirrors build_files/cmake/macros.cmake function(get_blender_version)
+ # NOTE maps x0y to x.y
+ # TODO this can potentially break for x > 9 and y > 9
+ BV="$(grep "define BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d ' ' -f 3)"
+ status="$(pipestatus -v)" || die "fails to detect BLENDER_VERSION, (PIPESTATUS: ${status})"
+ BV="$(printf "%d.%d" "${BV:0: -2}" "${BV: -2}")"
+
+ if [[ "${PV}" != 9999* && "${BLENDER_BRANCH}" != "${BV}" ]]; then
+ eerror "ebuild (${BLENDER_BRANCH}) and code (${BV}) version mismatch"
+ die "blender_get_version"
fi
+
+ BVC="$(grep "define BLENDER_VERSION_CYCLE " source/blender/blenkernel/BKE_blender_version.h | cut -d ' ' -f 3)"
+ status="$(pipestatus -v)" || die "fails to detect BLENDER_VERSION_CYCLE, (PIPESTATUS: ${status})"
}
pkg_pretend() {
@@ -214,20 +282,26 @@ pkg_pretend() {
einfo "The Intel oneAPI support is rudimentary."
einfo ""
einfo "Please report any bugs you find to https://bugs.gentoo.org/"
+ if ! command -v icpx &>/dev/null && ! command -v dpcpp &>/dev/null; then
+ eerror "Could not find icpx or dpcpp."
+ eerror "You need SYCL/DCP++ to enable oneapi support."
+ eerror "Try sys-devel/DPC++::science"
+ die "FindSYCL would fail. Aborting."
+ fi
fi
}
pkg_setup() {
+ blender_check_requirements
+ python-single-r1_pkg_setup
+
if use osl; then
llvm-r1_pkg_setup
fi
-
- blender_check_requirements
- python-single-r1_pkg_setup
}
src_unpack() {
- if [[ ${PV} = *9999* ]] ; then
+ if [[ "${PV}" == *9999* ]]; then
if ! use test; then
EGIT_SUBMODULES+=( '-tests/*' )
fi
@@ -235,10 +309,11 @@ src_unpack() {
else
default
- if use test; then
- mkdir -p "${S}/tests/data/" || die
- mv blender-test-data/* "${S}/tests/data/" || die
- fi
+ # BUG upstream returns LFS references instead of files
+ # if use test; then
+ # mkdir -p "${S}/tests/data/" || die
+ # mv blender-test-data/* "${S}/tests/data/" || die
+ # fi
fi
}
@@ -249,11 +324,6 @@ src_prepare() {
blender_get_version
- # Disable MS Windows help generation. The variable doesn't do what it
- # it sounds like.
- sed -e "s|GENERATE_HTMLHELP = YES|GENERATE_HTMLHELP = NO|" \
- -i doc/doxygen/Doxyfile || die
-
# Prepare icons and .desktop files for slotting.
sed \
-e "s|blender.svg|blender-${BV}.svg|" \
@@ -268,26 +338,58 @@ src_prepare() {
-e "s|Icon=blender|Icon=blender-${BV}|" \
-i release/freedesktop/blender.desktop || die
- sed -e "s|\${CMAKE_INSTALL_PREFIX}/\${BLENDER_BIN}|${T}/usr/\${BLENDER_BIN}|g" -i source/creator/CMakeLists.txt || die
+ sed \
+ -e "/CMAKE_INSTALL_PREFIX_WITH_CONFIG/{s|\${CMAKE_INSTALL_PREFIX}|${T}\${CMAKE_INSTALL_PREFIX}|g}" \
+ -i CMakeLists.txt \
+ || die CMAKE_INSTALL_PREFIX_WITH_CONFIG
mv \
- release/freedesktop/icons/scalable/apps/blender.svg \
- "release/freedesktop/icons/scalable/apps/blender-${BV}.svg" || die
+ "release/freedesktop/icons/scalable/apps/blender.svg" \
+ "release/freedesktop/icons/scalable/apps/blender-${BV}.svg" \
+ || die
mv \
- release/freedesktop/icons/symbolic/apps/blender-symbolic.svg \
- "release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg" || die
- mv release/freedesktop/blender.desktop "release/freedesktop/blender-${BV}.desktop" || die
- mv release/freedesktop/org.blender.Blender.metainfo.xml "release/freedesktop/blender-${BV}.metainfo.xml"
- mv release/freedesktop/org.blender.Blender.appdata.xml "release/freedesktop/blender-${BV}.appdata.xml"
+ "release/freedesktop/icons/symbolic/apps/blender-symbolic.svg" \
+ "release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg" \
+ || die
+ mv \
+ "release/freedesktop/blender.desktop" \
+ "release/freedesktop/blender-${BV}.desktop" \
+ || die
+
+ mv \
+ "release/freedesktop/org.blender.Blender.metainfo.xml" \
+ "release/freedesktop/blender-${BV}.metainfo.xml" \
+ || die
+
+ sed \
+ -e "s#\(set(cycles_kernel_runtime_lib_target_path \)\${cycles_kernel_runtime_lib_target_path}\(/lib)\)#\1\${CYCLES_INSTALL_PATH}\2#" \
+ -i intern/cycles/kernel/CMakeLists.txt \
+ || die
+
+ if use hip; then
+ # fix hardcoded path
+ sed \
+ -e "s#opt/rocm/hip/bin#$(hipconfig -p)/bin#g" \
+ -i extern/hipew/src/hipew.c \
+ || die
+ fi
if use test; then
# Without this the tests will try to use /usr/bin/blender and /usr/share/blender/ to run the tests.
- sed -e "s|set(TEST_INSTALL_DIR.*|set(TEST_INSTALL_DIR ${T}/usr)|g" -i tests/CMakeLists.txt || die
- sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${T}/usr)|g" -i build_files/cmake/testing.cmake || die
- fi
+ sed \
+ -e "/string(REPLACE.*TEST_INSTALL_DIR/{s|\${CMAKE_INSTALL_PREFIX}|${T}\${CMAKE_INSTALL_PREFIX}|g}" \
+ -i "build_files/cmake/testing.cmake" \
+ || die "REPLACE.*TEST_INSTALL_DIR"
+
+ # assertEquals was deprecated in Python-3.2 use assertEqual instead
+ sed \
+ -e 's/assertEquals/assertEqual/g' \
+ -i tests/python/bl_animation_action.py \
+ || die
- if use vulkan; then
- sed -e "s/extern_vulkan_memory_allocator/extern_vulkan_memory_allocator\nSPIRV-Tools-opt\nSPIRV-Tools\nSPIRV-Tools-link\nglslang\nSPIRV\nSPVRemapper/" -i source/blender/gpu/CMakeLists.txt || die
+ sed -e '1i #include <cstdint>' -i extern/gtest/src/gtest-death-test.cc || die
+ else
+ cmake_comment_add_subdirectory tests
fi
}
@@ -298,93 +400,142 @@ src_configure() {
filter-lto
# Workaround for bug #922600
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+ append-ldflags "$(test-flags-CCLD -Wl,--undefined-version)"
append-lfs-flags
blender_get_version
local mycmakeargs=(
- -DWITH_LIBS_PRECOMPILED=no
- -DBUILD_SHARED_LIBS=no
+ # we build a host-specific binary
+ -DWITH_CPU_CHECK="no"
+
+ -DWITH_STRICT_BUILD_OPTIONS="yes"
+ -DWITH_LIBS_PRECOMPILED="no"
+ -DBUILD_SHARED_LIBS="no" # quadriflow only?
+ -DWITH_STATIC_LIBS=OFF
+
+ # Build Options:
+ -DWITH_ALEMBIC="$(usex alembic)"
+ -DWITH_BOOST="yes"
+ -DWITH_BULLET="$(usex bullet)"
+ -DWITH_CYCLES="$(usex cycles)"
+ -DWITH_DOC_MANPAGE="$(usex man)"
+ -DWITH_FFTW3="$(usex fftw)"
+ -DWITH_GMP="$(usex gmp)"
+ -DWITH_GTESTS="$(usex test)"
+ -DWITH_HARFBUZZ="$(usex truetype)"
+ -DWITH_HARU="$(usex pdf)"
+ -DWITH_HEADLESS="$(usex !X "$(use !wayland)")"
+ -DWITH_INPUT_NDOF="$(usex ndof)"
+ -DWITH_INTERNATIONAL="$(usex nls)"
+ -DWITH_MATERIALX="no" # TODO: Package MaterialX
+ -DWITH_NANOVDB="$(usex nanovdb)"
+ -DWITH_OPENCOLLADA="$(usex collada)"
+ -DWITH_OPENCOLORIO="$(usex color-management)"
+ -DWITH_OPENGL_BACKEND="$(usex opengl)"
+ -DWITH_OPENIMAGEDENOISE="$(usex oidn)"
+ -DWITH_OPENSUBDIV="$(usex opensubdiv)"
+ -DWITH_OPENVDB="$(usex openvdb)"
+ -DWITH_OPENVDB_BLOSC="$(usex openvdb)"
+ -DWITH_POTRACE="$(usex potrace)"
+ -DWITH_PUGIXML="$(usex pugixml)"
+ # -DWITH_QUADRIFLOW=ON
+ -DWITH_RENDERDOC="$(usex renderdoc)"
+ -DWITH_TBB="$(usex tbb)"
+ -DWITH_UNITY_BUILD="no"
+ -DWITH_USD="no" # TODO: Package USD
+ -DWITH_VULKAN_BACKEND="$(usex vulkan)" # experimental
+ -DWITH_XR_OPENXR="no"
+
+ -DWITH_SYSTEM_BULLET="yes"
+ -DWITH_SYSTEM_EIGEN3="yes"
+ -DWITH_SYSTEM_FREETYPE="yes"
+ -DWITH_SYSTEM_GFLAGS="yes"
+ -DWITH_SYSTEM_GLOG="yes"
+ -DWITH_SYSTEM_LZO="yes"
+
+ # Compiler Options:
+ # -DWITH_BUILDINFO="yes"
+
+ # System Options:
+ -DWITH_INSTALL_PORTABLE="no"
+ -DWITH_MEM_JEMALLOC="$(usex jemalloc)"
+ -DWITH_MEM_VALGRIND="$(usex valgrind)"
+
+ # GHOST Options:
+ -DWITH_GHOST_WAYLAND="$(usex wayland)"
+ -DWITH_GHOST_WAYLAND_APP_ID="blender-${BV}"
+ -DWITH_GHOST_WAYLAND_DYNLOAD="no"
+ -DWITH_GHOST_X11="$(usex X)"
+ # -DWITH_GHOST_XDND=ON
+ # -DWITH_X11_XF86VMODE=ON
+ # -DWITH_X11_XFIXES=ON
+ # -DWITH_X11_XINPUT=ON
+ # -DWITH_GHOST_WAYLAND_DYNLOAD # visible wayland?
+ # -DWITH_GHOST_WAYLAND_LIBDECOR # visible wayland?
+
+ # Image Formats:
+ # -DWITH_IMAGE_CINEON=ON
+ -DWITH_IMAGE_OPENEXR="$(usex openexr)"
+ -DWITH_IMAGE_OPENJPEG="$(usex jpeg2k)"
+ -DWITH_IMAGE_WEBP="$(usex webp)" # unlisted
+
+ # Audio:
+ # -DWITH_AUDASPACE=OFF
+ # -DWITH_SYSTEM_AUDASPACE=OFF
+ -DWITH_CODEC_FFMPEG="$(usex ffmpeg)"
+ -DWITH_CODEC_SNDFILE="$(usex sndfile)"
+ # -DWITH_COREAUDIO=OFF
+ -DWITH_JACK="$(usex jack)"
+ # -DWITH_JACK_DYNLOAD=
+ -DWITH_OPENAL="$(usex openal)"
+ -DWITH_PIPEWIRE="$(usex pipewire)"
+ # -DWITH_PIPEWIRE_DYNLOAD=
+ -DWITH_PULSEAUDIO="$(usex pulseaudio)"
+ # -DWITH_PULSEAUDIO_DYNLOAD=
+ -DWITH_SDL="$(usex sdl)"
+ # -DWITH_WASAPI=OFF
+
+ # Python:
+ # -DWITH_PYTHON=ON
+ -DWITH_PYTHON_INSTALL="no"
+ # -DWITH_PYTHON_INSTALL_NUMPY="no"
+ # -DWITH_PYTHON_INSTALL_ZSTANDARD="no"
+ # -DWITH_PYTHON_MODULE="no"
+ # -DWITH_PYTHON_SAFETY=
+ -DWITH_PYTHON_SECURITY="yes"
-DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
-DPYTHON_LIBRARY="$(python_get_library_path)"
-DPYTHON_VERSION="${EPYTHON/python/}"
- -DWITH_ALEMBIC=$(usex alembic)
- -DWITH_BOOST=yes
- -DWITH_BULLET=$(usex bullet)
- -DWITH_CODEC_FFMPEG=$(usex ffmpeg)
- -DWITH_CODEC_SNDFILE=$(usex sndfile)
- -DWITH_CPU_CHECK=no
+ -DWITH_DRACO="no" # TODO: Package Draco
- -DWITH_CYCLES=$(usex cycles)
+ # Modifiers:
+ -DWITH_MOD_FLUID="$(usex fluid)"
+ # -DWITH_MOD_REMESH=ON
+ -DWITH_MOD_OCEANSIM="$(usex fftw)"
- -DWITH_CYCLES_DEVICE_CUDA=$(usex cuda)
- -DWITH_CYCLES_CUDA_BINARIES="$(usex cuda $(usex cycles-bin-kernels))"
- -DWITH_CYCLES_DEVICE_OPTIX=$(usex optix)
+ # Rendering:
+ -DWITH_HYDRA="no" # TODO: Package Hydra
- -DWITH_CYCLES_DEVICE_HIP="$(usex hip)"
- -DWITH_CYCLES_HIP_BINARIES=$(usex hip $(usex cycles-bin-kernels))
+ # Rendering (Cycles):
+ -DWITH_CYCLES_OSL="$(usex osl)"
+ -DWITH_CYCLES_EMBREE="$(usex embree)"
+ -DWITH_CYCLES_PATH_GUIDING="$(usex openpgl)"
- -DWITH_CYCLES_DEVICE_ONEAPI="$(usex oneapi)"
- -DWITH_CYCLES_ONEAPI_BINARIES="$(usex oneapi $(usex cycles-bin-kernels))"
+ -DWITH_CYCLES_DEVICE_OPTIX="$(usex optix)"
+ -DWITH_CYCLES_DEVICE_CUDA="$(usex cuda)"
+ -DWITH_CYCLES_CUDA_BINARIES="$(usex cuda "$(usex cycles-bin-kernels)")"
+ -DWITH_CYCLES_DEVICE_ONEAPI="$(usex oneapi)"
+ -DWITH_CYCLES_ONEAPI_BINARIES="$(usex oneapi "$(usex cycles-bin-kernels)")"
+ -DWITH_CYCLES_DEVICE_HIP="$(usex hip)"
+ -DWITH_CYCLES_HIP_BINARIES="$(usex hip "$(usex cycles-bin-kernels)")"
-DWITH_CYCLES_HYDRA_RENDER_DELEGATE="no" # TODO: package Hydra
- -DWITH_CYCLES_EMBREE="$(usex embree)"
- -DWITH_CYCLES_OSL=$(usex osl)
- -DWITH_CYCLES_PATH_GUIDING=$(usex openpgl)
- -DWITH_CYCLES_STANDALONE=no
- -DWITH_CYCLES_STANDALONE_GUI=no
- -DWITH_DOC_MANPAGE=$(usex man)
- -DWITH_DRACO="yes" # TODO: Package Draco
- -DWITH_FFTW3=$(usex fftw)
- -DWITH_GHOST_WAYLAND=$(usex wayland)
- -DWITH_GHOST_WAYLAND_DYNLOAD="no"
- -DWITH_GHOST_X11=$(usex X)
- -DWITH_GMP=$(usex gmp)
- -DWITH_GTESTS=$(usex test)
- -DWITH_HARFBUZZ="$(usex otf)"
- -DWITH_HARU=$(usex pdf)
- -DWITH_HEADLESS=$($(use X || use wayland) && echo OFF || echo ON)
- -DWITH_HYDRA="no" # TODO: Package Hydra
- -DWITH_IMAGE_OPENEXR=$(usex openexr)
- -DWITH_IMAGE_OPENJPEG=$(usex jpeg2k)
- -DWITH_IMAGE_WEBP=$(usex webp)
- -DWITH_INPUT_NDOF=$(usex ndof)
- -DWITH_INSTALL_PORTABLE="no"
- -DWITH_INTERNATIONAL=$(usex nls)
- -DWITH_JACK=$(usex jack)
- -DWITH_MATERIALX="no" # TODO: Package MaterialX
- -DWITH_MEM_JEMALLOC=$(usex jemalloc)
- -DWITH_MEM_VALGRIND=$(usex valgrind)
- -DWITH_MOD_FLUID=$(usex fluid)
- -DWITH_MOD_OCEANSIM=$(usex fftw)
- -DWITH_NANOVDB=$(usex nanovdb)
- -DWITH_OPENAL=$(usex openal)
- -DWITH_OPENCOLLADA=$(usex collada)
- -DWITH_OPENCOLORIO=$(usex color-management)
- -DWITH_OPENIMAGEDENOISE=$(usex oidn)
- -DWITH_OPENMP=$(usex openmp)
- -DWITH_OPENSUBDIV=$(usex opensubdiv)
- -DWITH_OPENVDB=$(usex openvdb)
- -DWITH_OPENVDB_BLOSC=$(usex openvdb)
- -DWITH_POTRACE=$(usex potrace)
- -DWITH_PUGIXML=$(usex pugixml)
- -DWITH_PULSEAUDIO=$(usex pulseaudio)
- -DWITH_PYTHON_INSTALL=no
- -DWITH_PYTHON_INSTALL_NUMPY=no
- -DWITH_PYTHON_INSTALL_ZSTANDARD=no
- -DWITH_RENDERDOC="$(usex renderdoc)"
- -DWITH_SDL=$(usex sdl)
- -DWITH_STATIC_LIBS=no
- -DWITH_STRICT_BUILD_OPTIONS=yes
- -DWITH_SYSTEM_EIGEN3=yes
- -DWITH_SYSTEM_FREETYPE=yes
- -DWITH_SYSTEM_LZO=yes
- -DWITH_TBB=$(usex tbb)
- -DWITH_USD="no" # TODO: Package USD
- -DWITH_VULKAN_BACKEND="$(usex vulkan)"
- -DWITH_XR_OPENXR=no
+ # -DWITH_CYCLES_STANDALONE=OFF
+ # -DWITH_CYCLES_STANDALONE_GUI=OFF
+
+ -DWITH_BLENDER_THUMBNAILER="yes"
)
if has_version ">=dev-python/numpy-2"; then
@@ -395,29 +546,50 @@ src_configure() {
fi
# requires dev-vcs/git
- if [[ ${PV} = *9999* ]] ; then
- mycmakeargs+=( -DWITH_BUILDINFO="yes" )
+ if [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]]; then
+ mycmakeargs+=(
+ # -DWITH_BUILDINFO="no"
+ -DWITH_EXPERIMENTAL_FEATURES="$(usex experimental)"
+ )
else
- mycmakeargs+=( -DWITH_BUILDINFO="no" )
+ mycmakeargs+=(
+ -DWITH_EXPERIMENTAL_FEATURES="no"
+ )
fi
if use cuda; then
- mycmakeargs+=(
- -DCUDA_NVCC_FLAGS="--compiler-bindir;$(cuda_gccdir)"
- )
+ # Ease compiling with required gcc similar to cuda_sanitize but for cmake
+ if use cycles-bin-kernels; then
+ local -x CUDAHOSTCXX="$(cuda_gccdir)"
+ local -x CUDAHOSTLD="$(tc-getCXX)"
+
+ if [[ -n "${CUDAARCHS}" ]]; then
+ mycmakeargs+=(
+ -DCYCLES_CUDA_BINARIES_ARCH="$(echo "${CUDAARCHS}" | sed -e 's/^/sm_/g' -e 's/;/;sm_/g')"
+ )
+ fi
+ fi
fi
if use hip; then
+ # local -x HIP_PATH="$(hipconfig -p)"
mycmakeargs+=(
- -DROCM_PATH="$(hipconfig -R)"
+ # -DROCM_PATH="$(hipconfig -R)"
+ -DHIP_ROOT_DIR="$(hipconfig -p)"
+
-DHIP_HIPCC_FLAGS="-fcf-protection=none"
+
+ # -DHIP_LINKER_EXECUTABLE="$(get_llvm_prefix)/bin/clang++"
+ -DCMAKE_HIP_LINK_EXECUTABLE="$(get_llvm_prefix)/bin/clang++"
+
+ -DCYCLES_HIP_BINARIES_ARCH="$(get_amdgpu_flags)"
)
fi
if use optix; then
mycmakeargs+=(
- -DCYCLES_RUNTIME_OPTIX_ROOT_DIR="${EPREFIX}"/opt/optix
- -DOPTIX_ROOT_DIR="${EPREFIX}"/opt/optix
+ -DCYCLES_RUNTIME_OPTIX_ROOT_DIR="${ESYSROOT}/opt/optix"
+ -DOPTIX_ROOT_DIR="${ESYSROOT}/opt/optix"
)
fi
@@ -432,74 +604,164 @@ src_configure() {
use arm64 && append-flags -flax-vector-conversions
append-cflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
- append-cppflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
+ append-cxxflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
- if tc-is-gcc ; then
- # These options only exist when GCC is detected.
+ if tc-is-gcc; then
# We disable these to respect the user's choice of linker.
mycmakeargs+=(
- -DWITH_LINKER_GOLD=no
- -DWITH_LINKER_LLD=no
+ -DWITH_LINKER_GOLD="no"
)
- # Ease compiling with required gcc similar to cuda_sanitize but for cmake
- use cuda && use cycles-bin-kernels && mycmakeargs+=( -DCUDA_HOST_COMPILER="$(cuda_gccdir)" )
fi
if tc-is-clang || use osl; then
mycmakeargs+=(
- -DWITH_CLANG=yes
- -DWITH_LLVM=yes
+ -DWITH_CLANG="yes"
+ -DWITH_LLVM="yes"
)
fi
- if use test ; then
+ if use test; then
local CYCLES_TEST_DEVICES=( "CPU" )
if use cycles-bin-kernels; then
use cuda && CYCLES_TEST_DEVICES+=( "CUDA" )
use optix && CYCLES_TEST_DEVICES+=( "OPTIX" )
use hip && CYCLES_TEST_DEVICES+=( "HIP" )
+ use oneapi && CYCLES_TEST_DEVICES+=( "ONEAPI" )
fi
mycmakeargs+=(
- -DCYCLES_TEST_DEVICES:STRING="$(local IFS=";"; echo "${CYCLES_TEST_DEVICES[*]}")"
- -DWITH_COMPOSITOR_REALTIME_TESTS=yes
- -DWITH_GPU_DRAW_TESTS=yes
- -DWITH_GPU_RENDER_TESTS=yes
+ -DCMAKE_INSTALL_PREFIX_WITH_CONFIG="${T}/usr"
+ -DCYCLES_TEST_DEVICES="$(local IFS=";"; echo "${CYCLES_TEST_DEVICES[*]}")"
)
+
+ # NOTE in lieu of a FEATURE/build_options
+ if [[ "${EXPENSIVE_TESTS:-0}" -gt 0 ]]; then
+ mycmakeargs+=(
+ -DWITH_CYCLES_TEST_OSL="$(usex osl)"
+
+ -DWITH_GPU_BACKEND_TESTS="yes"
+ -DWITH_GPU_COMPOSITOR_TESTS="yes"
+
+ -DWITH_GPU_DRAW_TESTS="yes"
+
+ -DWITH_GPU_RENDER_TESTS="no"
+ -DWITH_GPU_RENDER_TESTS_HEADED="no"
+ -DWITH_GPU_RENDER_TESTS_SILENT="yes"
+ -DWITH_GPU_RENDER_TESTS_VULKAN="$(usex vulkan)"
+
+ -DWITH_SYSTEM_PYTHON_TESTS="yes"
+ )
+
+ if [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]] && use experimental; then
+ mycmakeargs+=(
+ # Enable user-interface tests using a headless display server.
+ # Currently this depends on WITH_GHOST_WAYLAND and the weston compositor (Experimental)
+ -DWITH_UI_TESTS="$(usex wayland)"
+ -DWESTON_BIN="${ESYSROOT}/usr/bin/weston"
+ )
+ fi
+ else
+ mycmakeargs+=(
+ -DWITH_GPU_RENDER_TESTS="no"
+ )
+ fi
fi
cmake_src_configure
}
src_test() {
- # A lot of tests needs to have access to the installed data files.
+ # A lot of tests need to have access to the installed data files.
# So install them into the image directory now.
DESTDIR="${T}" cmake_build install
blender_get_version
- # By default, blender will look for system scripts and data in
- # /usr/share/, but until this is installed, they are not necessarily
- # available there. Use this to have blender search the intermediate
- # install directory instead.
- export BLENDER_SYSTEM_RESOURCES="${T}/usr/share/blender/${BV}"
+ # Define custom blender data/script file paths, or we won't be able to find them otherwise during testing.
+ # (Because the data is in the image directory and it will default to look in /usr/share)
+ local -x BLENDER_SYSTEM_RESOURCES="${T%/}/usr/share/blender/${BV}"
+
+ # Sanity check that the script and datafile path is valid.
+ # If they are not valid, blender will fallback to the default path which is not what we want.
+ [[ -d "${BLENDER_SYSTEM_RESOURCES}" ]] || die "The custom resources path is invalid, fix the ebuild!"
- # Brake check: Make sure the above path is valid.
- # If not, blender will fallback to the default path which is not what
- # we want.
- [ -d "$BLENDER_SYSTEM_RESOURCES" ] || die "The custom script path is invalid, fix the ebuild!"
+ # TODO only picks first card
+ addwrite "/dev/dri/card0"
+ addwrite "/dev/dri/renderD128"
+ addwrite "/dev/udmabuf"
if use cuda; then
cuda_add_sandbox -w
- addwrite "/dev/dri/renderD128"
addwrite "/dev/char/"
fi
- if use X; then
- xdg_environment_reset
+ local -x CMAKE_SKIP_TESTS=(
+ "^script_pyapi_bpy_driver_secure_eval$"
+ "^cycles_image_colorspace_cpu$"
+ "^cycles_image_data_types_cpu$"
+ "^cycles_image_mapping_cpu$"
+ "^cycles_osl_cpu$"
+ "^cycles_image_data_types_optix$"
+ "^compositor_cpu_color$"
+ "^compositor_cpu_filter$"
+ )
+
+ if ! has_version "media-libs/openusd"; then
+ CMAKE_SKIP_TESTS+=(
+ # from pxr import Usd # ModuleNotFoundError: No module named 'pxr'
+ "^script_bundled_modules$"
+ )
+ fi
+
+ if ! has_version "media-libs/openimageio[python]"; then
+ CMAKE_SKIP_TESTS+=(
+ # import OpenImageIO as oiio # ModuleNotFoundError: No module named 'OpenImageIO'
+ "^compositor_cpu_file_output$"
+ )
fi
- addwrite /dev/dri
+ # For debugging, print out all information.
+ local -x VERBOSE="$(usex debug "true" "false")"
+
+ # Show the window in the foreground.
+ local -x USE_WINDOW="false"
+ local -x USE_DEBUG="false"
+
+ eqawarn "VERBOSE=${VERBOSE}"
+ eqawarn "USE_WINDOW=${USE_WINDOW}"
+ eqawarn "USE_DEBUG=${USE_DEBUG}"
+ eqawarn "BLENDER_SYSTEM_RESOURCES=${BLENDER_SYSTEM_RESOURCES}"
+ eqawarn "EXPENSIVE_TESTS=${EXPENSIVE_TESTS}"
+
+ if [[ "${EXPENSIVE_TESTS:-0}" -gt 0 ]]; then
+ if [[ "${USE_WINDOW}" = "true" ]] &&
+ [[ "${PV}" == *9999* && "${BVC}" == "alpha" ]] &&
+ use experimental && use wayland; then
+ # This runs weston
+ xdg_environment_reset
+ fi
+
+ if [[ "${USE_WINDOW}" == "true" ]]; then
+ xdg_environment_reset
+ # WITH_GPU_RENDER_TESTS_HEADED
+ if use wayland; then
+ local compositor exit_code
+ local logfile=${T}/weston.log
+ weston --xwayland --backend=headless --socket=wayland-5 --idle-time=0 2>"${logfile}" &
+ compositor=$!
+ local -x WAYLAND_DISPLAY=wayland-5
+ sleep 1 # wait for xwayland to be up
+ local -x DISPLAY="$(grep "xserver listening on display" "${logfile}" | cut -d ' ' -f 5)"
- cmake_src_test
+ cmake_src_test
+
+ exit_code=$?
+ kill "${compositor}"
+ elif use X; then
+ virtx cmake_src_test
+ fi
+ fi
+ else
+ cmake_src_test
+ fi
# Clean up the image directory for src_install
rm -fr "${T}/usr" || die
@@ -509,7 +771,7 @@ src_install() {
blender_get_version
# Pax mark blender for hardened support.
- pax-mark m "${BUILD_DIR}"/bin/blender
+ pax-mark m "${BUILD_DIR}/bin/blender"
cmake_src_install
@@ -519,50 +781,44 @@ src_install() {
fi
if use doc; then
- # By default, blender will look for system scripts and data in
- # /usr/share/, but until this is installed, they are not necessarily
- # available there. Use this to have blender search the intermediate
- # install directory instead.
- export BLENDER_SYSTEM_RESOURCES="${ED}/usr/share/blender/${BV}"
+ # Define custom blender data/script file paths. Otherwise Blender will not be able to find them during doc building.
+ # (Because the data is in the image directory and it will default to look in /usr/share)
+ local -x BLENDER_SYSTEM_RESOURCES="${ED}/usr/share/blender/${BV}"
- # Brake check: Make sure the above path is valid.
- # If not, blender will fallback to the default path which is not what
- # we want.
- [ -d "$BLENDER_SYSTEM_RESOURCES" ] || die "The custom script path is invalid, fix the ebuild!"
-
- # Workaround for binary drivers.
+ # Workaround for binary drivers. # TODO
addpredict /dev/ati
addpredict /dev/dri
addpredict /dev/nvidiactl
einfo "Generating Blender C/C++ API docs ..."
- cd "${CMAKE_USE_DIR}"/doc/doxygen || die
+ cd "${CMAKE_USE_DIR}/doc/doxygen" || die
doxygen -u Doxyfile || die
doxygen || die "doxygen failed to build API docs."
cd "${CMAKE_USE_DIR}" || die
einfo "Generating (BPY) Blender Python API docs ..."
- "${BUILD_DIR}"/bin/blender --background --python doc/python_api/sphinx_doc_gen.py -noaudio || die "sphinx failed."
+ "${BUILD_DIR}"/bin/blender --background --python "doc/python_api/sphinx_doc_gen.py" -noaudio || die "sphinx failed."
- cd "${CMAKE_USE_DIR}"/doc/python_api || die
+ cd "${CMAKE_USE_DIR}/doc/python_api" || die
sphinx-build sphinx-in BPY_API || die "sphinx failed."
docinto "html/API/python"
- dodoc -r "${CMAKE_USE_DIR}"/doc/python_api/BPY_API/.
+ dodoc -r "${CMAKE_USE_DIR}/doc/python_api/BPY_API/"
docinto "html/API/blender"
- dodoc -r "${CMAKE_USE_DIR}"/doc/doxygen/html/.
+ dodoc -r "${CMAKE_USE_DIR}/doc/doxygen/html/"
fi
# Fix doc installdir
docinto html
- dodoc "${CMAKE_USE_DIR}"/release/text/readme.html
- rm -r "${ED}"/usr/share/doc/blender || die
+ dodoc "${CMAKE_USE_DIR}/release/text/readme.html"
+ rm -r "${ED}/usr/share/doc/blender" || die
python_optimize "${ED}/usr/share/blender/${BV}/scripts"
- mv "${ED}/usr/bin/blender-thumbnailer" "${ED}/usr/bin/blender-${BV}-thumbnailer" || die
- mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die
+ mv "${ED}/usr/bin/blender-thumbnailer" "${ED}/usr/bin/blender-${BV}-thumbnailer" \
+ || die "blender-thumbnailer version rename failed"
+ mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die "blender version rename failed"
}
pkg_postinst() {
@@ -576,7 +832,7 @@ pkg_postinst() {
elog "changing the 'Temporary Files' directory in Blender preferences."
elog
- if use osl; then
+ if use osl && ! has_version "media-libs/mesa[${LLVM_USEDEP}]"; then
ewarn ""
ewarn "OSL is know to cause runtime segfaults if Mesa has been linked to"
ewarn "an other LLVM version than what OSL is linked to."
@@ -584,11 +840,12 @@ pkg_postinst() {
ewarn ""
fi
+ # NOTE build_files/cmake/Modules/FindPythonLibsUnix.cmake: set(_PYTHON_VERSION_SUPPORTED 3.11)
if ! use python_single_target_python3_11; then
elog "You are building Blender with a newer python version than"
elog "supported by this version upstream."
elog "If you experience breakages with e.g. plugins, please switch to"
- elog "python_single_target_python3_11 instead."
+ elog "PYTHON_SINGLE_TARGET: python3_11 instead."
elog "Bug: https://bugs.gentoo.org/737388"
elog
fi
@@ -603,9 +860,12 @@ pkg_postrm() {
xdg_mimeinfo_database_update
xdg_desktop_database_update
- ewarn ""
- ewarn "You may want to remove the following directory."
- ewarn "~/.config/${PN}/${BV}/cache/"
- ewarn "It may contain extra render kernels not tracked by portage"
- ewarn ""
+ if [[ -z "${REPLACED_BY_VERSION}" ]]; then
+ ewarn
+ ewarn "You may want to remove the following directories"
+ ewarn "- ~/.config/${PN}/${BV}/cache/"
+ ewarn "- ~/.cache/cycles/"
+ ewarn "It may contain extra render kernels not tracked by portage"
+ ewarn
+ fi
}
diff --git a/media-gfx/blender/files/blender-4.2.9-python3.12.patch b/media-gfx/blender/files/blender-4.2.9-python3.12.patch
new file mode 100644
index 000000000000..94d0875cf67d
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.2.9-python3.12.patch
@@ -0,0 +1,68 @@
+From 1865de1c738a1a1ead520fbd38487815e13906e9 Mon Sep 17 00:00:00 2001
+From: Campbell Barton <campbell@blender.org>
+Date: Thu, 28 Nov 2024 12:04:45 +1100
+Subject: [PATCH] Fix #129926: Crash with Python 3.12 & Manta flow
+
+Python 3.12 no longer supports calls to PyImport_AppendInittab
+once initialized.
+
+The call was redundant as Blender's `bpy_internal_modules` already
+includes the "manta" module.
+
+Resolve by disabling the call when Python's lifecycle isn't being
+managed by manta-flow.
+---
+ extern/mantaflow/helper/pwrapper/registry.cpp | 19 ++++++++++++++-----
+ 1 file changed, 14 insertions(+), 5 deletions(-)
+
+diff --git a/extern/mantaflow/helper/pwrapper/registry.cpp b/extern/mantaflow/helper/pwrapper/registry.cpp
+index b4206a41dea..3ad7475d0e3 100644
+--- a/extern/mantaflow/helper/pwrapper/registry.cpp
++++ b/extern/mantaflow/helper/pwrapper/registry.cpp
+@@ -112,7 +112,7 @@ class WrapperRegistry {
+ const std::string &name,
+ Manta::PbArgs &args,
+ Manta::PbClass *parent);
+- void construct(const std::string &scriptname, const vector<string> &args);
++ void construct(bool python_lifecycle, const std::string &scriptname, const vector<string> &args);
+ void cleanup();
+ void renameObjects();
+ void runPreInit(PyObject *name_space);
+@@ -566,7 +566,9 @@ PyObject *WrapperRegistry::createPyObject(const string &classname,
+ }
+
+ // prepare typeinfo and register python module
+-void WrapperRegistry::construct(const string &scriptname, const vector<string> &args)
++void WrapperRegistry::construct(const bool python_lifecycle,
++ const string &scriptname,
++ const vector<string> &args)
+ {
+ mScriptName = scriptname;
+ this->args = args;
+@@ -575,8 +577,15 @@ void WrapperRegistry::construct(const string &scriptname, const vector<string> &
+ registerMeta();
+ registerDummyTypes();
+
+- // work around for certain gcc versions, cast to char*
+- PyImport_AppendInittab((char *)gDefaultModuleName.c_str(), PyInit_manta_main);
++ // Don't extend the init-tab when Python is already initialized.
++ // Since Python 3.12 this isn't supported and will crash.
++ //
++ // When `python_lifecycle` is false (when manta-flow is embedded), it's the responsibility
++ // of the application embedding this code to include #PyInit_manta_main in the init-tab.
++ if (python_lifecycle) {
++ // work around for certain gcc versions, cast to char*
++ PyImport_AppendInittab((char *)gDefaultModuleName.c_str(), PyInit_manta_main);
++ }
+ }
+
+ inline PyObject *castPy(PyTypeObject *p)
+@@ -711,7 +720,7 @@ void setup(const bool python_lifecycle,
+ const std::vector<std::string> &args,
+ PyObject *name_space)
+ {
+- WrapperRegistry::instance().construct(filename, args);
++ WrapperRegistry::instance().construct(python_lifecycle, filename, args);
+ if (python_lifecycle) {
+ Py_Initialize();
+ }
diff --git a/media-gfx/blender/files/blender-4.2.9-python3.12_1.patch b/media-gfx/blender/files/blender-4.2.9-python3.12_1.patch
new file mode 100644
index 000000000000..0312e786861c
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.2.9-python3.12_1.patch
@@ -0,0 +1,39 @@
+From f60f2b769b1d43d253d470c99f8555e90cb45fd9 Mon Sep 17 00:00:00 2001
+From: Campbell Barton <campbell@blender.org>
+Date: Mon, 21 Oct 2024 20:45:35 +1100
+Subject: [PATCH] Unbreak building with Python 3.12
+
+Support for 3.13 [0] broke 3.12.
+
+[0]: d9f38fca5ffe29136cd6f390e318ad8455864582
+---
+ source/blender/python/generic/py_capi_utils.cc | 2 +-
+ source/blender/python/generic/py_capi_utils.hh | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/source/blender/python/generic/py_capi_utils.cc b/source/blender/python/generic/py_capi_utils.cc
+index 74c829d717e..d6c58a5c6eb 100644
+--- a/source/blender/python/generic/py_capi_utils.cc
++++ b/source/blender/python/generic/py_capi_utils.cc
+@@ -39,7 +39,7 @@
+ # include "BLI_math_base.h" /* isfinite() */
+ #endif
+
+-#if PY_VERSION_HEX <= 0x030c0000 /* <=3.12 */
++#if PY_VERSION_HEX < 0x030d0000 /* <3.13 */
+ # define PyLong_AsInt _PyLong_AsInt
+ # define PyUnicode_CompareWithASCIIString _PyUnicode_EqualToASCIIString
+ #endif
+diff --git a/source/blender/python/generic/py_capi_utils.hh b/source/blender/python/generic/py_capi_utils.hh
+index 81740e0d0ad..29222d35c2c 100644
+--- a/source/blender/python/generic/py_capi_utils.hh
++++ b/source/blender/python/generic/py_capi_utils.hh
+@@ -339,7 +339,7 @@ uint64_t PyC_Long_AsU64(PyObject *value);
+ /* inline so type signatures match as expected */
+ Py_LOCAL_INLINE(int32_t) PyC_Long_AsI32(PyObject *value)
+ {
+-#if PY_VERSION_HEX <= 0x030c0000 /* <=3.12 */
++#if PY_VERSION_HEX < 0x030d0000 /* <3.13 */
+ return (int32_t)_PyLong_AsInt(value);
+ #else
+ return (int32_t)PyLong_AsInt(value);
diff --git a/media-gfx/blender/files/blender-4.2.9-python3.13.patch b/media-gfx/blender/files/blender-4.2.9-python3.13.patch
new file mode 100644
index 000000000000..0dd6f4b95b4d
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.2.9-python3.13.patch
@@ -0,0 +1,626 @@
+From d9f38fca5ffe29136cd6f390e318ad8455864582 Mon Sep 17 00:00:00 2001
+From: Campbell Barton <campbell@blender.org>
+Date: Fri, 18 Oct 2024 12:23:34 +1100
+Subject: [PATCH] PyAPI: support Python 3.13
+
+- `_PySet_NextEntry` has been removed, use generic iterator access
+ which will has some additional overhead as it needs to create
+ an iterator to access the values.
+
+- Add v3.13 compatibility defines to account for renaming:
+ _PyObject_LookupAttr -> PyObject_GetOptionalAttr
+ _PyLong_AsInt -> PyLong_AsInt
+
+- Unfortunately use of Python's internal API needs to be used to
+ inspect op-codes in `bpy_driver.cc`.
+
+Testing GLTF/FBX IO there isn't any significant performance impact
+from these changes.
+
+Resolves #123871.
+---
+ .../blender/python/bmesh/bmesh_py_ops_call.cc | 16 +-
+ source/blender/python/generic/py_capi_rna.cc | 140 ++++++++++--------
+ .../blender/python/generic/py_capi_utils.cc | 56 ++++---
+ .../blender/python/generic/py_capi_utils.hh | 4 +
+ .../blender/python/generic/python_compat.hh | 10 +-
+ .../blender/python/gpu/gpu_py_framebuffer.cc | 6 +-
+ source/blender/python/intern/bpy.cc | 48 +++---
+ source/blender/python/intern/bpy_driver.cc | 37 ++++-
+ .../python/intern/bpy_library_write.cc | 27 ++--
+ source/blender/python/intern/bpy_rna.cc | 6 +-
+ 10 files changed, 218 insertions(+), 132 deletions(-)
+
+diff --git a/source/blender/python/bmesh/bmesh_py_ops_call.cc b/source/blender/python/bmesh/bmesh_py_ops_call.cc
+index d5a2e6b02ad..624e4d02e98 100644
+--- a/source/blender/python/bmesh/bmesh_py_ops_call.cc
++++ b/source/blender/python/bmesh/bmesh_py_ops_call.cc
+@@ -548,11 +548,12 @@ static int bpy_slot_from_py(BMesh *bm,
+ break;
+ }
+ case BMO_OP_SLOT_SUBTYPE_MAP_EMPTY: {
+- if (PySet_Size(value) > 0) {
++ if (PySet_GET_SIZE(value) > 0) {
++ PyObject *it = PyObject_GetIter(value);
+ PyObject *arg_key;
+- Py_ssize_t arg_pos = 0;
+- Py_ssize_t arg_hash = 0;
+- while (_PySet_NextEntry(value, &arg_pos, &arg_key, &arg_hash)) {
++ while ((arg_key = PyIter_Next(it))) {
++ /* Borrow from the set. */
++ Py_DECREF(arg_key);
+
+ if (bpy_slot_from_py_elem_check((BPy_BMElem *)arg_key,
+ bm,
+@@ -561,11 +562,16 @@ static int bpy_slot_from_py(BMesh *bm,
+ slot_name,
+ "invalid key in set") == -1)
+ {
+- return -1; /* error is set in bpy_slot_from_py_elem_check() */
++ /* Error is set in #bpy_slot_from_py_elem_check(). */
++ break;
+ }
+
+ BMO_slot_map_empty_insert(bmop, slot, ((BPy_BMElem *)arg_key)->ele);
+ }
++ Py_DECREF(it);
++ if (arg_key) {
++ return -1;
++ }
+ }
+ break;
+ }
+diff --git a/source/blender/python/generic/py_capi_rna.cc b/source/blender/python/generic/py_capi_rna.cc
+index 11827fa0836..a41e474f619 100644
+--- a/source/blender/python/generic/py_capi_rna.cc
++++ b/source/blender/python/generic/py_capi_rna.cc
+@@ -75,60 +75,66 @@ BLI_bitmap *pyrna_enum_bitmap_from_set(const EnumPropertyItem *items,
+ int bitmap_size,
+ const char *error_prefix)
+ {
+- /* Set looping. */
+- Py_ssize_t pos = 0;
+- Py_ssize_t hash = 0;
+- PyObject *key;
+-
++ BLI_assert(PySet_Check(value));
+ BLI_bitmap *bitmap = BLI_BITMAP_NEW(bitmap_size, __func__);
+
+- while (_PySet_NextEntry(value, &pos, &key, &hash)) {
+- const char *param = PyUnicode_AsUTF8(key);
+- if (param == nullptr) {
+- PyErr_Format(PyExc_TypeError,
+- "%.200s expected a string, not %.200s",
+- error_prefix,
+- Py_TYPE(key)->tp_name);
+- goto error;
+- }
++ if (PySet_GET_SIZE(value) > 0) {
++ /* Set looping. */
++ PyObject *it = PyObject_GetIter(value);
++ PyObject *key;
++ while ((key = PyIter_Next(it))) {
++ /* Borrow from the set. */
++ Py_DECREF(key);
+
+- int ret;
+- if (pyrna_enum_value_from_id(items, param, &ret, error_prefix) == -1) {
+- goto error;
+- }
++ const char *param = PyUnicode_AsUTF8(key);
++ if (param == nullptr) {
++ PyErr_Format(PyExc_TypeError,
++ "%.200s expected a string, not %.200s",
++ error_prefix,
++ Py_TYPE(key)->tp_name);
++ break;
++ }
+
+- int index = ret;
++ int ret;
++ if (pyrna_enum_value_from_id(items, param, &ret, error_prefix) == -1) {
++ break;
++ }
+
+- if (type_convert_sign) {
+- if (type_size == 2) {
+- union {
+- signed short as_signed;
+- ushort as_unsigned;
+- } ret_convert;
+- ret_convert.as_signed = (signed short)ret;
+- index = int(ret_convert.as_unsigned);
+- }
+- else if (type_size == 1) {
+- union {
+- signed char as_signed;
+- uchar as_unsigned;
+- } ret_convert;
+- ret_convert.as_signed = (signed char)ret;
+- index = int(ret_convert.as_unsigned);
+- }
+- else {
+- BLI_assert_unreachable();
++ int index = ret;
++
++ if (type_convert_sign) {
++ if (type_size == 2) {
++ union {
++ signed short as_signed;
++ ushort as_unsigned;
++ } ret_convert;
++ ret_convert.as_signed = (signed short)ret;
++ index = int(ret_convert.as_unsigned);
++ }
++ else if (type_size == 1) {
++ union {
++ signed char as_signed;
++ uchar as_unsigned;
++ } ret_convert;
++ ret_convert.as_signed = (signed char)ret;
++ index = int(ret_convert.as_unsigned);
++ }
++ else {
++ BLI_assert_unreachable();
++ }
+ }
++ BLI_assert(index < bitmap_size);
++ BLI_BITMAP_ENABLE(bitmap, index);
++ }
++ Py_DECREF(it);
++
++ if (key) {
++ MEM_freeN(bitmap);
++ bitmap = nullptr;
+ }
+- BLI_assert(index < bitmap_size);
+- BLI_BITMAP_ENABLE(bitmap, index);
+ }
+
+ return bitmap;
+-
+-error:
+- MEM_freeN(bitmap);
+- return nullptr;
+ }
+
+ int pyrna_enum_bitfield_from_set(const EnumPropertyItem *items,
+@@ -136,32 +142,40 @@ int pyrna_enum_bitfield_from_set(const EnumPropertyItem *items,
+ int *r_value,
+ const char *error_prefix)
+ {
++ BLI_assert(PySet_Check(value));
+ /* Set of enum items, concatenate all values with OR. */
+- int ret, flag = 0;
+-
+- /* Set looping. */
+- Py_ssize_t pos = 0;
+- Py_ssize_t hash = 0;
+- PyObject *key;
++ int flag = 0;
+
+ *r_value = 0;
+
+- while (_PySet_NextEntry(value, &pos, &key, &hash)) {
+- const char *param = PyUnicode_AsUTF8(key);
++ PyObject *key = nullptr;
++ if (PySet_GET_SIZE(value) > 0) {
++ /* Set looping. */
++ PyObject *it = PyObject_GetIter(value);
++ while ((key = PyIter_Next(it))) {
++ /* Borrow from the set. */
++ Py_DECREF(key);
+
+- if (param == nullptr) {
+- PyErr_Format(PyExc_TypeError,
+- "%.200s expected a string, not %.200s",
+- error_prefix,
+- Py_TYPE(key)->tp_name);
++ const char *param = PyUnicode_AsUTF8(key);
++ if (param == nullptr) {
++ PyErr_Format(PyExc_TypeError,
++ "%.200s expected a string, not %.200s",
++ error_prefix,
++ Py_TYPE(key)->tp_name);
++ break;
++ }
++
++ int ret;
++ if (pyrna_enum_value_from_id(items, param, &ret, error_prefix) == -1) {
++ break;
++ }
++
++ flag |= ret;
++ }
++ Py_DECREF(it);
++ if (key) {
+ return -1;
+ }
+-
+- if (pyrna_enum_value_from_id(items, param, &ret, error_prefix) == -1) {
+- return -1;
+- }
+-
+- flag |= ret;
+ }
+
+ *r_value = flag;
+diff --git a/source/blender/python/generic/py_capi_utils.cc b/source/blender/python/generic/py_capi_utils.cc
+index 3311064e7c5..74c829d717e 100644
+--- a/source/blender/python/generic/py_capi_utils.cc
++++ b/source/blender/python/generic/py_capi_utils.cc
+@@ -39,6 +39,11 @@
+ # include "BLI_math_base.h" /* isfinite() */
+ #endif
+
++#if PY_VERSION_HEX <= 0x030c0000 /* <=3.12 */
++# define PyLong_AsInt _PyLong_AsInt
++# define PyUnicode_CompareWithASCIIString _PyUnicode_EqualToASCIIString
++#endif
++
+ /* -------------------------------------------------------------------- */
+ /** \name Fast Python to C Array Conversion for Primitive Types
+ * \{ */
+@@ -874,10 +879,12 @@ static void pyc_exception_buffer_handle_system_exit()
+ if (!PyErr_ExceptionMatches(PyExc_SystemExit)) {
+ return;
+ }
+- /* Inspecting, follow Python's logic in #_Py_HandleSystemExit & treat as a regular exception. */
++/* Inspecting, follow Python's logic in #_Py_HandleSystemExit & treat as a regular exception. */
++# if 0 /* FIXME: */
+ if (_Py_GetConfig()->inspect) {
+ return;
+ }
++# endif
+
+ /* NOTE(@ideasman42): A `SystemExit` exception will exit immediately (unless inspecting).
+ * So print the error and exit now. Without this #PyErr_Display shows the error stack-trace
+@@ -1424,11 +1431,6 @@ int PyC_FlagSet_ToBitfield(const PyC_FlagSet *items,
+ /* set of enum items, concatenate all values with OR */
+ int ret, flag = 0;
+
+- /* set looping */
+- Py_ssize_t pos = 0;
+- Py_ssize_t hash = 0;
+- PyObject *key;
+-
+ if (!PySet_Check(value)) {
+ PyErr_Format(PyExc_TypeError,
+ "%.200s expected a set, not %.200s",
+@@ -1439,22 +1441,32 @@ int PyC_FlagSet_ToBitfield(const PyC_FlagSet *items,
+
+ *r_value = 0;
+
+- while (_PySet_NextEntry(value, &pos, &key, &hash)) {
+- const char *param = PyUnicode_AsUTF8(key);
++ if (PySet_GET_SIZE(value) > 0) {
++ PyObject *it = PyObject_GetIter(value);
++ PyObject *key;
++ while ((key = PyIter_Next(it))) {
++ /* Borrow from the set. */
++ Py_DECREF(key);
+
+- if (param == nullptr) {
+- PyErr_Format(PyExc_TypeError,
+- "%.200s set must contain strings, not %.200s",
+- error_prefix,
+- Py_TYPE(key)->tp_name);
++ const char *param = PyUnicode_AsUTF8(key);
++ if (param == nullptr) {
++ PyErr_Format(PyExc_TypeError,
++ "%.200s set must contain strings, not %.200s",
++ error_prefix,
++ Py_TYPE(key)->tp_name);
++ break;
++ }
++
++ if (PyC_FlagSet_ValueFromID(items, param, &ret, error_prefix) < 0) {
++ break;
++ }
++
++ flag |= ret;
++ }
++ Py_DECREF(it);
++ if (key != nullptr) {
+ return -1;
+ }
+-
+- if (PyC_FlagSet_ValueFromID(items, param, &ret, error_prefix) < 0) {
+- return -1;
+- }
+-
+- flag |= ret;
+ }
+
+ *r_value = flag;
+@@ -1724,7 +1736,7 @@ static ulong pyc_Long_AsUnsignedLong(PyObject *value)
+
+ int PyC_Long_AsBool(PyObject *value)
+ {
+- const int test = _PyLong_AsInt(value);
++ const int test = PyLong_AsInt(value);
+ if (UNLIKELY(test == -1 && PyErr_Occurred())) {
+ return -1;
+ }
+@@ -1737,7 +1749,7 @@ int PyC_Long_AsBool(PyObject *value)
+
+ int8_t PyC_Long_AsI8(PyObject *value)
+ {
+- const int test = _PyLong_AsInt(value);
++ const int test = PyLong_AsInt(value);
+ if (UNLIKELY(test == -1 && PyErr_Occurred())) {
+ return -1;
+ }
+@@ -1750,7 +1762,7 @@ int8_t PyC_Long_AsI8(PyObject *value)
+
+ int16_t PyC_Long_AsI16(PyObject *value)
+ {
+- const int test = _PyLong_AsInt(value);
++ const int test = PyLong_AsInt(value);
+ if (UNLIKELY(test == -1 && PyErr_Occurred())) {
+ return -1;
+ }
+diff --git a/source/blender/python/generic/py_capi_utils.hh b/source/blender/python/generic/py_capi_utils.hh
+index 4a641f78471..81740e0d0ad 100644
+--- a/source/blender/python/generic/py_capi_utils.hh
++++ b/source/blender/python/generic/py_capi_utils.hh
+@@ -339,7 +339,11 @@ uint64_t PyC_Long_AsU64(PyObject *value);
+ /* inline so type signatures match as expected */
+ Py_LOCAL_INLINE(int32_t) PyC_Long_AsI32(PyObject *value)
+ {
++#if PY_VERSION_HEX <= 0x030c0000 /* <=3.12 */
+ return (int32_t)_PyLong_AsInt(value);
++#else
++ return (int32_t)PyLong_AsInt(value);
++#endif
+ }
+ Py_LOCAL_INLINE(int64_t) PyC_Long_AsI64(PyObject *value)
+ {
+diff --git a/source/blender/python/generic/python_compat.hh b/source/blender/python/generic/python_compat.hh
+index f18d0fb59b3..e2799aeeb46 100644
+--- a/source/blender/python/generic/python_compat.hh
++++ b/source/blender/python/generic/python_compat.hh
+@@ -9,9 +9,17 @@
+
+ #pragma once
+
++/* Removes `intialized` member from Python 3.13+. */
++#if PY_VERSION_HEX >= 0x030d0000
++# define PY_ARG_PARSER_HEAD_COMPAT()
++#elif PY_VERSION_HEX >= 0x030c0000
+ /* Add `intialized` member for Python 3.12+. */
+-#if PY_VERSION_HEX >= 0x030c0000
+ # define PY_ARG_PARSER_HEAD_COMPAT() 0,
+ #else
+ # define PY_ARG_PARSER_HEAD_COMPAT()
+ #endif
++
++/* Python 3.13 made some changes, use the "new" names. */
++#if PY_VERSION_HEX < 0x030d0000
++# define PyObject_GetOptionalAttr _PyObject_LookupAttr
++#endif
+diff --git a/source/blender/python/gpu/gpu_py_framebuffer.cc b/source/blender/python/gpu/gpu_py_framebuffer.cc
+index 899ad21f770..9bef53654df 100644
+--- a/source/blender/python/gpu/gpu_py_framebuffer.cc
++++ b/source/blender/python/gpu/gpu_py_framebuffer.cc
+@@ -286,14 +286,14 @@ static bool pygpu_framebuffer_new_parse_arg(PyObject *o, GPUAttachment *r_attach
+ return false;
+ }
+
+- if (c_texture && _PyUnicode_EqualToASCIIString(key, c_texture)) {
++ if (c_texture && PyUnicode_CompareWithASCIIString(key, c_texture)) {
+ /* Compare only once. */
+ c_texture = nullptr;
+ if (!bpygpu_ParseTexture(value, &tmp_attach.tex)) {
+ return false;
+ }
+ }
+- else if (c_layer && _PyUnicode_EqualToASCIIString(key, c_layer)) {
++ else if (c_layer && PyUnicode_CompareWithASCIIString(key, c_layer)) {
+ /* Compare only once. */
+ c_layer = nullptr;
+ tmp_attach.layer = PyLong_AsLong(value);
+@@ -301,7 +301,7 @@ static bool pygpu_framebuffer_new_parse_arg(PyObject *o, GPUAttachment *r_attach
+ return false;
+ }
+ }
+- else if (c_mip && _PyUnicode_EqualToASCIIString(key, c_mip)) {
++ else if (c_mip && PyUnicode_CompareWithASCIIString(key, c_mip)) {
+ /* Compare only once. */
+ c_mip = nullptr;
+ tmp_attach.mip = PyLong_AsLong(value);
+diff --git a/source/blender/python/intern/bpy.cc b/source/blender/python/intern/bpy.cc
+index 7cdd00fc7a3..42ea76e40ac 100644
+--- a/source/blender/python/intern/bpy.cc
++++ b/source/blender/python/intern/bpy.cc
+@@ -610,38 +610,40 @@ PyDoc_STRVAR(
+ " :rtype: dict\n");
+ static PyObject *bpy_wm_capabilities(PyObject *self)
+ {
+- static _Py_Identifier PyId_capabilities = {"_wm_capabilities_", -1};
+-
++ PyObject *py_id_capabilities = PyUnicode_FromString("_wm_capabilities_");
+ PyObject *result = nullptr;
+- switch (_PyObject_LookupAttrId(self, &PyId_capabilities, &result)) {
+- case 1:
+- return result;
+- case 0:
+- break;
+- default:
+- /* Unlikely, but there may be an error, forward it. */
+- return nullptr;
+- }
++ switch (PyObject_GetOptionalAttr(self, py_id_capabilities, &result)) {
++ case 1: {
++ result = PyDict_New();
+
+- result = PyDict_New();
+-
+- const eWM_CapabilitiesFlag flag = WM_capabilities_flag();
++ const eWM_CapabilitiesFlag flag = WM_capabilities_flag();
+
+ #define SetFlagItem(x) \
+ PyDict_SetItemString(result, STRINGIFY(x), PyBool_FromLong((WM_CAPABILITY_##x) & flag));
+
+- SetFlagItem(CURSOR_WARP);
+- SetFlagItem(WINDOW_POSITION);
+- SetFlagItem(PRIMARY_CLIPBOARD);
+- SetFlagItem(GPU_FRONT_BUFFER_READ);
+- SetFlagItem(CLIPBOARD_IMAGES);
+- SetFlagItem(DESKTOP_SAMPLE);
+- SetFlagItem(INPUT_IME);
+- SetFlagItem(TRACKPAD_PHYSICAL_DIRECTION);
++ SetFlagItem(CURSOR_WARP);
++ SetFlagItem(WINDOW_POSITION);
++ SetFlagItem(PRIMARY_CLIPBOARD);
++ SetFlagItem(GPU_FRONT_BUFFER_READ);
++ SetFlagItem(CLIPBOARD_IMAGES);
++ SetFlagItem(DESKTOP_SAMPLE);
++ SetFlagItem(INPUT_IME);
++ SetFlagItem(TRACKPAD_PHYSICAL_DIRECTION);
+
+ #undef SetFlagItem
++ PyObject_SetAttr(self, py_id_capabilities, result);
++ break;
++ }
++ case 0:
++ BLI_assert(result != nullptr);
++ break;
++ default:
++ /* Unlikely, but there may be an error, forward it. */
++ BLI_assert(result == nullptr);
++ break;
++ }
+
+- _PyObject_SetAttrId(self, &PyId_capabilities, result);
++ Py_DECREF(py_id_capabilities);
+ return result;
+ }
+
+diff --git a/source/blender/python/intern/bpy_driver.cc b/source/blender/python/intern/bpy_driver.cc
+index b32bfbc2a56..e589f0992e1 100644
+--- a/source/blender/python/intern/bpy_driver.cc
++++ b/source/blender/python/intern/bpy_driver.cc
+@@ -43,6 +43,13 @@
+ # include <opcode.h>
+ #endif
+
++#if PY_VERSION_HEX >= 0x030d0000 /* >=3.13 */
++/* WARNING(@ideasman42): Using `Py_BUILD_CORE` is a last resort,
++ * the alternative would be not to inspect OP-CODES at all. */
++# define Py_BUILD_CORE
++# include <internal/pycore_code.h>
++#endif
++
+ PyObject *bpy_pydriver_Dict = nullptr;
+
+ #ifdef USE_BYTECODE_WHITELIST
+@@ -375,7 +382,35 @@ static bool is_opcode_secure(const int opcode)
+ OK_OP(LOAD_CONST) /* Ok because constants are accepted. */
+ OK_OP(LOAD_NAME) /* Ok, because `PyCodeObject.names` is checked. */
+ OK_OP(CALL) /* Ok, because we check its "name" before calling. */
+- OK_OP(KW_NAMES) /* Ok, because it's used for calling functions with keyword arguments. */
++# if PY_VERSION_HEX >= 0x030d0000
++ OK_OP(CALL_KW) /* Ok, because it's used for calling functions with keyword arguments. */
++
++ OK_OP(CALL_FUNCTION_EX);
++
++ /* OK because the names are checked. */
++ OK_OP(CALL_ALLOC_AND_ENTER_INIT)
++ OK_OP(CALL_BOUND_METHOD_EXACT_ARGS)
++ OK_OP(CALL_BOUND_METHOD_GENERAL)
++ OK_OP(CALL_BUILTIN_CLASS)
++ OK_OP(CALL_BUILTIN_FAST)
++ OK_OP(CALL_BUILTIN_FAST_WITH_KEYWORDS)
++ OK_OP(CALL_BUILTIN_O)
++ OK_OP(CALL_ISINSTANCE)
++ OK_OP(CALL_LEN)
++ OK_OP(CALL_LIST_APPEND)
++ OK_OP(CALL_METHOD_DESCRIPTOR_FAST)
++ OK_OP(CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS)
++ OK_OP(CALL_METHOD_DESCRIPTOR_NOARGS)
++ OK_OP(CALL_METHOD_DESCRIPTOR_O)
++ OK_OP(CALL_NON_PY_GENERAL)
++ OK_OP(CALL_PY_EXACT_ARGS)
++ OK_OP(CALL_PY_GENERAL)
++ OK_OP(CALL_STR_1)
++ OK_OP(CALL_TUPLE_1)
++ OK_OP(CALL_TYPE_1)
++# else
++ OK_OP(KW_NAMES) /* Ok, because it's used for calling functions with keyword arguments. */
++# endif
+
+ # if PY_VERSION_HEX < 0x030c0000
+ OK_OP(PRECALL) /* Ok, because it's used for calling. */
+diff --git a/source/blender/python/intern/bpy_library_write.cc b/source/blender/python/intern/bpy_library_write.cc
+index d1c0b32ac07..59bf476427f 100644
+--- a/source/blender/python/intern/bpy_library_write.cc
++++ b/source/blender/python/intern/bpy_library_write.cc
+@@ -136,20 +136,25 @@ static PyObject *bpy_lib_write(BPy_PropertyRNA *self, PyObject *args, PyObject *
+ PartialWriteContext::IDAddOperations::ADD_DEPENDENCIES |
+ (use_fake_user ? PartialWriteContext::IDAddOperations::SET_FAKE_USER : 0))};
+
+- Py_ssize_t pos, hash;
+- PyObject *key;
+- ID *id = nullptr;
+-
+- pos = hash = 0;
+- while (_PySet_NextEntry(datablocks, &pos, &key, &hash)) {
+- if (!pyrna_id_FromPyObject(key, &id)) {
+- PyErr_Format(PyExc_TypeError, "Expected an ID type, not %.200s", Py_TYPE(key)->tp_name);
+- return nullptr;
+- }
+- else {
++ if (PySet_GET_SIZE(datablocks) > 0) {
++ PyObject *it = PyObject_GetIter(datablocks);
++ PyObject *key;
++ while ((key = PyIter_Next(it))) {
++ /* Borrow from the set. */
++ Py_DECREF(key);
++ ID *id;
++ if (!pyrna_id_FromPyObject(key, &id)) {
++ PyErr_Format(PyExc_TypeError, "Expected an ID type, not %.200s", Py_TYPE(key)->tp_name);
++ break;
++ }
+ partial_write_ctx.id_add(id, add_options, nullptr);
+ }
++ Py_DECREF(it);
++ if (key) {
++ return nullptr;
++ }
+ }
++
+ BLI_assert(partial_write_ctx.is_valid());
+
+ /* write blend */
+diff --git a/source/blender/python/intern/bpy_rna.cc b/source/blender/python/intern/bpy_rna.cc
+index eb365bf0238..a9cb115f57e 100644
+--- a/source/blender/python/intern/bpy_rna.cc
++++ b/source/blender/python/intern/bpy_rna.cc
+@@ -8639,7 +8639,7 @@ static int bpy_class_validate_recursive(PointerRNA *dummy_ptr,
+ continue;
+ }
+
+- /* TODO(@ideasman42): Use Python3.7x _PyObject_LookupAttr(), also in the macro below. */
++ /* TODO(@ideasman42): Use #PyObject_GetOptionalAttr(), also in the macro below. */
+ identifier = RNA_property_identifier(prop);
+ item = PyObject_GetAttrString(py_class, identifier);
+
+@@ -9263,7 +9263,7 @@ static PyObject *pyrna_register_class(PyObject * /*self*/, PyObject *py_class)
+
+ /* Call classed register method.
+ * Note that zero falls through, no attribute, no error. */
+- switch (_PyObject_LookupAttr(py_class, bpy_intern_str_register, &py_cls_meth)) {
++ switch (PyObject_GetOptionalAttr(py_class, bpy_intern_str_register, &py_cls_meth)) {
+ case 1: {
+ PyObject *ret = PyObject_CallObject(py_cls_meth, nullptr);
+ Py_DECREF(py_cls_meth);
+@@ -9378,7 +9378,7 @@ static PyObject *pyrna_unregister_class(PyObject * /*self*/, PyObject *py_class)
+
+ /* Call classed unregister method.
+ * Note that zero falls through, no attribute, no error. */
+- switch (_PyObject_LookupAttr(py_class, bpy_intern_str_unregister, &py_cls_meth)) {
++ switch (PyObject_GetOptionalAttr(py_class, bpy_intern_str_unregister, &py_cls_meth)) {
+ case 1: {
+ PyObject *ret = PyObject_CallObject(py_cls_meth, nullptr);
+ Py_DECREF(py_cls_meth);
diff --git a/media-gfx/blender/files/blender-4.3.2-openvdb-12.patch b/media-gfx/blender/files/blender-4.3.2-openvdb-12.patch
new file mode 100644
index 000000000000..02cca15f7c94
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.3.2-openvdb-12.patch
@@ -0,0 +1,76 @@
+https://projects.blender.org/blender/blender/pulls/131833
+From 91412f2a28db69ac2a73c1bc646e350063d8ddd5 Mon Sep 17 00:00:00 2001
+From: Brecht Van Lommel <brecht@blender.org>
+Date: Fri, 13 Dec 2024 04:29:29 +0100
+Subject: [PATCH] Cycles: Support building with OpenVDB 12
+
+---
+ intern/cycles/scene/image_vdb.cpp | 20 +++++++++++++++-----
+ intern/cycles/scene/image_vdb.h | 8 +++++++-
+ 2 files changed, 22 insertions(+), 6 deletions(-)
+
+diff --git a/intern/cycles/scene/image_vdb.cpp b/intern/cycles/scene/image_vdb.cpp
+index d94a7973adc..42964fac81d 100644
+--- a/intern/cycles/scene/image_vdb.cpp
++++ b/intern/cycles/scene/image_vdb.cpp
+@@ -55,23 +55,33 @@ struct ToNanoOp {
+ try {
+ # if NANOVDB_MAJOR_VERSION_NUMBER > 32 || \
+ (NANOVDB_MAJOR_VERSION_NUMBER == 32 && NANOVDB_MINOR_VERSION_NUMBER >= 6)
++# if NANOVDB_MAJOR_VERSION_NUMBER > 32 || \
++ (NANOVDB_MAJOR_VERSION_NUMBER == 32 && NANOVDB_MINOR_VERSION_NUMBER >= 7)
++ /* OpenVDB 12. */
++ using nanovdb::tools::createNanoGrid;
++ using nanovdb::tools::StatsMode;
++# else
+ /* OpenVDB 11. */
++ using nanovdb::createNanoGrid;
++ using nanovdb::StatsMode;
++# endif
++
+ if constexpr (std::is_same_v<FloatGridType, openvdb::FloatGrid>) {
+ openvdb::FloatGrid floatgrid(*openvdb::gridConstPtrCast<GridType>(grid));
+ if (precision == 0) {
+- nanogrid = nanovdb::createNanoGrid<openvdb::FloatGrid, nanovdb::FpN>(floatgrid);
++ nanogrid = createNanoGrid<openvdb::FloatGrid, nanovdb::FpN>(floatgrid);
+ }
+ else if (precision == 16) {
+- nanogrid = nanovdb::createNanoGrid<openvdb::FloatGrid, nanovdb::Fp16>(floatgrid);
++ nanogrid = createNanoGrid<openvdb::FloatGrid, nanovdb::Fp16>(floatgrid);
+ }
+ else {
+- nanogrid = nanovdb::createNanoGrid<openvdb::FloatGrid, float>(floatgrid);
++ nanogrid = createNanoGrid<openvdb::FloatGrid, float>(floatgrid);
+ }
+ }
+ else if constexpr (std::is_same_v<FloatGridType, openvdb::Vec3fGrid>) {
+ openvdb::Vec3fGrid floatgrid(*openvdb::gridConstPtrCast<GridType>(grid));
+- nanogrid = nanovdb::createNanoGrid<openvdb::Vec3fGrid, nanovdb::Vec3f>(
+- floatgrid, nanovdb::StatsMode::Disable);
++ nanogrid = createNanoGrid<openvdb::Vec3fGrid, nanovdb::Vec3f>(floatgrid,
++ StatsMode::Disable);
+ }
+ # else
+ /* OpenVDB 10. */
+diff --git a/intern/cycles/scene/image_vdb.h b/intern/cycles/scene/image_vdb.h
+index 49853cf3753..e0af9b87db1 100644
+--- a/intern/cycles/scene/image_vdb.h
++++ b/intern/cycles/scene/image_vdb.h
+@@ -9,7 +9,13 @@
+ # include <openvdb/openvdb.h>
+ #endif
+ #ifdef WITH_NANOVDB
+-# include <nanovdb/util/GridHandle.h>
++# include <nanovdb/NanoVDB.h>
++# if NANOVDB_MAJOR_VERSION_NUMBER > 32 || \
++ (NANOVDB_MAJOR_VERSION_NUMBER == 32 && NANOVDB_MINOR_VERSION_NUMBER >= 7)
++# include <nanovdb/GridHandle.h>
++# else
++# include <nanovdb/util/GridHandle.h>
++# endif
+ #endif
+
+ #include "scene/image.h"
+--
+2.45.2
+
diff --git a/media-gfx/blender/files/blender-4.3.2-optix-8.1.0.patch b/media-gfx/blender/files/blender-4.3.2-optix-8.1.0.patch
new file mode 100644
index 000000000000..092c30db2bc5
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.3.2-optix-8.1.0.patch
@@ -0,0 +1,34 @@
+From 7ce8dbf5f82af7c80890d18b27e1d9df6009d5b4 Mon Sep 17 00:00:00 2001
+From: Patrick Mours <pmours@nvidia.com>
+Date: Mon, 18 Nov 2024 13:16:41 +0100
+Subject: [PATCH] Change OptiX function table name for OptiX 8.1 support
+
+---
+ intern/cycles/device/optix/device.cpp | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/intern/cycles/device/optix/device.cpp b/intern/cycles/device/optix/device.cpp
+index 60a1dbfe4e3..c8608ab5d75 100644
+--- a/intern/cycles/device/optix/device.cpp
++++ b/intern/cycles/device/optix/device.cpp
+@@ -21,12 +21,16 @@
+ # include <optix_function_table_definition.h>
+ #endif
+
++#ifndef OPTIX_FUNCTION_TABLE_SYMBOL
++# define OPTIX_FUNCTION_TABLE_SYMBOL g_optixFunctionTable
++#endif
++
+ CCL_NAMESPACE_BEGIN
+
+ bool device_optix_init()
+ {
+ #ifdef WITH_OPTIX
+- if (g_optixFunctionTable.optixDeviceContextCreate != NULL) {
++ if (OPTIX_FUNCTION_TABLE_SYMBOL.optixDeviceContextCreate != NULL) {
+ /* Already initialized function table. */
+ return true;
+ }
+--
+2.47.2
+
diff --git a/media-gfx/blender/files/blender-4.3.2-system-gtest.patch b/media-gfx/blender/files/blender-4.3.2-system-gtest.patch
new file mode 100644
index 000000000000..4ac21c2007bd
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.3.2-system-gtest.patch
@@ -0,0 +1,57 @@
+From 6284e504b144619411ac41092d53fc8541c84cdb Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx@gmail.com>
+Date: Tue, 15 Apr 2025 13:48:00 +0200
+Subject: [PATCH] system gtest
+
+Signed-off-by: Paul Zander <negril.nx@gmail.com>
+
+diff --git a/extern/CMakeLists.txt b/extern/CMakeLists.txt
+index 418d2255a75..6b5cd31f9b7 100644
+--- a/extern/CMakeLists.txt
++++ b/extern/CMakeLists.txt
+@@ -77,12 +77,14 @@ if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
+ if(NOT WITH_SYSTEM_GFLAGS)
+ add_subdirectory(gflags)
+ endif()
+- add_subdirectory(glog)
++ if(NOT WITH_SYSTEM_GLOG)
++ add_subdirectory(glog)
++ endif()
+ endif()
+
+-if(WITH_GTESTS)
+- add_subdirectory(gtest)
+- add_subdirectory(gmock)
++if(WITH_GTESTS AND NOT WITH_SYSTEM_GTEST)
++ add_subdirectory(gtest)
++ add_subdirectory(gmock)
+ endif()
+
+ if(WITH_AUDASPACE AND NOT WITH_SYSTEM_AUDASPACE)
+diff --git a/intern/libmv/CMakeLists.txt b/intern/libmv/CMakeLists.txt
+index 965d0028020..825c2141f5a 100644
+--- a/intern/libmv/CMakeLists.txt
++++ b/intern/libmv/CMakeLists.txt
+@@ -34,6 +34,7 @@ if(WITH_LIBMV)
+ ${GLOG_INCLUDE_DIRS}
+ ../guardedalloc
+ )
++ list(REMOVE_DUPLICATES INC)
+
+ list(APPEND INC_SYS
+ ${EIGEN3_INCLUDE_DIRS}
+diff --git a/tests/gtests/testing/CMakeLists.txt b/tests/gtests/testing/CMakeLists.txt
+index ff7f6905836..d46b1d65174 100644
+--- a/tests/gtests/testing/CMakeLists.txt
++++ b/tests/gtests/testing/CMakeLists.txt
+@@ -13,6 +13,7 @@ set(INC
+ ${GFLAGS_INCLUDE_DIRS}
+ ../../../extern/gtest/include
+ )
++list(REMOVE_DUPLICATES INC)
+
+ set(INC_SYS
+ )
+--
+2.49.0
+
diff --git a/media-gfx/blender/files/blender-4.4.0-optix-compile-flags.patch b/media-gfx/blender/files/blender-4.4.0-optix-compile-flags.patch
new file mode 100644
index 000000000000..39c1383f52e0
--- /dev/null
+++ b/media-gfx/blender/files/blender-4.4.0-optix-compile-flags.patch
@@ -0,0 +1,43 @@
+From 6e8072c20d37f2ba4b0eaded448d21ffa6f073a1 Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx@gmail.com>
+Date: Mon, 21 Apr 2025 17:49:59 +0200
+Subject: [PATCH] optix compile flags
+
+Copy CUDA_HOST_COMPILER logic from cuda to optix
+
+pass CUDA_NVCC_FLAGS into the custom nvcc call for optix, as for
+WITH_CYCLES_CUDA_BINARIES
+use CYCLES_CUDA_BINARIES_ARCH for optix instead of sm_50
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+Signed-off-by: Paul Zander <negril.nx@gmail.com>
+
+diff --git a/intern/cycles/kernel/CMakeLists.txt b/intern/cycles/kernel/CMakeLists.txt
+index 6144de7be33..a59d6dd2b7e 100644
+--- a/intern/cycles/kernel/CMakeLists.txt
++++ b/intern/cycles/kernel/CMakeLists.txt
+@@ -943,6 +943,11 @@ if(WITH_CYCLES_DEVICE_OPTIX AND WITH_CYCLES_CUDA_BINARIES)
+ -Wno-deprecated-gpu-targets
+ -o ${output})
+
++ if(CUDA_HOST_COMPILER)
++ set(cuda_flags ${cuda_flags}
++ -ccbin="${CUDA_HOST_COMPILER}")
++ endif()
++
+ if(WITH_NANOVDB)
+ set(cuda_flags ${cuda_flags}
+ -D WITH_NANOVDB)
+@@ -969,7 +974,8 @@ if(WITH_CYCLES_DEVICE_OPTIX AND WITH_CYCLES_CUDA_BINARIES)
+ COMMAND
+ ${CUDA_NVCC_EXECUTABLE}
+ --ptx
+- -arch=sm_50
++ -arch=${CYCLES_CUDA_BINARIES_ARCH}
++ ${CUDA_NVCC_FLAGS}
+ ${cuda_flags}
+ ${input}
+ WORKING_DIRECTORY
+--
+2.49.0
+
diff --git a/media-gfx/blender/metadata.xml b/media-gfx/blender/metadata.xml
index 7dd271da5727..291ca289c5eb 100644
--- a/media-gfx/blender/metadata.xml
+++ b/media-gfx/blender/metadata.xml
@@ -47,14 +47,11 @@
This makes it so that the user doesn't have to wait for the kernels to compile when they are used for the first time in Blender.
If this option is not on, they will be built as needed at runtime.
</flag>
- <flag name="dds">
- Adds DDS textures support to Blender.
- </flag>
<flag name="embree">
Use embree to accelerate certain areas of the Cycles render engine.
</flag>
<flag name="experimental">
- Build Experimental Blender Modules
+ Enable experimental features
</flag>
<flag name="fluid">
Adds fluid simulation support via the built-in Mantaflow library.
@@ -66,7 +63,7 @@
Enable NDOF input devices (SpaceNavigator and friends).
</flag>
<flag name="oidn">Enable OpenImageDenoiser Support</flag>
- <flag name="oneapi">Build OIDN with Intel oneAPI SyCL support</flag>
+ <flag name="oneapi">Build cycles renderer with Intel oneAPI SyCL support</flag>
<flag name="openpgl">Enable path guiding support in Cycles</flag>
<flag name="opensubdiv">
Add rendering support form OpenSubdiv from Dreamworks Animation
@@ -81,6 +78,9 @@
<flag name="osl">
Add support for OpenShadingLanguage scripting.
</flag>
+ <flag name="pipewire">
+ Enable Pipewire for audio support on Linux
+ </flag>
<flag name="potrace">
Add support for converting bitmaps into Grease pencil line using the potrace library.
</flag>
diff --git a/media-libs/babl/babl-0.1.112.ebuild b/media-libs/babl/babl-0.1.112.ebuild
index 6d34eba7f124..4258a993878e 100644
--- a/media-libs/babl/babl-0.1.112.ebuild
+++ b/media-libs/babl/babl-0.1.112.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 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv -sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
fi
DESCRIPTION="A dynamic, any to any, pixel format conversion library"
diff --git a/media-libs/gegl/gegl-0.4.58.ebuild b/media-libs/gegl/gegl-0.4.58.ebuild
index fdcf52767863..19a44f4d3f05 100644
--- a/media-libs/gegl/gegl-0.4.58.ebuild
+++ b/media-libs/gegl/gegl-0.4.58.ebuild
@@ -14,7 +14,7 @@ if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/gegl.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 ~x86 ~amd64-linux ~x86-linux"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="A graph based image processing framework"
diff --git a/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild b/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild
index 41e988090350..fd21bc144cf0 100644
--- a/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild
+++ b/media-libs/libdisplay-info/libdisplay-info-0.2.0-r1.ebuild
@@ -13,7 +13,7 @@ SRC_URI="https://gitlab.freedesktop.org/emersion/${PN}/-/releases/${PV}/download
LICENSE="MIT"
SLOT="0/2"
-KEYWORDS="~amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
+KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
BDEPEND="
${PYTHON_DEPS}
diff --git a/media-libs/libheif/libheif-1.19.7.ebuild b/media-libs/libheif/libheif-1.19.7.ebuild
index 0a9b2d54af0e..8d41fa183ec0 100644
--- a/media-libs/libheif/libheif-1.19.7.ebuild
+++ b/media-libs/libheif/libheif-1.19.7.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == *9999* ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/strukturag/libheif/releases/download/v${PV}/${P}.tar.gz"
- KEYWORDS="~amd64 ~arm arm64 ~loong ppc64 ~riscv ~x86"
+ KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv x86"
fi
LICENSE="GPL-3 MIT"
diff --git a/media-libs/osl/Manifest b/media-libs/osl/Manifest
index 8cdddaf497e7..8f0a6b49b9de 100644
--- a/media-libs/osl/Manifest
+++ b/media-libs/osl/Manifest
@@ -1,3 +1,2 @@
-DIST osl-1.12.14.0.tar.gz 20555853 BLAKE2B 4f6bc2084e4c1b25e707a37830961f20926e6ab5cb915c763cbd8126127e70f6368832077729ab5e044f573e8c38c4afb413eff8adccee5ea1ae96cb9be43b6e SHA512 51641e58fb0bba042853e3976c104decc788f1b1d3ec2e33a3f5504b11b05950dc38766ffb066b0f76edc4e0a8829d6b7dd408d9288b74d69380395b1d991bd5
DIST osl-1.13.10.0.tar.gz 21776721 BLAKE2B 6b40adcf50403292003ae8216e60328d5af6d25bf22cd241aeb4f99b1d39c628c78fe1bc8372226c984ca38b6e08427525f12dc38e5b6d3355de02cbc71f1b7b SHA512 f005b8797a7bb882bcdf4fd644551d42c150956baa8dd9deff39ff1121321f33b8e144a9a96ac940ae6bf60985c6131457131baa87c73c2b498298aaa77c3c7d
DIST osl-1.13.12.0.tar.gz 21824352 BLAKE2B 0d5c1d166afc347a515187c34d60c0a2be99e8a1b7078a388190f2232ee545654e3c1fea829dfabb7b0a105d69d3d98cc5dae4fa8f4db1a2228f9f258b34e76b SHA512 152a1b085c4ea88c86bc0ccbd694b848b9f50bd91f1a165899c2c3999042e413e54cdfb83dd90ea23daeeb2a3b65f794b8b2c19e9629bbda266971dcd6e3b5e7
diff --git a/media-libs/osl/osl-1.12.14.0-r3.ebuild b/media-libs/osl/osl-1.12.14.0-r3.ebuild
deleted file mode 100644
index 3c10bb94111b..000000000000
--- a/media-libs/osl/osl-1.12.14.0-r3.ebuild
+++ /dev/null
@@ -1,420 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-# Check this on updates
-LLVM_COMPAT=( {15..15} )
-
-inherit cmake flag-o-matic llvm-r1 toolchain-funcs python-single-r1
-
-DESCRIPTION="Advanced shading language for production GI renderers"
-HOMEPAGE="https://www.imageworks.com/technology/opensource https://github.com/AcademySoftwareFoundation/OpenShadingLanguage"
-
-if [[ ${PV} = *9999* ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/AcademySoftwareFoundation/OpenShadingLanguage.git"
-else
- # If a development release, please don't keyword!
- SRC_URI="https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~ppc64"
- S="${WORKDIR}/OpenShadingLanguage-${PV}"
-fi
-
-LICENSE="BSD"
-SLOT="0/$(ver_cut 1-2)" # based on SONAME
-
-X86_CPU_FEATURES=(
- sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4.1 sse4_2:sse4.2
- avx:avx avx2:avx2 avx512f:avx512f f16c:f16c
-)
-CPU_FEATURES=( "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" )
-
-IUSE="debug doc gui libcxx nofma partio test ${CPU_FEATURES[*]%:*} python"
-
-RESTRICT="!test? ( test )"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RDEPEND="
- dev-libs/boost:=
- dev-libs/pugixml
- >=media-libs/openimageio-2.4:=
- $(llvm_gen_dep '
- llvm-core/clang:${LLVM_SLOT}=
- llvm-core/llvm:${LLVM_SLOT}=
- ')
- python? (
- ${PYTHON_DEPS}
- $(python_gen_cond_dep '
- dev-python/pybind11[${PYTHON_USEDEP}]
- media-libs/openimageio[python,${PYTHON_SINGLE_USEDEP}]
- ')
- )
- partio? ( media-libs/partio )
- gui? (
- dev-qt/qtbase:6[gui,widgets,opengl]
- )
-"
-
-DEPEND="${RDEPEND}
- dev-util/patchelf
- >=media-libs/openexr-3
- sys-libs/zlib
- test? (
- media-fonts/droid
- )
-"
-BDEPEND="
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-boost-config.patch"
- "${FILESDIR}/${PN}-oslfile.patch"
- "${FILESDIR}/${PN}-include-cstdint.patch"
- "${FILESDIR}/${PN}-1.12.14.0-libfmt11.patch"
- "${FILESDIR}/${PN}-1.12.14.0-m_dz.patch"
-)
-
-pkg_setup() {
- llvm-r1_pkg_setup
-
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- sed -e "/^install.*llvm_macros.cmake.*cmake/d" -i CMakeLists.txt || die
-
- cmake_src_prepare
-}
-
-src_configure() {
- # -Werror=lto-type-mismatch
- # https://bugs.gentoo.org/875836
- # https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/issues/1810
- filter-lto
-
- # pick the highest we support
- local mysimd=()
- if use cpu_flags_x86_avx512f; then
- mysimd+=( avx512f )
- elif use cpu_flags_x86_avx2 ; then
- mysimd+=( avx2 )
- if use cpu_flags_x86_f16c ; then
- mysimd+=( f16c )
- fi
- elif use cpu_flags_x86_avx ; then
- mysimd+=( avx )
- elif use cpu_flags_x86_sse4_2 ; then
- mysimd+=( sse4.2 )
- elif use cpu_flags_x86_sse4_1 ; then
- mysimd+=( sse4.1 )
- elif use cpu_flags_x86_ssse3 ; then
- mysimd+=( ssse3 )
- elif use cpu_flags_x86_sse3 ; then
- mysimd+=( sse3 )
- elif use cpu_flags_x86_sse2 ; then
- mysimd+=( sse2 )
- fi
-
- local mybatched=()
- if use cpu_flags_x86_avx512f || use cpu_flags_x86_avx2 ; then
- if use cpu_flags_x86_avx512f ; then
- if use nofma; then
- mybatched+=(
- "b8_AVX512_noFMA"
- "b16_AVX512_noFMA"
- )
- fi
- mybatched+=(
- "b8_AVX512"
- "b16_AVX512"
- )
- fi
- if use cpu_flags_x86_avx2 ; then
- if use nofma; then
- mybatched+=(
- "b8_AVX2_noFMA"
- )
- fi
- mybatched+=(
- "b8_AVX2"
- )
- fi
- fi
- if use cpu_flags_x86_avx ; then
- mybatched+=(
- "b8_AVX"
- )
- fi
-
- # If no CPU SIMDs were used, completely disable them
- [[ -z "${mysimd[*]}" ]] && mysimd=("0")
- [[ -z "${mybatched[*]}" ]] && mybatched=("0")
-
- # This is currently needed on arm64 to get the NEON SIMD wrapper to compile the code successfully
- # Even if there are no SIMD features selected, it seems like the code will turn on NEON support if it is available.
- use arm64 && append-flags -flax-vector-conversions
-
- local gcc
- gcc="$(tc-getCC)"
-
- local mycmakeargs=(
- -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # BUG FindCUDA
- -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # BUG FindPythonInterp
-
- # std::tuple_size_v is c++17
- -DCMAKE_CXX_STANDARD="17"
-
- -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}"
- -DINSTALL_DOCS="$(usex doc)"
- -DUSE_CCACHE="no"
- -DLLVM_STATIC="no"
- -DOSL_BUILD_TESTS="$(usex test)"
- -DSTOP_ON_WARNING="no"
- -DUSE_PARTIO="$(usex partio)"
- -DUSE_PYTHON="$(usex python)"
- -DUSE_SIMD="$(IFS=","; echo "${mysimd[*]}")"
- -DUSE_BATCHED="$(IFS=","; echo "${mybatched[*]}")"
- -DUSE_LIBCPLUSPLUS="$(usex libcxx)"
- -DUSE_OPTIX="no"
- -DUSE_QT="$(usex gui)"
-
- -DOpenImageIO_ROOT="${EPREFIX}/usr"
- )
-
- if use debug; then
- mycmakeargs+=(
- -DVEC_REPORT="yes"
- )
- fi
-
- if use partio; then
- mycmakeargs+=(
- -Dpartio_DIR="${EPREFIX}/usr"
- )
- fi
-
- if use python; then
- mycmakeargs+=(
- "-DPYTHON_VERSION=${EPYTHON#python}"
- "-DPYTHON_SITE_DIR=$(python_get_sitedir)"
- )
- fi
-
- cmake_src_configure
-}
-
-src_test() {
- # A bunch of tests only work when installed.
- # So install them into the temp directory now.
- DESTDIR="${T}" cmake_build install
-
- ln -s "${CMAKE_USE_DIR}/src/cmake/" "${BUILD_DIR}/src/cmake" || die
-
- CMAKE_SKIP_TESTS=(
- "-broken$"
- "^render"
-
- # outright fail
- "^color$"
- "^color.opt$"
- "^color.batched$"
- "^color.batched.opt$"
- "^matrix.batched.opt$"
- "^osl-imageio"
- "^spline-reg.regress.batched.opt$"
- "^transform-reg.regress.batched.opt$"
- )
-
- # These only fail inside sandbox
- if [[ "${OSL_OPTIONAL_TESTS}" != "true" ]]; then
- CMAKE_SKIP_TESTS+=(
- # TODO: investigate failures
- # SIGABRT similar to https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/issues/1363
- "^andor-reg.regress.batched.opt$"
- "^arithmetic-reg.regress.batched.opt$"
- "^array-assign-reg.regress.batched.opt$"
- "^array-length-reg.regress.batched$"
- "^closure.batched$"
- "^closure.batched.opt$"
- "^closure-parameters.batched$"
- "^closure-parameters.batched.opt$"
- "^debug-uninit$"
- "^debug-uninit.opt$"
- "^debug-uninit.batched$"
- "^debug-uninit.batched.opt$"
- "^derivs$"
- "^derivs.opt$"
- "^derivs.batched$"
- "^derivs.batched.opt$"
- "^filterwidth-reg.regress.batched.opt$"
- "^geomath.opt$"
- "^geomath.batched$"
- "^geomath.batched.opt$"
- "^getattribute-camera.batched$"
- "^getattribute-camera.batched.opt$"
- "^getattribute-shader.batched.opt$"
- "^gettextureinfo.batched$"
- "^gettextureinfo-reg.regress.batched.opt$"
- "^hyperb.opt$"
- "^hyperb.batched.opt$"
- "^ieee_fp-reg.regress.batched.opt$"
- "^initlist.batched$"
- "^initlist.batched.opt$"
- "^isconnected.batched$"
- "^linearstep.batched$"
- "^linearstep.batched.opt$"
- "^loop.batched$"
- "^loop.batched.opt$"
- "^matrix$"
- "^matrix.opt$"
- "^matrix.batched$"
- "^matrix-compref-reg.regress.batched.opt$"
- "^message-no-closure.batched$"
- "^message-no-closure.batched.opt$"
- "^message-reg.regress.batched.opt$"
- "^miscmath$"
- "^miscmath.opt$"
- "^miscmath.batched$"
- "^miscmath.batched.opt$"
- "^noise.batched$"
- "^noise-cell.batched$"
- "^noise-gabor.batched$"
- "^noise-gabor.batched.opt$"
- "^noise-gabor-reg.regress.batched.opt$"
- "^noise-generic.batched$"
- "^noise-generic.batched.opt$"
- "^noise-perlin.batched$"
- "^noise-perlin.batched.opt$"
- "^noise-simplex.batched$"
- "^noise-simplex.batched.opt$"
- "^noise-reg.regress.batched.opt$"
- "^pnoise.batched$"
- "^pnoise-cell.batched$"
- "^pnoise-gabor.batched$"
- "^pnoise-gabor.batched.opt$"
- "^pnoise-generic.batched$"
- "^pnoise-generic.batched.opt$"
- "^pnoise-perlin.batched$"
- "^pnoise-perlin.batched.opt$"
- "^pnoise-reg.regress.batched.opt$"
- "^opt-warnings.batched$"
- "^opt-warnings.batched.opt$"
- "^regex-reg.regress.batched.opt$"
- "^select.batched$"
- "^select.batched.opt$"
- "^shaderglobals.batched$"
- "^shaderglobals.batched.opt$"
- "^smoothstep-reg.regress.batched.opt$"
- "^spline.batched$"
- "^spline.batched.opt$"
- "^splineinverse-ident.batched$"
- "^splineinverse-ident.batched.opt$"
- "^spline-derivbug.batched$"
- "^spline-derivbug.batched.opt$"
- "^split-reg.regress.batched.opt$"
- "^string.batched$"
- "^string.batched.opt$"
- "^string-reg.regress.batched.opt$"
- "^struct.batched$"
- "^struct-array-mixture.batched$"
- "^struct-array-mixture.batched.opt$"
- "^texture-environment-opts-reg.regress.batched.opt$"
- "^texture-opts-reg.regress.batched.opt$"
- "^texture-wrap.batched$"
- "^texture-wrap.batched.opt$"
- "^transcendental-reg.regress.batched.opt$"
- "^transform$"
- "^transform.opt$"
- "^transform.batched$"
- "^transform.batched.opt$"
- "^transformc$"
- "^transformc.opt$"
- "^transformc.batched$"
- "^transformc.batched.opt$"
- "^trig$"
- "^trig.opt$"
- "^trig.batched$"
- "^trig.batched.opt$"
- "^trig-reg.regress.batched.opt$"
- "^vecctr.batched$"
- "^vecctr.batched.opt$"
- "^vector-reg.regress.batched.opt$"
- "^xml-reg.regress.batched.opt$"
- "^gettextureinfo-udim.batched$"
- "^gettextureinfo-udim.batched.opt$"
- "^gettextureinfo-udim-reg.regress.batched.opt$"
- "^pointcloud.batched$"
- "^pointcloud.batched.opt$"
- )
- fi
-
- myctestargs=(
- # src/build-scripts/ci-test.bash
- '--force-new-ctest-process'
- )
-
- local -x DEBUG CXXFLAGS LD_LIBRARY_PATH DIR OSL_DIR OSL_SOURCE_DIR PYTHONPATH
- DEBUG=1 # doubles the floating point tolerance so we avoid FMA related issues
- CXXFLAGS="-I${T}/usr/include"
- LD_LIBRARY_PATH="${T}/usr/$(get_libdir)"
- OSL_DIR="${T}/usr/$(get_libdir)/cmake/OSL"
- OSL_SOURCE_DIR="${S}"
-
- if use python; then
- PYTHONPATH="${BUILD_DIR}/lib/python/site-packages"
- fi
-
- cmake_src_test
-
- einfo ""
- einfo "testing render tests in isolation"
- einfo ""
-
- CMAKE_SKIP_TESTS=(
- "^render-background$"
- "^render-bumptest$"
- "^render-mx-furnace-sheen$"
- "^render-mx-burley-diffuse$"
- "^render-mx-conductor$"
- "^render-mx-generalized-schlick-glass$"
- "^render-microfacet$"
- "^render-oren-nayar$"
- "^render-veachmis$"
- "^render-ward$"
- "^render-raytypes.opt$"
- )
-
- myctestargs=(
- # src/build-scripts/ci-test.bash
- '--force-new-ctest-process'
- --repeat until-pass:10
- -R "^render"
- )
-
- cmake_src_test
-}
-
-src_install() {
- cmake_src_install
-
- if use test; then
- rm \
- "${ED}/usr/bin/test"{render,shade{,_dso}} \
- "${ED}/usr/$(get_libdir)/libtestshade.so"* \
- || die
- fi
-
- if use amd64; then
- find "${ED}/usr/$(get_libdir)" -type f -name 'lib_*_oslexec.so' -print0 \
- | while IFS= read -r -d $'\0' batched_lib; do
- patchelf --set-soname "$(basename "${batched_lib}")" "${batched_lib}" || die
- done
- fi
-}
diff --git a/media-libs/osl/osl-1.13.10.0-r1.ebuild b/media-libs/osl/osl-1.13.10.0-r1.ebuild
index 6c1a7da63ac8..deb980c63630 100644
--- a/media-libs/osl/osl-1.13.10.0-r1.ebuild
+++ b/media-libs/osl/osl-1.13.10.0-r1.ebuild
@@ -6,7 +6,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
# Check this on updates
-LLVM_COMPAT=( {15..18} )
+LLVM_COMPAT=( {18..19} )
inherit cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1
diff --git a/media-libs/osl/osl-1.13.12.0-r1.ebuild b/media-libs/osl/osl-1.13.12.0-r1.ebuild
index 788327255404..baa3750f1b29 100644
--- a/media-libs/osl/osl-1.13.12.0-r1.ebuild
+++ b/media-libs/osl/osl-1.13.12.0-r1.ebuild
@@ -6,7 +6,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
# Check this on updates
-LLVM_COMPAT=( {15..19} )
+LLVM_COMPAT=( {18..19} )
inherit cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1
diff --git a/media-libs/osl/osl-9999.ebuild b/media-libs/osl/osl-9999.ebuild
index 788327255404..baa3750f1b29 100644
--- a/media-libs/osl/osl-9999.ebuild
+++ b/media-libs/osl/osl-9999.ebuild
@@ -6,7 +6,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{9,10,11,12,13} )
# Check this on updates
-LLVM_COMPAT=( {15..19} )
+LLVM_COMPAT=( {18..19} )
inherit cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1
diff --git a/media-libs/qhull/Manifest b/media-libs/qhull/Manifest
index 41ebf139f0f4..62bc98974dae 100644
--- a/media-libs/qhull/Manifest
+++ b/media-libs/qhull/Manifest
@@ -1 +1,2 @@
DIST qhull-2020.2.tar.gz 1307213 BLAKE2B db11d4b83124da3ceed95e1eb81c280ac55c871c83acd4c371f9716b57a1777105891a073282789c7a80b5d74e85164996fbe4f2140c8371bca5926eab4adbc2 SHA512 88f50c2a968f56deec61772490617cc877b0ca2d804954ade08297b9bab826076db6b960d6f1feb21c6851e5328cb11c6dd565666517fa78a3d65b901848ff36
+DIST qhull-8.1_alpha4.tar.gz 1310396 BLAKE2B 40cc44440e5ce5a02a227c5674624858d312295a77e00eab53af299b25a8d26a83711fa79959f0e2458cb389844b1c12b95fcdf289ffe8a4c15bb284d9e2452c SHA512 96f2c395e7259f7698f54a7d6c0e0101a8d5d2fc739de3634aa320890cd77cad716305ddf5802c7032b3e9b0b3ef18cd4ecc27ebb6a9a1ad0b308ddf6a0ceacb
diff --git a/media-libs/qhull/files/qhull-2020.2.8.1_alpha4-update-version-alpha3.patch b/media-libs/qhull/files/qhull-2020.2.8.1_alpha4-update-version-alpha3.patch
new file mode 100644
index 000000000000..0d649bcb27ee
--- /dev/null
+++ b/media-libs/qhull/files/qhull-2020.2.8.1_alpha4-update-version-alpha3.patch
@@ -0,0 +1,55 @@
+From de434688d500204b979c0bcc6703a9cfb589c9a9 Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx@gmail.com>
+Date: Tue, 8 Apr 2025 17:48:40 +0200
+Subject: [PATCH] update version alpha3
+
+Signed-off-by: Paul Zander <negril.nx@gmail.com>
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bd556a0..1690b96 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -74,8 +74,8 @@ project(qhull)
+ # Define qhull_VERSION in README.txt, Announce.txt, qh-get.htm, CMakeLists.txt
+ # qhull-zip.sh (twice), qhull-wiki.md, qhull-news.htm, File_id.diz, index.htm
+ # qhull-warn.pri (VERSION), qhull-exports.def (VERSION), qhull_p-exports.def, qhull_r-exports.def
+-set(qhull_VERSION2 "2020.2 2023/01/02") # not used, See global.c, global_r.c, rbox.c, rbox_r.c
+-set(qhull_VERSION "8.1-alpha3") # Advance every release
++set(qhull_VERSION2 "2020.2 2024/07/22") # not used, See global.c, global_r.c, rbox.c, rbox_r.c
++set(qhull_VERSION "8.1-alpha4") # Advance every release
+
+ # SOVERSION -- qhull 2003 = empty, 2009 = 5, 2010-2012 = 6, 2015-2019 = 7, 2020 = 8.0
+ # Increase SOVERSION if ABI breaks (abi-compliance-checker)
+diff --git a/src/libqhull/global.c b/src/libqhull/global.c
+index a3ded46..fef32f4 100644
+--- a/src/libqhull/global.c
++++ b/src/libqhull/global.c
+@@ -47,8 +47,8 @@ qhT qh_qh; /* all global variables.
+ recompile user_eg.c, rbox.c, libqhull.c, qconvex.c, qdelaun.c qvoronoi.c, qhalf.c, testqset.c
+ */
+
+-const char qh_version[]= "2020.2 2023/01/02";
+-const char qh_version2[]= "qhull 8.1-alpha3 (2020.2 2023/01/02)";
++const char qh_version[]= "2020.2 2024/07/22";
++const char qh_version2[]= "qhull 8.1-alpha4 (2020.2 2024/07/22)";
+
+ /*-<a href="qh-globa.htm#TOC"
+ >-------------------------------</a><a name="appendprint">-</a>
+diff --git a/src/libqhull_r/global_r.c b/src/libqhull_r/global_r.c
+index 3a5c7c7..889585a 100644
+--- a/src/libqhull_r/global_r.c
++++ b/src/libqhull_r/global_r.c
+@@ -39,8 +39,8 @@
+ recompile user_eg_r.c, rbox_r.c, libqhull_r.c, qconvex_r.c, qdelaun_r.c qvoronoi_r.c, qhalf_r.c, testqset_r.c
+ */
+
+-const char qh_version[]= "2020.2.r 2023/01/02";
+-const char qh_version2[]= "qhull_r 8.1-alpha3 (2020.2.r 2023/01/02)";
++const char qh_version[]= "2020.2.r 2024/07/22";
++const char qh_version2[]= "qhull_r 8.1-alpha4 (2020.2.r 2024/07/22)";
+
+ /*-<a href="qh-globa_r.htm#TOC"
+ >-------------------------------</a><a name="appendprint">-</a>
+--
+2.49.0
+
diff --git a/media-libs/qhull/metadata.xml b/media-libs/qhull/metadata.xml
index fb4189839168..16f814120840 100644
--- a/media-libs/qhull/metadata.xml
+++ b/media-libs/qhull/metadata.xml
@@ -20,5 +20,8 @@
<upstream>
<bugs-to>https://github.com/qhull/qhull/issues</bugs-to>
</upstream>
+ <use>
+ <flag name="tools">Build applications</flag>
+ </use>
<origin>gentoo-staging</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/media-libs/qhull/qhull-2020.2-r3.ebuild b/media-libs/qhull/qhull-2020.2-r3.ebuild
index aa4250b2493e..de63f451771b 100644
--- a/media-libs/qhull/qhull-2020.2-r3.ebuild
+++ b/media-libs/qhull/qhull-2020.2-r3.ebuild
@@ -9,8 +9,8 @@ DESCRIPTION="Geometry library"
HOMEPAGE="http://www.qhull.org"
SRC_URI="https://github.com/qhull/qhull/archive/${PV}.tar.gz -> ${P}.tar.gz"
-SLOT="0/8"
LICENSE="BSD"
+SLOT="0/8"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos"
IUSE="doc static-libs"
diff --git a/media-libs/qhull/qhull-2020.2.8.1_alpha4.ebuild b/media-libs/qhull/qhull-2020.2.8.1_alpha4.ebuild
new file mode 100644
index 000000000000..0e82b669ed30
--- /dev/null
+++ b/media-libs/qhull/qhull-2020.2.8.1_alpha4.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Geometry library"
+HOMEPAGE="http://www.qhull.org"
+MY_PV="$(ver_cut 3-)"
+SRC_URI="https://github.com/qhull/qhull/archive/v${MY_PV/_/.}.tar.gz -> ${PN}-${MY_PV}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV//_/.}"
+
+LICENSE="BSD"
+SLOT="0/$(ver_cut 1-2 "${MY_PV}")"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos"
+IUSE="doc static-libs tools test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( tools )"
+
+DOCS=(
+ Announce.txt
+ File_id.diz
+ README.txt
+ REGISTER.txt
+)
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2020.2-deprecated-pkgconfig.patch"
+ "${FILESDIR}/${PF}-update-version-alpha3.patch" # version string wasn't bumped in in alpha4
+)
+
+src_prepare() {
+ if ! use doc ; then
+ sed -i \
+ -e '/^install(DIRECTORY html/d' \
+ -e '/^[[:blank:]]*index.htm/d' \
+ CMakeLists.txt || die
+ fi
+
+ sed -i \
+ -e "s@lib/pkgconfig@$(get_libdir)/pkgconfig@" \
+ -e "s@lib/cmake/Qhull@$(get_libdir)/cmake/Qhull@" \
+ CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ # cmake-4 workaround
+ local -x CMAKE_POLICY_VERSION_MINIMUM="${CMAKE_POLICY_VERSION_MINIMUM:-3.10}"
+
+ local mycmakeargs=(
+ -DDOC_INSTALL_DIR="${EPREFIX}/usr/share/doc/${PF}"
+ -DLIB_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)"
+ -DLINK_APPS_SHARED="yes"
+
+ -DBUILD_APPLICATIONS="$(usex tools)"
+ -DBUILD_STATIC_LIBS="$(usex static-libs)"
+ -DQHULL_ENABLE_TESTING="$(usex test)"
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ # fix double prefix in pc files
+ sed -i "/^libdir/s@/.*@/$(get_libdir)@" "${ED}/usr/$(get_libdir)/pkgconfig/"*.pc || die
+
+ rm "${ED}/usr/$(get_libdir)/pkgconfig/qhull.pc" || die
+
+ if ! use static-libs; then
+ rm "${ED}/usr/$(get_libdir)/pkgconfig/qhull"{static,static_r,cpp}.pc || die
+ fi
+}
diff --git a/media-sound/liblc3/liblc3-1.1.3.ebuild b/media-sound/liblc3/liblc3-1.1.3.ebuild
index e38b87914b4b..34114ea0ab0d 100644
--- a/media-sound/liblc3/liblc3-1.1.3.ebuild
+++ b/media-sound/liblc3/liblc3-1.1.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/google/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm arm64 ~loong ~mips ~ppc ppc64 ~riscv ~sparc x86"
+KEYWORDS="amd64 ~arm arm64 ~loong ~mips ~ppc ppc64 ~riscv ~sparc x86"
IUSE="test tools"
RESTRICT="!test? ( test )"
diff --git a/media-sound/mac/Manifest b/media-sound/mac/Manifest
index 7b934eb58c92..a92b08c3fd42 100644
--- a/media-sound/mac/Manifest
+++ b/media-sound/mac/Manifest
@@ -1,5 +1,4 @@
DIST mac-10.87.zip 1673921 BLAKE2B 4a4d1946bcb33f742b75f1ad1d21170309ff82016eaa82104035d544c6916b5a0fb8ceff827bafb782aaea07d77c83b94c080426e5ed458e3e9d53f46a584354 SHA512 2e0ef696302d8a066e57a47df9578a922fa07f0b8a916d0bb041b4f558e4824e0cc4d2c3fa5bda2ecf22c5380780301f03af1cb4b01ba5b525b6c2616f9a0197
-DIST mac-10.96.zip 1675244 BLAKE2B ea3b32d801d0414678ac4fa698c4d10517f403e9458311d3404b5b3773ecaa5e96a83d74af5af7ffdb1c0dacb296f5cfd89e5084d920867492e39738b520e308 SHA512 fa1c9393262393b1cae1c6f2b4b02a32c47bef6f915edc60c4140a436bd0a23a3a6a73313cc93357f3bca6137c3ddb1cd50dc297c9dcb1a5e9f69b8b844b41d4
DIST mac-11.02.zip 1688977 BLAKE2B 212dcf8d736f130d3b51ebebe36ced21707dd2ed7807f358b8310382aa012a7d6a9cc2594991d129b0a0d1b0037af9196f02a1209fc85b64c3bdaea03643358e SHA512 dd84236db2c3526e6d84f732efca28a5c63d37a0db7f7bb9e83776aa382a10378f0ba0499de38cd352dc9a9df14a4d4fc3423762e25e79aa6479e5a4847957b7
DIST mac-11.08.zip 1690776 BLAKE2B e38e8a18eca0f41d7cadc80d69988fe9036fbd1089541060bb8b7b79a476023a0cd9c2343492c70e3341215f125fcf2b7e4c56fc43e39b6edf2835a503a65104 SHA512 50261ffffdcb2d73042c999365e4b00c49ddf3682223029a456f06559f3e84a75170c5e1ef739b8f29a3c208bb92684e0acd71df3806f9405a9fe01a72e119e2
DIST monkeys-audio_4.11-u4-b5-s7.orig.tar.gz 511190 BLAKE2B 28b5a3aadd9dae410c93cfc43c40c07fe207036f27cf60d59d8fa137a0327f90a78746c14930b7d3becb7f5fa69a454a6855aae1553dc74cd5168a9a523bb8f0 SHA512 7e73b35c86d6007ab2a94a2d8b7449bb4ac505bbba53e40373a279dc83a9cad5f62a51419a6375335576cf325c88ed7d317b0ef3039b8a497100cb74a63c25d0
diff --git a/media-sound/mac/mac-10.96.ebuild b/media-sound/mac/mac-10.96.ebuild
deleted file mode 100644
index d39fc2150341..000000000000
--- a/media-sound/mac/mac-10.96.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_BUILD_TYPE=Release
-inherit cmake
-
-DESCRIPTION="Monkey's Audio Codecs"
-HOMEPAGE="https://www.monkeysaudio.com"
-SRC_URI="https://monkeysaudio.com/files/MAC_${PV/.}_SDK.zip -> ${P}.zip"
-
-LICENSE="BSD"
-SLOT="0/12"
-KEYWORDS="~alpha ~amd64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-
-BDEPEND="app-arch/unzip"
-
-PATCHES=(
- "${FILESDIR}/${PN}-10.18-linux.patch"
- "${FILESDIR}/${PN}-10.52-output.patch"
-)
-
-src_unpack() {
- mkdir -p "${S}" || die
- cd "${S}" || die
- default
-}
diff --git a/metadata/md5-cache/app-admin/awscli-1.38.38 b/metadata/md5-cache/app-admin/awscli-1.38.38
new file mode 100644
index 000000000000..1709578af35a
--- /dev/null
+++ b/metadata/md5-cache/app-admin/awscli-1.38.38
@@ -0,0 +1,16 @@
+BDEPEND=test? ( dev-python/packaging[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-forked[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) test? ( >=dev-python/botocore-1.37.38[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/colorama[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/docutils[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/rsa[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/s3transfer-0.11.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pyyaml[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] !app-admin/awscli-bin >=dev-python/pytest-7.4.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-xdist[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Universal Command Line Environment for AWS
+EAPI=8
+HOMEPAGE=https://github.com/aws/aws-cli/ https://pypi.org/project/awscli/
+INHERIT=distutils-r1 shell-completion
+IUSE=test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
+KEYWORDS=~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86
+LICENSE=Apache-2.0
+RDEPEND=>=dev-python/botocore-1.37.38[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/colorama[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/docutils[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/rsa[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/s3transfer-0.11.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pyyaml[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] !app-admin/awscli-bin python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/aws/aws-cli/archive/1.38.38.tar.gz -> aws-cli-1.38.38.gh.tar.gz
+_eclasses_=bash-completion-r1 767861f3744f589ee5291c1698b1c082 distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 shell-completion 0b655d0d825e157a5e99c463bddaac16 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=6b514b6f32b83d0b1e167bf2f5e263ae
diff --git a/metadata/md5-cache/app-containers/containers-common-0.63.0 b/metadata/md5-cache/app-containers/containers-common-0.63.0
new file mode 100644
index 000000000000..270c3e7f6f81
--- /dev/null
+++ b/metadata/md5-cache/app-containers/containers-common-0.63.0
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-go/go-md2man-2.0.3
+DEFINED_PHASES=compile install postinst prepare
+DESCRIPTION=Common config files and docs for Containers stack
+EAPI=8
+HOMEPAGE=https://github.com/containers/common
+INHERIT=readme.gentoo-r1
+KEYWORDS=~amd64 ~arm64 ~loong ~riscv
+LICENSE=Apache-2.0
+RDEPEND=>=app-containers/aardvark-dns-1.12.0 >=app-containers/crun-1.17 >=app-containers/containers-image-5.32.0 >=app-containers/containers-storage-1.55.0 app-containers/containers-shortnames >=app-containers/netavark-1.12.0 net-firewall/nftables net-firewall/iptables[nftables] >=net-misc/passt-2024.09.06 >=sys-fs/fuse-overlayfs-1.14
+RESTRICT=test
+SLOT=0
+SRC_URI=https://github.com/containers/common/archive/v0.63.0.tar.gz -> containers-common-0.63.0.tar.gz
+_eclasses_=readme.gentoo-r1 b045f3acf546393ab6b3170781875358
+_md5_=50a0817c7119e105c5529b0cc6a18a4a
diff --git a/metadata/md5-cache/app-containers/podman-5.4.2 b/metadata/md5-cache/app-containers/podman-5.4.2
index 64caa286c3b4..eb6525b2c7e8 100644
--- a/metadata/md5-cache/app-containers/podman-5.4.2
+++ b/metadata/md5-cache/app-containers/podman-5.4.2
@@ -13,4 +13,4 @@ RESTRICT=test strip
SLOT=0
SRC_URI=https://github.com/containers/podman/archive/v5.4.2.tar.gz -> podman-5.4.2.tar.gz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module df32d29550d40a92da723d3b8e17b467 linux-info ea4122ba1d8791a12b78e53f9510a2e3 multiprocessing 1e32df7deee68372153dca65f4a7c21f python-any-r1 891415dfe39ad9b41b461f2b86354af0 python-utils-r1 66e890adbe1c4185d6635933f612ad49 tmpfiles 9a9814db5a3fbd4f1e921c05297e7735 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=f1444ce7db5fae8d117335d0510e0362
+_md5_=7b28b4bbc1e2470cba5de39c8a491e84
diff --git a/metadata/md5-cache/app-containers/podman-9999 b/metadata/md5-cache/app-containers/podman-9999
index d841cb6c530f..cbf0f634d886 100644
--- a/metadata/md5-cache/app-containers/podman-9999
+++ b/metadata/md5-cache/app-containers/podman-9999
@@ -12,4 +12,4 @@ RDEPEND=app-containers/catatonit >=app-containers/conmon-2.1.10 >=app-containers
RESTRICT=test strip
SLOT=0
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 git-r3 875eb471682d3e1f18da124be97dcc81 go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module df32d29550d40a92da723d3b8e17b467 linux-info ea4122ba1d8791a12b78e53f9510a2e3 multiprocessing 1e32df7deee68372153dca65f4a7c21f python-any-r1 891415dfe39ad9b41b461f2b86354af0 python-utils-r1 66e890adbe1c4185d6635933f612ad49 tmpfiles 9a9814db5a3fbd4f1e921c05297e7735 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=f1444ce7db5fae8d117335d0510e0362
+_md5_=7b28b4bbc1e2470cba5de39c8a491e84
diff --git a/metadata/md5-cache/app-emulation/wine-desktop-common-20150204-r2 b/metadata/md5-cache/app-emulation/wine-desktop-common-20150204-r2
index 540b0a9810c7..a48452d42b1b 100644
--- a/metadata/md5-cache/app-emulation/wine-desktop-common-20150204-r2
+++ b/metadata/md5-cache/app-emulation/wine-desktop-common-20150204-r2
@@ -4,10 +4,10 @@ EAPI=8
HOMEPAGE=https://github.com/NP-Hardass/wine-desktop-common https://bazaar.launchpad.net/~ubuntu-wine/wine/ubuntu-debian-dir/files/head:/debian/
IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
INHERIT=xdg
-KEYWORDS=amd64 x86
+KEYWORDS=amd64 ~arm64 x86
LICENSE=LGPL-2.1
PDEPEND=app-eselect/eselect-wine
SLOT=0
SRC_URI=https://github.com/NP-Hardass/wine-desktop-common/archive/20150204.tar.gz -> wine-desktop-common-20150204.tar.gz
_eclasses_=xdg 3ef49a87c52c8b77c476351195dfe575 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=24ea85468b426dd57ff714bb1c593038
+_md5_=fd8040544b34606e431f4d0fc82cc1aa
diff --git a/metadata/md5-cache/app-emulation/wine-staging-10.5-r1 b/metadata/md5-cache/app-emulation/wine-staging-10.5-r1
index 09e45183751d..e78b34d1ea99 100644
--- a/metadata/md5-cache/app-emulation/wine-staging-10.5-r1
+++ b/metadata/md5-cache/app-emulation/wine-staging-10.5-r1
@@ -7,7 +7,7 @@ HOMEPAGE=https://wiki.winehq.org/Wine-Staging https://gitlab.winehq.org/wine/win
IDEPEND=>=app-eselect/eselect-wine-2
INHERIT=edo optfeature python-any-r1 wine
IUSE=+X +alsa bluetooth capi cups +dbus dos llvm-libunwind ffmpeg +fontconfig +gecko gphoto2 +gstreamer kerberos +mono netapi nls odbc opencl +opengl pcap perl pulseaudio samba scanner +sdl selinux smartcard +ssl +truetype udev +unwind usb v4l +vulkan wayland +xcomposite xinerama +abi_x86_32 +abi_x86_64 crossdev-mingw custom-cflags +mingw +strip wow64
-KEYWORDS=~amd64 ~x86
+KEYWORDS=~amd64 ~arm64 ~x86
LICENSE=LGPL-2.1+ BSD BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff || ( WTFPL-2 public-domain )
RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXrender[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?] opengl? ( media-libs/libglvnd[X,abi_x86_32(-)?,abi_x86_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?] ) ) cups? ( net-print/cups[abi_x86_32(-)?,abi_x86_64(-)?] ) dbus? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?] ) fontconfig? ( media-libs/fontconfig[abi_x86_32(-)?,abi_x86_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?] ) netapi? ( net-fs/samba[abi_x86_32(-)?,abi_x86_64(-)?] ) odbc? ( dev-db/unixODBC[abi_x86_32(-)?,abi_x86_64(-)?] ) sdl? ( media-libs/libsdl2[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?] ) truetype? ( media-libs/freetype[abi_x86_32(-)?,abi_x86_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?] ) vulkan? ( media-libs/vulkan-loader[X?,wayland?,abi_x86_32(-)?,abi_x86_64(-)?] ) X? ( x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?] ) capi? ( net-libs/libcapi:=[abi_x86_32(-)?,abi_x86_64(-)?] ) ffmpeg? ( media-video/ffmpeg:=[abi_x86_32(-)?,abi_x86_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?] ) gstreamer? ( dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?] media-libs/gst-plugins-base:1.0[abi_x86_32(-)?,abi_x86_64(-)?] media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?] ) pulseaudio? ( media-libs/libpulse[abi_x86_32(-)?,abi_x86_64(-)?] ) scanner? ( media-gfx/sane-backends[abi_x86_32(-)?,abi_x86_64(-)?] ) smartcard? ( sys-apps/pcsc-lite[abi_x86_32(-)?,abi_x86_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?] ) unwind? ( llvm-libunwind? ( llvm-runtimes/libunwind[abi_x86_32(-)?,abi_x86_64(-)?] ) !llvm-libunwind? ( sys-libs/libunwind:=[abi_x86_32(-)?,abi_x86_64(-)?] ) ) usb? ( dev-libs/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?] ) wayland? ( dev-libs/wayland[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libxkbcommon[abi_x86_32(-)?,abi_x86_64(-)?] ) app-emulation/wine-desktop-common dos? ( || ( games-emulation/dosbox games-emulation/dosbox-staging ) ) gecko? ( app-emulation/wine-gecko:2.47.4[abi_x86_32(-)?,abi_x86_64(-)?] wow64? ( app-emulation/wine-gecko[abi_x86_32] ) ) gstreamer? ( media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?] ) mono? ( app-emulation/wine-mono:10.0.0 ) perl? ( dev-lang/perl dev-perl/XML-LibXML ) samba? ( net-fs/samba[winbind] ) selinux? ( sec-policy/selinux-wine )
REQUIRED_USE=X? ( truetype ) bluetooth? ( dbus ) || ( abi_x86_32 abi_x86_64 arm64 ) crossdev-mingw? ( mingw ) wow64? ( abi_x86_64 !abi_x86_32 )
@@ -15,4 +15,4 @@ RESTRICT=test
SLOT=10.5
SRC_URI=https://dl.winehq.org/wine/source/10.x/wine-10.5.tar.xz https://github.com/wine-staging/wine-staging/archive/v10.5.tar.gz -> wine-staging-10.5.tar.gz
_eclasses_=autotools f20ecf7ab0a7c34e83238b3ed4aaf6d6 edo 367e103a74bf77e6a8da7894d999fa3c flag-o-matic e8de74bac929ba17427e740e95707d00 gnuconfig ddeb9f8caff1b5f71a09c75b7534df79 libtool c81bd096be5f4c82f4e8f156ef112402 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f optfeature 538bce96e5589935b57e178e8635f301 prefix c3c4c93ebda319c0fa7ed6f942ba1010 python-any-r1 891415dfe39ad9b41b461f2b86354af0 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 wine f0db09129c9c402264dd28e6fbd22ce7 wrapper 11a2a3bd712784986679b60a0cab34a0
-_md5_=cf0de67125b5a0e7043ff6c7f20e931a
+_md5_=c6138b367992e0151ae03d1defc892d7
diff --git a/metadata/md5-cache/app-emulation/wine-vanilla-10.6 b/metadata/md5-cache/app-emulation/wine-vanilla-10.6
index 0f5bfd6cc8a9..6d800ad2f443 100644
--- a/metadata/md5-cache/app-emulation/wine-vanilla-10.6
+++ b/metadata/md5-cache/app-emulation/wine-vanilla-10.6
@@ -7,7 +7,7 @@ HOMEPAGE=https://www.winehq.org/ https://gitlab.winehq.org/wine/wine/
IDEPEND=>=app-eselect/eselect-wine-2
INHERIT=optfeature wine
IUSE=+X +alsa bluetooth capi cups +dbus dos llvm-libunwind ffmpeg +fontconfig +gecko gphoto2 +gstreamer kerberos +mono netapi nls odbc opencl +opengl pcap perl pulseaudio samba scanner +sdl selinux smartcard +ssl +truetype udev +unwind usb v4l +vulkan wayland +xcomposite xinerama +abi_x86_32 +abi_x86_64 crossdev-mingw custom-cflags +mingw +strip wow64
-KEYWORDS=~amd64 ~x86
+KEYWORDS=~amd64 ~arm64 ~x86
LICENSE=LGPL-2.1+ BSD BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff || ( WTFPL-2 public-domain )
RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXrender[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?] opengl? ( media-libs/libglvnd[X,abi_x86_32(-)?,abi_x86_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?] ) ) cups? ( net-print/cups[abi_x86_32(-)?,abi_x86_64(-)?] ) dbus? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?] ) fontconfig? ( media-libs/fontconfig[abi_x86_32(-)?,abi_x86_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?] ) netapi? ( net-fs/samba[abi_x86_32(-)?,abi_x86_64(-)?] ) odbc? ( dev-db/unixODBC[abi_x86_32(-)?,abi_x86_64(-)?] ) sdl? ( media-libs/libsdl2[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?] ) truetype? ( media-libs/freetype[abi_x86_32(-)?,abi_x86_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?] ) vulkan? ( media-libs/vulkan-loader[X?,wayland?,abi_x86_32(-)?,abi_x86_64(-)?] ) X? ( x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?] ) capi? ( net-libs/libcapi:=[abi_x86_32(-)?,abi_x86_64(-)?] ) ffmpeg? ( media-video/ffmpeg:=[abi_x86_32(-)?,abi_x86_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?] ) gstreamer? ( dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?] media-libs/gst-plugins-base:1.0[abi_x86_32(-)?,abi_x86_64(-)?] media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?] ) pulseaudio? ( media-libs/libpulse[abi_x86_32(-)?,abi_x86_64(-)?] ) scanner? ( media-gfx/sane-backends[abi_x86_32(-)?,abi_x86_64(-)?] ) smartcard? ( sys-apps/pcsc-lite[abi_x86_32(-)?,abi_x86_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?] ) unwind? ( llvm-libunwind? ( llvm-runtimes/libunwind[abi_x86_32(-)?,abi_x86_64(-)?] ) !llvm-libunwind? ( sys-libs/libunwind:=[abi_x86_32(-)?,abi_x86_64(-)?] ) ) usb? ( dev-libs/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?] ) wayland? ( dev-libs/wayland[abi_x86_32(-)?,abi_x86_64(-)?] x11-libs/libxkbcommon[abi_x86_32(-)?,abi_x86_64(-)?] ) app-emulation/wine-desktop-common dos? ( || ( games-emulation/dosbox games-emulation/dosbox-staging ) ) gecko? ( app-emulation/wine-gecko:2.47.4[abi_x86_32(-)?,abi_x86_64(-)?] wow64? ( app-emulation/wine-gecko[abi_x86_32] ) ) gstreamer? ( media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?] ) mono? ( app-emulation/wine-mono:10.0.0 ) perl? ( dev-lang/perl dev-perl/XML-LibXML ) samba? ( net-fs/samba[winbind] ) selinux? ( sec-policy/selinux-wine )
REQUIRED_USE=X? ( truetype ) bluetooth? ( dbus ) || ( abi_x86_32 abi_x86_64 arm64 ) crossdev-mingw? ( mingw ) wow64? ( abi_x86_64 !abi_x86_32 )
@@ -15,4 +15,4 @@ RESTRICT=test
SLOT=10.6
SRC_URI=https://dl.winehq.org/wine/source/10.x/wine-10.6.tar.xz
_eclasses_=autotools f20ecf7ab0a7c34e83238b3ed4aaf6d6 flag-o-matic e8de74bac929ba17427e740e95707d00 gnuconfig ddeb9f8caff1b5f71a09c75b7534df79 libtool c81bd096be5f4c82f4e8f156ef112402 multilib b2a329026f2e404e9e371097dda47f96 optfeature 538bce96e5589935b57e178e8635f301 prefix c3c4c93ebda319c0fa7ed6f942ba1010 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 wine f0db09129c9c402264dd28e6fbd22ce7 wrapper 11a2a3bd712784986679b60a0cab34a0
-_md5_=78e23629f810f0fa30368c5fef473926
+_md5_=dd67838bfca874928462726d1c1f3842
diff --git a/metadata/md5-cache/app-eselect/eselect-wine-2.0.2-r2 b/metadata/md5-cache/app-eselect/eselect-wine-2.0.2-r2
index 48adb29aac42..f58d163d8632 100644
--- a/metadata/md5-cache/app-eselect/eselect-wine-2.0.2-r2
+++ b/metadata/md5-cache/app-eselect/eselect-wine-2.0.2-r2
@@ -4,10 +4,10 @@ EAPI=8
HOMEPAGE=https://wiki.gentoo.org/wiki/Project:Wine
INHERIT=eapi9-ver
IUSE=+xdg
-KEYWORDS=amd64 x86
+KEYWORDS=amd64 ~arm64 x86
LICENSE=GPL-2+
RDEPEND=app-admin/eselect xdg? ( x11-misc/xdg-utils )
SLOT=0
SRC_URI=https://gitweb.gentoo.org/proj/eselect-wine.git/snapshot/eselect-wine-2.0.2.tar.bz2
_eclasses_=eapi9-ver 6a71fa30cdb3fe445114fdeab156c1f0
-_md5_=d22ad7722d6cfdc4f2a58e2eb1cc5856
+_md5_=1512083eca518e1303f0e8649736c153
diff --git a/metadata/md5-cache/app-misc/broot-1.45.0 b/metadata/md5-cache/app-misc/broot-1.45.0
index c92da1b37394..5753ee493671 100644
--- a/metadata/md5-cache/app-misc/broot-1.45.0
+++ b/metadata/md5-cache/app-misc/broot-1.45.0
@@ -6,10 +6,10 @@ EAPI=8
HOMEPAGE=https://dystroy.org/broot/ https://github.com/Canop/broot
INHERIT=cargo shell-completion
IUSE=X debug
-KEYWORDS=~amd64
+KEYWORDS=amd64
LICENSE=Apache-2.0 Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD Boost-1.0 LGPL-3+ MIT MPL-2.0 UoI-NCSA Unicode-3.0 ZLIB
RDEPEND=dev-db/sqlite:3 dev-libs/libgit2:= sys-libs/zlib X? ( x11-libs/libxcb:= )
SLOT=0
SRC_URI=https://github.com/Canop/broot/archive/v1.45.0.tar.gz -> broot-1.45.0.tar.gz https://github.com/gentoo-crate-dist/broot/releases/download/v1.45.0/broot-1.45.0-crates.tar.xz
_eclasses_=bash-completion-r1 767861f3744f589ee5291c1698b1c082 cargo df2b134de0bbaddf4c0d660969d80029 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f rust e9d31591b9b0251018cd5c60a43bafa1 rust-toolchain 76468983281b0a7fc167ca224f84ecfd shell-completion 0b655d0d825e157a5e99c463bddaac16 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=233b91c64ad3059efc0d588195d4a14e
+_md5_=e95c9a75b654538c179cf2bcc567a323
diff --git a/metadata/md5-cache/dev-ada/gnatcoll-bindings-25.0.0 b/metadata/md5-cache/dev-ada/gnatcoll-bindings-25.0.0
index 900e8bf8fb03..ab3d3ee8aff9 100644
--- a/metadata/md5-cache/dev-ada/gnatcoll-bindings-25.0.0
+++ b/metadata/md5-cache/dev-ada/gnatcoll-bindings-25.0.0
@@ -5,11 +5,11 @@ EAPI=8
HOMEPAGE=https://github.com/AdaCore/gnatcoll-bindings/
INHERIT=ada multiprocessing python-single-r1
IUSE=doc gmp lzma openmp +shared static-libs static-pic ada_target_gcc_12 ada_target_gcc_13 ada_target_gcc_14 ada_target_gcc_15 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
-KEYWORDS=~amd64 ~arm64 x86
+KEYWORDS=amd64 ~arm64 x86
LICENSE=GPL-3
RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) ada_target_gcc_13? ( sys-devel/gcc:13[ada] ) ada_target_gcc_14? ( sys-devel/gcc:14[ada] ) dev-ada/gnatcoll-core:0/25.0.0[ada_target_gcc_13(-)?,ada_target_gcc_14(-)?,-ada_target_gcc_12(-),-ada_target_gcc_15(-),shared?,static-libs?,static-pic?] gmp? ( dev-libs/gmp:* ) lzma? ( app-arch/xz-utils ) openmp? ( sys-devel/gcc:=[openmp] ) python_single_target_python3_9? ( doc? ( dev-python/sphinx[python_targets_python3_9(-)] dev-python/sphinx-rtd-theme[python_targets_python3_9(-)] ) ) python_single_target_python3_10? ( doc? ( dev-python/sphinx[python_targets_python3_10(-)] dev-python/sphinx-rtd-theme[python_targets_python3_10(-)] ) ) python_single_target_python3_11? ( doc? ( dev-python/sphinx[python_targets_python3_11(-)] dev-python/sphinx-rtd-theme[python_targets_python3_11(-)] ) ) python_single_target_python3_12? ( doc? ( dev-python/sphinx[python_targets_python3_12(-)] dev-python/sphinx-rtd-theme[python_targets_python3_12(-)] ) ) python_single_target_python3_13? ( doc? ( dev-python/sphinx[python_targets_python3_13(-)] dev-python/sphinx-rtd-theme[python_targets_python3_13(-)] ) )
REQUIRED_USE=|| ( shared static-libs static-pic ) ^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( ada_target_gcc_13 ada_target_gcc_14 )
SLOT=0/25.0.0
SRC_URI=https://github.com/AdaCore/gnatcoll-bindings/archive/refs/tags/v25.0.0.tar.gz -> gnatcoll-bindings-25.0.0.tar.gz
_eclasses_=ada 02ff4ede51c5f676746b340a6406accf multiprocessing 1e32df7deee68372153dca65f4a7c21f python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=cc16fb2a6d112d46e0e6cfd83f8ae2ce
+_md5_=828688f50e83a49036612af03b2cdda0
diff --git a/metadata/md5-cache/dev-cpp/edencommon-2025.04.14.00 b/metadata/md5-cache/dev-cpp/edencommon-2025.04.14.00
new file mode 100644
index 000000000000..ea2b048c9566
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/edencommon-2025.04.14.00
@@ -0,0 +1,16 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=dev-cpp/glog:= ~dev-cpp/folly-2025.04.14.00:= ~dev-cpp/fb303-2025.04.14.00:= dev-libs/boost:= dev-libs/libfmt:= llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= ) test? ( dev-cpp/gtest )
+DESCRIPTION=Shared library for Watchman and Eden projects
+EAPI=8
+HOMEPAGE=https://github.com/facebookexperimental/edencommon
+INHERIT=cmake toolchain-funcs
+IUSE=llvm-libunwind test
+KEYWORDS=~amd64 ~arm64
+LICENSE=MIT
+RDEPEND=dev-cpp/glog:= ~dev-cpp/folly-2025.04.14.00:= ~dev-cpp/fb303-2025.04.14.00:= dev-libs/boost:= dev-libs/libfmt:= llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= )
+RESTRICT=!test? ( test )
+SLOT=0/2025.04.14.00
+SRC_URI=https://github.com/facebookexperimental/edencommon/archive/refs/tags/v2025.04.14.00.tar.gz -> edencommon-2025.04.14.00.gh.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=61052f618c77000ce4d0c25ff24cced2
diff --git a/metadata/md5-cache/dev-cpp/fb303-2025.04.14.00 b/metadata/md5-cache/dev-cpp/fb303-2025.04.14.00
new file mode 100644
index 000000000000..92166298f345
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/fb303-2025.04.14.00
@@ -0,0 +1,16 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=~dev-cpp/fbthrift-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/libfmt:= test? ( dev-cpp/gtest )
+DESCRIPTION=Core set of Thrift functions querying stats and other information from a service
+EAPI=8
+HOMEPAGE=https://github.com/facebook/fb303
+INHERIT=cmake
+IUSE=test
+KEYWORDS=~amd64 ~arm64
+LICENSE=Apache-2.0
+RDEPEND=~dev-cpp/fbthrift-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/libfmt:=
+RESTRICT=test
+SLOT=0/2025.04.14.00
+SRC_URI=https://github.com/facebook/fb303/archive/refs/tags/v2025.04.14.00.tar.gz -> fb303-2025.04.14.00.gh.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=bf3f4964292e8cde3e62cc912ada9fcb
diff --git a/metadata/md5-cache/dev-cpp/fbthrift-2025.04.14.00 b/metadata/md5-cache/dev-cpp/fbthrift-2025.04.14.00
new file mode 100644
index 000000000000..ffab413c49e3
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/fbthrift-2025.04.14.00
@@ -0,0 +1,16 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=~dev-cpp/fizz-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= ~dev-cpp/wangle-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/boost:=[nls(+)] dev-libs/double-conversion:= dev-libs/libfmt:= dev-libs/openssl:= dev-libs/xxhash sys-libs/zlib:=
+DESCRIPTION=Facebook's branch of Apache Thrift (C++ bindings)
+EAPI=8
+HOMEPAGE=https://github.com/facebook/fbthrift
+INHERIT=cmake
+IUSE=test
+KEYWORDS=~amd64 ~arm64
+LICENSE=Apache-2.0
+RDEPEND=~dev-cpp/fizz-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= ~dev-cpp/wangle-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/boost:=[nls(+)] dev-libs/double-conversion:= dev-libs/libfmt:= dev-libs/openssl:= dev-libs/xxhash sys-libs/zlib:= test? ( dev-cpp/gtest )
+RESTRICT=test
+SLOT=0/2025.04.14.00
+SRC_URI=https://github.com/facebook/fbthrift/archive/refs/tags/v2025.04.14.00.tar.gz -> fbthrift-2025.04.14.00.gh.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=358fa5f405daf569976db7e65c6c8b90
diff --git a/metadata/md5-cache/dev-cpp/fizz-2025.04.14.00 b/metadata/md5-cache/dev-cpp/fizz-2025.04.14.00
new file mode 100644
index 000000000000..43fd5d8120fb
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/fizz-2025.04.14.00
@@ -0,0 +1,15 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=C++14 implementation of the TLS-1.3 standard
+EAPI=8
+HOMEPAGE=https://github.com/facebookincubator/fizz
+INHERIT=cmake
+IUSE=test
+KEYWORDS=~amd64 ~arm64
+LICENSE=BSD
+RDEPEND=app-arch/zstd:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/double-conversion:= dev-libs/libfmt:= dev-libs/libsodium:= dev-libs/openssl:= sys-libs/zlib
+RESTRICT=!test? ( test )
+SLOT=0/2025.04.14.00
+SRC_URI=https://github.com/facebookincubator/fizz/archive/refs/tags/v2025.04.14.00.tar.gz -> fizz-2025.04.14.00.gh.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=ce57146aeb5473cb34e8d7add596cbbc
diff --git a/metadata/md5-cache/dev-cpp/folly-2025.04.14.00 b/metadata/md5-cache/dev-cpp/folly-2025.04.14.00
new file mode 100644
index 000000000000..4b4f7041a1d4
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/folly-2025.04.14.00
@@ -0,0 +1,16 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test unpack
+DEPEND=app-arch/bzip2 app-arch/lz4:= app-arch/snappy:= app-arch/xz-utils app-arch/zstd:= dev-cpp/fast_float:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/boost:=[context] dev-libs/double-conversion:= dev-libs/libaio dev-libs/libevent:= dev-libs/libfmt:= dev-libs/libsodium:= dev-libs/openssl:= sys-libs/zlib llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= ) sys-libs/binutils-libs test? ( dev-cpp/gtest )
+DESCRIPTION=An open-source C++ library developed and used at Facebook
+EAPI=8
+HOMEPAGE=https://github.com/facebook/folly
+INHERIT=flag-o-matic cmake toolchain-funcs
+IUSE=llvm-libunwind test
+KEYWORDS=~amd64 ~arm64 ~ppc64
+LICENSE=Apache-2.0
+RDEPEND=app-arch/bzip2 app-arch/lz4:= app-arch/snappy:= app-arch/xz-utils app-arch/zstd:= dev-cpp/fast_float:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/boost:=[context] dev-libs/double-conversion:= dev-libs/libaio dev-libs/libevent:= dev-libs/libfmt:= dev-libs/libsodium:= dev-libs/openssl:= sys-libs/zlib llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= )
+RESTRICT=!test? ( test )
+SLOT=0/2025.04.14.00
+SRC_URI=https://github.com/facebook/folly/releases/download/v2025.04.14.00/folly-v2025.04.14.00.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=3690909ea52921d6f81840672ab0f814
diff --git a/metadata/md5-cache/dev-cpp/mvfst-2025.04.14.00 b/metadata/md5-cache/dev-cpp/mvfst-2025.04.14.00
new file mode 100644
index 000000000000..5acaf7cf55b9
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/mvfst-2025.04.14.00
@@ -0,0 +1,16 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=~dev-cpp/fizz-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/double-conversion:= dev-libs/libfmt:= dev-libs/openssl:= test? ( dev-cpp/gtest )
+DESCRIPTION=An implementation of the QUIC transport protocol
+EAPI=8
+HOMEPAGE=https://github.com/facebook/mvfst
+INHERIT=cmake
+IUSE=test
+KEYWORDS=~amd64 ~arm64
+LICENSE=MIT
+RDEPEND=~dev-cpp/fizz-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/double-conversion:= dev-libs/libfmt:= dev-libs/openssl:=
+RESTRICT=!test? ( test )
+SLOT=0/2025.04.14.00
+SRC_URI=https://github.com/facebook/mvfst/archive/refs/tags/v2025.04.14.00.tar.gz -> mvfst-2025.04.14.00.gh.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=87e9ce340d97b7b2b132f9e65ca4fa70
diff --git a/metadata/md5-cache/dev-cpp/wangle-2025.04.14.00 b/metadata/md5-cache/dev-cpp/wangle-2025.04.14.00
new file mode 100644
index 000000000000..bbfaa3da5782
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/wangle-2025.04.14.00
@@ -0,0 +1,16 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=~dev-cpp/fizz-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/double-conversion:= dev-libs/libfmt:= dev-libs/openssl:= test? ( dev-cpp/gtest )
+DESCRIPTION=A framework providing common abstractions for building services
+EAPI=8
+HOMEPAGE=https://github.com/facebook/wangle
+INHERIT=cmake
+IUSE=test
+KEYWORDS=~amd64 ~arm64
+LICENSE=Apache-2.0
+RDEPEND=~dev-cpp/fizz-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/gflags:= dev-cpp/glog:=[gflags] dev-libs/double-conversion:= dev-libs/libfmt:= dev-libs/openssl:=
+RESTRICT=!test? ( test )
+SLOT=0/2025.04.14.00
+SRC_URI=https://github.com/facebook/wangle/archive/refs/tags/v2025.04.14.00.tar.gz -> wangle-2025.04.14.00.gh.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=36aa425b15d00dbc86a0f9cc34d7ca02
diff --git a/metadata/md5-cache/dev-cpp/xsimd-13.1.0 b/metadata/md5-cache/dev-cpp/xsimd-13.1.0
index 11c82ca5a0db..5f2bf42ab3a3 100644
--- a/metadata/md5-cache/dev-cpp/xsimd-13.1.0
+++ b/metadata/md5-cache/dev-cpp/xsimd-13.1.0
@@ -5,10 +5,10 @@ EAPI=8
HOMEPAGE=https://github.com/xtensor-stack/xsimd
INHERIT=cmake python-any-r1
IUSE=doc test
-KEYWORDS=amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc ~x86
+KEYWORDS=amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86
LICENSE=BSD
RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/xtensor-stack/xsimd/archive/refs/tags/13.1.0.tar.gz -> xsimd-13.1.0.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-any-r1 891415dfe39ad9b41b461f2b86354af0 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=0b455d6e028f529ffdd6897a326f9a32
+_md5_=bae7697e1336b9724377e9ce452f92d7
diff --git a/metadata/md5-cache/dev-go/golangci-lint-2.1.2 b/metadata/md5-cache/dev-go/golangci-lint-2.1.2
new file mode 100644
index 000000000000..002b4599a7e1
--- /dev/null
+++ b/metadata/md5-cache/dev-go/golangci-lint-2.1.2
@@ -0,0 +1,13 @@
+BDEPEND=>=dev-lang/go-1.20:= app-arch/unzip
+DEFINED_PHASES=compile install test unpack
+DESCRIPTION=Fast linters runner for Go
+EAPI=8
+HOMEPAGE=https://golangci-lint.run/ https://github.com/golangci/golangci-lint
+INHERIT=go-module shell-completion toolchain-funcs
+KEYWORDS=~amd64
+LICENSE=GPL-3 Apache-2.0 BSD BSD-2 GPL-3 ISC MIT MPL-2.0
+RESTRICT=strip
+SLOT=0
+SRC_URI=https://github.com/golangci/golangci-lint/archive/v2.1.2.tar.gz -> golangci-lint-2.1.2.tar.gz https://dev.gentoo.org/~williamh/dist/golangci-lint-2.1.2-deps.tar.xz
+_eclasses_=bash-completion-r1 767861f3744f589ee5291c1698b1c082 flag-o-matic e8de74bac929ba17427e740e95707d00 go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module df32d29550d40a92da723d3b8e17b467 multiprocessing 1e32df7deee68372153dca65f4a7c21f shell-completion 0b655d0d825e157a5e99c463bddaac16 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=cfea36e29535db432ee66bc48870469e
diff --git a/metadata/md5-cache/dev-lang/ocaml-5.2.0-r1 b/metadata/md5-cache/dev-lang/ocaml-5.2.0-r1
deleted file mode 100644
index 3d4f308cbdaa..000000000000
--- a/metadata/md5-cache/dev-lang/ocaml-5.2.0-r1
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=sys-libs/binutils-libs:= !dev-ml/findlib:0/0 virtual/pkgconfig
-DEFINED_PHASES=compile configure install prepare test
-DESCRIPTION=Programming language supporting functional, imperative & object-oriented styles
-EAPI=8
-HOMEPAGE=https://ocaml.org/
-INHERIT=flag-o-matic
-IUSE=emacs flambda latex +ocamlopt test xemacs
-KEYWORDS=~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos
-LICENSE=QPL-1.0 LGPL-2
-PDEPEND=emacs? ( app-emacs/ocaml-mode ) xemacs? ( app-xemacs/ocaml )
-RDEPEND=sys-libs/binutils-libs:= !dev-ml/findlib:0/0
-RESTRICT=!test? ( test )
-SLOT=0/5.2.0
-SRC_URI=https://github.com/ocaml/ocaml/archive/5.2.0.tar.gz -> ocaml-5.2.0.tar.gz
-_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=bb64ad202bf59534aa4d2493955d661a
diff --git a/metadata/md5-cache/dev-lang/ocaml-5.2.1-r1 b/metadata/md5-cache/dev-lang/ocaml-5.2.1-r1
deleted file mode 100644
index 12990618c7f5..000000000000
--- a/metadata/md5-cache/dev-lang/ocaml-5.2.1-r1
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=sys-libs/binutils-libs:= !dev-ml/findlib:0/0 virtual/pkgconfig
-DEFINED_PHASES=compile configure install prepare test
-DESCRIPTION=Programming language supporting functional, imperative & object-oriented styles
-EAPI=8
-HOMEPAGE=https://ocaml.org/
-INHERIT=flag-o-matic
-IUSE=emacs flambda latex +ocamlopt test xemacs
-KEYWORDS=~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos
-LICENSE=QPL-1.0 LGPL-2
-PDEPEND=emacs? ( app-emacs/ocaml-mode ) xemacs? ( app-xemacs/ocaml )
-RDEPEND=sys-libs/binutils-libs:= !dev-ml/findlib:0/0
-RESTRICT=!test? ( test )
-SLOT=0/5.2.1
-SRC_URI=https://github.com/ocaml/ocaml/archive/5.2.1.tar.gz -> ocaml-5.2.1.tar.gz
-_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=bb64ad202bf59534aa4d2493955d661a
diff --git a/metadata/md5-cache/dev-ml/camlp4-5.2_p1 b/metadata/md5-cache/dev-ml/camlp4-5.2_p1
deleted file mode 100644
index 08c1a1bccd26..000000000000
--- a/metadata/md5-cache/dev-ml/camlp4-5.2_p1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install
-DEPEND==dev-lang/ocaml-5.2*:=[ocamlopt?] dev-ml/camlp-streams:=[ocamlopt?] dev-ml/ocamlbuild[ocamlopt?] dev-ml/findlib:=
-DESCRIPTION=System for writing extensible parsers for programming languages
-EAPI=8
-HOMEPAGE=https://github.com/camlp4/camlp4
-INHERIT=edo
-IUSE=+ocamlopt
-KEYWORDS=~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux
-LICENSE=LGPL-2-with-linking-exception
-RDEPEND==dev-lang/ocaml-5.2*:=[ocamlopt?] dev-ml/camlp-streams:=[ocamlopt?]
-SLOT=0/5.2_p1
-SRC_URI=https://github.com/camlp4/camlp4/archive/5.2+1.tar.gz -> camlp4-5.2_p1.tar.gz
-_eclasses_=edo 367e103a74bf77e6a8da7894d999fa3c
-_md5_=4b7a556353c3014554cb7a6dd5f554a8
diff --git a/metadata/md5-cache/dev-ml/core_bench-0.17.0 b/metadata/md5-cache/dev-ml/core_bench-0.17.0
index c27f0b1470d5..ae1559514507 100644
--- a/metadata/md5-cache/dev-ml/core_bench-0.17.0
+++ b/metadata/md5-cache/dev-ml/core_bench-0.17.0
@@ -6,10 +6,10 @@ EAPI=8
HOMEPAGE=https://github.com/janestreet/core_bench
INHERIT=dune
IUSE=+ocamlopt
-KEYWORDS=~amd64
+KEYWORDS=~amd64 ~arm64
LICENSE=MIT
RDEPEND=>=dev-lang/ocaml-5 dev-ml/core:0/0.17[ocamlopt?] dev-ml/core_extended:0/0.17[ocamlopt?] dev-ml/core_kernel:0/0.17[ocamlopt?] dev-ml/core_unix:0/0.17[ocamlopt?] dev-ml/delimited_parsing:0/0.17[ocamlopt?] dev-ml/ppx_compare:0/0.17[ocamlopt?] dev-ml/ppx_fields_conv:0/0.17[ocamlopt?] dev-ml/ppx_jane:0/0.17[ocamlopt?] dev-ml/ppx_let:0/0.17[ocamlopt?] dev-ml/ppx_sexp_conv:0/0.17[ocamlopt?] dev-ml/textutils:0/0.17[ocamlopt?] dev-ml/time_now:0/0.17[ocamlopt?] dev-ml/re:=[ocamlopt?] >=dev-lang/ocaml-4:=[ocamlopt?] dev-ml/dune:=
SLOT=0/0.17
SRC_URI=https://github.com/janestreet/core_bench/archive/v0.17.0.tar.gz -> core_bench-0.17.0.tar.gz
_eclasses_=dune 21c2970666b517829dc7b963ca1f4a4a edo 367e103a74bf77e6a8da7894d999fa3c multiprocessing 1e32df7deee68372153dca65f4a7c21f
-_md5_=a42d52d81320ec60aa8488f33487b227
+_md5_=25f281e83c8a70a31f9d13ba96093a6c
diff --git a/metadata/md5-cache/dev-ml/core_extended-0.17.0 b/metadata/md5-cache/dev-ml/core_extended-0.17.0
index 334d81e2d0db..ae1c594d04be 100644
--- a/metadata/md5-cache/dev-ml/core_extended-0.17.0
+++ b/metadata/md5-cache/dev-ml/core_extended-0.17.0
@@ -5,11 +5,11 @@ DESCRIPTION=Extra components that are not as closely vetted or as stable as Core
EAPI=8
HOMEPAGE=https://github.com/janestreet/core_extended
INHERIT=dune
-IUSE=ocamlopt
-KEYWORDS=~amd64
+IUSE=+ocamlopt
+KEYWORDS=~amd64 ~arm64
LICENSE=MIT
RDEPEND=>=dev-lang/ocaml-5 dev-ml/core:0/0.17[ocamlopt?] dev-ml/core_kernel:0/0.17[ocamlopt?] dev-ml/core_unix:0/0.17[ocamlopt?] dev-ml/ppx_jane:0/0.17[ocamlopt?] dev-ml/re:=[ocamlopt?] dev-ml/record_builder:0/0.17[ocamlopt?] >=dev-lang/ocaml-4:=[ocamlopt?] dev-ml/dune:=
SLOT=0/0.17
SRC_URI=https://github.com/janestreet/core_extended/archive/refs/tags/v0.17.0.tar.gz -> core_extended-0.17.0.tar.gz
_eclasses_=dune 21c2970666b517829dc7b963ca1f4a4a edo 367e103a74bf77e6a8da7894d999fa3c multiprocessing 1e32df7deee68372153dca65f4a7c21f
-_md5_=7f5ee4df304a778fab63d90c80dadd77
+_md5_=d635d3f579cdf6dd7788e29bb5347ce2
diff --git a/metadata/md5-cache/dev-ml/delimited_parsing-0.17.0 b/metadata/md5-cache/dev-ml/delimited_parsing-0.17.0
index 8bf6becb9812..700cbc4498b2 100644
--- a/metadata/md5-cache/dev-ml/delimited_parsing-0.17.0
+++ b/metadata/md5-cache/dev-ml/delimited_parsing-0.17.0
@@ -5,11 +5,11 @@ DESCRIPTION=Parsing of character (e.g., comma) separated and fixed-width values
EAPI=8
HOMEPAGE=https://github.com/janestreet/delimited_parsing
INHERIT=dune
-IUSE=ocamlopt
-KEYWORDS=~amd64
+IUSE=+ocamlopt
+KEYWORDS=~amd64 ~arm64
LICENSE=MIT
RDEPEND=>=dev-lang/ocaml-5 dev-ml/async:0/0.17[ocamlopt?] dev-ml/core:0/0.17[ocamlopt?] dev-ml/core_extended:0/0.17[ocamlopt?] dev-ml/ppx_jane:0/0.17[ocamlopt?] >=dev-lang/ocaml-4:=[ocamlopt?] dev-ml/dune:=
SLOT=0/0.17
SRC_URI=https://github.com/janestreet/delimited_parsing/archive/refs/tags/v0.17.0.tar.gz -> delimited_parsing-0.17.0.tar.gz
_eclasses_=dune 21c2970666b517829dc7b963ca1f4a4a edo 367e103a74bf77e6a8da7894d999fa3c multiprocessing 1e32df7deee68372153dca65f4a7c21f
-_md5_=d99cc9df350eaa0858b86f3d0642b70c
+_md5_=cc24cb086fad2692dccad51d78962502
diff --git a/metadata/md5-cache/dev-ml/record_builder-0.17.0 b/metadata/md5-cache/dev-ml/record_builder-0.17.0
index 636637fbca30..7515ea35c694 100644
--- a/metadata/md5-cache/dev-ml/record_builder-0.17.0
+++ b/metadata/md5-cache/dev-ml/record_builder-0.17.0
@@ -5,11 +5,11 @@ DESCRIPTION=A library which provides traversal of records with an applicative
EAPI=8
HOMEPAGE=https://github.com/janestreet/record_builder
INHERIT=dune
-IUSE=ocamlopt
-KEYWORDS=~amd64
+IUSE=+ocamlopt
+KEYWORDS=~amd64 ~arm64
LICENSE=MIT
RDEPEND=>=dev-lang/ocaml-5 dev-ml/base:0/0.17[ocamlopt] dev-ml/ppx_jane:0/0.17[ocamlopt] >=dev-lang/ocaml-4:=[ocamlopt?] dev-ml/dune:=
SLOT=0/0.17
SRC_URI=https://github.com/janestreet/record_builder/archive/refs/tags/v0.17.0.tar.gz -> record_builder-0.17.0.tar.gz
_eclasses_=dune 21c2970666b517829dc7b963ca1f4a4a edo 367e103a74bf77e6a8da7894d999fa3c multiprocessing 1e32df7deee68372153dca65f4a7c21f
-_md5_=e681bfe5b53b448d7f73602eff23c40f
+_md5_=b1b0ec9eebda79f857cb2e2861c9cd15
diff --git a/metadata/md5-cache/dev-python/aiohttp-3.11.18 b/metadata/md5-cache/dev-python/aiohttp-3.11.18
new file mode 100644
index 000000000000..dc3fcc9c1418
--- /dev/null
+++ b/metadata/md5-cache/dev-python/aiohttp-3.11.18
@@ -0,0 +1,17 @@
+BDEPEND=native-extensions? ( dev-python/cython[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) test? ( dev-python/freezegun[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] www-servers/gunicorn[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-mock[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-rerunfailures[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-xdist[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/re-assert[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_python3_9? ( dev-python/time-machine[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_10? ( dev-python/time-machine[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_11? ( dev-python/time-machine[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_12? ( dev-python/time-machine[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_13? ( dev-python/time-machine[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) test-rust? ( dev-python/trustme[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) ) test? ( native-extensions? ( python_targets_python3_9? ( net-libs/llhttp:= ) python_targets_python3_10? ( net-libs/llhttp:= ) python_targets_python3_11? ( net-libs/llhttp:= ) python_targets_python3_12? ( net-libs/llhttp:= ) python_targets_python3_13? ( net-libs/llhttp:= ) ) >=dev-python/aiodns-3.2.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/aiohappyeyeballs-2.3.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/aiosignal-1.1.2[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/attrs-17.3.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/brotlicffi[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/frozenlist-1.1.1[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/multidict-4.5.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/propcache-0.2.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/yarl-1.17.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_pypy3? ( <dev-python/async-timeout-6[python_targets_pypy3(-)?,python_targets_python3_10(-)?] >=dev-python/async-timeout-4.0[python_targets_pypy3(-)?,python_targets_python3_10(-)?] ) python_targets_python3_10? ( <dev-python/async-timeout-6[python_targets_pypy3(-)?,python_targets_python3_10(-)?] >=dev-python/async-timeout-4.0[python_targets_pypy3(-)?,python_targets_python3_10(-)?] ) >=dev-python/pytest-7.4.4[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-xdist[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=native-extensions? ( python_targets_python3_9? ( net-libs/llhttp:= ) python_targets_python3_10? ( net-libs/llhttp:= ) python_targets_python3_11? ( net-libs/llhttp:= ) python_targets_python3_12? ( net-libs/llhttp:= ) python_targets_python3_13? ( net-libs/llhttp:= ) ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+DESCRIPTION=HTTP client/server for asyncio
+EAPI=8
+HOMEPAGE=https://github.com/aio-libs/aiohttp/ https://pypi.org/project/aiohttp/
+INHERIT=distutils-r1 pypi
+IUSE=+native-extensions test-rust test python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
+KEYWORDS=~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86
+LICENSE=Apache-2.0
+RDEPEND=native-extensions? ( python_targets_python3_9? ( net-libs/llhttp:= ) python_targets_python3_10? ( net-libs/llhttp:= ) python_targets_python3_11? ( net-libs/llhttp:= ) python_targets_python3_12? ( net-libs/llhttp:= ) python_targets_python3_13? ( net-libs/llhttp:= ) ) >=dev-python/aiodns-3.2.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/aiohappyeyeballs-2.3.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/aiosignal-1.1.2[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/attrs-17.3.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/brotlicffi[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/frozenlist-1.1.1[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/multidict-4.5.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/propcache-0.2.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/yarl-1.17.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_pypy3? ( <dev-python/async-timeout-6[python_targets_pypy3(-)?,python_targets_python3_10(-)?] >=dev-python/async-timeout-4.0[python_targets_pypy3(-)?,python_targets_python3_10(-)?] ) python_targets_python3_10? ( <dev-python/async-timeout-6[python_targets_pypy3(-)?,python_targets_python3_10(-)?] >=dev-python/async-timeout-4.0[python_targets_pypy3(-)?,python_targets_python3_10(-)?] ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://files.pythonhosted.org/packages/source/a/aiohttp/aiohttp-3.11.18.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=feb6cba380ce9272a126a106758aa036
diff --git a/metadata/md5-cache/dev-python/bitarray-3.3.1 b/metadata/md5-cache/dev-python/bitarray-3.3.1
index f251bc9e32e7..f0a30f065a09 100644
--- a/metadata/md5-cache/dev-python/bitarray-3.3.1
+++ b/metadata/md5-cache/dev-python/bitarray-3.3.1
@@ -6,11 +6,11 @@ EAPI=8
HOMEPAGE=https://github.com/ilanschnell/bitarray/ https://pypi.org/project/bitarray/
INHERIT=distutils-r1 pypi
IUSE=python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
-KEYWORDS=amd64 ~arm arm64 ~x86 ~amd64-linux ~x86-linux
+KEYWORDS=amd64 ~arm arm64 x86 ~amd64-linux ~x86-linux
LICENSE=PSF-2
RDEPEND=python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
SLOT=0
SRC_URI=https://files.pythonhosted.org/packages/source/b/bitarray/bitarray-3.3.1.tar.gz
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=0d572566e84960d267e38e0298441cc4
+_md5_=2c9b84625364ad9c13a4355f874c249d
diff --git a/metadata/md5-cache/dev-python/boto3-1.37.38 b/metadata/md5-cache/dev-python/boto3-1.37.38
new file mode 100644
index 000000000000..a875d58fee46
--- /dev/null
+++ b/metadata/md5-cache/dev-python/boto3-1.37.38
@@ -0,0 +1,16 @@
+BDEPEND=test? ( >=dev-python/botocore-1.37.38[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/jmespath-0.7.1[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/s3transfer-0.11.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/pytest-7.4.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-xdist[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=The AWS SDK for Python
+EAPI=8
+HOMEPAGE=https://github.com/boto/boto3/ https://pypi.org/project/boto3/
+INHERIT=distutils-r1
+IUSE=test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
+KEYWORDS=~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux
+LICENSE=Apache-2.0
+RDEPEND=>=dev-python/botocore-1.37.38[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/jmespath-0.7.1[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/s3transfer-0.11.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/boto/boto3/archive/1.37.38.tar.gz -> boto3-1.37.38.gh.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=40e4ee32f0c8615e0f26c15cd0b2588a
diff --git a/metadata/md5-cache/dev-python/botocore-1.37.38 b/metadata/md5-cache/dev-python/botocore-1.37.38
new file mode 100644
index 000000000000..c023806e1631
--- /dev/null
+++ b/metadata/md5-cache/dev-python/botocore-1.37.38
@@ -0,0 +1,16 @@
+BDEPEND=test? ( dev-python/jsonschema[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) test? ( <dev-python/jmespath-2[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/python-dateutil[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/urllib3-1.25.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/requests[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/six[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/pytest-7.4.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-xdist[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Low-level, data-driven core of boto 3
+EAPI=8
+HOMEPAGE=https://github.com/boto/botocore/ https://pypi.org/project/botocore/
+INHERIT=distutils-r1
+IUSE=test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
+KEYWORDS=~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux
+LICENSE=Apache-2.0
+RDEPEND=<dev-python/jmespath-2[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/python-dateutil[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/urllib3-1.25.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/requests[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/six[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/boto/botocore/archive/1.37.38.tar.gz -> botocore-1.37.38.gh.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=a92dfe2908a551775745914d05db83c1
diff --git a/metadata/md5-cache/dev-python/bottle-0.13.3 b/metadata/md5-cache/dev-python/bottle-0.13.3
new file mode 100644
index 000000000000..b874a8931fc1
--- /dev/null
+++ b/metadata/md5-cache/dev-python/bottle-0.13.3
@@ -0,0 +1,16 @@
+BDEPEND=test? ( dev-python/mako[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install postinst prepare test
+DESCRIPTION=A fast and simple micro-framework for small web-applications
+EAPI=8
+HOMEPAGE=https://bottlepy.org/ https://github.com/bottlepy/bottle/ https://pypi.org/project/bottle/
+INHERIT=distutils-r1 optfeature pypi
+IUSE=test python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
+KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86
+LICENSE=MIT
+RDEPEND=python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://files.pythonhosted.org/packages/source/b/bottle/bottle-0.13.3.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 optfeature 538bce96e5589935b57e178e8635f301 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=8de45a9d283c040ac1f77c1cf5f183a0
diff --git a/metadata/md5-cache/dev-python/cfn-lint-1.34.1 b/metadata/md5-cache/dev-python/cfn-lint-1.34.1
new file mode 100644
index 000000000000..656f966d4ec9
--- /dev/null
+++ b/metadata/md5-cache/dev-python/cfn-lint-1.34.1
@@ -0,0 +1,16 @@
+BDEPEND=>=dev-python/setuptools-77.0.3[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] test? ( dev-python/defusedxml[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) test? ( >=dev-python/aws-sam-translator-1.97.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/jsonpatch[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/jschema-to-python-1.2.3[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] <dev-python/jsonschema-5[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/jsonschema-3.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/junit-xml[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] <dev-python/networkx-4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >dev-python/pyyaml-5.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/regex-2021.7.1[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/sarif-om-1.0.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/sympy-1.0.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/pytest-7.4.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=CloudFormation Linter
+EAPI=8
+HOMEPAGE=https://github.com/aws-cloudformation/cfn-lint/ https://pypi.org/project/cfn-lint/
+INHERIT=distutils-r1 pypi
+IUSE=test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
+KEYWORDS=~amd64 ~arm64 ~riscv ~x86
+LICENSE=MIT
+RDEPEND=>=dev-python/aws-sam-translator-1.97.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/jsonpatch[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/jschema-to-python-1.2.3[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] <dev-python/jsonschema-5[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/jsonschema-3.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/junit-xml[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] <dev-python/networkx-4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >dev-python/pyyaml-5.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/regex-2021.7.1[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/sarif-om-1.0.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/sympy-1.0.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://files.pythonhosted.org/packages/source/c/cfn-lint/cfn_lint-1.34.1.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=894a8d1291cb05e6e91ec92ed0d17f12
diff --git a/metadata/md5-cache/dev-python/coverage-7.8.0 b/metadata/md5-cache/dev-python/coverage-7.8.0
index b7110bd92fd7..4dd42a2ac5e6 100644
--- a/metadata/md5-cache/dev-python/coverage-7.8.0
+++ b/metadata/md5-cache/dev-python/coverage-7.8.0
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://coverage.readthedocs.io/en/latest/ https://github.com/nedbat/coveragepy/ https://pypi.org/project/coverage/
INHERIT=distutils-r1 pypi
IUSE=+native-extensions test python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
-KEYWORDS=~alpha amd64 ~arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~x64-macos
+KEYWORDS=~alpha amd64 ~arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos
LICENSE=BSD
RDEPEND=python_targets_pypy3? ( dev-python/tomli[python_targets_pypy3(-)?,python_targets_python3_10(-)?] ) python_targets_python3_10? ( dev-python/tomli[python_targets_pypy3(-)?,python_targets_python3_10(-)?] ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink,threads(+),sqlite(+)] ) python_targets_python3_9? ( dev-lang/python:3.9[threads(+),sqlite(+)] ) python_targets_python3_10? ( dev-lang/python:3.10[threads(+),sqlite(+)] ) python_targets_python3_11? ( dev-lang/python:3.11[threads(+),sqlite(+)] ) python_targets_python3_12? ( dev-lang/python:3.12[threads(+),sqlite(+)] ) python_targets_python3_13? ( dev-lang/python:3.13[threads(+),sqlite(+)] )
REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://files.pythonhosted.org/packages/source/c/coverage/coverage-7.8.0.tar.gz
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=6a2298d0e9628551b50aebf33588a30e
+_md5_=7945edd4cbea307d3e455240ae88de3f
diff --git a/metadata/md5-cache/dev-python/jellyfish-1.1.3 b/metadata/md5-cache/dev-python/jellyfish-1.1.3
deleted file mode 100644
index ece00f74f619..000000000000
--- a/metadata/md5-cache/dev-python/jellyfish-1.1.3
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=test? ( >=dev-python/pytest-7.4.4[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) || ( dev-lang/rust-bin:9999 dev-lang/rust:9999 dev-lang/rust-bin:1.86.0 dev-lang/rust:1.86.0 dev-lang/rust-bin:1.85.1 dev-lang/rust:1.85.1 dev-lang/rust-bin:1.85.0 dev-lang/rust:1.85.0 dev-lang/rust-bin:1.84.1 dev-lang/rust:1.84.1 dev-lang/rust-bin:1.84.0 dev-lang/rust:1.84.0 dev-lang/rust-bin:1.83.0 dev-lang/rust:1.83.0 dev-lang/rust-bin:1.82.0 dev-lang/rust:1.82.0 dev-lang/rust-bin:1.81.0 dev-lang/rust:1.81.0 dev-lang/rust-bin:1.80.1 dev-lang/rust:1.80.1 dev-lang/rust-bin:1.79.0 dev-lang/rust:1.79.0 dev-lang/rust-bin:1.78.0 dev-lang/rust:1.78.0 dev-lang/rust-bin:1.77.1 dev-lang/rust:1.77.1 dev-lang/rust-bin:1.76.0 dev-lang/rust:1.76.0 dev-lang/rust-bin:1.75.0 dev-lang/rust:1.75.0 dev-lang/rust-bin:1.74.1 dev-lang/rust:1.74.1 dev-lang/rust-bin:1.71.1 dev-lang/rust:1.71.1 ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-util/maturin-1.8.2[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
-DESCRIPTION=Python module for doing approximate and phonetic matching of strings
-EAPI=8
-HOMEPAGE=https://github.com/jamesturk/jellyfish/ https://pypi.org/project/jellyfish/
-INHERIT=cargo distutils-r1 pypi
-IUSE=test debug python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
-KEYWORDS=amd64 arm64 ~ppc64 ~riscv x86
-LICENSE=MIT Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0 || ( Apache-2.0 Boost-1.0 )
-RDEPEND=python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
-REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=https://files.pythonhosted.org/packages/source/j/jellyfish/jellyfish-1.1.3.tar.gz https://crates.io/api/v1/crates/ahash/0.8.11/download -> ahash-0.8.11.crate https://crates.io/api/v1/crates/autocfg/1.4.0/download -> autocfg-1.4.0.crate https://crates.io/api/v1/crates/cfg-if/1.0.0/download -> cfg-if-1.0.0.crate https://crates.io/api/v1/crates/csv-core/0.1.11/download -> csv-core-0.1.11.crate https://crates.io/api/v1/crates/csv/1.3.1/download -> csv-1.3.1.crate https://crates.io/api/v1/crates/getrandom/0.2.15/download -> getrandom-0.2.15.crate https://crates.io/api/v1/crates/heck/0.5.0/download -> heck-0.5.0.crate https://crates.io/api/v1/crates/indoc/2.0.5/download -> indoc-2.0.5.crate https://crates.io/api/v1/crates/itoa/1.0.14/download -> itoa-1.0.14.crate https://crates.io/api/v1/crates/libc/0.2.168/download -> libc-0.2.168.crate https://crates.io/api/v1/crates/memchr/2.7.4/download -> memchr-2.7.4.crate https://crates.io/api/v1/crates/memoffset/0.9.1/download -> memoffset-0.9.1.crate https://crates.io/api/v1/crates/num-traits/0.2.19/download -> num-traits-0.2.19.crate https://crates.io/api/v1/crates/once_cell/1.20.2/download -> once_cell-1.20.2.crate https://crates.io/api/v1/crates/portable-atomic/1.10.0/download -> portable-atomic-1.10.0.crate https://crates.io/api/v1/crates/proc-macro2/1.0.92/download -> proc-macro2-1.0.92.crate https://crates.io/api/v1/crates/pyo3-build-config/0.22.6/download -> pyo3-build-config-0.22.6.crate https://crates.io/api/v1/crates/pyo3-ffi/0.22.6/download -> pyo3-ffi-0.22.6.crate https://crates.io/api/v1/crates/pyo3-macros-backend/0.22.6/download -> pyo3-macros-backend-0.22.6.crate https://crates.io/api/v1/crates/pyo3-macros/0.22.6/download -> pyo3-macros-0.22.6.crate https://crates.io/api/v1/crates/pyo3/0.22.6/download -> pyo3-0.22.6.crate https://crates.io/api/v1/crates/quote/1.0.37/download -> quote-1.0.37.crate https://crates.io/api/v1/crates/ryu/1.0.18/download -> ryu-1.0.18.crate https://crates.io/api/v1/crates/serde/1.0.216/download -> serde-1.0.216.crate https://crates.io/api/v1/crates/serde_derive/1.0.216/download -> serde_derive-1.0.216.crate https://crates.io/api/v1/crates/smallvec/1.13.2/download -> smallvec-1.13.2.crate https://crates.io/api/v1/crates/syn/2.0.90/download -> syn-2.0.90.crate https://crates.io/api/v1/crates/target-lexicon/0.12.16/download -> target-lexicon-0.12.16.crate https://crates.io/api/v1/crates/tinyvec/1.8.0/download -> tinyvec-1.8.0.crate https://crates.io/api/v1/crates/tinyvec_macros/0.1.1/download -> tinyvec_macros-0.1.1.crate https://crates.io/api/v1/crates/unicode-ident/1.0.14/download -> unicode-ident-1.0.14.crate https://crates.io/api/v1/crates/unicode-normalization/0.1.24/download -> unicode-normalization-0.1.24.crate https://crates.io/api/v1/crates/unicode-segmentation/1.12.0/download -> unicode-segmentation-1.12.0.crate https://crates.io/api/v1/crates/unindent/0.2.3/download -> unindent-0.2.3.crate https://crates.io/api/v1/crates/version_check/0.9.5/download -> version_check-0.9.5.crate https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download -> wasi-0.11.0+wasi-snapshot-preview1.crate https://crates.io/api/v1/crates/zerocopy-derive/0.7.35/download -> zerocopy-derive-0.7.35.crate https://crates.io/api/v1/crates/zerocopy/0.7.35/download -> zerocopy-0.7.35.crate
-_eclasses_=cargo df2b134de0bbaddf4c0d660969d80029 distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 rust e9d31591b9b0251018cd5c60a43bafa1 rust-toolchain 76468983281b0a7fc167ca224f84ecfd toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=c432a6cbc474b98a8ebc27b38974ec84
diff --git a/metadata/md5-cache/dev-python/jellyfish-1.2.0 b/metadata/md5-cache/dev-python/jellyfish-1.2.0
index c1ffad93de40..c2ab56886932 100644
--- a/metadata/md5-cache/dev-python/jellyfish-1.2.0
+++ b/metadata/md5-cache/dev-python/jellyfish-1.2.0
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://github.com/jamesturk/jellyfish/ https://pypi.org/project/jellyfish/
INHERIT=cargo distutils-r1 pypi
IUSE=test debug python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
-KEYWORDS=amd64 arm64 ~ppc64 ~riscv ~x86
+KEYWORDS=amd64 arm64 ~ppc64 ~riscv x86
LICENSE=MIT Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0 || ( Apache-2.0 Boost-1.0 )
RDEPEND=python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://files.pythonhosted.org/packages/source/j/jellyfish/jellyfish-1.2.0.tar.gz https://crates.io/api/v1/crates/ahash/0.8.11/download -> ahash-0.8.11.crate https://crates.io/api/v1/crates/autocfg/1.4.0/download -> autocfg-1.4.0.crate https://crates.io/api/v1/crates/cfg-if/1.0.0/download -> cfg-if-1.0.0.crate https://crates.io/api/v1/crates/csv-core/0.1.12/download -> csv-core-0.1.12.crate https://crates.io/api/v1/crates/csv/1.3.1/download -> csv-1.3.1.crate https://crates.io/api/v1/crates/getrandom/0.2.15/download -> getrandom-0.2.15.crate https://crates.io/api/v1/crates/heck/0.5.0/download -> heck-0.5.0.crate https://crates.io/api/v1/crates/indoc/2.0.6/download -> indoc-2.0.6.crate https://crates.io/api/v1/crates/itoa/1.0.15/download -> itoa-1.0.15.crate https://crates.io/api/v1/crates/libc/0.2.171/download -> libc-0.2.171.crate https://crates.io/api/v1/crates/memchr/2.7.4/download -> memchr-2.7.4.crate https://crates.io/api/v1/crates/memoffset/0.9.1/download -> memoffset-0.9.1.crate https://crates.io/api/v1/crates/num-traits/0.2.19/download -> num-traits-0.2.19.crate https://crates.io/api/v1/crates/once_cell/1.21.3/download -> once_cell-1.21.3.crate https://crates.io/api/v1/crates/portable-atomic/1.11.0/download -> portable-atomic-1.11.0.crate https://crates.io/api/v1/crates/proc-macro2/1.0.94/download -> proc-macro2-1.0.94.crate https://crates.io/api/v1/crates/pyo3-build-config/0.24.0/download -> pyo3-build-config-0.24.0.crate https://crates.io/api/v1/crates/pyo3-ffi/0.24.0/download -> pyo3-ffi-0.24.0.crate https://crates.io/api/v1/crates/pyo3-macros-backend/0.24.0/download -> pyo3-macros-backend-0.24.0.crate https://crates.io/api/v1/crates/pyo3-macros/0.24.0/download -> pyo3-macros-0.24.0.crate https://crates.io/api/v1/crates/pyo3/0.24.0/download -> pyo3-0.24.0.crate https://crates.io/api/v1/crates/quote/1.0.40/download -> quote-1.0.40.crate https://crates.io/api/v1/crates/ryu/1.0.20/download -> ryu-1.0.20.crate https://crates.io/api/v1/crates/serde/1.0.219/download -> serde-1.0.219.crate https://crates.io/api/v1/crates/serde_derive/1.0.219/download -> serde_derive-1.0.219.crate https://crates.io/api/v1/crates/smallvec/1.14.0/download -> smallvec-1.14.0.crate https://crates.io/api/v1/crates/syn/2.0.100/download -> syn-2.0.100.crate https://crates.io/api/v1/crates/target-lexicon/0.13.2/download -> target-lexicon-0.13.2.crate https://crates.io/api/v1/crates/tinyvec/1.9.0/download -> tinyvec-1.9.0.crate https://crates.io/api/v1/crates/tinyvec_macros/0.1.1/download -> tinyvec_macros-0.1.1.crate https://crates.io/api/v1/crates/unicode-ident/1.0.18/download -> unicode-ident-1.0.18.crate https://crates.io/api/v1/crates/unicode-normalization/0.1.24/download -> unicode-normalization-0.1.24.crate https://crates.io/api/v1/crates/unicode-segmentation/1.12.0/download -> unicode-segmentation-1.12.0.crate https://crates.io/api/v1/crates/unindent/0.2.4/download -> unindent-0.2.4.crate https://crates.io/api/v1/crates/version_check/0.9.5/download -> version_check-0.9.5.crate https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download -> wasi-0.11.0+wasi-snapshot-preview1.crate https://crates.io/api/v1/crates/zerocopy-derive/0.7.35/download -> zerocopy-derive-0.7.35.crate https://crates.io/api/v1/crates/zerocopy/0.7.35/download -> zerocopy-0.7.35.crate
_eclasses_=cargo df2b134de0bbaddf4c0d660969d80029 distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 rust e9d31591b9b0251018cd5c60a43bafa1 rust-toolchain 76468983281b0a7fc167ca224f84ecfd toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=1cfe4bd31ea23644a529d4b9e00dd3fa
+_md5_=c0508e6964c14e33ce3eda60c639d69e
diff --git a/metadata/md5-cache/dev-python/pyzmq-26.4.0 b/metadata/md5-cache/dev-python/pyzmq-26.4.0
index 4fd23541f8b9..23803d439830 100644
--- a/metadata/md5-cache/dev-python/pyzmq-26.4.0
+++ b/metadata/md5-cache/dev-python/pyzmq-26.4.0
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://zeromq.org/languages/python/ https://pypi.org/project/pyzmq/ https://github.com/zeromq/pyzmq/
INHERIT=distutils-r1
IUSE=drafts test python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
-KEYWORDS=~alpha amd64 ~arm arm64 hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos
+KEYWORDS=~alpha amd64 ~arm arm64 hppa ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos
LICENSE=LGPL-3
RDEPEND=>=net-libs/zeromq-4.2.2-r2:=[drafts=] python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink,threads(+)] ) python_targets_python3_9? ( dev-lang/python:3.9[threads(+)] ) python_targets_python3_10? ( dev-lang/python:3.10[threads(+)] ) python_targets_python3_11? ( dev-lang/python:3.11[threads(+)] ) python_targets_python3_12? ( dev-lang/python:3.12[threads(+)] ) python_targets_python3_13? ( dev-lang/python:3.13[threads(+)] )
REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/zeromq/pyzmq/archive/v26.4.0.tar.gz -> pyzmq-26.4.0.gh.tar.gz
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=6adc1be89def8d0fdc7ffb44f23eef82
+_md5_=8c104e727f8dc17e23a5ce90a35e3937
diff --git a/metadata/md5-cache/dev-python/recurring-ical-events-3.6.0 b/metadata/md5-cache/dev-python/recurring-ical-events-3.7.0
index 78052d589d66..f50c3031184e 100644
--- a/metadata/md5-cache/dev-python/recurring-ical-events-3.6.0
+++ b/metadata/md5-cache/dev-python/recurring-ical-events-3.7.0
@@ -11,6 +11,6 @@ RDEPEND=<dev-python/icalendar-7[python_targets_python3_9(-)?,python_targets_pyth
REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
RESTRICT=!test? ( test )
SLOT=0
-SRC_URI=https://files.pythonhosted.org/packages/source/r/recurring-ical-events/recurring_ical_events-3.6.0.tar.gz
+SRC_URI=https://files.pythonhosted.org/packages/source/r/recurring-ical-events/recurring_ical_events-3.7.0.tar.gz
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
_md5_=2ca26c47b05f7244d3a4237a59a6998d
diff --git a/metadata/md5-cache/dev-python/setuptools-rust-1.11.1 b/metadata/md5-cache/dev-python/setuptools-rust-1.11.1
index 09cc5fe9bb3c..d0a7f054843d 100644
--- a/metadata/md5-cache/dev-python/setuptools-rust-1.11.1
+++ b/metadata/md5-cache/dev-python/setuptools-rust-1.11.1
@@ -5,7 +5,7 @@ EAPI=8
HOMEPAGE=https://github.com/PyO3/setuptools-rust/ https://pypi.org/project/setuptools-rust/
INHERIT=distutils-r1 cargo
IUSE=test python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
-KEYWORDS=amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc ~x86
+KEYWORDS=amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86
LICENSE=MIT
RDEPEND=|| ( dev-lang/rust-bin:9999 dev-lang/rust:9999 dev-lang/rust-bin:1.86.0 dev-lang/rust:1.86.0 dev-lang/rust-bin:1.85.1 dev-lang/rust:1.85.1 dev-lang/rust-bin:1.85.0 dev-lang/rust:1.85.0 dev-lang/rust-bin:1.84.1 dev-lang/rust:1.84.1 dev-lang/rust-bin:1.84.0 dev-lang/rust:1.84.0 dev-lang/rust-bin:1.83.0 dev-lang/rust:1.83.0 dev-lang/rust-bin:1.82.0 dev-lang/rust:1.82.0 dev-lang/rust-bin:1.81.0 dev-lang/rust:1.81.0 dev-lang/rust-bin:1.80.1 dev-lang/rust:1.80.1 dev-lang/rust-bin:1.79.0 dev-lang/rust:1.79.0 dev-lang/rust-bin:1.78.0 dev-lang/rust:1.78.0 dev-lang/rust-bin:1.77.1 dev-lang/rust:1.77.1 dev-lang/rust-bin:1.76.0 dev-lang/rust:1.76.0 dev-lang/rust-bin:1.75.0 dev-lang/rust:1.75.0 dev-lang/rust-bin:1.74.1 dev-lang/rust:1.74.1 dev-lang/rust-bin:1.71.1 dev-lang/rust:1.71.1 ) <dev-python/semantic-version-3[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/semantic-version-2.8.2[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-62.4[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
@@ -13,4 +13,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/PyO3/setuptools-rust/archive/v1.11.1.tar.gz -> setuptools-rust-1.11.1.gh.tar.gz test? ( https://crates.io/api/v1/crates/autocfg/1.3.0/download -> autocfg-1.3.0.crate https://crates.io/api/v1/crates/bitflags/1.3.2/download -> bitflags-1.3.2.crate https://crates.io/api/v1/crates/bitflags/2.5.0/download -> bitflags-2.5.0.crate https://crates.io/api/v1/crates/byteorder/1.5.0/download -> byteorder-1.5.0.crate https://crates.io/api/v1/crates/cfg-if/1.0.0/download -> cfg-if-1.0.0.crate https://crates.io/api/v1/crates/convert_case/0.4.0/download -> convert_case-0.4.0.crate https://crates.io/api/v1/crates/cssparser-macros/0.6.1/download -> cssparser-macros-0.6.1.crate https://crates.io/api/v1/crates/cssparser/0.27.2/download -> cssparser-0.27.2.crate https://crates.io/api/v1/crates/derive_more/0.99.17/download -> derive_more-0.99.17.crate https://crates.io/api/v1/crates/dtoa-short/0.3.4/download -> dtoa-short-0.3.4.crate https://crates.io/api/v1/crates/dtoa/1.0.9/download -> dtoa-1.0.9.crate https://crates.io/api/v1/crates/futf/0.1.5/download -> futf-0.1.5.crate https://crates.io/api/v1/crates/fxhash/0.2.1/download -> fxhash-0.2.1.crate https://crates.io/api/v1/crates/getrandom/0.1.16/download -> getrandom-0.1.16.crate https://crates.io/api/v1/crates/getrandom/0.2.15/download -> getrandom-0.2.15.crate https://crates.io/api/v1/crates/heck/0.5.0/download -> heck-0.5.0.crate https://crates.io/api/v1/crates/html5ever/0.25.2/download -> html5ever-0.25.2.crate https://crates.io/api/v1/crates/indoc/2.0.5/download -> indoc-2.0.5.crate https://crates.io/api/v1/crates/itoa/0.4.8/download -> itoa-0.4.8.crate https://crates.io/api/v1/crates/kuchiki/0.8.1/download -> kuchiki-0.8.1.crate https://crates.io/api/v1/crates/libc/0.2.154/download -> libc-0.2.154.crate https://crates.io/api/v1/crates/lock_api/0.4.12/download -> lock_api-0.4.12.crate https://crates.io/api/v1/crates/log/0.4.21/download -> log-0.4.21.crate https://crates.io/api/v1/crates/mac/0.1.1/download -> mac-0.1.1.crate https://crates.io/api/v1/crates/markup5ever/0.10.1/download -> markup5ever-0.10.1.crate https://crates.io/api/v1/crates/matches/0.1.10/download -> matches-0.1.10.crate https://crates.io/api/v1/crates/memoffset/0.9.1/download -> memoffset-0.9.1.crate https://crates.io/api/v1/crates/new_debug_unreachable/1.0.6/download -> new_debug_unreachable-1.0.6.crate https://crates.io/api/v1/crates/nodrop/0.1.14/download -> nodrop-0.1.14.crate https://crates.io/api/v1/crates/once_cell/1.19.0/download -> once_cell-1.19.0.crate https://crates.io/api/v1/crates/parking_lot/0.12.2/download -> parking_lot-0.12.2.crate https://crates.io/api/v1/crates/parking_lot_core/0.9.10/download -> parking_lot_core-0.9.10.crate https://crates.io/api/v1/crates/phf/0.8.0/download -> phf-0.8.0.crate https://crates.io/api/v1/crates/phf_codegen/0.8.0/download -> phf_codegen-0.8.0.crate https://crates.io/api/v1/crates/phf_generator/0.10.0/download -> phf_generator-0.10.0.crate https://crates.io/api/v1/crates/phf_generator/0.8.0/download -> phf_generator-0.8.0.crate https://crates.io/api/v1/crates/phf_macros/0.8.0/download -> phf_macros-0.8.0.crate https://crates.io/api/v1/crates/phf_shared/0.10.0/download -> phf_shared-0.10.0.crate https://crates.io/api/v1/crates/phf_shared/0.8.0/download -> phf_shared-0.8.0.crate https://crates.io/api/v1/crates/portable-atomic/1.6.0/download -> portable-atomic-1.6.0.crate https://crates.io/api/v1/crates/ppv-lite86/0.2.17/download -> ppv-lite86-0.2.17.crate https://crates.io/api/v1/crates/precomputed-hash/0.1.1/download -> precomputed-hash-0.1.1.crate https://crates.io/api/v1/crates/proc-macro-hack/0.5.20+deprecated/download -> proc-macro-hack-0.5.20+deprecated.crate https://crates.io/api/v1/crates/proc-macro2/1.0.82/download -> proc-macro2-1.0.82.crate https://crates.io/api/v1/crates/pyo3-build-config/0.24.1/download -> pyo3-build-config-0.24.1.crate https://crates.io/api/v1/crates/pyo3-ffi/0.24.1/download -> pyo3-ffi-0.24.1.crate https://crates.io/api/v1/crates/pyo3-macros-backend/0.24.1/download -> pyo3-macros-backend-0.24.1.crate https://crates.io/api/v1/crates/pyo3-macros/0.24.1/download -> pyo3-macros-0.24.1.crate https://crates.io/api/v1/crates/pyo3/0.24.1/download -> pyo3-0.24.1.crate https://crates.io/api/v1/crates/quote/1.0.36/download -> quote-1.0.36.crate https://crates.io/api/v1/crates/rand/0.7.3/download -> rand-0.7.3.crate https://crates.io/api/v1/crates/rand/0.8.5/download -> rand-0.8.5.crate https://crates.io/api/v1/crates/rand_chacha/0.2.2/download -> rand_chacha-0.2.2.crate https://crates.io/api/v1/crates/rand_chacha/0.3.1/download -> rand_chacha-0.3.1.crate https://crates.io/api/v1/crates/rand_core/0.5.1/download -> rand_core-0.5.1.crate https://crates.io/api/v1/crates/rand_core/0.6.4/download -> rand_core-0.6.4.crate https://crates.io/api/v1/crates/rand_hc/0.2.0/download -> rand_hc-0.2.0.crate https://crates.io/api/v1/crates/rand_pcg/0.2.1/download -> rand_pcg-0.2.1.crate https://crates.io/api/v1/crates/redox_syscall/0.5.1/download -> redox_syscall-0.5.1.crate https://crates.io/api/v1/crates/rustc_version/0.4.0/download -> rustc_version-0.4.0.crate https://crates.io/api/v1/crates/scopeguard/1.2.0/download -> scopeguard-1.2.0.crate https://crates.io/api/v1/crates/selectors/0.22.0/download -> selectors-0.22.0.crate https://crates.io/api/v1/crates/semver/1.0.23/download -> semver-1.0.23.crate https://crates.io/api/v1/crates/serde/1.0.200/download -> serde-1.0.200.crate https://crates.io/api/v1/crates/serde_derive/1.0.200/download -> serde_derive-1.0.200.crate https://crates.io/api/v1/crates/servo_arc/0.1.1/download -> servo_arc-0.1.1.crate https://crates.io/api/v1/crates/siphasher/0.3.11/download -> siphasher-0.3.11.crate https://crates.io/api/v1/crates/smallvec/1.13.2/download -> smallvec-1.13.2.crate https://crates.io/api/v1/crates/stable_deref_trait/1.2.0/download -> stable_deref_trait-1.2.0.crate https://crates.io/api/v1/crates/string_cache/0.8.7/download -> string_cache-0.8.7.crate https://crates.io/api/v1/crates/string_cache_codegen/0.5.2/download -> string_cache_codegen-0.5.2.crate https://crates.io/api/v1/crates/syn/1.0.109/download -> syn-1.0.109.crate https://crates.io/api/v1/crates/syn/2.0.61/download -> syn-2.0.61.crate https://crates.io/api/v1/crates/target-lexicon/0.13.2/download -> target-lexicon-0.13.2.crate https://crates.io/api/v1/crates/tendril/0.4.3/download -> tendril-0.4.3.crate https://crates.io/api/v1/crates/thin-slice/0.1.1/download -> thin-slice-0.1.1.crate https://crates.io/api/v1/crates/unicode-ident/1.0.12/download -> unicode-ident-1.0.12.crate https://crates.io/api/v1/crates/unindent/0.2.3/download -> unindent-0.2.3.crate https://crates.io/api/v1/crates/utf-8/0.7.6/download -> utf-8-0.7.6.crate https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download -> wasi-0.11.0+wasi-snapshot-preview1.crate https://crates.io/api/v1/crates/wasi/0.9.0+wasi-snapshot-preview1/download -> wasi-0.9.0+wasi-snapshot-preview1.crate https://crates.io/api/v1/crates/windows-targets/0.52.5/download -> windows-targets-0.52.5.crate https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.52.5/download -> windows_aarch64_gnullvm-0.52.5.crate https://crates.io/api/v1/crates/windows_aarch64_msvc/0.52.5/download -> windows_aarch64_msvc-0.52.5.crate https://crates.io/api/v1/crates/windows_i686_gnu/0.52.5/download -> windows_i686_gnu-0.52.5.crate https://crates.io/api/v1/crates/windows_i686_gnullvm/0.52.5/download -> windows_i686_gnullvm-0.52.5.crate https://crates.io/api/v1/crates/windows_i686_msvc/0.52.5/download -> windows_i686_msvc-0.52.5.crate https://crates.io/api/v1/crates/windows_x86_64_gnu/0.52.5/download -> windows_x86_64_gnu-0.52.5.crate https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.52.5/download -> windows_x86_64_gnullvm-0.52.5.crate https://crates.io/api/v1/crates/windows_x86_64_msvc/0.52.5/download -> windows_x86_64_msvc-0.52.5.crate )
_eclasses_=cargo df2b134de0bbaddf4c0d660969d80029 distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 rust e9d31591b9b0251018cd5c60a43bafa1 rust-toolchain 76468983281b0a7fc167ca224f84ecfd toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=77bc0f665e523a6d3abb42d05588c966
+_md5_=52d3b2d6b28dd7e6b1dd5181db67482d
diff --git a/metadata/md5-cache/dev-python/stestr-4.2.0 b/metadata/md5-cache/dev-python/stestr-4.2.0
new file mode 100644
index 000000000000..0585b61532c6
--- /dev/null
+++ b/metadata/md5-cache/dev-python/stestr-4.2.0
@@ -0,0 +1,16 @@
+BDEPEND=test? ( >=dev-python/ddt-1.0.1[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/flit-core-3.11.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=A parallel Python test runner built around subunit
+EAPI=8
+HOMEPAGE=https://github.com/mtreinish/stestr/ https://pypi.org/project/stestr/
+INHERIT=distutils-r1 multiprocessing pypi
+IUSE=test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
+KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux
+LICENSE=Apache-2.0
+RDEPEND=>=dev-python/cliff-2.8.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/fixtures-3.0.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/pyyaml-3.10.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/python-subunit-1.4.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/testtools-2.2.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/tomlkit-0.11.6[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/voluptuous-0.8.9[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://files.pythonhosted.org/packages/source/s/stestr/stestr-4.2.0.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=bf009771226236fc59567b244980de0c
diff --git a/metadata/md5-cache/dev-python/stripe-12.0.1 b/metadata/md5-cache/dev-python/stripe-12.0.1
new file mode 100644
index 000000000000..e59304e13397
--- /dev/null
+++ b/metadata/md5-cache/dev-python/stripe-12.0.1
@@ -0,0 +1,16 @@
+BDEPEND=test? ( >=dev-util/stripe-mock-0.192.0 dev-python/aiohttp[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/anyio[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/httpx[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-mock[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/trio[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] net-misc/curl ) test? ( >=dev-python/requests-2.20[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/typing-extensions-4.5.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/pytest-7.4.4[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] dev-python/pytest-xdist[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Stripe Python bindings
+EAPI=8
+HOMEPAGE=https://github.com/stripe/stripe-python/ https://pypi.org/project/stripe/
+INHERIT=distutils-r1 pypi
+IUSE=telemetry test python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
+KEYWORDS=~amd64 ~arm64 ~x86
+LICENSE=MIT
+RDEPEND=>=dev-python/requests-2.20[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/typing-extensions-4.5.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://files.pythonhosted.org/packages/source/s/stripe/stripe-12.0.1.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=d84f1181ff90e6e5f10db22b02fdd617
diff --git a/metadata/md5-cache/dev-python/symengine-0.14.1 b/metadata/md5-cache/dev-python/symengine-0.14.1
new file mode 100644
index 000000000000..7004cd5057e7
--- /dev/null
+++ b/metadata/md5-cache/dev-python/symengine-0.14.1
@@ -0,0 +1,17 @@
+BDEPEND=dev-build/cmake dev-python/cython[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] test? ( dev-python/sympy[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) test? ( dev-python/numpy[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] =sci-libs/symengine-0.14* >=dev-python/pytest-7.4.4[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] ) python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=dev-python/numpy[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] =sci-libs/symengine-0.14* python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+DESCRIPTION=Python wrappers to the symengine C++ library
+EAPI=8
+HOMEPAGE=https://github.com/symengine/symengine.py/ https://pypi.org/project/symengine/
+INHERIT=distutils-r1
+IUSE=test python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
+KEYWORDS=~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86
+LICENSE=MIT
+RDEPEND=dev-python/numpy[python_targets_pypy3(-)?,python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] =sci-libs/symengine-0.14* python_targets_pypy3? ( dev-lang/pypy:3.10=[symlink] ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/symengine/symengine.py/archive/v0.14.1.tar.gz -> symengine.py-0.14.1.gh.tar.gz
+_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=44110e5b1178d7cba57c6b7aaf201a18
diff --git a/metadata/md5-cache/dev-python/uncertainties-3.2.1 b/metadata/md5-cache/dev-python/uncertainties-3.2.3
index c9b445739c6c..b2fdf1036877 100644
--- a/metadata/md5-cache/dev-python/uncertainties-3.2.1
+++ b/metadata/md5-cache/dev-python/uncertainties-3.2.3
@@ -11,6 +11,6 @@ RDEPEND=python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3
REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
RESTRICT=!test? ( test )
SLOT=0
-SRC_URI=https://files.pythonhosted.org/packages/source/u/uncertainties/uncertainties-3.2.1.tar.gz
+SRC_URI=https://files.pythonhosted.org/packages/source/u/uncertainties/uncertainties-3.2.3.tar.gz
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 optfeature 538bce96e5589935b57e178e8635f301 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=f4e7dcb7288b9e3f86dd247eae3e9c55
+_md5_=1e58fdd412706602777f52c880e2d05b
diff --git a/metadata/md5-cache/dev-python/zeroconf-0.146.3 b/metadata/md5-cache/dev-python/zeroconf-0.146.3
index 07dd7ee5948b..eb9baaee5007 100644
--- a/metadata/md5-cache/dev-python/zeroconf-0.146.3
+++ b/metadata/md5-cache/dev-python/zeroconf-0.146.3
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://github.com/python-zeroconf/python-zeroconf/ https://pypi.org/project/zeroconf/
INHERIT=distutils-r1 pypi
IUSE=test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
-KEYWORDS=amd64 ~arm arm64 ~x86 ~amd64-linux ~x86-linux
+KEYWORDS=amd64 ~arm arm64 x86 ~amd64-linux ~x86-linux
LICENSE=LGPL-2.1+
RDEPEND=>=dev-python/ifaddr-0.1.7[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://files.pythonhosted.org/packages/source/z/zeroconf/zeroconf-0.146.3.tar.gz
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c pypi ad1b21f87d117ae9bb089bdb65b8f013 python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=06a2dfbe0d7e9e133eef2d3c9ba20e29
+_md5_=2ce8eb22cee5c91fd23dbc5d3e91798c
diff --git a/metadata/md5-cache/dev-qt/qtxml-5.15.16 b/metadata/md5-cache/dev-qt/qtxml-5.15.16
deleted file mode 100644
index 72a8dca33981..000000000000
--- a/metadata/md5-cache/dev-qt/qtxml-5.15.16
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-lang/perl virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst postrm prepare test
-DEPEND==dev-qt/qtcore-5.15.16*:5= test? ( =dev-qt/qtnetwork-5.15.16* ) test? ( =dev-qt/qttest-5.15.16* )
-DESCRIPTION=Implementation of SAX and DOM for the Qt5 framework
-EAPI=8
-HOMEPAGE=https://www.qt.io/ https://invent.kde.org/qt/qt/qtbase https://community.kde.org/Qt5PatchCollection
-INHERIT=qt5-build
-IUSE=debug test
-KEYWORDS=amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86
-LICENSE=|| ( GPL-2 GPL-3 LGPL-3 ) FDL-1.3
-RDEPEND==dev-qt/qtcore-5.15.16*:5=
-RESTRICT=test
-SLOT=5/5.15
-SRC_URI=https://download.qt.io/official_releases/qt/5.15/5.15.16/submodules/qtbase-everywhere-opensource-src-5.15.16.tar.xz https://dev.gentoo.org/~asturm/distfiles/qtbase-5.15.16-gentoo-kde-1.tar.xz https://dev.gentoo.org/~asturm/distfiles/qtbase-5.15-gentoo-patchset-6.tar.xz
-_eclasses_=estack c61c368a76fdf3a82fdf8dbaebea3804 flag-o-matic e8de74bac929ba17427e740e95707d00 qt5-build 09e8263c08e9b60281a89d9abe5da7b8 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 virtualx 9741d451eb64ea8bb9faee90d68a9b68
-_md5_=359ab2ab16b7e65ff8ac5c1964957156
diff --git a/metadata/md5-cache/dev-ruby/async-pool-0.10.3 b/metadata/md5-cache/dev-ruby/async-pool-0.10.3
index 429d087e9c17..7adc3a42bd54 100644
--- a/metadata/md5-cache/dev-ruby/async-pool-0.10.3
+++ b/metadata/md5-cache/dev-ruby/async-pool-0.10.3
@@ -1,17 +1,17 @@
-BDEPEND=test? ( ruby_targets_ruby32? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) test? ( ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) )
+BDEPEND=test? ( ruby_targets_ruby32? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby34(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby34? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby34(-)] ) ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby34? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby34(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby34? ( test? ( dev-ruby/sus[ruby_targets_ruby34(-)] ) ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] ) test? ( ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] ) )
DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] )
+DEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] )
DESCRIPTION=A singleplex and multiplex resource pool for implementing robust clients
EAPI=8
HOMEPAGE=https://github.com/socketry/async-pool
INHERIT=ruby-fakegem
-IUSE=test ruby_targets_ruby32 ruby_targets_ruby33 doc test test
+IUSE=test ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 doc test test
KEYWORDS=~amd64
LICENSE=MIT
-RDEPEND=ruby_targets_ruby32? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby33(-)] ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] )
-REQUIRED_USE=|| ( ruby_targets_ruby32 ruby_targets_ruby33 )
+RDEPEND=ruby_targets_ruby32? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby34(-)] ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] )
+REQUIRED_USE=|| ( ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 )
RESTRICT=!test? ( test ) !test? ( test )
SLOT=0
SRC_URI=https://github.com/socketry/async-pool/archive/refs/tags/v0.10.3.tar.gz -> async-pool-0.10.3.tar.gz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 multilib b2a329026f2e404e9e371097dda47f96 ruby-fakegem 92ad9217e94825cb9c8ad831b513a7ec ruby-ng 63f7c7b319d423d92374d431c1837094 ruby-utils cb2cdbbce7fae7a6b2b1021219b0680d toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=bef0316f9db436046a3b585bf1a1055a
+_md5_=fa7ad09756cad63a5a222452703822b5
diff --git a/metadata/md5-cache/dev-ruby/async-pool-0.7.0 b/metadata/md5-cache/dev-ruby/async-pool-0.7.0
deleted file mode 100644
index 431d41d9ef93..000000000000
--- a/metadata/md5-cache/dev-ruby/async-pool-0.7.0
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=test? ( ruby_targets_ruby32? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) test? ( ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) )
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] )
-DESCRIPTION=A singleplex and multiplex resource pool for implementing robust clients
-EAPI=8
-HOMEPAGE=https://github.com/socketry/async-pool
-INHERIT=ruby-fakegem
-IUSE=test ruby_targets_ruby32 ruby_targets_ruby33 doc test test
-KEYWORDS=~amd64
-LICENSE=MIT
-RDEPEND=ruby_targets_ruby32? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( >=dev-ruby/async-1.25:*[ruby_targets_ruby33(-)] ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] )
-REQUIRED_USE=|| ( ruby_targets_ruby32 ruby_targets_ruby33 )
-RESTRICT=!test? ( test ) !test? ( test )
-SLOT=0
-SRC_URI=https://github.com/socketry/async-pool/archive/refs/tags/v0.7.0.tar.gz -> async-pool-0.7.0.tar.gz
-_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 multilib b2a329026f2e404e9e371097dda47f96 ruby-fakegem 92ad9217e94825cb9c8ad831b513a7ec ruby-ng 63f7c7b319d423d92374d431c1837094 ruby-utils cb2cdbbce7fae7a6b2b1021219b0680d toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=083e6b33199073640631cfd4af8d2e0c
diff --git a/metadata/md5-cache/dev-ruby/io-endpoint-0.15.2 b/metadata/md5-cache/dev-ruby/io-endpoint-0.15.2
index 157f1d1d9e6b..4901bf03d318 100644
--- a/metadata/md5-cache/dev-ruby/io-endpoint-0.15.2
+++ b/metadata/md5-cache/dev-ruby/io-endpoint-0.15.2
@@ -1,17 +1,17 @@
-BDEPEND=ruby_targets_ruby32? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby32(-)] dev-ruby/sus-fixtures-openssl[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby33(-)] dev-ruby/sus-fixtures-openssl[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) test? ( ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) )
+BDEPEND=ruby_targets_ruby32? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby32(-)] dev-ruby/sus-fixtures-openssl[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby33(-)] dev-ruby/sus-fixtures-openssl[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby34? ( test? ( dev-ruby/sus-fixtures-async[ruby_targets_ruby34(-)] dev-ruby/sus-fixtures-openssl[ruby_targets_ruby34(-)] ) ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby34? ( doc? ( dev-ruby/rdoc[ruby_targets_ruby34(-)] ) ) ruby_targets_ruby32? ( test? ( dev-ruby/sus[ruby_targets_ruby32(-)] ) ) ruby_targets_ruby33? ( test? ( dev-ruby/sus[ruby_targets_ruby33(-)] ) ) ruby_targets_ruby34? ( test? ( dev-ruby/sus[ruby_targets_ruby34(-)] ) ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] ) test? ( ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] ) )
DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] )
+DEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] )
DESCRIPTION=Provides a separation of concerns interface for IO endpoints
EAPI=8
HOMEPAGE=https://github.com/socketry/io-endpoint
INHERIT=ruby-fakegem
-IUSE=test ruby_targets_ruby32 ruby_targets_ruby33 doc test test
+IUSE=test ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 doc test test
KEYWORDS=~amd64
LICENSE=MIT
-RDEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] )
-REQUIRED_USE=|| ( ruby_targets_ruby32 ruby_targets_ruby33 )
+RDEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] )
+REQUIRED_USE=|| ( ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 )
RESTRICT=!test? ( test ) !test? ( test )
SLOT=0
SRC_URI=https://github.com/socketry/io-endpoint/archive/refs/tags/v0.15.2.tar.gz -> io-endpoint-0.15.2.tar.gz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 multilib b2a329026f2e404e9e371097dda47f96 ruby-fakegem 92ad9217e94825cb9c8ad831b513a7ec ruby-ng 63f7c7b319d423d92374d431c1837094 ruby-utils cb2cdbbce7fae7a6b2b1021219b0680d toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=958236918715ad3310d210936091990d
+_md5_=d6d0415ab21e2f08128bd29e93f1c732
diff --git a/metadata/md5-cache/dev-ruby/pkg-config-1.5.9 b/metadata/md5-cache/dev-ruby/pkg-config-1.5.9
index 78dfa359a45a..7b749978740a 100644
--- a/metadata/md5-cache/dev-ruby/pkg-config-1.5.9
+++ b/metadata/md5-cache/dev-ruby/pkg-config-1.5.9
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://github.com/ruby-gnome/pkg-config
INHERIT=ruby-fakegem
IUSE=test ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 doc test test
-KEYWORDS=~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc ~x86
+KEYWORDS=~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86
LICENSE=|| ( LGPL-2 LGPL-2.1 LGPL-3 )
RDEPEND=ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] )
REQUIRED_USE=|| ( ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test ) !test? ( test )
SLOT=0
SRC_URI=https://rubygems.org/gems/pkg-config-1.5.9.gem
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 multilib b2a329026f2e404e9e371097dda47f96 ruby-fakegem 92ad9217e94825cb9c8ad831b513a7ec ruby-ng 63f7c7b319d423d92374d431c1837094 ruby-utils cb2cdbbce7fae7a6b2b1021219b0680d toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=b9e348ba2299ae63e2643710accff35d
+_md5_=b0f2d674a117987d047a5708b468bfd1
diff --git a/metadata/md5-cache/dev-ruby/psych-5.2.3 b/metadata/md5-cache/dev-ruby/psych-5.2.3
index 4ecdb60a2dce..46205d192c65 100644
--- a/metadata/md5-cache/dev-ruby/psych-5.2.3
+++ b/metadata/md5-cache/dev-ruby/psych-5.2.3
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://github.com/ruby/psych
INHERIT=ruby-fakegem
IUSE=test ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 doc test test
-KEYWORDS=~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris
+KEYWORDS=~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris
LICENSE=BSD-2
RDEPEND=>=dev-libs/libyaml-0.2.5 ruby_targets_ruby32? ( dev-ruby/date[ruby_targets_ruby32(-)] dev-ruby/stringio[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( dev-ruby/date[ruby_targets_ruby33(-)] dev-ruby/stringio[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( dev-ruby/date[ruby_targets_ruby34(-)] dev-ruby/stringio[ruby_targets_ruby34(-)] ) ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) ruby_targets_ruby34? ( dev-lang/ruby:3.4 ) ruby_targets_ruby32? ( virtual/rubygems[ruby_targets_ruby32(-)] ) ruby_targets_ruby33? ( virtual/rubygems[ruby_targets_ruby33(-)] ) ruby_targets_ruby34? ( virtual/rubygems[ruby_targets_ruby34(-)] )
REQUIRED_USE=|| ( ruby_targets_ruby32 ruby_targets_ruby33 ruby_targets_ruby34 )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test ) !test? ( test )
SLOT=5
SRC_URI=https://github.com/ruby/psych/archive/refs/tags/v5.2.3.tar.gz -> psych-5.2.3.tar.gz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 multilib b2a329026f2e404e9e371097dda47f96 ruby-fakegem 92ad9217e94825cb9c8ad831b513a7ec ruby-ng 63f7c7b319d423d92374d431c1837094 ruby-utils cb2cdbbce7fae7a6b2b1021219b0680d toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=295ed4c6707fcf8b576e1b92a424e0af
+_md5_=8bbfe5ed7cd7c2bc1f5cfa9b0ca3b729
diff --git a/metadata/md5-cache/dev-util/kernelshark-2.3.2 b/metadata/md5-cache/dev-util/kernelshark-2.3.2-r1
index 1af14f62f66f..054b31534281 100644
--- a/metadata/md5-cache/dev-util/kernelshark-2.3.2
+++ b/metadata/md5-cache/dev-util/kernelshark-2.3.2-r1
@@ -1,6 +1,6 @@
BDEPEND=doc? ( media-gfx/graphviz app-text/doxygen ) app-alternatives/ninja >=dev-build/cmake-3.20.5
DEFINED_PHASES=compile configure install prepare test
-DEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= >=media-libs/freeglut-3.0.0:= x11-libs/libXmu:= x11-libs/libXi:= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 media-fonts/freefont
+DEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= dev-util/trace-cmd:= >=media-libs/freeglut-3.0.0:= x11-libs/libXmu:= x11-libs/libXi:= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 media-fonts/freefont
DESCRIPTION=Graphical reader for trace-cmd output
EAPI=8
HOMEPAGE=https://kernelshark.org/
@@ -8,8 +8,8 @@ INHERIT=flag-o-matic cmake
IUSE=custom-optimization doc
KEYWORDS=~amd64 ~x86
LICENSE=GPL-2 LGPL-2.1
-RDEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= >=media-libs/freeglut-3.0.0:= x11-libs/libXmu:= x11-libs/libXi:= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 media-fonts/freefont
+RDEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= dev-util/trace-cmd:= >=media-libs/freeglut-3.0.0:= x11-libs/libXmu:= x11-libs/libXi:= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 media-fonts/freefont
SLOT=0
SRC_URI=https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git/snapshot/kernel-shark-kernelshark-v2.3.2.tar.gz -> kernelshark-2.3.2.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=0f212702886b53aad180cf5a87b7269f
+_md5_=9d29876d55e393a1d115d435bc7219c0
diff --git a/metadata/md5-cache/dev-util/kernelshark-2.4.0 b/metadata/md5-cache/dev-util/kernelshark-2.4.0-r1
index 9c6c56499953..56d5827a168f 100644
--- a/metadata/md5-cache/dev-util/kernelshark-2.4.0
+++ b/metadata/md5-cache/dev-util/kernelshark-2.4.0-r1
@@ -1,6 +1,6 @@
BDEPEND=doc? ( media-gfx/graphviz app-text/doxygen ) app-alternatives/ninja >=dev-build/cmake-3.20.5
DEFINED_PHASES=compile configure install prepare test
-DEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 >=media-libs/freeglut-3.0.0:= sys-devel/gcc:=[openmp] x11-libs/libXmu:= x11-libs/libXi:= media-fonts/freefont
+DEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 dev-util/trace-cmd:= >=media-libs/freeglut-3.0.0:= sys-devel/gcc:=[openmp] x11-libs/libXmu:= x11-libs/libXi:= media-fonts/freefont
DESCRIPTION=Graphical reader for trace-cmd output
EAPI=8
HOMEPAGE=https://kernelshark.org/
@@ -8,8 +8,8 @@ INHERIT=flag-o-matic cmake
IUSE=custom-optimization doc
KEYWORDS=~amd64 ~x86
LICENSE=GPL-2 LGPL-2.1
-RDEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 >=media-libs/freeglut-3.0.0:= sys-devel/gcc:=[openmp] x11-libs/libXmu:= x11-libs/libXi:= media-fonts/freefont
+RDEPEND=dev-libs/libtracecmd dev-libs/json-c:= dev-qt/qtbase:6=[network,opengl,widgets] dev-qt/qtscxml:6= >=dev-libs/libtracefs-1.3 >=dev-libs/libtraceevent-1.5 dev-util/trace-cmd:= >=media-libs/freeglut-3.0.0:= sys-devel/gcc:=[openmp] x11-libs/libXmu:= x11-libs/libXi:= media-fonts/freefont
SLOT=0
SRC_URI=https://git.kernel.org/pub/scm/utils/trace-cmd/kernel-shark.git/snapshot/kernel-shark-kernelshark-v2.4.0.tar.gz -> kernelshark-2.4.0.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=8e6c5b794c0c401c3ecfdf2467ef18d5
+_md5_=57f8b81a7a800e545f8be27039f4064f
diff --git a/metadata/md5-cache/dev-util/nsight-compute-2025.1.1.2 b/metadata/md5-cache/dev-util/nsight-compute-2025.1.1.2
index ce73c9776a73..7630776e8d1c 100644
--- a/metadata/md5-cache/dev-util/nsight-compute-2025.1.1.2
+++ b/metadata/md5-cache/dev-util/nsight-compute-2025.1.1.2
@@ -3,12 +3,12 @@ DEFINED_PHASES=compile configure install prepare unpack
DESCRIPTION=performance analysis tool designed to visualize an application’s algorithms
EAPI=8
HOMEPAGE=https://developer.nvidia.com/nsight-systems
-INHERIT=desktop unpacker
+INHERIT=desktop edo unpacker
KEYWORDS=~amd64 ~arm64
LICENSE=NVIDIA-r2
RDEPEND=dev-libs/expat dev-libs/glib:2 dev-libs/nspr dev-libs/nss dev-libs/wayland dev-qt/qtdeclarative:6 dev-qt/qtpositioning:6 dev-qt/qtwayland:6 dev-qt/qtwebchannel:6 dev-qt/qtwebengine:6 media-libs/fontconfig media-libs/libglvnd media-libs/tiff-compat:4 sys-apps/dbus sys-cluster/rdma-core x11-drivers/nvidia-drivers x11-libs/libX11 x11-libs/libXcomposite x11-libs/libXdamage x11-libs/libXext x11-libs/libXfixes x11-libs/libXi x11-libs/libXrandr x11-libs/libXrender x11-libs/libXtst x11-libs/libdrm x11-libs/libxcb:= x11-libs/libxkbcommon x11-libs/libxkbfile x11-libs/libxshmfence x11-libs/xcb-util-cursor x11-libs/xcb-util-image x11-libs/xcb-util-keysyms x11-libs/xcb-util-renderutil x11-libs/xcb-util-wm
RESTRICT=bindist mirror strip test
SLOT=2025.1.1.2
SRC_URI=amd64? ( https://developer.nvidia.com/downloads/assets/tools/secure/nsight-compute/2025_1_1/nsight-compute-linux-2025.1.1.2-35528883.run ) arm64? ( https://developer.nvidia.com/downloads/assets/tools/secure/nsight-compute/2025_1_1/nsight-compute-armserver-2025.1.1.2-35528883.run ) mirror+https://developer.download.nvidia.com/images/nvidia-nsight-compute-icon-gbp-shaded-128.png -> nvidia-nsight-compute-icon-gbp-shaded-128.20231126.png
-_eclasses_=desktop 3a72ffe0d8e1dd73af3a1c8c15a59fed multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
-_md5_=b728f11836bf0023ac8336df38647c93
+_eclasses_=desktop 3a72ffe0d8e1dd73af3a1c8c15a59fed edo 367e103a74bf77e6a8da7894d999fa3c multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
+_md5_=9c6df81d44883266b28ca64359665fe5
diff --git a/metadata/md5-cache/dev-util/nsight-graphics-2025.2.0 b/metadata/md5-cache/dev-util/nsight-graphics-2025.2.0
index cc5e4e147980..b0a0e00ec7bc 100644
--- a/metadata/md5-cache/dev-util/nsight-graphics-2025.2.0
+++ b/metadata/md5-cache/dev-util/nsight-graphics-2025.2.0
@@ -3,12 +3,12 @@ DEFINED_PHASES=compile configure install prepare unpack
DESCRIPTION=standalone developer tool with ray-tracing support
EAPI=8
HOMEPAGE=https://developer.nvidia.com/nsight-graphics
-INHERIT=desktop unpacker
+INHERIT=desktop edo unpacker
KEYWORDS=~amd64
LICENSE=NVIDIA-r2
RDEPEND=dev-libs/glib:2 dev-libs/wayland dev-qt/qtdeclarative:6 dev-qt/qtpositioning:6 dev-qt/qtwayland:6 dev-qt/qtwebchannel:6 dev-qt/qtwebengine:6 media-libs/fontconfig media-libs/libglvnd media-libs/tiff-compat:4 sys-apps/dbus sys-apps/util-linux x11-drivers/nvidia-drivers x11-libs/libX11 x11-libs/libxcb x11-libs/libxkbcommon x11-libs/xcb-util-cursor x11-libs/xcb-util-image x11-libs/xcb-util-keysyms x11-libs/xcb-util-renderutil x11-libs/xcb-util-wm
RESTRICT=bindist mirror strip test
SLOT=2025.2
SRC_URI=https://developer.nvidia.com/downloads/assets/tools/secure/nsight-graphics/2025_2_0/linux/NVIDIA_Nsight_Graphics_2025.2.0.25073.run mirror+https://developer.download.nvidia.com/images/nvidia-nsight-graphics-icon-gbp-shaded-128.png -> nvidia-nsight-graphics-icon-gbp-shaded-128.20231126.png
-_eclasses_=desktop 3a72ffe0d8e1dd73af3a1c8c15a59fed multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
-_md5_=df6f9eb6751f7211b1f611652e4da3db
+_eclasses_=desktop 3a72ffe0d8e1dd73af3a1c8c15a59fed edo 367e103a74bf77e6a8da7894d999fa3c multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
+_md5_=195ad2692ad7ba300ccfdbff2b0a61d9
diff --git a/metadata/md5-cache/dev-util/nsight-systems-2025.2.1 b/metadata/md5-cache/dev-util/nsight-systems-2025.2.1
index 15464a9e5059..6dea1293747d 100644
--- a/metadata/md5-cache/dev-util/nsight-systems-2025.2.1
+++ b/metadata/md5-cache/dev-util/nsight-systems-2025.2.1
@@ -3,12 +3,12 @@ DEFINED_PHASES=compile configure install prepare unpack
DESCRIPTION=performance analysis tool designed to visualize an application’s algorithms
EAPI=8
HOMEPAGE=https://developer.nvidia.com/nsight-systems
-INHERIT=unpacker
+INHERIT=edo unpacker
KEYWORDS=~amd64 ~arm64
LICENSE=NVIDIA-r2
RDEPEND=app-crypt/mit-krb5 dev-libs/expat dev-libs/glib:2 dev-libs/nspr dev-libs/nss dev-libs/wayland dev-qt/qtwayland:6 media-libs/fontconfig media-libs/freetype media-libs/gst-plugins-base:1.0 media-libs/gstreamer:1.0 media-libs/libglvnd media-libs/tiff-compat:4 sys-apps/dbus sys-cluster/rdma-core x11-drivers/nvidia-drivers x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXcomposite x11-libs/libXdamage x11-libs/libXext x11-libs/libXfixes x11-libs/libXrandr x11-libs/libXrender x11-libs/libXtst x11-libs/libxcb x11-libs/libxkbcommon x11-libs/libxkbfile x11-libs/libxshmfence x11-libs/xcb-util-image x11-libs/xcb-util-keysyms x11-libs/xcb-util-renderutil x11-libs/xcb-util-wm arm64? ( media-libs/gst-plugins-bad:1.0 )
RESTRICT=bindist mirror strip test
SLOT=2025.2.1
SRC_URI=amd64? ( https://developer.nvidia.com/downloads/assets/tools/secure/nsight-systems/2025_2/nsight-systems-2025.2.1_2025.2.1.130-1_amd64.deb ) arm64? ( https://developer.nvidia.com/downloads/assets/tools/secure/nsight-systems/2025_2/nsight-systems-2025.2.1_2025.2.1.130-1_arm64.deb )
-_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
-_md5_=d5b5c736e211acec5b1cba495be964d6
+_eclasses_=edo 367e103a74bf77e6a8da7894d999fa3c multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
+_md5_=14161c8baa8918d8d17d1e793249bcb1
diff --git a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.1-r1 b/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.1-r1
deleted file mode 100644
index 41e99a459455..000000000000
--- a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.1-r1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=nsight? ( dev-util/patchelf )
-DEFINED_PHASES=install postinst prepare pretend setup unpack
-DESCRIPTION=NVIDIA CUDA Toolkit (compiler and friends)
-EAPI=8
-HOMEPAGE=https://developer.nvidia.com/cuda-zone
-INHERIT=check-reqs toolchain-funcs unpacker
-IUSE=debugger examples nsight profiler rdma vis-profiler sanitizer
-KEYWORDS=-* ~amd64 ~amd64-linux
-LICENSE=NVIDIA-CUDA
-RDEPEND=<sys-devel/gcc-14_pre[cxx] virtual/libcrypt examples? ( media-libs/freeglut media-libs/glu ) nsight? ( app-crypt/mit-krb5 dev-libs/libpfm dev-libs/wayland dev-qt/qtwayland:6 >=dev-libs/openssl-3 media-libs/tiff-compat:4 sys-libs/zlib ) rdma? ( sys-cluster/rdma-core ) vis-profiler? ( >=virtual/jre-1.8:* )
-RESTRICT=bindist mirror
-SLOT=0/12.6.1
-SRC_URI=https://developer.download.nvidia.com/compute/cuda/12.6.1/local_installers/cuda_12.6.1_560.35.03_linux.run
-_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
-_md5_=b501eed1d58cb039022dbbe838f2e1a8
diff --git a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.3 b/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.3
index 229768411efe..640bdda8920f 100644
--- a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.3
+++ b/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.6.3
@@ -3,7 +3,7 @@ DEFINED_PHASES=compile configure install postinst prepare pretend setup unpack
DESCRIPTION=NVIDIA CUDA Toolkit (compiler and friends)
EAPI=8
HOMEPAGE=https://developer.nvidia.com/cuda-zone
-INHERIT=check-reqs toolchain-funcs python-r1
+INHERIT=check-reqs edo toolchain-funcs python-r1
IUSE=debugger examples profiler rdma sanitizer python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
KEYWORDS=-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux
LICENSE=NVIDIA-CUDA
@@ -12,5 +12,5 @@ REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targ
RESTRICT=bindist mirror strip test
SLOT=0/12.6.3
SRC_URI=amd64? ( https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.3_560.35.05_linux.run ) arm64? ( https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda_12.6.3_560.35.05_linux_sbsa.run )
-_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b multibuild 4650a65187015567b4e041bb9bfdb364 multiprocessing 1e32df7deee68372153dca65f4a7c21f out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=5d81431ae1a4046a8742b7338252f2ab
+_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b edo 367e103a74bf77e6a8da7894d999fa3c multibuild 4650a65187015567b4e041bb9bfdb364 multiprocessing 1e32df7deee68372153dca65f4a7c21f out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=df9d00d67f84711c7ae80325be5b962e
diff --git a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.0-r3 b/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.0-r3
deleted file mode 100644
index a5f33aad525b..000000000000
--- a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.0-r3
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=|| ( ( dev-lang/python:3.13 dev-python/defusedxml[python_targets_python3_13(-)] ) ( dev-lang/python:3.12 dev-python/defusedxml[python_targets_python3_12(-)] ) ( dev-lang/python:3.11 dev-python/defusedxml[python_targets_python3_11(-)] ) ( dev-lang/python:3.10 dev-python/defusedxml[python_targets_python3_10(-)] ) ( dev-lang/python:3.9 dev-python/defusedxml[python_targets_python3_9(-)] ) )
-DEFINED_PHASES=compile configure install postinst prepare pretend setup unpack
-DESCRIPTION=NVIDIA CUDA Toolkit (compiler and friends)
-EAPI=8
-HOMEPAGE=https://developer.nvidia.com/cuda-zone
-INHERIT=check-reqs toolchain-funcs python-r1
-IUSE=debugger examples profiler rdma sanitizer python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
-KEYWORDS=-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux
-LICENSE=NVIDIA-CUDA
-RDEPEND=|| ( <sys-devel/gcc-15_pre[cxx] <llvm-core/clang-20_pre ) sys-process/numactl debugger? ( python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) ) examples? ( media-libs/freeglut media-libs/glu ) rdma? ( sys-cluster/rdma-core )
-REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
-RESTRICT=bindist mirror strip test
-SLOT=0/12.8.0
-SRC_URI=amd64? ( https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda_12.8.0_570.86.10_linux.run ) arm64? ( https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda_12.8.0_570.86.10_linux_sbsa.run )
-_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b multibuild 4650a65187015567b4e041bb9bfdb364 multiprocessing 1e32df7deee68372153dca65f4a7c21f out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=341c6ce4c2d9f2fab5e9d61bcc7f60e4
diff --git a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.1 b/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.1
index 2f8b457e8d13..516befc1d1c4 100644
--- a/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.1
+++ b/metadata/md5-cache/dev-util/nvidia-cuda-toolkit-12.8.1
@@ -3,7 +3,7 @@ DEFINED_PHASES=compile configure install postinst prepare pretend setup unpack
DESCRIPTION=NVIDIA CUDA Toolkit (compiler and friends)
EAPI=8
HOMEPAGE=https://developer.nvidia.com/cuda-zone
-INHERIT=check-reqs toolchain-funcs python-r1
+INHERIT=check-reqs edo toolchain-funcs python-r1
IUSE=debugger examples profiler rdma sanitizer python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
KEYWORDS=-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux
LICENSE=NVIDIA-CUDA
@@ -12,5 +12,5 @@ REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targ
RESTRICT=bindist mirror strip test
SLOT=0/12.8.1
SRC_URI=amd64? ( https://developer.download.nvidia.com/compute/cuda/12.8.1/local_installers/cuda_12.8.1_570.124.06_linux.run ) arm64? ( https://developer.download.nvidia.com/compute/cuda/12.8.1/local_installers/cuda_12.8.1_570.124.06_linux_sbsa.run )
-_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b multibuild 4650a65187015567b4e041bb9bfdb364 multiprocessing 1e32df7deee68372153dca65f4a7c21f out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=ae8e3c5eddebda86701682110e4af2a7
+_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b edo 367e103a74bf77e6a8da7894d999fa3c multibuild 4650a65187015567b4e041bb9bfdb364 multiprocessing 1e32df7deee68372153dca65f4a7c21f out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=a36cd341198628f9cf6eaf172a4560cd
diff --git a/metadata/md5-cache/dev-util/reuse-5.0.2 b/metadata/md5-cache/dev-util/reuse-5.0.2
index 247317119dcc..15fa0ee42964 100644
--- a/metadata/md5-cache/dev-util/reuse-5.0.2
+++ b/metadata/md5-cache/dev-util/reuse-5.0.2
@@ -5,7 +5,7 @@ EAPI=8
HOMEPAGE=https://reuse.software/ https://github.com/fsfe/reuse-tool
INHERIT=distutils-r1
IUSE=test doc python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
-KEYWORDS=~amd64
+KEYWORDS=amd64
LICENSE=GPL-3+ CC-BY-SA-4.0 CC0-1.0 Apache-2.0
RDEPEND=>=dev-python/binaryornot-0.4.4[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/boolean-py-3.8[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/jinja2-3.0.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/license-expression-1.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/python-debian-0.1.48[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/tomlkit-0.8[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/attrs-21.3[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/click-8.0.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
@@ -13,4 +13,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/fsfe/reuse-tool/archive/refs/tags/v5.0.2.tar.gz -> reuse-5.0.2.gh.tar.gz
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=b49e6b7d58ba73955cf795cc6b8d5772
+_md5_=53f733b3c668f8da621756f1329bf15e
diff --git a/metadata/md5-cache/dev-util/unicorn-2.1.3 b/metadata/md5-cache/dev-util/unicorn-2.1.3
index ccd73aaec311..aad798d7a57f 100644
--- a/metadata/md5-cache/dev-util/unicorn-2.1.3
+++ b/metadata/md5-cache/dev-util/unicorn-2.1.3
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://www.unicorn-engine.org
INHERIT=cmake distutils-r1
IUSE=logging python static-libs test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
-KEYWORDS=~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86
+KEYWORDS=amd64 ~arm arm64 ~ppc ~ppc64 ~riscv x86
LICENSE=BSD-2 GPL-2 LGPL-2.1
RDEPEND=python? ( python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) )
REQUIRED_USE=python? ( || ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 ) )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0/2
SRC_URI=https://github.com/unicorn-engine/unicorn/archive/2.1.3.tar.gz -> unicorn-2.1.3.gh.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=0d2a37ebf5d483c5040eb455e5c4ef9f
+_md5_=4ca316c1fab0e123c40b80b738ab2369
diff --git a/metadata/md5-cache/dev-util/watchman-2025.04.14.00 b/metadata/md5-cache/dev-util/watchman-2025.04.14.00
new file mode 100644
index 000000000000..d79f6e2131a9
--- /dev/null
+++ b/metadata/md5-cache/dev-util/watchman-2025.04.14.00
@@ -0,0 +1,17 @@
+BDEPEND=test? ( >=dev-libs/libfmt-8.1.1-r1:= ~dev-cpp/edencommon-2025.04.14.00:= ~dev-cpp/fb303-2025.04.14.00:= ~dev-cpp/fbthrift-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/cpptoml:= dev-cpp/glog:= dev-libs/boost:= dev-libs/libpcre2:= dev-libs/openssl:= llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= ) python? ( python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) ) ) || ( dev-lang/rust-bin:9999 dev-lang/rust:9999 dev-lang/rust-bin:1.86.0 dev-lang/rust:1.86.0 dev-lang/rust-bin:1.85.1 dev-lang/rust:1.85.1 dev-lang/rust-bin:1.85.0 dev-lang/rust:1.85.0 dev-lang/rust-bin:1.84.1 dev-lang/rust:1.84.1 dev-lang/rust-bin:1.84.0 dev-lang/rust:1.84.0 dev-lang/rust-bin:1.83.0 dev-lang/rust:1.83.0 dev-lang/rust-bin:1.82.0 dev-lang/rust:1.82.0 dev-lang/rust-bin:1.81.0 dev-lang/rust:1.81.0 dev-lang/rust-bin:1.80.1 dev-lang/rust:1.80.1 dev-lang/rust-bin:1.79.0 dev-lang/rust:1.79.0 dev-lang/rust-bin:1.78.0 dev-lang/rust:1.78.0 dev-lang/rust-bin:1.77.1 dev-lang/rust:1.77.1 dev-lang/rust-bin:1.76.0 dev-lang/rust:1.76.0 dev-lang/rust-bin:1.75.0 dev-lang/rust:1.75.0 dev-lang/rust-bin:1.74.1 dev-lang/rust:1.74.1 dev-lang/rust-bin:1.71.1 dev-lang/rust:1.71.1 ) app-alternatives/ninja >=dev-build/cmake-3.20.5 python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) >=dev-python/gpep517-16[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] >=dev-python/setuptools-78.1.0[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?]
+DEFINED_PHASES=compile configure install postinst prepare setup test unpack
+DEPEND=>=dev-libs/libfmt-8.1.1-r1:= ~dev-cpp/edencommon-2025.04.14.00:= ~dev-cpp/fb303-2025.04.14.00:= ~dev-cpp/fbthrift-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/cpptoml:= dev-cpp/glog:= dev-libs/boost:= dev-libs/libpcre2:= dev-libs/openssl:= llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= ) python? ( python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) ) test? ( dev-cpp/gtest ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
+DESCRIPTION=A file watching service
+EAPI=8
+HOMEPAGE=https://facebook.github.io/watchman/
+INHERIT=cargo cmake distutils-r1 tmpfiles
+IUSE=llvm-libunwind python test test debug python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 debug
+KEYWORDS=~amd64 ~arm64
+LICENSE=MIT Apache-2.0 MIT Unicode-3.0 WTFPL-2
+RDEPEND=>=dev-libs/libfmt-8.1.1-r1:= ~dev-cpp/edencommon-2025.04.14.00:= ~dev-cpp/fb303-2025.04.14.00:= ~dev-cpp/fbthrift-2025.04.14.00:= ~dev-cpp/folly-2025.04.14.00:= dev-cpp/cpptoml:= dev-cpp/glog:= dev-libs/boost:= dev-libs/libpcre2:= dev-libs/openssl:= llvm-libunwind? ( llvm-runtimes/libunwind:= ) !llvm-libunwind? ( sys-libs/libunwind:= ) python? ( python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) virtual/tmpfiles
+REQUIRED_USE=python? ( || ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 ) ) || ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
+RESTRICT=!test? ( test ) !test? ( test )
+SLOT=0
+SRC_URI=https://github.com/facebook/watchman/archive/refs/tags/v2025.04.14.00.tar.gz -> watchman-2025.04.14.00.tar.gz https://crates.io/api/v1/crates/addr2line/0.24.2/download -> addr2line-0.24.2.crate https://crates.io/api/v1/crates/adler2/2.0.0/download -> adler2-2.0.0.crate https://crates.io/api/v1/crates/ahash/0.8.11/download -> ahash-0.8.11.crate https://crates.io/api/v1/crates/aho-corasick/1.1.3/download -> aho-corasick-1.1.3.crate https://crates.io/api/v1/crates/android-tzdata/0.1.1/download -> android-tzdata-0.1.1.crate https://crates.io/api/v1/crates/android_system_properties/0.1.5/download -> android_system_properties-0.1.5.crate https://crates.io/api/v1/crates/ansi_term/0.12.1/download -> ansi_term-0.12.1.crate https://crates.io/api/v1/crates/anstream/0.6.18/download -> anstream-0.6.18.crate https://crates.io/api/v1/crates/anstyle-parse/0.2.6/download -> anstyle-parse-0.2.6.crate https://crates.io/api/v1/crates/anstyle-query/1.1.2/download -> anstyle-query-1.1.2.crate https://crates.io/api/v1/crates/anstyle-wincon/3.0.7/download -> anstyle-wincon-3.0.7.crate https://crates.io/api/v1/crates/anstyle/1.0.10/download -> anstyle-1.0.10.crate https://crates.io/api/v1/crates/anyhow/1.0.98/download -> anyhow-1.0.98.crate https://crates.io/api/v1/crates/atty/0.2.14/download -> atty-0.2.14.crate https://crates.io/api/v1/crates/autocfg/1.4.0/download -> autocfg-1.4.0.crate https://crates.io/api/v1/crates/backtrace/0.3.74/download -> backtrace-0.3.74.crate https://crates.io/api/v1/crates/base64/0.10.1/download -> base64-0.10.1.crate https://crates.io/api/v1/crates/bitflags/1.3.2/download -> bitflags-1.3.2.crate https://crates.io/api/v1/crates/bitflags/2.9.0/download -> bitflags-2.9.0.crate https://crates.io/api/v1/crates/bumpalo/3.17.0/download -> bumpalo-3.17.0.crate https://crates.io/api/v1/crates/byteorder/1.5.0/download -> byteorder-1.5.0.crate https://crates.io/api/v1/crates/bytes/1.10.1/download -> bytes-1.10.1.crate https://crates.io/api/v1/crates/cc/1.2.19/download -> cc-1.2.19.crate https://crates.io/api/v1/crates/cfg-if/1.0.0/download -> cfg-if-1.0.0.crate https://crates.io/api/v1/crates/cfg_aliases/0.2.1/download -> cfg_aliases-0.2.1.crate https://crates.io/api/v1/crates/chrono/0.4.40/download -> chrono-0.4.40.crate https://crates.io/api/v1/crates/clap/2.34.0/download -> clap-2.34.0.crate https://crates.io/api/v1/crates/clap/4.5.37/download -> clap-4.5.37.crate https://crates.io/api/v1/crates/clap_builder/4.5.37/download -> clap_builder-4.5.37.crate https://crates.io/api/v1/crates/clap_derive/4.5.32/download -> clap_derive-4.5.32.crate https://crates.io/api/v1/crates/clap_lex/0.7.4/download -> clap_lex-0.7.4.crate https://crates.io/api/v1/crates/colorchoice/1.0.3/download -> colorchoice-1.0.3.crate https://crates.io/api/v1/crates/core-foundation-sys/0.8.7/download -> core-foundation-sys-0.8.7.crate https://crates.io/api/v1/crates/crossbeam-channel/0.5.15/download -> crossbeam-channel-0.5.15.crate https://crates.io/api/v1/crates/crossbeam-deque/0.8.6/download -> crossbeam-deque-0.8.6.crate https://crates.io/api/v1/crates/crossbeam-epoch/0.9.18/download -> crossbeam-epoch-0.9.18.crate https://crates.io/api/v1/crates/crossbeam-queue/0.3.12/download -> crossbeam-queue-0.3.12.crate https://crates.io/api/v1/crates/crossbeam-utils/0.8.21/download -> crossbeam-utils-0.8.21.crate https://crates.io/api/v1/crates/crossbeam/0.8.4/download -> crossbeam-0.8.4.crate https://crates.io/api/v1/crates/deelevate/0.1.1/download -> deelevate-0.1.1.crate https://crates.io/api/v1/crates/dirs-sys/0.3.7/download -> dirs-sys-0.3.7.crate https://crates.io/api/v1/crates/dirs/4.0.0/download -> dirs-4.0.0.crate https://crates.io/api/v1/crates/duct/0.13.7/download -> duct-0.13.7.crate https://crates.io/api/v1/crates/either/1.15.0/download -> either-1.15.0.crate https://crates.io/api/v1/crates/embed-resource/1.8.0/download -> embed-resource-1.8.0.crate https://crates.io/api/v1/crates/filedescriptor/0.7.3/download -> filedescriptor-0.7.3.crate https://crates.io/api/v1/crates/fnv/1.0.7/download -> fnv-1.0.7.crate https://crates.io/api/v1/crates/futures-channel/0.3.31/download -> futures-channel-0.3.31.crate https://crates.io/api/v1/crates/futures-core/0.3.31/download -> futures-core-0.3.31.crate https://crates.io/api/v1/crates/futures-executor/0.3.31/download -> futures-executor-0.3.31.crate https://crates.io/api/v1/crates/futures-io/0.3.31/download -> futures-io-0.3.31.crate https://crates.io/api/v1/crates/futures-macro/0.3.31/download -> futures-macro-0.3.31.crate https://crates.io/api/v1/crates/futures-sink/0.3.31/download -> futures-sink-0.3.31.crate https://crates.io/api/v1/crates/futures-task/0.3.31/download -> futures-task-0.3.31.crate https://crates.io/api/v1/crates/futures-util/0.3.31/download -> futures-util-0.3.31.crate https://crates.io/api/v1/crates/futures/0.1.31/download -> futures-0.1.31.crate https://crates.io/api/v1/crates/futures/0.3.31/download -> futures-0.3.31.crate https://crates.io/api/v1/crates/getrandom/0.1.16/download -> getrandom-0.1.16.crate https://crates.io/api/v1/crates/getrandom/0.2.15/download -> getrandom-0.2.15.crate https://crates.io/api/v1/crates/gimli/0.31.1/download -> gimli-0.31.1.crate https://crates.io/api/v1/crates/heck/0.3.3/download -> heck-0.3.3.crate https://crates.io/api/v1/crates/heck/0.5.0/download -> heck-0.5.0.crate https://crates.io/api/v1/crates/hermit-abi/0.1.19/download -> hermit-abi-0.1.19.crate https://crates.io/api/v1/crates/iana-time-zone-haiku/0.1.2/download -> iana-time-zone-haiku-0.1.2.crate https://crates.io/api/v1/crates/iana-time-zone/0.1.63/download -> iana-time-zone-0.1.63.crate https://crates.io/api/v1/crates/is_terminal_polyfill/1.70.1/download -> is_terminal_polyfill-1.70.1.crate https://crates.io/api/v1/crates/itoa/1.0.15/download -> itoa-1.0.15.crate https://crates.io/api/v1/crates/js-sys/0.3.77/download -> js-sys-0.3.77.crate https://crates.io/api/v1/crates/jwalk/0.6.2/download -> jwalk-0.6.2.crate https://crates.io/api/v1/crates/lazy_static/1.5.0/download -> lazy_static-1.5.0.crate https://crates.io/api/v1/crates/libc/0.2.172/download -> libc-0.2.172.crate https://crates.io/api/v1/crates/libredox/0.1.3/download -> libredox-0.1.3.crate https://crates.io/api/v1/crates/lock_api/0.4.12/download -> lock_api-0.4.12.crate https://crates.io/api/v1/crates/log/0.4.27/download -> log-0.4.27.crate https://crates.io/api/v1/crates/maplit/1.0.2/download -> maplit-1.0.2.crate https://crates.io/api/v1/crates/maybe-uninit/2.0.0/download -> maybe-uninit-2.0.0.crate https://crates.io/api/v1/crates/memchr/2.7.4/download -> memchr-2.7.4.crate https://crates.io/api/v1/crates/memmem/0.1.1/download -> memmem-0.1.1.crate https://crates.io/api/v1/crates/memoffset/0.9.1/download -> memoffset-0.9.1.crate https://crates.io/api/v1/crates/miniz_oxide/0.8.8/download -> miniz_oxide-0.8.8.crate https://crates.io/api/v1/crates/mio/1.0.3/download -> mio-1.0.3.crate https://crates.io/api/v1/crates/nix/0.29.0/download -> nix-0.29.0.crate https://crates.io/api/v1/crates/nom/5.1.3/download -> nom-5.1.3.crate https://crates.io/api/v1/crates/ntapi/0.4.1/download -> ntapi-0.4.1.crate https://crates.io/api/v1/crates/num-bigint/0.2.6/download -> num-bigint-0.2.6.crate https://crates.io/api/v1/crates/num-complex/0.2.4/download -> num-complex-0.2.4.crate https://crates.io/api/v1/crates/num-derive/0.2.5/download -> num-derive-0.2.5.crate https://crates.io/api/v1/crates/num-integer/0.1.46/download -> num-integer-0.1.46.crate https://crates.io/api/v1/crates/num-iter/0.1.45/download -> num-iter-0.1.45.crate https://crates.io/api/v1/crates/num-rational/0.2.4/download -> num-rational-0.2.4.crate https://crates.io/api/v1/crates/num-traits/0.2.19/download -> num-traits-0.2.19.crate https://crates.io/api/v1/crates/num/0.2.1/download -> num-0.2.1.crate https://crates.io/api/v1/crates/object/0.36.7/download -> object-0.36.7.crate https://crates.io/api/v1/crates/once_cell/1.21.3/download -> once_cell-1.21.3.crate https://crates.io/api/v1/crates/ordered-float/1.1.1/download -> ordered-float-1.1.1.crate https://crates.io/api/v1/crates/os_pipe/1.2.1/download -> os_pipe-1.2.1.crate https://crates.io/api/v1/crates/parking_lot/0.12.3/download -> parking_lot-0.12.3.crate https://crates.io/api/v1/crates/parking_lot_core/0.9.10/download -> parking_lot_core-0.9.10.crate https://crates.io/api/v1/crates/pathsearch/0.2.0/download -> pathsearch-0.2.0.crate https://crates.io/api/v1/crates/phf/0.11.3/download -> phf-0.11.3.crate https://crates.io/api/v1/crates/phf_codegen/0.11.3/download -> phf_codegen-0.11.3.crate https://crates.io/api/v1/crates/phf_generator/0.11.3/download -> phf_generator-0.11.3.crate https://crates.io/api/v1/crates/phf_shared/0.11.3/download -> phf_shared-0.11.3.crate https://crates.io/api/v1/crates/pin-project-lite/0.2.16/download -> pin-project-lite-0.2.16.crate https://crates.io/api/v1/crates/pin-utils/0.1.0/download -> pin-utils-0.1.0.crate https://crates.io/api/v1/crates/ppv-lite86/0.2.21/download -> ppv-lite86-0.2.21.crate https://crates.io/api/v1/crates/proc-macro-error-attr/1.0.4/download -> proc-macro-error-attr-1.0.4.crate https://crates.io/api/v1/crates/proc-macro-error/1.0.4/download -> proc-macro-error-1.0.4.crate https://crates.io/api/v1/crates/proc-macro2/0.4.30/download -> proc-macro2-0.4.30.crate https://crates.io/api/v1/crates/proc-macro2/1.0.95/download -> proc-macro2-1.0.95.crate https://crates.io/api/v1/crates/quote/0.6.13/download -> quote-0.6.13.crate https://crates.io/api/v1/crates/quote/1.0.40/download -> quote-1.0.40.crate https://crates.io/api/v1/crates/rand/0.7.3/download -> rand-0.7.3.crate https://crates.io/api/v1/crates/rand/0.8.5/download -> rand-0.8.5.crate https://crates.io/api/v1/crates/rand_chacha/0.2.2/download -> rand_chacha-0.2.2.crate https://crates.io/api/v1/crates/rand_core/0.5.1/download -> rand_core-0.5.1.crate https://crates.io/api/v1/crates/rand_core/0.6.4/download -> rand_core-0.6.4.crate https://crates.io/api/v1/crates/rand_hc/0.2.0/download -> rand_hc-0.2.0.crate https://crates.io/api/v1/crates/rayon-core/1.12.1/download -> rayon-core-1.12.1.crate https://crates.io/api/v1/crates/rayon/1.10.0/download -> rayon-1.10.0.crate https://crates.io/api/v1/crates/redox_syscall/0.5.11/download -> redox_syscall-0.5.11.crate https://crates.io/api/v1/crates/redox_users/0.4.6/download -> redox_users-0.4.6.crate https://crates.io/api/v1/crates/regex-automata/0.4.9/download -> regex-automata-0.4.9.crate https://crates.io/api/v1/crates/regex-syntax/0.8.5/download -> regex-syntax-0.8.5.crate https://crates.io/api/v1/crates/regex/1.11.1/download -> regex-1.11.1.crate https://crates.io/api/v1/crates/rustc-demangle/0.1.24/download -> rustc-demangle-0.1.24.crate https://crates.io/api/v1/crates/rustc_version/0.4.1/download -> rustc_version-0.4.1.crate https://crates.io/api/v1/crates/rustversion/1.0.20/download -> rustversion-1.0.20.crate https://crates.io/api/v1/crates/ryu/1.0.20/download -> ryu-1.0.20.crate https://crates.io/api/v1/crates/scopeguard/1.2.0/download -> scopeguard-1.2.0.crate https://crates.io/api/v1/crates/semver-parser/0.7.0/download -> semver-parser-0.7.0.crate https://crates.io/api/v1/crates/semver/0.9.0/download -> semver-0.9.0.crate https://crates.io/api/v1/crates/semver/1.0.26/download -> semver-1.0.26.crate https://crates.io/api/v1/crates/serde/1.0.219/download -> serde-1.0.219.crate https://crates.io/api/v1/crates/serde_bytes/0.11.17/download -> serde_bytes-0.11.17.crate https://crates.io/api/v1/crates/serde_derive/1.0.219/download -> serde_derive-1.0.219.crate https://crates.io/api/v1/crates/serde_json/1.0.140/download -> serde_json-1.0.140.crate https://crates.io/api/v1/crates/shared_child/1.0.1/download -> shared_child-1.0.1.crate https://crates.io/api/v1/crates/shared_library/0.1.9/download -> shared_library-0.1.9.crate https://crates.io/api/v1/crates/shlex/1.3.0/download -> shlex-1.3.0.crate https://crates.io/api/v1/crates/signal-hook-registry/1.4.5/download -> signal-hook-registry-1.4.5.crate https://crates.io/api/v1/crates/signal-hook/0.1.17/download -> signal-hook-0.1.17.crate https://crates.io/api/v1/crates/siphasher/1.0.1/download -> siphasher-1.0.1.crate https://crates.io/api/v1/crates/slab/0.4.9/download -> slab-0.4.9.crate https://crates.io/api/v1/crates/smallvec/0.6.14/download -> smallvec-0.6.14.crate https://crates.io/api/v1/crates/smallvec/1.15.0/download -> smallvec-1.15.0.crate https://crates.io/api/v1/crates/socket2/0.5.9/download -> socket2-0.5.9.crate https://crates.io/api/v1/crates/strsim/0.11.1/download -> strsim-0.11.1.crate https://crates.io/api/v1/crates/strsim/0.8.0/download -> strsim-0.8.0.crate https://crates.io/api/v1/crates/structopt-derive/0.4.18/download -> structopt-derive-0.4.18.crate https://crates.io/api/v1/crates/structopt/0.3.26/download -> structopt-0.3.26.crate https://crates.io/api/v1/crates/syn/0.15.44/download -> syn-0.15.44.crate https://crates.io/api/v1/crates/syn/1.0.109/download -> syn-1.0.109.crate https://crates.io/api/v1/crates/syn/2.0.100/download -> syn-2.0.100.crate https://crates.io/api/v1/crates/sysinfo/0.30.13/download -> sysinfo-0.30.13.crate https://crates.io/api/v1/crates/tabular/0.2.0/download -> tabular-0.2.0.crate https://crates.io/api/v1/crates/terminfo/0.7.5/download -> terminfo-0.7.5.crate https://crates.io/api/v1/crates/termios/0.3.3/download -> termios-0.3.3.crate https://crates.io/api/v1/crates/termwiz/0.8.0/download -> termwiz-0.8.0.crate https://crates.io/api/v1/crates/textwrap/0.11.0/download -> textwrap-0.11.0.crate https://crates.io/api/v1/crates/thiserror-impl/1.0.69/download -> thiserror-impl-1.0.69.crate https://crates.io/api/v1/crates/thiserror/1.0.69/download -> thiserror-1.0.69.crate https://crates.io/api/v1/crates/tokio-macros/2.5.0/download -> tokio-macros-2.5.0.crate https://crates.io/api/v1/crates/tokio-util/0.6.10/download -> tokio-util-0.6.10.crate https://crates.io/api/v1/crates/tokio/1.44.2/download -> tokio-1.44.2.crate https://crates.io/api/v1/crates/toml/0.5.11/download -> toml-0.5.11.crate https://crates.io/api/v1/crates/tracing-core/0.1.33/download -> tracing-core-0.1.33.crate https://crates.io/api/v1/crates/tracing/0.1.41/download -> tracing-0.1.41.crate https://crates.io/api/v1/crates/unicode-ident/1.0.18/download -> unicode-ident-1.0.18.crate https://crates.io/api/v1/crates/unicode-segmentation/1.12.0/download -> unicode-segmentation-1.12.0.crate https://crates.io/api/v1/crates/unicode-width/0.1.14/download -> unicode-width-0.1.14.crate https://crates.io/api/v1/crates/unicode-xid/0.1.0/download -> unicode-xid-0.1.0.crate https://crates.io/api/v1/crates/utf8parse/0.1.1/download -> utf8parse-0.1.1.crate https://crates.io/api/v1/crates/utf8parse/0.2.2/download -> utf8parse-0.2.2.crate https://crates.io/api/v1/crates/vec_map/0.8.2/download -> vec_map-0.8.2.crate https://crates.io/api/v1/crates/vergen/3.2.0/download -> vergen-3.2.0.crate https://crates.io/api/v1/crates/version_check/0.9.5/download -> version_check-0.9.5.crate https://crates.io/api/v1/crates/vswhom-sys/0.1.3/download -> vswhom-sys-0.1.3.crate https://crates.io/api/v1/crates/vswhom/0.1.0/download -> vswhom-0.1.0.crate https://crates.io/api/v1/crates/vtparse/0.2.2/download -> vtparse-0.2.2.crate https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download -> wasi-0.11.0+wasi-snapshot-preview1.crate https://crates.io/api/v1/crates/wasi/0.9.0+wasi-snapshot-preview1/download -> wasi-0.9.0+wasi-snapshot-preview1.crate https://crates.io/api/v1/crates/wasm-bindgen-backend/0.2.100/download -> wasm-bindgen-backend-0.2.100.crate https://crates.io/api/v1/crates/wasm-bindgen-macro-support/0.2.100/download -> wasm-bindgen-macro-support-0.2.100.crate https://crates.io/api/v1/crates/wasm-bindgen-macro/0.2.100/download -> wasm-bindgen-macro-0.2.100.crate https://crates.io/api/v1/crates/wasm-bindgen-shared/0.2.100/download -> wasm-bindgen-shared-0.2.100.crate https://crates.io/api/v1/crates/wasm-bindgen/0.2.100/download -> wasm-bindgen-0.2.100.crate https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download -> winapi-i686-pc-windows-gnu-0.4.0.crate https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download -> winapi-x86_64-pc-windows-gnu-0.4.0.crate https://crates.io/api/v1/crates/winapi/0.3.9/download -> winapi-0.3.9.crate https://crates.io/api/v1/crates/windows-core/0.52.0/download -> windows-core-0.52.0.crate https://crates.io/api/v1/crates/windows-core/0.61.0/download -> windows-core-0.61.0.crate https://crates.io/api/v1/crates/windows-implement/0.60.0/download -> windows-implement-0.60.0.crate https://crates.io/api/v1/crates/windows-interface/0.59.1/download -> windows-interface-0.59.1.crate https://crates.io/api/v1/crates/windows-link/0.1.1/download -> windows-link-0.1.1.crate https://crates.io/api/v1/crates/windows-result/0.3.2/download -> windows-result-0.3.2.crate https://crates.io/api/v1/crates/windows-strings/0.4.0/download -> windows-strings-0.4.0.crate https://crates.io/api/v1/crates/windows-sys/0.52.0/download -> windows-sys-0.52.0.crate https://crates.io/api/v1/crates/windows-sys/0.59.0/download -> windows-sys-0.59.0.crate https://crates.io/api/v1/crates/windows-targets/0.52.6/download -> windows-targets-0.52.6.crate https://crates.io/api/v1/crates/windows/0.52.0/download -> windows-0.52.0.crate https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.52.6/download -> windows_aarch64_gnullvm-0.52.6.crate https://crates.io/api/v1/crates/windows_aarch64_msvc/0.52.6/download -> windows_aarch64_msvc-0.52.6.crate https://crates.io/api/v1/crates/windows_i686_gnu/0.52.6/download -> windows_i686_gnu-0.52.6.crate https://crates.io/api/v1/crates/windows_i686_gnullvm/0.52.6/download -> windows_i686_gnullvm-0.52.6.crate https://crates.io/api/v1/crates/windows_i686_msvc/0.52.6/download -> windows_i686_msvc-0.52.6.crate https://crates.io/api/v1/crates/windows_x86_64_gnu/0.52.6/download -> windows_x86_64_gnu-0.52.6.crate https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.52.6/download -> windows_x86_64_gnullvm-0.52.6.crate https://crates.io/api/v1/crates/windows_x86_64_msvc/0.52.6/download -> windows_x86_64_msvc-0.52.6.crate https://crates.io/api/v1/crates/winreg/0.10.1/download -> winreg-0.10.1.crate https://crates.io/api/v1/crates/xi-unicode/0.2.1/download -> xi-unicode-0.2.1.crate https://crates.io/api/v1/crates/zerocopy-derive/0.7.35/download -> zerocopy-derive-0.7.35.crate https://crates.io/api/v1/crates/zerocopy-derive/0.8.24/download -> zerocopy-derive-0.8.24.crate https://crates.io/api/v1/crates/zerocopy/0.7.35/download -> zerocopy-0.7.35.crate https://crates.io/api/v1/crates/zerocopy/0.8.24/download -> zerocopy-0.8.24.crate
+_eclasses_=cargo df2b134de0bbaddf4c0d660969d80029 cmake c0c9c21d01b8a96d2d736c554daedc57 distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 rust e9d31591b9b0251018cd5c60a43bafa1 rust-toolchain 76468983281b0a7fc167ca224f84ecfd tmpfiles 9a9814db5a3fbd4f1e921c05297e7735 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=b4dcf3cf3ecba836fce5b7fd55f5b028
diff --git a/metadata/md5-cache/kde-frameworks/kcontacts-6.13.0 b/metadata/md5-cache/kde-frameworks/kcontacts-6.13.0
index de047dd6e8c4..3d88d4a8cd90 100644
--- a/metadata/md5-cache/kde-frameworks/kcontacts-6.13.0
+++ b/metadata/md5-cache/kde-frameworks/kcontacts-6.13.0
@@ -13,4 +13,4 @@ RESTRICT=!test? ( test )
SLOT=6/6.13
SRC_URI=mirror://kde/stable/frameworks/6.13/kcontacts-6.13.0.tar.xz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 ecm 8e875f5f12d01e5057997e9fc4d05f45 flag-o-matic e8de74bac929ba17427e740e95707d00 frameworks.kde.org 5c0c6e2dbfe1eb60271ec93601749b82 kde.org 2eea56ed41440913be4caa3d255d2db3 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 virtualx 9741d451eb64ea8bb9faee90d68a9b68 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=5bbfe10bee3700d5d674fe0f29ff214f
+_md5_=f629ca434a06ebbba5b22fddc40a9a4e
diff --git a/metadata/md5-cache/kde-plasma/kwin-6.3.4 b/metadata/md5-cache/kde-plasma/kwin-6.3.4-r2
index 62b250933fd6..e38fbdf55af6 100644
--- a/metadata/md5-cache/kde-plasma/kwin-6.3.4
+++ b/metadata/md5-cache/kde-plasma/kwin-6.3.4-r2
@@ -14,4 +14,4 @@ RESTRICT=test !test? ( test )
SLOT=6
SRC_URI=mirror://kde/stable/plasma/6.3.4/kwin-6.3.4.tar.xz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 ecm 8e875f5f12d01e5057997e9fc4d05f45 fcaps 27152c9e4da035accb14a2d7879744ef flag-o-matic e8de74bac929ba17427e740e95707d00 kde.org 2eea56ed41440913be4caa3d255d2db3 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 plasma.kde.org 7dce7e123b845b50045d250ddb278647 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 virtualx 9741d451eb64ea8bb9faee90d68a9b68 xdg 3ef49a87c52c8b77c476351195dfe575 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=b958c2f4f561b3bd1e29e40e38606700
+_md5_=a79e3dc73d4e10727fe702171e91c33d
diff --git a/metadata/md5-cache/media-gfx/blender-3.6.18-r1 b/metadata/md5-cache/media-gfx/blender-3.6.18-r1
deleted file mode 100644
index 3d4e38860d35..000000000000
--- a/metadata/md5-cache/media-gfx/blender-3.6.18-r1
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) app-alternatives/ninja >=dev-build/cmake-3.20.5
-DEFINED_PHASES=compile configure install postinst postrm prepare pretend setup test unpack
-DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.4.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( >=media-libs/embree-3.10.0:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-1.4.1 ) openexr? ( >=dev-libs/imath-3.1.4-r2:= >=media-libs/openexr-3:0= ) openpgl? ( media-libs/openpgl:0/0.5 ) opensubdiv? ( >=media-libs/opensubdiv-3.4.0 ) openvdb? ( <media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( <dev-libs/optix-7.5.0 ) osl? ( <media-libs/osl-1.13:= ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 media-libs/mesa[wayland] sys-apps/dbus ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:=
-DESCRIPTION=3D Creation/Animation/Publishing System
-EAPI=8
-HOMEPAGE=https://www.blender.org
-INHERIT=check-reqs cmake flag-o-matic pax-utils python-single-r1 toolchain-funcs xdg-utils
-IUSE=+bullet +dds +fluid +openexr +tbb alembic collada +color-management cuda +cycles cycles-bin-kernels debug doc +embree +ffmpeg +fftw +gmp jack jemalloc jpeg2k man +nanovdb ndof nls openal +oidn +openmp +openpgl +opensubdiv +openvdb optix osl +pdf +potrace +pugixml pulseaudio sdl +sndfile test +tiff valgrind wayland X python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
-KEYWORDS=amd64 ~arm ~arm64
-LICENSE=GPL-3+ cycles? ( Apache-2.0 )
-RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.4.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( >=media-libs/embree-3.10.0:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-1.4.1 ) openexr? ( >=dev-libs/imath-3.1.4-r2:= >=media-libs/openexr-3:0= ) openpgl? ( media-libs/openpgl:0/0.5 ) opensubdiv? ( >=media-libs/opensubdiv-3.4.0 ) openvdb? ( <media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( <dev-libs/optix-7.5.0 ) osl? ( <media-libs/osl-1.13:= ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 media-libs/mesa[wayland] sys-apps/dbus ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
-REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff ) fluid? ( tbb ) openvdb? ( tbb ) optix? ( cuda ) osl? ( cycles ) test? ( color-management )
-RESTRICT=!test? ( test )
-SLOT=3.6
-SRC_URI=https://download.blender.org/source/blender-3.6.18.tar.xz
-_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=32f9947cc265750d564c54fd1421f924
diff --git a/metadata/md5-cache/media-gfx/blender-4.2.4-r2 b/metadata/md5-cache/media-gfx/blender-4.2.4-r2
index 6ca424c0c047..ea6fba7026b7 100644
--- a/metadata/md5-cache/media-gfx/blender-4.2.4-r2
+++ b/metadata/md5-cache/media-gfx/blender-4.2.4-r2
@@ -1,17 +1,17 @@
BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) X? ( x11-base/xorg-proto ) app-alternatives/ninja >=dev-build/cmake-3.20.5
DEFINED_PHASES=compile configure install postinst postrm prepare pretend setup test unpack
-DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:= vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers )
+DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:= vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers )
DESCRIPTION=3D Creation/Animation/Publishing System
EAPI=8
HOMEPAGE=https://www.blender.org
INHERIT=check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils
-IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp +openpgl +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X +llvm_slot_18 llvm_slot_15 llvm_slot_16 llvm_slot_17 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
+IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +openmp +openpgl +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
KEYWORDS=amd64 ~arm ~arm64
LICENSE=GPL-3+ cycles? ( Apache-2.0 )
-RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
+RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff tbb ) fluid? ( tbb ) gnome? ( wayland ) hip? ( cycles ) nanovdb? ( openvdb ) openvdb? ( tbb openexr ) optix? ( cuda ) osl? ( cycles pugixml ) test? ( color-management )
RESTRICT=test
SLOT=4.2
SRC_URI=https://download.blender.org/source/blender-4.2.4.tar.xz
_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=8d32a7971da7b727d2025eb6fe38198f
+_md5_=d273790007a9a0c795b668bdf77d39d7
diff --git a/metadata/md5-cache/media-gfx/blender-4.1.1-r5 b/metadata/md5-cache/media-gfx/blender-4.2.9
index 9f0aeb5107d2..513f30f238eb 100644
--- a/metadata/md5-cache/media-gfx/blender-4.1.1-r5
+++ b/metadata/md5-cache/media-gfx/blender-4.2.9
@@ -1,17 +1,17 @@
BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) X? ( x11-base/xorg-proto ) app-alternatives/ninja >=dev-build/cmake-3.20.5
DEFINED_PHASES=compile configure install postinst postrm prepare pretend setup test unpack
-DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:= vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers )
+DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:= vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers )
DESCRIPTION=3D Creation/Animation/Publishing System
EAPI=8
HOMEPAGE=https://www.blender.org
INHERIT=check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils
-IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree experimental +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp openpgl +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X +llvm_slot_18 llvm_slot_15 llvm_slot_16 llvm_slot_17 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
-KEYWORDS=amd64 ~arm ~arm64
+IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +openmp +openpgl +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
+KEYWORDS=~amd64 ~arm ~arm64
LICENSE=GPL-3+ cycles? ( Apache-2.0 )
-RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
+RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( <media-video/ffmpeg-7:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff tbb ) fluid? ( tbb ) gnome? ( wayland ) hip? ( cycles ) nanovdb? ( openvdb ) openvdb? ( tbb openexr ) optix? ( cuda ) osl? ( cycles pugixml ) test? ( color-management )
RESTRICT=test
-SLOT=4.1
-SRC_URI=https://download.blender.org/source/blender-4.1.1.tar.xz
+SLOT=4.2
+SRC_URI=https://download.blender.org/source/blender-4.2.9.tar.xz
_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=c914378cb3b6ae29e37df84c47bc580d
+_md5_=794186ee54345df12f6e30636c5e267c
diff --git a/metadata/md5-cache/media-gfx/blender-4.3.2-r2 b/metadata/md5-cache/media-gfx/blender-4.3.2-r2
deleted file mode 100644
index 703f98caf385..000000000000
--- a/metadata/md5-cache/media-gfx/blender-4.3.2-r2
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) X? ( x11-base/xorg-proto ) app-alternatives/ninja >=dev-build/cmake-3.20.5
-DEFINED_PHASES=compile configure install postinst postrm prepare pretend setup test unpack
-DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:= vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers )
-DESCRIPTION=3D Creation/Animation/Publishing System
-EAPI=8
-HOMEPAGE=https://www.blender.org
-INHERIT=check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils
-IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp +openpgl +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X +llvm_slot_18 llvm_slot_15 llvm_slot_16 llvm_slot_17 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
-KEYWORDS=~amd64 ~arm ~arm64
-LICENSE=GPL-3+ cycles? ( Apache-2.0 )
-RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
-REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff tbb ) fluid? ( tbb ) gnome? ( wayland ) hip? ( cycles ) nanovdb? ( openvdb ) openvdb? ( tbb openexr ) optix? ( cuda ) osl? ( cycles pugixml ) test? ( color-management )
-RESTRICT=test
-SLOT=4.3
-SRC_URI=https://download.blender.org/source/blender-4.3.2.tar.xz
-_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=bd86d4de4cd8816a3e7e0b581ffd983e
diff --git a/metadata/md5-cache/media-gfx/blender-4.3.2-r3 b/metadata/md5-cache/media-gfx/blender-4.3.2-r3
new file mode 100644
index 000000000000..6dc080f755f4
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/blender-4.3.2-r3
@@ -0,0 +1,17 @@
+BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) X? ( x11-base/xorg-proto ) test? ( x11-base/xorg-server[xvfb] x11-apps/xhost ) app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install postinst postrm prepare pretend setup test unpack
+DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-cpp/gflags:= dev-cpp/glog:= dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl[X?] alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) bullet? ( sci-physics/bullet:=[double-precision] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0=[threads] ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7:= ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,openmp?,tbb?] ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) truetype? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:=
+DESCRIPTION=3D Creation/Animation/Publishing System
+EAPI=8
+HOMEPAGE=https://www.blender.org
+INHERIT=cuda rocm llvm-r1 eapi9-pipestatus check-reqs flag-o-matic pax-utils python-single-r1 toolchain-funcs virtualx cmake xdg-utils
+IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +opengl +openmp +openpgl +opensubdiv +openvdb optix osl +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff +truetype valgrind vulkan wayland +webp X +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 test
+KEYWORDS=~amd64 ~arm ~arm64
+LICENSE=GPL-3+ cycles? ( Apache-2.0 ) CC0-1.0
+RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-cpp/gflags:= dev-cpp/glog:= dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl[X?] alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) bullet? ( sci-physics/bullet:=[double-precision] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0=[threads] ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7:= ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,openmp?,tbb?] ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) truetype? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
+REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) || ( opengl vulkan ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff tbb ) fluid? ( tbb ) gnome? ( wayland ) hip? ( cycles ) nanovdb? ( openvdb ) openvdb? ( tbb openexr ) optix? ( cuda ) osl? ( cycles pugixml ) test? ( color-management jpeg2k )
+RESTRICT=test !test? ( test )
+SLOT=4.3
+SRC_URI=https://download.blender.org/source/blender-4.3.2.tar.xz https://github.com/negril/gentoo-overlay-vendored/raw/refs/heads/blobs/blender-assets-4.3.2.tar.xz
+_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 eapi9-pipestatus d2c134036ac31c3085aebc9147f572bd flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 rocm 826765f795a41b937d1bfe8e709346cd toolchain-funcs f9d71a6efe9d083aec750dd13968e169 virtualx 9741d451eb64ea8bb9faee90d68a9b68 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=3b665fc45783a2715d3e10368263c816
diff --git a/metadata/md5-cache/media-gfx/blender-4.4.1 b/metadata/md5-cache/media-gfx/blender-4.4.1
new file mode 100644
index 000000000000..9ae9298a1a20
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/blender-4.4.1
@@ -0,0 +1,17 @@
+BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) X? ( x11-base/xorg-proto ) test? ( x11-base/xorg-server[xvfb] x11-apps/xhost ) app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install postinst postrm prepare pretend setup test unpack
+DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-cpp/gflags:= dev-cpp/glog:= dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl[X?] alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) bullet? ( sci-physics/bullet:=[double-precision] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0=[threads] ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7:= ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,openmp?,tbb?] ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) truetype? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:=
+DESCRIPTION=3D Creation/Animation/Publishing System
+EAPI=8
+HOMEPAGE=https://www.blender.org
+INHERIT=cuda rocm llvm-r1 eapi9-pipestatus check-reqs flag-o-matic pax-utils python-single-r1 toolchain-funcs virtualx cmake xdg-utils
+IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn openal +openexr +opengl +openmp +openpgl +opensubdiv +openvdb optix osl pipewire +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff +truetype valgrind vulkan wayland +webp X +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 test
+KEYWORDS=~amd64 ~arm ~arm64
+LICENSE=GPL-3+ cycles? ( Apache-2.0 ) CC0-1.0
+RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-cpp/gflags:= dev-cpp/glog:= dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl[X?] alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) bullet? ( sci-physics/bullet:=[double-precision] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0=[threads] ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7:= ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,openmp?,tbb?] ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) truetype? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
+REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) || ( opengl vulkan ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff tbb ) fluid? ( tbb ) gnome? ( wayland ) hip? ( cycles ) nanovdb? ( openvdb ) openvdb? ( tbb openexr ) optix? ( cuda ) osl? ( cycles pugixml ) test? ( color-management jpeg2k )
+RESTRICT=test !test? ( test )
+SLOT=4.4
+SRC_URI=https://download.blender.org/source/blender-4.4.1.tar.xz
+_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 eapi9-pipestatus d2c134036ac31c3085aebc9147f572bd flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 rocm 826765f795a41b937d1bfe8e709346cd toolchain-funcs f9d71a6efe9d083aec750dd13968e169 virtualx 9741d451eb64ea8bb9faee90d68a9b68 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=b1950df98a88f9fdf4cb56b74d88abef
diff --git a/metadata/md5-cache/media-gfx/blender-9999 b/metadata/md5-cache/media-gfx/blender-9999
index 5baf3d330e5d..cad6eb33edd4 100644
--- a/metadata/md5-cache/media-gfx/blender-9999
+++ b/metadata/md5-cache/media-gfx/blender-9999
@@ -1,16 +1,16 @@
-BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) X? ( x11-base/xorg-proto ) app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl] dev-vcs/git-lfs
+BDEPEND=virtual/pkgconfig doc? ( app-text/doxygen[dot] dev-python/sphinx[latex] dev-texlive/texlive-bibtexextra dev-texlive/texlive-fontsextra dev-texlive/texlive-fontutils dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers ) nls? ( sys-devel/gettext ) wayland? ( dev-util/wayland-scanner ) X? ( x11-base/xorg-proto ) test? ( x11-base/xorg-server[xvfb] x11-apps/xhost ) app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl] dev-vcs/git-lfs
DEFINED_PHASES=compile configure install postinst postrm prepare pretend setup test unpack
-DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:= vulkan? ( dev-util/spirv-headers dev-util/vulkan-headers )
+DEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-cpp/gflags:= dev-cpp/glog:= dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl[X?] alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) bullet? ( sci-physics/bullet:=[double-precision] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0=[threads] ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7:= ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( dev-libs/intel-compute-runtime:=[l0] ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,tbb?] ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) truetype? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm ) dev-cpp/eigen:= test? ( experimental? ( wayland? ( dev-libs/weston ) ) )
DESCRIPTION=3D Creation/Animation/Publishing System
EAPI=8
HOMEPAGE=https://www.blender.org
-INHERIT=check-reqs cmake cuda flag-o-matic llvm-r1 pax-utils python-single-r1 toolchain-funcs xdg-utils git-r3
-IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +openmp +openpgl +opensubdiv +openvdb optix osl +otf +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff valgrind vulkan wayland +webp X +llvm_slot_18 llvm_slot_15 llvm_slot_16 llvm_slot_17 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
-LICENSE=GPL-3+ cycles? ( Apache-2.0 )
+INHERIT=cuda rocm llvm-r1 eapi9-pipestatus check-reqs flag-o-matic pax-utils python-single-r1 toolchain-funcs virtualx cmake xdg-utils git-r3
+IUSE=alembic +bullet collada +color-management cuda +cycles +cycles-bin-kernels debug doc +embree +ffmpeg +fftw +fluid +gmp gnome hip jack jemalloc jpeg2k man +nanovdb ndof nls +oidn oneapi openal +openexr +opengl +openpgl +opensubdiv +openvdb optix osl pipewire +pdf +potrace +pugixml pulseaudio renderdoc sdl +sndfile +tbb test +tiff +truetype valgrind vulkan wayland +webp X experimental +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 test
+LICENSE=GPL-3+ cycles? ( Apache-2.0 ) CC0-1.0
PROPERTIES=live
-RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0= ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7 ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( || ( dev-libs/intel-compute-runtime:0[l0] dev-libs/intel-compute-runtime:legacy[l0] ) ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.5.0 ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] media-libs/mesa[llvm_slot_15(-)?,llvm_slot_16(-)?,llvm_slot_17(-)?,llvm_slot_18(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) otf? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
-REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff tbb ) fluid? ( tbb ) gnome? ( wayland ) hip? ( cycles ) nanovdb? ( openvdb ) openvdb? ( tbb openexr ) optix? ( cuda ) osl? ( cycles pugixml ) test? ( color-management )
-RESTRICT=!test? ( test )
+RDEPEND=python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) app-arch/zstd dev-cpp/gflags:= dev-cpp/glog:= dev-libs/boost:=[nls?] dev-libs/lzo:2= python_single_target_python3_9? ( dev-python/cython[python_targets_python3_9(-)] dev-python/numpy[python_targets_python3_9(-)] dev-python/zstandard[python_targets_python3_9(-)] dev-python/requests[python_targets_python3_9(-)] ) python_single_target_python3_10? ( dev-python/cython[python_targets_python3_10(-)] dev-python/numpy[python_targets_python3_10(-)] dev-python/zstandard[python_targets_python3_10(-)] dev-python/requests[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/cython[python_targets_python3_11(-)] dev-python/numpy[python_targets_python3_11(-)] dev-python/zstandard[python_targets_python3_11(-)] dev-python/requests[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/cython[python_targets_python3_12(-)] dev-python/numpy[python_targets_python3_12(-)] dev-python/zstandard[python_targets_python3_12(-)] dev-python/requests[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/cython[python_targets_python3_13(-)] dev-python/numpy[python_targets_python3_13(-)] dev-python/zstandard[python_targets_python3_13(-)] dev-python/requests[python_targets_python3_13(-)] ) media-libs/freetype:=[brotli] media-libs/libepoxy:= media-libs/libjpeg-turbo:= media-libs/libpng:= media-libs/libsamplerate >=media-libs/openimageio-2.5.6.0:= sys-libs/zlib:= virtual/glu virtual/libintl virtual/opengl[X?] alembic? ( >=media-gfx/alembic-1.8.3-r2[boost(+),hdf(+)] ) bullet? ( sci-physics/bullet:=[double-precision] ) collada? ( >=media-libs/opencollada-1.6.68 ) color-management? ( media-libs/opencolorio:= ) cuda? ( dev-util/nvidia-cuda-toolkit:= ) embree? ( media-libs/embree:=[raymask] ) ffmpeg? ( media-video/ffmpeg:=[encode(+),lame(-),jpeg2k?,opus,theora,vorbis,vpx,x264,xvid] ) fftw? ( sci-libs/fftw:3.0=[threads] ) gmp? ( dev-libs/gmp[cxx] ) gnome? ( gui-libs/libdecor ) hip? ( >=dev-util/hip-5.7:= ) jack? ( virtual/jack ) jemalloc? ( dev-libs/jemalloc:= ) jpeg2k? ( media-libs/openjpeg:2= ) ndof? ( app-misc/spacenavd dev-libs/libspnav ) nls? ( virtual/libiconv ) openal? ( media-libs/openal ) oidn? ( >=media-libs/oidn-2.1.0 ) oneapi? ( dev-libs/intel-compute-runtime:=[l0] ) openexr? ( >=dev-libs/imath-3.1.7:= >=media-libs/openexr-3.2.1:0= ) openpgl? ( media-libs/openpgl:= ) opensubdiv? ( >=media-libs/opensubdiv-3.6.0-r2[opengl,cuda?,tbb?] ) openvdb? ( >=media-gfx/openvdb-11.0.0:=[nanovdb?] dev-libs/c-blosc:= ) optix? ( dev-libs/optix ) osl? ( >=media-libs/osl-1.13:=[llvm_slot_18(-)?,llvm_slot_19(-)?] media-libs/mesa[llvm_slot_18(-)?,llvm_slot_19(-)?] ) pdf? ( media-libs/libharu ) potrace? ( media-gfx/potrace ) pugixml? ( dev-libs/pugixml ) pulseaudio? ( media-libs/libpulse ) sdl? ( media-libs/libsdl2[sound,joystick] ) sndfile? ( media-libs/libsndfile ) tbb? ( dev-cpp/tbb:= ) tiff? ( media-libs/tiff:= ) valgrind? ( dev-debug/valgrind ) wayland? ( >=dev-libs/wayland-1.12 >=dev-libs/wayland-protocols-1.15 >=x11-libs/libxkbcommon-0.2.0 dev-util/wayland-scanner media-libs/mesa[wayland] sys-apps/dbus ) vulkan? ( media-libs/shaderc dev-util/spirv-tools dev-util/glslang media-libs/vulkan-loader ) truetype? ( media-libs/harfbuzz ) renderdoc? ( media-gfx/renderdoc ) X? ( x11-libs/libX11 x11-libs/libXi x11-libs/libXxf86vm )
+REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) || ( opengl vulkan ) alembic? ( openexr ) cuda? ( cycles ) cycles? ( openexr tiff tbb ) fluid? ( tbb ) gnome? ( wayland ) hip? ( cycles ) nanovdb? ( openvdb ) openvdb? ( tbb openexr ) optix? ( cuda ) osl? ( cycles pugixml ) test? ( color-management jpeg2k )
+RESTRICT=!test? ( test ) !test? ( test )
SLOT=9999
-_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 flag-o-matic e8de74bac929ba17427e740e95707d00 git-r3 875eb471682d3e1f18da124be97dcc81 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=d80067ed885b036a58e8cc42fc937123
+_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 eapi9-pipestatus d2c134036ac31c3085aebc9147f572bd flag-o-matic e8de74bac929ba17427e740e95707d00 git-r3 875eb471682d3e1f18da124be97dcc81 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 rocm 826765f795a41b937d1bfe8e709346cd toolchain-funcs f9d71a6efe9d083aec750dd13968e169 virtualx 9741d451eb64ea8bb9faee90d68a9b68 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=aae324a1e74710eea3cafe710b7c735d
diff --git a/metadata/md5-cache/media-gfx/blender-bin-3.6.22 b/metadata/md5-cache/media-gfx/blender-bin-3.6.22
new file mode 100644
index 000000000000..943f2c0a0737
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/blender-bin-3.6.22
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst postrm prepare unpack
+DESCRIPTION=3D Creation/Animation/Publishing System
+EAPI=8
+HOMEPAGE=https://www.blender.org
+INHERIT=desktop xdg-utils
+IUSE=oneapi
+KEYWORDS=~amd64
+LICENSE=GPL-3+ Apache-2.0
+RDEPEND=app-arch/zstd media-libs/libglvnd[X] sys-libs/glibc sys-libs/ncurses sys-libs/zlib virtual/libcrypt x11-base/xorg-server x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXext x11-libs/libXfixes x11-libs/libXi x11-libs/libXrender x11-libs/libXt x11-libs/libXxf86vm x11-libs/libxkbcommon oneapi? ( dev-libs/level-zero )
+RESTRICT=strip test
+SLOT=3.6
+SRC_URI=https://download.blender.org/release/Blender3.6/blender-3.6.22-linux-x64.tar.xz
+_eclasses_=desktop 3a72ffe0d8e1dd73af3a1c8c15a59fed xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=2a14bd6b335eeb7584e03b4ec25055f4
diff --git a/metadata/md5-cache/media-gfx/blender-bin-4.2.9 b/metadata/md5-cache/media-gfx/blender-bin-4.2.9
new file mode 100644
index 000000000000..53d5e4403d0e
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/blender-bin-4.2.9
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst postrm prepare unpack
+DESCRIPTION=3D Creation/Animation/Publishing System
+EAPI=8
+HOMEPAGE=https://www.blender.org
+INHERIT=desktop xdg-utils
+IUSE=cuda hip oneapi
+KEYWORDS=~amd64
+LICENSE=GPL-3+ Apache-2.0
+RDEPEND=app-arch/zstd media-libs/libglvnd[X] sys-apps/util-linux sys-libs/glibc sys-libs/ncurses sys-libs/zlib virtual/libcrypt x11-base/xorg-server x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXext x11-libs/libXfixes x11-libs/libXi x11-libs/libXrender x11-libs/libXt x11-libs/libXxf86vm x11-libs/libdrm x11-libs/libxcb x11-libs/libxkbcommon cuda? ( x11-drivers/nvidia-drivers ) hip? ( >=dev-util/hip-6 ) oneapi? ( dev-libs/level-zero )
+RESTRICT=strip test
+SLOT=4.2
+SRC_URI=https://download.blender.org/release/Blender4.2/blender-4.2.9-linux-x64.tar.xz
+_eclasses_=desktop 3a72ffe0d8e1dd73af3a1c8c15a59fed xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=f383d82e88c2fb9ecf58ca4b9e3a0165
diff --git a/metadata/md5-cache/media-gfx/blender-bin-4.4.1 b/metadata/md5-cache/media-gfx/blender-bin-4.4.1
new file mode 100644
index 000000000000..f900f53b24e0
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/blender-bin-4.4.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst postrm prepare unpack
+DESCRIPTION=3D Creation/Animation/Publishing System
+EAPI=8
+HOMEPAGE=https://www.blender.org
+INHERIT=desktop xdg-utils
+IUSE=cuda hip oneapi
+KEYWORDS=~amd64
+LICENSE=GPL-3+ Apache-2.0
+RDEPEND=app-arch/zstd media-libs/libglvnd[X] sys-apps/util-linux sys-libs/glibc sys-libs/ncurses sys-libs/zlib virtual/libcrypt x11-base/xorg-server x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXext x11-libs/libXfixes x11-libs/libXi x11-libs/libXrender x11-libs/libXt x11-libs/libXxf86vm x11-libs/libdrm x11-libs/libxcb x11-libs/libxkbcommon cuda? ( x11-drivers/nvidia-drivers ) hip? ( >=dev-util/hip-6 ) oneapi? ( dev-libs/level-zero )
+RESTRICT=strip test
+SLOT=4.4
+SRC_URI=https://download.blender.org/release/Blender4.4/blender-4.4.1-linux-x64.tar.xz
+_eclasses_=desktop 3a72ffe0d8e1dd73af3a1c8c15a59fed xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=f383d82e88c2fb9ecf58ca4b9e3a0165
diff --git a/metadata/md5-cache/media-libs/babl-0.1.112 b/metadata/md5-cache/media-libs/babl-0.1.112
index 380f4cacb7e4..a6c57744371d 100644
--- a/metadata/md5-cache/media-libs/babl-0.1.112
+++ b/metadata/md5-cache/media-libs/babl-0.1.112
@@ -6,11 +6,11 @@ EAPI=8
HOMEPAGE=https://gegl.org/babl/
INHERIT=meson gnome2-utils vala
IUSE=introspection lcms vala cpu_flags_x86_avx2 cpu_flags_x86_f16c cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse4_1
-KEYWORDS=~alpha ~amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv -sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris
+KEYWORDS=~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv -sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris
LICENSE=LGPL-3
RDEPEND=introspection? ( >=dev-libs/gobject-introspection-1.72:= ) lcms? ( >=media-libs/lcms-2.13.1:2 )
REQUIRED_USE=vala? ( introspection )
SLOT=0
SRC_URI=https://download.gimp.org/pub/babl/0.1/babl-0.1.112.tar.xz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 gnome2-utils a8cf148ec7f5ae0b1f1d33ae5f7f9e88 meson 99466844dd8d4fcfb07578a76f5a9922 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 vala e477903dbe0105930c51f170a592dc16 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=a0a9c0b65e24e7424bffff23923560b5
+_md5_=22710d29ef878135d3da9a2224a63e40
diff --git a/metadata/md5-cache/media-libs/gegl-0.4.58 b/metadata/md5-cache/media-libs/gegl-0.4.58
index b669d3c2bc63..c832a6ceda4e 100644
--- a/metadata/md5-cache/media-libs/gegl-0.4.58
+++ b/metadata/md5-cache/media-libs/gegl-0.4.58
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://gegl.org/
INHERIT=flag-o-matic meson optfeature python-any-r1 toolchain-funcs vala
IUSE=cairo debug ffmpeg introspection lcms lensfun openexr openmp pdf raw sdl sdl2 svg test tiff umfpack vala v4l webp
-KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux
+KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux
LICENSE=|| ( GPL-3+ LGPL-3 )
RDEPEND=>=dev-libs/glib-2.68.2:2 >=dev-libs/json-glib-1.2.6 >=media-libs/babl-0.1.112[introspection?,lcms?,vala?] media-libs/libjpeg-turbo media-libs/libnsgif >=media-libs/libpng-1.6.0:0= >=sys-libs/zlib-1.2.0 >=x11-libs/gdk-pixbuf-2.32:2 >=x11-libs/pango-1.38.0 cairo? ( >=x11-libs/cairo-1.12.2 ) ffmpeg? ( media-video/ffmpeg:0= ) introspection? ( >=dev-libs/gobject-introspection-1.32:= ) lcms? ( >=media-libs/lcms-2.8:2 ) lensfun? ( >=media-libs/lensfun-0.2.5 ) openexr? ( >=media-libs/openexr-1.6.1:= ) pdf? ( >=app-text/poppler-0.71.0[cairo] ) raw? ( >=media-libs/libraw-0.15.4:0= ) sdl? ( >=media-libs/libsdl-1.2.0 ) sdl2? ( >=media-libs/libsdl2-2.0.20 ) svg? ( >=gnome-base/librsvg-2.40.6:2 ) tiff? ( >=media-libs/tiff-4:= ) umfpack? ( sci-libs/umfpack ) v4l? ( >=media-libs/libv4l-1.0.1 ) webp? ( >=media-libs/libwebp-0.5.0:= )
REQUIRED_USE=svg? ( cairo ) test? ( introspection ) vala? ( introspection )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0.4
SRC_URI=https://download.gimp.org/pub/gegl/0.4/gegl-0.4.58.tar.xz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 meson 99466844dd8d4fcfb07578a76f5a9922 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 optfeature 538bce96e5589935b57e178e8635f301 python-any-r1 891415dfe39ad9b41b461f2b86354af0 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 vala e477903dbe0105930c51f170a592dc16
-_md5_=ad9e7b9ccbd4c06a1d3d48c18611e388
+_md5_=6be820c9eb3b3489fbee833f04597a9c
diff --git a/metadata/md5-cache/media-libs/libdisplay-info-0.2.0-r1 b/metadata/md5-cache/media-libs/libdisplay-info-0.2.0-r1
index b82220d1bfa1..30373f1fdaa5 100644
--- a/metadata/md5-cache/media-libs/libdisplay-info-0.2.0-r1
+++ b/metadata/md5-cache/media-libs/libdisplay-info-0.2.0-r1
@@ -4,9 +4,9 @@ DESCRIPTION=EDID and DisplayID library
EAPI=8
HOMEPAGE=https://gitlab.freedesktop.org/emersion/libdisplay-info
INHERIT=meson python-any-r1
-KEYWORDS=~amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86
+KEYWORDS=amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86
LICENSE=MIT
SLOT=0/2
SRC_URI=https://gitlab.freedesktop.org/emersion/libdisplay-info/-/releases/0.2.0/downloads/libdisplay-info-0.2.0.tar.xz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 meson 99466844dd8d4fcfb07578a76f5a9922 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-any-r1 891415dfe39ad9b41b461f2b86354af0 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=5110545827a943e2b2e56753d9e269ec
+_md5_=f4d30f6b924ac469e0bf84b51a079565
diff --git a/metadata/md5-cache/media-libs/libheif-1.19.7 b/metadata/md5-cache/media-libs/libheif-1.19.7
index 4e48a9aa4ee3..52151b6702bb 100644
--- a/metadata/md5-cache/media-libs/libheif-1.19.7
+++ b/metadata/md5-cache/media-libs/libheif-1.19.7
@@ -7,11 +7,11 @@ HOMEPAGE=https://github.com/strukturag/libheif
IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
INHERIT=cmake-multilib gnome2-utils xdg
IUSE=+aom doc examples gdk-pixbuf go openh264 rav1e svt-av1 test +threads +webp x265 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
-KEYWORDS=~amd64 ~arm arm64 ~loong ppc64 ~riscv ~x86
+KEYWORDS=amd64 ~arm arm64 ~loong ppc64 ~riscv x86
LICENSE=GPL-3 MIT
RDEPEND=media-libs/dav1d:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libde265[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libpng:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/tiff:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sys-libs/zlib:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] aom? ( >=media-libs/libaom-2.0.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gdk-pixbuf? ( x11-libs/gdk-pixbuf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openh264? ( media-libs/openh264:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) rav1e? ( media-video/rav1e:= ) svt-av1? ( media-libs/svt-av1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) webp? ( media-libs/libwebp:= ) x265? ( media-libs/x265:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] )
RESTRICT=!test? ( test )
SLOT=0/1.19
SRC_URI=https://github.com/strukturag/libheif/releases/download/v1.19.7/libheif-1.19.7.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 cmake-multilib 37d23064f303dcf23453353ab8c77059 flag-o-matic e8de74bac929ba17427e740e95707d00 gnome2-utils a8cf148ec7f5ae0b1f1d33ae5f7f9e88 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg 3ef49a87c52c8b77c476351195dfe575 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=44a849fd800392b07d9e4aa460e923c8
+_md5_=f2d931ec4d508d9a258c87db1fd4c6ae
diff --git a/metadata/md5-cache/media-libs/osl-1.12.14.0-r3 b/metadata/md5-cache/media-libs/osl-1.12.14.0-r3
deleted file mode 100644
index 30c86a0e99bd..000000000000
--- a/metadata/md5-cache/media-libs/osl-1.12.14.0-r3
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig app-alternatives/ninja >=dev-build/cmake-3.20.5
-DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] ) dev-util/patchelf >=media-libs/openexr-3 sys-libs/zlib test? ( media-fonts/droid )
-DESCRIPTION=Advanced shading language for production GI renderers
-EAPI=8
-HOMEPAGE=https://www.imageworks.com/technology/opensource https://github.com/AcademySoftwareFoundation/OpenShadingLanguage
-INHERIT=cmake flag-o-matic llvm-r1 toolchain-funcs python-single-r1
-IUSE=debug doc gui libcxx nofma partio test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_f16c python +llvm_slot_15 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
-KEYWORDS=amd64 ~arm ~arm64 ~ppc64
-LICENSE=BSD
-RDEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] )
-REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( llvm_slot_15 )
-RESTRICT=!test? ( test )
-SLOT=0/1.12
-SRC_URI=https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v1.12.14.0.tar.gz -> osl-1.12.14.0.tar.gz
-_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=605a9bb2a97b21b3d1a71b6beba1a0b7
diff --git a/metadata/md5-cache/media-libs/osl-1.13.10.0-r1 b/metadata/md5-cache/media-libs/osl-1.13.10.0-r1
index 48a88a8c94d4..37ff877b4e80 100644
--- a/metadata/md5-cache/media-libs/osl-1.13.10.0-r1
+++ b/metadata/md5-cache/media-libs/osl-1.13.10.0-r1
@@ -1,17 +1,17 @@
BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig app-alternatives/ninja >=dev-build/cmake-3.20.5
DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) llvm_slot_16? ( llvm-core/clang:16= llvm-core/llvm:16= ) llvm_slot_17? ( llvm-core/clang:17= llvm-core/llvm:17= ) llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] ) dev-util/patchelf >=media-libs/openexr-3 sys-libs/zlib test? ( media-fonts/droid )
+DEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] ) dev-util/patchelf >=media-libs/openexr-3 sys-libs/zlib test? ( media-fonts/droid )
DESCRIPTION=Advanced shading language for production GI renderers
EAPI=8
HOMEPAGE=https://www.imageworks.com/technology/opensource https://github.com/AcademySoftwareFoundation/OpenShadingLanguage
INHERIT=cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1
-IUSE=debug doc gui libcxx nofma optix partio test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_f16c python +llvm_slot_18 llvm_slot_15 llvm_slot_16 llvm_slot_17 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
+IUSE=debug doc gui libcxx nofma optix partio test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_f16c python +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
KEYWORDS=amd64 ~arm ~arm64 ~ppc64
LICENSE=BSD
-RDEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) llvm_slot_16? ( llvm-core/clang:16= llvm-core/llvm:16= ) llvm_slot_17? ( llvm-core/clang:17= llvm-core/llvm:17= ) llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] )
-REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( llvm_slot_15 llvm_slot_16 llvm_slot_17 llvm_slot_18 )
+RDEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] )
+REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( llvm_slot_18 llvm_slot_19 )
RESTRICT=!test? ( test )
SLOT=0/1.13
SRC_URI=https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v1.13.10.0.tar.gz -> osl-1.13.10.0.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=c4dd3f6ee0dfee832bdba6d6b8937de4
+_md5_=24b03a7e75564ba9fe41f0ed4d978842
diff --git a/metadata/md5-cache/media-libs/osl-1.13.12.0-r1 b/metadata/md5-cache/media-libs/osl-1.13.12.0-r1
index 6cd21fab5dbc..9e909df9cc6f 100644
--- a/metadata/md5-cache/media-libs/osl-1.13.12.0-r1
+++ b/metadata/md5-cache/media-libs/osl-1.13.12.0-r1
@@ -1,17 +1,17 @@
BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig app-alternatives/ninja >=dev-build/cmake-3.20.5
DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) llvm_slot_16? ( llvm-core/clang:16= llvm-core/llvm:16= ) llvm_slot_17? ( llvm-core/clang:17= llvm-core/llvm:17= ) llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] ) dev-util/patchelf >=media-libs/openexr-3 sys-libs/zlib test? ( media-fonts/droid )
+DEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] ) dev-util/patchelf >=media-libs/openexr-3 sys-libs/zlib test? ( media-fonts/droid )
DESCRIPTION=Advanced shading language for production GI renderers
EAPI=8
HOMEPAGE=https://www.imageworks.com/technology/opensource https://github.com/AcademySoftwareFoundation/OpenShadingLanguage
INHERIT=cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1
-IUSE=debug doc gui libcxx nofma optix partio test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_f16c python +llvm_slot_19 llvm_slot_15 llvm_slot_16 llvm_slot_17 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
+IUSE=debug doc gui libcxx nofma optix partio test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_f16c python +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
KEYWORDS=~amd64 ~arm ~arm64 ~ppc64
LICENSE=BSD
-RDEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) llvm_slot_16? ( llvm-core/clang:16= llvm-core/llvm:16= ) llvm_slot_17? ( llvm-core/clang:17= llvm-core/llvm:17= ) llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] )
-REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( llvm_slot_15 llvm_slot_16 llvm_slot_17 llvm_slot_18 llvm_slot_19 )
+RDEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] )
+REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( llvm_slot_18 llvm_slot_19 )
RESTRICT=!test? ( test )
SLOT=0/1.13
SRC_URI=https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/archive/v1.13.12.0.tar.gz -> osl-1.13.12.0.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 flag-o-matic e8de74bac929ba17427e740e95707d00 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=f3d832f99f6bf1ba360c860d56edcbd4
+_md5_=ecb0721452bd527b44a434dfad5a9238
diff --git a/metadata/md5-cache/media-libs/osl-9999 b/metadata/md5-cache/media-libs/osl-9999
index 6aa3654fabb2..8fb54cfd20b2 100644
--- a/metadata/md5-cache/media-libs/osl-9999
+++ b/metadata/md5-cache/media-libs/osl-9999
@@ -1,16 +1,16 @@
BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig app-alternatives/ninja >=dev-build/cmake-3.20.5 >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) llvm_slot_16? ( llvm-core/clang:16= llvm-core/llvm:16= ) llvm_slot_17? ( llvm-core/clang:17= llvm-core/llvm:17= ) llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] ) dev-util/patchelf >=media-libs/openexr-3 sys-libs/zlib test? ( media-fonts/droid )
+DEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] ) dev-util/patchelf >=media-libs/openexr-3 sys-libs/zlib test? ( media-fonts/droid )
DESCRIPTION=Advanced shading language for production GI renderers
EAPI=8
HOMEPAGE=https://www.imageworks.com/technology/opensource https://github.com/AcademySoftwareFoundation/OpenShadingLanguage
INHERIT=cmake cuda flag-o-matic llvm-r1 toolchain-funcs python-single-r1 git-r3
-IUSE=debug doc gui libcxx nofma optix partio test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_f16c python +llvm_slot_19 llvm_slot_15 llvm_slot_16 llvm_slot_17 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
+IUSE=debug doc gui libcxx nofma optix partio test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_x86_f16c python +llvm_slot_19 llvm_slot_18 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
LICENSE=BSD
PROPERTIES=live
-RDEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_15? ( llvm-core/clang:15= llvm-core/llvm:15= ) llvm_slot_16? ( llvm-core/clang:16= llvm-core/llvm:16= ) llvm_slot_17? ( llvm-core/clang:17= llvm-core/llvm:17= ) llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] )
-REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( llvm_slot_15 llvm_slot_16 llvm_slot_17 llvm_slot_18 llvm_slot_19 )
+RDEPEND=dev-libs/boost:= dev-libs/pugixml >=media-libs/openimageio-2.4:= llvm_slot_18? ( llvm-core/clang:18= llvm-core/llvm:18= ) llvm_slot_19? ( llvm-core/clang:19= llvm-core/llvm:19= ) optix? ( dev-libs/optix[-headers-only] ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) python_single_target_python3_9? ( dev-python/pybind11[python_targets_python3_9(-)] media-libs/openimageio[python,python_single_target_python3_9(-)] ) python_single_target_python3_10? ( dev-python/pybind11[python_targets_python3_10(-)] media-libs/openimageio[python,python_single_target_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pybind11[python_targets_python3_11(-)] media-libs/openimageio[python,python_single_target_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pybind11[python_targets_python3_12(-)] media-libs/openimageio[python,python_single_target_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pybind11[python_targets_python3_13(-)] media-libs/openimageio[python,python_single_target_python3_13(-)] ) ) partio? ( media-libs/partio ) gui? ( dev-qt/qtbase:6[gui,widgets,opengl] )
+REQUIRED_USE=^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( llvm_slot_18 llvm_slot_19 )
RESTRICT=!test? ( test )
SLOT=0/9999
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 cuda 283d0f298f6c196c755a0f8d50daca85 flag-o-matic e8de74bac929ba17427e740e95707d00 git-r3 875eb471682d3e1f18da124be97dcc81 llvm-r1 0bd586d3786517cd63802a520b404dda llvm-utils 846280a994c1843d9c21248c188bd147 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=f3d832f99f6bf1ba360c860d56edcbd4
+_md5_=ecb0721452bd527b44a434dfad5a9238
diff --git a/metadata/md5-cache/media-libs/qhull-2020.2-r3 b/metadata/md5-cache/media-libs/qhull-2020.2-r3
index f21785be2180..2a406e1d33e8 100644
--- a/metadata/md5-cache/media-libs/qhull-2020.2-r3
+++ b/metadata/md5-cache/media-libs/qhull-2020.2-r3
@@ -10,4 +10,4 @@ LICENSE=BSD
SLOT=0/8
SRC_URI=https://github.com/qhull/qhull/archive/2020.2.tar.gz -> qhull-2020.2.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=7fc3367a9a16e637311930a330aebb55
+_md5_=e87cc6160d5091042daa9de6b149edf8
diff --git a/metadata/md5-cache/media-libs/qhull-2020.2.8.1_alpha4 b/metadata/md5-cache/media-libs/qhull-2020.2.8.1_alpha4
new file mode 100644
index 000000000000..be0ab4907b28
--- /dev/null
+++ b/metadata/md5-cache/media-libs/qhull-2020.2.8.1_alpha4
@@ -0,0 +1,15 @@
+BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Geometry library
+EAPI=8
+HOMEPAGE=http://www.qhull.org
+INHERIT=cmake
+IUSE=doc static-libs tools test
+KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos
+LICENSE=BSD
+REQUIRED_USE=test? ( tools )
+RESTRICT=!test? ( test )
+SLOT=0/8.1
+SRC_URI=https://github.com/qhull/qhull/archive/v8.1.alpha4.tar.gz -> qhull-8.1_alpha4.tar.gz
+_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
+_md5_=09c7d5b43336b654ed69c5d68539bafa
diff --git a/metadata/md5-cache/media-sound/liblc3-1.1.3 b/metadata/md5-cache/media-sound/liblc3-1.1.3
index 9ac2c8fd287e..5a44075e11c7 100644
--- a/metadata/md5-cache/media-sound/liblc3-1.1.3
+++ b/metadata/md5-cache/media-sound/liblc3-1.1.3
@@ -5,10 +5,10 @@ EAPI=8
HOMEPAGE=https://github.com/google/liblc3
INHERIT=python-any-r1 toolchain-funcs meson-multilib
IUSE=test tools abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
-KEYWORDS=~amd64 ~arm arm64 ~loong ~mips ~ppc ppc64 ~riscv ~sparc x86
+KEYWORDS=amd64 ~arm arm64 ~loong ~mips ~ppc ppc64 ~riscv ~sparc x86
LICENSE=Apache-2.0
RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/google/liblc3/archive/refs/tags/v1.1.3.tar.gz -> liblc3-1.1.3.tar.gz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 meson 99466844dd8d4fcfb07578a76f5a9922 meson-multilib 8989922d980e5e870cc3de949d1b2586 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-any-r1 891415dfe39ad9b41b461f2b86354af0 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=e95d4dda91624e598d20c4e48cec83e2
+_md5_=afaa811764120607f9e193d0cc4cfce8
diff --git a/metadata/md5-cache/media-sound/mac-10.96 b/metadata/md5-cache/media-sound/mac-10.96
deleted file mode 100644
index a7ff7b83ea93..000000000000
--- a/metadata/md5-cache/media-sound/mac-10.96
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=app-arch/unzip app-alternatives/ninja >=dev-build/cmake-3.20.5
-DEFINED_PHASES=compile configure install prepare test unpack
-DESCRIPTION=Monkey's Audio Codecs
-EAPI=8
-HOMEPAGE=https://www.monkeysaudio.com
-INHERIT=cmake
-KEYWORDS=~alpha ~amd64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86
-LICENSE=BSD
-SLOT=0/12
-SRC_URI=https://monkeysaudio.com/files/MAC_1096_SDK.zip -> mac-10.96.zip
-_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=8009e0e9f516ae89c895fef62fd1f075
diff --git a/metadata/md5-cache/net-analyzer/dhcpdump-1.9 b/metadata/md5-cache/net-analyzer/dhcpdump-1.9
new file mode 100644
index 000000000000..2ffe6bb6a07f
--- /dev/null
+++ b/metadata/md5-cache/net-analyzer/dhcpdump-1.9
@@ -0,0 +1,14 @@
+BDEPEND=dev-lang/perl
+DEFINED_PHASES=compile install
+DEPEND=net-libs/libpcap
+DESCRIPTION=DHCP Packet Analyzer/tcpdump postprocessor
+EAPI=8
+HOMEPAGE=http://github.com/bbonev/dhcpdump http://www.mavetju.org/unix/general.php
+INHERIT=toolchain-funcs
+KEYWORDS=~amd64 ~arm ~mips ~x86
+LICENSE=BSD-2
+RDEPEND=net-libs/libpcap
+SLOT=0
+SRC_URI=http://github.com/bbonev/dhcpdump/releases/download/v1.9/dhcpdump-1.9.tar.xz
+_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=172b61565c07a415cf670fd3e819a2f6
diff --git a/metadata/md5-cache/net-libs/libcapi-3.2.3 b/metadata/md5-cache/net-libs/libcapi-3.2.3
index e87af5ebed55..40c6ba2e9c6f 100644
--- a/metadata/md5-cache/net-libs/libcapi-3.2.3
+++ b/metadata/md5-cache/net-libs/libcapi-3.2.3
@@ -5,9 +5,9 @@ EAPI=8
HOMEPAGE=https://gitlab.com/tabos/libcapi/
INHERIT=meson-multilib
IUSE=abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64
-KEYWORDS=amd64 ppc x86
+KEYWORDS=amd64 ~arm64 ppc x86
LICENSE=GPL-2 GPL-2+ LGPL-2.1 GPL-3+
SLOT=0/3.2.3
SRC_URI=https://gitlab.com/tabos/libcapi/-/archive/v3.2.3/libcapi-3.2.3.tar.bz2
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 meson 99466844dd8d4fcfb07578a76f5a9922 meson-multilib 8989922d980e5e870cc3de949d1b2586 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=29154d2944be6ee05c97e9a85e4d0e1a
+_md5_=9212be385d5353c238b530b1311ac434
diff --git a/metadata/md5-cache/net-mail/isync-1.4.4 b/metadata/md5-cache/net-mail/isync-1.5.1
index 4c34a8da7068..8b2db6c34847 100644
--- a/metadata/md5-cache/net-mail/isync-1.4.4
+++ b/metadata/md5-cache/net-mail/isync-1.5.1
@@ -9,5 +9,5 @@ KEYWORDS=~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86
LICENSE=GPL-2
RDEPEND=>=sys-libs/db-4.2:= sasl? ( dev-libs/cyrus-sasl ) ssl? ( !libressl? ( >=dev-libs/openssl-0.9.6:0= ) libressl? ( dev-libs/libressl:0= ) ) zlib? ( sys-libs/zlib:0= )
SLOT=0
-SRC_URI=mirror://sourceforge/isync/isync/1.4.4/isync-1.4.4.tar.gz
-_md5_=db72295da8d4c918e59119138333f881
+SRC_URI=https://sourceforge.net/projects/isync/files/isync/1.5.1/isync-1.5.1.tar.gz/download -> isync-1.5.1.tar.gz
+_md5_=a8b3cb69ebff06518212bf750c20a2d8
diff --git a/metadata/md5-cache/net-misc/miniupnpd-2.3.9 b/metadata/md5-cache/net-misc/miniupnpd-2.3.9
new file mode 100644
index 000000000000..cf36e4a02ae4
--- /dev/null
+++ b/metadata/md5-cache/net-misc/miniupnpd-2.3.9
@@ -0,0 +1,15 @@
+BDEPEND=sys-apps/lsb-release verify-sig? ( sec-keys/openpgp-keys-miniupnp ) verify-sig? ( app-crypt/gnupg >=app-portage/gemato-20 )
+DEFINED_PHASES=compile configure install postinst prepare test unpack
+DEPEND=dev-libs/gmp:0= sys-apps/util-linux:= dev-libs/openssl:0= !nftables? ( >=net-firewall/iptables-1.4.6:0=[ipv6(+)?] net-libs/libnfnetlink:= net-libs/libmnl:= ) nftables? ( net-firewall/nftables net-libs/libnftnl:= net-libs/libmnl:= ) elibc_musl? ( sys-libs/queue-standalone )
+DESCRIPTION=MiniUPnP IGD Daemon
+EAPI=8
+HOMEPAGE=http://miniupnp.free.fr/ https://miniupnp.tuxfamily.org/ https://github.com/miniupnp/miniupnp/
+INHERIT=toolchain-funcs verify-sig
+IUSE=+leasefile igd2 ipv6 nftables pcp-peer portinuse strict verify-sig
+KEYWORDS=~amd64 ~arm ~arm64 ~x86
+LICENSE=BSD
+RDEPEND=dev-libs/gmp:0= sys-apps/util-linux:= dev-libs/openssl:0= !nftables? ( >=net-firewall/iptables-1.4.6:0=[ipv6(+)?] net-libs/libnfnetlink:= net-libs/libmnl:= ) nftables? ( net-firewall/nftables net-libs/libnftnl:= net-libs/libmnl:= )
+SLOT=0
+SRC_URI=https://miniupnp.tuxfamily.org/files/miniupnpd-2.3.9.tar.gz verify-sig? ( https://miniupnp.tuxfamily.org/files/miniupnpd-2.3.9.tar.gz.sig )
+_eclasses_=eapi9-pipestatus d2c134036ac31c3085aebc9147f572bd toolchain-funcs f9d71a6efe9d083aec750dd13968e169 verify-sig 7433426b6b28bf2737ba4b82c8aa8c53
+_md5_=376aa310d3dd3616290fed60f6bd7432
diff --git a/metadata/md5-cache/net-misc/passt-2025.04.15 b/metadata/md5-cache/net-misc/passt-2025.04.15
new file mode 100644
index 000000000000..b56f50e415a9
--- /dev/null
+++ b/metadata/md5-cache/net-misc/passt-2025.04.15
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile prepare
+DESCRIPTION=User-mode networking daemons for VMs and namespaces, replacement for Slirp
+EAPI=8
+HOMEPAGE=https://passt.top/
+INHERIT=toolchain-funcs
+IUSE=static
+KEYWORDS=~amd64 ~arm64 ~loong ~riscv
+LICENSE=BSD GPL-2+
+SLOT=0
+SRC_URI=https://passt.top/passt/snapshot/passt-2340bbf.tar.xz -> passt-2025.04.15.tar.xz
+_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169
+_md5_=0a23542bb40c89d851dc870833eaf32b
diff --git a/metadata/md5-cache/net-misc/passt-9999 b/metadata/md5-cache/net-misc/passt-9999
index 933c28e1c660..299d852e177a 100644
--- a/metadata/md5-cache/net-misc/passt-9999
+++ b/metadata/md5-cache/net-misc/passt-9999
@@ -9,4 +9,4 @@ LICENSE=BSD GPL-2+
PROPERTIES=live
SLOT=0
_eclasses_=git-r3 875eb471682d3e1f18da124be97dcc81 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=ac4353945d60250e53fe27a745484ec6
+_md5_=0a23542bb40c89d851dc870833eaf32b
diff --git a/metadata/md5-cache/net-proxy/sshuttle-1.3.1 b/metadata/md5-cache/net-proxy/sshuttle-1.3.1
index 510b355b2064..bd19235d7222 100644
--- a/metadata/md5-cache/net-proxy/sshuttle-1.3.1
+++ b/metadata/md5-cache/net-proxy/sshuttle-1.3.1
@@ -5,7 +5,7 @@ EAPI=8
HOMEPAGE=https://github.com/sshuttle/sshuttle https://pypi.org/project/sshuttle/
INHERIT=distutils-r1 linux-info
IUSE=doc test python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
-KEYWORDS=~amd64 ~x86
+KEYWORDS=~amd64 x86
LICENSE=LGPL-2.1+
RDEPEND=dev-python/psutil[python_targets_python3_9(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?,python_targets_python3_13(-)?] || ( net-firewall/iptables net-firewall/nftables ) python_targets_python3_9? ( dev-lang/python:3.9 ) python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 )
REQUIRED_USE=|| ( python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
@@ -13,4 +13,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/sshuttle/sshuttle/archive/refs/tags/v1.3.1.tar.gz -> sshuttle-1.3.1.gh.tar.gz !doc? ( https://dev.gentoo.org/~sam/distfiles/net-proxy/sshuttle/sshuttle-1.3.0-docs.tar.xz )
_eclasses_=distutils-r1 e00a374020e6ed96997e27ad9902706d flag-o-matic e8de74bac929ba17427e740e95707d00 linux-info ea4122ba1d8791a12b78e53f9510a2e3 multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c python-r1 fa2daad0051275fa416115c76e53b1de python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=c0d60dca041f0d420d799d5e20966529
+_md5_=86a4dc11791654ed06120ab4bc152555
diff --git a/metadata/md5-cache/net-wireless/aic8800-1.0.6 b/metadata/md5-cache/net-wireless/aic8800-1.0.6
new file mode 100644
index 000000000000..29ba41088af2
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/aic8800-1.0.6
@@ -0,0 +1,16 @@
+BDEPEND=dev-util/pahole sys-apps/kmod[tools] modules-sign? ( dev-libs/openssl virtual/pkgconfig ) virtual/pkgconfig
+DEFINED_PHASES=compile install postinst postrm setup unpack
+DEPEND=virtual/linux-sources
+DESCRIPTION=aic8800 driver for AICSemi AIC8800/8801/8800DC/8800DW/8800FC Wifi/Bluetooth
+EAPI=8
+HOMEPAGE=https://www.aicsemi.com/ https://linux.brostrend.com/troubleshooting/source-code/
+IDEPEND=sys-apps/kmod[tools]
+INHERIT=linux-mod-r1 udev unpacker
+IUSE=+firmware udev dist-kernel modules-compress modules-sign +strip
+KEYWORDS=~amd64
+LICENSE=GPL-2+ firmware? ( freedist )
+RDEPEND=sys-apps/kmod[tools] dist-kernel? ( virtual/dist-kernel:= )
+SLOT=0
+SRC_URI=https://linux.brostrend.com/aic8800-dkms.deb -> aic8800-1.0.6.deb
+_eclasses_=dist-kernel-utils 8fd483ccdf8e7fc0919507c0c7c273e4 edo 367e103a74bf77e6a8da7894d999fa3c linux-info ea4122ba1d8791a12b78e53f9510a2e3 linux-mod-r1 84b53048ef3f4ee4f1b3dce65d43580e mount-boot-utils 2551bac1a772f4b6beacb494a750ae92 multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 udev f3d9a4376ebd22131726a68e1a0a058f unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
+_md5_=b4a4d72f9de830b267ec5a89a2acb637
diff --git a/metadata/md5-cache/net-wireless/dump1090-10.0.1 b/metadata/md5-cache/net-wireless/dump1090-10.0.1
index 65a6b7a11f92..8fb45afeca51 100644
--- a/metadata/md5-cache/net-wireless/dump1090-10.0.1
+++ b/metadata/md5-cache/net-wireless/dump1090-10.0.1
@@ -6,10 +6,10 @@ EAPI=8
HOMEPAGE=https://github.com/flightaware/dump1090
INHERIT=tmpfiles toolchain-funcs
IUSE=bladerf hackrf minimal +rtlsdr
-KEYWORDS=~amd64 ~x86
+KEYWORDS=amd64 x86
LICENSE=BSD GPL-2+
RDEPEND=sys-libs/ncurses:=[tinfo] bladerf? ( net-wireless/bladerf:= virtual/libusb:1 ) hackrf? ( net-libs/libhackrf:= virtual/libusb:1 ) rtlsdr? ( net-wireless/rtl-sdr:= virtual/libusb:1 ) virtual/tmpfiles
SLOT=0
SRC_URI=https://github.com/flightaware/dump1090/archive/v10.0.1.tar.gz -> dump1090-10.0.1.tar.gz
_eclasses_=tmpfiles 9a9814db5a3fbd4f1e921c05297e7735 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=86b2446abd59e7660f25f659acf7338e
+_md5_=bf58187915eef68b4df767caa9bc1717
diff --git a/metadata/md5-cache/net-wireless/dump1090-9.0 b/metadata/md5-cache/net-wireless/dump1090-9.0
deleted file mode 100644
index e567569a086f..000000000000
--- a/metadata/md5-cache/net-wireless/dump1090-9.0
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=virtual/pkgconfig
-DEFINED_PHASES=compile install postinst prepare
-DEPEND=sys-libs/ncurses:=[tinfo] bladerf? ( net-wireless/bladerf:= virtual/libusb:1 ) hackrf? ( net-libs/libhackrf:= virtual/libusb:1 ) rtlsdr? ( net-wireless/rtl-sdr:= virtual/libusb:1 )
-DESCRIPTION=Simple Mode S decoder for RTLSDR devices
-EAPI=8
-HOMEPAGE=https://github.com/flightaware/dump1090
-INHERIT=tmpfiles toolchain-funcs
-IUSE=bladerf hackrf minimal +rtlsdr
-KEYWORDS=amd64 x86
-LICENSE=BSD GPL-2+
-RDEPEND=sys-libs/ncurses:=[tinfo] bladerf? ( net-wireless/bladerf:= virtual/libusb:1 ) hackrf? ( net-libs/libhackrf:= virtual/libusb:1 ) rtlsdr? ( net-wireless/rtl-sdr:= virtual/libusb:1 ) virtual/tmpfiles
-SLOT=0
-SRC_URI=https://github.com/flightaware/dump1090/archive/v9.0.tar.gz -> dump1090-9.0.tar.gz
-_eclasses_=tmpfiles 9a9814db5a3fbd4f1e921c05297e7735 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=f3c0f00a0b6fae502ad225755b14654c
diff --git a/metadata/md5-cache/net-wireless/dump1090-9999 b/metadata/md5-cache/net-wireless/dump1090-9999
index a17b2e585c4e..bbc113b7e45e 100644
--- a/metadata/md5-cache/net-wireless/dump1090-9999
+++ b/metadata/md5-cache/net-wireless/dump1090-9999
@@ -11,4 +11,4 @@ PROPERTIES=live
RDEPEND=sys-libs/ncurses:=[tinfo] bladerf? ( net-wireless/bladerf:= virtual/libusb:1 ) hackrf? ( net-libs/libhackrf:= virtual/libusb:1 ) rtlsdr? ( net-wireless/rtl-sdr:= virtual/libusb:1 ) virtual/tmpfiles
SLOT=0
_eclasses_=git-r3 875eb471682d3e1f18da124be97dcc81 tmpfiles 9a9814db5a3fbd4f1e921c05297e7735 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=86b2446abd59e7660f25f659acf7338e
+_md5_=8f0eccf08567d75d6d899161c881fc9f
diff --git a/metadata/md5-cache/sys-apps/cyme-2.1.2 b/metadata/md5-cache/sys-apps/cyme-2.2.0
index 7e95dadea188..27e9832421ed 100644
--- a/metadata/md5-cache/sys-apps/cyme-2.1.2
+++ b/metadata/md5-cache/sys-apps/cyme-2.2.0
@@ -6,8 +6,8 @@ HOMEPAGE=https://github.com/tuna-f1sh/cyme/
INHERIT=cargo
IUSE=debug
KEYWORDS=~amd64
-LICENSE=GPL-3+ LGPL-2+ MIT MPL-2.0 Unicode-3.0 || ( Apache-2.0 Boost-1.0 )
+LICENSE=GPL-3+ Apache-2.0 LGPL-2+ MIT MPL-2.0 Unicode-3.0
SLOT=0
-SRC_URI=https://github.com/tuna-f1sh/cyme/archive/v2.1.2.tar.gz -> cyme-2.1.2.gh.tar.gz https://github.com/kevinmehall/nusb/archive/dad53d268db6620d641a01eb2ecb8b5791fcc1fc.tar.gz -> nusb-dad53d268db6620d641a01eb2ecb8b5791fcc1fc.gh.tar.gz https://github.com/gentoo-crate-dist/cyme/releases/download/v2.1.2/cyme-v2.1.2-crates.tar.xz
+SRC_URI=https://github.com/tuna-f1sh/cyme/archive/v2.2.0.tar.gz -> cyme-2.2.0.gh.tar.gz https://github.com/kevinmehall/nusb/archive/dad53d268db6620d641a01eb2ecb8b5791fcc1fc.tar.gz -> nusb-dad53d268db6620d641a01eb2ecb8b5791fcc1fc.gh.tar.gz https://github.com/gentoo-crate-dist/cyme/releases/download/v2.2.0/cyme-v2.2.0-crates.tar.xz
_eclasses_=cargo df2b134de0bbaddf4c0d660969d80029 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f rust e9d31591b9b0251018cd5c60a43bafa1 rust-toolchain 76468983281b0a7fc167ca224f84ecfd toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=8a5a021d0bb262826be8ea4467680913
+_md5_=41340bba457638216000000ef8aaa282
diff --git a/metadata/md5-cache/www-client/elinks-0.18.0 b/metadata/md5-cache/www-client/elinks-0.18.0
index e82c13291c16..b90a5ada9449 100644
--- a/metadata/md5-cache/www-client/elinks-0.18.0
+++ b/metadata/md5-cache/www-client/elinks-0.18.0
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=http://elinks.or.cz/
INHERIT=flag-o-matic guile-single meson lua-single python-single-r1
IUSE=bittorrent brotli bzip2 curl debug +doc finger ftp gemini gopher gpm gnutls guile idn javascript libcss lua lzma +mouse nls nntp perl python samba sftp ssl test tre unicode X xml zlib zstd guile_single_target_2-2 guile_single_target_3-0 lua_single_target_luajit lua_single_target_lua5-1 lua_single_target_lua5-3 lua_single_target_lua5-4 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
-KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris
+KEYWORDS=~alpha amd64 ~arm ~arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris
LICENSE=GPL-2
RDEPEND=>=sys-libs/ncurses-5.2:=[unicode(+)] brotli? ( app-arch/brotli:= ) bzip2? ( >=app-arch/bzip2-1.0.2 ) curl? ( net-misc/curl[ssl] ) gpm? ( >=sys-libs/gpm-1.20.0-r5 ) guile? ( guile_single_target_2-2? ( dev-scheme/guile:2.2[deprecated] ) guile_single_target_3-0? ( dev-scheme/guile:3.0[deprecated] ) ) idn? ( net-dns/libidn2:= ) javascript? ( dev-cpp/libxmlpp:5.0 dev-lang/mujs:= ) libcss? ( >=dev-libs/libcss-0.9.2 >=net-libs/libdom-0.4.2 ) lua? ( lua_single_target_luajit? ( dev-lang/luajit:= ) lua_single_target_lua5-1? ( dev-lang/lua:5.1 ) lua_single_target_lua5-3? ( dev-lang/lua:5.3 ) lua_single_target_lua5-4? ( dev-lang/lua:5.4 ) ) lzma? ( app-arch/xz-utils ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python3_9? ( dev-lang/python:3.9 ) python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) ) samba? ( net-fs/samba ) ssl? ( !gnutls? ( dev-libs/openssl:= ) gnutls? ( net-libs/gnutls:= ) ) tre? ( dev-libs/tre ) X? ( x11-libs/libX11 x11-libs/libXt ) xml? ( >=dev-libs/expat-1.95.4 ) zlib? ( >=sys-libs/zlib-1.1.4 ) zstd? ( app-arch/zstd:= )
REQUIRED_USE=guile? ( ^^ ( guile_single_target_2-2 guile_single_target_3-0 ) ) javascript? ( curl libcss ) lua? ( ^^ ( lua_single_target_luajit lua_single_target_lua5-1 lua_single_target_lua5-3 lua_single_target_lua5-4 ) ) python? ( ^^ ( python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ) sftp? ( curl )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/rkd77/elinks/releases/download/v0.18.0/elinks-0.18.0.tar.xz
_eclasses_=flag-o-matic e8de74bac929ba17427e740e95707d00 guile-single 6e99296ff5eff20c16de5075dfe75616 guile-utils e45d014e2eb3f7fe4fdcd4e5eeafdb8b lua-single 75fe955a36b18e199213c8739eaebdbb lua-utils 7c89927eda6f21c4c48136247077ab37 meson 99466844dd8d4fcfb07578a76f5a9922 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 python-utils-r1 66e890adbe1c4185d6635933f612ad49 toolchain-funcs f9d71a6efe9d083aec750dd13968e169
-_md5_=465bb135b3f33c63e24f8bbaa4072490
+_md5_=3844a4cc8b21d4a83b8ec0d0db0ee7e7
diff --git a/metadata/md5-cache/www-client/httrack-3.49.4 b/metadata/md5-cache/www-client/httrack-3.49.6
index 77072e8935b8..e4346a5a5039 100644
--- a/metadata/md5-cache/www-client/httrack-3.49.4
+++ b/metadata/md5-cache/www-client/httrack-3.49.6
@@ -10,6 +10,6 @@ KEYWORDS=amd64 ppc x86 ~amd64-linux ~x86-linux
LICENSE=GPL-3
RDEPEND=>=sys-libs/zlib-1.2.5.1-r1 !libressl? ( >=dev-libs/openssl-1.1.0:= ) libressl? ( dev-libs/libressl )
SLOT=0
-SRC_URI=https://github.com/xroche/httrack/archive/refs/tags/3.49.4.tar.gz https://github.com/xroche/coucal/archive/73ada075553b7607d083037a87cb9c73b3683bfc.tar.gz -> coucal-73ada075553b7607d083037a87cb9c73b3683bfc.tar.gz
+SRC_URI=https://github.com/xroche/httrack/archive/748c35de7858ead963daf1393ad023d75b7820c2.tar.gz -> httrack-3.49.6.tar.gz https://github.com/xroche/coucal/archive/73ada075553b7607d083037a87cb9c73b3683bfc.tar.gz -> coucal-73ada075553b7607d083037a87cb9c73b3683bfc.tar.gz
_eclasses_=autotools f20ecf7ab0a7c34e83238b3ed4aaf6d6 gnuconfig ddeb9f8caff1b5f71a09c75b7534df79 libtool c81bd096be5f4c82f4e8f156ef112402 multilib b2a329026f2e404e9e371097dda47f96 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=c0485c610bc666c23fc781a6ab81d82f
+_md5_=8bea34eeaba1e2a2ab8e2b5e8c08547f
diff --git a/metadata/md5-cache/x11-misc/kdocker-6.2 b/metadata/md5-cache/x11-misc/kdocker-6.2
index 4f33577ec984..bc19034f829e 100644
--- a/metadata/md5-cache/x11-misc/kdocker-6.2
+++ b/metadata/md5-cache/x11-misc/kdocker-6.2
@@ -6,10 +6,10 @@ EAPI=8
HOMEPAGE=https://github.com/user-none/KDocker
IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
INHERIT=cmake xdg
-KEYWORDS=amd64 ~x86
+KEYWORDS=amd64 x86
LICENSE=GPL-2+
RDEPEND=dev-qt/qtbase:6[dbus,gui,widgets,X] x11-libs/libX11
SLOT=0
SRC_URI=https://github.com/user-none/KDocker/archive/6.2.tar.gz -> KDocker-6.2.tar.gz
_eclasses_=cmake c0c9c21d01b8a96d2d736c554daedc57 flag-o-matic e8de74bac929ba17427e740e95707d00 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 xdg 3ef49a87c52c8b77c476351195dfe575 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
-_md5_=cb88470c2f372b8cb7a6ada683b292e9
+_md5_=15afd524d7f70aafe775dd80cb8c477e
diff --git a/metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.3.2 b/metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.3.2
deleted file mode 100644
index 8d4e3c657fc8..000000000000
--- a/metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.3.2
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=dev-util/intltool virtual/pkgconfig
-DEFINED_PHASES=install
-DEPEND=>=dev-libs/glib-2.26.0 >=x11-libs/gtk+-3.22.0:3 >=xfce-base/thunar-1.7:=
-DESCRIPTION=Thunar plugin to share files using Samba
-EAPI=8
-HOMEPAGE=https://goodies.xfce.org/projects/thunar-plugins/thunar-shares-plugin https://gitlab.xfce.org/thunar-plugins/thunar-shares-plugin/
-KEYWORDS=amd64 ~arm ~arm64 ~riscv x86
-LICENSE=GPL-2+
-RDEPEND=>=dev-libs/glib-2.26.0 >=x11-libs/gtk+-3.22.0:3 >=xfce-base/thunar-1.7:=
-SLOT=0
-SRC_URI=https://archive.xfce.org/src/thunar-plugins/thunar-shares-plugin/0.3/thunar-shares-plugin-0.3.2.tar.bz2
-_md5_=682bea9ac37fa4c681faa815ae4025e0
diff --git a/metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.4.0 b/metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.4.0
index 429f3ab19e21..7aead8c19998 100644
--- a/metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.4.0
+++ b/metadata/md5-cache/xfce-extra/thunar-shares-plugin-0.4.0
@@ -4,9 +4,9 @@ DEPEND=>=dev-libs/glib-2.26.0 >=x11-libs/gtk+-3.22.0:3 >=xfce-base/thunar-1.7:=
DESCRIPTION=Thunar plugin to share files using Samba
EAPI=8
HOMEPAGE=https://goodies.xfce.org/projects/thunar-plugins/thunar-shares-plugin https://gitlab.xfce.org/thunar-plugins/thunar-shares-plugin/
-KEYWORDS=~amd64 ~arm ~arm64 ~riscv x86
+KEYWORDS=amd64 ~arm ~arm64 ~riscv x86
LICENSE=GPL-2+
RDEPEND=>=dev-libs/glib-2.26.0 >=x11-libs/gtk+-3.22.0:3 >=xfce-base/thunar-1.7:= >=xfce-base/xfconf-4.12.0:=
SLOT=0
SRC_URI=https://archive.xfce.org/src/thunar-plugins/thunar-shares-plugin/0.4/thunar-shares-plugin-0.4.0.tar.bz2
-_md5_=7059e00c52e4fbec06b50133692bc7ff
+_md5_=4e9208b2bd013f5524a656ef3985fd03
diff --git a/net-analyzer/dhcpdump/Manifest b/net-analyzer/dhcpdump/Manifest
index b52390457a84..e66319d9349f 100644
--- a/net-analyzer/dhcpdump/Manifest
+++ b/net-analyzer/dhcpdump/Manifest
@@ -1 +1,2 @@
DIST dhcpdump-1.8.tar.gz 10740 BLAKE2B f87f1db539b06cffd68395982476bd7bfcad4e41d86aea7f3be357a07d597cdb34e8888eaf90e6dc11db0252dce418a3b1ad8a00b0d3a7c7faab48f14c6aec85 SHA512 52cd63d581a3c530c2f5baa66808d5b0241853651c720bd513b769b8301b4dff9c87243787014aea98a5b3ebed86ec317b58d262bf5031015141a4da50fb76e6
+DIST dhcpdump-1.9.tar.xz 11520 BLAKE2B a1749a27695aa88dbac46062ed67a45ea2dba500e56220d6f200c92e7ea379d085150c32d1499d4209b1fd774ad7a517f4e49a6221dfce066691077808100abb SHA512 352737e4e4ecc0d3ca80f881b09981bd3998d42f0141fc71f429d99057f49bdeb233ea64888b603470424f99eabd2575d2d92945dd7f606875ec5bc3b6efe7f4
diff --git a/net-analyzer/dhcpdump/dhcpdump-1.9.ebuild b/net-analyzer/dhcpdump/dhcpdump-1.9.ebuild
new file mode 100644
index 000000000000..46e396f7a38e
--- /dev/null
+++ b/net-analyzer/dhcpdump/dhcpdump-1.9.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="DHCP Packet Analyzer/tcpdump postprocessor"
+HOMEPAGE="http://github.com/bbonev/dhcpdump http://www.mavetju.org/unix/general.php"
+SRC_URI="http://github.com/bbonev/${PN}/releases/download/v${PV}/${P}.tar.xz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~mips ~x86"
+
+# for pod2man
+BDEPEND="dev-lang/perl"
+DEPEND="net-libs/libpcap"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ tc-export CC
+ emake
+}
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.8
+ einstalldocs
+}
diff --git a/net-analyzer/dhcpdump/metadata.xml b/net-analyzer/dhcpdump/metadata.xml
index 865247453f3c..0a389223097a 100644
--- a/net-analyzer/dhcpdump/metadata.xml
+++ b/net-analyzer/dhcpdump/metadata.xml
@@ -6,9 +6,9 @@
<name>Gentoo network monitoring and analysis project</name>
</maintainer>
<longdescription>
-This command parses the output of tcpdump to display the
-dhcp-packets for easier checking and debugging.
-</longdescription>
+ This command parses the output of tcpdump to display the
+ dhcp-packets for easier checking and debugging.
+ </longdescription>
<origin>gentoo-staging</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/net-libs/libcapi/libcapi-3.2.3.ebuild b/net-libs/libcapi/libcapi-3.2.3.ebuild
index c2ac730c382f..0b354c0e0593 100644
--- a/net-libs/libcapi/libcapi-3.2.3.ebuild
+++ b/net-libs/libcapi/libcapi-3.2.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -14,7 +14,7 @@ S="${WORKDIR}/${PN}-v${PV}-${EGIT_COMMIT}"
LICENSE="GPL-2 GPL-2+ LGPL-2.1 GPL-3+"
SLOT="0/${PV}"
-KEYWORDS="amd64 ppc x86"
+KEYWORDS="amd64 ~arm64 ppc x86"
multilib_src_configure() {
meson_src_configure
diff --git a/net-mail/isync/Manifest b/net-mail/isync/Manifest
index 28bb6bb09375..b2bc46f8e8da 100644
--- a/net-mail/isync/Manifest
+++ b/net-mail/isync/Manifest
@@ -1,2 +1,2 @@
-DIST isync-1.4.4.tar.gz 340544 BLAKE2B fdf38b1066af10315b780897f1fe09c8f7d0b4d2202383a5f0ef24b98f11dff625bf178bbb0dc846460f661b18f923d2823bf79643d4d376b606b03980f22e18 SHA512 b769f474f2296764cabaae7e2b23e47c22714fca5919e9f1c916ed70b18c71c0bc9301fff0f64434f4f0ae28c9d16216e72556b48014ec94d1b7646de7183011
DIST isync-1.5.0.tar.gz 412925 BLAKE2B b056f47fb7421f9fcf94eed20aaed96b2be5bbd28d71db635095c3cd5a2c4e0f8df8f202eae30be810b0c07a3802462f601e5b1dcfa92b3f5f3ec32a00126b4e SHA512 af62c5d871a2b4626acb27bf474ff42474a2c90618b1348a4f6b454b46fff5f0603fbbd48672ac16883bf27f9a35b535644f6b43503451b4790ba3fcef16f207
+DIST isync-1.5.1.tar.gz 324364 BLAKE2B 99217873da95d617c31f25bbabaee972aeda45c145dab94f1937414c7262345a6cf52dbd507ce58b84eb8510328ab4b28f9e1ba6c945ad40fa51a7efa6f589c9 SHA512 3ccc37b9f902841e244acb16d574991062090770b5d8efb0079cee507f4352752e248f28cb6da63d21987f5c616e36d0dc6b8a7b20a89bcf805cd37429473d02
diff --git a/net-mail/isync/isync-1.4.4.ebuild b/net-mail/isync/isync-1.5.1.ebuild
index 899aa103ddae..612eda190b72 100644
--- a/net-mail/isync/isync-1.4.4.ebuild
+++ b/net-mail/isync/isync-1.5.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021 Liguros Authors
+# Copyright 2021-2025 Liguros Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,7 +6,8 @@ DESCRIPTION="MailDir mailbox synchronizer"
HOMEPAGE="https://sourceforge.net/projects/isync/"
LICENSE="GPL-2"
SLOT="0"
-SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}.tar.gz"
+#SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}.tar.gz"
+SRC_URI="https://sourceforge.net/projects/isync/files/isync/1.5.1/isync-1.5.1.tar.gz/download -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
IUSE="libressl sasl ssl zlib"
diff --git a/net-misc/miniupnpd/Manifest b/net-misc/miniupnpd/Manifest
index 52baf166abce..8ed1524d8a57 100644
--- a/net-misc/miniupnpd/Manifest
+++ b/net-misc/miniupnpd/Manifest
@@ -2,3 +2,5 @@ DIST miniupnpd-2.3.7.tar.gz 265329 BLAKE2B 9d7cbe04644c6811950328f402e4666fc8d51
DIST miniupnpd-2.3.7.tar.gz.sig 543 BLAKE2B 957b5dad44b020004a38b6f4748ca251deaadfc8ade28332eb12484e4bac408f5afdb38fe9974f18bc17a28dd33aae91a287838c7c15984bc5df7f69a82f9c6f SHA512 b8edd3f69b61e63560fb902f43e0a1730c80908637978782a1141fe8ac910b24f578ee3980127f4726c44e44222491a83670adea36a19984b3ffd726b12fe0dc
DIST miniupnpd-2.3.8.tar.gz 301264 BLAKE2B 3194460cf91b7a9f290b52a461a133ce139d355c5470e4ed0fc6c4e8d4ac8f1e12fb54771be1cfae6c9507a1858e5097af2a8b3e987d97ec75241a20c1a738d6 SHA512 18cbaaf804dfcf42edbd9be0719e6137fbe6876a6a967a20b6f64ed8bf25a8977fe71c5ad9c8b8427badf9753e6f8d5f970b27e3d23dddfe9ba34cc183ec1917
DIST miniupnpd-2.3.8.tar.gz.sig 543 BLAKE2B dffe65f44b2aa4085414c6ccbc7bf96ba2c7bfa32e9aae7c03b59db377ad667cff2b6c176d2836a1141cfdabd198a2529fc891434518c2635cb7206eb7397d08 SHA512 7cbc9ad00bfa119be0cdeca6276745e8db8197e1f29b896d6e8423181ccf49bd1a9d5f16cd8e938cc46c68b706627eb69be30ec4bb179ba3595727a001e331ef
+DIST miniupnpd-2.3.9.tar.gz 302607 BLAKE2B 189f48aa375b83632613a4a5e9d97c9785859ed2704bfcaabdbef73d6b7efdc0e1903951acd30cb47ccca7f2edf63373f3dd9cdf6ed752dcf0a614c0af4ad70f SHA512 a2352ebe107003d1f87b6590a9f72bd89606a03ada51a9e2b2bd7c0bb4f57ee9da45d4bd23c1aaaead58eb5b4e4405dcb98c49ef145ba40ddb2d031c6f73e334
+DIST miniupnpd-2.3.9.tar.gz.sig 543 BLAKE2B 2cdd9ede95ebce325d6862eb954fa1beac9b20d7f4a45cd1d38762748f7890117c990942bb3303f932316b19e271c998fea7b69c3fa4917757d02127a9afa475 SHA512 8510cf79fcfe2aeae0ea3bca51d5d88661125c9e804860c46cc8faa5e7662f80640346ca52c1a7e2fc729c2df16d3cdab953220c0b46f6256e2b92b970b2d195
diff --git a/net-misc/miniupnpd/miniupnpd-2.3.9.ebuild b/net-misc/miniupnpd/miniupnpd-2.3.9.ebuild
new file mode 100644
index 000000000000..b6194e2f4f1c
--- /dev/null
+++ b/net-misc/miniupnpd/miniupnpd-2.3.9.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs verify-sig
+
+DESCRIPTION="MiniUPnP IGD Daemon"
+HOMEPAGE="
+ http://miniupnp.free.fr/
+ https://miniupnp.tuxfamily.org/
+ https://github.com/miniupnp/miniupnp/
+"
+SRC_URI="
+ https://miniupnp.tuxfamily.org/files/${P}.tar.gz
+ verify-sig? (
+ https://miniupnp.tuxfamily.org/files/${P}.tar.gz.sig
+ )
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="+leasefile igd2 ipv6 nftables pcp-peer portinuse strict"
+
+RDEPEND="
+ dev-libs/gmp:0=
+ sys-apps/util-linux:=
+ dev-libs/openssl:0=
+ !nftables? (
+ >=net-firewall/iptables-1.4.6:0=[ipv6(+)?]
+ net-libs/libnfnetlink:=
+ net-libs/libmnl:=
+ )
+ nftables? (
+ net-firewall/nftables
+ net-libs/libnftnl:=
+ net-libs/libmnl:=
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ elibc_musl? ( sys-libs/queue-standalone )
+"
+BDEPEND="
+ sys-apps/lsb-release
+ verify-sig? ( sec-keys/openpgp-keys-miniupnp )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/miniupnp.asc
+
+src_prepare() {
+ default
+
+ # fails without a default route
+ sed -i -e 's:EXTIF=.*:EXTIF=lo:' testgetifaddr.sh || die
+}
+
+src_configure() {
+ local opts=(
+ --vendorcfg
+ $(usex igd2 '--igd2' '')
+ $(usex ipv6 '--ipv6' '')
+ $(usex leasefile '--leasefile' '')
+ $(usex portinuse '--portinuse' '')
+ $(usex pcp-peer '--pcp-peer' '')
+ $(usex strict '--strict' '')
+ --firewall=$(usex nftables nftables iptables)
+ )
+
+ # custom script
+ ./configure "${opts[@]}" || die
+ # prevent gzipping manpage
+ sed -i -e '/gzip/d' Makefile || die
+}
+
+src_compile() {
+ # By default, it builds a bunch of unittests that are missing wrapper
+ # scripts in the tarball
+ emake CC="$(tc-getCC)" STRIP=true miniupnpd
+}
+
+src_test() {
+ emake CC="$(tc-getCC)" check
+}
+
+src_install() {
+ emake PREFIX="${ED}" STRIP=true install
+
+ local confd_seds=()
+ if use nftables; then
+ confd_seds+=( -e 's/^iptables_scripts=/#&/' )
+ else
+ confd_seds+=( -e 's/^nftables_scripts=/#&/' )
+ fi
+ if ! use ipv6 || use nftables; then
+ confd_seds+=( -e 's/^ip6tables_scripts=/#&/' )
+ fi
+
+ newinitd "${FILESDIR}"/${PN}-init.d-r2 ${PN}
+ newconfd - ${PN} < <(sed "${confd_seds[@]}" \
+ "${FILESDIR}"/${PN}-conf.d-r2 || die)
+}
+
+pkg_postinst() {
+ elog "Please correct the external interface in the top of the two"
+ elog "scripts in /etc/miniupnpd and edit the config file in there too"
+}
diff --git a/net-misc/passt/Manifest b/net-misc/passt/Manifest
index b5e590924d13..62ad73020134 100644
--- a/net-misc/passt/Manifest
+++ b/net-misc/passt/Manifest
@@ -1,3 +1,4 @@
DIST passt-2025.01.21.tar.xz 237504 BLAKE2B 80aafe2fbf5ba8d4065fe99a892102e2c8d18ce82ef4cee3970deeb6d07cb89d40084cf4b90c7747dbb69e3895ad254872faad394b311950412cc89b9eae819d SHA512 e2e23040f05b65e666a7ccbbaa54621a575bdc22e21e518aa17dcfdebd82e95af49feadd20d58536f99b990428d404d6d2c64c34433353a4ac1656bf76bab6c6
DIST passt-2025.02.17.tar.xz 254640 BLAKE2B 09a505a84e8555a1c4a010f9db6189b638ae3a3a6c1202d42e73d710bfc47f75b99defc372e8ecd44ec78ab196cd3619ecbb7eb171c9606bb4d425548a08159c SHA512 9eca3d9e20121f6b40b590f50e593d7a4ab3302b30d8da705aca5bcd40e2bbb686396830b5083c24fb088d5893a538dd92f2efed7d940bc1969f85f838560504
DIST passt-2025.03.20.tar.xz 258228 BLAKE2B b0ddc3a24ee3b5988c79d57bdea893e6cba93b09d3ff6ab49f8e0cda3e93b97b044dcf6a873d65194766cf73fc21525133a33ac76c51cb4277e98438693ee98a SHA512 469593af3ee692363ee3814ec5dbaabe91acaff930c9e1665a6fa9b5b4475e261ccbc95972d7170134ced6e56c41a7733e570b1f3f1b20333364dad674a73da4
+DIST passt-2025.04.15.tar.xz 260720 BLAKE2B 1c67a40f0633663118cafd5988e11594e54d815aeb7c2bc75b744b51666efc6ff8e8190ff3e0fac92f281b26832031d5dcba4aa8d52bc1cc915f80bec2ca70bb SHA512 3aebc7ebdc267c2c86c91703a7f07aea6248ed6a4ab43bf2589e24e5e4fdabcbfb9519f8afcd901a9183d4f2c577d8c1ea50076d0dc5dbb104c0f2793009c516
diff --git a/net-misc/passt/passt-2025.04.15.ebuild b/net-misc/passt/passt-2025.04.15.ebuild
new file mode 100644
index 000000000000..1656a87f49d9
--- /dev/null
+++ b/net-misc/passt/passt-2025.04.15.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="User-mode networking daemons for VMs and namespaces, replacement for Slirp"
+HOMEPAGE="https://passt.top/"
+
+RELEASE_COMMIT="2340bbf"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://passt.top/passt"
+else
+ SRC_URI="https://passt.top/passt/snapshot/passt-${RELEASE_COMMIT}.tar.xz -> ${P}.tar.xz"
+ S="${WORKDIR}/${PN}-${RELEASE_COMMIT}"
+ KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
+fi
+
+LICENSE="BSD GPL-2+"
+SLOT="0"
+IUSE="static"
+
+src_prepare() {
+ default
+ tc-export CC
+ # Do not install doc/demo.sh
+ sed -i -e "/demo/d" Makefile || die
+}
+
+src_compile() {
+ [[ ${PV} != 9999* ]] && export VERSION="${PV}"
+ export prefix="${EPREFIX}/usr" docdir="${EPREFIX}/usr/share/doc/${P}"
+
+ emake $(usev static)
+}
diff --git a/net-misc/passt/passt-9999.ebuild b/net-misc/passt/passt-9999.ebuild
index 22db227b28a2..1656a87f49d9 100644
--- a/net-misc/passt/passt-9999.ebuild
+++ b/net-misc/passt/passt-9999.ebuild
@@ -8,7 +8,7 @@ inherit toolchain-funcs
DESCRIPTION="User-mode networking daemons for VMs and namespaces, replacement for Slirp"
HOMEPAGE="https://passt.top/"
-RELEASE_COMMIT="32f6212"
+RELEASE_COMMIT="2340bbf"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
diff --git a/net-proxy/sshuttle/sshuttle-1.3.1.ebuild b/net-proxy/sshuttle/sshuttle-1.3.1.ebuild
index b2aecc371473..52d64ac906f8 100644
--- a/net-proxy/sshuttle/sshuttle-1.3.1.ebuild
+++ b/net-proxy/sshuttle/sshuttle-1.3.1.ebuild
@@ -28,7 +28,7 @@ fi
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 x86"
IUSE="${SSHUTTLE_DOCS_USEFLAG}"
BDEPEND="
diff --git a/net-wireless/aic8800/Manifest b/net-wireless/aic8800/Manifest
index 5855369aef24..6b6acfebe0c5 100644
--- a/net-wireless/aic8800/Manifest
+++ b/net-wireless/aic8800/Manifest
@@ -1,2 +1,3 @@
DIST aic8800-1.0.3.deb 535400 BLAKE2B 0e337bded43f99a00fb3d786742418d7faf0adf3d6e517933d4d4a82e7e723e5f45798991238a02fb1836529a5d72cc56181356939eb150feb4c26f14dcd762e SHA512 0917ac4f5a594adb68c084f38bedacb92f3c0700d13dda497943d199bd883c18fc624ffc579091b40fdc6322dc2e5b81cc21add06b27ae8364ee2f8f9f119a7d
DIST aic8800-1.0.5.deb 595050 BLAKE2B 551e9ad09814bcab5464a7bfe09b922e400253403568068b74d839b8d53261251424b571266abed907314d08b27ac5bdbd51abd493bec5d0a511363173635e42 SHA512 4b4917a510caf1104ae7124f883b958d6a936a6e172d1afcc79f58349a943e0feb9a8bb35d326f96c56e0b089d62e3359cf81967e01e1edb1a1ddfc6fe101da0
+DIST aic8800-1.0.6.deb 594776 BLAKE2B dc248a58424ad2d5a3824568da350dc8af37d81046a9dac67281ea88e4d7c8af11f3f514b60ad39bfa419ac8a086f09f9e349945a0ed300e622c16d8ffddc982 SHA512 b5bfb20d5ad128f66c923c5ee278acbcf29b406c17efe5cdd2b1e5838f44559f5e7e36926ef6eaa6c57df0183f5b26cbae42b9e34b62b0471193e2188e675a9c
diff --git a/net-wireless/aic8800/aic8800-1.0.6.ebuild b/net-wireless/aic8800/aic8800-1.0.6.ebuild
new file mode 100644
index 000000000000..78de93abdb02
--- /dev/null
+++ b/net-wireless/aic8800/aic8800-1.0.6.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+inherit linux-mod-r1 udev unpacker
+
+DESCRIPTION="aic8800 driver for AICSemi AIC8800/8801/8800DC/8800DW/8800FC Wifi/Bluetooth"
+HOMEPAGE="https://www.aicsemi.com/ https://linux.brostrend.com/troubleshooting/source-code/"
+
+SRC_URI="https://linux.brostrend.com/${PN}-dkms.deb -> ${P}.deb"
+
+LICENSE="GPL-2+ firmware? ( freedist )"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="+firmware udev"
+
+CONFIG_CHECK="MAC80211 USB ~BT_HCIBTUSB"
+
+PATCHES="${FILESDIR}/${PN}-1.0.6-linux-6.12.patch"
+
+BDEPEND+="
+ $(unpacker_src_uri_depends)"
+
+S="${WORKDIR}/usr/src/${P}"
+
+src_compile() {
+ MODULES_MAKEARGS+=(
+ KDIR="${KV_OUT_DIR}"
+ )
+ emake "${MODULES_MAKEARGS[@]}"
+}
+
+src_install() {
+ linux_moduleinto kernel/drivers/net/wireless/${PN}
+ linux_domodule aic8800_fdrv/aic8800_fdrv.ko aic_load_fw/aic_load_fw.ko
+ modules_post_process
+ if use firmware; then
+ insinto /lib/firmware
+ doins -r "${WORKDIR}/lib/firmware/aic8800DC"
+ fi
+ if use udev; then
+ # install udev rules for USB mode switching
+ udev_newrules "${WORKDIR}/lib/udev/rules.d/aic.rules" 99-aic-modeswitch.rules
+ fi
+}
+
+pkg_postinst() {
+ if use udev; then
+ udev_reload
+ fi
+ linux-mod-r1_pkg_postinst
+}
+
+pkg_postrm() {
+ if use udev; then
+ udev_reload
+ fi
+}
diff --git a/net-wireless/aic8800/files/aic8800-1.0.6-linux-6.12.patch b/net-wireless/aic8800/files/aic8800-1.0.6-linux-6.12.patch
new file mode 100644
index 000000000000..e94e2e6bfdd8
--- /dev/null
+++ b/net-wireless/aic8800/files/aic8800-1.0.6-linux-6.12.patch
@@ -0,0 +1,47 @@
+From 04dc3e356a45ffc42dd0363799af9a487f5e1bf0 Mon Sep 17 00:00:00 2001
+From: Shen Mintao <cx330.shen@autocore.ai>
+Date: Thu, 9 Jan 2025 11:06:42 +0800
+Subject: [PATCH] fix some source code for kernel 6.12
+
+--- a/aic8800_fdrv/rwnx_main.c
++++ b/aic8800_fdrv/rwnx_main.c
+@@ -4545,6 +4547,11 @@ int rwnx_cfg80211_start_radar_detection(struct wiphy *wiphy,
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0))
+ , u32 cac_time_ms
+ #endif
++ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 12, 0))
++ , int link_id
++ #endif
++
++
+ )
+ {
+ struct rwnx_hw *rwnx_hw = wiphy_priv(wiphy);
+--- a/aic8800_fdrv/rwnx_radar.c
++++ b/aic8800_fdrv/rwnx_radar.c
+@@ -1399,7 +1399,11 @@ static void rwnx_radar_cac_work(struct work_struct *ws)
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 14, 0)
+ &ctxt->chan_def,
+ #endif
+- NL80211_RADAR_CAC_FINISHED, GFP_KERNEL);
++ NL80211_RADAR_CAC_FINISHED, GFP_KERNEL
++ #if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 12, 0)
++ , 0
++ #endif
++ );
+ rwnx_send_apm_stop_cac_req(rwnx_hw, radar->cac_vif);
+ rwnx_chanctx_unlink(radar->cac_vif);
+
+@@ -1499,7 +1503,11 @@ void rwnx_radar_cancel_cac(struct rwnx_radar *radar)
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 14, 0)
+ &ctxt->chan_def,
+ #endif
+- NL80211_RADAR_CAC_ABORTED, GFP_KERNEL);
++ NL80211_RADAR_CAC_ABORTED, GFP_KERNEL
++ #if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 12, 0)
++ , 0
++ #endif
++ );
+ rwnx_chanctx_unlink(radar->cac_vif);
+ }
+
diff --git a/net-wireless/dump1090/Manifest b/net-wireless/dump1090/Manifest
index 64f78c8675a9..a05ab7e4a29d 100644
--- a/net-wireless/dump1090/Manifest
+++ b/net-wireless/dump1090/Manifest
@@ -1,2 +1 @@
DIST dump1090-10.0.1.tar.gz 5744154 BLAKE2B 7a1c3baedf9e425d34540542bebb514e0cada874ea347b214b6bcb64c7e3064d65fb21964119b0949a9f0f3b454982854d5ace6bb8b8bfe8e10ca08baf366664 SHA512 dec93f29b2f2e262b230e13e8e18cb2902b4204de005b0f70aa4909c000b0a24cee3c1020dca27e09eb23182d8e74e007ae724afc7484f8aab158e19502a59bb
-DIST dump1090-9.0.tar.gz 5743616 BLAKE2B 3276075d441f7d410b63fc08b702102637b3c95b0ec5ed3dbd1ea93ecd6af1e322929842db398a23e9e2bca690e601e8bb1916b9998fce1cc80194ca83484dbf SHA512 07408c5680e626eccd3f74d35a6e8a7538dfffd31675f036580003dbba2a78f2487e1980d72d3ec7e44d3f94880e3f231ab1c97bd99ba1ca6cdcfa0ebf198aff
diff --git a/net-wireless/dump1090/dump1090-10.0.1.ebuild b/net-wireless/dump1090/dump1090-10.0.1.ebuild
index 52be69c72a7f..f58f38667d3a 100644
--- a/net-wireless/dump1090/dump1090-10.0.1.ebuild
+++ b/net-wireless/dump1090/dump1090-10.0.1.ebuild
@@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/flightaware/${PN}.git"
else
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="amd64 x86"
SRC_URI="https://github.com/flightaware/dump1090/archive/v${PV}.tar.gz -> ${P}.tar.gz"
fi
@@ -38,7 +38,10 @@ DEPEND="
RDEPEND="${DEPEND}"
BDEPEND="virtual/pkgconfig"
-PATCHES=( "${FILESDIR}"/${PN}-6.1-libdir.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1-libdir.patch
+ "${FILESDIR}"/${PN}-10.0.1-gcc15.patch
+)
src_prepare() {
default
diff --git a/net-wireless/dump1090/dump1090-9.0.ebuild b/net-wireless/dump1090/dump1090-9.0.ebuild
deleted file mode 100644
index 44138a48f6f9..000000000000
--- a/net-wireless/dump1090/dump1090-9.0.ebuild
+++ /dev/null
@@ -1,117 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit tmpfiles toolchain-funcs
-
-DESCRIPTION="Simple Mode S decoder for RTLSDR devices"
-HOMEPAGE="https://github.com/flightaware/dump1090"
-
-if [[ ${PV} == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/flightaware/${PN}.git"
-else
- KEYWORDS="amd64 x86"
- SRC_URI="https://github.com/flightaware/dump1090/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-LICENSE="BSD GPL-2+"
-SLOT="0"
-IUSE="bladerf hackrf minimal +rtlsdr"
-
-DEPEND="
- sys-libs/ncurses:=[tinfo]
- bladerf? (
- net-wireless/bladerf:=
- virtual/libusb:1
- )
- hackrf? (
- net-libs/libhackrf:=
- virtual/libusb:1
- )
- rtlsdr? (
- net-wireless/rtl-sdr:=
- virtual/libusb:1
- )
-"
-RDEPEND="${DEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-6.1-libdir.patch
- "${FILESDIR}"/${PN}-9.0-gcc14.patch
-)
-
-src_prepare() {
- default
-
- sed \
- -e '/CFLAGS/s# -O3 -g -Wall -Wmissing-declarations -Werror -W # #' \
- -e "/LIBS_CURSES/s#-lncurses#$($(tc-getPKG_CONFIG) --libs ncurses)#" \
- -i Makefile || die
-}
-
-src_compile() {
- myemakeargs=(
- BLADERF="$(usex bladerf)"
- CC="$(tc-getCC)"
- CPUFEATURES="yes"
- HACKRF="$(usex hackrf)"
- LIMESDR="no"
- RTLSDR="$(usex rtlsdr)"
- )
-
- emake "${myemakeargs[@]}"
-}
-
-src_install() {
- dobin dump1090 view1090
-
- # DSP config files for bladeRF
- if use bladerf; then
- insinto usr/share/dump1090/bladerf
- doins bladerf/*
- fi
-
- newtmpfiles "${FILESDIR}"/tmpfilesd-dump1090-5.0.conf dump1090.conf
- newconfd "${FILESDIR}"/dump1090-5.0.confd dump1090
- newinitd "${FILESDIR}"/dump1090-5.0.initd dump1090
-
- einstalldocs
-
- if use !minimal; then
- # Install tools
- insinto /usr/share/dump1090
- doins -r tools
-
- # Install lighthttps example files
- insinto /usr/share/dump1090/lighttpd
- doins debian/lighttpd/{88-dump1090-fa-statcache.conf,89-skyaware.conf}
-
- # Some tooling expects the -fa variant directory to contain the files
- dosym ../../usr/share/dump1090 /usr/share/dump1090-fa
-
- # Install html docs
- docinto html
- doins -r public_html/*
-
- # See README.md for how to use custom wisdom files
- exeinto /usr/share/dump1090/wisdom
- doexe debian/generate-wisdom
- insinto /usr/share/dump1090/wisdom
- doins wisdom.*
- doins wisdom/wisdom.*
-
- # For /etc/dump1090-fa/wisdom.local
- keepdir /etc/dump1090-fa/
-
- # Tooling to generate custom wisdom:
- exeinto /usr/libexec/dump1090
- doexe starch-benchmark
- fi
-}
-
-pkg_postinst() {
- tmpfiles_process dump1090.conf
-}
diff --git a/net-wireless/dump1090/dump1090-9999.ebuild b/net-wireless/dump1090/dump1090-9999.ebuild
index 52be69c72a7f..798635aa0652 100644
--- a/net-wireless/dump1090/dump1090-9999.ebuild
+++ b/net-wireless/dump1090/dump1090-9999.ebuild
@@ -38,7 +38,10 @@ DEPEND="
RDEPEND="${DEPEND}"
BDEPEND="virtual/pkgconfig"
-PATCHES=( "${FILESDIR}"/${PN}-6.1-libdir.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1-libdir.patch
+ "${FILESDIR}"/${PN}-10.0.1-gcc15.patch
+)
src_prepare() {
default
diff --git a/net-wireless/dump1090/files/dump1090-10.0.1-gcc15.patch b/net-wireless/dump1090/files/dump1090-10.0.1-gcc15.patch
new file mode 100644
index 000000000000..ed0431405c21
--- /dev/null
+++ b/net-wireless/dump1090/files/dump1090-10.0.1-gcc15.patch
@@ -0,0 +1,45 @@
+From 93be1da123215e8ac15a0deaffedd480e8899f77 Mon Sep 17 00:00:00 2001
+From: Conrad Kostecki <conrad@kostecki.com>
+Date: Tue, 22 Apr 2025 00:41:31 +0200
+Subject: [PATCH] Fix compilation with GCC15
+
+---
+ ais_charset.c | 2 +-
+ ais_charset.h | 2 +-
+ interactive.c | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/ais_charset.c b/ais_charset.c
+index a487e3cc7..0d3af0392 100644
+--- a/ais_charset.c
++++ b/ais_charset.c
+@@ -1,3 +1,3 @@
+ #include "ais_charset.h"
+
+-char ais_charset[64] = "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?";
++char ais_charset[65] = "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_ !\"#$%&'()*+,-./0123456789:;<=>?";
+diff --git a/ais_charset.h b/ais_charset.h
+index 93d4a7293..95ef373dc 100644
+--- a/ais_charset.h
++++ b/ais_charset.h
+@@ -1,6 +1,6 @@
+ #ifndef AIS_CHARSET_H
+ #define AIS_CHARSET_H
+
+-extern char ais_charset[64];
++extern char ais_charset[65];
+
+ #endif
+diff --git a/interactive.c b/interactive.c
+index 8761c955d..75775ad35 100644
+--- a/interactive.c
++++ b/interactive.c
+@@ -140,7 +140,7 @@ void interactiveShowData(void) {
+ static bool need_clear = true;
+ uint64_t now = mstime();
+ char progress;
+- char spinner[4] = "|/-\\";
++ char spinner[5] = "|/-\\";
+ int valid = 0;
+ double signalMax = -100.0;
+ double signalMin = +100.0;
diff --git a/net-wireless/dump1090/files/dump1090-9.0-gcc14.patch b/net-wireless/dump1090/files/dump1090-9.0-gcc14.patch
deleted file mode 100644
index 25e5ea8e4ce0..000000000000
--- a/net-wireless/dump1090/files/dump1090-9.0-gcc14.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Fix -Werror=calloc-transposed-args error with gcc 14.
-
---- dump1090-9.0-origin/adaptive.c
-+++ dump1090-9.0/adaptive.c
-@@ -195,7 +195,7 @@
- adaptive_burst_window_remaining = adaptive_samples_per_window;
- adaptive_burst_window_counter = 0;
-
-- adaptive_range_radix = calloc(sizeof(unsigned), 65536);
-+ adaptive_range_radix = calloc(65536, sizeof(unsigned));
- adaptive_range_state = RANGE_RESCAN_UP;
-
- // select and enforce gain limits
---- dump1090-9.0-origin/net_io.c
-+++ dump1090-9.0/net_io.c
-@@ -104,7 +104,7 @@
- {
- struct net_service *service;
-
-- if (!(service = calloc(sizeof(*service), 1))) {
-+ if (!(service = calloc(1, sizeof(*service)))) {
- fprintf(stderr, "Out of memory allocating service %s\n", descr);
- exit(1);
- }
diff --git a/sys-apps/cyme/Manifest b/sys-apps/cyme/Manifest
index 131412731a4c..b51e8ad57b9e 100644
--- a/sys-apps/cyme/Manifest
+++ b/sys-apps/cyme/Manifest
@@ -1,5 +1,5 @@
-DIST cyme-2.1.2.gh.tar.gz 443605 BLAKE2B ec67939fa298e9ad867f0239410e5177fb6a39e64720ea7112e6409968e1e1398934b683dc564a7f7d052c5a54c2226087dc272feb19a7f635a839f0e5d438e0 SHA512 d5866c770c5589342f96cd49d29b705ee459519d07f81295ebcbd4c847ca1caeae2fe8145a6d9ee8ccbb116932cdf32c3d982652ecbf2feded537eddce65a116
DIST cyme-2.1.3.gh.tar.gz 445992 BLAKE2B 7f6fc34a93c1211172a4d26229dbefaf69a3fd515a1e537043d2bcdf46f7d636924ac9180db49e84b91375bebad6ae43e3dc56d28ed603bad8f6389db182e53d SHA512 fa3cdb5281a947ca33bad258301ec24166839f20f2310442c127cf38f55108e3a3634c9b1f3e8ad2d95cf12977a27916f02103ebfb79b677bb529129924fd552
-DIST cyme-v2.1.2-crates.tar.xz 13346456 BLAKE2B 41d3fb60e155db37a087c73b11d7f64a02a7ac5f29cd147633da653c1c81397b598842153cb5e751212ed7ddf8270c758ee5880569b3cc5a9429da20f960bc25 SHA512 5407012cdef41cd10ae1a79d8640e2ca4c2d8444ea3412aae5524a96081dfe6c6f942697e1e1ee45a69908cbebc8f2e44b3a4d33a1ccd46ec9477edb80829f6c
+DIST cyme-2.2.0.gh.tar.gz 474055 BLAKE2B ec69ffa1a622cfac550fbe8248d4c06739f8589c330d478ab2a51ca869ee70c80572daff30cd32254c151f83592cf37c8d2225e7009fadc093c68d7494694bb5 SHA512 189b2abddf637f9ba17c6c175714af1c452ad049ec8a945d2f131d78e02779169674011c8f7d9cfb899adccea9cf750df603a29ee5425df65c4e0db19dfb25e9
DIST cyme-v2.1.3-crates.tar.xz 13502044 BLAKE2B aaeb6afb0e44fb757962e955a7d5489ac0868f386dc9fb516a08b722acfcbe44e34e15af4459739106bf8b78bbb6f9eecbd169659e57912fcf320b7086dab86a SHA512 8b46c58e4aab49549019f3a2a86709bb816ccdab9a0a8f12c2722c020c15a8f7192aceaf46d1a6a0a72294290a4d4b4bfc1d4b74d5d639a791f9bfa80de18d68
+DIST cyme-v2.2.0-crates.tar.xz 18194888 BLAKE2B 98b9a85401473df21bf3d0a2f781839fb2210d73d5d19270564896493175f1840e77348cfec80f987345d1009917fdb5d09c8ed464d4f5eec0964c517aa69175 SHA512 84f1d44eac41216d6609cc54c5a1f4244df2942f27c645ab59ea9307a6749b1d7498c06a2c27f2365a68b3b0b3bd8db395e87164d38dce19d43120ba3474cc73
DIST nusb-dad53d268db6620d641a01eb2ecb8b5791fcc1fc.gh.tar.gz 83201 BLAKE2B 4572fc903b8d42f927b3804259ddf945dbf4ad4b640168b05aabf9f56a54fd40847608baf0fc04c385d9ae8d851b9b66fe3542e86c35fe4cf3806cf7be9583a0 SHA512 3a8e4e6826586ee4822c4dec727fae0dd49b05c83f780d7b9728b1836e3b76beaf81a7b2b56f3bccb86dd3e4f47f2b91db261860593fa8b55ad05548d6a2d849
diff --git a/sys-apps/cyme/cyme-2.1.2.ebuild b/sys-apps/cyme/cyme-2.2.0.ebuild
index 6a1c0acfcfbf..6f803805375a 100644
--- a/sys-apps/cyme/cyme-2.1.2.ebuild
+++ b/sys-apps/cyme/cyme-2.2.0.ebuild
@@ -18,19 +18,12 @@ SRC_URI="
https://github.com/tuna-f1sh/cyme/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
${CARGO_CRATE_URIS}
+ https://github.com/gentoo-crate-dist/cyme/releases/download/v${PV}/cyme-v${PV}-crates.tar.xz
"
-if [[ ${PKGBUMPING} != ${PVR} ]]; then
- SRC_URI+="
- https://github.com/gentoo-crate-dist/cyme/releases/download/v${PV}/cyme-v${PV}-crates.tar.xz
- "
-fi
LICENSE="GPL-3+"
# Dependent crate licenses
-LICENSE+="
- LGPL-2+ MIT MPL-2.0 Unicode-3.0
- || ( Apache-2.0 Boost-1.0 )
-"
+LICENSE+=" Apache-2.0 LGPL-2+ MIT MPL-2.0 Unicode-3.0"
SLOT="0"
KEYWORDS="~amd64"
diff --git a/www-client/elinks/elinks-0.18.0.ebuild b/www-client/elinks/elinks-0.18.0.ebuild
index ca8d1624f6a7..30da0a8bb165 100644
--- a/www-client/elinks/elinks-0.18.0.ebuild
+++ b/www-client/elinks/elinks-0.18.0.ebuild
@@ -19,7 +19,7 @@ if [[ ${PV} == *9999 ]] ; then
else
SRC_URI="https://github.com/rkd77/elinks/releases/download/v${PV}/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="GPL-2"
diff --git a/www-client/httrack/Manifest b/www-client/httrack/Manifest
index aca5f5b7299c..7445f3ec7e77 100644
--- a/www-client/httrack/Manifest
+++ b/www-client/httrack/Manifest
@@ -1,3 +1,3 @@
-DIST 3.49.4.tar.gz 1761838 BLAKE2B 5fcfb3dcf97bb672dd7a93a61c0eee3d3d18615abd547932c77b46f930ae30d8395df61614c0ccb4cd42552546f6a81323e9048afc17eecfd2136da4199c6158 SHA512 7cc25af0cf493f3304e15e021769646ca035c54145eb9fdc0b383cfe05d369ae50ffd222cbbe23de3d8270947ff3a564ab59e7f7f5186d63e8e63d56fae1e10d
DIST 3.49.5.tar.gz 1767597 BLAKE2B ed8b6915b8eb150b12d91d78c0225430796548c102b695b0917d5c9dd0e9fc3c28ec0c7fffa6bad0c7d594293915f5fb77c61dc7b1e7a378a45af3835d7da05a SHA512 4a4442563e3d4e80d3f5176793611317a86f8960c967cf0f1a568bea1e44335a76c2864dad600919d21c57ad48614d340d71a793f9f5e2a4032da24050251fd6
DIST coucal-73ada075553b7607d083037a87cb9c73b3683bfc.tar.gz 21306 BLAKE2B c04b369f6011aa14169a933ba2a39dcc114d056968a2dc51a752979c59e93332bc302f53e865b78c7324fd568fdc3666eebe60a887fb8417e8ee7a1fbe5ed0f6 SHA512 818cfdbf6038cf27433973d3994f7231c61c366b44a28dd74e1a6d216c9bbb66b0699bf40ccbd7816de7876d73b096b93d895f6f61efbd0d79c39d559b3aee73
+DIST httrack-3.49.6.tar.gz 1771770 BLAKE2B 2bffa65f7105cb21ea7e9a1c73dbf835ae390c8580d0aeb2cdd405aa06b824a9431dd27a8d17653daf584c03a03d82a20962da8111ae4b06408314bdc3a9ae52 SHA512 c5c080812afd8793f85ef7e67b1043e6e369648b370131e592809742053a3fb53abc15d82a925a6821b0036169194bbe610077ce257fc6d16a2a36ffe8c15ce8
diff --git a/www-client/httrack/httrack-3.49.4.ebuild b/www-client/httrack/httrack-3.49.6.ebuild
index 64603284cfe7..87acafc8f05d 100644
--- a/www-client/httrack/httrack-3.49.4.ebuild
+++ b/www-client/httrack/httrack-3.49.6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2023 Liguros Authors
+# Copyright 2022-2024 Liguros Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -7,8 +7,9 @@ inherit autotools multilib xdg-utils
DESCRIPTION="HTTrack Website Copier, Open Source Offline Browser"
HOMEPAGE="https://www.httrack.com/"
COUCAL_COMMIT="73ada075553b7607d083037a87cb9c73b3683bfc"
+GIT_COMMIT="748c35de7858ead963daf1393ad023d75b7820c2"
SRC_URI="
- https://github.com/xroche/httrack/archive/refs/tags/${PV}.tar.gz
+ https://github.com/xroche/httrack/archive/${GIT_COMMIT}.tar.gz -> ${P}.tar.gz
https://github.com/xroche/coucal/archive/${COUCAL_COMMIT}.tar.gz -> coucal-${COUCAL_COMMIT}.tar.gz
"
@@ -24,7 +25,7 @@ RDEPEND=">=sys-libs/zlib-1.2.5.1-r1
DEPEND="${RDEPEND}"
DOCS=( AUTHORS README greetings.txt history.txt )
-
+S=${WORKDIR}/${PN}-${GIT_COMMIT}
PATCHES=(
"${FILESDIR}"/${PN}-3.48.13-minizip.patch
)
diff --git a/x11-misc/kdocker/kdocker-6.2.ebuild b/x11-misc/kdocker/kdocker-6.2.ebuild
index fbdce6c9e95d..f31f33d5bc57 100644
--- a/x11-misc/kdocker/kdocker-6.2.ebuild
+++ b/x11-misc/kdocker/kdocker-6.2.ebuild
@@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
RDEPEND="
dev-qt/qtbase:6[dbus,gui,widgets,X]
diff --git a/xfce-extra/thunar-shares-plugin/Manifest b/xfce-extra/thunar-shares-plugin/Manifest
index c3b3a75917ad..0ce256c99a4d 100644
--- a/xfce-extra/thunar-shares-plugin/Manifest
+++ b/xfce-extra/thunar-shares-plugin/Manifest
@@ -1,2 +1 @@
-DIST thunar-shares-plugin-0.3.2.tar.bz2 365609 BLAKE2B 25f959d81b689dabe930910402dddb047208caf9400db9830b1e5a1f8fad6b676706ce79b9c7e0036292c995451998ff40cadd60ae2eaa47bcaf7994772081ba SHA512 26c3085b3ede065a0c9cdaf5a97d1617d581148e14d35e690f592316beb4e261f31cf864b5f47449030a77cdab33a22cfd4f9f36ccc47d4736e754de459b89e3
DIST thunar-shares-plugin-0.4.0.tar.bz2 424024 BLAKE2B 789385d30cee139e8346b5c1e566b8af93fdb84e7a82bda535562c6d93edc71c5424f6e151bc390842cacf6352c59a945519688861b3a262c8f7101e90ca5df8 SHA512 ec09de7a9149118dde83fa81a495c0a05b9f297aebf2b6c24b8432feea1c3cadadd3147c48158a2532022aaaf2cb1e461871e5489d3eeff08ff02b7e5942352d
diff --git a/xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.3.2.ebuild b/xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.3.2.ebuild
deleted file mode 100644
index b9dddd46ecd2..000000000000
--- a/xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.3.2.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DESCRIPTION="Thunar plugin to share files using Samba"
-HOMEPAGE="
- https://goodies.xfce.org/projects/thunar-plugins/thunar-shares-plugin
- https://gitlab.xfce.org/thunar-plugins/thunar-shares-plugin/
-"
-SRC_URI="
- https://archive.xfce.org/src/thunar-plugins/thunar-shares-plugin/${PV%.*}/${P}.tar.bz2
-"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~riscv x86"
-
-DEPEND="
- >=dev-libs/glib-2.26.0
- >=x11-libs/gtk+-3.22.0:3
- >=xfce-base/thunar-1.7:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- dev-util/intltool
- virtual/pkgconfig
-"
-
-src_install() {
- default
- find "${D}" -name '*.la' -delete || die
-}
diff --git a/xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.4.0.ebuild b/xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.4.0.ebuild
index 7a66a3d8eb2f..39ea570ebc40 100644
--- a/xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.4.0.ebuild
+++ b/xfce-extra/thunar-shares-plugin/thunar-shares-plugin-0.4.0.ebuild
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv x86"
+KEYWORDS="amd64 ~arm ~arm64 ~riscv x86"
DEPEND="
>=dev-libs/glib-2.26.0