Ubuntu op je Raspberry Pi: MATE en Snappy Core
- November 23, 2017
- 0
Raspbian is een handig en breed inzetbaar besturingssysteem met goede performance, vooral op het nieuwste model Raspberry Pi. Als desktop is het echter misschien een beetje kaal en karig. Vanaf de Raspberry Pi 2 Model B, is het echter mogelijk om Ubuntu MATE te draaien als desktop op deze populaire single-board computer. Is er op de Raspberry met uitgebreidere en zwaardere Ubuntu als desktop te werken? Kun je pc de deur uit doen ten gunste van de Raspberry? Linux Magazine vergeleek de performance van de laatste Ubuntu MATE op de ARM-processor van de Raspberry Pi 2 en Pi 3. Als kers op de taart kijken we snel ook nog even naar Ubuntu Snappy Core op de Raspberry Pi 2.
Zoals de meesten weten, draait Raspbian op de RPi2 en RPi3 in 32-bit ARMv7-mode. Dat wil zeggen dat het besturingssysteem niet is geoptimaliseerd voor de 64-bit ARMv8-processor in de RPi3. Het systeem gebruikt dezelfde kernel7 om te booten. Hetzelfde geldt voor Ubuntu Mate. De performance op de RPi3 is dus nog niet optimaal. De snelheid van de microSD-kaart is cruciaal voor de performance, gebruik dus het snelste kaartje die je hebt! We testen Ubuntu MATE op beide Raspberry-modellen en vergelijken de praktische inzetbaarheid als desktop.
Ubuntu voor de ARMv7
De link op de website van de Raspberry Foundation stuurt je naar Ubuntu: https://ubuntu-mate.org/raspberry-pi/ Download de 1.1GB image van Ubuntu MATE 16.04, pak het uit, schrijf het op een (class 6 of beter nog een class 10) microSD-kaart en boot dan je Raspberry van het kaartje. We hebben dit proces in Linux Magazine al vaak beschreven, dus we gaan er hier niet verder op in. Tijdens de download mag je vrijwillig een bedrag via PayPal doneren als je wilt, om Ubuntu te sponsoren.
Initiële configuratie
Ubuntu geeft zelf aan dat het de eerste keer op de Raspberry Pi wat langzamer boot. Bovendien moet je na het opstarten wat instellingen maken. De eerste boot van Ubuntu MATE tot aan het configuratiescherm, duurt op de RPi2 102 seconden en op de RPi3 78 seconden. Aangezien we hetzelfde class 10 micro-SD-kaartje gebruiken, is dit verschil vooral te wijten aan de processorsnelheid.
Een wizard leid je door enkele stappen. Als eerste kies je de taal (in ons geval Nederlands), de tijdzone (Amsterdam) en de toetsenbordindeling. Dit duurt op de RPi2 50 seconden en op de RPi3 33 seconden (verwerkingstijd, niet de interactieve tijd). Tot slot voeren we een login-naam en hostnaam in en kiezen we voor automatisch aanmelden. Het systeem wordt geïnstalleerd, gedurende het wachten krijg je wat tips over Ubuntu MATE te zien. De grafische omgeving wordt opnieuw gestart en na ongeveer 330 seconden op de RPi2 en 250 seconden op de RPi3 zijn de menu’s opgebouwd en kun je aan de slag; het welkomstscherm wordt getoond. Het systeem met halt uitschakelen duurt op beide modellen even lang (ca. 13 seconden). Nadat de initiële config achter de rug is, starten we Ubuntu opnieuw op. De opstarttijd voor de RPi2 en de RPi3 zijn respectievelijk 75 en 48 seconden (met autologin), totdat het welkomstscherm is geopend.
De aanpak van Raspbian spreekt ons meer aan, want die boot in 34 seconden (klaar voor gebruik). Met Raspberry Pi Configuration pas je de taal en Localisatie aan (en overscan) en na een reboot is alles actief.
WiFi
De ingebouwde WiFi in de RPi3 werkt niet meteen na de initiële installatie. Pas na de reboot kan het WiFi-netwerk worden geconfigureerd. Dit is een bekend probleem, dat wordt opgelost in de komende service release. De ingebouwde WiFi-adapter is echter niet in staat verbinding te maken met de hier aanwezige draadloze Ziggo-router, maar verbinding met de draadloze KPN-router lukt wel. De losse WiFi-USB-adapter (gebaseerd op de ralink chipset) doet het wel meteen op alle WiFi-netwerken, op zowel de RPi3 als op de RPi2.
MicroSD-kaart
In het welkomstscherm klik je op Raspberry Pi informatie, waar de verschillen met de “normale” Ubuntu MATE worden uitgelegd. Dit is overigens in tamelijk belabberd naar het Nederlands vertaalde tekst en gemengd Nederlands/Engels (net als op andere plekken in het welkomstscherm). Eén van de verschillen is dat Ubuntu MATE niet het gehele microSD-kaartje benut; je moet het bestandssysteem handmatig maximaliseren naar de ruimte, die je hebt. Dat kan rechtstreeks uit het welkomstscherm door op het knopje “Wijzig het formaat nu” te klikken en het systeem te rebooten. Bij het Raspbian-image of de NOOBS-installatie van Raspbian is dat niet nodig.
Compatibiliteit
In het welkomstscherm wordt er verder op gewezen dat niet alle Ubuntu apps in de repository het doen (vanwege de ARMv7 processor). Ubuntu MATE gebruikt de kernel van de Raspberry Pi Foundation, die als binaire blob is aangeleverd. Deze update je dus niet met Ubuntu tools, maar met Raspbian tools (rpi-update). Ook enkele apps, die hardware acceleration gebruiken onder Raspbian, functioneren niet onder Ubuntu MATE. Ubuntu MATE is standaard voorzien van IDLE/Python, Scratch, Sonic PC en alle noodzakelijke bibliotheken om bijvoorbeeld de GPIO te besturen. Ook Minecraft Pi Edition is geïnstalleerd. Vreemd genoeg is ook Brasero geïnstalleerd om CD’s/DVD’s te branden, maar is er iemand die dit doet? Helaas is overscan niet gemakkelijk in- en uit te schakelen (zoals in Raspbian) zonder handmatig bootbestanden te wijzigen, dus je werkt in een resolutie van 1824×984 pixels met zwarte randen rondom je bureaublad.
Kantoortaken
Als power user ervaar je dat de RPi niet snel genoeg is om bijvoorbeeld videobewerking te doen, grafisch te gamen of CAD-applicaties te gebruiken. Maar de vraag is of de RPi dienst kan doen als desktopvervanging voor normaal kantoor- en thuisgebruik. We moeten dan wel even definiëren wat kantoor- en thuisgebruik in dit geval is. Dit is het type gebruik wat je dochter van twaalf erop doet voor school, of waar je vader of buurvrouw de desktop voor gebruiken: Office, internet, video’s kijken, foto’s bewerken en bewaren, een fotoalbum maken en muziek luisteren. De gewone kantoor- en thuisgebruiker gebruikt geen opdrachtregel (weet zelfs niet van het bestaan ervan af) en werkt met de GUI: menu’s, vensters en knoppen.
Office
Net als bij Raspbian is LibreOffice voorgeïnstalleerd. Het starten van een applicatie duurt op de RPi2 eigenlijk best lang; Libreoffice Writer starten duurt de eerste keer 9 seconden en de twee keer 5 seconden. Nou ja, echt lang is dit niet, maar werk je thuis of bij je bedrijf met een normale pc, dan ben je veel snellere tijden gewend (2 seconden of minder de eerste keer, slechts een tiende seconde de keren erna). De RPi3 doet het ietsje sneller. LibreOffice Writer openen duurt 5 seconden (de eerste keer) en 3 seconden de keren daarna. Als eenmaal een LibreOffice-onderdeel draait, start de tweede binnen 2 seconden op. Dus wanneer je Writer gebruikt, dan start Calc in 2 seconden op. LibreOffice 5.1.2.2 wordt op Ubuntu MATE geleverd in het Engels (wel met de Nederlandse spellingscontrole). Raspbian bevat overigens nog steeds LibreOffice 4.3 en loopt dus achter op Ubuntu MATE.
Internet
Om te browsen op internet gebruik je Firefox op Ubuntu MATE en voor mail en news gebruik je Thunderbird. Downloaden van torrents kan met Transmission en downloaden van YouTube video’s met de YouTube Downloader. Firefox start op de RPi3 in 8 seconden op, inclusief het openen van de default zoekpagina bij Google, maar op de RPi2 duurt dat 15 seconden. Browsen op internet werkt verder voldoende snel. Ter vergelijking, de standaard Epiphany browser in Raspbian start in 3 seconden.
Multimedia
Ubuntu MATE heeft problemen met het afspelen van films. Standaard mp4-films weigeren te draaien met VLC, want het eerste beeld wordt getoond, waarna het stilstaat, terwijl de seconden doortikken. Zelfs de met YouTube Downloader gedownloade video’s draaien niet met VLC, ondanks dat hardware acceleration lijkt ingeschakeld en ook wordt ondersteund volgens de readme. Dit probleem speelt op zowel de RPi2 als de RPi3 en ook op Raspbian (na installatie van VLC).
Omxplayer is ook geïnstalleerd, maar die vind je alleen via de opdrachtregel, dus de normale gebruiker gaat dit niet lukken. Met Omxplayer draait de video wel, zonder te haperen en haarscherp (Omxplayer gebruikt standaard video acceleratie met de GPU). We hebben een scherm zonder speakers en default stuurt Omxplayer het geluid over de HDMI-poort naar buiten. Met een optie kun je echter de audio-poort aansturen. Op de RPi2 kregen we krakend geluid en geen beeld meer. Na terugschakelen, was het geluid weg, maar bleef het beeld ook weg. Een reboot deed wonderen: de lokale video speelde af, echter met krakend geluid. Ook op de RPi3 is het geluid krakend. Op Raspbian is dit niet anders. Overigens is (ook net als bij Raspbian) een licentie nodig om MPEG-2 en VC-1 bestanden te kunnen afspelen.
Gebruikservaring
Een belangrijk aspect bij de gebruikservaring is of alles soepel loopt. Als je met het systeem werkt, mag er niks hangen, haperen en schokkerig bewegen. Een simpele test is het snel verslepen van vensters met grafische inhoud. Op trage systemen voelt dit stroperig aan en dat is bij Ubuntu MATE op beide RPi-modellen zeker niet het geval. Echter, op de RPi2 is met Ubuntu MATE een YouTube video bekijken geen pretje: het hapert en schokt en het geluid ontbreekt. Op de RPi3 werkt het echter wel: HD-kwaliteit en fullscreen met prima geluid (dat net niet synchroon loopt). Op Raspbian draait beeld en geluid op YouTube feilloos.
Out-of-the-box experience
Met een out-of-the-box ervaring bedoelen we het standaard image, zonder apps te installeren, te upgraden of het tweaken van het systeem. De RPi2 is te traag om te gebruiken als desktop. Maar, met graphical disable schakel je na de eerstvolgende boot de grafische omgeving uit en kun je de RPi2 headless als Ubuntu-server gebruiken. Ubuntu MATE maakt van je Raspberry Pi een strakke desktop met een herkenbaar bureaublad, voorzien van alle minimaal noodzakelijk tools, waaronder een actuele LibreOffice en een gedegen browser. Raspbian legt de focus meer op software-ontwikkelaars met gedegen ondersteuning voor de GPIO, waarbij kantoorgebruik van het systeem slechts een bijkomstigheid is. Het bureaublad is karig en de tools minder modern. Helaas heeft Canonical er voor Ubuntu MATE voor gekozen om ook veel ontwikkeltools standaard bij te leveren, evenals Python bibliotheken voor onder meer de GPIO. Hiermee gaat Ubuntu MATE de concurrentie aan met Raspbian, terwijl veel ontwikkelaars (en zeker de educatiewereld) het toch liever bij de bron houden. Je hebt dan immers de meeste kans op goed ondersteunde hardware. Onze test wijst dit ook uit. Jammer, want we hadden liever gezien dat Ubuntu MATE zich helemaal richtte op het bieden van een nette en snelle desktop. Dat laatste is net niet gelukt, door de gebrekkig vertalingen, het niet goed functioneren van WiFi, het ontbreken van gebruikerstools (om bijvoorbeeld overscan in te stellen) en een goed werkende videospeler.
Conclusie
De RPi3 is zeker een desktop met een acceptabele performance. Monteer de RPi achter tegen je beeldscherm en je hebt een all-in-one pc. Voor een gewone gebruiker is deze voldoende snel voor “kantoortaken”. De starttijden van het systeem en apps zijn op de RPi3 met Ubuntu MATE langer dan je misschien gewend bent van een x86/x64 pc of op Raspbian, maar absoluut acceptabel. Met een externe WiFi-adapter, in een Engelse omgeving en zonder video heb je in elk geval al een mooie desktop waar je buurvrouw of vader out-of the box mee kan werken.
Ubuntu Snappy Core
Canonical biedt verder via de downloadpagina van de Raspberry Foundation Ubuntu Snappy Core aan voor de Raspbery Pi. Snappy Core draait ook op andere single-board computers en zelfs in de diverse cloudomgevingen. Snappy Core is een uitgeklede versie (de download is slechts 210 MB groot) zonder grafische omgeving. Het is ook veel minder dan Ubuntu MATE in headless mode. Als je Ubuntu Snappy Core boot (dat duurt een dikke minuut), bedien je dit vervolgens via een SSH-verbinding of een lokaal toetsenbord. Op het moment van schrijven is de downloadversie 15.04 alléén geschikt voor de RPi2. Snappy Core is bedoeld om te draaien in devices, dus in een Internet-of-Things-wereld. In tegenstelling tot Ubuntu MATE voor de Raspberry, dat nog gewoon (en alleen) met apt-get werkt, wordt er op Ubuntu Snappy Core geen apt-get meer ondersteund. Het werkt helemaal met snappy (zie de inleiding in deze Linux Magazine).
Snappy Core ondersteunt tevens Docker-containervirtualisatie. Je draait en beheert dus eenvoudig applicatiecontainers op je Raspberry. Dat is cool en vooral erg handig voor ontwikkelaars. Het nadeel is dat je wel ARMv7 applicatiecontainers nodig hebt en die zijn er (nog) niet zo heel veel.
Canonical heeft een webomgeving (webdm) in Ubuntu Snappy Core toegevoegd, waarmee je (of de eindgebruiker van het IoT-device) het IoT-device op afstand beheert en van apps voorziet. Een ontwikkelaar, die een device bouwt met de Raspberry en Snappy Core, kan deze webinterface ook aanpassen. In afbeelding 5 zie je de homepage van de webDM (via poort 4200), waar inmiddels het zojuist geïnstalleerde Docker ook is opgenomen. Ook vanaf hier had je de Docker snap kunnen installeren. Na installatie van een applicatiecontainer, bijvoorbeeld een container met busybox en een simpel webserver met docker run -d -p 80:80 hypriot/rpi-busybox-httpd. Als test open je op de browser en benader je default de nieuwe webserver.
Ubuntu Snappy Core is een snelle manier om snappy te leren kennen, dat ook zijn weg heeft gevonden in de x64/x86 Ubuntu distro, naast apt-get. Misschien biedt Ubuntu de desktopversie van Ubuntu MATE vooral aan om aandacht te krijgen en ontwikkelaars te leiden naar Ubuntu Snappy Core. Want als desktop op de Raspberry Pi is er voor Canonical niets te verdienen, maar als IoT-device met Ubuntu liggen de euro’s nog voor het oprapen.