mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-14 08:26:57 +02:00
app-containers/podman: Sync with Gentoo
It's from Gentoo commit 61ea6c638cf6da9a378a2d38851b678752162197.
This commit is contained in:
parent
9e78c0c5c8
commit
d5f4766a5a
@ -1 +1,4 @@
|
|||||||
|
DIST podman-4.9.4.tar.gz 21733620 BLAKE2B 17d099c0a13fbbb77556742313c39995127fc97b4086ef3c2d74a92cc0a4f825a6c729dd099c6d4f4cd3d2ebfd470494babdeaa85a5653b327ea1a16fb5ea993 SHA512 7b52555789a1c214fcf26b0826bdda6cf0ccca588f87c0f15ac5e8358ddac625e17cafbe6a43de07cad964e1418b5ee0d2e38a5cb5dc6f6d4e638399749a7f7b
|
||||||
DIST podman-5.0.2.tar.gz 23811875 BLAKE2B e943eb36eb0b80332223afc5d971c0886f6eaffeb7133c634d28c0a38e9aae6a54266691067dbca7684882f8b6dad72c3d5de2287ec5a7e8fb4b1cfd96df0b4d SHA512 70dbac9fc81d66eb9b0a5174f5776b805397005cacca917674d2b001591fadd05a776c956e693bad932e9eefe591c35da5c566e8e9e01db8be42bc454cd03104
|
DIST podman-5.0.2.tar.gz 23811875 BLAKE2B e943eb36eb0b80332223afc5d971c0886f6eaffeb7133c634d28c0a38e9aae6a54266691067dbca7684882f8b6dad72c3d5de2287ec5a7e8fb4b1cfd96df0b4d SHA512 70dbac9fc81d66eb9b0a5174f5776b805397005cacca917674d2b001591fadd05a776c956e693bad932e9eefe591c35da5c566e8e9e01db8be42bc454cd03104
|
||||||
|
DIST podman-5.0.3.tar.gz 23814179 BLAKE2B 46385710e4d24f8eca3a7c98c18a97b96ecd4691b3c965c5a5e7bc690d40d892a6d5fb71c1dd8ec56cc907a2167ab5ee795b4d2c2279c58cef3a5a1cece8b678 SHA512 c605a52cc5aba43d485796c4986f2d1be704e5c931473bf5ba1cf77f703cdb3d16f41d33da0b25287e8d001077f77caf117d3ea5dbd7c56a744274025d9ab07d
|
||||||
|
DIST podman-5.1.1.tar.gz 23794366 BLAKE2B 0612a148972c96f532e96a8eb1ab388d80b32fe2ca7c5626e615748ef269a853407aeb39f34686d9eb75de239882e524cf5ee7c97152caccf5f77eb6ecfd54d8 SHA512 e896ee97980da4a522eb865d2eacb6876dd8bc5be1488aed8bd81a81af95faa1383b176b5d236d4af0f76bc30ddad5230df3e11c59ffc6f86e5b4cf3876ff184
|
||||||
|
162
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-4.9.4.ebuild
vendored
Normal file
162
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-4.9.4.ebuild
vendored
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
PYTHON_COMPAT=( python3_{11,12} )
|
||||||
|
|
||||||
|
inherit go-module python-any-r1 tmpfiles toolchain-funcs 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 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 )
|
||||||
|
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
|
||||||
|
"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/seccomp-toggle-4.7.0.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
CONFIG_CHECK="
|
||||||
|
~USER_NS
|
||||||
|
"
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
|
||||||
|
linux-info_pkg_setup
|
||||||
|
python-any-r1_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="" EPOCH_TEST_COMMIT=""
|
||||||
|
|
||||||
|
# Use proper pkg-config to get gpgme cflags and ldflags when
|
||||||
|
# cross-compiling, bug 930982.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
tc-export PKG_CONFIG
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
if use !systemd; then
|
||||||
|
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
|
||||||
|
|
||||||
|
exeinto /etc/cron.daily
|
||||||
|
newexe "${FILESDIR}"/podman-auto-update-5.0.0.cron podman-auto-update
|
||||||
|
|
||||||
|
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
|
||||||
|
}
|
@ -5,7 +5,7 @@ EAPI=8
|
|||||||
|
|
||||||
PYTHON_COMPAT=( python3_{11,12} )
|
PYTHON_COMPAT=( python3_{11,12} )
|
||||||
|
|
||||||
inherit go-module python-any-r1 tmpfiles linux-info
|
inherit go-module python-any-r1 tmpfiles toolchain-funcs linux-info
|
||||||
|
|
||||||
DESCRIPTION="A tool for managing OCI containers and pods with Docker-compatible CLI"
|
DESCRIPTION="A tool for managing OCI containers and pods with Docker-compatible CLI"
|
||||||
HOMEPAGE="https://github.com/containers/podman/ https://podman.io/"
|
HOMEPAGE="https://github.com/containers/podman/ https://podman.io/"
|
||||||
@ -17,7 +17,7 @@ else
|
|||||||
SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz"
|
SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz"
|
||||||
S="${WORKDIR}/${P/_rc/-rc}"
|
S="${WORKDIR}/${P/_rc/-rc}"
|
||||||
[[ ${PV} != *rc* ]] && \
|
[[ ${PV} != *rc* ]] && \
|
||||||
KEYWORDS="amd64 arm64 ~riscv"
|
KEYWORDS="~amd64 ~arm64 ~riscv"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# main pkg
|
# main pkg
|
||||||
@ -48,7 +48,6 @@ DEPEND="${RDEPEND}"
|
|||||||
BDEPEND="
|
BDEPEND="
|
||||||
${PYTHON_DEPS}
|
${PYTHON_DEPS}
|
||||||
dev-go/go-md2man
|
dev-go/go-md2man
|
||||||
app-crypt/gpgme:=
|
|
||||||
"
|
"
|
||||||
|
|
||||||
PATCHES=(
|
PATCHES=(
|
||||||
@ -96,6 +95,12 @@ src_compile() {
|
|||||||
# https://github.com/gentoo/gentoo/pull/33531#issuecomment-1786107493
|
# https://github.com/gentoo/gentoo/pull/33531#issuecomment-1786107493
|
||||||
[[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT="" EPOCH_TEST_COMMIT=""
|
[[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT="" EPOCH_TEST_COMMIT=""
|
||||||
|
|
||||||
|
# Use proper pkg-config to get gpgme cflags and ldflags when
|
||||||
|
# cross-compiling, bug 930982.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
tc-export PKG_CONFIG
|
||||||
|
fi
|
||||||
|
|
||||||
# BUILD_SECCOMP is used in the patch to toggle seccomp
|
# BUILD_SECCOMP is used in the patch to toggle seccomp
|
||||||
emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" \
|
emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" BUILD_SECCOMP="$(usex seccomp)" \
|
||||||
all $(usev wrapper docker-docs)
|
all $(usev wrapper docker-docs)
|
||||||
|
134
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.0.3.ebuild
vendored
Normal file
134
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.0.3.ebuild
vendored
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
PYTHON_COMPAT=( python3_{11,12} )
|
||||||
|
|
||||||
|
inherit go-module python-any-r1 tmpfiles toolchain-funcs 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}"
|
||||||
|
[[ ${PV} != *rc* ]] && \
|
||||||
|
KEYWORDS="~amd64 ~arm64 ~riscv"
|
||||||
|
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 +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:=
|
||||||
|
dev-libs/libassuan:=
|
||||||
|
dev-libs/libgpg-error:=
|
||||||
|
sys-apps/shadow:=
|
||||||
|
|
||||||
|
apparmor? ( sys-libs/libapparmor )
|
||||||
|
btrfs? ( sys-fs/btrfs-progs )
|
||||||
|
wrapper? ( !app-containers/docker-cli )
|
||||||
|
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
|
||||||
|
"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/seccomp-toggle-4.7.0.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
CONFIG_CHECK="
|
||||||
|
~USER_NS
|
||||||
|
"
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
|
||||||
|
linux-info_pkg_setup
|
||||||
|
python-any-r1_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"
|
||||||
|
|
||||||
|
# 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="" EPOCH_TEST_COMMIT=""
|
||||||
|
|
||||||
|
# Use proper pkg-config to get gpgme cflags and ldflags when
|
||||||
|
# cross-compiling, bug 930982.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
tc-export PKG_CONFIG
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 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)
|
||||||
|
|
||||||
|
if use !systemd; then
|
||||||
|
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
|
||||||
|
|
||||||
|
exeinto /etc/cron.daily
|
||||||
|
newexe "${FILESDIR}"/podman-auto-update-5.0.0.cron podman-auto-update
|
||||||
|
|
||||||
|
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)
|
||||||
|
}
|
146
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.1.1.ebuild
vendored
Normal file
146
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.1.1.ebuild
vendored
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
PYTHON_COMPAT=( python3_{11..13} )
|
||||||
|
|
||||||
|
inherit go-module python-any-r1 tmpfiles toolchain-funcs 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}"
|
||||||
|
[[ ${PV} != *rc* ]] && \
|
||||||
|
KEYWORDS="~amd64 ~arm64 ~riscv"
|
||||||
|
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 +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:=
|
||||||
|
dev-libs/libassuan:=
|
||||||
|
dev-libs/libgpg-error:=
|
||||||
|
sys-apps/shadow:=
|
||||||
|
|
||||||
|
apparmor? ( sys-libs/libapparmor )
|
||||||
|
btrfs? ( sys-fs/btrfs-progs )
|
||||||
|
wrapper? ( !app-containers/docker-cli )
|
||||||
|
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
|
||||||
|
"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${T}"/togglable-seccomp.patch
|
||||||
|
)
|
||||||
|
|
||||||
|
CONFIG_CHECK="
|
||||||
|
~USER_NS
|
||||||
|
"
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
|
||||||
|
linux-info_pkg_setup
|
||||||
|
python-any-r1_pkg_setup
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
cat <<'EOF' > "${T}"/togglable-seccomp.patch || die
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -56,7 +56,6 @@ BUILDTAGS ?= \
|
||||||
|
$(shell hack/systemd_tag.sh) \
|
||||||
|
$(shell hack/libsubid_tag.sh) \
|
||||||
|
exclude_graphdriver_devicemapper \
|
||||||
|
- seccomp
|
||||||
|
# allow downstreams to easily add build tags while keeping our defaults
|
||||||
|
BUILDTAGS += ${EXTRA_BUILDTAGS}
|
||||||
|
# N/B: This value is managed by Renovate, manual changes are
|
||||||
|
EOF
|
||||||
|
|
||||||
|
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"
|
||||||
|
|
||||||
|
# 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="" EPOCH_TEST_COMMIT=""
|
||||||
|
|
||||||
|
# Use proper pkg-config to get gpgme cflags and ldflags when
|
||||||
|
# cross-compiling, bug 930982.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
tc-export PKG_CONFIG
|
||||||
|
fi
|
||||||
|
|
||||||
|
emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" EXTRA_BUILDTAGS="$(usev seccomp)" \
|
||||||
|
all $(usev wrapper docker-docs)
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
emake DESTDIR="${D}" install install.completions $(usev wrapper install.docker-full)
|
||||||
|
|
||||||
|
if use !systemd; then
|
||||||
|
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
|
||||||
|
|
||||||
|
exeinto /etc/cron.daily
|
||||||
|
newexe "${FILESDIR}"/podman-auto-update-5.0.0.cron podman-auto-update
|
||||||
|
|
||||||
|
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)
|
||||||
|
}
|
146
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-9999.ebuild
vendored
Normal file
146
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-9999.ebuild
vendored
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
PYTHON_COMPAT=( python3_{11..13} )
|
||||||
|
|
||||||
|
inherit go-module python-any-r1 tmpfiles toolchain-funcs 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}"
|
||||||
|
[[ ${PV} != *rc* ]] && \
|
||||||
|
KEYWORDS="~amd64 ~arm64 ~riscv"
|
||||||
|
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 +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:=
|
||||||
|
dev-libs/libassuan:=
|
||||||
|
dev-libs/libgpg-error:=
|
||||||
|
sys-apps/shadow:=
|
||||||
|
|
||||||
|
apparmor? ( sys-libs/libapparmor )
|
||||||
|
btrfs? ( sys-fs/btrfs-progs )
|
||||||
|
wrapper? ( !app-containers/docker-cli )
|
||||||
|
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
|
||||||
|
"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${T}"/togglable-seccomp.patch
|
||||||
|
)
|
||||||
|
|
||||||
|
CONFIG_CHECK="
|
||||||
|
~USER_NS
|
||||||
|
"
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
|
||||||
|
linux-info_pkg_setup
|
||||||
|
python-any-r1_pkg_setup
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
cat <<'EOF' > "${T}"/togglable-seccomp.patch || die
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -56,7 +56,6 @@ BUILDTAGS ?= \
|
||||||
|
$(shell hack/systemd_tag.sh) \
|
||||||
|
$(shell hack/libsubid_tag.sh) \
|
||||||
|
exclude_graphdriver_devicemapper \
|
||||||
|
- seccomp
|
||||||
|
# allow downstreams to easily add build tags while keeping our defaults
|
||||||
|
BUILDTAGS += ${EXTRA_BUILDTAGS}
|
||||||
|
# N/B: This value is managed by Renovate, manual changes are
|
||||||
|
EOF
|
||||||
|
|
||||||
|
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"
|
||||||
|
|
||||||
|
# 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="" EPOCH_TEST_COMMIT=""
|
||||||
|
|
||||||
|
# Use proper pkg-config to get gpgme cflags and ldflags when
|
||||||
|
# cross-compiling, bug 930982.
|
||||||
|
if tc-is-cross-compiler; then
|
||||||
|
tc-export PKG_CONFIG
|
||||||
|
fi
|
||||||
|
|
||||||
|
emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" EXTRA_BUILDTAGS="$(usev seccomp)" \
|
||||||
|
all $(usev wrapper docker-docs)
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
emake DESTDIR="${D}" install install.completions $(usev wrapper install.docker-full)
|
||||||
|
|
||||||
|
if use !systemd; then
|
||||||
|
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
|
||||||
|
|
||||||
|
exeinto /etc/cron.daily
|
||||||
|
newexe "${FILESDIR}"/podman-auto-update-5.0.0.cron podman-auto-update
|
||||||
|
|
||||||
|
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)
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user