mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-01 15:11:25 +00:00
* Turn vim/default.nix into a regular package. We don't need two
configurable VIMs. svn path=/nixpkgs/trunk/; revision=22784
This commit is contained in:
parent
6609710409
commit
d81ed8201f
@ -1,86 +1,17 @@
|
||||
args:
|
||||
let
|
||||
defList = [];
|
||||
#stdenv and fetchurl are added automatically
|
||||
getVal = (args.lib.getValue args defList);
|
||||
check = args.lib.checkFlag args;
|
||||
reqsList = [
|
||||
["gtkGUI" "glib" "gtk" "pkgconfig" "libXpm" "libXext" "x11Support"]
|
||||
["athenaGUI" "libXau" "libXt" "libXaw" "libXpm" "libXext" "x11Support"]
|
||||
["x11Support" "libX11"]
|
||||
["hugeFeatures"]
|
||||
["pythonSupport" "python"]
|
||||
["perlSupport" "perl"]
|
||||
["tclSupport" "tcl"]
|
||||
["eclSupport" "ecl" "gmp" "mpfr"]
|
||||
["luaSupport" "lua"]
|
||||
{ stdenv, fetchurl, ncurses }:
|
||||
|
||||
# Currently causes problems
|
||||
["mzSchemeSupport" "pltScheme"]
|
||||
|
||||
["perlSupport" "perl"]
|
||||
["rubySupport" "ruby"]
|
||||
["hangulSupport"]
|
||||
["sniffSupport"]
|
||||
["gettextSupport" "gettext"]
|
||||
["true" "ncurses"]
|
||||
["false" "libSM"]
|
||||
];
|
||||
nameSuffixes = [
|
||||
"hugeFeatures" "-huge"
|
||||
"x11Support" "-X11"
|
||||
"pythonSupport" "-python"
|
||||
"perlSupport" "-perl"
|
||||
"tclSupport" "-tcl"
|
||||
"ximSupport" "-xim"
|
||||
"eclSupport" "-ecl"
|
||||
"luaSupport" "-lua"
|
||||
"perlSupport" "-perl"
|
||||
"rubySupport" "-ruby"
|
||||
"mzSchemeSupport" "-mzscheme"
|
||||
];
|
||||
configFlags = [
|
||||
"true" " --enable-multibyte "
|
||||
"x11Support" " --enable-gui=auto "
|
||||
"hugeFeatures" "--with-features=huge --enable-cscope --enable-xsmp "
|
||||
"pythonSupport" " --enable-pythoninterp "
|
||||
"perlSupport" " --enable-perlinterp "
|
||||
"tclSupport" " --enable-tclinterp "
|
||||
"ximSupport" " --enable-xim "
|
||||
"eclSupport" " --enable-eclinterp "
|
||||
"hangulSupport" " --enable-hangulinput "
|
||||
"perlSupport" " --enable-perlinterp "
|
||||
"luaSupport" " --enable-luainterp --with-lua-prefix=${args.lua} "
|
||||
"rubySupport" " --enable-rubyinterp "
|
||||
"sniffSupport" " --enable-sniff "
|
||||
"mzSchemeSupport" " --enable-mzschemeinterp "
|
||||
"gettextSupport" " --enable-nls "
|
||||
];
|
||||
buildInputsNames = args.lib.filter (x: (null!=getVal x))
|
||||
(args.lib.uniqList {inputList =
|
||||
(args.lib.concatLists (map
|
||||
(x:(if (x==[]) then [] else builtins.tail x))
|
||||
reqsList));});
|
||||
in
|
||||
assert args.lib.checkReqs args defList reqsList;
|
||||
args.stdenv.mkDerivation {
|
||||
name = args.lib.condConcat "vim-7.2" nameSuffixes check;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vim-7.2";
|
||||
|
||||
src = args.lib.attrByPath ["src"] (args.fetchurl {
|
||||
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2;
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.vim.org/pub/vim/unix/${name}.tar.bz2";
|
||||
sha256 = "11hxkb6r2550c4n13nwr0d8afvh30qjyr5c2hw16zgay43rb0kci";
|
||||
}) args;
|
||||
};
|
||||
|
||||
inherit (args) ncurses;
|
||||
|
||||
buildInputs = args.lib.filter (x: (x!=null)) (map getVal buildInputsNames);
|
||||
buildInputs = [ ncurses ];
|
||||
|
||||
postInstall = "ln -s $out/bin/vim $out/bin/vi";
|
||||
preBuild="touch src/auto/link.sed";
|
||||
configureFlags = args.lib.condConcat "" configFlags check;
|
||||
|
||||
NIX_LDFLAGS = "-lpthread -lutil";
|
||||
|
||||
|
||||
meta = {
|
||||
description = "The most popular clone of the VI editor";
|
||||
homepage = http://www.vim.org;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ncurses ? null, ... }:
|
||||
{ stdenv, fetchurl, ncurses ? null }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "util-linux-ng-2.17.2";
|
||||
|
@ -2016,6 +2016,7 @@ let
|
||||
|
||||
bashReal = makeOverridable (import ../shells/bash) {
|
||||
inherit fetchurl stdenv bison;
|
||||
texinfo = null;
|
||||
};
|
||||
|
||||
bashInteractive = appendToName "interactive" (bashReal.override {
|
||||
@ -7080,6 +7081,7 @@ let
|
||||
|
||||
utillinuxng = makeOverridable (import ../os-specific/linux/util-linux-ng) {
|
||||
inherit fetchurl stdenv;
|
||||
ncurses = null;
|
||||
};
|
||||
|
||||
utillinuxngCurses = utillinuxng.override {
|
||||
@ -8988,20 +8990,10 @@ let
|
||||
};
|
||||
|
||||
vim = makeOverridable (import ../applications/editors/vim) {
|
||||
inherit fetchurl stdenv ncurses lib;
|
||||
inherit fetchurl stdenv ncurses;
|
||||
};
|
||||
|
||||
vimHugeX = vim.override {
|
||||
inherit pkgconfig
|
||||
perl python tcl;
|
||||
inherit (xlibs) libX11 libXext libSM libXpm
|
||||
libXt libXaw libXau;
|
||||
inherit (gtkLibs) glib gtk;
|
||||
|
||||
# Looks like python and perl can conflict
|
||||
flags = ["hugeFeatures" "gtkGUI" "x11Support"
|
||||
/*"perlSupport"*/ "pythonSupport" "tclSupport"];
|
||||
};
|
||||
vimHugeX = vim_configurable;
|
||||
|
||||
vim_configurable = import ../applications/editors/vim/configurable.nix {
|
||||
inherit fetchurl stdenv ncurses pkgconfig composableDerivation lib;
|
||||
|
Loading…
Reference in New Issue
Block a user