vimPlugins: format overrides.nix with nixpkgs-fmt 1.0

This commit is contained in:
Andrey Kuznetsov 2021-02-05 12:39:41 +00:00
parent 837b4d86ba
commit 360d4c3073
No known key found for this signature in database
GPG Key ID: 9EC1B2ACE338B18B

View File

@ -1,39 +1,82 @@
{ lib, stdenv { lib
, python, cmake, meson, vim, ruby , stdenv
, which, fetchFromGitHub, fetchgit, fetchurl, fetchzip, fetchpatch , python
, llvmPackages, rustPlatform, buildGoModule , cmake
, pkg-config, curl, openssl, libgit2, libiconv , meson
, xkb-switch, fzf, skim, stylish-haskell , vim
, python3, boost, icu, ncurses , ruby
, ycmd, rake , which
, gobject-introspection, glib, wrapGAppsHook , fetchFromGitHub
, fetchgit
, fetchurl
, fetchzip
, fetchpatch
, llvmPackages
, rustPlatform
, buildGoModule
, pkg-config
, curl
, openssl
, libgit2
, libiconv
, xkb-switch
, fzf
, skim
, stylish-haskell
, python3
, boost
, icu
, ncurses
, ycmd
, rake
, gobject-introspection
, glib
, wrapGAppsHook
, substituteAll , substituteAll
, languagetool , languagetool
, tabnine , tabnine
, Cocoa, CoreFoundation, CoreServices
, Cocoa
, CoreFoundation
, CoreServices
, buildVimPluginFrom2Nix , buildVimPluginFrom2Nix
, nodePackages , nodePackages
, dasht , dasht
, sqlite , sqlite
, code-minimap , code-minimap
# deoplete-khard dependency # deoplete-khard dependency
, khard , khard
# vim-go dependencies # vim-go dependencies
, asmfmt, delve, errcheck, godef, golint , asmfmt
, gomodifytags, gotags, gotools, go-motion , delve
, gnused, reftools, gogetdoc, golangci-lint , errcheck
, impl, iferr, gocode, gocode-gomod, go-tools , godef
, golint
, gomodifytags
, gotags
, gotools
, go-motion
, gnused
, reftools
, gogetdoc
, golangci-lint
, impl
, iferr
, gocode
, gocode-gomod
, go-tools
, gopls , gopls
# direnv-vim dependencies # direnv-vim dependencies
, direnv , direnv
# vCoolor dependency # vCoolor dependency
, gnome3 , gnome3
# fruzzy dependency # fruzzy dependency
, nim , nim
}: }:
@ -61,42 +104,44 @@ self: super: {
src = skim.vim; src = skim.vim;
}; };
LanguageClient-neovim = let LanguageClient-neovim =
version = "0.1.160"; let
LanguageClient-neovim-src = fetchFromGitHub { version = "0.1.160";
owner = "autozimu"; LanguageClient-neovim-src = fetchFromGitHub {
repo = "LanguageClient-neovim"; owner = "autozimu";
rev = version; repo = "LanguageClient-neovim";
sha256 = "143cifahav1pfmpx3j1ihx433jrwxf6z27s0wxndgjkd2plkks58"; rev = version;
}; sha256 = "143cifahav1pfmpx3j1ihx433jrwxf6z27s0wxndgjkd2plkks58";
LanguageClient-neovim-bin = rustPlatform.buildRustPackage { };
pname = "LanguageClient-neovim-bin"; LanguageClient-neovim-bin = rustPlatform.buildRustPackage {
pname = "LanguageClient-neovim-bin";
inherit version;
src = LanguageClient-neovim-src;
cargoSha256 = "0mf94j85awdcqa6cyb89bipny9xg13ldkznjf002fq747f55my2a";
buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
# FIXME: Use impure version of CoreFoundation because of missing symbols.
# Undefined symbols for architecture x86_64: "_CFURLResourceIsReachable"
preConfigure = lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS="-F${CoreFoundation}/Library/Frameworks -framework CoreFoundation $NIX_LDFLAGS"
'';
};
in
buildVimPluginFrom2Nix {
pname = "LanguageClient-neovim";
inherit version; inherit version;
src = LanguageClient-neovim-src; src = LanguageClient-neovim-src;
cargoSha256 = "0mf94j85awdcqa6cyb89bipny9xg13ldkznjf002fq747f55my2a"; propagatedBuildInputs = [ LanguageClient-neovim-bin ];
buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
# FIXME: Use impure version of CoreFoundation because of missing symbols. preFixup = ''
# Undefined symbols for architecture x86_64: "_CFURLResourceIsReachable" substituteInPlace "$out"/share/vim-plugins/LanguageClient-neovim/autoload/LanguageClient.vim \
preConfigure = lib.optionalString stdenv.isDarwin '' --replace "let l:path = s:root . '/bin/'" "let l:path = '${LanguageClient-neovim-bin}' . '/bin/'"
export NIX_LDFLAGS="-F${CoreFoundation}/Library/Frameworks -framework CoreFoundation $NIX_LDFLAGS"
''; '';
}; };
in buildVimPluginFrom2Nix {
pname = "LanguageClient-neovim";
inherit version;
src = LanguageClient-neovim-src;
propagatedBuildInputs = [ LanguageClient-neovim-bin ]; clang_complete = super.clang_complete.overrideAttrs (old: {
preFixup = ''
substituteInPlace "$out"/share/vim-plugins/LanguageClient-neovim/autoload/LanguageClient.vim \
--replace "let l:path = s:root . '/bin/'" "let l:path = '${LanguageClient-neovim-bin}' . '/bin/'"
'';
};
clang_complete = super.clang_complete.overrideAttrs(old: {
# In addition to the arguments you pass to your compiler, you also need to # In addition to the arguments you pass to your compiler, you also need to
# specify the path of the C++ std header (if you are using C++). # specify the path of the C++ std header (if you are using C++).
# These usually implicitly set by cc-wrapper around clang (pkgs/build-support/cc-wrapper). # These usually implicitly set by cc-wrapper around clang (pkgs/build-support/cc-wrapper).
@ -111,7 +156,7 @@ self: super: {
''; '';
}); });
direnv-vim = super.direnv-vim.overrideAttrs(oa: { direnv-vim = super.direnv-vim.overrideAttrs (oa: {
preFixup = oa.preFixup or "" + '' preFixup = oa.preFixup or "" + ''
substituteInPlace $out/share/vim-plugins/direnv-vim/autoload/direnv.vim \ substituteInPlace $out/share/vim-plugins/direnv-vim/autoload/direnv.vim \
--replace "let s:direnv_cmd = get(g:, 'direnv_cmd', 'direnv')" \ --replace "let s:direnv_cmd = get(g:, 'direnv_cmd', 'direnv')" \
@ -119,14 +164,14 @@ self: super: {
''; '';
}); });
clighter8 = super.clighter8.overrideAttrs(old: { clighter8 = super.clighter8.overrideAttrs (old: {
preFixup = '' preFixup = ''
sed "/^let g:clighter8_libclang_path/s|')$|${llvmPackages.clang.cc.lib}/lib/libclang.so')|" \ sed "/^let g:clighter8_libclang_path/s|')$|${llvmPackages.clang.cc.lib}/lib/libclang.so')|" \
-i "$out"/share/vim-plugins/clighter8/plugin/clighter8.vim -i "$out"/share/vim-plugins/clighter8/plugin/clighter8.vim
''; '';
}); });
command-t = super.command-t.overrideAttrs(old: { command-t = super.command-t.overrideAttrs (old: {
buildInputs = [ ruby rake ]; buildInputs = [ ruby rake ];
buildPhase = '' buildPhase = ''
rake make rake make
@ -134,7 +179,7 @@ self: super: {
''; '';
}); });
cpsm = super.cpsm.overrideAttrs(old: { cpsm = super.cpsm.overrideAttrs (old: {
buildInputs = [ buildInputs = [
python3 python3
stdenv stdenv
@ -150,7 +195,7 @@ self: super: {
''; '';
}); });
ctrlp-cmatcher = super.ctrlp-cmatcher.overrideAttrs(old: { ctrlp-cmatcher = super.ctrlp-cmatcher.overrideAttrs (old: {
buildInputs = [ python ]; buildInputs = [ python ];
buildPhase = '' buildPhase = ''
patchShebangs . patchShebangs .
@ -158,25 +203,25 @@ self: super: {
''; '';
}); });
defx-nvim = super.defx-nvim.overrideAttrs(old: { defx-nvim = super.defx-nvim.overrideAttrs (old: {
dependencies = with super; [ nvim-yarp ]; dependencies = with super; [ nvim-yarp ];
}); });
deoplete-fish = super.deoplete-fish.overrideAttrs(old: { deoplete-fish = super.deoplete-fish.overrideAttrs (old: {
dependencies = with super; [ deoplete-nvim vim-fish ]; dependencies = with super; [ deoplete-nvim vim-fish ];
}); });
deoplete-go = super.deoplete-go.overrideAttrs(old: { deoplete-go = super.deoplete-go.overrideAttrs (old: {
buildInputs = [ python3 ]; buildInputs = [ python3 ];
buildPhase = '' buildPhase = ''
pushd ./rplugin/python3/deoplete/ujson pushd ./rplugin/python3/deoplete/ujson
python3 setup.py build --build-base=$PWD/build --build-lib=$PWD/build python3 setup.py build --build-base=$PWD/build --build-lib=$PWD/build
popd popd
find ./rplugin/ -name "ujson*.so" -exec mv -v {} ./rplugin/python3/ \; find ./rplugin/ -name "ujson*.so" -exec mv -v {} ./rplugin/python3/ \;
''; '';
}); });
deoplete-khard = super.deoplete-khard.overrideAttrs(old: { deoplete-khard = super.deoplete-khard.overrideAttrs (old: {
dependencies = [ self.deoplete-nvim ]; dependencies = [ self.deoplete-nvim ];
passthru.python3Dependencies = ps: [ (ps.toPythonModule khard) ]; passthru.python3Dependencies = ps: [ (ps.toPythonModule khard) ];
meta = { meta = {
@ -187,52 +232,55 @@ self: super: {
}; };
}); });
ensime-vim = super.ensime-vim.overrideAttrs(old: { ensime-vim = super.ensime-vim.overrideAttrs (old: {
passthru.python3Dependencies = ps: with ps; [ sexpdata websocket_client ]; passthru.python3Dependencies = ps: with ps; [ sexpdata websocket_client ];
dependencies = with super; [ vimproc-vim vimshell-vim super.self forms ]; dependencies = with super; [ vimproc-vim vimshell-vim super.self forms ];
}); });
forms = super.forms.overrideAttrs(old: { forms = super.forms.overrideAttrs (old: {
dependencies = with super; [ super.self ]; dependencies = with super; [ super.self ];
}); });
fruzzy = let # until https://github.com/NixOS/nixpkgs/pull/67878 is merged, there's no better way to install nim libraries with nix fruzzy =
nimpy = fetchFromGitHub { let
owner = "yglukhov"; # until https://github.com/NixOS/nixpkgs/pull/67878 is merged, there's no better way to install nim libraries with nix
repo = "nimpy"; nimpy = fetchFromGitHub {
rev = "4840d1e438985af759ddf0923e7a9250fd8ea0da"; owner = "yglukhov";
sha256 = "0qqklvaajjqnlqm3rkk36pwwnn7x942mbca7nf2cvryh36yg4q5k"; repo = "nimpy";
}; rev = "4840d1e438985af759ddf0923e7a9250fd8ea0da";
binaryheap = fetchFromGitHub { sha256 = "0qqklvaajjqnlqm3rkk36pwwnn7x942mbca7nf2cvryh36yg4q5k";
owner = "bluenote10"; };
repo = "nim-heap"; binaryheap = fetchFromGitHub {
rev = "c38039309cb11391112571aa332df9c55f625b54"; owner = "bluenote10";
sha256 = "05xdy13vm5n8dw2i366ppbznc4cfhq23rdcklisbaklz2jhdx352"; repo = "nim-heap";
}; rev = "c38039309cb11391112571aa332df9c55f625b54";
in super.fruzzy.overrideAttrs(old: { sha256 = "05xdy13vm5n8dw2i366ppbznc4cfhq23rdcklisbaklz2jhdx352";
buildInputs = [ nim ]; };
patches = [ in
(substituteAll { super.fruzzy.overrideAttrs (old: {
src = ./patches/fruzzy/get_version.patch; buildInputs = [ nim ];
version = old.version; patches = [
}) (substituteAll {
]; src = ./patches/fruzzy/get_version.patch;
configurePhase = '' version = old.version;
substituteInPlace Makefile \ })
--replace \ ];
"nim c" \ configurePhase = ''
"nim c --nimcache:$TMP --path:${nimpy} --path:${binaryheap}" substituteInPlace Makefile \
''; --replace \
buildPhase = '' "nim c" \
make build "nim c --nimcache:$TMP --path:${nimpy} --path:${binaryheap}"
''; '';
}); buildPhase = ''
make build
'';
});
ghcid = super.ghcid.overrideAttrs(old: { ghcid = super.ghcid.overrideAttrs (old: {
configurePhase = "cd plugins/nvim"; configurePhase = "cd plugins/nvim";
}); });
vimsence = super.vimsence.overrideAttrs(old: { vimsence = super.vimsence.overrideAttrs (old: {
meta = with lib; { meta = with lib; {
description = "Discord rich presence for Vim"; description = "Discord rich presence for Vim";
homepage = "https://github.com/hugolgst/vimsence"; homepage = "https://github.com/hugolgst/vimsence";
@ -240,11 +288,11 @@ self: super: {
}; };
}); });
vim-gist = super.vim-gist.overrideAttrs(old: { vim-gist = super.vim-gist.overrideAttrs (old: {
dependencies = with super; [ webapi-vim ]; dependencies = with super; [ webapi-vim ];
}); });
minimap-vim = super.minimap-vim.overrideAttrs(old: { minimap-vim = super.minimap-vim.overrideAttrs (old: {
preFixup = '' preFixup = ''
substituteInPlace $out/share/vim-plugins/minimap-vim/plugin/minimap.vim \ substituteInPlace $out/share/vim-plugins/minimap-vim/plugin/minimap.vim \
--replace "code-minimap" "${code-minimap}/bin/code-minimap" --replace "code-minimap" "${code-minimap}/bin/code-minimap"
@ -259,68 +307,69 @@ self: super: {
meta.maintainers = with lib.maintainers; [ vcunat ]; meta.maintainers = with lib.maintainers; [ vcunat ];
}; };
ncm2 = super.ncm2.overrideAttrs(old: { ncm2 = super.ncm2.overrideAttrs (old: {
dependencies = with super; [ nvim-yarp ]; dependencies = with super; [ nvim-yarp ];
}); });
ncm2-jedi = super.ncm2-jedi.overrideAttrs(old: { ncm2-jedi = super.ncm2-jedi.overrideAttrs (old: {
dependencies = with super; [ nvim-yarp ncm2 ]; dependencies = with super; [ nvim-yarp ncm2 ];
passthru.python3Dependencies = ps: with ps; [ jedi ]; passthru.python3Dependencies = ps: with ps; [ jedi ];
}); });
ncm2-neoinclude = super.ncm2-neoinclude.overrideAttrs(old: { ncm2-neoinclude = super.ncm2-neoinclude.overrideAttrs (old: {
dependencies = with super; [ neoinclude-vim ]; dependencies = with super; [ neoinclude-vim ];
}); });
ncm2-neosnippet = super.ncm2-neosnippet.overrideAttrs(old: { ncm2-neosnippet = super.ncm2-neosnippet.overrideAttrs (old: {
dependencies = with super; [ neosnippet-vim ]; dependencies = with super; [ neosnippet-vim ];
}); });
ncm2-syntax = super.ncm2-syntax.overrideAttrs(old: { ncm2-syntax = super.ncm2-syntax.overrideAttrs (old: {
dependencies = with super; [ neco-syntax ]; dependencies = with super; [ neco-syntax ];
}); });
ncm2-ultisnips = super.ncm2-ultisnips.overrideAttrs(old: { ncm2-ultisnips = super.ncm2-ultisnips.overrideAttrs (old: {
dependencies = with super; [ ultisnips ]; dependencies = with super; [ ultisnips ];
}); });
nvim-lsputils = super.nvim-lsputils.overrideAttrs(old: { nvim-lsputils = super.nvim-lsputils.overrideAttrs (old: {
dependencies = with super; [ popfix ]; dependencies = with super; [ popfix ];
}); });
fzf-vim = super.fzf-vim.overrideAttrs(old: { fzf-vim = super.fzf-vim.overrideAttrs (old: {
dependencies = [ self.fzfWrapper ]; dependencies = [ self.fzfWrapper ];
}); });
skim-vim = super.skim-vim.overrideAttrs(old: { skim-vim = super.skim-vim.overrideAttrs (old: {
dependencies = [ self.skim ]; dependencies = [ self.skim ];
}); });
sql-nvim = super.sql-nvim.overrideAttrs(old: { sql-nvim = super.sql-nvim.overrideAttrs (old: {
postPatch = '' postPatch = ''
substituteInPlace lua/sql/defs.lua \ substituteInPlace lua/sql/defs.lua \
--replace "vim.g.sql_clib_path or" "vim.g.sql_clib_path or '${sqlite.out}/lib/libsqlite3.so' or" --replace "vim.g.sql_clib_path or" "vim.g.sql_clib_path or '${sqlite.out}/lib/libsqlite3.so' or"
''; '';
}); });
sved = let sved =
# we put the script in its own derivation to benefit the magic of wrapGAppsHook let
svedbackend = stdenv.mkDerivation { # we put the script in its own derivation to benefit the magic of wrapGAppsHook
name = "svedbackend-${super.sved.name}"; svedbackend = stdenv.mkDerivation {
inherit (super.sved) src; name = "svedbackend-${super.sved.name}";
nativeBuildInputs = [ wrapGAppsHook ]; inherit (super.sved) src;
buildInputs = [ nativeBuildInputs = [ wrapGAppsHook ];
gobject-introspection buildInputs = [
glib gobject-introspection
(python3.withPackages(ps: with ps; [ pygobject3 pynvim dbus-python ])) glib
]; (python3.withPackages (ps: with ps; [ pygobject3 pynvim dbus-python ]))
preferLocalBuild = true; ];
installPhase = '' preferLocalBuild = true;
install -Dt $out/bin ftplugin/evinceSync.py installPhase = ''
''; install -Dt $out/bin ftplugin/evinceSync.py
}; '';
in };
super.sved.overrideAttrs(old: { in
super.sved.overrideAttrs (old: {
preferLocalBuild = true; preferLocalBuild = true;
postPatch = '' postPatch = ''
rm ftplugin/evinceSync.py rm ftplugin/evinceSync.py
@ -331,7 +380,7 @@ self: super: {
}; };
}); });
vimacs = super.vimacs.overrideAttrs(old: { vimacs = super.vimacs.overrideAttrs (old: {
buildPhase = '' buildPhase = ''
substituteInPlace bin/vim \ substituteInPlace bin/vim \
--replace '/usr/bin/vim' 'vim' \ --replace '/usr/bin/vim' 'vim' \
@ -347,73 +396,74 @@ self: super: {
}; };
}); });
vimshell-vim = super.vimshell-vim.overrideAttrs(old: { vimshell-vim = super.vimshell-vim.overrideAttrs (old: {
dependencies = with super; [ vimproc-vim ]; dependencies = with super; [ vimproc-vim ];
}); });
vim-addon-manager = super.vim-addon-manager.overrideAttrs(old: { vim-addon-manager = super.vim-addon-manager.overrideAttrs (old: {
buildInputs = lib.optional stdenv.isDarwin Cocoa; buildInputs = lib.optional stdenv.isDarwin Cocoa;
}); });
vim-addon-actions = super.vim-addon-actions.overrideAttrs(old: { vim-addon-actions = super.vim-addon-actions.overrideAttrs (old: {
dependencies = with super; [ vim-addon-mw-utils tlib_vim ]; dependencies = with super; [ vim-addon-mw-utils tlib_vim ];
}); });
vim-addon-async = super.vim-addon-async.overrideAttrs(old: { vim-addon-async = super.vim-addon-async.overrideAttrs (old: {
dependencies = with super; [ vim-addon-signs ]; dependencies = with super; [ vim-addon-signs ];
}); });
vim-addon-background-cmd = super.vim-addon-background-cmd.overrideAttrs(old: { vim-addon-background-cmd = super.vim-addon-background-cmd.overrideAttrs (old: {
dependencies = with super; [ vim-addon-mw-utils ]; dependencies = with super; [ vim-addon-mw-utils ];
}); });
vim-addon-completion = super.vim-addon-completion.overrideAttrs(old: { vim-addon-completion = super.vim-addon-completion.overrideAttrs (old: {
dependencies = with super; [ tlib_vim ]; dependencies = with super; [ tlib_vim ];
}); });
vim-addon-goto-thing-at-cursor = super.vim-addon-goto-thing-at-cursor.overrideAttrs(old: { vim-addon-goto-thing-at-cursor = super.vim-addon-goto-thing-at-cursor.overrideAttrs (old: {
dependencies = with super; [ tlib_vim ]; dependencies = with super; [ tlib_vim ];
}); });
vim-addon-mru = super.vim-addon-mru.overrideAttrs(old: { vim-addon-mru = super.vim-addon-mru.overrideAttrs (old: {
dependencies = with super; [ vim-addon-other vim-addon-mw-utils ]; dependencies = with super; [ vim-addon-other vim-addon-mw-utils ];
}); });
vim-addon-nix = super.vim-addon-nix.overrideAttrs(old: { vim-addon-nix = super.vim-addon-nix.overrideAttrs (old: {
dependencies = with super; [ dependencies = with super; [
vim-addon-completion vim-addon-completion
vim-addon-goto-thing-at-cursor vim-addon-goto-thing-at-cursor
vim-addon-errorformats vim-addon-errorformats
vim-addon-actions vim-addon-actions
vim-addon-mw-utils tlib_vim vim-addon-mw-utils
tlib_vim
]; ];
}); });
vim-addon-sql = super.vim-addon-sql.overrideAttrs(old: { vim-addon-sql = super.vim-addon-sql.overrideAttrs (old: {
dependencies = with super; [ vim-addon-completion vim-addon-background-cmd tlib_vim ]; dependencies = with super; [ vim-addon-completion vim-addon-background-cmd tlib_vim ];
}); });
vim-addon-syntax-checker = super.vim-addon-syntax-checker.overrideAttrs(old: { vim-addon-syntax-checker = super.vim-addon-syntax-checker.overrideAttrs (old: {
dependencies = with super; [ vim-addon-mw-utils tlib_vim ]; dependencies = with super; [ vim-addon-mw-utils tlib_vim ];
}); });
vim-addon-toggle-buffer = super.vim-addon-toggle-buffer.overrideAttrs(old: { vim-addon-toggle-buffer = super.vim-addon-toggle-buffer.overrideAttrs (old: {
dependencies = with super; [ vim-addon-mw-utils tlib_vim ]; dependencies = with super; [ vim-addon-mw-utils tlib_vim ];
}); });
vim-addon-xdebug = super.vim-addon-xdebug.overrideAttrs(old: { vim-addon-xdebug = super.vim-addon-xdebug.overrideAttrs (old: {
dependencies = with super; [ webapi-vim vim-addon-mw-utils vim-addon-signs vim-addon-async ]; dependencies = with super; [ webapi-vim vim-addon-mw-utils vim-addon-signs vim-addon-async ];
}); });
vim-bazel = super.vim-bazel.overrideAttrs(old: { vim-bazel = super.vim-bazel.overrideAttrs (old: {
dependencies = with super; [ vim-maktaba ]; dependencies = with super; [ vim-maktaba ];
}); });
vim-beancount = super.vim-beancount.overrideAttrs(old: { vim-beancount = super.vim-beancount.overrideAttrs (old: {
passthru.python3Dependencies = ps: with ps; [ beancount ]; passthru.python3Dependencies = ps: with ps; [ beancount ];
}); });
vim-closer = super.vim-closer.overrideAttrs(old: { vim-closer = super.vim-closer.overrideAttrs (old: {
patches = [ patches = [
# Fix duplicate tag in doc # Fix duplicate tag in doc
(fetchpatch { (fetchpatch {
@ -423,21 +473,22 @@ self: super: {
]; ];
}); });
vim-codefmt = super.vim-codefmt.overrideAttrs(old: { vim-codefmt = super.vim-codefmt.overrideAttrs (old: {
dependencies = with super; [ vim-maktaba ]; dependencies = with super; [ vim-maktaba ];
}); });
vim-dasht = super.vim-dasht.overrideAttrs(old: { vim-dasht = super.vim-dasht.overrideAttrs (old: {
preFixup = '' preFixup = ''
substituteInPlace $out/share/vim-plugins/vim-dasht/autoload/dasht.vim \ substituteInPlace $out/share/vim-plugins/vim-dasht/autoload/dasht.vim \
--replace "['dasht']" "['${dasht}/bin/dasht']" --replace "['dasht']" "['${dasht}/bin/dasht']"
''; '';
}); });
vim-easytags = super.vim-easytags.overrideAttrs(old: { vim-easytags = super.vim-easytags.overrideAttrs (old: {
dependencies = with super; [ vim-misc ]; dependencies = with super; [ vim-misc ];
patches = [ patches = [
(fetchpatch { # https://github.com/xolox/vim-easytags/pull/170 fix version detection for universal-ctags (fetchpatch {
# https://github.com/xolox/vim-easytags/pull/170 fix version detection for universal-ctags
url = "https://github.com/xolox/vim-easytags/commit/46e4709500ba3b8e6cf3e90aeb95736b19e49be9.patch"; url = "https://github.com/xolox/vim-easytags/commit/46e4709500ba3b8e6cf3e90aeb95736b19e49be9.patch";
sha256 = "0x0xabb56xkgdqrg1mpvhbi3yw4d829n73lsnnyj5yrxjffy4ax4"; sha256 = "0x0xabb56xkgdqrg1mpvhbi3yw4d829n73lsnnyj5yrxjffy4ax4";
}) })
@ -447,36 +498,38 @@ self: super: {
# change the go_bin_path to point to a path in the nix store. See the code in # change the go_bin_path to point to a path in the nix store. See the code in
# fatih/vim-go here # fatih/vim-go here
# https://github.com/fatih/vim-go/blob/155836d47052ea9c9bac81ba3e937f6f22c8e384/autoload/go/path.vim#L154-L159 # https://github.com/fatih/vim-go/blob/155836d47052ea9c9bac81ba3e937f6f22c8e384/autoload/go/path.vim#L154-L159
vim-go = super.vim-go.overrideAttrs(old: let vim-go = super.vim-go.overrideAttrs (old:
binPath = lib.makeBinPath [ let
asmfmt binPath = lib.makeBinPath [
delve asmfmt
errcheck delve
go-motion errcheck
go-tools go-motion
gocode go-tools
gocode-gomod gocode
godef gocode-gomod
gogetdoc godef
golint gogetdoc
golangci-lint golint
gomodifytags golangci-lint
gopls gomodifytags
gotags gopls
gotools gotags
iferr gotools
impl iferr
reftools impl
]; reftools
in { ];
postPatch = '' in
${gnused}/bin/sed \ {
-Ee 's@"go_bin_path", ""@"go_bin_path", "${binPath}"@g' \ postPatch = ''
-i autoload/go/config.vim ${gnused}/bin/sed \
''; -Ee 's@"go_bin_path", ""@"go_bin_path", "${binPath}"@g' \
}); -i autoload/go/config.vim
'';
});
vim-grammarous = super.vim-grammarous.overrideAttrs(old: { vim-grammarous = super.vim-grammarous.overrideAttrs (old: {
# use `:GrammarousCheck` to initialize checking # use `:GrammarousCheck` to initialize checking
# In neovim, you also want to use set # In neovim, you also want to use set
# let g:grammarous#show_first_error = 1 # let g:grammarous#show_first_error = 1
@ -489,7 +542,7 @@ self: super: {
]; ];
}); });
lens-vim = super.lens-vim.overrideAttrs(old: { lens-vim = super.lens-vim.overrideAttrs (old: {
# remove duplicate g:lens#animate in doc/lens.txt # remove duplicate g:lens#animate in doc/lens.txt
# https://github.com/NixOS/nixpkgs/pull/105810#issuecomment-740007985 # https://github.com/NixOS/nixpkgs/pull/105810#issuecomment-740007985
# https://github.com/camspiers/lens.vim/pull/40/files # https://github.com/camspiers/lens.vim/pull/40/files
@ -501,11 +554,11 @@ self: super: {
]; ];
}); });
vim-hier = super.vim-hier.overrideAttrs(old: { vim-hier = super.vim-hier.overrideAttrs (old: {
buildInputs = [ vim ]; buildInputs = [ vim ];
}); });
vim-isort = super.vim-isort.overrideAttrs(old: { vim-isort = super.vim-isort.overrideAttrs (old: {
postPatch = '' postPatch = ''
substituteInPlace ftplugin/python_vimisort.vim \ substituteInPlace ftplugin/python_vimisort.vim \
--replace 'import vim' 'import vim; import sys; sys.path.append("${python.pkgs.isort}/${python.sitePackages}")' --replace 'import vim' 'import vim; import sys; sys.path.append("${python.pkgs.isort}/${python.sitePackages}")'
@ -513,38 +566,39 @@ self: super: {
}); });
vim-markdown-composer = vim-markdown-composer =
let let
vim-markdown-composer-bin = rustPlatform.buildRustPackage rec { vim-markdown-composer-bin = rustPlatform.buildRustPackage rec {
pname = "vim-markdown-composer-bin"; pname = "vim-markdown-composer-bin";
inherit (super.vim-markdown-composer) src version; inherit (super.vim-markdown-composer) src version;
cargoSha256 = "iuhq2Zhdkib8hw4uvXBjwE5ZiN1kzairlzufaGuVkWc="; cargoSha256 = "iuhq2Zhdkib8hw4uvXBjwE5ZiN1kzairlzufaGuVkWc=";
}; };
in super.vim-markdown-composer.overrideAttrs(oldAttrs: rec { in
preFixup = '' super.vim-markdown-composer.overrideAttrs (oldAttrs: rec {
substituteInPlace "$out"/share/vim-plugins/vim-markdown-composer/after/ftplugin/markdown/composer.vim \ preFixup = ''
--replace "let l:args = [s:plugin_root . '/target/release/markdown-composer']" \ substituteInPlace "$out"/share/vim-plugins/vim-markdown-composer/after/ftplugin/markdown/composer.vim \
"let l:args = ['${vim-markdown-composer-bin}/bin/markdown-composer']" --replace "let l:args = [s:plugin_root . '/target/release/markdown-composer']" \
''; "let l:args = ['${vim-markdown-composer-bin}/bin/markdown-composer']"
}); '';
});
vim-metamath = super.vim-metamath.overrideAttrs(old: { vim-metamath = super.vim-metamath.overrideAttrs (old: {
preInstall = "cd vim"; preInstall = "cd vim";
}); });
vim-snipmate = super.vim-snipmate.overrideAttrs(old: { vim-snipmate = super.vim-snipmate.overrideAttrs (old: {
dependencies = with super; [ vim-addon-mw-utils tlib_vim ]; dependencies = with super; [ vim-addon-mw-utils tlib_vim ];
}); });
vim-wakatime = super.vim-wakatime.overrideAttrs(old: { vim-wakatime = super.vim-wakatime.overrideAttrs (old: {
buildInputs = [ python ]; buildInputs = [ python ];
}); });
vim-xdebug = super.vim-xdebug.overrideAttrs(old: { vim-xdebug = super.vim-xdebug.overrideAttrs (old: {
postInstall = false; postInstall = false;
}); });
vim-xkbswitch = super.vim-xkbswitch.overrideAttrs(old: { vim-xkbswitch = super.vim-xkbswitch.overrideAttrs (old: {
patchPhase = '' patchPhase = ''
substituteInPlace plugin/xkbswitch.vim \ substituteInPlace plugin/xkbswitch.vim \
--replace /usr/local/lib/libxkbswitch.so ${xkb-switch}/lib/libxkbswitch.so --replace /usr/local/lib/libxkbswitch.so ${xkb-switch}/lib/libxkbswitch.so
@ -552,14 +606,14 @@ self: super: {
buildInputs = [ xkb-switch ]; buildInputs = [ xkb-switch ];
}); });
vim-yapf = super.vim-yapf.overrideAttrs(old: { vim-yapf = super.vim-yapf.overrideAttrs (old: {
buildPhase = '' buildPhase = ''
substituteInPlace ftplugin/python_yapf.vim \ substituteInPlace ftplugin/python_yapf.vim \
--replace '"yapf"' '"${python3.pkgs.yapf}/bin/yapf"' --replace '"yapf"' '"${python3.pkgs.yapf}/bin/yapf"'
''; '';
}); });
vimproc-vim = super.vimproc-vim.overrideAttrs(old: { vimproc-vim = super.vimproc-vim.overrideAttrs (old: {
buildInputs = [ which ]; buildInputs = [ which ];
buildPhase = '' buildPhase = ''
@ -571,11 +625,11 @@ self: super: {
''; '';
}); });
YankRing-vim = super.YankRing-vim.overrideAttrs(old: { YankRing-vim = super.YankRing-vim.overrideAttrs (old: {
sourceRoot = "."; sourceRoot = ".";
}); });
YouCompleteMe = super.YouCompleteMe.overrideAttrs(old: { YouCompleteMe = super.YouCompleteMe.overrideAttrs (old: {
buildPhase = '' buildPhase = ''
substituteInPlace plugin/youcompleteme.vim \ substituteInPlace plugin/youcompleteme.vim \
--replace "'ycm_path_to_python_interpreter', '''" \ --replace "'ycm_path_to_python_interpreter', '''" \
@ -594,7 +648,7 @@ self: super: {
}; };
}); });
jedi-vim = super.jedi-vim.overrideAttrs(old: { jedi-vim = super.jedi-vim.overrideAttrs (old: {
# checking for python3 support in vim would be neat, too, but nobody else seems to care # checking for python3 support in vim would be neat, too, but nobody else seems to care
buildInputs = [ python3.pkgs.jedi ]; buildInputs = [ python3.pkgs.jedi ];
meta = { meta = {
@ -603,7 +657,7 @@ self: super: {
}; };
}); });
lf-vim = super.lf-vim.overrideAttrs(old: { lf-vim = super.lf-vim.overrideAttrs (old: {
dependencies = with super; [ bclose-vim ]; dependencies = with super; [ bclose-vim ];
}); });
@ -615,7 +669,7 @@ self: super: {
''; '';
}); });
vCoolor-vim = super.vCoolor-vim.overrideAttrs(old: { vCoolor-vim = super.vCoolor-vim.overrideAttrs (old: {
# on linux can use either Zenity or Yad. # on linux can use either Zenity or Yad.
propagatedBuildInputs = [ gnome3.zenity ]; propagatedBuildInputs = [ gnome3.zenity ];
meta = { meta = {
@ -624,12 +678,14 @@ self: super: {
}; };
}); });
unicode-vim = let unicode-vim =
unicode-data = fetchurl { let
url = "http://www.unicode.org/Public/UNIDATA/UnicodeData.txt"; unicode-data = fetchurl {
sha256 = "16b0jzvvzarnlxdvs2izd5ia0ipbd87md143dc6lv6xpdqcs75s9"; url = "http://www.unicode.org/Public/UNIDATA/UnicodeData.txt";
}; sha256 = "16b0jzvvzarnlxdvs2izd5ia0ipbd87md143dc6lv6xpdqcs75s9";
in super.unicode-vim.overrideAttrs(old: { };
in
super.unicode-vim.overrideAttrs (old: {
# redirect to /dev/null else changes terminal color # redirect to /dev/null else changes terminal color
buildPhase = '' buildPhase = ''
@ -637,51 +693,55 @@ self: super: {
echo "Building unicode cache" echo "Building unicode cache"
${vim}/bin/vim --cmd ":set rtp^=$PWD" -c 'ru plugin/unicode.vim' -c 'UnicodeCache' -c ':echohl Normal' -c ':q' > /dev/null ${vim}/bin/vim --cmd ":set rtp^=$PWD" -c 'ru plugin/unicode.vim' -c 'UnicodeCache' -c ':echohl Normal' -c ':q' > /dev/null
''; '';
}); });
vim-hexokinase = super.vim-hexokinase.overrideAttrs(old: { vim-hexokinase = super.vim-hexokinase.overrideAttrs (old: {
preFixup = let preFixup =
hexokinase = buildGoModule { let
name = "hexokinase"; hexokinase = buildGoModule {
src = old.src + "/hexokinase"; name = "hexokinase";
vendorSha256 = "pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="; src = old.src + "/hexokinase";
}; vendorSha256 = "pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=";
in '' };
ln -s ${hexokinase}/bin/hexokinase $target/hexokinase/hexokinase in
''; ''
ln -s ${hexokinase}/bin/hexokinase $target/hexokinase/hexokinase
'';
meta.platforms = lib.platforms.all; meta.platforms = lib.platforms.all;
}); });
vim-clap = super.vim-clap.overrideAttrs(old: { vim-clap = super.vim-clap.overrideAttrs (old: {
preFixup = let preFixup =
maple-bin = rustPlatform.buildRustPackage { let
name = "maple"; maple-bin = rustPlatform.buildRustPackage {
src = old.src; name = "maple";
src = old.src;
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config
]; ];
buildInputs = [ buildInputs = [
openssl openssl
] ++ lib.optionals stdenv.isDarwin [ ] ++ lib.optionals stdenv.isDarwin [
CoreServices CoreServices
curl curl
libgit2 libgit2
libiconv libiconv
]; ];
cargoSha256 = "mq5q+cIWXDMeoZfumX1benulrP/AWKZnd8aI0OzY55c="; cargoSha256 = "mq5q+cIWXDMeoZfumX1benulrP/AWKZnd8aI0OzY55c=";
}; };
in '' in
ln -s ${maple-bin}/bin/maple $target/bin/maple ''
''; ln -s ${maple-bin}/bin/maple $target/bin/maple
'';
meta.platforms = lib.platforms.all; meta.platforms = lib.platforms.all;
}); });
completion-tabnine = super.completion-tabnine.overrideAttrs(old: { completion-tabnine = super.completion-tabnine.overrideAttrs (old: {
buildInputs = [ tabnine ]; buildInputs = [ tabnine ];
postFixup = '' postFixup = ''
@ -690,7 +750,7 @@ self: super: {
''; '';
}); });
telescope-frecency-nvim = super.telescope-frecency-nvim.overrideAttrs(old: { telescope-frecency-nvim = super.telescope-frecency-nvim.overrideAttrs (old: {
dependencies = [ self.sql-nvim ]; dependencies = [ self.sql-nvim ];
}); });