NixOS에 패키지를 설치할 때 Configuration.nix를 변경하는 것과 nixos-rebuild-switch를 추가하고 nix-shell을 사용하는 것의 차이점은 무엇입니까?

NixOS에 패키지를 설치할 때 Configuration.nix를 변경하는 것과 nixos-rebuild-switch를 추가하고 nix-shell을 사용하는 것의 차이점은 무엇입니까?

NixOS에 물건을 설치하는 일반적인 프로세스는구성.nix, 실행 nixos-rebuild switch, 재부팅 후 새(마지막) 운영 체제 세대를 선택합니다.

nix-shell을 통해 패키지를 설치하는 것도 가능하다는 것을 알고 있습니다(하지만 사용해본 적은 없습니다).

이 두 가지 옵션의 차이점은 무엇입니까? 어느 것이 다른 것보다 더 적절합니까?

답변1

nix-shells는 반드시 보존하고 싶지 않은 임시 환경에 적합합니다.
즉, 이 멋진 새 도구에 대해 듣고 사용해 보고 싶기 때문에 도구를 열고 nix-shell실행하면 됩니다. 이 도구는 셸 환경의 일부일 뿐입니다. 다른 쉘에서는 이를 찾을 수 없습니다.

도구가 마음에 들지 않으면 A. 나머지 환경을 오염시키지 않을 것이며 B. nix-shell도구를 다시 닫은 후 다음 가비지 수집 시 해당 도구가 차지한 공간을 확보할 것입니다. .

그러나 정말 마음에 들고 환경의 영구적인 일부가 되기를 원한다면 environment.systemPackages.

관련 정보