summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/ampi/ampi-0_pre20140616.ebuild2
-rw-r--r--sys-cluster/ceph/Manifest8
-rw-r--r--sys-cluster/ceph/ceph-16.2.14-r1.ebuild478
-rw-r--r--sys-cluster/ceph/ceph-16.2.15-r1.ebuild480
-rw-r--r--sys-cluster/ceph/ceph-17.2.6-r8.ebuild493
-rw-r--r--sys-cluster/ceph/ceph-18.2.1-r2.ebuild490
-rw-r--r--sys-cluster/ceph/ceph-18.2.4-r2.ebuild3
-rw-r--r--sys-cluster/ceph/ceph-19.2.0-r1.ebuild (renamed from sys-cluster/ceph/ceph-18.2.1-r3.ebuild)42
-rw-r--r--sys-cluster/ceph/ceph-19.2.0.ebuild (renamed from sys-cluster/ceph/ceph-18.2.4-r1.ebuild)36
-rw-r--r--sys-cluster/ceph/files/ceph-14.2.0-cython-0.29.patch17
-rw-r--r--sys-cluster/ceph/files/ceph-15.2.3-spdk-compile.patch9
-rw-r--r--sys-cluster/ceph/files/ceph-16.2.10-flags.patch14
-rw-r--r--sys-cluster/ceph/files/ceph-16.2.14-gcc13.patch84
-rw-r--r--sys-cluster/ceph/files/ceph-16.2.2-system-zstd.patch40
-rw-r--r--sys-cluster/ceph/files/ceph-16.2.8-no-virtualenvs.patch82
-rw-r--r--sys-cluster/ceph/files/ceph-18.2.4-spdk.patch13
-rw-r--r--sys-cluster/ceph/files/ceph-19.2.0-importlib.patch45
-rw-r--r--sys-cluster/ceph/files/ceph.initd-r13115
-rw-r--r--sys-cluster/ceph/metadata.xml1
-rw-r--r--sys-cluster/cilium-cli/Manifest1
-rw-r--r--sys-cluster/cilium-cli/cilium-cli-0.16.16.ebuild30
-rw-r--r--sys-cluster/galera/Manifest1
-rw-r--r--sys-cluster/galera/galera-26.4.18.ebuild2
-rw-r--r--sys-cluster/galera/galera-26.4.19.ebuild2
-rw-r--r--sys-cluster/galera/galera-26.4.20.ebuild71
-rw-r--r--sys-cluster/gmqtt/Manifest2
-rw-r--r--sys-cluster/gmqtt/gmqtt-0.4.1.ebuild42
-rw-r--r--sys-cluster/gmqtt/gmqtt-0.5.0.ebuild2
-rw-r--r--sys-cluster/ipvsadm/ipvsadm-1.31-r1.ebuild2
-rw-r--r--sys-cluster/keepalived/keepalived-2.2.7.ebuild2
-rw-r--r--sys-cluster/keepalived/keepalived-2.2.8.ebuild2
-rw-r--r--sys-cluster/kops/Manifest2
-rw-r--r--sys-cluster/kops/kops-1.30.0.ebuild (renamed from sys-cluster/kops/kops-1.23.2.ebuild)9
-rw-r--r--sys-cluster/kube-apiserver/Manifest5
-rw-r--r--sys-cluster/kube-apiserver/kube-apiserver-1.28.12.ebuild39
-rw-r--r--sys-cluster/kube-apiserver/kube-apiserver-1.28.13.ebuild39
-rw-r--r--sys-cluster/kube-apiserver/kube-apiserver-1.29.7.ebuild2
-rw-r--r--sys-cluster/kube-apiserver/kube-apiserver-1.29.8.ebuild39
-rw-r--r--sys-cluster/kube-apiserver/kube-apiserver-1.30.3.ebuild2
-rw-r--r--sys-cluster/kube-apiserver/kube-apiserver-1.30.4.ebuild39
-rw-r--r--sys-cluster/kube-apiserver/kube-apiserver-1.31.0.ebuild39
-rw-r--r--sys-cluster/kube-controller-manager/Manifest5
-rw-r--r--sys-cluster/kube-controller-manager/kube-controller-manager-1.28.12.ebuild39
-rw-r--r--sys-cluster/kube-controller-manager/kube-controller-manager-1.28.13.ebuild39
-rw-r--r--sys-cluster/kube-controller-manager/kube-controller-manager-1.29.7.ebuild2
-rw-r--r--sys-cluster/kube-controller-manager/kube-controller-manager-1.29.8.ebuild39
-rw-r--r--sys-cluster/kube-controller-manager/kube-controller-manager-1.30.3.ebuild2
-rw-r--r--sys-cluster/kube-controller-manager/kube-controller-manager-1.30.4.ebuild39
-rw-r--r--sys-cluster/kube-controller-manager/kube-controller-manager-1.31.0.ebuild39
-rw-r--r--sys-cluster/kube-proxy/Manifest5
-rw-r--r--sys-cluster/kube-proxy/kube-proxy-1.28.12.ebuild35
-rw-r--r--sys-cluster/kube-proxy/kube-proxy-1.28.13.ebuild35
-rw-r--r--sys-cluster/kube-proxy/kube-proxy-1.29.7.ebuild2
-rw-r--r--sys-cluster/kube-proxy/kube-proxy-1.29.8.ebuild35
-rw-r--r--sys-cluster/kube-proxy/kube-proxy-1.30.3.ebuild2
-rw-r--r--sys-cluster/kube-proxy/kube-proxy-1.30.4.ebuild35
-rw-r--r--sys-cluster/kube-proxy/kube-proxy-1.31.0.ebuild35
-rw-r--r--sys-cluster/kube-scheduler/Manifest5
-rw-r--r--sys-cluster/kube-scheduler/kube-scheduler-1.28.12.ebuild39
-rw-r--r--sys-cluster/kube-scheduler/kube-scheduler-1.28.13.ebuild39
-rw-r--r--sys-cluster/kube-scheduler/kube-scheduler-1.29.7.ebuild2
-rw-r--r--sys-cluster/kube-scheduler/kube-scheduler-1.29.8.ebuild39
-rw-r--r--sys-cluster/kube-scheduler/kube-scheduler-1.30.3.ebuild2
-rw-r--r--sys-cluster/kube-scheduler/kube-scheduler-1.30.4.ebuild39
-rw-r--r--sys-cluster/kube-scheduler/kube-scheduler-1.31.0.ebuild39
-rw-r--r--sys-cluster/kubeadm/Manifest5
-rw-r--r--sys-cluster/kubeadm/kubeadm-1.28.12.ebuild35
-rw-r--r--sys-cluster/kubeadm/kubeadm-1.28.13.ebuild35
-rw-r--r--sys-cluster/kubeadm/kubeadm-1.29.7.ebuild2
-rw-r--r--sys-cluster/kubeadm/kubeadm-1.29.8.ebuild35
-rw-r--r--sys-cluster/kubeadm/kubeadm-1.30.3.ebuild2
-rw-r--r--sys-cluster/kubeadm/kubeadm-1.30.4.ebuild35
-rw-r--r--sys-cluster/kubeadm/kubeadm-1.31.0.ebuild35
-rw-r--r--sys-cluster/kubectl/Manifest5
-rw-r--r--sys-cluster/kubectl/kubectl-1.28.12.ebuild34
-rw-r--r--sys-cluster/kubectl/kubectl-1.28.13.ebuild34
-rw-r--r--sys-cluster/kubectl/kubectl-1.29.7.ebuild2
-rw-r--r--sys-cluster/kubectl/kubectl-1.29.8.ebuild34
-rw-r--r--sys-cluster/kubectl/kubectl-1.30.3.ebuild2
-rw-r--r--sys-cluster/kubectl/kubectl-1.30.4.ebuild34
-rw-r--r--sys-cluster/kubectl/kubectl-1.31.0.ebuild34
-rw-r--r--sys-cluster/kubelet/Manifest5
-rw-r--r--sys-cluster/kubelet/kubelet-1.28.12.ebuild38
-rw-r--r--sys-cluster/kubelet/kubelet-1.28.13.ebuild38
-rw-r--r--sys-cluster/kubelet/kubelet-1.29.7.ebuild2
-rw-r--r--sys-cluster/kubelet/kubelet-1.29.8.ebuild38
-rw-r--r--sys-cluster/kubelet/kubelet-1.30.3.ebuild2
-rw-r--r--sys-cluster/kubelet/kubelet-1.30.4.ebuild38
-rw-r--r--sys-cluster/kubelet/kubelet-1.31.0.ebuild38
-rw-r--r--sys-cluster/kubeletctl/Manifest2
-rw-r--r--sys-cluster/kubeletctl/kubeletctl-1.12.ebuild25
-rw-r--r--sys-cluster/kubelogin/Manifest4
-rw-r--r--sys-cluster/kubelogin/kubelogin-1.28.1.ebuild2
-rw-r--r--sys-cluster/kubelogin/kubelogin-1.30.1.ebuild (renamed from sys-cluster/kubelogin/kubelogin-1.28.0.ebuild)2
-rw-r--r--sys-cluster/openmpi/Manifest1
-rw-r--r--sys-cluster/openmpi/openmpi-4.1.6.ebuild2
-rw-r--r--sys-cluster/openmpi/openmpi-5.0.3.ebuild2
-rw-r--r--sys-cluster/openmpi/openmpi-5.0.5.ebuild142
-rw-r--r--sys-cluster/pmix/pmix-5.0.3.ebuild2
-rw-r--r--sys-cluster/prrte/Manifest1
-rw-r--r--sys-cluster/prrte/metadata.xml11
-rw-r--r--sys-cluster/prrte/prrte-3.0.6.ebuild45
-rw-r--r--sys-cluster/rdma-core/files/rdma-core-50.0-use-posix-version-of-basename.patch65
-rw-r--r--sys-cluster/rdma-core/rdma-core-50.0-r1.ebuild120
-rw-r--r--sys-cluster/rdma-core/rdma-core-50.0.ebuild2
-rw-r--r--sys-cluster/rdma-core/rdma-core-9999.ebuild2
-rw-r--r--sys-cluster/sanlock/sanlock-3.8.4-r1.ebuild2
-rw-r--r--sys-cluster/sanlock/sanlock-3.8.5.ebuild2
-rw-r--r--sys-cluster/spark-bin/Manifest3
-rw-r--r--sys-cluster/spark-bin/spark-bin-2.4.3.ebuild82
-rw-r--r--sys-cluster/spark-bin/spark-bin-3.0.1-r2.ebuild71
-rw-r--r--sys-cluster/torque/torque-6.0.4-r4.ebuild2
-rw-r--r--sys-cluster/torque/torque-6.0.4-r5.ebuild2
-rw-r--r--sys-cluster/torque/torque-6.0.4-r6.ebuild11
-rw-r--r--sys-cluster/ucx/ucx-1.13.1.ebuild2
-rw-r--r--sys-cluster/zookeepercli/Manifest4
-rw-r--r--sys-cluster/zookeepercli/metadata.xml2
-rw-r--r--sys-cluster/zookeepercli/zookeepercli-1.0.11.ebuild22
-rw-r--r--sys-cluster/zookeepercli/zookeepercli-1.0.12.ebuild37
119 files changed, 2035 insertions, 2617 deletions
diff --git a/sys-cluster/ampi/ampi-0_pre20140616.ebuild b/sys-cluster/ampi/ampi-0_pre20140616.ebuild
index c441769df548..26e464b535fd 100644
--- a/sys-cluster/ampi/ampi-0_pre20140616.ebuild
+++ b/sys-cluster/ampi/ampi-0_pre20140616.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://dev.gentoo.org/~jauhien/distfiles/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ~ia64 ~ppc ppc64 ~riscv ~sparc x86"
+KEYWORDS="amd64 arm ~arm64 ~hppa ~ppc ppc64 ~riscv ~sparc x86"
RDEPEND="virtual/mpi"
DEPEND="${RDEPEND}"
diff --git a/sys-cluster/ceph/Manifest b/sys-cluster/ceph/Manifest
index 7f14b615ae13..44b65f4ea30f 100644
--- a/sys-cluster/ceph/Manifest
+++ b/sys-cluster/ceph/Manifest
@@ -1,11 +1,7 @@
DIST apache-arrow-17.0.0.tar.gz 21822331 BLAKE2B 64f9321cbf13fafae5938f26840d3ef642d6f5b40386315030bc70fe8703786ee394c8483d2bde7961cf2b5c15470ffebd7c66029e116b05cfbf5524e9fe51f1 SHA512 4e2a617b8deeb9f94ee085653a721904a75696f0827bcba82b535cc7f4f723066a09914c7fa83c593e51a8a4031e8bf99e563cac1ebb1d89604cb406975d4864
-DIST ceph-16.2.14.tar.gz 157243362 BLAKE2B 799132ebc815380b2040250915c82c5752983a23e2489e7c12e624b70a93b29c151cb1ab9670e43f2c89d75523655e57860dcdc797d455abc6c6ddc3c880c70c SHA512 397845f44d94e01ae49c5f4dabd75b8bf20c9ece9aeba85f4a5c12154335420cce390bfd94146be3bef763d44e47d15522a84b4f6cdc6bdde77982ac8bd79a54
-DIST ceph-16.2.15.tar.gz 157260936 BLAKE2B 4de2e35c870ca005bf86f8158709d021785ec592ac316eb1073c259dba8ee9e89f63f70bc90c4a26fe5ba08e523df5722e613be346b599392ca3d8215addd730 SHA512 f12f745f55f4e5e4b41de53df638d7fee68054767ed2ec8e7c53d1c74988d18d4673465496c0fbdcf61cf29f62723d4d166dbf8550e2587ea14b30fae444c97a
-DIST ceph-17.2.6.tar.gz 168093221 BLAKE2B f79efce9bd7f485b43ae1b4da94a1d9fb3753003f34535e93c80e480ffeaaf054d371f75bca72402da5f9dd460aafa820bb2af550d213bdbcca74aa939180431 SHA512 dca9aea2ce210c15fcc34cb06a5dc5b4488ffa36d684166d47ebd87e48b54b6fee0882e1c67007a780e1c25754e9bc6e760cc10f60ea1183263f8504ef2dbd9b
DIST ceph-17.2.7.tar.gz 168577111 BLAKE2B e3470819305e580b4afc658564b9ac261d1db53242acc5d5ec6bf6166024394de927b745b7a752e010fdc020a3829ca5e7d3ac27a99cf60f45876f12fef1c927 SHA512 9005de7661c6a9d1054f1388cff2f48eb1af93565ebf852669de546eed594ed6a2668944b25a64c406d00f88bd2f7a6eac2ae96b04789c03ea4d248d1a683e7b
-DIST ceph-18.2.1.tar.gz 197490056 BLAKE2B bcb66957a4e9502fda268aea09550ecc3775c83c2b4780a338364fd13b553164cae4c66dc69e64fb5df345d89161fe9d72ec42d9aa38eada0f77970b4125dc3c SHA512 88e1c18bc6c824b6203cf026cca4c9409000e7cf5b2b986e22ab74d2790d8b93d91556bd3af15a320dbdd0cf2302308f0b2c75fd1243bc5a65f76fc6b3d70736
DIST ceph-18.2.4.tar.gz 226953064 BLAKE2B 3865ea051d1bd2f9aa44e6379f5bf2c7a526b076b327366dcf502d5a2358cc4d9bc53c7275e7b0f91387ec22a8a0e427f5e851a9f5308320091d1a6306bc9097 SHA512 a4ebb4e14032e6ab8e1fd8836f39234b771cb0a4b655166e9c69493a2c0d687064af4bb35523d0501629605521854e49f5c53a56279f72810d108c76f4f88c5b
-DIST ceph-xsimd-17.2.6.tar.gz 173025 BLAKE2B 54679c24804c195ae55b9f49589e331dde92c6d89aaa20e827539e9a4e0010c7549cdd5cf02a7ebed83f953ab2a6f1d9cc9a98cf45c3dc7758ae4938c9c43713 SHA512 ecc58e7909648aaa22aefbf76ee2c5a2bece4b1b88da9c7eda1b69a46247e619ff99c4366afd6015f95debd68c1a6b89292c677b9049462d0fc0255fbc0c2a33
+DIST ceph-19.2.0.tar.gz 236860160 BLAKE2B 0f0b93f89591b67986ead414fef2e41b1bbba914fb7f8d875a7fac9f3d00d127b0ca6d92912c2c082662cdbfc7ad71b8e56767273e6f380aade192725f812d28 SHA512 c7c68229b0bc5cf33ec30945c07ee464c757dc47812c0a901dd6e73a088f7a053ecd537468c6ca7caae91ed7d1fb25bde4630e5004f1717e22355ce276da005f
DIST ceph-xsimd-17.2.7.tar.gz 173025 BLAKE2B 54679c24804c195ae55b9f49589e331dde92c6d89aaa20e827539e9a4e0010c7549cdd5cf02a7ebed83f953ab2a6f1d9cc9a98cf45c3dc7758ae4938c9c43713 SHA512 ecc58e7909648aaa22aefbf76ee2c5a2bece4b1b88da9c7eda1b69a46247e619ff99c4366afd6015f95debd68c1a6b89292c677b9049462d0fc0255fbc0c2a33
-DIST ceph-xsimd-18.2.1.tar.gz 173025 BLAKE2B 54679c24804c195ae55b9f49589e331dde92c6d89aaa20e827539e9a4e0010c7549cdd5cf02a7ebed83f953ab2a6f1d9cc9a98cf45c3dc7758ae4938c9c43713 SHA512 ecc58e7909648aaa22aefbf76ee2c5a2bece4b1b88da9c7eda1b69a46247e619ff99c4366afd6015f95debd68c1a6b89292c677b9049462d0fc0255fbc0c2a33
DIST ceph-xsimd-18.2.4.tar.gz 173025 BLAKE2B 54679c24804c195ae55b9f49589e331dde92c6d89aaa20e827539e9a4e0010c7549cdd5cf02a7ebed83f953ab2a6f1d9cc9a98cf45c3dc7758ae4938c9c43713 SHA512 ecc58e7909648aaa22aefbf76ee2c5a2bece4b1b88da9c7eda1b69a46247e619ff99c4366afd6015f95debd68c1a6b89292c677b9049462d0fc0255fbc0c2a33
+DIST ceph-xsimd-19.2.0.tar.gz 173025 BLAKE2B 54679c24804c195ae55b9f49589e331dde92c6d89aaa20e827539e9a4e0010c7549cdd5cf02a7ebed83f953ab2a6f1d9cc9a98cf45c3dc7758ae4938c9c43713 SHA512 ecc58e7909648aaa22aefbf76ee2c5a2bece4b1b88da9c7eda1b69a46247e619ff99c4366afd6015f95debd68c1a6b89292c677b9049462d0fc0255fbc0c2a33
diff --git a/sys-cluster/ceph/ceph-16.2.14-r1.ebuild b/sys-cluster/ceph/ceph-16.2.14-r1.ebuild
deleted file mode 100644
index cb1b5b7f9144..000000000000
--- a/sys-cluster/ceph/ceph-16.2.14-r1.ebuild
+++ /dev/null
@@ -1,478 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-LUA_COMPAT=( lua5-3 )
-
-CMAKE_MAKEFILE_GENERATOR=emake
-
-inherit check-reqs bash-completion-r1 cmake python-r1 flag-o-matic \
- lua-single udev readme.gentoo-r1 toolchain-funcs systemd tmpfiles
-
-DESCRIPTION="Ceph distributed filesystem"
-HOMEPAGE="https://ceph.com/"
-SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz"
-
-LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64"
-
-CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
-
-IUSE="
- babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
- jemalloc jaeger kafka kerberos ldap lttng +mgr numa pmdk rabbitmq
- +radosgw rbd-rwl rbd-ssd rdma rgw-lua selinux +ssl spdk +sqlite +system-boost
- systemd +tcmalloc test uring xfs zbd zfs
-"
-
-IUSE+="$(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
-
-DEPEND="
- ${LUA_DEPS}
- ${PYTHON_DEPS}
- acct-group/ceph
- acct-user/ceph
- virtual/libudev:=
- app-arch/bzip2:=
- app-arch/lz4:=
- app-arch/snappy:=
- >=app-arch/snappy-1.1.9-r1
- app-arch/zstd:=
- app-shells/bash:0
- app-misc/jq:=
- dev-cpp/gflags:=
- <dev-libs/leveldb-1.23:=[snappy,tcmalloc(-)?]
- dev-libs/libaio:=
- dev-libs/libnl:3=
- dev-libs/libxml2:=
- dev-libs/libevent:=
- dev-libs/openssl:=
- <dev-libs/rocksdb-6.15:=
- dev-libs/xmlsec:=[openssl]
- dev-cpp/yaml-cpp:=
- dev-libs/nss:=
- dev-libs/protobuf:=
- net-dns/c-ares:=
- net-libs/gnutls:=
- sys-auth/oath-toolkit:=
- sys-apps/coreutils
- sys-apps/hwloc:=
- sys-apps/keyutils:=
- sys-apps/util-linux:=
- sys-apps/util-linux
- sys-libs/libcap-ng:=
- sys-libs/ncurses:0=
- sys-libs/zlib:=
- sys-process/numactl:=
- virtual/libcrypt:=
- x11-libs/libpciaccess:=
- babeltrace? ( dev-util/babeltrace:0/1 )
- fuse? ( sys-fs/fuse:3= )
- jemalloc? ( dev-libs/jemalloc:= )
- !jemalloc? ( >=dev-util/google-perftools-2.6.1:= )
- jaeger? ( dev-cpp/nlohmann_json:= )
- kafka? ( dev-libs/librdkafka:= )
- kerberos? ( virtual/krb5 )
- ldap? ( net-nds/openldap:= )
- lttng? ( dev-util/lttng-ust:= )
- pmdk? ( dev-libs/pmdk:= )
- rabbitmq? ( net-libs/rabbitmq-c:= )
- radosgw? (
- dev-libs/icu:=
- dev-libs/expat:=
- net-misc/curl:=[curl_ssl_openssl]
- )
- rbd-rwl? ( dev-libs/pmdk:= )
- rdma? ( sys-cluster/rdma-core:= )
- spdk? ( dev-util/cunit )
- sqlite? ( dev-db/sqlite:= )
- system-boost? ( dev-libs/boost:=[context,python,${PYTHON_USEDEP},zlib] )
- !system-boost? ( $(python_gen_impl_dep '' 3.{10..11}) )
- uring? ( sys-libs/liburing:= )
- xfs? ( sys-fs/xfsprogs:= )
- zbd? ( sys-block/libzbd:= )
- zfs? ( sys-fs/zfs:= )
-"
-# <cython-3: bug #907739
-BDEPEND="
- amd64? ( dev-lang/nasm )
- x86? ( dev-lang/yasm )
- app-alternatives/cpio
- dev-debug/valgrind
- >=dev-build/cmake-3.5.0
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
- dev-python/sphinx
- dev-util/gperf
- dev-util/ragel
- sys-apps/coreutils
- sys-apps/grep
- sys-apps/util-linux
- sys-apps/which
- app-alternatives/bc
- sys-devel/patch
- virtual/pkgconfig
- jaeger? (
- app-alternatives/yacc
- app-alternatives/lex
- )
- test? (
- dev-util/cunit
- dev-python/coverage[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- dev-python/requests-mock[${PYTHON_USEDEP}]
- sys-apps/grep[pcre]
- sys-fs/btrfs-progs
- )
-"
-RDEPEND="
- ${DEPEND}
- app-admin/sudo
- net-misc/socat
- sys-apps/gptfdisk
- sys-apps/nvme-cli
- >=sys-apps/smartmontools-7.0
- sys-block/parted
- sys-fs/cryptsetup
- sys-fs/lsscsi
- sys-fs/lvm2[lvm]
- app-alternatives/awk
- dev-python/bcrypt[${PYTHON_USEDEP}]
- dev-python/cherrypy[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/flask[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/pecan[${PYTHON_USEDEP}]
- dev-python/prettytable[${PYTHON_USEDEP}]
- dev-python/pyopenssl[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/werkzeug[${PYTHON_USEDEP}]
- mgr? (
- dev-python/jsonpatch[${PYTHON_USEDEP}]
- dev-python/more-itertools[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pyjwt[${PYTHON_USEDEP}]
- dev-python/routes[${PYTHON_USEDEP}]
- diskprediction? (
- >=dev-python/scipy-1.4.0[${PYTHON_USEDEP}]
- )
- dev-python/scikit-learn[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- )
- selinux? ( sec-policy/selinux-ceph )
-"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}
- ${LUA_REQUIRED_USE}
- ?? ( jemalloc tcmalloc )
- jaeger? ( !system-boost )
- diskprediction? ( mgr )
- kafka? ( radosgw )
- mgr? ( cephfs )
- rabbitmq? ( radosgw )
- !system-boost? (
- python_targets_python3_10
- )
-"
-
-RESTRICT="
- !test? ( test )
-"
-
-# tests need root access, and network access
-RESTRICT+="test"
-
-# create a non-debug release
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-# false positives unless all USE flags are on
-CMAKE_WARN_UNUSED_CLI=no
-
-PATCHES=(
- "${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
- "${FILESDIR}/ceph-14.2.0-cflags.patch"
- "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
- "${FILESDIR}/ceph-16.2.2-cflags.patch"
- "${FILESDIR}/ceph-16.2.8-no-virtualenvs.patch"
- "${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
- "${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
- "${FILESDIR}/ceph-14.2.0-cython-0.29.patch"
- "${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
- "${FILESDIR}/ceph-15.2.3-spdk-compile.patch"
- "${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
- "${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
- "${FILESDIR}/ceph-16.2.0-liburing.patch"
- "${FILESDIR}/ceph-16.2.2-system-zstd.patch"
- "${FILESDIR}/ceph-17.2.0-fuse3.patch"
- "${FILESDIR}/ceph-17.2.0-gcc12-header.patch"
- "${FILESDIR}/ceph-16.2.10-flags.patch"
- "${FILESDIR}/ceph-17.2.5-boost-1.81.patch"
- "${FILESDIR}/ceph-16.2.14-gcc13.patch"
- # https://bugs.gentoo.org/907739
- "${FILESDIR}/ceph-18.2.0-cython3.patch"
-)
-
-check-reqs_export_vars() {
- CHECKREQS_DISK_BUILD="6G"
-
- if use system-boost; then
- CHECKREQS_DISK_USR="350M"
- else
- CHECKREQS_DISK_USR="510M"
- fi
-
- export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
-}
-
-pkg_pretend() {
- check-reqs_export_vars
- check-reqs_pkg_pretend
-}
-
-pkg_setup() {
- if ! use system-boost; then
- python_setup 3.10
- else
- python_setup
- fi
- lua_setup
- check-reqs_export_vars
- check-reqs_pkg_setup
-}
-
-src_prepare() {
- cmake_src_prepare
-
- if use system-boost; then
- find "${S}" -name '*.cmake' -or -name 'CMakeLists.txt' -print0 \
- | xargs --null sed -r \
- -e 's|Boost::|boost_|g' \
- -e 's|Boost_|boost_|g' \
- -e 's|[Bb]oost_boost|boost_system|g' \
- -i || die
- fi
-
- if ! use systemd; then
- find "${S}"/src/ceph-volume/ceph_volume -name '*.py' -print0 \
- | xargs --null sed \
- -e '/^from ceph_volume.systemd import systemctl/ d' \
- -i || die
- fi
-
- sed -r -e "s:DESTINATION .+\\):DESTINATION $(get_bashcompdir)\\):" \
- -i src/bash_completion/CMakeLists.txt || die
-
- sed -e "s:objdump -p:$(tc-getOBJDUMP) -p:" -i CMakeLists.txt || die
-
- if ! use diskprediction; then
- rm -rf src/pybind/mgr/diskprediction_local || die
- fi
-
- # force lua version to use selected version
- local lua_version
- lua_version=$(ver_cut 1-2 $(lua_get_version))
- sed "s:find_package(Lua [0-9][.][0-9] REQUIRED):find_package(Lua ${lua_version} EXACT REQUIRED):" \
- -i src/CMakeLists.txt
-
- # remove tests that need root access
- rm src/test/cli/ceph-authtool/cap*.t || die
-}
-
-ceph_src_configure() {
- local mycmakeargs=(
- -DWITH_BABELTRACE:BOOL=$(usex babeltrace)
- -DWITH_BLUESTORE_PMEM:BOOL=$(usex pmdk)
- -DWITH_CEPHFS:BOOL=$(usex cephfs)
- -DWITH_CEPHFS_SHELL:BOOL=$(usex cephfs)
- -DWITH_DPDK:BOOL=$(usex dpdk)
- -DWITH_SPDK:BOOL=$(usex spdk)
- -DWITH_FUSE:BOOL=$(usex fuse)
- -DWITH_LTTNG:BOOL=$(usex lttng)
- -DWITH_GSSAPI:BOOL=$(usex kerberos)
- -DWITH_GRAFANA:BOOL=$(usex grafana)
- -DWITH_MGR:BOOL=$(usex mgr)
- -DWITH_MGR_DASHBOARD_FRONTEND:BOOL=OFF
- -DWITH_OPENLDAP:BOOL=$(usex ldap)
- -DWITH_PYTHON3:STRING=3
- -DWITH_RADOSGW:BOOL=$(usex radosgw)
- -DWITH_RADOSGW_AMQP_ENDPOINT:BOOL=$(usex rabbitmq)
- -DWITH_RADOSGW_KAFKA_ENDPOINT:BOOL=$(usex kafka)
- -DWITH_RADOSGW_LUA_PACKAGES:BOOL=$(usex rgw-lua "$(usex radosgw)" "NO")
- -DWITH_RBD_RWL:BOOL=$(usex rbd-rwl)
- -DWITH_RBD_SSD_CACHE:BOOL=$(usex rbd-ssd)
- -DWITH_SYSTEMD:BOOL=$(usex systemd)
- -DWITH_TESTS:BOOL=$(usex test)
- -DWITH_LIBURING:BOOL=$(usex uring)
- -DWITH_SYSTEM_LIBURING:BOOL=$(usex uring)
- -DWITH_LIBCEPHSQLITE:BOOL=$(usex sqlite)
- -DWITH_XFS:BOOL=$(usex xfs)
- -DWITH_ZBD:BOOL=$(usex zbd)
- -DWITH_ZFS:BOOL=$(usex zfs)
- -DENABLE_SHARED:BOOL=ON
- -DALLOCATOR:STRING=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
- -DWITH_SYSTEM_PMDK:BOOL=$(usex pmdk 'YES' "$(usex rbd-rwl)")
- -DWITH_SYSTEM_BOOST:BOOL=$(usex system-boost)
- -DWITH_SYSTEM_ROCKSDB:BOOL=ON
- -DWITH_RDMA:BOOL=$(usex rdma)
- -DCMAKE_INSTALL_DOCDIR:PATH="${EPREFIX}/usr/share/doc/${PN}-${PVR}"
- -DCMAKE_INSTALL_SYSCONFDIR:PATH="${EPREFIX}/etc"
- # use the bundled libfmt for now since they seem to constantly break their API
- -DCMAKE_DISABLE_FIND_PACKAGE_fmt=ON
- -Wno-dev
- )
-
- # this breaks when re-configuring for python impl
- if [[ ${EBUILD_PHASE} == configure ]]; then
- mycmakeargs+=(
- -DWITH_JAEGER:BOOL=$(usex jaeger)
- )
- else
- mycmakeargs+=(
- -DWITH_RADOSGW_SELECT_PARQUET:BOOL=OFF
- )
- fi
-
- # conditionally used cmake args
- use test && mycmakearts+=( -DWITH_SYSTEM_GTEST:BOOL=$(usex test) )
- use systemd && mycmakeargs+=( -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=$(systemd_get_systemunitdir) )
-
- if use amd64 || use x86; then
- local flag
- for flag in "${CPU_FLAGS_X86[@]}"; do
- case "${flag}" in
- avx*)
- local var=${flag%f}
- mycmakeargs+=(
- "-DHAVE_NASM_X64_${var^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- )
- ;;
- *) mycmakeargs+=(
- "-DHAVE_INTEL_${flag^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- );;
- esac
- done
- fi
-
- # needed for >=glibc-2.32
- has_version '>=sys-libs/glibc-2.32' && mycmakeargs+=( -DWITH_REENTRANT_STRSIGNAL:BOOL=ON )
-
- rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt" \
- || die "failed to remove cmake cache"
-
- cmake_src_configure
-
- # bug #630232
- sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
- "${BUILD_DIR:-${S}}"/include/acconfig.h \
- || die "sed failed"
-}
-
-src_configure() {
- use custom-cflags || strip-flags
- ceph_src_configure
-}
-
-src_compile() {
- cmake_build VERBOSE=1 all
-
- # we have to do this here to prevent from building everything multiple times
- python_copy_sources
- python_foreach_impl python_compile
-}
-
-python_compile() {
- local CMAKE_USE_DIR="${S}"
- ceph_src_configure
-
- pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
- cmake_build VERBOSE=1 clean
- cmake_build VERBOSE=1 all
-
- # python modules are only compiled with "make install" so we need to do this to
- # prevent doing a bunch of compilation in src_install
- DESTDIR="${T}" cmake_build VERBOSE=1 install
- popd >/dev/null || die
-}
-
-src_install() {
- python_foreach_impl python_install
-
- python_setup
- cmake_src_install
-
- find "${ED}" -name '*.la' -type f -delete || die
-
- exeinto /usr/$(get_libdir)/ceph
- newexe "${BUILD_DIR}/bin/init-ceph" init-ceph
-
- insinto /etc/logrotate.d/
- newins "${FILESDIR}"/ceph.logrotate-r2 ${PN}
-
- keepdir /var/lib/${PN}{,/tmp} /var/log/ceph/stat /var/log/ceph/console
-
- fowners -R ceph:ceph /var/log/ceph
-
- newinitd "${FILESDIR}/rbdmap.initd-r1" rbdmap
- newinitd "${FILESDIR}/${PN}.initd-r13" ${PN}
- newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
-
- insinto /etc/sudoers.d
- doins sudoers.d/*
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}"/sysctld 90-${PN}.conf
-
- use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
-
- # units aren't installed by the build system unless systemd is enabled
- # so no point installing these with the USE flag disabled
- if use systemd; then
- systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service"
- systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service"
- fi
-
- udev_dorules udev/*.rules
- newtmpfiles "${FILESDIR}"/ceph-tmpfilesd ${PN}.conf
-
- readme.gentoo_create_doc
-
- # bug #630232
- sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph{,-crash} \
- || die "sed failed"
-
- python_fix_shebang "${ED}"/usr/{,s}bin/
-
- # python_fix_shebang apparently is not idempotent
- local shebang_regex='(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]'
- grep -r -E -l --null "${shebang_regex}" "${ED}"/usr/{s,}bin/ \
- | xargs --null --no-run-if-empty -- sed -i -r "s:${shebang_regex}:\1:" || die
-
- local -a rados_classes=( "${ED}/usr/$(get_libdir)/rados-classes"/* )
- dostrip -x "${rados_classes[@]#${ED}}"
-}
-
-python_install() {
- local CMAKE_USE_DIR="${S}"
- pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
- DESTDIR="${ED}" cmake_build VERBOSE=1 install
- popd >/dev/null || die
-
- python_scriptinto /usr/sbin
- python_doscript src/cephadm/cephadm
-
- python_optimize
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
- tmpfiles_process ${PN}.conf
- udev_reload
-}
-
-pkg_postrm() {
- udev_reload
-}
diff --git a/sys-cluster/ceph/ceph-16.2.15-r1.ebuild b/sys-cluster/ceph/ceph-16.2.15-r1.ebuild
deleted file mode 100644
index 02d333640c2e..000000000000
--- a/sys-cluster/ceph/ceph-16.2.15-r1.ebuild
+++ /dev/null
@@ -1,480 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-LUA_COMPAT=( lua5-3 )
-CMAKE_MAKEFILE_GENERATOR=emake
-
-inherit check-reqs bash-completion-r1 cmake python-r1 flag-o-matic \
- lua-single udev readme.gentoo-r1 toolchain-funcs systemd tmpfiles
-
-DESCRIPTION="Ceph distributed filesystem"
-HOMEPAGE="https://ceph.com/"
-
-SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz"
-LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64"
-
-CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
-
-IUSE="
- babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
- jemalloc jaeger kafka kerberos ldap lttng +mgr numa pmdk rabbitmq
- +radosgw rbd-rwl rbd-ssd rdma rgw-lua selinux +ssl spdk +sqlite +system-boost
- systemd +tcmalloc test uring xfs zbd zfs
-"
-
-IUSE+="$(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
-
-DEPEND="
- ${LUA_DEPS}
- ${PYTHON_DEPS}
- acct-group/ceph
- acct-user/ceph
- virtual/libudev:=
- app-arch/bzip2:=
- app-arch/lz4:=
- app-arch/snappy:=
- >=app-arch/snappy-1.1.9-r1
- app-arch/zstd:=
- app-shells/bash:0
- app-misc/jq:=
- dev-cpp/gflags:=
- <dev-libs/leveldb-1.23:=[snappy,tcmalloc(-)?]
- dev-libs/libaio:=
- dev-libs/libnl:3=
- dev-libs/libxml2:=
- dev-libs/libevent:=
- dev-libs/openssl:=
- <dev-libs/rocksdb-6.15:=
- dev-libs/xmlsec:=[openssl]
- dev-cpp/yaml-cpp:=
- dev-libs/nss:=
- dev-libs/protobuf:=
- net-dns/c-ares:=
- net-libs/gnutls:=
- sys-auth/oath-toolkit:=
- sys-apps/coreutils
- sys-apps/hwloc:=
- sys-apps/keyutils:=
- sys-apps/util-linux:=
- sys-apps/util-linux
- sys-libs/libcap-ng:=
- sys-libs/ncurses:0=
- sys-libs/zlib:=
- sys-process/numactl:=
- virtual/libcrypt:=
- x11-libs/libpciaccess:=
- babeltrace? ( dev-util/babeltrace:0/1 )
- fuse? ( sys-fs/fuse:3= )
- jemalloc? ( dev-libs/jemalloc:= )
- !jemalloc? ( >=dev-util/google-perftools-2.6.1:= )
- jaeger? ( dev-cpp/nlohmann_json:= )
- kafka? ( dev-libs/librdkafka:= )
- kerberos? ( virtual/krb5 )
- ldap? ( net-nds/openldap:= )
- lttng? ( dev-util/lttng-ust:= )
- pmdk? ( dev-libs/pmdk:= )
- rabbitmq? ( net-libs/rabbitmq-c:= )
- radosgw? (
- dev-libs/icu:=
- dev-libs/expat:=
- net-misc/curl:=[curl_ssl_openssl]
- )
- rbd-rwl? ( dev-libs/pmdk:= )
- rdma? ( sys-cluster/rdma-core:= )
- spdk? ( dev-util/cunit )
- sqlite? ( dev-db/sqlite:= )
- system-boost? ( dev-libs/boost:=[context,python,${PYTHON_USEDEP},zlib] )
- !system-boost? ( $(python_gen_impl_dep '' 3.{10..11}) )
- uring? ( sys-libs/liburing:= )
- xfs? ( sys-fs/xfsprogs:= )
- zbd? ( sys-block/libzbd:= )
- zfs? ( sys-fs/zfs:= )
-"
-# <cython-3: bug #907739
-BDEPEND="
- amd64? ( dev-lang/nasm )
- x86? ( dev-lang/yasm )
- app-alternatives/cpio
- dev-debug/valgrind
- >=dev-build/cmake-3.5.0
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
- dev-python/sphinx
- dev-util/gperf
- dev-util/ragel
- sys-apps/coreutils
- sys-apps/grep
- sys-apps/util-linux
- sys-apps/which
- app-alternatives/bc
- sys-devel/patch
- virtual/pkgconfig
- jaeger? (
- app-alternatives/yacc
- app-alternatives/lex
- )
- test? (
- dev-util/cunit
- dev-python/coverage[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- dev-python/requests-mock[${PYTHON_USEDEP}]
- sys-apps/grep[pcre]
- sys-fs/btrfs-progs
- )
-"
-RDEPEND="
- ${DEPEND}
- app-admin/sudo
- net-misc/socat
- sys-apps/gptfdisk
- sys-apps/nvme-cli
- >=sys-apps/smartmontools-7.0
- sys-block/parted
- sys-fs/cryptsetup
- sys-fs/lsscsi
- sys-fs/lvm2[lvm]
- app-alternatives/awk
- dev-python/bcrypt[${PYTHON_USEDEP}]
- dev-python/cherrypy[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/flask[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/pecan[${PYTHON_USEDEP}]
- dev-python/prettytable[${PYTHON_USEDEP}]
- dev-python/pyopenssl[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/werkzeug[${PYTHON_USEDEP}]
- mgr? (
- dev-python/jsonpatch[${PYTHON_USEDEP}]
- dev-python/more-itertools[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pyjwt[${PYTHON_USEDEP}]
- dev-python/routes[${PYTHON_USEDEP}]
- diskprediction? (
- >=dev-python/scipy-1.4.0[${PYTHON_USEDEP}]
- )
- dev-python/scikit-learn[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- )
- selinux? ( sec-policy/selinux-ceph )
-"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}
- ${LUA_REQUIRED_USE}
- ?? ( jemalloc tcmalloc )
- jaeger? ( !system-boost )
- diskprediction? ( mgr )
- kafka? ( radosgw )
- mgr? ( cephfs )
- rabbitmq? ( radosgw )
- !system-boost? (
- python_targets_python3_10
- )
-"
-
-RESTRICT="
- !test? ( test )
-"
-
-# tests need root access, and network access
-RESTRICT+="test"
-
-# create a non-debug release
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-# false positives unless all USE flags are on
-CMAKE_WARN_UNUSED_CLI=no
-
-PATCHES=(
- "${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
- "${FILESDIR}/ceph-14.2.0-cflags.patch"
- "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
- "${FILESDIR}/ceph-16.2.2-cflags.patch"
- "${FILESDIR}/ceph-16.2.8-no-virtualenvs.patch"
- "${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
- "${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
- "${FILESDIR}/ceph-14.2.0-cython-0.29.patch"
- "${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
- "${FILESDIR}/ceph-15.2.3-spdk-compile.patch"
- "${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
- "${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
- "${FILESDIR}/ceph-16.2.0-liburing.patch"
- "${FILESDIR}/ceph-16.2.2-system-zstd.patch"
- "${FILESDIR}/ceph-17.2.0-fuse3.patch"
- "${FILESDIR}/ceph-17.2.0-gcc12-header.patch"
- "${FILESDIR}/ceph-16.2.10-flags.patch"
- "${FILESDIR}/ceph-17.2.5-boost-1.81.patch"
- "${FILESDIR}/ceph-16.2.14-gcc13.patch"
- # https://bugs.gentoo.org/907739
- "${FILESDIR}/ceph-18.2.0-cython3.patch"
-)
-
-check-reqs_export_vars() {
- CHECKREQS_DISK_BUILD="6G"
-
- if use system-boost; then
- CHECKREQS_DISK_USR="350M"
- else
- CHECKREQS_DISK_USR="510M"
- fi
-
- export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
-}
-
-pkg_pretend() {
- check-reqs_export_vars
- check-reqs_pkg_pretend
-}
-
-pkg_setup() {
- if ! use system-boost; then
- python_setup 3.10
- else
- python_setup
- fi
- lua_setup
- check-reqs_export_vars
- check-reqs_pkg_setup
-}
-
-src_prepare() {
- cmake_src_prepare
-
- if use system-boost; then
- find "${S}" -name '*.cmake' -or -name 'CMakeLists.txt' -print0 \
- | xargs --null sed -r \
- -e 's|Boost::|boost_|g' \
- -e 's|Boost_|boost_|g' \
- -e 's|[Bb]oost_boost|boost_system|g' \
- -i || die
- fi
-
- if ! use systemd; then
- find "${S}"/src/ceph-volume/ceph_volume -name '*.py' -print0 \
- | xargs --null sed \
- -e '/^from ceph_volume.systemd import systemctl/ d' \
- -i || die
- fi
-
- sed -r -e "s:DESTINATION .+\\):DESTINATION $(get_bashcompdir)\\):" \
- -i src/bash_completion/CMakeLists.txt || die
-
- sed -e "s:objdump -p:$(tc-getOBJDUMP) -p:" -i CMakeLists.txt || die
-
- if ! use diskprediction; then
- rm -rf src/pybind/mgr/diskprediction_local || die
- fi
-
- # force lua version to use selected version
- local lua_version
- lua_version=$(ver_cut 1-2 $(lua_get_version))
- sed "s:find_package(Lua [0-9][.][0-9] REQUIRED):find_package(Lua ${lua_version} EXACT REQUIRED):" \
- -i src/CMakeLists.txt
-
- # remove tests that need root access
- rm src/test/cli/ceph-authtool/cap*.t || die
-}
-
-ceph_src_configure() {
- local mycmakeargs=(
- -DWITH_BABELTRACE:BOOL=$(usex babeltrace)
- -DWITH_BLUESTORE_PMEM:BOOL=$(usex pmdk)
- -DWITH_CEPHFS:BOOL=$(usex cephfs)
- -DWITH_CEPHFS_SHELL:BOOL=$(usex cephfs)
- -DWITH_DPDK:BOOL=$(usex dpdk)
- -DWITH_SPDK:BOOL=$(usex spdk)
- -DWITH_FUSE:BOOL=$(usex fuse)
- -DWITH_LTTNG:BOOL=$(usex lttng)
- -DWITH_GSSAPI:BOOL=$(usex kerberos)
- -DWITH_GRAFANA:BOOL=$(usex grafana)
- -DWITH_MGR:BOOL=$(usex mgr)
- -DWITH_MGR_DASHBOARD_FRONTEND:BOOL=OFF
- -DWITH_OPENLDAP:BOOL=$(usex ldap)
- -DWITH_PYTHON3:STRING=3
- -DWITH_RADOSGW:BOOL=$(usex radosgw)
- -DWITH_RADOSGW_AMQP_ENDPOINT:BOOL=$(usex rabbitmq)
- -DWITH_RADOSGW_KAFKA_ENDPOINT:BOOL=$(usex kafka)
- -DWITH_RADOSGW_LUA_PACKAGES:BOOL=$(usex rgw-lua "$(usex radosgw)" "NO")
- -DWITH_RBD_RWL:BOOL=$(usex rbd-rwl)
- -DWITH_RBD_SSD_CACHE:BOOL=$(usex rbd-ssd)
- -DWITH_SYSTEMD:BOOL=$(usex systemd)
- -DWITH_TESTS:BOOL=$(usex test)
- -DWITH_LIBURING:BOOL=$(usex uring)
- -DWITH_SYSTEM_LIBURING:BOOL=$(usex uring)
- -DWITH_LIBCEPHSQLITE:BOOL=$(usex sqlite)
- -DWITH_XFS:BOOL=$(usex xfs)
- -DWITH_ZBD:BOOL=$(usex zbd)
- -DWITH_ZFS:BOOL=$(usex zfs)
- -DENABLE_SHARED:BOOL=ON
- -DALLOCATOR:STRING=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
- -DWITH_SYSTEM_PMDK:BOOL=$(usex pmdk 'YES' "$(usex rbd-rwl)")
- -DWITH_SYSTEM_BOOST:BOOL=$(usex system-boost)
- -DWITH_SYSTEM_ROCKSDB:BOOL=ON
- -DWITH_RDMA:BOOL=$(usex rdma)
- -DCMAKE_INSTALL_DOCDIR:PATH="${EPREFIX}/usr/share/doc/${PN}-${PVR}"
- -DCMAKE_INSTALL_SYSCONFDIR:PATH="${EPREFIX}/etc"
- # use the bundled libfmt for now since they seem to constantly break their API
- -DCMAKE_DISABLE_FIND_PACKAGE_fmt=ON
- -Wno-dev
- )
-
- # this breaks when re-configuring for python impl
- if [[ ${EBUILD_PHASE} == configure ]]; then
- mycmakeargs+=(
- -DWITH_JAEGER:BOOL=$(usex jaeger)
- )
- else
- mycmakeargs+=(
- -DWITH_RADOSGW_SELECT_PARQUET:BOOL=OFF
- )
- fi
-
- # conditionally used cmake args
- use test && mycmakearts+=( -DWITH_SYSTEM_GTEST:BOOL=$(usex test) )
- use systemd && mycmakeargs+=( -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=$(systemd_get_systemunitdir) )
-
- if use amd64 || use x86; then
- local flag
- for flag in "${CPU_FLAGS_X86[@]}"; do
- case "${flag}" in
- avx*)
- local var=${flag%f}
- mycmakeargs+=(
- "-DHAVE_NASM_X64_${var^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- )
- ;;
- *) mycmakeargs+=(
- "-DHAVE_INTEL_${flag^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- );;
- esac
- done
- fi
-
- # needed for >=glibc-2.32
- has_version '>=sys-libs/glibc-2.32' && mycmakeargs+=( -DWITH_REENTRANT_STRSIGNAL:BOOL=ON )
-
- rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt" \
- || die "failed to remove cmake cache"
-
- # https://bugs.gentoo.org/927066
- filter-lto
-
- cmake_src_configure
-
- # bug #630232
- sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
- "${BUILD_DIR:-${S}}"/include/acconfig.h \
- || die "sed failed"
-}
-
-src_configure() {
- use custom-cflags || strip-flags
- ceph_src_configure
-}
-
-src_compile() {
- cmake_build VERBOSE=1 all
-
- # we have to do this here to prevent from building everything multiple times
- python_copy_sources
- python_foreach_impl python_compile
-}
-
-python_compile() {
- local CMAKE_USE_DIR="${S}"
- ceph_src_configure
-
- pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
- cmake_build VERBOSE=1 clean
- cmake_build VERBOSE=1 all
-
- # python modules are only compiled with "make install" so we need to do this to
- # prevent doing a bunch of compilation in src_install
- DESTDIR="${T}" cmake_build VERBOSE=1 install
- popd >/dev/null || die
-}
-
-src_install() {
- python_foreach_impl python_install
-
- python_setup
- cmake_src_install
-
- find "${ED}" -name '*.la' -type f -delete || die
-
- exeinto /usr/$(get_libdir)/ceph
- newexe "${BUILD_DIR}/bin/init-ceph" init-ceph
-
- insinto /etc/logrotate.d/
- newins "${FILESDIR}"/ceph.logrotate-r2 ${PN}
-
- keepdir /var/lib/${PN}{,/tmp} /var/log/ceph/stat /var/log/ceph/console
-
- fowners -R ceph:ceph /var/log/ceph
-
- newinitd "${FILESDIR}/rbdmap.initd-r1" rbdmap
- newinitd "${FILESDIR}/${PN}.initd-r13" ${PN}
- newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
-
- insinto /etc/sudoers.d
- doins sudoers.d/*
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}"/sysctld 90-${PN}.conf
-
- use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
-
- # units aren't installed by the build system unless systemd is enabled
- # so no point installing these with the USE flag disabled
- if use systemd; then
- systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service"
- systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service"
- fi
-
- udev_dorules udev/*.rules
- newtmpfiles "${FILESDIR}"/ceph-tmpfilesd ${PN}.conf
-
- readme.gentoo_create_doc
-
- # bug #630232
- sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph{,-crash} \
- || die "sed failed"
-
- python_fix_shebang "${ED}"/usr/{,s}bin/
-
- # python_fix_shebang apparently is not idempotent
- local shebang_regex='(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]'
- grep -r -E -l --null "${shebang_regex}" "${ED}"/usr/{s,}bin/ \
- | xargs --null --no-run-if-empty -- sed -i -r "s:${shebang_regex}:\1:" || die
-
- local -a rados_classes=( "${ED}/usr/$(get_libdir)/rados-classes"/* )
- dostrip -x "${rados_classes[@]#${ED}}"
-}
-
-python_install() {
- local CMAKE_USE_DIR="${S}"
- pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
- DESTDIR="${ED}" cmake_build VERBOSE=1 install
- popd >/dev/null || die
-
- python_scriptinto /usr/sbin
- python_doscript src/cephadm/cephadm
-
- python_optimize
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
- tmpfiles_process ${PN}.conf
- udev_reload
-}
-
-pkg_postrm() {
- udev_reload
-}
diff --git a/sys-cluster/ceph/ceph-17.2.6-r8.ebuild b/sys-cluster/ceph/ceph-17.2.6-r8.ebuild
deleted file mode 100644
index ec78adf22305..000000000000
--- a/sys-cluster/ceph/ceph-17.2.6-r8.ebuild
+++ /dev/null
@@ -1,493 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-LUA_COMPAT=( lua5-{3..4} )
-
-inherit check-reqs bash-completion-r1 cmake flag-o-matic lua-single \
- python-r1 udev readme.gentoo-r1 toolchain-funcs systemd tmpfiles
-
-XSIMD_HASH="aeec9c872c8b475dedd7781336710f2dd2666cb2"
-DESCRIPTION="Ceph distributed filesystem"
-HOMEPAGE="https://ceph.com/"
-
-SRC_URI="
- https://download.ceph.com/tarballs/${P}.tar.gz
- parquet? ( https://github.com/xtensor-stack/xsimd/archive/${XSIMD_HASH}.tar.gz -> ceph-xsimd-${PV}.tar.gz )
-"
-
-LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~arm64"
-
-CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
-
-IUSE="
- babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
- jemalloc jaeger kafka kerberos ldap lttng +mgr +parquet pmdk rabbitmq
- +radosgw rbd-rwl rbd-ssd rdma rgw-lua selinux +ssl spdk +sqlite +system-boost
- systemd +tcmalloc test +uring xfs zbd zfs
-"
-
-IUSE+="$(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
-
-DEPEND="
- ${LUA_DEPS}
- ${PYTHON_DEPS}
- acct-group/ceph
- acct-user/ceph
- virtual/libudev:=
- app-arch/bzip2:=
- app-arch/lz4:=
- app-arch/snappy:=
- >=app-arch/snappy-1.1.9-r1
- app-arch/zstd:=
- app-shells/bash:0
- app-misc/jq:=
- dev-cpp/gflags:=
- dev-lang/jsonnet:=
- dev-libs/libaio:=
- dev-libs/libnl:3=
- dev-libs/libxml2:=
- dev-libs/libevent:=
- dev-libs/libutf8proc:=
- dev-libs/nss:=
- dev-libs/openssl:=
- <dev-libs/rocksdb-6.15:=
- dev-libs/thrift:=
- dev-libs/xmlsec:=[openssl]
- dev-cpp/yaml-cpp:=
- dev-python/natsort[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- net-dns/c-ares:=
- net-libs/gnutls:=
- sys-auth/oath-toolkit:=
- sys-apps/coreutils
- sys-apps/hwloc:=
- sys-apps/keyutils:=
- sys-apps/util-linux:=
- sys-libs/libcap-ng:=
- sys-libs/ncurses:0=
- sys-libs/zlib:=
- sys-process/numactl:=
- virtual/libcrypt:=
- x11-libs/libpciaccess:=
- babeltrace? ( dev-util/babeltrace:0/1 )
- fuse? ( sys-fs/fuse:3= )
- jemalloc? ( dev-libs/jemalloc:= )
- !jemalloc? ( >=dev-util/google-perftools-2.6.1:= )
- jaeger? (
- dev-cpp/nlohmann_json:=
- dev-cpp/opentelemetry-cpp:=[jaeger]
- )
- kafka? ( dev-libs/librdkafka:= )
- kerberos? ( virtual/krb5 )
- ldap? ( net-nds/openldap:= )
- lttng? ( dev-util/lttng-ust:= )
- parquet? ( dev-libs/re2:= )
- pmdk? ( >=dev-libs/pmdk-1.10.0:= )
- rabbitmq? ( net-libs/rabbitmq-c:= )
- radosgw? (
- dev-libs/icu:=
- dev-libs/expat:=
- net-misc/curl:=[curl_ssl_openssl]
- )
- rbd-rwl? ( dev-libs/pmdk:= )
- rdma? ( sys-cluster/rdma-core:= )
- spdk? ( dev-util/cunit )
- sqlite? ( dev-db/sqlite:= )
- system-boost? ( dev-libs/boost:=[context,python,${PYTHON_USEDEP},zlib] )
- uring? ( sys-libs/liburing:= )
- xfs? ( sys-fs/xfsprogs:= )
- zbd? ( sys-block/libzbd:= )
- zfs? ( sys-fs/zfs:= )
-"
-# <cython-3: bug #907739
-BDEPEND="
- amd64? ( dev-lang/nasm )
- x86? ( dev-lang/yasm )
- app-alternatives/cpio
- dev-debug/valgrind
- >=dev-build/cmake-3.5.0
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
- dev-python/sphinx
- dev-util/gperf
- dev-util/ragel
- sys-apps/coreutils
- sys-apps/grep
- sys-apps/util-linux
- sys-apps/which
- app-alternatives/bc
- sys-devel/patch
- virtual/pkgconfig
- jaeger? (
- app-alternatives/yacc
- app-alternatives/lex
- )
- test? (
- dev-util/cunit
- dev-python/coverage[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- dev-python/requests-mock[${PYTHON_USEDEP}]
- sys-apps/grep[pcre]
- sys-fs/btrfs-progs
- )
-"
-RDEPEND="
- ${DEPEND}
- app-admin/sudo
- net-misc/socat
- sys-apps/gptfdisk
- sys-apps/nvme-cli
- >=sys-apps/smartmontools-7.0
- sys-block/parted
- sys-fs/cryptsetup
- sys-fs/lsscsi
- sys-fs/lvm2[lvm]
- app-alternatives/awk
- dev-python/bcrypt[${PYTHON_USEDEP}]
- dev-python/cherrypy[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/flask[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/pecan[${PYTHON_USEDEP}]
- dev-python/prettytable[${PYTHON_USEDEP}]
- dev-python/pyopenssl[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/werkzeug[${PYTHON_USEDEP}]
- mgr? (
- dev-python/jsonpatch[${PYTHON_USEDEP}]
- dev-python/more-itertools[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pyjwt[${PYTHON_USEDEP}]
- dev-python/routes[${PYTHON_USEDEP}]
- diskprediction? (
- >=dev-python/scipy-1.4.0[${PYTHON_USEDEP}]
- )
- dev-python/scikit-learn[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- )
- selinux? ( sec-policy/selinux-ceph )
-"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}
- ${LUA_REQUIRED_USE}
- ?? ( jemalloc tcmalloc )
- diskprediction? ( mgr )
- kafka? ( radosgw )
- mgr? ( cephfs )
- rabbitmq? ( radosgw )
- rgw-lua? ( radosgw )
-"
-
-RESTRICT="
- !test? ( test )
-"
-
-# tests need root access, and network access
-RESTRICT+="test"
-
-# false positives unless all USE flags are on
-CMAKE_WARN_UNUSED_CLI=no
-
-PATCHES=(
- "${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
- "${FILESDIR}/ceph-14.2.0-cflags.patch"
- "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
- "${FILESDIR}/ceph-16.2.2-cflags.patch"
- "${FILESDIR}/ceph-17.2.1-no-virtualenvs.patch"
- "${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
- "${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
- "${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
- "${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
- "${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
- "${FILESDIR}/ceph-16.2.0-liburing.patch"
- "${FILESDIR}/ceph-17.2.0-cyclic-deps.patch"
- "${FILESDIR}/ceph-17.2.0-pybind-boost-1.74.patch"
- "${FILESDIR}/ceph-17.2.0-findre2.patch"
- "${FILESDIR}/ceph-17.2.0-install-dbstore.patch"
- "${FILESDIR}/ceph-17.2.0-deprecated-boost.patch"
- "${FILESDIR}/ceph-17.2.0-system-opentelemetry.patch"
- "${FILESDIR}/ceph-17.2.0-fuse3.patch"
- "${FILESDIR}/ceph-17.2.0-osd_class_dir.patch"
- "${FILESDIR}/ceph-17.2.0-gcc12-header.patch"
- "${FILESDIR}/ceph-17.2.3-flags.patch"
- "${FILESDIR}/ceph-17.2.4-cyclic-deps.patch"
- # https://bugs.gentoo.org/866165
- "${FILESDIR}/ceph-17.2.5-suppress-cmake-warning.patch"
- "${FILESDIR}/ceph-17.2.5-gcc13-deux.patch"
- "${FILESDIR}/ceph-17.2.5-boost-1.81.patch"
- # https://bugs.gentoo.org/901403
- "${FILESDIR}/ceph-17.2.6-link-boost-context.patch"
- # https://bugs.gentoo.org/905626
- "${FILESDIR}/ceph-17.2.6-arrow-flatbuffers-c++14.patch"
- # https://bugs.gentoo.org/868891
- "${FILESDIR}/ceph-17.2.6-cmake.patch"
- # https://bugs.gentoo.org/907739
- "${FILESDIR}/ceph-18.2.0-cython3.patch"
-)
-
-check-reqs_export_vars() {
- CHECKREQS_DISK_BUILD="6G"
-
- if use system-boost; then
- CHECKREQS_DISK_USR="350M"
- else
- CHECKREQS_DISK_USR="510M"
- fi
-
- export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
-}
-
-pkg_pretend() {
- check-reqs_export_vars
- check-reqs_pkg_pretend
-}
-
-pkg_setup() {
- python_setup
- lua_setup
- check-reqs_export_vars
- check-reqs_pkg_setup
-}
-
-src_prepare() {
- cmake_src_prepare
-
- if use system-boost; then
- find "${S}" -name '*.cmake' -or -name 'CMakeLists.txt' -print0 \
- | xargs --null sed -r \
- -e 's|Boost::|boost_|g' \
- -e 's|Boost_|boost_|g' \
- -e 's|[Bb]oost_boost|boost_system|g' \
- -i || die
- fi
-
- if ! use systemd; then
- find "${S}"/src/ceph-volume/ceph_volume -name '*.py' -print0 \
- | xargs --null sed \
- -e '/^from ceph_volume.systemd import systemctl/ d' \
- -i || die
- fi
-
- sed -r -e "s:DESTINATION .+\\):DESTINATION $(get_bashcompdir)\\):" \
- -i src/bash_completion/CMakeLists.txt || die
-
- sed -e "s:objdump -p:$(tc-getOBJDUMP) -p:" -i CMakeLists.txt || die
-
- # force lua version to use selected version
- local lua_version
- lua_version=$(ver_cut 1-2 $(lua_get_version))
- sed "s:find_package(Lua [0-9][.][0-9] REQUIRED):find_package(Lua ${lua_version} EXACT REQUIRED):" \
- -i src/CMakeLists.txt
-
- if use spdk; then
- # https://bugs.gentoo.org/871942
- sed -i 's/[#]ifndef HAVE_ARC4RANDOM/#if 0/' src/spdk/lib/iscsi/iscsi.c || die
- fi
-
- # remove tests that need root access
- rm src/test/cli/ceph-authtool/cap*.t || die
-}
-
-ceph_src_configure() {
- local mycmakeargs=(
- -DWITH_BABELTRACE:BOOL=$(usex babeltrace)
- -DWITH_BLUESTORE_PMEM:BOOL=$(usex pmdk)
- -DWITH_CEPHFS:BOOL=$(usex cephfs)
- -DWITH_CEPHFS_SHELL:BOOL=$(usex cephfs)
- -DWITH_DPDK:BOOL=$(usex dpdk)
- -DWITH_SPDK:BOOL=$(usex spdk)
- -DWITH_FUSE:BOOL=$(usex fuse)
- -DWITH_LTTNG:BOOL=$(usex lttng)
- -DWITH_GSSAPI:BOOL=$(usex kerberos)
- -DWITH_GRAFANA:BOOL=$(usex grafana)
- -DWITH_MGR:BOOL=$(usex mgr)
- -DWITH_MGR_DASHBOARD_FRONTEND:BOOL=OFF
- -DWITH_OPENLDAP:BOOL=$(usex ldap)
- -DWITH_PYTHON3:STRING=3
- -DWITH_RADOSGW:BOOL=$(usex radosgw)
- -DWITH_RADOSGW_AMQP_ENDPOINT:BOOL=$(usex rabbitmq)
- -DWITH_RADOSGW_KAFKA_ENDPOINT:BOOL=$(usex kafka)
- -DWITH_RADOSGW_LUA_PACKAGES:BOOL=$(usex rgw-lua "$(usex radosgw)" "NO")
- -DWITH_RBD_RWL:BOOL=$(usex rbd-rwl)
- -DWITH_RBD_SSD_CACHE:BOOL=$(usex rbd-ssd)
- -DWITH_SYSTEMD:BOOL=$(usex systemd)
- -DWITH_TESTS:BOOL=$(usex test)
- -DWITH_LIBURING:BOOL=$(usex uring)
- -DWITH_SYSTEM_LIBURING:BOOL=$(usex uring)
- -DWITH_LIBCEPHSQLITE:BOOL=$(usex sqlite)
- -DWITH_XFS:BOOL=$(usex xfs)
- -DWITH_ZBD:BOOL=$(usex zbd)
- -DWITH_ZFS:BOOL=$(usex zfs)
- -DENABLE_SHARED:BOOL=ON
- -DALLOCATOR:STRING=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
- -DWITH_SYSTEM_PMDK:BOOL=$(usex pmdk 'YES' "$(usex rbd-rwl '')")
- -DWITH_SYSTEM_BOOST:BOOL=$(usex system-boost)
- -DWITH_SYSTEM_ROCKSDB:BOOL=ON
- -DWITH_SYSTEM_ZSTD:BOOL=ON
- -DWITH_RDMA:BOOL=$(usex rdma)
- -DCMAKE_INSTALL_DOCDIR:PATH="${EPREFIX}/usr/share/doc/${PN}-${PVR}"
- -DCMAKE_INSTALL_SYSCONFDIR:PATH="${EPREFIX}/etc"
- # use the bundled libfmt for now since they seem to constantly break their API
- -DCMAKE_DISABLE_FIND_PACKAGE_fmt=ON
- -Wno-dev
- )
-
- # this breaks when re-configuring for python impl
- if [[ ${EBUILD_PHASE} == configure ]]; then
- mycmakeargs+=(
- -DWITH_JAEGER:BOOL=$(usex jaeger)
- -DWITH_RADOSGW_SELECT_PARQUET:BOOL=$(usex parquet)
- )
- else
- mycmakeargs+=(
- -DWITH_RADOSGW_SELECT_PARQUET:BOOL=OFF
- -DWITH_JAEGER:BOOL=OFF
- # don't want to warn about unused CLI when reconfiguring for python
- -DCMAKE_WARN_UNUSED_CLI:BOOL=OFF
- )
- fi
-
- # conditionally used cmake args
- use test && mycmakearts+=( -DWITH_SYSTEM_GTEST:BOOL=$(usex test) )
- use systemd && mycmakeargs+=( -DSYSTEMD_SYSTEM_UNIT_DIR:PATH=$(systemd_get_systemunitdir) )
-
- if use amd64 || use x86; then
- local flag
- for flag in "${CPU_FLAGS_X86[@]}"; do
- case "${flag}" in
- avx*)
- local var=${flag%f}
- mycmakeargs+=(
- "-DHAVE_NASM_X64_${var^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- )
- ;;
- *) mycmakeargs+=(
- "-DHAVE_INTEL_${flag^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- );;
- esac
- done
- fi
-
- # needed for >=glibc-2.32
- has_version '>=sys-libs/glibc-2.32' && mycmakeargs+=( -DWITH_REENTRANT_STRSIGNAL:BOOL=ON )
-
- rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt" \
- || die "failed to remove cmake cache"
-
- # hopefully this will not be necessary in the next release
- use parquet && export ARROW_XSIMD_URL="file:///${DISTDIR}/ceph-xsimd-${PV}.tar.gz"
-
- # https://bugs.gentoo.org/927066
- filter-lto
-
- cmake_src_configure
-
- # bug #630232
- sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
- "${BUILD_DIR:-${S}}"/include/acconfig.h \
- || die "sed failed"
-}
-
-src_configure() {
- use custom-cflags || strip-flags
- ceph_src_configure
-}
-
-src_compile() {
- cmake_build all
-
- # we have to do this here to prevent from building everything multiple times
- python_copy_sources
- python_foreach_impl python_compile
-}
-
-python_compile() {
- local CMAKE_USE_DIR="${S}"
- ceph_src_configure
-
- cmake_build src/pybind/CMakeFiles/cython_modules
-}
-
-src_install() {
- python_foreach_impl python_install
-
- python_setup
- cmake_src_install
- python_optimize
-
- find "${ED}" -name '*.la' -type f -delete || die
-
- exeinto /usr/$(get_libdir)/ceph
- newexe "${BUILD_DIR}/bin/init-ceph" init-ceph
-
- insinto /etc/logrotate.d/
- newins "${FILESDIR}"/ceph.logrotate-r2 ${PN}
-
- keepdir /var/lib/${PN}{,/tmp} /var/log/ceph/stat /var/log/ceph/console
-
- fowners -R ceph:ceph /var/log/ceph
-
- newinitd "${FILESDIR}/rbdmap.initd-r1" rbdmap
- newinitd "${FILESDIR}/${PN}.initd-r14" ${PN}
- newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
-
- insinto /etc/sudoers.d
- doins sudoers.d/*
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}"/sysctld 90-${PN}.conf
-
- use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
-
- # units aren't installed by the build system unless systemd is enabled
- # so no point installing these with the USE flag disabled
- if use systemd; then
- systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service"
- systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service"
- fi
-
- udev_dorules udev/*.rules
- newtmpfiles "${FILESDIR}"/ceph-tmpfilesd ${PN}.conf
-
- readme.gentoo_create_doc
-
- # bug #630232
- sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph{,-crash} \
- || die "sed failed"
-
- python_fix_shebang "${ED}"/usr/{,s}bin/
-
- # python_fix_shebang apparently is not idempotent
- local shebang_regex='(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]'
- grep -r -E -l --null "${shebang_regex}" "${ED}"/usr/{s,}bin/ \
- | xargs --null --no-run-if-empty -- sed -i -r "s:${shebang_regex}:\1:" || die
-
- local -a rados_classes=( "${ED}/usr/$(get_libdir)/rados-classes"/* )
- dostrip -x "${rados_classes[@]#${ED}}"
-}
-
-python_install() {
- local CMAKE_USE_DIR="${S}"
- DESTDIR="${ED}" cmake_build src/pybind/install
- DESTDIR="${ED}" cmake_build src/cephadm/install
-
- python_scriptinto /usr/sbin
- python_doscript src/cephadm/cephadm
-
- python_optimize
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
- tmpfiles_process ${PN}.conf
- udev_reload
-}
-
-pkg_postrm() {
- udev_reload
-}
diff --git a/sys-cluster/ceph/ceph-18.2.1-r2.ebuild b/sys-cluster/ceph/ceph-18.2.1-r2.ebuild
deleted file mode 100644
index 8c0a902b46f3..000000000000
--- a/sys-cluster/ceph/ceph-18.2.1-r2.ebuild
+++ /dev/null
@@ -1,490 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-LUA_COMPAT=( lua5-{3..4} )
-
-inherit check-reqs bash-completion-r1 cmake flag-o-matic lua-single \
- python-r1 udev readme.gentoo-r1 toolchain-funcs systemd tmpfiles
-
-XSIMD_HASH="aeec9c872c8b475dedd7781336710f2dd2666cb2"
-
-DESCRIPTION="Ceph distributed filesystem"
-HOMEPAGE="https://ceph.com/"
-
-SRC_URI="
- https://download.ceph.com/tarballs/${P}.tar.gz
- parquet? ( https://github.com/xtensor-stack/xsimd/archive/${XSIMD_HASH}.tar.gz -> ceph-xsimd-${PV}.tar.gz )
-"
-
-LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64"
-
-CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
-
-IUSE="
- babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
- jemalloc jaeger kafka kerberos ldap lttng +mgr +parquet pmdk rabbitmq
- +radosgw rbd-rwl rbd-ssd rdma rgw-lua selinux +ssl spdk +sqlite +system-boost
- systemd +tcmalloc test +uring xfs zbd zfs
-"
-
-IUSE+="$(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
-
-DEPEND="
- ${LUA_DEPS}
- ${PYTHON_DEPS}
- acct-group/ceph
- acct-user/ceph
- virtual/libudev:=
- app-arch/bzip2:=
- app-arch/lz4:=
- app-arch/snappy:=
- >=app-arch/snappy-1.1.9-r1
- app-arch/zstd:=
- app-shells/bash:0
- app-misc/jq:=
- dev-cpp/gflags:=
- dev-lang/jsonnet:=
- dev-libs/libaio:=
- dev-libs/libnl:3=
- dev-libs/libxml2:=
- dev-libs/libevent:=
- dev-libs/libutf8proc:=
- dev-libs/nss:=
- dev-libs/openssl:=
- <dev-libs/rocksdb-7.9.3:=
- dev-libs/thrift:=
- dev-libs/xmlsec:=[openssl]
- dev-cpp/yaml-cpp:=
- dev-python/natsort[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- net-dns/c-ares:=
- net-libs/gnutls:=
- sys-auth/oath-toolkit:=
- sys-apps/coreutils
- sys-apps/hwloc:=
- sys-apps/keyutils:=
- sys-apps/util-linux:=
- sys-libs/libcap-ng:=
- sys-libs/ncurses:0=
- sys-libs/zlib:=
- sys-process/numactl:=
- virtual/libcrypt:=
- x11-libs/libpciaccess:=
- babeltrace? ( dev-util/babeltrace:0/1 )
- fuse? ( sys-fs/fuse:3= )
- jemalloc? ( dev-libs/jemalloc:= )
- !jemalloc? ( >=dev-util/google-perftools-2.6.1:= )
- jaeger? (
- dev-cpp/nlohmann_json:=
- dev-cpp/opentelemetry-cpp:=[jaeger]
- )
- kafka? ( dev-libs/librdkafka:= )
- kerberos? ( virtual/krb5 )
- ldap? ( net-nds/openldap:= )
- lttng? ( dev-util/lttng-ust:= )
- parquet? ( dev-libs/re2:= )
- pmdk? (
- >=dev-libs/pmdk-1.10.0:=
- sys-block/ndctl:=
- )
- rabbitmq? ( net-libs/rabbitmq-c:= )
- radosgw? (
- dev-libs/icu:=
- dev-libs/expat:=
- net-misc/curl:=[curl_ssl_openssl]
- )
- rbd-rwl? ( dev-libs/pmdk:= )
- rdma? ( sys-cluster/rdma-core:= )
- spdk? ( dev-util/cunit )
- sqlite? ( dev-db/sqlite:= )
- system-boost? ( dev-libs/boost:=[context,python,${PYTHON_USEDEP},zlib] )
- uring? ( sys-libs/liburing:= )
- xfs? ( sys-fs/xfsprogs:= )
- zbd? ( sys-block/libzbd:= )
- zfs? ( sys-fs/zfs:= )
-"
-BDEPEND="
- amd64? ( dev-lang/nasm )
- x86? ( dev-lang/yasm )
- app-alternatives/cpio
- dev-debug/valgrind
- >=dev-build/cmake-3.5.0
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
- dev-python/sphinx
- dev-util/gperf
- dev-util/ragel
- sys-apps/coreutils
- sys-apps/grep
- sys-apps/util-linux
- sys-apps/which
- app-alternatives/bc
- sys-devel/patch
- virtual/pkgconfig
- jaeger? (
- app-alternatives/yacc
- app-alternatives/lex
- )
- test? (
- dev-util/cunit
- dev-python/coverage[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- dev-python/requests-mock[${PYTHON_USEDEP}]
- sys-apps/grep[pcre]
- sys-fs/btrfs-progs
- )
-"
-RDEPEND="
- ${DEPEND}
- app-admin/sudo
- net-misc/socat
- sys-apps/gptfdisk
- sys-apps/nvme-cli
- >=sys-apps/smartmontools-7.0
- sys-block/parted
- sys-fs/cryptsetup
- sys-fs/lsscsi
- sys-fs/lvm2[lvm]
- app-alternatives/awk
- dev-python/bcrypt[${PYTHON_USEDEP}]
- dev-python/cherrypy[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/flask[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/pecan[${PYTHON_USEDEP}]
- dev-python/prettytable[${PYTHON_USEDEP}]
- dev-python/pyopenssl[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/werkzeug[${PYTHON_USEDEP}]
- mgr? (
- dev-python/jsonpatch[${PYTHON_USEDEP}]
- dev-python/more-itertools[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pyjwt[${PYTHON_USEDEP}]
- dev-python/routes[${PYTHON_USEDEP}]
- diskprediction? (
- >=dev-python/scipy-1.4.0[${PYTHON_USEDEP}]
- )
- dev-python/scikit-learn[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- )
- selinux? ( sec-policy/selinux-ceph )
-"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}
- ${LUA_REQUIRED_USE}
- ?? ( jemalloc tcmalloc )
- diskprediction? ( mgr )
- kafka? ( radosgw )
- mgr? ( cephfs )
- rabbitmq? ( radosgw )
- rgw-lua? ( radosgw )
-"
-
-RESTRICT="
- !test? ( test )
-"
-
-# tests need root access, and network access
-RESTRICT+="test"
-
-# false positives unless all USE flags are on
-CMAKE_WARN_UNUSED_CLI=no
-
-PATCHES=(
- "${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
- "${FILESDIR}/ceph-14.2.0-cflags.patch"
- "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
- "${FILESDIR}/ceph-17.2.1-no-virtualenvs.patch"
- "${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
- "${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
- "${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
- "${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
- "${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
- "${FILESDIR}/ceph-16.2.0-liburing.patch"
- "${FILESDIR}/ceph-17.2.0-pybind-boost-1.74.patch"
- "${FILESDIR}/ceph-17.2.0-findre2.patch"
- "${FILESDIR}/ceph-18.2.0-system-opentelemetry.patch"
- "${FILESDIR}/ceph-17.2.0-osd_class_dir.patch"
- "${FILESDIR}/ceph-17.2.0-gcc12-header.patch"
- "${FILESDIR}/ceph-17.2.3-flags.patch"
- # https://bugs.gentoo.org/866165
- "${FILESDIR}/ceph-17.2.5-suppress-cmake-warning.patch"
- "${FILESDIR}/ceph-17.2.5-gcc13-deux.patch"
- "${FILESDIR}/ceph-17.2.5-boost-1.81.patch"
- # https://bugs.gentoo.org/901403
- "${FILESDIR}/ceph-17.2.6-link-boost-context.patch"
- # https://bugs.gentoo.org/905626
- "${FILESDIR}/ceph-17.2.6-arrow-flatbuffers-c++14.patch"
- # https://bugs.gentoo.org/868891
- "${FILESDIR}/ceph-17.2.6-cmake.patch"
- "${FILESDIR}/ceph-18.2.0-cyclic-deps.patch"
- # https://bugs.gentoo.org/907739
- "${FILESDIR}/ceph-18.2.0-cython3.patch"
-)
-
-check-reqs_export_vars() {
- CHECKREQS_DISK_BUILD="6G"
-
- if use system-boost; then
- CHECKREQS_DISK_USR="350M"
- else
- CHECKREQS_DISK_USR="510M"
- fi
-
- export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
-}
-
-pkg_pretend() {
- check-reqs_export_vars
- check-reqs_pkg_pretend
-}
-
-pkg_setup() {
- python_setup
- lua_setup
- check-reqs_export_vars
- check-reqs_pkg_setup
-}
-
-src_prepare() {
- cmake_src_prepare
-
- if use system-boost; then
- find "${S}" -name '*.cmake' -or -name 'CMakeLists.txt' -print0 \
- | xargs --null sed -r \
- -e 's|Boost::|boost_|g' \
- -e 's|Boost_|boost_|g' \
- -e 's|[Bb]oost_boost|boost_system|g' \
- -i || die
- fi
-
- if ! use systemd; then
- find "${S}"/src/ceph-volume/ceph_volume -name '*.py' -print0 \
- | xargs --null sed \
- -e '/^from ceph_volume.systemd import systemctl/ d' \
- -i || die
- fi
-
- sed -r -e "s:DESTINATION .+\\):DESTINATION $(get_bashcompdir)\\):" \
- -i src/bash_completion/CMakeLists.txt || die
-
- sed -e "s:objdump -p:$(tc-getOBJDUMP) -p:" -i CMakeLists.txt || die
-
- # force lua version to use selected version
- local lua_version
- lua_version=$(ver_cut 1-2 $(lua_get_version))
- sed "s:find_package(Lua [0-9][.][0-9] REQUIRED):find_package(Lua ${lua_version} EXACT REQUIRED):" \
- -i src/CMakeLists.txt
-
- if use spdk; then
- # https://bugs.gentoo.org/871942
- sed -i 's/[#]ifndef HAVE_ARC4RANDOM/#if 0/' src/spdk/lib/iscsi/iscsi.c || die
- fi
-
- # remove tests that need root access
- rm src/test/cli/ceph-authtool/cap*.t || die
-}
-
-ceph_src_configure() {
- local mycmakeargs=(
- -DWITH_BABELTRACE:BOOL=$(usex babeltrace)
- -DWITH_BLUESTORE_PMEM:BOOL=$(usex pmdk)
- -DWITH_CEPHFS:BOOL=$(usex cephfs)
- -DWITH_CEPHFS_SHELL:BOOL=$(usex cephfs)
- -DWITH_DPDK:BOOL=$(usex dpdk)
- -DWITH_SPDK:BOOL=$(usex spdk)
- -DWITH_FUSE:BOOL=$(usex fuse)
- -DWITH_LTTNG:BOOL=$(usex lttng)
- -DWITH_GSSAPI:BOOL=$(usex kerberos)
- -DWITH_GRAFANA:BOOL=$(usex grafana)
- -DWITH_MGR:BOOL=$(usex mgr)
- -DWITH_MGR_DASHBOARD_FRONTEND:BOOL=OFF
- -DWITH_OPENLDAP:BOOL=$(usex ldap)
- -DWITH_PYTHON3:STRING=3
- -DWITH_RADOSGW:BOOL=$(usex radosgw)
- -DWITH_RADOSGW_AMQP_ENDPOINT:BOOL=$(usex rabbitmq)
- -DWITH_RADOSGW_KAFKA_ENDPOINT:BOOL=$(usex kafka)
- -DWITH_RADOSGW_LUA_PACKAGES:BOOL=$(usex rgw-lua "$(usex radosgw)" "NO")
- -DWITH_RBD_RWL:BOOL=$(usex rbd-rwl)
- -DWITH_RBD_SSD_CACHE:BOOL=$(usex rbd-ssd)
- -DWITH_SYSTEMD:BOOL=$(usex systemd)
- -DWITH_TESTS:BOOL=$(usex test)
- -DWITH_LIBURING:BOOL=$(usex uring)
- -DWITH_SYSTEM_LIBURING:BOOL=$(usex uring)
- -DWITH_LIBCEPHSQLITE:BOOL=$(usex sqlite)
- -DWITH_XFS:BOOL=$(usex xfs)
- -DWITH_ZBD:BOOL=$(usex zbd)
- -DWITH_ZFS:BOOL=$(usex zfs)
- -DENABLE_SHARED:BOOL=ON
- -DALLOCATOR:STRING=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
- -DWITH_SYSTEM_PMDK:BOOL=$(usex pmdk 'YES' "$(usex rbd-rwl '')")
- -DWITH_SYSTEM_BOOST:BOOL=$(usex system-boost)
- -DWITH_SYSTEM_ROCKSDB:BOOL=ON
- -DWITH_SYSTEM_ZSTD:BOOL=ON
- -DWITH_RDMA:BOOL=$(usex rdma)
- -DCMAKE_INSTALL_DOCDIR:PATH="${EPREFIX}/usr/share/doc/${PN}-${PVR}"
- -DCMAKE_INSTALL_SYSCONFDIR:PATH="${EPREFIX}/etc"
- # use the bundled libfmt for now since they seem to constantly break their API
- -DCMAKE_DISABLE_FIND_PACKAGE_fmt=ON
- -Wno-dev
- )
-
- # this breaks when re-configuring for python impl
- if [[ ${EBUILD_PHASE} == configure ]]; then
- mycmakeargs+=(
- -DWITH_JAEGER:BOOL=$(usex jaeger)
- -DWITH_RADOSGW_SELECT_PARQUET:BOOL=$(usex parquet)
- )
- else
- mycmakeargs+=(
- -DWITH_RADOSGW_SELECT_PARQUET:BOOL=OFF
- -DWITH_JAEGER:BOOL=OFF
- # don't want to warn about unused CLI when reconfiguring for python
- -DCMAKE_WARN_UNUSED_CLI:BOOL=OFF
- )
- fi
-
- # conditionally used cmake args
- use test && mycmakearts+=( -DWITH_SYSTEM_GTEST:BOOL=$(usex test) )
- use systemd && mycmakeargs+=( -DSYSTEMD_SYSTEM_UNIT_DIR:PATH=$(systemd_get_systemunitdir) )
-
- if use amd64 || use x86; then
- local flag
- for flag in "${CPU_FLAGS_X86[@]}"; do
- case "${flag}" in
- avx*)
- local var=${flag%f}
- mycmakeargs+=(
- "-DHAVE_NASM_X64_${var^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- )
- ;;
- *) mycmakeargs+=(
- "-DHAVE_INTEL_${flag^^}:BOOL=$(usex cpu_flags_x86_${flag})"
- );;
- esac
- done
- fi
-
- # needed for >=glibc-2.32
- has_version '>=sys-libs/glibc-2.32' && mycmakeargs+=( -DWITH_REENTRANT_STRSIGNAL:BOOL=ON )
-
- rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt" \
- || die "failed to remove cmake cache"
-
- # hopefully this will not be necessary in the next release
- use parquet && export ARROW_XSIMD_URL="file:///${DISTDIR}/ceph-xsimd-${PV}.tar.gz"
-
- # https://bugs.gentoo.org/927066
- filter-lto
-
- cmake_src_configure
-
- # bug #630232
- sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
- "${BUILD_DIR:-${S}}"/include/acconfig.h \
- || die "sed failed"
-}
-
-src_configure() {
- use custom-cflags || strip-flags
- ceph_src_configure
-}
-
-src_compile() {
- cmake_build all
-
- # we have to do this here to prevent from building everything multiple times
- python_copy_sources
- python_foreach_impl python_compile
-}
-
-python_compile() {
- local CMAKE_USE_DIR="${S}"
- ceph_src_configure
-
- cmake_build src/pybind/CMakeFiles/cython_modules
- cmake_build cephadm
-}
-
-src_install() {
- python_foreach_impl python_install
-
- python_setup
- cmake_src_install
-
- python_optimize
-
- find "${ED}" -name '*.la' -type f -delete || die
-
- exeinto /usr/$(get_libdir)/ceph
- newexe "${BUILD_DIR}/bin/init-ceph" init-ceph
-
- insinto /etc/logrotate.d/
- newins "${FILESDIR}"/ceph.logrotate-r2 ${PN}
-
- keepdir /var/lib/${PN}{,/tmp} /var/log/ceph/stat /var/log/ceph/console
-
- fowners -R ceph:ceph /var/log/ceph
-
- newinitd "${FILESDIR}/rbdmap.initd-r1" rbdmap
- newinitd "${FILESDIR}/${PN}.initd-r14" ${PN}
- newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
-
- insinto /etc/sudoers.d
- doins sudoers.d/*
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}"/sysctld 90-${PN}.conf
-
- use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
-
- # units aren't installed by the build system unless systemd is enabled
- # so no point installing these with the USE flag disabled
- if use systemd; then
- systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service"
- systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service"
- fi
-
- udev_dorules udev/*.rules
- newtmpfiles "${FILESDIR}"/ceph-tmpfilesd ${PN}.conf
-
- readme.gentoo_create_doc
-
- # bug #630232
- sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph{,-crash} \
- || die "sed failed"
-
- python_fix_shebang "${ED}"/usr/{,s}bin/
-
- # python_fix_shebang apparently is not idempotent
- local shebang_regex='(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]'
- grep -r -E -l --null "${shebang_regex}" "${ED}"/usr/{s,}bin/ \
- | xargs --null --no-run-if-empty -- sed -i -r "s:${shebang_regex}:\1:" || die
-
- local -a rados_classes=( "${ED}/usr/$(get_libdir)/rados-classes"/* )
- dostrip -x "${rados_classes[@]#${ED}}"
-}
-
-python_install() {
- local CMAKE_USE_DIR="${S}"
- DESTDIR="${ED}" cmake_build src/pybind/install
- DESTDIR="${ED}" cmake_build src/cephadm/install
-
- python_optimize
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
- tmpfiles_process ${PN}.conf
- udev_reload
-}
-
-pkg_postrm() {
- udev_reload
-}
diff --git a/sys-cluster/ceph/ceph-18.2.4-r2.ebuild b/sys-cluster/ceph/ceph-18.2.4-r2.ebuild
index 68cab6ebb980..9684c2b6a87a 100644
--- a/sys-cluster/ceph/ceph-18.2.4-r2.ebuild
+++ b/sys-cluster/ceph/ceph-18.2.4-r2.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64"
+KEYWORDS="amd64 ~arm64 ppc64"
CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
@@ -234,6 +234,7 @@ PATCHES=(
"${FILESDIR}/ceph-18.2.1-gcc14.patch"
"${FILESDIR}/ceph-18.2.1-gcc14-2.patch"
"${FILESDIR}/ceph-18.2.4-liburing.patch"
+ "${FILESDIR}/ceph-18.2.4-spdk.patch"
)
check-reqs_export_vars() {
diff --git a/sys-cluster/ceph/ceph-18.2.1-r3.ebuild b/sys-cluster/ceph/ceph-19.2.0-r1.ebuild
index 212dd1166fae..354bf3c96702 100644
--- a/sys-cluster/ceph/ceph-18.2.1-r3.ebuild
+++ b/sys-cluster/ceph/ceph-19.2.0-r1.ebuild
@@ -16,7 +16,8 @@ HOMEPAGE="https://ceph.com/"
SRC_URI="
https://download.ceph.com/tarballs/${P}.tar.gz
- parquet? ( https://github.com/xtensor-stack/xsimd/archive/${XSIMD_HASH}.tar.gz -> ceph-xsimd-${PV}.tar.gz )
+ parquet? ( https://github.com/xtensor-stack/xsimd/archive/${XSIMD_HASH}.tar.gz -> ceph-xsimd-${PV}.tar.gz
+ mirror://apache/arrow/arrow-17.0.0/apache-arrow-17.0.0.tar.gz )
"
LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
@@ -29,7 +30,7 @@ IUSE="
babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
jemalloc jaeger kafka kerberos ldap lttng +mgr +parquet pmdk rabbitmq
+radosgw rbd-rwl rbd-ssd rdma rgw-lua selinux +ssl spdk +sqlite +system-boost
- systemd +tcmalloc test +uring xfs zbd zfs
+ systemd +tcmalloc test +uring xfs zbd
"
IUSE+="$(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
@@ -48,6 +49,7 @@ DEPEND="
app-shells/bash:0
app-misc/jq:=
dev-cpp/gflags:=
+ dev-db/lmdb:=
dev-lang/jsonnet:=
dev-libs/libaio:=
dev-libs/libnl:3=
@@ -62,6 +64,7 @@ DEPEND="
dev-cpp/yaml-cpp:=
dev-python/natsort[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-vcs/git
net-dns/c-ares:=
net-libs/gnutls:=
sys-auth/oath-toolkit:=
@@ -87,7 +90,11 @@ DEPEND="
kerberos? ( virtual/krb5 )
ldap? ( net-nds/openldap:= )
lttng? ( dev-util/lttng-ust:= )
- parquet? ( dev-libs/re2:= )
+ parquet? (
+ >=app-arch/lz4-1.10
+ dev-cpp/xsimd
+ dev-libs/re2:=
+ )
pmdk? (
>=dev-libs/pmdk-1.10.0:=
sys-block/ndctl:=
@@ -106,7 +113,6 @@ DEPEND="
uring? ( sys-libs/liburing:= )
xfs? ( sys-fs/xfsprogs:= )
zbd? ( sys-block/libzbd:= )
- zfs? ( sys-fs/zfs:= )
"
BDEPEND="
amd64? ( dev-lang/nasm )
@@ -199,14 +205,12 @@ CMAKE_WARN_UNUSED_CLI=no
PATCHES=(
"${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
"${FILESDIR}/ceph-14.2.0-cflags.patch"
- "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
"${FILESDIR}/ceph-17.2.1-no-virtualenvs.patch"
"${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
"${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
"${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
"${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
"${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
- "${FILESDIR}/ceph-16.2.0-liburing.patch"
"${FILESDIR}/ceph-17.2.0-pybind-boost-1.74.patch"
"${FILESDIR}/ceph-17.2.0-findre2.patch"
"${FILESDIR}/ceph-18.2.0-system-opentelemetry.patch"
@@ -216,9 +220,6 @@ PATCHES=(
# https://bugs.gentoo.org/866165
"${FILESDIR}/ceph-17.2.5-suppress-cmake-warning.patch"
"${FILESDIR}/ceph-17.2.5-gcc13-deux.patch"
- "${FILESDIR}/ceph-17.2.5-boost-1.81.patch"
- # https://bugs.gentoo.org/901403
- "${FILESDIR}/ceph-17.2.6-link-boost-context.patch"
# https://bugs.gentoo.org/905626
"${FILESDIR}/ceph-17.2.6-arrow-flatbuffers-c++14.patch"
# https://bugs.gentoo.org/868891
@@ -228,7 +229,10 @@ PATCHES=(
"${FILESDIR}/ceph-18.2.0-cython3.patch"
# https://bugs.gentoo.org/936889
"${FILESDIR}/ceph-18.2.1-gcc14.patch"
- "${FILESDIR}/ceph-18.2.1-gcc14-2.patch"
+ "${FILESDIR}/ceph-18.2.4-liburing.patch"
+ "${FILESDIR}/ceph-18.2.4-spdk.patch"
+ # https://bugs.gentoo.org/941069
+ "${FILESDIR}/ceph-19.2.0-importlib.patch"
)
check-reqs_export_vars() {
@@ -288,10 +292,26 @@ src_prepare() {
if use spdk; then
# https://bugs.gentoo.org/871942
sed -i 's/[#]ifndef HAVE_ARC4RANDOM/#if 0/' src/spdk/lib/iscsi/iscsi.c || die
+ # unittests fail to build (??!?)
+ sed -i -e 's/CONFIG_UNIT_TESTS=y/CONFIG_UNIT_TESTS=n/' src/spdk/CONFIG || die
fi
# remove tests that need root access
rm src/test/cli/ceph-authtool/cap*.t || die
+
+ if use parquet; then
+ # hammer in newer version of parquet/arrow
+ rm -rf src/arrow/
+ mv "${WORKDIR}/apache-arrow-17.0.0" src/arrow || die
+ fi
+
+ # newer boost don't support no header-only
+ sed -i -e 's~#include <boost/url/src.hpp>~#include <boost/url.hpp>~' src/mds/BoostUrlImpl.cc || die
+
+ # everyone forgot to link to boost_url
+ sed -i -e 's~target_link_libraries(ceph-mds mds ${CMAKE_DL_LIBS} global-static ceph-common~target_link_libraries(ceph-mds mds ${CMAKE_DL_LIBS} global-static ceph-common boost_url~' src/CMakeLists.txt || die
+ sed -i -e 's/target_link_libraries(journal cls_journal_client)/target_link_libraries(journal cls_journal_client boost_url)/' src/journal/CMakeLists.txt || die
+ sed -i -e 's/${BLKID_LIBRARIES} ${CMAKE_DL_LIBS})/${BLKID_LIBRARIES} ${CMAKE_DL_LIBS} boost_url)/g' src/tools/cephfs/CMakeLists.txt || die
}
ceph_src_configure() {
@@ -323,7 +343,6 @@ ceph_src_configure() {
-DWITH_LIBCEPHSQLITE:BOOL=$(usex sqlite)
-DWITH_XFS:BOOL=$(usex xfs)
-DWITH_ZBD:BOOL=$(usex zbd)
- -DWITH_ZFS:BOOL=$(usex zfs)
-DENABLE_SHARED:BOOL=ON
-DALLOCATOR:STRING=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
-DWITH_SYSTEM_PMDK:BOOL=$(usex pmdk 'YES' "$(usex rbd-rwl '')")
@@ -336,6 +355,7 @@ ceph_src_configure() {
# use the bundled libfmt for now since they seem to constantly break their API
-DCMAKE_DISABLE_FIND_PACKAGE_fmt=ON
-Wno-dev
+ -DCEPHADM_BUNDLED_DEPENDENCIES=none
)
# this breaks when re-configuring for python impl
diff --git a/sys-cluster/ceph/ceph-18.2.4-r1.ebuild b/sys-cluster/ceph/ceph-19.2.0.ebuild
index 3eee4228c126..24a94bc4b788 100644
--- a/sys-cluster/ceph/ceph-18.2.4-r1.ebuild
+++ b/sys-cluster/ceph/ceph-19.2.0.ebuild
@@ -16,7 +16,8 @@ HOMEPAGE="https://ceph.com/"
SRC_URI="
https://download.ceph.com/tarballs/${P}.tar.gz
- parquet? ( https://github.com/xtensor-stack/xsimd/archive/${XSIMD_HASH}.tar.gz -> ceph-xsimd-${PV}.tar.gz )
+ parquet? ( https://github.com/xtensor-stack/xsimd/archive/${XSIMD_HASH}.tar.gz -> ceph-xsimd-${PV}.tar.gz
+ mirror://apache/arrow/arrow-17.0.0/apache-arrow-17.0.0.tar.gz )
"
LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
@@ -29,7 +30,7 @@ IUSE="
babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
jemalloc jaeger kafka kerberos ldap lttng +mgr +parquet pmdk rabbitmq
+radosgw rbd-rwl rbd-ssd rdma rgw-lua selinux +ssl spdk +sqlite +system-boost
- systemd +tcmalloc test +uring xfs zbd zfs
+ systemd +tcmalloc test +uring xfs zbd
"
IUSE+="$(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
@@ -48,6 +49,7 @@ DEPEND="
app-shells/bash:0
app-misc/jq:=
dev-cpp/gflags:=
+ dev-db/lmdb:=
dev-lang/jsonnet:=
dev-libs/libaio:=
dev-libs/libnl:3=
@@ -89,8 +91,9 @@ DEPEND="
ldap? ( net-nds/openldap:= )
lttng? ( dev-util/lttng-ust:= )
parquet? (
- <dev-cpp/abseil-cpp-20240116.2
- <dev-libs/re2-0.2024.07.02:=
+ >=app-arch/lz4-1.10
+ dev-cpp/xsimd
+ dev-libs/re2:=
)
pmdk? (
>=dev-libs/pmdk-1.10.0:=
@@ -110,7 +113,6 @@ DEPEND="
uring? ( sys-libs/liburing:= )
xfs? ( sys-fs/xfsprogs:= )
zbd? ( sys-block/libzbd:= )
- zfs? ( sys-fs/zfs:= )
"
BDEPEND="
amd64? ( dev-lang/nasm )
@@ -203,7 +205,6 @@ CMAKE_WARN_UNUSED_CLI=no
PATCHES=(
"${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
"${FILESDIR}/ceph-14.2.0-cflags.patch"
- "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
"${FILESDIR}/ceph-17.2.1-no-virtualenvs.patch"
"${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
"${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
@@ -219,9 +220,6 @@ PATCHES=(
# https://bugs.gentoo.org/866165
"${FILESDIR}/ceph-17.2.5-suppress-cmake-warning.patch"
"${FILESDIR}/ceph-17.2.5-gcc13-deux.patch"
- "${FILESDIR}/ceph-17.2.5-boost-1.81.patch"
- # https://bugs.gentoo.org/901403
- "${FILESDIR}/ceph-17.2.6-link-boost-context.patch"
# https://bugs.gentoo.org/905626
"${FILESDIR}/ceph-17.2.6-arrow-flatbuffers-c++14.patch"
# https://bugs.gentoo.org/868891
@@ -231,8 +229,8 @@ PATCHES=(
"${FILESDIR}/ceph-18.2.0-cython3.patch"
# https://bugs.gentoo.org/936889
"${FILESDIR}/ceph-18.2.1-gcc14.patch"
- "${FILESDIR}/ceph-18.2.1-gcc14-2.patch"
"${FILESDIR}/ceph-18.2.4-liburing.patch"
+ "${FILESDIR}/ceph-18.2.4-spdk.patch"
)
check-reqs_export_vars() {
@@ -292,10 +290,26 @@ src_prepare() {
if use spdk; then
# https://bugs.gentoo.org/871942
sed -i 's/[#]ifndef HAVE_ARC4RANDOM/#if 0/' src/spdk/lib/iscsi/iscsi.c || die
+ # unittests fail to build (??!?)
+ sed -i -e 's/CONFIG_UNIT_TESTS=y/CONFIG_UNIT_TESTS=n/' src/spdk/CONFIG || die
fi
# remove tests that need root access
rm src/test/cli/ceph-authtool/cap*.t || die
+
+ if use parquet; then
+ # hammer in newer version of parquet/arrow
+ rm -rf src/arrow/
+ mv "${WORKDIR}/apache-arrow-17.0.0" src/arrow || die
+ fi
+
+ # newer boost don't support no header-only
+ sed -i -e 's~#include <boost/url/src.hpp>~#include <boost/url.hpp>~' src/mds/BoostUrlImpl.cc || die
+
+ # everyone forgot to link to boost_url
+ sed -i -e 's~target_link_libraries(ceph-mds mds ${CMAKE_DL_LIBS} global-static ceph-common~target_link_libraries(ceph-mds mds ${CMAKE_DL_LIBS} global-static ceph-common boost_url~' src/CMakeLists.txt || die
+ sed -i -e 's/target_link_libraries(journal cls_journal_client)/target_link_libraries(journal cls_journal_client boost_url)/' src/journal/CMakeLists.txt || die
+ sed -i -e 's/${BLKID_LIBRARIES} ${CMAKE_DL_LIBS})/${BLKID_LIBRARIES} ${CMAKE_DL_LIBS} boost_url)/g' src/tools/cephfs/CMakeLists.txt || die
}
ceph_src_configure() {
@@ -327,7 +341,6 @@ ceph_src_configure() {
-DWITH_LIBCEPHSQLITE:BOOL=$(usex sqlite)
-DWITH_XFS:BOOL=$(usex xfs)
-DWITH_ZBD:BOOL=$(usex zbd)
- -DWITH_ZFS:BOOL=$(usex zfs)
-DENABLE_SHARED:BOOL=ON
-DALLOCATOR:STRING=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
-DWITH_SYSTEM_PMDK:BOOL=$(usex pmdk 'YES' "$(usex rbd-rwl '')")
@@ -340,6 +353,7 @@ ceph_src_configure() {
# use the bundled libfmt for now since they seem to constantly break their API
-DCMAKE_DISABLE_FIND_PACKAGE_fmt=ON
-Wno-dev
+ -DCEPHADM_BUNDLED_DEPENDENCIES=none
)
# this breaks when re-configuring for python impl
diff --git a/sys-cluster/ceph/files/ceph-14.2.0-cython-0.29.patch b/sys-cluster/ceph/files/ceph-14.2.0-cython-0.29.patch
deleted file mode 100644
index be133c121d0c..000000000000
--- a/sys-cluster/ceph/files/ceph-14.2.0-cython-0.29.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- ceph-13.2.1/cmake/modules/Distutils.cmake.old 2018-07-26 17:39:56.000000000 -0000
-+++ ceph-13.2.1/cmake/modules/Distutils.cmake 2018-12-24 05:43:51.566174070 -0000
-@@ -58,8 +62,13 @@
- function(distutils_install_cython_module name)
- get_property(compiler_launcher GLOBAL PROPERTY RULE_LAUNCH_COMPILE)
- get_property(link_launcher GLOBAL PROPERTY RULE_LAUNCH_LINK)
-- set(PY_CC "${compiler_launcher} ${CMAKE_C_COMPILER}")
-+ string(REPLACE " " ";" cflags ${CMAKE_C_FLAGS})
-+ list(APPEND cflags -iquote${CMAKE_SOURCE_DIR}/src/include -w)
-+ list(APPEND cflags -D'void0=dead_function\(void\)')
-+ list(APPEND cflags -D'__Pyx_check_single_interpreter\(ARG\)=ARG \#\# 0')
-+ string(REPLACE ";" " " cflags "${cflags}")
-+ set(PY_CC "${compiler_launcher} ${CMAKE_C_COMPILER} ${cflags}")
- set(PY_LDSHARED "${link_launcher} ${CMAKE_C_COMPILER} -shared")
- install(CODE "
- set(ENV{CC} \"${PY_CC}\")
- set(ENV{LDSHARED} \"${PY_LDSHARED}\")
diff --git a/sys-cluster/ceph/files/ceph-15.2.3-spdk-compile.patch b/sys-cluster/ceph/files/ceph-15.2.3-spdk-compile.patch
deleted file mode 100644
index 3ea6eadbb86f..000000000000
--- a/sys-cluster/ceph/files/ceph-15.2.3-spdk-compile.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- ceph-15.2.3.orig/cmake/modules/BuildSPDK.cmake 2020-05-29 09:24:50.000000000 -0700
-+++ ceph-15.2.3/cmake/modules/BuildSPDK.cmake 2020-06-01 10:36:14.629306433 -0700
-@@ -1,5 +1,5 @@
- macro(build_spdk)
-- set(DPDK_DIR ${CMAKE_BINARY_DIR}/src/dpdk)
-+ set(DPDK_DIR ${CMAKE_SOURCE_DIR}/src/dpdk)
- if(NOT TARGET dpdk-ext)
- include(BuildDPDK)
- build_dpdk(${DPDK_DIR})
diff --git a/sys-cluster/ceph/files/ceph-16.2.10-flags.patch b/sys-cluster/ceph/files/ceph-16.2.10-flags.patch
deleted file mode 100644
index 79002b3a5fce..000000000000
--- a/sys-cluster/ceph/files/ceph-16.2.10-flags.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/cmake/modules/Distutils.cmake b/cmake/modules/Distutils.cmake
-index 01a6fc500c8..9eb4658482f 100644
---- a/cmake/modules/Distutils.cmake
-+++ b/cmake/modules/Distutils.cmake
-@@ -90,7 +90,8 @@ function(distutils_add_cython_module target name src)
- CXX="${PY_CXX}"
- LDSHARED="${PY_LDSHARED}"
- OPT=\"-DNDEBUG -g -fwrapv -w\"
-- LDFLAGS=-L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
-+ CFLAGS=${CMAKE_C_FLAGS}
-+ LDFLAGS=-L${CMAKE_LIBRARY_OUTPUT_DIRECTORY}\ ${CMAKE_LINKER_FLAGS}\ ${CMAKE_SHARED_LINKER_FLAGS}
- CYTHON_BUILD_DIR=${CMAKE_CURRENT_BINARY_DIR}
- CEPH_LIBDIR=${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
- ${Python3_EXECUTABLE} ${setup_py}
diff --git a/sys-cluster/ceph/files/ceph-16.2.14-gcc13.patch b/sys-cluster/ceph/files/ceph-16.2.14-gcc13.patch
deleted file mode 100644
index 7f84a19706dc..000000000000
--- a/sys-cluster/ceph/files/ceph-16.2.14-gcc13.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-diff --git a/src/common/Cycles.h b/src/common/Cycles.h
-index 16e0aa67fc1..791be43469c 100644
---- a/src/common/Cycles.h
-+++ b/src/common/Cycles.h
-@@ -29,8 +29,9 @@
- */
-
-
--#ifndef CEPH_CYCLES_H
--#define CEPH_CYCLES_H
-+#pragma once
-+
-+#include <cstdint>
-
- /**
- * This class provides static methods that read the fine-grain CPU
-@@ -112,4 +113,3 @@ private:
- }
- };
-
--#endif // CEPH_CYCLES_H
-diff --git a/src/common/subsys_types.h b/src/common/subsys_types.h
-index 52171809b23..1a2ab796b6d 100644
---- a/src/common/subsys_types.h
-+++ b/src/common/subsys_types.h
-@@ -53,7 +53,7 @@ ceph_subsys_get_as_array() {
- #undef DEFAULT_SUBSYS
- }
-
--constexpr static std::uint8_t
-+constexpr static uint8_t
- ceph_subsys_get_max_default_level(const std::size_t subidx) {
- const auto item = ceph_subsys_get_as_array()[subidx];
- return std::max(item.log_level, item.gather_level);
-diff --git a/src/librbd/api/PoolMetadata.h b/src/librbd/api/PoolMetadata.h
-index c0a8173596e..8d982879aa9 100644
---- a/src/librbd/api/PoolMetadata.h
-+++ b/src/librbd/api/PoolMetadata.h
-@@ -9,6 +9,7 @@
-
- #include <map>
- #include <string>
-+#include <cstdint>
-
- namespace librbd {
-
-diff --git a/src/msg/async/crypto_onwire.h b/src/msg/async/crypto_onwire.h
-index 55f7550868f..2213c21d08d 100644
---- a/src/msg/async/crypto_onwire.h
-+++ b/src/msg/async/crypto_onwire.h
-@@ -95,7 +95,7 @@ public:
- // Transmitter can append extra bytes of ciphertext at the -final step.
- // This method return how much was added, and thus let client translate
- // plaintext size into ciphertext size to grab from wire.
-- virtual std::uint32_t get_extra_size_at_final() = 0;
-+ virtual uint32_t get_extra_size_at_final() = 0;
-
- // Instance of RxHandler must be reset before doing any decrypt-update
- // step. This applies also to situation when decrypt-final was already
-diff --git a/src/test/librados/op_speed.cc b/src/test/librados/op_speed.cc
-index 90c7bdac571..9452da6dcc9 100644
---- a/src/test/librados/op_speed.cc
-+++ b/src/test/librados/op_speed.cc
-@@ -9,7 +9,7 @@ int main() {
- for (int i = 0; i < to_create; ++i) {
- librados::ObjectReadOperation op;
- bufferlist bl;
-- std::uint64_t sz;
-+ uint64_t sz;
- struct timespec tm;
- std::map<std::string, ceph::buffer::list> xattrs;
- std::map<std::string, ceph::buffer::list> omap;
-diff --git a/src/test/mon/test_log_rss_usage.cc b/src/test/mon/test_log_rss_usage.cc
-index f6e85f414c8..9769cabd884 100644
---- a/src/test/mon/test_log_rss_usage.cc
-+++ b/src/test/mon/test_log_rss_usage.cc
-@@ -5,6 +5,7 @@
- #include <string>
- #include <iostream>
- #include <fstream>
-+#include <cstdint>
- #include <stdlib.h>
- #include <stdio.h>
- #include <unistd.h>
diff --git a/sys-cluster/ceph/files/ceph-16.2.2-system-zstd.patch b/sys-cluster/ceph/files/ceph-16.2.2-system-zstd.patch
deleted file mode 100644
index c50cca4e2ca0..000000000000
--- a/sys-cluster/ceph/files/ceph-16.2.2-system-zstd.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-diff --git a/src/compressor/zstd/CMakeLists.txt b/src/compressor/zstd/CMakeLists.txt
-index b53b0d9444..5bf5796da2 100644
---- a/src/compressor/zstd/CMakeLists.txt
-+++ b/src/compressor/zstd/CMakeLists.txt
-@@ -1,34 +1,11 @@
- # zstd
-
--# libzstd - build it statically
--set(ZSTD_C_FLAGS "-fPIC -Wno-unused-variable -O3")
--
--include(ExternalProject)
--ExternalProject_Add(zstd_ext
-- SOURCE_DIR ${CMAKE_SOURCE_DIR}/src/zstd/build/cmake
-- CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-- -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-- -DCMAKE_C_FLAGS=${ZSTD_C_FLAGS}
-- -DCMAKE_AR=${CMAKE_AR}
-- -DCMAKE_POSITION_INDEPENDENT_CODE=${ENABLE_SHARED}
-- -G${CMAKE_GENERATOR}
-- BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/libzstd
-- BUILD_COMMAND ${CMAKE_COMMAND} --build <BINARY_DIR> --target libzstd_static
-- BUILD_BYPRODUCTS "${CMAKE_CURRENT_BINARY_DIR}/libzstd/lib/libzstd.a"
-- INSTALL_COMMAND "true")
--
--add_library(zstd STATIC IMPORTED)
--set_target_properties(zstd PROPERTIES
-- INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_SOURCE_DIR}/src/zstd/lib"
-- IMPORTED_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/libzstd/lib/libzstd.a")
--add_dependencies(zstd zstd_ext)
--
- set(zstd_sources
- CompressionPluginZstd.cc
- )
-
- add_library(ceph_zstd SHARED ${zstd_sources})
--target_link_libraries(ceph_zstd PRIVATE zstd $<$<PLATFORM_ID:Windows>:ceph-common>)
-+target_link_libraries(ceph_zstd zstd)
- set_target_properties(ceph_zstd PROPERTIES
- VERSION 2.0.0
- SOVERSION 2
diff --git a/sys-cluster/ceph/files/ceph-16.2.8-no-virtualenvs.patch b/sys-cluster/ceph/files/ceph-16.2.8-no-virtualenvs.patch
deleted file mode 100644
index 79aee882c2a4..000000000000
--- a/sys-cluster/ceph/files/ceph-16.2.8-no-virtualenvs.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-diff --git a/cmake/modules/AddCephTest.cmake b/cmake/modules/AddCephTest.cmake
-index cd661be16c9..7183c2f2138 100644
---- a/cmake/modules/AddCephTest.cmake
-+++ b/cmake/modules/AddCephTest.cmake
-@@ -55,7 +55,6 @@ endfunction()
-
- function(add_tox_test name)
- set(test_name run-tox-${name})
-- set(venv_path ${CEPH_BUILD_VIRTUALENV}/${name}-virtualenv)
- cmake_parse_arguments(TOXTEST "" "TOX_PATH" "TOX_ENVS" ${ARGN})
- if(DEFINED TOXTEST_TOX_PATH)
- set(tox_path ${TOXTEST_TOX_PATH})
-@@ -68,14 +67,6 @@ function(add_tox_test name)
- list(APPEND tox_envs py3)
- endif()
- string(REPLACE ";" "," tox_envs "${tox_envs}")
-- add_custom_command(
-- OUTPUT ${venv_path}/bin/activate
-- COMMAND ${CMAKE_SOURCE_DIR}/src/tools/setup-virtualenv.sh --python="${Python3_EXECUTABLE}" ${venv_path}
-- WORKING_DIRECTORY ${tox_path}
-- COMMENT "preparing venv for ${name}")
-- add_custom_target(${name}-venv
-- DEPENDS ${venv_path}/bin/activate)
-- add_dependencies(tests ${name}-venv)
- add_test(
- NAME ${test_name}
- COMMAND ${CMAKE_SOURCE_DIR}/src/script/run_tox.sh
-diff --git a/src/ceph-volume/CMakeLists.txt b/src/ceph-volume/CMakeLists.txt
-index 9166553dc73..9a6c87595b9 100644
---- a/src/ceph-volume/CMakeLists.txt
-+++ b/src/ceph-volume/CMakeLists.txt
-@@ -8,22 +8,6 @@ if(FREEBSD)
- add_subdirectory(plugin/zfs)
- endif()
-
--# Required for running ceph-volume inventory in a vstart environment
--set(CEPH_VOLUME_VIRTUALENV ${CEPH_BUILD_VIRTUALENV}/ceph-volume-virtualenv)
--
--add_custom_command(
-- OUTPUT ${CEPH_VOLUME_VIRTUALENV}/bin/python
-- COMMAND ${CMAKE_SOURCE_DIR}/src/tools/setup-virtualenv.sh --python=${Python3_EXECUTABLE} ${CEPH_VOLUME_VIRTUALENV}
-- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/src/ceph-volume
-- COMMENT "ceph-volume venv is being created")
--
--add_custom_command(
-- OUTPUT ${CEPH_VOLUME_VIRTUALENV}/bin/ceph-volume
-- DEPENDS ${CEPH_VOLUME_VIRTUALENV}/bin/python
-- COMMAND . ${CEPH_VOLUME_VIRTUALENV}/bin/activate && ${CEPH_VOLUME_VIRTUALENV}/bin/python setup.py develop && deactivate
-- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/src/ceph-volume
-- COMMENT "${CMAKE_SOURCE_DIR}/src/ceph-volume")
--
- add_custom_target(ceph-volume-venv-setup
- DEPENDS ${CEPH_VOLUME_VIRTUALENV}/bin/ceph-volume)
-
-diff --git a/src/pybind/mgr/dashboard/CMakeLists.txt b/src/pybind/mgr/dashboard/CMakeLists.txt
-index 0c8d46d65ee..67a618f95aa 100644
---- a/src/pybind/mgr/dashboard/CMakeLists.txt
-+++ b/src/pybind/mgr/dashboard/CMakeLists.txt
-@@ -5,9 +5,6 @@ function(add_npm_command)
- set(multi_kw COMMAND DEPENDS)
- cmake_parse_arguments(NC "${options}" "${single_kw}" "${multi_kw}" ${ARGN})
- string(REPLACE ";" " " command "${NC_COMMAND}")
-- if(NC_NODEENV)
-- string(REGEX REPLACE "^(.*(npm|npx) .*)$" ". ${mgr-dashboard-nodeenv-dir}/bin/activate && \\1 && deactivate" command ${command})
-- endif()
- string(REPLACE " " ";" command "${command}")
- add_custom_command(
- OUTPUT "${NC_OUTPUT}"
-@@ -51,11 +48,8 @@ else(WITH_SYSTEM_NPM)
- set(node_mirror_opt "--mirror=$ENV{NODE_MIRROR}")
- endif()
- add_custom_command(
-- OUTPUT "${mgr-dashboard-nodeenv-dir}/bin/npm"
-- COMMAND ${CMAKE_SOURCE_DIR}/src/tools/setup-virtualenv.sh --python=${MGR_PYTHON_EXECUTABLE} ${mgr-dashboard-nodeenv-dir}
-- COMMAND ${mgr-dashboard-nodeenv-dir}/bin/pip install nodeenv
-- COMMAND ${mgr-dashboard-nodeenv-dir}/bin/nodeenv --verbose ${node_mirror_opt} -p --node=12.18.2
-- COMMAND mkdir ${mgr-dashboard-nodeenv-dir}/.npm
-+ OUTPUT "/bin/npm"
-+ COMMAND /bin/nodeenv ${node_mirror_opt} -p --node=12.18.2
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- COMMENT "dashboard nodeenv is being installed"
- )
diff --git a/sys-cluster/ceph/files/ceph-18.2.4-spdk.patch b/sys-cluster/ceph/files/ceph-18.2.4-spdk.patch
new file mode 100644
index 000000000000..27fb3c6eaa89
--- /dev/null
+++ b/sys-cluster/ceph/files/ceph-18.2.4-spdk.patch
@@ -0,0 +1,13 @@
+diff --git a/cmake/modules/BuildSPDK.cmake b/cmake/modules/BuildSPDK.cmake
+index d6ce97e..0c49e05 100644
+--- a/cmake/modules/BuildSPDK.cmake
++++ b/cmake/modules/BuildSPDK.cmake
+@@ -51,6 +51,8 @@ macro(build_spdk)
+ --with-dpdk=${DPDK_DIR}
+ --without-isal
+ --without-vhost
++ --disable-tests
++ --disable-unit-tests
+ --target-arch=${target_arch}
+ # unset $CFLAGS, otherwise it will interfere with how SPDK sets
+ # its include directory.
diff --git a/sys-cluster/ceph/files/ceph-19.2.0-importlib.patch b/sys-cluster/ceph/files/ceph-19.2.0-importlib.patch
new file mode 100644
index 000000000000..422d2dc87c20
--- /dev/null
+++ b/sys-cluster/ceph/files/ceph-19.2.0-importlib.patch
@@ -0,0 +1,45 @@
+https://bugs.gentoo.org/941069
+https://tracker.ceph.com/issues/68032
+https://github.com/ceph/ceph/pull/59739
+
+From 12cc90a8dac62824c9326f5a4b31744c3f2bf10b Mon Sep 17 00:00:00 2001
+From: Peter Sabaini <peter.sabaini@canonical.com>
+Date: Wed, 11 Sep 2024 16:56:50 +0200
+Subject: [PATCH] ceph-volume: fix importlib.metadata compat
+
+The importlib.metadata library removed older shims in releases >5.0.0
+where EntryPoints objects use .select() instead of dict-like access.
+
+Fixes: https://tracker.ceph.com/issues/68032
+
+Signed-off-by: Peter Sabaini <peter.sabaini@canonical.com>
+--- a/src/ceph-volume/ceph_volume/main.py
++++ b/src/ceph-volume/ceph_volume/main.py
+@@ -9,15 +9,25 @@
+ # `entry_points` from `importlib.metadata` does not.
+ try:
+ from importlib.metadata import entry_points
++ from importlib.metadata import EntryPoints
+
+ def get_entry_points(group: str): # type: ignore
+- return entry_points().get(group, []) # type: ignore
++ eps = entry_points()
++ if isinstance(eps, EntryPoints) and hasattr(eps, 'select'):
++ # New importlib.metadata uses .select()
++ return eps.select(group=group)
++ else:
++ # Fallback to older EntryPoints that returns dicts
++ return eps.get(group, []) # type: ignore
++
+ except ImportError:
++ # Fallback to `pkg_resources` for older versions
+ from pkg_resources import iter_entry_points as entry_points # type: ignore
+
+ def get_entry_points(group: str): # type: ignore
+ return entry_points(group=group) # type: ignore
+
++
+ from ceph_volume.decorators import catches
+ from ceph_volume import log, devices, configuration, conf, exceptions, terminal, inventory, drive_group, activate
+
+
diff --git a/sys-cluster/ceph/files/ceph.initd-r13 b/sys-cluster/ceph/files/ceph.initd-r13
deleted file mode 100644
index 2d158ad80be3..000000000000
--- a/sys-cluster/ceph/files/ceph.initd-r13
+++ /dev/null
@@ -1,115 +0,0 @@
-#!/sbin/openrc-run
-
-# make sure /etc/conf.d/ceph gets loaded for ceph-mon etc
-_CONFD_FILE="${RC_SERVICE%/*}/../conf.d/${RC_SVCNAME%-*}"
-if [ -r "${_CONFD_FILE}" ]; then
- . "${_CONFD_FILE}" || exit 1
-fi
-
-: "${ceph_conf:=/etc/ceph/ceph.conf}"
-daemon_type="${RC_SVCNAME#ceph-}"
-daemon_type="${daemon_type%%.*}"
-daemon_id="${RC_SVCNAME#ceph-*.}"
-daemon_id="${daemon_id:-0}"
-: "${rundir:=/run/ceph}"
-: "${user:=ceph}"
-: "${group:=ceph}"
-: "${rc_ulimit:=-n 1048576 -u 1048576}"
-
-pidfile="${rundir}/supervisor-${daemon_type}.${daemon_id}.pid"
-daemon_pidfile="${rundir}/${daemon_type}.${daemon_id}.pid"
-
-command="/usr/bin/${RC_SVCNAME%%.*}"
-command_args="-i ${daemon_id} --pid-file ${daemon_pidfile} -c ${ceph_conf}"
-extra_commands="${extra_commands} reload"
-command_args_foreground="--foreground"
-
-retry="${CEPH_TERMTIMEOUT:-TERM/120/KILL/5}"
-start_stop_daemon_args="--user ${user} --group ${group}"
-supervise_daemon_args="--user ${user} --group ${group}"
-
-: "${supervisor:=supervise-daemon}"
-: "${stdout:=/var/log/ceph/console/ceph}"
-: "${stderr:=/var/log/ceph/console/ceph}"
-: "${respawn_delay:=10}"
-: "${respawn_max:=5}"
-: "${respawn_period:=1800}"
-
-: "${osd_respawn_delay:=15}"
-: "${osd_respawn_max:=10}"
-
-: "${radosgw_respawn_max:=5}"
-: "${radosgw_respawn_period:=30}"
-
-depend() {
- use dns logger
- after net ntpd ntp-client chronyd
- before netmount
-}
-
-is_type_valid() {
- case ${daemon_type} in
- mon|mds|osd|mgr|radosgw) return 0;;
- *) return 1;;
- esac
-}
-
-start_pre() {
- local log_dir
- export CEPH_CONF="${ceph_conf}"
-
- checkpath -d -q -o "${user}:${group}" "${rundir}"
-
- if ! is_type_valid ;then
- eerror "Please give valid Ceph Server Type: mds, mon, osd"
- return 1
-
- elif pgrep -f "[c]eph-${daemon_type} -i ${daemon_id} "; then
- eerror "${daemon_type}.${daemon_id} is still running, refusing to start"
- return 1
- fi
-
- if [ -n "${bluestore_osd_fsid}" ]; then
- einfo "Mounting Bluestore"
- ceph-volume lvm activate "${daemon_id}" "${bluestore_osd_fsid}" --no-systemd
- fi
-
- if [ "${daemon_type}" = radosgw ] && [ "${RADOSGW_WANT_NAME_PARAM}" = y ]; then
- command_args="${command_args} --name client.${daemon_id}"
- fi
-
- local arg_name arg_val repl_arg_name
- for arg_name in stdout stderr respawn_delay respawn_max respawn_period; do
- eval arg_val="\${${daemon_type}_${arg_name}}"
-
- if [ -z "${arg_val}" ]; then
- eval arg_val="\${${arg_name}}"
- else
- eval "${arg_name}=\"${arg_val}\""
- fi
-
- if [ "${arg_name}" = "stderr" ] || [ "${arg_name}" = "stdout" ]; then
- local log_file log_postfix
- log_postfix=".${daemon_id}-${arg_name}.log"
- log_file="${arg_val}"
-
- if [ "${log_file}" != /dev/null ]; then
- log_file="${log_file}${log_postfix}"
-
- log_dir="$(dirname "${log_file}")"
- checkpath -m 0755 -o "${user}:${group}" -d "${log_dir}"
- fi
-
- repl_arg_name="$(printf -- "%s\n" "${arg_name}" | tr _ -)"
- supervise_daemon_args="${supervise_daemon_args} --${repl_arg_name}=${log_file}"
- fi
- done
-}
-
-reload() {
- ebegin "Reloading Ceph ${daemon_type}.${daemon_id}"
- start-stop-daemon --signal 1 "${start_stop_daemon_args}"
- eend ${?}
-}
-
-# vim:ft=gentoo-init-d:ts=4:sts=4:sw=4:noet:
diff --git a/sys-cluster/ceph/metadata.xml b/sys-cluster/ceph/metadata.xml
index ee5e501736a8..651eacea4f5a 100644
--- a/sys-cluster/ceph/metadata.xml
+++ b/sys-cluster/ceph/metadata.xml
@@ -24,7 +24,6 @@
<flag name="kafka">Rados Gateway's pubsub support for Kafka push endpoint</flag>
<flag name="lttng">Add support for LTTng</flag>
<flag name="mgr">Build the ceph-mgr daemon</flag>
- <flag name="numa">Use <pkg>sys-process/numactl</pkg> for numa support in rocksdb</flag>
<flag name="parquet">Support for s3 select on parquet objects</flag>
<flag name="pmdk">Enable PMDK libraries</flag>
<flag name="rabbitmq">Use rabbitmq-c to build rgw amqp push endpoint</flag>
diff --git a/sys-cluster/cilium-cli/Manifest b/sys-cluster/cilium-cli/Manifest
index 7c9469e26722..995e7c37059e 100644
--- a/sys-cluster/cilium-cli/Manifest
+++ b/sys-cluster/cilium-cli/Manifest
@@ -1,2 +1,3 @@
DIST cilium-cli-0.12.1.tar.gz 20888710 BLAKE2B 70444c6aeab762f2107a6e38c28157913d623059e6e95819dcbf9de657e573ffe10bc11f6fac68a2fed589d44b53cd1ad31266002479a253fe6a43db010022b9 SHA512 337a62dce0f7947da46ec9b6162c5c9a6d81770f40ce88413e29be561eef9e91824552356646c357166b474f9fbb40c916eeae4061833d1d9b0dec821ec75c7c
DIST cilium-cli-0.13.0.tar.gz 23869352 BLAKE2B 49498257f73b7e854ec8683c34919ea6d93798a5ebcb6b7c50ebb9fcffd48751d67636f6f0f6e45d307fcf5d24bc3269db682995e311bdad40eb1e981cf3379f SHA512 cb249016ebe9da8780216cf3d7a56cdb98f28498c508ebca654f527530130e2891013d7457d13d5e16bccbde87e6f59ac6de2b807dc34bf77cc6caf8f83e07a6
+DIST cilium-cli-0.16.16.tar.gz 36087097 BLAKE2B 5bb3939d300e87191d6cba58da2e6dd399836514ec827a0311107ce75611e0b69662295a766f93d464ea95315005aedb466f70ec1e070a63427bcccf29aab7e4 SHA512 1b9f72eb00410c740803ac8b51ed84cb80bbb51b9532d546939b6034caf58dfa8b1255e3d1594e4f17a7ae906b066fd41aa6b118c36612a1fecf6b91ed27c815
diff --git a/sys-cluster/cilium-cli/cilium-cli-0.16.16.ebuild b/sys-cluster/cilium-cli/cilium-cli-0.16.16.ebuild
new file mode 100644
index 000000000000..45d0f8a60b3e
--- /dev/null
+++ b/sys-cluster/cilium-cli/cilium-cli-0.16.16.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Next generation command line interface for cilium"
+HOMEPAGE="https://cilium.io"
+SRC_URI="https://github.com/cilium/cilium-cli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_prepare() {
+ default
+ sed -i -e 's/-race//' Makefile || die
+}
+
+src_compile() {
+ emake VERSION=v${PV}
+}
+
+src_test() {
+ emake test
+}
+
+src_install() {
+ dobin cilium
+}
diff --git a/sys-cluster/galera/Manifest b/sys-cluster/galera/Manifest
index 076d58bd2ab3..6e84be83794d 100644
--- a/sys-cluster/galera/Manifest
+++ b/sys-cluster/galera/Manifest
@@ -1,2 +1,3 @@
DIST galera-26.4.18.tar.gz 1542330 BLAKE2B 5a0d8b1929a72ce36f521ba3404b9251503226ba041970bc67f9d25b2b55c2daa2128500117366273541578eb1d7fd213d5f8336cba705650c55b70125dcbf0d SHA512 75ae75c0bac1b2ba5d0230af9b0e14b5e8661f20f84cee3800b2e979c3ef53c9dd5ce8cebcec1ae9205b5dec28f94f690854cce32a10e9f58d8aa55725fd59c6
DIST galera-26.4.19.tar.gz 1548419 BLAKE2B fb4065a501412921d9a9b46cf9ce6cdd69616fe11a0cd9bbba17adb640af4f93d517514c31ccb00fbd7591ee624f6a4a6c1a9ba5552799276199cbb4fdb5bae4 SHA512 1d6e4d1adadbee411cb82335e4913bc28e009fa0e9ce150cf1d12cc85ce03cb00337ff52a6bad3a72315d42bf1daad1fe93b3fc810e109a762bb1a88f8c69cfe
+DIST galera-26.4.20.tar.gz 1551246 BLAKE2B 10231289b5c1adc6b4f427ed362877089c0b0de6cf78b5c1ef249fc37f5a407d539d98a9df12d1a5d33db5f6aeea88ec07a2729ba465649edef584fca9edb0e2 SHA512 35b2606c60a15bd5ba3fd5e9b921f96726def270f54225d8e2dc2ec6a563857c038229d1364d086283efaa6dd85973b0b1d061f8f81a353d9071585012627be9
diff --git a/sys-cluster/galera/galera-26.4.18.ebuild b/sys-cluster/galera/galera-26.4.18.ebuild
index 146cc100d7f9..36ac58acb736 100644
--- a/sys-cluster/galera/galera-26.4.18.ebuild
+++ b/sys-cluster/galera/galera-26.4.18.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2 BSD"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ia64 ~ppc ppc64 x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 x86"
IUSE="garbd ssl"
RDEPEND="
diff --git a/sys-cluster/galera/galera-26.4.19.ebuild b/sys-cluster/galera/galera-26.4.19.ebuild
index 2defbd8cbff9..e6e4f763b408 100644
--- a/sys-cluster/galera/galera-26.4.19.ebuild
+++ b/sys-cluster/galera/galera-26.4.19.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2 BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 ~x86"
IUSE="garbd ssl"
RDEPEND="
diff --git a/sys-cluster/galera/galera-26.4.20.ebuild b/sys-cluster/galera/galera-26.4.20.ebuild
new file mode 100644
index 000000000000..e6e4f763b408
--- /dev/null
+++ b/sys-cluster/galera/galera-26.4.20.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_PN="${PN}-4"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Synchronous multi-master replication engine that provides the wsrep API"
+HOMEPAGE="https://galeracluster.com"
+SRC_URI="
+ https://releases.galeracluster.com/${MY_PN}.$(ver_cut 3)/source/${MY_P}.tar.gz
+ -> ${P}.tar.gz
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 ~x86"
+IUSE="garbd ssl"
+
+RDEPEND="
+ ssl? ( dev-libs/openssl:= )
+ dev-libs/boost:=
+"
+# TODO: Make check dep optional
+DEPEND="
+ ${RDEPEND}
+ >=dev-cpp/asio-1.22
+ dev-libs/check
+"
+
+src_prepare() {
+ cmake_src_prepare
+
+ # Remove bundled dev-cpp/asio
+ rm -r asio || die "Failed to remove bundled asio"
+
+ # Remove optional garbd daemon
+ if ! use garbd ; then
+ rm -r garb || die "Failed to remove garbd daemon"
+ sed -i '/add_subdirectory(garb)/d' CMakeLists.txt || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DGALERA_WITH_SSL=$(usex ssl)
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ dodoc scripts/packages/README scripts/packages/README-MySQL
+
+ if use garbd ; then
+ newconfd "${FILESDIR}"/garb.cnf garbd
+ newinitd "${FILESDIR}"/garb.init garbd
+ doman man/garbd.8
+
+ pushd "${BUILD_DIR}" || die
+ dobin garb/garbd
+ fi
+
+ pushd "${BUILD_DIR}" || die
+ exeinto /usr/$(get_libdir)/galera
+ doexe libgalera_smm.so
+}
diff --git a/sys-cluster/gmqtt/Manifest b/sys-cluster/gmqtt/Manifest
index 63dc1b4dff8c..881b112d7619 100644
--- a/sys-cluster/gmqtt/Manifest
+++ b/sys-cluster/gmqtt/Manifest
@@ -1,4 +1,2 @@
-DIST gmqtt-0.4.1-deps.tar.xz 50641100 BLAKE2B e2df0588178f3cee0f96a15c867352d9718deb9ed1b8acb0b0a26bf512308c40797275deee04be3f35d8725018b522aa807638ed17f300c337a062012fddc16d SHA512 6c77dcb5bc6c029296ac8715a5796f20091273e5b322fedbe952086cb81e5abf5d5fbe5b0005f22d674565dff1d3b9dbaf84812ec22203ef1b6ccd629405115d
-DIST gmqtt-0.4.1.tar.gz 338368 BLAKE2B 4114816d4e60f6421fcea2cb33006f416143040bc85eb97630fcbd588c9fb2e11cd0d1f9e6e56f8ad8461653a5d7772971e4978a3dfca357335309b7c9e138ed SHA512 cad45a7d3d9033d9d345c72bd0568c4e6115964d980ed02451da3fb6fe7fb92785ccc39b7777f1632c81242b269f5e61caba18255315e12f49d5debcfc1c105a
DIST gmqtt-0.5.0-deps.tar.xz 2274132 BLAKE2B c4eef28fbcf743128e9fee3f62106405343d8a6daeb018f168a16ee67f0028669a04d457ac6127e7528248c69ff38a5f469bbd242f3ce39178f8a44994706649 SHA512 d3f6036652d7185306f629db5660245bdb0d4e0f2bfa64ccf4e306bc725cfb2d3757097c32f495595b21ea8750ab7f0907b93b38c8512811e037f65fc38af852
DIST gmqtt-0.5.0.tar.gz 256487 BLAKE2B ce1d032cf13806381c2c0d42aec5592c74b86e938d284252fd01bd23f7eb8b0c0e9b59558be5284b780edd778035c9755a0d6c6da30ccd851c8b3a06f6c49289 SHA512 8c696a54386282b51ce6a835fba787f465f862afd5f553fc0039b8e01a6a03660a4103deed346c683e4b0fe98fd3ac4105a3602f28f416f5c544dc6ee960645a
diff --git a/sys-cluster/gmqtt/gmqtt-0.4.1.ebuild b/sys-cluster/gmqtt/gmqtt-0.4.1.ebuild
deleted file mode 100644
index f55a01b13d5f..000000000000
--- a/sys-cluster/gmqtt/gmqtt-0.4.1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit go-module systemd
-
-DESCRIPTION="MQTT broker library with cluster support that implements MQTT V5.0 and V3.1.1"
-HOMEPAGE="https://github.com/DrmagicE/gmqtt"
-SRC_URI="https://github.com/DrmagicE/gmqtt/archive/v${PV}.tar.gz -> ${P}.tar.gz
- https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
-
-LICENSE="MIT Apache-2.0 BSD BSD-2 ISC MPL-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-RESTRICT+=" test"
-
-src_compile() {
- GOBIN=${S}/bin CGO_ENABLED=0 go install ./... || die
-}
-
-src_install() {
- dobin bin/{gmqctl,gmqttd}
- keepdir /etc/${PN}
- systemd_dounit "${FILESDIR}/${PN}d.service"
- newinitd "${FILESDIR}/initd" "${PN}d"
- newconfd "${FILESDIR}/confd" "${PN}d"
- insinto /etc/logrotate.d
- newins "${FILESDIR}/logrotated" "${PN}"
- docompress -x /usr/share/doc/${PF}/default_config.yml
- dodoc CONTRIBUTING.md README*.md cmd/gmqttd/default_config.yml
- docinto federation
- dodoc -r plugin/federation/{examples,README.md}
-}
-
-pkg_postinst() {
- local config=/etc/gmqtt/gmqttd.yml dest=${ROOT}/
- if [[ ! ${REPLACING_VERSIONS} && ! -e ${ROOT}${config} ]]; then
- einfo "Copying default config to ${config} for first install"
- cp "${ROOT}/usr/share/doc/${PF}/default_config.yml" "${ROOT}${config}"
- fi
-}
diff --git a/sys-cluster/gmqtt/gmqtt-0.5.0.ebuild b/sys-cluster/gmqtt/gmqtt-0.5.0.ebuild
index b43ae3df0986..35a980655fed 100644
--- a/sys-cluster/gmqtt/gmqtt-0.5.0.ebuild
+++ b/sys-cluster/gmqtt/gmqtt-0.5.0.ebuild
@@ -12,7 +12,7 @@ SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
LICENSE="MIT Apache-2.0 BSD BSD-2 ISC MPL-2.0"
SLOT="0"
KEYWORDS="~amd64"
-IUSE=""
+
RESTRICT="test"
src_compile() {
diff --git a/sys-cluster/ipvsadm/ipvsadm-1.31-r1.ebuild b/sys-cluster/ipvsadm/ipvsadm-1.31-r1.ebuild
index 508b16f130c0..ddbb89f39aac 100644
--- a/sys-cluster/ipvsadm/ipvsadm-1.31-r1.ebuild
+++ b/sys-cluster/ipvsadm/ipvsadm-1.31-r1.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://kernel.org/pub/linux/utils/kernel/ipvsadm/ipvsadm-${PV}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~ia64 ~ppc ppc64 ~s390 sparc x86"
+KEYWORDS="amd64 ~ppc ppc64 ~s390 sparc x86"
IUSE="static-libs"
RDEPEND="
diff --git a/sys-cluster/keepalived/keepalived-2.2.7.ebuild b/sys-cluster/keepalived/keepalived-2.2.7.ebuild
index 4c9febd8522b..dcd420371216 100644
--- a/sys-cluster/keepalived/keepalived-2.2.7.ebuild
+++ b/sys-cluster/keepalived/keepalived-2.2.7.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://www.keepalived.org/software/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 ~hppa ~ia64 ~ppc ppc64 ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 ~hppa ~ppc ppc64 ~s390 ~sparc x86"
IUSE="+bfd dbus json regex snmp systemd"
RDEPEND="
diff --git a/sys-cluster/keepalived/keepalived-2.2.8.ebuild b/sys-cluster/keepalived/keepalived-2.2.8.ebuild
index c3b028be24d7..3e2ec905a005 100644
--- a/sys-cluster/keepalived/keepalived-2.2.8.ebuild
+++ b/sys-cluster/keepalived/keepalived-2.2.8.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://www.keepalived.org/software/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 ~hppa ~ia64 ~ppc ppc64 ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 ~hppa ~ppc ppc64 ~s390 ~sparc x86"
IUSE="+bfd dbus json regex snmp systemd"
RDEPEND="
diff --git a/sys-cluster/kops/Manifest b/sys-cluster/kops/Manifest
index 1babf1ef67f0..2ef05ecbc5da 100644
--- a/sys-cluster/kops/Manifest
+++ b/sys-cluster/kops/Manifest
@@ -1,2 +1,2 @@
-DIST kops-1.23.2.tar.gz 30376137 BLAKE2B 3d6e6a52202872df58436783736a996be49b764916c95926347ca2c4893beaf9977eb5102296e41e16256804fc457cc3eb24f6bfd7d0ab2de6f4a3af255f13e5 SHA512 9e221ed709ac3822ab29e78e3fa9de8b88c26184977eff6fc961d5c109b997c8dd842e3cee3eb8d8cc83e3a2250c95ec9e523b82ea7486b59930101e47f1937a
DIST kops-1.28.2.tar.gz 34257531 BLAKE2B 2f91077bd7cfd5edfe35feb640da074827b5e9db7cf8040870c14a04aec42c38b2cabf13c1968e10aab8eeb40c30e37930aab1ee2766240ea5916256ac9d0fb7 SHA512 d982a984caba1380df919a7d128694546b25df1ce2ef258f84b02fac8ff7e5ac1ddb280e2760a62522508e07eab0cbd554013be2f4860b2078e488c04420e873
+DIST kops-1.30.0.tar.gz 38061750 BLAKE2B da3eaba1882a4d2080bfb7e1dce9b2ce1de15e01c2b506cd5e2599936d3bcad1042be4e6f7d714c30dc82f17c4d03361f34d0454b0933749475d7debffb564ef SHA512 c108f87c2cca3da6c5e197ccf722a90024de5c114b627b8b66d09ab395e03a3ef4aa25a1e98082ac62124291e08b7325fb3dd1d52e0aa0dc36d4be3873d36759
diff --git a/sys-cluster/kops/kops-1.23.2.ebuild b/sys-cluster/kops/kops-1.30.0.ebuild
index f5db1a763c61..45eae24220f2 100644
--- a/sys-cluster/kops/kops-1.23.2.ebuild
+++ b/sys-cluster/kops/kops-1.30.0.ebuild
@@ -9,19 +9,16 @@ DESCRIPTION="Kubernetes Operations"
HOMEPAGE="https://kops.sigs.k8s.io/ https://github.com/kubernetes/kops/"
SRC_URI="https://github.com/kubernetes/kops/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 MIT MPL-2.0 Unicode-DFS-2016"
+LICENSE="Apache-2.0 BSD-2 BSD-4 ECL-2.0 imagemagick ISC JSON MIT MIT-with-advertising MPL-2.0 unicode"
SLOT="0"
KEYWORDS="~amd64"
-# Failure needs investigation
-RESTRICT="test"
-
src_compile() {
- export GOBIN="${WORKDIR}/${P}/bin"
+ export GOBIN="${WORKDIR}/${P}/kops"
emake
}
src_install() {
- dobin bin/kops
+ dobin kops
}
diff --git a/sys-cluster/kube-apiserver/Manifest b/sys-cluster/kube-apiserver/Manifest
index bb4f1c816e62..3d2cebdf725f 100644
--- a/sys-cluster/kube-apiserver/Manifest
+++ b/sys-cluster/kube-apiserver/Manifest
@@ -1,5 +1,10 @@
DIST kubernetes-1.28.11.tar.gz 40007157 BLAKE2B 93afb8552627861c0d49cfc343cceaeb961939b8748cd125cc65b01f27b35c877007e3a1bfe416f2abcc5aa2bf5ee82673dad4a7276c1f4aaaf0a6b9abd9df19 SHA512 31c721b9fa5f73fd216587073e3308249bdb9a28b8534415e99d2630529f1a85fb7a6b18eb91f1b6bbd3f21dfdc6aa1ad0fe6ce257263e34b7fe7bd5cbbd584b
+DIST kubernetes-1.28.12.tar.gz 40019159 BLAKE2B 65028055409942e46d9df8bbf1ff85e5334cdf140ec62a5c5facac663ec28e2d8c4b201a7d028f61b67afb4ad8789131cf1324a3f485f1be5f4bc561a0c40572 SHA512 47003a09fcf5844a1e7256554036a361aee9eb953228fd745ac354aceae81e98422991fa92bce5aac358066062c2e6975ae991b827afcc35aa5687461841fd5e
+DIST kubernetes-1.28.13.tar.gz 40024802 BLAKE2B cfb467cf508b285dba2a582bdb1dcf4b20bc3139f0568b4d383fa6498e6c2630b5d3701b300e1cf470306bad0b10db99b39262af66c33fa8b800e872fcb6a49f SHA512 263cdac1ba804e3319bb9547a37b19ce73490055fd053a914e554c03d21cbf3597d49e226b55e525bee63cfdfd6a5549cc86253d396ec0e606e048a1e8d1c693
DIST kubernetes-1.29.6.tar.gz 41177485 BLAKE2B c02b17fe4cb2314a005180ba6813d056f49e980af9a96f392d9e46b7b436e062fbabf2f64b996e23c7a84db9f3970a1a24dc63d5ee0ac3029e375cfdec47f473 SHA512 d7b1401a6844c8e43a822b4f062ea4cc58f8fefd74c31a2936e9121220f30e9bcb9358683836d68f66cb28451cf3462a1c2c81f85f9ea53b4e919a370d3245e2
DIST kubernetes-1.29.7.tar.gz 41180322 BLAKE2B bb107378b6879a87186f9366ec372a1e88a5231609deffd82c72d94af6835e38f261b7116199c5bf734b2f4e0fc1c8f6a6e63e97b1563a5642440ab76a74ba8f SHA512 bce18d12164704f4d55d7566737bdff8305c5613af7a8df4b49cfa5f90f6b51f879159c4da7fbe436fdf7c4fcf5331f3f35e63f8dbc4c833559e6e2b1a61d08f
+DIST kubernetes-1.29.8.tar.gz 41200139 BLAKE2B 82fe26e74fe2aea6fa854c4e018561ccb5e7528aee50c07dbf04029a92434ffda6bd177d890819d1fcb01ea3412d2cacc41620e27419a7d38d134131eba429c3 SHA512 c2a3c57819ca7537eb7021f0dee69d9f5f6b78a7f0959f217b79389b2e0156a859bbbceb829b3a7d63b7694d8316a52c83afd0ec159168e5bc2c317eb59ad6a8
DIST kubernetes-1.30.2.tar.gz 39581297 BLAKE2B 7d1f303d21b870ad29d2cac96626edc3a19addedd544624e5cd9f42beb368e0959e499e5fd88bc7ee491a01cd29573115d1e77dfb73098ea88204a2614f7b635 SHA512 73f87da96fae889805e3e8fe644228159746c139e907755ec8654dd2fe46bf4561c6c5bb015bd95a6a1f5ba9be2e193aea9bb43b37ce1d67fb4ba42a50b9dac8
DIST kubernetes-1.30.3.tar.gz 39587795 BLAKE2B ba6d819866247dd0d26cb014857d238075dc6beb9cfacfc4ecaccab9d88c4295189309d62e4856c0f4f6c57762b14bfa16fb6bd96548cb88f69dd350e00dbf59 SHA512 303c823f74ccc5c1685ec16ba3de9dbbe9614ddf19e279e43ee392a4ef04ee68400a3e0c2a839d6a3f43712fab426084037ed871e3e4caafe8b37999fd83b73a
+DIST kubernetes-1.30.4.tar.gz 39602012 BLAKE2B 36bb038a2c64ae9252e002a11b2e08930a48471022b00f45511c7b869c76f2de5b941207ee05b57a824a8b4a84b475c376ffb856e5486b532d1cd7413a79500a SHA512 09a562deb763d43578cf345d62be145ccc92e77be228b10184b1b2909716eed8cf2b0c20f6add195347653c2f42ed1c749a5f1c03a9b7dd0a5e0f1e21f32adc0
+DIST kubernetes-1.31.0.tar.gz 39255058 BLAKE2B 65ad06c8e57eec7d1affce4d263fe0d6ca4c75543b658372efd37a84f4af7817d7f1134ca92102666e6df140645d7421d8927c1c50726199002462f58075fb8b SHA512 7848802bbd6d6818e55dca4741f4cf32ebd83b2f2f7914323235e0d016ed142feeea16556f6d5ffc7c8a57d122067cfc04e2c1e85368c1a562085e4f479b26c2
diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.28.12.ebuild b/sys-cluster/kube-apiserver/kube-apiserver-1.28.12.ebuild
new file mode 100644
index 000000000000..6a3a360634ba
--- /dev/null
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.28.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module systemd
+
+DESCRIPTION="Kubernetes API server"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="
+ acct-group/kube-apiserver
+ acct-user/kube-apiserver"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.20"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fNO-PIC ' '')" FORCE_HOST_GO="yes" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.28.13.ebuild b/sys-cluster/kube-apiserver/kube-apiserver-1.28.13.ebuild
new file mode 100644
index 000000000000..6a3a360634ba
--- /dev/null
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.28.13.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module systemd
+
+DESCRIPTION="Kubernetes API server"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="
+ acct-group/kube-apiserver
+ acct-user/kube-apiserver"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.20"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fNO-PIC ' '')" FORCE_HOST_GO="yes" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.29.7.ebuild b/sys-cluster/kube-apiserver/kube-apiserver-1.29.7.ebuild
index 76d302232ac9..96192b4bd604 100644
--- a/sys-cluster/kube-apiserver/kube-apiserver-1.29.7.ebuild
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.29.7.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
COMMON_DEPEND="
diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.29.8.ebuild b/sys-cluster/kube-apiserver/kube-apiserver-1.29.8.ebuild
new file mode 100644
index 000000000000..76d302232ac9
--- /dev/null
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.29.8.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module systemd
+
+DESCRIPTION="Kubernetes API server"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="
+ acct-group/kube-apiserver
+ acct-user/kube-apiserver"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fNO-PIC ' '')" FORCE_HOST_GO="yes" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.30.3.ebuild b/sys-cluster/kube-apiserver/kube-apiserver-1.30.3.ebuild
index 1e1f4ab1cbbe..b2b28d836906 100644
--- a/sys-cluster/kube-apiserver/kube-apiserver-1.30.3.ebuild
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.30.3.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
COMMON_DEPEND="
diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.30.4.ebuild b/sys-cluster/kube-apiserver/kube-apiserver-1.30.4.ebuild
new file mode 100644
index 000000000000..1e1f4ab1cbbe
--- /dev/null
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.30.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module systemd
+
+DESCRIPTION="Kubernetes API server"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="
+ acct-group/kube-apiserver
+ acct-user/kube-apiserver"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.6"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fNO-PIC ' '')" FORCE_HOST_GO="yes" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-apiserver/kube-apiserver-1.31.0.ebuild b/sys-cluster/kube-apiserver/kube-apiserver-1.31.0.ebuild
new file mode 100644
index 000000000000..961d6df18f5f
--- /dev/null
+++ b/sys-cluster/kube-apiserver/kube-apiserver-1.31.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module systemd
+
+DESCRIPTION="Kubernetes API server"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="
+ acct-group/kube-apiserver
+ acct-user/kube-apiserver"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.23.0"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fNO-PIC ' '')" FORCE_HOST_GO="yes" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-controller-manager/Manifest b/sys-cluster/kube-controller-manager/Manifest
index bb4f1c816e62..3d2cebdf725f 100644
--- a/sys-cluster/kube-controller-manager/Manifest
+++ b/sys-cluster/kube-controller-manager/Manifest
@@ -1,5 +1,10 @@
DIST kubernetes-1.28.11.tar.gz 40007157 BLAKE2B 93afb8552627861c0d49cfc343cceaeb961939b8748cd125cc65b01f27b35c877007e3a1bfe416f2abcc5aa2bf5ee82673dad4a7276c1f4aaaf0a6b9abd9df19 SHA512 31c721b9fa5f73fd216587073e3308249bdb9a28b8534415e99d2630529f1a85fb7a6b18eb91f1b6bbd3f21dfdc6aa1ad0fe6ce257263e34b7fe7bd5cbbd584b
+DIST kubernetes-1.28.12.tar.gz 40019159 BLAKE2B 65028055409942e46d9df8bbf1ff85e5334cdf140ec62a5c5facac663ec28e2d8c4b201a7d028f61b67afb4ad8789131cf1324a3f485f1be5f4bc561a0c40572 SHA512 47003a09fcf5844a1e7256554036a361aee9eb953228fd745ac354aceae81e98422991fa92bce5aac358066062c2e6975ae991b827afcc35aa5687461841fd5e
+DIST kubernetes-1.28.13.tar.gz 40024802 BLAKE2B cfb467cf508b285dba2a582bdb1dcf4b20bc3139f0568b4d383fa6498e6c2630b5d3701b300e1cf470306bad0b10db99b39262af66c33fa8b800e872fcb6a49f SHA512 263cdac1ba804e3319bb9547a37b19ce73490055fd053a914e554c03d21cbf3597d49e226b55e525bee63cfdfd6a5549cc86253d396ec0e606e048a1e8d1c693
DIST kubernetes-1.29.6.tar.gz 41177485 BLAKE2B c02b17fe4cb2314a005180ba6813d056f49e980af9a96f392d9e46b7b436e062fbabf2f64b996e23c7a84db9f3970a1a24dc63d5ee0ac3029e375cfdec47f473 SHA512 d7b1401a6844c8e43a822b4f062ea4cc58f8fefd74c31a2936e9121220f30e9bcb9358683836d68f66cb28451cf3462a1c2c81f85f9ea53b4e919a370d3245e2
DIST kubernetes-1.29.7.tar.gz 41180322 BLAKE2B bb107378b6879a87186f9366ec372a1e88a5231609deffd82c72d94af6835e38f261b7116199c5bf734b2f4e0fc1c8f6a6e63e97b1563a5642440ab76a74ba8f SHA512 bce18d12164704f4d55d7566737bdff8305c5613af7a8df4b49cfa5f90f6b51f879159c4da7fbe436fdf7c4fcf5331f3f35e63f8dbc4c833559e6e2b1a61d08f
+DIST kubernetes-1.29.8.tar.gz 41200139 BLAKE2B 82fe26e74fe2aea6fa854c4e018561ccb5e7528aee50c07dbf04029a92434ffda6bd177d890819d1fcb01ea3412d2cacc41620e27419a7d38d134131eba429c3 SHA512 c2a3c57819ca7537eb7021f0dee69d9f5f6b78a7f0959f217b79389b2e0156a859bbbceb829b3a7d63b7694d8316a52c83afd0ec159168e5bc2c317eb59ad6a8
DIST kubernetes-1.30.2.tar.gz 39581297 BLAKE2B 7d1f303d21b870ad29d2cac96626edc3a19addedd544624e5cd9f42beb368e0959e499e5fd88bc7ee491a01cd29573115d1e77dfb73098ea88204a2614f7b635 SHA512 73f87da96fae889805e3e8fe644228159746c139e907755ec8654dd2fe46bf4561c6c5bb015bd95a6a1f5ba9be2e193aea9bb43b37ce1d67fb4ba42a50b9dac8
DIST kubernetes-1.30.3.tar.gz 39587795 BLAKE2B ba6d819866247dd0d26cb014857d238075dc6beb9cfacfc4ecaccab9d88c4295189309d62e4856c0f4f6c57762b14bfa16fb6bd96548cb88f69dd350e00dbf59 SHA512 303c823f74ccc5c1685ec16ba3de9dbbe9614ddf19e279e43ee392a4ef04ee68400a3e0c2a839d6a3f43712fab426084037ed871e3e4caafe8b37999fd83b73a
+DIST kubernetes-1.30.4.tar.gz 39602012 BLAKE2B 36bb038a2c64ae9252e002a11b2e08930a48471022b00f45511c7b869c76f2de5b941207ee05b57a824a8b4a84b475c376ffb856e5486b532d1cd7413a79500a SHA512 09a562deb763d43578cf345d62be145ccc92e77be228b10184b1b2909716eed8cf2b0c20f6add195347653c2f42ed1c749a5f1c03a9b7dd0a5e0f1e21f32adc0
+DIST kubernetes-1.31.0.tar.gz 39255058 BLAKE2B 65ad06c8e57eec7d1affce4d263fe0d6ca4c75543b658372efd37a84f4af7817d7f1134ca92102666e6df140645d7421d8927c1c50726199002462f58075fb8b SHA512 7848802bbd6d6818e55dca4741f4cf32ebd83b2f2f7914323235e0d016ed142feeea16556f6d5ffc7c8a57d122067cfc04e2c1e85368c1a562085e4f479b26c2
diff --git a/sys-cluster/kube-controller-manager/kube-controller-manager-1.28.12.ebuild b/sys-cluster/kube-controller-manager/kube-controller-manager-1.28.12.ebuild
new file mode 100644
index 000000000000..e9d4bc00d859
--- /dev/null
+++ b/sys-cluster/kube-controller-manager/kube-controller-manager-1.28.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Controller Manager"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-controller-manager
+ acct-user/kube-controller-manager"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-controller-manager/kube-controller-manager-1.28.13.ebuild b/sys-cluster/kube-controller-manager/kube-controller-manager-1.28.13.ebuild
new file mode 100644
index 000000000000..e9d4bc00d859
--- /dev/null
+++ b/sys-cluster/kube-controller-manager/kube-controller-manager-1.28.13.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Controller Manager"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-controller-manager
+ acct-user/kube-controller-manager"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-controller-manager/kube-controller-manager-1.29.7.ebuild b/sys-cluster/kube-controller-manager/kube-controller-manager-1.29.7.ebuild
index cc65df45233f..e9d4bc00d859 100644
--- a/sys-cluster/kube-controller-manager/kube-controller-manager-1.29.7.ebuild
+++ b/sys-cluster/kube-controller-manager/kube-controller-manager-1.29.7.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
COMMON_DEPEND="acct-group/kube-controller-manager
diff --git a/sys-cluster/kube-controller-manager/kube-controller-manager-1.29.8.ebuild b/sys-cluster/kube-controller-manager/kube-controller-manager-1.29.8.ebuild
new file mode 100644
index 000000000000..cc65df45233f
--- /dev/null
+++ b/sys-cluster/kube-controller-manager/kube-controller-manager-1.29.8.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Controller Manager"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-controller-manager
+ acct-user/kube-controller-manager"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-controller-manager/kube-controller-manager-1.30.3.ebuild b/sys-cluster/kube-controller-manager/kube-controller-manager-1.30.3.ebuild
index 3fd35054c9f4..18845fa36260 100644
--- a/sys-cluster/kube-controller-manager/kube-controller-manager-1.30.3.ebuild
+++ b/sys-cluster/kube-controller-manager/kube-controller-manager-1.30.3.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
COMMON_DEPEND="acct-group/kube-controller-manager
diff --git a/sys-cluster/kube-controller-manager/kube-controller-manager-1.30.4.ebuild b/sys-cluster/kube-controller-manager/kube-controller-manager-1.30.4.ebuild
new file mode 100644
index 000000000000..3fd35054c9f4
--- /dev/null
+++ b/sys-cluster/kube-controller-manager/kube-controller-manager-1.30.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Controller Manager"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-controller-manager
+ acct-user/kube-controller-manager"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.6"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-controller-manager/kube-controller-manager-1.31.0.ebuild b/sys-cluster/kube-controller-manager/kube-controller-manager-1.31.0.ebuild
new file mode 100644
index 000000000000..656e09872f1e
--- /dev/null
+++ b/sys-cluster/kube-controller-manager/kube-controller-manager-1.31.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Controller Manager"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-controller-manager
+ acct-user/kube-controller-manager"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.23.0"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-proxy/Manifest b/sys-cluster/kube-proxy/Manifest
index bb4f1c816e62..3d2cebdf725f 100644
--- a/sys-cluster/kube-proxy/Manifest
+++ b/sys-cluster/kube-proxy/Manifest
@@ -1,5 +1,10 @@
DIST kubernetes-1.28.11.tar.gz 40007157 BLAKE2B 93afb8552627861c0d49cfc343cceaeb961939b8748cd125cc65b01f27b35c877007e3a1bfe416f2abcc5aa2bf5ee82673dad4a7276c1f4aaaf0a6b9abd9df19 SHA512 31c721b9fa5f73fd216587073e3308249bdb9a28b8534415e99d2630529f1a85fb7a6b18eb91f1b6bbd3f21dfdc6aa1ad0fe6ce257263e34b7fe7bd5cbbd584b
+DIST kubernetes-1.28.12.tar.gz 40019159 BLAKE2B 65028055409942e46d9df8bbf1ff85e5334cdf140ec62a5c5facac663ec28e2d8c4b201a7d028f61b67afb4ad8789131cf1324a3f485f1be5f4bc561a0c40572 SHA512 47003a09fcf5844a1e7256554036a361aee9eb953228fd745ac354aceae81e98422991fa92bce5aac358066062c2e6975ae991b827afcc35aa5687461841fd5e
+DIST kubernetes-1.28.13.tar.gz 40024802 BLAKE2B cfb467cf508b285dba2a582bdb1dcf4b20bc3139f0568b4d383fa6498e6c2630b5d3701b300e1cf470306bad0b10db99b39262af66c33fa8b800e872fcb6a49f SHA512 263cdac1ba804e3319bb9547a37b19ce73490055fd053a914e554c03d21cbf3597d49e226b55e525bee63cfdfd6a5549cc86253d396ec0e606e048a1e8d1c693
DIST kubernetes-1.29.6.tar.gz 41177485 BLAKE2B c02b17fe4cb2314a005180ba6813d056f49e980af9a96f392d9e46b7b436e062fbabf2f64b996e23c7a84db9f3970a1a24dc63d5ee0ac3029e375cfdec47f473 SHA512 d7b1401a6844c8e43a822b4f062ea4cc58f8fefd74c31a2936e9121220f30e9bcb9358683836d68f66cb28451cf3462a1c2c81f85f9ea53b4e919a370d3245e2
DIST kubernetes-1.29.7.tar.gz 41180322 BLAKE2B bb107378b6879a87186f9366ec372a1e88a5231609deffd82c72d94af6835e38f261b7116199c5bf734b2f4e0fc1c8f6a6e63e97b1563a5642440ab76a74ba8f SHA512 bce18d12164704f4d55d7566737bdff8305c5613af7a8df4b49cfa5f90f6b51f879159c4da7fbe436fdf7c4fcf5331f3f35e63f8dbc4c833559e6e2b1a61d08f
+DIST kubernetes-1.29.8.tar.gz 41200139 BLAKE2B 82fe26e74fe2aea6fa854c4e018561ccb5e7528aee50c07dbf04029a92434ffda6bd177d890819d1fcb01ea3412d2cacc41620e27419a7d38d134131eba429c3 SHA512 c2a3c57819ca7537eb7021f0dee69d9f5f6b78a7f0959f217b79389b2e0156a859bbbceb829b3a7d63b7694d8316a52c83afd0ec159168e5bc2c317eb59ad6a8
DIST kubernetes-1.30.2.tar.gz 39581297 BLAKE2B 7d1f303d21b870ad29d2cac96626edc3a19addedd544624e5cd9f42beb368e0959e499e5fd88bc7ee491a01cd29573115d1e77dfb73098ea88204a2614f7b635 SHA512 73f87da96fae889805e3e8fe644228159746c139e907755ec8654dd2fe46bf4561c6c5bb015bd95a6a1f5ba9be2e193aea9bb43b37ce1d67fb4ba42a50b9dac8
DIST kubernetes-1.30.3.tar.gz 39587795 BLAKE2B ba6d819866247dd0d26cb014857d238075dc6beb9cfacfc4ecaccab9d88c4295189309d62e4856c0f4f6c57762b14bfa16fb6bd96548cb88f69dd350e00dbf59 SHA512 303c823f74ccc5c1685ec16ba3de9dbbe9614ddf19e279e43ee392a4ef04ee68400a3e0c2a839d6a3f43712fab426084037ed871e3e4caafe8b37999fd83b73a
+DIST kubernetes-1.30.4.tar.gz 39602012 BLAKE2B 36bb038a2c64ae9252e002a11b2e08930a48471022b00f45511c7b869c76f2de5b941207ee05b57a824a8b4a84b475c376ffb856e5486b532d1cd7413a79500a SHA512 09a562deb763d43578cf345d62be145ccc92e77be228b10184b1b2909716eed8cf2b0c20f6add195347653c2f42ed1c749a5f1c03a9b7dd0a5e0f1e21f32adc0
+DIST kubernetes-1.31.0.tar.gz 39255058 BLAKE2B 65ad06c8e57eec7d1affce4d263fe0d6ca4c75543b658372efd37a84f4af7817d7f1134ca92102666e6df140645d7421d8927c1c50726199002462f58075fb8b SHA512 7848802bbd6d6818e55dca4741f4cf32ebd83b2f2f7914323235e0d016ed142feeea16556f6d5ffc7c8a57d122067cfc04e2c1e85368c1a562085e4f479b26c2
diff --git a/sys-cluster/kube-proxy/kube-proxy-1.28.12.ebuild b/sys-cluster/kube-proxy/kube-proxy-1.28.12.ebuild
new file mode 100644
index 000000000000..3cfaa73c074f
--- /dev/null
+++ b/sys-cluster/kube-proxy/kube-proxy-1.28.12.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Proxy service"
+HOMEPAGE="https://github.com/kubernetes/kubernetes https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+RDEPEND="net-firewall/conntrack-tools"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /var/log/${PN} /var/lib/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+}
diff --git a/sys-cluster/kube-proxy/kube-proxy-1.28.13.ebuild b/sys-cluster/kube-proxy/kube-proxy-1.28.13.ebuild
new file mode 100644
index 000000000000..3cfaa73c074f
--- /dev/null
+++ b/sys-cluster/kube-proxy/kube-proxy-1.28.13.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Proxy service"
+HOMEPAGE="https://github.com/kubernetes/kubernetes https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+RDEPEND="net-firewall/conntrack-tools"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /var/log/${PN} /var/lib/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+}
diff --git a/sys-cluster/kube-proxy/kube-proxy-1.29.7.ebuild b/sys-cluster/kube-proxy/kube-proxy-1.29.7.ebuild
index 7088f613c25c..3cfaa73c074f 100644
--- a/sys-cluster/kube-proxy/kube-proxy-1.29.7.ebuild
+++ b/sys-cluster/kube-proxy/kube-proxy-1.29.7.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
RDEPEND="net-firewall/conntrack-tools"
diff --git a/sys-cluster/kube-proxy/kube-proxy-1.29.8.ebuild b/sys-cluster/kube-proxy/kube-proxy-1.29.8.ebuild
new file mode 100644
index 000000000000..7088f613c25c
--- /dev/null
+++ b/sys-cluster/kube-proxy/kube-proxy-1.29.8.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Proxy service"
+HOMEPAGE="https://github.com/kubernetes/kubernetes https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+RDEPEND="net-firewall/conntrack-tools"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /var/log/${PN} /var/lib/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+}
diff --git a/sys-cluster/kube-proxy/kube-proxy-1.30.3.ebuild b/sys-cluster/kube-proxy/kube-proxy-1.30.3.ebuild
index bd858543529e..2e47e5a64e4c 100644
--- a/sys-cluster/kube-proxy/kube-proxy-1.30.3.ebuild
+++ b/sys-cluster/kube-proxy/kube-proxy-1.30.3.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
RDEPEND="net-firewall/conntrack-tools"
diff --git a/sys-cluster/kube-proxy/kube-proxy-1.30.4.ebuild b/sys-cluster/kube-proxy/kube-proxy-1.30.4.ebuild
new file mode 100644
index 000000000000..bd858543529e
--- /dev/null
+++ b/sys-cluster/kube-proxy/kube-proxy-1.30.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Proxy service"
+HOMEPAGE="https://github.com/kubernetes/kubernetes https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+RDEPEND="net-firewall/conntrack-tools"
+BDEPEND=">=dev-lang/go-1.21.6"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /var/log/${PN} /var/lib/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+}
diff --git a/sys-cluster/kube-proxy/kube-proxy-1.31.0.ebuild b/sys-cluster/kube-proxy/kube-proxy-1.31.0.ebuild
new file mode 100644
index 000000000000..61c67e1168d2
--- /dev/null
+++ b/sys-cluster/kube-proxy/kube-proxy-1.31.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Proxy service"
+HOMEPAGE="https://github.com/kubernetes/kubernetes https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+RDEPEND="net-firewall/conntrack-tools"
+BDEPEND=">=dev-lang/go-1.23.0"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /var/log/${PN} /var/lib/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+}
diff --git a/sys-cluster/kube-scheduler/Manifest b/sys-cluster/kube-scheduler/Manifest
index bb4f1c816e62..3d2cebdf725f 100644
--- a/sys-cluster/kube-scheduler/Manifest
+++ b/sys-cluster/kube-scheduler/Manifest
@@ -1,5 +1,10 @@
DIST kubernetes-1.28.11.tar.gz 40007157 BLAKE2B 93afb8552627861c0d49cfc343cceaeb961939b8748cd125cc65b01f27b35c877007e3a1bfe416f2abcc5aa2bf5ee82673dad4a7276c1f4aaaf0a6b9abd9df19 SHA512 31c721b9fa5f73fd216587073e3308249bdb9a28b8534415e99d2630529f1a85fb7a6b18eb91f1b6bbd3f21dfdc6aa1ad0fe6ce257263e34b7fe7bd5cbbd584b
+DIST kubernetes-1.28.12.tar.gz 40019159 BLAKE2B 65028055409942e46d9df8bbf1ff85e5334cdf140ec62a5c5facac663ec28e2d8c4b201a7d028f61b67afb4ad8789131cf1324a3f485f1be5f4bc561a0c40572 SHA512 47003a09fcf5844a1e7256554036a361aee9eb953228fd745ac354aceae81e98422991fa92bce5aac358066062c2e6975ae991b827afcc35aa5687461841fd5e
+DIST kubernetes-1.28.13.tar.gz 40024802 BLAKE2B cfb467cf508b285dba2a582bdb1dcf4b20bc3139f0568b4d383fa6498e6c2630b5d3701b300e1cf470306bad0b10db99b39262af66c33fa8b800e872fcb6a49f SHA512 263cdac1ba804e3319bb9547a37b19ce73490055fd053a914e554c03d21cbf3597d49e226b55e525bee63cfdfd6a5549cc86253d396ec0e606e048a1e8d1c693
DIST kubernetes-1.29.6.tar.gz 41177485 BLAKE2B c02b17fe4cb2314a005180ba6813d056f49e980af9a96f392d9e46b7b436e062fbabf2f64b996e23c7a84db9f3970a1a24dc63d5ee0ac3029e375cfdec47f473 SHA512 d7b1401a6844c8e43a822b4f062ea4cc58f8fefd74c31a2936e9121220f30e9bcb9358683836d68f66cb28451cf3462a1c2c81f85f9ea53b4e919a370d3245e2
DIST kubernetes-1.29.7.tar.gz 41180322 BLAKE2B bb107378b6879a87186f9366ec372a1e88a5231609deffd82c72d94af6835e38f261b7116199c5bf734b2f4e0fc1c8f6a6e63e97b1563a5642440ab76a74ba8f SHA512 bce18d12164704f4d55d7566737bdff8305c5613af7a8df4b49cfa5f90f6b51f879159c4da7fbe436fdf7c4fcf5331f3f35e63f8dbc4c833559e6e2b1a61d08f
+DIST kubernetes-1.29.8.tar.gz 41200139 BLAKE2B 82fe26e74fe2aea6fa854c4e018561ccb5e7528aee50c07dbf04029a92434ffda6bd177d890819d1fcb01ea3412d2cacc41620e27419a7d38d134131eba429c3 SHA512 c2a3c57819ca7537eb7021f0dee69d9f5f6b78a7f0959f217b79389b2e0156a859bbbceb829b3a7d63b7694d8316a52c83afd0ec159168e5bc2c317eb59ad6a8
DIST kubernetes-1.30.2.tar.gz 39581297 BLAKE2B 7d1f303d21b870ad29d2cac96626edc3a19addedd544624e5cd9f42beb368e0959e499e5fd88bc7ee491a01cd29573115d1e77dfb73098ea88204a2614f7b635 SHA512 73f87da96fae889805e3e8fe644228159746c139e907755ec8654dd2fe46bf4561c6c5bb015bd95a6a1f5ba9be2e193aea9bb43b37ce1d67fb4ba42a50b9dac8
DIST kubernetes-1.30.3.tar.gz 39587795 BLAKE2B ba6d819866247dd0d26cb014857d238075dc6beb9cfacfc4ecaccab9d88c4295189309d62e4856c0f4f6c57762b14bfa16fb6bd96548cb88f69dd350e00dbf59 SHA512 303c823f74ccc5c1685ec16ba3de9dbbe9614ddf19e279e43ee392a4ef04ee68400a3e0c2a839d6a3f43712fab426084037ed871e3e4caafe8b37999fd83b73a
+DIST kubernetes-1.30.4.tar.gz 39602012 BLAKE2B 36bb038a2c64ae9252e002a11b2e08930a48471022b00f45511c7b869c76f2de5b941207ee05b57a824a8b4a84b475c376ffb856e5486b532d1cd7413a79500a SHA512 09a562deb763d43578cf345d62be145ccc92e77be228b10184b1b2909716eed8cf2b0c20f6add195347653c2f42ed1c749a5f1c03a9b7dd0a5e0f1e21f32adc0
+DIST kubernetes-1.31.0.tar.gz 39255058 BLAKE2B 65ad06c8e57eec7d1affce4d263fe0d6ca4c75543b658372efd37a84f4af7817d7f1134ca92102666e6df140645d7421d8927c1c50726199002462f58075fb8b SHA512 7848802bbd6d6818e55dca4741f4cf32ebd83b2f2f7914323235e0d016ed142feeea16556f6d5ffc7c8a57d122067cfc04e2c1e85368c1a562085e4f479b26c2
diff --git a/sys-cluster/kube-scheduler/kube-scheduler-1.28.12.ebuild b/sys-cluster/kube-scheduler/kube-scheduler-1.28.12.ebuild
new file mode 100644
index 000000000000..14684748f25a
--- /dev/null
+++ b/sys-cluster/kube-scheduler/kube-scheduler-1.28.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Scheduler"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-scheduler
+ acct-user/kube-scheduler"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-scheduler/kube-scheduler-1.28.13.ebuild b/sys-cluster/kube-scheduler/kube-scheduler-1.28.13.ebuild
new file mode 100644
index 000000000000..14684748f25a
--- /dev/null
+++ b/sys-cluster/kube-scheduler/kube-scheduler-1.28.13.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Scheduler"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-scheduler
+ acct-user/kube-scheduler"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-scheduler/kube-scheduler-1.29.7.ebuild b/sys-cluster/kube-scheduler/kube-scheduler-1.29.7.ebuild
index 1b77d372e737..14684748f25a 100644
--- a/sys-cluster/kube-scheduler/kube-scheduler-1.29.7.ebuild
+++ b/sys-cluster/kube-scheduler/kube-scheduler-1.29.7.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
COMMON_DEPEND="acct-group/kube-scheduler
diff --git a/sys-cluster/kube-scheduler/kube-scheduler-1.29.8.ebuild b/sys-cluster/kube-scheduler/kube-scheduler-1.29.8.ebuild
new file mode 100644
index 000000000000..1b77d372e737
--- /dev/null
+++ b/sys-cluster/kube-scheduler/kube-scheduler-1.29.8.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Scheduler"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-scheduler
+ acct-user/kube-scheduler"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-scheduler/kube-scheduler-1.30.3.ebuild b/sys-cluster/kube-scheduler/kube-scheduler-1.30.3.ebuild
index d3b8c1135b94..218282b799fc 100644
--- a/sys-cluster/kube-scheduler/kube-scheduler-1.30.3.ebuild
+++ b/sys-cluster/kube-scheduler/kube-scheduler-1.30.3.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
COMMON_DEPEND="acct-group/kube-scheduler
diff --git a/sys-cluster/kube-scheduler/kube-scheduler-1.30.4.ebuild b/sys-cluster/kube-scheduler/kube-scheduler-1.30.4.ebuild
new file mode 100644
index 000000000000..d3b8c1135b94
--- /dev/null
+++ b/sys-cluster/kube-scheduler/kube-scheduler-1.30.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Scheduler"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-scheduler
+ acct-user/kube-scheduler"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.21.6"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kube-scheduler/kube-scheduler-1.31.0.ebuild b/sys-cluster/kube-scheduler/kube-scheduler-1.31.0.ebuild
new file mode 100644
index 000000000000..a3f60b02fee1
--- /dev/null
+++ b/sys-cluster/kube-scheduler/kube-scheduler-1.31.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Kubernetes Scheduler"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+COMMON_DEPEND="acct-group/kube-scheduler
+ acct-user/kube-scheduler"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+BDEPEND=">=dev-lang/go-1.23.0"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/${PN}
+ fowners ${PN}:${PN} /var/log/${PN}
+}
diff --git a/sys-cluster/kubeadm/Manifest b/sys-cluster/kubeadm/Manifest
index bb4f1c816e62..3d2cebdf725f 100644
--- a/sys-cluster/kubeadm/Manifest
+++ b/sys-cluster/kubeadm/Manifest
@@ -1,5 +1,10 @@
DIST kubernetes-1.28.11.tar.gz 40007157 BLAKE2B 93afb8552627861c0d49cfc343cceaeb961939b8748cd125cc65b01f27b35c877007e3a1bfe416f2abcc5aa2bf5ee82673dad4a7276c1f4aaaf0a6b9abd9df19 SHA512 31c721b9fa5f73fd216587073e3308249bdb9a28b8534415e99d2630529f1a85fb7a6b18eb91f1b6bbd3f21dfdc6aa1ad0fe6ce257263e34b7fe7bd5cbbd584b
+DIST kubernetes-1.28.12.tar.gz 40019159 BLAKE2B 65028055409942e46d9df8bbf1ff85e5334cdf140ec62a5c5facac663ec28e2d8c4b201a7d028f61b67afb4ad8789131cf1324a3f485f1be5f4bc561a0c40572 SHA512 47003a09fcf5844a1e7256554036a361aee9eb953228fd745ac354aceae81e98422991fa92bce5aac358066062c2e6975ae991b827afcc35aa5687461841fd5e
+DIST kubernetes-1.28.13.tar.gz 40024802 BLAKE2B cfb467cf508b285dba2a582bdb1dcf4b20bc3139f0568b4d383fa6498e6c2630b5d3701b300e1cf470306bad0b10db99b39262af66c33fa8b800e872fcb6a49f SHA512 263cdac1ba804e3319bb9547a37b19ce73490055fd053a914e554c03d21cbf3597d49e226b55e525bee63cfdfd6a5549cc86253d396ec0e606e048a1e8d1c693
DIST kubernetes-1.29.6.tar.gz 41177485 BLAKE2B c02b17fe4cb2314a005180ba6813d056f49e980af9a96f392d9e46b7b436e062fbabf2f64b996e23c7a84db9f3970a1a24dc63d5ee0ac3029e375cfdec47f473 SHA512 d7b1401a6844c8e43a822b4f062ea4cc58f8fefd74c31a2936e9121220f30e9bcb9358683836d68f66cb28451cf3462a1c2c81f85f9ea53b4e919a370d3245e2
DIST kubernetes-1.29.7.tar.gz 41180322 BLAKE2B bb107378b6879a87186f9366ec372a1e88a5231609deffd82c72d94af6835e38f261b7116199c5bf734b2f4e0fc1c8f6a6e63e97b1563a5642440ab76a74ba8f SHA512 bce18d12164704f4d55d7566737bdff8305c5613af7a8df4b49cfa5f90f6b51f879159c4da7fbe436fdf7c4fcf5331f3f35e63f8dbc4c833559e6e2b1a61d08f
+DIST kubernetes-1.29.8.tar.gz 41200139 BLAKE2B 82fe26e74fe2aea6fa854c4e018561ccb5e7528aee50c07dbf04029a92434ffda6bd177d890819d1fcb01ea3412d2cacc41620e27419a7d38d134131eba429c3 SHA512 c2a3c57819ca7537eb7021f0dee69d9f5f6b78a7f0959f217b79389b2e0156a859bbbceb829b3a7d63b7694d8316a52c83afd0ec159168e5bc2c317eb59ad6a8
DIST kubernetes-1.30.2.tar.gz 39581297 BLAKE2B 7d1f303d21b870ad29d2cac96626edc3a19addedd544624e5cd9f42beb368e0959e499e5fd88bc7ee491a01cd29573115d1e77dfb73098ea88204a2614f7b635 SHA512 73f87da96fae889805e3e8fe644228159746c139e907755ec8654dd2fe46bf4561c6c5bb015bd95a6a1f5ba9be2e193aea9bb43b37ce1d67fb4ba42a50b9dac8
DIST kubernetes-1.30.3.tar.gz 39587795 BLAKE2B ba6d819866247dd0d26cb014857d238075dc6beb9cfacfc4ecaccab9d88c4295189309d62e4856c0f4f6c57762b14bfa16fb6bd96548cb88f69dd350e00dbf59 SHA512 303c823f74ccc5c1685ec16ba3de9dbbe9614ddf19e279e43ee392a4ef04ee68400a3e0c2a839d6a3f43712fab426084037ed871e3e4caafe8b37999fd83b73a
+DIST kubernetes-1.30.4.tar.gz 39602012 BLAKE2B 36bb038a2c64ae9252e002a11b2e08930a48471022b00f45511c7b869c76f2de5b941207ee05b57a824a8b4a84b475c376ffb856e5486b532d1cd7413a79500a SHA512 09a562deb763d43578cf345d62be145ccc92e77be228b10184b1b2909716eed8cf2b0c20f6add195347653c2f42ed1c749a5f1c03a9b7dd0a5e0f1e21f32adc0
+DIST kubernetes-1.31.0.tar.gz 39255058 BLAKE2B 65ad06c8e57eec7d1affce4d263fe0d6ca4c75543b658372efd37a84f4af7817d7f1134ca92102666e6df140645d7421d8927c1c50726199002462f58075fb8b SHA512 7848802bbd6d6818e55dca4741f4cf32ebd83b2f2f7914323235e0d016ed142feeea16556f6d5ffc7c8a57d122067cfc04e2c1e85368c1a562085e4f479b26c2
diff --git a/sys-cluster/kubeadm/kubeadm-1.28.12.ebuild b/sys-cluster/kubeadm/kubeadm-1.28.12.ebuild
new file mode 100644
index 000000000000..2fb49ca0d5a2
--- /dev/null
+++ b/sys-cluster/kubeadm/kubeadm-1.28.12.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to Easily bootstrap a secure Kubernetes cluster"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+RDEPEND="app-containers/cri-tools
+ selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" FORCE_HOST_GO=yes \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubeadm/kubeadm-1.28.13.ebuild b/sys-cluster/kubeadm/kubeadm-1.28.13.ebuild
new file mode 100644
index 000000000000..2fb49ca0d5a2
--- /dev/null
+++ b/sys-cluster/kubeadm/kubeadm-1.28.13.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to Easily bootstrap a secure Kubernetes cluster"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+RDEPEND="app-containers/cri-tools
+ selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" FORCE_HOST_GO=yes \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubeadm/kubeadm-1.29.7.ebuild b/sys-cluster/kubeadm/kubeadm-1.29.7.ebuild
index f43a19b3ff24..2fb49ca0d5a2 100644
--- a/sys-cluster/kubeadm/kubeadm-1.29.7.ebuild
+++ b/sys-cluster/kubeadm/kubeadm-1.29.7.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened selinux"
BDEPEND=">=dev-lang/go-1.21.9"
diff --git a/sys-cluster/kubeadm/kubeadm-1.29.8.ebuild b/sys-cluster/kubeadm/kubeadm-1.29.8.ebuild
new file mode 100644
index 000000000000..f43a19b3ff24
--- /dev/null
+++ b/sys-cluster/kubeadm/kubeadm-1.29.8.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to Easily bootstrap a secure Kubernetes cluster"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+RDEPEND="app-containers/cri-tools
+ selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" FORCE_HOST_GO=yes \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubeadm/kubeadm-1.30.3.ebuild b/sys-cluster/kubeadm/kubeadm-1.30.3.ebuild
index d175a9ec3808..846d5f3270c0 100644
--- a/sys-cluster/kubeadm/kubeadm-1.30.3.ebuild
+++ b/sys-cluster/kubeadm/kubeadm-1.30.3.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened selinux"
BDEPEND=">=dev-lang/go-1.21.6"
diff --git a/sys-cluster/kubeadm/kubeadm-1.30.4.ebuild b/sys-cluster/kubeadm/kubeadm-1.30.4.ebuild
new file mode 100644
index 000000000000..d175a9ec3808
--- /dev/null
+++ b/sys-cluster/kubeadm/kubeadm-1.30.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to Easily bootstrap a secure Kubernetes cluster"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.6"
+RDEPEND="app-containers/cri-tools
+ selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" FORCE_HOST_GO=yes \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubeadm/kubeadm-1.31.0.ebuild b/sys-cluster/kubeadm/kubeadm-1.31.0.ebuild
new file mode 100644
index 000000000000..96a6a4b94b0c
--- /dev/null
+++ b/sys-cluster/kubeadm/kubeadm-1.31.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to Easily bootstrap a secure Kubernetes cluster"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.23.0"
+RDEPEND="app-containers/cri-tools
+ selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" FORCE_HOST_GO=yes \
+ emake -j1 GOFLAGS=-v GOLDFLAGS="" LDFLAGS="" WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubectl/Manifest b/sys-cluster/kubectl/Manifest
index bb4f1c816e62..3d2cebdf725f 100644
--- a/sys-cluster/kubectl/Manifest
+++ b/sys-cluster/kubectl/Manifest
@@ -1,5 +1,10 @@
DIST kubernetes-1.28.11.tar.gz 40007157 BLAKE2B 93afb8552627861c0d49cfc343cceaeb961939b8748cd125cc65b01f27b35c877007e3a1bfe416f2abcc5aa2bf5ee82673dad4a7276c1f4aaaf0a6b9abd9df19 SHA512 31c721b9fa5f73fd216587073e3308249bdb9a28b8534415e99d2630529f1a85fb7a6b18eb91f1b6bbd3f21dfdc6aa1ad0fe6ce257263e34b7fe7bd5cbbd584b
+DIST kubernetes-1.28.12.tar.gz 40019159 BLAKE2B 65028055409942e46d9df8bbf1ff85e5334cdf140ec62a5c5facac663ec28e2d8c4b201a7d028f61b67afb4ad8789131cf1324a3f485f1be5f4bc561a0c40572 SHA512 47003a09fcf5844a1e7256554036a361aee9eb953228fd745ac354aceae81e98422991fa92bce5aac358066062c2e6975ae991b827afcc35aa5687461841fd5e
+DIST kubernetes-1.28.13.tar.gz 40024802 BLAKE2B cfb467cf508b285dba2a582bdb1dcf4b20bc3139f0568b4d383fa6498e6c2630b5d3701b300e1cf470306bad0b10db99b39262af66c33fa8b800e872fcb6a49f SHA512 263cdac1ba804e3319bb9547a37b19ce73490055fd053a914e554c03d21cbf3597d49e226b55e525bee63cfdfd6a5549cc86253d396ec0e606e048a1e8d1c693
DIST kubernetes-1.29.6.tar.gz 41177485 BLAKE2B c02b17fe4cb2314a005180ba6813d056f49e980af9a96f392d9e46b7b436e062fbabf2f64b996e23c7a84db9f3970a1a24dc63d5ee0ac3029e375cfdec47f473 SHA512 d7b1401a6844c8e43a822b4f062ea4cc58f8fefd74c31a2936e9121220f30e9bcb9358683836d68f66cb28451cf3462a1c2c81f85f9ea53b4e919a370d3245e2
DIST kubernetes-1.29.7.tar.gz 41180322 BLAKE2B bb107378b6879a87186f9366ec372a1e88a5231609deffd82c72d94af6835e38f261b7116199c5bf734b2f4e0fc1c8f6a6e63e97b1563a5642440ab76a74ba8f SHA512 bce18d12164704f4d55d7566737bdff8305c5613af7a8df4b49cfa5f90f6b51f879159c4da7fbe436fdf7c4fcf5331f3f35e63f8dbc4c833559e6e2b1a61d08f
+DIST kubernetes-1.29.8.tar.gz 41200139 BLAKE2B 82fe26e74fe2aea6fa854c4e018561ccb5e7528aee50c07dbf04029a92434ffda6bd177d890819d1fcb01ea3412d2cacc41620e27419a7d38d134131eba429c3 SHA512 c2a3c57819ca7537eb7021f0dee69d9f5f6b78a7f0959f217b79389b2e0156a859bbbceb829b3a7d63b7694d8316a52c83afd0ec159168e5bc2c317eb59ad6a8
DIST kubernetes-1.30.2.tar.gz 39581297 BLAKE2B 7d1f303d21b870ad29d2cac96626edc3a19addedd544624e5cd9f42beb368e0959e499e5fd88bc7ee491a01cd29573115d1e77dfb73098ea88204a2614f7b635 SHA512 73f87da96fae889805e3e8fe644228159746c139e907755ec8654dd2fe46bf4561c6c5bb015bd95a6a1f5ba9be2e193aea9bb43b37ce1d67fb4ba42a50b9dac8
DIST kubernetes-1.30.3.tar.gz 39587795 BLAKE2B ba6d819866247dd0d26cb014857d238075dc6beb9cfacfc4ecaccab9d88c4295189309d62e4856c0f4f6c57762b14bfa16fb6bd96548cb88f69dd350e00dbf59 SHA512 303c823f74ccc5c1685ec16ba3de9dbbe9614ddf19e279e43ee392a4ef04ee68400a3e0c2a839d6a3f43712fab426084037ed871e3e4caafe8b37999fd83b73a
+DIST kubernetes-1.30.4.tar.gz 39602012 BLAKE2B 36bb038a2c64ae9252e002a11b2e08930a48471022b00f45511c7b869c76f2de5b941207ee05b57a824a8b4a84b475c376ffb856e5486b532d1cd7413a79500a SHA512 09a562deb763d43578cf345d62be145ccc92e77be228b10184b1b2909716eed8cf2b0c20f6add195347653c2f42ed1c749a5f1c03a9b7dd0a5e0f1e21f32adc0
+DIST kubernetes-1.31.0.tar.gz 39255058 BLAKE2B 65ad06c8e57eec7d1affce4d263fe0d6ca4c75543b658372efd37a84f4af7817d7f1134ca92102666e6df140645d7421d8927c1c50726199002462f58075fb8b SHA512 7848802bbd6d6818e55dca4741f4cf32ebd83b2f2f7914323235e0d016ed142feeea16556f6d5ffc7c8a57d122067cfc04e2c1e85368c1a562085e4f479b26c2
diff --git a/sys-cluster/kubectl/kubectl-1.28.12.ebuild b/sys-cluster/kubectl/kubectl-1.28.12.ebuild
new file mode 100644
index 000000000000..8d6a0d86ef54
--- /dev/null
+++ b/sys-cluster/kubectl/kubectl-1.28.12.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to run commands against Kubernetes clusters"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubectl/kubectl-1.28.13.ebuild b/sys-cluster/kubectl/kubectl-1.28.13.ebuild
new file mode 100644
index 000000000000..8d6a0d86ef54
--- /dev/null
+++ b/sys-cluster/kubectl/kubectl-1.28.13.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to run commands against Kubernetes clusters"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubectl/kubectl-1.29.7.ebuild b/sys-cluster/kubectl/kubectl-1.29.7.ebuild
index d9e842902c85..8d6a0d86ef54 100644
--- a/sys-cluster/kubectl/kubectl-1.29.7.ebuild
+++ b/sys-cluster/kubectl/kubectl-1.29.7.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
BDEPEND=">=dev-lang/go-1.21.9"
diff --git a/sys-cluster/kubectl/kubectl-1.29.8.ebuild b/sys-cluster/kubectl/kubectl-1.29.8.ebuild
new file mode 100644
index 000000000000..d9e842902c85
--- /dev/null
+++ b/sys-cluster/kubectl/kubectl-1.29.8.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to run commands against Kubernetes clusters"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubectl/kubectl-1.30.3.ebuild b/sys-cluster/kubectl/kubectl-1.30.3.ebuild
index 419b200ff1be..85aea71eb8c5 100644
--- a/sys-cluster/kubectl/kubectl-1.30.3.ebuild
+++ b/sys-cluster/kubectl/kubectl-1.30.3.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened"
BDEPEND=">=dev-lang/go-1.21.6"
diff --git a/sys-cluster/kubectl/kubectl-1.30.4.ebuild b/sys-cluster/kubectl/kubectl-1.30.4.ebuild
new file mode 100644
index 000000000000..419b200ff1be
--- /dev/null
+++ b/sys-cluster/kubectl/kubectl-1.30.4.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to run commands against Kubernetes clusters"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+BDEPEND=">=dev-lang/go-1.21.6"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubectl/kubectl-1.31.0.ebuild b/sys-cluster/kubectl/kubectl-1.31.0.ebuild
new file mode 100644
index 000000000000..67b1ecc00f15
--- /dev/null
+++ b/sys-cluster/kubectl/kubectl-1.31.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="CLI to run commands against Kubernetes clusters"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened"
+
+BDEPEND=">=dev-lang/go-1.23.0"
+
+RESTRICT+=" test"
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ _output/bin/${PN} completion bash > ${PN}.bash || die
+ _output/bin/${PN} completion zsh > ${PN}.zsh || die
+ newbashcomp ${PN}.bash ${PN}
+ insinto /usr/share/zsh/site-functions
+ newins ${PN}.zsh _${PN}
+}
diff --git a/sys-cluster/kubelet/Manifest b/sys-cluster/kubelet/Manifest
index bb4f1c816e62..3d2cebdf725f 100644
--- a/sys-cluster/kubelet/Manifest
+++ b/sys-cluster/kubelet/Manifest
@@ -1,5 +1,10 @@
DIST kubernetes-1.28.11.tar.gz 40007157 BLAKE2B 93afb8552627861c0d49cfc343cceaeb961939b8748cd125cc65b01f27b35c877007e3a1bfe416f2abcc5aa2bf5ee82673dad4a7276c1f4aaaf0a6b9abd9df19 SHA512 31c721b9fa5f73fd216587073e3308249bdb9a28b8534415e99d2630529f1a85fb7a6b18eb91f1b6bbd3f21dfdc6aa1ad0fe6ce257263e34b7fe7bd5cbbd584b
+DIST kubernetes-1.28.12.tar.gz 40019159 BLAKE2B 65028055409942e46d9df8bbf1ff85e5334cdf140ec62a5c5facac663ec28e2d8c4b201a7d028f61b67afb4ad8789131cf1324a3f485f1be5f4bc561a0c40572 SHA512 47003a09fcf5844a1e7256554036a361aee9eb953228fd745ac354aceae81e98422991fa92bce5aac358066062c2e6975ae991b827afcc35aa5687461841fd5e
+DIST kubernetes-1.28.13.tar.gz 40024802 BLAKE2B cfb467cf508b285dba2a582bdb1dcf4b20bc3139f0568b4d383fa6498e6c2630b5d3701b300e1cf470306bad0b10db99b39262af66c33fa8b800e872fcb6a49f SHA512 263cdac1ba804e3319bb9547a37b19ce73490055fd053a914e554c03d21cbf3597d49e226b55e525bee63cfdfd6a5549cc86253d396ec0e606e048a1e8d1c693
DIST kubernetes-1.29.6.tar.gz 41177485 BLAKE2B c02b17fe4cb2314a005180ba6813d056f49e980af9a96f392d9e46b7b436e062fbabf2f64b996e23c7a84db9f3970a1a24dc63d5ee0ac3029e375cfdec47f473 SHA512 d7b1401a6844c8e43a822b4f062ea4cc58f8fefd74c31a2936e9121220f30e9bcb9358683836d68f66cb28451cf3462a1c2c81f85f9ea53b4e919a370d3245e2
DIST kubernetes-1.29.7.tar.gz 41180322 BLAKE2B bb107378b6879a87186f9366ec372a1e88a5231609deffd82c72d94af6835e38f261b7116199c5bf734b2f4e0fc1c8f6a6e63e97b1563a5642440ab76a74ba8f SHA512 bce18d12164704f4d55d7566737bdff8305c5613af7a8df4b49cfa5f90f6b51f879159c4da7fbe436fdf7c4fcf5331f3f35e63f8dbc4c833559e6e2b1a61d08f
+DIST kubernetes-1.29.8.tar.gz 41200139 BLAKE2B 82fe26e74fe2aea6fa854c4e018561ccb5e7528aee50c07dbf04029a92434ffda6bd177d890819d1fcb01ea3412d2cacc41620e27419a7d38d134131eba429c3 SHA512 c2a3c57819ca7537eb7021f0dee69d9f5f6b78a7f0959f217b79389b2e0156a859bbbceb829b3a7d63b7694d8316a52c83afd0ec159168e5bc2c317eb59ad6a8
DIST kubernetes-1.30.2.tar.gz 39581297 BLAKE2B 7d1f303d21b870ad29d2cac96626edc3a19addedd544624e5cd9f42beb368e0959e499e5fd88bc7ee491a01cd29573115d1e77dfb73098ea88204a2614f7b635 SHA512 73f87da96fae889805e3e8fe644228159746c139e907755ec8654dd2fe46bf4561c6c5bb015bd95a6a1f5ba9be2e193aea9bb43b37ce1d67fb4ba42a50b9dac8
DIST kubernetes-1.30.3.tar.gz 39587795 BLAKE2B ba6d819866247dd0d26cb014857d238075dc6beb9cfacfc4ecaccab9d88c4295189309d62e4856c0f4f6c57762b14bfa16fb6bd96548cb88f69dd350e00dbf59 SHA512 303c823f74ccc5c1685ec16ba3de9dbbe9614ddf19e279e43ee392a4ef04ee68400a3e0c2a839d6a3f43712fab426084037ed871e3e4caafe8b37999fd83b73a
+DIST kubernetes-1.30.4.tar.gz 39602012 BLAKE2B 36bb038a2c64ae9252e002a11b2e08930a48471022b00f45511c7b869c76f2de5b941207ee05b57a824a8b4a84b475c376ffb856e5486b532d1cd7413a79500a SHA512 09a562deb763d43578cf345d62be145ccc92e77be228b10184b1b2909716eed8cf2b0c20f6add195347653c2f42ed1c749a5f1c03a9b7dd0a5e0f1e21f32adc0
+DIST kubernetes-1.31.0.tar.gz 39255058 BLAKE2B 65ad06c8e57eec7d1affce4d263fe0d6ca4c75543b658372efd37a84f4af7817d7f1134ca92102666e6df140645d7421d8927c1c50726199002462f58075fb8b SHA512 7848802bbd6d6818e55dca4741f4cf32ebd83b2f2f7914323235e0d016ed142feeea16556f6d5ffc7c8a57d122067cfc04e2c1e85368c1a562085e4f479b26c2
diff --git a/sys-cluster/kubelet/kubelet-1.28.12.ebuild b/sys-cluster/kubelet/kubelet-1.28.12.ebuild
new file mode 100644
index 000000000000..c0a948f3d3ec
--- /dev/null
+++ b/sys-cluster/kubelet/kubelet-1.28.12.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+DESCRIPTION="Kubernetes Node Agent"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+RDEPEND="selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test "
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /etc/kubernetes/manifests /var/log/kubelet /var/lib/kubelet
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ insinto /etc/kubernetes
+ newins "${FILESDIR}"/${PN}.env ${PN}.env
+}
diff --git a/sys-cluster/kubelet/kubelet-1.28.13.ebuild b/sys-cluster/kubelet/kubelet-1.28.13.ebuild
new file mode 100644
index 000000000000..c0a948f3d3ec
--- /dev/null
+++ b/sys-cluster/kubelet/kubelet-1.28.13.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+DESCRIPTION="Kubernetes Node Agent"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+RDEPEND="selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test "
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /etc/kubernetes/manifests /var/log/kubelet /var/lib/kubelet
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ insinto /etc/kubernetes
+ newins "${FILESDIR}"/${PN}.env ${PN}.env
+}
diff --git a/sys-cluster/kubelet/kubelet-1.29.7.ebuild b/sys-cluster/kubelet/kubelet-1.29.7.ebuild
index 91977a28275c..c0a948f3d3ec 100644
--- a/sys-cluster/kubelet/kubelet-1.29.7.ebuild
+++ b/sys-cluster/kubelet/kubelet-1.29.7.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened selinux"
BDEPEND=">=dev-lang/go-1.21.9"
diff --git a/sys-cluster/kubelet/kubelet-1.29.8.ebuild b/sys-cluster/kubelet/kubelet-1.29.8.ebuild
new file mode 100644
index 000000000000..91977a28275c
--- /dev/null
+++ b/sys-cluster/kubelet/kubelet-1.29.8.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+DESCRIPTION="Kubernetes Node Agent"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.9"
+RDEPEND="selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test "
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /etc/kubernetes/manifests /var/log/kubelet /var/lib/kubelet
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ insinto /etc/kubernetes
+ newins "${FILESDIR}"/${PN}.env ${PN}.env
+}
diff --git a/sys-cluster/kubelet/kubelet-1.30.3.ebuild b/sys-cluster/kubelet/kubelet-1.30.3.ebuild
index 49e2249286ad..3a791fbf13b7 100644
--- a/sys-cluster/kubelet/kubelet-1.30.3.ebuild
+++ b/sys-cluster/kubelet/kubelet-1.30.3.ebuild
@@ -10,7 +10,7 @@ SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kuber
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 ~arm64"
IUSE="hardened selinux"
BDEPEND=">=dev-lang/go-1.21.6"
diff --git a/sys-cluster/kubelet/kubelet-1.30.4.ebuild b/sys-cluster/kubelet/kubelet-1.30.4.ebuild
new file mode 100644
index 000000000000..49e2249286ad
--- /dev/null
+++ b/sys-cluster/kubelet/kubelet-1.30.4.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+DESCRIPTION="Kubernetes Node Agent"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.21.6"
+RDEPEND="selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test "
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /etc/kubernetes/manifests /var/log/kubelet /var/lib/kubelet
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ insinto /etc/kubernetes
+ newins "${FILESDIR}"/${PN}.env ${PN}.env
+}
diff --git a/sys-cluster/kubelet/kubelet-1.31.0.ebuild b/sys-cluster/kubelet/kubelet-1.31.0.ebuild
new file mode 100644
index 000000000000..a5aae6c40845
--- /dev/null
+++ b/sys-cluster/kubelet/kubelet-1.31.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module systemd
+
+DESCRIPTION="Kubernetes Node Agent"
+HOMEPAGE="https://kubernetes.io"
+SRC_URI="https://github.com/kubernetes/kubernetes/archive/v${PV}.tar.gz -> kubernetes-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="hardened selinux"
+
+BDEPEND=">=dev-lang/go-1.23.0"
+RDEPEND="selinux? ( sec-policy/selinux-kubernetes )"
+
+RESTRICT+=" test "
+S="${WORKDIR}/kubernetes-${PV}"
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')" \
+ emake -j1 GOFLAGS="" GOLDFLAGS="" LDFLAGS="" FORCE_HOST_GO=yes \
+ WHAT=cmd/${PN}
+}
+
+src_install() {
+ dobin _output/bin/${PN}
+ keepdir /etc/kubernetes/manifests /var/log/kubelet /var/lib/kubelet
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ insinto /etc/kubernetes
+ newins "${FILESDIR}"/${PN}.env ${PN}.env
+}
diff --git a/sys-cluster/kubeletctl/Manifest b/sys-cluster/kubeletctl/Manifest
index d8954572c253..97b51dbb88ac 100644
--- a/sys-cluster/kubeletctl/Manifest
+++ b/sys-cluster/kubeletctl/Manifest
@@ -1,2 +1,4 @@
+DIST kubeletctl-1.12-deps.tar.xz 1586588 BLAKE2B e39f271cfa2a5b0e9283139181d0d988c54643985416c1ca5fa09fd266ddcc5621d7b537b1edb2bbfdc386601bd65591417a483752ec6fbfc883e0d0ad3277bd SHA512 b68bfcc0757e7e0d16648bfa35effe27a1040e189e86417c2967047ee956656eca2ed425a7bae609a076b5a5b408ad1ccb36bc4a0b063fb42df5e0b12e61d850
+DIST kubeletctl-1.12.tar.gz 47285 BLAKE2B f8d7784b9fd64bd91679ebb7f2306fd1613cfdf95c94f816a0823f7e0fd6892a4f5611c6263aee6363186fac2b984dadf4b5484505bf5eea87efdd3556968b5c SHA512 a18d37cc383d196cf620aa48f37d0c6e95b468d29ddc8f55c8b58bfbd0a781bbfbffaa6e57d18c8ec79998a1fe28c44460321e78c05a0d4620cfe74e045138c7
DIST kubeletctl-1.6-deps.tar.xz 36450320 BLAKE2B 266c6ba630543684f5d20b2c0ca4d0703997fc169bb5abe09302d69981ef65e169682cb9f871b39f0ddd0d76932354983709013ece800f94a28e1f9ce9186f73 SHA512 82f18a1e4b9dbdd8223fea77735616071893241048a82aa7615977d873aebe10a43c8f11c56dcdc3b5c392c1a150606e478d1b04fe67c5340b5f1ccae3316a3f
DIST kubeletctl-1.6.tar.gz 47987 BLAKE2B f69bf6e1e53a62f0a2f2edfd3a4ee2ec040349136f08077837050bed03de9b6cfc6019cac844227125b979b94976b5336eac5ce42f385c3f60be6b2265e57361 SHA512 2701d66980284cf153fe8305cb812a6bb2af550e7c7ee6aa37187a3b9d5d6ae78e4a9c7a46ae3db05b1e4d863f87f48a60091d18c35e46ce71354e894bc6922a
diff --git a/sys-cluster/kubeletctl/kubeletctl-1.12.ebuild b/sys-cluster/kubeletctl/kubeletctl-1.12.ebuild
new file mode 100644
index 000000000000..da824f7f6ebb
--- /dev/null
+++ b/sys-cluster/kubeletctl/kubeletctl-1.12.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="A client for kubelet"
+HOMEPAGE="https://github.com/cyberark/kubeletctl"
+SRC_URI="https://github.com/cyberark/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT+=" test"
+
+src_compile() {
+ go build -ldflags "-s -w" || die
+}
+
+src_install() {
+ dobin ${PN}
+ dodoc README.md
+}
diff --git a/sys-cluster/kubelogin/Manifest b/sys-cluster/kubelogin/Manifest
index b54ee8a79e93..e062053a2803 100644
--- a/sys-cluster/kubelogin/Manifest
+++ b/sys-cluster/kubelogin/Manifest
@@ -1,4 +1,4 @@
-DIST kubelogin-1.28.0-deps.tar.xz 36937936 BLAKE2B b05945d88bd6e389ae9081cdfd3f594677cf9689993d11852bcfe9d5e4bf73e3da3932b3ffddfb9a342516383e6a0903050274de95abbfac3a8fe97641e35510 SHA512 64d7cf6155ad19b60f92443dd0375f44de8a99c65e4546c5cf15330bb0c41b434569f5422cf5611904538b5acc8d78df1268cfd1fce2b22b0e16940870228073
-DIST kubelogin-1.28.0.tar.gz 382953 BLAKE2B 7192b39fafee09eca9f8b26cad0a3a21c792ee6383382f809c71f79af81d3ee69393879df7d7d0fa2a96e3435f196f4d7a7d8d7541c49650628ced1c44a080f3 SHA512 b39cdb31aab7cb1bedbf5d13a449e289569b6e17c319900d18e741aeb8b88a8eee5534aec57753457e6a5b9b139b85b95f2bdb438b79773a8ae54e3eb57a4358
DIST kubelogin-1.28.1-deps.tar.xz 35112884 BLAKE2B 00aee14dec80203e0445301a49e59be5d739c211cacfeba64fbfde4b6ec1396d0740ff63ee4dfef162ba808be4e33c8e8f9a63c10041b9ae104988d4eac62add SHA512 4d65c54990fa40dccbca4482afbab2cc2c0052379574474e1beadba7f2c242aeb06878822531fc30e406cc513a5b5b73c62e05085fe34f192337613aa4477768
DIST kubelogin-1.28.1.tar.gz 384721 BLAKE2B dabb3f2d9fe9b19254c2033fefde6a4da408a008a1f5e7203166bac690689fef3601daf505562baca18aa12d03bec2caa9d13e47e6975e56e386dff5405c754b SHA512 c18f1a8b394da441258ada8d364733411a05f84e745791ff909121a4e968aa42e6d8fa6143d251d45a2da8b3cf43d311698e16e4f23c946747f90130583a2bfa
+DIST kubelogin-1.30.1-deps.tar.xz 35724272 BLAKE2B 03f28c91452b58c80569d8a981ef503616e63620d825dbcf9449e49b08056cb039908ce7ce04ab059f4b3f78b2f007b3d74486310202b297f67aecf874ce8729 SHA512 4f8eb100230efaaf773a5f0e094bc753fae675af4d13d2e411ea15146f552bd345a0307082387acfa3219530e008043705e6cfd8df1d63270f9de3a8103ef898
+DIST kubelogin-1.30.1.tar.gz 406729 BLAKE2B 61831fa7d5c1263da8688e327af8514a0f91e361a47c4b445aa692a7f5ef968dbb72a947842b26856ba319f60555c35929a6f7d21e277b6a26277b3e55b8f02f SHA512 124407cec3f50c0fbe12a4a33fade7065314f07fbe8c2187d5bd06e3291abf53f3c412dbbf4440f13b195193143636d8f9f2480e4f0f6be44334031fe5e7a733
diff --git a/sys-cluster/kubelogin/kubelogin-1.28.1.ebuild b/sys-cluster/kubelogin/kubelogin-1.28.1.ebuild
index 3df1f523fb01..0c7e9e905bbf 100644
--- a/sys-cluster/kubelogin/kubelogin-1.28.1.ebuild
+++ b/sys-cluster/kubelogin/kubelogin-1.28.1.ebuild
@@ -11,7 +11,7 @@ SRC_URI+=" https://dev.gentoo.org/~concord/distfiles/${P}-deps.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 ISC MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="amd64 arm64"
src_compile() {
ego build -ldflags="-s -w" -o ./bin/${PN} .
diff --git a/sys-cluster/kubelogin/kubelogin-1.28.0.ebuild b/sys-cluster/kubelogin/kubelogin-1.30.1.ebuild
index 6ce2842b1523..3df1f523fb01 100644
--- a/sys-cluster/kubelogin/kubelogin-1.28.0.ebuild
+++ b/sys-cluster/kubelogin/kubelogin-1.30.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/sys-cluster/openmpi/Manifest b/sys-cluster/openmpi/Manifest
index bf2e52948e42..52071f2eda78 100644
--- a/sys-cluster/openmpi/Manifest
+++ b/sys-cluster/openmpi/Manifest
@@ -1,2 +1,3 @@
DIST openmpi-4.1.6.tar.bz2 10017002 BLAKE2B 4f119e1ed9b8787f0f860295ab1721fe2fd5300b8e182230a9eba3a864680b02bbd30618cc6d798a693a121626fc0ad5f447144d9ba91becb734f1a530d7a23a SHA512 0ef3240f9c436fb19b67e836cac376eafeb7825d12de3387dad04329dee9f182799d17d785ea23eba763810f479015bb5230593c28950b616b2f0aa1c0a81e71
DIST openmpi-5.0.3.tar.bz2 29761888 BLAKE2B a084813f3dada12bbe77dcc6ef0ec0454980779f97ccb46f37f3d7df3bf7299e6484ec3427c2ca784e70876f62dc061a13cb7f08348e3d649e27f2bece9a09ac SHA512 60e8f6dcd6b1531ce8164e02f40be9a364ab484166a2a7b13bdff115a508f0596e97ad0a4204a47799ae608ba484a7ba9503042bddffe675f09ce22071b0b4a9
+DIST openmpi-5.0.5.tar.bz2 30000495 BLAKE2B 740e5dbc7e54b8f4eac4fa2c40fb5a0ccfba201dff15ccc84899f28dfad0147078ef6c2b0585615c93fc6edb70b665b3f7a9adea5e5e53a7563ae4c7a6ccbada SHA512 d0a137ebdeb578f0457113c6dd0f84d407c88d8f8844e6796114c8026d7391ebfb29d105f16289338eb3ac653ae9d3c0bdc4aa651402444b2ca91c1c447dc409
diff --git a/sys-cluster/openmpi/openmpi-4.1.6.ebuild b/sys-cluster/openmpi/openmpi-4.1.6.ebuild
index 6011e81b155b..a0dc9487386f 100644
--- a/sys-cluster/openmpi/openmpi-4.1.6.ebuild
+++ b/sys-cluster/openmpi/openmpi-4.1.6.ebuild
@@ -29,7 +29,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~loong ~ppc ppc64 ~riscv sparc x86 ~amd64-linux"
+KEYWORDS="~alpha amd64 arm arm64 ~loong ~ppc ppc64 ~riscv sparc x86 ~amd64-linux"
IUSE="cma cuda cxx fortran ipv6 libompitrace peruse romio valgrind
${IUSE_OPENMPI_FABRICS} ${IUSE_OPENMPI_RM} ${IUSE_OPENMPI_OFED_FEATURES}"
diff --git a/sys-cluster/openmpi/openmpi-5.0.3.ebuild b/sys-cluster/openmpi/openmpi-5.0.3.ebuild
index a438ede20f30..4c3c9e8b32aa 100644
--- a/sys-cluster/openmpi/openmpi-5.0.3.ebuild
+++ b/sys-cluster/openmpi/openmpi-5.0.3.ebuild
@@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 -arm -ppc -x86 ~amd64-linux"
+KEYWORDS="~amd64 -arm -ppc -x86 ~amd64-linux"
IUSE="cma cuda fortran ipv6 peruse romio valgrind
${IUSE_OPENMPI_FABRICS} ${IUSE_OPENMPI_RM}"
diff --git a/sys-cluster/openmpi/openmpi-5.0.5.ebuild b/sys-cluster/openmpi/openmpi-5.0.5.ebuild
new file mode 100644
index 000000000000..37b017e4483e
--- /dev/null
+++ b/sys-cluster/openmpi/openmpi-5.0.5.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_NEEDED=fortran
+inherit cuda flag-o-matic fortran-2 libtool
+
+MY_P=${P/-mpi}
+
+IUSE_OPENMPI_FABRICS="
+ openmpi_fabrics_ofed
+ openmpi_fabrics_knem"
+
+IUSE_OPENMPI_RM="
+ openmpi_rm_pbs
+ openmpi_rm_slurm"
+
+DESCRIPTION="A high-performance message passing library (MPI)"
+HOMEPAGE="https://www.open-mpi.org"
+SRC_URI="https://www.open-mpi.org/software/ompi/v$(ver_cut 1-2)/downloads/${MY_P}.tar.bz2"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 -arm ~arm64 -ppc ~ppc64 -x86 ~amd64-linux"
+IUSE="cma cuda fortran ipv6 peruse romio valgrind
+ ${IUSE_OPENMPI_FABRICS} ${IUSE_OPENMPI_RM}"
+
+REQUIRED_USE="
+ openmpi_rm_slurm? ( !openmpi_rm_pbs )
+ openmpi_rm_pbs? ( !openmpi_rm_slurm )
+"
+
+RDEPEND="
+ !sys-cluster/mpich
+ !sys-cluster/mpich2
+ !sys-cluster/nullmpi
+ >=dev-libs/libevent-2.0.22:=[threads(+)]
+ >=sys-apps/hwloc-2.0.2:=
+ sys-cluster/pmix:=
+ sys-cluster/prrte:=
+ >=sys-libs/zlib-1.2.8-r1
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+ openmpi_fabrics_ofed? ( sys-cluster/rdma-core )
+ openmpi_fabrics_knem? ( sys-cluster/knem )
+ openmpi_rm_pbs? ( sys-cluster/torque )
+ openmpi_rm_slurm? ( sys-cluster/slurm )
+"
+DEPEND="${RDEPEND}
+ valgrind? ( dev-debug/valgrind )"
+
+pkg_setup() {
+ fortran-2_pkg_setup
+
+ elog
+ elog "OpenMPI has an overwhelming count of configuration options."
+ elog "Don't forget the EXTRA_ECONF environment variable can let you"
+ elog "specify configure options if you find them necessary."
+ elog
+}
+
+src_prepare() {
+ default
+ elibtoolize
+
+ # Avoid test which ends up looking at system mounts
+ echo "int main() { return 0; }" > test/util/opal_path_nfs.c || die
+
+ # Necessary for scalibility, see
+ # http://www.open-mpi.org/community/lists/users/2008/09/6514.php
+ echo 'oob_tcp_listen_mode = listen_thread' \
+ >> opal/etc/openmpi-mca-params.conf || die
+}
+
+src_configure() {
+ # -Werror=lto-type-mismatch, -Werror=strict-aliasing
+ # The former even prevents successfully running ./configure, but both appear
+ # at `make` time as well.
+ # https://bugs.gentoo.org/913040
+ # https://github.com/open-mpi/ompi/issues/12674
+ # https://github.com/open-mpi/ompi/issues/12675
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ local myconf=(
+ --disable-mpi-java
+ # configure takes a looooong time, but upstream currently force
+ # constriants on caching:
+ # https://github.com/open-mpi/ompi/blob/9eec56222a5c98d13790c9ee74877f1562ac27e8/config/opal_config_subdir.m4#L118
+ # so no --cache-dir for now.
+ --enable-mpi-fortran=$(usex fortran all no)
+ --enable-prte-prefix-by-default
+ --enable-pretty-print-stacktrace
+
+ --sysconfdir="${EPREFIX}/etc/${PN}"
+
+ --with-hwloc=external
+ --with-libevent=external
+ --with-prrte=external
+
+ # Oiriginally supposed to be re-enabled for 5.0!
+ # See https://github.com/open-mpi/ompi/issues/9697#issuecomment-1003746357
+ # and https://bugs.gentoo.org/828123#c14
+ #
+ # However as of 5.0.3 the docs still say:
+ #
+ # As such, supporting data heterogeneity is a feature that has fallen
+ # into disrepair and is currently known to be broken in this release
+ # of Open MPI.
+ --disable-heterogeneous
+
+ $(use_enable ipv6)
+ $(use_enable peruse)
+ $(use_enable romio io-romio)
+
+ $(use_with cma)
+
+ $(use_with cuda cuda "${EPREFIX}"/opt/cuda)
+ $(use_with valgrind)
+ $(use_with openmpi_fabrics_knem knem "${EPREFIX}"/usr)
+ $(use_with openmpi_rm_pbs tm)
+ $(use_with openmpi_rm_slurm slurm)
+ )
+
+ CONFIG_SHELL="${BROOT}"/bin/bash econf "${myconf[@]}"
+}
+
+src_compile() {
+ emake V=1
+}
+
+src_test() {
+ emake -C test check
+}
+
+src_install() {
+ default
+
+ # Remove la files, no static libs are installed and we have pkg-config
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/sys-cluster/pmix/pmix-5.0.3.ebuild b/sys-cluster/pmix/pmix-5.0.3.ebuild
index 6cee90d4fa12..b37a67a20d75 100644
--- a/sys-cluster/pmix/pmix-5.0.3.ebuild
+++ b/sys-cluster/pmix/pmix-5.0.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/openpmix/openpmix/releases/download/v${PV}/${P}.tar.
LICENSE="BSD"
SLOT="0"
# No support for 32-bit systems as of 4.2.8 (https://github.com/open-mpi/ompi/issues/11248)
-KEYWORDS="~amd64 -x86 ~amd64-linux"
+KEYWORDS="~amd64 ~arm64 ~ppc64 -x86 ~amd64-linux"
IUSE="debug +munge pmi"
RDEPEND="
diff --git a/sys-cluster/prrte/Manifest b/sys-cluster/prrte/Manifest
new file mode 100644
index 000000000000..000d5865482f
--- /dev/null
+++ b/sys-cluster/prrte/Manifest
@@ -0,0 +1 @@
+DIST prrte-3.0.6.tar.gz 5976755 BLAKE2B 62cff51ebb7e72c32a237eb36db925f5bf5811cf5f409619128fa8ef490d3ba9e6ba4a1701edd21486878974088ff17645c98dab12904abd48c4a4b50453f807 SHA512 f7d3a1bedc0029fcb0e4e906a099d1de07b171805f0cc8d6e443826b8c321e3d5e7fa80867d8ab9ae1f628446a1a8f663231d8b67e243650582225805adc6e9d
diff --git a/sys-cluster/prrte/metadata.xml b/sys-cluster/prrte/metadata.xml
new file mode 100644
index 000000000000..51ef0c126080
--- /dev/null
+++ b/sys-cluster/prrte/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cluster@gentoo.org</email>
+ <name>Gentoo Cluster Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">openpmix/prrte</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-cluster/prrte/prrte-3.0.6.ebuild b/sys-cluster/prrte/prrte-3.0.6.ebuild
new file mode 100644
index 000000000000..6790ea5231fa
--- /dev/null
+++ b/sys-cluster/prrte/prrte-3.0.6.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic libtool
+
+DESCRIPTION="PMIx Reference RunTime Environment"
+HOMEPAGE="https://openpmix.github.io/"
+SRC_URI="https://github.com/openpmix/prrte/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+
+DEPEND="
+ dev-libs/libevent:=
+ sys-apps/hwloc:=
+ >=sys-cluster/pmix-4.2.4
+"
+RDEPEND="${DEPEND}"
+
+# There is no testsuite at least today.
+RESTRICT="test"
+
+src_prepare() {
+ default
+ elibtoolize
+}
+
+src_configure() {
+ # -Werror=lto-type-mismatch
+ #
+ # Same issue as its companion project sys-cluster/pmix, and logically
+ # solvable in tandem (or never).
+ # https://github.com/openpmix/openpmix/issues/3350
+ filter-lto
+
+ econf
+}
+
+src_install() {
+ default
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/sys-cluster/rdma-core/files/rdma-core-50.0-use-posix-version-of-basename.patch b/sys-cluster/rdma-core/files/rdma-core-50.0-use-posix-version-of-basename.patch
new file mode 100644
index 000000000000..82dc5c598a13
--- /dev/null
+++ b/sys-cluster/rdma-core/files/rdma-core-50.0-use-posix-version-of-basename.patch
@@ -0,0 +1,65 @@
+https://patch-diff.githubusercontent.com/raw/linux-rdma/rdma-core/pull/1471.patch
+From: Nicolas Morey <nmorey@suse.com>
+Date: Tue, 4 Jun 2024 08:49:04 +0200
+Subject: [PATCH 1/2] rping: drop useless basename call
+
+Drop calls to basename on a constant string without a path in it ("rping")
+
+Signed-off-by: Nicolas Morey <nmorey@suse.com>
+--- a/librdmacm/examples/rping.c
++++ b/librdmacm/examples/rping.c
+@@ -34,7 +34,6 @@
+ #include <endian.h>
+ #include <getopt.h>
+ #include <stdlib.h>
+-#include <string.h>
+ #include <stdio.h>
+ #include <errno.h>
+ #include <sys/types.h>
+@@ -1253,9 +1252,9 @@ static int get_addr(char *dst, struct sockaddr *addr)
+ static void usage(const char *name)
+ {
+ printf("%s -s [-vVd] [-S size] [-C count] [-a addr] [-p port]\n",
+- basename(name));
++ name);
+ printf("%s -c [-vVd] [-S size] [-C count] [-I addr] -a addr [-p port]\n",
+- basename(name));
++ name);
+ printf("\t-c\t\tclient side\n");
+ printf("\t-I\t\tSource address to bind to for client.\n");
+ printf("\t-s\t\tserver side. To bind to any address with IPv6 use -a ::0\n");
+
+From e8b215a7d85c8228d0bd90c17f20b42a03e44dbe Mon Sep 17 00:00:00 2001
+From: Nicolas Morey <nmorey@suse.com>
+Date: Tue, 4 Jun 2024 08:51:51 +0200
+Subject: [PATCH 2/2] kernel-boot,mlx5: use POSIX version of basename
+
+Include libgen.h to use the POSIX version and not the GNU version of basename.
+Because it is used on readlink from sysfs paths, there is no risk of trailing '/'
+so they both behave the same way.
+
+This fixes issues with the latest musl which removed the GNU implementation of basename.
+
+Signed-off-by: Nicolas Morey <nmorey@suse.com>
+--- a/kernel-boot/rdma_rename.c
++++ b/kernel-boot/rdma_rename.c
+@@ -4,7 +4,7 @@
+ #define _GNU_SOURCE
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <string.h>
++#include <libgen.h>
+ #include <stdbool.h>
+ #include <errno.h>
+ #include <unistd.h>
+--- a/providers/mlx5/mlx5_vfio.c
++++ b/providers/mlx5/mlx5_vfio.c
+@@ -14,7 +14,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <sys/mman.h>
+-#include <string.h>
++#include <libgen.h>
+ #include <sys/param.h>
+ #include <linux/vfio.h>
+ #include <sys/eventfd.h>
diff --git a/sys-cluster/rdma-core/rdma-core-50.0-r1.ebuild b/sys-cluster/rdma-core/rdma-core-50.0-r1.ebuild
new file mode 100644
index 000000000000..7ef2507661dd
--- /dev/null
+++ b/sys-cluster/rdma-core/rdma-core-50.0-r1.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit cmake perl-functions python-single-r1 udev systemd
+
+DESCRIPTION="Userspace components for the Linux Kernel's drivers/infiniband subsystem"
+HOMEPAGE="https://github.com/linux-rdma/rdma-core"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core"
+else
+ SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )"
+SLOT="0"
+IUSE="lttng neigh python static-libs systemd valgrind"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEPEND="
+ dev-lang/perl:=
+ virtual/libudev:=
+ lttng? ( dev-util/lttng-ust:= )
+ neigh? ( dev-libs/libnl:3 )
+ systemd? ( sys-apps/systemd:= )
+ valgrind? ( dev-debug/valgrind )
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ python? (
+ $(python_gen_cond_dep '
+ dev-python/cython[${PYTHON_USEDEP}]
+ ')
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !sys-fabric/infiniband-diags
+ !sys-fabric/libibverbs
+ !sys-fabric/librdmacm
+ !sys-fabric/libibumad
+ !sys-fabric/ibacm
+ !sys-fabric/libibmad
+ !sys-fabric/srptools
+ !sys-fabric/infinipath-psm
+ !sys-fabric/libcxgb3
+ !sys-fabric/libcxgb4
+ !sys-fabric/libmthca
+ !sys-fabric/libmlx4
+ !sys-fabric/libmlx5
+ !sys-fabric/libocrdma
+ !sys-fabric/libnes
+"
+# python is required unconditionally at build-time
+BDEPEND="
+ ${PYTHON_DEPS}
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-39.0-RDMA_BuildType.patch
+ "${FILESDIR}"/${PN}-50.0-use-posix-version-of-basename.patch
+)
+
+src_prepare() {
+ # DEFINED is true even if the value is false, which makes lttng unconditional
+ sed -i -e 's/if (DEFINED ENABLE_LTTNG)/if (ENABLE_LTTNG)/' CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ perl_set_version
+
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}"/etc
+ -DCMAKE_INSTALL_RUNDIR=/run
+ -DCMAKE_INSTALL_SHAREDSTATEDIR="${EPREFIX}"/var/lib
+ -DCMAKE_INSTALL_PERLDIR="${VENDOR_LIB}"
+ -DCMAKE_INSTALL_UDEV_RULESDIR="${EPREFIX}$(get_udevdir)"/rules.d
+ -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)"
+ -DCMAKE_DISABLE_FIND_PACKAGE_Systemd="$(usex !systemd)"
+ -DENABLE_LTTNG="$(usex lttng)"
+ -DENABLE_VALGRIND="$(usex valgrind)"
+ -DENABLE_RESOLVE_NEIGH="$(usex neigh)"
+ -DENABLE_STATIC="$(usex static-libs)"
+ -DNO_PYVERBS="$(usex !python)"
+ -DNO_MAN_PAGES=1
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ udev_dorules "${ED}"/usr/share/doc/${PF}/70-persistent-ipoib.rules
+
+ if use neigh; then
+ newinitd "${FILESDIR}"/ibacm.init ibacm
+ newinitd "${FILESDIR}"/iwpmd.init iwpmd
+ fi
+
+ newinitd "${FILESDIR}"/srpd.init srpd
+
+ use python && python_optimize
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sys-cluster/rdma-core/rdma-core-50.0.ebuild b/sys-cluster/rdma-core/rdma-core-50.0.ebuild
index fbf0168e5116..2763cb3b564b 100644
--- a/sys-cluster/rdma-core/rdma-core-50.0.ebuild
+++ b/sys-cluster/rdma-core/rdma-core-50.0.ebuild
@@ -15,7 +15,7 @@ if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core"
else
SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
fi
LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )"
diff --git a/sys-cluster/rdma-core/rdma-core-9999.ebuild b/sys-cluster/rdma-core/rdma-core-9999.ebuild
index 8a36975d06df..8a6bef0db802 100644
--- a/sys-cluster/rdma-core/rdma-core-9999.ebuild
+++ b/sys-cluster/rdma-core/rdma-core-9999.ebuild
@@ -15,7 +15,7 @@ if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core"
else
SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )"
diff --git a/sys-cluster/sanlock/sanlock-3.8.4-r1.ebuild b/sys-cluster/sanlock/sanlock-3.8.4-r1.ebuild
index ff656ce614b7..4fbe42d16aa2 100644
--- a/sys-cluster/sanlock/sanlock-3.8.4-r1.ebuild
+++ b/sys-cluster/sanlock/sanlock-3.8.4-r1.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://releases.pagure.org/${PN}/${P}.tar.gz"
LICENSE="LGPL-2+ GPL-2 GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
diff --git a/sys-cluster/sanlock/sanlock-3.8.5.ebuild b/sys-cluster/sanlock/sanlock-3.8.5.ebuild
index 38b736bf861b..3e4755ac7b9f 100644
--- a/sys-cluster/sanlock/sanlock-3.8.5.ebuild
+++ b/sys-cluster/sanlock/sanlock-3.8.5.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://releases.pagure.org/${PN}/${P}.tar.gz"
LICENSE="LGPL-2+ GPL-2 GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
diff --git a/sys-cluster/spark-bin/Manifest b/sys-cluster/spark-bin/Manifest
index 34d3a6ebefb2..99f45c5ffc9b 100644
--- a/sys-cluster/spark-bin/Manifest
+++ b/sys-cluster/spark-bin/Manifest
@@ -1,6 +1,3 @@
-DIST spark-bin-2.4.3-nohadoop-scala211.tgz 163128705 BLAKE2B 806964eb226aac2b4a63691b2644fc8e8cb6a7574eb4fbd8770a62c7974435b24c19253569c214b0d1a608b4de53eb351d16c4b14d3c83c91326883a795d59a8 SHA512 d1f87d46725e9feb5edf3df0c78daea263ad3e57e1a8a7069766f8e010fd673f0a99af2f69911f1319e9b6f864795e0e5291ee7c0c574434e92a458999374d85
-DIST spark-bin-2.4.3-nohadoop-scala212.tgz 141465231 BLAKE2B e29b534076b981e340833da0b6d93b8f2708a7919abfcd06f057ced6e7bb56f1140fab9d82ca157b4c7bd3aac9004d51fdfc0f8446cd9231e64e26236c2fb793 SHA512 e9651dfad8b6be162f800de987981e1b027d372e4391340589cdc23c7e579a8ec28cb950aa4aad7797ecfc330f0375844cc769a6ad5b35bac36b8cf404805c08
DIST spark-bin-2.4.7-nohadoop-scala211.tgz 168360525 BLAKE2B 9a8728a1c7450166d4d9635ff1be6a65d57df1832945672e92044e0fc88ef152e7e870d02ec590378ea97a47d4a68568da73e6a1e92f8eaaaa06f495ed9939ad SHA512 ff75e6db3c4ca5cece2a8a26ad7bd8a2c1c46b4f93e8f2922a31e6a8d98274bedc66bef3e469e862d249c5439355ccca83687a20d536a8400f2c058be553df57
DIST spark-bin-2.4.7-nohadoop-scala212.tgz 146775712 BLAKE2B f0381e6aebeae90990d5ad19d8db923efd01e9b215ddfe34e34a8272942e57fe7ec6a53208146006ba5c4e76f8e44d202e0715f63b559cc8749b523710b92a5f SHA512 708a702af5c754dba0137c88e3c7055d7759593f013798755468638b6fdc583a707aae4c2a4e14648f91c16b963f9bba9f8c44d28341c08c4512590a425f70a8
-DIST spark-bin-3.0.1-nohadoop.tgz 156390722 BLAKE2B 9ac4645759ca0ec6d1501dfa79d149b9cbf49dee1c4b9dcf38f62490d3ad91db01ad61d9d6b1ef4dd7bcb81a868cb58b9251575dded823c8415801d10571afee SHA512 07fc6df224f303ef53189e6082004400d51cd6c2244d1851d90eabbe58404a69ff980bffe147a5259a34190e1e1c974c72d02470d10a783d2d87f43a8da0850b
DIST spark-bin-3.1.2-hadoop.tgz 228834641 BLAKE2B 7b0191a15414146a96394abc489940a5e572cea66749b6201f234878935c6591ff809f551dae7d6c7c996baefd551cd27c5c967e2f06184ffe2bf972f901f1ba SHA512 2385cb772f21b014ce2abd6b8f5e815721580d6e8bc42a26d70bbcdda8d303d886a6f12b36d40f6971b5547b70fae62b5a96146f0421cb93d4e51491308ef5d5
diff --git a/sys-cluster/spark-bin/spark-bin-2.4.3.ebuild b/sys-cluster/spark-bin/spark-bin-2.4.3.ebuild
deleted file mode 100644
index 363bc8a43f06..000000000000
--- a/sys-cluster/spark-bin/spark-bin-2.4.3.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-DESCRIPTION="Lightning-fast unified analytics engine"
-HOMEPAGE="https://spark.apache.org"
-SRC_URI="
- !scala212? ( scala211? ( mirror://apache/spark/spark-${PV}/spark-${PV}-bin-without-hadoop.tgz -> ${P}-nohadoop-scala211.tgz ) )
- !scala211? ( scala212? ( mirror://apache/spark/spark-${PV}/spark-${PV}-bin-without-hadoop-scala-2.12.tgz -> ${P}-nohadoop-scala212.tgz ) )
-"
-
-REQUIRED_USE="^^ ( scala211 scala212 )"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64"
-
-IUSE="scala211 scala212"
-
-RDEPEND="
- >=virtual/jre-1.8"
-
-DEPEND="
- >=virtual/jdk-1.8"
-
-DOCS=( LICENSE NOTICE README.md RELEASE )
-
-src_unpack() {
- unpack ${A}
- use scala211 && S="${WORKDIR}/spark-${PV}-bin-without-hadoop"
- use scala212 && S="${WORKDIR}/spark-${PV}-bin-without-hadoop-scala-2.12"
-}
-
-# Nothing to compile here.
-src_compile() { :; }
-
-src_install() {
- dodir usr/lib/spark-${SLOT}
- into usr/lib/spark-${SLOT}
-
- local SPARK_SCRIPTS=(
- bin/beeline
- bin/find-spark-home
- bin/load-spark-env.sh
- bin/pyspark
- bin/spark-class
- bin/spark-shell
- bin/spark-sql
- bin/spark-submit
- )
-
- local s
- for s in "${SPARK_SCRIPTS[@]}"; do
- dobin "${s}"
- done
-
- insinto usr/lib/spark-${SLOT}
-
- local SPARK_DIRS=( conf jars python sbin yarn )
-
- local d
- for d in "${SPARK_DIRS[@]}"; do
- doins -r "${d}"
- done
-
- einstalldocs
-}
-
-pkg_postinst() {
- einfo
- einfo "Spark is now slotted. You have installed Spark ${SLOT}."
- einfo
- einfo "Make sure to add /usr/lib/spark-${SLOT}/{bin,sbin} directories"
- einfo "to your PATH in order to run Spark shell scripts:"
- einfo
- einfo "$ export PATH=\$PATH:/usr/lib/spark-${SLOT}/bin"
- einfo "$ export PATH=\$PATH:/usr/lib/spark-${SLOT}/sbin"
- einfo
-}
diff --git a/sys-cluster/spark-bin/spark-bin-3.0.1-r2.ebuild b/sys-cluster/spark-bin/spark-bin-3.0.1-r2.ebuild
deleted file mode 100644
index 9c34936b7ea9..000000000000
--- a/sys-cluster/spark-bin/spark-bin-3.0.1-r2.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit java-pkg-2
-
-DESCRIPTION="Lightning-fast unified analytics engine"
-HOMEPAGE="https://spark.apache.org"
-SRC_URI="mirror://apache/spark/spark-${PV}/spark-${PV}-bin-without-hadoop.tgz -> ${P}-nohadoop.tgz"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=virtual/jre-1.8"
-
-DEPEND="
- >=virtual/jdk-1.8"
-
-S="${WORKDIR}/spark-${PV}-bin-without-hadoop"
-
-DOCS=( LICENSE NOTICE README.md RELEASE )
-
-# Nothing to compile here.
-src_compile() { :; }
-
-src_install() {
- dodir usr/lib/spark-${SLOT}
- into usr/lib/spark-${SLOT}
-
- local SPARK_SCRIPTS=(
- bin/beeline
- bin/find-spark-home
- bin/load-spark-env.sh
- bin/pyspark
- bin/spark-class
- bin/spark-shell
- bin/spark-sql
- bin/spark-submit
- )
-
- local s
- for s in "${SPARK_SCRIPTS[@]}"; do
- dobin "${s}"
- done
-
- insinto usr/lib/spark-${SLOT}
-
- local SPARK_DIRS=( conf jars python sbin yarn )
-
- local d
- for d in "${SPARK_DIRS[@]}"; do
- doins -r "${d}"
- done
-
- einstalldocs
-}
-
-pkg_postinst() {
- einfo
- einfo "Spark is now slotted. You have installed Spark ${SLOT}."
- einfo
- einfo "Make sure to add /usr/lib/spark-${SLOT}/{bin,sbin} directories"
- einfo "to your PATH in order to run Spark shell scripts:"
- einfo
- einfo "$ export PATH=\$PATH:/usr/lib/spark-${SLOT}/bin"
- einfo "$ export PATH=\$PATH:/usr/lib/spark-${SLOT}/sbin"
- einfo
-}
diff --git a/sys-cluster/torque/torque-6.0.4-r4.ebuild b/sys-cluster/torque/torque-6.0.4-r4.ebuild
index 00bf710749ed..9dd1ba7277a2 100644
--- a/sys-cluster/torque/torque-6.0.4-r4.ebuild
+++ b/sys-cluster/torque/torque-6.0.4-r4.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://github.com/adaptivecomputing/torque/archive/${MY_COMMIT}.tar.gz
LICENSE="torque-2.5"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="autorun cgroups cpusets +crypt doc munge nvidia quickcommit server +syslog tk"
DEPEND_COMMON="
diff --git a/sys-cluster/torque/torque-6.0.4-r5.ebuild b/sys-cluster/torque/torque-6.0.4-r5.ebuild
index 4148d1591d59..09bbc5691c77 100644
--- a/sys-cluster/torque/torque-6.0.4-r5.ebuild
+++ b/sys-cluster/torque/torque-6.0.4-r5.ebuild
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="torque-2.5"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="autorun cgroups cpusets +crypt doc munge nvidia quickcommit server +syslog tk"
DEPEND_COMMON="
diff --git a/sys-cluster/torque/torque-6.0.4-r6.ebuild b/sys-cluster/torque/torque-6.0.4-r6.ebuild
index 56c733157562..56affbdb6e64 100644
--- a/sys-cluster/torque/torque-6.0.4-r6.ebuild
+++ b/sys-cluster/torque/torque-6.0.4-r6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="torque-2.5"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="autorun cgroups cpusets +crypt doc munge nvidia quickcommit server +syslog tk"
DEPEND_COMMON="
@@ -107,6 +107,13 @@ src_prepare() {
}
src_configure() {
+ # -Werror=odr, -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/863737
+ #
+ # The project went source-unavailable and doesn't respond on github.
+ # No bug reported.
+ filter-lto
+
append-cflags "-fpermissive"
# Force Bash for configure as there's a lot of issues with configure.ac and such here
diff --git a/sys-cluster/ucx/ucx-1.13.1.ebuild b/sys-cluster/ucx/ucx-1.13.1.ebuild
index 5f521e7e591f..2a6c6e3e33c3 100644
--- a/sys-cluster/ucx/ucx-1.13.1.ebuild
+++ b/sys-cluster/ucx/ucx-1.13.1.ebuild
@@ -13,7 +13,7 @@ S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 -riscv ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~arm64 ~ppc64 -riscv ~x86 ~amd64-linux ~x86-linux"
IUSE="+numa +openmp"
RDEPEND="
diff --git a/sys-cluster/zookeepercli/Manifest b/sys-cluster/zookeepercli/Manifest
index b5d863ef49be..98e7003495a5 100644
--- a/sys-cluster/zookeepercli/Manifest
+++ b/sys-cluster/zookeepercli/Manifest
@@ -1,3 +1 @@
-DIST github.com-outbrain-golib-ab954725f502c2be1491afadbbc66da2f99a45ae.tar.gz 5892 BLAKE2B 8ac98704758e0ddf121ae088b15873234f14eba14ab86379f3212638787345e618f104608364f21e9d00106242e4942293e4706dbc1bb7e5ddbf19b2f71bd511 SHA512 dfb5758f5c26320ca5cdf502c1e3847ed35adb85d09db7df2a0784a3ec0662dc316bab6d88e6aa9e085585fe0157aa9f83a53e30d0ac38b5cc96704e12fa8194
-DIST github.com-samuel-go-zookeeper-c4fab1ac1bec58281ad0667dc3f0907a9476ac47.tar.gz 37110 BLAKE2B 4c32afe54c27ed1532a50d386217bec3b477ceba3744bb415f906c5b0301db172289455a6631659e98b4600175ad391d09f7c60532bdc5754761a177482be37f SHA512 3dab581a699336979b7be6b9792a877eee9e9fe39157b0774e38831735e1148b522617d246c7c1d146cb8c6dd3faba20cb72b94e9bd85e532f11d20f97e755d9
-DIST zookeepercli-1.0.12.tar.gz 51077 BLAKE2B 5b5c07305407882845fe339bbc75fd7a521020f588db30303855733c6263409a6c3ad08d5c0bb287cd2c4c03aeb7ff7ee3b544c0b3480fab17952f67d6cca339 SHA512 fb18d1a725fe21e98039cdd19f158a344cae008eff319abeabf349921ef9f4b92b0e251ec5e6414102fe66394d287d1aa3c675bd7454665c1a47d0e9cb4fb352
+DIST zookeepercli-1.0.11.tar.gz 39371 BLAKE2B b024ce14e893bf9bfe4e2ffe2d5da81bf980907d37f348ac7a7063878ce05fd5f521f2c9cc32d28fb541895c2f635e5b7f0c80006a942384927bdf3a73997367 SHA512 91d53e8cbd3075db5f72aeb055b2d22f31948d5c8ad2ea5d3772358866ee728db53736a2cd871242ecd2929fe45ec853329ec089bdf0a88de8e48ff4e6114764
diff --git a/sys-cluster/zookeepercli/metadata.xml b/sys-cluster/zookeepercli/metadata.xml
index d58ea8e28fe1..4747695a9df1 100644
--- a/sys-cluster/zookeepercli/metadata.xml
+++ b/sys-cluster/zookeepercli/metadata.xml
@@ -6,6 +6,6 @@
<name>Zac Medico</name>
</maintainer>
<upstream>
- <remote-id type="github">openark/zookeepercli</remote-id>
+ <remote-id type="github">kt315/zookeepercli</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-cluster/zookeepercli/zookeepercli-1.0.11.ebuild b/sys-cluster/zookeepercli/zookeepercli-1.0.11.ebuild
new file mode 100644
index 000000000000..9a656b44daab
--- /dev/null
+++ b/sys-cluster/zookeepercli/zookeepercli-1.0.11.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="Simple, lightweight, dependable CLI for ZooKeeper"
+HOMEPAGE="https://github.com/kt315/zookeepercli"
+SRC_URI="https://github.com/kt315/zookeepercli/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+LICENSE+=" BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ ego build -ldflags "-X main.Version=${PV}" -o ./bin/${PN}
+}
+
+src_install() {
+ dobin bin/${PN}
+ dodoc README.md
+}
diff --git a/sys-cluster/zookeepercli/zookeepercli-1.0.12.ebuild b/sys-cluster/zookeepercli/zookeepercli-1.0.12.ebuild
deleted file mode 100644
index c33552c11fc4..000000000000
--- a/sys-cluster/zookeepercli/zookeepercli-1.0.12.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-EGO_PN="github.com/outbrain/zookeepercli"
-EGO_VENDOR=(
- "github.com/outbrain/golib ab954725f502c2be1491afadbbc66da2f99a45ae"
- "github.com/samuel/go-zookeeper c4fab1ac1bec58281ad0667dc3f0907a9476ac47"
-)
-
-inherit golang-vcs-snapshot
-
-KEYWORDS="~amd64"
-EGIT_COMMIT="v${PV}"
-SRC_URI="https://${EGO_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
- ${EGO_VENDOR_URI}"
-S="${WORKDIR}/${P}/src/${EGO_PN}"
-DESCRIPTION="Simple, lightweight, dependable CLI for ZooKeeper"
-HOMEPAGE="https://github.com/openark/zookeepercli"
-LICENSE="Apache-2.0 BSD"
-SLOT="0"
-IUSE=""
-DEPEND=">=dev-lang/go-1.9:="
-
-src_compile() {
- export -n GOCACHE XDG_CACHE_HOME #678960
- GOPATH="${WORKDIR}/${P}" \
- go build -v -work -x ${EGO_BUILD_FLAGS} \
- -o "${S}/bin/zookeepercli" \
- ./go/cmd/zookeepercli.go || die
-}
-
-src_install() {
- dobin bin/${PN}
- dodoc README.md
-}