diff options
Diffstat (limited to 'app-emulation/libpod')
-rw-r--r-- | app-emulation/libpod/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/libpod/libpod-2.1.0.ebuild | 154 |
2 files changed, 156 insertions, 0 deletions
diff --git a/app-emulation/libpod/Manifest b/app-emulation/libpod/Manifest index 8011ad224968..1b4bbe67ce27 100644 --- a/app-emulation/libpod/Manifest +++ b/app-emulation/libpod/Manifest @@ -8,6 +8,7 @@ DIST podman-2.0.2.tar.gz 9192157 BLAKE2B b8635ea5b166082be03a041f74d6c7a5c8bed04 DIST podman-2.0.3.tar.gz 9303421 BLAKE2B c0882c7fff60f33d1dc6752120a36ce35ce321c661ec29ae940f392b5ef9fb6176fea556a89ca9823b4981997d6e61545531d39d95b31d23602b0d3e1a78870a SHA512 ee6d4f4735196fc07e03e9c1e99aa62650d9651bd5f24657398d42b3f2ebf59240a49fecfbf71a3d90636ea44c243cc4f7504c43d8f48e76ee504b3d10762240 DIST podman-2.0.4.tar.gz 9305631 BLAKE2B a6a5760886d112b6cd69625137ec0aa9e368e8ff09f114123ff0b17ad2ef5b26b5eb645a5bbabc30a7cb900d7844587e0051969fefba9d5e8b5652a571857e09 SHA512 39313615b4c0befec3a073b7bf4a689208e39cb7bcba81f6d8982e188402c457cbe4835a128274761e55ab1272a780f9747caa07746fe62af7a568eebc96ad6a DIST podman-2.0.5.tar.gz 9338371 BLAKE2B 8bf86ac438c2a7c250d77df46d315dfa9d3326097a332e32de08b4d9acfeae9ace0b1825f242cddaf6178fd34d4c7542e9c59c4ce462525371c081b60cf0e9a7 SHA512 efe1bdfd1fec61d470c748ac1cfff8ec4a64a47751becac2c35d85e61f1f1d511781f4fafb3463558bd5df347f3ee021c4f9ed00823b6cb5dd8963a2c2bc570b +DIST podman-2.1.0.tar.gz 9444707 BLAKE2B 62dacd316a8d6ae8aab0523338d818c69cf1228120e828a89301c9fdbb98082b85328c03c61f9f2a36c7a50105ce5fd025ad2b0e9ba2705c86b0d7e263fc92a6 SHA512 eb9b0cb184138af022e6d8e145fc6c4188c75c0695e0c6e62d54112a6b143424dd0caf9686f83637d08ff1fdbc24afca564c89f8cb4ab68b8f8d07345856398e EBUILD libpod-1.8.2.ebuild 3881 BLAKE2B 4555be189f9d335b03b6eb074155c039d604395b5ae0772cf3da1502b6a626266c80b9a2ec997dc4c13b31bdfb9f30877da749a0810ec2beac594ee4c0502f1f SHA512 001f631f58a2e0d11f07c5739ed7e2a3c36b0de5dfbe0637e3cb06d31ba68e730de59e05e0e155c92702f39bcd4da05d43e795c1030b800d50198158fd06bed4 EBUILD libpod-1.9.3.ebuild 3920 BLAKE2B d65bd39116779af1c238061b5d8696615a789c2a5874a0aec558d67d5f760be6785c84be56f75a310cd312078db14b937a4695b7432a50b1236296af4155600b SHA512 e9f823ad0f4a513e760ce0108af2621a1f9f029a603cc87be4f743e99cde57c44bd28242c89f3702d2ddef3af65cfe51ecce5ea552e5320f8bd27f34c1c6777a EBUILD libpod-2.0.0.ebuild 4335 BLAKE2B 7d9c3f7bbbc09135dfb63034d24ffd7b23b06a107a5d00967ce4a1ec978a7d6e647e2fac818289ca5cff060f46d93075e7d8dc01762e4a0a616885d668ccad4c SHA512 cf72840fde4a723ccb39573fb6ffc460195c7fe8a056241003de385dda9e3a48a0af4e9d8130d58c70614f1d7ea84fbe5e7d1ef3a3329f725d6464688e64796c @@ -16,4 +17,5 @@ EBUILD libpod-2.0.2.ebuild 4393 BLAKE2B dbf3f0a47c20044235e309e7f3e3743254ff8683 EBUILD libpod-2.0.3.ebuild 4393 BLAKE2B 65b396fbc63951d84fcbe07ce2cee59e3a7c636c388c20e5e3f25d488e62fadd56263bcc6739c5f8ecc5cc41c117dbf26fcc8ed691e5f00935896a5f8f58ab40 SHA512 ececd412dae05d587b9a4f96663771f02c78df29740f1b9e3adbcfa9056db6830c8abc73435d67907c0e05bbb865dcd744fc36ae2d1c14cf024edbc4d3c75b2f EBUILD libpod-2.0.4.ebuild 4400 BLAKE2B 9a735885262e72b30aad8ff6c3c0ebd3de44a12f2d8c77582fda0cfb46d6eb3582dff4f59540cc28b9def231bb1af4ba1b501d6f89b4ddaa70b4934f09c0172a SHA512 745bedb657d65fccd6b9726916c373129c8736b02c43548f60d31020e0a1172c1f6ec791bab6ae168dae042a024da429d60d073dc8c3efa4d5d0babea00ee3ee EBUILD libpod-2.0.5.ebuild 4400 BLAKE2B bfd9fdc2342591abd869c468c39a07bbe88d4d52f6e84ddb30724ee284bc49bbf111b3fce9634c9cbc942d9ac40519282f2e04dfa0059ab5d7c373f151b48a4d SHA512 ec7e9b045c93167607427dd5bc8d57cfd5f9c472fcdd4574f659760e25e8d7f8f2b04ea2966f8fb428c40b9967860bf08ea4755b607c545560441b72a51a3b08 +EBUILD libpod-2.1.0.ebuild 4448 BLAKE2B 8fe2d70f01eb523fca83759bfe089736ee771dd9a40d0988a2635160b93e2358a713bf379c539152df4f8c8018c894f5e712d5d11214aad6ebfa815d02eaeee7 SHA512 7a646fb9ff678f49cd5ec0efd3cf2016f8e8a9c3cd467798cba9138e8f4669d2b1d49bf2fd9d6de855e88feb0599bccca2e30f5651dce6a25d350b092b01f57e MISC metadata.xml 999 BLAKE2B 4cc701468adb97983a347a94a76ad7966a54a5d4d5e3dcdae0a87e6bc81a45eac46ff120c576d16ea1f8145d6ab86b51b3671d9baa35945d4f104a7f8237854e SHA512 679b1a932037e7f7d209e7f6485dac8c3f2cd7be161fd342dc8158567f03c5692e487d23de4dda62c4ff629c96f0e2ea715dd9c8523e457b090bae5824bd3646 diff --git a/app-emulation/libpod/libpod-2.1.0.ebuild b/app-emulation/libpod/libpod-2.1.0.ebuild new file mode 100644 index 000000000000..8335388f9f6f --- /dev/null +++ b/app-emulation/libpod/libpod-2.1.0.ebuild @@ -0,0 +1,154 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +EGIT_COMMIT="d8868746fd3f45b9bfd79e37bf2aa0c7103245fd" + +inherit bash-completion-r1 flag-o-matic go-module + +DESCRIPTION="Library and podman tool for running OCI-based containers in Pods" +HOMEPAGE="https://github.com/containers/podman/" +MY_PN=podman +MY_P=${MY_PN}-${PV} +SRC_URI="https://github.com/containers/podman/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz" +LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0" +SLOT="0" + +KEYWORDS="~amd64 ~arm64" +IUSE="apparmor btrfs +fuse +rootless selinux" +RESTRICT="test" + +COMMON_DEPEND=" + app-crypt/gpgme:= + >=app-emulation/conmon-2.0.0 + || ( >=app-emulation/runc-1.0.0_rc6 app-emulation/crun ) + dev-libs/libassuan:= + dev-libs/libgpg-error:= + >=net-misc/cni-plugins-0.8.6 + sys-fs/lvm2 + sys-libs/libseccomp:= + + apparmor? ( sys-libs/libapparmor ) + btrfs? ( sys-fs/btrfs-progs ) + rootless? ( app-emulation/slirp4netns ) + selinux? ( sys-libs/libselinux:= ) +" +DEPEND=" + ${COMMON_DEPEND} + dev-go/go-md2man" +RDEPEND="${COMMON_DEPEND} + fuse? ( sys-fs/fuse-overlayfs )" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + default + + # Disable installation of python modules here, since those are + # installed by separate ebuilds. + local makefile_sed_args=( + -e '/^GIT_.*/d' + -e 's/$(GO) build/$(GO) build -v -work -x/' + -e 's/^\(install:.*\) install\.python$/\1/' + -e 's|^pkg/varlink/iopodman.go: .gopathok pkg/varlink/io.podman.varlink$|pkg/varlink/iopodman.go: pkg/varlink/io.podman.varlink|' + ) + + has_version -b '>=dev-lang/go-1.13.9' || makefile_sed_args+=(-e 's:GO111MODULE=off:GO111MODULE=on:') + + sed "${makefile_sed_args[@]}" -i Makefile || die + + sed -e 's|OUTPUT="${CIRRUS_TAG:.*|OUTPUT='v${PV}'|' \ + -i hack/get_release_info.sh || die +} + +src_compile() { + # Filter unsupported linker flags + filter-flags '-Wl,*' + + [[ -f hack/apparmor_tag.sh ]] || die + if use apparmor; then + echo -e "#!/bin/sh\necho apparmor" > hack/apparmor_tag.sh || die + else + echo -e "#!/bin/sh\ntrue" > hack/apparmor_tag.sh || die + fi + + [[ -f hack/btrfs_installed_tag.sh ]] || die + if use btrfs; then + echo -e "#!/bin/sh\ntrue" > hack/btrfs_installed_tag.sh || die + else + echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \ + hack/btrfs_installed_tag.sh || die + fi + + [[ -f hack/selinux_tag.sh ]] || die + if use selinux; then + echo -e "#!/bin/sh\necho selinux" > hack/selinux_tag.sh || die + else + echo -e "#!/bin/sh\ntrue" > hack/selinux_tag.sh || die + fi + + # Avoid this error when generating pkg/varlink/iopodman.go: + # cannot find package "github.com/varlink/go/varlink/idl" + mkdir -p _output || die + ln -snf ../vendor _output/src || die + GO111MODULE=off GOPATH=${PWD}/_output go generate ./pkg/varlink/... || die + rm _output/src || die + + export -n GOCACHE GOPATH XDG_CACHE_HOME + GOBIN="${S}/bin" \ + emake all \ + GIT_BRANCH=master \ + GIT_BRANCH_CLEAN=master \ + COMMIT_NO="${EGIT_COMMIT}" \ + GIT_COMMIT="${EGIT_COMMIT}" +} + +src_install() { + emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install + + insinto /etc/containers + newins test/registries.conf registries.conf.example + newins test/policy.json policy.json.example + + insinto /usr/share/containers + doins vendor/github.com/containers/common/pkg/seccomp/seccomp.json + + newinitd "${FILESDIR}"/podman.initd podman + + insinto /etc/logrotate.d + newins "${FILESDIR}/podman.logrotated" podman + + dobashcomp completions/bash/* + + keepdir /var/lib/containers +} + +pkg_preinst() { + LIBPOD_ROOTLESS_UPGRADE=false + if use rootless; then + has_version 'app-emulation/libpod[rootless]' || LIBPOD_ROOTLESS_UPGRADE=true + fi +} + +pkg_postinst() { + local want_newline=false + if [[ ! ( -e ${EROOT%/*}/etc/containers/policy.json && -e ${EROOT%/*}/etc/containers/registries.conf ) ]]; then + elog "You need to create the following config files:" + elog "/etc/containers/registries.conf" + elog "/etc/containers/policy.json" + elog "To copy over default examples, use:" + elog "cp /etc/containers/registries.conf{.example,}" + elog "cp /etc/containers/policy.json{.example,}" + want_newline=true + fi + if [[ ${LIBPOD_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 +} |