Chcete si na svém Linuxu zahrát populární hry
jako např. StarCraft, Warcraft 3 a další? S pomocí WineX to není
problém a v dnešním článku se podíváme, jak na to.
Naprostý začátek:
Předtím, než začneme, měli byste si
připravit a rozmyslet několik základních věcí:
- dostatek místa na disku pro winex (rozbalený cvs snapshop 49MB
+ kompilace celkem vydá dočasně asi na 325MB)
- kde budete mít adresář, ve kterém budou programy a věci pro ně
potřebné. Zde tento adresář budu nahrazovat <fake_win_dir>
- používám RedHat Linux a tudíž je návod dělaný pro něj. Až na
věci specifické pro tenhle systém je samozřejmě použitelný i pro
ostatní distribuce.
Příprava:
Zjistěte, jestli nemáte nainstalovanou nějakou
verzi wine. Pokud ano, odstraňte ji:
[mf@archon mf]$ rpm -qa | grep -i wine
wine-xyz.abc
[mf@archon mf]$ rpm -e wine-xyz.abc
Dalším krokem je stažení WineX CVS snapshotu. Pro heslo
stiskněte pouze enter:
[mf@archon mf]$ cvs
-d:pserver:anonymous@cvs.winex.sourceforge.net:\
/cvsroot/winex login
Logging in to
:pserver:anonymous@cvs.winex.sourceforge.net:
2401/cvsroot/winex
CVS password: <enter>
[mf@archon mf]$ cvs
-d :pserver:anonymous@cvs.winex.sourceforge.net:\
/cvsroot/winex -z 3 co -r quartz-pre-removal wine
Do adresáře wine se vám stáhne poslední verze winex. Celkem
49MB, ale vzhledem k tomu, že pro přenos se používá komprese, budete
stahovat něco kolem 7MB.
Kompilace a instalace:
Nyní máte kompletní WineX u sebe na
disku. Přesuňte se tedy do adresáře wine:
[mf@archon mf]$ cd wine
A zapište příkaz,
který vše připraví pro kompilaci:
[mf@archon wine]$ ./configure --with-x --disable-trace
--enable-opengl --disable-debug
Po úspěšné přípravě se můžeme s chutí pustit do kompilace:
[mf@archon wine]$ make depend && make
A nakonec jako root nainstalujeme. Nepracujete doufám stále
jako root :o)
[mf@archon wine]$ su -c "make install"
Konfigurace:
Vše by mělo v tuto chvíli být nachystáno pro
konfiguraci. Nejprve se zbavte starých konfigurací wine (raději si
je ale předtím zazálohujte! :o)) a adresář .wine ve vašem home opět
vytvořte. Poté do něj zkopírujte kostru konfiguračního souboru:
[mf@archon wine]$ rm -Rf adr ~/.wine
[mf@archon wine]$ mkdir ~/.wine
[mf@archon wine]$ cp documentation/samples/config ~/.wine
Nyní
se pustíme do samotné konfigurace.
[mf@archon wine]$ vim ~/.wine/config
Hlavní
věcí, co asi bude chtít změnit, jsou disky. Všímejte si hlavně
parametrů, jako jsou Path a Device. Path odpovídá místu, kam se náš
disk připojuje, Device odpovídá jeho zařízení v /dev. Cesty je nutno
uvádět v absolutní podobě. Mé nastavení pro RedHat Linux:
[Drive A]
"Path" = "/mnt/floppy"
"Type" = "floppy"
"Label" = "Floppy"
"Serial" = "87654321"
"Device" = "/dev/fd0"
[Drive C]
"Path" = "<fakewindir>"
"Type" = "hd"
"Label" = "MS-DOS"
"Filesystem" = "win95"
[Drive D]
"Path" = "/mnt/cdrom"
"Type" = "cdrom"
"Label" = "CD-Rom"
"Filesystem" = "win95"
"Device" = "/dev/cdrom"
[Drive E]
"Path" = "/tmp"
"Type" = "hd"
"Label" = "Tmp Drive"
"Filesystem" = "win95"
[Drive F]
"Path" = "${HOME}"
"Type" = "network"
"Label" = "Home"
"Filesystem" = "win95"
Dále
jsou všechna nastavení použitelná, ale je třeba udělat ještě několik
změn. Uvedu hodnoty, které fungují a doporučuji je. Je tu ale
samozřejmě možnost si s nimi pohrát a možná i dosáhnout lepších
výsledků. Hodnoty mnou neuvedené můžete klidně nechat tak, jak jsou.
;; "AllocSystemColors" = "" (zakomentovat pomocí ;)
"PrivateColorMap" = "Y"
"PerfectGraphics" = "N"
"UseDGA" = "N"
"UseXShm" = "Y"
"DXGrab" = "Y"
"DesktopDoubleBuffered" = "Y"
Nyní
ještě vytvoříme strukturu adresářů potřebnou pro běh aplikací:
[mf@archon wine]$ mkdir -p ~/wine-x/windows/system
[mf@archon wine]$ mkdir ~/wine-x/windows/Fonts
Poslední
krok konfigurace spočívá ve vytvoření správných registrů pomocí
utilitky regapi (standardně dodávané s WineX):
[mf@archon wine]$ cd programs/regapi/
[mf@archon regapi]$ make
[mf@archon regapi]$ ./regapi setValue <
../../winedefault.reg
Instalace StarCraftu:
Vložte instalační disk do mechaniky,
přimountujte, přesuňte se do adresáře, kam jste CD připojili, a
spusťte instalaci:
[mf@archon regapi]$ mount /dev/cdrom
[mf@archon cdrom]$ cd /mnt/cdrom
[mf@archon cdrom]$ wine SETUP.EXE
Pokud vše šlape tak, jak má,
mělo by se vám objevit známé úvodní okno pro SC. Zvolte
nainstalovat, ignorujte nadávky o tom, že nemáte DirectX 5 a vyšší,
a jednoduše pokračujte. Po dokončení instalace celý SC ukončete.
Jestliže máte BroodWar, stačí jej vložit do mechaniky a nainstalovat
obdobným způsobem. Kupodivu je však slušnější a tolik se nezlobí
kvůli Directům.
První spuštění:
Pokud jste se dostali až sem - gratuluji!
Cíl je za dveřmi. Poslední věc je třeba vyřešit. StarCraft totiž
vyžaduje rozlišení 640x480 s 256 barvami. Já tento problém řeším
jiným souborem s konfigurací X windows (XF86Config-4-SC). Soubor se
stávající konfigurací zkopírujte pod tímto jménem do stejné
složky:
[mf@archon cdrom]$ su
[root@archon cdrom]$ cd /etc/X11/
[root@archon X11]$ cp XF86Config-4 XF86Config-4-SC
A nyní v
souboru XF86Config-4-SC proveďte následující změny:
Section "Screen"
Identifier "Screen0"
Device "NV AGP"
Monitor "Monitor0"
DefaultDepth 16 <--- zde změna
Subsection "Display"
Depth 16 <--- zde změna
Modes "640x480" <--- zde změna
EndSubsection
EndSection
Ostatní řádky, než které jsem označil, není třeba měnit a
můžete je nechat dle svého nastavení. Opravdu je třeba použít
hloubku 16b, jinak SC vypadá opravdu úděsně. Nyní jsme naprosto
připraveni ke spuštění - tudíž hurá do toho. Já pro spouštění
používám následující skriptík:
#!/bin/bash
INST="/home/mf/wine-x/Program Files/Starcraft/StarCraft.exe"
DEVICE="/dev/cdrom"
CONFIG="XF86Config-4-SC"
eject $DEVICE
echo "vloz cd a bouchni na enter..."
read enter
mount $DEVICE
xinit /usr/local/bin/wine "$INST" -- :1 -xf86config $CONFIG
killall wine
Tento
skript otevře mechaniku, počká na stisk klávesy enter a poté na jiné
grafické konzoli spustí SC. Abyste mohli SC pouštět na jiné konzoli,
je ještě třeba říct xauth, že můžeme. To provedete příkazem:
[mf@archon mf]$ xauth add :1 . `mcookie`
Nyní
je všechno připraveno. Spusťte skript a už se jen kochejte
legendární hrou na legendárním systému :o)
War3
Na Warcraft 3 je třeba aplikovat obdobný způsob. Pouze
ho ještě o trošku rozšíříme. Jak je to s instalaci W3, bohužel
nevím. Zkoušel jsem jej rozchodit, až když jsem jej měl
nainstalovaný z jistého M$ systému, a nyní nemám u sebe instalační
CD, abych jej ozkoušel. Nicméně by tento postup měl pro instalaci
fungovat také. Pokud systém připravíte stejným způsobem, jak bylo
popsáno až sem, W3 spustíte, ale nezahrajete si kampaň, protože
založení nového hráče využívá věci, co WineX samo o sobě neodhalí, a
tudíž mu musíme trošku pomoci. Je třeba sehnat soubory z "funkčních"
:o))) Windows. Budou to soubory c:\windows\system\msvcrt* a
c:\windows\system\regsvr32.exe. Ty zkopírujte do oblasti
<fake_win_dir>/windows/system. Nyní už zbývá poslední krok k
nádheře Warcraftu 3. Pod Linuxem bohužel nepřehrajete videa a při
pokusu o jejich přehrání se W3 ukončí. Tento problém můžete
odstranit tím, že v lokaci, kam jste W3 nainstalovali, adresář
Movies přejmenujete nebo smažete. Údajně by animace v tomto adresáři
měl umět přehrát mplayer - mně se to ale bohužel nepovedlo
:o(
Ještě jednu věc vám asi řeknu. W3 je doporučeno spouštět s
parametrem -opengl. Já sice nevidím rozdíl, ale pro pořádek věci
uvedu své řešení skriptů pro tohle. Ať jsem se snažil, jak jsem se
snažil, nepodařilo se mi tento parametr zabudovat do výše uvedeného
skriptu, a tudíž to řeším sice celkem šeredně, ale taky funkčně: mám
dva následující skripty.
skript _w3:
#!/bin/bash
INST="/home/mf/wine-x/Program Files/Warcraft III/War3.exe"
/usr/local/bin/wine -- "$INST" -opengl
skript w3:
#!/bin/bash
CONFIG="XF86Config-4-W3"
xinit ./_w3 -- :1 -xf86config $CONFIG
killall wine
Spouští se samozřejmě skript w3. Pokud někdo najde způsob,
jak parametr opengl předat hře v jednom skriptu, prosím, ať mi
napíše - rád to sem doplním.
Odkazy:
Transgaming
Technologies Inc.