Gentoo Archives: gentoo-commits

From: Richard Yao <ryao@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/crossover-bin/
Date: Mon, 03 Sep 2018 14:44:51
Message-Id: 1535985872.5ca765e6532606bc3569bcf8b7c474bdf508460e.ryao@gentoo
1 commit: 5ca765e6532606bc3569bcf8b7c474bdf508460e
2 Author: Richard Yao <ryao <AT> gentoo <DOT> org>
3 AuthorDate: Mon Sep 3 14:43:00 2018 +0000
4 Commit: Richard Yao <ryao <AT> gentoo <DOT> org>
5 CommitDate: Mon Sep 3 14:44:32 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ca765e6
7
8 app-emulation/crossover-bin: Bump to 17.5.1
9
10 This also includes a fix for the install process breaking when a recent
11 version of konqueror is installed. Crossover relies on it for KDE
12 version detection while Konqueror in its infinite wisdom decided to open
13 things with write permissions, which are sandbox violations. Right now,
14 the fix is only in 17.5.1. I need to talk to upstream and think about
15 this some more before I decide the proper course of action.
16
17 Package-Manager: Portage-2.3.40, Repoman-2.3.9
18
19 app-emulation/crossover-bin/Manifest | 1 +
20 .../crossover-bin/crossover-bin-17.5.1.ebuild | 157 +++++++++++++++++++++
21 2 files changed, 158 insertions(+)
22
23 diff --git a/app-emulation/crossover-bin/Manifest b/app-emulation/crossover-bin/Manifest
24 index 20040fb6fa2..c94cbc9afa0 100644
25 --- a/app-emulation/crossover-bin/Manifest
26 +++ b/app-emulation/crossover-bin/Manifest
27 @@ -17,3 +17,4 @@ DIST install-crossover-15.3.1.bin 80774288 BLAKE2B 3d3fd83ee426a66ead3c88f4ca584
28 DIST install-crossover-16.0.0.bin 197872657 BLAKE2B d500ed4f6a426154b376ead6c2b50eb21a403303561078dc51982a5147af23261dda9892717c16c6e2f3b2a30ffc84e73070cd330bea70ba89c79180c4933297 SHA512 184533679ddf3918ab5fc00b01452d868c694fbc7ccb5484c88822cc52da067fd1a0be0387e4050e40d9b367052158faec27dc06f6a371a044b5a1782950e780
29 DIST install-crossover-16.2.5.bin 198336730 BLAKE2B a11252dab552846fe0a1527cd59cd62907142385062b744591cef6707213d03945879fc5da6bcfaaa315967c51ae15159ad14d8519407542b82f0eb53c5fd02e SHA512 17cb711e7257f094e9ccf939edc1ca6be362f18b86078fe307b7e1337850e182d02fde087789f13ea2bf96ca89736f941c1a7bd93ff1b37a78fe8f846a1d5e22
30 DIST install-crossover-17.5.0.bin 198287744 BLAKE2B c594192927874e5a80626ad110f0089f2bf8b7385a16ff7755923d63ebb0559b1aa505ec4e8b6f85253ac13736b7f9af178c64ed042a515d31cd4565295db163 SHA512 8592d2c91c437d62d1fd5fecf6230eeabfe56c38f49ea795bf4d3b51d8ae4399f1b01801d60dcccb94caeb4dd662675c2739f730f39ef178db32dd4f72182197
31 +DIST install-crossover-17.5.1.bin 198278549 BLAKE2B e53504177eb4a4030a31ae73baf26144375dd559bcd58af3ef05364cfb7a00b8cd68d879e6ef31e92b165876e4c3f85ebcb823dd6585c3edcb8e4cafb76d8e59 SHA512 d1e41c5290c56bbb23a6317e91800d7c23d2b4389ebf08ef4416718103aa06b05b33c655d3ef413fe76773dd3599d8fe3d4ea64274fcc18518923990f980bf2a
32
33 diff --git a/app-emulation/crossover-bin/crossover-bin-17.5.1.ebuild b/app-emulation/crossover-bin/crossover-bin-17.5.1.ebuild
34 new file mode 100644
35 index 00000000000..1d2e3bb9952
36 --- /dev/null
37 +++ b/app-emulation/crossover-bin/crossover-bin-17.5.1.ebuild
38 @@ -0,0 +1,157 @@
39 +# Copyright 1999-2018 Gentoo Foundation
40 +# Distributed under the terms of the GNU General Public License v2
41 +
42 +EAPI=5
43 +PYTHON_COMPAT=( python2_7 )
44 +PYTHON_REQ_USE="threads"
45 +
46 +inherit python-single-r1 unpacker
47 +
48 +DESCRIPTION="Commercial version of app-emulation/wine with paid support."
49 +HOMEPAGE="http://www.codeweavers.com/products/crossover/"
50 +SRC_URI="https://media.codeweavers.com/pub/crossover/cxlinux/demo/install-crossover-${PV}.bin"
51 +
52 +LICENSE="CROSSOVER-3"
53 +SLOT="0"
54 +KEYWORDS="-* ~amd64 ~x86"
55 +IUSE="+capi +cups doc +gphoto2 +gsm +jpeg +lcms +ldap +mp3 +nls +openal +opencl +opengl +png +scanner +ssl +v4l"
56 +RESTRICT="bindist test"
57 +QA_FLAGS_IGNORED="opt/cxoffice/.*"
58 +QA_PRESTRIPPED="opt/cxoffice/lib/.*
59 + opt/cxoffice/bin/cxburner
60 + opt/cxoffice/bin/cxntlm_auth
61 + opt/cxoffice/bin/wineserver
62 + opt/cxoffice/bin/unrar
63 + opt/cxoffice/bin/wine-preloader
64 + opt/cxoffice/bin/cxdiag
65 + opt/cxoffice/bin/cxgettext
66 + opt/cxoffice/bin/wineloader
67 + "
68 +S="${WORKDIR}"
69 +
70 +DEPEND="dev-lang/perl
71 + app-arch/unzip
72 + ${PYTHON_DEPS}"
73 +
74 +RDEPEND="${DEPEND}
75 + !prefix? ( sys-libs/glibc )
76 + >=dev-python/pygtk-2.10[${PYTHON_USEDEP}]
77 + dev-python/dbus-python[${PYTHON_USEDEP}]
78 + dev-util/desktop-file-utils
79 + !app-emulation/crossover-office-pro-bin
80 + !app-emulation/crossover-office-bin
81 + capi? ( net-libs/libcapi[abi_x86_32(-)] )
82 + cups? ( net-print/cups[abi_x86_32(-)] )
83 + gsm? ( media-sound/gsm[abi_x86_32(-)] )
84 + jpeg? ( virtual/jpeg[abi_x86_32(-)] )
85 + lcms? ( media-libs/lcms:2 )
86 + ldap? ( net-nds/openldap[abi_x86_32(-)] )
87 + gphoto2? ( media-libs/libgphoto2[abi_x86_32(-)] )
88 + mp3? ( >=media-sound/mpg123-1.5.0[abi_x86_32(-)] )
89 + nls? ( sys-devel/gettext[abi_x86_32(-)] )
90 + openal? ( media-libs/openal[abi_x86_32(-)] )
91 + opencl? ( virtual/opencl[abi_x86_32(-)] )
92 + opengl? (
93 + virtual/glu[abi_x86_32(-)]
94 + virtual/opengl[abi_x86_32(-)]
95 + )
96 + png? ( media-libs/libpng:0[abi_x86_32(-)] )
97 + scanner? ( media-gfx/sane-backends[abi_x86_32(-)] )
98 + ssl? ( dev-libs/openssl:0[abi_x86_32(-)] )
99 + v4l? ( media-libs/libv4l[abi_x86_32(-)] )
100 + media-libs/alsa-lib[abi_x86_32(-)]
101 + >=media-libs/freetype-2.0.0[abi_x86_32(-)]
102 + media-libs/mesa[abi_x86_32(-)]
103 + sys-auth/nss-mdns[abi_x86_32(-)]
104 + sys-apps/util-linux[abi_x86_32(-)]
105 + sys-libs/ncurses:5/5[abi_x86_32(-)]
106 + sys-libs/zlib[abi_x86_32(-)]
107 + x11-libs/libICE[abi_x86_32(-)]
108 + x11-libs/libSM[abi_x86_32(-)]
109 + x11-libs/libX11[abi_x86_32(-)]
110 + x11-libs/libXau[abi_x86_32(-)]
111 + x11-libs/libXdmcp[abi_x86_32(-)]
112 + x11-libs/libXext[abi_x86_32(-)]
113 + x11-libs/libXi[abi_x86_32(-)]
114 + x11-libs/libXrandr[abi_x86_32(-)]
115 + x11-libs/libXxf86vm[abi_x86_32(-)]
116 + x11-libs/libxcb[abi_x86_32(-)]"
117 +
118 +pkg_nofetch() {
119 + einfo "Please visit ${HOMEPAGE}"
120 + einfo "and place ${A} in ${DISTDIR}"
121 +}
122 +
123 +src_unpack() {
124 + # self unpacking zip archive; unzip warns about the exe stuff
125 + unpack_zip ${A}
126 +}
127 +
128 +src_prepare() {
129 + python_fix_shebang .
130 +
131 + sed -i \
132 + -e "s:xdg_install_icons(:&\"${ED}\".:" \
133 + -e "s:\"\(.*\)/applications:\"${ED}\1/applications:" \
134 + -e "s:\"\(.*\)/desktop-directories:\"${ED}\1/desktop-directories:" \
135 + "${S}/lib/perl/CXMenuXDG.pm"
136 +
137 + # Remove unnecessary files
138 + rm -r license.txt guis/ || die "Could not remove files"
139 + use doc || rm -r doc/ || die "Could not remove files"
140 +}
141 +
142 +src_install() {
143 + # Install crossover symlink, bug #476314
144 + dosym ../cxoffice/bin/crossover /opt/bin/crossover
145 +
146 + # Install documentation
147 + dodoc README changelog.txt
148 + rm README changelog.txt || die "Could not remove README and changelog.txt"
149 +
150 + # Install files
151 + dodir /opt/cxoffice
152 + #cp -r ./* "${ED}opt/cxoffice" \
153 + find . | cpio -dumpl "${ED}/opt/cxoffice" 2>/dev/null \
154 + || die "Could not install into ${ED}opt/cxoffice"
155 +
156 + # Install configuration file
157 + insinto /opt/cxoffice/etc
158 + doins share/crossover/data/cxoffice.conf
159 +
160 + # Konqueror in its infinite wisdom decides to try opening things for
161 + # writing, which are sandbox violations. This breaks the install process if
162 + # it is installed, so we ninja edit it to false so it so doesn't run.
163 + sed -i -e 's/cxwhich konqueror/false &/' "${ED}opt/cxoffice/bin/locate_gui.sh" \
164 + || die "Could not apply workaround for konqueror"
165 +
166 + # Install menus
167 + # XXX: locate_gui.sh automatically detects *-application-merged directories
168 + # This means what we install will vary depending on the contents of
169 + # /etc/xdg, which is a QA violation. It is not clear how to resolve this.
170 + XDG_DATA_HOME="/usr/share" XDG_CONFIG_HOME="/etc/xdg" \
171 + "${ED}opt/cxoffice/bin/cxmenu" --destdir="${ED}" --crossover --install \
172 + || die "Could not install menus"
173 +
174 + # Revert ninja edit
175 + sed -i -e 's/false \(cxwhich konqueror\)/\1/' "${ED}opt/cxoffice/bin/locate_gui.sh" \
176 + || die "Could not apply workaround for konqueror"
177 +
178 + rm "${ED}usr/share/applications/"*"Uninstall CrossOver Linux.desktop" \
179 + || die "Could not remove uninstall menus"
180 + sed -i \
181 + -e "s:\"${ED}\".::" \
182 + -e "s:${ED}::" \
183 + "${ED}/opt/cxoffice/lib/perl/CXMenuXDG.pm" \
184 + || die "Could not fix paths in ${ED}/opt/cxoffice/lib/perl/CXMenuXDG.pm"
185 + sed -i -e "s:${ED}:/:" \
186 + "${ED}usr/share/applications/"*"CrossOver.desktop" \
187 + || die "Could not fix paths of *.desktop files"
188 +}
189 +
190 +pkg_postinst() {
191 + einfo "${P} is open source software with the exception of the GUI."
192 + einfo "Source code can be obtained from:"
193 + einfo
194 + einfo "https://media.codeweavers.com/pub/crossover/source/crossover-sources-${PV}.tar.gz"
195 +}