summaryrefslogtreecommitdiff
path: root/app-containers/podman
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-03-23 13:01:09 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-03-23 13:01:09 +0000
commitacc2dacf2ee9a5b03df96da670153f2e3a24d80c (patch)
tree852bc5b5f64c3dc59ac09c6a2314c63b9a901ac0 /app-containers/podman
parent2c9b8fbe41c04a94054b0540b54fcf2de0b79166 (diff)
gentoo auto-resync : 23:03:2024 - 13:01:09
Diffstat (limited to 'app-containers/podman')
-rw-r--r--app-containers/podman/Manifest14
-rw-r--r--app-containers/podman/files/podman-auto-update-5.0.0.cron5
-rw-r--r--app-containers/podman/files/podman-auto-update-5.0.0_rc4.cron7
-rw-r--r--app-containers/podman/metadata.xml6
-rw-r--r--app-containers/podman/podman-5.0.0.ebuild (renamed from app-containers/podman/podman-4.8.3.ebuild)65
-rw-r--r--app-containers/podman/podman-5.0.0_rc5.ebuild148
-rw-r--r--app-containers/podman/podman-5.0.0_rc7.ebuild151
-rw-r--r--app-containers/podman/podman-9999.ebuild73
8 files changed, 63 insertions, 406 deletions
diff --git a/app-containers/podman/Manifest b/app-containers/podman/Manifest
index e2212b54517c..8f767f12b80c 100644
--- a/app-containers/podman/Manifest
+++ b/app-containers/podman/Manifest
@@ -1,6 +1,6 @@
AUX podman-5.0.0_rc4.confd 323 BLAKE2B 19bb62e91673791a46f7992b79190c8207636a8fe38fb12250e904acb5e86112603dabfeacf878c597e636b489475f113556bc82376d3c54c2f042a50530261a SHA512 9356733d5922d18f135d013470b03e10c1f9834cb59f72bc2bcab2fc8f2d70f242abf7c9f87e22dda0f5cc791218878278f3d7b341fd81a5c9edd5f0f672420c
AUX podman-5.0.0_rc4.initd 651 BLAKE2B 3a0673f823b1adda553b2453512c29c63f00d42bce0ee6d49227b410e0d74dfa4a941c1220845153c2fa538269658577f13ede74b061d7758171e7ba29d57263 SHA512 25bf6275e49cdc130a21d3f553ba19c5e3913efbb98855497c91a20dc3f43dff6db9796a2791473d44f04faa652230ff0698a7c1e6b091073ea9ca4922e63a26
-AUX podman-auto-update-5.0.0_rc4.cron 170 BLAKE2B 8902d299df68845d79592aebf3da566100b7f80a109aeadef1a3763ffcfd3d5b1dd880c481b52211f0e7e6eb52546cc312c26e9a34f5605daddae1d36c70a7b2 SHA512 4dd50f1807284e0f60239a6df74ceec52d9a6ec02aa4d5e3dc4d0e6d26537e7a18422f5bb2b4d6f6d59e7d13016dc845b41f5917b9979fac5861a86a7e7e45b0
+AUX podman-auto-update-5.0.0.cron 185 BLAKE2B 78553b31c4f2f9fe929780af752cee33db0e95944275853b1ef641416d9d10cd8a12af73b2f14f330d24e5961f17ac06c4dde47b1dc98de38cf3576995bb9607 SHA512 ae34ee8936d5a16dfad92afb4d9830ae4b06bd10ee4f36b4ad642c6690af025a73b169507f68926a14e3274c92fa49d0f9994334fc4ca369aa6137722a5cb8fc
AUX podman-clean-transient-5.0.0_rc6.confd 235 BLAKE2B 25100f79c09c4ea388be27ed5e2d5f537d790688ad808cc02183d3e1f86d791f69133d3a3d1137179dd48d70aa1769a2b3ada77d17b7f25cf1b3007c2c243bc2 SHA512 f27408326c5b50addfc8b11c6f41df49d03ccaab80d37bb84100d2d238e01117ea436a79833f80c6b1d62b03da01807871396f401bf155d0c08252cc783f7e15
AUX podman-clean-transient-5.0.0_rc6.initd 669 BLAKE2B db5f35d6918ea12afd2bc6ef1eb9b855faa259a7abe9a49895892e40576558996317ae0189b80d1d2fea978848e35bfbadf1635cef112bd96bfeb75ecf34cdb3 SHA512 95c07cd6bc1bba7ce9bb0e111d74d9625c7f7e88667f709852056206e9483d96283ad2f13710e99bc5c3573bdb1b0c7585a7254760b91b7eec5b5a868d849e61
AUX podman-restart-5.0.0_rc4.confd 284 BLAKE2B e2e5394428d95e9fa480f32ef3efcddc870394e8f5158fbcfe80434aca6c0a48bc1a4a5b7bdcf91e5313121be7f50f5e924a3a2084767e84d6bf045819121711 SHA512 99818e90a04ebdfa2ca8fbf8b4971025cae27807a0f2288f267c60e875f38cac4d189a72248861507189aa3a1e05f7c81d663f96ddac6a7e11edebf5f18baea1
@@ -9,13 +9,9 @@ AUX podman.confd 328 BLAKE2B e03a1f7f5cec555f195bd1ca9bea050a67ccac7866bd68f0c74
AUX podman.initd 704 BLAKE2B 2fc4ffaa3b971774957ea244e05d851fa2797ec074529ea7c23bc6d7a3f597c04268d7f5580852dae4ab412629a513fed152f6a20a7ed432ef00cb96848c290c SHA512 bcf3e74a4a77bac82fc4679b3161091692b301426ecf81af7c5ea7e23ba66d15602d0cf1284f160d4179e52ae78f309ad826d9f3698dfcb78c2be2c6ac51417c
AUX podman.logrotated 85 BLAKE2B 730899f93ee354e476629276b69224cfeaaa1603b6690cac3c0cd905cd75add19179f99e26f29edbd963d5f44c38a3a2db0b5a3613dc665ab801654eac13dc2e SHA512 0136d063b15b07c41a9370ba1845c4f368ec46a7a30683b7ff7cbb0b12e5b2711c9a45329f5102af6a969e562edcec006a8de9055e43e1caf9395847d0c5ec45
AUX seccomp-toggle-4.7.0.patch 400 BLAKE2B 9f02e58c06b507a294207c66bd5ea218f87803a9b9f0ddafc86a8b21df912589357adf054302e5a69d300155bdf8dcd8b77c18c1ddf8a4042ae1f05de5faf46d SHA512 e507e3a52d2f5f48b65fdb77ceaa095f13fda3e834dafc976bcd291cb35755da879c9c99b7950b2905399dedf4ac3370bd70462343648613a7c6aedc141d7ef7
-DIST podman-4.8.3.tar.gz 21565162 BLAKE2B 13d2e5800dce96ba8c1671f251c2809dc0166198b807978d44b6f10b4dd2095e909678a12518fed84a0a1b5eee5a71e944170eb55350c3af945a63910f9c8082 SHA512 13ade866b888d32ada3b38130d7cc4677591136e25234e040b478c5d002d1b7907ed46731996d25cc41b992b98b75f109c6e6eea44251f4ad89162b20266976d
DIST podman-4.9.3.tar.gz 21727849 BLAKE2B 9a67ba4266a8a0e20d165ba2bae00dcf146724ee976838d5e3310b094155ffa89bff526e8ae72864dc100d1e6878d5519d53581dc7e034982a4f2b364e4c8feb SHA512 395014bbe70923f1444d2f33440013a16e9c339b70be5e6a9c7026617a40795a1c0e410c08a52fba46b9f5e853d853ce4133db36167a3c5ace7d325f8b3a3327
-DIST podman-5.0.0_rc5.tar.gz 21856941 BLAKE2B 7800ad4d928bcc19c223a4dc6a84c32b32f8655753a8a77cca57d78b351bac911c7cf72d5425242ad93d165b620b7060e852a9b8816196136767bc500b5881f9 SHA512 a3ccd6eb53d66297be30ec66efa0a5fa5f5050a647c6bc5cdb2fd4cd9dd5638c42328bf1429a2fa3f8dcc84bb7d1ffbdd9c6bf06862993277f5b60d740d91c1b
-DIST podman-5.0.0_rc7.tar.gz 21865293 BLAKE2B 36462bab50a322942053d301e9bc8d75f4b7ef9776d73c1fbf30f37eb538e98c85ddae42d8ab3cd3183b85985716d1c42b94dacf9881a74046c75e45697c0c24 SHA512 ce66a6a061511bcb1e2e0044dbae50a421719974bc1126cc54c725d2d72282718e7cea8a5e0013b5e10b6d3ea9efb3d84716b4906312ed0190d6e5036dcd4f97
-EBUILD podman-4.8.3.ebuild 3718 BLAKE2B 690714bcd5e6aa7be22d459dafdf20ae68dd6311fe0b012575a80eb325d4c4192f113b188d1e4830c3729f922a5fac88095f5062f41157e4bb089d8f8d7782bf SHA512 abcaf64a18f3ecac66b97a231d4a8da42b6e394a65a08635956d72cb56433b201d2d0981f216d5c1b9a7136657087db6a637ed39648338766ba6a33a01a10ae5
+DIST podman-5.0.0.tar.gz 21861935 BLAKE2B 1ec7006f272f5da7f93929bc543cd8988d6f9596cb868e9561578ebef85d51cbd6baa4b66571872fc9748c639ca636ce27f6d90303707f04caa321c7b71db81a SHA512 8800d96d668cbc7a7ff85a09c71b3307a280c124513fd02fe478f415cf8db43ee47dc7e9c3b75046c6bda9f916937a2cc59887c2c4b26766c2f770abb87fd7ce
EBUILD podman-4.9.3.ebuild 3754 BLAKE2B 5d51729817ef8831557b159c82617ca5509b4e861f08ad15e40e55479489db8feaa188e2148e7b6a99b90ec7a9605ef6656a098183f0a72737f2538f71464712 SHA512 dbfa219c0dbcf3b3df67201bdc6c9c5b71dae105e3da2f4213d8c5f57d71543b9e0ed2a4c1229d05df2b3cdebf619c3aedc2e5770690668c3b77039ad137d385
-EBUILD podman-5.0.0_rc5.ebuild 4070 BLAKE2B d5cc059572da8c81210a080a354ed6062c1f18f7d56cb801e5e36f31619255ddb98ca60d1bc339f8f5dec812f8e8cc62b16814cedbbf03175a980dd559018d2f SHA512 15297bc7cf0eac927edf0360a0a9f6ba8f5122e37f77529bacbcb3a756085c9473e3e1b3706000322e8d1a722ac417fcedd9e2028940105e543e6e5d640e7a19
-EBUILD podman-5.0.0_rc7.ebuild 4243 BLAKE2B 4ee44c512f6eacbf15b1cc9786403a04fcedd44bb461b9aa42b01e13c284baaa9b0ecad6792151ce36f5615004866191e93bab22377c156880f4079853a7badc SHA512 8ebbfdb836bf5eb8475139b66145ba876ac3342eef76d3b75f9711bd86745e78a8fbd0e1d99aaaf50c2836b802d5729e6a69d3441f8767f4d4aacf03f44878f1
-EBUILD podman-9999.ebuild 4243 BLAKE2B 4ee44c512f6eacbf15b1cc9786403a04fcedd44bb461b9aa42b01e13c284baaa9b0ecad6792151ce36f5615004866191e93bab22377c156880f4079853a7badc SHA512 8ebbfdb836bf5eb8475139b66145ba876ac3342eef76d3b75f9711bd86745e78a8fbd0e1d99aaaf50c2836b802d5729e6a69d3441f8767f4d4aacf03f44878f1
-MISC metadata.xml 1843 BLAKE2B dae8b9b2065a2f777d2f32d7c8fd0761f31bb214f93bc6a74f6140fee067d9d7719d596c6295f83c875784fd10704571afa7ff5e1e129a8f2bfedd28fc6199ba SHA512 9dbb4d82150997521fc8d1793a6db8080cb0a924c3390bc58347e52accd4dc8c5e07283aad037cbc1b22d8009971edfd8816d09cf47404bae15b45bd518cb0ca
+EBUILD podman-5.0.0.ebuild 3412 BLAKE2B 0194429cf22dec482365035063ae9de98c3a89d853eaf3bf7e2b887504c4603db30126383c2c4ab84c3f16e7d47df18519317919af01af605ae4603fa2d01657 SHA512 498bbc1b729e20ebbc3564d70292398c4acbd59db7825dead070c24297381f722db70f0f99f31e6548454ff4ac1bae048c0434eccc42d9f505b211c21fc9eed4
+EBUILD podman-9999.ebuild 3412 BLAKE2B 0194429cf22dec482365035063ae9de98c3a89d853eaf3bf7e2b887504c4603db30126383c2c4ab84c3f16e7d47df18519317919af01af605ae4603fa2d01657 SHA512 498bbc1b729e20ebbc3564d70292398c4acbd59db7825dead070c24297381f722db70f0f99f31e6548454ff4ac1bae048c0434eccc42d9f505b211c21fc9eed4
+MISC metadata.xml 1709 BLAKE2B 0138cd1f7fec54f2b15f8a8af7a29ee0202b0c824371ed6f45726c06e84c5a0c78e6446f817ee2b81c44320203b50c54072757b9cd271080cd07a072141760ce SHA512 65fdac8344812dd71fcf7018da7320a055870f48af6c4f623a9c65f5375e69eee142409ff3451c5e046eef648e0ac00bf96550a7dfc37be5b7aa3aff1a51d42b
diff --git a/app-containers/podman/files/podman-auto-update-5.0.0.cron b/app-containers/podman/files/podman-auto-update-5.0.0.cron
new file mode 100644
index 000000000000..509146e0aa56
--- /dev/null
+++ b/app-containers/podman/files/podman-auto-update-5.0.0.cron
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+# podman-auto-update(1)
+# uncomment following to auto update containers according to their auto-update policy
+# /usr/bin/podman auto-update && /usr/bin/podman image prune -f
diff --git a/app-containers/podman/files/podman-auto-update-5.0.0_rc4.cron b/app-containers/podman/files/podman-auto-update-5.0.0_rc4.cron
deleted file mode 100644
index d0a0fb54b106..000000000000
--- a/app-containers/podman/files/podman-auto-update-5.0.0_rc4.cron
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-set -e
-
-# mimicking behaviour of podman-auto-update.service
-if [ -x /usr/bin/podman ]; then
- /usr/bin/podman auto-update && /usr/bin/podman image prune -f
-fi
diff --git a/app-containers/podman/metadata.xml b/app-containers/podman/metadata.xml
index 0ae6596fc7c4..59ab2d3ffda0 100644
--- a/app-containers/podman/metadata.xml
+++ b/app-containers/podman/metadata.xml
@@ -24,15 +24,11 @@
</longdescription>
<use>
<flag name="btrfs">
- Enables dependencies for the "btrfs" graph driver, including
- necessary kernel flags.
+ Enables btrfs support (graph driver) in Podman
</flag>
<flag name="cgroup-hybrid">
Use legacy (hybrid) cgroups instead of modern (unified) cgroups
</flag>
- <flag name="cron">
- Runs `podman auto-update` daily. See podman-auto-update(1)
- </flag>
<flag name="fuse">
Enables fuse dependencies (fuse-overlayfs is especially useful
for rootless mode).
diff --git a/app-containers/podman/podman-4.8.3.ebuild b/app-containers/podman/podman-5.0.0.ebuild
index 731c296c2fcd..b535f608f817 100644
--- a/app-containers/podman/podman-4.8.3.ebuild
+++ b/app-containers/podman/podman-5.0.0.ebuild
@@ -3,7 +3,9 @@
EAPI=8
-inherit go-module tmpfiles linux-info
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit go-module python-any-r1 tmpfiles linux-info
DESCRIPTION="A tool for managing OCI containers and pods with Docker-compatible CLI"
HOMEPAGE="https://github.com/containers/podman/ https://podman.io/"
@@ -14,7 +16,8 @@ if [[ ${PV} == 9999* ]]; then
else
SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P/_rc/-rc}"
- KEYWORDS="amd64 arm64 ~riscv"
+ [[ ${PV} != *rc* ]] && \
+ KEYWORDS="~amd64 ~arm64 ~riscv"
fi
# main pkg
@@ -22,31 +25,28 @@ LICENSE="Apache-2.0"
# deps
LICENSE+=" BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
SLOT="0"
-IUSE="apparmor btrfs cgroup-hybrid wrapper +fuse +init +rootless +seccomp selinux systemd"
+IUSE="apparmor btrfs +seccomp selinux systemd wrapper"
RESTRICT="test"
RDEPEND="
+ app-containers/catatonit
+ >=app-containers/conmon-2.1.10
+ >=app-containers/containers-common-0.58.0-r1
app-crypt/gpgme:=
- >=app-containers/conmon-2.0.0
- >=app-containers/containers-common-0.56.0
dev-libs/libassuan:=
dev-libs/libgpg-error:=
sys-apps/shadow:=
apparmor? ( sys-libs/libapparmor )
btrfs? ( sys-fs/btrfs-progs )
- cgroup-hybrid? ( >=app-containers/runc-1.0.0_rc6 )
- !cgroup-hybrid? ( app-containers/crun )
wrapper? ( !app-containers/docker-cli )
- fuse? ( sys-fs/fuse-overlayfs )
- init? ( app-containers/catatonit )
- rootless? ( app-containers/slirp4netns )
seccomp? ( sys-libs/libseccomp:= )
selinux? ( sec-policy/selinux-podman sys-libs/libselinux:= )
systemd? ( sys-apps/systemd:= )
"
DEPEND="${RDEPEND}"
BDEPEND="
+ ${PYTHON_DEPS}
dev-go/go-md2man
"
@@ -61,6 +61,7 @@ CONFIG_CHECK="
pkg_setup() {
use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
linux-info_pkg_setup
+ python-any-r1_pkg_setup
}
src_prepare() {
@@ -90,50 +91,38 @@ src_prepare() {
src_compile() {
export PREFIX="${EPREFIX}/usr"
- # bug 906073
- use elibc_musl && export CGO_CFLAGS="-D_LARGEFILE64_SOURCE"
-
# For non-live versions, prevent git operations which causes sandbox violations
# https://github.com/gentoo/gentoo/pull/33531#issuecomment-1786107493
- [[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT=""
+ [[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT="" EPOCH_TEST_COMMIT=""
# BUILD_SECCOMP is used in the patch to toggle seccomp
- emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" all $(usev wrapper docker-docs)
+ emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" \
+ all $(usev wrapper docker-docs)
}
src_install() {
emake DESTDIR="${D}" install install.completions $(usev wrapper install.docker-full)
- insinto /etc/cni/net.d
- doins cni/87-podman-bridge.conflist
+ if use !systemd; then
+ newconfd "${FILESDIR}"/podman-5.0.0_rc4.confd podman
+ newinitd "${FILESDIR}"/podman-5.0.0_rc4.initd podman
- newconfd "${FILESDIR}"/podman.confd podman
- newinitd "${FILESDIR}"/podman.initd podman
+ newinitd "${FILESDIR}"/podman-restart-5.0.0_rc4.initd podman-restart
+ newconfd "${FILESDIR}"/podman-restart-5.0.0_rc4.confd podman-restart
- insinto /etc/logrotate.d
- newins "${FILESDIR}/podman.logrotated" podman
+ newinitd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.initd podman-clean-transient
+ newconfd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.confd podman-clean-transient
- keepdir /var/lib/containers
-}
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/podman-auto-update-5.0.0.cron podman-auto-update
-pkg_preinst() {
- PODMAN_ROOTLESS_UPGRADE=false
- if use rootless; then
- has_version 'app-containers/podman[rootless]' || PODMAN_ROOTLESS_UPGRADE=true
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/podman.logrotated" podman
fi
+
+ keepdir /var/lib/containers
}
pkg_postinst() {
tmpfiles_process podman.conf $(usev wrapper podman-docker.conf)
-
- local want_newline=false
- if [[ ${PODMAN_ROOTLESS_UPGRADE} == true ]] ; then
- ${want_newline} && elog ""
- elog "For rootless operation, you need to configure subuid/subgid"
- elog "for user running podman. In case subuid/subgid has only been"
- elog "configured for root, run:"
- elog "usermod --add-subuids 1065536-1131071 <user>"
- elog "usermod --add-subgids 1065536-1131071 <user>"
- want_newline=true
- fi
}
diff --git a/app-containers/podman/podman-5.0.0_rc5.ebuild b/app-containers/podman/podman-5.0.0_rc5.ebuild
deleted file mode 100644
index 031861e35e9e..000000000000
--- a/app-containers/podman/podman-5.0.0_rc5.ebuild
+++ /dev/null
@@ -1,148 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit go-module tmpfiles linux-info
-
-DESCRIPTION="A tool for managing OCI containers and pods with Docker-compatible CLI"
-HOMEPAGE="https://github.com/containers/podman/ https://podman.io/"
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/containers/podman.git"
-else
- SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${P/_rc/-rc}"
- if [[ ${PV} != *rc* ]] ; then
- KEYWORDS="~amd64 ~arm64 ~riscv"
- fi
-fi
-
-# main pkg
-LICENSE="Apache-2.0"
-# deps
-LICENSE+=" BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
-SLOT="0"
-IUSE="apparmor btrfs cgroup-hybrid cron wrapper +fuse +init +rootless +seccomp selinux systemd"
-RESTRICT="test"
-
-RDEPEND="
- app-crypt/gpgme:=
- >=app-containers/conmon-2.0.0
- >=app-containers/containers-common-0.56.0
- dev-libs/libassuan:=
- dev-libs/libgpg-error:=
- sys-apps/shadow:=
-
- apparmor? ( sys-libs/libapparmor )
- btrfs? ( sys-fs/btrfs-progs )
- cgroup-hybrid? ( >=app-containers/runc-1.0.0_rc6 )
- !cgroup-hybrid? ( app-containers/crun )
- cron? ( virtual/cron )
- wrapper? ( !app-containers/docker-cli )
- fuse? ( sys-fs/fuse-overlayfs )
- init? ( app-containers/catatonit )
- rootless? ( app-containers/slirp4netns )
- seccomp? ( sys-libs/libseccomp:= )
- selinux? ( sec-policy/selinux-podman sys-libs/libselinux:= )
- systemd? ( sys-apps/systemd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-go/go-md2man
-"
-
-PATCHES=(
- "${FILESDIR}/seccomp-toggle-4.7.0.patch"
-)
-
-CONFIG_CHECK="
- ~USER_NS
-"
-
-pkg_setup() {
- use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
- linux-info_pkg_setup
-}
-
-src_prepare() {
- default
-
- # assure necessary files are present
- local file
- for file in apparmor_tag btrfs_installed_tag btrfs_tag systemd_tag; do
- [[ -f hack/"${file}".sh ]] || die
- done
-
- local feature
- for feature in apparmor systemd; do
- cat <<-EOF > hack/"${feature}"_tag.sh || die
- #!/usr/bin/env bash
- $(usex ${feature} "echo ${feature}" echo)
- EOF
- done
-
- echo -e "#!/usr/bin/env bash\n echo" > hack/btrfs_installed_tag.sh || die
- cat <<-EOF > hack/btrfs_tag.sh || die
- #!/usr/bin/env bash
- $(usex btrfs echo 'echo exclude_graphdriver_btrfs btrfs_noversion')
- EOF
-}
-
-src_compile() {
- export PREFIX="${EPREFIX}/usr"
-
- # bug 906073
- use elibc_musl && export CGO_CFLAGS="-D_LARGEFILE64_SOURCE"
-
- # For non-live versions, prevent git operations which causes sandbox violations
- # https://github.com/gentoo/gentoo/pull/33531#issuecomment-1786107493
- [[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT=""
-
- # BUILD_SECCOMP is used in the patch to toggle seccomp
- emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" all $(usev wrapper docker-docs)
-}
-
-src_install() {
- emake DESTDIR="${D}" install install.completions $(usev wrapper install.docker-full)
-
- insinto /etc/cni/net.d
- doins cni/87-podman-bridge.conflist
-
- newconfd "${FILESDIR}"/podman-5.0.0_rc4.confd podman
- newinitd "${FILESDIR}"/podman-5.0.0_rc4.initd podman
-
- newinitd "${FILESDIR}"/podman-restart-5.0.0_rc4.initd podman-restart
- newconfd "${FILESDIR}"/podman-restart-5.0.0_rc4.confd podman-restart
-
- use cron && \
- { exeinto /etc/cron.daily && newexe "${FILESDIR}"/podman-auto-update-5.0.0_rc4.cron podman-auto-update; }
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}/podman.logrotated" podman
-
- keepdir /var/lib/containers
-}
-
-pkg_preinst() {
- PODMAN_ROOTLESS_UPGRADE=false
- if use rootless; then
- has_version 'app-containers/podman[rootless]' || PODMAN_ROOTLESS_UPGRADE=true
- fi
-}
-
-pkg_postinst() {
- tmpfiles_process podman.conf $(usev wrapper podman-docker.conf)
-
- local want_newline=false
- if [[ ${PODMAN_ROOTLESS_UPGRADE} == true ]] ; then
- ${want_newline} && elog ""
- elog "For rootless operation, you need to configure subuid/subgid"
- elog "for user running podman. In case subuid/subgid has only been"
- elog "configured for root, run:"
- elog "usermod --add-subuids 1065536-1131071 <user>"
- elog "usermod --add-subgids 1065536-1131071 <user>"
- want_newline=true
- fi
-}
diff --git a/app-containers/podman/podman-5.0.0_rc7.ebuild b/app-containers/podman/podman-5.0.0_rc7.ebuild
deleted file mode 100644
index 2027b142f82f..000000000000
--- a/app-containers/podman/podman-5.0.0_rc7.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit go-module tmpfiles linux-info
-
-DESCRIPTION="A tool for managing OCI containers and pods with Docker-compatible CLI"
-HOMEPAGE="https://github.com/containers/podman/ https://podman.io/"
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/containers/podman.git"
-else
- SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${P/_rc/-rc}"
- if [[ ${PV} != *rc* ]] ; then
- KEYWORDS="~amd64 ~arm64 ~riscv"
- fi
-fi
-
-# main pkg
-LICENSE="Apache-2.0"
-# deps
-LICENSE+=" BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
-SLOT="0"
-IUSE="apparmor btrfs cgroup-hybrid cron wrapper +fuse +init +rootless +seccomp selinux systemd"
-RESTRICT="test"
-
-RDEPEND="
- app-crypt/gpgme:=
- >=app-containers/conmon-2.0.0
- >=app-containers/containers-common-0.56.0
- dev-libs/libassuan:=
- dev-libs/libgpg-error:=
- sys-apps/shadow:=
-
- apparmor? ( sys-libs/libapparmor )
- btrfs? ( sys-fs/btrfs-progs )
- cgroup-hybrid? ( >=app-containers/runc-1.0.0_rc6 )
- !cgroup-hybrid? ( app-containers/crun )
- cron? ( virtual/cron )
- wrapper? ( !app-containers/docker-cli )
- fuse? ( sys-fs/fuse-overlayfs )
- init? ( app-containers/catatonit )
- rootless? ( app-containers/slirp4netns )
- seccomp? ( sys-libs/libseccomp:= )
- selinux? ( sec-policy/selinux-podman sys-libs/libselinux:= )
- systemd? ( sys-apps/systemd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-go/go-md2man
-"
-
-PATCHES=(
- "${FILESDIR}/seccomp-toggle-4.7.0.patch"
-)
-
-CONFIG_CHECK="
- ~USER_NS
-"
-
-pkg_setup() {
- use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
- linux-info_pkg_setup
-}
-
-src_prepare() {
- default
-
- # assure necessary files are present
- local file
- for file in apparmor_tag btrfs_installed_tag btrfs_tag systemd_tag; do
- [[ -f hack/"${file}".sh ]] || die
- done
-
- local feature
- for feature in apparmor systemd; do
- cat <<-EOF > hack/"${feature}"_tag.sh || die
- #!/usr/bin/env bash
- $(usex ${feature} "echo ${feature}" echo)
- EOF
- done
-
- echo -e "#!/usr/bin/env bash\n echo" > hack/btrfs_installed_tag.sh || die
- cat <<-EOF > hack/btrfs_tag.sh || die
- #!/usr/bin/env bash
- $(usex btrfs echo 'echo exclude_graphdriver_btrfs btrfs_noversion')
- EOF
-}
-
-src_compile() {
- export PREFIX="${EPREFIX}/usr"
-
- # bug 906073
- use elibc_musl && export CGO_CFLAGS="-D_LARGEFILE64_SOURCE"
-
- # For non-live versions, prevent git operations which causes sandbox violations
- # https://github.com/gentoo/gentoo/pull/33531#issuecomment-1786107493
- [[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT=""
-
- # BUILD_SECCOMP is used in the patch to toggle seccomp
- emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" all $(usev wrapper docker-docs)
-}
-
-src_install() {
- emake DESTDIR="${D}" install install.completions $(usev wrapper install.docker-full)
-
- insinto /etc/cni/net.d
- doins cni/87-podman-bridge.conflist
-
- newconfd "${FILESDIR}"/podman-5.0.0_rc4.confd podman
- newinitd "${FILESDIR}"/podman-5.0.0_rc4.initd podman
-
- newinitd "${FILESDIR}"/podman-restart-5.0.0_rc4.initd podman-restart
- newconfd "${FILESDIR}"/podman-restart-5.0.0_rc4.confd podman-restart
-
- newinitd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.initd podman-clean-transient
- newconfd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.confd podman-clean-transient
-
- use cron && \
- { exeinto /etc/cron.daily && newexe "${FILESDIR}"/podman-auto-update-5.0.0_rc4.cron podman-auto-update; }
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}/podman.logrotated" podman
-
- keepdir /var/lib/containers
-}
-
-pkg_preinst() {
- PODMAN_ROOTLESS_UPGRADE=false
- if use rootless; then
- has_version 'app-containers/podman[rootless]' || PODMAN_ROOTLESS_UPGRADE=true
- fi
-}
-
-pkg_postinst() {
- tmpfiles_process podman.conf $(usev wrapper podman-docker.conf)
-
- local want_newline=false
- if [[ ${PODMAN_ROOTLESS_UPGRADE} == true ]] ; then
- ${want_newline} && elog ""
- elog "For rootless operation, you need to configure subuid/subgid"
- elog "for user running podman. In case subuid/subgid has only been"
- elog "configured for root, run:"
- elog "usermod --add-subuids 1065536-1131071 <user>"
- elog "usermod --add-subgids 1065536-1131071 <user>"
- want_newline=true
- fi
-}
diff --git a/app-containers/podman/podman-9999.ebuild b/app-containers/podman/podman-9999.ebuild
index 2027b142f82f..b535f608f817 100644
--- a/app-containers/podman/podman-9999.ebuild
+++ b/app-containers/podman/podman-9999.ebuild
@@ -3,7 +3,9 @@
EAPI=8
-inherit go-module tmpfiles linux-info
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit go-module python-any-r1 tmpfiles linux-info
DESCRIPTION="A tool for managing OCI containers and pods with Docker-compatible CLI"
HOMEPAGE="https://github.com/containers/podman/ https://podman.io/"
@@ -14,9 +16,8 @@ if [[ ${PV} == 9999* ]]; then
else
SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P/_rc/-rc}"
- if [[ ${PV} != *rc* ]] ; then
+ [[ ${PV} != *rc* ]] && \
KEYWORDS="~amd64 ~arm64 ~riscv"
- fi
fi
# main pkg
@@ -24,32 +25,28 @@ LICENSE="Apache-2.0"
# deps
LICENSE+=" BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
SLOT="0"
-IUSE="apparmor btrfs cgroup-hybrid cron wrapper +fuse +init +rootless +seccomp selinux systemd"
+IUSE="apparmor btrfs +seccomp selinux systemd wrapper"
RESTRICT="test"
RDEPEND="
+ app-containers/catatonit
+ >=app-containers/conmon-2.1.10
+ >=app-containers/containers-common-0.58.0-r1
app-crypt/gpgme:=
- >=app-containers/conmon-2.0.0
- >=app-containers/containers-common-0.56.0
dev-libs/libassuan:=
dev-libs/libgpg-error:=
sys-apps/shadow:=
apparmor? ( sys-libs/libapparmor )
btrfs? ( sys-fs/btrfs-progs )
- cgroup-hybrid? ( >=app-containers/runc-1.0.0_rc6 )
- !cgroup-hybrid? ( app-containers/crun )
- cron? ( virtual/cron )
wrapper? ( !app-containers/docker-cli )
- fuse? ( sys-fs/fuse-overlayfs )
- init? ( app-containers/catatonit )
- rootless? ( app-containers/slirp4netns )
seccomp? ( sys-libs/libseccomp:= )
selinux? ( sec-policy/selinux-podman sys-libs/libselinux:= )
systemd? ( sys-apps/systemd:= )
"
DEPEND="${RDEPEND}"
BDEPEND="
+ ${PYTHON_DEPS}
dev-go/go-md2man
"
@@ -64,6 +61,7 @@ CONFIG_CHECK="
pkg_setup() {
use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
linux-info_pkg_setup
+ python-any-r1_pkg_setup
}
src_prepare() {
@@ -93,59 +91,38 @@ src_prepare() {
src_compile() {
export PREFIX="${EPREFIX}/usr"
- # bug 906073
- use elibc_musl && export CGO_CFLAGS="-D_LARGEFILE64_SOURCE"
-
# For non-live versions, prevent git operations which causes sandbox violations
# https://github.com/gentoo/gentoo/pull/33531#issuecomment-1786107493
- [[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT=""
+ [[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT="" EPOCH_TEST_COMMIT=""
# BUILD_SECCOMP is used in the patch to toggle seccomp
- emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" all $(usev wrapper docker-docs)
+ emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" \
+ all $(usev wrapper docker-docs)
}
src_install() {
emake DESTDIR="${D}" install install.completions $(usev wrapper install.docker-full)
- insinto /etc/cni/net.d
- doins cni/87-podman-bridge.conflist
+ if use !systemd; then
+ newconfd "${FILESDIR}"/podman-5.0.0_rc4.confd podman
+ newinitd "${FILESDIR}"/podman-5.0.0_rc4.initd podman
- newconfd "${FILESDIR}"/podman-5.0.0_rc4.confd podman
- newinitd "${FILESDIR}"/podman-5.0.0_rc4.initd podman
+ newinitd "${FILESDIR}"/podman-restart-5.0.0_rc4.initd podman-restart
+ newconfd "${FILESDIR}"/podman-restart-5.0.0_rc4.confd podman-restart
- newinitd "${FILESDIR}"/podman-restart-5.0.0_rc4.initd podman-restart
- newconfd "${FILESDIR}"/podman-restart-5.0.0_rc4.confd podman-restart
+ newinitd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.initd podman-clean-transient
+ newconfd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.confd podman-clean-transient
- newinitd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.initd podman-clean-transient
- newconfd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.confd podman-clean-transient
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}"/podman-auto-update-5.0.0.cron podman-auto-update
- use cron && \
- { exeinto /etc/cron.daily && newexe "${FILESDIR}"/podman-auto-update-5.0.0_rc4.cron podman-auto-update; }
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}/podman.logrotated" podman
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/podman.logrotated" podman
+ fi
keepdir /var/lib/containers
}
-pkg_preinst() {
- PODMAN_ROOTLESS_UPGRADE=false
- if use rootless; then
- has_version 'app-containers/podman[rootless]' || PODMAN_ROOTLESS_UPGRADE=true
- fi
-}
-
pkg_postinst() {
tmpfiles_process podman.conf $(usev wrapper podman-docker.conf)
-
- local want_newline=false
- if [[ ${PODMAN_ROOTLESS_UPGRADE} == true ]] ; then
- ${want_newline} && elog ""
- elog "For rootless operation, you need to configure subuid/subgid"
- elog "for user running podman. In case subuid/subgid has only been"
- elog "configured for root, run:"
- elog "usermod --add-subuids 1065536-1131071 <user>"
- elog "usermod --add-subgids 1065536-1131071 <user>"
- want_newline=true
- fi
}