编辑:将这些保留下来,作为其他搜索类似问题的历史,其中一些问题已经解决,但最后的问题仍未解决,请参阅====行之后。
我正在使用家庭经理,我设置它为我提供新的,包括一些插件。不幸的是coc插件不再是最新的,所以现在我想从github打包它,然后导入。我是新来的,所以我仍然想念很多东西,我相信。
到目前为止,我的天真方法是:.../neovim/default.nix
with import <nixpkgs> {};
let coc = callPackage ./coc-new.nix;
in
{
enable = true;
viAlias = true;
vimAlias = true;
withNodeJs = false;
plugins = with pkgs.vimPlugins; [
coc
fzf-vim
fzfWrapper
haskell-vim
some-more-plugins
];
extraConfig = ''
unlet! skip_defaults_vim
" some more vimrc stuff
'';
}然后是.../neovim/coc-new.nix
{ stdenv, fetchFromGithub, lib, config, options }:
stdenv.mkDerivation rec {
name = "new-coc-${version}";
version = "v0.80";
src = fetchFromGithub {
owner = "neoclide";
repo = "coc.nvim";
rev = "ce448a6945d90609bc5c063577e12b859de0834b";
# sha256 = " ???";
};
installPhase = ''
export PATH="''\${bash}/bin/bash"
mkdir -p $out
cp -r ./ $out
'';
}错误告诉我,导入的任何内容都不是某种“包”类型:
error: The option `programs.neovim.plugins.[definition 1-entry 1].__ignoreNulls' defined in `/home/chai/.config/nixpkgs/role/laptop-old/index.nix' does not exist.所以请帮帮我:
,
谢谢你帮助一个新用户来这里的路上!
==========================================================================
编辑:在注释和一些关于man nix-has的阅读的帮助下,我设法让哈希和构建工作起来。我按照建议在...neovim/default.nix中添加了{}参数
let coc = callPackage ./coc-new.nix {};.../neovim/coc-new.nix现在读到:
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "coc-nvim";
version = "v0.80";
src = fetchFromGitHub {
owner = "neoclide";
repo = "coc.nvim";
rev = "v0.0.80";
sha256 = "1c2spdx4jvv7j52f37lxk64m3rx7003whjnra3y1c7m2d7ljs6rb";
};
dontBuild = true;
installPhase = ''
mkdir -p $out
cp -r ./ $out
'';
}一切都在继续但是..。新创建的派生不会被提取。我的vim包目录里什么都没有。为什么?我在(home-manager/neovim.nix)https://github.com/nix-community/home-manager/blob/master/modules/programs/neovim.nix上看到:
plugins = mkOption {
type = with types; listOf (either package pluginWithConfigType);
default = [ ];
example = literalExample ''
with pkgs.vimPlugins; [
yankring
vim-nix
{ plugin = vim-startify;
config = "let g:startify_change_to_vcs_root = 0";
}
]
'';发布于 2021-01-18 16:40:50
好吧,我终于成功了。经过更多的搜索和迷路,结果发现pkgs.vimUtils.buildVimPlugin已经解决了我的问题。我的档案现在写着:
{ pkgs, fetchFromGitHub }:
pkgs.vimUtils.buildVimPlugin {
pname = "coc-nvim";
version = "v0.80";
src = fetchFromGitHub {
owner = "neoclide";
repo = "coc.nvim";
rev = "v0.0.80";
sha256 = "1c2spdx4jvv7j52f37lxk64m3rx7003whjnra3y1c7m2d7ljs6rb";
};
}还有..。
with import <nixpkgs> {};
let coc = callPackage ./coc-plugin.nix { };
in
{
enable = true;
viAlias = true;
vimAlias = true;
withNodeJs = false;
plugins = with pkgs.vimPlugins;[
coc
fzf-vim
more-plugins
];
extraConfig = ''
unlet! skip_defaults_vim
" ... more config
'';
}https://stackoverflow.com/questions/65764080
复制相似问题