summaryrefslogtreecommitdiff
path: root/app-containers/skopeo
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-11-23 16:28:44 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-11-23 16:28:44 +0000
commit191f9d51469a31970723ed9eb0aee70ffe63094e (patch)
tree2502e164870943a5ca491043010657f1b83e4a27 /app-containers/skopeo
parent2114f9bc3d55c52f926a43f08765b350871e86f2 (diff)
gentoo auto-resync : 23:11:2023 - 16:28:43
Diffstat (limited to 'app-containers/skopeo')
-rw-r--r--app-containers/skopeo/Manifest6
-rw-r--r--app-containers/skopeo/files/makefile-1.14.0.patch38
-rw-r--r--app-containers/skopeo/metadata.xml12
-rw-r--r--app-containers/skopeo/skopeo-1.14.0.ebuild80
-rw-r--r--app-containers/skopeo/skopeo-9999.ebuild80
5 files changed, 215 insertions, 1 deletions
diff --git a/app-containers/skopeo/Manifest b/app-containers/skopeo/Manifest
index 0d1c604b6cac..b9d3a5587801 100644
--- a/app-containers/skopeo/Manifest
+++ b/app-containers/skopeo/Manifest
@@ -1,7 +1,11 @@
+AUX makefile-1.14.0.patch 1677 BLAKE2B 05f9d685f642ebafd963613b5f45bbc8d8b473f59410c633341053ff3302c0c8d6fda18df359d5851992a98c8cce9c0d4e284b45386ecd8868a32d91adab57a7 SHA512 63e699ff3e43a5ab3f9d33f4cf3974211ef1e48e5b28334b586b8444f7315e1bcc9194bdc3b2529277d13dac22265c0f0ac2da94ef75e208f1124983ef6d4b1c
DIST skopeo-1.10.0.tar.gz 6460856 BLAKE2B b904a161334ef0a3eaaab8c58f0c7e4c507fa68a09f8fa8235e8a9222d48c98874c9ce878a509e2816f210ffb37dbf707ff2653212e1efbd9ad6686efb97e147 SHA512 0d64e7f12a0d10c81074a04b6c74ed6e7213f598013f1ba672c4c696e9dad5827f41f41bb817263bf8606cd051b8e24e7eab65b95d73d8a1c8bbb3eaeb9defdb
DIST skopeo-1.11.1.tar.gz 8071084 BLAKE2B 2411db318e377cfcfa9a80523c0bd4900201b1c17a4fe0f875dd78033bd4241e6c806816746ef77304e2edbc3737a3b22cfa83b83d65eb3c462cd5437de4e0b8 SHA512 521a2c8ddf629e361340a51d95200ec67bc4fef814e0449b6d679725536ec9448827229d4f993276f084269c2ec73c1b4edf97c0ce29122d950d350ed623a4b9
+DIST skopeo-1.14.0.tar.gz 10548883 BLAKE2B 6ecf54d236405ce59bedf77acc124fa8b3bb12acefa24a679a1d2d85957ddf585b5a6ba163806b8b7b510485d936adbe1afd6eee8c92b267b948f7d78ac83d05 SHA512 59d329036a97cbeca4de20b15d9dd8adacd5201834b26ae5e5c88b05594b2a7101c22da91f22c35c07a98e41afa28f2c7103e660b3847c7f8c9691f27f4c4146
DIST skopeo-1.5.1.tar.gz 5636533 BLAKE2B 7f0e86cdee5c3250ec1280d7e71554ac2f8ad96ababe0e81dfabc00e8c128a13fc0c9c561b7a9be389d7386e9f664b95118bd2122612b9c2e8844db49769c03c SHA512 3f8c730eaa739bf2a29b82d3b04aa4eee1c09f957b61964fc8c48e59d1537bcb87b5bdf9c18fa48f9d36cf2b7ede3a1448918a20b5a3167f6ce09881a6cd3dde
EBUILD skopeo-1.10.0-r1.ebuild 1066 BLAKE2B f55aa099a396fca1f8513786c48929923d7419a08d232ba910d65d325c5f31c2a4fbb43487d3585c36098375687897f07fbd9e7274edeb4e1b7bf5301dba040d SHA512 0109637023cf52163bbdc2a30fbd086f514a5bd77948888ce30a7824cf4472c46f98f6011e9a0302a054578e5bb812d2b495dac041a060bdb26abbbd034c27bc
EBUILD skopeo-1.11.1.ebuild 1066 BLAKE2B d304dfa99199b32528a24710a716ab757f9670e4b474fd48c5284005a0a01cc457af1d3882572f27aa81eadb058ec495c7dcebf775dec238ae4b44f0d748d0d0 SHA512 14ad618519d078c4f539afdc3595bd80a1fd102e21abd231f71a530de5019557d915a6809ce1cecb7dc1ee6be57ee9a5b12add0fee1fc8d7325fc2f1f567896b
+EBUILD skopeo-1.14.0.ebuild 2041 BLAKE2B eb2154fb6b009fb498cca5b89c0b91a4548c382de0bae319b65949cc03623b259cc792d5904fe6dce52160812cc5df4f1d280c978ff023651dc5b6dd0b4c741e SHA512 339329ea290985f4927abae7c55082e390f9f50ff2267f6ad4025d0b1f9c17bfe4f1e727037340f9ceede5ed789947f72d762e9a5e42f1176729e063b6011f7c
EBUILD skopeo-1.5.1.ebuild 1403 BLAKE2B a4c236cb6248a1551c90683a45247d19d5634ca7e9ca801761953131f73a7bd0058ab5bcea1d7b2593229eb20c6482e2dae833443227467daccef020b23b5f88 SHA512 b163486639a8831eb20db3a5906378485f0aaf3299e815217b1c8a2f4e27ca35af0bda40e6265a7c58107588cab429c0044717666cd22c43e8e21c73a75277dd
-MISC metadata.xml 425 BLAKE2B 7f6ee6b669ae19cdf0e807a7a88a4e2573e94d36798418a037b78d5e3219a4d45297b841c5ca239e064de564a95ffed69758687adf44e0be0df5ac86c7516412 SHA512 f0954bc3db4e4a0e69149f89af269e70d074cbe7dde6c9161c5ced959f236eed7ce32d777970d5b103a6b880445842f38b680b4c69f12ca512a12f27dd0cd1eb
+EBUILD skopeo-9999.ebuild 2041 BLAKE2B eb2154fb6b009fb498cca5b89c0b91a4548c382de0bae319b65949cc03623b259cc792d5904fe6dce52160812cc5df4f1d280c978ff023651dc5b6dd0b4c741e SHA512 339329ea290985f4927abae7c55082e390f9f50ff2267f6ad4025d0b1f9c17bfe4f1e727037340f9ceede5ed789947f72d762e9a5e42f1176729e063b6011f7c
+MISC metadata.xml 932 BLAKE2B 07a3c417bf16785676ad46085fd30feef0bb9970157a34a48b5f633878633788de20da8d9d24b14b356ff19bd7012ceeb9ace0aee84dcece374dd609a14d9ce3 SHA512 33a8355d730bf0f6f53f77ef2a1d0cb5a3a3e9f4b9bb76603e2da9fa087e9065b6bf950170cdb3b194105a24e34ab98e006880b3ac9d737152a4d309ec4d0fe7
diff --git a/app-containers/skopeo/files/makefile-1.14.0.patch b/app-containers/skopeo/files/makefile-1.14.0.patch
new file mode 100644
index 000000000000..ee3383925a2b
--- /dev/null
+++ b/app-containers/skopeo/files/makefile-1.14.0.patch
@@ -0,0 +1,38 @@
+# Patch by Rahil Bhimjiani (IRC: rahilarious) (rahil3108@gmail.com)
+#
+# Rationale behind this patch:
+# 1. We don't install these files (policy.json default.yaml) as part of skopeo because podman, buildah, et. al need them as well, and there's no need for those to depend on skopeo just for configuration. Rely on app-containers/containers-common which has them split out instead. See https://bugs.gentoo.org/849863
+# 2. Remove install-*: because it tries to (re)compile stuff (which we already built in src_compile) on install commands. src_install should only install, not compile
+#
+#
+--- a/Makefile
++++ b/Makefile
+@@ -158,23 +158,20 @@
+ rm -rf bin docs/*.1 completions/
+
+ install: install-binary install-docs install-completions
+- install -d -m 755 ${DESTDIR}${LOOKASIDEDIR}
+ install -d -m 755 ${DESTDIR}${CONTAINERSCONFDIR}
+- install -m 644 default-policy.json ${DESTDIR}${CONTAINERSCONFDIR}/policy.json
+ install -d -m 755 ${DESTDIR}${REGISTRIESDDIR}
+- install -m 644 default.yaml ${DESTDIR}${REGISTRIESDDIR}/default.yaml
+
+-install-binary: bin/skopeo
++install-binary:
+ install -d -m 755 ${DESTDIR}${BINDIR}
+ install -m 755 bin/skopeo ${DESTDIR}${BINDIR}/skopeo
+
+-install-docs: docs
++install-docs:
+ ifneq ($(DISABLE_DOCS), 1)
+ install -d -m 755 ${DESTDIR}${MANDIR}/man1
+ install -m 644 docs/*.1 ${DESTDIR}${MANDIR}/man1
+ endif
+
+-install-completions: completions
++install-completions:
+ install -d -m 755 ${DESTDIR}${BASHINSTALLDIR}
+ install -m 644 completions/bash/skopeo ${DESTDIR}${BASHINSTALLDIR}
+ install -d -m 755 ${DESTDIR}${ZSHINSTALLDIR}
+ install -m 644 completions/zsh/_skopeo ${DESTDIR}${ZSHINSTALLDIR}
+ install -d -m 755 ${DESTDIR}${FISHINSTALLDIR}
diff --git a/app-containers/skopeo/metadata.xml b/app-containers/skopeo/metadata.xml
index 21cb782a75cf..2aaf8daf38f7 100644
--- a/app-containers/skopeo/metadata.xml
+++ b/app-containers/skopeo/metadata.xml
@@ -5,10 +5,22 @@
<email>williamh@gentoo.org</email>
<name>William Hubbs</name>
</maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>me@rahil.website</email>
+ <name>Rahil Bhimjiani</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<use>
<flag name="btrfs">Enables dependencies for the "btrfs" graph driver.</flag>
+ <flag name="device-mapper">Compiles with libdevmapper</flag>
+ <flag name="rootless">Compiles with libsubid</flag>
</use>
<upstream>
<remote-id type="github">containers/skopeo</remote-id>
+ <bugs-to>https://github.com/containers/skopeo/issues</bugs-to>
+ <doc>https://github.com/containers/skopeo/blob/main/README.md</doc>
</upstream>
</pkgmetadata>
diff --git a/app-containers/skopeo/skopeo-1.14.0.ebuild b/app-containers/skopeo/skopeo-1.14.0.ebuild
new file mode 100644
index 000000000000..63503fe4b2cf
--- /dev/null
+++ b/app-containers/skopeo/skopeo-1.14.0.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module linux-info
+
+DESCRIPTION="Work with remote container images registries"
+HOMEPAGE="https://github.com/containers/skopeo"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/containers/skopeo.git"
+else
+ SRC_URI="https://github.com/containers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+# main
+LICENSE="Apache-2.0"
+# deps
+LICENSE+=" BSD BSD-2 CC-BY-SA-4.0 ISC MIT"
+SLOT="0"
+IUSE="btrfs device-mapper rootless"
+
+RDEPEND="
+ app-containers/containers-common
+ >=app-crypt/gpgme-1.5.5:=
+ >=dev-libs/libassuan-2.4.3:=
+ btrfs? ( >=sys-fs/btrfs-progs-4.0.1 )
+ device-mapper? ( >=sys-fs/lvm2-2.02.145:= )
+ rootless? ( sys-apps/shadow:= )
+"
+
+# TODO: Is this really needed? cause upstream doesnt mention it https://github.com/containers/skopeo/blob/main/install.md#building-from-source
+# dev-libs/libgpg-error:=
+DEPEND="${RDEPEND}"
+BDEPEND="dev-go/go-md2man"
+
+RESTRICT="test"
+PATCHES=(
+ "${FILESDIR}"/makefile-1.14.0.patch
+)
+
+pkg_setup() {
+ use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
+ use device-mapper && CONFIG_CHECK+=" ~MD"
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ default
+ local file
+ for file in btrfs_installed_tag btrfs_tag libdm_tag libsubid_tag; do
+ [[ -f hack/"${file}".sh ]] || die
+ 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
+
+ cat <<-EOF > hack/libdm_tag.sh || die
+ #!/usr/bin/env bash
+ $(usex device-mapper echo "echo libdm_no_deferred_remove")
+ EOF
+
+ cat <<-EOF > hack/libsubid_tag.sh || die
+ #!/usr/bin/env bash
+ $(usex rootless "echo libsubid" echo)
+ EOF
+}
+
+src_compile() {
+ # export variables which 'make install' is also going to use
+ export PREFIX="${EPREFIX}/usr" \
+ CONTAINERSCONFDIR="${EPREFIX}/etc/containers"
+ # compile binary, docs, completions
+ emake all completions
+}
diff --git a/app-containers/skopeo/skopeo-9999.ebuild b/app-containers/skopeo/skopeo-9999.ebuild
new file mode 100644
index 000000000000..63503fe4b2cf
--- /dev/null
+++ b/app-containers/skopeo/skopeo-9999.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module linux-info
+
+DESCRIPTION="Work with remote container images registries"
+HOMEPAGE="https://github.com/containers/skopeo"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/containers/skopeo.git"
+else
+ SRC_URI="https://github.com/containers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+# main
+LICENSE="Apache-2.0"
+# deps
+LICENSE+=" BSD BSD-2 CC-BY-SA-4.0 ISC MIT"
+SLOT="0"
+IUSE="btrfs device-mapper rootless"
+
+RDEPEND="
+ app-containers/containers-common
+ >=app-crypt/gpgme-1.5.5:=
+ >=dev-libs/libassuan-2.4.3:=
+ btrfs? ( >=sys-fs/btrfs-progs-4.0.1 )
+ device-mapper? ( >=sys-fs/lvm2-2.02.145:= )
+ rootless? ( sys-apps/shadow:= )
+"
+
+# TODO: Is this really needed? cause upstream doesnt mention it https://github.com/containers/skopeo/blob/main/install.md#building-from-source
+# dev-libs/libgpg-error:=
+DEPEND="${RDEPEND}"
+BDEPEND="dev-go/go-md2man"
+
+RESTRICT="test"
+PATCHES=(
+ "${FILESDIR}"/makefile-1.14.0.patch
+)
+
+pkg_setup() {
+ use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
+ use device-mapper && CONFIG_CHECK+=" ~MD"
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ default
+ local file
+ for file in btrfs_installed_tag btrfs_tag libdm_tag libsubid_tag; do
+ [[ -f hack/"${file}".sh ]] || die
+ 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
+
+ cat <<-EOF > hack/libdm_tag.sh || die
+ #!/usr/bin/env bash
+ $(usex device-mapper echo "echo libdm_no_deferred_remove")
+ EOF
+
+ cat <<-EOF > hack/libsubid_tag.sh || die
+ #!/usr/bin/env bash
+ $(usex rootless "echo libsubid" echo)
+ EOF
+}
+
+src_compile() {
+ # export variables which 'make install' is also going to use
+ export PREFIX="${EPREFIX}/usr" \
+ CONTAINERSCONFDIR="${EPREFIX}/etc/containers"
+ # compile binary, docs, completions
+ emake all completions
+}