Acer Aspire V5-573PG pod kontrolą SteamOS

Gdy testowałem otrzymanego w ramach akcji Intela notebooka Acera w grach, doszedłem do wniosku, że większość będą interesować wyniki w Windows, ale być może kogoś będzie ciekawić, jak ta maszyna sprawuje się pod Linuksem. Pozostało jedynie wybrać dystrybucję. Jako że notebook miał być przeznaczony do zastosowań rozrywkowych wybór mógł być tylko jeden: SteamOS

Ponieważ system jest ciągle w fazie testów, nie należy tego wpisu traktować jako typowej recenzji - będzie to raczej rzut okiem na to co działa oraz problemy, które się pojawiają. W tym ostatnim przypadku postaram się też napisać, jak je rozwiązać, by kolejna osoba, które zechce się SteamOSem pobawić miała trochę łatwiej.

SteamOS

O SteamOS były newsy na DP, pisał też o nim lucas__, więc przypomnę tylko najważniejsze fakty:


  • SteamOS jest produktem opartym o Linuksa, obecnie na bazie Debiana 7 z kilkoma zmianami wprowadzonymi przez Valve: dodatkowymi sterownikami, dostrojonym jądrem, własnym menadżerem kompozycji i aktualizacjami od producenta.
  • Głównym zastosowaniem SteamOS mają być komputery HTPC do salonu i umożliwienie grania na nich niczym na konsoli.
  • SteamOS pozwala także na uruchomienie zwykłego desktopu, nie ogranicza dostępu do konta roota.

Jak widać, cele Valve są bardzo konkretne, sprawdźmy więc jak będzie działał w praktyce. Co prawda notebook nie jest sprzętem, który wybiera się do roli HTPC, ale osoby, które z różnych przyczyn nie chcę kupować kolejnego komputera mogą zechcieć okazjonalnie podpiąć do telewizora swój przenośny sprzęt.

Przed instalacją

Posiadaczami komputera ze SteamOS możemy stać się na dwa sposoby. Pierwszym jest zakup Steam Machine - komputera z preinstalownym SteamOSem. Valve rozesłało testowe egzemplarze i cały czas pracuje nad ich ulepszeniem, swoje wersje komputera proponują też niezależni producenci. Drugim i obecnie znacznie powszechniejszym jest stworzenie własnej Steam Machine. Oficjalne wymagania to:


  • 64-bitowy procesor
  • 4 GB pamięci RAM
  • 500 GB dysk twardy
  • karta graficzna NVIDIA (obecnie także AMD i Intela)
  • UEFI i port USB do instalacji

Oficjalnie dostępne są też dwie metody instalacji:


  • Nagranie domyślnego obrazu systemu - najprostsza - ściągamy spakowany obraz, rozpakowujemy go na pendrive, uruchamiamy z niego komputer i zgadzamy się na nagranie obrazu na naszym dysku. Restartujemy i gotowe.
  • Instalacja własna - bardzo podobna do poprzedniej. Nagrywamy pliki instalacyjne na pendrive, uruchamiamy z niego komputer, wybieramy automatyczną instalację. Po instalacji musimy się zalogować do systemu by wykonały się dodatkowe skrypty, po raz ostatni restartujemy komputer i możemy cieszyć się SteamOSem.

Obie metody mają jedną, bardzo poważną wadę: kasują cały dysk twardy. Na szczęście niedawno Valve udostępniło trochę ukrytą, mniej destrukcyjną metodę instalacji:


  • Instalacja z obrazu ISO - jest ona podobna do poprzedniej, ale w trakcie instalacji mamy możliwość wyboru instalacji eksperckiej, która pozwoli nam na spartycjonowanie dysku według własnego uznania.

W tym przypadku zmniejszone są również wymagania co do wielkości powierzchni dyskowej - ja na SteamOS przeznaczyłem 250 GB.

Jeśli dla kogoś i ta metoda okaże się niewystarczająca (np. z powodu braku sterowników), to dostępny jest jeszcze stworzony przez użytkowników instalator Ye Olde SteamOSe - jeśli ktoś byłby zainteresowany, to jego autor spisał listę różnic względem obrazu ISO od Valve.

By nie skasować zainstalowanego Windowsa zdecydowałem się na instalację z obrazu ISO od Valve. Sciągnąłem go, wrzuciłem na USB za pomocą Win32 Disk Imager (ale inne programy też powinny działać, np.: RMPrepUSB ). Musiałem jeszcze przygotować wolny obszar dysku, gdyż instalator nie pozwala na zmianę rozmiarów partycji NTFS:

Następnie trzeba było uruchomić komputer z pendrive'a i tu pojawiły się pierwsze problemy. Podczas startu nacisnąłem F12, pojawiło się menu, z którego mogłem wybrać urządzenie do startu systemu. Niestety wybór pendrive'a skończył się błędem - nie mogę go uruchomić, gdyż włączony jest Secure Boot. Wszedłem do setupu, odnalazłem włączoną opcję Secure Boot, ale niestety była zablokowana możliwość jej zmiany. Jak się okazało, by móc ją zmienić, trzeba ustawić hasło do setupu. Po tej operacji udało się już poprawnie uruchomić instalator SteamOS.

Instalacja przebiegła bez komplikacji. Wybrałem instalację ekspercką, pozwoliłem na podzielenie wolnej przestrzeni na partycje i po chwili system znalazł się na dysku. Nastąpił restart, ustawiłem w UEFI partycję SteamOS jako tę do uruchomienia, system zaczął się ładować i po chwili ujrzałem czarny ekran. Spanikowany zrestartowałem komputer, jednak efekt był ten sam: widać, że SteamOS się ładuje, ale na koniec dostaję czarny ekran. Rozwiązanie okazało się banalne: po starcie, system ustawia podświetlenie ekranu na minimum. Użycie odpowiedniego klawisza funkcyjnego załatwiło sprawę - mogłem zobaczyć pulpit:

Po akceptacji licencji i aktualizacji Steama komputer został zrestartowany (o ile mnie pamięć nie myli, nie musiałem wykonywać skryptu post_logon.sh, o którym wspomina dokumentacja SteamOS) i uruchomiła się CloneZilla. Potwierdziłem, że chcę utworzyć obraz partycji, program wykonał swoje zadanie i po kolejnym restarcie mogłem w końcu zacząć korzystać ze SteamOS. Jeśli ktoś korzystał z trybu Big Picture to już wie jakiego interfejsu spodziewać po tym systemie:

Wrażenia

Na początek postanowiłem sprawdzić, w co na takiej maszynie w ogóle mogę grać. Okazało się, że z ponad 200 gier, które posiadam na Steam, blisko 1/3 działa na Linuksie:

Wiele z nich to produkcje indie, które w większości udało mi zakupić w przeróżnych akcjach Humble Indie Bundle. Ale jest też sporo "dużych" gier: praktycznie wszystkie gry Valve działają (Half-Life, DOTA 2, Left 4 Dead, Counter-Strike, Portal), hardcorowi stratedzy wybiorą coś z oferty Paradox (Europa Universalis, Crusader Kings), można zagrać w Football Managera 2014, Red Orchestra, Metro czy Wormsy. W sumie, na chwile obecną na Steamie dostępne jest 518 gier działających na Linuksie. A jeśli ktoś zapragnie zagrać w gry niedostępne na tym systemie, to Valve obiecuje, że będziemy mogli jest streamować z innego komputera. Niestety dostęp do bety Steam In-Home Streaming otrzymałem dopiero po odesłaniu laptopa, więc nie mogłem przetestować tej funkcjonalności.

Nie ma też problemu z kupowaniem nowych gier. Kilka kliknięć padem i już możemy cieszyć się z nowego nabytku:

Systemowi udało się rozpoznać i obsłużyć większość podzespołów testowanego Acera. Bez zarzutu działał dźwięk, udało mi się bez problemu połączyć z siecią Wi-Fi. Niestety nie udało mi się uruchomić karty NVIDIA. Teoretycznie powinno pomóc uruchomienie bumblebee, w praktyce nie udało mi się dojść dalej, niż do problemu opisywanego na wiki Debiana - uruchomienie optirun kończyło się komunikatem "[ERROR]Cannot access secondary GPU - error: [XORG] (EE) No devices detected". Jedyną grą, którą dłużej testowałem był Half-Life 2. Uruchomiłem timedemo, którego używałem w poprzednim wpisie do badania wydajności grafiki:

Zintegrowany układ Intela, przy ustawieniach identycznych z tymi z poprzedniego testu uzyskał trochę ponad 30 klatek na sekundę:

Co do padów, bo z myślą o takich kontrolerach był tworzony SteamOS, to działają bez zarzutu. Zarówno klasyczny Microsoft Xbox 360 Wireless Controller for Windows jak i DualShock 2 podłączony przez chińską przejściówkę Dilong PU120T są rozpoznawane i działają. Ekran dotykowy również działa, ale interfejs SteamOS nie jest do niego przystosowany - interpretuje on dotyk jak kursor myszy - nie da się np. przeglądać list gestami.

Jest parę rzeczy, które irytują. Jak na system dedykowany HTPC dziwi brak odtwarzacza wideo. Ja wiem, że nie jest problemem jego zainstalowanie i dodanie kodeków, ale oczekiwałem, że nie będę musiał zajmować się takimi problemami:

Braki są również we wbudowanej przeglądarce. Da się uruchomić Youtube, ale większość filmów nie da się odtworzyć, ze względu na brak wtyczki Adobe Flash. Ostatni problem, jaki zaobserwowałem, to problemy przy wyłączaniu systemu - SteamOS się zamyka, ale notebook nie wyłącza się - trzeba mu pomóc przyciskając włącznik. Jak widać, jeśli chodzi o funkcjonalności inne niż gry, to Valve musi jeszcze je dopracować.

Na koniec dorzucam krótkie wideo z działania SteamOS:

Triki

Ponieważ SteamOS jest cały czas w fazie testów i wciąż nie wszystko działa, podzielę się jeszcze kilkoma radami dla osób, który chciałyby samemu przetestować ten system. Zakładam pewne obycie z Linuksem, chociaż większość wykonywanych poleceń powinna być znana nawet początkującym.

Tryb desktop i konta użytkowników

By przejść do normalnego desktopu, wystarczy kliknąć przycisk w prawym górnym rogu i wybrać opcję "Return to desktop".

By uruchomić konsolę klikamy "Applications" i wybieramy "Terminal". Do większości funkcjonalności będziemy korzystać z dwóch kont:


  • desktop - konto związane ze zwykłym desktopem. Domyślne hasło to "desktop".
  • steam - konto, pod którym działa powłoka SteamOS - używane do uruchamianie gier itd. Domyślnie bez ustawionego hasła.

By ustawić hasło dla konta steam wykonujemy:

sudo passwd steam

potwierdzamy hasłem konta desktop, a następnie ustawiamy wybrane hasło.

By móc połączyć się zdalnie, warto zainstalować sshd. Serwer openssh jest dostępny w repozytorium SteamOS, by go zainstalować wystarczy wykonać:

sudo aptitude install openssh-server

By dowiedzieć się, jaki adres ma nasz SteamBox uruchamiamy:

/sbin/ifconfig

W tym momencie możemy połączyć się z naszą maszyną za pomocą np. PuTTY :

Instalowanie paczek Debiana

Jeśli nie chcemy dodawać repozytorium Debiana do systemowej listy repozytoriów, to możemy paczki Debiana instalować ręcznie. W tym celu odnajdujemy .deb w repozytorium, ściągamy go wgetem i instalujemy za pomocą dpkg np.:

wget http://ftp.us.debian.org/debian/pool/main/r/recordmydesktop/recordmydesktop_0.3.8.1+svn602-1+b1_amd64.deb
sudo dpkg -i recordmydesktop_0.3.8.1+svn602-1+b1_amd64.deb

Robienie zrzutów ekranu

Valve nie przewidziało możliwości robienia zrzutów ekranu, gdy uruchomiona jest powłoka SteamOS. Ale da się temu łatwo zaradzić. Na naszej Steam Machine musimy być uruchomina powłoka SteamOS. Z drugiego komputera logujemy się na konto steam i wykonujemy:

xwininfo -display :0

Jedna ze zwróconych linijek będzie zawierała napis w stylu: "xwininfo: Window id: 0x100000b "Steam"" - Interesuje nas id okna, w tym przypadku 0x100000b. By wykonać zrzut ekranu korzystamy z polecenia import. Najprościej w tym celu zrobić napisać prosty skrypt:

import -display :0 -windows 0x100000b $1.png

I zapisać go np. jako screenshot.sh. Nadajemy mu prawa do wykonywania:

chmod +x screehshot.sh

i możemy zacząc z niego korzystać:

./screenshot.sh nazwa_zrzutu

Plik zostanie zapisany pod nazwą nazwa_zrzutu.png (dla początkujących: $1 w skrypcie oznacza pierwszy parametr przekazany do skryptu).

Źródło, z którego korzystałem Screenshot from Big Picture Mode UI?.

Nagrywanie wideo

Uruchomienie nagrywania wideo jest nieco bardziej skomplikowane. Musimy doinstalować pakiet recordmydesktop z repozytorium debiana. Później tworzymy skrypt analogiczny do tego służącego do zrzutów ekranu:

recordmydesktop --display :0 --windowid 0x100000b --device pulse --workdir /home/steam/recordingtemp -o /home/steam/yourvideofilename.ogv

By zacząć nagrywanie uruchamiamy napisany skrypt, gdy chcemy je przerwać naciskamy Ctrl+C i czekamy aż program dokona zapisu. Nasze pliki będą zapisywane jako yourvideofilename.ogv, jeśli plik już istnieje, nazwa zostanie uzupełniona o kolejny numer - nie ma więc ryzyka, że nadpiszemy nasze dzieła. Pamiętamy o tym, że nagrywać musimy jako użytkownik steam.

Niestety w moim przypadku był jeden problem - nie działało nagrywanie dźwięku. Było to związane z niewłaściwymi ustawieniami kontroli głośności. By rozwiązać ten problem należy z repozytorium Debiana doinstalować pakiety "alsa-utils" i "pavucontrol". Następnie uruchamiamy SteamOS w trybie desktop i z uruchamiamy aplikację "Volume Control". Przechodzimy do zakładki "Recording". Normalnie będzie ona pusta, ale gdy odpalimy nasz skrypt zapisujący wideo, to pojawi się tam pozycja recordmydesktop. "ALSA Capture from" przestawiamy z "Built-in Audio Analog Stereo" na "Monitor of Built-in Audio Analog Stereo". Od tego momentu dźwięk powinien nagrywać się normalnie.

Oryginalny artykuł, z którego korzystałem, znajdziemy tu: How to capture FRAPS-like video from SteamOS.

Podsumowanie

Po tym krótkim teście dowiedzieliśmy się kilku rzeczy. SteamOS to ciekawe oprogramowanie dla osób, które korzystają z HTPC. Już w tej chwili możemy dzięki niemu korzystać ze sporej biblioteki gier na Linuksa, na pozostałe funkcjonalności przyjdzie nam jeszcze trochę poczekać. Osobiście mam nadzieję, że w SteamOS pojawią się funkcjonalności znane z XBMC. Nie ma też większych problemów z korzystaniem z Linuksa na Acer Aspire V5-573PG. Gdyby nie brak czasu, zapewne udałoby mi się zmusić do współpracy grafikę NVIDIA, ale zintegrowany układ Intela działa całkiem sprawnie.

W następnym odcinku

Acer opuścił mnie tydzień temu, dlatego w ostatnim wpisie zamieszczę jeszcze parę informacji i spostrzeżeń, który nie pasowały do żadnego z pozostałych wpisów oraz podsumuje swoją przygodę z tym notebookiem.