NixOS

Як користуватися диспетчером пакетів NixOS?

Як користуватися диспетчером пакетів NixOS?
Менеджер пакетів NixOS - це власна система. Ви можете використовувати його в будь-якому дистрибутиві Linux.

Що робить менеджер пакунків NixOS?

Більшість менеджерів пакетів використовують файл, що містить виконуваний файл або вихідний код. Потім вони обчислюють, що йому потрібно в системі, а потім переконуються, що вона існує. У Nix все працює дуже схоже. Велика різниця полягає в тому, що Nix створює всі файли і компілює їх, якщо потрібно, а потім розміщує в одному місці; нікс-магазин. Перше запитання, яке у вас виникає, може бути: «Чи не будуть файли мати однакову назву?”Система уникає цього, маючи один каталог для кожної версії І називаючи всі файли хешем. Щоб додаток «почувався як вдома», усі залежності потім зв’язуються зі своїми правильними каталогами за допомогою звичайних символьних посилань. Профіль відстежує, яку версію запускає кожен користувач.

Встановлення користувача NixOS

За допомогою цієї системи ви можете встановити різні версії в каталозі кожного користувача. Якщо вони однакові у кількох користувачів, адміністратор може дозволити Nix повторно зв’язати двійкові файли, тому одночасно існує лише один. Це корисно для економії місця на диску. Ви також можете створити конкретні середовища для кожної версії пакету. Це особливо корисно, коли ви хочете протестувати нову версію або розробити програмне забезпечення.

Встановлення для загального розповсюдження

Для більшості поширених платформ ви можете встановити Nix, менеджер пакетів із простим сценарієм. Цей сценарій доступний на веб-сайті Nix. Сценарію буде потрібен доступ користувача root, але якщо ви дуже уважні до безпеки, вам слід прочитати сценарій перед тим, як використовувати його. Якщо ви хочете уникнути використання root у сценарії, просто створіть каталог / nix у вашій системі.

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

Якщо у вас немає кореневого доступу або ви просто обережні, ви можете використовувати 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 -видалити покоління

За допомогою цієї команди ви видаляєте всі покоління, крім двох останніх. Ви можете переходити вперед і назад у списку з більш складними параметрами, щоб залишити конкретне покоління, яке найкраще працювало для вас. Якщо у вас немає багатьох проектів тестування або розробки, які потребують багатьох версій для тестування, вам слід використовувати заплановане видалення всіх старих поколінь.

Простий скрипт для чистоти ваших поколінь постачається з установкою менеджера пакетів Nix.

$ nix-збирати-сміття

Вам також слід налаштувати колектор для автоматичного запуску за допомогою systemd або інших систем.

Висновок

Менеджер пакетів Nix - це потужна система, яка може запустити складні середовища розробки на вашому комп'ютері. Ви також можете використовувати його, щоб підтримувати програмне забезпечення в порядку і мати простий спосіб відновлення на новій машині, якщо трапиться катастрофа аварії диска.

How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...
How to change Mouse pointer and cursor size, color & scheme on Windows 10
The mouse pointer and cursor in Windows 10 are very important aspects of the operating system. This can be said for other operating systems as well, s...
Безкоштовні ігри з відкритим кодом для розробки ігор Linux
У цій статті буде розглянуто перелік безкоштовних ігрових механізмів з відкритим кодом, які можна використовувати для розробки 2D та 3D ігор на Linux....