NixOS

Как да използвам NixOS Package Manager?

Как да използвам NixOS Package Manager?
Мениджърът на пакети NixOS е собствена система. Можете да го използвате във всяка Linux дистрибуция.

Какво прави NixOS Package Manager?

Повечето мениджъри на пакети използват файл, който съдържа изпълнимия или изходния код. След това изчисляват от какво се нуждае системата и след това се уверяват, че тя съществува. В Nix нещата работят много подобно. Голямата разлика е, че Nix създава всички файлове и ги компилира, ако е необходимо, след което ги поставя на едно място; магазина nix. Първият въпрос, който имате, може да бъде: „Дали файловете няма да имат едно и също име?”Системата избягва това, като разполага с по една директория за всяка версия И именува всички файлове с хеш. За да накара приложението да се чувства като у дома си, всички зависимости след това се свързват с правилните им директории, като се използват обикновени символни връзки. Профилът проследява коя версия изпълнява всеки потребител.

Потребителски инсталирания на NixOS

С тази система можете да инсталирате различни версии в директорията на всеки потребител. Ако те са едни и същи при няколко потребители, администраторът може да позволи на Nix да свърже повторно двоични файлове, така че да съществува само по едно в даден момент. Това е полезно за спестяване на дисково пространство. Можете също така да създадете специфични среди за всяка версия на пакета. Това е особено полезно, когато искате да тествате нова версия или да разработите софтуер.

Инсталиране за общо разпространение

За най-често срещаните платформи можете да инсталирате Nix, мениджъра на пакети с прост скрипт. Този скрипт е достъпен на уебсайта на Nix. Скриптът ще се нуждае от root потребителски достъп, но ако сте много съобразени със сигурността, трябва да прочетете скрипта, преди да го използвате. Ако искате да избегнете използването на root в скрипта, просто създайте директорията / nix във вашата система.

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

Ако нямате root достъп или просто сте много предпазливи, можете да имате Nix като мениджър на пакети само за потребители.

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

Този двоичен файл работи добре за повечето, ако не и за всички дистрибуции. Платформите са x8664, т.е?86, aarch64 и x8664-darwin, които покриват почти всички налични платформи. Ако използвате други платформи, вероятно можете да използвате изходния код и да създадете свой собствен. Когато инсталацията приключи, ще имате куп нови команди.

Добавяне на първата ви програма към NixOS

За да инсталирате софтуер и да зададете кога може да се използва, имате nix-env. Опцията за инсталиране (-i) е най-често срещаната, тъй като я използвате винаги и поставяте пакет като аргумент.

$ nix-env -i firefox

Това изглежда по същия начин, както при другите дистрибуции, както и аргументът за заявка. Инсталацията обаче ще отнеме известно време. Причината е, че той трябва да компилира софтуера, освен ако в кеш Nix няма предварително компилирана версия. Достигането до кеша също не винаги е много бързо. Има разлика, която трябва да вземете под внимание; можете да изберете версия! Ако искате специална версия, трябва да намерите кои са налични с помощта на регулярни изрази.

$ nix-env -qa 'firefox.* '

Ще получите списък с всички налични пакети. Можете да го инсталирате по същия начин, но като използвате стойността в списъка.

$ nix-env -инсталирайте 'firefox-78.4.0ser '-запазване-инсталиран

Това може да се провали, ако вече имате инсталирана версия. Опцията '-preserve-installed' няма да изтрие инсталираната версия. Може да се окажете с две версии с един и същ приоритет, които можете да коригирате, като зададете приоритета.

$ nix-env -set-flag приоритет 2 'firefox-82.0.2 '

Сега ще стартирате старата версия при следващото стартиране на Firefox. За да превключите кой от тях изпълнявате, можете съответно да зададете приоритета. Можете също така да стартирате черупка, за да изберете двоичен файл. Това е опция за разработчици и командата е nix-shell.

Актуализиране на NixOS

След като имате колекция от софтуер, искате да останете актуализирани. Както винаги, вие използвате същата команда с аргумент. Но вие също трябва да поддържате канала актуализиран. Командата е nix-channel.

$ nix-channel -update

Това чете текущите версии на всички налични пакети. След това можете да започнете да надграждате софтуера си с nix-env.

$ nix-env -upgrade

Подобна надстройка ще надстрои старата ви версия на софтуера. В този случай старият Firefox ще бъде заменен с най-новата версия. Може да не искате това по някаква причина, обикновено развитие.

Премахване на приложения от NixOS

Премахването на приложения е също толкова просто, с малко предупреждение. Не се премахват приложения с команда за премахване.

$ nix-env -деинсталирайте 'firefox-78.4.0ser '

Тази команда ще премахне връзките към текущата компилация на тази версия на Firefox. Всички файлове винаги ще останат на диск. Имате тези версии на разположение, за да направите възстановяване. Възстановяването означава, че се връщате към използването на старата версия. Това може да бъде полезно, ако сте изпробвали най-новото и има непредвидени проблеми.

$ nix-env -rollback

Отменяте цяло поколение, което означава всички програми, които са надстроени от последното поколение. Опцията изпълнява две команди; този списък и след това преминава към това старо поколение. Всички инсталирани пакети съществуват в поколение на диск.

Отмяна и почистване на NixOS

Функцията за връщане ще доведе до много дисково пространство, използвано от старите версии. Можете да почистите това (трябва да го почистите!). Когато имате достатъчно дълъг период, по ваш избор, можете също да почистите тези стари поколения, за да спестите дисково пространство.

$ nix-env -delete-generations old

С тази команда изтривате всички поколения с изключение на двете последни. Можете да вървите напред-назад в списъка с по-сложни параметри, за да оставите конкретното поколение, което е работило най-добре за вас. Освен ако нямате много проекти за тестване или разработка, които се нуждаят от много версии за тестване, трябва да използвате планирано премахване на всички стари поколения.

Един прост скрипт за поддържане на чистотата на вашите поколения идва с инсталирането на Nix package manager.

$ nix-collect-garbage

Трябва също така да настроите колектора да работи автоматично, използвайки systemd или други системи.

Заключение

Мениджърът на пакети Nix е мощна система, която може да ви накара да управлявате сложни среди за разработка на вашата машина. Можете също да го използвате, за да поддържате вашия софтуер подреден и да имате лесен начин за възстановяване на нова машина, в случай че се случи катастрофата при срив на диска.

Контролирайте и управлявайте движението на мишката между множество монитори в Windows 10
Двоен дисплей на мишката ви позволява да контролирате и конфигурирате движението на мишката между множество монитори, като забавя движенията му близо ...
WinMouse ви позволява да персонализирате и подобрите движението на показалеца на мишката на компютър с Windows
Ако искате да подобрите функциите по подразбиране на показалеца на мишката, използвайте безплатна програма WinMouse. Той добавя още функции, за да ви ...
Бутонът на левия бутон на мишката не работи в Windows 10
Ако използвате специална мишка с вашия лаптоп или настолен компютър, но бутонът на левия бутон на мишката не работи на Windows 10/8/7 по някаква причи...