summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-eselect/eselect-wine')
-rw-r--r--app-eselect/eselect-wine/Manifest2
-rw-r--r--app-eselect/eselect-wine/eselect-wine-1.2.2.ebuild47
-rw-r--r--app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild94
-rw-r--r--app-eselect/eselect-wine/metadata.xml20
4 files changed, 106 insertions, 57 deletions
diff --git a/app-eselect/eselect-wine/Manifest b/app-eselect/eselect-wine/Manifest
index 8e0dc05f626f..587b8dab3e3b 100644
--- a/app-eselect/eselect-wine/Manifest
+++ b/app-eselect/eselect-wine/Manifest
@@ -1 +1 @@
-DIST wine.eselect-1.2.2 19370 BLAKE2B 957eb84b7ccb24d12eba876a538f0420ab05506c87086b65c27326c80da9adcfbff032c7ecc7b5763012c6d72cc53f643f0d3ffe02687adb103517dedfad2f0e SHA512 6380e904ca824b1fe45cf651637f1cfe931f0c7519db49cb0794826ebbc8bdebc480fe7eb16601dc37123b44ea2d10aec49aa9fe622cad3e67ffb0f730292614
+DIST eselect-wine-2.0.2.tar.bz2 7449 BLAKE2B ce933920a7b6d1df0c0e5f5ae27b1ad1c7467489bd2d35c977b1d9894012b6bcb52d2830c3ebcef9228de40c6f31650e78d40051c82badf959c51339fe6bfa10 SHA512 c49c08e25d7e15c04205608118ea38e970db31f394534efd44070eec5c2148463c09d2b2787a9bb9c1b5f29010e99b4769d3f219b3ae826ceae56757aab596d1
diff --git a/app-eselect/eselect-wine/eselect-wine-1.2.2.ebuild b/app-eselect/eselect-wine/eselect-wine-1.2.2.ebuild
deleted file mode 100644
index b38ee9c21af7..000000000000
--- a/app-eselect/eselect-wine/eselect-wine-1.2.2.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DESCRIPTION="Manage active wine version"
-HOMEPAGE="https://bitbucket.org/NP-Hardass/eselect-wine"
-SRC_URI="https://bitbucket.org/NP-Hardass/${PN}/raw/v${PV}/wine.eselect -> wine.eselect-${PV}"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE=""
-
-RDEPEND="app-admin/eselect
- dev-util/desktop-file-utils
- !!app-emulation/wine:0"
-
-S=${WORKDIR}
-
-src_install() {
- keepdir /etc/eselect/wine
-
- insinto /usr/share/eselect/modules
- newins "${DISTDIR}"/wine.eselect-${PV} wine.eselect
-}
-
-pkg_postinst() {
- # <eselect-wine-v0.3_rc7 installed symlinks with leading double-slashes.
- # In /usr/include this breaks gcc build.
- # https://bugs.gentoo.org/434180
- if [[ $(readlink "${EROOT%/}"/usr/include/wine) == //* ]]; then
- ewarn "Leading double slash in ${EPREFIX}/usr/include/wine symlink detected."
- ewarn "Re-setting wine symlinks..."
- eselect wine update --if-unset
- fi
-}
-
-pkg_prerm() {
- # Avoid conflicts with wine[-multislot] installed later
- if [[ -z ${REPLACED_BY_VERSION} ]]; then
- elog "${PN} is being uninstalled, removing symlinks"
- eselect wine unset --all || die
- else
- einfo "${PN} is being updated/reinstalled, not modifying symlinks"
- fi
-}
diff --git a/app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild b/app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild
new file mode 100644
index 000000000000..da39532a82a4
--- /dev/null
+++ b/app-eselect/eselect-wine/eselect-wine-2.0.2-r2.ebuild
@@ -0,0 +1,94 @@
+# Copyright 2022-2023 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"
+IUSE="+xdg"
+
+# xdg-utils needed for bug #884077
+RDEPEND="
+ app-admin/eselect
+ xdg? ( x11-misc/xdg-utils )
+"
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins wine.eselect
+
+ keepdir /etc/eselect/wine
+
+ newenvd - 95${PN} <<-EOF
+ PATH="${EPREFIX}/etc/eselect/wine/bin"
+ MANPATH="${EPREFIX}/etc/eselect/wine/share/man"$(usev xdg "
+ XDG_DATA_DIRS=\"${EPREFIX}/etc/eselect/wine/share\"")
+ EOF
+
+ # links to help building, e.g. wineasio (bug #657748),
+ # albeit in general these are not particularly important
+ dosym -r /etc/eselect/wine/wine /usr/lib/wine
+ dosym -r /etc/eselect/wine/include/wine /usr/include/wine
+
+ einstalldocs
+}
+
+pkg_preinst() {
+ if has_version '<app-eselect/eselect-wine-2'; then
+ # keep copy of still-set 'active' to auto-select same slots
+ if [[ -e ${EROOT}/etc/eselect/wine/active &&
+ ! -e ${EROOT}/etc/eselect/wine/eselect-wine-migration ]]; then
+ cp "${EROOT}"/etc/eselect/wine/{active,eselect-wine-migration} || die
+ fi
+
+ # 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
+ [[ ${REPLACING_VERSIONS} ]] &&
+ elog "${PN} changed a bit, suggest reviewing 'eselect wine help' (and list)."
+ elog "Please run '. ${EROOT}/etc/profile' to update PATH in current shells"
+ elog "(PATH should have ':${EPREFIX}/etc/eselect/wine/bin'). Wine can otherwise"
+ elog "be executed directly from '${EPREFIX}/etc/eselect/wine/bin/wine'."
+ fi
+
+ if [[ ${REPLACING_VERSIONS##* } ]] &&
+ ver_test ${REPLACING_VERSIONS##* } -lt 2.0.2-r1; then
+ elog
+ elog "Be warned that >=${PN}-2.0.2-r1 no longer installs the"
+ elog "'${EPREFIX}/usr/bin/wine' symbolic link. wine(1) can still be found"
+ elog "in PATH but, if using the direct location for scripts and/or binfmt,"
+ elog "then please update these to use: '${EPREFIX}/etc/eselect/wine/bin/wine'"
+ elog
+ elog "If wine is not found in PATH, please ensure that not overriding the"
+ elog "default PATH value that should include ':${EPREFIX}/etc/eselect/wine/bin'"
+ fi
+}
+
+pkg_prerm() {
+ [[ ${REPLACED_BY_VERSION} ]] || eselect wine update --reset # no die
+}
diff --git a/app-eselect/eselect-wine/metadata.xml b/app-eselect/eselect-wine/metadata.xml
index 92b91e154414..c8c7d6ad97d2 100644
--- a/app-eselect/eselect-wine/metadata.xml
+++ b/app-eselect/eselect-wine/metadata.xml
@@ -1,16 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>np-hardass@gentoo.org</email>
- <name>Adam Feldman</name>
- </maintainer>
- <maintainer type="person" proxied="yes">
- <email>gentoo@eroen.eu</email>
- <name>eroen</name>
+ <maintainer type="project">
+ <email>wine@gentoo.org</email>
+ <name>Wine</name>
</maintainer>
+ <stabilize-allarches/>
+ <use>
+ <flag name="xdg">
+ Set XDG_DATA_DIRS to use the selected wine.desktop,
+ allows e.g. 'xdg-open my.exe' for file managers
+ </flag>
+ </use>
<upstream>
- <remote-id type="bitbucket">np-hardass/eselect-wine</remote-id>
+ <remote-id type="gentoo">proj/eselect-wine</remote-id>
</upstream>
- <stabilize-allarches/>
</pkgmetadata>