Dette kan f.eks. gøres hvis man vil have en nyere version af wine end repositories'ne indeholder eller hvis man har brug for at patche wine så et bestemt program eller feature virker.
At patche wine er en tidskrævende affære, da man skal kompilere wine fra grunden, hvilket kan tage flere timer.
I denne guide bruges en patch til Warcraft III som eksempel.
Det anbefales at man laver en midlertidig mappe til at kompilere wine i, f.eks. ~/Sources/wine/:
Kode: Vælg alt
mkdir -p ~/Sources/wine
cd ~/Sources/wine
Download Wine-kildefilerne
Først skal vi få fat i kildefilerne, og jeg anbefaler at downloade dem via winehq's ubuntu repository eftersom det er de mest up-to-date pakker.
Dette gøres ved at køre følgende kommandoer (i hardy):
Kode: Vælg alt
wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -
sudo wget http://wine.budgetdedicated.com/apt/sources.list.d/hardy.list -O /etc/apt/sources.list.d/winehq.list
Dernæst downloades kildefilerne:
Kode: Vælg alt
apt-get source wine
cd wine*
Installer afhængigheder
Når man skal kompilere et program som wine findes der en masse afhængigheder der skal installeres først. Dette gøres vha. følgende kommando:
Kode: Vælg alt
sudo apt-get build-dep wine
sudo apt-get install fakeroot
Det anbefales desuden at installere en masse valgfrie pakker som giver ekstra funktionalitet. Dette gøres på følgende måde:
Kode: Vælg alt
wget http://kegel.com/wine/hardy.sh
chmod +x hardy.sh
sudo ./hardy.sh
Download og installer patch
Først finder man den patch man vil installere, dette kunne f.eks. være denne patch:
http://bugs.winehq.org/attachment.cgi?id=13533
fra denne bug:
http://bugs.winehq.org/show_bug.cgi?id=13547#c14
Vi downloader og gemmer patchen som warcraft3.patch vha. følgende kommando:
Kode: Vælg alt
wget -O warcraft3.patch http://bugs.winehq.org/attachment.cgi?id=13533
Patchen installeres ved følgende kommando:
Kode: Vælg alt
patch -p0 < warcraft3.patch
Kompiler og installer wine
Så skal wine bygges/kompileres. Dette gøres ved følgende kommando:
Kode: Vælg alt
dpkg-buildpackage -rfakeroot -uc -b
Som sagt, dette kan tage meget lang tid.
Dernæst skal den nye pakke installeres, men først fjerner vi eventuelt installerede versioner af wine:
Kode: Vælg alt
sudo dpkg --purge wine
Så installerer vi:
[/code]
sudo dpkg -i ../wine_*.deb
[/code]
Oprydning
Hvis alt nu virker som det skal, kan man, hvis man vil spare plads rydde lidt ud i kildefilerne:
Kode: Vælg alt
cd wine*
make distclean
Jeg håber dette kan hjælpe nogen, og hvis der er spørgsmål/problemer, vil jeg selvfølgelig gøre mit bedste for at svare på den.