commit:     06de42a09142d4bc632638bf63fa21c55c4a2dbb
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 29 00:25:56 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Nov 29 00:26:16 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06de42a0

app-eselect/eselect-wine: add 2.0.1

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 app-eselect/eselect-wine/Manifest                  |  1 +
 app-eselect/eselect-wine/eselect-wine-2.0.1.ebuild | 92 ++++++++++++++++++++++
 2 files changed, 93 insertions(+)

diff --git a/app-eselect/eselect-wine/Manifest 
b/app-eselect/eselect-wine/Manifest
index 311d29dba343..e4b17b5785bf 100644
--- a/app-eselect/eselect-wine/Manifest
+++ b/app-eselect/eselect-wine/Manifest
@@ -1,2 +1,3 @@
 DIST eselect-wine-1.2.2.tar.gz 4712 BLAKE2B 
6ce92654cf2a5197c18bc84f8db52a11f198f81f0a8116f1986e74a1795ad475d22ff5a7cb9e9e31ce8ca813059b33cfbc52763110238cb378b15bebeb4b4271
 SHA512 
39f4d91461f72aeb07292dc7479c5cb7fc080b843bac57dec85c43d8751227e6953d32d52d4a14387d398b73120a32b79370d686c823f230dfd1d8b32ac8113a
 DIST eselect-wine-2.0.0.tar.bz2 7336 BLAKE2B 
facbad9bb4a937a310b1f81c5eb9fd1e29ce1a04cf524f7fd1f6322715d15e639fa27e99220cfc5b3659932d5ee57864a4615523e2dc5142da8ad7e9b49290fc
 SHA512 
ec89b4b2fb3bf60e00983f7dd2c2aaa4c797005516f03573000482c5efa1f62e73d0bc149bb9203c5186a7a0a259d7461e95f077deadfd6791ea8d5bc5cb3c00
+DIST eselect-wine-2.0.1.tar.bz2 7391 BLAKE2B 
646b4f07988448c70d2bdb0057b4b5e4a36fbd8f6dd1475cb131c26b4d10afb1a274c53aba0f705497f840f45b53fda4307882c588b69bcf5e8754ad153ea4de
 SHA512 
a90da162bfd80a9f2f9a688e765152e1b03f5d27742f67a8485546cb663547f2f6eea302e857454e3cf00632967b8d83e9578f6be36171178f7e78aa3adf3838

diff --git a/app-eselect/eselect-wine/eselect-wine-2.0.1.ebuild 
b/app-eselect/eselect-wine/eselect-wine-2.0.1.ebuild
new file mode 100644
index 000000000000..92c25353de07
--- /dev/null
+++ b/app-eselect/eselect-wine/eselect-wine-2.0.1.ebuild
@@ -0,0 +1,92 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Manage active Wine slots and variants"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Wine";
+SRC_URI="https://gitweb.gentoo.org/proj/eselect-wine.git/snapshot/${P}.tar.bz2";
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="app-admin/eselect"
+
+pkg_pretend() {
+       # /usr/bin/wine and /usr/include/wine are removed by pkg_preinst's 
unset,
+       # but portage currently checks collisions and errors out /before/ 
preinst
+       if has_version '<app-eselect/eselect-wine-2' &&
+               has collision-protect ${FEATURES}
+       then
+               eerror
+               eerror "!Warning! will likely need to either disable 
FEATURES=collision-protect or"
+               eerror "delete ${EROOT}/usr/bin/wine and 
${EROOT}/usr/include/wine to merge ${P}"
+               eerror "(these files should be orphaned, so default 
FEATURES=protect-owned is fine)"
+               eerror
+       fi
+}
+
+src_install() {
+       insinto /usr/share/eselect/modules
+       doins wine.eselect
+
+       keepdir /etc/eselect/wine
+
+       newenvd - 60${PN} <<-EOF
+               PATH="${EPREFIX}/etc/eselect/wine/bin"
+               MANPATH="${EPREFIX}/etc/eselect/wine/share/man"
+               XDG_DATA_DIRS="${EPREFIX}/etc/eselect/wine/share"
+       EOF
+
+       # links for building, e.g. wineasio (bug #657748)
+       dosym -r /etc/eselect/wine/wine /usr/lib/wine
+       dosym -r /etc/eselect/wine/include /usr/include/wine
+
+       # not required, but useful for e.g. binfmt that's not looking in PATH
+       # (not doing this for everything as it gets troublesome to track)
+       dosym -r /etc/eselect/wine/bin/wine /usr/bin/wine
+
+       einstalldocs
+}
+
+pkg_preinst() {
+       if has_version '<app-eselect/eselect-wine-2'; then
+               # keep copy of still-set 'active' to auto-select same slots
+               [[ ! -e ${EROOT}/etc/eselect/wine/active ]] ||
+                       cp 
"${EROOT}"/etc/eselect/wine/{active,eselect-wine-migration} || die
+
+               # managed differently, need cleanup
+               eselect wine unset --all || die
+               rm -f 
"${EROOT}"/etc/eselect/wine/{active,installed,links/{any,vanilla,staging,proton,wine}}
 || die
+               rmdir "${EROOT}"/etc/eselect/wine/links 2>/dev/null
+
+               # some rare man dirs were created by old eselect, cleanup if 
now empty
+               rmdir "${EROOT}"/usr/share/man/{de,fr,pl}.UTF-8{/man1,} 
2>/dev/null
+       fi
+
+       # lacking QA_BROKEN_SYMLINK, and rather avoid live /usr changes wrt
+       # bug #632576, nor create "owned" placeholders that will be clobbered
+       [[ -e ${EROOT}/etc/eselect/wine/bin/wine ]] ||
+               eqawarn "QA Note: broken symlinks QA is normal on first merge, 
targets created after"
+}
+
+pkg_postinst() {
+       eselect wine update --if-unset || die
+
+       rm -f "${EROOT}"/etc/eselect/wine/eselect-wine-migration || die # see 
preinst
+
+       if [[ ! ${REPLACING_VERSIONS##* } ]] ||
+               ver_test ${REPLACING_VERSIONS##* } -lt 2; then
+               elog
+               if [[ ${REPLACING_VERSIONS} ]]; then
+                       elog "${PN} changed a bit, suggest reviewing 'eselect 
wine help' (and list)."
+                       elog "Note: if seen bin/wine or include/wine merge 
collisions, they are harmless."
+               fi
+               elog "Please run '. ${EROOT}/etc/profile' to update PATH in 
current shells."
+       fi
+}
+
+pkg_prerm() {
+       [[ ${REPLACED_BY_VERSION} ]] || eselect wine update --reset # no die
+}

Reply via email to