mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-07-23 11:15:13 +03:00
135 lines
3.4 KiB
Text
135 lines
3.4 KiB
Text
# Contributor: Michał Polański <michal@polanski.me>
|
|
# Maintainer: Michał Polański <michal@polanski.me>
|
|
pkgname=podman
|
|
pkgver=4.4.2
|
|
pkgrel=0
|
|
pkgdesc="Simple management tool for pods, containers and images"
|
|
url="https://podman.io/"
|
|
license="Apache-2.0"
|
|
# riscv64, s390x: blocked by aardvark-dns and netavark
|
|
# armv7, armhf, x86: blocked by netavark
|
|
arch="all !riscv64 !s390x !armv7 !armhf !x86"
|
|
options="!check" # tests require root privileges
|
|
depends="
|
|
conmon
|
|
crun
|
|
iptables
|
|
ip6tables
|
|
slirp4netns
|
|
shadow-subids
|
|
containers-common
|
|
netavark
|
|
aardvark-dns
|
|
catatonit
|
|
"
|
|
makedepends="
|
|
go
|
|
gpgme-dev
|
|
libseccomp-dev
|
|
libassuan-dev
|
|
go-md2man
|
|
btrfs-progs-dev
|
|
bash
|
|
"
|
|
subpackages="
|
|
$pkgname-doc
|
|
$pkgname-openrc
|
|
$pkgname-bash-completion
|
|
$pkgname-fish-completion
|
|
$pkgname-zsh-completion
|
|
$pkgname-remote:remote
|
|
$pkgname-docker:docker:noarch
|
|
$pkgname-docker-doc:docker_doc:noarch
|
|
"
|
|
source="https://github.com/containers/podman/archive/v$pkgver/podman-$pkgver.tar.gz
|
|
no-quadlet.patch
|
|
|
|
podman.initd
|
|
podman.confd
|
|
"
|
|
|
|
# secfixes:
|
|
# 4.4.2-r0:
|
|
# - CVE-2023-0778
|
|
# 4.3.0-r0:
|
|
# - CVE-2022-2989
|
|
# 4.0.3-r0:
|
|
# - CVE-2022-27649
|
|
# 3.4.4-r0:
|
|
# - CVE-2021-4024
|
|
# - CVE-2021-41190
|
|
# 3.2.3-r0:
|
|
# - CVE-2021-3602
|
|
# 3.0.0-r0:
|
|
# - CVE-2021-20199
|
|
# 2.0.5-r0:
|
|
# - CVE-2020-14370
|
|
# 1.8.1-r0:
|
|
# - CVE-2020-1726
|
|
|
|
export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
|
|
export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
|
|
export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
|
|
|
|
build() {
|
|
export BUILDTAGS="exclude_graphdriver_devicemapper seccomp apparmor"
|
|
make -j1 podman podman-remote rootlessport docs \
|
|
PREFIX=/usr ETCDIR=/etc
|
|
}
|
|
|
|
package() {
|
|
make install.bin install.remote install.man install.completions \
|
|
PREFIX=/usr ETCDIR=/etc DESTDIR="$pkgdir"
|
|
|
|
install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
|
|
install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
|
|
|
|
mv "$pkgdir"/usr/share/fish/vendor_completions.d "$pkgdir"/usr/share/fish/completions
|
|
|
|
# remove systemd files
|
|
rm -r "$pkgdir"/usr/lib/tmpfiles.d
|
|
}
|
|
|
|
remote() {
|
|
pkgdesc="Remote CLI for Podman"
|
|
amove usr/bin/podman-remote
|
|
}
|
|
|
|
docker() {
|
|
pkgdesc="Emulate Docker CLI using Podman"
|
|
depends="podman"
|
|
provides="docker"
|
|
|
|
cd "$builddir"
|
|
|
|
install -d "$subpkgdir"/usr/bin
|
|
make PREFIX=/usr DESTDIR="$subpkgdir" install.docker
|
|
|
|
# Remove man pages
|
|
rm -rf "$subpkgdir"/usr/share
|
|
|
|
# Remove systemd files
|
|
rm -rf "$subpkgdir"/usr/lib
|
|
}
|
|
|
|
docker_doc() {
|
|
pkgdesc="Emulate Docker CLI using Podman (documentation)"
|
|
depends="$pkgname-doc"
|
|
install_if="docs $pkgname-docker=$pkgver-r$pkgrel"
|
|
|
|
# make target install.docker nor docker-docs are of any use,
|
|
# so lets create the symlinks manually:
|
|
cd "$builddir"/docs/build/man
|
|
|
|
mkdir -p "$subpkgdir"/usr/share/man/man1
|
|
for i in podman*.1; do
|
|
ln -s $i.gz "$subpkgdir"/usr/share/man/man1/${i/podman/docker}.gz
|
|
done
|
|
}
|
|
|
|
sha512sums="
|
|
057b6321b5223039155bca73b54c5239b17b8adc24c35762e860acec768dfec2ecb06d9d1f5d5da2ebea4c3cca3b508fbd0c101a9c76805f48050d1a4e12bd74 podman-4.4.2.tar.gz
|
|
99eb528473d5285e526ff4583eaaed917bbe1471ebadb2401bef223188f999f619185a7c0e4466228199c8e46ef6747e7e4a087301393e226008ef82c31639d3 no-quadlet.patch
|
|
f8941dc3f8c6b08b288e3347ef2d782140f6e46809da0353f3695338a2de75a971b312e57d09b0a0ea51557568d888b367e3b234be550aea8386321878f4a22f podman.initd
|
|
ec6e6d3f72d0ab6c90a30b2cca5152c0d0f1e402ae671289263d7bf3b5141de9d67c3593f20b6075cedd214b7fb1506e69ff7b4f9691b43b391389343ab9b9b1 podman.confd
|
|
"
|