问题标签 [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.
kde - Synaptics 触摸板在登录后禁用
我在 NixOS 上使用 Plasma5 在 KDE 上,由于某种原因,我的触摸板在使用 KDM 登录后禁用。这是启动后的输出synclient -l
。什么会导致这个问题?任何指导将不胜感激。
keyboard - 为什么忽略某些 setxkbmap 选项?
在 share/X11/xkb/rules/evdev/lst 中,我找到了 ctrl 的这组选项
其中一些工作 - 如果我运行setxkbmap -option -option 'ctrl:nocaps'
,我会得到正确的行为。但是,其他一些被忽略,例如setxkbmap -option -option 'ctrl:swap_lalt_lctl_lwin'
。
我所做的一项观察是,被忽略的选项由 显示setxkbmap -query
,而不是由setxkbmap -print
。这是此行为的演示。
我不知道如何更深入地挖掘这个。一些进一步的环境信息是
- linux发行版是NixOs
- 窗口管理器是 XMonad,显示管理器是 SLiM,没有桌面管理器
- 键盘布局是 colemak(如果我切换到 qwerty,问题仍然存在)
- 根据手册页,setxkbmap 版本是 1.3.0
nixos - “nixos-rebuild switch”中pulseaudio文件冲突的原因?
当我运行 nixos-rebuild 开关时,我收到一堆关于文件冲突的消息,例如
它们似乎都涉及pulseaudio。这是否意味着我以某种方式安装了两个 pulseaudio 包?我的 /etc/nixos/configuration.nix 有hardware.pulseaudio.enable = true;
但没有以任何其他方式引用 pulseaudio。
可能是当前运行的pulseaudio和一个后配置开关之间存在某种冲突?
haskell - 使用 cabal2nix 为不在 nixpkgs 中的包创建本地 nix 环境
我目前有一个正在 NixOS 上开发的 Yesod Web 应用程序。我正在使用default.nix
O'Charles 的博客文章中描述的文件:
这工作得很好。我可以像往常一样使用yesod
二进制文件。cabal
但是,我遇到了一个问题。运行时cabal haddock
,我收到以下错误:
谷歌搜索会出现以下链接:github: cabal haddock 'cannot meet -package-id' #2468。似乎是在说应该使用 ghcWithPackages。
谷歌搜索ghcWithPackages
会在 Nix 上找到 O'Charles 的(个人?)wiki。它有一个ghcWithPackages
用于开发已经在 nixpkgs 中的包的示例,但我无法让它与不在 nixpkgs 中的包一起工作(我的 cms/blog)。
按照O'Charles wiki 上的描述进行设置并运行nix-shell -v
,我收到以下错误:
为什么我会收到上述错误?我如何为尚未在 nixpkgs 中的 Haskell 项目编写default.nix
and ?shell.nix
理想情况下,它会使用ghcWithPackages
这样的cabal haddock
作品。
nixos - nix-shell:如何指定自定义环境变量?
我正在学习 nixos 和 nix 表达式。在一个项目文件夹中,我创建了一个 shell.nix,当我运行时,nix-shell
我希望它为我预设一个环境变量。例如设置 PGDATA 环境变量。
我知道有几种方法可以编写 nix 表达式文件(我还没有习惯其中的大多数)。这是我的示例:
shell.nix
haskell - 在 nix 上的 haskell 开发环境中使用 hoogle
我正在尝试在 Haskell 开发环境中使用 hoogle,就像O'Charles 的 wiki所描述的那样:
shell.nix
为了使用,我进行了如下修改hoogleLocal
,但它似乎没有为我安装 hoogle 二进制文件。
在生成的 shell 中,hoogle
二进制文件不可用。
如果我包含hs.hoogle
在 中buildInputs
,则hoogle
二进制文件已安装,但找不到数据库。以下是我尝试使用它时发生的情况。
对于 O'Charles 所描述的设置,我如何才能使其正常工作?
编辑:原来的 shell.nix 与这个答案相同。
haskell - 运行 Haskell 应用程序时,Nix 派生不包括 cabal 数据文件
我有一个cabal.mkDerivation
用于进行 Nix 派生的 haskell 项目。
当我nix-build
在项目根目录中运行时,构建成功后会得到预期的result
符号链接。
如果我进入该目录,我有 4 个目录:
- 垃圾桶
- 库
- nix 支持
- 分享
我的可执行文件存在于bin
. 当我尝试运行我的可执行文件时,它找不到我的应用程序文件或动态库。我知道这是由于缺少设置包的所有路径的环境变量。
如何在不安装的情况下使用正确的环境变量运行我的包的可执行文件?
我知道我可以nix-shell
用来cabal run
运行可执行文件,但我想在部署状态下运行可执行文件。
编辑#1:更多信息
这是我default.nix
在我的项目中的:
这是我的 cabal 文件的相关部分,其中包含应用程序使用的数据文件列表:
当使用cabal install
该结构部署应用程序时,将是:
可执行文件查找与当前工作目录相关的所有文件。
nixos - 如何在 NixOs 中更新 ssh 配置文件
我一直在玩 NixO,想知道如何修改配置文件。例如,我尝试修改 ssh 配置文件/etc/ssh/ssh_config
(以允许 root )但我无法保存该文件,因为它只是一个链接。我知道手动修改文件不是方法(因为系统需要知道修改),那么 NixOs 的方法是什么?
nixos - 如何为 nix-expression 设置参数
我是 Nix 的新手,我试图理解示例中给出的hello推导。
我可以理解语法和应该做什么,但是我不明白初始参数(尤其是perl
one_ 是如何输入的?
perl
我的意思是,在调用这个推导之前是谁在设置参数。这是否意味着这perl
是一个依赖hello
?
git - 带有融合的“git mergetool”无法创建“--output $MERGED”文件
我正在使用带有“git mergetool”的 meld 工具,该工具在 Git merging using Meld文章中描述。
~/.gitconfig
我的问题
如文章中所述,我有 3 种观点:
但是 meld 从不创建文件 $MERGED ,因此我想用 meld 更改的文件看起来像这样:
合并错误信息
'git mergetool' 也会打印这个错误:
问题
丢失的 $MERGED 文件可能是由融合问题引起的。但是,我认为这个问题不是NixOS 特有的。
在http://forums.gentoo.org/viewtopic-t-973234-view-previous.html?sid=1b42d7d0d9e268b592dc476c8c38bc89也讨论了融合问题,但我不明白这是否是我的问题的原因。
请给我一些提示,我接下来可以尝试什么。