Установка Crossover в Gentoo

Crossover - коммерческая оболочка для эмулятора windows приложений wine, исправляющая множество ошибок и багов wine, а также включающая автоматическую установку зависимостей для большого количества программ и игр. Установка Crossover в Gentoo может вызвать некоторые сложности, особенно в новых пользователей, хотя что делать новичкам в Gentoo? 🙂

И так идем на официальный сайт CodeWears и загружаем там установочный пакет версии 14.0.3, поскольку это самая новая версия к которой есть ebuild. На странице загрузки нужно выбрать ОС - other linux distribution, ввести свое имя, электронный адрес и код с картинки, да и галочку снять не забудьте чтобы на почту всякий спам не сыпали:

crossover

Теперь когда мы получили доступ к загрузке видим что доступна только последняя версия программы, на данный момент последняя это 14.0.3 так что все нормально, но в будущем может выйти новая. Архива версий я не нашел но, можно выбрать версию вручную подправив ссылку. Например для нашей версии ссылка будет выглядеть вот так: https://media.codeweavers.com/pub/crossover/cxlinux/demo/install-crossover-14.0.3.bin здесь 14.0.3 номер версии, таким способом можно получить любую доступную на сайте версию программы.

После загрузки скопируйте установочный файл в папку /usr/portage/distfiles командой:

cp ~/адрес_файла /usr/portage/distfiles

Официальный ebuild на данный момент не работает, поэтому нужно использовать модифицированный найденный на просторах интернета:

[sourcecode]
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/crossover-bin/crossover-bin-13.2.0-r2.ebuild,v 1.1 2014/12/20 18:56:20 ryao Exp $

EAPI=5
PYTHON_COMPAT=( python{2_6,2_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="install-crossover-${PV}.bin"

LICENSE="CROSSOVER-2"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
IUSE="+capi +cups doc +gphoto2 +gsm +jpeg +lcms +ldap +mp3 +nls +openal +opengl +png +scanner +ssl +v4l"
RESTRICT="fetch 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}"

REGULAR_DEPS="
capi? ( net-dialup/capi4k-utils )
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(-)] )
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-apps/util-linux[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(-)]
"

EMUL_DEPS="
app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]
app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)]
openal? ( app-emulation/emul-linux-x86-sdl[-abi_x86_32(-)] )
opengl? ( app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)] )
scanner? ( app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )
v4l? ( app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )
"

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
|| ( ( ${REGULAR_DEPS} ) ( ${EMUL_DEPS} ) )
"

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 -e 's:/usr/local/etc/xdg /etc/xdg::' -i "${WORKDIR}/bin/locate_gui.sh" \
|| die "Could not patch ${WORKDIR}/bin/locate_gui.sh"

# 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 /opt/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" \
|| die "Could not install into ${ED}opt/cxoffice"

# Install configuration file
insinto /opt/cxoffice/etc
doins share/crossover/data/cxoffice.conf

# Install requisite directories for menus
dodir "/usr/share/applications"
dodir "/etc/xdg/menus/applications-merged"

# Install menus
XDG_CONFIG_DIRS="${ED}etc/xdg" \
XDG_DATA_DIRS="${ED}usr/share" \
"${ED}opt/cxoffice/bin/cxmenu" --crossover --install \
|| die "Could not install menus"

# Fix menus
sed -e "s:${ED}:/:" -i "${ED}usr/share/applications/"* \
|| die "Could not fix menus"
}
[/sourcecode]

Откройте официальный ebuild /usr/portage/app-emulation/crossover-bin/crossover-bin-14.0.3.ebuild и замените в нем текст на тот что приведен выше. Затем выполните команду:

sudo ebuild /usr/portage/app-emulation/crossover-bin/crossover-bin-14.0.3.ebuild digest

Вот только теперь мы готовы к установке, можно запускать emerge:

sudo emerge -v crossover-bin

Надеюсь информация данной статьи была полезной.

 

Ответить

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: