NixOS

Kuinka käyttää NixOS Package Manageria?

Kuinka käyttää NixOS Package Manageria?
NixOS-paketinhallinta on oma järjestelmä. Voit käyttää sitä missä tahansa Linux-jakelussa.

Mitä NixOS Package Manager tekee?

Useimmat paketinhallintaohjelmat käyttävät tiedostoa, joka sisältää suoritettavan tiedoston tai lähdekoodin. Sitten he laskevat, mitä se tarvitsee järjestelmässä, ja varmistavat sitten, että se on olemassa. Nixissä asiat toimivat hyvin samalla tavalla. Suuri ero on, että Nix luo kaikki tiedostot ja kokoaa ne tarvittaessa ja laita ne sitten yhteen paikkaan; nix-myymälä. Ensimmäinen kysymyksesi voi olla: "Eivätkö tiedostoilla ole samaa nimeä?"Järjestelmä välttää tämän siten, että jokaisella versiolla on yksi hakemisto JA nimeämällä kaikki tiedostot hashilla. Jotta sovellus olisi "kotona", kaikki riippuvuudet linkitetään sitten oikeisiin hakemistoihinsa tavallisten symlinkkien avulla. Profiili seuraa, mitä versiota kukin käyttäjä käyttää.

NixOS-käyttäjäasennukset

Tämän järjestelmän avulla voit asentaa eri versiot jokaisen käyttäjän hakemistoon. Jos ne ovat samat useilla käyttäjillä, järjestelmänvalvoja voi antaa Nixin linkittää binäärit uudelleen, joten vain yksi on olemassa kerrallaan. Tästä on hyötyä levytilan säästämisessä. Voit myös luoda erityisiä ympäristöjä paketin jokaiselle versiolle. Tämä on erityisen hyödyllistä, kun haluat testata uutta versiota tai kehittää ohjelmistoa.

Asennus yhteistä jakelua varten

Useimmille alustoille voit asentaa Nixin, paketinhallinnan yksinkertaisella komentosarjalla. Tämä komentosarja on saatavana Nix-verkkosivustolla. Komentosarja tarvitsee pääkäyttäjän käyttöoikeuden, mutta jos olet hyvin tietoinen tietoturvasta, sinun tulee lukea komentosarja ennen sen käyttöä. Jos haluat välttää juurin käyttöä komentosarjassa, luo vain järjestelmässäsi / nix-hakemisto.

$ sh <(curl -L https://nixos.org/nix/install)

Jos sinulla ei ole pääkäyttäjän oikeuksia tai olet erittäin varovainen, Nix voi olla vain käyttäjän pakettien hallinta.

$ sh <(curl -L https://nixos.org/nix/install) -no-daemon

Tämä binääri toimii hyvin useimmille, ellei kaikille, jakeluille. Alustat ovat x8664, ts?86, aarch64 ja x8664-darwin, jotka kattavat melkein kaikki saatavilla olevat käyttöympäristöt. Jos käytät muita alustoja, voit todennäköisesti käyttää lähdekoodia ja rakentaa oman. Kun asennus on valmis, sinulla on joukko uusia komentoja.

Ensimmäisen ohjelman lisääminen NixOSiin

Jos haluat asentaa ohjelmiston ja määrittää, milloin sitä voidaan käyttää, sinulla on nix-env. Asennusasetus (-i) on yleisin, koska käytät sitä aina ja laitat paketin argumentiksi.

$ nix-env -i Firefox

Tämä näyttää samalta kuin muissa jakeluissa, samoin kyselyargumentti. Asennus vie kuitenkin jonkin aikaa. Syynä on, että sen on käännettävä ohjelmisto, ellei Nix-välimuistissa ole valmiiksi käännettyä versiota. Välimuistin saavuttaminen ei myöskään ole aina kovin nopeaa. Sinun on otettava huomioon ero; voit valita version! Jos haluat erikoisversion, sinun on löydettävä ne, jotka ovat saatavilla säännöllisten lausekkeiden avulla.

$ nix-env -qa 'Firefox.* '

Saat luettelon kaikista käytettävissä olevista paketeista. Voit asentaa sen samalla tavalla, mutta käyttämällä luettelon arvoa.

$ nix-env -install 'Firefox-78.4.0ser '-säilytä asennettu

Tämä voi epäonnistua, jos sinulla on jo asennettu versio. Vaihtoehto '-Säilytä-asennettu' ei poista asennettua versiota. Saatat päätyä kahteen saman prioriteetin versioon, jotka voit korjata asettamalla prioriteetin.

$ nix-env -set-flag prioriteetti 2 'Firefox-82.0.2 '

Nyt suoritat vanhan version, kun seuraavan kerran käynnistät Firefoxin. Jos haluat vaihtaa käyttämääsi, voit asettaa prioriteetin vastaavasti. Voit myös käynnistää kuoren ja valita binäärin. Tämä on kehittäjän vaihtoehto, ja komento on nix-shell.

Päivitetään NixOS

Kun sinulla on ohjelmistokokoelma, haluat pysyä ajan tasalla. Sama kuin aina, käytät samaa komentoa argumentilla. Mutta sinun on myös pidettävä kanava ajan tasalla. Komento on nix-channel.

$ nix-channel -päivitys

Tämä lukee kaikkien saatavilla olevien pakettien nykyiset versiot. Sen jälkeen voit aloittaa ohjelmiston päivittämisen nix-env: llä.

$ nix-env -päivitys

Tällainen päivitys päivittää vanhan ohjelmistoversion. Tällöin vanha Firefox korvataan uusimmalla versiolla. Et ehkä halua tätä jostain syystä, yleensä kehityksestä.

Sovellusten poistaminen NixOS: sta

Sovellusten poistaminen on yhtä helppoa, pienellä varoituksella. Mitään sovelluksia ei poisteta poistokomennolla.

$ nix-env -install 'Firefox-78.4.0ser '

Tämä komento poistaa linkit tämän Firefox-version nykyiseen koontiversioon. Kaikki tiedostot pysyvät aina levyllä. Sinulla on nämä versiot käytettävissä palautuksen tekemiseen. Palautus tarkoittaa, että palaat takaisin vanhaan versioon. Tästä voi olla hyötyä, jos olet kokeillut uusinta ja sillä on odottamattomia ongelmia.

$ nix-env -rollback

Palautat koko sukupolven, mikä tarkoittaa kaikkia ohjelmia, jotka on päivitetty edellisen sukupolven jälkeen. Vaihtoehto suorittaa kaksi komentoa; luetteloon ja siirtyy sitten vanhaan sukupolveen. Kaikki asennetut paketit ovat sukupolven levyllä.

NixOS-paluu ja siivous

Palautustoiminto johtaa siihen, että vanhat versiot käyttävät paljon levytilaa. Voit puhdistaa tämän (sinun täytyy puhdistaa tämä!). Kun sinulla on ollut tarpeeksi pitkä jakso, omalla valinnallasi voit myös siivota nämä vanhat sukupolvet säästääksesi levytilaa.

$ nix-env -poista-sukupolvet vanhoja

Tällä komennolla poistat kaikki sukupolvet kahta viimeistä lukuun ottamatta. Voit siirtyä edestakaisin luettelossa monimutkaisemmilla parametreilla jättääksesi tietyn sukupolven, joka toimi sinulle parhaiten. Ellei sinulla ole monia testaus- tai kehitysprojekteja, jotka tarvitsevat useita versioita testaamiseen, sinun tulisi käyttää kaikkien vanhojen sukupolvien ajoitettua poistoa.

Yksinkertainen komentosarja, joka pitää sukupolvesi puhtaana, sisältää Nix-paketinhallinnan asennuksen.

$ nix-collect-roskat

Kerääjä on myös määritettävä toimimaan automaattisesti systemd: llä tai muilla järjestelmillä.

Johtopäätös

Nix-paketinhallinta on tehokas järjestelmä, joka saa sinut käyttämään monimutkaisia ​​kehitysympäristöjä koneellasi. Voit käyttää sitä myös pitämään ohjelmiston siistinä ja yksinkertaisen tavan palautua uudelle koneelle, jos levyn kaatuminen tapahtuu.

Open Source Ports of Commercial Game Engines
Free, open source and cross-platform game engine recreations can be used to play old as well as some of the fairly recent game titles. This article wi...
Parhaat komentorivipelit Linuxille
Komentorivi ei ole vain suurin liittolainen Linuxia käytettäessä - se voi olla myös viihteen lähde, koska voit käyttää sitä pelaamaan monia hauskoja p...
Parhaat Linux-peliohjaimen kartoitussovellukset
Jos haluat pelata pelejä Linuxissa peliohjaimella tyypillisen näppäimistön ja hiiren syöttöjärjestelmän sijaan, on sinulle hyödyllisiä sovelluksia. Mo...