diff options
author | 2022-11-22 22:23:40 +0100 | |
---|---|---|
committer | 2022-11-28 15:31:37 +0100 | |
commit | 57378b29433826126d1cd5daa0b35c5055b4492f (patch) | |
tree | 8a38e37a502333c027b2c63eaec394ba64178efa /app-alternatives | |
parent | app-arch/tar: Support app-alternatives/tar (diff) | |
download | gentoo-57378b29433826126d1cd5daa0b35c5055b4492f.tar.gz gentoo-57378b29433826126d1cd5daa0b35c5055b4492f.tar.bz2 gentoo-57378b29433826126d1cd5daa0b35c5055b4492f.zip |
app-alternatives/sh: Add an ebuild for /bin/sh symlink
Closes: https://github.com/gentoo/gentoo/pull/28390
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'app-alternatives')
-rw-r--r-- | app-alternatives/sh/metadata.xml | 29 | ||||
-rw-r--r-- | app-alternatives/sh/sh-0.ebuild | 48 |
2 files changed, 77 insertions, 0 deletions
diff --git a/app-alternatives/sh/metadata.xml b/app-alternatives/sh/metadata.xml new file mode 100644 index 000000000000..b91b8f41c94c --- /dev/null +++ b/app-alternatives/sh/metadata.xml @@ -0,0 +1,29 @@ +<?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="bash"> + Symlink to <pkg>app-shells/bash</pkg> + </flag> + <flag name="dash"> + Symlink to <pkg>app-shells/dash</pkg> + </flag> + <flag name="ksh"> + Symlink to <pkg>app-shells/ksh</pkg> + </flag> + <flag name="lksh"> + Symlink to lksh from <pkg>app-shells/mksh</pkg> + </flag> + <flag name="mksh"> + Symlink to mksh from <pkg>app-shells/mksh</pkg> + </flag> + </use> +</pkgmetadata> diff --git a/app-alternatives/sh/sh-0.ebuild b/app-alternatives/sh/sh-0.ebuild new file mode 100644 index 000000000000..5da158c80cab --- /dev/null +++ b/app-alternatives/sh/sh-0.ebuild @@ -0,0 +1,48 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="/bin/sh (POSIX shell) symlink" +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="+bash dash ksh lksh mksh" +REQUIRED_USE="^^ ( bash dash ksh lksh mksh )" + +RDEPEND=" + bash? ( app-shells/bash ) + dash? ( app-shells/dash ) + ksh? ( app-shells/ksh ) + lksh? ( app-shells/mksh[lksh] ) + mksh? ( app-shells/mksh ) + !!app-eselect/eselect-sh +" + +src_install() { + if use bash; then + dosym bash /bin/sh + elif use dash; then + dosym dash /bin/sh + elif use ksh; then + dosym ksh /bin/sh + elif use lksh; then + dosym lksh /bin/sh + elif use mksh; then + dosym mksh /bin/sh + else + die "Invalid USE flag combination (broken REQUIRED_USE?)" + fi +} + +pkg_postrm() { + # make sure we don't leave the user without /bin/sh, since it's not + # been owned by any other package + if [[ ! -h ${EROOT}/bin/sh ]]; then + ln -s bash "${EROOT}/bin/sh" || die + fi +} |