Параметр nix.nixPath
(ref) выглядит так, как будто он сделает то, что вам нужно.
Также канал nixos-unstable может быть более подходящим для вас, чем nixpkgs-unstable. Я считаю, что pkgs в канале nixpkgs протестированы и созданы для систем, отличных от nixOS, хотя на данный момент я не могу вспомнить ссылку на это.
nix-channel --add https://nixos.org/channels/nixos-unstable/
nix-channel --update nixos-unstable
# /etc/nixos/configuration.nix
# Put nixos-unstable at the front of nixPath
{ lib, ... }:
{
nix.nixPath = lib.mkDefault (lib.mkBefore [ "nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos-unstable" ]);
}
Если вам нужны императивные команды nix-channel в вашем файле configuration.nix, вы можете написать для этого небольшую службу systemd, как показано здесь. Изменить: чтобы убедиться, что configuration.nix
создан из последнего канала unstable
, просто установите значение nixpkgs
, как в ответе от @iElectric, и Nix будет использовать выражения, содержащиеся в этом URL-адресе всякий раз, когда он оценивает configuration.nix
.
PS Я понял, что вы также можете просто указать путь nixos к каналу nixos-unstable, выполнив nix-channel --add https://nixos.org/channels/nixos-unstable/ nixos
, но я думаю, что первое решение более ясное.
person
brocking
schedule
06.04.2016