채널
Nix 표현식을 검색하고 의존하는 데 사용되는 Nix의 기존 시스템이지만 더 이상 권장되지 않습니다.
We recommend starting with the Nix quick start and consulting concept docs primarily for clarification. Feel free to click x to the right to disable this notification on all concept docs.
_Nix 채널_은 레거시 Nix CLI에서 Nixpkgs를 최신 상태로 유지하는 데 사용되는 메커니즘입니다. 새로운 Nix CLI에서는 채널이 플레이크로 대체되었습니다.
채널은 어떻게 작동하나요?
채널은 https://nixos.org/channels/nixos-unstable과 같이 일부 Nix 코드를 가리키는 URL입니다.
편의를 위해 channel:{name} URL 구문을 사용할 수도 있으며, 이는 Nix에 의해 https://nixos.org/channels/{name}으로 확장됩니다.
Nix가 채널을 자동으로 가져오도록 구성할 수 있습니다.
nix-channel --add https://nixos.org/channels/nixos-unstable그런 다음 이를 실행하여 구성한 모든 채널을 Nix가 가져오도록 할 수 있습니다.
nix-channel --update채널의 Nix 코드는 ~/.nix-defexpr/channels에 압축 해제되어 nix-env와 같은 레거시 CLI 명령에서 찾을 수 있습니다.
채널에 대한 자세한 정보는 Nix 매뉴얼에서 찾을 수 있습니다.
채널 예시
| 채널 URL | 릴리스 날짜 | 설명 |
|---|---|---|
channel:nixos-22.11 | 2022년 11월에 처음 릴리스되었으며 이후 6개월 동안 업데이트되었습니다. | 2022년 11월에 릴리스된 안정적인 NixOS 버전입니다. 보안 패치 및 업데이트는 백포트되지만 새로운 애플리케이션이나 주요 변경 사항은 적용되지 않습니다. |
channel:nixos-unstable | 자주 업데이트됨 | NixOS의 롤링 릴리스 채널로, Hydra에서 중요한 패키지 세트가 빌드될 때마다 업데이트됩니다. 보안 업데이트, 새로운 패키지 및 새로운 모듈이 컴퓨터에 자주 나타나며 주요 변경 사항이 발생할 수 있습니다. |
channel:nixos-unstable-small | nixos-unstable과 동일하지만 훨씬 더 자주 업데이트됩니다. | nixos-unstable과 유사한 롤링 릴리스 채널이지만 테스트되는 패키지 세트가 더 작습니다. 즉, 이 채널은 더 자주 업데이트되지만 일부 손상된 패키지가 있을 수도 있습니다. |
nix-channel의 문제점
채널의 문제점은 특정 빌드에서 실제로 어떤 입력이 사용되는지에 대한 보장을 제공하지 않는다는 것입니다.
channel:nixos-22.11과 같은 채널 URL은 서로 다른 시점에 서로 다른 Nix 코드를 포함할 수 있습니다.
따라서 소스 고정 및 롤백은 채널을 사용하면 훨씬 더 어렵습니다.
이는 Nix가 이론적으로 재현 가능하지만 실제로는 빌드에 대한 입력이 자주 변경될 수 있으며 이로 인해 빌드가 실패할 수 있음을 의미합니다. 이로 인해 NixOS 시스템을 업데이트하거나 이전에 빌드할 수 있었던 패키지를 빌드하지 못할 수 있습니다.
이 때문에 Nix 채널 사용은 매우 권장되지 않습니다!