Nie ma co ukrywać, że na rynku systemów dla urządzeń mobilnych (smartfonów) mamy bardzo ograniczony wybór, bo możemy w zasadzie wybrać spośród dwóch systemów - iOS od Apple lub Android od Google (pofragmentowany na nakładki od poszczególnych producentów).
Ja jednak chciałbym w tym wpisie pokazać coś wyróżniającego się z tłumu, a mianowicie mobilną wersję Ubuntu, którą zainstaluję na smartfonie Google Pixel 3a XL, który już teraz jest dość leciwym sprzętem, bo jego oficjalna premiera była w maju 2019 roku.
Lista urządzeń wspierających Ubuntu Touch w momencie pisania tego wpisu składa się z 55 pozycji, więc nie jest tak krótka jakby się mogło wydawać.
Tak jak napisałem we wstępie ja postawiłem na Pixela 3a XL.
Jeżeli chodzi o zakup to istotne jest, aby był to model posiadający możliwość odblokowania bootloadera (czyli takiego telefonowego programu rozruchowego).
Nie wszystkie Pixele mają taką możliwość i nie da się tego ustalić np. po numerze seryjnym.
Niestety trzeba to sprawdzić indywidualnie dla każdego telefonu.
Jak to sprawdzić?
Będę to opisywał dla angielskiej wersji językowej systemu, bo tak będzie mi najłatwiej.
Wszystkie wskazane nazwy mają zapewne swoje odpowiedniki po polsku, ale jakby ktoś miał problem z ich znalezieniem to proponuję zmienić język systemu na angielski.
Wracając do meritum…
Należy wejść do ustawień telefonu, następnie About phone, odnaleźć na samym dole Build number i naciskać to tak długo aż wyświetli się napis You are now a developer!.
Teraz wracamy do głównego okna ustawień i przechodzimy do System i dalej Developer options, które właśnie odblokowaliśmy.
USB debugging (Debug mode when USB is connected) - tryb debugowania urządzenia poprzez USB, a po ludzku jest to opcja umożliwiająca manipulowanie w urządzeniu poprzez USB, tj.
Telefony, które mają zablokowaną możliwość odblokowania bootloadera będą miały tą pierwszą opcję (OEM unlocking) wyszarzoną, tj. niedostępną.
W przypadku wyskoczenia komunikatu dotyczącego tego czy zezwalamy na debugowanie USB (Allow USB debugging?) zaznaczamy opcję Always allow from this computer (z ang. Zawsze pozwalaj z tego komputera) i klikamy Allow (z ang. Przed rozpoczęciem procesu odblokowywania bootloadera i flashowania (wgrywania) nowego systemu musimy przygotować komputer przy pomocy którego będziemy robić te czynności.
Ja postawiłem na mój laptop do zadań specjalnych (pancerny Getac S410) działający na Windowsie, jednakże nic nie stoi na przeszkodzie, aby zrobić to samo na komputerze z Linuxem, a nawet macOS.
Po prostu niektóre kroki mogą się delikatnie różnic, ale ogólnie chodzi o to samo i uzyska się ten sam efekt.
Dobrze jest też zaopatrzyć się w sprawdzony i przede wszystkim działający kabel USB, który pozwala na transfer danych, a nie tylko na ładowanie (tak, są takie na rynku jakby ktoś nie miał styczności).
Do tego tak ryzykowane działania jak wgrywanie systemu do innego urządzenia zaleca się robić na laptopie.
Dlaczego?
To proste.
O ile krok 1-3 nie powinny dla nikogo stanowić problemu tak chciałbym się pochylić na moment nad czynnością wskazaną w punkcie 4.
Pod podanym linkiem dostępna jest paczka .ZIP (archiwum), która należy rozpakować w dowolnym miejscu.
Następnie trzeba podłączyć telefon do komputera, na telefonie otworzyć Centrum powiadomień (ruch palcem od górnej krawędzi urządzenia w dół), znaleźć opcję Charging this device via USB (Tap for more options) i nacisnąć na nią.
To ustawienia USB Preferences, które pozwalają zmienić to w jaki sposób telefon ma komunikować się z komputerem.
Domyślnie zaznaczoną opcją jest pozwolenie jedynie na ładowanie telefonu bez wymiany danych (No data transfer) my jednak chcemy zmienić to na (Use USB for) File transfer / Android Auto.
Na komputerze przechodzimy do Menu Start i następnie Menedżer urządzeń (Device Manager).
Zostanie wyświetlona lista wszystkich urządzeń znajdujących się w naszym komputerze lub do niego podłączonych.
Jeżeli nie instalowaliśmy wcześniej sterownika Google USB Driver to na tej liście powinniśmy mieć jedną pozycję, której ikona będzie miała znak żółtego trójkąta z wykrzyknikiem i być podpisana Android, Pixel 3a lub coś w tym stylu.
Gdy to zobaczysz na pewno będziesz wiedział/a o co chodzi.
Gwoli doprecyzowania będzie to prawdopodobnie w sekcji Inne urządzenia (Other devices).
Klikamy prawym przyciskiem myszy na to urządzenie i z menu kontekstowego wybieramy Aktualizuj sterownik (Update driver).
Zostanie odpalone okno, w którym wybieramy drugą opcję, czyli Przeglądaj mój komputer w poszukiwaniu sterowników (Browse my computer for drivers).
Następnie wybieramy Pozwól mi wybrać z listy dostępnych sterowników na moim komputerze (Let me pick from a list of available drivers on my computer), przycisk Dalej (Next) i gdy już jesteśmy w oknie proszącym Wybierz sterownik, który chcesz zainstalować dla tego sprzętu (Select the device driver you want to install for this hardware) korzystamy z przycisku Z dysku… (Have Disk…).
Wyskoczy kolejne okienko, w którym musimy odnaleźć przycisk Przeglądaj… (Browse…), naciskamy go i wskazujemy plik android_winsub.inf, który znajduje się z pobranej i wypakowanej paczce Google USB Driver.
Dalej już tylko przeklikujemy Otwórz (Open), OK, Dalej (Next), Tak (Yes), Instaluj (Install) i po pomyślnej instalacji kończymy przyciskiem Zamknij (Close).
Pixela zostawiamy dalej podłączonego do komputera.
Na komputerze uruchamiamy wcześniej zainstalowany program Minimal ADB and Fastboot, co powinno skutkować otworzeniem okna wiersza poleceń (windowsowy terminal).
Przy pierwszym wpisaniu tego polecenia pod List of devices attached może nam zostać wyświetlony komunikat z identyfikatorem urządzenia (numer seryjny) i obok niego frazą unauthorized, co oznacza, że musimy jeszcze raz wyrazić na telefonie zgodę na debugowanie przez USB.
Wykonujemy powyższe polecenie jeszcze raz i tym razem powinniśmy już zobaczyć frazę device obok identyfikatora urządzenia.
Jak widać weszliśmy do Bootloadera, ale Device state widnieje jako locked.
Naszym celem jest zmiana tego stanu na unlocked.
Przechodzimy na telefon, gdzie musimy potwierdzić, że bootloader ma zostać odblokowany.
Po krótkiej chwili wrócimy z powrotem do głównego menu bootloadera, gdzie powinniśmy już zobaczyć Device state: unlocked.
Sukces!
W dokumentacji UBports można przeczytać, że w celu wgrania Ubuntu Touch konieczne jest cofnięcie wersji systemu operacyjnego Android, działającego na naszym urządzeniu, do konkretnego wydania.
W momencie pisania tego poradnika jest to wydanie o oznaczeniu PQ3B.190801.002.
Piszę o tym, gdyż nie wiem ile czasu minęło od napisania tego poradnika do momentu kiedy z niego korzystasz i możliwe jest, że nowsze wersje Ubuntu Touch będą wymagały innej wersji Androida do instalacji.
Dlatego zawsze polecam wejść tutaj i sprawdzić tę informację na chwilę przed podjęciem dalszych działań.
Istotne są też tak zwane code name’y (z ang. Jest to istotne później, a znajomość tych nazw pozwoli uniknąć pomylenia obrazów systemów i wzięcia obrazu dla niewłaściwego modelu, co w zasadzie może w najgorszym wypadku uceglić całkowicie telefon.
Flashowanie (wgrywanie) systemu na urządzenia Pixel dokonuje się przy użyciu przeglądarki Chrome.
Cóż… Telefon od Google, więc zrobili tak, aby ich przeglądarka była niezbędna.
Sprytne, prawda?
Może i tak, ale my jesteśmy bardziej przebiegli, bo może niewiele osób wie, ale tak naprawdę nie potrzeba konkretnie przeglądarki Chrome, a dowolną działającą na silniku Chromium, czyli możemy równie dobrze użyć przeglądarki Microsoft Edge!
Zostaniemy przeniesieni do listy obrazów fabrycznych dla smartfonów Nexus oraz Pixel.
Po odnalezieniu odpowiedniego obrazu naciskamy obok W formacie Flash (dziwne tłumaczenie na polski, bo w wersji angielskiej jest to po prostu Flash).
Zostaniemy przeniesieni do webowego narzędzia do wgrywania systemów Android.
Efektem będzie przywrócenie systemu Android 9 na naszego Pixela.
Telefon został także wyczyszczony, więc ponownie trzeba na nim zrobić podstawową konfigurację, gdzie proponuję pominąć większość opcji i po prostu korzystać z przycisku Skip.
Nie ma nawet sensu konfiguracji Wi-Fi, bo za chwilę telefon zostanie znowu wyczyszczony po wgraniu systemu docelowego (Ubuntu Touch).
Jedyne co jest istotne po podstawowym skonfigurowaniu systemu to wejść do ustawień, znowu odblokować opcje deweloperskie i sprawdzić czy debugowanie USB jest włączone.
Ubuntu Touch wgramy wcześniej zainstalowanym instalatorem UBports.
Inicjatywa jaką jest projekt Ubuntu Touch jest bardzo, ale to bardzo, istotna, warta szacunku i godna wsparcia.
Jest to ewidentnie próba dania ludziom wolności w zakresie wyboru systemu operacyjnego, który nie będzie ich szpiegował na każdym kroku.
Do tego jest otwarty i kompletnie darmowy.
System jest całkiem nieźle dopasowany do urządzeń wielkości na jakich ma być uruchomiony i widać, że autorzy w pierwszej kolejności postawili na to, aby działały wszystkie podstawowe funkcjonalności telefonu.
Jednakże wyżej wymienione podstawy to nie wszystko.
To co najgorzej boli, gdy używa się Ubuntu Touch, to absolutny brak aplikacji.
Niestety, w “sklepie” z aplikacjami jest dramatycznie mało pozycji, co widać na poniższych zrzutach ekranu.
Proces instalacji Ubuntu Touch na odblokowanym telefonie (włączone debugowanie USB w opcjach telefonu oraz włączenie instalacji OEM, następnie uruchomienie w trybie bootloadera) jest bardzo prosty.
Po podłączeniu telefonu do komputera kablem USB uruchomiłem UBPorts, podążałem za instrukcjami dotyczącymi resetowania telefonu czy wejścia w tryb Recovery, resztę robił za mnie soft.
Nie będę ukrywał, że już myślałem, że całość się udała a po restarcie będę miał działający telefon z Ubuntu Touch.
Ale niestety…
Po ponownym uruchomieniu telefon wszedł w tryb Recovery a po próbie zamontowania systemu i ponownego uruchomienia zaskoczył tylko tryb UBPorts Recovery.
Siedziałem nad tematem tak długo, że zrobiło się ciemno (widać na drugim zdjęciu poniżej), ale nic nie udało się zrobić.
W tym momencie warto odpowiedzieć sobie na pytanie - dlaczego nie wyszło?
Przecież znałem metodę, kupiłem odpowiedni sprzęt i wyposażenie.
Ale czy aby na pewno?
No właśnie nie.
Zgubiło mnie tempo - chciałem zrobić wszystko za szybko!
Po znalezieniu ogłoszenia z telefonem zacząłem działać szybko zamiast sprytnie, przez co całkowicie pominąłem kwestię wersji systemu, o co mogłem przecież zapytać sprzedającego przed transakcją.
Co to dla mnie oznacza?
Przede wszystkim dwie rzeczy - że muszę nauczyć się lepiej i spokojniej czytać dokumentację oraz żeby zmniejszyć tempo pracy na rzecz jej jakości.
Na szczęście to nie koniec przygody z Ubuntu Touch.
Będę polował na inny telefon - teraz już z odpowiednim systemem (bootloaderem) na pokładzie.
Pixela 3a wykorzystam natomiast do zainstalowania LineageOS, który jest zdegooglowanym forkiem Androida.
Możecie spodziewać się wpisu na te temat całkiem niedługo!
Ubuntu Touch i smartfony z tym systemem operacyjnym są już dostępne, ale Ubuntu Touch zawsze był rozwijany z myślą o smartfonach z Androidem, a w szczególności urządzeniach Nexus, co sprawia, że instalacja na tych telefonach jest bardzo prosta i nieskomplikowana.
Kilka dni temu wyjaśniliśmy, jak zainstalować Ubuntu Touch na znanym smartfonie, ale możliwe jest również uruchomienie go w trybie dual-boot na smartfonie Nexus.
Proces jest prosty i pozwoli nam mieć system operacyjny Android i Ubuntu Touch na tym samym smartfonie, choć nie w tym samym czasie.
Aby to osiągnąć, będziemy potrzebować Nexusa 4 lub Nexusa 5 z zwolnionym programem ładującym.
Rozwój Ubuntu Touch zawsze odbywał się za pomocą Nexusa
Po odblokowaniu Nexusa podłącz go do komputera i pozostaw podłączony, ponieważ pozostałe kroki zostaną wykonane za pomocą komputera, a nie smartfona.
Potrzebujemy skryptu do zainstalowania aplikacji, która umożliwi dual boot.
./dualboot.sh
Przed naciśnięciem klawisza Enter upewnij się, że Nexus jest podłączony do naszego komputera i aktywowane jest debugowanie USB.
Spowoduje to zainstalowanie aplikacji z logo Ubuntu w naszym menu aplikacji.
Odłączamy Nexusa od komputera i otwieramy aplikację.
Aplikacja jest prosta, wystarczy wybrać kanał pobierania i rozpocząć pobieranie.
Po zakończeniu pobierania Nexus uruchomi się ponownie, ale tym razem z Ubuntu Touch, a nie z Androidem.
Korzystanie z Ubuntu Touch jest dość trudne, ponieważ nie jest bardzo podobne do Androida, ale to nie czyni go gorszym.
Jeśli chcesz wrócić do Androida, po prostu uruchom ponownie komputer i wybierz opcję Android.
Canonical, twórca systemu Ubuntu, kiedyś pracował nad systemem operacyjnym dedykowanym urządzeniom z Androidem.
Celem tego przedsięwzięcia było „rewolucjonizowanie branży” oraz zmiana sposobu, w jaki użytkownicy korzystają z telefonów komórkowych, przenosząc pełnoprawne środowisko Linuksa na smartfony.
Po kilku latach firma zrezygnowała z tego projektu.
Dlaczego?
Canonical nie zdołał przyciągnąć konsumentów do rezygnacji z dominującego systemu Android, co skutkowało porzuceniem projektu.
Mimo to, jeśli chcesz zainstalować Ubuntu Touch na swoim urządzeniu z Androidem, istnieje taka możliwość.
Niedługo po zakończeniu prac przez Canonical, projekt został przejęty przez społeczność programistów, którzy wciąż pragną, by Ubuntu Touch stał się rzeczywistością.
Nie wszystkie urządzenia wymienione na stronie UBports są kompatybilne z narzędziem do flashowania.
Chociaż są one początkowo zaznaczone jako obsługiwane, wiele z nich nie ma jeszcze dostępnej stabilnej wersji Ubuntu Touch.
W międzyczasie odwiedź stronę UBports, zapisz się do newslettera, dołącz do ich grupy na Telegramie i pozostawaj na bieżąco.
UBports oficjalnie wspiera obrazy Ubuntu Touch (i aktualizacje) dla modeli Google Nexus 5, OnePlus One oraz Fairphone 2.
Te trzy urządzenia są w pełni obsługiwane i nie są już rozwijane.
Wszystkie sterowniki i funkcje tych smartfonów działają bez zarzutu z Ubuntu Touch.
Są to „podstawowe” urządzenia, na których skupiły się wysiłki UBports.
Oprócz tego UBports ma również urządzenia w fazie Core (przedpremierowej).
Te urządzenia są obiecujące, jednak znajdują się w wersji beta.
Należą do nich Optimus L90, BQ M10 HD oraz BQ M10 FHD.
Na koniec, UBports oferuje wsparcie dla starszych urządzeń.
Mowa tu o modelach, które mają porty - poprzez Canonical, oficjalny zespół programistów Ubuntu Touch lub społeczność Ubuntu.
Te starsze urządzenia nie będą otrzymywały nowych funkcji jak urządzenia z kategorii Core, ale UBports dostarcza im aktualizacje bezpieczeństwa i poprawki oprogramowania.
Od momentu, gdy UBports przejęło rozwój Ubuntu Touch, procedura instalacji systemu na urządzeniach Core oraz Core Pre-release uległa zmianie.
W przeszłości Ubuntu Touch można było zainstalować jedynie na systemie Ubuntu.
Teraz, dzięki UBports, fani Ubuntu Touch mogą pobrać aplikację, która działa na każdej dystrybucji Linuksa, w tym na Ubuntu.
Pierwszym krokiem jest pobranie obrazu aplikacji stąd.
W tym przewodniku przedstawimy proces instalacji Ubuntu Touch na urządzeniach Core i Core Pre-release.
To dlatego, że te modele zakończyły rozwój i są najbezpieczniejsze do instalacji.
Gdy narzędzie flash UBPorts jest prawidłowo skonfigurowane i gotowe do działania w systemie Linux, można rozpocząć instalację.
Krok 1: Podłącz kabel USB do swojego urządzenia.
Krok 3: Wybierz kanał wersji Ubuntu Touch.
Krok 5: Pozwól instalatorowi wykonać swoją pracę.
Może to zająć chwilę, więc po prostu usiądź wygodnie.
Mimo że Canonical porzucił ambicje związane z rynkiem smartfonów, związane z pierwszym „telefonem konwergencyjnym z Linuksem”, Ubuntu Touch wciąż żyje i ma się dobrze dzięki społeczności.
W małej paczce znalazłem trzy małe zawiniątka z folii bąbelkowej, a w środku kolejno telefon, ładowarkę i kabel.
Ładowarka to całkiem porządny sprzęcik ładujący nawet do 2,4A, kabelek z jednej strony USB A, z drugiej USB C, który wydaje się być dobrej jakości.
Aukcja dotyczyła samego telefonu, nie było informacji o akcesoriach, więc miło się zdziwiłem.
Sam telefon był w bardzo dobrym stanie - brak rys na ekranie, tył lekko podrapany, ale nie nazwałbym telefonu zużytym.
Pobawiłem się chwilę telefonem, żeby zobaczyć, czy wszystko działa, czy trzyma bateria, czy odpala się aparat i tak dalej.
Telefon sprawił wrażenie bardzo zadbanego, wszystko działało jak należy.
Podsumowując - bardzo dobry zakup, byłem bardzo zadowolony, jeszcze…
Wszedłem jeszcze raz na stronę Ubuntu Touch, żeby zobaczyć jakie kolejne kroki powinienem wykonać, aby wgrać system na telefon.
Wszedłem więc w ustawienia telefonu, informacje o systemie a tam niespodzianka - Android 12.
Ktoś dokonał aktualizacji na możliwie najwyższy dostępny dla tego modelu system.
W sumie to się nie dziwię, bo jeśli ktoś korzystał z telefonu na co dzień, to praca na Andku 9 była bez sensu.
Informacja na stronie mówi, że należy zdowngrade’ować telefon do Androida 9 w ostatnim wydaniu.
Jest nawet link do konkretnego buildu.
Stwierdziłem, że to na pewno nic trudnego i zacząłem downgrade - pobrałem obraz, zrestartowałem telefon w trybie bootloadera, wklepuję komendę na wgranie obrazu, operacja wykonuje się chwilę i… „nie można dokonać aktualizacji oprogramowania”.
Czyżby wszelkie plany pogrzebane?
Jeszcze nie!
Znalazłem wątek na forum, gdzie użytkownicy pisali o udanej próbie instalacji z tym samym bootloaderem, który jest na moim telefonie.
Do pracy z Ubuntu Touch wykorzystywany jest program UBPorts.
Z pomocą programów adb oraz fastboot aplikacja UBPorts automatycznie wykrywa smartfona podłączonego do komputera, uruchamia ponownie w trybie bootloadera, a następnie za pomocą prostych instrukcji nakierowuje na odpowiednie działania.
Skorzystałem z programu w formie pakietu Appimage, ale możliwe jest także zainstalowanie go z paczki .deb lub przez Snapa (oczywiście na dystrybucjach opartych o Ubuntu).
Proces instalacji Ubuntu Touch na odblokowanym telefonie (włączone debugowanie USB w opcjach telefonu oraz włączenie instalacji OEM, następnie uruchomienie w trybie bootloadera) jest bardzo prosty.
Po podłączeniu telefonu do komputera kablem USB uruchomiłem UBPorts, podążałem za instrukcjami dotyczącymi resetowania telefonu czy wejścia w tryb Recovery, resztę robił za mnie soft.
Nie będę ukrywał, że już myślałem, że całość się udała a po restarcie będę miał działający telefon z Ubuntu Touch.
Ale niestety…
Po ponownym uruchomieniu telefon wszedł w tryb Recovery a po próbie zamontowania systemu i ponownego uruchomienia zaskoczył tylko tryb UBPorts Recovery.
Siedziałem nad tematem tak długo, że zrobiło się ciemno (widać na drugim zdjęciu poniżej), ale nic nie udało się zrobić.
Warto też zobaczyć przebieg instalacji i pierwszego uruchomienia, bo przy takich operacjach łatwo o pomyłkę w kolejności działań.
| Element | Znaczenie |
|---|---|
| USB debugging | Umożliwia komunikację telefonu z komputerem |
| OEM unlocking | Odblokowuje możliwość odblokowania bootloadera |
| Bootloader | Program rozruchowy telefonu |
| UBports | Instalator i narzędzie do Ubuntu Touch |
| ADB / Fastboot | Narzędzia do obsługi urządzeń z poziomu komputera |

Ubuntu Touch pokazuje, że jest dojrzałym, oryginalnym i świetnym systemem.
Ba! Nawet w kilku kwestiach wyprzedzał swoich konkurentów, bowiem już dawno tutaj interakcja z interfejsem bazowała na gestach, natomiast iOS i Android ma taką funkcję od niedawna.
Nie zabrakło również ciemnego motywu, który można włączyć w oddzielnej aplikacji Unity Tweaks Tool.
Niestety, sklep z aplikacjami na Ubuntu Touch świeci pustkami, a to przecież właśnie aplikacje są jednym z najważniejszych elementów smartfonów.
Myślę, że warto zainstalować Ubuntu Touch jako ciekawostkę i tylko w celach testów.
Póki, co system ten nie nadaje się do użytku codziennego.
tags: #ubuntu #toutch #instalacja
About the author