问题标签 [nixpkgs]
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.
linux - Ubuntu 18 nixpkgs conda - 重定位错误 libc.so.6 符号 _dl_exception_create,版本 GLIBC_PRIVATE ld-linux-x86-64.so.2 链接时间参考
设置:
- 系统:
"x86_64-linux"
- 主机操作系统:
Linux 4.15.0-22-generic, Ubuntu, 18.04 LTS (Bionic Beaver)
- 多用户?:
no
- 沙盒:
no
- 版本:
nix-env (Nix) 2.0.2
- 频道(aeug):
"nixpkgs-18.09pre140731.c29d2fde74d"
- nixpkgs:
/home/aeug/.nix-defexpr/channels/nixpkgs
跑步:
结果是:
编辑我必须允许我的用户访问 /etc/profile.d/vte.sh
但这会导致:
所以我发出
但结果仍然是一样的。
如果我做
除了“nix-shell”还有 nix-env 但是
为什么在 nix-env 中有一个 conda pkgs 可用但通过 -i 不存在?
您如何调试根本原因以及有哪些方法可以解决它?
julia - julia 1.0 安装测试 - nix-pkgs - ubuntu
我的笔记本电脑:
Linux g-TP 4.13.0-26-generic #29~16.04.2-Ubuntu SMP Tue Jan 9 22:00:44 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
我通过 nix-env 安装了 julia 并得到了以下测试结果
我可以/应该做些什么来解决 327815 损坏的测试?
python - 在 NixOS 中,如何解决冲突?
我正在尝试使用 Python 建立开发环境,包括 Python 库 Spacy 和 Pandas。我试图运行的命令是nix-shell -p 'python36.withPackages(ps: with ps; [ spacy pandas ])'
但这就是发生的事情:
这里发生了什么,我该如何解决?
nix - 配置 ~/.config/nixpkgs/config.nix 的位置
是否有一些 envvar 或类似的东西可以用来配置 ~/.config/nixpkgs/config.nix 的位置?
haskell - 如何编写一个结合其他 nix-shell 环境的 shell.nix 文件?
我想编写一个shell.nix
文件,为我提供一个开发环境,其中包括开发人员工具 + haskell 依赖项。我想将我的 nix 表达式分开 - 现在这意味着一个文件包含有关我的编辑器的信息,另一个文件包含有关我的 haskell 项目的信息。
我试图建立一个非常基本的环境,但无法让它工作。我已经有两个文件可以创建一个nix-shell
:
这两者都产生了有用的 shell 环境!(也就是说,nix-shell my-haskell-env.nix
分别nix-shell my-neovim-env.nix
给我 cabal 和 neovim,但不能同时给我)。
我尝试制作一个shell.nix
可以同时提供 neovim 和 cabal 的环境是这样的:
然而,这不起作用。好像在尝试搭建neovim环境:
我不知道如何解决这个问题;我究竟做错了什么?我怀疑也许我不应该使用 mkDerivation?
nixos - 如何安装 vscode 的扩展?
这是一个初学者的问题。所以有一个包vscode-with-extensions
。包装上说:
一组要与编辑器一起安装的 vscode 扩展。这是一个例子:
我必须把这个表达式放在哪里configuration.nix
?我已经有了
其中。
nix - 安装不在`nixpkgs/pkgs/top-level/all-packages.nix`中的软件包的推荐方法是什么
我想安装elementary-terminal。这个包不在nixpkgs/pkgs/top-level/all-packages.nix
里面,我想仅仅添加elementary-terminal
进去是不够的configuration.nix
安装此类软件包的推荐方法是什么?
nix - 如何在 NixOS 中启用 Caddy 插件?
我刚刚开始使用 NixOS,到目前为止,我已经设法/etc/nixos/configuration.nix
在我的 NixOS 18.09 VM 中进行编辑,以启用 PHP-FPM 和 Caddy 网络服务器。
在 localhost:8080 上提供了 PHP 处理的响应。(耶!)
为了在从 source 编译时启用 Caddy 插件,将Go 导入添加到 caddy 的run.go中,例如:
如何设置在下载源之后和构建发生之前执行这样的行插入?(如果这是使用 Nix 时的合理方法?)
我相信在编写包时可以分配构建器脚本(Bash 或其他),并且我认为可以在其中完成行插入。但是我不知道在这种情况下如何将脚本分配给现有包(覆盖属性/使用覆盖?)以及将脚本放在磁盘上的什么位置。
状态更新
我一直在阅读有关自定义包的一般信息,听起来覆盖可能是我需要的。但是,我似乎无法评估我的叠加层。
我使用覆盖包名称作为测试,因为它比修补代码更简单。
叠加尝试 1
/etc/nixos/configuration.nix
:
/etc/nixos/overlays-compat/overlays.nix
:
/etc/nixos/overlays-compat/caddy.nix
:
叠加尝试 2
/etc/nixos/configuration.nix
:
error: anonymous function at /nix/store/mr5sfmz6lm5952ch5q6v49563wzylrkx-nixos-18.09.2327.37694c8cc0e/nixos/pkgs/servers/caddy/default.nix:1:1 called with unexpected argument 'name', at /nix/store/mr5sfmz6lm5952ch5q6v49563wzylrkx-nixos-18.09.2327.37694c8cc0e/nixos/lib/customisation.nix:69:12
覆盖属性
我以前设法用这个覆盖包名称:
我可以在 htop 中看到 caddy 二进制文件位于名为/nix/store/...-caddy-override-v0.11.0-bin/
. 但我知道以这种方式覆盖已被覆盖所取代。
qml - 从 nixpkgs 使用 qt5 时如何配置 QML 导入路径
我正在 Ubuntu 18.04 上构建 QML 应用程序,并希望使用 nix(和 nixpkgs)设置我的开发环境。但是 QML 导入路径搞砸了。如果我运行应用程序,我会得到:
qrc:/main.qml:14 类型工具按钮不可用
file:///nix/store/013khcq6bcf1ln51wi6b2vk1xq2hx3ys-qtquickcontrols2-5.12.0-bin/lib/qt-5.12/qml/QtQuick/Controls.2/Material/qmldir:-1插件无法为模块“.nix.store加载.013khcq6bcf1ln51wi6b2vk1xq2hx3ys-qtquickcontrols2-5.12.0-bin.lib.qt-5.12.qml.QtQuick.Controls.Material”:
模块命名空间“QtQuick.Controls.Material”与导入 URI“.nix.store.013khcq6bcf1ln51wi6b2vk1xq2hx3ys-qtquickcontrols2-5.12.0-bin.lib.qt-5.12.qml.QtQuick.Controls.Material”不匹配
设置QML2_IMPORT_PATH
为/nix/store/013khcq6bcf1ln51wi6b2vk1xq2hx3ys-qtquickcontrols2-5.12.0-bin/lib/qt-5.12/qml/
解决问题,因此我认为我无法设置我的 nix-shell / 环境。
打印 QLibraryInfo::Qml2ImportsPath 产量/nix/store/fjxzlpc693gbkgbh1vi199jvzgrkps4j-qtbase-5.12.0/lib/qt-5.12/qml
和 QML 引擎的导入路径是:
- qrc:/qt-project.org/imports
- /nix/store/013khcq6bcf1ln51wi6b2vk1xq2hx3ys-qtquickcontrols2-5.12.0-bin/lib/qt-5.12/qml
- /nix/store/q02n0gycm1m2sqwzf4ccfysk8bh21jjq-user-environment/lib/qt-5.12/qml
- /nix/store/pf1ybjg0lh5y1rvalkdfw0axgd1dabpd-qtdeclarative-5.12.0-bin/lib/qt-5.12/qml
我的 shell.nix 看起来像这样:
我已经用nix-shell shell.nix
和 试过了nix-shell --show-trace -E 'with import <nixpkgs> {}; libsForQt5.callPackage ./shell.nix { }'
。
如何在不设置 QML2_IMPORT_PATH 的情况下正确设置环境/nix-shell?
nix - Nixpkgs Overlays:为什么“super”和“self”之间的一些非覆盖属性不同?
背景
当我为 Nixpkgs添加第一个Overlay时,我发现为不同版本构建了一堆系统实用程序:
这是时间和空间的消耗。我试图弄清楚发生了什么,然后以这个问题告终。
概括
叠加层的思想是所有叠加层都应用后的累加结果,而叠加层self
是应用前一个叠加层的结果。super
self
super
我认为一个未被触及的属性在 and 之间是相同的self
,super
但有些不是。
以上评估为:
显示self.bash
和super.bash
不一样,即使bash
在任何叠加层中都没有触及该属性。为什么会发生这种情况,或者确实缺少一些概念?
细节
更多不同的属性
除了 之外bash
,还有更多不同的属性:
的建造者self.bash
是super.bash
?
bash-from-self-outPath
是bash-from-super-builder
( 06z61...khw2-bash-4.4-p23
)。
那么super.bash
用于self.bash
构建自身,产生另一个 bash ( 2avim...9nm9-bash-4.4-p23
)?
bootstrap-tools/bash
--builds--> self.bash
--builds-->super.bash
为什么这是一个问题
我希望我在叠加层中定义的一些包依赖于bash
,coreutils
和东西。我想使用它们直接提供的原始版本<nixpkgs>
,而不是那些可能被以后的覆盖覆盖的版本。因此,在这种情况下,似乎我应该选择super.*
而不是self.*
成为依赖项。
但是有些super.stuff
不是原始的nixpkgs.stuff
,这会导致重建它们,因为没有二进制缓存并且浪费磁盘空间。并且self.stuff
可能会被以后的覆盖覆盖。我能做些什么?