Questions tagged «nixos»

NixOS是基于Nix的Linux发行版。多亏了Nix,它支持原子升级,回滚和多用户程序包管理,并且它具有声明性的系统配置管理方法,可以轻松地在另一台机器上重现配置。

4
如何找到Nix软件包的名称以将其安装在configuration.nix中?
假设我使用nix-env的--query操作搜索要安装的软件包: $ nix-env -qa 'aspell.*en' aspell-dict-en-7.1-0 我将此包名称写在/etc/nixos/configuration.nixNixOS的主要配置文件中: environment.systemPackages = with pkgs; [ aspell-dict-en ]; 但是,如果我运行sudo nixos-rebuild switchNixOS命令来更新配置并安装声明式指定的所有系统范围的软件包,它将中止并显示错误: error: undefined variable ‘aspell-dict-en’ at /etc/nixos/configuration.nix:44:5 我知道对于许多软件包,尽管不是全部,但nix-env返回的名称和应该在environment.systemPackages配置选项中指定的名称是不同的,但是我不理解其逻辑。如何安装找到的软件包nix-env?
21 nixos  nix 


1
如何将/etc/nixos/configuration.nix拆分为单独的模块?
假设我有一个非常简单的NixOS配置文件: { config, pkgs, ... }: { imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix ]; # SOME STUFF environment.systemPackages = with pkgs; [ emacs gitFull ]; # SOME STUFF } 我知道NixOS实现了一个模块系统,而一个模块就是一个.nix文件。每个.nix文件应包含任何有效的Nix表达式(例如,函数或集合)。这意味着NixOS配置文件/etc/nixos/configuration.nix本身就是一个包含Nix表达式的模块。 我也知道,要使另一个模块中的Nix表达式对我正在使用的模块可见,我可以使用内置import函数。 我想将系统软件包的声明(包含emacs和的列表gitFull)拆分成file packages.nix。如何将NixOS配置文件拆分为单独的模块?
14 nixos  nix 

2
如何在NixOS上找出文件属于哪个(未安装)软件包?
我在NixOS上使用Nix软件包管理器。假设我要安装一个提供文件的软件包。我如何找到提供此文件的软件包,类似于其他GNU / Linux发行版?libgtk-x11-2.0.so.0 目前,我必须搜索该文件并找出它可能属于哪个程序包,然后在Nix存储库中找到相应的程序包,但是我想使用一种更加惯用的方法。

2
如何在NixOS上自动挂载/永久挂载外部设备
我有一个USB记忆棒和一个NTFS硬盘分区,我想在NixOS中使用它。在其他发行版中,我将使用/ mnt中的ntfs-3g挂载它。但是在NixOS上,该目录不存在。我想NixOS还有其他规范的方式和/或位置。 在NixOS中,应该如何设置外部分区的自动挂载,最好使用configuration.nix?
12 usb  ntfs  automounting  nixos 


2
无法在NixOS中执行二进制文件-没有此类文件或目录
我试图在运行NixOS的VM上安装当前的oracle jre。 现在发生以下情况: [michas@cc:~]$ tar xvzf jre-7u40-linux-x64.tar.gz |grep bin/java jre1.7.0_40/bin/javaws jre1.7.0_40/bin/java_vm jre1.7.0_40/bin/java [michas@cc:~]$ ls -l ./jre1.7.0_40/bin/java -rwxr-xr-x 1 michas nogroup 7750 Aug 27 09:17 ./jre1.7.0_40/bin/java [michas@cc:~]$ ./jre1.7.0_40/bin/java bash: ./jre1.7.0_40/bin/java: No such file or directory WTF?命名文件显然在那里。到底是怎么回事? 尝试进一步分析: [michas@cc:~]$ strace ./jre1.7.0_40/bin/java execve("./jre1.7.0_40/bin/java", ["./jre1.7.0_40/bin/java"], [/* 53 vars */]) = -1 ENOENT (No such …

1
如何在NixOS上编译Latex文档?
我通常pdflatex用来编译乳胶文档,但是在NixOS上,我看不到pdflatex可以通过安装$ nix-env -i pdflatex。 $ nix-env -qa pdflatex error: selector ‘pdflatex’ matches no derivations pdflatex搜索的结果也不会出现在nixos.org/nixos/packages.html的搜索下。但是,我确实注意到了该软件包rubber,该软件包显然包装了其他乳胶程序,包括pdflatex。安装rubber并尝试使用它编译我的乳胶文档后,出现以下“找不到pdflatex”错误。 $ rubber --pdf doc.tex compiling doc.tex... pdflatex not found Running pdflatex failed. 如何安装pdflatex在NixOS上编译乳胶文档? 为什么rubber可以通过nix-envwhile而不是pdflatex的依赖项进行安装rubber? 附带说明,本手册的“ Tex / Latex”部分对此没有说明。

3
如何在NixOS中安装npm软件包?
在NixOS中,我yarn通过运行照常安装了软件包$ nix-env -i yarn。现在我试图运行yarn通过$ yarn start。但是,这导致了以下错误。 $ yarn start yarn start v0.20.3 $ webpack-dev-server --env dev sh: webpack-dev-server: command not found error Command failed with exit code 127. 当我尝试以webpack-dev-server通常的NixOS方式进行安装时,出现“不匹配匹配”错误。 $ nix-env -i webpack-dev-server error: selector ‘webpack-dev-server’ matches no derivations 我读到这webpack-dev-server是一个npm软件包,不确定在这种情况下是否与此相关的几个问题。 在Nix下使用与nix不同的软件包管理器npm是否有意义? 如果对(1)的回答为是,那么如何在NixOS上安装npm?通过搜寻时nix-env,我看不到npm可用,因为$ nix-env -qa npm也没有任何派生匹配。 webpack-dev-server在NixOS上进行安装的正确方法是什么? 编辑 我尝试webpack-dev-server按照已注释的链接进行安装node2nix,并且能够安装,但是无法按照自述文件中列出的步骤2进行操作。 我所在的第2步中引用的文件/nix/store在 /nix/store/sgk7sxgqxrv2axkxjwc3y15apcqbrv1z-nixos-17.03.1482.1b57bf274a/nixos/pkgs/development/node-packages/node-packages.json …
10 nixos  npm 


1
如何在NixOS中安装一次性软件包?
我的nixos-16.03频道上有一个NixOS盒子。我希望机器保持在最稳定的状态,所以我想避免切换到nixos-unstable通道。 但是,我需要安装一个比该渠道(nodejs-6_x在本例中)可用的更新版本的软件包。手册中有描述“ 一键安装”的部分,乍一看似乎完全符合我的需要。但是,http://hydra.nixos.org上的Hydra服务器似乎没有提供该部分中描述.nixpkg的nix-install-package工具使用的任何文件。 Wiki还记录了一个过程,通过该过程可以自定义程序包(该页面称为Modifying Packages),我认为这可以用于我的目的,尽管似乎我是在与该工具而不是使用它作斗争。 我也在IRC中问过这个问题(感谢M-Ralith您耐心地回答我的无知问题!),但我不太了解如何应用它。建议是“在您的nixpkgs配置中覆盖src和版本”,这听起来像我可以在其中写入nix表达式.nixpkgs/configuration.nix并在我的订阅频道(nixos-16.03)中覆盖包的那些属性。当我问到通道中不存在的软件包时,建议是“指定整个软件包,而不是覆盖src和版本”,这意味着我需要为该软件包复制整个nix表达式。我感兴趣的是。nix-env 对于要安装在另一个渠道中但仍保留在当前渠道中的软件包,是否有更好的方法?它几乎感觉就像我应该可以做这样的事情nix-build <url> | nix-env -i。理想的情况是先关闭此设备,但如果我的当前频道赶上来,则没有可以阻止它稍后升级的配置。
9 nixos  nix  nixpkgs 

1
KVM中NixOS上的阴谋死亡
我在KVM上设置了NixOS系统,并安装了haskelPlatform软件包。 一切正常,ghci正常,但阴谋集团死掉而没有任何有用的错误消息: [michas@nix:~]$ type -a cabal cabal is /run/current-system/sw/bin/cabal [michas@nix:~]$ cabal --version cabal-install version 1.16.0.2 using version 1.16.0 of the Cabal library [michas@nix:~]$ cabal update Downloading the latest package list from hackage.haskell.org Aborted [michas@nix:~]$ cabal update -v3 Downloading the latest package list from hackage.haskell.org Sending: GET /packages/archive/00-index.tar.gz HTTP/1.1 Host: hackage.haskell.org …
9 linux  kill  haskell  nixos  cabal 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.