NixOSの不安定なチャネルでのプログラムとサービスの設定

NixOSの不安定なチャネルでのプログラムとサービスの設定

次のように不安定なチャンネルからパッケージをインストールできることがわかります。

{ config, pkgs, ... }:
let
  unstable-pkgs = import <unstable> {};
in
{
  environment.systemPackages = [ unstable-pkgs.chromium ]
}

これは私の設定では「import <unstable> {};表示」と言いますpkgs。しかし、programs「または」を使って同じことをするにはどうすればよいですかservices

ベストアンサー1

ほとんどのシステムで安定したチャンネルを使用したいが、不安定なチャンネルから特定のプログラムやサービスを取得したいとします。 stableから必要な特定のモジュールをインポートしてこれを実行できます。

ただし、モジュールが次にも存在する場合安定チャンネルを使用すると、2つのモジュールがクラッシュします。disabledModulesこれを使用して、安定したチャンネルで既存のモジュールを抑制できます。

plymouthたとえば、不安定なチャンネルからモジュールをロードする方法は次のとおりです。

{ nixpkgs-unstable, ... }:
{
  imports = [
    "${nixpkgs-unstable}/nixos/modules/system/boot/plymouth.nix"
  ];
  disabledModules = [
    "system/boot/plymouth.nix"
  ];
}

nixpkgs-unstableこれは、Flakes入力として定義されたFlakesを使用するシステムにあります。そしてこの入力は、specialArgsシステム構成ビルド呼び出しの一部として渡されます。nixosSystemただし、importsこれはdisabledModulesFlakesに限定されないため、不安定なチャネルからモジュールへのパスを提供できる限り、Flakes以外のシステムでも同じことができるはずです。

おすすめ記事