Wieści ze świata Open Source: 6 – 12 marca 2012
Pomijając wszelkie świecuszka zaprezentowane na targach CeBit w Hanowerze, to w tym tygodniu mamy tylko dwa warte uwagi wydarzenia. Będzie to wydanie Wine 1.4 oraz X.org 1.12 i trochę dobrych wieści związanych z przełączaniem GPU.
Wine 1.4
W pewnym sensie nie jest to aż tak bardzo ekscytujące. Wszystko to, co znalazło się w nowym Wine, było już wcześniej w niestabilnym Wine 1.3. Większość graczy korzystała z wersji rozwojowej i na bieżąco aktualizowała wydania. Nie mniej jednak, stabilne Wine 1.2 było domyślnie instalowane we wszystkich wydaniach Ubuntu (dopiero kwietniowy Precise Pangolin będzie wyposażony w wersję 1.4) i warto chyba się przyjrzeć czego dokonali deweloperzy przez dwa lata pracy.
W warstwie grafiki nowe Wine wykorzystuje teraz specjalnie stworzony silnik obsługujący DIB (Device Independent Bitmaps). Technologia DIB jest szeroko wykorzystywana w MS Windows w celu przenoszenia danych graficznych pomiędzy urządzeniami lub podczas wykonywania operacji na takich obiektach. Generalnie nowy silnik robi to samodzielnie zamiast wykorzystywać do tego serwer X, co owocuje bardzo dużym wzrostem wydajności w aplikacjach silnie korzystających z operacji na bitmapach. Do tej kategorii wpadają praktycznie wszystkie programy do grafiki 2D, MS Office, zapewne wiele dwuwymiarowych gier.
W obszarze grafiki generalnie poprawiła się jakość takich elementów jak gradienty i przerywane linie. Tak samo jakość generowanego kodu PostScript (co ma znaczenie przy wydrukach). Nowe Wine lepiej obsługuje obracanie tekstu a także wyświetlanie dwukierunkowych (arabskich) i pionowych (japońskich) tekstów. Zaktualizowano tabelę Unicode, tak aby odpowiadała specyfikacji 6.0.
Chyba największą zmianą w nowym Wine jest całkowicie przepisany podsystem dźwięku. Deweloperzy ogarnęli bałagan jaki tam panował. Po stronie aplikacji korzystających z Wine za wzór przyjęto rozwiązania z Windows Vista – podstawą jest biblioteka MMDevAPI, na której oparte są DirectSound oraz WinMM. Po stronie systemu operacyjnego Wine zajmuje się pośrednictwem pomiędzy aktualnie używanym podsystemem dźwięku (ALSA, OSS4 oraz CoreAudio) a biblioteką MMDevAPI. Początkowo wprowadzenie tych usprawnień wywołało problemy wśród użytkowników rozwojowej wersji Wine (gałąź 1.3) a to za sprawą licznych błędów w systemowych paczkach PulseAudio oraz Alsa-plugin. Do poprawnego działania dźwięku na nowym Wine potrzeba serwera PulseAudio w wersji 1.0 lub nowszej oraz paczki Alsa-plugins w wersji 1.0.25 lub nowszej.
Niestety, efektem ubocznym zmian w podsystemie dźwięku jest porzucenie wsparcia dla serwera Jack oraz systemów dźwięku NAS, AudioIO, ESD i OSS3. Do dobrych wieści należy zaliczyć to, że nowe Wine automatycznie wykrywa i ładuje odpowiedni sterownik dźwięku, tak więc skończyło się wybieranie metodą prób i błędów (często dla każdej aplikacji z osobna).
Gracze na pewno będą zadowoleni z nowego modelu obsługi kursorów myszek. Przede wszystkim Wine korzysta teraz z XInput2 co eliminuje wiele problemów podczas gry w trybie full-screen. Kursor myszki nie będzie też uciekał z pełnoekranowego okna i powodował przełączenia na pulpit. Aplikacje Wine mogą teraz korzystać z kalibracji dżojstików a także wyświetlać animowane kursory myszy.
Ciekawa zmiana zaszła z obsłudze multimediów. Kiedy zachodzi potrzeba dekodowania plików audio-video, Wine będzie teraz korzystać z systemowych bibliotek GStreamer (na Macu z Quicktime), a co za tym idzie zapewnia wsparcie dla wszystkich formatów obsługiwanych przez tę bibliotekę. Nowa funkcja przyda się przede wszystkim graczom, gdyż powinna zlikwidować przynajmniej część problemów z nieodtwarzającymi się filmami w trakcie rozgrywki.
Jeżeli uruchomisz aplikację Wine 1.4 w trybie wirtualnego pulpitu, na tymże zostanie narysowana tacka systemowa wraz z pełną obsługą zdarzeń i dymków powiadomień.
Wbudowana w Wine przeglądarka internetowa wykorzystuje teraz silnik Gecko w wersji z Firefoksa 8, umożliwia zarządzanie certyfikatami SSL a także obsługuje technologie ActiveX i VBScript. Pojawiło się też wsparcie dla asynchronicznego przetwarzania połączeń wchodzących i wychodzących, dzięki czemu większość gier internetowych powinna przestać lagować. Wine-gecko do tej pory trzeba było instalować ręcznie (czytaj: przez winetricks), zaś od teraz można to zrobić przez dodaj/usuń programy bezpośrednio w środowisku Wine.
W obszarze grafiki trójwymiarowej znacznie rozbudowano obsługę Direct3D. Gry oparte o silniki Source i Unreal 3 dostały całkiem pokaźny zastrzyk wydajności. Zaktualizowano też bazę danych kart graficznych o nowe modele i nowe wersje sterowników graficznych (zwłaszcza tych otwartoźródłowych). Wine sprawdza teraz dokładnie jakie możliwości ma karta graficzna i sterownik, dzięki czemu zapobiegnie próbom uruchomienia niewspieranych technologi (co często doprowadzało do wywracania się aplikacji).
Poprawiono obsługę różnej maści instalatorów. Między innymi można teraz wznawiać przerwane instalacji oraz ściągać poprawki podczas instalowania programów (wymagane np. przez nowsze wersje .NET).
Osoby nie mogące żyć bez MS Office na pewno ucieszy fakt, że w nowym Wine bardzo poprawiła się obsługa dziesiątej wersji tego pakietu. Chodzi tu zarówno o uruchamianie jak i wydajność oraz obsługę poszczególnych elementów. Nie powinno być już problemów z eksportem plików do nowych formatów MSXML, a to dzięki uaktualnieniu silnika XML w Wine.
Czy to wszystko? Nie – ja starałem się wybrać najciekawsze rzeczy z punktu widzenia zwykłego użytkownika Wine. Zmian jest znacznie więcej, jednak są to przeważnie informacje bardziej techniczne i niekoniecznie bezpośrednio przekładające się na użytkowanie oprogramowania Wine.
Źródło:
Pełna informacja o wydaniu
W skrócie
Wydano X.org 1.12. Najciekawszą nowością jest obsługa multi touch na ekranach dotykowych. Pojawiła się też nadzieja na uruchomienie przełączania kart graficznych w locie z wykorzystaniem serwera X.org, jednak na razie nie wiadomo czy (i jeżeli tak, to kiedy) trafi do domowych użytkowników.
Unigine zaktualizowało benchmark Heaven. Jeżeli stara wersja nie dawała popalić waszym kartom graficznym, to nowa na pewno tego dokona.
Nvidia dołącza do Linux Fundation. Ale bez zbytniego huraoptymizmu proszę – nie zamierzają otworzyć źródeł swojego głównego sterownika. Chodzi raczej o szerszą współpracę w ramach projektu Nouveau oraz lepszą obsługę czipów Tegra przez linuksowy kernel.
Graliście w Mario? Na pewno. Graliście w Portal? Trochę mniej prawdopodobne, ale ciągle możliwe. A gdyby tak dać hydraulikowi Handheld Portal Device? Sama idea jest wystarczająco szalona aby ktoś ją zrealizował. Grę można ściągnąć z tej strony na wszystkie platformy (Linux, Mac OS, Windows, źródła). Mari0 Portal wymaga do działania pakietu Love 0.8, który znajduje się w odpowiednim PPA. Jeżeli ktoś używa Ubuntu 10.04 Lucid Lynx niech oszczędzi sobie (i innym) kłopotu i odpali wersję windowsową przez Wine.
Mała literówka w tekście: przeważnie nie przewarznie i chyba ActiveX zamiast ActivateX. Poza tym fajne podsumowanie tygodnia jak zwykle 🙂 Pozdrawiam
„Nvidia dołącza do Linux Fundation. Ale bez zbytnioego huuraoptymizmu proszę – nie zamierzają otworzyć źródeł swojego głównego sterownika. Chodzi raczej o szerszą współpracę w ramach projektu Nouveau oraz lepszą obsługę czipów Tegra przez linuksowy kernel.”
Nouveau? Ich polityka względem tego projektu nie istnieje i nic nie wskazuje na to, że coś się zmieni.
Wow, nawet nie wiedziałem ile nowych rzeczy potrafi moje wine. Ba, nawet nawet nie wiedziałem, że mam jakieś nowe wine ;). Ale zachęciło mnie to na tyle, że może spróbuję Half-life 2 albo Team-fortress 2 odpalić (to chyba na source jest?). Kiedyś wydajność była średnia, więc wolałem mieć maksymalne detale i płynność na Windowsie.
Nie wiem czy to jest związane z wersją Wine, ale na Ubuntu Wowa zawsze odpalałem z opcją -opengl. Podejrzewam, że było tam jakieś starsze Wine. Na Archu z opengl się nie uruchamia (Crash, Crash, Crash…) a bez działa świetnie. Hmmm…
Wow, nawet nie wiedziałem ile nowych rzeczy potrafi moje wine. Ba, nawet nawet nie wiedziałem, że mam jakieś nowe wine ;). Ale zachęciło mnie to na tyle, że może spróbuję Half-life 2 albo Team-fortress 2 odpalić (to chyba na source jest?). Kiedyś wydajność była średnia, więc wolałem mieć maksymalne detale i płynność na Windowsie.
Nie wiem czy to jest związane z wersją Wine, ale na Ubuntu Wowa zawsze odpalałem z opcją -opengl. Podejrzewam, że było tam jakieś starsze Wine. Na Archu z opengl się nie uruchamia (Crash, Crash, Crash…) a bez działa świetnie. Hmmm…
[quote post=”17074″]Jeżeli ktoś używa Ubuntu 10.04 Lucid Lynx niech oszczędzi sobie (i innym) kłopotu i odpali wersję windowsową przez Wine.[/quote]
Ciekawe czemu służy LTS? 😉 Z chęcią zainstalowałbym Ubu 10.10, ale niestety ktoś „inteligentny inaczej” zdecydował, że obsługa dyskietek jest już użytkownikom niepotrzebna i nawet w Ubu 10.04 trzeba wymuszać starszą wersję udisk’a bo inaczej trzeba montować w terminalu. Zawsze można napisać sobie program np. skrypt Nautilusa, który to zrobi za system bo paczka udisk’a w Ubuntu 10.04 RC była OK, ale kilka dni po update finalnej wersji już nie!!! A Windows 7/8 nie ma z tym problemu…
Wiem, wiem, narzekam 😉