Merge branch 'master' into x-updates

This commit is contained in:
Michael Raskin 2013-06-11 15:46:10 +04:00
commit 1a45886454
29 changed files with 1620 additions and 130 deletions

View File

@ -1,14 +1,38 @@
# TODO tidy up eg The patchelf code is patching gvim even if you don't build it..
# but I have gvim with python support now :) - Marc
args: with args;
args@{source ? "latest", ...}: with args;
let inherit (args.composableDerivation) composableDerivation edf; in
composableDerivation {} {
composableDerivation {} (fix: {
name = "vim_configurable-7.3";
src = args.fetchurl {
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2;
sha256 = "079201qk8g9yisrrb0dn52ch96z3lzw6z473dydw9fzi0xp5spaw";
enableParallelBuilding = true; # test this
src =
builtins.getAttr source {
"default" =
# latest release
args.fetchurl {
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2;
sha256 = "079201qk8g9yisrrb0dn52ch96z3lzw6z473dydw9fzi0xp5spaw";
};
"vim-nox" =
{
# vim nox branch: client-server without X by uing sockets
# REGION AUTO UPDATE: { name="vim-nox"; type="hg"; url="https://code.google.com/r/yukihironakadaira-vim-cmdsrv-nox/"; branch="cmdsrv-nox"; }
src = (fetchurl { url = "http://mawercer.de/~nix/repos/vim-nox-hg-2082fc3.tar.bz2"; sha256 = "293164ca1df752b7f975fd3b44766f5a1db752de6c7385753f083499651bd13a"; });
name = "vim-nox-hg-2082fc3";
# END
}.src;
"latest" = {
# vim latest usually is vim + bug fixes. So it should be very stable
# REGION AUTO UPDATE: { name="vim"; type="hg"; url="https://vim.googlecode.com/hg"; }
src = (fetchurl { url = "http://mawercer.de/~nix/repos/vim-hg-7f98896.tar.bz2"; sha256 = "efcb8cc5924b530631a8e5fc2a0622045c2892210d32d300add24aded51866f1"; });
name = "vim-hg-7f98896";
# END
}.src;
};
configureFlags = ["--enable-gui=auto" "--with-features=${args.features}"];
@ -54,6 +78,7 @@ composableDerivation {} {
cscopeSupport = config.vim.cscope or false;
# add .nix filetype detection and minimal syntax highlighting support
ftNixSupport = config.vim.ftNix or true;
netbeansSupport = config.netbeans or true; # eg envim is using it
};
#--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/photon/carbon
@ -85,4 +110,5 @@ composableDerivation {} {
homepage = "www.vim.org";
};
}
})

View File

@ -135,7 +135,6 @@ rec {
[ "--enable-application=browser"
"--with-libxul-sdk=${xulrunner}/lib/xulrunner-devel-${xulrunner.version}"
"--enable-chrome-format=jar"
"--disable-elf-hack"
]
++ commonConfigureFlags
++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";

View File

@ -41,7 +41,7 @@ rec {
"--with-system-nspr"
"--with-system-nss"
# "--with-system-png" # <-- "--with-system-png won't work because the system's libpng doesn't have APNG support"
# "--enable-system-cairo" # <-- doesn't build
"--enable-system-cairo"
"--enable-system-sqlite"
"--disable-crashreporter"
"--disable-tests"
@ -72,6 +72,10 @@ rec {
enableParallelBuilding = true;
patches = [
./system-cairo.patch # accepted upstream, probably in 22
];
preConfigure =
''
export NIX_LDFLAGS="$NIX_LDFLAGS -L$out/lib/xulrunner-${xulVersion}"
@ -129,13 +133,16 @@ rec {
xlibs.pixman yasm mesa sqlite file unzip pysqlite
];
patches = [
./disable-reporter.patch # fixes "search box not working when built on xulrunner"
];
propagatedBuildInputs = [xulrunner];
configureFlags =
[ "--enable-application=browser"
"--with-libxul-sdk=${xulrunner}/lib/xulrunner-devel-${xulrunner.version}"
"--enable-chrome-format=jar"
"--disable-elf-hack"
]
++ commonConfigureFlags
++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";

View File

@ -0,0 +1,20 @@
# from:
# - https://www.linuxquestions.org/questions/linux-from-scratch-13/blfs-xulrunner-firefox-21-0-and-search-4175462532/
# - http://www.mail-archive.com/blfs-support@linuxfromscratch.org/msg17359.html
--- mozilla-release/browser/base/content/browser.js.orig 2013-05-11 16:19:21.000000000 -0300
+++ mozilla-release/browser/base/content/browser.js 2013-06-07 00:39:16.114862388 -0300
@@ -3559,10 +3559,12 @@
*/
recordSearchInHealthReport: function (engine, source) {
#ifdef MOZ_SERVICES_HEALTHREPORT
- let reporter = Cc["@mozilla.org/datareporting/service;1"]
+ /*let reporter = Cc["@mozilla.org/datareporting/service;1"]
.getService()
.wrappedJSObject
.healthReporter;
+ */
+ return;
// This can happen if the FHR component of the data reporting service is
// disabled. This is controlled by a pref that most will never use.

View File

@ -0,0 +1,73 @@
# HG changeset patch
# From: https://hg.mozilla.org/mozilla-central/rev/52b02042b27f
# User Connor Behan <connor.behan@gmail.com>
# Date 1370038985 -7200
# Node ID 52b02042b27f75acbcb2bd4822bedb00ab680e67
# Parent 08ed531fed70978385cf9253bbc8389b0abe76ca
Bug 722975: Unbreak builds using --with-system-cairo. r=bas
diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp
--- a/gfx/thebes/gfxPlatform.cpp
+++ b/gfx/thebes/gfxPlatform.cpp
@@ -548,23 +548,31 @@ struct SourceSurfaceUserData
BackendType mBackendType;
};
void SourceBufferDestroy(void *srcSurfUD)
{
delete static_cast<SourceSurfaceUserData*>(srcSurfUD);
}
+#if MOZ_TREE_CAIRO
void SourceSnapshotDetached(cairo_surface_t *nullSurf)
{
gfxImageSurface* origSurf =
static_cast<gfxImageSurface*>(cairo_surface_get_user_data(nullSurf, &kSourceSurface));
origSurf->SetData(&kSourceSurface, NULL, NULL);
}
+#else
+void SourceSnapshotDetached(void *nullSurf)
+{
+ gfxImageSurface* origSurf = static_cast<gfxImageSurface*>(nullSurf);
+ origSurf->SetData(&kSourceSurface, NULL, NULL);
+}
+#endif
RefPtr<SourceSurface>
gfxPlatform::GetSourceSurfaceForSurface(DrawTarget *aTarget, gfxASurface *aSurface)
{
void *userData = aSurface->GetData(&kSourceSurface);
if (userData) {
SourceSurfaceUserData *surf = static_cast<SourceSurfaceUserData*>(userData);
@@ -667,24 +675,28 @@ gfxPlatform::GetSourceSurfaceForSurface(
}
srcBuffer = Factory::CreateWrappingDataSourceSurface(imgSurface->Data(),
imgSurface->Stride(),
size, format);
}
+#if MOZ_TREE_CAIRO
cairo_surface_t *nullSurf =
cairo_null_surface_create(CAIRO_CONTENT_COLOR_ALPHA);
cairo_surface_set_user_data(nullSurf,
&kSourceSurface,
imgSurface,
NULL);
cairo_surface_attach_snapshot(imgSurface->CairoSurface(), nullSurf, SourceSnapshotDetached);
cairo_surface_destroy(nullSurf);
+#else
+ cairo_surface_set_mime_data(imgSurface->CairoSurface(), "mozilla/magic", (const unsigned char*) "data", 4, SourceSnapshotDetached, imgSurface.get());
+#endif
}
SourceSurfaceUserData *srcSurfUD = new SourceSurfaceUserData;
srcSurfUD->mBackendType = aTarget->GetType();
srcSurfUD->mSrcSurface = srcBuffer;
aSurface->SetData(&kSourceSurface, srcSurfUD, SourceBufferDestroy);
return srcBuffer;

View File

@ -1,21 +1,21 @@
{ stdenv, fetchgit, gfortran, perl, m4, llvm, gmp, pcre, zlib
, readline, fftwSinglePrec, fftw, libunwind, suitesparse, glpk, fetchurl
, ncurses, libunistring, lighttpd, patchelf, openblas, liblapack
, tcl, tk, xproto, libX11, git
, tcl, tk, xproto, libX11, git, mpfr
} :
let
realGcc = stdenv.gcc.gcc;
in
stdenv.mkDerivation rec {
pname = "julia";
date = "20130205";
date = "20130611";
name = "${pname}-git-${date}";
grisu_ver = "1.1.1";
dsfmt_ver = "2.2";
openblas_ver = "v0.2.2";
lapack_ver = "3.4.1";
arpack_ver = "3.1.2";
arpack_ver = "3.1.3";
clp_ver = "1.14.5";
lighttpd_ver = "1.4.29";
patchelf_ver = "0.6";
@ -36,9 +36,9 @@ stdenv.mkDerivation rec {
sha256 = "19ffec70f9678f5c159feadc036ca47720681b782910fbaa95aa3867e7e86d8e";
};
arpack_src = fetchurl {
url = "http://forge.scilab.org/index.php/p/arpack-ng/downloads/497/get/";
name = "arpack-ng_${arpack_ver}.tar.gz";
sha256 = "1wk06bdjgap4hshx0lswzi7vxy2lrdx353y1k7yvm97mpsjvsf4k";
url = "http://forge.scilab.org/index.php/p/arpack-ng/downloads/607/get/";
name = "arpack-ng-${arpack_ver}.tar.gz";
sha256 = "039w7j3dr1xy35a3hp92zg2g92gmjq6xsv0g4awlb4cffy09nr2d";
};
lapack_src = fetchurl {
url = "http://www.netlib.org/lapack/lapack-${lapack_ver}.tgz";
@ -65,17 +65,17 @@ stdenv.mkDerivation rec {
src = fetchgit {
url = "git://github.com/JuliaLang/julia.git";
rev = "efc696bf74eec7605b4da19f6f1605ba99959ed3";
sha256 = "19if7aj3mrp84dg9g2d3zbhasrq0nz28djl9a01m0y4y9bfymp7s";
rev = "60cc4e44bf415dcda90f2bbe22300f842fe44098";
sha256 = "018s0zyvdkxjldbvcdv40q3v2gcjznyyql5pv3zhhy1iq11jddfz";
};
buildInputs = [ gfortran perl m4 gmp pcre llvm readline zlib
fftw fftwSinglePrec libunwind suitesparse glpk ncurses libunistring patchelf
openblas liblapack tcl tk xproto libX11 git
openblas liblapack tcl tk xproto libX11 git mpfr
];
configurePhase = ''
for i in GMP LLVM PCRE LAPACK OPENBLAS BLAS READLINE FFTW LIBUNWIND SUITESPARSE GLPK LIGHTTPD ZLIB;
for i in GMP LLVM PCRE LAPACK OPENBLAS BLAS READLINE FFTW LIBUNWIND SUITESPARSE GLPK LIGHTTPD ZLIB MPFR;
do
makeFlags="$makeFlags USE_SYSTEM_$i=1 "
done
@ -90,7 +90,7 @@ stdenv.mkDerivation rec {
copy_kill_hash "${dsfmt_src}" deps/random
${if realGcc ==null then "" else
''export NIX_LDFLAGS="$NIX_LDFLAGS -L${realGcc}/lib -L${realGcc}/lib64 -lpcre -llapack -lm -lfftw3f -lfftw3 -lglpk -lunistring -lz "''}
''export NIX_LDFLAGS="$NIX_LDFLAGS -L${realGcc}/lib -L${realGcc}/lib64 -lpcre -llapack -lm -lfftw3f -lfftw3 -lglpk -lunistring -lz -lgmp -lmpfr"''}
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fPIC "
export LDFLAGS="-L${suitesparse}/lib -L$out/lib/julia -Wl,-rpath,$out/lib/julia"
@ -110,6 +110,21 @@ stdenv.mkDerivation rec {
preBuild = ''
mkdir -p usr/lib
echo "$out"
mkdir -p "$out/lib"
(
cd "$(mktemp -d)"
for i in "${suitesparse}"/lib/lib*.a; do
ar -x $i
done
gcc *.o --shared -o "$out/lib/libsuitesparse.so"
)
cp "$out/lib/libsuitesparse.so" usr/lib
for i in umfpack cholmod amd camd colamd spqr; do
ln -s libsuitesparse.so "$out"/lib/lib$i.so;
ln -s libsuitesparse.so "usr"/lib/lib$i.so;
done
'';
preInstall = ''

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "ftp://ftp.ruby-lang.org/pub/ruby/1.8/${name}.tar.gz";
sha256 = "0b4n9d1idmsl47cq3mw6zhi94yp048ljlfgg9qdblbkvnd7arp1g";
sha256 = "0g2dsn8lmiqwqsp13ryzi97qxr7742v5l7v506x6wq9aiwpk42p6";
};
# Have `configure' avoid `/usr/bin/nroff' in non-chroot builds.
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
passthru = rec {
majorVersion = "1.8";
minorVersion = "7";
patchLevel = "357";
patchLevel = "371";
libPath = "lib/ruby/${majorVersion}";
gemPath = "lib/ruby/gems/${majorVersion}";
};

View File

@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "ftp://ftp.ruby-lang.org/pub/ruby/1.9/${name}.tar.bz2";
sha256 = "1ymq5lhp3fz0j3cs65521aihcnivbfrn76in900ccxd0msgfmld9";
sha256 = "0w1avj8qfskvkgvrjxxc1cxjm14bf1v60ipvcl5q3zpn9k14k2cx";
};
# Have `configure' avoid `/usr/bin/nroff' in non-chroot builds.
@ -33,7 +33,8 @@ stdenv.mkDerivation rec {
++ (op yamlSupport libyaml);
enableParallelBuilding = true;
patches = [ ./ruby19-parallel-install.patch ];
configureFlags = ["--enable-shared" "--enable-pthread"];
installFlags = stdenv.lib.optionalString docSupport "install-doc";
@ -50,7 +51,7 @@ stdenv.mkDerivation rec {
passthru = rec {
majorVersion = "1.9";
minorVersion = "3";
patchLevel = "194";
patchLevel = "429";
libPath = "lib/ruby/${majorVersion}";
gemPath = "lib/ruby/gems/${majorVersion}";
};

View File

@ -0,0 +1,15 @@
Index: ruby-1.9.3-p392/lib/mkmf.rb
===================================================================
--- ruby-1.9.3-p392.orig/lib/mkmf.rb
+++ ruby-1.9.3-p392/lib/mkmf.rb
@@ -2039,8 +2039,8 @@ static: $(STATIC_LIB)#{$extout ? " insta
end
for f in files
dest = "#{dir}/#{File.basename(f)}"
- mfile.print("install-rb#{sfx}: #{dest} #{dir}\n")
- mfile.print("#{dest}: #{f}\n")
+ mfile.print("install-rb#{sfx}: #{dest}\n")
+ mfile.print("#{dest}: #{f} #{timestamp_file(dir)}\n")
mfile.print("\t$(Q) $(#{$extout ? 'COPY' : 'INSTALL_DATA'}) #{f} $(@D#{sep})\n")
if defined?($installed_list) and !$extout
mfile.print("\t@echo #{dest}>>$(INSTALLED_LIST)\n")

View File

@ -2,10 +2,9 @@
cabal.mkDerivation (self: {
pname = "accelerate";
version = "0.13.0.2";
sha256 = "1xcgcr3wrvvckjhxbr80567gmg6rx9ks7rl4jcr6c6mdv6svx4jb";
version = "0.13.0.4";
sha256 = "1rhbvzgafw3cx2wi4zfil4nxcziqpbh20q3nafck30q2xvrwkmwm";
buildDepends = [ fclabels hashable hashtables ];
noHaddock = true;
meta = {
homepage = "https://github.com/AccelerateHS/accelerate/";
description = "An embedded language for accelerated array processing";

View File

@ -2,12 +2,12 @@
cabal.mkDerivation (self: {
pname = "contravariant";
version = "0.4";
sha256 = "1nqslc9vcx6v6c33fn7mvb1xhr33yl3ja92p788zx8z1drx9cqc3";
version = "0.4.1";
sha256 = "0alzl47lqzw9fqjqxdfy40f1aynd8mc00b2h7fj2ch0zq82hm85q";
buildDepends = [ tagged transformers transformersCompat ];
meta = {
homepage = "http://github.com/ekmett/contravariant/";
description = "Haskell 98 contravariant functors";
description = "Contravariant functors";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
};

View File

@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "entropy";
version = "0.2.2";
sha256 = "1zri5qs19cbz9ydbh076q6834pspf2gqn06ssz4hsq6j65cnd9x2";
version = "0.2.2.1";
sha256 = "1yl1gmkmbalm27pjlpm9nhsbxpvxl8w7p8psq5apyrbdqnv9yhbg";
meta = {
homepage = "https://github.com/TomMD/entropy";
description = "A platform independent entropy source";

View File

@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "ghc-vis";
version = "0.7.0.1";
sha256 = "0k6pm1lqmcmgdqzcdbygdyg6bgx4k0gi77k1mxwprgr9vv3ly26w";
version = "0.7.1";
sha256 = "05j3yw1276wvy4va7r7pbnvhjg1k1mxzp4baxcb9jlb5dxfh0daa";
buildDepends = [
cairo deepseq fgl ghcHeapView graphviz gtk mtl svgcairo text
transformers xdot

View File

@ -2,11 +2,10 @@
cabal.mkDerivation (self: {
pname = "hsdns";
version = "1.6";
sha256 = "1vf3crkhs7z572bqdf7p2hfcqkjxvnyg0w0cf8b7kyfxzn8bj3fa";
version = "1.6.1";
sha256 = "0s63acjy1n75k7gjm4kam7v5d4a5kn0aw178mygkqwr5frflghb4";
buildDepends = [ network ];
extraLibraries = [ adns ];
noHaddock = true;
meta = {
homepage = "http://github.com/peti/hsdns";
description = "Asynchronous DNS Resolver";

View File

@ -0,0 +1,15 @@
{ cabal, c2hs, parsec, random }:
cabal.mkDerivation (self: {
pname = "hsshellscript";
version = "3.3.1";
sha256 = "0z3afp3r1j1in03fv2yb5sfbzgcrhdig6gay683bzgh85glwxhlp";
buildDepends = [ parsec random ];
buildTools = [ c2hs ];
meta = {
homepage = "http://www.volker-wysk.de/hsshellscript/";
description = "Haskell for Unix shell scripting tasks";
license = "LGPL";
platforms = self.ghc.meta.platforms;
};
})

View File

@ -0,0 +1,51 @@
{stdenv, fetchurl, gmp}:
stdenv.mkDerivation (rec {
name = "mpfr-3.1.2";
src = fetchurl {
url = "mirror://gnu/mpfr/${name}.tar.bz2";
sha256 = "0sqvpfkzamxdr87anzakf9dhkfh15lfmm5bsqajk02h1mxh3zivr";
};
buildInputs = [ gmp ];
doCheck = true;
enableParallelBuilding = true;
meta = {
homepage = http://www.mpfr.org/;
description = "GNU MPFR, a library for multiple-precision floating-point arithmetic";
longDescription = ''
The GNU MPFR library is a C library for multiple-precision
floating-point computations with correct rounding. MPFR is
based on the GMP multiple-precision library.
The main goal of MPFR is to provide a library for
multiple-precision floating-point computation which is both
efficient and has a well-defined semantics. It copies the good
ideas from the ANSI/IEEE-754 standard for double-precision
floating-point arithmetic (53-bit mantissa).
'';
license = "LGPLv2+";
maintainers = [ stdenv.lib.maintainers.ludo ];
platforms = stdenv.lib.platforms.all;
};
}
//
(stdenv.lib.optionalAttrs stdenv.isFreeBSD {
/* Work around a FreeBSD bug that otherwise leads to segfaults in
the test suite:
http://hydra.bordeaux.inria.fr/build/34862
http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00015.html
http://www.freebsd.org/cgi/query-pr.cgi?pr=161344
*/
configureFlags = [ "--disable-thread-safe" ];
}))

View File

@ -1,10 +1,10 @@
{ stdenv, fetchurl, blas, liblapack, gfortran } :
stdenv.mkDerivation rec {
version = "4.0.0";
version = "4.2.0";
name = "suitesparse-${version}";
src = fetchurl {
url = "http://www.cise.ufl.edu/research/sparse/SuiteSparse/SuiteSparse-${version}.tar.gz" ;
sha256 = "1nvbdw10wa6654k8sa2vhr607q6fflcywyji5xd767cqpwag4v5j";
sha256 = "0i0ivsc5sr3jdz6nqq4wz5lwxc8rpnkqgddyhqqgfhwzgrcqh9v6";
};
buildInputs = [blas liblapack gfortran] ;
patches = [./disable-metis.patch];

View File

@ -1,11 +1,11 @@
# DO NOT EDIT THIS FILE!
#
# Nix expressions autogenerated with:
# bin/pypi2nix -n plone43Packages -d Plone -d mailinglogger -d zc.recipe.egg -d plone.recipe.zope2instance -d Pillow -i setuptools -i zc_buildout -i pillow -e plone/4.1.6.json -p plone/4.1.6.txt -o plone/4.1.6.nix
# bin/pypi2nix -n plone41Packages -d Plone -d mailinglogger -d zc.recipe.egg -d plone.recipe.zope2instance -d Pillow -i setuptools -i zc_buildout -i pillow -e plone/4.1.6.json -p plone/4.1.6.txt -o plone/4.1.6.nix
{ pkgs, pythonPackages }:
let plone43Packages = pythonPackages.python.modules // rec {
let plone41Packages = pythonPackages.python.modules // rec {
inherit (pythonPackages) buildPythonPackage setuptools zc_buildout pillow;
inherit (pkgs) fetchurl stdenv;
@ -3092,10 +3092,10 @@ let plone43Packages = pythonPackages.python.modules // rec {
};
plone_recipe_zope2instance = buildPythonPackage rec {
name = "plone.recipe.zope2instance-4.1.9";
name = "plone.recipe.zope2instance-4.1.10";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/plone.recipe.zope2instance/plone.recipe.zope2instance-4.1.9.zip";
md5 = "ad90efc7948107ab63efac46ab589569";
url = "http://pypi.python.org/packages/source/p/plone.recipe.zope2instance/plone.recipe.zope2instance-4.1.10.zip";
md5 = "787fad7fa44757de74a50a91e9bcfcb5";
};
buildInputs = [ pkgs.unzip ];
propagatedBuildInputs = [ zc_buildout zc_recipe_egg mailinglogger setuptools zope2 ];
@ -5138,4 +5138,4 @@ let plone43Packages = pythonPackages.python.modules // rec {
};
};
}; in plone43Packages
}; in plone41Packages

View File

@ -0,0 +1,129 @@
{fetchurl, stdenv, python, cmake, vim}:
/*
About Vim and plugins
=====================
Let me tell you how Vim plugins work, so that you can decide on how to orginize
your setup.
typical plugin files:
plugin/P1.vim
autoload/P1.vim
ftplugin/xyz.vim
doc/plugin-documentation.txt
README(.md) (nowadays thanks to github)
Traditionally plugins were installed into ~/.vim/* so it was your task to keep track
of which files belong to what plugin. Now this problem is "fixed" by nix which
assembles your profile for you.
Vim offers the :h rtp setting which works for most plugins. Thus adding adding
this to your .vimrc should make most plugins work:
set rtp+=~/.nix-profile/vim-plugins/YouCompleteMe
" or for p in ["YouCompleteMe"] | exec 'set rtp+=~/.nix-profile/vim-plugins/'.p | endfor
Its what
pathogen, vundle, vim-addon-manager (VAM) use.
VAM's benefits:
- works around after/* directories if they are used in non ~/.vim locations
- allows activating plugins at runtime, eg when you need them. (works around
some au command hooks, eg required for TheNerdTree plugin)
- VAM checkous out all sources (vim.sf.net, git, mercurial, ...)
- runs :helptags on update/installation only. Obviously it cannot do that on
store paths.
VAM is made up of
- the code loading plugins
- an optional pool (github.com/MarcWeber/vim-addon-manager-known-repositories)
That pool probably is the best source to automatically derive plugin
information from or to lookup about how to get data from www.vim.org.
I'm not sure we should package them all. Most of them are not used much.
You need your .vimrc anyway, and then VAM gets the job done ?
How to install VAM? eg provide such a bash function:
vim-install-vam () {
mkdir -p ~/.vim/vim-addons && git clone --depth=1 git://github.com/MarcWeber/vim-addon-manager.git ~/.vim/vim-addons/vim-addon-manager && cat >> ~/.vimrc <<EOF
set nocompatible
set hidden
filetype indent plugin on | syn on
fun ActivateAddons()
let g:vim_addon_manager = {}
let g:vim_addon_manager.log_to_buf =1
set runtimepath+=~/.vim/vim-addons/vim-addon-manager
call vam#ActivateAddons([])
endf
call ActivateAddons()
EOF
}
IMHO having no plugins listed might be better than having outdated ones.
So which plugins to add here according to what Marc Weber thinks is best?
complicated plugins requiring dependencies, such as YouCompleteMe.
Then its best to symlink ~/.nix-profile/vim-plugins/YouCompleteMe to
~/.vim/{vim-addons,bundle} or whatever plugin management solution you use.
If you feel differently change the comments and proceed.
*/
let vimHelptags = path: ''
${vim}/bin/vim -N -u NONE -i NONE -n -e -s -c "helptags ${path}" +quit!
'';
in
{
#TODO :helptags should be run
vimAddonNix = {
# github.com/MarcWeber/vim-addon-nix provides some additional support for
# editing .nix files
# This is a placeholder, because I think you always should be using latest git version
};
YouCompleteMe = stdenv.mkDerivation {
# REGION AUTO UPDATE: { name="youcompleteme"; type="git"; url="git://github.com/Valloric/YouCompleteMe"; }
src = (fetchurl { url = "http://mawercer.de/~nix/repos/youcompleteme-git-97306.tar.bz2"; sha256 = "b9b892f5a723370c2034491dc72a4ca722c6cf1e5de4d60501141bba151bc719"; });
name = "youcompleteme-git-97306";
# END
buildInputs = [ python cmake ];
configurePhase = ":";
buildPhase = ''
set -x
target=$out/vim-plugins/YouCompleteMe
mkdir -p $target
cp -a ./ $target
mkdir $target/build
cd $target/build
cmake -G "Unix Makefiles" . $target/cpp -DPYTHON_LIBRARIES:PATH=${python}/lib/libpython2.7.so -DPYTHON_INCLUDE_DIR:PATH=${python}/include/python2.7
make -j -j''${NIX_BUILD_CORES} -l''${NIX_BUILD_CORES}}
${vimHelptags "$out/vim-plugins/YouCompleteMe/doc"}
'';
# TODO: implement proper install phase rather than keeping everything in store
# TODO: support llvm based C completion, See README of git repository
installPhase = ":";
meta = {
description = "fastest non utf-8 aware word and C completion engine for Vim";
homepage = http://github.com/Valloric/YouCompleteMe;
license = stdenv.lib.licenses.gpl3;
maintainers = [stdenv.lib.maintainers.marcweber];
platforms = stdenv.lib.platforms.linux;
};
};
}

View File

@ -253,7 +253,7 @@ in
import ./generic.nix (
rec {
version = "3.9.4";
version = "3.9.5";
testing = false;
preConfigure = ''
@ -262,7 +262,7 @@ import ./generic.nix (
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.x/${if testing then "testing/" else ""}linux-${version}.tar.xz";
sha256 = "121n82731il7c329psa21xzg8yci7j4w3f2px6v2gh3z82ijkc4i";
sha256 = "05y3wrvady60p8ksjwwa5c2jia2ax9q0p7lhr62yafywh5piyfbw";
};
config = configWithPlatform stdenv.platform;

View File

@ -17,9 +17,21 @@ stdenv.mkDerivation rec {
buildInputs = [ openssl libtool perl libxml2 ];
/* Why --with-libtool? */
configureFlags = [ "--with-libtool" "--with-openssl=${openssl}"
"--localstatedir=/var" ];
configureFlags = [
"--localstatedir=/var"
"--with-libtool"
"--with-libxml2=${libxml2}"
"--with-openssl=${openssl}"
"--without-atf"
"--without-dlopen"
"--without-docbook-xsl"
"--without-gssapi"
"--without-idn"
"--without-idnlib"
"--without-pkcs11"
"--without-purify"
"--without-python"
];
meta = {
homepage = "http://www.isc.org/software/bind";

View File

@ -18,7 +18,12 @@ stdenv.mkDerivation rec {
./nonpriv.patch
];
postPatch = "rm -v include/linux/if_pppol2tp.h";
postPatch = ''
# enable ipv6
substituteInPlace pppd/Makefile.linux \
--replace "#HAVE_INET6=y" "HAVE_INET6=y"
rm -v include/linux/if_pppol2tp.h
'';
buildInputs = [ libpcap ];

View File

@ -5,11 +5,11 @@
}:
stdenv.mkDerivation rec {
name = "nix-1.5.2pre3091_772b709";
name = "nix-1.5.3pre3134_5c06e52";
src = fetchurl {
url = "http://hydra.nixos.org/build/4796316/download/5/${name}.tar.xz";
sha256 = "f1acf131842d9604d886d5f98aaa4739bea63536023d7287ce48613c38d49fbd";
url = "http://hydra.nixos.org/build/5265350/download/5/${name}.tar.xz";
sha256 = "82fd6aad66a8646d923a9a65b04879ea5e320391f047549c88ab7d913e5d5903";
};
nativeBuildInputs = [ perl pkgconfig ];

View File

@ -769,6 +769,8 @@ let
expect = callPackage ../tools/misc/expect { };
fabric = pythonPackages.fabric;
fail2ban = callPackage ../tools/security/fail2ban { };
fakeroot = callPackage ../tools/system/fakeroot { };
@ -2627,6 +2629,7 @@ let
julia = callPackage ../development/compilers/julia {
liblapack = liblapack.override {shared = true;};
mpfr = mpfr_3_1_2;
fftw = fftw.override {pthreads = true;};
fftwSinglePrec = fftwSinglePrec.override {pthreads = true;};
};
@ -3992,6 +3995,7 @@ let
#GMP ex-satellite, so better keep it near gmp
mpfr = callPackage ../development/libraries/mpfr { };
mpfr_3_1_2 = callPackage ../development/libraries/mpfr/3.1.2.nix { };
gst_all = {
inherit (pkgs) gstreamer gnonlin gst_python qt_gstreamer;
@ -5501,12 +5505,12 @@ let
plone41Packages = recurseIntoAttrs (import ../development/web/plone/4.1.6.nix {
inherit pkgs;
pythonPackages = python27Packages;
pythonPackages = python26Packages;
});
plone42Packages = recurseIntoAttrs (import ../development/web/plone/4.2.5.nix {
inherit pkgs;
pythonPackages = python27Packages;
pythonPackages = python26Packages;
});
plone43Packages = recurseIntoAttrs (import ../development/web/plone/4.3.0.nix {
@ -5592,9 +5596,7 @@ let
sabnzbd = callPackage ../servers/sabnzbd { };
bind = callPackage ../servers/dns/bind {
inherit openssl libtool perl;
};
bind = callPackage ../servers/dns/bind { };
couchdb = callPackage ../servers/http/couchdb {
spidermonkey = spidermonkey_185;
@ -7248,7 +7250,7 @@ let
firefoxWrapper = wrapFirefox { browser = pkgs.firefox; };
firefoxPkgs = pkgs.firefox20Pkgs;
firefoxPkgs = pkgs.firefox21Pkgs;
firefox36Pkgs = callPackage ../applications/networking/browsers/firefox/3.6.nix {
inherit (gnome) libIDL;
@ -8220,7 +8222,7 @@ let
vimHugeX = vim_configurable;
vim_configurable = import ../applications/editors/vim/configurable.nix {
vim_configurable = callPackage (import ../applications/editors/vim/configurable.nix) {
inherit (pkgs) fetchurl stdenv ncurses pkgconfig gettext composableDerivation lib config;
inherit (pkgs.xlibs) libX11 libXext libSM libXpm libXt libXaw libXau libXmu libICE;
inherit (pkgs) glib gtk;
@ -8233,6 +8235,8 @@ let
# optional features by flags
flags = [ "python" "X11" ]; # only flag "X11" by now
};
vimLatest = vim_configurable.override { source = "latest"; };
vimNox = vim_configurable.override { source = "vim-nox"; };
virtviewer = callPackage ../applications/virtualization/virt-viewer {};
virtmanager = callPackage ../applications/virtualization/virt-manager {
@ -9249,13 +9253,10 @@ let
stateDir = config.nix.stateDir or "/nix/var";
};
nixUnstable = nixStable;
/*
nixUnstable = callPackage ../tools/package-management/nix/unstable.nix {
storeDir = config.nix.storeDir or "/nix/store";
stateDir = config.nix.stateDir or "/nix/var";
};
*/
nut = callPackage ../applications/misc/nut { };
@ -9418,6 +9419,8 @@ let
viewnior = callPackage ../applications/graphics/viewnior { };
vimPlugins = callPackage ../misc/vim-plugins { };
vimprobable2 = callPackage ../applications/networking/browsers/vimprobable2 {
inherit (gnome) libsoup;
webkit = webkit_gtk2;

View File

@ -1192,6 +1192,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
HsOpenSSL = callPackage ../development/libraries/haskell/HsOpenSSL {};
hsshellscript = callPackage ../development/libraries/haskell/hsshellscript {};
HStringTemplate = callPackage ../development/libraries/haskell/HStringTemplate {};
hspread = callPackage ../development/libraries/haskell/hspread {};

View File

@ -600,19 +600,6 @@
{ name = "async"; range = "~0.2.7"; }
];
}
{
baseName = "form-data";
version = "0.0.10";
fullName = "form-data-~0.0.3";
hash = "d49669b81c27dd6c7e359ee9892880c6741dae6c325b617ab3eb5a78bf103822";
patchLatest = false;
topLevel = false;
dependencies = [
{ name = "combined-stream"; range = "~0.0.4"; }
{ name = "mime"; range = "~1.2.2"; }
{ name = "async"; range = "~0.2.7"; }
];
}
{
baseName = "formidable";
version = "1.0.13";
@ -977,9 +964,9 @@
}
{
baseName = "knox";
version = "0.8.2";
version = "0.8.3";
fullName = "knox-*";
hash = "e4842cb834f27dc859fc6ab2389f7d0702f6cc6ecff469b89729dd33c33c0afd";
hash = "fe3cb0d94b3e85413626ffee386c751931afe200b170bd555173e413d7044c75";
patchLatest = false;
topLevel = true;
dependencies = [
@ -1069,16 +1056,6 @@
dependencies = [
];
}
{
baseName = "mime";
version = "1.2.9";
fullName = "mime-~1.2.7";
hash = "60120b9859a92a94480a76327a9406b4a72a34f2317bc7fa33dcb99b9c72678a";
patchLatest = false;
topLevel = false;
dependencies = [
];
}
{
baseName = "mime";
version = "1.2.9";
@ -1235,9 +1212,9 @@
}
{
baseName = "nijs";
version = "0.0.5";
version = "0.0.7";
fullName = "nijs-*";
hash = "c5e9f93f240757e1ab2d0ad341384db6e0b73ab2616ae9832d1ed772eaebd408";
hash = "a4a965771c618f870cabf27676a36909f6a9b0981f40d1baa2123af396cf8635";
patchLatest = false;
topLevel = true;
dependencies = [
@ -1256,9 +1233,9 @@
}
{
baseName = "node-gyp";
version = "0.9.6";
version = "0.10.0";
fullName = "node-gyp-*";
hash = "937090ffd7de10079861ef562d0282dd4100873aa7bba7de9cd6ea7982b41b0b";
hash = "9edecaa701601f07b15da7bd6e9de4fae98ef1acdd5a1fc6cc144451a68773dd";
patchLatest = false;
topLevel = true;
dependencies = [
@ -1270,7 +1247,7 @@
{ name = "nopt"; range = "2"; }
{ name = "npmlog"; range = "0"; }
{ name = "osenv"; range = "0"; }
{ name = "request"; range = ">= 2 && <= 2.14"; }
{ name = "request"; range = "2"; }
{ name = "rimraf"; range = "2"; }
{ name = "semver"; range = "1"; }
{ name = "tar"; range = "0"; }
@ -1514,14 +1491,24 @@
}
{
baseName = "request";
version = "2.12.0";
fullName = "request->= 2 && <= 2.14";
hash = "a26790d2179da11a644d5deaa2ae5d37472bf0e73355fde02ea5923106308997";
version = "2.21.0";
fullName = "request-2";
hash = "fe31c3119bc4423f07aa7c9849cb642d5ad22bdf2a2700eab56fb83fa8ed429c";
patchLatest = false;
topLevel = false;
dependencies = [
{ name = "form-data"; range = "~0.0.3"; }
{ name = "mime"; range = "~1.2.7"; }
{ name = "qs"; range = "~0.6.0"; }
{ name = "json-stringify-safe"; range = "~4.0.0"; }
{ name = "forever-agent"; range = "~0.5.0"; }
{ name = "tunnel-agent"; range = "~0.3.0"; }
{ name = "http-signature"; range = "~0.9.11"; }
{ name = "hawk"; range = "~0.13.0"; }
{ name = "aws-sign"; range = "~0.3.0"; }
{ name = "oauth-sign"; range = "~0.3.0"; }
{ name = "cookie-jar"; range = "~0.3.0"; }
{ name = "node-uuid"; range = "~1.4.0"; }
{ name = "mime"; range = "~1.2.9"; }
{ name = "form-data"; range = "0.0.8"; }
];
}
{
@ -1796,9 +1783,9 @@
}
{
baseName = "swig";
version = "0.13.5";
version = "0.14.0";
fullName = "swig-*";
hash = "d1cc435c623829e5672df45c14a878304a41bec2b2c6b2a13bb956aeed22d1c9";
hash = "9eeafb591606008c7ab33501ebfdb6ed80830cca5736513c6c5874ded65cfb3f";
patchLatest = false;
topLevel = true;
dependencies = [

File diff suppressed because it is too large Load Diff

View File

@ -975,6 +975,25 @@ pythonPackages = python.modules // rec {
};
};
fabric = buildPythonPackage rec {
name = "fabric-1.6.1";
src = fetchurl {
url = https://pypi.python.org/packages/source/F/Fabric/Fabric-1.6.1.tar.gz;
sha256 = "058psbhqbfm3n214wkyfpgm069yqmdqw1hql9bac1yv9pza3bzx1";
};
propagatedBuildInputs = [ paramiko pycrypto ];
buildInputs = [ fudge nose ];
};
fudge = buildPythonPackage rec {
name = "fudge-0.9.4";
src = fetchurl {
url = https://pypi.python.org/packages/source/f/fudge/fudge-0.9.4.tar.gz;
sha256 = "03sj2x6mpzm48swpa4hnn1gi6yilgniyjfg1ylz95wm1ijggi33w";
};
buildInputs = [ nose nosejs ];
propagatedBuildInputs = [ sphinx ];
};
logilab_astng = buildPythonPackage rec {
name = "logilab-astng-0.24.1";
@ -2167,6 +2186,26 @@ pythonPackages = python.modules // rec {
propagatedBuildInputs = [ unittest2 ];
};
"lxml-2.3.6" = buildPythonPackage rec {
name = "lxml-2.3.6";
src = fetchurl {
url = "http://pypi.python.org/packages/source/l/lxml/lxml-2.3.6.tar.gz";
md5 = "d5d886088e78b1bdbfd66d328fc2d0bc";
};
buildInputs = [ pkgs.libxml2 pkgs.libxslt ];
propagatedBuildInputs = [ ];
doCheck = false;
installCommand = ''
easy_install --always-unzip --no-deps --prefix="$out" .
'';
meta = {
description = "Pythonic binding for the libxml2 and libxslt libraries";
homepage = http://codespeak.net/lxml/index.html;
license = "BSD";
};
};
lxml = buildPythonPackage ( rec {
name = "lxml-3.0.2";
@ -2718,6 +2757,15 @@ pythonPackages = python.modules // rec {
propagatedBuildInputs = [ covCore nose2 ];
});
nosejs = buildPythonPackage {
name = "nosejs-0.9.4";
src = fetchurl {
url = https://pypi.python.org/packages/source/N/NoseJS/NoseJS-0.9.4.tar.gz;
sha256 = "0qrhkd3sga56qf6k0sqyhwfcladwi05gl6aqmr0xriiq1sgva5dy";
};
buildInputs = [ nose ];
};
notify = pkgs.stdenv.mkDerivation (rec {
name = "python-notify-0.1.1";
@ -2901,11 +2949,11 @@ pythonPackages = python.modules // rec {
paramiko = buildPythonPackage rec {
name = "paramiko-1.7.7.1";
name = "paramiko-1.10";
src = fetchurl {
url = "http://www.lag.net/paramiko/download/${name}.tar.gz";
sha256 = "1bjy4jn51c50mpq51jbwk0glzd8bxz83gxdfkr9p95dmrd17c7hh";
url = https://pypi.python.org/packages/source/p/paramiko/paramiko-1.10.1.tar.gz;
sha256 = "1g5sbzfxdhps61z3vm30wa87m5xq1j9ar3qvgr5bz63l7nxhvb2z";
};
buildInputs = [ pycrypto ];

View File

@ -353,7 +353,6 @@ let
emacs23Packages = {
bbdb = linux;
cedet = linux;
ecb = linux;
emacsw3m = linux;
emms = linux;
jdee = linux;