Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 507950

Summary: app-emulation/wine - add Compholio patches
Product: Gentoo Linux Reporter: Patrick McMunn <doctorwhoguy>
Component: Current packagesAssignee: Wine Maintainers <wine>
Status: RESOLVED FIXED    
Severity: normal CC: michael, ryao
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: http://fds-team.de/cms/pipelight-compile-wine.html
Whiteboard:
Package list:
Runtime testing required: ---

Description Patrick McMunn 2014-04-18 03:37:33 UTC
Please add Compholio patches to wine ebuilds. Perhaps this could be user-configurable as an option via a use flag. These patches are currently a requirement to use Pipelight. Thus this bug is a blocker for bug 481596 until these patches become part of upstream Wine.

Reproducible: Always
Comment 1 Alexandre Rostovtsev (RETIRED) gentoo-dev 2014-05-04 00:35:31 UTC
This looks like a very large patchset. I am reluctant to add it to portage unless I have assurance that the patchset is (1) needed by many Gentoo users; (2) is well-maintained by someone who has a track record of quickly updating the patchset to be compatible every new unstable wine release; and (3) is used by some other distro (Debian? Ubuntu? Fedora?) so that we aren't the only distro in existence who decided to heavily modify Wine in this manner.
Comment 2 Patrick McMunn 2014-05-04 21:10:02 UTC
Which set of patches were you looking at? There's the full Compholio patchset which includes the WinePulse patches, and then there's the Compholio minimal set which is just the Compholio patches without the WinePulse patches.

If I'm not mistaken, the maintainer of the Compholio patches is now maintaining the WinePulse patches too. I'm not sure how we would adequately ascertain how confidently we can trust him to continue maintenance in the future, but up until now he's been on the ball updating with each new wine release.

I would also like to clarify that these patches would not properly be considered a blocker for bug 481596. Pipelight will work without these patches. However, the patches are necessary to properly use the NetFlix service with Pipelight, and NetFlix is likely to be the primary reason most users will want to install Pipelight.

Richard Yao is another Gentoo dev who has spent a lot of time working with Pipelight for Gentoo, so perhaps he would be a good person to discuss this with for some additional insight.
Comment 3 Alexandre Rostovtsev (RETIRED) gentoo-dev 2014-05-17 07:35:41 UTC
OK, I've added the patchset to wine-1.7.19 ebuild, enabled by USE=pipelight.

The patch set developers seem to have a good history of keeping their code updated and rebasing the patches on new wine releases, and hopefully they will continue to do so.

+*wine-1.7.19 (17 May 2014)
+
+  17 May 2014; Alexandre Rostovtsev <tetromino@gentoo.org> +wine-1.7.19.ebuild,
+  wine-9999.ebuild, metadata.xml:
+  Version bump, see http://www.winehq.org/announce/1.7.19 for the announcement.
+  Optionally apply the unofficial and unsupported Compholio patch set required
+  for Pipelight support (bug #507950, thanks to Patrick McMunn).
Comment 4 Michael Müller 2014-05-17 10:12:33 UTC
Hi,

I am part of the Pipelight team and I saw your concerns about us maintaining the patches. We do automatic daily builds against the current git version of Wine to detect a broken patch as soon as possible so than we can fix it before the next release. The patchset is also maintained since (at least) Wine version 1.5.15 and we do not have any plans to stop this. If you still encounter an issue, feel free to contact us (You can for example find us in the #pipelight channel on Freenode).

Anyway, thanks for adding an option to make it easier for users to build a patched wine version. There is only one small improvement I would suggest:
The necessary functions, mentioned by Patrick McMunn, to run Netflix is the storage of Windows ACLs. Silverlight uses these ACLs on their DRM files and will fail if they can not be saved and reread again. The patches use user xattrs to store such information and the support will not be compiled in, if the xattr.h file can not be found. On Debian based system this file is provided by the libattr1-dev package. To prevent a user from building a broken version, we pass "--with-xattr" to every build on all distributions maintained by us. This will cause the build to fail if the file can not be found. So you also may want to pass this to configure depending on whether the pipelight use flag is set.

Michael
Comment 5 Alexandre Rostovtsev (RETIRED) gentoo-dev 2014-05-17 15:33:39 UTC
(In reply to Michael Müller from comment #4)

Thanks for the explanation; and I should have been paying attention to the fact that the patchset modifies configure.ac

+*wine-1.7.19-r1 (17 May 2014)
+
+  17 May 2014; Alexandre Rostovtsev <tetromino@gentoo.org> -wine-1.7.19.ebuild,
+  +wine-1.7.19-r1.ebuild, wine-9999.ebuild:
+  Pipelight needs xattrs to be enabled (bug #507950, thanks to Michael
+  Müller).