about summary refs log tree commit diff
path: root/pkgs/applications/editors
diff options
context:
space:
mode:
authorRicardo M. Correia <rcorreia@wizy.org>2013-08-29 21:27:48 +0000
committerRicardo M. Correia <rcorreia@wizy.org>2014-02-20 14:08:42 +0100
commit2537b7c679abd5d45d820869f47694521df6451f (patch)
treed34c3d17a01336bbc1327628ac4a29536a8093f7 /pkgs/applications/editors
parentcf00cd5e36920533f213d5087b7658d292dad428 (diff)
downloadnixlib-2537b7c679abd5d45d820869f47694521df6451f.tar
nixlib-2537b7c679abd5d45d820869f47694521df6451f.tar.gz
nixlib-2537b7c679abd5d45d820869f47694521df6451f.tar.bz2
nixlib-2537b7c679abd5d45d820869f47694521df6451f.tar.lz
nixlib-2537b7c679abd5d45d820869f47694521df6451f.tar.xz
nixlib-2537b7c679abd5d45d820869f47694521df6451f.tar.zst
nixlib-2537b7c679abd5d45d820869f47694521df6451f.zip
vim: add config option to generate vimrc
Diffstat (limited to 'pkgs/applications/editors')
-rw-r--r--pkgs/applications/editors/vim/default.nix8
-rw-r--r--pkgs/applications/editors/vim/wrapper.nix30
2 files changed, 35 insertions, 3 deletions
diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix
index 7dd4a0519ce4..673174904129 100644
--- a/pkgs/applications/editors/vim/default.nix
+++ b/pkgs/applications/editors/vim/default.nix
@@ -1,8 +1,10 @@
 { stdenv, fetchhg, ncurses, gettext, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "vim-7.4.131";
- 
+  name = "vim-${version}";
+
+  version = "7.4.131";
+
   src = fetchhg {
     url = "https://vim.googlecode.com/hg/";
     tag = "v7-4-131";
@@ -10,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   enableParallelBuilding = true;
- 
+
   buildInputs = [ ncurses pkgconfig ];
   nativeBuildInputs = [ gettext ];
 
diff --git a/pkgs/applications/editors/vim/wrapper.nix b/pkgs/applications/editors/vim/wrapper.nix
new file mode 100644
index 000000000000..709753ff8eb5
--- /dev/null
+++ b/pkgs/applications/editors/vim/wrapper.nix
@@ -0,0 +1,30 @@
+{ stdenv, makeWrapper, writeText, vim, vimrc }:
+
+let
+
+  vimrcfile = writeText "vimrc" (if vimrc == null then "" else vimrc);
+
+in stdenv.mkDerivation rec {
+  name = "vimwrapper-${vim.version}";
+
+  buildInputs = [ makeWrapper vim vimrcfile ];
+
+  phases = [ "installPhase" ];
+
+  installPhase = ''
+    mkdir -p $out
+    cp -r ${vim}/* $out/
+
+    chmod u+w $out/bin
+    chmod u+w $out/share/vim
+
+    ln -s ${vimrcfile} $out/share/vim/vimrc
+    wrapProgram $out/bin/vim --set VIM "$out/share/vim"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "The most popular clone of the VI editor";
+    homepage    = http://www.vim.org;
+    platforms   = platforms.unix;
+  };
+}