commit:     7dbd9efce69d73d24db421189e4d2beccbcd6da2
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Dec  1 16:11:04 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec  1 19:38:23 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7dbd9efc

app-alternatives/gzip: Add a package for gzip symlinks

Closes: https://bugs.gentoo.org/868648
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-alternatives/gzip/gzip-0.ebuild | 45 +++++++++++++++++++++++++++++++++++++
 app-alternatives/gzip/metadata.xml  | 20 +++++++++++++++++
 2 files changed, 65 insertions(+)

diff --git a/app-alternatives/gzip/gzip-0.ebuild 
b/app-alternatives/gzip/gzip-0.ebuild
new file mode 100644
index 000000000000..29e0808da453
--- /dev/null
+++ b/app-alternatives/gzip/gzip-0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="gzip symlinks"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Base/Alternatives";
+SRC_URI=""
+S=${WORKDIR}
+
+LICENSE="CC0-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos 
~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="pigz +reference split-usr"
+REQUIRED_USE="^^ ( pigz reference )"
+
+RDEPEND="
+       pigz? ( app-arch/pigz[-symlink(-)] )
+       reference? ( >=app-arch/gzip-1.12-r3 )
+       !<app-arch/gzip-1.12-r3
+       !app-arch/pigz[symlink(-)]
+"
+
+src_install() {
+       local usr_prefix=
+       use split-usr && usr_prefix=../usr/bin/
+
+       if use pigz; then
+               dosym "${usr_prefix}pigz" /bin/gzip
+               dosym gzip /bin/gunzip
+               dosym gzip /bin/zcat
+               newman - gzip.1 <<<".so pigz.1"
+       elif use reference; then
+               dosym gzip-reference /bin/gzip
+               # gzip uses shell wrappers rather than argv[0]
+               dosym gunzip-reference /bin/gunzip
+               dosym zcat-reference /bin/zcat
+               newman - gzip.1 <<<".so gzip-reference.1"
+       else
+               die "Invalid USE flag combination (broken REQUIRED_USE?)"
+       fi
+
+       newman - gunzip.1 <<<".so gzip.1"
+       newman - zcat.1 <<<".so gzip.1"
+}

diff --git a/app-alternatives/gzip/metadata.xml 
b/app-alternatives/gzip/metadata.xml
new file mode 100644
index 000000000000..6a439f199cb1
--- /dev/null
+++ b/app-alternatives/gzip/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="project">
+               <email>base-sys...@gentoo.org</email>
+               <name>Gentoo Base System</name>
+       </maintainer>
+       <maintainer type="person">
+               <email>mgo...@gentoo.org</email>
+               <name>Michał Górny</name>
+       </maintainer>
+       <use>
+               <flag name="pigz">
+                       Symlink to <pkg>app-arch/pigz</pkg>.
+               </flag>
+               <flag name="reference">
+                       Symlink to <pkg>app-arch/gzip</pkg>.
+               </flag>
+       </use>
+</pkgmetadata>

Reply via email to