summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorOscar Chevalier <oscar.chevalier@gmail.com>2025-07-21 23:35:44 +1000
committerEfraim Flashner <efraim@flashner.co.il>2025-09-25 12:38:47 +0300
commit2738209b5d3b7ca4a306a90d321e35080f25b8ad (patch)
treeeac7bd7a13b1cb3edb9cd022c2b431832218279c /gnu
parent80f24100f67a3a0f611a5ca889c7583945b7d8b7 (diff)
gnu: neovim: Add support for guix neovim packages.
Enables the use of guix as a package manager for neovim, compatible with the outputs of `vim-build-system`. * gnu/packages/vim.scm (neovim)[arguments]: Added another phase to install the system init file to the correct place. * gnu/packages/aux-files/guix-nvim.vim: New file. * Makefile.am (AUX_FILES): Register file. Change-Id: I375e3e0d051da27d065dff5456cb298a01bc90b1 Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/aux-files/guix-nvim.vim10
-rw-r--r--gnu/packages/vim.scm10
2 files changed, 19 insertions, 1 deletions
diff --git a/gnu/packages/aux-files/guix-nvim.vim b/gnu/packages/aux-files/guix-nvim.vim
new file mode 100644
index 00000000000..6ac92573fd1
--- /dev/null
+++ b/gnu/packages/aux-files/guix-nvim.vim
@@ -0,0 +1,10 @@
1lua << EOF
2 -- This appends all applicable neovim paths to the runtimepath.
3 for _, directory in pairs({"/run/current-system/profile", "~/.guix-profile", "~/.guix-home/profile", vim.env.GUIX_PROFILE, vim.env.GUIX_ENVIRONMENT}) do
4 local rtp = vim.fs.abspath(directory .. "/share/nvim/site")
5 local stat = vim.uv.fs_stat(rtp)
6 if stat and stat.type == "directory" then
7 vim.opt.rtp:append(rtp)
8 end
9 end
10EOF
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 36357598ef8..02182dad488 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -862,7 +862,15 @@ is based on Vim's builtin plugin support.")
862 ;; doubles its size. We remove the reference here. 862 ;; doubles its size. We remove the reference here.
863 (substitute* "cmake.config/versiondef.h.in" 863 (substitute* "cmake.config/versiondef.h.in"
864 (("\\$\\{CMAKE_C_COMPILER\\}") "/gnu/store/.../bin/gcc")) 864 (("\\$\\{CMAKE_C_COMPILER\\}") "/gnu/store/.../bin/gcc"))
865 #t))))) 865 #t))
866 (add-after 'install 'install-guix-nvim.vim
867 (lambda* (#:key outputs #:allow-other-keys)
868 (let ((nvimdir (string-append (assoc-ref outputs "out")
869 "/share/nvim")))
870 (mkdir-p nvimdir)
871 (copy-file
872 #$(local-file (search-auxiliary-file "guix-nvim.vim"))
873 (string-append nvimdir "/sysinit.vim"))))))))
866 (inputs (list libuv-for-luv 874 (inputs (list libuv-for-luv
867 msgpack 875 msgpack
868 libtermkey 876 libtermkey