问题标签 [nixos]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
201 浏览

plugins - 如何为 NixOS 应用程序打包插件

如何为 NixOS 的应用程序打包插件?

有一个带有 src tarball 和多个插件的应用程序要从另一个来源安装。我期待一个示例如何或可能指向文档的指针。

0 投票
2 回答
2071 浏览

linux - NixOS:启动到终端

我正在使用带有 XMonad 的 NixOS 作为窗口管理器,它是通过configurations.nix 启用的。这工作正常。

启动后,初始登录是通过 NixOS 登录 gui 完成的。

例如,在 Debian 系统上,systemd 可以配置为仅引导到终端,而不是直接引导到桌面环境。可以设置一个.xinit文件,然后启动所选的窗口管理器或桌面环境,而无需使用任何显示管理器(如 lightdm、kdm ...)。然后通过调用startx.

  1. 如何在 Nix 中完成所描述的效果?我想有一种声明方式可以做到这一点。
  2. 另一个与此部分相关的问题是:在更改了configurations.nix 中的xserver 设置(例如在services.xserver.synaptics 中)并通过重建nixos-rebuild switch/test后,我需要做什么才能使它们生效?
0 投票
2 回答
4341 浏览

node.js - NixOS 安装特定的 NodeJS 版本

我可以看到 NixOS 有以下版本可供安装:

然而 systemPackages 不喜欢我安装nodejs-5.9.0,因为它抱怨说:

这表明我做错了什么。我宁愿不只是安装,nix-env -i ...因为我希望它在系统范围内(并且我正在为我的所有开发机器构建我的标准 NixOS 配置)。

根据nixpkgs 存储库v6 可用,但我不知道如何nixos-rebuild通过 configuration.nix 或其他方式安装它。

如何正确配置它以便我可以安装最新版本的 NodeJS,或者专门安装 5.9.0?

0 投票
1 回答
3406 浏览

nixos - 如何在没有 hacky 脚本的情况下在 NixOS 下安装 gtk 主题?

我找不到在 NixOS 下设置 gtk 主题的正确方法。我常用的方法是 lxappearance,但是在使用 nix lxappearance 安装一些 gtk-themes 后找不到它们(因为没有 /usr/share/themes,但主题不在 .local/share/themes 下)。在字体的情况下,我可以只使用 configuration.nix 中的 fonts.fonts 选项,但在图标和主题的情况下没有此选项。到目前为止,我发现的唯一东西是带有一些脚本的旧config.nix,但它是一个非常 hacky 的解决方案,我宁愿不使用它。

我正在使用 bspwm 作为窗口管理器。此外,我尝试使用 configuration.nix 以及 nix-env -i 安装它。

0 投票
2 回答
2392 浏览

nixos - 如何在 Nixos 中添加自定义服务

使用nixops一个可以轻松配置服务,例如:

但我想延长services。例如,通过使用override如下pkgs所示:

问题

如何做到这一点services

0 投票
1 回答
940 浏览

nixos - NixOS:设置 nix-shell 的选项

是否可以仅为单个 nix-shell设置选项( http://nixos.org/nixos/options.html/etc/nixos/configuration.nix )而不是在全局定义它们?

0 投票
1 回答
1394 浏览

linux - Nix/OS 架构概述?

虽然 Nix/OS wiki 和手册提供了很多优秀的信息,但我仍然无法获得架构概述。为问题的数量和幼稚道歉;随意回答一个子集:


1. 什么是 Nix 包?

根据我对手册的阅读,Nix 包是:

    一世。一个 Nix 表达式,用于获取构建所需的源和依赖项。

    ii. 一个builder脚本。

    iii. 上的列表all-packages.nix

源代码和二进制文件以及生成的派生文件放在 中nix/store,通道自动更新,通过使用共享的二进制缓存有效地保持更新。

    一个。这是正确和完整的吗?

    湾。.nix 表达式存储在哪里?

    C。nix/store如果它们具有相同的体系结构,我可以简单地在不同机器之间复制一个包文件夹吗?


2. 什么构成了 Nix 环境?

    一个。环境在哪里以及如何定义?

    湾。用户资料呢?

    C。该命令如何nix-shell工作?跟nix-env命令有关系吗?


3. NixOSconfiguration.nix和 Nix 环境之间的关系是什么?

从手册和 wiki 我收集到 NixOS 是一个 Nix 包,并且 Nix 创建了一个基于configuration.nix.

    一个。这是真的吗,如果是这样,除此之外做什么nixos-rebuild和做什么?nixos-install

    湾。是否可以逆转这个过程,即从环境中生成简洁的包或配置文件?

    C。我可以用 NixOS 做什么而我不能用 Nix 做?


4. 使用 Nix 创建可移植且可重现的环境以与同事共享时,有哪些最佳实践?

    一个。共享桌面、服务器和开发环境的各种方法是什么?

    湾。这些方法的用例是什么?

    C。相对于可移植性和可访问性,它们的优缺点是什么?


5. 悬而未决的问题:关于 Nix/OS 架构还有哪些重要的注意事项?

0 投票
2 回答
941 浏览

nix - 如何撤消`nix-channel --update`

通过 NixOps 进行全新安装后,我登录到机器并执行

这将大约 130Mb 的 nixpkgs 拉入了我的/nix/store. 我该如何撤消此操作?

0 投票
1 回答
323 浏览

nixos - 排除 `environment.systemPackages` 中的预定义包

Nixos 有一个默认的系统包列表:

https://github.com/NixOS/nixpkgs/blob/582313bafef4c81cb6df2dcf2ece4757eb5c8082/nixos/modules/config/system-path.nix

如何从environment.systemPackages(例如texinfo)中排除一些预定义的包?

0 投票
2 回答
4087 浏览

nixos - How can I override a Nix derivative without throwing `cannot coerce a set to a string`?

Or, the goal: How can I take a single package from Nix unstable in a declarative manner?

I'm new to NixOS and currently trying to install a newer version of Consul than the default 0.5.2 of my NixOS version (latest stable). I'm attempting this by overriding the derivative in my /etc/nix/configuration.nix.

I'd like to keep running stable, but I found unstable had the version of Consul that I wanted (0.7.0) already, and so I decided to use this package's attributes as a starting point to override https://github.com/NixOS/nixpkgs/blob/master/pkgs/servers/consul/default.nix

I copied it for most part into my configuration.nix, here are the relevant sections:

I'm running nix-build (Nix) 1.11.2 which throws:

When I look at line 19 it's where name is set to "consul-${version}".

Why there is type-coercion going on here? Any tips will be greatly appreciated!

I'm also wondering if there is a better way to run just a single package in unstable, yet doing so declaratively from configuration.nix, rather than imperatively?