nixos에 Google 크롬을 설치하는 방법은 무엇입니까? 나는 열심히 노력했다
nix-env -i google-chrome
nix-env -i google-chrome-stable
...
이것은 작동하지 않는 것 같습니다. 나는 또한 불안정한 지점을 사용해 보았습니다.
nix-channel --add https://nixos.org/channels/nixpkgs-unstable
nix-channel --update
그런 다음
nix-env -i unstable.google-chrome-stable
nix-env -i unstable.google-chrome
...
하지만 이 패키지는 어딘가에 존재해야 할 것 같습니다. https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/networking/browsers/google-chrome
내가 여기서 무엇을 놓치고 있는지 아는 사람 있나요?
답변1
이 NixOS FAQ나를 도와 주었다:
독점 또는 비자유 소프트웨어 패키지를 설치하는 방법은 무엇입니까?
다음을 수행하지 않는 한 사용자로서 무료가 아닌 패키지를 설치하거나 검색할 수 없습니다.~/.config/nixpkgs/config.nix(파일과 폴더를 만들어야 할 수도 있습니다):
{ # [...] Unfree 허용 = 진짜; }NixOS를 사용하는 경우 시스템 전체와 다음에서 무료가 아닌 패키지를 활성화할 수 있습니다
/etc/nixos/configuration.nix
.{ # [...] nixpkgs.config.allowUnfree = true }이것만으로는 nix-env를 사용하여 패키지를 검색하거나 설치할 수 없습니다.
무료가 아닌 패키지를 일시적으로 허용하려면 환경 변수를 설정할 수 있습니다.NIXPKGS_ALLOW_UNFREE,예를 들어
NIXPKGS_ALLOW_UNFREE=1 nix-env정책상의 이유로 Hydra에서는 비자유 소프트웨어를 테스트하거나 구축할 수 없습니다. 대부분의 무료 라이선스는 당사가 소프트웨어를 실행하거나 배포하는 것을 금지합니다.
콘솔에서 nix-env
:
$ NIXPKGS_ALLOW_UNFREE=1 nix-env -qa | grep google-chrome
google-chrome-63.0.3239.132
google-chrome-beta-64.0.3282.71
google-chrome-dev-65.0.3311.3
"6장 전역 구성"세부 사항(특히 부품)을 자세히 살펴보세요.6.3. 비자유 소프트웨어 패키지 설치).
찾았어요르노-린덱/NixSetup.md수많은 추가 리소스와 의견이 포함된 중요 항목은 매우 유용합니다.
편집하다: 은(는) nix-env
얼마 전에 폐기되었으며 대신 사용합니다 . 예를 들어 추가 구성이 필요한 nix-shell
곳에만 설치 가능합니다 . 이렇게 하면 채널에 크게 의존하지 않습니다(어느 시점에서 플레이크에 대해 배울 수 있기를 바랍니다...)./etc/nixos/configuration.nix
vim
그래서 도구가 필요할 peek
때 (예:google-chrome
treesheets
$ NIXPKGS_COMMIT="dc849ffbcd93c2a23e99dcc94efb0962594b8b5f"
$ NIXPKGS_TARBALL="https://github.com/NixOS/nixpkgs/tarball/${NIXPKGS_COMMIT}"
$ PKGS="(callPackage (fetchTarball ${NIXPKGS_TARBALL}) {})"
$ NIXPKGS_ALLOW_UNFREE=1 nix-shell -v -p "${PKGS}.google-chrome"
$ nohup google-chrome-stable & > ~/.nohup.out # or /dev/null
$ disown
(이 훌륭한 답변을 참조하십시오nohup
그리고disown
.)
편집 2:Nix 쉘은 터미널에서 즉석에서 만들 수도 있습니다:
NIXPKGS_ALLOW_UNFREE=1 \
nix-shell -v -E \
"let \
pkgs = import (fetchTarball ${NIXPKGS_TARBALL}) {}; \
in \
pkgs.mkShell { \
buildInputs = with pkgs; [ google-chrome elixir ]; \
}"
답변2
기본적으로 먼저 채널 이름을 확인해야 합니다.
$ nix-channel --list
nixpkgs https://nixos.org/channels/nixpkgs-unstable
채널 이름(이 경우)을 알고 나면 nixpkgs
설치를 계속할 수 있습니다.
$ nix-env -iA nixpkgs.google-chrome
installing ‘google-chrome-64.0.3282.186’
..................
또는 설치를 수행하기 전에 정규화된 이름을 검색할 수 있습니다.
$ nix-env -qaP google-chrome
nixpkgs.google-chrome google-chrome-64.0.3282.186