NixOSチャンネルのバージョンを特定の起動(ビルド)に使用されるバージョンに戻すにはどうすればよいですか?

NixOSチャンネルのバージョンを特定の起動(ビルド)に使用されるバージョンに戻すにはどうすればよいですか?

私は不安定なNixOSを実行していますが、これをnixos-rebuild boot --upgrade数回試した結果、一部のアプリが破損することがわかりました。これは、最終的に解決される依存関係の一時的な非互換/重要な変更です。

私はとても識別し、今完全に機能する世代を実行(開始)しています。

  • 完全に働く世代は数世代前であり、それ以前の世代ではありません。

次に、これらのアップグレード前の状態に入りたいと思います。

  1. 完全に働く世代に戻りたいです。
    • デフォルトのスタートアップビルドに設定してください。
    • または、すべての世代の上に配置された新しい(同じ)世代を作成したり、
  2. nixチャンネルをこの世代で使用するバージョンに戻したいと思います。
    • 変更configuration.nixして適用できますnixos-rebuild

答え1

sudo nix-channel --rollback Nチャンネルを Generation に戻しますN。あなたはそれを使用することができますこれ現在実行中の世代に戻します。sudo nix-channel --rollback "$(grep --files-with-matches --fixed-strings "$(cut --delimiter=. --fields=3 /run/current-system/nixos-version)" /nix/var/nix/profiles/per-user/root/channels-*-link/nixos/svn-revision | tail --lines=1 | cut --delimiter=- --fields=3)"

関連情報