Merge remote-tracking branch 'origin/master' into stdenv-updates.
This commit is contained in:
commit
ac5d5297dd
@ -105,16 +105,6 @@ $ make menuconfig ARCH=<replaceable>arch</replaceable></screen>
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Make sure that
|
||||
<literal>CONFIG_FB_TILEBLITTING</literal> is <emphasis>not
|
||||
set</emphasis> (otherwise <command>fbsplash</command> won't
|
||||
work). This option has a tendency to be enabled as a
|
||||
side-effect of other options. If it is, investigate why
|
||||
(there's probably another option that forces it to be on)
|
||||
and fix it.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Copy <filename>.config</filename> over the new config
|
||||
file (e.g. <filename>config-2.6.22-i686-smp</filename>).</para>
|
||||
@ -137,22 +127,9 @@ $ make menuconfig ARCH=<replaceable>arch</replaceable></screen>
|
||||
kernel modules and kernel-dependent packages listed in the
|
||||
<varname>kernelPackagesFor</varname> function in
|
||||
<filename>all-packages.nix</filename> (such as the NVIDIA drivers,
|
||||
AUFS, splashutils, etc.). If the updated packages aren’t
|
||||
backwards compatible with older kernels, you need to keep the
|
||||
older versions and use some conditionals. For example, new
|
||||
kernels require splashutils 1.5 while old kernel require 1.3, so
|
||||
<varname>kernelPackagesFor</varname> says:
|
||||
|
||||
<programlisting>
|
||||
splashutils =
|
||||
if kernel.features ? fbSplash then splashutils_13 else
|
||||
if kernel.features ? fbConDecor then splashutils_15 else
|
||||
null;
|
||||
|
||||
splashutils_13 = ...;
|
||||
splashutils_15 = ...;</programlisting>
|
||||
|
||||
</para>
|
||||
AUFS, etc.). If the updated packages aren’t backwards compatible
|
||||
with older kernels, you may need to keep the older versions
|
||||
around.</para>
|
||||
</listitem>
|
||||
|
||||
</orderedlist>
|
||||
|
@ -71,7 +71,7 @@ $ git add pkgs/development/libraries/libfoo/default.nix</screen>
|
||||
|
||||
<listitem>
|
||||
<para>GNU Multiple Precision arithmetic library (GMP): <link
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/gmp/default.nix"><filename>pkgs/development/libraries/gmp/default.nix</filename></link>.
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/gmp/5.1.1.nix"><filename>pkgs/development/libraries/gmp/5.1.1.nix</filename></link>.
|
||||
Also done by the generic builder, but has a dependency on
|
||||
<varname>m4</varname>.</para>
|
||||
</listitem>
|
||||
@ -86,7 +86,7 @@ $ git add pkgs/development/libraries/libfoo/default.nix</screen>
|
||||
|
||||
<listitem>
|
||||
<para>Apache HTTPD: <link
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/servers/http/apache-httpd/default.nix"><filename>pkgs/servers/http/apache-httpd/default.nix</filename></link>.
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/servers/http/apache-httpd/2.4.nix"><filename>pkgs/servers/http/apache-httpd/2.4.nix</filename></link>.
|
||||
A bunch of optional features, variable substitutions in the
|
||||
configure flags, a post-install hook, and miscellaneous
|
||||
hackery.</para>
|
||||
@ -105,7 +105,7 @@ $ git add pkgs/development/libraries/libfoo/default.nix</screen>
|
||||
|
||||
<listitem>
|
||||
<para>Thunderbird: <link
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix"><filename>pkgs/applications/networking/mailreaders/thunderbird/3.x.nix</filename></link>.
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/networking/mailreaders/thunderbird/default.nix"><filename>pkgs/applications/networking/mailreaders/thunderbird/default.nix</filename></link>.
|
||||
Lots of dependencies.</para>
|
||||
</listitem>
|
||||
|
||||
|
@ -1,27 +0,0 @@
|
||||
Adding uClibc support for a new platform
|
||||
|
||||
Sometimes you want to cross-compile to another architecture, for example an
|
||||
embedded devices. For embedded devices the uClibc C library is popular.
|
||||
In Nixpkgs there is support for uClibc for several architectures but not
|
||||
everything is supported.
|
||||
|
||||
Adding support is not very difficult,
|
||||
|
||||
* Add your architecture to the buildfiles in
|
||||
$nixpkgs/development/tools/misc/binutils-cross
|
||||
|
||||
* Add your architecture to the buildfiles in
|
||||
$nixpkgs/development/compilers/gcc-4.0-cross
|
||||
|
||||
* Add your architecture to the buildfiles in
|
||||
$nixpkgs/os-specific/linux/kernel-headers-cross
|
||||
|
||||
* Add your architecture to the buildfiles in
|
||||
$nixpkgs/development/uclibc
|
||||
|
||||
In the latter directory you will also need a configuration file for uClibc.
|
||||
You can make these by unpacking the uClibc sources and run a "make menuconfig".
|
||||
In the configuration a few things need to be adapted:
|
||||
|
||||
- kernel sources -> need to point at our own kernel headers
|
||||
- install -> needs to point at $out
|
@ -5,11 +5,11 @@
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "mopidy-${version}";
|
||||
|
||||
version = "0.14.2";
|
||||
version = "0.15.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mopidy/mopidy/archive/v${version}.tar.gz";
|
||||
sha256 = "0fqx7lk9g61d744b951cwx0szqbyji58dhw2ravnq9785nkhi7i4";
|
||||
sha256 = "1fpnddcx6343wgxzh10s035w21g8jmfh2kzgx32w0xsshpra3gn1";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
|
@ -1,44 +0,0 @@
|
||||
{ stdenv, fetchgit, pythonPackages, pygobject, gst_python
|
||||
, gst_plugins_good, gst_plugins_base
|
||||
}:
|
||||
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "mopidy-${version}";
|
||||
|
||||
version = "git-20130226";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/mopidy/mopidy.git";
|
||||
rev = "86a7c2d7519680c6b9130795d35c4654958f4c04";
|
||||
sha256 = "00fxcfkpl19nslv4f4bspzw0kvjjp6hhcwag7rknmb8scfinqfac";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
gst_python pygobject pykka pyspotify pylast cherrypy ws4py
|
||||
];
|
||||
|
||||
# python zip complains about old timestamps
|
||||
preConfigure = ''
|
||||
find -print0 | xargs -0 touch
|
||||
'';
|
||||
|
||||
# There are no tests
|
||||
doCheck = false;
|
||||
|
||||
postInstall = ''
|
||||
for p in $out/bin/mopidy $out/bin/mopidy-scan; do
|
||||
wrapProgram $p \
|
||||
--prefix GST_PLUGIN_PATH : ${gst_plugins_good}/lib/gstreamer-0.10 \
|
||||
--prefix GST_PLUGIN_PATH : ${gst_plugins_base}/lib/gstreamer-0.10
|
||||
done
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://www.mopidy.com/;
|
||||
description = ''
|
||||
A music server which can play music from Spotify and from your
|
||||
local hard drive.
|
||||
'';
|
||||
maintainers = [ stdenv.lib.maintainers.rickynils ];
|
||||
};
|
||||
}
|
27
pkgs/applications/audio/mpc/default.nix
Executable file
27
pkgs/applications/audio/mpc/default.nix
Executable file
@ -0,0 +1,27 @@
|
||||
{ stdenv, fetchurl, mpd_clientlib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.23";
|
||||
name = "mpc-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.musicpd.org/download/mpc/0/${name}.tar.bz2";
|
||||
sha256 = "1ir96wfgq5qfdd2s06zfycv38g3bhn3bpndwx9hwf1w507rvifi9";
|
||||
};
|
||||
|
||||
buildInputs = [ mpd_clientlib ];
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
export LIBMPDCLIENT_LIBS=${mpd_clientlib}/lib/libmpdclient.so.${mpd_clientlib.majorVersion}.0.${mpd_clientlib.minorVersion}
|
||||
export LIBMPDCLIENT_CFLAGS=${mpd_clientlib}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A minimalist command line interface to MPD";
|
||||
homepage = http://www.musicpd.org/clients/mpc/;
|
||||
license = "GPL2";
|
||||
maintainers = [ stdenv.lib.maintainers.algorith ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
16
pkgs/applications/audio/rubyripper/default.nix
Normal file
16
pkgs/applications/audio/rubyripper/default.nix
Normal file
@ -0,0 +1,16 @@
|
||||
{ stdenv, fetchurl, ruby, cdparanoia, makeWrapper }:
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.6.2";
|
||||
name = "rubyripper-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://rubyripper.googlecode.com/files/rubyripper-${version}.tar.bz2";
|
||||
sha256 = "1fwyk3y0f45l2vi3a481qd7drsy82ccqdb8g2flakv58m45q0yl1";
|
||||
};
|
||||
configureFlags = [ "--enable-cli" ];
|
||||
buildInputs = [ ruby cdparanoia makeWrapper ];
|
||||
postInstall = ''
|
||||
wrapProgram "$out/bin/rrip_cli" \
|
||||
--prefix PATH : "${ruby}/bin" \
|
||||
--prefix PATH : "${cdparanoia}/bin"
|
||||
'';
|
||||
}
|
48
pkgs/applications/editors/aseprite/default.nix
Normal file
48
pkgs/applications/editors/aseprite/default.nix
Normal file
@ -0,0 +1,48 @@
|
||||
{ stdenv, fetchurl, cmake, pkgconfig
|
||||
, giflib, libjpeg, zlib, libpng, tinyxml, allegro
|
||||
, libX11, libXext, libXcursor, libXpm, libXxf86vm, libXxf86dga
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "aseprite-0.9.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://aseprite.googlecode.com/files/${name}.tar.xz";
|
||||
sha256 = "0m7i6ybj2bym4w9rybacnnaaq2jjn76vlpbp932xcclakl6kdq41";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
cmake pkgconfig
|
||||
giflib libjpeg zlib libpng tinyxml allegro
|
||||
libX11 libXext libXcursor libXpm libXxf86vm libXxf86dga
|
||||
];
|
||||
|
||||
patchPhase = ''
|
||||
sed -i '/^find_unittests/d' src/CMakeLists.txt
|
||||
sed -i '/include_directories(.*third_party\/gtest.*)/d' src/CMakeLists.txt
|
||||
sed -i '/add_subdirectory(gtest)/d' third_party/CMakeLists.txt
|
||||
sed -i 's/png_\(sizeof\)/\1/g' src/file/png_format.cpp
|
||||
'';
|
||||
|
||||
cmakeFlags = ''
|
||||
-DUSE_SHARED_GIFLIB=ON
|
||||
-DUSE_SHARED_JPEGLIB=ON
|
||||
-DUSE_SHARED_ZLIB=ON
|
||||
-DUSE_SHARED_LIBPNG=ON
|
||||
-DUSE_SHARED_LIBLOADPNG=ON
|
||||
-DUSE_SHARED_TINYXML=ON
|
||||
-DUSE_SHARED_GTEST=ON
|
||||
-DUSE_SHARED_ALLEGRO4=ON
|
||||
-DENABLE_UPDATER=OFF
|
||||
'';
|
||||
|
||||
NIX_LDFLAGS = "-lX11";
|
||||
|
||||
meta = {
|
||||
description = "Animated sprite editor & pixel art tool";
|
||||
homepage = "http://www.aseprite.org/";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with stdenv.lib.maintainers; [iyzsong];
|
||||
};
|
||||
}
|
@ -1,11 +1,11 @@
|
||||
{ fetchurl, stdenv, emacs, texinfo, which, texLive }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "org-7.9.1";
|
||||
name = "org-8.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://orgmode.org/${name}.tar.gz";
|
||||
sha256 = "0kz1dnzfpmmslwal150z9rxrnddjpaw2glx26qihpxzs0zzpw201";
|
||||
sha256 = "625e2b6786158bcf6c43194075f7638ab8048c68a60025289a051c407e467823";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
@ -2,7 +2,6 @@
|
||||
, fetchurl
|
||||
, bzip2
|
||||
, freetype
|
||||
, graphviz
|
||||
, ghostscript ? null
|
||||
, libjpeg
|
||||
, libpng
|
||||
@ -27,6 +26,8 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1bpj8676mph5cvyjsdgf27i6yg2iw9iskk5c69mvpxkyawgjw1vg";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preConfigure = if tetex != null then
|
||||
''
|
||||
export DVIDecodeDelegate=${tetex}/bin/dvips
|
||||
@ -42,9 +43,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
propagatedBuildInputs =
|
||||
[ bzip2 freetype libjpeg libpng libtiff libxml2 zlib librsvg
|
||||
libtool jasper libX11 ] ++ stdenv.lib.optional (ghostscript != null && stdenv.system != "x86_64-darwin") ghostscript;
|
||||
libtool jasper libX11
|
||||
] ++ stdenv.lib.optional (ghostscript != null && stdenv.system != "x86_64-darwin") ghostscript;
|
||||
|
||||
buildInputs = [ tetex graphviz ];
|
||||
buildInputs = [ tetex ];
|
||||
|
||||
postInstall = ''(cd "$out/include" && ln -s ImageMagick* ImageMagick)'';
|
||||
|
||||
|
@ -1,19 +1,20 @@
|
||||
{ stdenv, fetchurl
|
||||
{ stdenv, fetchurl, libsoup, graphicsmagick, SDL, json_glib
|
||||
, GConf, atk, cairo, cmake, curl, dbus_glib, exiv2, glib
|
||||
, libgnome_keyring, gphoto2, gtk, ilmbase, intltool, lcms, lcms2
|
||||
, libgnome_keyring, gtk, ilmbase, intltool, lcms, lcms2
|
||||
, lensfun, libXau, libXdmcp, libexif, libglade, libgphoto2, libjpeg
|
||||
, libpng, libpthreadstubs, libraw1394, librsvg, libtiff, libxcb
|
||||
, openexr, pixman, pkgconfig, sqlite, bash, libxslt }:
|
||||
, openexr, pixman, pkgconfig, sqlite, bash, libxslt, openjpeg
|
||||
, mesa }:
|
||||
|
||||
assert stdenv ? glibc;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.2.2";
|
||||
version = "1.2.3";
|
||||
name = "darktable-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/darktable/darktable/1.2/darktable-${version}.tar.xz";
|
||||
sha256 = "0nf85wjhlisbgwkfkc1wb8y7dpnx3v8zk9g3ghbd51gi7s62x40j";
|
||||
sha256 = "05kkkz13a5rhb246rq1nxv7h91pcvm15filvik8n8gn143h64sv8";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
@ -21,6 +22,7 @@ stdenv.mkDerivation rec {
|
||||
ilmbase intltool lcms lcms2 lensfun libXau libXdmcp libexif
|
||||
libglade libgphoto2 libjpeg libpng libpthreadstubs libraw1394
|
||||
librsvg libtiff libxcb openexr pixman pkgconfig sqlite libxslt
|
||||
libsoup graphicsmagick SDL json_glib openjpeg mesa
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
@ -30,16 +32,16 @@ stdenv.mkDerivation rec {
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${atk}/include/atk-1.0"
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${ilmbase}/include/OpenEXR"
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${openexr}/include/OpenEXR"
|
||||
|
||||
substituteInPlace tools/create_preferences.sh.in --replace '#!/usr/bin/env bash' '#!${bash}/bin/bash'
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
"-DPTHREAD_INCLUDE_DIR=${stdenv.glibc}/include"
|
||||
"-DPTHREAD_LIBRARY=${stdenv.glibc}/lib/libpthread.so"
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DBINARY_PACKAGE_BUILD=1"
|
||||
"-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib}/lib/glib-2.0/include"
|
||||
"-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk}/lib/gtk-2.0/include"
|
||||
"-DBUILD_USERMANUAL=False"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
@ -47,6 +49,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://darktable.sourceforge.net;
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.goibhniu ];
|
||||
maintainers = [ maintainers.goibhniu maintainers.rickynils ];
|
||||
};
|
||||
}
|
||||
|
@ -1,9 +1,8 @@
|
||||
{ stdenv, fetchurl, qt4, bison, flex, eigen, boost, mesa, glew, opencsg, cgal
|
||||
, mpfr, gmp
|
||||
}:
|
||||
, mpfr, gmp }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2013.01";
|
||||
version = "2013.06";
|
||||
name = "openscad-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
@ -35,9 +34,8 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = "http://openscad.org/";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = with stdenv.lib.platforms;
|
||||
linux;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with stdenv.lib.maintainers;
|
||||
[raskin bjornfor];
|
||||
[ bjornfor raskin the-kenny ];
|
||||
};
|
||||
}
|
||||
|
@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
udevSupport = hotplugSupport;
|
||||
|
||||
configureFlags = stdenv.lib.optional (libusb != null) "--enable-libusb_1_0";
|
||||
|
||||
buildInputs = []
|
||||
++ stdenv.lib.optional (libusb != null) libusb
|
||||
++ stdenv.lib.optional (libv4l != null) libv4l
|
||||
|
34
pkgs/applications/misc/fbreader/default.nix
Normal file
34
pkgs/applications/misc/fbreader/default.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ stdenv, fetchurl, pkgconfig, bzip2, curl, expat, fribidi
|
||||
, libunibreak, qt4, sqlite, zlib }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "fbreader-0.99.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://fbreader.org/files/desktop/fbreader-sources-0.99.4.tgz;
|
||||
sha256 = "1sdq3vvwkq4bkyrvh0p884d66gaddz8hlab3m798ji9ixbak2z1x";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig bzip2 curl expat fribidi libunibreak
|
||||
qt4 sqlite zlib
|
||||
];
|
||||
|
||||
makeFlags = "INSTALLDIR=$(out)";
|
||||
|
||||
patchPhase = ''
|
||||
# don't try to use ccache
|
||||
substituteInPlace makefiles/arch/desktop.mk \
|
||||
--replace "CCACHE = " "# CCACHE = "
|
||||
|
||||
substituteInPlace fbreader/desktop/Makefile \
|
||||
--replace "/usr/share" "$out/share"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "An e-book reader for Linux";
|
||||
homepage = http://www.fbreader.org/;
|
||||
license = "GPL";
|
||||
maintainer = [ stdenv.lib.maintainers.coroa ];
|
||||
};
|
||||
}
|
@ -24,7 +24,7 @@ stdenv.mkDerivation (rec {
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
configureFlags="--with-terminfo=$out/share/terminfo ${if perlSupport then "--enable-perl" else "--disable-perl"}";
|
||||
configureFlags="--with-terminfo=$out/share/terminfo --enable-256-color ${if perlSupport then "--enable-perl" else "--disable-perl"}";
|
||||
export TERMINFO=$out/share/terminfo # without this the terminfo won't be compiled by tic, see man tic
|
||||
NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${freetype}/include/freetype2"
|
||||
NIX_LDFLAGS="$NIX_LDFLAGS -lfontconfig -lXrender "
|
||||
|
@ -7,8 +7,8 @@
|
||||
, xdg_utils, yasm, zlib
|
||||
, libusb1, libexif, pciutils
|
||||
|
||||
, python, perl, pkgconfig
|
||||
, nspr, udev, krb5
|
||||
, python, pythonPackages, perl, pkgconfig
|
||||
, nspr, udev, krb5, file
|
||||
, utillinux, alsaLib
|
||||
, gcc, bison, gperf
|
||||
, glib, gtk, dbus_glib
|
||||
@ -18,9 +18,6 @@
|
||||
# optional dependencies
|
||||
, libgcrypt ? null # gnomeSupport || cupsSupport
|
||||
|
||||
# dependency for version 30
|
||||
, file
|
||||
|
||||
# package customization
|
||||
, channel ? "stable"
|
||||
, enableSELinux ? false, libselinux ? null
|
||||
@ -36,7 +33,65 @@
|
||||
with stdenv.lib;
|
||||
|
||||
let
|
||||
sourceInfo = builtins.getAttr channel (import ./sources.nix);
|
||||
src = with getAttr channel (import ./sources.nix); stdenv.mkDerivation {
|
||||
name = "chromium-source-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
inherit url sha256;
|
||||
};
|
||||
|
||||
phases = [ "unpackPhase" "patchPhase" "installPhase" ];
|
||||
|
||||
opensslPatches = optional useOpenSSL openssl.patches;
|
||||
|
||||
prePatch = "patchShebangs .";
|
||||
|
||||
patches = singleton (
|
||||
if versionOlder version "31.0.0.0"
|
||||
then ./sandbox_userns_30.patch
|
||||
else ./sandbox_userns_31.patch
|
||||
);
|
||||
|
||||
postPatch = ''
|
||||
sed -i -r -e 's/-f(stack-protector)(-all)?/-fno-\1/' build/common.gypi
|
||||
sed -i -e 's|/usr/bin/gcc|gcc|' third_party/WebKit/Source/core/core.gypi
|
||||
'' + optionalString useOpenSSL ''
|
||||
cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
|
||||
'';
|
||||
|
||||
outputs = [ "out" "sandbox" "bundled" "main" ];
|
||||
installPhase = ''
|
||||
ensureDir "$out" "$sandbox" "$bundled" "$main"
|
||||
|
||||
header "copying browser main sources to $main"
|
||||
find . -mindepth 1 -maxdepth 1 \
|
||||
\! -path ./sandbox \
|
||||
\! -path ./third_party \
|
||||
\! -path ./build \
|
||||
\! -path ./tools \
|
||||
\! -name '.*' \
|
||||
-print | xargs cp -rt "$main"
|
||||
stopNest
|
||||
|
||||
header "copying sandbox components to $sandbox"
|
||||
cp -rt "$sandbox" sandbox/*
|
||||
stopNest
|
||||
|
||||
header "copying third party sources to $bundled"
|
||||
cp -rt "$bundled" third_party/*
|
||||
stopNest
|
||||
|
||||
header "copying build requisites to $out"
|
||||
cp -rt "$out" build tools
|
||||
stopNest
|
||||
|
||||
rm -rf "$out/tools/gyp" # XXX: Don't even copy it in the first place.
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
inherit version;
|
||||
};
|
||||
};
|
||||
|
||||
mkGypFlags =
|
||||
let
|
||||
@ -81,29 +136,22 @@ let
|
||||
libusb1 libexif
|
||||
];
|
||||
|
||||
sandbox = import ./sandbox.nix {
|
||||
inherit stdenv;
|
||||
src = src.sandbox;
|
||||
binary = "${packageName}_sandbox";
|
||||
};
|
||||
|
||||
# build paths and release info
|
||||
packageName = "chromium";
|
||||
buildType = "Release";
|
||||
buildPath = "out/${buildType}";
|
||||
libExecPath = "$out/libexec/${packageName}";
|
||||
|
||||
# user namespace sandbox patch
|
||||
userns_patch = if versionOlder sourceInfo.version "30.0.0.0"
|
||||
then ./sandbox_userns_29.patch
|
||||
else if versionOlder sourceInfo.version "31.0.0.0"
|
||||
then ./sandbox_userns_30.patch
|
||||
else ./sandbox_userns_31.patch;
|
||||
sandboxPath = "${sandbox}/bin/${packageName}_sandbox";
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${packageName}-${version}";
|
||||
inherit packageName;
|
||||
|
||||
version = sourceInfo.version;
|
||||
|
||||
src = fetchurl {
|
||||
url = sourceInfo.url;
|
||||
sha256 = sourceInfo.sha256;
|
||||
};
|
||||
name = "${packageName}-${src.version}";
|
||||
inherit packageName src;
|
||||
|
||||
buildInputs = defaultDependencies ++ [
|
||||
which makeWrapper
|
||||
@ -112,32 +160,31 @@ in stdenv.mkDerivation rec {
|
||||
(if useOpenSSL then openssl else nss)
|
||||
utillinux alsaLib
|
||||
gcc bison gperf
|
||||
krb5
|
||||
krb5 file
|
||||
glib gtk dbus_glib
|
||||
libXScrnSaver libXcursor libXtst mesa
|
||||
pciutils protobuf speechd libXdamage
|
||||
pythonPackages.gyp
|
||||
] ++ optional gnomeKeyringSupport libgnome_keyring
|
||||
++ optionals gnomeSupport [ gconf libgcrypt ]
|
||||
++ optional enableSELinux libselinux
|
||||
++ optional cupsSupport libgcrypt
|
||||
++ optional pulseSupport pulseaudio
|
||||
++ optional (!versionOlder sourceInfo.version "30.0.0.0") file;
|
||||
++ optional pulseSupport pulseaudio;
|
||||
|
||||
opensslPatches = optional useOpenSSL openssl.patches;
|
||||
|
||||
prePatch = "patchShebangs .";
|
||||
|
||||
patches = [ userns_patch ];
|
||||
prePatch = ''
|
||||
# XXX: Figure out a way how to split these properly.
|
||||
#cpflags="-dsr --no-preserve=mode"
|
||||
cpflags="-dr"
|
||||
cp $cpflags "${src.main}"/* .
|
||||
cp $cpflags "${src.bundled}" third_party
|
||||
cp $cpflags "${src.sandbox}" sandbox
|
||||
chmod -R u+w . # XXX!
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
sed -i -r -e 's/-f(stack-protector)(-all)?/-fno-\1/' build/common.gypi
|
||||
sed -i -e 's|/usr/bin/gcc|gcc|' third_party/WebKit/Source/core/core.gypi
|
||||
'' + optionalString useOpenSSL ''
|
||||
cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
|
||||
'' + optionalString (!versionOlder sourceInfo.version "30.0.0.0") ''
|
||||
sed -i -e '/base::FilePath exe_dir/,/^ *} *$/c \
|
||||
sandbox_binary = \
|
||||
base::FilePath("'"${libExecPath}/${packageName}_sandbox"'");
|
||||
base::FilePath("'"${sandboxPath}"'");
|
||||
' content/browser/browser_main_loop.cc
|
||||
'';
|
||||
|
||||
@ -153,7 +200,7 @@ in stdenv.mkDerivation rec {
|
||||
use_openssl = useOpenSSL;
|
||||
selinux = enableSELinux;
|
||||
use_cups = cupsSupport;
|
||||
linux_sandbox_path="${libExecPath}/${packageName}_sandbox";
|
||||
linux_sandbox_path="${sandboxPath}";
|
||||
linux_sandbox_chrome_path="${libExecPath}/${packageName}";
|
||||
werror = "";
|
||||
|
||||
@ -175,7 +222,7 @@ in stdenv.mkDerivation rec {
|
||||
});
|
||||
|
||||
configurePhase = ''
|
||||
GYP_GENERATORS=ninja python build/gyp_chromium --depth "$(pwd)" ${gypFlags}
|
||||
python build/gyp_chromium -f ninja --depth "$(pwd)" ${gypFlags}
|
||||
'';
|
||||
|
||||
buildPhase = let
|
||||
@ -185,13 +232,13 @@ in stdenv.mkDerivation rec {
|
||||
CC="${CC}" CC_host="${CC}" \
|
||||
CXX="${CXX}" CXX_host="${CXX}" \
|
||||
LINK_host="${CXX}" \
|
||||
"${ninja}/bin/ninja" -C "out/${buildType}" \
|
||||
"${ninja}/bin/ninja" -C "${buildPath}" \
|
||||
-j$NIX_BUILD_CORES -l$NIX_BUILD_CORES \
|
||||
chrome ${optionalString (!enableSELinux) "chrome_sandbox"}
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -vp "${libExecPath}"
|
||||
ensureDir "${libExecPath}"
|
||||
cp -v "${buildPath}/"*.pak "${libExecPath}/"
|
||||
cp -vR "${buildPath}/locales" "${buildPath}/resources" "${libExecPath}/"
|
||||
cp -v ${buildPath}/libffmpegsumo.so "${libExecPath}/"
|
||||
@ -200,7 +247,6 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
mkdir -vp "$out/bin"
|
||||
makeWrapper "${libExecPath}/${packageName}" "$out/bin/${packageName}"
|
||||
cp -v "${buildPath}/chrome_sandbox" "${libExecPath}/${packageName}_sandbox"
|
||||
|
||||
mkdir -vp "$out/share/man/man1"
|
||||
cp -v "${buildPath}/chrome.1" "$out/share/man/man1/${packageName}.1"
|
||||
@ -216,6 +262,10 @@ in stdenv.mkDerivation rec {
|
||||
done
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
inherit sandbox;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "An open source web browser from Google";
|
||||
homepage = http://www.chromium.org/;
|
||||
|
20
pkgs/applications/networking/browsers/chromium/sandbox.nix
Normal file
20
pkgs/applications/networking/browsers/chromium/sandbox.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{ stdenv, src, binary }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "chromium-sandbox-${src.version}";
|
||||
inherit src;
|
||||
|
||||
patchPhase = ''
|
||||
sed -i -e '/#include.*base_export/c \
|
||||
#define BASE_EXPORT __attribute__((visibility("default")))
|
||||
' linux/suid/*.[hc]
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
gcc -Wall -std=gnu99 -o sandbox linux/suid/*.c
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -svD sandbox "$out/bin/${binary}"
|
||||
'';
|
||||
}
|
@ -1,287 +0,0 @@
|
||||
commit 557daf9cc9c02b8f17e6ee84f9b1ae6e6132d478
|
||||
Author: aszlig <aszlig@redmoonstudios.org>
|
||||
Date: Thu May 16 14:17:56 2013 +0200
|
||||
|
||||
zygote: Add support for user namespaces on Linux.
|
||||
|
||||
The implementation is done by patching the Zygote host to execute the sandbox
|
||||
binary with CLONE_NEWUSER and setting the uid and gid mapping so that the child
|
||||
process is using uid 0 and gid 0 which map to the current user of the parent.
|
||||
Afterwards, the sandbox will continue as if it was called as a setuid binary.
|
||||
|
||||
In addition, this adds new_user_namespace as an option in process_util in order
|
||||
to set the UID and GID mapping correctly. The reason for this is that just
|
||||
passing CLONE_NEWUSER to clone_flags doesn't help in LaunchProcess(), because
|
||||
without setting the mappings exec*() will clear the process's capability sets.
|
||||
|
||||
If the kernel doesn't support unprivileged user namespaces and the sandbox
|
||||
binary doesn't have the setuid flag, the Zygote main process will run without a
|
||||
sandbox. This is to mimic the behaviour if no SUID sandbox binary path is set.
|
||||
|
||||
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
||||
|
||||
diff --git a/base/process_util.h b/base/process_util.h
|
||||
index 0bec8e0..6b6f566 100644
|
||||
--- a/base/process_util.h
|
||||
+++ b/base/process_util.h
|
||||
@@ -175,6 +175,7 @@ struct LaunchOptions {
|
||||
new_process_group(false)
|
||||
#if defined(OS_LINUX)
|
||||
, clone_flags(0)
|
||||
+ , new_user_namespace(false)
|
||||
#endif // OS_LINUX
|
||||
#if defined(OS_CHROMEOS)
|
||||
, ctrl_terminal_fd(-1)
|
||||
@@ -249,6 +250,9 @@ struct LaunchOptions {
|
||||
#if defined(OS_LINUX)
|
||||
// If non-zero, start the process using clone(), using flags as provided.
|
||||
int clone_flags;
|
||||
+
|
||||
+ // If true, start the process in a new user namespace.
|
||||
+ bool new_user_namespace;
|
||||
#endif // defined(OS_LINUX)
|
||||
|
||||
#if defined(OS_CHROMEOS)
|
||||
diff --git a/base/process_util_posix.cc b/base/process_util_posix.cc
|
||||
index 83afe44..e529b2b 100644
|
||||
--- a/base/process_util_posix.cc
|
||||
+++ b/base/process_util_posix.cc
|
||||
@@ -34,6 +34,13 @@
|
||||
#include "base/threading/platform_thread.h"
|
||||
#include "base/threading/thread_restrictions.h"
|
||||
|
||||
+#if defined(OS_LINUX)
|
||||
+#include <sched.h>
|
||||
+#if !defined(CLONE_NEWUSER)
|
||||
+#define CLONE_NEWUSER 0x10000000
|
||||
+#endif
|
||||
+#endif
|
||||
+
|
||||
#if defined(OS_CHROMEOS)
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
@@ -621,8 +628,19 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
|
||||
pid_t pid;
|
||||
#if defined(OS_LINUX)
|
||||
- if (options.clone_flags) {
|
||||
- pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0);
|
||||
+ int map_pipe_fd[2];
|
||||
+ int flags = options.clone_flags;
|
||||
+
|
||||
+ if (options.new_user_namespace) {
|
||||
+ flags |= CLONE_NEWUSER;
|
||||
+ if (pipe(map_pipe_fd) < 0) {
|
||||
+ DPLOG(ERROR) << "user namespace pipe";
|
||||
+ return false;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (options.clone_flags || options.new_user_namespace) {
|
||||
+ pid = syscall(__NR_clone, flags, 0, 0, 0);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
@@ -635,6 +653,21 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
} else if (pid == 0) {
|
||||
// Child process
|
||||
|
||||
+#if defined(OS_LINUX)
|
||||
+ if (options.new_user_namespace) {
|
||||
+ // Close the write end of the pipe so we get an EOF when the parent closes
|
||||
+ // the FD. This is to avoid race conditions when the UID/GID mappings are
|
||||
+ // written _after_ execvp().
|
||||
+ close(map_pipe_fd[1]);
|
||||
+
|
||||
+ char dummy;
|
||||
+ if (HANDLE_EINTR(read(map_pipe_fd[0], &dummy, 1)) != 0) {
|
||||
+ RAW_LOG(ERROR, "Unexpected input in uid/gid mapping pipe.");
|
||||
+ _exit(127);
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
// DANGER: fork() rule: in the child, if you don't end up doing exec*(),
|
||||
// you call _exit() instead of exit(). This is because _exit() does not
|
||||
// call any previously-registered (in the parent) exit handlers, which
|
||||
@@ -749,6 +782,40 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
_exit(127);
|
||||
} else {
|
||||
// Parent process
|
||||
+#if defined(OS_LINUX)
|
||||
+ if (options.new_user_namespace) {
|
||||
+ // We need to write UID/GID mapping here to map the current user outside
|
||||
+ // the namespace to the root user inside the namespace in order to
|
||||
+ // correctly "fool" the child process.
|
||||
+ char buf[256];
|
||||
+ int map_fd, map_len;
|
||||
+
|
||||
+ snprintf(buf, sizeof(buf), "/proc/%d/uid_map", pid);
|
||||
+ map_fd = open(buf, O_RDWR);
|
||||
+ DPCHECK(map_fd >= 0);
|
||||
+ snprintf(buf, sizeof(buf), "0 %d 1", geteuid());
|
||||
+ map_len = strlen(buf);
|
||||
+ if (write(map_fd, buf, map_len) != map_len) {
|
||||
+ RAW_LOG(WARNING, "Can't write to uid_map.");
|
||||
+ }
|
||||
+ close(map_fd);
|
||||
+
|
||||
+ snprintf(buf, sizeof(buf), "/proc/%d/gid_map", pid);
|
||||
+ map_fd = open(buf, O_RDWR);
|
||||
+ DPCHECK(map_fd >= 0);
|
||||
+ snprintf(buf, sizeof(buf), "0 %d 1", getegid());
|
||||
+ map_len = strlen(buf);
|
||||
+ if (write(map_fd, buf, map_len) != map_len) {
|
||||
+ RAW_LOG(WARNING, "Can't write to gid_map.");
|
||||
+ }
|
||||
+ close(map_fd);
|
||||
+
|
||||
+ // Close the pipe on the parent, so the child can continue doing the
|
||||
+ // execvp() call.
|
||||
+ close(map_pipe_fd[1]);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
if (options.wait) {
|
||||
// While this isn't strictly disk IO, waiting for another process to
|
||||
// finish is the sort of thing ThreadRestrictions is trying to prevent.
|
||||
diff --git a/content/browser/zygote_host/zygote_host_impl_linux.cc b/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
index 130f44a..c1232d4 100644
|
||||
--- a/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
+++ b/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
@@ -118,25 +118,31 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
|
||||
|
||||
sandbox_binary_ = sandbox_cmd.c_str();
|
||||
|
||||
- // A non empty sandbox_cmd means we want a SUID sandbox.
|
||||
- using_suid_sandbox_ = !sandbox_cmd.empty();
|
||||
+ bool userns_sandbox = false;
|
||||
+ const std::vector<std::string> cmd_line_unwrapped(cmd_line.argv());
|
||||
|
||||
- if (using_suid_sandbox_) {
|
||||
+ if (!sandbox_cmd.empty()) {
|
||||
struct stat st;
|
||||
if (stat(sandbox_binary_.c_str(), &st) != 0) {
|
||||
LOG(FATAL) << "The SUID sandbox helper binary is missing: "
|
||||
<< sandbox_binary_ << " Aborting now.";
|
||||
}
|
||||
|
||||
- if (access(sandbox_binary_.c_str(), X_OK) == 0 &&
|
||||
- (st.st_uid == 0) &&
|
||||
- (st.st_mode & S_ISUID) &&
|
||||
- (st.st_mode & S_IXOTH)) {
|
||||
+ if (access(sandbox_binary_.c_str(), X_OK) == 0) {
|
||||
+ using_suid_sandbox_ = true;
|
||||
+
|
||||
cmd_line.PrependWrapper(sandbox_binary_);
|
||||
|
||||
scoped_ptr<sandbox::SetuidSandboxClient>
|
||||
sandbox_client(sandbox::SetuidSandboxClient::Create());
|
||||
sandbox_client->SetupLaunchEnvironment();
|
||||
+
|
||||
+ if (!((st.st_uid == 0) &&
|
||||
+ (st.st_mode & S_ISUID) &&
|
||||
+ (st.st_mode & S_IXOTH))) {
|
||||
+ userns_sandbox = true;
|
||||
+ sandbox_client->SetNoSuid();
|
||||
+ }
|
||||
} else {
|
||||
LOG(FATAL) << "The SUID sandbox helper binary was found, but is not "
|
||||
"configured correctly. Rather than run without sandboxing "
|
||||
@@ -160,7 +166,19 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
|
||||
base::ProcessHandle process = -1;
|
||||
base::LaunchOptions options;
|
||||
options.fds_to_remap = &fds_to_map;
|
||||
+ if (userns_sandbox)
|
||||
+ options.new_user_namespace = true;
|
||||
base::LaunchProcess(cmd_line.argv(), options, &process);
|
||||
+
|
||||
+ if (process == -1 && userns_sandbox) {
|
||||
+ LOG(ERROR) << "User namespace sandbox failed to start, running without "
|
||||
+ << "sandbox! You need at least kernel 3.8.0 with CONFIG_USER_NS "
|
||||
+ << "enabled in order to use the sandbox without setuid bit.";
|
||||
+ using_suid_sandbox_ = false;
|
||||
+ options.new_user_namespace = false;
|
||||
+ base::LaunchProcess(cmd_line_unwrapped, options, &process);
|
||||
+ }
|
||||
+
|
||||
CHECK(process != -1) << "Failed to launch zygote process";
|
||||
|
||||
if (using_suid_sandbox_) {
|
||||
diff --git a/content/zygote/zygote_main_linux.cc b/content/zygote/zygote_main_linux.cc
|
||||
index 7d01722..2f445ef 100644
|
||||
--- a/content/zygote/zygote_main_linux.cc
|
||||
+++ b/content/zygote/zygote_main_linux.cc
|
||||
@@ -395,6 +395,13 @@ static bool EnterSandbox(sandbox::SetuidSandboxClient* setuid_sandbox,
|
||||
*has_started_new_init = true;
|
||||
}
|
||||
|
||||
+ // Don't set non-dumpable, as it causes trouble when the host tries to find
|
||||
+ // the zygote process (XXX: Not quite sure why this happens with user
|
||||
+ // namespaces). Fortunately, we also have the seccomp filter sandbox which
|
||||
+ // should disallow the use of ptrace.
|
||||
+ if (setuid_sandbox->IsNoSuid())
|
||||
+ return true;
|
||||
+
|
||||
#if !defined(OS_OPENBSD)
|
||||
// Previously, we required that the binary be non-readable. This causes the
|
||||
// kernel to mark the process as non-dumpable at startup. The thinking was
|
||||
diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
index 34231d4..36e3201 100644
|
||||
--- a/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
@@ -166,6 +166,10 @@ bool SetuidSandboxClient::IsInNewNETNamespace() const {
|
||||
return env_->HasVar(kSandboxNETNSEnvironmentVarName);
|
||||
}
|
||||
|
||||
+bool SetuidSandboxClient::IsNoSuid() const {
|
||||
+ return env_->HasVar(kSandboxNoSuidVarName);
|
||||
+}
|
||||
+
|
||||
bool SetuidSandboxClient::IsSandboxed() const {
|
||||
return sandboxed_;
|
||||
}
|
||||
@@ -175,5 +179,9 @@ void SetuidSandboxClient::SetupLaunchEnvironment() {
|
||||
SetSandboxAPIEnvironmentVariable(env_);
|
||||
}
|
||||
|
||||
+void SetuidSandboxClient::SetNoSuid() {
|
||||
+ env_->SetVar(kSandboxNoSuidVarName, "1");
|
||||
+}
|
||||
+
|
||||
} // namespace sandbox
|
||||
|
||||
diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.h b/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
index a9f6536..2e8113a 100644
|
||||
--- a/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
+++ b/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
@@ -39,6 +39,8 @@ class SetuidSandboxClient {
|
||||
bool IsInNewPIDNamespace() const;
|
||||
// Did the setuid helper create a new network namespace ?
|
||||
bool IsInNewNETNamespace() const;
|
||||
+ // Is sandboxed without SUID binary ?
|
||||
+ bool IsNoSuid() const;
|
||||
// Are we done and fully sandboxed ?
|
||||
bool IsSandboxed() const;
|
||||
|
||||
@@ -46,6 +48,8 @@ class SetuidSandboxClient {
|
||||
// helper.
|
||||
void SetupLaunchEnvironment();
|
||||
|
||||
+ void SetNoSuid();
|
||||
+
|
||||
private:
|
||||
// Holds the environment. Will never be NULL.
|
||||
base::Environment* env_;
|
||||
diff --git a/sandbox/linux/suid/common/sandbox.h b/sandbox/linux/suid/common/sandbox.h
|
||||
index aad4ff8..bd710d5 100644
|
||||
--- a/sandbox/linux/suid/common/sandbox.h
|
||||
+++ b/sandbox/linux/suid/common/sandbox.h
|
||||
@@ -18,6 +18,7 @@ static const char kAdjustLowMemMarginSwitch[] = "--adjust-low-mem";
|
||||
|
||||
static const char kSandboxDescriptorEnvironmentVarName[] = "SBX_D";
|
||||
static const char kSandboxHelperPidEnvironmentVarName[] = "SBX_HELPER_PID";
|
||||
+static const char kSandboxNoSuidVarName[] = "SBX_NO_SUID";
|
||||
|
||||
static const long kSUIDSandboxApiNumber = 1;
|
||||
static const char kSandboxEnvironmentApiRequest[] = "SBX_CHROME_API_RQ";
|
@ -1,18 +1,18 @@
|
||||
# This file is autogenerated from update.sh in the same directory.
|
||||
{
|
||||
dev = {
|
||||
version = "31.0.1626.0";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-31.0.1626.0.tar.xz";
|
||||
sha256 = "15rbh8hjs9ipkl4c34701p1zpfmrsw6dya03a8ym5pa5dha949mp";
|
||||
version = "31.0.1650.4";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-31.0.1650.4.tar.xz";
|
||||
sha256 = "1i61izfn06ldxkgdrisdibbn5hrghyjslf81yszpw69k0z87k3lm";
|
||||
};
|
||||
beta = {
|
||||
version = "30.0.1599.37";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.37.tar.xz";
|
||||
sha256 = "05xxafl1dgbi040zmhzi5v5m6myi7c6jgq2nrksmrx2i91kfir2k";
|
||||
version = "30.0.1599.66";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.66.tar.xz";
|
||||
sha256 = "092ps4y4s544lswrqqk8qij5n7ax4bsfl5vdj5cwfncvsqpjds4g";
|
||||
};
|
||||
stable = {
|
||||
version = "29.0.1547.65";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.65.tar.xz";
|
||||
sha256 = "0vmb5dsh61jyr68838pnczlc2mhvvil4hjkrmwklzlfz30c8s2w6";
|
||||
version = "30.0.1599.66";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.66.tar.xz";
|
||||
sha256 = "092ps4y4s544lswrqqk8qij5n7ax4bsfl5vdj5cwfncvsqpjds4g";
|
||||
};
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
{ stdenv, coreutils, fetchurl, python, dropbox }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "dropbox-cli";
|
||||
# 1.6.0 because it's the only version mentioned in the script
|
||||
name = "dropbox-cli-1.6.0";
|
||||
|
||||
src = fetchurl {
|
||||
# Note: dropbox doesn't version this file. Annoying.
|
||||
@ -29,7 +30,7 @@ stdenv.mkDerivation {
|
||||
|
||||
meta = {
|
||||
homepage = http://dropbox.com;
|
||||
description = "Command line client for the dropbox daemon.";
|
||||
description = "Command line client for the dropbox daemon";
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
maintainers = with stdenv.lib.maintainers; [ the-kenny ];
|
||||
# NOTE: Dropbox itself only works on linux, so this is ok.
|
||||
|
@ -5,11 +5,11 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "R-3.0.1";
|
||||
name = "R-3.0.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp5.gwdg.de/pub/misc/cran/src/base/R-3/${name}.tar.gz";
|
||||
sha256 = "0d3iv382bsyz6ad5fk382x7sy3qzgpqvd0fw26r0648lyf54i45g";
|
||||
url = "http://cran.r-project.org/src/base/R-3/${name}.tar.gz";
|
||||
sha256 = "0jq2vk6bgksbvgmdjvv7vfj6llp091d0nhl5j825aya4c2nhavlm";
|
||||
};
|
||||
|
||||
buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt
|
||||
@ -55,6 +55,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
meta = {
|
||||
homepage = "http://www.r-project.org/";
|
||||
description = "a free software environment for statistical computing and graphics";
|
||||
|
5
pkgs/applications/science/math/R/setup-hook.sh
Normal file
5
pkgs/applications/science/math/R/setup-hook.sh
Normal file
@ -0,0 +1,5 @@
|
||||
addRLibPath () {
|
||||
addToSearchPath R_LIBS_SITE $1/library
|
||||
}
|
||||
|
||||
envHooks=(${envHooks[@]} addRLibPath)
|
@ -23,7 +23,7 @@ let
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
"Linux-x86-64"
|
||||
else
|
||||
abort "Mathematica requires i686-linux or x86_64 linux";
|
||||
throw "Mathematica requires i686-linux or x86_64 linux";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
|
40
pkgs/applications/science/math/pssp/default.nix
Normal file
40
pkgs/applications/science/math/pssp/default.nix
Normal file
@ -0,0 +1,40 @@
|
||||
{ stdenv, fetchurl, libxml2, readline, zlib, perl, cairo, gtk, gsl
|
||||
, pkgconfig, gtksourceview, pango, gettext, libglade
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pspp-0.8.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/pspp/${name}.tar.gz";
|
||||
sha256 = "0qhxsdbwxd3cn1shc13wxvx2lg32lp4z6sz24kv3jz7p5xfi8j7x";
|
||||
};
|
||||
|
||||
buildInputs = [ libxml2 readline zlib perl cairo gtk gsl pkgconfig
|
||||
gtksourceview pango gettext libglade ];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
homepage = "http://www.gnu.org/software/pspp/";
|
||||
description = "a free replacement for SPSS, a program for statistical analysis of sampled data";
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
|
||||
longDescription = ''
|
||||
PSPP is a program for statistical analysis of sampled data. It is
|
||||
a Free replacement for the proprietary program SPSS.
|
||||
|
||||
PSPP can perform descriptive statistics, T-tests, anova, linear
|
||||
and logistic regression, cluster analysis, factor analysis,
|
||||
non-parametric tests and more. Its backend is designed to perform
|
||||
its analyses as fast as possible, regardless of the size of the
|
||||
input data. You can use PSPP with its graphical interface or the
|
||||
more traditional syntax commands.
|
||||
'';
|
||||
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
}
|
38
pkgs/applications/science/math/speedcrunch/default.nix
Normal file
38
pkgs/applications/science/math/speedcrunch/default.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{ stdenv, fetchurl, qt, cmake }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "speedcrunch-0.11-alpha";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://speedcrunch.googlecode.com/files/${name}.tar.gz";
|
||||
sha256 = "c6d6328e0c018cd8b98a0e86fb6c49fedbab5dcc831b47fbbc1537730ff80882";
|
||||
};
|
||||
|
||||
patches = [./speedcrunch-0.11-alpha-dso_linking.patch];
|
||||
|
||||
buildInputs = [cmake qt];
|
||||
|
||||
dontUseCmakeBuildDir = true;
|
||||
|
||||
cmakeDir = "../src";
|
||||
|
||||
preConfigure = ''
|
||||
mkdir -p build
|
||||
cd build
|
||||
'';
|
||||
|
||||
buildFlags = "VERBOSE=1";
|
||||
|
||||
meta = {
|
||||
homepage = "http://speedcrunch.digitalfanatics.org";
|
||||
license = "GPLv2+";
|
||||
description = "A fast power user calculator";
|
||||
longDescription = ''
|
||||
SpeedCrunch is a fast, high precision and powerful desktop calculator.
|
||||
Among its distinctive features are a scrollable display, up to 50 decimal
|
||||
precisions, unlimited variable storage, intelligent automatic completion
|
||||
full keyboard-friendly and more than 15 built-in math function.
|
||||
'';
|
||||
};
|
||||
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
diff -up speedcrunch-0.11-alpha/src/CMakeLists.txt.dso_linking speedcrunch-0.11-alpha/src/CMakeLists.txt
|
||||
--- speedcrunch-0.11-alpha/src/CMakeLists.txt.dso_linking 2009-11-04 15:37:15.000000000 -0600
|
||||
+++ speedcrunch-0.11-alpha/src/CMakeLists.txt 2010-06-25 13:25:07.133460528 -0500
|
||||
@@ -54,6 +54,10 @@ ENDIF(CMAKE_COMPILER_IS_GNUCXX )
|
||||
SET(QT_USE_QTNETWORK TRUE)
|
||||
#SET(QT_USE_QTXML TRUE)
|
||||
find_package(Qt4 REQUIRED)
|
||||
+if (Q_WS_X11)
|
||||
+ find_package(X11 REQUIRED)
|
||||
+endif (Q_WS_X11)
|
||||
+
|
||||
include(${QT_USE_FILE})
|
||||
|
||||
# build everything
|
||||
@@ -80,7 +84,7 @@ ENDIF( APPLE )
|
||||
|
||||
ADD_CUSTOM_TARGET( confclean COMMAND rm -rf Makefile CMakeFiles/ CMakeCache.txt cmake_install.cmake DartTestfile.txt install_manifest.txt )
|
||||
|
||||
-TARGET_LINK_LIBRARIES(${PROGNAME} ${QT_LIBRARIES})
|
||||
+TARGET_LINK_LIBRARIES(${PROGNAME} ${QT_LIBRARIES} ${X11_X11_LIB} )
|
||||
# only needed for static builds when directx is enabled in qt and you
|
||||
# get a linker error because of missing a directx function
|
||||
#IF(WIN32)
|
@ -5,7 +5,8 @@ stdenv.mkDerivation {
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://repo.or.cz/fast-export.git";
|
||||
rev = "refs/heads/master";
|
||||
rev = "aaccfba";
|
||||
sha256 = "c9d1498e31d32b8271c1e651175794718611f93b4843dea569d831005de0a750";
|
||||
};
|
||||
|
||||
buildInputs = [mercurial.python mercurial makeWrapper subversion];
|
||||
@ -19,7 +20,6 @@ stdenv.mkDerivation {
|
||||
sed -i "s@/usr/bin/env.*@$(type -p python)@" *.py
|
||||
l=$out/libexec/git-fast-export
|
||||
mkdir -p $out/{bin,doc/git-fast-export} $l
|
||||
mv *.txt $out/doc/git-fast-export
|
||||
sed -i "s@ROOT=.*@ROOT=$l@" *.sh
|
||||
mv *.sh $out/bin
|
||||
mv *.py $l
|
||||
|
@ -1,35 +1,35 @@
|
||||
{ cabal, aeson, async, blazeBuilder, bloomfilter, bup
|
||||
, caseInsensitive, clientsession, cryptoApi, curl, dataDefault
|
||||
, dataenc, DAV, dbus, dlist, dns, editDistance
|
||||
, caseInsensitive, clientsession, cryptoApi, cryptohash, curl
|
||||
, dataDefault, dataenc, DAV, dbus, dlist, dns, editDistance
|
||||
, extensibleExceptions, feed, filepath, git, gnupg1, gnutls, hamlet
|
||||
, hinotify, hS3, hslogger, HTTP, httpConduit, httpTypes, HUnit
|
||||
, IfElse, json, lsof, MissingH, MonadCatchIOTransformers
|
||||
, monadControl, mtl, network, networkInfo, networkMulticast
|
||||
, networkProtocolXmpp, openssh, QuickCheck, random, regexTdfa
|
||||
, networkProtocolXmpp, openssh, perl, QuickCheck, random, regexTdfa
|
||||
, rsync, SafeSemaphore, SHA, stm, text, time, transformers
|
||||
, unixCompat, utf8String, uuid, wai, waiLogger, warp, which
|
||||
, xmlConduit, xmlTypes, yesod, yesodCore, yesodDefault, yesodForm
|
||||
, yesodStatic, fetchurl, perl
|
||||
, yesodStatic
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "git-annex";
|
||||
version = "4.20130909";
|
||||
sha256 = "0rqbaz4hqfv1nxks62bx282vsvv7vzaxxz1576wk93f659rd06jp";
|
||||
version = "4.20130927";
|
||||
sha256 = "0ycfdwqicmqfj5ygrk11z7cz2b28ccvb45ny8h5i0wr6mg3apj38";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
aeson async blazeBuilder bloomfilter caseInsensitive clientsession
|
||||
cryptoApi dataDefault dataenc DAV dbus dlist dns editDistance
|
||||
extensibleExceptions feed filepath gnutls hamlet hinotify hS3
|
||||
hslogger HTTP httpConduit httpTypes HUnit IfElse json MissingH
|
||||
MonadCatchIOTransformers monadControl mtl network networkInfo
|
||||
networkMulticast networkProtocolXmpp QuickCheck random regexTdfa
|
||||
SafeSemaphore SHA stm text time transformers unixCompat utf8String
|
||||
uuid wai waiLogger warp xmlConduit xmlTypes yesod yesodCore
|
||||
yesodDefault yesodForm yesodStatic
|
||||
cryptoApi cryptohash dataDefault dataenc DAV dbus dlist dns
|
||||
editDistance extensibleExceptions feed filepath gnutls hamlet
|
||||
hinotify hS3 hslogger HTTP httpConduit httpTypes HUnit IfElse json
|
||||
MissingH MonadCatchIOTransformers monadControl mtl network
|
||||
networkInfo networkMulticast networkProtocolXmpp QuickCheck random
|
||||
regexTdfa SafeSemaphore SHA stm text time transformers unixCompat
|
||||
utf8String uuid wai waiLogger warp xmlConduit xmlTypes yesod
|
||||
yesodCore yesodDefault yesodForm yesodStatic
|
||||
];
|
||||
buildTools = [ bup curl git gnupg1 lsof openssh rsync which perl ];
|
||||
buildTools = [ bup curl git gnupg1 lsof openssh perl rsync which ];
|
||||
configureFlags = "-fS3
|
||||
-fWebDAV
|
||||
-fInotify
|
||||
@ -42,18 +42,12 @@ cabal.mkDerivation (self: {
|
||||
-fProduction
|
||||
-fTDFA";
|
||||
preConfigure = "patchShebangs .";
|
||||
installPhase = "make PREFIX=$out CABAL=./Setup docs install";
|
||||
checkPhase = ''
|
||||
export HOME="$NIX_BUILD_TOP/tmp"
|
||||
mkdir "$HOME"
|
||||
cp dist/build/git-annex/git-annex git-annex
|
||||
./git-annex test
|
||||
'';
|
||||
patches = [ (fetchurl { url = "https://github.com/joeyh/git-annex/commit/e4d0b2f180627472b017af8bcfc2ae3fc04d6767.patch";
|
||||
sha256 = "08lz0zq5y3b3wgi1vbzka7kyihkhzjv02pmq8ab02674yrqrnr5k"; })
|
||||
(fetchurl { url = "https://github.com/joeyh/git-annex/commit/26baae8967d55d0793d0609475a75d265bdd64a3.patch";
|
||||
sha256 = "0yzgj55jjcqv1975bnj4wafyh4vdzjjn4ajx3wahsyg0gsrm5lpv"; })
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://git-annex.branchable.com/";
|
||||
description = "manage files with git, without checking their contents into git";
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
let
|
||||
|
||||
version = "1.8.3.4";
|
||||
version = "1.8.4";
|
||||
|
||||
svn = subversionClient.override { perlBindings = true; };
|
||||
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://git-core.googlecode.com/files/git-${version}.tar.gz";
|
||||
sha256 = "1nfr4hgqs3b6k9wanqcix0wlw71q61h5irxiavlspd4jvzrcv8nz";
|
||||
sha256 = "156bwqqgaw65rsvbb4wih5jfg94bxyf6p16mdwf0ky3f4ln55s2i";
|
||||
};
|
||||
|
||||
patches = [ ./docbook2texi.patch ./symlinks-in-bin.patch ];
|
||||
|
@ -2,11 +2,11 @@ This patch does two things: (1) use the right name for `docbook2texi',
|
||||
and (2) make sure `gitman.info' isn't produced since it's broken (duplicate
|
||||
node names).
|
||||
|
||||
diff -u -r -w git-1.6.3.3.orig/Documentation/Makefile git-1.6.3.3/Documentation/Makefile
|
||||
--- git-1.6.3.3.orig/Documentation/Makefile 2009-07-02 17:07:17.000000000 +0200
|
||||
+++ git-1.6.3.3/Documentation/Makefile 2009-07-02 17:08:49.000000000 +0200
|
||||
@@ -51,7 +51,7 @@
|
||||
infodir?=$(prefix)/share/info
|
||||
diff -ru git-1.8.4-orig/Documentation/Makefile git-1.8.4/Documentation/Makefile
|
||||
--- git-1.8.4-orig/Documentation/Makefile 2013-08-23 21:38:43.000000000 +0200
|
||||
+++ git-1.8.4/Documentation/Makefile 2013-09-30 14:48:51.532890378 +0200
|
||||
@@ -101,7 +101,7 @@
|
||||
|
||||
MAKEINFO = makeinfo
|
||||
INSTALL_INFO = install-info
|
||||
-DOCBOOK2X_TEXI = docbook2x-texi
|
||||
@ -14,7 +14,7 @@ diff -u -r -w git-1.6.3.3.orig/Documentation/Makefile git-1.6.3.3/Documentation/
|
||||
DBLATEX = dblatex
|
||||
ifndef PERL_PATH
|
||||
PERL_PATH = /usr/bin/perl
|
||||
@@ -153,7 +153,7 @@
|
||||
@@ -205,7 +205,7 @@
|
||||
man5: $(DOC_MAN5)
|
||||
man7: $(DOC_MAN7)
|
||||
|
||||
@ -23,7 +23,7 @@ diff -u -r -w git-1.6.3.3.orig/Documentation/Makefile git-1.6.3.3/Documentation/
|
||||
|
||||
pdf: user-manual.pdf
|
||||
|
||||
@@ -169,10 +169,9 @@
|
||||
@@ -221,10 +221,9 @@
|
||||
|
||||
install-info: info
|
||||
$(INSTALL) -d -m 755 $(DESTDIR)$(infodir)
|
||||
@ -35,5 +35,3 @@ diff -u -r -w git-1.6.3.3.orig/Documentation/Makefile git-1.6.3.3/Documentation/
|
||||
else \
|
||||
echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \
|
||||
fi
|
||||
Only in git-1.6.3.3/Documentation: Makefile.orig
|
||||
Only in git-1.6.3.3/Documentation: Makefile.rej
|
||||
|
@ -21,13 +21,13 @@ assert compressionSupport -> neon.compressionSupport;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
version = "1.7.11";
|
||||
version = "1.7.13";
|
||||
|
||||
name = "subversion-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://apache/subversion//${name}.tar.bz2";
|
||||
sha1 = "d82e187803043b74c072cd5a861ac02e4a027684";
|
||||
sha1 = "844bb756ec505edaa12b9610832bcd21567139f1";
|
||||
};
|
||||
|
||||
buildInputs = [ zlib apr aprutil sqlite ]
|
||||
|
@ -4,9 +4,9 @@ stdenv.mkDerivation rec {
|
||||
name = "gpac-0.5.0-svn";
|
||||
|
||||
src = fetchsvn {
|
||||
url = "https://gpac.svn.sourceforge.net/svnroot/gpac/trunk/gpac";
|
||||
rev = "4253";
|
||||
sha256 = "0z4bd63c805q53hpb09gq0m0apy12z5a90zxx4jjx3ln64xq0pnn";
|
||||
url = "http://svn.code.sf.net/p/gpac/code/trunk/gpac";
|
||||
rev = "4749";
|
||||
sha256 = "0y38pmp64a2l70y1yby90qzxfzx8y7r0cdmgjxzw86jh6si5ndhp";
|
||||
};
|
||||
|
||||
# this is the bare minimum configuration, as I'm only interested in MP4Box
|
||||
|
@ -9,12 +9,12 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vlc-${version}a";
|
||||
version = "2.0.8";
|
||||
name = "vlc-${version}";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.videolan.org/pub/videolan/vlc/${version}/${name}.tar.xz";
|
||||
sha256 = "1lilj14il52731h7qvrjcss0zivghcxv8jmmxf23qwl7qhs5y885";
|
||||
sha256 = "1xs1zsjip6ljqyy5jlqf14ncda4pjx166bqvjqgcyskq66m7s5yj";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -19,6 +19,7 @@
|
||||
, udev, udevSupport ? true
|
||||
, libusb ? null, usbSupport ? false
|
||||
, samba ? null, sambaSupport ? true
|
||||
, libmicrohttpd
|
||||
# TODO: would be nice to have nfsSupport (needs libnfs library)
|
||||
# TODO: librtmp
|
||||
, libvdpau ? null, vdpauSupport ? true
|
||||
@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [
|
||||
makeWrapper
|
||||
pkgconfig cmake gnumake yasm python
|
||||
boost
|
||||
boost libmicrohttpd
|
||||
gettext pcre yajl fribidi
|
||||
openssl gperf tinyxml2 taglib libssh swig jre
|
||||
libX11 xproto inputproto
|
||||
@ -75,7 +76,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
configureFlags = [
|
||||
"--enable-external-libraries"
|
||||
"--disable-webserver"
|
||||
]
|
||||
++ lib.optional (! sambaSupport) "--disable-samba"
|
||||
++ lib.optional vdpauSupport "--enable-vdpau"
|
||||
|
@ -1,31 +0,0 @@
|
||||
#
|
||||
# Checks that all set options are described.
|
||||
#
|
||||
options: configuration:
|
||||
with builtins;
|
||||
let lib=(import ../../lib); in
|
||||
with lib;
|
||||
|
||||
let
|
||||
findInList = p: list: default:
|
||||
if list == [] then default else
|
||||
if (p (head list)) then (head list) else
|
||||
findInList p (tail list) default;
|
||||
|
||||
|
||||
checkAttrInclusion = s: a: b:
|
||||
(
|
||||
if ! isAttrs b then s else
|
||||
if (lib.attrByPath ["_type"] "" b) == "option" then "" else
|
||||
findInList (x : x != "")
|
||||
( map (x: if (x == "servicesProposal") # this attr will be checked at another place ( -> upstart-jobs/default.nix )
|
||||
then ""
|
||||
else checkAttrInclusion
|
||||
(s + "." + x)
|
||||
(builtins.getAttr x a)
|
||||
(lib.attrByPath [x] null b))
|
||||
(attrNames a)) ""
|
||||
);
|
||||
in
|
||||
checkAttrInclusion "" configuration options
|
||||
|
@ -271,4 +271,100 @@ rec {
|
||||
ftp://ftp.xemacs.org/sites/metalab.unc.edu/
|
||||
];
|
||||
|
||||
# CRAN mirrors (from http://cran.r-project.org/mirrors.html)
|
||||
cran = [
|
||||
http://cran.r-project.org/
|
||||
http://cran.rstudio.com/
|
||||
http://mirror.fcaglp.unlp.edu.ar/CRAN/
|
||||
http://r.mirror.mendoza-conicet.gob.ar/
|
||||
http://cran.csiro.au/
|
||||
http://cran.ms.unimelb.edu.au/
|
||||
http://cran.at.r-project.org/
|
||||
http://www.freestatistics.org/cran/
|
||||
http://cran-r.c3sl.ufpr.br/
|
||||
http://cran.fiocruz.br/
|
||||
http://www.vps.fmvz.usp.br/CRAN/
|
||||
http://brieger.esalq.usp.br/CRAN/
|
||||
http://cran.stat.sfu.ca/
|
||||
http://mirror.its.dal.ca/cran/
|
||||
http://probability.ca/cran/
|
||||
http://cran.skazkaforyou.com/
|
||||
http://cran.parentingamerica.com/
|
||||
http://dirichlet.mat.puc.cl/
|
||||
http://ftp.ctex.org/mirrors/CRAN/
|
||||
http://mirror.bjtu.edu.cn/cran
|
||||
http://cran.dataguru.cn/
|
||||
http://mirrors.ustc.edu.cn/CRAN/
|
||||
http://mirrors.xmu.edu.cn/CRAN/
|
||||
http://www.laqee.unal.edu.co/CRAN/
|
||||
http://www.icesi.edu.co/CRAN/
|
||||
http://mirrors.dotsrc.org/cran/
|
||||
http://cran.espol.edu.ec/
|
||||
http://cran.univ-lyon1.fr/
|
||||
http://mirror.ibcp.fr/pub/CRAN/
|
||||
http://ftp.igh.cnrs.fr/pub/CRAN/
|
||||
http://cran.irsn.fr/
|
||||
http://cran.univ-paris1.fr/
|
||||
http://mirrors.softliste.de/cran/
|
||||
http://cran.r-mirror.de/
|
||||
http://ftp5.gwdg.de/pub/misc/cran/
|
||||
http://cran.cc.uoc.gr/
|
||||
http://cran.rapporter.net/
|
||||
http://ftp.iitm.ac.in/cran/
|
||||
http://cran.repo.bppt.go.id/
|
||||
http://cran.um.ac.ir/
|
||||
http://ftp.heanet.ie/mirrors/cran.r-project.org/
|
||||
http://cran.mirror.garr.it/mirrors/CRAN/
|
||||
http://cran.stat.unipd.it/
|
||||
http://dssm.unipa.it/CRAN/
|
||||
http://essrc.hyogo-u.ac.jp/cran/
|
||||
http://cran.md.tsukuba.ac.jp/
|
||||
http://cran.ism.ac.jp/
|
||||
http://cran.nexr.com/
|
||||
http://biostat.cau.ac.kr/CRAN/
|
||||
http://cran.itam.mx/
|
||||
http://www.est.colpos.mx/R-mirror/
|
||||
http://cran.xl-mirror.nl/
|
||||
http://cran-mirror.cs.uu.nl/
|
||||
http://cran.stat.auckland.ac.nz/
|
||||
http://cran.uib.no/
|
||||
http://cran.stat.upd.edu.ph/
|
||||
http://r.meteo.uni.wroc.pl/
|
||||
http://cran.dcc.fc.up.pt/
|
||||
http://cran.gis-lab.info/
|
||||
http://cran.stat.nus.edu.sg/
|
||||
http://cran.fyxm.net/
|
||||
http://r.adu.org.za/
|
||||
http://cran.mirror.ac.za/
|
||||
http://cran.es.r-project.org/
|
||||
http://ftp.sunet.se/pub/lang/CRAN/
|
||||
http://stat.ethz.ch/CRAN/
|
||||
http://cran.cs.pu.edu.tw/
|
||||
http://cran.csie.ntu.edu.tw/
|
||||
http://mirrors.psu.ac.th/pub/cran/
|
||||
http://cran.pau.edu.tr/
|
||||
http://www.stats.bris.ac.uk/R/
|
||||
http://cran.ma.imperial.ac.uk/
|
||||
http://star-www.st-andrews.ac.uk/cran/
|
||||
http://cran.cnr.berkeley.edu/
|
||||
http://cran.stat.ucla.edu/
|
||||
http://streaming.stat.iastate.edu/CRAN/
|
||||
http://ftp.ussg.iu.edu/CRAN/
|
||||
http://rweb.quant.ku.edu/cran/
|
||||
http://watson.nci.nih.gov/cran_mirror/
|
||||
http://cran.mtu.edu/
|
||||
http://cran.wustl.edu/
|
||||
http://cran.case.edu/
|
||||
http://ftp.osuosl.org/pub/cran/
|
||||
http://lib.stat.cmu.edu/R/CRAN/
|
||||
http://cran.mirrors.hoobly.com/
|
||||
http://mirrors.nics.utk.edu/cran/
|
||||
http://cran.revolutionanalytics.com/
|
||||
http://cran.fhcrc.org/
|
||||
http://cran.cs.wwu.edu/
|
||||
http://camoruco.ing.uc.edu.ve/cran/
|
||||
http://cran.vinastat.com/
|
||||
http://lib.stat.cmu.edu/
|
||||
];
|
||||
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libxml2, gtk, intltool, GConf, libsoup, libtasn1, nettle, gmp }:
|
||||
|
||||
assert stdenv.isLinux;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libgweather-2.30.3";
|
||||
src = fetchurl {
|
||||
|
@ -14,5 +14,7 @@ stdenv.mkDerivation rec {
|
||||
libgcrypt libtasn1 dbus_glib gtk pango gdk_pixbuf atk
|
||||
];
|
||||
|
||||
configureFlags = "--disable-introspection";
|
||||
|
||||
#doCheck = true;
|
||||
}
|
||||
|
@ -19,10 +19,11 @@ stdenv.mkDerivation rec {
|
||||
automake -a
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Assember for the Atmel AVR microcontroller family";
|
||||
homepage = http://avra.sourceforge.net/;
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
maintainers = with stdenv.lib.maintainers; [ the-kenny ];
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ the-kenny ];
|
||||
};
|
||||
}
|
||||
|
@ -1,17 +1,19 @@
|
||||
{ cabal, ansiTerminal, binary, boehmgc, Cabal, filepath, gmp, happy
|
||||
, haskeline, languageJava, libffi, llvmGeneral, mtl, parsec, split
|
||||
, text, time, transformers, vector, vectorBinaryInstances
|
||||
, haskeline, languageJava, libffi, llvmGeneral, llvmGeneralPure
|
||||
, mtl, parsec, parsers, split, text, time, transformers, trifecta
|
||||
, unorderedContainers, utf8String, vector, vectorBinaryInstances
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "idris";
|
||||
version = "0.9.9.1";
|
||||
sha256 = "1glxkx2hcr0lrvj3jjnlqqifyzyixjzq1hl86wmn540dccw82yah";
|
||||
version = "0.9.9.2";
|
||||
sha256 = "0xfwnlf3jca64i4piyx9scmk4z8f6rak2cvrcjwji505a9vaa0rw";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
ansiTerminal binary Cabal filepath haskeline languageJava libffi
|
||||
llvmGeneral mtl parsec split text time transformers vector
|
||||
llvmGeneral llvmGeneralPure mtl parsec parsers split text time
|
||||
transformers trifecta unorderedContainers utf8String vector
|
||||
vectorBinaryInstances
|
||||
];
|
||||
buildTools = [ happy ];
|
||||
|
@ -29,9 +29,9 @@ stdenv.mkDerivation {
|
||||
done
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://elixir-lang.org/";
|
||||
description = "Elixir is a functional, meta-programming aware language built on top of the Erlang VM.";
|
||||
description = "A functional, meta-programming aware language built on top of the Erlang VM";
|
||||
|
||||
longDescription = ''
|
||||
Elixir is a functional, meta-programming
|
||||
@ -41,8 +41,8 @@ stdenv.mkDerivation {
|
||||
fault-tolerant applications with hot code upgrades.p
|
||||
'';
|
||||
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.the-kenny ];
|
||||
license = licenses.epl10;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.the-kenny ];
|
||||
};
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||
patches = [ dsoPatch ];
|
||||
|
||||
configurePhase = ''
|
||||
makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-O2 -fPIC" LDLAGS="-fPIC" )
|
||||
makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC" LDLAGS="-fPIC" )
|
||||
installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.5.1 liblua.so.5.1.5" INSTALL_DATA='cp -d' )
|
||||
'';
|
||||
|
||||
|
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
||||
patches = [ dsoPatch ];
|
||||
|
||||
configurePhase = ''
|
||||
makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-O2 -fPIC" LDLAGS="-fPIC" V=${majorVersion} R=${version} )
|
||||
makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC" LDLAGS="-fPIC" V=${majorVersion} R=${version} )
|
||||
installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.${majorVersion} liblua.so.${version}" INSTALL_DATA='cp -d' )
|
||||
'';
|
||||
|
||||
|
@ -24,6 +24,7 @@ g: # Get dependencies from patched gems
|
||||
childprocess = g.childprocess_0_3_9;
|
||||
chronic = g.chronic_0_10_1;
|
||||
coderay = g.coderay_1_0_9;
|
||||
cucumber = g.cucumber_1_3_8;
|
||||
daemons = g.daemons_1_1_9;
|
||||
diff_lcs = g.diff_lcs_1_1_3;
|
||||
dimensions = g.dimensions_1_2_0;
|
||||
@ -42,6 +43,7 @@ g: # Get dependencies from patched gems
|
||||
foreman = g.foreman_0_63_0;
|
||||
gettext = g.gettext_3_0_0;
|
||||
gh = g.gh_0_12_0;
|
||||
gherkin = g.gherkin_2_12_1;
|
||||
highline = g.highline_1_6_19;
|
||||
hike = g.hike_1_2_3;
|
||||
hoe = g.hoe_3_1_0;
|
||||
@ -64,6 +66,7 @@ g: # Get dependencies from patched gems
|
||||
minitar = g.minitar_0_5_3;
|
||||
minitest = g.minitest_4_7_5;
|
||||
multi_json = g.multi_json_1_7_9;
|
||||
multi_test = g.multi_test_0_0_2;
|
||||
multipart_post = g.multipart_post_1_2_0;
|
||||
net_http_digest_auth = g.net_http_digest_auth_1_4;
|
||||
net_http_persistent = g.net_http_persistent_2_9;
|
||||
@ -112,6 +115,7 @@ g: # Get dependencies from patched gems
|
||||
systemu = g.systemu_2_5_2;
|
||||
taskjuggler = g.taskjuggler_3_5_0;
|
||||
term_ansicolor = g.term_ansicolor_1_2_2;
|
||||
terminal_notifier = g.terminal_notifier_1_5_1;
|
||||
text = g.text_1_2_3;
|
||||
thin = g.thin_1_5_1;
|
||||
thor = g.thor_0_18_1;
|
||||
@ -134,7 +138,7 @@ g: # Get dependencies from patched gems
|
||||
xml_simple = g.xml_simple_1_1_1;
|
||||
yajl_ruby = g.yajl_ruby_1_1_0;
|
||||
};
|
||||
gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ];
|
||||
gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''cucumber'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ];
|
||||
gems = {
|
||||
ZenTest_4_9_3 = {
|
||||
basename = ''ZenTest'';
|
||||
@ -451,6 +455,17 @@ for those one-off tasks, with a language that's a joy to use.
|
||||
requiredGems = [ ];
|
||||
sha256 = ''1pbjsvd6r2daxd6aicp19fnb1j5z7fxadflsm1h0r33cy3vi7iy8'';
|
||||
};
|
||||
cucumber_1_3_8 = {
|
||||
basename = ''cucumber'';
|
||||
meta = {
|
||||
description = ''cucumber-1.3.8'';
|
||||
homepage = ''http://cukes.info'';
|
||||
longDescription = ''Behaviour Driven Development with elegance and joy'';
|
||||
};
|
||||
name = ''cucumber-1.3.8'';
|
||||
requiredGems = [ g.builder_3_2_2 g.diff_lcs_1_2_4 g.gherkin_2_12_1 g.multi_json_1_7_9 g.multi_test_0_0_2 ];
|
||||
sha256 = ''0b4igj1vxlcwky11nkrrgg57chbc0n5gmv984dld5s0f1ilkx1ma'';
|
||||
};
|
||||
daemons_1_1_9 = {
|
||||
basename = ''daemons'';
|
||||
meta = {
|
||||
@ -487,6 +502,28 @@ is the MIT license.'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''15wqs3md9slif6ag43vp6gw63r3a2zdqiyfapnnzkb7amgg930pv'';
|
||||
};
|
||||
diff_lcs_1_2_4 = {
|
||||
basename = ''diff_lcs'';
|
||||
meta = {
|
||||
description = ''Diff::LCS computes the difference between two Enumerable sequences using the McIlroy-Hunt longest common subsequence (LCS) algorithm'';
|
||||
homepage = ''http://diff-lcs.rubyforge.org/'';
|
||||
longDescription = ''Diff::LCS computes the difference between two Enumerable sequences using the
|
||||
McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities
|
||||
to create a simple HTML diff output format and a standard diff-like tool.
|
||||
|
||||
This is release 1.2.4, fixing a bug introduced after diff-lcs 1.1.3 that did
|
||||
not properly prune common sequences at the beginning of a comparison set.
|
||||
Thanks to Paul Kunysch for fixing this issue.
|
||||
|
||||
Coincident with the release of diff-lcs 1.2.3, we reported an issue with
|
||||
Rubinius in 1.9 mode
|
||||
({rubinius/rubinius#2268}[https://github.com/rubinius/rubinius/issues/2268]).
|
||||
We are happy to report that this issue has been resolved.'';
|
||||
};
|
||||
name = ''diff-lcs-1.2.4'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''09xbffjg639y8n43zp88ki0m489vv2c86znmfib2fg1di6svi1xd'';
|
||||
};
|
||||
dimensions_1_2_0 = {
|
||||
basename = ''dimensions'';
|
||||
meta = {
|
||||
@ -699,6 +736,17 @@ So you can use GNU gettext tools for maintaining.
|
||||
requiredGems = [ g.faraday_0_8_8 g.backports_3_3_3 g.multi_json_1_7_9 g.addressable_2_3_5 g.net_http_persistent_2_9 g.net_http_pipeline_1_0_1 ];
|
||||
sha256 = ''180jmg6rwilzcbzvyg74q27zpr09pv6pw3cfcjxr0bcklv203q3n'';
|
||||
};
|
||||
gherkin_2_12_1 = {
|
||||
basename = ''gherkin'';
|
||||
meta = {
|
||||
description = ''gherkin-2.12.1'';
|
||||
homepage = ''http://github.com/cucumber/gherkin'';
|
||||
longDescription = ''A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.'';
|
||||
};
|
||||
name = ''gherkin-2.12.1'';
|
||||
requiredGems = [ g.multi_json_1_7_9 ];
|
||||
sha256 = ''07nzchdvkkd35m9k7d9k8j72jm3imv56ccn734mxa5klv1xx2d45'';
|
||||
};
|
||||
highline_1_6_19 = {
|
||||
basename = ''highline'';
|
||||
meta = {
|
||||
@ -1083,6 +1131,17 @@ extract-method refactorings still apply.'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''1q13ldcc8shlfisy90k19zrar87208gs3za6jmr78p11ip21picx'';
|
||||
};
|
||||
multi_test_0_0_2 = {
|
||||
basename = ''multi_test'';
|
||||
meta = {
|
||||
description = ''multi-test-0.0.2'';
|
||||
homepage = ''http://cukes.info'';
|
||||
longDescription = ''Wafter-thin gem to help control rogue test/unit/autorun requires'';
|
||||
};
|
||||
name = ''multi_test-0.0.2'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''0y8i0v0awc87laicqz1348k54z6wsyf141xqd7gh2bjgm9pc9pkr'';
|
||||
};
|
||||
multipart_post_1_2_0 = {
|
||||
basename = ''multipart_post'';
|
||||
meta = {
|
||||
@ -1774,6 +1833,16 @@ management.
|
||||
requiredGems = [ g.tins_0_9_0 ];
|
||||
sha256 = ''1b41q1q6mqcgzq9fhzhmjvfg5sfs5v7gkb8z57r4hajcp89lflxr'';
|
||||
};
|
||||
terminal_notifier_1_5_1 = {
|
||||
basename = ''terminal_notifier'';
|
||||
meta = {
|
||||
description = ''Send User Notifications on Mac OS X 10.8 or higher.'';
|
||||
homepage = ''https://github.com/alloy/terminal-notifier'';
|
||||
};
|
||||
name = ''terminal-notifier-1.5.1'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''1vvdfj83bsa2rglwbqmk11yghivsywl6ka76zb51c3xm7gdd768k'';
|
||||
};
|
||||
text_1_2_3 = {
|
||||
basename = ''text'';
|
||||
meta = {
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "MonadRandom";
|
||||
version = "0.1.11";
|
||||
sha256 = "107f3ch84riagxa9x6yk4gxq2vq5dsk63rd0780g1fdplnf1sky3";
|
||||
version = "0.1.12";
|
||||
sha256 = "0lr1lvpcj96i6n0w810bjy8k9jygx97nnv0k2zb51d7saw6y95p4";
|
||||
buildDepends = [ mtl random transformers ];
|
||||
meta = {
|
||||
description = "Random-number generation monad";
|
||||
|
@ -5,8 +5,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "accelerate-cuda";
|
||||
version = "0.13.0.3";
|
||||
sha256 = "1y0v7w08pywb8qlw0b5aw4f8pkx4bjlfwxpqq2zfqmjsclnlifkb";
|
||||
version = "0.13.0.4";
|
||||
sha256 = "0zdb02mj9sbkj51a1q7sl6kmjx51gvps52dwc70qpm3rk71qnp1k";
|
||||
buildDepends = [
|
||||
accelerate binary cryptohash cuda fclabels filepath hashable
|
||||
hashtables languageCQuote mainlandPretty mtl SafeSemaphore srcloc
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "acid-state";
|
||||
version = "0.12.0";
|
||||
sha256 = "0gz66j0091k18yy81kn3vcadjg8lrqdfxibjbzwyhi64m894f13w";
|
||||
version = "0.12.1";
|
||||
sha256 = "0smqhj4layckdsm8xjz1rwgpcqwm5xj2vr8g4i463vgq776fl0q6";
|
||||
buildDepends = [
|
||||
cereal extensibleExceptions filepath mtl network safecopy stm
|
||||
];
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "active";
|
||||
version = "0.1.0.6";
|
||||
sha256 = "0hh52hkmma4lxfv3gj7x23cwx8v6wd1cm9hblvhzhylxk8dyl5m7";
|
||||
version = "0.1.0.7";
|
||||
sha256 = "18pcw98ni8fiy0yd7wmrqvpaf2wgav70rsikqfl571zjmdmzdw7p";
|
||||
buildDepends = [ newtype semigroupoids semigroups vectorSpace ];
|
||||
testDepends = [
|
||||
newtype QuickCheck semigroupoids semigroups vectorSpace
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "amqp";
|
||||
version = "0.5.0";
|
||||
sha256 = "1i02pp184r1iq40mz16m9qh8i3h1jmf3ykpg67j3i1732cks8n8w";
|
||||
version = "0.6.0";
|
||||
sha256 = "0rfczmhf46sc3pxxb5gwv4ggsxkqkvdi4kkqdnrdpdhs7p41im2n";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [ binary dataBinaryIeee754 network text xml ];
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "bindings-DSL";
|
||||
version = "1.0.17";
|
||||
sha256 = "1203n6wzdp21hd7zdhvhppxhkz4xr3qykwkb8j5mb2s4kijx01bn";
|
||||
version = "1.0.19";
|
||||
sha256 = "0mjlv2ld1qdd83pv7khrk3f0g4ypk8a8z79ykp3nwbvlhhi7bp2h";
|
||||
meta = {
|
||||
homepage = "http://bitbucket.org/mauricio/bindings-dsl";
|
||||
description = "FFI domain specific language, on top of hsc2hs";
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "cereal";
|
||||
version = "0.3.5.2";
|
||||
sha256 = "0yjxvhagsm552idfrs6d9lzlz6x5878xj1vfg0zxf8w1kixgghil";
|
||||
version = "0.4.0.0";
|
||||
sha256 = "0q6lrfa2p70mh3d08mbj89anc3p9ycy6wyyiycj5pm62kcimv7rj";
|
||||
meta = {
|
||||
description = "A binary serialization library";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
|
14
pkgs/development/libraries/haskell/charset/default.nix
Normal file
14
pkgs/development/libraries/haskell/charset/default.nix
Normal file
@ -0,0 +1,14 @@
|
||||
{ cabal, semigroups, unorderedContainers }:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "charset";
|
||||
version = "0.3.5";
|
||||
sha256 = "0842jdqg7hipgkvax3p4cb2y3znsgcmbj9nfrg2448dg2nanlhsn";
|
||||
buildDepends = [ semigroups unorderedContainers ];
|
||||
meta = {
|
||||
homepage = "http://github.com/ekmett/charset";
|
||||
description = "Fast unicode character sets based on complemented PATRICIA tries";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
@ -1,14 +1,14 @@
|
||||
{ cabal, classyPrelude, conduit, hspec, monadControl, QuickCheck
|
||||
, resourcet, transformers, void, xmlConduit
|
||||
, resourcet, systemFileio, transformers, void
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "classy-prelude-conduit";
|
||||
version = "0.5.3";
|
||||
sha256 = "1rmx439kdjipyz2s3v2s1xv1mb55kb4njl9k6f8mfhykgac39rhz";
|
||||
version = "0.6.0";
|
||||
sha256 = "122clkwrz1n009b5gxq96sbby7i8kb4dgvc90ydamd86bx3pvc84";
|
||||
buildDepends = [
|
||||
classyPrelude conduit monadControl resourcet transformers void
|
||||
xmlConduit
|
||||
classyPrelude conduit monadControl resourcet systemFileio
|
||||
transformers void
|
||||
];
|
||||
testDepends = [ conduit hspec QuickCheck transformers ];
|
||||
meta = {
|
||||
|
@ -1,17 +1,21 @@
|
||||
{ cabal, async, basicPrelude, deepseq, hashable, hspec, liftedBase
|
||||
, monadControl, QuickCheck, systemFilepath, text, transformers
|
||||
, unorderedContainers, vector
|
||||
, monadControl, monoTraversable, QuickCheck, semigroups
|
||||
, systemFilepath, text, transformers, unorderedContainers, vector
|
||||
, vectorInstances
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "classy-prelude";
|
||||
version = "0.5.10";
|
||||
sha256 = "04grmld90qr8m6lcdf83clai0anpp8iry7m9l9li8ija9fckl3lk";
|
||||
version = "0.6.0";
|
||||
sha256 = "0wpymr2gl0hmbgpw0qd0h1ik1h42s8raykq7jsdjqnmcvsmww5j6";
|
||||
buildDepends = [
|
||||
async basicPrelude deepseq hashable liftedBase monadControl
|
||||
systemFilepath text transformers unorderedContainers vector
|
||||
monoTraversable semigroups systemFilepath text transformers
|
||||
unorderedContainers vector vectorInstances
|
||||
];
|
||||
testDepends = [
|
||||
hspec QuickCheck transformers unorderedContainers
|
||||
];
|
||||
testDepends = [ hspec QuickCheck transformers ];
|
||||
meta = {
|
||||
homepage = "https://github.com/snoyberg/classy-prelude";
|
||||
description = "A typeclass-based Prelude";
|
||||
|
@ -4,13 +4,14 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "crypto-conduit";
|
||||
version = "0.5.2";
|
||||
sha256 = "0ncqwr2a9nxl6q7qys9gb5db62lx622g5db1xhpfni045x324kbz";
|
||||
version = "0.5.2.1";
|
||||
sha256 = "1i9m4pzy4ib9n941zlh398idmxcjak2496c4c73i8bmikryahl8p";
|
||||
buildDepends = [ cereal conduit cryptoApi transformers ];
|
||||
testDepends = [
|
||||
cereal conduit cryptoApi cryptocipher cryptohashCryptoapi hspec
|
||||
skein transformers
|
||||
];
|
||||
jailbreak = true;
|
||||
doCheck = false;
|
||||
meta = {
|
||||
homepage = "https://github.com/meteficha/crypto-conduit";
|
||||
|
@ -3,8 +3,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "data-lens";
|
||||
version = "2.10.2";
|
||||
sha256 = "1mv4lh5rhmq09d89ci07kj9anv7ckrlqh9x3xr4jq9idf7sf54b5";
|
||||
version = "2.10.3";
|
||||
sha256 = "0x8qrcsnl1z2n3vwld0jcnapmzlzjgyzpa34qjyxpv4f15xn8vic";
|
||||
buildDepends = [
|
||||
comonad comonadTransformers semigroupoids transformers
|
||||
];
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "data-pprint";
|
||||
version = "0.2.1.5";
|
||||
sha256 = "0dalm41l93303rraxi9kipxkm11a0mly3w488afj700ny5v6l9ij";
|
||||
version = "0.2.2";
|
||||
sha256 = "0cr69qv2j8fmmlir8rzlafcxk1cg3lg1z0zrwkz0lb7idm25fy36";
|
||||
buildDepends = [ deepseq mtl parallel time ];
|
||||
meta = {
|
||||
description = "Prettyprint and compare Data values";
|
||||
|
@ -10,6 +10,7 @@ cabal.mkDerivation (self: {
|
||||
cereal libxmlSax network parsec random text transformers vector
|
||||
xmlTypes
|
||||
];
|
||||
jailbreak = true;
|
||||
meta = {
|
||||
homepage = "https://john-millikin.com/software/haskell-dbus/";
|
||||
description = "A client library for the D-Bus IPC system";
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "diagrams-core";
|
||||
version = "0.7";
|
||||
sha256 = "00ba31imq91w6lzy8blgxawr06igrjfrg4adrqy650wip8jafqwq";
|
||||
version = "0.7.0.1";
|
||||
sha256 = "1826f6yrb0ch07y4bjb1cnqi8giphn2i6g45484qr6bfbb8wj5dg";
|
||||
buildDepends = [
|
||||
dualTree MemoTrie monoidExtras newtype semigroups vectorSpace
|
||||
vectorSpacePoints
|
||||
|
@ -5,8 +5,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "diagrams-lib";
|
||||
version = "0.7.1";
|
||||
sha256 = "1ig7a0ns458aqk9yxya7djdd40x3iyd1lycjygdl3zgl2pjpdva7";
|
||||
version = "0.7.1.1";
|
||||
sha256 = "14d557y22dqyjr026vbawa2a2yjh7alh3rpavyidfdlrg48lqgrc";
|
||||
buildDepends = [
|
||||
active colour dataDefaultClass diagramsCore fingertree intervals
|
||||
monoidExtras newtype NumInstances semigroups vectorSpace
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "doctest";
|
||||
version = "0.9.8";
|
||||
sha256 = "0c1qi1dfqndbkaiksffw54gv6nlhd3wsk25s97vhrgmpd3n7sb8a";
|
||||
version = "0.9.9";
|
||||
sha256 = "1r1jdmch6sb4cdygh60pv42p4nr03shabrpd18hjnxs40dgc6pgy";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [ deepseq filepath ghcPaths syb transformers ];
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "dual-tree";
|
||||
version = "0.1.0.3";
|
||||
sha256 = "0k3p1lqhynlqvkbnrs5vn478c76qcn754n5pb17p5i4jcw94bm0n";
|
||||
version = "0.1.0.4";
|
||||
sha256 = "0xrpb7kz6aazqy9w0b7hcbxgmy4ddy0zh7gdpv2w140vvyx5qjrn";
|
||||
buildDepends = [ monoidExtras newtype semigroups ];
|
||||
jailbreak = true;
|
||||
meta = {
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "generic-deriving";
|
||||
version = "1.6.1";
|
||||
sha256 = "0c3b3xkjdfp14w48gfk3f6aqz4cgk6i3bl5mci23mbb3f33jcx1j";
|
||||
version = "1.6.2";
|
||||
sha256 = "1ryzg7zgnlhx6mbmpsh4fgqf2d758c94qz2zpg3jxns30hd4sfy6";
|
||||
meta = {
|
||||
description = "Generic programming library for generalised deriving";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "ghc-mod";
|
||||
version = "3.1.1";
|
||||
sha256 = "0gz5andg5ap7a71ap82rpkbflgj9fcrw47gyzlbn5rpp110d86jf";
|
||||
version = "3.1.2";
|
||||
sha256 = "164ldbdvr2qrnb9sq0d9y35la4fzwn6x43xqdsi1s10dppckczlm";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -2,7 +2,7 @@
|
||||
, filepath, filestore, ghcPaths, happstackServer, highlightingKate
|
||||
, hslogger, HStringTemplate, HTTP, json, mtl, network, pandoc
|
||||
, pandocTypes, parsec, random, recaptcha, safe, SHA, syb, tagsoup
|
||||
, text, time, url, utf8String, xhtml, xml, xssSanitize, zlib
|
||||
, text, time, url, utf8String, xhtml, xml, xssSanitize, zlib, fetchurl
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
@ -19,6 +19,10 @@ cabal.mkDerivation (self: {
|
||||
zlib
|
||||
];
|
||||
jailbreak = true;
|
||||
patches = [ (fetchurl { url = "https://github.com/jgm/gitit/commit/48155008397bdaed4f97c5678d83c70d4bc3f0ff.patch";
|
||||
sha256 = "0xdg9frr8lany8ry6vj4vpskmhkpww8jswnb05pzl8a4xfqxh9gd";
|
||||
})
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://gitit.net";
|
||||
description = "Wiki using happstack, git or darcs, and pandoc";
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "groups";
|
||||
version = "0.3.0.0";
|
||||
sha256 = "07swv09l98fxh563w1x8n8xzgh9q7n9dbx4gx3i77kwi72vmxl8x";
|
||||
version = "0.4.0.0";
|
||||
sha256 = "1kp8h3617cimya8nnadljyy4vk66dzl5nzfm900k2gh3ci8kja6k";
|
||||
meta = {
|
||||
description = "Haskell 98 groups";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "hS3";
|
||||
version = "0.5.7";
|
||||
sha256 = "1p5p6vwazqi5kpi3i0msbgcdf6flp25b2v1an6lvj7y8dx1pk6f2";
|
||||
version = "0.5.8";
|
||||
sha256 = "1wmrrmlz4qlhr75lixn385pjpvpq21aafgf0fw8jyfqgdyjkg7bm";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -7,8 +7,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "hoogle";
|
||||
version = "4.2.21";
|
||||
sha256 = "167iw0rp37c1bixmaa5l06c943h33b457symllh8rcbmf880z09i";
|
||||
version = "4.2.23";
|
||||
sha256 = "1ykjf0w6c3pzsrzdhxs53nxj84aj2px3gpfc8f53dmgqv3wkyii7";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -5,7 +5,7 @@
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "language-java";
|
||||
version = "0.2.5";
|
||||
sha256 = "1l3q156m3l3fawsrgj3fr16qxr0apwg2si410j0f5hsgfmkhdrm6";
|
||||
sha256 = "1ai6mvzasi8fji4b81nrpy48icf5h25g3kakhpfbzckwf20c9dkd";
|
||||
buildDepends = [ cpphs parsec syb ];
|
||||
testDepends = [
|
||||
filepath HUnit mtl QuickCheck testFramework testFrameworkHunit
|
||||
|
@ -10,8 +10,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "lens";
|
||||
version = "3.9.1";
|
||||
sha256 = "141v7b5ag6jxnim1hdyxqi5m2sm1j5fpspkcs8qnznfcd33gyfja";
|
||||
version = "3.9.2";
|
||||
sha256 = "17pc0waf3g6dxvmvyxkgh8kz22iscd9z00s67rcn0p604swprj2k";
|
||||
buildDepends = [
|
||||
bifunctors comonad comonadsFd comonadTransformers contravariant
|
||||
distributive filepath genericDeriving hashable
|
||||
|
@ -1,14 +1,15 @@
|
||||
{ cabal, conduit, fastLogger, monadControl, mtl, resourcet, text
|
||||
, transformers, transformersBase
|
||||
{ cabal, conduit, fastLogger, liftedBase, monadControl, monadLoops
|
||||
, mtl, resourcet, stm, stmChans, text, transformers
|
||||
, transformersBase
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "monad-logger";
|
||||
version = "0.3.1.1";
|
||||
sha256 = "11qqmflcydjfm5py7rkbi9qd0mkhw4kxzxff95wf0jmaia9knvx6";
|
||||
version = "0.3.2.0";
|
||||
sha256 = "0pgjayx6h1zqadqrzaf36070kir7qlinha9h4bf532lfx5yc1yxg";
|
||||
buildDepends = [
|
||||
conduit fastLogger monadControl mtl resourcet text transformers
|
||||
transformersBase
|
||||
conduit fastLogger liftedBase monadControl monadLoops mtl resourcet
|
||||
stm stmChans text transformers transformersBase
|
||||
];
|
||||
meta = {
|
||||
homepage = "https://github.com/kazu-yamamoto/logger";
|
||||
|
@ -0,0 +1,20 @@
|
||||
{ cabal, comonad, hashable, hspec, semigroupoids, semigroups, text
|
||||
, transformers, unorderedContainers, vector
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "mono-traversable";
|
||||
version = "0.1.0.0";
|
||||
sha256 = "1pkg8lagfiixgq2xb4ficgcqv1hhmxy2r49lq9szar7knh0gcjn1";
|
||||
buildDepends = [
|
||||
comonad hashable semigroupoids semigroups text transformers
|
||||
unorderedContainers vector
|
||||
];
|
||||
testDepends = [ hspec text ];
|
||||
meta = {
|
||||
homepage = "https://github.com/snoyberg/mono-traversable";
|
||||
description = "Type classes for mapping, folding, and traversing monomorphic containers";
|
||||
license = self.stdenv.lib.licenses.mit;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "monoid-extras";
|
||||
version = "0.3.2.0";
|
||||
sha256 = "0yhb55v0a2221xbpbm8jiqzqvps0lab5n8iakpq69ndr2l0d2r3x";
|
||||
version = "0.3.2.2";
|
||||
sha256 = "1fy0fk2mzan6n5chc11x303hz3iq3kpx6ma6c8xsi8va1b9ikpda";
|
||||
buildDepends = [ groupoids groups semigroupoids semigroups ];
|
||||
jailbreak = true;
|
||||
meta = {
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "ncurses";
|
||||
version = "0.2.6";
|
||||
sha256 = "0mcgbq67f8hfdqmvm3p59949mbxcc2mgjw889zxvxx0174kn205q";
|
||||
version = "0.2.7";
|
||||
sha256 = "026p6b2apgi9r65py45h3rl57xgwzyamq511a0rsb7myzagw22vz";
|
||||
buildDepends = [ text transformers ];
|
||||
buildTools = [ c2hs ];
|
||||
extraLibraries = [ ncurses ];
|
||||
|
@ -6,8 +6,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "pandoc-citeproc";
|
||||
version = "0.1.1";
|
||||
sha256 = "1pna6m83ay1jjcnazgc70vif55fff9xhk7129fbv9wf7d29hlw32";
|
||||
version = "0.1.1.1";
|
||||
sha256 = "07h277cz5wzc2dsfqfh9lasz7ypb4pspvqljs9maj6lx5rkk5fq1";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "pandoc-types";
|
||||
version = "1.12.1";
|
||||
sha256 = "0gqn7byag5vx09mwbx6y3zs3hqmncarlpml0cfc5picwv8kg4vbj";
|
||||
version = "1.12.2.2";
|
||||
sha256 = "1ax92rxynrp42032d0i4wnv700cszm6qsvna8f9hqcfxvc2cbp36";
|
||||
buildDepends = [ aeson syb ];
|
||||
meta = {
|
||||
homepage = "http://johnmacfarlane.net/pandoc";
|
||||
|
17
pkgs/development/libraries/haskell/parsers/default.nix
Normal file
17
pkgs/development/libraries/haskell/parsers/default.nix
Normal file
@ -0,0 +1,17 @@
|
||||
{ cabal, charset, doctest, filepath, text, transformers
|
||||
, unorderedContainers
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "parsers";
|
||||
version = "0.9";
|
||||
sha256 = "04lbayvdv2hax4s9sqlnia7jpzv1sgls41ylql0xbi2zhz5rvyyi";
|
||||
buildDepends = [ charset text transformers unorderedContainers ];
|
||||
testDepends = [ doctest filepath ];
|
||||
meta = {
|
||||
homepage = "http://github.com/ekmett/parsers/";
|
||||
description = "Parsing combinators";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
19
pkgs/development/libraries/haskell/pointed/default.nix
Normal file
19
pkgs/development/libraries/haskell/pointed/default.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{ cabal, comonad, comonadTransformers, dataDefault, semigroupoids
|
||||
, semigroups, stm, tagged, transformers
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "pointed";
|
||||
version = "3.1";
|
||||
sha256 = "13vx1vy3qfa23145fdfdivdmw01qyl2k6g8ynqxl8pzbj9cbb08n";
|
||||
buildDepends = [
|
||||
comonad comonadTransformers dataDefault semigroupoids semigroups
|
||||
stm tagged transformers
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://github.com/ekmett/pointed/";
|
||||
description = "Haskell 98 pointed and copointed data";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
14
pkgs/development/libraries/haskell/primitive/0.5.1.0.nix
Normal file
14
pkgs/development/libraries/haskell/primitive/0.5.1.0.nix
Normal file
@ -0,0 +1,14 @@
|
||||
{ cabal }:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "primitive";
|
||||
version = "0.5.1.0";
|
||||
sha256 = "0a8mf8k62xga5r5dd0fna1swqbx2r94c0mvqnc4mfq640zrsa5w8";
|
||||
meta = {
|
||||
homepage = "https://github.com/haskell/primitive";
|
||||
description = "Primitive memory-related operations";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
maintainers = [ self.stdenv.lib.maintainers.andres ];
|
||||
};
|
||||
})
|
20
pkgs/development/libraries/haskell/reducers/default.nix
Normal file
20
pkgs/development/libraries/haskell/reducers/default.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{ cabal, comonad, fingertree, hashable, keys, pointed
|
||||
, semigroupoids, semigroups, text, transformers
|
||||
, unorderedContainers
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "reducers";
|
||||
version = "3.0.2";
|
||||
sha256 = "0inw5gz3bdrfc6hprjfxssyqjwmclgf09gms14blj24qr027gdqq";
|
||||
buildDepends = [
|
||||
comonad fingertree hashable keys pointed semigroupoids semigroups
|
||||
text transformers unorderedContainers
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://github.com/ekmett/reducers/";
|
||||
description = "Semigroups, specialized containers and a general map/reduce framework";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "regex-compat-tdfa";
|
||||
version = "0.95.1.2";
|
||||
sha256 = "0b7pp5xq4ybgji5shz5v1a91y6wwzila3vjiyq4nma0xj3njy802";
|
||||
version = "0.95.1.3";
|
||||
sha256 = "0wl5sqbb3rl5dai3qni8w09wlipc4n1mn9kh5zgb9xl0lcd59pjx";
|
||||
buildDepends = [ regexBase regexTdfa ];
|
||||
meta = {
|
||||
homepage = "http://hub.darcs.net/shelarcy/regex-compat-tdfa";
|
||||
|
@ -1,16 +1,16 @@
|
||||
{ cabal, binary, deepseq, filepath, hashable, random, time
|
||||
, transformers, unorderedContainers
|
||||
, transformers, unorderedContainers, utf8String
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "shake";
|
||||
version = "0.10.6";
|
||||
sha256 = "0d2wrgraifcj0rv9jmvc5a0gl0j1jjkc4r0nmaypnv6929kl26q8";
|
||||
version = "0.10.7";
|
||||
sha256 = "0r48kzldbgixr1c83sd7frvygqyjx32n67nri1nnamcwpvlv8hgv";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
binary deepseq filepath hashable random time transformers
|
||||
unorderedContainers
|
||||
unorderedContainers utf8String
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://community.haskell.org/~ndm/shake/";
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "skein";
|
||||
version = "1.0.6";
|
||||
sha256 = "0jdh618k66bhiwrxb9i2yckxz0w3cpc7q15ilz49lqjjpl86bndk";
|
||||
version = "1.0.8";
|
||||
sha256 = "0qga3r73zzbj4kkwl8c3p7d1myjyv6dv6g0dwc77fqnmikzcnils";
|
||||
buildDepends = [ cereal cryptoApi tagged ];
|
||||
testDepends = [ cereal cryptoApi filepath hspec tagged ];
|
||||
jailbreak = true;
|
||||
|
@ -8,8 +8,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "snap";
|
||||
version = "0.13.0.2";
|
||||
sha256 = "1ss5r7nyp5w4gwrbm5v79jr4si3w9ci7dypsaqrxjw7ga95znsbm";
|
||||
version = "0.13.0.3";
|
||||
sha256 = "0gwcrsmcx5823w53nfi92gg2hkjnyxd3mp97qijp5p8y83mhh0l0";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "socks";
|
||||
version = "0.5.1";
|
||||
sha256 = "08zwbkglkahjadqn2m7l0k5yp4lcd9h6kgb8k8mjlwxayx82a0ay";
|
||||
version = "0.5.2";
|
||||
sha256 = "1bvvrc0lzjspab7jn31d45za8g6n9jr52mcf7rs5zci99f5jgpsv";
|
||||
buildDepends = [ cereal network ];
|
||||
meta = {
|
||||
homepage = "http://github.com/vincenthz/hs-socks";
|
||||
|
23
pkgs/development/libraries/haskell/trifecta/default.nix
Normal file
23
pkgs/development/libraries/haskell/trifecta/default.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ cabal, ansiTerminal, ansiWlPprint, blazeBuilder, blazeHtml
|
||||
, blazeMarkup, charset, comonad, deepseq, doctest, filepath
|
||||
, fingertree, hashable, lens, mtl, parsers, reducers, semigroups
|
||||
, transformers, unorderedContainers, utf8String
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "trifecta";
|
||||
version = "1.1";
|
||||
sha256 = "19wnblpn31hvdi5dc8ir24s0hfjj4vvzr43gg9ydl2qdjq6s166w";
|
||||
buildDepends = [
|
||||
ansiTerminal ansiWlPprint blazeBuilder blazeHtml blazeMarkup
|
||||
charset comonad deepseq fingertree hashable lens mtl parsers
|
||||
reducers semigroups transformers unorderedContainers utf8String
|
||||
];
|
||||
testDepends = [ doctest filepath ];
|
||||
meta = {
|
||||
homepage = "http://github.com/ekmett/trifecta/";
|
||||
description = "A modern parser combinator library with convenient diagnostics";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "unordered-containers";
|
||||
version = "0.2.3.2";
|
||||
sha256 = "0fgfb2zqa2zi2hb9nkj92nwnxr54wkqa6gmqbcn4h5zks5anfvn5";
|
||||
version = "0.2.3.3";
|
||||
sha256 = "09sn19fk4smhf4zi3326wy2a62lh231k2nm8jd64j51arch42sdi";
|
||||
buildDepends = [ deepseq hashable ];
|
||||
testDepends = [
|
||||
ChasingBottoms hashable HUnit QuickCheck testFramework
|
@ -0,0 +1,17 @@
|
||||
{ cabal, comonad, keys, pointed, semigroupoids, semigroups, vector
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "vector-instances";
|
||||
version = "3.3";
|
||||
sha256 = "0iiw9p2ivcdfsh81vdy4yn6hbigdwclrkssd68hdsg9n6q3fmq5y";
|
||||
buildDepends = [
|
||||
comonad keys pointed semigroupoids semigroups vector
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://github.com/ekmett/vector-instances";
|
||||
description = "Orphan Instances for 'Data.Vector'";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
15
pkgs/development/libraries/haskell/vector/0.10.9.1.nix
Normal file
15
pkgs/development/libraries/haskell/vector/0.10.9.1.nix
Normal file
@ -0,0 +1,15 @@
|
||||
{ cabal, deepseq, primitive }:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "vector";
|
||||
version = "0.10.9.1";
|
||||
sha256 = "1rdx0r7bwx6217ip9mg9yfymvgv52szqv63y89p41b8sfklmcmi0";
|
||||
buildDepends = [ deepseq primitive ];
|
||||
meta = {
|
||||
homepage = "https://github.com/haskell/vector";
|
||||
description = "Efficient Arrays";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
maintainers = [ self.stdenv.lib.maintainers.andres ];
|
||||
};
|
||||
})
|
@ -10,8 +10,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "yesod-core";
|
||||
version = "1.2.4.3";
|
||||
sha256 = "0p4bgpa1xb4s7yma16lw74gwm5865npdcc0djg1i4xp57q4d3dh6";
|
||||
version = "1.2.4.4";
|
||||
sha256 = "0awz5ijhmd7z292irzz8sp2j3vp3lp57k9rcp4bmgqmxkf826hkj";
|
||||
buildDepends = [
|
||||
aeson attoparsecConduit blazeBuilder blazeHtml blazeMarkup
|
||||
caseInsensitive cereal clientsession conduit cookie dataDefault
|
||||
@ -25,6 +25,7 @@ cabal.mkDerivation (self: {
|
||||
QuickCheck random resourcet shakespeareCss shakespeareJs text
|
||||
transformers wai waiTest
|
||||
];
|
||||
jailbreak = true;
|
||||
meta = {
|
||||
homepage = "http://www.yesodweb.com/";
|
||||
description = "Creation of type-safe, RESTful web applications";
|
||||
|
@ -1,11 +1,11 @@
|
||||
{stdenv, fetchsvn, perl, cmake}:
|
||||
{stdenv, fetchurl, perl, cmake}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libical-0.48-p20120623";
|
||||
src = fetchsvn {
|
||||
url = "https://freeassociation.svn.sourceforge.net/svnroot/freeassociation/trunk/libical";
|
||||
rev = "1130";
|
||||
sha256 = "56caf19abdf44807fda75a67ef0886319551e53c4e4ece4da4fc862e34c64e1a";
|
||||
pName = "libical";
|
||||
name = "${pName}-1.0";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/freeassociation/${pName}/${name}/${name}.tar.gz";
|
||||
sha256 = "1dy0drz9hy0sn2q3s2lp00jb9bis5gsm7n3m4zga49s9ir2b6fbw";
|
||||
};
|
||||
nativeBuildInputs = [ perl cmake ];
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
libtasn1, libplist, readline }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libimobiledevice-1.0.6";
|
||||
name = "libimobiledevice-1.0.7";
|
||||
|
||||
nativeBuildInputs = [ python libplist.swig pkgconfig ];
|
||||
buildInputs = [ readline ];
|
||||
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/downloads/${name}.tar.bz2";
|
||||
sha256 = "0r5gjprrnwgad5zsidn41w01gihramagcpl8cwi540qiwq43svqi";
|
||||
sha256 = "15jznqc52yfwkbw19hgv3r1qd4gcymakbfkyizmr6v4n0sn27n0f";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
18
pkgs/development/libraries/libunibreak/default.nix
Normal file
18
pkgs/development/libraries/libunibreak/default.nix
Normal file
@ -0,0 +1,18 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libunibreak-${version}";
|
||||
version = "1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/vimgadgets/libunibreak/${version}/${name}.tar.gz";
|
||||
sha256 = "0rsivyxnp9nfngf83fiy4v58s5mgdhcjz75nv5nyhxwxnjq35d25";
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://vimgadgets.sourceforge.net/libunibreak/;
|
||||
description = "A library implementing a line breaking algorithm as described in Unicode 6.0.0 Standard";
|
||||
license = "ZLIB";
|
||||
maintainer = [ stdenv.lib.maintainers.coroa ];
|
||||
};
|
||||
}
|
@ -3,11 +3,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mlt-${version}";
|
||||
version = "0.8.8";
|
||||
version = "0.9.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/mlt/${name}.tar.gz";
|
||||
sha256 = "0m4nzxli1pl8w59m4iwwhpmr1xdz7xfknmbl3a0mkkd1jzdiq3nc";
|
||||
sha256 = "1j8wbkwpa6k5anyf4nvf71l8251d7clzj6v09jl3vvfakaf6l37j";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -17,4 +17,13 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
configurePhase = ''qmake INSTALLBASE=$out -after doc.path=$out/share/doc/${name} -r'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Qt widgets for technical applications";
|
||||
homepage = http://qwt.sourceforge.net/;
|
||||
# LGPL 2.1 plus a few exceptions (more liberal)
|
||||
license = "Qwt License, Version 1.0";
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.bjornfor ];
|
||||
};
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
{ stdenv, fetchurl, gfortran }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "blas-20070405";
|
||||
name = "blas-20110419";
|
||||
src = fetchurl {
|
||||
url = "http://www.netlib.org/blas/blas.tgz";
|
||||
sha256 = "07alzd2yxkah96vjczqwi3ld5w00bvqv7qxb2fayvhs1h64jabxw";
|
||||
sha256 = "1d931d91byv2svydpj2ipjh1f2sm1h9ns8ik2w5fwaa8qinxz1za";
|
||||
};
|
||||
|
||||
buildInputs = [gfortran];
|
||||
|
@ -1,14 +1,14 @@
|
||||
{stdenv, fetchurl, unzip, makeWrapper, python, jdk}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "titanium-mobilesdk-3.1.1.v20130612114553";
|
||||
name = "mobilesdk-3.1.4.v20130926144546";
|
||||
src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl {
|
||||
url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.1.v20130612114553-linux.zip;
|
||||
sha1 = "410ba7e8171a887b6a4b3173116430657c3d84aa";
|
||||
url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.4.v20130926144546-linux.zip;
|
||||
sha1 = "da4a03ced67f0e8f442d551bbd41ea01fceeee00";
|
||||
}
|
||||
else if stdenv.system == "x86_64-darwin" then fetchurl {
|
||||
url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.1.v20130612114553-osx.zip;
|
||||
sha1 = "0893a1560ac6fb63369fc9f6ea9550b6649438fa";
|
||||
url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.4.v20130926144546-osx.zip;
|
||||
sha1 = "55f604c8edb989ba214c8ed7538d1b416df0419e";
|
||||
}
|
||||
else throw "Platform: ${stdenv.system} not supported!";
|
||||
|
||||
|
@ -56,11 +56,11 @@ index b2aab986a427d5285d70558bf97f0a42bfe1556e..20592c73fae660009aac621097cf3c4f
|
||||
l = '-l' + m.group(1)
|
||||
else:
|
||||
l = library
|
||||
- return l.replace('$(SDKROOT)', self._SdkPath())
|
||||
- return l.replace('$(SDKROOT)', self._SdkPath(config_name))
|
||||
+ if self._SdkPath():
|
||||
+ return l.replace('$(SDKROOT)', self._SdkPath())
|
||||
+ return l.replace('$(SDKROOT)', self._SdkPath(config_name))
|
||||
+ else:
|
||||
+ return l
|
||||
|
||||
def AdjustLibraries(self, libraries):
|
||||
def AdjustLibraries(self, libraries, config_name=None):
|
||||
"""Transforms entries like 'Cocoa.framework' in libraries into entries like
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user