From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 77BCB158020 for ; Wed, 16 Nov 2022 15:02:42 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 9F714E088F; Wed, 16 Nov 2022 15:02:41 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 89B51E088F for ; Wed, 16 Nov 2022 15:02:41 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id B285E340DCC for ; Wed, 16 Nov 2022 15:02:40 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 0A05A6F8 for ; Wed, 16 Nov 2022 15:02:39 +0000 (UTC) From: "Ionen Wolkens" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ionen Wolkens" Message-ID: <1668610864.1954598a4b9fee10c063f6be17d07b47e7e93e4b.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-eselect/eselect-wine/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-eselect/eselect-wine/Manifest app-eselect/eselect-wine/eselect-wine-2.0.0.ebuild X-VCS-Directories: app-eselect/eselect-wine/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: 1954598a4b9fee10c063f6be17d07b47e7e93e4b X-VCS-Branch: master Date: Wed, 16 Nov 2022 15:02:39 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: c1c4e027-18e5-4ed7-a15f-bd6df155e6aa X-Archives-Hash: 15653dce1fa0d2772394af9c206a1893 commit: 1954598a4b9fee10c063f6be17d07b47e7e93e4b Author: Ionen Wolkens gentoo org> AuthorDate: Wed Nov 16 03:30:33 2022 +0000 Commit: Ionen Wolkens gentoo org> CommitDate: Wed Nov 16 15:01:04 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1954598a app-eselect/eselect-wine: add 2.0.0, unkeyworded for testing Complete rewrite but for notable bits: - removes register/deregister, can auto-update without this - no longer touch files in /usr at runtime wrt bug #632576, in this case it was particularly invasive doing *many* modifications to /usr/bin and /usr/share/man - handle /usr/lib/wine fwiw wrt bug #657748 (installed by the ebuild), albeit winebuild can find the right path nowadays - fix prefix wrt bug #717470 - give feedback when switching wrt bug #874612 - tries harder to not unexpectedly switch variant/version, and no longer need ebuild checks wrt bug #881035 - no longer hardcodes variants and so can support any random ones, i.e. an overlay can do wine-tkg or wine-myfunnyfork - --all, --vanilla, etc.. options were removed, but can still perform similar actions (see `help`) - `list` can now show selections for all variants at once - `unset` removed, not seeing a motivation (esp if not polluting /usr) - half+ the original size, and switches variant noticeably faster Still experimental and subject to changes, so unkeyworded for now. See README.rst for more notes, or the tarball's impl.rst for details. ebuild itself needs some nonsense largely caused by being difficult to get rid of the old eselect plus portage limitations. Bug: https://bugs.gentoo.org/632576 Bug: https://bugs.gentoo.org/657748 Bug: https://bugs.gentoo.org/717470 Bug: https://bugs.gentoo.org/874612 Bug: https://bugs.gentoo.org/881035 Signed-off-by: Ionen Wolkens gentoo.org> app-eselect/eselect-wine/Manifest | 1 + app-eselect/eselect-wine/eselect-wine-2.0.0.ebuild | 88 ++++++++++++++++++++++ 2 files changed, 89 insertions(+) diff --git a/app-eselect/eselect-wine/Manifest b/app-eselect/eselect-wine/Manifest index f72d6e365f3d..36b4463cb6fa 100644 --- a/app-eselect/eselect-wine/Manifest +++ b/app-eselect/eselect-wine/Manifest @@ -1 +1,2 @@ DIST eselect-wine-1.2.2.tar.gz 4712 BLAKE2B 6ce92654cf2a5197c18bc84f8db52a11f198f81f0a8116f1986e74a1795ad475d22ff5a7cb9e9e31ce8ca813059b33cfbc52763110238cb378b15bebeb4b4271 SHA512 39f4d91461f72aeb07292dc7479c5cb7fc080b843bac57dec85c43d8751227e6953d32d52d4a14387d398b73120a32b79370d686c823f230dfd1d8b32ac8113a +DIST eselect-wine-2.0.0.tar.xz 7440 BLAKE2B f889465985566c3cdb9035ec1eca79c506a39f6c3f05f7b20e3a2af70ab3202a6efdc2dc28468ee5b484aa037ebf034bf7ae881a5694459f37702291e8c14850 SHA512 7d5bf0d8abb0634adcbdcd1201eb8c69745e419dc484319e6af9446439b9595b00c6d1bb813390179e5e65843ec3a45079dd38ef7d92c1c97f86fd0aca095607 diff --git a/app-eselect/eselect-wine/eselect-wine-2.0.0.ebuild b/app-eselect/eselect-wine/eselect-wine-2.0.0.ebuild new file mode 100644 index 000000000000..50b4a4c56409 --- /dev/null +++ b/app-eselect/eselect-wine/eselect-wine-2.0.0.ebuild @@ -0,0 +1,88 @@ +# 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://dev.gentoo.org/~ionen/distfiles/${P}.tar.xz" +#SRC_URI="https://gitweb.gentoo.org/proj/eselect-wine.git/snapshot/${P}.tar.bz2" # not up yet + +LICENSE="GPL-2+" +SLOT="0" +# rewrite that really needs testing so it doesn't break any bottles +#KEYWORDS="~amd64 ~x86" + +RDEPEND="app-admin/eselect" + +pkg_pretend() { + # not-owned {bin,include}/wine is removed by pkg_preinst's unset, but + # portage currently checks collisions and errors out /before/ pkg_preinst + has_version '/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 "Note: if seen bin/wine or include/wine collision messages, it is harmless" + elog "${PN} changed a bit, suggest reviewing 'eselect wine help' (and list)." + 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 +}