Merge 'master' into staging

(relatively simple conflicts)
This commit is contained in:
Vladimír Čunát
2015-04-26 22:52:08 +02:00
508 changed files with 26127 additions and 13733 deletions

View File

@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk"
+ "/valgrind-3.9.0-glibc-2.21.patch?h=packages/valgrind&id=41e87313b69";
sha256 = "14sgsvjjalbcqpcayyv5cndc9hfm5bigkp684b6cr6virksmlk19";
})];
}) ./linux-4.0.patch];
# Perl is needed for `cg_annotate'.
# GDB is needed to provide a sane default for `--db-command'.

View File

@@ -0,0 +1,12 @@
diff -Naur valgrind-3.10.1/configure valgrind-3.10.1-patch/configure
--- valgrind-3.10.1/configure 2014-11-25 11:42:25.000000000 -0800
+++ valgrind-3.10.1-patch/configure 2015-04-21 09:45:37.656113841 -0700
@@ -5553,7 +5553,7 @@
kernel=`uname -r`
case "${kernel}" in
- 2.6.*|3.*)
+ 2.6.*|3.*|4.*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: 2.6.x/3.x family (${kernel})" >&5
$as_echo "2.6.x/3.x family (${kernel})" >&6; }

View File

@@ -2,19 +2,19 @@
/* Cargo binary snapshot */
let snapshotDate = "2015-02-26";
let snapshotDate = "2015-04-02";
in
with ((import ./common.nix) { inherit stdenv; version = "snapshot-${snapshotDate}"; });
let snapshotHash = if stdenv.system == "i686-linux"
then "2a28b604d09b4a76a54a05d91f7f158692427b3a"
then "ba6c162680d5509d89ba2363d7cae2047f40c034"
else if stdenv.system == "x86_64-linux"
then "7367f4aca86d38e209ef7236b00175df036c03e2"
then "94f715c9a52809a639f2ce6f8b1d5215a0c272b5"
else if stdenv.system == "i686-darwin"
then "e5cabb0a4a2b4e47f7b1ae9b802e2b5d0b14eac5"
then "cf333f16f89bfd50e8ce461c6f81ca30d33f7f73"
else if stdenv.system == "x86_64-darwin"
then "3026c60ddd46d2bcf1cb178fc801095dbfba5286"
then "1f7008a6ec860e2bc7580e71bdf320ac518ddeb8"
else throw "no snapshot for platform ${stdenv.system}";
snapshotName = "cargo-nightly-${platform}.tar.gz";
in
@@ -35,6 +35,10 @@ stdenv.mkDerivation {
installPhase = ''
mkdir -p "$out"
./install.sh "--prefix=$out"
rm "$out/lib/rustlib/components" \
"$out/lib/rustlib/install.log" \
"$out/lib/rustlib/rust-installer-version" \
"$out/lib/rustlib/uninstall.sh"
'' + (if stdenv.isLinux then ''
patchelf --interpreter "${stdenv.glibc}/lib/${stdenv.cc.dynamicLinker}" \
--set-rpath "${stdenv.cc.cc}/lib/:${stdenv.cc.cc}/lib64/:${zlib}/lib" \

View File

@@ -1,11 +1,11 @@
{stdenv, fetchurl, curl, dmd, gcc, unzip}:
{stdenv, fetchurl, curl, dmd, gcc, unzip }:
stdenv.mkDerivation {
name = "dub-0.9.22";
name = "dub-0.9.23";
src = fetchurl {
url = "https://github.com/rejectedsoftware/dub/archive/v0.9.22.tar.gz";
sha256 = "0vhn96ybbsfflldlbyc17rmwb7bz21slbm189k5glyfr9nnp4cir";
url = "https://github.com/D-Programming-Language/dub/archive/v0.9.23.tar.gz";
sha256 = "7ecbce89c0e48b43705d7c48003394f383556f33562c4b5d884a786cd85814d1";
};
buildInputs = [ unzip curl ];

View File

@@ -1,25 +1,42 @@
# This file was auto-generated by cabal2nix. Please do NOT edit manually!
{ cabal, Cabal, deepseq, doctest, filepath, hackageDb, mtl
, regexPosix, transformers
{ mkDerivation, fetchgit, aeson, base, bytestring, Cabal, containers
, deepseq, deepseq-generics, directory, doctest, filepath, gitMinimal
, hackage-db, hspec, lens, monad-par, monad-par-extras, mtl, pretty
, process, QuickCheck, regex-posix, SHA, split, stdenv, transformers
, utf8-string, cartel, nix-prefetch-scripts, makeWrapper
}:
cabal.mkDerivation (self: {
mkDerivation rec {
pname = "cabal2nix";
version = "1.73";
sha256 = "1nskcr8k5a8wm9q5is0b1kww574q2nq45f16agya8z44hgk97xiv";
isLibrary = false;
isExecutable = true;
buildDepends = [
Cabal deepseq filepath hackageDb mtl regexPosix transformers
];
testDepends = [ doctest ];
doCheck = self.stdenv.lib.versionOlder "7.8" self.ghc.version;
meta = {
homepage = "http://github.com/NixOS/cabal2nix";
description = "Convert Cabal files into Nix build instructions";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
maintainers = with self.stdenv.lib.maintainers; [ simons ];
version = "20150423";
src = fetchgit {
url = "http://github.com/NixOS/cabal2nix.git";
rev = "8cfe61c222bd2750ef29f991a2a3ee353444e458";
sha256 = "07n5am1ca00291qaarvwgzbkhwqc4f4wwhffycwwxaq46by34l7b";
deepClone = true;
};
})
isExecutable = true;
enableSharedLibraries = false;
enableSharedExecutables = false;
buildDepends = [
aeson base bytestring Cabal containers deepseq-generics directory
filepath hackage-db lens monad-par monad-par-extras mtl pretty
process regex-posix SHA split transformers utf8-string cartel
];
testDepends = [
aeson base bytestring Cabal containers deepseq deepseq-generics
directory doctest filepath hackage-db hspec lens monad-par
monad-par-extras mtl pretty process QuickCheck regex-posix SHA
split transformers utf8-string
];
buildTools = [ gitMinimal makeWrapper ];
preConfigure = "runhaskell $setupCompileFlags generate-cabal-file --release >cabal2nix.cabal";
postInstall = ''
exe=$out/libexec/${pname}-${version}/cabal2nix
install -D $out/bin/cabal2nix $exe
rm -rf $out/{bin,lib,share}
makeWrapper $exe $out/bin/cabal2nix --prefix PATH ":" "${nix-prefetch-scripts}/bin"
'';
homepage = "http://github.com/NixOS/cabal2nix/";
description = "Convert Cabal files into Nix build instructions";
license = stdenv.lib.licenses.bsd3;
}

View File

@@ -1,35 +0,0 @@
{ stdenv, buildEnv, ghcWithPackages, makeWrapper, ihaskell, ipython, packages }:
let
ihaskellEnv = ghcWithPackages (self: [
self.ihaskell
self.ihaskell-blaze
self.ihaskell-diagrams
self.ihaskell-display
] ++ packages self);
profile = "${ihaskell.pname}-${ihaskell.version}/profile/profile.tar";
drv = buildEnv {
name = "ihaskell-with-packages";
paths = [ ihaskellEnv ipython ];
postBuild = ''
tar xf ${ihaskell.src} ${profile}
mkdir -p $out/share/`dirname ${profile}`
mkdir profile
cd profile
tar xf ../${profile}
for cfg in ipython_*config.py;do
sed -i -e "1iexe = '${ihaskell}/bin/IHaskell'" $cfg
done
tar cf $out/share/${profile} .
wrapProgram "$out/bin/IHaskell" \
--prefix PATH : "${ihaskellEnv}/bin:${ipython}/bin" \
--set PROFILE_DIR "\$HOME/.ipython/profile_haskell" \
--set PROFILE_TAR "$out/share/${profile}" \
--set PROFILE_INIT "\$([ ! -d \$PROFILE_DIR ] \
&& mkdir -p \$PROFILE_DIR \
&& tar xf \$PROFILE_TAR -C \$PROFILE_DIR \
; [ -d \$PROFILE_DIR ] && for cfg in \$PROFILE_DIR/ipython_*config.py;do \
sed -i -e '/.*exe.*IHaskell.*/d' \$cfg; sed -i -e \"1iexe = '${ihaskell}/bin/IHaskell'\" \$cfg;done )" \
--set GHC_PACKAGE_PATH "\$(echo $out/lib/*/package.conf.d| tr ' ' ':'):" \
'';
};
in stdenv.lib.overrideDerivation drv (x : { buildInputs = x.buildInputs ++ [ makeWrapper ]; })

View File

@@ -1,36 +1,23 @@
{ stdenv, makeWrapper, ihaskell, ipython, ghc }:
stdenv.mkDerivation rec {
inherit (ihaskell) name pname src version meta;
buildInputs = [ makeWrapper ];
preferLocalBuild = true;
buildCommand = let profile = "${pname}-${version}/profile/profile.tar"; in ''
tar xf $src ${profile}
mkdir -p $out/share/`dirname ${profile}`
mkdir profile
cd profile
tar xf ../${profile}
for cfg in ipython_*config.py;do
sed -i -e "1iexe = '${ihaskell}/bin/IHaskell'" $cfg
done
tar cf $out/share/${profile} .
makeWrapper "${ihaskell}/bin/IHaskell" "$out/bin/ihaskell" \
--prefix PATH : "${ghc}/bin:${ihaskell}/bin:${ipython}/bin" \
--prefix LD_LIBRARY_PATH : "${ihaskell}/lib/ghc-${ghc.version}/${name}/" \
--add-flags "--ipython=${ipython}/bin/ipython" \
--set PROFILE_DIR "\$HOME/.ipython/profile_haskell" \
--set PROFILE_TAR "$out/share/${profile}" \
--set PROFILE_INIT "\$([ ! -d \$PROFILE_DIR ] \
&& mkdir -p \$PROFILE_DIR \
&& tar xf \$PROFILE_TAR -C \$PROFILE_DIR \
; [ -d \$PROFILE_DIR ] && for cfg in \$PROFILE_DIR/ipython_*config.py;do \
sed -i -e '/.*exe.*IHaskell.*/d' \$cfg; sed -i -e \"1iexe = '${ihaskell}/bin/IHaskell'\" \$cfg;done ) \
" \
--prefix GHC_PACKAGE_PATH : "\$(${ghc.GHCGetPackages} ${ghc.version}|sed -e 's, -package-db ,:,g'|cut -b 2-):${ihaskell}/lib/ghc-${ghc.version}/package.conf.d/${pname}-${version}.installedconf" \
--set GHC_PACKAGE_PATH "\$GHC_PACKAGE_PATH:" # always end with : to include base packages
{ stdenv, writeScriptBin, buildEnv, ghcWithPackages, ihaskell, ipython, packages }:
let
ihaskellEnv = ghcWithPackages (self: [
self.ihaskell
self.ihaskell-blaze
self.ihaskell-diagrams
self.ihaskell-display
] ++ packages self);
ihaskellSh = writeScriptBin "ihaskell-notebook" ''
#!/bin/sh
export GHC_PACKAGE_PATH="$(echo ${ihaskellEnv}/lib/*/package.conf.d| tr ' ' ':'):$GHC_PACKAGE_PATH"
export PATH="${ihaskell}/bin:${ihaskellEnv}/bin:${ipython}/bin"
${ihaskell}/bin/ihaskell install -l $(${ihaskellEnv}/bin/ghc --print-libdir) && ${ipython}/bin/ipython notebook --kernel=haskell
'';
profile = "${ihaskell.pname}-${ihaskell.version}/profile/profile.tar";
in
buildEnv {
name = "ihaskell-with-packages";
paths = [ ihaskellEnv ipython ];
postBuild = ''
ln -s ${ihaskellSh}/bin/ihaskell-notebook $out/bin/.
'';
}

View File

@@ -0,0 +1,52 @@
{ lib, makeWrapper, haskellngPackages
, mueval
, withDjinn ? true
, aspell ? null
, packages ? (pkgs: [])
, modules ? ''
haskellPlugins
++ ["irc", "localtime", "topic"]
++ ["dummy", "fresh", "todo"]
++ ["bf", "dice", "elite", "filter", "quote", "slap", "unlambda", "vixen"]
++ referencePlugins
++ socialPlugins
''
, configuration ? "[]"
}:
# FIXME: fix hoogle search
let allPkgs = pkgs: mueval.defaultPkgs pkgs ++ [ pkgs.lambdabot-trusted ] ++ packages pkgs;
mueval' = mueval.override {
inherit haskellngPackages;
packages = allPkgs;
};
bins = lib.makeSearchPath "bin" ([ mueval'
(haskellngPackages.ghcWithPackages allPkgs)
haskellngPackages.unlambda
haskellngPackages.brainfuck
]
++ lib.optional withDjinn haskellngPackages.djinn
++ lib.optional (aspell != null) aspell
);
modulesStr = lib.replaceChars ["\n"] [" "] ("corePlugins ++ " + modules);
configStr = lib.replaceChars ["\n"] [" "] configuration;
in lib.overrideDerivation haskellngPackages.lambdabot (self: {
postPatch = (self.postPatch or "") + ''
sed -i 's/\(\$(modules \$ \).*/\1@modules@)/; /@modules@/q' src/Modules.hs
# not via sed to avoid escaping issues
substituteInPlace src/Modules.hs \
--replace '@modules@' '${modulesStr}'
sed -i 's/\[dataDir :=> dir\]/@config@ ++ \0/' src/Main.hs
substituteInPlace src/Main.hs \
--replace '@config@' '${configStr}'
'';
buildInputs = self.buildInputs ++ [ makeWrapper ];
postInstall = (self.postInstall or "") + lib.optionalString (bins != "") ''
wrapProgram $out/bin/lambdabot \
--prefix PATH ":" '${bins}'
'';
})

View File

@@ -0,0 +1,17 @@
{ stdenv, ghcWithPackages, gtk3, makeWrapper }:
let
leksahEnv = ghcWithPackages (self: [ self.leksah-server self.leksah self.cabal-install ]);
in stdenv.mkDerivation {
name = "leksah";
buildInputs = [ gtk3 ];
nativeBuildInputs = [ makeWrapper ];
buildCommand = ''
mkdir -p $out/bin
makeWrapper ${leksahEnv}/bin/leksah $out/bin/leksah \
--prefix PATH : "${leksahEnv}/bin" \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
'';
}

View File

@@ -0,0 +1,32 @@
{ stdenv, makeWrapper, haskellngPackages, packages ? (pkgs: [])
}:
let defaultPkgs = pkgs: [ pkgs.show
pkgs.simple-reflect
pkgs.QuickCheck
pkgs.mtl
];
env = haskellngPackages.ghcWithPackages
(pkgs: defaultPkgs pkgs ++ packages pkgs);
libDir = "${env}/lib/ghc-${env.version}";
in stdenv.mkDerivation {
name = "mueval-env";
inherit (haskellngPackages) mueval;
nativeBuildInputs = [ makeWrapper ];
buildCommand = ''
mkdir -p $out/bin
makeWrapper $mueval/bin/mueval $out/bin/mueval \
--prefix PATH ":" "$out/bin"
makeWrapper $mueval/bin/mueval-core $out/bin/mueval \
--set "NIX_GHC_LIBDIR" "${libDir}"
'';
passthru = { inherit defaultPkgs; };
}

View File

@@ -3,18 +3,18 @@
let
libphutil = fetchgit {
url = "git://github.com/phacility/libphutil.git";
rev = "ce3959b4046f5dcc4f3413a59328bda2a42e76b0";
sha256 = "3c206b428fa5e0391868f7782db4af4d1cf2f338899831a36771cef74db14a76";
rev = "efc338d50f17dec594a66337034797c90c8b10c1";
sha256 = "9a9df8667d9bf31667facd1cd873adef292c63893adc15d32bd819c47256027c";
};
arcanist = fetchgit {
url = "git://github.com/phacility/arcanist.git";
rev = "b961869edac9469be93f2c3ac7a24562d3186860";
sha256 = "2ae1272c76a1e2bdedd87d453ddb75f6110f9224063e7ee39e88fcb8b3b4c884";
rev = "e101496508e279e1b9ee15d7d549735a0352f8ab";
sha256 = "4f2ae195173d859f9920378c42e257d70e5720b7f54c02d9af2c398f936f20b9";
};
in
stdenv.mkDerivation rec {
name = "arcanist-${version}";
version = "20150318";
version = "20150412";
src = [ arcanist libphutil ];
buildInputs = [ php makeWrapper flex ];

View File

@@ -1,11 +1,11 @@
{ fetchurl, stdenv, expect, makeWrapper }:
stdenv.mkDerivation rec {
name = "dejagnu-1.5.2";
name = "dejagnu-1.5.3";
src = fetchurl {
url = "mirror://gnu/dejagnu/${name}.tar.gz";
sha256 = "18ikblg4x4y5fkw8sg0c2zmqgxdqqycswmws17sxx8m4sz6g7dch";
sha256 = "069z3qrdv35cm2sbnfr5yjzplrqj9f61cchxis7j9mm19hv8x6q9";
};
patches = [ ./wrapped-runtest-program-name.patch ];

View File

@@ -8,7 +8,7 @@
let
basename = "gdb-7.8.2";
basename = "gdb-7.9";
# Whether (cross-)building for GNU/Hurd. This is an approximation since
# having `stdenv ? cross' doesn't tell us if we're building `crossDrv' and
@@ -27,10 +27,10 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnu/gdb/${basename}.tar.xz";
sha256 = "11a4fj1vpsny71kz7xqqbqk3kgzbs5cfjj3z9gm0hpvxfkam8nb0";
sha256 = "14l3hhsy7fmpn2dk7ivc67gnbjdhkxlq90kxijpzfa35l58mcccv";
};
patches = [ ./edit-signals.patch ];
# patches = [ ./edit-signals.patch ];
# I think python is not a native input, but I leave it
# here while I will not need it cross building
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
postInstall =
'' # Remove Info files already provided by Binutils and other packages.
rm -v $out/share/info/{standards,configure,bfd}.info
rm -v $out/share/info/bfd.info
'';
# TODO: Investigate & fix the test failures.

View File

@@ -1,25 +0,0 @@
Patch adapted from
https://www.sourceware.org/ml/gdb-patches/2012-08/msg00439.html
Without it, spawning a terminal 'vim' from gdb 'edit' cmd, makes
all gdb grazy.
diff --git a/gdb/tui/tui-win.c b/gdb/tui/tui-win.c
index 7ea0fec..be5455c 100644
--- a/gdb/tui/tui-win.c
+++ b/gdb/tui/tui-win.c
@@ -831,11 +831,12 @@ void
tui_initialize_win (void)
{
#ifdef SIGWINCH
-#ifdef HAVE_SIGACTION
+#if defined (HAVE_SIGACTION) && defined (SA_RESTART)
struct sigaction old_winch;
- memset (&old_winch, 0, sizeof (old_winch));
+ sigemptyset (&old_winch.sa_mask);
old_winch.sa_handler = &tui_sigwinch_handler;
+ old_winch.sa_flags = SA_RESTART;
sigaction (SIGWINCH, &old_winch, NULL);
#else
signal (SIGWINCH, &tui_sigwinch_handler);

View File

@@ -1,14 +1,15 @@
{ lib, pythonPackages, fetchgit }:
{ lib, pythonPackages, fetchFromGitHub }:
let version = "0.1.1"; in
let version = "0.1.2"; in
pythonPackages.buildPythonPackage {
name = "nixbang-${version}";
namePrefix = "";
src = fetchgit {
url = "git://github.com/madjar/nixbang.git";
rev = "refs/tags/${version}";
sha256 = "1n8jq32r2lzk3g0d95ksfq7vdqciz34jabribrr4hcnz4nlijshf";
src = fetchFromGitHub {
owner = "madjar";
repo = "nixbang";
rev = version;
sha256 = "1kzk53ry60i814wa6n9y2ni0bcxhbi9p8gdv10b974gf23mhi8vc";
};
meta = {

View File

@@ -1,4 +1,4 @@
{ stdenv, fetchgit, autoconf, automake, libtool, pkgconfig, libusb1 }:
{ stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, libusb1 }:
# IMPORTANT: You need permissions to access the stlink usb devices. Here are
# example udev rules for stlink v1 and v2 so you don't need to have root
@@ -7,13 +7,15 @@
# SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="3744", MODE:="0666", SYMLINK+="stlinkv1_%n"
# SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="3748", MODE:="0666", SYMLINK+="stlinkv2_%n"
let
version = "1.1.0";
in
stdenv.mkDerivation {
name = "stlink-20130306";
name = "stlink-${version}";
src = fetchgit {
url = git://github.com/texane/stlink.git;
rev = "5be889e3feb75fc7f594012c4855b4dc16940050";
sha256 = "1xbfr1kz4k6hhl0xpqn1vi83fdynjxx3ymn9gb7b0pb7h6ncjcyr";
src = fetchurl {
url = "https://github.com/texane/stlink/archive/${version}.tar.gz";
sha256 = "0b38a32ids9dpnz5h892l279fz8y1zzqk1qsnyhl1nm03p7xzi1s";
};
buildInputs = [ autoconf automake libtool pkgconfig libusb1 ];

View File

@@ -2,17 +2,17 @@
stdenv.mkDerivation rec {
#TODO add emacs support
name = "racer-git-2015-02-28";
name = "racer-git-2015-04-12";
src = fetchgit {
url = https://github.com/phildawes/racer;
rev = "2e1d718fae21431de4493c238196466e9d4996bc";
sha256 = "0lvp494kg2hlbbdrwxmmxkyhjw53y9wjdml9z817pwj3fwmrjsx0";
rev = "5437e2074d87dfaab75a0f1bd2597bed61c0bbf1";
sha256 = "0a768gvjry86l0xa5q0122iyq7zn2h9adfniglsgrbs4fan49xyn";
};
buildInputs = [ rustc cargo makeWrapper ];
buildPhase = ''
cargo build --release
CARGO_HOME="$NIX_BUILD_TOP/.cargo" cargo build --release
'';
installPhase = ''

View File

@@ -0,0 +1,33 @@
{ stdenv, fetchFromGitHub, autoconf, automake, libtool, libsass }:
stdenv.mkDerivation rec {
name = "sassc";
version = "3.1.0";
src = fetchFromGitHub {
owner = "sass";
repo = "sassc";
rev = version;
sha256 = "0lpilmsir9b9292a4b8kq3zzg5cfh031p0krgam5rmsn39i6ivs4";
};
preConfigure = ''
export SASSC_VERSION="3.1.0"
autoreconf --force --install
'';
buildInputs = [ autoconf automake libtool libsass ];
installPhase = ''
mkdir -p $out/bin
cp sassc $out/bin/
'';
meta = with stdenv.lib; {
description = "A front-end for libsass";
license = licenses.mit;
homepage = https://github.com/sass/sassc/;
maintainers = with maintainers; [ pjones ];
platforms = platforms.unix;
};
}