我正在关注https://nixos.org/nixos/manual/上的文档,以便将包添加到emacs。我用nix-env -i emacs.
安装了emacs。正如它所描述的,我创建了一个名为emacs.nix
{ pkgs ? import <nixpkgs> {} }:
let
myEmacs = pkgs.emacs;
emacsWithPackages = (pkgs.emacsPackagesNgGen myEmacs).emacsWithPackages;
in
emacsWithPackages (
epkgs: (with epkgs.melpaStablePackages; [
magit
labburn-theme
cider
company
flycheck
iedit
yasnippet
nix-mode
] )
)
然后运行nix-build emacs.nix
。之后,我有一个结果符号链接,正如预期的那样。最后,我通过运行带有./result/bin/emacs
的emacs,运行package-initialized
确认我的软件包正在运行,最后检查了扩展程序是否正常工作。
现在问题出在我尝试将其添加到我的全局配置之后。建议我在配置文件中添加以下内容:
{
environment.systemPackages = [
# [...]
(import ./emacs.nix { inherit pkgs; })
];
}
我跑nixos-rebuild switch
。此过程不允许访问emacs上的包。