Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Gamers & Players
  • Search

[Solved]Raw Input Patch for Keyboard and Mouse for wine1.5.*

Having problems getting your favorite Linux game to work? Want to discuss strategies? This is the place!
Post Reply
  • Print view
Advanced search
8 posts • Page 1 of 1
Author
Message
Phancy Physicist
Apprentice
Apprentice
User avatar
Posts: 193
Joined: Sun Apr 10, 2005 9:00 pm
Contact:
Contact Phancy Physicist
Website

[Solved]Raw Input Patch for Keyboard and Mouse for wine1.5.*

  • Quote

Post by Phancy Physicist » Tue Jul 17, 2012 12:55 am

There is a patch to enable raw input from devices called "raw3.patch" that is necessary to play certain games. The patch is from this link -
http://bugs.winehq.org/show_bug.cgi?id=20395#c60.

I need a new version of this patch since it was made for wine 1.3.* and I am now using 1.5.*.

It must exist because if you use PlayOnLinux you can download a version of wine 1.5.* that has this patch enabled. However i don't want five different versions of wine on my computer. I honestly don't have the room on my harddrive.

Does anyone know where to find this patch? It seems my google and forum searching skills have failed me.

Thanks for any help in advance.
Last edited by Phancy Physicist on Mon Aug 06, 2012 7:07 am, edited 1 time in total.
Top
Phancy Physicist
Apprentice
Apprentice
User avatar
Posts: 193
Joined: Sun Apr 10, 2005 9:00 pm
Contact:
Contact Phancy Physicist
Website

  • Quote

Post by Phancy Physicist » Tue Jul 17, 2012 1:58 am

The following link is the most recent version of the patch that I can find that many people have said works with wine 1.5.*

http://dl.dropbox.com/u/6901628/raw3.patch

Maybe(read as probably) the problem is with me. I edited the ebuild for wine 1.5.8 by adding epatch "${FILESDIR}"/raw3.patch to this section.

Code: Select all

src_prepare() {
	#epatch "${FILESDIR}"/raw3.patch
	epatch "${FILESDIR}"/${PN}-1.1.15-winegcc.patch #260726
	epatch "${FILESDIR}"/${PN}-1.4_rc2-multilib-portage.patch #395615
	epatch "${FILESDIR}"/raw3.patch
	epatch "${DISTDIR}/${PULSE_PATCH}" #421365
	epatch_user #282735
	eautoreconf
	sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
	sed -i '/^MimeType/d' tools/wine.desktop || die #117785
}
Am I using this patch wrong? Could someone look over the ebuild from me?

My full wine ebuild follows.

Code: Select all

# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/wine-1.5.8.ebuild,v 1.1 2012/07/06 07:33:52 tetromino Exp $

EAPI="4"

inherit autotools eutils flag-o-matic multilib pax-utils

if [[ ${PV} == "9999" ]] ; then
	EGIT_REPO_URI="git://source.winehq.org/git/wine.git"
	inherit git-2
	SRC_URI=""
	#KEYWORDS=""
else
	MY_P="${PN}-${PV/_/-}"
	SRC_URI="mirror://sourceforge/${PN}/Source/${MY_P}.tar.bz2"
	KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
	S=${WORKDIR}/${MY_P}
fi

GV="1.6"
MV="0.0.4"
PULSE_PATCH="winepulse-2012.06.15.patch"
DESCRIPTION="free implementation of Windows(tm) on Unix"
HOMEPAGE="http://www.winehq.org/"
SRC_URI="${SRC_URI}
	gecko? (
		mirror://sourceforge/${PN}/Wine%20Gecko/${GV}/wine_gecko-${GV}-x86.msi
		win64? ( mirror://sourceforge/${PN}/Wine%20Gecko/${GV}/wine_gecko-${GV}-x86_64.msi )
	)
	mono? ( mirror://sourceforge/${PN}/Wine%20Mono/${MV}/wine-mono-${MV}.msi )
	http://source.winehq.org/patches/data/87234 -> ${PULSE_PATCH}"

LICENSE="LGPL-2.1"
SLOT="0"
IUSE="alsa capi cups custom-cflags elibc_glibc fontconfig +gecko gnutls gphoto2 gsm gstreamer hardened jpeg lcms ldap +mono mp3 ncurses nls odbc openal opencl +opengl +oss +perl png pulseaudio samba scanner selinux ssl test +threads +truetype udisks v4l +win32 +win64 +X xcomposite xinerama xml"
REQUIRED_USE="elibc_glibc? ( threads )
	mono? ( || ( win32 !win64 ) )" #286560
RESTRICT="test" #72375

MLIB_DEPS="amd64? (
	truetype? ( >=app-emulation/emul-linux-x86-xlibs-2.1 )
	X? (
		>=app-emulation/emul-linux-x86-xlibs-2.1
		>=app-emulation/emul-linux-x86-soundlibs-2.1[pulseaudio(+)?]
	)
	mp3? ( app-emulation/emul-linux-x86-soundlibs )
	odbc? ( app-emulation/emul-linux-x86-db )
	openal? ( app-emulation/emul-linux-x86-sdl )
	opengl? ( app-emulation/emul-linux-x86-opengl )
	scanner? ( app-emulation/emul-linux-x86-medialibs )
	v4l? ( app-emulation/emul-linux-x86-medialibs )
	app-emulation/emul-linux-x86-baselibs
	>=sys-kernel/linux-headers-2.6
	)"
RDEPEND="truetype? ( >=media-libs/freetype-2.0.0 media-fonts/corefonts )
	perl? ( dev-lang/perl dev-perl/XML-Simple )
	capi? ( net-dialup/capi4k-utils )
	ncurses? ( >=sys-libs/ncurses-5.2 )
	fontconfig? ( media-libs/fontconfig )
	gphoto2? ( media-libs/libgphoto2 )
	openal? ( media-libs/openal )
	udisks? (
		sys-apps/dbus
		sys-fs/udisks:2
	)
	gnutls? ( net-libs/gnutls )
	gstreamer? ( media-libs/gstreamer media-libs/gst-plugins-base )
	X? (
		x11-libs/libXcursor
		x11-libs/libXrandr
		x11-libs/libXi
		x11-libs/libXmu
		x11-libs/libXxf86vm
		x11-apps/xmessage
	)
	xinerama? ( x11-libs/libXinerama )
	alsa? ( media-libs/alsa-lib )
	cups? ( net-print/cups )
	opencl? ( virtual/opencl )
	opengl? ( virtual/opengl )
	gsm? ( media-sound/gsm )
	jpeg? ( virtual/jpeg )
	ldap? ( net-nds/openldap )
	lcms? ( =media-libs/lcms-1* )
	mp3? ( >=media-sound/mpg123-1.5.0 )
	nls? ( sys-devel/gettext )
	odbc? ( dev-db/unixODBC )
	pulseaudio? ( media-sound/pulseaudio )
	samba? ( >=net-fs/samba-3.0.25 )
	selinux? ( sec-policy/selinux-wine )
	xml? ( dev-libs/libxml2 dev-libs/libxslt )
	scanner? ( media-gfx/sane-backends )
	ssl? ( dev-libs/openssl )
	png? ( media-libs/libpng )
	v4l? ( media-libs/libv4l )
	!win64? ( ${MLIB_DEPS} )
	win32? ( ${MLIB_DEPS} )
	xcomposite? ( x11-libs/libXcomposite )"
DEPEND="${RDEPEND}
	X? (
		x11-proto/inputproto
		x11-proto/xextproto
		x11-proto/xf86vidmodeproto
	)
	xinerama? ( x11-proto/xineramaproto )
	!hardened? ( sys-devel/prelink )
	virtual/pkgconfig
	virtual/yacc
	sys-devel/flex"

src_unpack() {
	if use win64 ; then
		[[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]] \
			&& die "you need gcc-4.4+ to build 64bit wine"
	fi

	if use win32 && use opencl; then
		[[ x$(eselect opencl show) = "xintel" ]] &&
			die "Cannot build wine[opencl,win32]: intel-ocl-sdk is 64-bit only" # 403947
	fi

	if [[ ${PV} == "9999" ]] ; then
		git-2_src_unpack
	else
		unpack ${MY_P}.tar.bz2
	fi
}

src_prepare() {
	#epatch "${FILESDIR}"/raw3.patch
	epatch "${FILESDIR}"/${PN}-1.1.15-winegcc.patch #260726
	epatch "${FILESDIR}"/${PN}-1.4_rc2-multilib-portage.patch #395615
	epatch "${FILESDIR}"/raw3.patch
	epatch "${DISTDIR}/${PULSE_PATCH}" #421365
	epatch_user #282735
	eautoreconf
	sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
	sed -i '/^MimeType/d' tools/wine.desktop || die #117785
}

do_configure() {
	local builddir="${WORKDIR}/wine$1"
	mkdir -p "${builddir}"
	pushd "${builddir}" >/dev/null

	ECONF_SOURCE=${S} \
	econf \
		--sysconfdir=/etc/wine \
		$(use_with alsa) \
		$(use_with capi) \
		$(use_with lcms cms) \
		$(use_with cups) \
		$(use_with ncurses curses) \
		$(use_with udisks dbus) \
		$(use_with fontconfig) \
		$(use_with gnutls) \
		$(use_with gphoto2 gphoto) \
		$(use_with gsm) \
		$(use_with gstreamer) \
		--without-hal \
		$(use_with jpeg) \
		$(use_with ldap) \
		$(use_with mp3 mpg123) \
		$(use_with nls gettext) \
		$(use_with openal) \
		$(use_with opencl) \
		$(use_with opengl) \
		$(use_with ssl openssl) \
		$(use_with oss) \
		$(use_with png) \
		$(use_with threads pthread) \
		$(use_with pulseaudio pulse) \
		$(use_with scanner sane) \
		$(use_enable test tests) \
		$(use_with truetype freetype) \
		$(use_with v4l) \
		$(use_with X x) \
		$(use_with xcomposite) \
		$(use_with xinerama) \
		$(use_with xml) \
		$(use_with xml xslt) \
		$2

	emake -j1 depend

	popd >/dev/null
}

src_configure() {
	export LDCONFIG=/bin/true
	use custom-cflags || strip-flags

	if use win64 ; then
		do_configure 64 --enable-win64
		use win32 && ABI=x86 do_configure 32 --with-wine64=../wine64
	else
		ABI=x86 do_configure 32 --disable-win64
	fi
}

src_compile() {
	local b
	for b in 64 32 ; do
		local builddir="${WORKDIR}/wine${b}"
		[[ -d ${builddir} ]] || continue
		emake -C "${builddir}" all
	done
}

src_install() {
	local b
	for b in 64 32 ; do
		local builddir="${WORKDIR}/wine${b}"
		[[ -d ${builddir} ]] || continue
		emake -C "${builddir}" install DESTDIR="${D}"
	done
	dodoc ANNOUNCE AUTHORS README
	if use gecko ; then
		insinto /usr/share/wine/gecko
		doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi
		use win64 && doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi
	fi
	if use mono ; then
		insinto /usr/share/wine/mono
		doins "${DISTDIR}"/wine-mono-${MV}.msi
	fi
	if ! use perl ; then
		rm "${D}"usr/bin/{wine{dump,maker},function_grep.pl} "${D}"usr/share/man/man1/wine{dump,maker}.1 || die
	fi

	if use win32 || ! use win64; then
		pax-mark psmr "${D}"usr/bin/wine{,-preloader} #255055
	fi
	use win64 && pax-mark psmr "${D}"usr/bin/wine64{,-preloader}

	if use win64 && ! use win32; then
		dosym /usr/bin/wine{64,} # 404331
		dosym /usr/bin/wine{64,}-preloader
	fi
}
Top
cst
Apprentice
Apprentice
Posts: 203
Joined: Sun Feb 24, 2008 11:51 am
Location: /proc

  • Quote

Post by cst » Wed Aug 01, 2012 11:09 am

did you manage to get it working? I need this too:)
i7 3930K @ 4GHz
MSI X79A-GD45 (8D)
32GB 1600 MHz DDR3 Samsung
Samsung 840 PRO, 2xSamsung HD502HJ in RAID 1
MSI GTX 980Ti
latest gentoo-sources on x86_64 Fluxbox (amd64)

best render farm: www.GarageFarm.NET
Top
ChrisJumper
Advocate
Advocate
Posts: 2420
Joined: Sat Mar 12, 2005 1:42 pm
Location: Germany

  • Quote

Post by ChrisJumper » Wed Aug 01, 2012 6:12 pm

Hi Phancy Physicist and cst!

Here are many posts in this forum, just look for wine and patch. And there are some different ways to do this job. Maybe some have more style then other. But i like it quick and dirty, because so i could browse some patches, files and add or merge the lines.

Howto patch Wine in Gentoo

Take a look at this thread. I never change ebuilds for this. Just get and extract the files, apply the patch. If there something goes wrong you could check the lines or find another patch. Then just compile the stuff and install it.

But you will have to take care that your world update don't rebuild your wine without the patch.

I like to compile the stuff and copy this Wine version sometimes to have one Version for a special task. But if you have more then one short period to overcome, because in the next update the patch will applied, another Solution would be more comfortable for you. Oh and maybe playonlinux is also an perfect for you, just google a bit here in the forum about this topic and check out how playonlinux handle this.

But these other Methods need time to check out, understood how they work and use them, and time for some foster in the future. Thats why i like it quick and dirty :)

Hope you went further!
Top
forrestfunk81
Guru
Guru
User avatar
Posts: 567
Joined: Tue Feb 07, 2006 12:33 pm
Location: münchen.de

  • Quote

Post by forrestfunk81 » Thu Aug 02, 2012 8:47 am

The simplest way to apply a patch for a ebuild is to create a directory /etc/portage/patches/<ebuild name>/ and put the patch in it. Portage will automatically use the patches inside the apropiate directory. You can even specify the ebuild version which should be patched. See bugzilla for more info.
# cd /pub/
# more beer
Top
cst
Apprentice
Apprentice
Posts: 203
Joined: Sun Feb 24, 2008 11:51 am
Location: /proc

  • Quote

Post by cst » Thu Aug 02, 2012 12:42 pm

Hi, thanks for the responses

I actually found this thread too http://forums.gentoo.org/viewtopic-t-57 ... erlay.html
I managed to patch wine successfuly, sadly the patch that should make the game more usable, breaks the game completly
i7 3930K @ 4GHz
MSI X79A-GD45 (8D)
32GB 1600 MHz DDR3 Samsung
Samsung 840 PRO, 2xSamsung HD502HJ in RAID 1
MSI GTX 980Ti
latest gentoo-sources on x86_64 Fluxbox (amd64)

best render farm: www.GarageFarm.NET
Top
Phancy Physicist
Apprentice
Apprentice
User avatar
Posts: 193
Joined: Sun Apr 10, 2005 9:00 pm
Contact:
Contact Phancy Physicist
Website

  • Quote

Post by Phancy Physicist » Fri Aug 03, 2012 7:55 am

Hello everybody!

Sorry I haven't been helping but I had a meltdown outlined here -> http://forums.gentoo.org/viewtopic-t-93 ... ight-.html

I found that post about patching wine on the forums as well and this is what I came up with:

Code: Select all

cd /usr/local/portage/app-emulation/wine 
ebuild wine-1.5.9.ebuild clean 
ebuild wine-1.5.9.ebuild unpack 
cd /var/tmp/portage/app-emulation/wine-1.5.9/work/wine-1.5.9 
patch -p1 < <path_to_patch>/raw3.patch
./tools/make_requests
cd - 
ebuild wine-1.5.9.ebuild compile 
ebuild wine-1.5.9.ebuild install 
ebuild wine-1.5.9.ebuild qmerge 
The key to getting the patch to work for me was the ./tools/make_requests in the middle of the ebuild commands. This got the code to compile but I haven't been able to test it yet against a game that uses it yet.

More to come.
Top
Phancy Physicist
Apprentice
Apprentice
User avatar
Posts: 193
Joined: Sun Apr 10, 2005 9:00 pm
Contact:
Contact Phancy Physicist
Website

  • Quote

Post by Phancy Physicist » Mon Aug 06, 2012 7:06 am

This method of applying the patch works. I have played Arma 2 on my box which requires this patch to work :)
Top
Post Reply
  • Print view

8 posts • Page 1 of 1

Return to “Gamers & Players”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Authors
Gentoo is a trademark of the Gentoo Foundation, Inc. and of Förderverein Gentoo e.V.
The contents of this document, unless otherwise expressly stated, are licensed under the CC-BY-SA-4.0 license.
The Gentoo Name and Logo Usage Guidelines apply.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy