Як встановити разовий пакет у NixOS?


9

У мене є NixOS-коробка, яку я зберігаю на nixos-16.03каналі. Я хочу, щоб машина залишалася в стабільно стабільному стані, і тому я хочу уникати переходу на nixos-unstableканал.

Однак мені потрібно встановити нову версію пакету, ніж доступна на цьому каналі ( nodejs-6_xу цьому випадку). У посібнику є розділ, який описує встановлення одним клацанням , який спочатку здавався таким, що саме мені потрібно. Однак сервер Hydra на веб-сайті http://hydra.nixos.org не видає .nixpkgфайли, які використовуються nix-install-packageінструментом, описаним у цьому розділі.

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

Я запитав про це і в IRC (спасибі M-Ralithза терплячу відповідь на мої неосвічені запитання!), Але я не зовсім зрозумів, як це застосувати. Порада полягала в тому, щоб "замінити src та версію у вашому nixpkgs config", що звучить так, що я можу записати вираз nix у .nixpkgs/configuration.nixта замінити ці властивості для пакету в підписаному каналі ( nixos-16.03). Коли я запитав про пакети, які не існують у каналі, порада полягала в тому, щоб "вказати весь пакет, а не просто переосмислити src та версію", що я вважаю, що мені потрібно буде дублювати весь вираз nix для пакета Я зацікавлений у.nix-env

Для пакетів, які існують на іншому каналі, який я хочу встановити, але залишаюся на своєму поточному каналі, чи є кращий спосіб? Це майже відчуває, що я повинен бути в змозі зробити щось подібне nix-build <url> | nix-env -i. Що було б ідеально - це встановити цей вимикач, але не мати конфігурації, яка б заважала оновити його згодом, якби мій поточний канал наздогнав.

Відповіді:


8

ви можете використовувати nix-envінструмент

% nix-env -f https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz -iA tig

або використовувати nix-buildінструмент

% nix-build -I nixpkgs=https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz -A tig

як це допомагає!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.