Zařízení z rodiny Pine64 jsou v poslední době známá hlavně díky levným ARMovým notebookům Pinebook a mobilnímu telefonu Pinephone. Prvním produktem z řady Pine64 byl ale stejnojmenný jednodeskový ARM počítač, na jehož novější verzi Pine A64 LTS se spolu dnes podíváme a co je důležitější: nainstalujeme si na něj Fedoru.

Pine A64

Původní Pine A64 byl představen v roce 2015 na Kickstarteru, kde úspěšně vybral 1,7 milionu dolarů a první zařízení se byla k dispozici v roce 2016. Mírně přepracovaná varianta Pine A64 LTS je dostupná i nyní a měla by být v prodeji minimálně do roku 2022.

Pine A64 LTS je relativně standardní jednodeskový ARM počítač nabízející čtyřjádrový procesor ARM Cortex-A53, grafickou kartu Mali 400 MP2 a 2 GB operační paměti. O ukládání dat se pak postará, jak je u podobných strojů obvyklé, micro SD karta nebo volitelná eMMC karta.

Instalace Fedory

Ačkoli především u prvních variant ARMových desek bylo zvykem využívat speciálně upravené verze linuxových distribucí buď přímo od výrobce, nebo od komunity, v dnešní době už to obvykle nebývá třeba. ARM64 (někdy také AArch64) architektura je jednou z na Fedoře oficiálně podporovaných architektur a Pine A64 LTS je také jedním ze zařízení, které si s AArch64 Fedorou rozumí zcela bez problémů.

Instalace na ARMová zařízení se obecně liší od instalace na běžné počítače, protože neumožňují nabootovat a provést instalaci z LiveCD nebo LiveUSB. Instalační obrazy pro ARM se tedy nešíří jako hybridní ISO obrazy jako v případě architektury x86_64, ale jako surové obrazy určené pro ruční nakopírování na micro SD nebo eMMC kartu určenou pro dané zařízení. To je možné udělat ručně, ale na Fedoře je lepší využít speciálního instalátoru arm-image-installer, který je dostupný v repozitářích a nainstalovat si jej můžete pomocí příkazu:

sudo dnf install arm-image-installer

Jedná se ve skutečnosti o relativně jednoduchý shellový skript, který celé rozbalení, kopírování a úpravu instalačního obrazu zautomatizuje.

Pro instalaci je tedy jen třeba připojit micro SD nebo eMMC kartu k počítači s Fedorou, stáhnout vybraný obraz pro AArch64 architekturu a spustit následující příkaz:

sudo arm-image-installer --image=Fedora-Workstation-32-1.6.aarch64.raw.xz --target=pine64-lts --media=/dev/mmcblk0 --resizefs

kdy parametr --image ukazuje na vybraný stažený obraz, --target specifikuje, na které zařízení budeme instalovat (seznam podporovaných zařízení je možné vypsat pomocí příkazu arm-image-installer --supported) a --media odkazuje na micro SD kartu, na kterou budeme instalovat. Volitelný přepínač --resizefs se postará o to, aby byla velikost souborového systému automaticky přizpůsobena velikosti dané karty.

Pomocný skript pro instalaci na ARM64

A to je vše, nyní už jen stačí SD kartu (nebo v mém případě eMMC kartu) připojit k Pine 64 a nabotoovat.

První boot pak probíhá stejně jako u každé jiné čerstvé instalace Fedory. Protože jsme zvolili variantu Workstation, spustí se GNOME Initial Setup, který umožní vytvoření uživatele a další nastavení a pak už se spustí klasické GNOME.

GNOME na ARM64

Samozřejmě vzhledem k slabému výkonu Pine A64 není GNOME úplně nejlepší volbou. Čtyřjádrový procesor jede naplno a 2 GB operační paměti je na hraně použitelnosti a to i přesto, že ARMové obrazy mají povolený Swap na ZRAM. Pokud byste chtěli Pine A64 používat s grafickým rozhraním, doporučil bych tedy spíše nějaké méně náročné prostředí, jako Xfce nebo LXQt, kdy omezený výkon tolik nevadí. Případně je možné sáhnout po některém z výkonnějších boardů jako je například Rock64 nebo Pine H64 a Pine A64 si ponechat jako malý domácí "server" bez grafického rozhraní.

Instalace serverové verze Fedory pak probíhá úplně stejně jako u té desktopové. Akorát u nastavení při prvním bootu si musíme vystačit s textovým nástrojem místo grafického z GNOME. Na druhou stranu i to má své výhody: nepotřebujeme grafický výstup, postačí sériová konzole.

Textová verze nástroje Initial Setup

Systémové nároky serverové verze jsou samozřejmě mnohem nižší a Pine tak funguje relativně svižně i při ovládání přes webovou konzoli Cockpit.

Webová konzole Cockpit

Fedora IoT

Zatím jsme si ukázali instalaci a použití klasické Fedory, ale Fedora má pro podobná zařízení i speciální edici (spin) Fedora IoT, pro kterou je Pine A64 LTS dokonce jedním z referenčních zařízení. Fedora IoT byla poprvé představena společně s Fedorou 29 a od aktuálně vyvíjené verze 33 se stane oficiální edicí.

Spíš než ke "klasické" Fedoře pro ARM má IoT edice blíže k Fedoře Silverblue a cílí spíše na profesionální nasazení. Stejně jako Silverblue využívá OSTree -- neměnný operační systém a atomické aktualizace s možností snadného rollbacku jsou ve světě IoT velmi důležité a bezpečný způsob aktualizace se snaží vyřešit mnoho různých projektů -- pokud vám po aktualizaci nenabootuje Pine na stole, dá se to relativně snadno vyřešit, pokud totéž udělá pár tisíc zařízení umístěných někde "uprostřed divočiny", máte velký problém. Fedora IoT je také přizpůsobená pro práci s kontejnery, které umožní snadno oddělit běžící aplikace od systému a také je bezpečně aktualizovat nezávisle na verzi systému.

Pokud byste si chtěli Fedora IoT vyzkoušet, postup je stejný jako u klasické Fedory, jen si místo Workstation nebo Serveru stáhnete obraz Fedora IoT. Více informací o Fedora IoT se můžete dočíst v oficiální dokumentaci a doporučit mohu také přednášku Petera Robinsona z loňského Flocku v Budapešti.