GNU Guix

Linux.fista
Siirry navigaatioon Siirry hakuun
GNU Guix
Käyttöliittymä teksti
Lisenssi GPLv3+
Kotisivu www.gnu.org/software/guix

GNU Guix on GNU-projektin funktionaalinen (deklaratiivinen) paketinhallintajärjestelmä, jonka on suunniteltu Nix-paketinhallintaohjelman ideoiden pohjalta. Se on alunperin kehitetty Guix System-jakelua varten. GNU Guix toimii muillakin jakeluilla kuin GNU Guix System -jakelussa, ja se voidaan asentaa toissijaiseksi paketinhallintajärjestelmäksi. GNU Guix on toteutettu Guile-ohjelmointikielellä ja myös kaikki Guix-paketit on myös kirjoitettu sillä. Guix mahdollistaa koko järjestelmän asetusten tekemisen Guixin asetustiedoston avulla. Tämän vuoksi pystyt siirtämään järjestelmän asetukset helposti uuteen tietokoneeseen. Voit myös mm. perua pakettien päivityksen ja palata edelliseen järjestelmän tilaan (eng. "rollback"). GNU Guix oletuksena sisältää vain vapaita ohjelmistoja, mutta yhteisö ylläpitää NonGuix-pakettilähdettä, josta löytyy myös mm. suljettuja ohjelmistoja ja lisää muita paketteja.

Asennusohje[muokkaa]

GNU Guix löytyy useimpien jakeluiden paketinhallinnasta nimellä guix. Lisätietoja ohjelmien asentamisesta löytyy artikkelista Ohjelmien asentaminen.

Jos Guix ei ole paketoitu jakelullesi, voit asentaa sen skriptin avulla:

  1. Lataa skripti: wget 'https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh'
  2. Voit katsoa sen sisällön, jos haluat: less guix-install.sh
  3. Salli sen suorittaminen: chmod +x guix-install.sh
  4. Suorita asennusohjelma pääkäyttäjänä: sudo ./guix-install.sh
  5. Hyväksy oletusasetukset.
  6. Asennusohjelman jälkeen voit suorittaa valinnaisia toimenpiteitä, jotka on kuvattu Guixin manuaalissa (§2.6 Application Setup)

Guix pikaohje[muokkaa]

Perustoiminnot[muokkaa]

  • Pakettien etsiminen: guix search hakusana1 hakusana2
  • Paketin asentaminen: guix install paketti1
  • Guixin ja Pakettiluettelon päivittäminen: guix pull
  • Pakettien päivittäminen: guix upgrade
  • Poista paketti: guix remove paketti1 paketti2
  • Näytä Guixin ohje ja lista komennoista: guix help
  • Näytä jonkun Guix komennon ohje: guix help komento_tähän

Guix system reconfigure -komento[muokkaa]

Jos käytät Guix System -jakelua ja jos olet muuttanut Guixin asetuksia, voit toteuttaa muutokset seuraavalla komennolla.

sudo guix system reconfigure /etc/config.scm

/etc/config.scm tiedosto sisältää koko järjestelmän asetukset. Mutta /etc/config.scm tiedosto voidaan kopioida käyttäjän omaan kotikansioon.

cp /etc/config.scm ~/.config/guix/system.scm

Tämän jälkeen käyttäjän omassa system.scm tiedostossa määritellyt muutokset saa voimaan seuraavalla komennolla.

sudo guix system reconfigure ~/.config/guix/system.scm

Sukupolvet ja toimintojen kumoaminen[muokkaa]

  • Peru juuri edellinen toiminto (esim. paketin asentamisen jälkeen): guix package --roll-back
  • Listaa sukupolvet ("palautuspisteet"): guix package --list-generations
  • Vaihda tiettyyn sukupolveen X: guix package --switch-generation=X
  • Poista sukupolvet 1 ja 3 (käytä varoen!): guix package --remove-generations=1,3
  • Poista kaikki muut sukupolvet paitsi nykyinen: guix package --remove-generations
  • Kerää roskat (eng. garbage collect) ja poista käyttämättömät paketit ja sukupolvet (käytä varoen!): guix gc -d 1m

Guixin päivittäminen[muokkaa]

Päivittääksesi kaikki paketit ja itse Guix paketinhallintajärjestelmän, toimi näin.

Jos käytät Guix-paketinhallintaa jossain toisessa jakelussa[muokkaa]

  1. Päivitä järjestelmän Guix ja Guix-taustapalvelu: sudo -i guix pull
  2. Lataa mahdolliset muutokset Systemd:n taustaprosessien asetustiedostoihin: sudo systemctl daemon-reload
  3. Käynnistä Guix-taustaprosessi uudelleen: sudo systemctl restart guix-daemon.service
  4. Päivitä root-käyttäjän paketit: sudo -i guix upgrade
  5. Päivitä käyttäjän oma Guix: guix pull
  6. Päivitä oman käyttäjän paketit: guix upgrade

Guixin päivittäminen Guix System -jakelussa[muokkaa]

Huomautus: Asetustiedosto "/etc/config.scm" saattaa sijaita eri paikassa, jos olet kopioinut sen käyttäjän kotikansioon.
  1. Nouda päivitykset: guix pull
  2. Päivitä root-käyttäjän Guixin pakettiluettelo: sudo -i guix pull
  3. Päivittää Guix suorittamalla seuraava komento: sudo guix system reconfigure /etc/config.scm
  4. Päivitä root-käyttäjän paketit: sudo -i guix upgrade
  5. Päivitä käyttäjän paketit: guix upgrade

Katso myös[muokkaa]

  • Flatpak - Jakelusta riippumaton paketinhallinta Linuxille.
  • Snap - Canonicalin tekemä kilpailija Flatpakille.
  • AppImage - Eräs siirrettävä pakettiformaatti Linuxille.
  • Nix - Paketinhallintajärjestelmä, joka saatu inspiraatio johti GNU Guixin kehittämiseen.
  • pkgsrc - Ports-kokoelmia muistuttava paketinhallintajärjestelmä, joka tukee monia eri käyttöjärjestelmiä.
  • Ravenports - Toinen hieman Pkgsrc:n kaltainen järjestelmä.
  • Gentoo Prefix - Gentoon paketinhallintajärjestelmä (Portage) voidaan myös asentaa toisen Linux-jakelun kotikansioon.

Aiheesta muualla[muokkaa]