Wine to najsłynniejszy emulator systemu Windows na Linuksie. Jego nazwa pochodzi od akronimu „Wine Is Not an Emulator”, to dlatego że Wine funkcjonuje bardziej jako warstwa pośrednicząca i tłumacząca polecenia windowsowe na linuksowe, dzięki temu Wine działa w sposób zbliżony do natywnych aplikacji dostarczając tym samym dużą optymalizację zasobów. Ogrom zastosowań w szczególności umożliwiający granie w ulubione gry na PC, sprawił że Wine jest wręcz synonimem grania na Linuksie. Dziś przedstawię najczęstsze polecenia i triki związane z obsługą i konfiguracją Wine bezpośrednio z poziomu Konsoli Linux.

Wine – polecenia w konsoli Linux

winecfg
To skrót od wine config, otwiera on okno z konfiguracją wine. Uruchomione z konsoli potrafi wyrzucić startowe błędy jeśli jakieś istnieją, może to pomóc w debugowaniu.

wine cmd
Skrót od Wine Command. To bardzo przydatne polecenie, umożliwia otworzenie wiersza poleceń Windows bezpośrednio w konsoli Linux, stąd możesz uruchomić plik gry lub instalator posługując się ścieżkami dostępu znanymi z Windows (D:\nazwa-katalogu\setup.exe). Przyda się tu znajomość poleceń DOS takich jak cd oraz dir.

wineconsole cmd
Działa identycznie jak poprzednie polecenie, z tym wyjątkiem że otwiera wiersz poleceń Wine w oknie emulatora Windows. Jeśli Wine jest skonfigurowane aby uruchamiać się w oknie, zobaczysz wówczas małe okno z pulpitem Windows na którym otworzy się wiersz poleceń.

wine boot
Jest to emulacja restartu Windows. Może być przydatna po jakichś dużych zmianach w konfiguracji lub rejestrze.

wine regedit
Emulator rejestru Windows.

wine uninstaller
Słynne z Windowsa okno kojarzone z nazwą „dodaj/usuń programy”. Usuwanie aplikacji (czyt. gier) jest tutaj dużo bardziej zawodne niż robienie tego bezpośrednio z deinstalatora uruchamianego w katalogu danej aplikacji

wine msiexec jakis_plik.msi
Służy do uruchamiania plików .MSI, głównie instalatorów które zostały przygotowane w tym formacie.

Wine w Linuksie i frameworki

Winetricks

Winetricks jest bardzo przydatnym, wręcz niezbędnym narzędziem dostarczającym interfejs do instalowania bibliotek i czcionek niezbędnych do działania gier i aplikacji na Wine. Winetricks pomaga również w wyborze główego prefixu. Winetricks dostarcza interfejs zarówno konsolowy jak i graficzny.

winetricks

Standardowe wywołanie winetricks otwiera interfejs graficzny. Nauczenie się jego działania zajmuje trochę czasu ze wzlędu na kompletnie nieintuicyjną nawigację, ponieważ bardziej przypomina on instalator niż okno z konfiguracją. Na osobną uwagę zasługuje menu „zmień ustawienia” w którym możemy ustawiać tzw. flagi na konfiguracji Wine, dotyczy to m.in. wyglądu czcionek, ustawień dźwięku i jest przeznaczone raczej dla bardziej zaawansowanych użytkowników ponieważ bardzo łatwo w ten sposób zniszczyć działającą funkcjonalność.

winetricks dlls list
winetricks apps list
winetricks games list

Trochę przypomina linuksowy konsolowy menedżer pakietów. Jest to po prostu wylistowanie wszystkich możliwych do zainstalowania bibliotek DLL, czy windowsowych programów, jakie są gotowe do instalacji bezpośrednio przy użyciu winetricks. Znajdziemy tutaj m.in. różne wersje DirectX i .NET.

winetricks list-installed

Podobnie jak wyżej, z tym że listuje aktualnie zainstalowane biblioteki i programy. Przykładowa lista zainstalowanych bibliotek: corefonts, d3dcompiler_43, d3dx10, d3dx11_42, d3dx11_43, d3dx9_26, d3dx9_28, d3dx9_31, d3dx9_35, d3dx9_36, d3dx9_39, d3dx9_42, d3dx9_43, d3dx9, directx9, vcrun2008, vcrun2010, vcrun2013, xact_jun2010, xact, xinput.

winetricks safari

Standardowe polecenie służące do intalowania programów lub bibliotek dostępnych w bazie Winetricks, nazwę safari zamień dowolną inną nazwą jaką znalazłeś przy listowaniu. Prościej być nie mogło. Aż dziwne że Windows przez 25 lat istnienia wciąż nie wpadł na pomysł że można w ten sposób instalować programy 🙂

PlayOnLinux

W przeważającej ilości przypadków posiadanie Wine i obsługa konsolowa jest wystarczająca do tego aby moć zagrać w daną grę o ile jest to w ogóle możliwe. W innych tutorialach możesz spotkać się z paczką PlayOnLinux, która jest niczym innym jak tylko interfejsową nakładką na Wine i niejako orkiestratorem wielu różnych instancji Wine z własnymi konfiguracjami, w skrócie PlayOnLinux tworzy dużo śmieci i jego obsługa jest całkiem wolna, jednak funkcjonalnie niewiele wnosi, tak więc zaznajomienie z konsolą może przynieść takie same lub nawet dużo lepsze rezultaty… Czy warto instalować PlayOnLinux? Moim zdaniem nie.

Problemy i rozwiązania

Instalator gry (lub sama gra) nie chce się włączyć

W niektórych grach instalator nie włącza się pod dowolną linuksową ścieżką. Wtedy warto spróbować zmapować katalog w który mamy instalator (obraz płyty) od postaci prostej dla Wine ścieżki np. D:\games\twoja-gra\. W tym celu otwórz okno edycji konfiguracji Wine (winecfg), przejdź do sekcji dyski, utwórz dysk pod dowolną literą i zdefiniuj mu konkretny katalog prowadzący do obrazu płyty z grą. Następnie wejdź z poziomu konsoli do wiersza poleceń Wine wine cmd i uruchom grę bezpośrednio z danej ścieżki którą aplikacja Windows-owa może łatwiej rozpoznać. Przykładowa kombinacja

wine cmd
D:
Setup.exe

Po wyjściu z gry rozdzielczość w Linuksie nie wraca do właściwej

Jest to częsty przypadek i potrafi być dość uciążliwy, ale tylko do momentu w którym poznasz magiczne polecenie xrandr wywoływane z konsoli. Xrandr służy do wszechstronnie do zarządzania monitorem i rozzdzielczością, a tutaj wykorzsytamy go do powrotu do prawidłowej rozdzielczości według ustawień systemowych (parametr -s odpowiada za skalowanie, a wartość 0 za zresetowanie mechanizmu skalowania).

xrandr -s 0

Linki

Lista ciekawych linków związanych z działaniem i obsługą Wine:
https://wiki.winehq.org/FAQ
https://wiki.winehq.org/List_of_Commands
https://wiki.winehq.org/Winetricks
https://www.linuxquestions.org/linux/answers/applications_gui_multimedia/complete_guide_using_wine_command_line
https://itsfoss.com/use-windows-applications-linux/