User Tools

Site Tools


buildroot:podman

podman

Tool and library for running OCI-based containers in pods

runtime dependencies iptables (Networking applications)
libgpgme (Libraries/Crypto)
libseccomp (Libraries/Other)
crun
skopeo
slirp4netns
conmon
make dependencies libgpgme (Libraries/Crypto)
libseccomp (Libraries/Other)
systemd (System tools)
apparmor (Security)
git (Development tools)
btrfs-progs (Filesystem and flash utilities)
device-mapper
go
go-md2man
podman ├── iptables (Networking applications) ├── libgpgme (Libraries/Crypto) ├── libseccomp (Libraries/Other) ├── crun (Custom) │   ├── libseccomp (Libraries/Other) │   ├── libcap (Libraries/Other) │   ├── yajl (Libraries/JSON/XML) │   ├── systemd (System tools) │   └── criu (Custom) │   ├── libbsd (Libraries/Other) │   ├── protobuf-c (Libraries/Other) │   ├── libnet (Libraries Networking) │   ├── libnl (Libraries Networking) │   ├── gnutls (Libraries/Crypto) │   ├── nftables (Networking applications) │   └── libprotobuf-c (Custom) ├── skopeo (Custom) │   └── libgpgme (Libraries/Crypto) ├── slirp4netns (Custom) │   ├── libglib2 (Libraries/Other) │   ├── libcap (Libraries/Other) │   ├── libseccomp (Libraries/Other) │   ├── git (Development tools) │   ├── qemu (Miscellaneous) │   └── slirp (Networking) └── conmon (Custom)    ├── systemd (System tools) └── cni-plugins (Custom)
mkdir /data/buildroot/package/podman
cat > /data/buildroot/package/podman/Config.in<< 'EOF'
config BR2_PACKAGE_PODMAN
        bool "podman"
        depends on BR2_PACKAGE_LIBGPGME
        depends on BR2_PACKAGE_CRUN
        depends on BR2_PACKAGE_IPTABLES
        depends on BR2_PACKAGE_SKOPEO
        depends on BR2_PACKAGE_SLIRP4NETNS
        help
          Tool and library for running OCI-based containers in pods
EOF

#############################################################
#
# podman
#
#############################################################
PODMAN_VERSION = 4.0.1
PODMAN_SOURCE = v$(PODMAN_VERSION).tar.gz
PODMAN_SITE = https://github.com/containers/podman/archive/refs/tags

PODMAN_DEPENDENCIES = crun iptables libgpgme skopeo slirp4netns

define PODMAN_BUILD_CMDS
  cd $(@D)/ && \
  BUILDTAGS='apparmor seccomp systemd' \
  CGO_CPPFLAGS="${CPPFLAGS}" \
  CGO_CFLAGS="${CFLAGS}" \
  CGO_CXXFLAGS="${CXXFLAGS}" \
  CGO_LDFLAGS="${LDFLAGS}" \
  GOFLAGS="-buildmode=pie -trimpath" \
  PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig/" GOROOT=/go GOPATH=$(@D)/go \
  make EXTRA_LDFLAGS='-s -w -linkmode=external'
endef

define PODMAN_INSTALL_TARGET_CMDS
  cd $(@D)/ && \
  GOROOT=/go GOPATH=$(@D)/go make install install.completions DESTDIR="${TARGET_DIR}" PREFIX=/usr LIBEXECDIR=/usr/lib 
endef

$(eval $(generic-package))
EOF

sed -i '/menu "Custom packages"/a source "package/podman/Config.in' /data/buildroot/package/Config.in
buildroot/podman.txt · Last modified: 2025/02/19 10:59 by 127.0.0.1