För att förstå vad en PPA är måste du ta ett steg tillbaka och titta på vad ett Linuxprogramvaruförråd är. Varje gång du installerar en programvara på ditt Linuxsystem med hjälp av pakethanteraren kommer den från ett programvaruarkiv. Varje distribution konfigurerar sina arkiv på lite olika sätt, men alla tjänar i stort sett samma syfte. De innehåller en uppsättning programvara och serverar den till din pakethanterare när den begär ett paket.
Distributioner har sin egen basuppsättning av programvaruupplagor. Dessa finns på en rad servrar runt om i världen, men du behöver egentligen inte oroa dig för det. Din dator konfigureras under installationsprocessen för att använda de rätta. Du kan dock ta en titt på dem. På Ubuntu och Debian konfigureras kärnförråden i en fil i ”/etc/apt/sources.list.”
Du kan öppna den i din favorittextredigerare och ta en titt. Varje rad följer samma mönster. De börjar alla med deb. Det låter pakethanteraren veta att adressen som följer är ett arkiv.
Efter URL:en hittar du namnet på utgåvan. Om du har den senaste versionen av Ubuntu står det ”Bionic”. Det talar om för pakethanteraren vilken utgåva den ska hämta programvara för.
Efter utgåvan hittar du en kombination av tre nyckelord. De skiljer sig åt mellan Ubuntu och Debian. Debian använder ”main”, ”contrib” och ”non-free”. Ubuntu använder ”restricted”, ”universe” och ”multiverse”. De tjänar dock liknande syften. Dessa nyckelord kategoriserar programvaran i förråden och talar om för pakethanteraren vilka kategorier den ska hämta från.
Det finns en annan del som du inte riktigt kan se här. Alla repositories är signerade med en GPG-nyckel. Om Apt inte har den nyckeln kommer den inte att installera programvaran. Det hjälper till att verifiera att ingen har mixtrat med programvaran i repositorierna och potentiellt äventyrat ditt system.
Vad är en PPA?
PPA står för Personal Package Archive, och i verkligheten skiljer det sig inte från något annat Debian/Ubuntu-repositorium. När du lägger till ett PPA till ditt Ubuntusystem lägger du till ytterligare ett programvaruarkiv som din pakethanterare kan hämta från.
Om du inte säger åt den att göra något annat kommer Apt inte att skilja eller prioritera ett arkiv framför ett annat. Det betyder att du kan lägga till en PPA med mer uppdaterade paket i ditt system och Apt kommer automatiskt att använda de nyare paketen istället för standardpaketen.
Canonical, personerna bakom Ubuntu, har också skapat en tjänst för att vara värd för PPA:er och andra programvaruprojekt som heter Launchpad. Du kan hitta bokstavligen tusentals projekt på Launchpad, och även om det inte är alla PPA:er, kommer en stor del av de PPA:er som du hittar att finnas på Launchpad.
Inget av detta besvarar dock egentligen kärnfrågan. Det beror på att det finns en huvudskillnad som skiljer PPA:er från vanliga Debianförråd. Det är hur du installerar dem på ditt system.
Hur lägger du till en PPA?
När du lägger till ett vanligt Debianförråd måste du manuellt lägga till platsen för förrådet i din fil ”sources.list”. Du kan också lägga till en separat fil i ”/etc/apt/sources.list.d/”. Oavsett vilket måste du göra det manuellt. Du måste också importera GPG-signeringsnyckeln för arkivet manuellt.
När du lägger till en PPA i Ubuntu kan du göra det med ett enda kommando. Allt är redan konfigurerat för att automatiskt ställa in sig själv. Kommandona nedan lägger till Ubuntus egna grafik-PPA.
sudo add-apt-repository ppa:graphics-drivers/ppasudo apt-get update
Det första kommandot lägger faktiskt till PPA. Det andra säger bara åt Apt att uppdatera. Lägg märke till bilden ovan. Den visar hur den manuella versionen skulle se ut. Den innehåller till och med GPG-nyckeln som du kan importera.
Det är lätt att se varför PPA:er är en bra sak. De gör det så enkelt som möjligt att lägga till hela programvaruupplagor till din Ubuntu. Det är inte mycket du kan ställa till med när du lägger till en PPA, medan det kan vara jobbigt att lägga till programvaruupplagor manuellt. PPA:er är ett perfekt exempel på hur Ubuntu utformades för att göra det enklare att använda Linux. De gör inget nytt eller speciellt, men de gör något gammalt och besvärligt mycket mer strömlinjeformat.
Nick är frilansande teknisk journalist, Linuxentusiast och en mångårig PC-spelare.
Våra senaste handledningar levererade direkt till din inkorg.