diff options
author | Michał Górny <mgorny@gentoo.org> | 2022-12-01 18:26:45 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-12-01 19:38:24 +0000 |
commit | fe323f5591a2556d80dd16a8fde2f2cfc349f3b2 (patch) | |
tree | 67fc40d5546b6009a2c6e5e36e3a85244762a6e1 /app-alternatives | |
parent | app-alternatives/bzip2: Simplify by chaining manpage references (diff) | |
download | gentoo-fe323f5591a2556d80dd16a8fde2f2cfc349f3b2.tar.gz gentoo-fe323f5591a2556d80dd16a8fde2f2cfc349f3b2.tar.bz2 gentoo-fe323f5591a2556d80dd16a8fde2f2cfc349f3b2.zip |
app-alternatives/awk: New package to control awk symlinks
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'app-alternatives')
-rw-r--r-- | app-alternatives/awk/awk-0.ebuild | 59 | ||||
-rw-r--r-- | app-alternatives/awk/metadata.xml | 27 |
2 files changed, 86 insertions, 0 deletions
diff --git a/app-alternatives/awk/awk-0.ebuild b/app-alternatives/awk/awk-0.ebuild new file mode 100644 index 000000000000..01e69d65fbd1 --- /dev/null +++ b/app-alternatives/awk/awk-0.ebuild @@ -0,0 +1,59 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="/bin/awk and /usr/bin/awk 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="busybox +gawk mawk nawk split-usr" +REQUIRED_USE="^^ ( busybox gawk mawk nawk )" + +RDEPEND=" + busybox? ( sys-apps/busybox ) + gawk? ( sys-apps/gawk ) + mawk? ( sys-apps/mawk ) + nawk? ( sys-apps/nawk ) + !app-eselect/eselect-awk +" + +src_install() { + local root_prefix= + use split-usr && root_prefix=../../bin/ + + if use busybox; then + dosym "${root_prefix}busybox" /usr/bin/awk + newman - awk.1 <<<".so busybox.1" + elif use gawk; then + dosym gawk /usr/bin/awk + newman - awk.1 <<<".so gawk.1" + elif use mawk; then + dosym mawk /usr/bin/awk + newman - awk.1 <<<".so mawk.1" + elif use nawk; then + dosym nawk /usr/bin/awk + newman - awk.1 <<<".so nawk.1" + else + die "Invalid USE flag combination (broken REQUIRED_USE?)" + fi + + if use split-usr; then + dosym ../usr/bin/awk /bin/awk + fi +} + +pkg_postrm() { + # make sure we don't leave the user without the symlinks, since + # they've not been owned by any other package + if [[ ! -h ${EROOT}/usr/bin/awk ]]; then + ln -s gawk "${EROOT}/usr/bin/awk" || die + fi + if [[ ! -h ${EROOT}/bin/awk ]]; then + ln -s ../usr/bin/awk "${EROOT}/bin/awk" || die + fi +} diff --git a/app-alternatives/awk/metadata.xml b/app-alternatives/awk/metadata.xml new file mode 100644 index 000000000000..7c4c46c75e10 --- /dev/null +++ b/app-alternatives/awk/metadata.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <maintainer type="person"> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> + <use> + <flag name="busybox"> + Symlink to <pkg>sys-apps/busybox</pkg> + </flag> + <flag name="gawk"> + Symlink to <pkg>sys-apps/gawk</pkg> + </flag> + <flag name="mawk"> + Symlink to <pkg>sys-apps/mawk</pkg> (warning: mawk is + not fully POSIX-compliant) + </flag> + <flag name="nawk"> + Symlink to <pkg>sys-apps/nawk</pkg> + </flag> + </use> +</pkgmetadata> |