commit:     5ca765e6532606bc3569bcf8b7c474bdf508460e
Author:     Richard Yao <ryao <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  3 14:43:00 2018 +0000
Commit:     Richard Yao <ryao <AT> gentoo <DOT> org>
CommitDate: Mon Sep  3 14:44:32 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ca765e6

app-emulation/crossover-bin: Bump to 17.5.1

This also includes a fix for the install process breaking when a recent
version of konqueror is installed. Crossover relies on it for KDE
version detection while Konqueror in its infinite wisdom decided to open
things with write permissions, which are sandbox violations. Right now,
the fix is only in 17.5.1. I need to talk to upstream and think about
this some more before I decide the proper course of action.

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 app-emulation/crossover-bin/Manifest               |   1 +
 .../crossover-bin/crossover-bin-17.5.1.ebuild      | 157 +++++++++++++++++++++
 2 files changed, 158 insertions(+)

diff --git a/app-emulation/crossover-bin/Manifest 
b/app-emulation/crossover-bin/Manifest
index 20040fb6fa2..c94cbc9afa0 100644
--- a/app-emulation/crossover-bin/Manifest
+++ b/app-emulation/crossover-bin/Manifest
@@ -17,3 +17,4 @@ DIST install-crossover-15.3.1.bin 80774288 BLAKE2B 
3d3fd83ee426a66ead3c88f4ca584
 DIST install-crossover-16.0.0.bin 197872657 BLAKE2B 
d500ed4f6a426154b376ead6c2b50eb21a403303561078dc51982a5147af23261dda9892717c16c6e2f3b2a30ffc84e73070cd330bea70ba89c79180c4933297
 SHA512 
184533679ddf3918ab5fc00b01452d868c694fbc7ccb5484c88822cc52da067fd1a0be0387e4050e40d9b367052158faec27dc06f6a371a044b5a1782950e780
 DIST install-crossover-16.2.5.bin 198336730 BLAKE2B 
a11252dab552846fe0a1527cd59cd62907142385062b744591cef6707213d03945879fc5da6bcfaaa315967c51ae15159ad14d8519407542b82f0eb53c5fd02e
 SHA512 
17cb711e7257f094e9ccf939edc1ca6be362f18b86078fe307b7e1337850e182d02fde087789f13ea2bf96ca89736f941c1a7bd93ff1b37a78fe8f846a1d5e22
 DIST install-crossover-17.5.0.bin 198287744 BLAKE2B 
c594192927874e5a80626ad110f0089f2bf8b7385a16ff7755923d63ebb0559b1aa505ec4e8b6f85253ac13736b7f9af178c64ed042a515d31cd4565295db163
 SHA512 
8592d2c91c437d62d1fd5fecf6230eeabfe56c38f49ea795bf4d3b51d8ae4399f1b01801d60dcccb94caeb4dd662675c2739f730f39ef178db32dd4f72182197
+DIST install-crossover-17.5.1.bin 198278549 BLAKE2B 
e53504177eb4a4030a31ae73baf26144375dd559bcd58af3ef05364cfb7a00b8cd68d879e6ef31e92b165876e4c3f85ebcb823dd6585c3edcb8e4cafb76d8e59
 SHA512 
d1e41c5290c56bbb23a6317e91800d7c23d2b4389ebf08ef4416718103aa06b05b33c655d3ef413fe76773dd3599d8fe3d4ea64274fcc18518923990f980bf2a

diff --git a/app-emulation/crossover-bin/crossover-bin-17.5.1.ebuild 
b/app-emulation/crossover-bin/crossover-bin-17.5.1.ebuild
new file mode 100644
index 00000000000..1d2e3bb9952
--- /dev/null
+++ b/app-emulation/crossover-bin/crossover-bin-17.5.1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit python-single-r1 unpacker
+
+DESCRIPTION="Commercial version of app-emulation/wine with paid support."
+HOMEPAGE="http://www.codeweavers.com/products/crossover/";
+SRC_URI="https://media.codeweavers.com/pub/crossover/cxlinux/demo/install-crossover-${PV}.bin";
+
+LICENSE="CROSSOVER-3"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="+capi +cups doc +gphoto2 +gsm +jpeg +lcms +ldap +mp3 +nls +openal 
+opencl +opengl +png +scanner +ssl +v4l"
+RESTRICT="bindist test"
+QA_FLAGS_IGNORED="opt/cxoffice/.*"
+QA_PRESTRIPPED="opt/cxoffice/lib/.*
+       opt/cxoffice/bin/cxburner
+       opt/cxoffice/bin/cxntlm_auth
+       opt/cxoffice/bin/wineserver
+       opt/cxoffice/bin/unrar
+       opt/cxoffice/bin/wine-preloader
+       opt/cxoffice/bin/cxdiag
+       opt/cxoffice/bin/cxgettext
+       opt/cxoffice/bin/wineloader
+       "
+S="${WORKDIR}"
+
+DEPEND="dev-lang/perl
+       app-arch/unzip
+       ${PYTHON_DEPS}"
+
+RDEPEND="${DEPEND}
+       !prefix? ( sys-libs/glibc )
+       >=dev-python/pygtk-2.10[${PYTHON_USEDEP}]
+       dev-python/dbus-python[${PYTHON_USEDEP}]
+       dev-util/desktop-file-utils
+       !app-emulation/crossover-office-pro-bin
+       !app-emulation/crossover-office-bin
+       capi? ( net-libs/libcapi[abi_x86_32(-)] )
+       cups? ( net-print/cups[abi_x86_32(-)] )
+       gsm? ( media-sound/gsm[abi_x86_32(-)] )
+       jpeg? ( virtual/jpeg[abi_x86_32(-)] )
+       lcms? ( media-libs/lcms:2 )
+       ldap? ( net-nds/openldap[abi_x86_32(-)] )
+       gphoto2? ( media-libs/libgphoto2[abi_x86_32(-)] )
+       mp3? ( >=media-sound/mpg123-1.5.0[abi_x86_32(-)] )
+       nls? ( sys-devel/gettext[abi_x86_32(-)] )
+       openal? ( media-libs/openal[abi_x86_32(-)] )
+       opencl? ( virtual/opencl[abi_x86_32(-)] )
+       opengl? (
+               virtual/glu[abi_x86_32(-)]
+               virtual/opengl[abi_x86_32(-)]
+       )
+       png? ( media-libs/libpng:0[abi_x86_32(-)] )
+       scanner? ( media-gfx/sane-backends[abi_x86_32(-)] )
+       ssl? ( dev-libs/openssl:0[abi_x86_32(-)] )
+       v4l? ( media-libs/libv4l[abi_x86_32(-)] )
+       media-libs/alsa-lib[abi_x86_32(-)]
+       >=media-libs/freetype-2.0.0[abi_x86_32(-)]
+       media-libs/mesa[abi_x86_32(-)]
+       sys-auth/nss-mdns[abi_x86_32(-)]
+       sys-apps/util-linux[abi_x86_32(-)]
+       sys-libs/ncurses:5/5[abi_x86_32(-)]
+       sys-libs/zlib[abi_x86_32(-)]
+       x11-libs/libICE[abi_x86_32(-)]
+       x11-libs/libSM[abi_x86_32(-)]
+       x11-libs/libX11[abi_x86_32(-)]
+       x11-libs/libXau[abi_x86_32(-)]
+       x11-libs/libXdmcp[abi_x86_32(-)]
+       x11-libs/libXext[abi_x86_32(-)]
+       x11-libs/libXi[abi_x86_32(-)]
+       x11-libs/libXrandr[abi_x86_32(-)]
+       x11-libs/libXxf86vm[abi_x86_32(-)]
+       x11-libs/libxcb[abi_x86_32(-)]"
+
+pkg_nofetch() {
+       einfo "Please visit ${HOMEPAGE}"
+       einfo "and place ${A} in ${DISTDIR}"
+}
+
+src_unpack() {
+       # self unpacking zip archive; unzip warns about the exe stuff
+       unpack_zip ${A}
+}
+
+src_prepare() {
+       python_fix_shebang .
+
+       sed -i \
+               -e "s:xdg_install_icons(:&\"${ED}\".:" \
+               -e "s:\"\(.*\)/applications:\"${ED}\1/applications:" \
+               -e 
"s:\"\(.*\)/desktop-directories:\"${ED}\1/desktop-directories:" \
+               "${S}/lib/perl/CXMenuXDG.pm"
+
+       # Remove unnecessary files
+       rm -r license.txt guis/ || die "Could not remove files"
+       use doc || rm -r doc/ || die "Could not remove files"
+}
+
+src_install() {
+       # Install crossover symlink, bug #476314
+       dosym ../cxoffice/bin/crossover /opt/bin/crossover
+
+       # Install documentation
+       dodoc README changelog.txt
+       rm README changelog.txt || die "Could not remove README and 
changelog.txt"
+
+       # Install files
+       dodir /opt/cxoffice
+       #cp -r ./* "${ED}opt/cxoffice" \
+       find . | cpio -dumpl "${ED}/opt/cxoffice" 2>/dev/null \
+               || die "Could not install into ${ED}opt/cxoffice"
+
+       # Install configuration file
+       insinto /opt/cxoffice/etc
+       doins share/crossover/data/cxoffice.conf
+
+       # Konqueror in its infinite wisdom decides to try opening things for
+       # writing, which are sandbox violations. This breaks the install 
process if
+       # it is installed, so we ninja edit it to false so it so doesn't run.
+       sed -i -e 's/cxwhich konqueror/false &/' 
"${ED}opt/cxoffice/bin/locate_gui.sh" \
+               || die "Could not apply workaround for konqueror"
+
+       # Install menus
+       # XXX: locate_gui.sh automatically detects *-application-merged 
directories
+       # This means what we install will vary depending on the contents of
+       # /etc/xdg, which is a QA violation. It is not clear how to resolve 
this.
+       XDG_DATA_HOME="/usr/share" XDG_CONFIG_HOME="/etc/xdg" \
+               "${ED}opt/cxoffice/bin/cxmenu" --destdir="${ED}" --crossover 
--install \
+               || die "Could not install menus"
+
+       # Revert ninja edit
+       sed -i -e 's/false \(cxwhich konqueror\)/\1/' 
"${ED}opt/cxoffice/bin/locate_gui.sh" \
+               || die "Could not apply workaround for konqueror"
+
+       rm "${ED}usr/share/applications/"*"Uninstall CrossOver Linux.desktop" \
+               || die "Could not remove uninstall menus"
+       sed -i \
+               -e "s:\"${ED}\".::" \
+               -e "s:${ED}::" \
+               "${ED}/opt/cxoffice/lib/perl/CXMenuXDG.pm" \
+               || die "Could not fix paths in 
${ED}/opt/cxoffice/lib/perl/CXMenuXDG.pm"
+       sed -i -e "s:${ED}:/:" \
+               "${ED}usr/share/applications/"*"CrossOver.desktop" \
+               || die "Could not fix paths of *.desktop files"
+}
+
+pkg_postinst() {
+       einfo "${P} is open source software with the exception of the GUI."
+       einfo "Source code can be obtained from:"
+       einfo
+       einfo 
"https://media.codeweavers.com/pub/crossover/source/crossover-sources-${PV}.tar.gz";
+}

Reply via email to