如何在 nixos 中安装 google chrome?我努力了
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 常见问题解答帮助过我:
如何安装专有或非免费软件包?
您将无法以用户身份安装或搜索非免费软件包,除非您在〜/.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 章 全局配置NixPkgs 手册中的“更深入地了解细节(尤其是部分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 shell 也可以在终端上临时搭建:
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