You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Compare commits
452 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
8d274db63d | ||
|
e2f3ff5808 | ||
|
3156ce7409 | ||
|
a7f0cf9bc7 | ||
|
1ccb2f1d1e | ||
|
19ff1ed17c | ||
|
be50941de6 | ||
|
3029f615d2 | ||
|
3385c78c50 | ||
|
9a0ba52594 | ||
|
717300b790 | ||
|
16b62f6817 | ||
|
2ae83d8d8e | ||
|
5f08af6906 | ||
|
13f3004ee7 | ||
|
183dabb19e | ||
|
e93cad00c3 | ||
|
6f776b5d61 | ||
|
534422e141 | ||
|
533f33055c | ||
|
96d0db4493 | ||
|
d8b9dc9636 | ||
|
03b7601b4c | ||
|
046a795ef1 | ||
|
69e14bd36b | ||
|
933eca8d41 | ||
|
7122276309 | ||
|
786742620a | ||
|
731a458cbe | ||
|
536e2fe646 | ||
|
e492b4c116 | ||
|
15815c9994 | ||
|
06af5d9963 | ||
|
4c1c303b62 | ||
|
5dc4aa102e | ||
|
4bc20dfb8e | ||
|
43bba1b164 | ||
|
4aa699f6ca | ||
|
45403d8669 | ||
|
850aa4fc6b | ||
|
ea409cf4fa | ||
|
d021d173a9 | ||
|
b038fac54d | ||
|
87c4528445 | ||
|
18524f3386 | ||
|
b2db6dedde | ||
|
f837eb03f6 | ||
|
6bd6d630b3 | ||
|
9087dedefc | ||
|
944a550aeb | ||
|
ce013a8a78 | ||
|
8d276fcfe1 | ||
|
7573e09b4a | ||
|
e54f90dd30 | ||
|
2403b551ea | ||
|
36fb39e545 | ||
|
18b484d778 | ||
|
0ee71b2abe | ||
|
dea02ac53a | ||
|
368f765134 | ||
|
ea59363fcb | ||
|
c50689ab09 | ||
|
2b2a8fac9a | ||
|
5748d714b1 | ||
|
7d225dbb57 | ||
|
5d5b230c5a | ||
|
1ca9157daa | ||
|
4b4ea9fd2e | ||
|
3d62769912 | ||
|
9b6f3ef459 | ||
|
e08596a770 | ||
|
399f43a3f2 | ||
|
cd729384de | ||
|
647f53b37e | ||
|
98334f6e19 | ||
|
281bf873aa | ||
|
1ff09d87c5 | ||
|
f9cb758cdc | ||
|
92ab0e4143 | ||
|
8f48583742 | ||
|
f84058ab42 | ||
|
489ccc88e6 | ||
|
196a06e3b6 | ||
|
e599595153 | ||
|
89e1de9267 | ||
|
3e8756078d | ||
|
f15cf20757 | ||
|
4b63027ca0 | ||
|
1f2bb7be5e | ||
|
bcf0e1d72d | ||
|
4a5b0ad90a | ||
|
644869d239 | ||
|
1896b3cd3b | ||
|
04e56f5acd | ||
|
420a6e0ba6 | ||
|
abc3892f41 | ||
|
c29548b4e2 | ||
|
dc0ef2893b | ||
|
202cf08f77 | ||
|
18ee5a9427 | ||
|
5f47470e86 | ||
|
46f1e23363 | ||
|
8b72d74b6f | ||
|
b0daaa4b96 | ||
|
9017db8694 | ||
|
2059944f48 | ||
|
73f8a0cbf5 | ||
|
4eb3d2d06c | ||
|
3fa9e6b400 | ||
|
c0f05edf66 | ||
|
26302e61a3 | ||
|
ca15d9aed6 | ||
|
ddfef57f82 | ||
|
c8a6c04975 | ||
|
1be929fbf9 | ||
|
935854b8a4 | ||
|
3b6dcb11c8 | ||
|
3f4ea42573 | ||
|
1f2cf52167 | ||
|
98fb8a1c69 | ||
|
dd68855d30 | ||
|
348f35a57e | ||
|
bb0d97b635 | ||
|
047f20598e | ||
|
3d582c05b6 | ||
|
49eb3fb9f2 | ||
|
e9a8aa66ce | ||
|
0b40eddf61 | ||
|
283dd7e35c | ||
|
c3a2198919 | ||
|
8ca12a7d01 | ||
|
81287a6b64 | ||
|
c28233c13e | ||
|
379cb257ae | ||
|
9561788866 | ||
|
df56f3b7dd | ||
|
bca05a6284 | ||
|
9af0621843 | ||
|
7154d8ae74 | ||
|
1e27c09f56 | ||
|
9060622885 | ||
|
d703791841 | ||
|
ddf264985b | ||
|
b6e1475678 | ||
|
77ae2f5dfe | ||
|
9a01f9973d | ||
|
5ea2e4b5e2 | ||
|
9032f33a16 | ||
|
afe4658dfc | ||
|
13cf73babe | ||
|
7efae8dc63 | ||
|
59a227fea5 | ||
|
7b41f47a27 | ||
|
2f48baf75b | ||
|
cdaf968aa6 | ||
|
f91056bdc2 | ||
|
ee4b0b868e | ||
|
46d3dece11 | ||
|
6e017c65e2 | ||
|
d018c5bad9 | ||
|
6431b62348 | ||
|
600d6d0b87 | ||
|
145e5212b3 | ||
|
799eed7336 | ||
|
b04636aa97 | ||
|
d270fde97f | ||
|
f609f42eed | ||
|
d39a62b810 | ||
|
8486f8265b | ||
|
f03602bcfd | ||
|
20d1c91c29 | ||
|
e6cf192b7b | ||
|
9d339630bb | ||
|
a8de052a24 | ||
|
846b29671f | ||
|
55e0e0ed4e | ||
|
020dc88b37 | ||
|
eb1e664c31 | ||
|
77a19f836f | ||
|
3a74d5cccc | ||
|
10354d4cb5 | ||
|
fe7b83a384 | ||
|
ad021f5462 | ||
|
e800cac340 | ||
|
91cd19237f | ||
|
1e0e9de2b0 | ||
|
802ebcbb91 | ||
|
2c3efe2faa | ||
|
2a3d9afece | ||
|
1c6691895b | ||
|
4dea282c90 | ||
|
845a4dd675 | ||
|
5bfc96a6a5 | ||
|
b8ab34f8d6 | ||
|
eccde841d5 | ||
|
22f1f858b1 | ||
|
ef427399da | ||
|
208b3c1d25 | ||
|
60632bb522 | ||
|
707a96d35a | ||
|
aa54f206eb | ||
|
6db9cf0e65 | ||
|
8727d25f6f | ||
|
02f52948f5 | ||
|
3f9af9fb49 | ||
|
e99ff32949 | ||
|
1f95d8181d | ||
|
e827cc078f | ||
|
80e51dcad6 | ||
|
10d9fda5f9 | ||
|
f69c6a545c | ||
|
a4d6e77557 | ||
|
5b691be2cc | ||
|
02eae9d5a0 | ||
|
a4dbc11aff | ||
|
f1121e3a1a | ||
|
ac83718ba8 | ||
|
603d7ca80e | ||
|
6b2cc4c58f | ||
|
a3d2b4b9e0 | ||
|
95bee0aa1e | ||
|
bc6f854478 | ||
|
0b33c39275 | ||
|
fce29b88da | ||
|
f6dd1f3d0d | ||
|
49bbdc5bf2 | ||
|
df034abacb | ||
|
d49ca49848 | ||
|
79843648fb | ||
|
63e82e5cd2 | ||
|
7e3381c7a3 | ||
|
cffa29b1ae | ||
|
dc95c57c20 | ||
|
a0a5084f55 | ||
|
386a2ce3ba | ||
|
86e6d52971 | ||
|
f7014738a8 | ||
|
4b95841bdb | ||
|
180fa60a17 | ||
|
32a0e9cc9e | ||
|
79861c20f1 | ||
|
bb0cece9a9 | ||
|
32148424bd | ||
|
5c72aff53e | ||
|
42afbafa33 | ||
|
9d3369d7a6 | ||
|
2bb1b96f06 | ||
|
2bfe73c2b7 | ||
|
8e2ab550d8 | ||
|
7f5e6044ee | ||
|
db0464c6f2 | ||
|
80455f2b22 | ||
|
ce40587ef4 | ||
|
4ad4f948c3 | ||
|
1fbebd0a1a | ||
|
1761c9534e | ||
|
b500367ff7 | ||
|
5721ee15c9 | ||
|
56264645ad | ||
|
113b554090 | ||
|
24c6b554c9 | ||
|
b861c5731d | ||
|
5d354c9b2a | ||
|
e8fee88c50 | ||
|
c2e8167d6d | ||
|
907d56238e | ||
|
674b998176 | ||
|
882b560d0d | ||
|
8df335170a | ||
|
2241ffdf4b | ||
|
dff7b6b562 | ||
|
cdb00a9e7a | ||
|
f7541123b5 | ||
|
6578707ac2 | ||
|
719c65ebb0 | ||
|
ddefcb372a | ||
|
c594bca17a | ||
|
3c33a592f6 | ||
|
4476d8af38 | ||
|
b216cdce2c | ||
|
fc086bb2bc | ||
|
772dfd9f5a | ||
|
b4d53a7344 | ||
|
e5c7fe8c18 | ||
|
fdc24226bf | ||
|
3886ee9fae | ||
|
229eb9bba5 | ||
|
1800d1f853 | ||
|
24d682fd91 | ||
|
979900f060 | ||
|
d094743650 | ||
|
2c9d2d8f64 | ||
|
457c0bf7e1 | ||
|
d2209c6ee0 | ||
|
84997e39ab | ||
|
ec9af72c77 | ||
|
01be545e92 | ||
|
bfb7d535af | ||
|
94813ecf3c | ||
|
b09ed0f3d2 | ||
|
807da03757 | ||
|
af447c6cfd | ||
|
aac5a0da53 | ||
|
7fede3cd56 | ||
|
43b781b453 | ||
|
d989770f24 | ||
|
036250b6da | ||
|
d787be6d20 | ||
|
c35db80eae | ||
|
4328f2e964 | ||
|
eecf7c4a68 | ||
|
4d01de8fcd | ||
|
f5ef032c89 | ||
|
f9eebd5599 | ||
|
48bbae3fb7 | ||
|
fdbc47e09e | ||
|
2b4093a0ea | ||
|
580ff7c1c5 | ||
|
454c09ddbe | ||
|
810202432b | ||
|
737eb1005a | ||
|
58eeb19b3e | ||
|
c8be20f3cf | ||
|
b6d34ea7d2 | ||
|
f6d14c47ec | ||
|
78d6102645 | ||
|
b862f600f5 | ||
|
e0b037b82a | ||
|
69b0f7ebd7 | ||
|
7c95fad661 | ||
|
67cc61ffca | ||
|
0df720506a | ||
|
68c91b3113 | ||
|
ac36f88de1 | ||
|
9fcd7e7113 | ||
|
903a8e54d4 | ||
|
3de6b17d8a | ||
|
74bd451363 | ||
|
22a1e1ff59 | ||
|
c781d177e1 | ||
|
f13c0f3cd8 | ||
|
9ebbbcfc9f | ||
|
d886426f50 | ||
|
d30bfe1a41 | ||
|
30825c59a9 | ||
|
7d03df647f | ||
|
a046f03792 | ||
|
b744f3d37b | ||
|
c52df465c1 | ||
|
09bfdcb009 | ||
|
2f449562d1 | ||
|
3c6c730333 | ||
|
809ee539f3 | ||
|
339892ffe6 | ||
|
2e7f83fbf8 | ||
|
9043eadbcb | ||
|
5386c7843d | ||
|
0675620019 | ||
|
552b6acf97 | ||
|
86c9842e64 | ||
|
d0e9447fb6 | ||
|
47ddb3a6d1 | ||
|
5a4ba9a546 | ||
|
b51c16c86a | ||
|
c1edf8d5c4 | ||
|
ebf2fb3d7d | ||
|
ca1e83ef3f | ||
|
054930fd52 | ||
|
56fd91825e | ||
|
a6b295029c | ||
|
ddf6dd7f6a | ||
|
524c64dd2a | ||
|
e470b33f7c | ||
|
556aa9335e | ||
|
0817bd1a57 | ||
|
2f7523bffe | ||
|
9fd0a6eb9d | ||
|
f5f50d333c | ||
|
2d3f9334f8 | ||
|
9466f14d52 | ||
|
79c4f4391e | ||
|
820cc2e861 | ||
|
29d69db459 | ||
|
7642c422ed | ||
|
d56138d8ec | ||
|
b5687dc502 | ||
|
7a15599a3a | ||
|
7e5038e76c | ||
|
30f3d023d5 | ||
|
a7a1f83013 | ||
|
53053927fd | ||
|
35cab4ef93 | ||
|
43b0d84ae9 | ||
|
825145217c | ||
|
99c6fe660f | ||
|
4a69f63a78 | ||
|
39fa530c33 | ||
|
564f8aeafc | ||
|
e77f05ee52 | ||
|
f352182c20 | ||
|
7bb4be5d03 | ||
|
ef956caf59 | ||
|
8e45d4c99f | ||
|
004109b3bd | ||
|
dd5b1514b2 | ||
|
34a6c25071 | ||
|
6dc4078d74 | ||
|
6fcc7f732d | ||
|
997c04f7f8 | ||
|
658fe4e3ae | ||
|
40aaeb61f8 | ||
|
6274002623 | ||
|
24af73d1d2 | ||
|
155a364280 | ||
|
9c1492069b | ||
|
c3d5bcab99 | ||
|
c3052d2e31 | ||
|
87fd81b9d8 | ||
|
062426558b | ||
|
1c6aeef3b4 | ||
|
f7de528788 | ||
|
8d45dc126d | ||
|
1a0d969d12 | ||
|
a926ab3deb | ||
|
d31a32b073 | ||
|
c21aa8beb3 | ||
|
67079f94ae | ||
|
c1dccff70a | ||
|
7b41306c4b | ||
|
2d7390de4b | ||
|
28bbb866f2 | ||
|
fc5a6b8c45 | ||
|
7398e80556 | ||
|
25bf8fbc02 | ||
|
b741e7191b | ||
|
aa76a0b8d2 | ||
|
d38c90ec2a | ||
|
44bba738bb | ||
|
264b4b3cab | ||
|
e63f3b7958 | ||
|
545aaf4153 | ||
|
6eb246a811 | ||
|
cd9fa06fcb | ||
|
33b3e62fc1 | ||
|
5808f78d07 | ||
|
8fa329cfe2 | ||
|
6cc7c450bf | ||
|
2aa8fe4524 | ||
|
3c0f6ef05f | ||
|
5a6af8c89c | ||
|
4c9309d05a | ||
|
5583aa9cc7 |
6
.gitignore
vendored
6
.gitignore
vendored
@@ -1 +1,5 @@
|
||||
*~
|
||||
debian/tools/wine
|
||||
.depcache
|
||||
.srccache
|
||||
*.ok
|
||||
*.pyc
|
||||
|
152
DEVELOPER.md
Normal file
152
DEVELOPER.md
Normal file
@@ -0,0 +1,152 @@
|
||||
Developers and maintainers guide
|
||||
================================
|
||||
|
||||
This document will provide some information targeted at developers, who
|
||||
either want to build/package Wine-Compholio for their distribution, but also
|
||||
for developers who would like to contribute their patches to Wine-Compholio,
|
||||
to get them included in future releases.
|
||||
|
||||
|
||||
|
||||
Compiling Wine-Compholio
|
||||
========================
|
||||
|
||||
**Warning:** Please note that starting with Wine-Compholio 1.7.23 it is
|
||||
deprecated to manually apply patches without using the Makefile. To avoid
|
||||
typical pitfalls for package maintainers (like trying to use the patch
|
||||
commandline utility for binary patches or not updating the patchlist) it is
|
||||
highly recommended to use the Makefile in order to apply all patches. This
|
||||
ensures that the the correct patch utility is used, that the list of patches
|
||||
is updated appropriately, and so on. Please note that it is still possible
|
||||
to exclude patches if desired, take a look at the end of this document for
|
||||
more details.
|
||||
|
||||
Instructions
|
||||
------------
|
||||
|
||||
The following instructions (based on the [Gentoo
|
||||
Wiki](https://wiki.gentoo.org/wiki/Netflix/Pipelight#Compiling_manually))
|
||||
will give a short overview how to compile Wine-Compholio, but of course not
|
||||
explain all details. Make sure to install all required Wine dependencies
|
||||
before proceeding.
|
||||
|
||||
As the first step please grab the latest Wine source:
|
||||
```bash
|
||||
wget http://prdownloads.sourceforge.net/wine/wine-1.7.24.tar.bz2
|
||||
wget https://github.com/compholio/wine-compholio-daily/archive/v1.7.24.tar.gz
|
||||
```
|
||||
|
||||
Extract the archives:
|
||||
```bash
|
||||
tar xvjf wine-1*.tar.bz2
|
||||
cd wine-1*
|
||||
tar xvzf ../v1.7.24.tar.gz --strip-components 1
|
||||
```
|
||||
|
||||
And apply the patches:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install
|
||||
```
|
||||
|
||||
Afterwards run configure (you can also specify a prefix if you don't want to install
|
||||
Wine-Compholio system-wide):
|
||||
```bash
|
||||
./configure --with-xattr
|
||||
```
|
||||
|
||||
Before you continue you should make sure that `./configure` doesn't show any
|
||||
warnings (look at the end of the output). If there are any warnings, this
|
||||
most likely means that you're missing some important header files. Install
|
||||
them and repeat the `./configure` step until all problems are fixed.
|
||||
|
||||
Afterwards compile it (and grab a cup of coffee):
|
||||
```bash
|
||||
make
|
||||
```
|
||||
|
||||
And install it (you only need sudo for a system-wide installation):
|
||||
```bash
|
||||
sudo make install
|
||||
```
|
||||
|
||||
Excluding patches
|
||||
-----------------
|
||||
|
||||
It is also possible to apply only a subset of the patches, for example if
|
||||
you're compiling for a distribution where PulseAudio is not installed, or
|
||||
if you just don't like a specific patchset. Please note that some patchsets
|
||||
depend on each other, and requesting an impossible situation might result
|
||||
in a failure to apply all patches.
|
||||
|
||||
Lets assume you want to exclude the patchset in directory `DIRNAME`, then
|
||||
just invoke the Makefile like this:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install -W DIRNAME.ok
|
||||
```
|
||||
|
||||
Using the same method its also possible to exclude multiple patchsets. If you
|
||||
want to exclude a very large number of patches, it is easier to do specify
|
||||
a list of patches which should be included instead. To apply for example
|
||||
only the patchsets in directory `DIRNAME1` and `DIRNAME2`, you can use:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) PATCHLIST="DIRNAME1.ok DIRNAME2.ok" install
|
||||
```
|
||||
|
||||
|
||||
Contributing to Wine-Compholio
|
||||
==============================
|
||||
|
||||
Please note that Wine-Compholio is not just an arbitrary collection of Wine
|
||||
patches. We see Wine-Compholio as a **testing version** in preparation for
|
||||
patches to be submitted to upstream Wine. This implies that all patches should
|
||||
at least have a minimum standard quality. Unlike some other PPAs/AURs which
|
||||
provide heavily patched Wine versions, we will not accept hacks for very
|
||||
specific games. Such hacks often break compatibility with other applications,
|
||||
which means we probably don't want to include them, sorry.
|
||||
|
||||
If you think your patches are indeed a proper implementation, then feel free
|
||||
to contribute them. Please note that to allow possible later inclusion
|
||||
into upstream Wine, we will require you to pay attention to the same
|
||||
[rules](http://wiki.winehq.org/SubmittingPatches). Please be patient and
|
||||
give us up to about a week to review them - we're a very small team, so
|
||||
it might take some time, and we want to make sure that the implementation
|
||||
doesn't contain any critical errors, which could cause regressions. If you
|
||||
want to contribute huge sets of patches, we would really like you to *stay
|
||||
contributing* in the future. Even if we accepted your patches, this doesn't
|
||||
necessary mean we understand all of it, and if you cannot or don't want
|
||||
to maintain them (especially in case of errors, or difficult rebasing),
|
||||
we will probably end up removing them again.
|
||||
|
||||
You can also suggest adding patches written by other people - in this case
|
||||
your request should include who wrote the patch. Anonymous patches which
|
||||
don't include the author information aren't welcome, similar to the rules
|
||||
for upstream Wine.
|
||||
|
||||
|
||||
Attribution guidelines
|
||||
----------------------
|
||||
|
||||
The Wine "Compholio" Edition repository expects all patches to conform to
|
||||
Wine's (undocumented) attribution guidelines. There are a variety of ways
|
||||
to attribute patches, but they all involve an additional line to the patch
|
||||
subject:
|
||||
|
||||
```
|
||||
commit 0000000000000000000000000000000000000000
|
||||
Author: Example Author <example.email@email-provider.com>
|
||||
Date: Sat Jul 26 12:31:50 2014 -0600
|
||||
|
||||
Name of patch.
|
||||
|
||||
TYPE-OF-ATTRIBUTION.
|
||||
```
|
||||
|
||||
TYPE-OF-ATTRIBUTION can be any of the following:
|
||||
|
||||
`Found/Spotted by FINDER.`: The resolved issue was found by FINDER, they
|
||||
should receive appropriate credit for finding the problem - even though
|
||||
their patch was not used in the final implementation.
|
||||
|
||||
`Based on patch by AUTHOR.`: The patch created by AUTHOR was a starting point
|
||||
for the patch, some modifications were made to their patch - but they should
|
||||
receive credit since the original implementation was theirs.
|
1405
LICENSE.md
Normal file
1405
LICENSE.md
Normal file
File diff suppressed because it is too large
Load Diff
386
README.md
386
README.md
@@ -1,4 +1,386 @@
|
||||
wine-compholio-daily
|
||||
What is Wine-Compholio?
|
||||
=======================
|
||||
|
||||
The **Wine "Compholio" Edition** is a special patched version of Wine that
|
||||
includes both patches written by our team directly and specific patches by
|
||||
third party developers that we consider good enough for inclusion. This can
|
||||
be seen as a testing version in preparation for patches to be submitted
|
||||
to upstream Wine - don't be surprised if you encounter additional bugs,
|
||||
which are not present in regular wine, and always report such issues to us
|
||||
(via github), so we can improve our fixes even further. Thanks!
|
||||
|
||||
|
||||
Included bugfixes and improvements
|
||||
----------------------------------
|
||||
|
||||
**Bugfixes and features included in the next upcoming release [11]:**
|
||||
|
||||
* Adobe Reader requires NtProtectVirtualMemory and NtCreateSection to be on separate pages ([Wine Bug #33162](http://bugs.winehq.org/show_bug.cgi?id=33162 "Acrobat Reader 11 crashes on start (native API application virtualization, NtProtectVirtualMemory removes execute page protection on its own code)"))
|
||||
* Fix ITERATE_MoveFiles when no source- and destname is specified ([Wine Bug #10085](http://bugs.winehq.org/show_bug.cgi?id=10085 "Adobe Bridge CS2 complains that it can't start due to licensing restrictions (affects photoshop)"))
|
||||
* Fix issue with invisible dragimages in ImageList ([Wine Bug #36761](http://bugs.winehq.org/show_bug.cgi?id=36761 "Imagelist invisible dragimage"))
|
||||
* Games For Windows Live 1.x expects a valid linker version in the PE header ([Wine Bug #28768](http://bugs.winehq.org/show_bug.cgi?id=28768 "Multiple GFWL (Games For Windows Live) 1.x games crash on startup (Kane & Lynch: Dead Men)"))
|
||||
* Gothic 2 demo expects an error when opening a terminating process ([Wine Bug #37087](http://bugs.winehq.org/show_bug.cgi?id=37087 "Gothic 2 english demo fails with 'Conflict: a hook process was found. Please deactivate all Antivirus and Anti-Trojan programs and debuggers.'"))
|
||||
* Multiple applications need BCryptGetFipsAlgorithmMode ([Wine Bug #32194](http://bugs.winehq.org/show_bug.cgi?id=32194 "Multiple games and applications need bcrypt.dll.BCryptGetFipsAlgorithmMode (Chess Position Trainer, Terraria, .NET System.Security.Cryptography)"))
|
||||
* Other Pipelight-specific enhancements
|
||||
* Prevent window managers from grouping all wine programs together ([Wine Bug #32699](http://bugs.winehq.org/show_bug.cgi?id=32699 "Add StartupWMClass to .desktop files."))
|
||||
* Support for Dynamic DST (daylight saving time) information in registry
|
||||
* Support for GetFinalPathNameByHandle ([Wine Bug #36073](http://bugs.winehq.org/show_bug.cgi?id=36073 "OneDrive crashes on unimplemented function KERNEL32.dll.GetFinalPathNameByHandleW"))
|
||||
* nVidia driver for high-end laptop cards does not list all supported resolutions
|
||||
|
||||
|
||||
**Bugs fixed in Wine-Compholio 1.7.24 [45]:**
|
||||
|
||||
* ATL IOCS data should not be stored in GWLP_USERDATA ([Wine Bug #21767](http://bugs.winehq.org/show_bug.cgi?id=21767 "JLC's Internet TV crashes on startup"))
|
||||
* Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](http://bugs.winehq.org/show_bug.cgi?id=36374 "Israel timezone handled incorrectly"))
|
||||
* Add default ACLs for user shell folders
|
||||
* ~~Add support for Dynamic DST (daylight saving time) information in registry~~
|
||||
* Allow special characters in pipe names ([Wine Bug #28995](http://bugs.winehq.org/show_bug.cgi?id=28995 "Unable to use named pipes with \">\" character in the name"))
|
||||
* Audio stuttering and performance drops in multiple applications ([Wine Bug #30639](http://bugs.winehq.org/show_bug.cgi?id=30639 "Audio stuttering and performance drops in Star Wolves 3"))
|
||||
* Fix comparison of punctuation characters in lstrcmp ([Wine Bug #10767](http://bugs.winehq.org/show_bug.cgi?id=10767 "lstrcmp and others do not compare punctuation characters correctly"))
|
||||
* Fix for ConnectNamedPort return value in overlapped mode ([Wine Bug #16550](http://bugs.winehq.org/show_bug.cgi?id=16550 "ConnectNamedPort should never return OK in overlapped mode (affects chromium ui_tests.exe)"))
|
||||
* Fix for programs leaking wndproc slots ([Wine Bug #32451](http://bugs.winehq.org/show_bug.cgi?id=32451 "Multiple GOG.com installer bundles show a broken/unresponsive dialog window during installation (installer process running out of wndproc slots)"))
|
||||
* GetSecurityInfo returns NULL DACL for process object ([Wine Bug #15980](http://bugs.winehq.org/show_bug.cgi?id=15980 "Rhapsody 2 crashes on startup (GetSecurityInfo returns NULL DACL for process object)"))
|
||||
* Implement a Microsoft Yahei replacement font ([Wine Bug #13829](http://bugs.winehq.org/show_bug.cgi?id=13829 "Wine does not have CJK fonts"))
|
||||
* Implement an Arial replacement font ([Wine Bug #32323](http://bugs.winehq.org/show_bug.cgi?id=32323 "Netflix (Silverlight 4.x) and several .NET Framework 3.x/4.0 WPF apps require either Arial or Verdana to be installed"))
|
||||
* Lockfree algorithm for filedescriptor cache (improves file access speed)
|
||||
* Make it possible to change media center / tablet pc status ([Wine Bug #18732](http://bugs.winehq.org/show_bug.cgi?id=18732 "Microsoft Experience Pack for Tablet PC 1 refuses to install"))
|
||||
* Need for Speed 3 installer requires devices in HKEY_DYN_DATA ([Wine Bug #7115](http://bugs.winehq.org/show_bug.cgi?id=7115 "Need for Speed III installer fails in Win9X mode, reporting \"Could not get 'HardWareKey' value\" (active PnP device keys in 'HKEY_DYN_DATA\\\\Config Manager\\\\Enum' missing)"))
|
||||
* ~~Old games cannot locate software-only renderer~~ ([Wine Bug #32581](http://bugs.winehq.org/show_bug.cgi?id=32581 "Invalid dwFlags of reference rasterizer's HAL D3DDEVICEDESC"))
|
||||
* ~~Other Pipelight specific enhancements~~
|
||||
* Reduced SetTimer minimum value from 10 ms to 5 ms (improves Silverlight framerates)
|
||||
* Return correct IMediaSeeking stream positions in quartz ([Wine Bug #23174](http://bugs.winehq.org/show_bug.cgi?id=23174 "Fallout 3: Diologue and Video/sound issues"))
|
||||
* SO_CONNECT_TIME returns the appropriate time
|
||||
* Set ldr.EntryPoint for main executable ([Wine Bug #33034](http://bugs.winehq.org/show_bug.cgi?id=33034 "Many GFWL (Games For Windows Live) 1.x/2.x/3.x games crash or exit silently on startup (DiRT 2/3, GTA IV Steam)"))
|
||||
* Support for AllocateAndGetTcpExTableFromStack ([Wine Bug #34372](http://bugs.winehq.org/show_bug.cgi?id=34372 "Add missing function AllocateAndGetTcpExTableFromStack() to iphlpapi.dll"))
|
||||
* Support for GetSystemTimes ([Wine Bug #19813](http://bugs.winehq.org/show_bug.cgi?id=19813 "Voddler needs GetSystemTimes to run"))
|
||||
* Support for GetVolumePathName
|
||||
* Support for ITextDocument_fnRange function ([Wine Bug #12458](http://bugs.winehq.org/show_bug.cgi?id=12458 "Multiple apps fail due to RichEdit ITextDocument_fnRange stub (MySQL Workbench, BlitzMaxDemo137)"))
|
||||
* Support for ITextRange, ITextFont and ITextPara ([Wine Bug #18303](http://bugs.winehq.org/show_bug.cgi?id=18303 "Adobe Acrobat Pro 7: Crashes when selecting the \"edit\" menu while having a file open."))
|
||||
* Support for Junction Points ([Wine Bug #12401](http://bugs.winehq.org/show_bug.cgi?id=12401 "Support junction points, i.e. DeviceIoCtl(FSCTL_SET_REPARSE_POINT/FSCTL_GET_REPARSE_POINT)"))
|
||||
* Support for LoadIconMetric ([Wine Bug #35375](http://bugs.winehq.org/show_bug.cgi?id=35375 "Multiple applications need Vista+ API COMCTL32.dll.380 a.k.a. 'LoadIconMetric' (Solidworks 2013 systray monitor, Microsoft One/SkyDrive)"))
|
||||
* Support for NtSetInformationFile class FileDispositionInformation ([Wine Bug #30397](http://bugs.winehq.org/show_bug.cgi?id=30397 "Multiple applications need support for NtSetInformationFile class FileDispositionInformation (Cygwin installer, Stylizer 5.x Visual CSS editor, Spoon Studio 2011 (ex Xenocode) application sandboxing scheme)"))
|
||||
* Support for PulseAudio backend for audio ([Wine Bug #10495](http://bugs.winehq.org/show_bug.cgi?id=10495 "Wine should support PulseAudio"))
|
||||
* Support for SHCreateSessionKey ([Wine Bug #35630](http://bugs.winehq.org/show_bug.cgi?id=35630 "SHCreateSessionKey is unimplemented"))
|
||||
* Support for TOOLTIPS_GetTipText edge cases ([Wine Bug #30648](http://bugs.winehq.org/show_bug.cgi?id=30648 "SEGA Genesis / Mega Drive Classic Collection (Steam) crashes on startup"))
|
||||
* Support for TransmitFile ([Wine Bug #5048](http://bugs.winehq.org/show_bug.cgi?id=5048 "Multiple applications and games need support for ws2_32 SIO_GET_EXTENSION_FUNCTION_POINTER TransmitFile (WSAID_TRANSMITFILE)"))
|
||||
* Support for WTSEnumerateProcessesW ([Wine Bug #29903](http://bugs.winehq.org/show_bug.cgi?id=29903 "Some Microsoft debuggers fail to enumerate processes due to wtsapi32.WTSEnumerateProcessesW() being a stub (Microsoft Visual Studio 2005, DbgCLR from .NET 2.0 SDK)"))
|
||||
* Support for [Get|Set]SystemFileCacheSize ([Wine Bug #35886](http://bugs.winehq.org/show_bug.cgi?id=35886 "Lotus Notes 9 'cacheset.exe' utility needs KERNEL32.dll.SetSystemFileCacheSize"))
|
||||
* Support for extra large and jumbo icon lists in shell32 ([Wine Bug #24721](http://bugs.winehq.org/show_bug.cgi?id=24721 "Explorer++ crashes when choosing to view large icons or extra large icons"))
|
||||
* Support for inherited file ACLs ([Wine Bug #34406](http://bugs.winehq.org/show_bug.cgi?id=34406 "Finale Notepad 2012 doesn't copy/create user files on program start"))
|
||||
* Support for interface change notifications ([Wine Bug #32328](http://bugs.winehq.org/show_bug.cgi?id=32328 "Many .NET and Silverlight applications require SIO_ADDRESS_LIST_CHANGE for interface change notifications"))
|
||||
* Support for process ACLs ([Wine Bug #22006](http://bugs.winehq.org/show_bug.cgi?id=22006 "OpenProcess does not enforce ACL"))
|
||||
* Support for stored file ACLs ([Wine Bug #31858](http://bugs.winehq.org/show_bug.cgi?id=31858 "Netflix on Firefox fails with Internet Connection Problem when loading bar is at 99%"))
|
||||
* Support for ws2_32.inet_pton ([Wine Bug #36713](http://bugs.winehq.org/show_bug.cgi?id=36713 "Watch_Dogs requires ws2_32.inet_pton"))
|
||||
* Use manual relay for RunDLL_CallEntry16 in shell32 ([Wine Bug #23033](http://bugs.winehq.org/show_bug.cgi?id=23033 "Tages Protection v5.x: games report \"DLL not found shell.dll16.dll\" (Runaway 2: The Dream Of The Turtle, ...)"))
|
||||
* ~~Workaround for TransactNamedPipe not being supported~~ ([Wine Bug #17273](http://bugs.winehq.org/show_bug.cgi?id=17273 "Many apps and games need SetNamedPipeHandleState implementation (support for named pipe message mode)(FireFox+Flash, Win8/NET 4.x SDK/vcrun2012, WiX installers)"))
|
||||
* Workaround for shlwapi URLs with relative paths
|
||||
* XEMBED support for embedding Wine windows inside Linux applications
|
||||
|
||||
|
||||
How to install Wine-Compholio
|
||||
=============================
|
||||
|
||||
Ready-to-use packages for Wine-Compholio are available for a variety
|
||||
of different Linux distributions directly for download. Just follow the
|
||||
instructions below to install it (and all required dependencies). After the
|
||||
installation, please take a look at the next section for instructions how
|
||||
to use it in order to run your desired application.
|
||||
|
||||
**Important:** If you already have installed 'pipelight' on your system, there
|
||||
is a good chance that you already have Wine-Compholio. Take a look at the
|
||||
next section on how to find out if this is the case.
|
||||
|
||||
If your distribution is not listed below, feel free to add a feature request -
|
||||
if the demand is high enough we might consider packaging it for additional
|
||||
distributions.
|
||||
|
||||
|
||||
 Ubuntu / Linux Mint
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Please run the following commands from a terminal, one line after each other.
|
||||
```bash
|
||||
sudo add-apt-repository ppa:pipelight/stable
|
||||
sudo apt-get update
|
||||
sudo apt-get install --install-recommends wine-compholio
|
||||
```
|
||||
|
||||
 Arch Linux
|
||||
---------------------------------------------------------------------
|
||||
|
||||
As a first step you have to import the key for our repository, and set the
|
||||
trust level to trusted:
|
||||
```bash
|
||||
sudo pacman-key -r E49CC0415DC2D5CA
|
||||
sudo pacman-key --lsign-key E49CC0415DC2D5CA
|
||||
```
|
||||
|
||||
Afterwards you have to add the following lines to `/etc/pacman.conf`:
|
||||
```
|
||||
[compholio]
|
||||
Server = http://cdn.fds-team.de/stable/arch/$arch
|
||||
```
|
||||
|
||||
Now you can install Wine-Compholio directly using `pacman`:
|
||||
```bash
|
||||
sudo pacman -Syu wine-compholio
|
||||
```
|
||||
|
||||
 Debian Jessie/Sid
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
*(Instructions for Debian Wheezy can be found below)*
|
||||
|
||||
In order to install i386 packages on a 64-bit system, you have to run the
|
||||
following command as a first step:
|
||||
```bash
|
||||
sudo dpkg --add-architecture i386
|
||||
```
|
||||
|
||||
Afterwards import the key for our repository:
|
||||
```bash
|
||||
wget http://repos.fds-team.de/Release.key
|
||||
sudo apt-key add Release.key
|
||||
```
|
||||
|
||||
And add our repository at the end of your `/etc/apt/sources.list` file:
|
||||
```
|
||||
# For Debian Jessie add the following line:
|
||||
deb http://cdn.fds-team.de/stable/debian/ jessie main
|
||||
|
||||
# For Debian Sid this one:
|
||||
deb http://cdn.fds-team.de/stable/debian/ sid main
|
||||
```
|
||||
|
||||
Afterwards update the package cache and install it:
|
||||
```bash
|
||||
sudo apt-get update
|
||||
sudo apt-get install wine-compholio
|
||||
```
|
||||
|
||||
|
||||
 Debian Wheezy
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
In order to install i386 packages on a 64-bit system, you have to run the
|
||||
following command as a first step:
|
||||
```bash
|
||||
sudo dpkg --add-architecture i386
|
||||
```
|
||||
|
||||
Afterwards import the key for our repository:
|
||||
```bash
|
||||
wget http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/Debian_7.0/Release.key
|
||||
sudo apt-key add Release.key
|
||||
```
|
||||
|
||||
And add our repository at the end of your `/etc/apt/sources.list` file:
|
||||
```
|
||||
# For Debian Wheezy add the following line:
|
||||
deb http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/Debian_7.0/ ./
|
||||
```
|
||||
|
||||
Afterwards update the package cache and install it:
|
||||
```bash
|
||||
sudo apt-get update
|
||||
sudo apt-get install wine-compholio
|
||||
```
|
||||
|
||||
|
||||
 OpenSUSE
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
All the following steps have to be executed as root user. As a first step
|
||||
you have to add the repository - this step depends on the openSUSE version
|
||||
you're using.
|
||||
|
||||
| openSUSE version | Path component |
|
||||
| ------------------- | ----------------------- |
|
||||
| openSUSE 12.2 | `/openSUSE_12.2/` |
|
||||
| openSUSE 12.3 | `/openSUSE_12.3/` |
|
||||
| openSUSE 13.1 | `/openSUSE_13.1/` |
|
||||
| openSUSE Factory | `/openSUSE_Factory/` |
|
||||
| openSUSE Tumbleweed | `/openSUSE_Tumbleweed/` |
|
||||
|
||||
The following commandline is an example for openSUSE 13.1, for a different
|
||||
version just replace the path component according to the table above:
|
||||
```bash
|
||||
zypper ar --refresh http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/openSUSE_13.1/home:DarkPlayer:Pipelight.repo
|
||||
```
|
||||
|
||||
Afterwards just run the following commands to install it:
|
||||
```bash
|
||||
zypper ref
|
||||
zypper install wine-compholio
|
||||
```
|
||||
|
||||
|
||||
 Fedora
|
||||
-------------------------------------------------------------------
|
||||
|
||||
**Warning:** In contrary to other distributions, its not possible to have both
|
||||
a regular wine version and Wine-Compholio installed at the same time - using
|
||||
the instructions below will replace your regular version. Moreover it will
|
||||
be installed to `/usr/bin/wine` in contrary to `/opt/wine-compholio/bin/wine`.
|
||||
|
||||
As a first step you have to add the repository - this step depends on the
|
||||
Fedora version you're using.
|
||||
|
||||
| Fedora version | Patch component |
|
||||
| --------------- | --------------- |
|
||||
| Fedora 18 | `/Fedora_18/` |
|
||||
| Fedora 19 | `/Fedora_19/` |
|
||||
| Fedora 20 | `/Fedora_20/` |
|
||||
|
||||
The following commandline is an example for Fedora 19, for a different version
|
||||
just replace the path component according to the table above:
|
||||
```bash
|
||||
sudo wget http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/Fedora_19/home:DarkPlayer:Pipelight.repo -O /etc/yum.repos.d/pipelight.repo
|
||||
```
|
||||
|
||||
Afterwards run the following command to install the package:
|
||||
```bash
|
||||
sudo yum install wine-compholio
|
||||
```
|
||||
|
||||
Please note that you might run into trouble if the official Fedora package
|
||||
(without compholio patches) is newer than the one from the repository above,
|
||||
so if something doesn't work, always make sure that you have installed
|
||||
our version. To do that just run:
|
||||
```bash
|
||||
/usr/bin/wine --patches
|
||||
```
|
||||
|
||||
When you're using Wine-Compholio this will show to a list of all patches
|
||||
included, for an unpatched version this command will fail.
|
||||
|
||||
|
||||
 Mageia 4
|
||||
---------------------------------------------------------------------
|
||||
|
||||
As a first step please add the key for our repository
|
||||
```bash
|
||||
wget http://repos.fds-team.de/Release.key
|
||||
rpm --import Release.key
|
||||
```
|
||||
|
||||
If you're using a 32-bit version of Mageia just add the repository
|
||||
for 32-bit packages:
|
||||
```bash
|
||||
sudo urpmi.addmedia "Compholio 32-bit" http://cdn.fds-team.de/stable/mageia/4/i586/
|
||||
```
|
||||
|
||||
For a 64-bit version of Mageia you'll need both the 32-bit and the
|
||||
64-bit repository:
|
||||
```bash
|
||||
sudo urpmi.addmedia "Compholio 32-bit" http://cdn.fds-team.de/stable/mageia/4/i586/
|
||||
sudo urpmi.addmedia "Compholio 64-bit" http://cdn.fds-team.de/stable/mageia/4/x86_64/
|
||||
```
|
||||
|
||||
Afterwards run the following commands to install the package:
|
||||
```bash
|
||||
sudo urpmi.update -a
|
||||
sudo urpmi wine-compholio
|
||||
```
|
||||
|
||||
Using Wine-Compholio
|
||||
====================
|
||||
|
||||
Daily updates for the Wine "Compholio" Edition.
|
||||
Since we don't want to duplicate a lot of information here, we recommend
|
||||
to take a look at the [official Wine FAQ](http://wiki.winehq.org/FAQ) for
|
||||
general information about how to use Wine. The following part will mainly
|
||||
concentrate on the differences between wine and Wine-Compholio.
|
||||
|
||||
|
||||
Running Wine-Compholio
|
||||
----------------------
|
||||
|
||||
**Using multiple Wine versions:** Unless you specify a special `WINEPREFIX`
|
||||
environment variable, Wine-Compholio will use the same wineprefix `~/.wine`
|
||||
(in your home directory) like regular wine. This allows you to use your
|
||||
already installed programs directly, without much effort or reinstalling
|
||||
them. Often you have both regular wine and Wine-Compholio installed at the
|
||||
same time, which is *absolutely no problem* - by typing in either `wine`
|
||||
(=regular wine) or `/opt/wine-compholio/bin/wine` you can decide, which
|
||||
wine version you want to run. You can switch between versions as often as
|
||||
you like - just make sure that all Windows programs have terminated before
|
||||
starting them with a different version.
|
||||
|
||||
To run Wine-Compholio always type `/opt/wine-compholio/bin/wine`, for example:
|
||||
```bash
|
||||
cd ~/.wine/drive_c/<your path>/
|
||||
/opt/wine-compholio/bin/wine game.exe
|
||||
```
|
||||
|
||||
You also have to add `/opt/wine-compholio/bin/` when running other wine
|
||||
related programs, here are some additional example:
|
||||
```bash
|
||||
# Initialize the wine prefix
|
||||
/opt/wine-compholio/bin/wineboot
|
||||
|
||||
# Open the wine configuration
|
||||
/opt/wine-compholio/bin/winecfg
|
||||
|
||||
# Run winepath to convert paths
|
||||
/opt/wine-compholio/bin/winepath --unix 'c:\Windows'
|
||||
|
||||
# Kill the running wineserver instance
|
||||
/opt/wine-compholio/bin/wineserver -k
|
||||
|
||||
...
|
||||
```
|
||||
|
||||
If you're an experienced user, and always want to use Wine-Compholio, you
|
||||
can also add `/opt/wine-compholio/bin` to your bash profile. We will not
|
||||
go into detail here, because such a setup has the big disadvantage, that
|
||||
it hides which version you're using - which is very important for getting
|
||||
support or reporting bugs.
|
||||
|
||||
|
||||
Submitting bugs
|
||||
---------------
|
||||
|
||||
**Warning: Do not submit bug reports at bugs.winehq.org when using this
|
||||
version!**
|
||||
|
||||
If you encounter any issues, the first thing you should do is to try it with
|
||||
regular wine. We're only a very small developer team, and although we would
|
||||
like to do that, we probably cannot really solve all your Wine bugs. When
|
||||
it turns out that the official Wine version also doesn't work, you can file
|
||||
a bugreport at the official [Wine bugtracker](http://bugs.winehq.org/).
|
||||
Feel free to mention that you also tested with Wine-Compholio, but all
|
||||
bugreport related information (logs, crashdumps, ...) should concentrate
|
||||
only on upstream wine.
|
||||
|
||||
If it turns out, that it works with upstream wine, but not with Wine-Compholio,
|
||||
then it might be a regression caused by our patches. We would like you to
|
||||
report this issue to us, so we can fix it in future versions. You can also
|
||||
report issues, when testing with upstream Wine is impossible or it crashes
|
||||
with a different error (for example much earlier).
|
||||
|
||||
When submitting a application related bug here on github, please make sure to
|
||||
include at least the following information. Generally its always a good idea
|
||||
to provide as much information as possible, since this will significantly
|
||||
increase chances to provide support and to fix it.
|
||||
|
||||
1. **Which application triggers the bug**
|
||||
* Application name and version number
|
||||
* How to obtain it (download URL + checksum if public available)
|
||||
|
||||
2. **What exactly doesn't work**
|
||||
* Log of the terminal output of the application
|
||||
* For visual issues please additionally attach a screenshot, and describe
|
||||
what it should look like
|
||||
* *Optionally:* If you already know whats going wrong, please attach
|
||||
appropriate `WINEDEBUG` logs or excerpts showing the issue.
|
||||
|
||||
3. **Details about your WINEPREFIX**
|
||||
* *Recommended:* Test it in a new wine prefix, and report if this works
|
||||
* Did you install any overrides? (for examples by using `winetricks`)
|
||||
* Did you change any settings by running `winecfg`?
|
||||
|
||||
4. **Information about your Wine-Compholio version**
|
||||
* *Recommended:* Test with regular wine, and report if this works
|
||||
* Version number (`/opt/wine-compholio/bin/wine --version`)
|
||||
* Patches in your build (`/opt/wine-compholio/bin/wine --patches`)
|
||||
* Installed optional libraries (`/opt/wine-compholio/bin/wine --check-libs`)
|
||||
|
219
debian/changelog
vendored
219
debian/changelog
vendored
@@ -1,8 +1,225 @@
|
||||
wine-compholio (1.7.25) UNRELEASED; urgency=low
|
||||
* Improve generation of README.md on patch update.
|
||||
* Added patch with stub for DwmInvalidateIconicBitmaps.
|
||||
* Added Courier Prime (OFLv1.1) as a Courier New replacement.
|
||||
* Added patch to better detect broken nVidia RandR 1.2 support.
|
||||
* Added patch to set linker version in PE header.
|
||||
* Added patch to move NtProtectVirtualMemory and NtCreateSection to separate pages.
|
||||
* Added patch to fix issues with drag image in ImageLists.
|
||||
* Added patch with stub for BCryptGetFipsAlgorithmMode.
|
||||
* Added patch to fix issues with OpenProcess on terminated processes.
|
||||
* Added patch to fix issues with msi/ITERATE_MoveFiles.
|
||||
* Added patch to avoid grouping all Wine windows together.
|
||||
* Updated patches for riched20 IText* Interface.
|
||||
* Removed patch to update gl_drawable for embedded windows (deprecated).
|
||||
* Removed patch to return empty D3D hardware flags for RGB device enumeration (accepted upstream).
|
||||
* Removed patch with stub for DwmInvalidateIconicBitmaps (accepted upstream).
|
||||
* Removed patch for SetNamedPipeHandleState implementation (accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Mon, 11 Aug 2014 16:21:22 -0600
|
||||
|
||||
wine-compholio (1.7.24) unstable; urgency=low
|
||||
* Various further improvements to the patch system.
|
||||
* Added patch to implement inet_pton.
|
||||
* Added patch to implement GetSystemTimes.
|
||||
* Added patch to implement SHCreateSessionKey.
|
||||
* Added patch to create directory available on Vista and later.
|
||||
* Added patch to fix edge cases in TOOLTIPS_GetTipText.
|
||||
* Added patch to allow special characters in pipe names.
|
||||
* Added patch with stubs for [Get|Set]SystemFileCacheSize.
|
||||
* Added patch to implement AllocateAndGetTcpExTableFromStack.
|
||||
* Added patch to support setting file disposition information.
|
||||
* Added patch to fix ConnectNamedPort return value in overlapped mode.
|
||||
* Added patch to store IOCS data in a property instead of GWLP_USERDATA.
|
||||
* Added patch to return empty D3D hardware flags for HEL device enumeration.
|
||||
* Added patch to return the appropriate connection time with SO_CONNECT_TIME.
|
||||
* Added patch to support extra large and jumbo icons.
|
||||
* Added patch to allow setting tablet / media center status via registry.
|
||||
* Added patch to use manual redirection for RunDLL_CallEntry16.
|
||||
* Added patch to set ldr.EntryPoint for main executable.
|
||||
* Added patch to fix invalid memory access in windowscodecs/PropertyBag.
|
||||
* Added patch to use a linear resampler when there a large number of dsound mixing buffers.
|
||||
* Added patch to fix comparison of punctuation characters in lstrcmp.
|
||||
* Added patch to workaround programs leaking wndproc splots.
|
||||
* Added patch to implement ITextRange, ITextFont and ITextPara.
|
||||
* Removed patch to create Vista directories (accepted upstream).
|
||||
* Removed strmbase/quartz locking fix patches (accepted upstream).
|
||||
* Removed windowscodecs/PropertyBag patch (accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 08 Aug 2014 22:06:07 -0600
|
||||
|
||||
wine-compholio (1.7.23) unstable; urgency=low
|
||||
* Rewrite of patch system to simplify maintaining large patchsets.
|
||||
* Fix failing Junction Point test.
|
||||
* Fix possible race conditions in strmbase/quartz.
|
||||
* Fix race condition between EndOfStream and Pause.
|
||||
* Fix issues with Israel Standard Time timezone.
|
||||
* Add support for Dynamic DST (daylight saving time) information.
|
||||
* Add some generic hardware in HKEY_DYN_DATA\Config Manager\Enum.
|
||||
* Return correct IMediaSeeking stream positions in quartz.
|
||||
* Make sure LICENSE files are included in the Debian packages.
|
||||
* Downgraded Arial replacement font to Liberation Sans v1.07.3.
|
||||
* Remove relative Junction Point linking for now (breaks tests).
|
||||
* Added WenQuanYi Micro Hei (GPLv3) as a Microsoft Yahei replacement.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 25 Jul 2014 21:12:42 -0600
|
||||
|
||||
wine-compholio (1.7.22) unstable; urgency=low
|
||||
* Implement passing ACLs to CreateProcess.
|
||||
* Removed several patches (accepted upstream).
|
||||
* Added NT4 support to the process ACL tests.
|
||||
* Implement RegSetKeySecurity on top of NtSetSecurityObject.
|
||||
* Updated RegSetKeySecurity patch to work with special root keys.
|
||||
* Add patch for wtsapi32.WTSEnumerateProcessesW function.
|
||||
* Fix incorrect scaling for DECIMAL values in VarDecAdd.
|
||||
* Updated main extended attributes patch to include BSD support.
|
||||
* Return NULL-terminated list of arguments in CommandLineToArgvW.
|
||||
* Updated main extended attributes patch to include additional data checks.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 11 Jul 2014 13:00:03 -0600
|
||||
|
||||
wine-compholio (1.7.21) unstable; urgency=low
|
||||
* Remove several patches (accepted upstream).
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Fri, 27 Jun 2014 23:08:48 -0600
|
||||
|
||||
wine-compholio (1.7.20) unstable; urgency=low
|
||||
* Remove several patches (accepted upstream).
|
||||
* Fix recommendation for odbc and add libgsm1.
|
||||
* Disabled gstreamer (broken with glib >= 2.32.0).
|
||||
* Updated scripts to be compatible with BSD systems.
|
||||
* Update winepulse patches to latest revision (extracted from 1.7.19).
|
||||
* Force autoreconf even when timestamp seems to indicate that it is not necessary.
|
||||
* Added patches for default security descriptor ownership and DACLs for processes.
|
||||
* Added a patch to avoid a race-condition when unloading modules while a hook is active.
|
||||
* Add patch to fix issues with Obsidium copy protection.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Sat, 14 Jun 2014 18:15:12 +0200
|
||||
|
||||
wine-compholio (1.7.19-1) unstable; urgency=low
|
||||
* Added a patch to fix return value for FSCTL_PIPE_WAIT (required for Unity3D).
|
||||
* Added a patch to stub TokenAppContainerSid in NtQueryInformationToken (required for Unity3D).
|
||||
* Added a patch to optimize the file descriptor cache by using lockfree algorithms.
|
||||
* Add additional checks in XATTR patch to ensure wineserver doesn't crash if data is corrupted.
|
||||
* Add support for extended attributes on FreeBSD systems.
|
||||
* Added a patch to fix ntdll/exception test failures on x86_64.
|
||||
* Allow to change 'strict draw ordering' at runtime.
|
||||
* Add ability to test if all dynamic libraries are installed with "wine --check-libs".
|
||||
* Added a patch to query if direct rendering is enabled via GLX extension.
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Mon, 02 Jun 2014 23:50:23 +0200
|
||||
|
||||
wine-compholio (1.7.19) unstable; urgency=low
|
||||
* Updated SIO_ADDRESS_LIST_CHANGE patches.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 06 May 2014 15:42:32 -0600
|
||||
|
||||
wine-compholio (1.7.18-1) unstable; urgency=low
|
||||
* Fix some issues on BSD systems.
|
||||
* Add additional patches to silence a few FIXMEs.
|
||||
* Rebase 02-ACL_Extended_Attributes patches.
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Tue, 13 May 2014 20:47:23 +0200
|
||||
|
||||
wine-compholio (1.7.18) unstable; urgency=low
|
||||
* Updated SetTimer patch (10 ms accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 02 May 2014 13:05:13 -0600
|
||||
|
||||
wine-compholio (1.7.17) unstable; urgency=low
|
||||
* Split Arial replacement into two patches.
|
||||
* Removed dynamic unwind patches (accepted upstream).
|
||||
* Removed linguistic casing patches (accepted upstream).
|
||||
* ACL data is now stored in binary instead of converting it to ASCII.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 18 Apr 2014 16:03:57 -0600
|
||||
|
||||
wine-compholio (1.7.16-1) unstable; urgency=low
|
||||
* Fix build failure caused by dynamic unwind functions.
|
||||
* Dropped liblcms2-dev dependency for old Ubuntu versions.
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Sat, 05 Apr 2014 03:48:25 +0200
|
||||
|
||||
wine-compholio (1.7.16) unstable; urgency=low
|
||||
* Add stub for RtlInstallFunctionTableCallback.
|
||||
* Further split out the SIO_ADDRESS_LIST_CHANGE patches.
|
||||
* Add proper implementation for dynamic unwind functions, removed stub implementation.
|
||||
* Fix lcms dependency (Wine requires lcms2 instead of lcms1), add build dependency to libsane-dev.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 04 Apr 2014 17:27:52 -0600
|
||||
|
||||
wine-compholio (1.7.15-1) unstable; urgency=low
|
||||
* Build 64 bit version of Wine.
|
||||
* First SIO_ADDRESS_LIST_CHANGE patch accepted upstream.
|
||||
* Added stub dll for DirectX Video Acceleration (dxva2.dll).
|
||||
* Update DXVA2 patches (additional implementation details, parts accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 25 Mar 2014 06:08:01 +0100
|
||||
|
||||
wine-compholio (1.7.15) unstable; urgency=low
|
||||
* Fixed build dependencies for Debian Sid.
|
||||
* Fixed free() of a const variable (Bug #1).
|
||||
* Removed get_dir_unix_fd (no longer used, fixes compiling with "-Werror").
|
||||
* Removed 'register user administrative tools shell folder' patch (accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Sun, 23 Mar 2014 12:53:32 +0100
|
||||
|
||||
wine-compholio (1.7.14) unstable; urgency=low
|
||||
* Minor updates to the ACL patches.
|
||||
* Added Liberation Sans (SIL Open Font License) as an Arial replacement.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 07 Mar 2014 13:59:11 -0700
|
||||
|
||||
wine-compholio (1.7.13-1) unstable; urgency=low
|
||||
* Fixed a typo in the configure check for extended attributes.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 21 Feb 2014 09:00:00 -0700
|
||||
|
||||
wine-compholio (1.7.13) unstable; urgency=low
|
||||
* Added support for inherited file ACLs.
|
||||
* Further separated the file ACL patches.
|
||||
* Updated linguistic casing patches to include tests.
|
||||
* Updated the patch list template to be compatible with 'git am'.
|
||||
* Moved the patching code out of the debian rules into a Makefile.
|
||||
* Removed the named pipe security access patch (accepted upstream).
|
||||
* Explicitly run configure with '--with-xattr' when building debian packages.
|
||||
* Will now fail on configure when '--with-xattr' is passed and xattr.h cannot be found.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Thu, 20 Feb 2014 18:48:03 -0700
|
||||
|
||||
wine-compholio (1.7.12-1) unstable; urgency=low
|
||||
* Fixed PulseAudio patches to apply with 'git am'.
|
||||
* Fixed PulseAudio driver configure file for upstream Wine 1.7.12.
|
||||
* Fixed PulseAudio driver pthread dependency for upstream Wine 1.7.12.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 07 Feb 2014 17:52:32 -0700
|
||||
|
||||
wine-compholio (1.7.12) unstable; urgency=low
|
||||
* Added new patches to support GetVolumePathName.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 07 Feb 2014 14:57:33 -0700
|
||||
|
||||
wine-compholio (1.7.11) unstable; urgency=low
|
||||
* Added SRWLock patch.
|
||||
* Added new patches to support TransmitFile.
|
||||
* Added new patches to support Junction Points.
|
||||
* Moved pipelight-specific patches to a separate folder.
|
||||
* Removed SRWLock patch included in upstream Wine 1.7.11.
|
||||
* Reduced SetTimer minimum limitation from 15 ms to 5 ms.
|
||||
* Added support for security access parameters for named pipes.
|
||||
* Added WINE_STRICT_DRAW_ORDERING command line environment variable.
|
||||
* Fixed a path length bug in the ACL inheritance patch (assumed DOS limitation).
|
||||
* Added some workarounds for shlwapi url functions not handling relative paths well.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 17 Jan 2014 12:27:32 -0700
|
||||
|
||||
wine-compholio (1.7.10) unstable; urgency=low
|
||||
* Removed monitor enumeration patch included in upstream Wine 1.7.10.
|
||||
* Updated SIO_ADDRESS_LIST_CHANGE patch with latest proposed version.
|
||||
* Added new patch to support linux windowlessmode (required for Qt5 browsers).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 03 Jan 2014 12:19:14 -0700
|
||||
|
||||
wine-compholio (1.7.9) unstable; urgency=low
|
||||
* Added a new patch for windowless mode for Qt5 browsers.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 27 Dec 2013 12:03:22 -0700
|
||||
|
||||
wine-compholio (1.7.8-1) unstable; urgency=low
|
||||
* Fixed several build problems.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Sat, 07 Dec 2013 10:49:03 -0700
|
||||
|
||||
wine-compholio (1.7.8) unstable; urgency=low
|
||||
* Added PulseAudio support patches.
|
||||
* Updated SIO_ADDRESS_LIST_CHANGE patches.
|
||||
* Separated out patches into logical subfolders.
|
||||
* Updated XEMBED patch to work with latest upstream Wine.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 06 Dec 2013 13:26:24 -0700
|
||||
|
||||
wine-compholio (1.7.7) unstable; urgency=low
|
||||
* Remove patches included in upstream Wine 1.7.7.
|
||||
* Rebase ACL extended attribute patches against upstream Wine 1.7.7.
|
||||
* Rebase SIO_ADDRESS_LIST_CHANGE patches against upstream Wine 1.7.7.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 22 Nov 2013 10:35:07 -0700
|
||||
* Added the ability to return the list of patches with "wine --patches".
|
||||
* Added a patch to workaround a Silverlight issue with multiple monitors.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 22 Nov 2013 14:24:53 -0700
|
||||
|
||||
wine-compholio (1.7.6-1) unstable; urgency=low
|
||||
* Work around a build problem with Wine 1.7.6.
|
||||
|
191
debian/control
vendored
191
debian/control
vendored
@@ -1,31 +1,25 @@
|
||||
Source: wine-compholio
|
||||
Section: otherosfs
|
||||
Priority: optional
|
||||
Maintainer: Erich E. Hoover <ehoover@mines.edu>
|
||||
Maintainer: Erich E. Hoover <erich.e.hoover@gmail.com>
|
||||
XSBC-Original-Maintainer: Scott Ritchie <scottritchie@ubuntu.com>
|
||||
Build-Depends: autotools-dev,
|
||||
autoconf,
|
||||
bind9-host,
|
||||
bison,
|
||||
bsdmainutils,
|
||||
coreutils,
|
||||
debhelper (>= 7),
|
||||
docbook-to-man,
|
||||
docbook-utils,
|
||||
docbook-xsl,
|
||||
flex,
|
||||
fontforge,
|
||||
gawk,
|
||||
gcc-4.5 | gcc-4.7 | ubuntu-desktop (<< 1.207),
|
||||
gcc-4.5-multilib [amd64] | ubuntu-desktop (<< 1.207) [amd64],
|
||||
gcc-multilib [amd64],
|
||||
gettext,
|
||||
ia32-libs [amd64],
|
||||
ia32-libs-dev [amd64] | ubuntu-desktop (<< 1.267) [amd64],
|
||||
ia32-libs-multiarch [amd64] | ubuntu-desktop (<< 1.267) [amd64],
|
||||
lib32asound2-dev [amd64],
|
||||
lib32ncurses5-dev [amd64],
|
||||
lib32z1-dev [amd64],
|
||||
gzip,
|
||||
libacl1-dev,
|
||||
libasound2-dev [i386 lpia],
|
||||
libc6-dev-i386 [amd64],
|
||||
libasound2-dev,
|
||||
libcapi20-dev,
|
||||
libcups2-dev,
|
||||
libdbus-1-dev,
|
||||
@@ -33,27 +27,26 @@ Build-Depends: autotools-dev,
|
||||
libesd0-dev,
|
||||
libfontconfig1-dev | libfontconfig-dev,
|
||||
libfreetype6-dev,
|
||||
libgif-dev | libungif4-dev,
|
||||
libgl1-mesa-dev | nvidia-glx-dev | fglrx-driver-dev | libgl-dev,
|
||||
libglu1-mesa-dev | libglu-dev,
|
||||
libgnutls-dev,
|
||||
libgphoto2-dev | libgphoto2-6-dev | libgphoto2-2-dev (>= 2.4.6),
|
||||
libgphoto2port-dev | ubuntu-desktop (>= 1.245) | debian-edu-config,
|
||||
libgsm1-dev,
|
||||
libgstreamer-plugins-base0.10-dev,
|
||||
libgstreamer0.10-dev,
|
||||
libice-dev,
|
||||
libjpeg-dev,
|
||||
liblcms1-dev, liblcms-dev,
|
||||
liblcms2-dev | ubuntu-desktop (<< 1.267),
|
||||
libldap2-dev, libldap-dev,
|
||||
libmpg123-dev,
|
||||
libncurses5-dev [i386] | libncurses-dev [i386],
|
||||
libncurses5-dev | libncurses-dev,
|
||||
libopenal-dev (>= 1:1.12) | ubuntu-desktop (<< 1.207),
|
||||
libpcap-dev,
|
||||
libpng12-dev,
|
||||
libpulse-dev,
|
||||
libsane-dev,
|
||||
libssl-dev,
|
||||
libstdc++6-4.5-dev | libstdc++-dev,
|
||||
libtiff4-dev,
|
||||
libv4l-dev [i386],
|
||||
libtiff5-dev | libtiff4-dev | libtiff-dev,
|
||||
libv4l-dev,
|
||||
libx11-dev,
|
||||
libxcomposite-dev,
|
||||
libxcursor-dev,
|
||||
@@ -68,30 +61,28 @@ Build-Depends: autotools-dev,
|
||||
libxxf86vm-dev,
|
||||
linux-kernel-headers,
|
||||
linux-libc-dev,
|
||||
prelink [i386 amd64],
|
||||
prelink,
|
||||
quilt (>= 0.46-7~),
|
||||
sharutils,
|
||||
unixodbc-dev,
|
||||
x11proto-xinerama-dev
|
||||
Standards-Version: 3.9.2
|
||||
|
||||
Package: wine-compholio
|
||||
Package: wine-compholio-i386
|
||||
Architecture: i386
|
||||
Multi-Arch: foreign
|
||||
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends},
|
||||
libasound2-plugins,
|
||||
libncurses5
|
||||
Recommends: gettext,
|
||||
libcapi20-3,
|
||||
Recommends: libcapi20-3,
|
||||
libcups2,
|
||||
libdbus-1-3,
|
||||
libfontconfig1 | libfontconfig,
|
||||
libfreetype6,
|
||||
libgif4,
|
||||
libgnutls26,
|
||||
libgphoto2-6 | libgphoto2-2 (>= 2.4.6),
|
||||
libgphoto2-port0 (>= 2.4.6),
|
||||
libgphoto2-port10 | libgphoto2-port0 (>= 2.4.6),
|
||||
libjpeg8,
|
||||
libopenal1 (>= 1:1.12),
|
||||
libosmesa6,
|
||||
@@ -99,7 +90,7 @@ Recommends: gettext,
|
||||
libpulse0,
|
||||
libsane,
|
||||
libssl1.0.0,
|
||||
libtiff4,
|
||||
libtiff5 | libtiff4,
|
||||
libv4l-0,
|
||||
libxcomposite1,
|
||||
libxcursor1,
|
||||
@@ -110,8 +101,96 @@ Recommends: gettext,
|
||||
libxslt1.1,
|
||||
libxt6,
|
||||
libxxf86vm1,
|
||||
unixodbc
|
||||
Provides: wine-compholio
|
||||
libodbc1,
|
||||
libgsm1
|
||||
Section: otherosfs
|
||||
Priority: optional
|
||||
Replaces: wine-compholio (<< 1.7.15-1~)
|
||||
Breaks: wine-compholio (<< 1.7.15-1~)
|
||||
Description: The Compholio Edition is a special build of the popular Wine software
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
This package provides support for loading 32-bit x86 Windows applications
|
||||
.
|
||||
This package is based on a recent Wine beta. While many more applications will
|
||||
work, there may be some loss of functionality compared with the stable release
|
||||
provided by the regular wine package.
|
||||
|
||||
Package: wine-compholio-amd64
|
||||
Architecture: amd64
|
||||
Multi-Arch: foreign
|
||||
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends},
|
||||
libasound2-plugins,
|
||||
libncurses5
|
||||
Recommends: libcapi20-3,
|
||||
libcups2,
|
||||
libdbus-1-3,
|
||||
libfontconfig1 | libfontconfig,
|
||||
libfreetype6,
|
||||
libgnutls26,
|
||||
libgphoto2-6 | libgphoto2-2 (>= 2.4.6),
|
||||
libgphoto2-port10 | libgphoto2-port0 (>= 2.4.6),
|
||||
libjpeg8,
|
||||
libopenal1 (>= 1:1.12),
|
||||
libosmesa6,
|
||||
libpng12-0,
|
||||
libpulse0,
|
||||
libsane,
|
||||
libssl1.0.0,
|
||||
libtiff5 | libtiff4,
|
||||
libv4l-0,
|
||||
libxcomposite1,
|
||||
libxcursor1,
|
||||
libxi6,
|
||||
libxinerama1,
|
||||
libxrandr2,
|
||||
libxrender1,
|
||||
libxslt1.1,
|
||||
libxt6,
|
||||
libxxf86vm1,
|
||||
libodbc1,
|
||||
libgsm1
|
||||
Section: otherosfs
|
||||
Priority: optional
|
||||
Replaces: wine-compholio (<< 1.7.15-1~)
|
||||
Breaks: wine-compholio (<< 1.7.15-1~)
|
||||
Description: The Compholio Edition is a special build of the popular Wine software
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
This package provides support for loading 64-bit x86 Windows applications
|
||||
.
|
||||
This package is based on a recent Wine beta. While many more applications will
|
||||
work, there may be some loss of functionality compared with the stable release
|
||||
provided by the regular wine package.
|
||||
|
||||
Package: wine-compholio
|
||||
Architecture: i386 amd64
|
||||
Multi-Arch: foreign
|
||||
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
|
||||
Depends: ${misc:Depends}, ${shlibs:Depends},
|
||||
wine-compholio-i386 (= ${binary:Version}) [i386 amd64],
|
||||
wine-compholio-amd64 (= ${binary:Version}) [amd64],
|
||||
Section: otherosfs
|
||||
Priority: optional
|
||||
Description: The Compholio Edition is a special build of the popular Wine software
|
||||
@@ -134,3 +213,57 @@ Description: The Compholio Edition is a special build of the popular Wine softwa
|
||||
This package is based on a recent Wine beta. While many more applications will
|
||||
work, there may be some loss of functionality compared with the stable release
|
||||
provided by the regular wine package.
|
||||
|
||||
Package: wine-compholio-dev
|
||||
Architecture: i386 amd64
|
||||
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
|
||||
Depends: libc6-dev,
|
||||
${shlibs:Depends},
|
||||
wine-compholio-i386 (= ${binary:Version}) [i386 amd64],
|
||||
wine-compholio-amd64 (= ${binary:Version}) [amd64],
|
||||
Section: libdevel
|
||||
Priority: optional
|
||||
Replaces: wine-compholio (<< 1.7.15-1~)
|
||||
Breaks: wine-compholio (<< 1.7.15-1~)
|
||||
Description: The Compholio Edition is a special build of the popular Wine software
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
This package consists of the development files needed to compile programs
|
||||
using wine's free version of the Microsoft Windows API.
|
||||
|
||||
Package: wine-compholio-dbg
|
||||
Architecture: i386 amd64
|
||||
Multi-Arch: same
|
||||
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends},
|
||||
wine-compholio-i386 (= ${binary:Version}) [i386 amd64],
|
||||
wine-compholio-amd64 (= ${binary:Version}) [amd64],
|
||||
Section: debug
|
||||
Priority: optional
|
||||
Replaces: wine-compholio (<< 1.7.15-1~)
|
||||
Breaks: wine-compholio (<< 1.7.15-1~)
|
||||
Description: The Compholio Edition is a special build of the popular Wine software
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
This package includes debugging symbols useful for reporting crashes and other
|
||||
failures.
|
||||
|
189
debian/rules
vendored
189
debian/rules
vendored
@@ -1,36 +1,4 @@
|
||||
#!/usr/bin/make -f
|
||||
# -*- makefile -*-
|
||||
# Sample debian/rules that uses debhelper.
|
||||
# This file was originally written by Joey Hess and Craig Small.
|
||||
# As a special exception, when this file is copied by dh-make into a
|
||||
# dh-make output file, you may use that output file without restriction.
|
||||
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
#export DH_VERBOSE=1
|
||||
|
||||
|
||||
# These are used for cross-compiling and for saving the configure script
|
||||
# from having to guess our platform (since we know it already)
|
||||
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
||||
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
||||
ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
|
||||
CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
|
||||
else
|
||||
CROSS= --build $(DEB_BUILD_GNU_TYPE)
|
||||
endif
|
||||
|
||||
|
||||
# Apparently it's important to have an empty LDFLAGS, see:
|
||||
# http://www.winehq.org/pipermail/wine-bugs/2007-July/062505.html
|
||||
# For Wine 1.1.44 it's also important not to compile at -O0
|
||||
LDFLAGS =
|
||||
CFLAGS = -Wall -g -O2
|
||||
|
||||
# On amd64 the 32-bit libraries are in lib32 instead of lib
|
||||
ifeq ($(DEB_BUILD_ARCH), amd64)
|
||||
CONFFLAGS += --libdir=\$${prefix}/lib32
|
||||
endif
|
||||
|
||||
# Use gcc-4.5 if it's available
|
||||
ifeq ($(shell which gcc-4.5),)
|
||||
@@ -39,113 +7,66 @@ else
|
||||
CC = gcc-4.5
|
||||
endif
|
||||
|
||||
# Support passing of parallel=<n> in build options
|
||||
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
MAKEFLAGS += -j$(NUMJOBS)
|
||||
endif
|
||||
|
||||
configure:
|
||||
# Unpack the original Wine version
|
||||
tar -xjvf wine-*.tar.bz2
|
||||
mv wine-*/* .
|
||||
rm wine-*/.* || true
|
||||
rm wine-*.tar.bz2
|
||||
rmdir wine-*
|
||||
|
||||
config.status: configure
|
||||
dh_testdir
|
||||
# Add here commands to configure the package.
|
||||
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
|
||||
cp -f /usr/share/misc/config.sub config.sub
|
||||
endif
|
||||
ifneq "$(wildcard /usr/share/misc/config.guess)" ""
|
||||
cp -f /usr/share/misc/config.guess config.guess
|
||||
endif
|
||||
|
||||
# Apply our patches to Wine
|
||||
for FILE in `ls $(CURDIR)/patches`; do \
|
||||
patch -N -p0 --strip=1 < $(CURDIR)/patches/$$FILE || exit 1; \
|
||||
done
|
||||
|
||||
# Update the configure script
|
||||
autoreconf
|
||||
|
||||
# Configure
|
||||
CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/opt/wine-compholio --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info $(CONFFLAGS)
|
||||
%:
|
||||
dh $@ --parallel
|
||||
|
||||
|
||||
override_dh_auto_configure:
|
||||
|
||||
build: build-stamp
|
||||
# Apply our patches, reconfigure, and update the wineserver protocol request data
|
||||
make -C "$(CURDIR)/patches/" DESTDIR="$(CURDIR)" install
|
||||
|
||||
build-stamp: config.status
|
||||
dh_testdir
|
||||
|
||||
# Add here commands to compile the package.
|
||||
$(MAKE) depend
|
||||
$(MAKE) $(MAKEFLAGS)
|
||||
#docbook-to-man debian/wine-compholio.sgml > wine-compholio.1
|
||||
|
||||
touch $@
|
||||
|
||||
clean:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
rm -f build-stamp
|
||||
|
||||
# Add here commands to clean up after the build process.
|
||||
[ ! -f Makefile ] || $(MAKE) distclean
|
||||
rm -f config.sub config.guess
|
||||
|
||||
dh_clean
|
||||
|
||||
install: build
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_prep
|
||||
dh_installdirs
|
||||
|
||||
# Add here commands to install the package into debian/wine-compholio.
|
||||
$(MAKE) DESTDIR=$(CURDIR)/debian/wine-compholio install
|
||||
|
||||
# Build architecture-independent files here.
|
||||
binary-indep: build install
|
||||
# We have nothing to do by default.
|
||||
|
||||
# Build architecture-dependent files here.
|
||||
binary-arch: build install
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
# dh_installchangelogs ChangeLog
|
||||
dh_installdocs
|
||||
dh_installexamples
|
||||
# dh_install
|
||||
# dh_installmenu
|
||||
# dh_installdebconf
|
||||
# dh_installlogrotate
|
||||
# dh_installemacsen
|
||||
# dh_installpam
|
||||
# dh_installmime
|
||||
# dh_python
|
||||
# dh_installinit
|
||||
# dh_installcron
|
||||
# dh_installinfo
|
||||
dh_installman
|
||||
dh_link
|
||||
dh_strip
|
||||
dh_compress
|
||||
dh_fixperms
|
||||
# dh_perl
|
||||
dh_makeshlibs
|
||||
dh_installdeb
|
||||
# Run configure
|
||||
ifeq ($(DEB_BUILD_ARCH), amd64)
|
||||
dh_gencontrol -- -V"shlibs:Depends= ia32-libs (>= 1.6), lib32asound2 (>> 1.0.14), libc6-i386 (>= 2.6-1), lib32nss-mdns (>= 0.10-3)"
|
||||
./configure --prefix=/opt/wine-compholio \
|
||||
--libdir=\$${prefix}/lib64 \
|
||||
--mandir=\$${prefix}/share/man \
|
||||
--infodir=\$${prefix}/share/info \
|
||||
--enable-win64 \
|
||||
--without-gstreamer \
|
||||
--with-xattr \
|
||||
$(CONFFLAGS)
|
||||
else
|
||||
LD_LIBRARY_PATH="$(CURDIR)/debian/wine-compholio/opt/wine-compholio/lib:${LD_LIBRARY_PATH}" dh_shlibdeps -L wine-compholio -l debian/wine-compholio/opt/wine-compholio/lib
|
||||
dh_gencontrol
|
||||
./configure --prefix=/opt/wine-compholio \
|
||||
--libdir=\$${prefix}/lib \
|
||||
--mandir=\$${prefix}/share/man \
|
||||
--infodir=\$${prefix}/share/info \
|
||||
--without-gstreamer \
|
||||
--with-xattr \
|
||||
$(CONFFLAGS)
|
||||
endif
|
||||
dh_md5sums
|
||||
dh_builddeb -- -Z lzma
|
||||
|
||||
binary: binary-indep binary-arch
|
||||
.PHONY: build clean binary-indep binary-arch binary install
|
||||
|
||||
override_dh_auto_test:
|
||||
# Wine's test suite does not pass on build daemons, skip it for now
|
||||
|
||||
|
||||
override_dh_installdocs:
|
||||
|
||||
# Create copies of license files
|
||||
cp "$(CURDIR)/LICENSE" "$(CURDIR)/LICENSE.wine"
|
||||
cp "$(CURDIR)/LICENSE.md" "$(CURDIR)/LICENSE.wine-compholio"
|
||||
|
||||
dh_installdocs --link-doc=wine-compholio
|
||||
|
||||
|
||||
override_dh_install:
|
||||
dh_install --fail-missing
|
||||
|
||||
# These files will end up in multiple packages otherwise
|
||||
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine
|
||||
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine-preloader
|
||||
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine64
|
||||
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine64-preloader
|
||||
|
||||
|
||||
override_dh_strip:
|
||||
dh_strip -Xwine-pthread -Xwine-kthread --dbg-package=wine-compholio-dbg
|
||||
|
||||
|
||||
override_dh_shlibdeps:
|
||||
ifeq ($(DEB_HOST_ARCH),amd64)
|
||||
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-compholio/lib64/
|
||||
else
|
||||
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-compholio/lib/
|
||||
endif
|
||||
|
152
debian/tools/DEVELOPER.md.in
vendored
Normal file
152
debian/tools/DEVELOPER.md.in
vendored
Normal file
@@ -0,0 +1,152 @@
|
||||
Developers and maintainers guide
|
||||
================================
|
||||
|
||||
This document will provide some information targeted at developers, who
|
||||
either want to build/package Wine-Compholio for their distribution, but also
|
||||
for developers who would like to contribute their patches to Wine-Compholio,
|
||||
to get them included in future releases.
|
||||
|
||||
|
||||
|
||||
Compiling Wine-Compholio
|
||||
========================
|
||||
|
||||
**Warning:** Please note that starting with Wine-Compholio 1.7.23 it is
|
||||
deprecated to manually apply patches without using the Makefile. To avoid
|
||||
typical pitfalls for package maintainers (like trying to use the patch
|
||||
commandline utility for binary patches or not updating the patchlist) it is
|
||||
highly recommended to use the Makefile in order to apply all patches. This
|
||||
ensures that the the correct patch utility is used, that the list of patches
|
||||
is updated appropriately, and so on. Please note that it is still possible
|
||||
to exclude patches if desired, take a look at the end of this document for
|
||||
more details.
|
||||
|
||||
Instructions
|
||||
------------
|
||||
|
||||
The following instructions (based on the [Gentoo
|
||||
Wiki](https://wiki.gentoo.org/wiki/Netflix/Pipelight#Compiling_manually))
|
||||
will give a short overview how to compile Wine-Compholio, but of course not
|
||||
explain all details. Make sure to install all required Wine dependencies
|
||||
before proceeding.
|
||||
|
||||
As the first step please grab the latest Wine source:
|
||||
```bash
|
||||
wget http://prdownloads.sourceforge.net/wine/wine-{version}.tar.bz2
|
||||
wget https://github.com/compholio/wine-compholio-daily/archive/v{version}.tar.gz
|
||||
```
|
||||
|
||||
Extract the archives:
|
||||
```bash
|
||||
tar xvjf wine-1*.tar.bz2
|
||||
cd wine-1*
|
||||
tar xvzf ../v{version}.tar.gz --strip-components 1
|
||||
```
|
||||
|
||||
And apply the patches:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install
|
||||
```
|
||||
|
||||
Afterwards run configure (you can also specify a prefix if you don't want to install
|
||||
Wine-Compholio system-wide):
|
||||
```bash
|
||||
./configure --with-xattr
|
||||
```
|
||||
|
||||
Before you continue you should make sure that `./configure` doesn't show any
|
||||
warnings (look at the end of the output). If there are any warnings, this
|
||||
most likely means that you're missing some important header files. Install
|
||||
them and repeat the `./configure` step until all problems are fixed.
|
||||
|
||||
Afterwards compile it (and grab a cup of coffee):
|
||||
```bash
|
||||
make
|
||||
```
|
||||
|
||||
And install it (you only need sudo for a system-wide installation):
|
||||
```bash
|
||||
sudo make install
|
||||
```
|
||||
|
||||
Excluding patches
|
||||
-----------------
|
||||
|
||||
It is also possible to apply only a subset of the patches, for example if
|
||||
you're compiling for a distribution where PulseAudio is not installed, or
|
||||
if you just don't like a specific patchset. Please note that some patchsets
|
||||
depend on each other, and requesting an impossible situation might result
|
||||
in a failure to apply all patches.
|
||||
|
||||
Lets assume you want to exclude the patchset in directory `DIRNAME`, then
|
||||
just invoke the Makefile like this:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install -W DIRNAME.ok
|
||||
```
|
||||
|
||||
Using the same method its also possible to exclude multiple patchsets. If you
|
||||
want to exclude a very large number of patches, it is easier to do specify
|
||||
a list of patches which should be included instead. To apply for example
|
||||
only the patchsets in directory `DIRNAME1` and `DIRNAME2`, you can use:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) PATCHLIST="DIRNAME1.ok DIRNAME2.ok" install
|
||||
```
|
||||
|
||||
|
||||
Contributing to Wine-Compholio
|
||||
==============================
|
||||
|
||||
Please note that Wine-Compholio is not just an arbitrary collection of Wine
|
||||
patches. We see Wine-Compholio as a **testing version** in preparation for
|
||||
patches to be submitted to upstream Wine. This implies that all patches should
|
||||
at least have a minimum standard quality. Unlike some other PPAs/AURs which
|
||||
provide heavily patched Wine versions, we will not accept hacks for very
|
||||
specific games. Such hacks often break compatibility with other applications,
|
||||
which means we probably don't want to include them, sorry.
|
||||
|
||||
If you think your patches are indeed a proper implementation, then feel free
|
||||
to contribute them. Please note that to allow possible later inclusion
|
||||
into upstream Wine, we will require you to pay attention to the same
|
||||
[rules](http://wiki.winehq.org/SubmittingPatches). Please be patient and
|
||||
give us up to about a week to review them - we're a very small team, so
|
||||
it might take some time, and we want to make sure that the implementation
|
||||
doesn't contain any critical errors, which could cause regressions. If you
|
||||
want to contribute huge sets of patches, we would really like you to *stay
|
||||
contributing* in the future. Even if we accepted your patches, this doesn't
|
||||
necessary mean we understand all of it, and if you cannot or don't want
|
||||
to maintain them (especially in case of errors, or difficult rebasing),
|
||||
we will probably end up removing them again.
|
||||
|
||||
You can also suggest adding patches written by other people - in this case
|
||||
your request should include who wrote the patch. Anonymous patches which
|
||||
don't include the author information aren't welcome, similar to the rules
|
||||
for upstream Wine.
|
||||
|
||||
|
||||
Attribution guidelines
|
||||
----------------------
|
||||
|
||||
The Wine "Compholio" Edition repository expects all patches to conform to
|
||||
Wine's (undocumented) attribution guidelines. There are a variety of ways
|
||||
to attribute patches, but they all involve an additional line to the patch
|
||||
subject:
|
||||
|
||||
```
|
||||
commit 0000000000000000000000000000000000000000
|
||||
Author: Example Author <example.email@email-provider.com>
|
||||
Date: Sat Jul 26 12:31:50 2014 -0600
|
||||
|
||||
Name of patch.
|
||||
|
||||
TYPE-OF-ATTRIBUTION.
|
||||
```
|
||||
|
||||
TYPE-OF-ATTRIBUTION can be any of the following:
|
||||
|
||||
`Found/Spotted by FINDER.`: The resolved issue was found by FINDER, they
|
||||
should receive appropriate credit for finding the problem - even though
|
||||
their patch was not used in the final implementation.
|
||||
|
||||
`Based on patch by AUTHOR.`: The patch created by AUTHOR was a starting point
|
||||
for the patch, some modifications were made to their patch - but they should
|
||||
receive credit since the original implementation was theirs.
|
24
debian/tools/Makefile.in
vendored
Normal file
24
debian/tools/Makefile.in
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
#
|
||||
# This file is automatically generated, DO NOT EDIT!
|
||||
#
|
||||
|
||||
CURDIR ?= ${{.CURDIR}}
|
||||
PATCH := $(CURDIR)/../debian/tools/gitapply.sh
|
||||
APPLY := (cd $(DESTDIR) && $(PATCH))
|
||||
APPLY_FILE = @echo "Applying $(1)"; $(APPLY) < $(CURDIR)/$(1)
|
||||
|
||||
PATCHLIST := \
|
||||
{patchlist}
|
||||
|
||||
.PHONY: install
|
||||
install: $(PATCHLIST)
|
||||
cat *.ok | sort | $(CURDIR)/../debian/tools/patchlist.sh | $(APPLY)
|
||||
cd $(DESTDIR) && autoreconf -f
|
||||
cd $(DESTDIR) && ./tools/make_requests
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -f *.ok
|
||||
|
||||
.NOTPARALLEL:
|
||||
|
325
debian/tools/README.md.in
vendored
Normal file
325
debian/tools/README.md.in
vendored
Normal file
@@ -0,0 +1,325 @@
|
||||
What is Wine-Compholio?
|
||||
=======================
|
||||
|
||||
The **Wine "Compholio" Edition** is a special patched version of Wine that
|
||||
includes both patches written by our team directly and specific patches by
|
||||
third party developers that we consider good enough for inclusion. This can
|
||||
be seen as a testing version in preparation for patches to be submitted
|
||||
to upstream Wine - don't be surprised if you encounter additional bugs,
|
||||
which are not present in regular wine, and always report such issues to us
|
||||
(via github), so we can improve our fixes even further. Thanks!
|
||||
|
||||
|
||||
Included bugfixes and improvements
|
||||
----------------------------------
|
||||
|
||||
{fixes}
|
||||
|
||||
|
||||
How to install Wine-Compholio
|
||||
=============================
|
||||
|
||||
Ready-to-use packages for Wine-Compholio are available for a variety
|
||||
of different Linux distributions directly for download. Just follow the
|
||||
instructions below to install it (and all required dependencies). After the
|
||||
installation, please take a look at the next section for instructions how
|
||||
to use it in order to run your desired application.
|
||||
|
||||
**Important:** If you already have installed 'pipelight' on your system, there
|
||||
is a good chance that you already have Wine-Compholio. Take a look at the
|
||||
next section on how to find out if this is the case.
|
||||
|
||||
If your distribution is not listed below, feel free to add a feature request -
|
||||
if the demand is high enough we might consider packaging it for additional
|
||||
distributions.
|
||||
|
||||
|
||||
 Ubuntu / Linux Mint
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Please run the following commands from a terminal, one line after each other.
|
||||
```bash
|
||||
sudo add-apt-repository ppa:pipelight/stable
|
||||
sudo apt-get update
|
||||
sudo apt-get install --install-recommends wine-compholio
|
||||
```
|
||||
|
||||
 Arch Linux
|
||||
---------------------------------------------------------------------
|
||||
|
||||
As a first step you have to import the key for our repository, and set the
|
||||
trust level to trusted:
|
||||
```bash
|
||||
sudo pacman-key -r E49CC0415DC2D5CA
|
||||
sudo pacman-key --lsign-key E49CC0415DC2D5CA
|
||||
```
|
||||
|
||||
Afterwards you have to add the following lines to `/etc/pacman.conf`:
|
||||
```
|
||||
[compholio]
|
||||
Server = http://cdn.fds-team.de/stable/arch/$arch
|
||||
```
|
||||
|
||||
Now you can install Wine-Compholio directly using `pacman`:
|
||||
```bash
|
||||
sudo pacman -Syu wine-compholio
|
||||
```
|
||||
|
||||
 Debian Jessie/Sid
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
*(Instructions for Debian Wheezy can be found below)*
|
||||
|
||||
In order to install i386 packages on a 64-bit system, you have to run the
|
||||
following command as a first step:
|
||||
```bash
|
||||
sudo dpkg --add-architecture i386
|
||||
```
|
||||
|
||||
Afterwards import the key for our repository:
|
||||
```bash
|
||||
wget http://repos.fds-team.de/Release.key
|
||||
sudo apt-key add Release.key
|
||||
```
|
||||
|
||||
And add our repository at the end of your `/etc/apt/sources.list` file:
|
||||
```
|
||||
# For Debian Jessie add the following line:
|
||||
deb http://cdn.fds-team.de/stable/debian/ jessie main
|
||||
|
||||
# For Debian Sid this one:
|
||||
deb http://cdn.fds-team.de/stable/debian/ sid main
|
||||
```
|
||||
|
||||
Afterwards update the package cache and install it:
|
||||
```bash
|
||||
sudo apt-get update
|
||||
sudo apt-get install wine-compholio
|
||||
```
|
||||
|
||||
|
||||
 Debian Wheezy
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
In order to install i386 packages on a 64-bit system, you have to run the
|
||||
following command as a first step:
|
||||
```bash
|
||||
sudo dpkg --add-architecture i386
|
||||
```
|
||||
|
||||
Afterwards import the key for our repository:
|
||||
```bash
|
||||
wget http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/Debian_7.0/Release.key
|
||||
sudo apt-key add Release.key
|
||||
```
|
||||
|
||||
And add our repository at the end of your `/etc/apt/sources.list` file:
|
||||
```
|
||||
# For Debian Wheezy add the following line:
|
||||
deb http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/Debian_7.0/ ./
|
||||
```
|
||||
|
||||
Afterwards update the package cache and install it:
|
||||
```bash
|
||||
sudo apt-get update
|
||||
sudo apt-get install wine-compholio
|
||||
```
|
||||
|
||||
|
||||
 OpenSUSE
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
All the following steps have to be executed as root user. As a first step
|
||||
you have to add the repository - this step depends on the openSUSE version
|
||||
you're using.
|
||||
|
||||
| openSUSE version | Path component |
|
||||
| ------------------- | ----------------------- |
|
||||
| openSUSE 12.2 | `/openSUSE_12.2/` |
|
||||
| openSUSE 12.3 | `/openSUSE_12.3/` |
|
||||
| openSUSE 13.1 | `/openSUSE_13.1/` |
|
||||
| openSUSE Factory | `/openSUSE_Factory/` |
|
||||
| openSUSE Tumbleweed | `/openSUSE_Tumbleweed/` |
|
||||
|
||||
The following commandline is an example for openSUSE 13.1, for a different
|
||||
version just replace the path component according to the table above:
|
||||
```bash
|
||||
zypper ar --refresh http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/openSUSE_13.1/home:DarkPlayer:Pipelight.repo
|
||||
```
|
||||
|
||||
Afterwards just run the following commands to install it:
|
||||
```bash
|
||||
zypper ref
|
||||
zypper install wine-compholio
|
||||
```
|
||||
|
||||
|
||||
 Fedora
|
||||
-------------------------------------------------------------------
|
||||
|
||||
**Warning:** In contrary to other distributions, its not possible to have both
|
||||
a regular wine version and Wine-Compholio installed at the same time - using
|
||||
the instructions below will replace your regular version. Moreover it will
|
||||
be installed to `/usr/bin/wine` in contrary to `/opt/wine-compholio/bin/wine`.
|
||||
|
||||
As a first step you have to add the repository - this step depends on the
|
||||
Fedora version you're using.
|
||||
|
||||
| Fedora version | Patch component |
|
||||
| --------------- | --------------- |
|
||||
| Fedora 18 | `/Fedora_18/` |
|
||||
| Fedora 19 | `/Fedora_19/` |
|
||||
| Fedora 20 | `/Fedora_20/` |
|
||||
|
||||
The following commandline is an example for Fedora 19, for a different version
|
||||
just replace the path component according to the table above:
|
||||
```bash
|
||||
sudo wget http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/Fedora_19/home:DarkPlayer:Pipelight.repo -O /etc/yum.repos.d/pipelight.repo
|
||||
```
|
||||
|
||||
Afterwards run the following command to install the package:
|
||||
```bash
|
||||
sudo yum install wine-compholio
|
||||
```
|
||||
|
||||
Please note that you might run into trouble if the official Fedora package
|
||||
(without compholio patches) is newer than the one from the repository above,
|
||||
so if something doesn't work, always make sure that you have installed
|
||||
our version. To do that just run:
|
||||
```bash
|
||||
/usr/bin/wine --patches
|
||||
```
|
||||
|
||||
When you're using Wine-Compholio this will show to a list of all patches
|
||||
included, for an unpatched version this command will fail.
|
||||
|
||||
|
||||
 Mageia 4
|
||||
---------------------------------------------------------------------
|
||||
|
||||
As a first step please add the key for our repository
|
||||
```bash
|
||||
wget http://repos.fds-team.de/Release.key
|
||||
rpm --import Release.key
|
||||
```
|
||||
|
||||
If you're using a 32-bit version of Mageia just add the repository
|
||||
for 32-bit packages:
|
||||
```bash
|
||||
sudo urpmi.addmedia "Compholio 32-bit" http://cdn.fds-team.de/stable/mageia/4/i586/
|
||||
```
|
||||
|
||||
For a 64-bit version of Mageia you'll need both the 32-bit and the
|
||||
64-bit repository:
|
||||
```bash
|
||||
sudo urpmi.addmedia "Compholio 32-bit" http://cdn.fds-team.de/stable/mageia/4/i586/
|
||||
sudo urpmi.addmedia "Compholio 64-bit" http://cdn.fds-team.de/stable/mageia/4/x86_64/
|
||||
```
|
||||
|
||||
Afterwards run the following commands to install the package:
|
||||
```bash
|
||||
sudo urpmi.update -a
|
||||
sudo urpmi wine-compholio
|
||||
```
|
||||
|
||||
Using Wine-Compholio
|
||||
====================
|
||||
|
||||
Since we don't want to duplicate a lot of information here, we recommend
|
||||
to take a look at the [official Wine FAQ](http://wiki.winehq.org/FAQ) for
|
||||
general information about how to use Wine. The following part will mainly
|
||||
concentrate on the differences between wine and Wine-Compholio.
|
||||
|
||||
|
||||
Running Wine-Compholio
|
||||
----------------------
|
||||
|
||||
**Using multiple Wine versions:** Unless you specify a special `WINEPREFIX`
|
||||
environment variable, Wine-Compholio will use the same wineprefix `~/.wine`
|
||||
(in your home directory) like regular wine. This allows you to use your
|
||||
already installed programs directly, without much effort or reinstalling
|
||||
them. Often you have both regular wine and Wine-Compholio installed at the
|
||||
same time, which is *absolutely no problem* - by typing in either `wine`
|
||||
(=regular wine) or `/opt/wine-compholio/bin/wine` you can decide, which
|
||||
wine version you want to run. You can switch between versions as often as
|
||||
you like - just make sure that all Windows programs have terminated before
|
||||
starting them with a different version.
|
||||
|
||||
To run Wine-Compholio always type `/opt/wine-compholio/bin/wine`, for example:
|
||||
```bash
|
||||
cd ~/.wine/drive_c/<your path>/
|
||||
/opt/wine-compholio/bin/wine game.exe
|
||||
```
|
||||
|
||||
You also have to add `/opt/wine-compholio/bin/` when running other wine
|
||||
related programs, here are some additional example:
|
||||
```bash
|
||||
# Initialize the wine prefix
|
||||
/opt/wine-compholio/bin/wineboot
|
||||
|
||||
# Open the wine configuration
|
||||
/opt/wine-compholio/bin/winecfg
|
||||
|
||||
# Run winepath to convert paths
|
||||
/opt/wine-compholio/bin/winepath --unix 'c:\Windows'
|
||||
|
||||
# Kill the running wineserver instance
|
||||
/opt/wine-compholio/bin/wineserver -k
|
||||
|
||||
...
|
||||
```
|
||||
|
||||
If you're an experienced user, and always want to use Wine-Compholio, you
|
||||
can also add `/opt/wine-compholio/bin` to your bash profile. We will not
|
||||
go into detail here, because such a setup has the big disadvantage, that
|
||||
it hides which version you're using - which is very important for getting
|
||||
support or reporting bugs.
|
||||
|
||||
|
||||
Submitting bugs
|
||||
---------------
|
||||
|
||||
**Warning: Do not submit bug reports at bugs.winehq.org when using this
|
||||
version!**
|
||||
|
||||
If you encounter any issues, the first thing you should do is to try it with
|
||||
regular wine. We're only a very small developer team, and although we would
|
||||
like to do that, we probably cannot really solve all your Wine bugs. When
|
||||
it turns out that the official Wine version also doesn't work, you can file
|
||||
a bugreport at the official [Wine bugtracker](http://bugs.winehq.org/).
|
||||
Feel free to mention that you also tested with Wine-Compholio, but all
|
||||
bugreport related information (logs, crashdumps, ...) should concentrate
|
||||
only on upstream wine.
|
||||
|
||||
If it turns out, that it works with upstream wine, but not with Wine-Compholio,
|
||||
then it might be a regression caused by our patches. We would like you to
|
||||
report this issue to us, so we can fix it in future versions. You can also
|
||||
report issues, when testing with upstream Wine is impossible or it crashes
|
||||
with a different error (for example much earlier).
|
||||
|
||||
When submitting a application related bug here on github, please make sure to
|
||||
include at least the following information. Generally its always a good idea
|
||||
to provide as much information as possible, since this will significantly
|
||||
increase chances to provide support and to fix it.
|
||||
|
||||
1. **Which application triggers the bug**
|
||||
* Application name and version number
|
||||
* How to obtain it (download URL + checksum if public available)
|
||||
|
||||
2. **What exactly doesn't work**
|
||||
* Log of the terminal output of the application
|
||||
* For visual issues please additionally attach a screenshot, and describe
|
||||
what it should look like
|
||||
* *Optionally:* If you already know whats going wrong, please attach
|
||||
appropriate `WINEDEBUG` logs or excerpts showing the issue.
|
||||
|
||||
3. **Details about your WINEPREFIX**
|
||||
* *Recommended:* Test it in a new wine prefix, and report if this works
|
||||
* Did you install any overrides? (for examples by using `winetricks`)
|
||||
* Did you change any settings by running `winecfg`?
|
||||
|
||||
4. **Information about your Wine-Compholio version**
|
||||
* *Recommended:* Test with regular wine, and report if this works
|
||||
* Version number (`/opt/wine-compholio/bin/wine --version`)
|
||||
* Patches in your build (`/opt/wine-compholio/bin/wine --patches`)
|
||||
* Installed optional libraries (`/opt/wine-compholio/bin/wine --check-libs`)
|
473
debian/tools/gitapply.sh
vendored
Executable file
473
debian/tools/gitapply.sh
vendored
Executable file
@@ -0,0 +1,473 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# Wrapper to apply binary patches without git.
|
||||
#
|
||||
# Copyright (C) 2014 Sebastian Lackner
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
#
|
||||
|
||||
nogit=0
|
||||
tmpfile=""
|
||||
|
||||
# Show usage information about gitapply script
|
||||
usage()
|
||||
{
|
||||
echo ""
|
||||
echo "Usage: ./gitapply.sh [--nogit] [-d DIRECTORY]"
|
||||
echo ""
|
||||
echo "Reads patch data from stdin and applies the patch to the current"
|
||||
echo "directory or the directory given via commandline."
|
||||
echo ""
|
||||
echo "The patch file can contain both unified text patches as well as"
|
||||
echo "git binary patches."
|
||||
echo ""
|
||||
}
|
||||
|
||||
# Critical error, abort
|
||||
abort()
|
||||
{
|
||||
if [ ! -z "$tmpfile" ]; then
|
||||
rm "$tmpfile"
|
||||
tmpfile=""
|
||||
fi
|
||||
echo "[PATCH] ERR: $1" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Show a warning
|
||||
warning()
|
||||
{
|
||||
echo "[PATCH] WRN: $1" >&2
|
||||
}
|
||||
|
||||
# Calculate git sha1 hash
|
||||
gitsha1()
|
||||
{
|
||||
if [ -f "$1" ]; then
|
||||
echo -en "blob $(du -b "$1" | cut -f1)\x00" | cat - "$1" | sha1sum | cut -d' ' -f1
|
||||
else
|
||||
echo "0000000000000000000000000000000000000000"
|
||||
fi
|
||||
}
|
||||
|
||||
# Determine size of a file (or zero, if it doesn't exist)
|
||||
filesize()
|
||||
{
|
||||
local size=$(du -b "$1" | cut -f1)
|
||||
if [ -z "$size" ]; then
|
||||
size="0"
|
||||
fi
|
||||
echo "$size"
|
||||
}
|
||||
|
||||
|
||||
# Parse environment variables
|
||||
while [[ $# > 0 ]]; do
|
||||
cmd="$1"; shift
|
||||
case "$cmd" in
|
||||
|
||||
--nogit)
|
||||
nogit=1
|
||||
;;
|
||||
|
||||
-v)
|
||||
;;
|
||||
|
||||
--directory=*)
|
||||
cd "${cmd#*=}"
|
||||
;;
|
||||
-d)
|
||||
cd "$1"; shift
|
||||
;;
|
||||
|
||||
-R)
|
||||
abort "Reverse applying patches not supported yet with this tool."
|
||||
;;
|
||||
|
||||
--help)
|
||||
usage
|
||||
exit 0
|
||||
;;
|
||||
|
||||
*)
|
||||
warning "Unknown argument $cmd."
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Redirect to git apply if available
|
||||
if [ "$nogit" -eq 0 ] && command -v git >/dev/null 2>&1; then
|
||||
exec git apply --whitespace=nowarn "$@"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Detect BSD - we check this first to error out as early as possible
|
||||
if gzip -V 2>&1 | grep "BSD" &> /dev/null; then
|
||||
echo "This script is not compatible with *BSD utilities. Please install git," >&2
|
||||
echo "which provides the same functionality and will be used instead." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check for missing depdencies
|
||||
for dependency in awk cut dd du grep gzip hexdump patch sha1sum; do
|
||||
if ! command -v "$dependency" >/dev/null 2>&1; then
|
||||
echo "Missing dependency: $dependency - please install this program and try again." >&2
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
# Workaround for new versions of awk, which assume that we want to use unicode
|
||||
export LANG=C
|
||||
export LC_ALL=C
|
||||
|
||||
# Decode base85 git data, prepend with a gzip header
|
||||
awk_decode_b85='
|
||||
BEGIN{
|
||||
git="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
|
||||
b85="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!#$%&()*+-;<=>?@^_`{|}~";
|
||||
printf("\x1f\x8b\x08\x00\x00\x00\x00\x00");
|
||||
while (getline > 0){
|
||||
l = index(git, substr($0, 1, 1));
|
||||
if (l == 0){ exit 1; }
|
||||
p=2;
|
||||
while (l > 0 && p <= length($0)){
|
||||
a = index(b85, substr($0, p++, 1));
|
||||
b = index(b85, substr($0, p++, 1));
|
||||
c = index(b85, substr($0, p++, 1));
|
||||
d = index(b85, substr($0, p++, 1));
|
||||
e = index(b85, substr($0, p++, 1));
|
||||
if (a-- == 0 || b-- == 0 || c-- == 0 || d-- == 0 || e-- == 0){ exit 1; }
|
||||
n = (((a * 85 + b) * 85 + c) * 85 + d) * 85 + e;
|
||||
if (n > 4294967295){ exit 1; }
|
||||
a = n % 256; n /= 256;
|
||||
b = n % 256; n /= 256;
|
||||
c = n % 256; n /= 256;
|
||||
d = n % 256;
|
||||
if (l-- > 0) printf("%c", d);
|
||||
if (l-- > 0) printf("%c", c);
|
||||
if (l-- > 0) printf("%c", b);
|
||||
if (l-- > 0) printf("%c", a);
|
||||
}
|
||||
if (p != length($0) + 1 || l != 0){ exit 1; }
|
||||
}
|
||||
}'
|
||||
|
||||
# Decodes the information from a git delta patch passed in as hex encoded
|
||||
awk_decode_binarypatch='
|
||||
function get_byte(a, b){ # usage: get_byte()
|
||||
if (length(__buffer) == 0){ if(getline __buffer <= 0){ exit 1; } }
|
||||
a = index(hex, substr(__buffer, 1, 1));
|
||||
b = index(hex, substr(__buffer, 2, 1));
|
||||
if (a-- == 0 || b-- == 0){ exit 1; }
|
||||
__buffer = substr(__buffer, 3); __pos++;
|
||||
return a * 16 + b;
|
||||
}
|
||||
function skip_bytes(n, m){ # usage: skip_bytes(n)
|
||||
if (length(__buffer) == 0){ if(getline __buffer <= 0){ exit 1; } }
|
||||
while (n >= (length(__buffer) / 2)){
|
||||
m = length(__buffer) / 2; n -= m; __pos += m;
|
||||
if(getline __buffer <= 0){ exit 1; }
|
||||
}
|
||||
if (n > 0){ __buffer = substr(__buffer, 1 + 2 * n); __pos += n; }
|
||||
}
|
||||
function get_delta_hdr_size(){ # usage: get_delta_hdr_size()
|
||||
cmd = get_byte(); size = and(cmd, 0x7f); i = 7;
|
||||
while (and(cmd, 0x80)){
|
||||
cmd = get_byte(); size += lshift(and(cmd, 0x7f), i); i += 7;
|
||||
}
|
||||
return size;
|
||||
}
|
||||
BEGIN{
|
||||
hex="0123456789ABCDEF"
|
||||
src_size = get_delta_hdr_size(); dst_size = get_delta_hdr_size();
|
||||
printf("S %d %d\n", src_size, dst_size);
|
||||
while (dst_size > 0){
|
||||
cmd = get_byte();
|
||||
if (and(cmd, 0x80)){
|
||||
cp_offs = 0; cp_size = 0;
|
||||
if (and(cmd, 0x01)){ cp_offs = get_byte(); }
|
||||
if (and(cmd, 0x02)){ cp_offs += lshift(get_byte(), 8); }
|
||||
if (and(cmd, 0x04)){ cp_offs += lshift(get_byte(), 16); }
|
||||
if (and(cmd, 0x08)){ cp_offs += lshift(get_byte(), 24); }
|
||||
if (and(cmd, 0x10)){ cp_size = get_byte(); }
|
||||
if (and(cmd, 0x20)){ cp_size += lshift(get_byte(), 8); }
|
||||
if (and(cmd, 0x40)){ cp_size += lshift(get_byte(), 16); }
|
||||
if (cp_size == 0){ cp_size = 0x10000; }
|
||||
if (cp_offs + cp_size > src_size || cp_size > dst_size){ exit 1; }
|
||||
printf("1 %d %d\n", cp_offs, cp_size);
|
||||
dst_size -= cp_size;
|
||||
}else if (cmd){
|
||||
if (cmd > dst_size){ exit 1; }
|
||||
printf("2 %d %d\n", __pos, cmd);
|
||||
skip_bytes(cmd);
|
||||
dst_size -= cmd;
|
||||
}else{ exit 1; }
|
||||
}
|
||||
printf("E 0 0\n");
|
||||
}'
|
||||
|
||||
# Find end of patch header
|
||||
awk_eof_header='
|
||||
BEGIN{
|
||||
ofs=1;
|
||||
}
|
||||
!/^(--- |\+\+\+ |old |new |copy |rename |similarity |index |GIT |literal |delta )/{
|
||||
ofs=0; exit 0;
|
||||
}
|
||||
END{
|
||||
print FNR+ofs;
|
||||
}'
|
||||
|
||||
# Find end of text patch
|
||||
awk_eof_textpatch='
|
||||
BEGIN{
|
||||
ofs=1;
|
||||
}
|
||||
!/^(@| |+|-|\\)/{
|
||||
ofs=0; exit 0;
|
||||
}
|
||||
END{
|
||||
print FNR+ofs;
|
||||
}'
|
||||
|
||||
# Find end of git binary patch
|
||||
awk_eof_binarypatch='
|
||||
BEGIN{
|
||||
ofs=1;
|
||||
}
|
||||
!/^[A-Za-z]/{
|
||||
ofs=0; exit 0;
|
||||
}
|
||||
END{
|
||||
print FNR+ofs;
|
||||
}'
|
||||
|
||||
|
||||
# Create a temporary file containing the patch - NOTE: even if the user
|
||||
# provided a filename it still makes sense to work with a temporary file,
|
||||
# to avoid changes of the content while this script is active.
|
||||
tmpfile=$(mktemp)
|
||||
if [ ! -f "$tmpfile" ]; then
|
||||
tmpfile=""
|
||||
abort "Unable to create temporary file for patch."
|
||||
elif ! cat > "$tmpfile"; then
|
||||
abort "Patch truncated."
|
||||
fi
|
||||
|
||||
# Go through the different patch sections
|
||||
lastoffset=1
|
||||
for offset in $(awk '/^diff --git /{ print FNR; }' "$tmpfile"); do
|
||||
|
||||
# Check part between end of last patch and start of current patch
|
||||
if [ "$lastoffset" -gt "$offset" ]; then
|
||||
abort "Unable to split patch. Is this a proper git patch?"
|
||||
elif [ "$lastoffset" -lt "$offset" ]; then
|
||||
tmpoffset=$((offset - 1))
|
||||
if sed -n "$lastoffset,$tmpoffset p" "$tmpfile" | grep -q '^\(@@ -\|--- \|+++ \)'; then
|
||||
abort "Patch corrupted or not created with git."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Find out the size of the patch header
|
||||
tmpoffset=$((offset + 1))
|
||||
tmpoffset=$(sed -n "$tmpoffset,\$ p" "$tmpfile" | awk "$awk_eof_header")
|
||||
hdroffset=$((offset + tmpoffset))
|
||||
|
||||
# Parse all important fields of the header
|
||||
patch_oldname=""
|
||||
patch_newname=""
|
||||
patch_oldsha1=""
|
||||
patch_newsha1=""
|
||||
patch_is_binary=0
|
||||
patch_binary_type=""
|
||||
patch_binary_size=""
|
||||
|
||||
tmpoffset=$((hdroffset - 1))
|
||||
while IFS= read -r line; do
|
||||
if [ "$line" == "GIT binary patch" ]; then
|
||||
patch_is_binary=1
|
||||
|
||||
elif [[ "$line" =~ ^diff\ --git\ ([^ ]*)\ ([^ ]*)$ ]]; then
|
||||
patch_oldname="${BASH_REMATCH[1]}"
|
||||
patch_newname="${BASH_REMATCH[2]}"
|
||||
|
||||
elif [[ "$line" =~ ^---\ (.*)$ ]]; then
|
||||
patch_oldname="${BASH_REMATCH[1]}"
|
||||
|
||||
elif [[ "$line" =~ ^\+\+\+\ (.*)$ ]]; then
|
||||
patch_newname="${BASH_REMATCH[1]}"
|
||||
|
||||
elif [[ "$line" =~ ^index\ ([a-fA-F0-9]*)\.\.([a-fA-F0-9]*) ]]; then
|
||||
patch_oldsha1="${BASH_REMATCH[1]}"
|
||||
patch_newsha1="${BASH_REMATCH[2]}"
|
||||
|
||||
elif [[ "$line" =~ ^(literal|delta)\ ([0-9]+)$ ]]; then
|
||||
patch_binary_type="${BASH_REMATCH[1]}"
|
||||
patch_binary_size="${BASH_REMATCH[2]}"
|
||||
|
||||
fi
|
||||
done < <(sed -n "$offset,$tmpoffset p" "$tmpfile")
|
||||
|
||||
# Remove first path components, which are always a/ and b/ for git patches
|
||||
if [[ "$patch_oldname" =~ ^a/(.*)$ ]]; then
|
||||
patch_oldname="${BASH_REMATCH[1]}"
|
||||
elif [ "$patch_oldname" != "/dev/null" ]; then
|
||||
abort "Old name doesn't start with a/."
|
||||
fi
|
||||
if [[ "$patch_newname" =~ ^b/(.*)$ ]]; then
|
||||
patch_newname="${BASH_REMATCH[1]}"
|
||||
elif [ "$patch_newname" != "/dev/null" ]; then
|
||||
abort "New name doesn't start with b/."
|
||||
fi
|
||||
|
||||
# Short progress message
|
||||
echo "patching $patch_newname"
|
||||
|
||||
# If its a textual patch, then use 'patch' to apply it.
|
||||
if [ "$patch_is_binary" -eq 0 ]; then
|
||||
|
||||
# Find end of textual patch
|
||||
tmpoffset=$(sed -n "$hdroffset,\$ p" "$tmpfile" | awk "$awk_eof_textpatch")
|
||||
lastoffset=$((hdroffset + tmpoffset - 1))
|
||||
|
||||
# Apply textual patch
|
||||
tmpoffset=$((lastoffset - 1))
|
||||
if ! sed -n "$offset,$tmpoffset p" "$tmpfile" | patch -p1 -s -f; then
|
||||
abort "Textual patch did not apply, aborting."
|
||||
fi
|
||||
|
||||
continue
|
||||
fi
|
||||
|
||||
# It is a binary patch - check that requirements are fulfilled
|
||||
if [ "$patch_binary_type" != "literal" ] && [ "$patch_binary_type" != "delta" ]; then
|
||||
abort "Unknown binary patch type."
|
||||
|
||||
elif [ -z "$patch_oldsha1" ] || [ -z "$patch_newsha1" ]; then
|
||||
abort "Missing index header, sha1 sums required for binary patch."
|
||||
|
||||
elif [ "$patch_oldname" != "$patch_newname" ]; then
|
||||
abort "Stripped old and new name doesn't match for binary patch."
|
||||
fi
|
||||
|
||||
# Ensure that checksum of old file matches
|
||||
sha=$(gitsha1 "$patch_oldname")
|
||||
if [ "$patch_oldsha1" != "$sha" ]; then
|
||||
abort "Checksum mismatch for $patch_oldname (expected $patch_oldsha1, got $sha)."
|
||||
fi
|
||||
|
||||
# Find end of binary patch
|
||||
tmpoffset=$(sed -n "$hdroffset,\$ p" "$tmpfile" | awk "$awk_eof_binarypatch")
|
||||
lastoffset=$((hdroffset + tmpoffset - 1))
|
||||
|
||||
# Special case - deleting the whole file
|
||||
if [ "$patch_newsha1" == "0000000000000000000000000000000000000000" ] &&
|
||||
[ "$patch_binary_size" -eq 0 ] && [ "$patch_binary_type" == "literal" ]; then
|
||||
|
||||
# Applying the patch just means deleting the file
|
||||
if [ -f "$patch_oldname" ] && ! rm "$patch_oldname"; then
|
||||
abort "Unable to delete file $patch_oldname."
|
||||
fi
|
||||
|
||||
continue
|
||||
fi
|
||||
|
||||
# Create temporary file for literal patch
|
||||
literal_tmpfile=$(mktemp)
|
||||
if [ ! -f "$literal_tmpfile" ]; then
|
||||
abort "Unable to create temporary file for binary patch."
|
||||
fi
|
||||
|
||||
# Decode base85 and gzip compression
|
||||
tmpoffset=$((lastoffset - 1))
|
||||
sed -n "$hdroffset,$tmpoffset p" "$tmpfile" | awk "$awk_decode_b85" | gzip -dc > "$literal_tmpfile" 2>/dev/null
|
||||
if [ "$patch_binary_size" -ne "$(filesize "$literal_tmpfile")" ]; then
|
||||
rm "$literal_tmpfile"
|
||||
abort "Uncompressed binary patch has wrong size."
|
||||
fi
|
||||
|
||||
# Convert delta to literal patch
|
||||
if [ "$patch_binary_type" == "delta" ]; then
|
||||
|
||||
# Create new temporary file for literal patch
|
||||
delta_tmpfile="$literal_tmpfile"
|
||||
literal_tmpfile=$(mktemp)
|
||||
if [ ! -f "$literal_tmpfile" ]; then
|
||||
rm "$delta_tmpfile"
|
||||
abort "Unable to create temporary file for binary patch."
|
||||
fi
|
||||
|
||||
patch_binary_complete=0
|
||||
patch_binary_destsize=0
|
||||
|
||||
while read cmd arg1 arg2; do
|
||||
if [ "$cmd" == "S" ]; then
|
||||
[ "$arg1" -eq "$(filesize "$patch_oldname")" ] || break
|
||||
patch_binary_destsize="$arg2"
|
||||
|
||||
elif [ "$cmd" == "1" ]; then
|
||||
dd if="$patch_oldname" bs=1 skip="$arg1" count="$arg2" >> "$literal_tmpfile" 2>/dev/null || break
|
||||
|
||||
elif [ "$cmd" == "2" ]; then
|
||||
dd if="$delta_tmpfile" bs=1 skip="$arg1" count="$arg2" >> "$literal_tmpfile" 2>/dev/null || break
|
||||
|
||||
elif [ "$cmd" == "E" ]; then
|
||||
patch_binary_complete=1
|
||||
|
||||
else break; fi
|
||||
done < <(hexdump -v -e '32/1 "%02X" "\n"' "$delta_tmpfile" | awk "$awk_decode_binarypatch")
|
||||
|
||||
rm "$delta_tmpfile"
|
||||
|
||||
if [ "$patch_binary_complete" -eq 0 ]; then
|
||||
rm "$literal_tmpfile"
|
||||
abort "Unable to parse full patch."
|
||||
|
||||
elif [ "$patch_binary_destsize" -ne "$(filesize "$literal_tmpfile")" ]; then
|
||||
rm "$literal_tmpfile"
|
||||
abort "Unpacked delta patch has wrong size."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Ensure that checksum of literal patch matches
|
||||
sha=$(gitsha1 "$literal_tmpfile")
|
||||
if [ "$patch_newsha1" != "$sha" ]; then
|
||||
rm "$literal_tmpfile"
|
||||
abort "Checksum mismatch for patched $patch_newname (expected $patch_newsha1, got $sha)."
|
||||
fi
|
||||
|
||||
# Apply the patch - copy literal patch to destination path
|
||||
if ! cp "$literal_tmpfile" "$patch_newname"; then
|
||||
rm "$literal_tmpfile"
|
||||
abort "Unable to replace $patch_newname with patched file."
|
||||
fi
|
||||
|
||||
rm "$literal_tmpfile"
|
||||
done
|
||||
|
||||
# Check last remaining part for unparsed patches
|
||||
if sed -n "$lastoffset,\$ p" "$tmpfile" | grep -q '^\(@@ -\|--- \|+++ \)'; then
|
||||
abort "Patch corrupted or not created with git."
|
||||
fi
|
||||
|
||||
# Delete temp file (if any)
|
||||
if [ ! -z "$tmpfile" ]; then
|
||||
rm "$tmpfile"
|
||||
tmpfile=""
|
||||
fi
|
||||
|
||||
# Success
|
||||
exit 0
|
73
debian/tools/patchlist.sh
vendored
Executable file
73
debian/tools/patchlist.sh
vendored
Executable file
@@ -0,0 +1,73 @@
|
||||
#!/bin/sh
|
||||
PATCH_DATA=$(cat);
|
||||
PATCH_LINES=$(echo "${PATCH_DATA}" | wc -l);
|
||||
PATCH_LINES=$((${PATCH_LINES}+20));
|
||||
|
||||
cat <<EOF
|
||||
From: "FDS-Team" <webmaster@fds-team.de>
|
||||
Subject: Autogenerated patch list.
|
||||
|
||||
---
|
||||
diff --git a/libs/wine/config.c b/libs/wine/config.c
|
||||
index a273502..5fa0cd5 100644
|
||||
--- a/libs/wine/config.c
|
||||
+++ b/libs/wine/config.c
|
||||
@@ -478,6 +478,${PATCH_LINES} @@ const char *wine_get_version(void)
|
||||
return PACKAGE_VERSION;
|
||||
}
|
||||
|
||||
+struct wine_patch {
|
||||
+ const char *hash;
|
||||
+ const char *author;
|
||||
+ const char *title;
|
||||
+} wine_patch_data[] = {
|
||||
${PATCH_DATA}
|
||||
+ { NULL, NULL, NULL }
|
||||
+};
|
||||
+
|
||||
+/* return the applied non-standard patches */
|
||||
+const void * wine_get_patches(void)
|
||||
+{
|
||||
+ return &wine_patch_data[0];
|
||||
+}
|
||||
+
|
||||
/* return the build id string */
|
||||
const char *wine_get_build_id(void)
|
||||
{
|
||||
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
|
||||
index ed315bd..5b42029 100644
|
||||
--- a/libs/wine/wine.def
|
||||
+++ b/libs/wine/wine.def
|
||||
@@ -83,6 +83,7 @@ EXPORTS
|
||||
wine_get_sortkey
|
||||
wine_get_user_name
|
||||
wine_get_version
|
||||
+ wine_get_patches
|
||||
wine_init
|
||||
wine_init_argv0_path
|
||||
wine_is_dbcs_leadbyte
|
||||
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
|
||||
index 2159fac..7cb2918 100644
|
||||
--- a/libs/wine/wine.map
|
||||
+++ b/libs/wine/wine.map
|
||||
@@ -90,6 +90,7 @@ WINE_1.0
|
||||
wine_get_ss;
|
||||
wine_get_user_name;
|
||||
wine_get_version;
|
||||
+ wine_get_patches;
|
||||
wine_init;
|
||||
wine_init_argv0_path;
|
||||
wine_is_dbcs_leadbyte;
|
||||
diff --git a/include/wine/library.h b/include/wine/library.h
|
||||
index 242bb69..aa9e585 100644
|
||||
--- a/include/wine/library.h
|
||||
+++ b/include/wine/library.h
|
||||
@@ -43,6 +43,7 @@ extern const char *wine_get_data_dir(void);
|
||||
extern const char *wine_get_server_dir(void);
|
||||
extern const char *wine_get_user_name(void);
|
||||
extern const char *wine_get_version(void);
|
||||
+extern const void *wine_get_patches(void);
|
||||
extern const char *wine_get_build_id(void);
|
||||
extern void wine_init_argv0_path( const char *argv0 );
|
||||
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
|
||||
EOF
|
625
debian/tools/patchupdate.py
vendored
Executable file
625
debian/tools/patchupdate.py
vendored
Executable file
File diff suppressed because it is too large
Load Diff
320
debian/tools/patchutils.py
vendored
Normal file
320
debian/tools/patchutils.py
vendored
Normal file
@@ -0,0 +1,320 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# Python functions to read, split and apply patches.
|
||||
#
|
||||
# Copyright (C) 2014 Sebastian Lackner
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
#
|
||||
|
||||
import collections
|
||||
import difflib
|
||||
import hashlib
|
||||
import itertools
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
import tempfile
|
||||
|
||||
class PatchParserError(RuntimeError):
|
||||
"""Unable to parse patch file - either an unimplemented feature, or corrupted patch."""
|
||||
pass
|
||||
|
||||
class PatchApplyError(RuntimeError):
|
||||
"""Failed to apply/merge patch."""
|
||||
pass
|
||||
|
||||
class PatchObject(object):
|
||||
def __init__(self, filename):
|
||||
self.extracted_patch = None
|
||||
self.unique_hash = None
|
||||
|
||||
self.filename = filename
|
||||
self.offset_begin = None
|
||||
self.offset_end = None
|
||||
self.isbinary = False
|
||||
|
||||
self.oldname = None
|
||||
self.newname = None
|
||||
self.modified_file = None
|
||||
|
||||
self.oldsha1 = None
|
||||
self.newsha1 = None
|
||||
self.newmode = None
|
||||
|
||||
def is_binary(self):
|
||||
return self.isbinary
|
||||
|
||||
def read_chunks(self):
|
||||
"""Iterates over arbitrary sized chunks of this patch."""
|
||||
assert self.offset_end >= self.offset_begin
|
||||
with open(self.filename) as fp:
|
||||
fp.seek(self.offset_begin)
|
||||
i = self.offset_end - self.offset_begin
|
||||
while i > 0:
|
||||
buf = fp.read(4096 if i > 4096 else i)
|
||||
if buf == "": raise IOError("Unable to extract patch.")
|
||||
yield buf
|
||||
i -= len(buf)
|
||||
|
||||
def extract(self):
|
||||
"""Create a temporary file containing the extracted patch."""
|
||||
if not self.extracted_patch:
|
||||
self.extracted_patch = tempfile.NamedTemporaryFile()
|
||||
for chunk in self.read_chunks():
|
||||
self.extracted_patch.write(chunk)
|
||||
self.extracted_patch.flush()
|
||||
return self.extracted_patch
|
||||
|
||||
def hash(self):
|
||||
"""Hash the content of the patch."""
|
||||
if not self.unique_hash:
|
||||
m = hashlib.sha256()
|
||||
for chunk in self.read_chunks():
|
||||
m.update(chunk)
|
||||
self.unique_hash = m.digest()
|
||||
return self.unique_hash
|
||||
|
||||
def read_patch(filename):
|
||||
"""Iterates over all patches contained in a file, and returns PatchObject objects."""
|
||||
|
||||
class _FileReader(object):
|
||||
def __init__(self, filename):
|
||||
self.filename = filename
|
||||
self.fp = open(self.filename)
|
||||
self.peeked = None
|
||||
|
||||
def close(self):
|
||||
self.fp.close()
|
||||
|
||||
def __enter__(self):
|
||||
return self
|
||||
|
||||
def __exit__(self, type, value, traceback):
|
||||
self.close()
|
||||
|
||||
def seek(self, pos):
|
||||
"""Change the file cursor position."""
|
||||
self.fp.seek(pos)
|
||||
self.peeked = None
|
||||
|
||||
def tell(self):
|
||||
"""Return the current file cursor position."""
|
||||
if self.peeked is None:
|
||||
return self.fp.tell()
|
||||
return self.peeked[0]
|
||||
|
||||
def peek(self):
|
||||
"""Read one line without changing the file cursor."""
|
||||
if self.peeked is None:
|
||||
pos = self.fp.tell()
|
||||
tmp = self.fp.readline()
|
||||
if len(tmp) == 0: return None
|
||||
self.peeked = (pos, tmp)
|
||||
return self.peeked[1]
|
||||
|
||||
def read(self):
|
||||
"""Read one line from the file, and move the file cursor to the next line."""
|
||||
if self.peeked is None:
|
||||
tmp = self.fp.readline()
|
||||
if len(tmp) == 0: return None
|
||||
return tmp
|
||||
tmp, self.peeked = self.peeked, None
|
||||
return tmp[1]
|
||||
|
||||
def _read_single_patch(fp, oldname=None, newname=None):
|
||||
"""Internal function to read a single patch from a file."""
|
||||
|
||||
patch = PatchObject(fp.filename)
|
||||
patch.offset_begin = fp.tell()
|
||||
patch.oldname = oldname
|
||||
patch.newname = newname
|
||||
|
||||
# Skip over initial diff --git header
|
||||
line = fp.peek()
|
||||
if line.startswith("diff --git "):
|
||||
assert fp.read() == line
|
||||
|
||||
# Read header
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None:
|
||||
break
|
||||
elif line.startswith("--- "):
|
||||
patch.oldname = line[4:].strip()
|
||||
elif line.startswith("+++ "):
|
||||
patch.newname = line[4:].strip()
|
||||
elif line.startswith("old mode") or line.startswith("deleted file mode"):
|
||||
pass # ignore
|
||||
elif line.startswith("new mode "):
|
||||
patch.newmode = line[9:].strip()
|
||||
elif line.startswith("new file mode "):
|
||||
patch.newmode = line[14:].strip()
|
||||
elif line.startswith("new mode") or line.startswith("new file mode"):
|
||||
raise PatchParserError("Unable to parse header line '%s'." % line)
|
||||
elif line.startswith("copy from") or line.startswith("copy to"):
|
||||
raise NotImplementedError("Patch copy header not implemented yet.")
|
||||
elif line.startswith("rename "):
|
||||
raise NotImplementedError("Patch rename header not implemented yet.")
|
||||
elif line.startswith("similarity index") or line.startswith("dissimilarity index"):
|
||||
pass # ignore
|
||||
elif line.startswith("index "):
|
||||
r = re.match("^index ([a-fA-F0-9]*)\.\.([a-fA-F0-9]*)", line)
|
||||
if not r: raise PatchParserError("Unable to parse index header line '%s'." % line)
|
||||
patch.oldsha1, patch.newsha1 = r.group(1), r.group(2)
|
||||
else:
|
||||
break
|
||||
assert fp.read() == line
|
||||
|
||||
if patch.oldname is None or patch.newname is None:
|
||||
raise PatchParserError("Missing old or new name.")
|
||||
elif patch.oldname == "/dev/null" and patch.newname == "/dev/null":
|
||||
raise PatchParserError("Old and new name is /dev/null?")
|
||||
|
||||
if patch.oldname.startswith("a/"):
|
||||
patch.oldname = patch.oldname[2:]
|
||||
elif patch.oldname != "/dev/null":
|
||||
raise PatchParserError("Old name in patch doesn't start with a/.")
|
||||
|
||||
if patch.newname.startswith("b/"):
|
||||
patch.newname = patch.newname[2:]
|
||||
elif patch.newname != "/dev/null":
|
||||
raise PatchParserError("New name in patch doesn't start with b/.")
|
||||
|
||||
if patch.newname != "/dev/null":
|
||||
patch.modified_file = patch.newname
|
||||
else:
|
||||
patch.modified_file = patch.oldname
|
||||
|
||||
# Decide between binary and textual patch
|
||||
if line is None or line.startswith("diff --git ") or line.startswith("--- "):
|
||||
if oldname != newname:
|
||||
raise PatchParserError("Stripped old- and new name doesn't match.")
|
||||
|
||||
elif line.startswith("@@ -"):
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None or not line.startswith("@@ -"):
|
||||
break
|
||||
|
||||
r = re.match("^@@ -(([0-9]+),)?([0-9]+) \+(([0-9]+),)?([0-9]+) @@", line)
|
||||
if not r: raise PatchParserError("Unable to parse hunk header '%s'." % line)
|
||||
srcpos = max(int(r.group(2)) - 1, 0) if r.group(2) else 0
|
||||
dstpos = max(int(r.group(5)) - 1, 0) if r.group(5) else 0
|
||||
srclines, dstlines = int(r.group(3)), int(r.group(6))
|
||||
if srclines <= 0 and dstlines <= 0:
|
||||
raise PatchParserError("Empty hunk doesn't make sense.")
|
||||
assert fp.read() == line
|
||||
|
||||
while srclines > 0 or dstlines > 0:
|
||||
line = fp.read()
|
||||
if line is None:
|
||||
raise PatchParserError("Truncated patch.")
|
||||
elif line.startswith(" "):
|
||||
if srclines == 0 or dstlines == 0:
|
||||
raise PatchParserError("Corrupted patch.")
|
||||
srclines -= 1
|
||||
dstlines -= 1
|
||||
elif line.startswith("-"):
|
||||
if srclines == 0:
|
||||
raise PatchParserError("Corrupted patch.")
|
||||
srclines -= 1
|
||||
elif line.startswith("+"):
|
||||
if dstlines == 0:
|
||||
raise PatchParserError("Corrupted patch.")
|
||||
dstlines -= 1
|
||||
elif line.startswith("\\ "):
|
||||
pass # ignore
|
||||
else:
|
||||
raise PatchParserError("Unexpected line in hunk.")
|
||||
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None or not line.startswith("\\ "): break
|
||||
assert fp.read() == line
|
||||
|
||||
elif line.rstrip() == "GIT binary patch":
|
||||
if patch.oldsha1 is None or patch.newsha1 is None:
|
||||
raise PatchParserError("Missing index header, sha1 sums required for binary patch.")
|
||||
elif patch.oldname != patch.newname:
|
||||
raise PatchParserError("Stripped old- and new name doesn't match for binary patch.")
|
||||
assert fp.read() == line
|
||||
|
||||
line = fp.read()
|
||||
if line is None: raise PatchParserError("Unexpected end of file.")
|
||||
r = re.match("^(literal|delta) ([0-9]+)", line)
|
||||
if not r: raise NotImplementedError("Only literal/delta patches are supported.")
|
||||
patch.isbinary = True
|
||||
|
||||
# Skip over patch data
|
||||
while True:
|
||||
line = fp.read()
|
||||
if line is None or line.strip() == "":
|
||||
break
|
||||
|
||||
else:
|
||||
raise PatchParserError("Unknown patch format.")
|
||||
|
||||
patch.offset_end = fp.tell()
|
||||
return patch
|
||||
|
||||
with _FileReader(filename) as fp:
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None:
|
||||
break
|
||||
elif line.startswith("diff --git "):
|
||||
tmp = line.strip().split(" ")
|
||||
if len(tmp) != 4: raise PatchParserError("Unable to parse git diff header line '%s'." % line)
|
||||
yield _read_single_patch(fp, tmp[2].strip(), tmp[3].strip())
|
||||
elif line.startswith("--- "):
|
||||
yield _read_single_patch(fp)
|
||||
elif line.startswith("@@ -") or line.startswith("+++ "):
|
||||
raise PatchParserError("Patch didn't start with a git or diff header.")
|
||||
else:
|
||||
assert fp.read() == line
|
||||
|
||||
def apply_patch(content, patches, reverse=False, fuzz=2):
|
||||
"""Apply a patch with optional fuzz - uses the commandline 'patch' utility."""
|
||||
|
||||
if not isinstance(patches, collections.Sequence):
|
||||
patches = [patches]
|
||||
|
||||
contentfile = tempfile.NamedTemporaryFile(delete=False)
|
||||
try:
|
||||
contentfile.write(content)
|
||||
contentfile.close()
|
||||
|
||||
for patch in patches:
|
||||
|
||||
patchfile = patch.extract()
|
||||
cmdline = ["patch", "--force", "--silent", "-r", "-"]
|
||||
if reverse: cmdline.append("--reverse")
|
||||
if fuzz != 2: cmdline.append("--fuzz=%d" % fuzz)
|
||||
cmdline += [contentfile.name, patchfile.name]
|
||||
|
||||
with open(os.devnull, 'w') as devnull:
|
||||
exitcode = subprocess.call(cmdline, stdout=devnull, stderr=devnull)
|
||||
if exitcode != 0:
|
||||
raise PatchApplyError("Failed to apply patch (exitcode %d)." % exitcode)
|
||||
|
||||
with open(contentfile.name) as fp:
|
||||
content = fp.read()
|
||||
|
||||
finally:
|
||||
os.unlink(contentfile.name)
|
||||
|
||||
return content
|
||||
|
4
debian/wine-compholio-amd64.install
vendored
Normal file
4
debian/wine-compholio-amd64.install
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
/opt/wine-compholio/lib64/libwine.so*
|
||||
/opt/wine-compholio/lib64/wine
|
||||
/opt/wine-compholio/bin/wine64
|
||||
/opt/wine-compholio/bin/wine64-preloader
|
1
debian/wine-compholio-dev.install
vendored
Normal file
1
debian/wine-compholio-dev.install
vendored
Normal file
@@ -0,0 +1 @@
|
||||
/opt/wine-compholio/include
|
4
debian/wine-compholio-i386.install
vendored
Normal file
4
debian/wine-compholio-i386.install
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
/opt/wine-compholio/lib/libwine.so*
|
||||
/opt/wine-compholio/lib/wine
|
||||
/opt/wine-compholio/bin/wine
|
||||
/opt/wine-compholio/bin/wine-preloader
|
6
debian/wine-compholio.docs
vendored
Normal file
6
debian/wine-compholio.docs
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
documentation/README.*
|
||||
ANNOUNCE
|
||||
AUTHORS
|
||||
LICENSE.wine
|
||||
LICENSE.wine-compholio
|
||||
README
|
2
debian/wine-compholio.install
vendored
Normal file
2
debian/wine-compholio.install
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
/opt/wine-compholio/bin
|
||||
/opt/wine-compholio/share
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user