Linux heeft nog altijd een nihil marktaandeel als desktop-OS, maar Ubuntu is een bekende naam. Het OS van Canonical is sinds zijn eerste release in 2004 uitgegroeid tot een van de populairste en bekendste Linux-distributies. Voormalig Gnome-ontwikkelaar Ken VanDine werkt sinds 2009 bij Canonical en leidt er het Ubuntu-desktopteam. Tweakers sprak met VanDine over de opkomst van Ubuntu, Canonicals recente inspanningen om zich meer te richten op pc-gaming, en het packagingsysteem Snap - met de controverse die eromheen speelt.
Wanneer ging je aan de slag bij Canonical?
Ik ging bijna veertien jaar geleden aan de slag bij het desktopteam van Canonical. Voordat ik bij Canonical begon, werkte ik al jaren aan Linux. Ik was bijvoorbeeld een Gnome-ontwikkelaar en bouwde een andere distro op basis van Gnome. Ik onderhield ook dingen zoals de Gnome-developerkit; een soort live-iso's die men kan gebruiken in een VM om Gnome-ontwikkeling op uit te voeren.
Eerder dit jaar sprak ik met het hoofd van een andere Linux-distro. Hij zei: "Er is een ethos voor iedere Linux-distributie." Wat is volgens jou het ethos van Ubuntu?
'Ubuntu is Linux voor gewone mensen'
Ervoor zorgen dat alles zo gemakkelijk en toegankelijk mogelijk is, voor zoveel mogelijk gebruikers. Sommige distro's zijn op bepaalde manieren erg extreem. Je hebt bijvoorbeeld distributies waarin alles per se uit vrije software moet bestaan. Natuurlijk willen wij ook dat zoveel mogelijk open is. Maar als je als gebruiker een dure Nvidia-videokaart hebt gekocht, zou die gewoon direct moeten werken. Dat is voor ons belangrijk: je installeert Ubuntu, het OS ziet dat je een Nvidia-gpu hebt en laadt automatisch de proprietary drivers, aangezien die de beste ervaring bieden onder Linux. Dat is het ethos van Ubuntu. We willen ervoor zorgen dat dingen zo goed mogelijk werken, voor een maximaal aantal gebruikers, zelfs als dat betekent dat elders zaken worden opgeofferd. Dit is Linux voor gewone mensen.
Ubuntu is sinds zijn eerste release in 2004 uitgegroeid tot een van de bekendste Linux-distributies. Denk je dat dit te danken is aan dat gebruiksgemak?
Ja. Zeker in de begindagen was het moeilijk om simpele dingen te doen onder Linux, zoals het instellen van wifi. Voor de eerste Ubuntu-release moest je dat doen via commando's in de terminal. Je moest zelf uitzoeken welke commando's je moest invoeren en hoe je de secrets voor je wifiwachtwoord moest opslaan. Die dingen werkten bij Ubuntu simpeler. Ubuntu werd dan ook snel groter, want het maakte alles toegankelijk voor een groter publiek.
Dat is de reden dat de populariteit van Ubuntu zo is gegroeid, denk ik; gewoon het feit dat zulke dingen gewoon werkten. Sindsdien hebben andere distro's een flinke inhaalslag gemaakt. Veel van onze distro's bieden nu dezelfde tools. Het is tegenwoordig eigenlijk in iedere distributie makkelijk om bijvoorbeeld wifi in te stellen of een vpn te gebruiken. We hebben echter nog steeds goede tractie, omdat we vroeg zijn begonnen.
Je werkt dus bijna veertien jaar bij Canonical. Dat betekent dat je ongeveer 28 Ubuntu-releases hebt meegemaakt. Wat zijn je favoriete mijlpalen die jullie in die tijd hebben behaald?
Jaunty Jackalope (Ubuntu 9.04, red.) was natuurlijk heel speciaal voor mij, omdat het mijn eerste release was. Maar het was ook onze eerste release met een eigen notificatiestack. Verder was onze eerste release met de Unity-desktop natuurlijk een grote mijlpaal.
'Met 22.04 zijn we uit onze comfortzone gesprongen'
Mijn favoriete release tot nu toe was 22.04 LTS, Jammy Jellyfish. Met Jammy zijn we uit onze comfortzone gesprongen en dat waardeerde ik. We introduceerden daarin een aantal downstreamveranderingen rondom de Gnome-desktop voor onze gebruikers, zoals accentkleuren. Een ander voorbeeld is ondersteuning voor dynamische triplebuffering; dat zit nog steeds niet upstream in Gnome. We hebben daar bijna drie jaar aan gewerkt.
Normaal gesproken doen we dit niet in een lts-versie, maar het was leuk om dit soort dingen toch te leveren. In de toekomst wil ik dit vaker doen. We gaan ernaar streven om altijd het nieuwste van het nieuwste te leveren. We willen in de toekomst meer veranderingen downstream aan onze gebruikers leveren terwijl we eraan werken om ze upstream te krijgen.
Je sprak al over de opmars van andere distributies, die net zo goed steeds gebruiksvriendelijker worden. Zeker op het gebied van gaming zijn distro's als Manjaro en Pop_OS flink in populariteit gegroeid. Hoe kijken jullie daarnaar?
Ze hebben allemaal sterke punten. Manjaro is bijvoorbeeld een versie van Arch die makkelijker is om te gebruiken. Arch volgt een rollingrelease-cyclus en heeft daarmee altijd de recentste softwareversies. Dat is erg aantrekkelijk voor gamers. We proberen zelf de ervaring voor gamers op Ubuntu te verbeteren, door altijd de nieuwste drivers, Mesa-versies en Linux-kernels te leveren, zelfs al doen wij geen rolling releases. Daar hebben we het afgelopen jaar veel tijd in gestoken, vooral met het leveren van Steam als snap. Die versie van Steam wordt al geleverd met daily builds van Mesa en userspace-drivers.
We werken er momenteel aan om dat configureerbaar te maken. Gebruikers moeten kunnen aangeven dat ze nieuwe Mesa-libraries willen, maar niet per se de daily builds. Ze kunnen straks dus hun softwarestack specifiek voor Steam configureren. Op die manier kun je de nieuwste software gebruiken voor je games, zonder dat de Gnome-desktop crasht omdat de software de allernieuwste versie van Mesa draait. Op een vergelijkbare manier willen we ook andere zaken verbeteren.
Hoe gaan jullie die configureerbaarheid regelen, en wanneer wordt dat mogelijk?
Ben je bekend met Oibaf? Dat is onder gamers een van de populairste personal package archives om in te schakelen. Zo'n ppa is een manier voor ontwikkelaars om software en updates te distribueren naar Ubuntu-gebruikers. Oibaf bevat daily builds van Mesa en andere userspace-drivers. Enorm veel gebruikers schakelen dit in. Er is ook een andere populaire ppa, genaamd Kisak Fresh, met de recentste stabiele Mesa-release met backports. En dan is er nog Kisak Turtle, een vergelijkbare ppa die de nieuwste stabiele Mesa-versie zonder backports bevat.
Op dit moment wordt de Steam-snap geleverd met de Mesa-versies uit Oibaf. Iedere keer dat we een nieuwe build van Steam uitbrengen als snap, gebruikt hij dus nieuwere versies van Mesa. Op termijn voegen we tracks toe aan Steam, waarmee gebruikers kunnen kiezen welke Mesa-versie ze willen: die uit Oibaf, Kisak Fresh of Kisak Turtle. Een gebruiker kan dan precies kiezen welke Mesa-versie hij of zij wil, en Steam zal die vervolgens gebruiken. Zo kun je als gebruiker zelf je risiconiveau bepalen. Kisak Turtle heeft bijvoorbeeld een oudere maar stabielere Mesa-versie dan Oibaf. Dit moet nog voor het einde van dit jaar mogelijk worden.
Zouden jullie ooit overwegen om over te stappen op een rollingrelease-cyclus voor Ubuntu?
Ik zeg niet dat we in de toekomst nooit een dergelijke releasecyclus zouden overwegen, maar momenteel is dat niet iets waar we aan werken. We kunnen al veel van de meerwaarde van rolling releases bieden met het gebruik van Snap, zonder dat dat ten koste gaat van de stabiliteit. Mijn doel is dat een gebruiker Ubuntu installeert en niet meteen een ppa moet inschakelen om aan de benodigde software voor gaming te komen. Ik wil dat gebruikers op Steam klikken in de Snap Store en direct aan de slag kunnen. Het zou niet nodig moeten zijn om iets te tweaken om deze ervaring te kunnen krijgen.
Natuurlijk willen we meer doen dan alleen Steam, maar dit was de meest logische keuze, gezien het aantal gebruikers. Er zijn veel andere gebieden waarbij we ook kunnen helpen. We zijn van plan betrokken te raken bij zaken als Proton, om verbeteringen door te voeren buiten het leveren van Steam. Op dit moment is er veel momentum voor Linux-gaming. Het is een goede kans om te helpen waar we kunnen.
/i/2005487206.png?f=imagearticlefull)
Jullie hebben eerder dit jaar een gamingteam opgezet voor Ubuntu Desktop. Was dat naar aanleiding van dat momentum met de Steam Deck, Proton en Linux-ondersteuning van anticheatmakers?
Absoluut. Het erkennen van dat momentum hielp bij het rechtvaardigen van een gamingteam. Het was een veel grotere investering geweest als we dit twee jaar geleden hadden gedaan, zonder dat momentum. We willen Linux-gaming verbeteren voor zoveel mogelijk gebruikers. Het is fantastisch dat je deze games kunt draaien op een handheld, maar veel gebruikers willen ze ook op hun desktop-pc's kunnen spelen. Ik wil niet dat ze dat onder Windows moeten doen.
Je spreekt veel over Snap. Vanuit de community is er ook een hoop kritiek op Snap, bijvoorbeeld vanwege de opstarttijd. Hoe kijken jullie daarnaar?
'We stellen de kritiek op Snap enorm op prijs'
We stellen die kritiek enorm op prijs. Hij geeft ons de druk die we nodig hebben om het platform te verbeteren. Soms duurt het lang om bepaalde verbeteringen door te voeren. Snap is natuurlijk een kritiek onderdeel voor talloze verschillende dingen; het wordt gebruikt in productieomgevingen, iot-apparaten en andere systemen waarbij we zeker moeten weten dat een aanpassing waterdicht is. Verbetering kan daardoor veel tijd kosten, maar dat betekent niet dat we er niet aan werken.
Veel van de verbeteringen die we doorvoeren, zijn mogelijk omdat we feedback van onze community krijgen. Die feedback zet ons onder druk om verbeteringen te leveren, en dat waardeer ik. Ik denk dat ons werk aan de Firefox-snap hier een goed voorbeeld van is. We werken nu bijvoorbeeld aan een functie waar veel naar is gevraagd door Firefox-gebruikers. Momenteel krijg je als gebruiker een notificatie als er een nieuwe Firefox-update beschikbaar is, maar niet de mogelijkheid om hem direct te installeren. In de toekomst wordt automatisch een refresh uitgevoerd als de browser wordt afgesloten. Je hoeft dan alleen maar op de knop te drukken en vervolgens gebeurt het automatisch.
Waarom hebben jullie de Firefox- en Chromium-debs standaard vervangen door snaps?
Daar waren meerdere redenen voor. De meest voor de hand liggende is onderhoud. Snap maakt dat veel gemakkelijker, zeker voor een webbrowser. Nieuwe browserversies moeten zo snel mogelijk worden uitgebracht om kwetsbaarheden te dichten. Tegelijkertijd hebben we steeds meer Ubuntu-releases die we moeten onderhouden. Momenteel ondersteunen we onder meer 18.04, 20.04 en 22.04 als lts-releases, met daarnaast natuurlijk de recentste interimrelease. Het kost veel tijd om deb-packages te onderhouden voor al die verschillende releases. We moeten daarvoor niet alleen de versies bijwerken; ons beveiligingsteam moet ook reviews voor al die nieuwe versies uitvoeren voordat we ze uitbrengen voor de eindgebruiker. Dit duurt twee tot drie weken vanaf het moment dat een nieuwe versie van een browser upstream beschikbaar komt. Met Snap is er één versie van de browser die werkt onder alle Ubuntu-releases.
Ik moet daarbij zeggen dat de Firefox-snap niet louter ons initiatief was. Het was een verzoek van Mozilla. Snap heeft veel waarde voor Mozilla, omdat ze er hiermee voor kunnen zorgen dat een nieuwe Firefox-versie zo snel mogelijk beschikbaar komt voor Ubuntu-gebruikers. Uiteindelijk is Mozilla de gatekeeper die beslist wanneer een nieuwe snap van Firefox wordt uitgebracht. Vaak heeft Ubuntu nu een nieuwe Firefox-snappackage op dezelfde dag dat de tarball-versie beschikbaar komt, en anders een paar dagen later. Zodra de nieuwe snappackage er is, is deze update onmiddelijk beschikbaar voor alle gebruikers.
Er is dus een groot voordeel voor ons, omdat we nu niet langer een deb-pakket voor al die verschillende Ubuntu-releases moeten onderhouden. Dat doen we alleen nog maar voor de lts-releases die bij hun release een Firefox-deb hadden. We zullen Firefox als deb-package voorlopig nog wel blijven ondersteunen. Ubuntu 20.04 LTS heeft een Firefox-deb en wordt tot 2030 ondersteund voor klanten met Extended Security Maintenance. De overstap naar Snap geeft ons vooral de mogelijkheid om dit gaandeweg af te bouwen en om onze onderhoudslast te verlichten. Tegelijkertijd is er dus ook die meerwaarde voor softwareleveranciers.
We hadden wel een aantal obstakels met de Firefox-snap, maar de release zette ons onder druk om die issues op te pakken, en inmiddels zijn ze verholpen. De Firefox-snap start nu snel op. Het duurt nog steeds wat langer dan bij een deb-package, maar je kunt die twee niet met elkaar vergelijken. Snap is containerized en gescheiden van je systeem, zodat je niet volledig op de sandboxing van je browser hoeft te vertrouwen. Een deb is dat natuurlijk niet.
Wordt de Snap Store ooit opensource?
Dat is niet aan mij. Ik denk echter niet dat het feit dat de Snap Store niet opensource is, ons de meeste kritiek oplevert. Mensen bekritiseren meer het feit dat de Snap Store gecentraliseerd is; er zijn momenteel geen echte alternatieven. Ik ben daar zelf verdeeld over. Een van de redenen waarom we met Snap zo'n groot succes hebben met softwareleveranciers, is juist dat er maar één bron is. Softwaremakers willen een enkele vertrouwde appwinkel om hun software te leveren. Microsoft zit bijvoorbeeld in dat schuitje. Ze hebben veel geïnvesteerd in het leveren van hun Linux-apps via de Snap Store.
We zijn op dit gebied succesvol, deels vanwege het feit dat er maar één Snap-winkel is. Dat zouden we verliezen als we dat opgeven. Ik denk dat het beschikbaar hebben van dergelijke apps voor de massa's de kern vormt van onze ethos, waar we het net al over hadden. Deze officiële apps leveren veel meerwaarde voor onze gebruikers. We kunnen daar op een vertrouwde manier voor zorgen, vanuit die ene bron.
Zijn er nog zaken die je in de toekomst graag wil doorvoeren in Ubuntu?
:strip_exif()/i/2005487196.webp?f=thumblarge)
immutable iot-OS op basis van Snap
Ik zou graag zien dat we ooit een volledig immutable desktop leveren; een pure Snap-ervaring, een beetje zoals Ubuntu Core, maar dan voor desktops. We zijn nog niet zover, maar ik zou graag zien dat we dat op een gegeven moment doen.
Zijn daar concrete plannen voor?
We hebben een aantal bouwstenen gemaakt om op dat punt te komen, maar meer kan ik er niet over zeggen.