Gentoo Archives: gentoo-commits

From: Zac Medico <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/libpod/
Date: Fri, 31 Jul 2020 21:06:38
Message-Id: 1596229576.74e279dcdf44dbd9879539b21be8d29a88d84fb5.zmedico@gentoo
1 commit: 74e279dcdf44dbd9879539b21be8d29a88d84fb5
2 Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
3 AuthorDate: Fri Jul 31 21:01:06 2020 +0000
4 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
5 CommitDate: Fri Jul 31 21:06:16 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74e279dc
7
8 app-emulation/libpod: Bump to version 2.0.4
9
10 Package-Manager: Portage-3.0.1, Repoman-2.3.23
11 Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>
12
13 app-emulation/libpod/Manifest | 1 +
14 app-emulation/libpod/libpod-2.0.4.ebuild | 154 +++++++++++++++++++++++++++++++
15 2 files changed, 155 insertions(+)
16
17 diff --git a/app-emulation/libpod/Manifest b/app-emulation/libpod/Manifest
18 index c9852210213..5dfdd29f220 100644
19 --- a/app-emulation/libpod/Manifest
20 +++ b/app-emulation/libpod/Manifest
21 @@ -4,3 +4,4 @@ DIST libpod-2.0.0.tar.gz 9126598 BLAKE2B 3c2d18a921b88ef235b14f069e7571f83b1add3
22 DIST libpod-2.0.1.tar.gz 9136153 BLAKE2B 4c60dc047ae7fd6a2918589a30f6dc94c13251ed0002e77919adfb9dbe0a3c7b14e40e204c5879273589673a573aa318a3d5b972c32236143e166cb96a7cc3c8 SHA512 e52d3eef3d698360a0196dca6338c319511b6685c0237bd4d24a3763eb5e46262946d7609d1f36798dec6eb63d4511efdc8b77fa22c06bd55b666505f4fe6730
23 DIST podman-2.0.2.tar.gz 9192157 BLAKE2B b8635ea5b166082be03a041f74d6c7a5c8bed04131b039ba505f87240a1a2e4503a3dc14c037eeb41955ff7f949dc0978571ec63f011adb9e5a6efa1157b6bce SHA512 5bcdca28021c8b36b5689e69c00232ca20404af0903ea632cea350ecf6b6eed091260f1b8fea8fe6d06caa7a475ba87ef4f3e86e83807ffdd187f9ccc41cb194
24 DIST podman-2.0.3.tar.gz 9303421 BLAKE2B c0882c7fff60f33d1dc6752120a36ce35ce321c661ec29ae940f392b5ef9fb6176fea556a89ca9823b4981997d6e61545531d39d95b31d23602b0d3e1a78870a SHA512 ee6d4f4735196fc07e03e9c1e99aa62650d9651bd5f24657398d42b3f2ebf59240a49fecfbf71a3d90636ea44c243cc4f7504c43d8f48e76ee504b3d10762240
25 +DIST podman-2.0.4.tar.gz 9305631 BLAKE2B a6a5760886d112b6cd69625137ec0aa9e368e8ff09f114123ff0b17ad2ef5b26b5eb645a5bbabc30a7cb900d7844587e0051969fefba9d5e8b5652a571857e09 SHA512 39313615b4c0befec3a073b7bf4a689208e39cb7bcba81f6d8982e188402c457cbe4835a128274761e55ab1272a780f9747caa07746fe62af7a568eebc96ad6a
26
27 diff --git a/app-emulation/libpod/libpod-2.0.4.ebuild b/app-emulation/libpod/libpod-2.0.4.ebuild
28 new file mode 100644
29 index 00000000000..a5572a93cf7
30 --- /dev/null
31 +++ b/app-emulation/libpod/libpod-2.0.4.ebuild
32 @@ -0,0 +1,154 @@
33 +# Copyright 1999-2020 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=7
37 +
38 +EGIT_COMMIT="cab27868766a3b01ac14ff46180af8644c41d1cd"
39 +
40 +inherit bash-completion-r1 flag-o-matic go-module
41 +
42 +DESCRIPTION="Library and podman tool for running OCI-based containers in Pods"
43 +HOMEPAGE="https://github.com/containers/podman/"
44 +MY_PN=podman
45 +MY_P=${MY_PN}-${PV}
46 +SRC_URI="https://github.com/containers/podman/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
47 +LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
48 +SLOT="0"
49 +
50 +KEYWORDS="~amd64"
51 +IUSE="apparmor btrfs +fuse +rootless selinux"
52 +RESTRICT="test"
53 +
54 +COMMON_DEPEND="
55 + app-crypt/gpgme:=
56 + >=app-emulation/conmon-2.0.0
57 + || ( >=app-emulation/runc-1.0.0_rc6 app-emulation/crun )
58 + dev-libs/libassuan:=
59 + dev-libs/libgpg-error:=
60 + >=net-misc/cni-plugins-0.8.6
61 + sys-fs/lvm2
62 + sys-libs/libseccomp:=
63 +
64 + apparmor? ( sys-libs/libapparmor )
65 + btrfs? ( sys-fs/btrfs-progs )
66 + rootless? ( app-emulation/slirp4netns )
67 + selinux? ( sys-libs/libselinux:= )
68 +"
69 +DEPEND="
70 + ${COMMON_DEPEND}
71 + dev-go/go-md2man"
72 +RDEPEND="${COMMON_DEPEND}
73 + fuse? ( sys-fs/fuse-overlayfs )"
74 +
75 +S=${WORKDIR}/${MY_P}
76 +
77 +src_prepare() {
78 + default
79 +
80 + # Disable installation of python modules here, since those are
81 + # installed by separate ebuilds.
82 + local makefile_sed_args=(
83 + -e '/^GIT_.*/d'
84 + -e 's/$(GO) build/$(GO) build -v -work -x/'
85 + -e 's/^\(install:.*\) install\.python$/\1/'
86 + -e 's|^pkg/varlink/iopodman.go: .gopathok pkg/varlink/io.podman.varlink$|pkg/varlink/iopodman.go: pkg/varlink/io.podman.varlink|'
87 + )
88 +
89 + has_version -b '>=dev-lang/go-1.13.9' || makefile_sed_args+=(-e 's:GO111MODULE=off:GO111MODULE=on:')
90 +
91 + sed "${makefile_sed_args[@]}" -i Makefile || die
92 +
93 + sed -e 's|OUTPUT="${CIRRUS_TAG:.*|OUTPUT='v${PV}'|' \
94 + -i hack/get_release_info.sh || die
95 +}
96 +
97 +src_compile() {
98 + # Filter unsupported linker flags
99 + filter-flags '-Wl,*'
100 +
101 + [[ -f hack/apparmor_tag.sh ]] || die
102 + if use apparmor; then
103 + echo -e "#!/bin/sh\necho apparmor" > hack/apparmor_tag.sh || die
104 + else
105 + echo -e "#!/bin/sh\ntrue" > hack/apparmor_tag.sh || die
106 + fi
107 +
108 + [[ -f hack/btrfs_installed_tag.sh ]] || die
109 + if use btrfs; then
110 + echo -e "#!/bin/sh\ntrue" > hack/btrfs_installed_tag.sh || die
111 + else
112 + echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
113 + hack/btrfs_installed_tag.sh || die
114 + fi
115 +
116 + [[ -f hack/selinux_tag.sh ]] || die
117 + if use selinux; then
118 + echo -e "#!/bin/sh\necho selinux" > hack/selinux_tag.sh || die
119 + else
120 + echo -e "#!/bin/sh\ntrue" > hack/selinux_tag.sh || die
121 + fi
122 +
123 + # Avoid this error when generating pkg/varlink/iopodman.go:
124 + # cannot find package "github.com/varlink/go/varlink/idl"
125 + mkdir -p _output || die
126 + ln -snf ../vendor _output/src || die
127 + GO111MODULE=off GOPATH=${PWD}/_output go generate ./pkg/varlink/... || die
128 + rm _output/src || die
129 +
130 + export -n GOCACHE GOPATH XDG_CACHE_HOME
131 + GOBIN="${S}/bin" \
132 + emake all \
133 + GIT_BRANCH=master \
134 + GIT_BRANCH_CLEAN=master \
135 + COMMIT_NO="${EGIT_COMMIT}" \
136 + GIT_COMMIT="${EGIT_COMMIT}"
137 +}
138 +
139 +src_install() {
140 + emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install
141 +
142 + insinto /etc/containers
143 + newins test/registries.conf registries.conf.example
144 + newins test/policy.json policy.json.example
145 +
146 + insinto /usr/share/containers
147 + doins seccomp.json
148 +
149 + newinitd "${FILESDIR}"/podman.initd podman
150 +
151 + insinto /etc/logrotate.d
152 + newins "${FILESDIR}/podman.logrotated" podman
153 +
154 + dobashcomp completions/bash/*
155 +
156 + keepdir /var/lib/containers
157 +}
158 +
159 +pkg_preinst() {
160 + LIBPOD_ROOTLESS_UPGRADE=false
161 + if use rootless; then
162 + has_version 'app-emulation/libpod[rootless]' || LIBPOD_ROOTLESS_UPGRADE=true
163 + fi
164 +}
165 +
166 +pkg_postinst() {
167 + local want_newline=false
168 + if [[ ! ( -e ${EROOT%/*}/etc/containers/policy.json && -e ${EROOT%/*}/etc/containers/registries.conf ) ]]; then
169 + elog "You need to create the following config files:"
170 + elog "/etc/containers/registries.conf"
171 + elog "/etc/containers/policy.json"
172 + elog "To copy over default examples, use:"
173 + elog "cp /etc/containers/registries.conf{.example,}"
174 + elog "cp /etc/containers/policy.json{.example,}"
175 + want_newline=true
176 + fi
177 + if [[ ${LIBPOD_ROOTLESS_UPGRADE} == true ]] ; then
178 + ${want_newline} && elog ""
179 + elog "For rootless operation, you need to configure subuid/subgid"
180 + elog "for user running podman. In case subuid/subgid has only been"
181 + elog "configured for root, run:"
182 + elog "usermod --add-subuids 1065536-1131071 <user>"
183 + elog "usermod --add-subgids 1065536-1131071 <user>"
184 + want_newline=true
185 + fi
186 +}