Pacman (pakethanterare)
Pacman | |
Utvecklare | Skapat av Judd Vinet m.fl.[1] |
---|---|
Senaste utgåva | 5.2.1 (1 november 2019[2]) |
Skriven i | C |
Operativsystem | Multiplattform |
Typ | Pakethanterare |
Språk | Engelska |
Licens | GPL |
Webbplats | archlinux.org/pacman |
Pacman är ett verktyg som hanterar programpaket i Linux. Det använder enkla komprimerade filer som paketformat. Pacman strävar inte efter att "göra allt" utan kommer att lägga till, ta bort och uppgradera paket i systemet, och tillåter användarna att ställa frågor till paketdatabasen efter installerade paket, filer och ägare. Pacman försöker också att hantera paketberoenden automatiskt och kan hämta paket från en fjärrserver när de behövs.
Pacman är standard i Arch Linux och många av de linuxdistributioner som baseras på Arch, men pacman finns även hos DeLi Linux samt hos Frugalware Linux som använder en fork kallad Pacman-G2.[3]
Användning
[redigera | redigera wikitext]Pacman är kapabel att lösa paketberoenden och automatiskt ladda ned och installera alla nödvändiga delar som ett program kräver. I teorin kan en användare uppdatera hela sitt operativsystem med ett enda kommando. Pacman håller systemet uppdaterat genom att synkronisera sig med en eller flera huvudservrar för att jämföra mjukvaruversioner. Från samma servrar kan man med enkla kommandon ladda ned och installera nya program.
Paketen som klienten laddar ned kommer från ett antal servrar runt om i världen, normalt sett väljer man de servrar som är snabbast för klienten för att få maximal nedladdningshastighet. Pacman kan även kombineras med nedladdningsprogram som wget, aria2 och airpac för att ladda ned paketen från flera servrar samtidigt och på så vis öka hastigheten om man inte når upp till sin maximala hastighet från en server.[4]
Grundläggande exempel på användning av pacman
[redigera | redigera wikitext]Exempel för att installera webbläsaren Firefox med pacman:
# pacman -S firefox
För att avinstallera enbart Firefox skriver man:
# pacman -R firefox
Eller med -Rs om man även vill ta bort eventuella paketberoenden som inte längre används av Firefox eller några andra program installerade:
# pacman -Rs firefox
Paket och byggsystem
[redigera | redigera wikitext]Pacman paket laddas ned som komprimerade Tar-filer som innehåller metadata samt en katalogstruktur över filer.[5] Paketen byggs med makepkg genom Bash byggskript kallade PKGBUILDs.
Följande är en PKGBUILD för en programfix, inkluderad i pacman dokumentationen som ett exempel:[6]
pkgname=patch
pkgver=2.5.4
pkgrel=3
pkgdesc="A utility to apply patch files to original sources"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/patch/patch.html"
license=('GPL')
groups=('base-devel')
depends=('glibc' 'ed')
source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz)
md5sums=('ee5ae84d115f051d87fcaaef3b4ae782')
build() {
cd "$srcdir"/$pkgname-$pkgver
./configure --prefix=/usr
make
}
package() {
cd "$srcdir"/$pkgname-$pkgver
make prefix="$pkgdir"/usr install
}
libalpm
[redigera | redigera wikitext]Pacman version 3.0 var en stor omstrukturering och innebar en splittning av pacman till två delar, libalpm blev namnet på back-end, och pacman blev front-end för libalpm. Detta löste många programberoenden, snabbade upp pacman samt underlättade för framtida front-ends att utvecklas direkt till programkärnan libalpm.[7]
Grafiska front-ends
[redigera | redigera wikitext]Pacman har inget officiellt GUI, men för den som vill använda ett grafiskt gränssnitt så finns PackageKit som har stöd för många olika pakethanteringssystem, bland annat ALPM som är akronym för Arch Linux Package Management, vilket inefattar Pacman.[8]
Även följande små program finns för att underlätta hanteringen av sina pacman program:
KDE/QT
[redigera | redigera wikitext]- Shaman är ett komplett gränssnitt till Qt 4 för libalpm. Shaman omfattar även ett antal extra funktioner, grafiska inställningar, och stöd för att sammanställa från källa till ABS (Arch Build System).
- pacmanager-svn, ett paket hanteraren i Qt 4 bygger på pacman.
- Chase, KDE demonen som hanterar uppdateringar av libapqm.
- kpacupdate, panelprogram för KDE som talar om när det finns nya uppdateringar till Arch Linux.
Gnome/GTK+
[redigera | redigera wikitext]- YAPG-gtk (Yet Another Pacman GUI) är ett komplett och fullt utrustad skal för pacman pygtk.
- guzuta, front-end skriven i PyGTK.
- gtkpacman: Ett PyGTK pacman GUI. En SVN version finns tillgänglig (gtkpacman-svn).
- pacmon: panelprogram som notifierar om det finns nya uppdateringar till användaren.
- pacupdate: panelprogram som talar om när det finns nya uppdateringar till Arch Linux.
Referenser
[redigera | redigera wikitext]- Den här artikeln är helt eller delvis baserad på material från engelskspråkiga Wikipedia, Pacman (package manager), 22 januari 2012.
Noter
[redigera | redigera wikitext]- ^ ”index : pacman.git” (på engelska). Arkiverad från originalet den 10 september 2014. https://web.archive.org/web/20140910101342/https://projects.archlinux.org/pacman.git/. Läst 22 januari 2012.
- ^ ”Pacman Home Page: Releases” (på engelska). https://www.archlinux.org/pacman/#_releases. Läst 26 februari 2020.
- ^ ”Pacman-G2” (på engelska). Arkiverad från originalet den 21 januari 2012. https://web.archive.org/web/20120121025149/http://frugalware.org/docs/stable/pacman-g2.html. Läst 22 januari 2012.
- ^ ”Improve Pacman Performance” (på engelska). http://wiki.archlinux.org/index.php/Improve_Pacman_Performance. Läst 22 januari 2012.
- ^ ”makepkg(8) Manual Page” (på engelska). https://www.archlinux.org/pacman/makepkg.8.html#_description. Läst 22 januari 2012.
- ^ ”PKGBUILD(5) Manual Page- Example” (på engelska). https://www.archlinux.org/pacman/PKGBUILD.5.html#_example. Läst 22 januari 2012.
- ^ ”Pacman Home Page: History” (på engelska). https://www.archlinux.org/pacman/#_history. Läst 23 januari 2012.
- ^ ”PackageKit - Feature Matrix” (på engelska). Arkiverad från originalet den 19 januari 2012. https://web.archive.org/web/20120119110522/http://www.packagekit.org/pk-matrix.html. Läst 23 januari 2012.
Se även
[redigera | redigera wikitext]Externa länkar
[redigera | redigera wikitext]- Pacman hemsida
- Pacman i Arch Linux wikin.
- Pacman GUI Front-end i Arch Linux wikin.
- DistroWatch Interview Judd Vinet talar om Arch Linux och pacman år 2003.