pkgsrc

Kohteesta Linux.fi
Siirry navigaatioon Siirry hakuun

pkgsrc on NetBSD-projektin pakettienhallintajärjestelmä, joka muistuttaa paljon muista BSD-käyttöjärjestelmistä tuttuja ports-kokoelmia. Erona ports-kokoelmiin on kuitenkin yhteensopivuus useampien UNIX:in tapaisten käyttöjärjestelmien, kuten Linuxin, kanssa. Tuki Linuxille lisättiin vuonna 1999.

pkgsrc on erityisen kätevä Linuxilla käytettäessä silloin, kun halutaan asentaa ohjelmistoja omaan kotihakemistoon, eli tyypillisesti sellaisissa tilanteissa, joissa ei ole pääkäyttäjän oikeuksia kohdejärjestelmään.

Asennus kotihakemistoon[muokkaa]

Asennus tapahtuu kloonaamalla pkgsrc-puu omalle koneelle NetBSD:n versionhallinnasta ja kääntämällä tarvittavat ohjelmat lähdekoodista.

Kloonataan pkgsrc-kokoelma versionhallinnasta omaan kotihakemistoon pkgsrc -hakemiston alle.

$ env CVS_RSH=ssh cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc

Bootstrapataan tärkeimmät perusohjelmat muiden ohjelmien kääntämiseksi. Mikäli omassa jakelussa /bin/sh on symbolinen linkki Dash-komentotulkkiin, joudutaan määrittelemään pkgsrc käyttämään Bash-komentotulkkia env-ohjelman avulla.

--unprivileged -valitsimen avulla pkgsrc saadaan asentamaan ohjelmat omaan kotihakemistoon ~/pkg -hakemiston alle, muussa tapauksessa ne asennettaisiin /usr/pkg -hakemistoon, johon tavallisella käyttäjällä ei ole muokkausoikeuksia.

$ cd ~/pkgsrc/bootstrap
$ env SH=/bin/bash ./bootstrap --unprivileged

Tässä vaiheessa voidaan lisätä PATH-ympäristömuuttujaan pkgsrc:n binäärien sijainnit, jolloin käännettyjä ohjelmia voidaan kutsua suoraan komentoriviltä. Tämän voi tehdä esimerkiksi lisäämällä ~/.profile -asetustiedostoon seuraavan rivin ja käynnistämällä komentotulkin sen jälkeen uudelleen:

PATH="$HOME/pkg/bin":"$HOME/pkg/sbin":$PATH

Ohjelmien asentaminen[muokkaa]

Ohjelmien asennus lähdekoodeista tapahtuu siirtymällä asennettavan ohjelman hakemistoon pkgsrc-puussa ja kutsumalla siellä bmake -ohjelmaa, joka käännettiin bootsrappaus-vaiheessa ~/pkg/bin -hakemistoon.

Käännetään lähdekoodeista ja asennetaan esimerkkinä Nano-editori:

$ cd ~/pkgsrc/editors/nano
$ bmake
$ bmake install

Lopuksi voidaan turhat tiedostot siivota pois:

$ bmake clean
$ bmake clean-depends

pkgsrc:n päivittäminen[muokkaa]

pkgsrc voidaan päivittää yksinkertaisesti siirtymällä sen juurihakemistoon ja hakemalla päivitykset versionhallintajärjestelmästä. pkgsrc-kokoelma on jaettu useampaan haaraan: current on kehityshaara, joka sisältää kaikki uusimmat versiot ohjelmistoista, kun taas stable haarautetaan kvartaaleittain current -haarasta. Stable saa vain tärkeimpiä tietoturvapäivityksiä.

$ cd ~/pkgsrc

Päivitetään puu ja siirrytään käyttämään current -haaraa:

$ env CVS_RSH=ssh cvs update -dP -A

Toinen vaihtoehto on käyttää uusinta stable -haaraa, joka on kirjoitushetkellä 2019Q1.

$ env CVS_RSH=ssh cvs update -dP -rpkgsrc-2019Q1

pkgsrc-puun siivoaminen[muokkaa]

Toisinaan ohjelmien kääntäminen ei onnistu, jolloin puuhun jää lojumaan turhaa roinaa. Erikseen asennettavien pkgtools/pkglint ja pkgtools/pkg_distinst -ohjelmien avulla ne voidaan poistaa.

$ lintpkgsrc -or
$ pkg_distinst --delete

Aiheesta muualla[muokkaa]