NixOS

Jak korzystać z Menedżera pakietów NixOS?

Jak korzystać z Menedżera pakietów NixOS?
Menedżer pakietów NixOS to system sam w sobie. Możesz go używać w dowolnej dystrybucji Linuksa.

Co robi Menedżer pakietów NixOS??

Większość menedżerów pakietów używa pliku, który zawiera plik wykonywalny lub kod źródłowy. Następnie obliczają, czego potrzebuje w systemie, a następnie upewniają się, że istnieje. W Nix wszystko działa bardzo podobnie. Duża różnica polega na tym, że Nix tworzy wszystkie pliki i kompiluje je, jeśli to konieczne, a następnie umieszcza je w jednym miejscu; sklep internetowy. Pierwsze pytanie, jakie możesz mieć, brzmi: „Czy pliki nie będą miały tej samej nazwy?”?” System unika tego, mając jeden katalog dla każdej wersji ORAZ nazywając wszystkie pliki haszem. Aby aplikacja „czuła się jak w domu”, wszystkie zależności są następnie łączone z właściwymi katalogami za pomocą zwykłych dowiązań symbolicznych. Profil śledzi, z której wersji korzysta każdy użytkownik.

Instalacje użytkownika NixOS

W tym systemie możesz mieć zainstalowane różne wersje w katalogu każdego użytkownika user. Jeśli są takie same u kilku użytkowników, administrator może zezwolić Nixowi na ponowne połączenie plików binarnych, więc w danym momencie istnieje tylko jeden. Jest to przydatne w oszczędzaniu miejsca na dysku. Możesz także stworzyć określone środowiska dla każdej wersji pakietu. Jest to szczególnie przydatne, gdy chcesz przetestować nową wersję lub opracować oprogramowanie.

Instalacja dla wspólnej dystrybucji

Na większości popularnych platform możesz zainstalować Nix, menedżera pakietów za pomocą prostego skryptu. Ten skrypt jest dostępny na stronie Nix. Skrypt będzie wymagał dostępu użytkownika root, ale jeśli jesteś bardzo świadomy bezpieczeństwa, powinieneś przeczytać skrypt przed jego użyciem. Jeśli chcesz uniknąć używania roota w skrypcie, po prostu utwórz katalog /nix w swoim systemie.

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

Jeśli nie masz uprawnień administratora lub jesteś bardzo ostrożny, możesz mieć Nixa jako menedżera pakietów tylko dla użytkowników user.

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

Ten plik binarny działa dobrze dla większości, jeśli nie wszystkich dystrybucji distribution. Platformy to x8664, i?86, aarch64 i x8664-darwin, które obejmują prawie wszystkie dostępne platformy. Jeśli korzystasz z innych platform, prawdopodobnie możesz użyć kodu źródłowego i zbudować własną. Po zakończeniu instalacji będziesz mieć kilka nowych poleceń.

Dodawanie pierwszego programu do NixOS

Aby zainstalować oprogramowanie i ustawić, kiedy może być używane, masz nix-env. Opcja instalacji (-i) jest najczęstsza, ponieważ używasz jej zawsze i jako argument umieszczasz pakiet.

$ nix-env -i firefox

Wygląda to tak samo jak w innych dystrybucjach, podobnie jak argument zapytania query. Instalacja zajmie jednak trochę czasu. Powodem jest to, że musi skompilować oprogramowanie, chyba że w Nix Cache znajduje się wstępnie skompilowana wersja. Dotarcie do pamięci podręcznej też nie zawsze jest bardzo szybkie. Jest różnica, na którą powinieneś zwrócić uwagę; możesz wybrać wersję! Jeśli chcesz specjalną wersję, musisz znaleźć, które są dostępne za pomocą wyrażeń regularnych.

$ nix-env -qa 'firefox.*'

Otrzymasz listę wszystkich dostępnych pakietów. Możesz zainstalować go w ten sam sposób, ale używając wartości z listy.

$ nix-env - zainstaluj 'firefox-78.4.0ser' -zakonserwuj zainstalowany

Może się to nie udać, jeśli masz już zainstalowaną wersję. Opcja '-preserve-installed' nie usunie zainstalowanej wersji. Możesz skończyć z dwiema wersjami tego samego priorytetu, które możesz naprawić, ustawiając priorytet.

$ nix-env -set-flag priorytet 2 'firefox-82.0.2'

Teraz uruchomisz starą wersję przy następnym uruchomieniu Firefoksa. Aby zmienić bieg, możesz odpowiednio ustawić priorytet. Możesz także uruchomić powłokę, aby wybrać plik binarny. Jest to opcja programisty, a polecenie to nix-shell.

Aktualizowanie NixOS

Gdy masz już kolekcję oprogramowania, chcesz być na bieżąco. Tak samo jak zawsze, używasz tego samego polecenia z argumentem. Ale musisz też aktualizować kanał. Polecenie to nix-channel.

$ nix-channel -aktualizacja

Spowoduje to odczytanie aktualnych wersji wszystkich dostępnych pakietów. Następnie możesz rozpocząć aktualizację oprogramowania za pomocą nix-env.

$ nix-env – uaktualnienie

Taka aktualizacja spowoduje aktualizację starej wersji oprogramowania. W takim przypadku stary Firefox zostanie zastąpiony najnowszą wersją. Możesz tego nie chcieć z jakiegokolwiek powodu, zwykle rozwoju.

Usuwanie aplikacji z NixOS

Usuwanie aplikacji jest równie proste, z małym zastrzeżeniem. Żadne aplikacje nie są usuwane przez polecenie usuwania remove.

$ nix-env -odinstaluj 'firefox-78.4.0ser

To polecenie usunie linki do aktualnej kompilacji tej wersji Firefoksa. Wszystkie pliki zawsze pozostaną na dysku. Masz te wersje dostępne do wycofania. Wycofanie oznacza powrót do starej wersji. Może to być przydatne, jeśli wypróbowałeś najnowsze i ma nieprzewidziane problemy.

$ nix-env -cofanie

Cofasz całą generację, co oznacza wszystkie programy, które zostały zaktualizowane od ostatniej generacji. Opcja uruchamia dwa polecenia; tę listę, a następnie przełącza się na stare pokolenia. Wszystkie zainstalowane pakiety istnieją w jednej generacji na dysku.

Wycofywanie i czyszczenie NixOS

Funkcja wycofywania spowoduje, że stare wersje będą zajmować dużo miejsca na dysku. Możesz to posprzątać (musisz to posprzątać!). Jeśli masz wystarczająco długi okres, według własnego wyboru, możesz również wyczyścić te stare generacje, aby zaoszczędzić miejsce na dysku.

$ nix-env - usuń stare pokolenia

Za pomocą tego polecenia usuwasz wszystkie pokolenia oprócz dwóch ostatnich. Możesz poruszać się tam iz powrotem na liście z bardziej złożonymi parametrami, aby pozostawić konkretną generację, która działała najlepiej dla Ciebie. O ile nie masz wielu projektów testowych lub deweloperskich, które wymagają wielu wersji do testowania, powinieneś użyć zaplanowanego usuwania wszystkich starych generacji.

Prosty skrypt, który utrzyma Twoje pokolenia w czystości, jest dostarczany z instalacją menedżera pakietów Nix.

$ nix-collect-garbage

Powinieneś także skonfigurować kolektor tak, aby działał automatycznie przy użyciu systemu systemd lub innych systemów.

Wniosek

Menedżer pakietów Nix to potężny system, który umożliwia uruchamianie złożonych środowisk programistycznych na komputerze. Możesz go również użyć do utrzymania porządku w oprogramowaniu i mieć prosty sposób na odzyskanie danych na nowym komputerze w przypadku katastrofy awarii dysku.

Gry Jak korzystać z GameConqueror Cheat Engine w systemie Linux
Jak korzystać z GameConqueror Cheat Engine w systemie Linux
Artykuł zawiera przewodnik dotyczący korzystania z silnika oszukującego GameConqueror w systemie Linux. Wielu użytkowników, którzy grają w gry w syste...
Gry Najlepsze emulatory konsoli do gier dla systemu Linux
Najlepsze emulatory konsoli do gier dla systemu Linux
W tym artykule wymienimy popularne oprogramowanie do emulacji konsoli do gier dostępne dla systemu Linux. Emulacja to warstwa kompatybilności oprogram...
Gry Najlepsze dystrybucje Linuksa do gier w 2021 r
Najlepsze dystrybucje Linuksa do gier w 2021 r
System operacyjny Linux przeszedł długą drogę od pierwotnego, prostego, serwerowego wyglądu. Ten system operacyjny znacznie się poprawił w ostatnich l...