diff options
Diffstat (limited to 'pkgs')
185 files changed, 5092 insertions, 831 deletions
diff --git a/pkgs/applications/audio/transcode/default.nix b/pkgs/applications/audio/transcode/default.nix new file mode 100644 index 000000000000..c414992a12dd --- /dev/null +++ b/pkgs/applications/audio/transcode/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl, flac, lame, zlib, libjpeg, libvorbis, libtheora, libxml2 +, lzo, libdvdread, pkgconfig, x264, libmpeg2, xvidcore }: + +stdenv.mkDerivation rec { + name = "transcode-1.1.7"; + src = fetchurl { + url = "https://bitbucket.org/france/transcode-tcforge/downloads/${name}.tar.bz2"; + sha256 = "1e4e72d8e0dd62a80b8dd90699f5ca64c9b0cb37a5c9325c184166a9654f0a92"; + }; + + buildInputs = [ flac lame zlib libjpeg libvorbis libtheora libxml2 lzo + libdvdread pkgconfig x264 libmpeg2 xvidcore ]; + configureFlags = "--disable-ffmpeg --disable-libavcodec --disable-libavformat + --enable-lzo --enable-ogg --enable-vorbis --enable-theora --enable-libxml2 + --enable-x264 --enable-libmpeg2 --enable-xvid"; + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + description = "Suite of command line utilities for transcoding video and audio codecs, and for converting beween different container formats"; + homepage = http://www.transcoding.org/; + license = licenses.lgpl2Plus; + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix b/pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix index a832c7d5942c..a9c2478d451c 100644 --- a/pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix +++ b/pkgs/applications/editors/emacs-modes/structured-haskell-mode/default.nix @@ -1,15 +1,16 @@ -{ cabal, emacs, haskellSrcExts }: +{ cabal, emacs, haskellMode, haskellSrcExts }: cabal.mkDerivation (self: { pname = "structured-haskell-mode"; - version = "1.0.2"; - sha256 = "1lwdhlr38y5hdr78nplplr3q0hrjhryw378f1857qh0lvp03gwl2"; + version = "1.0.3"; + sha256 = "0axmw8bj51q8v0wd4jp6giw9dnv0mp7kp8yd16s4nm4hcqgrh5h2"; isLibrary = false; isExecutable = true; - buildDepends = [ haskellSrcExts ]; + buildDepends = [ haskellSrcExts haskellMode ]; buildTools = [ emacs ]; postInstall = '' - emacs -L elisp --batch -f batch-byte-compile "elisp/"*.el + emacs -L elisp -L ${haskellMode}/share/emacs/site-lisp \ + --batch -f batch-byte-compile "elisp/"*.el install -d $out/share/emacs/site-lisp install "elisp/"*.el "elisp/"*.elc $out/share/emacs/site-lisp ''; diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix index 9e2abffc451e..e0d8de157b09 100644 --- a/pkgs/applications/editors/vim/configurable.nix +++ b/pkgs/applications/editors/vim/configurable.nix @@ -21,7 +21,7 @@ composableDerivation { # latest release args.fetchhg { url = "https://vim.googlecode.com/hg/"; - tag = "v7-4-316"; + rev = "v7-4-316"; sha256 = "0scxx33p1ky0wihk04xqpd6rygp1crm0hx446zbjwbsjj6xxn7sx"; }; diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix index 357de6249fa4..bf9472801731 100644 --- a/pkgs/applications/editors/vim/default.nix +++ b/pkgs/applications/editors/vim/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { src = fetchhg { url = "https://vim.googlecode.com/hg/"; - tag = "v7-4-316"; + rev = "v7-4-316"; sha256 = "0scxx33p1ky0wihk04xqpd6rygp1crm0hx446zbjwbsjj6xxn7sx"; }; diff --git a/pkgs/applications/graphics/photivo/default.nix b/pkgs/applications/graphics/photivo/default.nix index 61e3f666dca7..156966ac46c1 100644 --- a/pkgs/applications/graphics/photivo/default.nix +++ b/pkgs/applications/graphics/photivo/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { src = fetchhg { url = "http://code.google.com/p/photivo/"; - tag = "d687864489da"; + rev = "d687864489da"; sha256 = "0f6y18k7db2ci6xn664zcwm1g1k04sdv7gg1yd5jk41bndjb7z8h"; }; diff --git a/pkgs/applications/misc/camlistore/default.nix b/pkgs/applications/misc/camlistore/default.nix new file mode 100644 index 000000000000..80d8dd801a9b --- /dev/null +++ b/pkgs/applications/misc/camlistore/default.nix @@ -0,0 +1,31 @@ +{ stdenv, lib, go, fetchurl }: + +stdenv.mkDerivation rec { + version = "0.7"; + name = "camlistore-${version}"; + + src = fetchurl { + url = "https://github.com/bradfitz/camlistore/archive/0.7.tar.gz"; + sha256 = "0lc35x2b9llrnma0m5czivly0c3l4lh3ldw9hwn83lkh8n0bzn11"; + }; + + buildInputs = [ go ]; + + buildPhase = '' + go run make.go + rm bin/README + ''; + + installPhase = '' + ensureDir $out/bin + cp bin/* $out/bin + ''; + + meta = with stdenv.lib; { + description = "Camlistore is a way of storing, syncing, sharing, modelling and backing up content"; + homepage = https://camlistore.org; + license = licenses.asl20; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/applications/misc/kdeconnect/default.nix b/pkgs/applications/misc/kdeconnect/default.nix index 70f3855c3d66..f0a66d421011 100644 --- a/pkgs/applications/misc/kdeconnect/default.nix +++ b/pkgs/applications/misc/kdeconnect/default.nix @@ -1,15 +1,15 @@ -{ stdenv, fetchurl, gettext, kdelibs, makeWrapper, qca2, qca2_ossl, qjson }: +{ stdenv, fetchurl, gettext, kdelibs, libXtst, makeWrapper, qca2, qca2_ossl, qjson }: stdenv.mkDerivation rec { name = "kdeconnect-${version}"; - version = "0.5.2.1"; + version = "0.7"; src = fetchurl { - url = "http://download.kde.org/unstable/kdeconnect/0.5.2/src/kdeconnect-kde-${version}.tar.xz"; - sha256 = "0g632ha7xcqf839c4h0dz5637bz6gnn2gz76dc0qq09zbrq49i08"; + url = "http://download.kde.org/unstable/kdeconnect/${version}/src/kdeconnect-kde-${version}.tar.xz"; + sha256 = "0a8g3avg9x5j07cf3c16i4w65q3fn1cbs8zxgq0vl14rzdy09q2j"; }; - buildInputs = [ gettext kdelibs makeWrapper qca2 qca2_ossl qjson ]; + buildInputs = [ gettext kdelibs libXtst makeWrapper qca2 qca2_ossl qjson ]; postInstall = '' wrapProgram $out/lib/kde4/libexec/kdeconnectd --prefix QT_PLUGIN_PATH : ${qca2_ossl}/lib/qt4/plugins diff --git a/pkgs/applications/misc/makeself/default.nix b/pkgs/applications/misc/makeself/default.nix index 9ea5f18ee629..e433b83cdeb5 100644 --- a/pkgs/applications/misc/makeself/default.nix +++ b/pkgs/applications/misc/makeself/default.nix @@ -1,23 +1,25 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchgit }: stdenv.mkDerivation rec { - name = "makeself-2.1.5"; - src = fetchurl { - url = "http://megastep.org/makeself/makeself.run"; - sha256 = "0khs19xpid4ng0igrjyz3vsi6a5xyixrrrhgdxpdhd2wnf5nc9w2"; + name = "makeself-2.2.0"; + src = fetchgit { + url = "https://github.com/megastep/makeself.git"; + rev = "b836b9281ae99abe1865608b065551da56c80719"; + sha256 = "f7c97f0f8ad8128f2f1b54383319f2cc44cbb05b60ced222784debdf326f23ad"; }; - unpackPhase = "sh ${src}"; installPhase = '' - cd ${name} mkdir -p $out/{bin,share/{${name},man/man1}} - mv makeself.lsm README $out/share/${name} + mv makeself.lsm README.md $out/share/${name} mv makeself.sh $out/bin/makeself mv makeself.1 $out/share/man/man1/ mv makeself-header.sh $out/share/${name} sed -e 's|HEADER=`dirname $0`/makeself-header.sh|HEADER=`dirname $0`/../share/${name}/makeself-header.sh|' -i $out/bin/makeself ''; - meta = { + meta = with stdenv.lib; { homepage = http://megastep.org/makeself; description = "Utility to create self-extracting packages"; + license = licenses.gpl2; + maintainer = maintainers.wmertens; + platforms = platforms.all; }; } diff --git a/pkgs/applications/misc/nc-indicators/default.nix b/pkgs/applications/misc/nc-indicators/default.nix index a33cfbdf159a..e3a1708326cd 100644 --- a/pkgs/applications/misc/nc-indicators/default.nix +++ b/pkgs/applications/misc/nc-indicators/default.nix @@ -2,13 +2,13 @@ cabal.mkDerivation (self: { pname = "nc-indicators"; - version = "0.1"; - sha256 = "19amwfcbwfxcj0gr7w0vgxl427l43q3l2s3n3zsxhqwkfblxmfy5"; + version = "0.2"; + sha256 = "0z3h0d3cl0xapysq5sh1rnbp8fg8adlq0x3i4ql9xin9in29q27q"; isLibrary = false; isExecutable = true; buildDepends = [ attoparsec gtk hflags lens pipes stm ]; meta = { - homepage = "https://github.com/nilcons/nc-indicators/issues"; + homepage = "https://github.com/nilcons/nc-indicators"; description = "CPU load and memory usage indicators for i3bar"; license = self.stdenv.lib.licenses.asl20; platforms = self.ghc.meta.platforms; diff --git a/pkgs/applications/misc/ocropus/default.nix b/pkgs/applications/misc/ocropus/default.nix index fef3209d11a6..240a975e611e 100644 --- a/pkgs/applications/misc/ocropus/default.nix +++ b/pkgs/applications/misc/ocropus/default.nix @@ -40,7 +40,7 @@ pythonPackages.buildPythonPackage rec { src = fetchhg { url = "https://code.google.com/p/ocropus.ocropy"; - tag = "a6e0fbd820ce"; + rev = "a6e0fbd820ce"; sha256 = "1s0v0gd6psfjp6lghwl2dj49h18mgf2n2z8hqzw8430nzhglnlvr"; }; diff --git a/pkgs/applications/networking/browsers/dwb/default.nix b/pkgs/applications/networking/browsers/dwb/default.nix index 87a548cbb3b7..3f490315515b 100644 --- a/pkgs/applications/networking/browsers/dwb/default.nix +++ b/pkgs/applications/networking/browsers/dwb/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchgit, pkgconfig, makeWrapper, libsoup, webkit, gtk3, gnutls, json_c, - m4, glib_networking, gsettings_desktop_schemas }: + m4, glib_networking, gsettings_desktop_schemas, dconf }: stdenv.mkDerivation { name = "dwb-2014-06-17"; @@ -19,7 +19,7 @@ stdenv.mkDerivation { preFixup='' wrapProgram "$out/bin/dwb" \ - --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \ + --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules:${dconf}/lib/gio/modules" \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share" wrapProgram "$out/bin/dwbem" \ --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix new file mode 100644 index 000000000000..b8e3124f1858 --- /dev/null +++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix @@ -0,0 +1,337 @@ +# This file is generated from generate_nix.rb +# Execute the following command in a temporary directory to update the file. +# +# ruby generate_nix.rb > default.nix + +{ stdenv, fetchurl, config +, alsaLib +, atk +, cairo +, cups +, dbus_glib +, dbus_libs +, fontconfig +, freetype +, gconf +, gdk_pixbuf +, glib +, glibc +, gst_plugins_base +, gstreamer +, gtk +, libX11 +, libXScrnSaver +, libXext +, libXinerama +, libXrender +, libXt +, libcanberra +, libgnome +, libgnomeui +, mesa +, nspr +, nss +, pango +, heimdal +, pulseaudio +, systemd +}: + +let + version = "30.0"; + sources = [ + { locale = "ach"; arch = "linux-i686"; sha256 = "44d2fc9d491b6c001e35cff6e5f1c38c8561d24f8fe2dfb4d79365bcabe965ea"; } + { locale = "ach"; arch = "linux-x86_64"; sha256 = "e9fb52a3b82a1434b7fa3bae606749819672c96ce8678c51f1fdbc68520e26bf"; } + { locale = "af"; arch = "linux-i686"; sha256 = "bfce74c891ea370ce4e0fe43d578c3c0050d2655fff7372806ed6be338b2c438"; } + { locale = "af"; arch = "linux-x86_64"; sha256 = "18408a9c3f3b8c4d9f8cfe067ac23ddcdd3d3a7a22892ba8d74de5679a064db6"; } + { locale = "an"; arch = "linux-i686"; sha256 = "601efbf7944408ba1ac35831eaa92c4910cd904bfadc32895ff8d756c70ae934"; } + { locale = "an"; arch = "linux-x86_64"; sha256 = "0ba4c272ebac9ecafe5dbfb7fbba1cd2790d126f5b1756ab9a323c94b644df0b"; } + { locale = "ar"; arch = "linux-i686"; sha256 = "23ea3168aea75b044fa217b78b01a2dc8c9dd92171d726c4a78c23cffc474469"; } + { locale = "ar"; arch = "linux-x86_64"; sha256 = "dae2c1634e17b8c3e276e4c758c4d4c3b1b0d6006adac8e420c13b6f09a6cf53"; } + { locale = "as"; arch = "linux-i686"; sha256 = "7d36bd4589556374822f2ab5dd102d557257b5e0b529d1c963f96e9ab6a08850"; } + { locale = "as"; arch = "linux-x86_64"; sha256 = "c13ccf3546bafcfeb41c33762e41af249306d4bcfd3ad7fc957db481372be0dc"; } + { locale = "ast"; arch = "linux-i686"; sha256 = "853310674d7011956d760883af15b8e343250f8fc3acb3067e0f5a3d978c06ff"; } + { locale = "ast"; arch = "linux-x86_64"; sha256 = "2b938081e8672ed5ae16c40c6300e585a26f54da278726f48b98f3ca3e065662"; } + { locale = "be"; arch = "linux-i686"; sha256 = "b9acce210f2adf188ba9a3d92774a846a263baa5e076bb9452b89ca5609d6ac8"; } + { locale = "be"; arch = "linux-x86_64"; sha256 = "dd2a33ee1ed8c848454b6e64a0c1527f193d070e4d867c4f13fa84f39c9bfecd"; } + { locale = "bg"; arch = "linux-i686"; sha256 = "ee060cd395ef28bbad4be74aa42e2a51e7ad866183d139bffbcc7634dc94d738"; } + { locale = "bg"; arch = "linux-x86_64"; sha256 = "11a5dd807083da8c3132d9d6518dc674642418eff1fccf68e451ac67b90f141a"; } + { locale = "bn-BD"; arch = "linux-i686"; sha256 = "339d286f7f8f469bb6f9f85a8b21a745ecc42717dc91c21c7db88822e9be661a"; } + { locale = "bn-BD"; arch = "linux-x86_64"; sha256 = "fc3f06743a84a7684e43cd4efedb02a126dd119f6141da49c6120f1bbcdf9392"; } + { locale = "bn-IN"; arch = "linux-i686"; sha256 = "c585982368f258a8a728f782c37428311f0b6a6512231c077a439dd93645c3a2"; } + { locale = "bn-IN"; arch = "linux-x86_64"; sha256 = "00b9af4425050ec42b4a45a3c4a16700edcc66297331b601950fb81421ef8eb4"; } + { locale = "br"; arch = "linux-i686"; sha256 = "b86d944592f16f5f0e558106e3464248e3d686f45527a40fb64aaa79d9f73422"; } + { locale = "br"; arch = "linux-x86_64"; sha256 = "b894c12508f0b0a892154ea61fb2bb01947929041a63518f7c405ed976cc4d3f"; } + { locale = "bs"; arch = "linux-i686"; sha256 = "f7da0fead608f63c4a5be92fed9e0109fbe7288948d15dde05e10bba80b47743"; } + { locale = "bs"; arch = "linux-x86_64"; sha256 = "1cb090f9b16bcae95055377bc14a531697c480ad50e3a098dbd572770924d558"; } + { locale = "ca"; arch = "linux-i686"; sha256 = "0b36330715f8909e1515c535a06f4e3fdd7660de11b3424b4ce88f336561935f"; } + { locale = "ca"; arch = "linux-x86_64"; sha256 = "c6e9e545d09e589fd5fbfd2c6482a5ef366c470e294823b3ba05c5e728bca2c2"; } + { locale = "cs"; arch = "linux-i686"; sha256 = "ff1ca239be0e99b923c63c5bbc425dd2989bc40dbdc82dd731d7173fd539406a"; } + { locale = "cs"; arch = "linux-x86_64"; sha256 = "fe8472d6a4bf9fcda3caef51449fc3e20e1fbadbb772b330a012ffa7219afae3"; } + { locale = "csb"; arch = "linux-i686"; sha256 = "db1b7dbc7b0cd564a04b3a37827e8d77277cd7ba6a59403c45115d34e637f463"; } + { locale = "csb"; arch = "linux-x86_64"; sha256 = "023dd75e02f41a2ce9991fb40a8a46767f1a10da876a390035a084c5b97bd9d2"; } + { locale = "cy"; arch = "linux-i686"; sha256 = "9a6ac60099b03bdeb71c1a7739dafeff4b1682ffc43997191196e1f590421afa"; } + { locale = "cy"; arch = "linux-x86_64"; sha256 = "a5f2030fb08c0dd6dff95310209ed7c6ee613680dd500f00e30e26c547f9c249"; } + { locale = "da"; arch = "linux-i686"; sha256 = "99a893ac19b0ca28177c8957d7296e6deef9ddb36a6b5b17823cb1e6fc9ec683"; } + { locale = "da"; arch = "linux-x86_64"; sha256 = "69f29e795f203fe47e22daf1259c2ecfb39c362babefbbccb31405f4632f236b"; } + { locale = "de"; arch = "linux-i686"; sha256 = "925aac0800ce63a88fadc945da40b00ed6dde327637821518a372d7affb6e450"; } + { locale = "de"; arch = "linux-x86_64"; sha256 = "d86c5d2102a95ff5a6e580a1ca7af25c2f470211182ef70e988b29b195be6dd4"; } + { locale = "el"; arch = "linux-i686"; sha256 = "af07fac82dea32d33bd6bc440e2a645eb160d196cf0d4883b878d3d2c584f81a"; } + { locale = "el"; arch = "linux-x86_64"; sha256 = "fcc96c25422837f19f9ff6cde02c81c4a5a3b7c8e6809b90c8761519571db1f6"; } + { locale = "en-GB"; arch = "linux-i686"; sha256 = "758f7bb669743d6067e416c26f43806b16ddd16511a6818373e70960cbbd7151"; } + { locale = "en-GB"; arch = "linux-x86_64"; sha256 = "d46ba3d642bf43fca46dfb29efb5d08a15f114eb9facc868e86c31f7c9c98014"; } + { locale = "en-US"; arch = "linux-i686"; sha256 = "4bca44a1ba94bf5616f7ea650e37cd3e5a719546def9e4a08ee88aedbc3a4db6"; } + { locale = "en-US"; arch = "linux-x86_64"; sha256 = "3303cc600153d0198dace9826b6883aa510d4e380aa985b092b1da67ad865625"; } + { locale = "en-ZA"; arch = "linux-i686"; sha256 = "13736870573863aab644bf2be2219fe4b5c6bde4bd79b84f22e12d39e7cda6e0"; } + { locale = "en-ZA"; arch = "linux-x86_64"; sha256 = "7e88fa9f355f6787d38e75d86d5b592a1a2cec208255f276887f53a12beb9e97"; } + { locale = "eo"; arch = "linux-i686"; sha256 = "ae4446e223c0169dd0b56db58760fdb323a2bec8135e45c79d385d895b64cee8"; } + { locale = "eo"; arch = "linux-x86_64"; sha256 = "202f61dd8e5506594ae70bbee9150d86c8037887f8345871dc5c1c9e498b1d66"; } + { locale = "es-AR"; arch = "linux-i686"; sha256 = "8fb276ed26fd46fceb029fbade706cb6e55d2958f03400ec1290784c533888c4"; } + { locale = "es-AR"; arch = "linux-x86_64"; sha256 = "78130525d30d7c592bb63d7cedf3ab5db804d457c4d127d90b93d94501ad7b3c"; } + { locale = "es-CL"; arch = "linux-i686"; sha256 = "ef6bf393a681f4a08031eeda61bba3614ebfab222fed43f9f8b21cfa8eb3862e"; } + { locale = "es-CL"; arch = "linux-x86_64"; sha256 = "e56224bca0ebfab9eedecafafd792e48cb67e3f8741c4d5a94c8f74f634cecf6"; } + { locale = "es-ES"; arch = "linux-i686"; sha256 = "9e007e6aa0f8aa3d1fac5dc13e98f81c23e6ff1e574545c021f8f7feeff86ce2"; } + { locale = "es-ES"; arch = "linux-x86_64"; sha256 = "d4ff94f46fd086300992a30a1c4a8aa97ad7164d6cd26e82b20b5d0680b38169"; } + { locale = "es-MX"; arch = "linux-i686"; sha256 = "9db42a0557838b23ac4937adfec407804e624e679e9ffd6da739d17cdfbaab78"; } + { locale = "es-MX"; arch = "linux-x86_64"; sha256 = "d42d619d6da78d0bbcb32b0a93a2eaa623eadb3a5af43e5b8b14400e6e969779"; } + { locale = "et"; arch = "linux-i686"; sha256 = "5947822f3f02bd4ba530ad978de1a9d237981e3abdf1598e44095c650794d1ff"; } + { locale = "et"; arch = "linux-x86_64"; sha256 = "7521a4db287bb928f50b64817f3631e96ea4cead81b1a84ab7c3b930b3450e86"; } + { locale = "eu"; arch = "linux-i686"; sha256 = "44095e98e74205fa012a2c0c636de3fe9cfb79d5729abf15214c1e7734946014"; } + { locale = "eu"; arch = "linux-x86_64"; sha256 = "2032dfbc82a9aca1a2f4cf67e6089400bf305d13906f048c5c9b906a7201a9fb"; } + { locale = "fa"; arch = "linux-i686"; sha256 = "469b8008287c93e152e762e82fb61644384c1e2631a6c45033503652daed09b1"; } + { locale = "fa"; arch = "linux-x86_64"; sha256 = "61ea0d8941d22083f918d014d56a613788d1f4f549e5a62d50a1f9071439a36f"; } + { locale = "ff"; arch = "linux-i686"; sha256 = "81a0083e5e4136e3ab3e6db0e2adcedfae7572722655a9cb8b9ca388c6057342"; } + { locale = "ff"; arch = "linux-x86_64"; sha256 = "0efe16da918288754a3af816d72448a73690eb71b110cf3ff0586ee7505b9735"; } + { locale = "fi"; arch = "linux-i686"; sha256 = "a0ee069e7c3100b921aab7c54c5d32741df4e058f52cb7f42acb2643bd534b30"; } + { locale = "fi"; arch = "linux-x86_64"; sha256 = "55c84d504603d648e7d72a2fb8badb0bc9148cb376bb0cc6054f091867cb2613"; } + { locale = "fr"; arch = "linux-i686"; sha256 = "9c9abea13db23ef5ef8c9a3ccb5a0702b44a8db2402f43f01a478eb61e7ddf34"; } + { locale = "fr"; arch = "linux-x86_64"; sha256 = "ce26fc67cbc2031880ffa3529a59ca4122016258ab1c023e23247c26308b6a3e"; } + { locale = "fy-NL"; arch = "linux-i686"; sha256 = "4a734880ed65a207d98630647a341644df4f68149c50ce5e683bb21b5c27f2c6"; } + { locale = "fy-NL"; arch = "linux-x86_64"; sha256 = "bace955c686456d7894ca7bc1cf854eb158d6183050318efc73768e232c9a413"; } + { locale = "ga-IE"; arch = "linux-i686"; sha256 = "4801f40ebd820b8f229cfcd04a04351fcee9f78268af1c9863089ef6c64d736a"; } + { locale = "ga-IE"; arch = "linux-x86_64"; sha256 = "c417c0182e6f706473bc4b7cf8c14aec96f96e21c17b8593b71ff38c97f7e9d2"; } + { locale = "gd"; arch = "linux-i686"; sha256 = "15a9d316d472d2918eff0c6f02600e40a8f62d7ef53ab14c57537fdda0b5257a"; } + { locale = "gd"; arch = "linux-x86_64"; sha256 = "8fcdcf093148222865a905586774dae5d805ef22c01afadeaabe3f0c7b315dba"; } + { locale = "gl"; arch = "linux-i686"; sha256 = "83b0ccfe7cf7166899d17b2c9b1ea8effda9cf02024698f8db8f943a388bb3dc"; } + { locale = "gl"; arch = "linux-x86_64"; sha256 = "550026595e6e59405b5869183af056ba5a60a303270f1a176ef25e3db1c70289"; } + { locale = "gu-IN"; arch = "linux-i686"; sha256 = "7e7dc86fa805808931ba57455b99c9273a4b0aa60998affce3c4b06f0ae7fc70"; } + { locale = "gu-IN"; arch = "linux-x86_64"; sha256 = "e0f35d7fe7875785e3749131cf86c5cbea5cbd7b3abd2c2c69f5f8376d3e53d7"; } + { locale = "he"; arch = "linux-i686"; sha256 = "5c200c8da3209c2120a8576c30ab609331b52807d0640daaa1a70f665c776969"; } + { locale = "he"; arch = "linux-x86_64"; sha256 = "6923a64d1ac5453453f148d38f116faca41be5b1d0a13d4f128bb73db67cb8e2"; } + { locale = "hi-IN"; arch = "linux-i686"; sha256 = "6a7e5d06169d6dd87e505012604c93a28440156a3f81e6fe24d567f9c2b2a919"; } + { locale = "hi-IN"; arch = "linux-x86_64"; sha256 = "56801593b9dd5ecefed8d7eaf438879dd23006ffff9a31c543861259dedf8263"; } + { locale = "hr"; arch = "linux-i686"; sha256 = "4573cd0269639d122496bcaf842d8c741f4d54e8f57d0690b97d8e7e86ee7e74"; } + { locale = "hr"; arch = "linux-x86_64"; sha256 = "753984384829229601fbe55d0b6615f3432fdf9babe908fb642f6ac79c749727"; } + { locale = "hu"; arch = "linux-i686"; sha256 = "c330478e6e77eff117bce58e17661b83a30308f0a680f648fbf06d1c00f3883c"; } + { locale = "hu"; arch = "linux-x86_64"; sha256 = "9d118ba236aa7a9b517278c375aa4e4fa65f85c71b8bea9c41702f6ae7b815cb"; } + { locale = "hy-AM"; arch = "linux-i686"; sha256 = "48c1691073b6ede77f5c5d5ae07af7372f17b9f52fd92950c2cca0a01b3b340e"; } + { locale = "hy-AM"; arch = "linux-x86_64"; sha256 = "beda26cefeeeeee59ea52fdd28e1e3025ca4cc3124541fc6825100a61eb398d8"; } + { locale = "id"; arch = "linux-i686"; sha256 = "8cf6d0bc2d4bcc68a5ddc935c3bd6ed19a63284dc3227e849be729645a6171d4"; } + { locale = "id"; arch = "linux-x86_64"; sha256 = "8be5900b83840871ffb6faba08fea9b35f9f396cae08b228c68e333719fb819f"; } + { locale = "is"; arch = "linux-i686"; sha256 = "7c167389105063b84d507b09c689fa18bf854fd695010c8273b9711b21a24034"; } + { locale = "is"; arch = "linux-x86_64"; sha256 = "c79321c83c9e654f6eaf96ddf5d24f279d517fbf35dfdf923acf026124919598"; } + { locale = "it"; arch = "linux-i686"; sha256 = "a3eb17e0eda3cbf8ffbbd1ecd1716929ac87a801f060dd8ed5291298667775a9"; } + { locale = "it"; arch = "linux-x86_64"; sha256 = "3742453f0748911b393fed804e5827f014cc595a9df4516438dfa163d5050411"; } + { locale = "ja"; arch = "linux-i686"; sha256 = "fa030c64e04766ae5200370586c08b2f25627343586cd8a0486e583f345c466e"; } + { locale = "ja"; arch = "linux-x86_64"; sha256 = "fddeae03ffdfef0f6cc999807e001ea931c15b1833da48655bcb5845f1e017a3"; } + { locale = "kk"; arch = "linux-i686"; sha256 = "39d94b10fa751faf7423e5d43cd07ef4485ff26e21e47d106d2268058e2f33d9"; } + { locale = "kk"; arch = "linux-x86_64"; sha256 = "1dc7138dd5c08088479c5e7e8054d7ed640504860a0043ecea2c8b0c9c1892f9"; } + { locale = "km"; arch = "linux-i686"; sha256 = "0d12a305de4a63fc6c6394bd4044f44ca3626cbc41ca9ef1adad6d5041f6f1fd"; } + { locale = "km"; arch = "linux-x86_64"; sha256 = "7710091695dd100b7f33585fce58c54fec462a96540a7d791f1935088f21fadf"; } + { locale = "kn"; arch = "linux-i686"; sha256 = "b039e6a1114522ccae10b89ab794a222966fbf0914513b3c14f05c082a78b922"; } + { locale = "kn"; arch = "linux-x86_64"; sha256 = "cf82965b25d3990a57d861d688f1bd69e5b069fe281937274060ebe36ddbb8a6"; } + { locale = "ko"; arch = "linux-i686"; sha256 = "8b9378d39d7b42852c2bb537b0e85312760c343e6485826ed949ab4617293025"; } + { locale = "ko"; arch = "linux-x86_64"; sha256 = "4b946a0cbedad2b8d0c3598c04eeb058cea05d6d7e6388e4cfa3146a40f7c449"; } + { locale = "ku"; arch = "linux-i686"; sha256 = "11950c4a54c6a165e924fb6e68bcc46d63b5fddfcd2561c58a0ce401c0146d36"; } + { locale = "ku"; arch = "linux-x86_64"; sha256 = "37a07a4e059580c31433b419bcd61d928ad1db7e607cf8443378472d54b61b78"; } + { locale = "lij"; arch = "linux-i686"; sha256 = "c0efca49f31800a3773b0d05add56b195d1cbea287108803bb1ef5249a0dc94f"; } + { locale = "lij"; arch = "linux-x86_64"; sha256 = "6e4b2d8c5e9942bc469f722110ba310b2ccdc4dda6e3baee93ae54012ae658a2"; } + { locale = "lt"; arch = "linux-i686"; sha256 = "acde9010aa815f6645868b03f3d68d9a24c450ed830f063e2846ac1219ee628b"; } + { locale = "lt"; arch = "linux-x86_64"; sha256 = "c2491cd3e5d11c302d7ec3191d646e2073c46f69966fc382901a93d16fb0c902"; } + { locale = "lv"; arch = "linux-i686"; sha256 = "7411de62c4d8c01c8bb15b3f2dfc2e2ed17755e2f9856ead8e5e0fd05971ffd5"; } + { locale = "lv"; arch = "linux-x86_64"; sha256 = "e8e57e629396eb180e0041a50ae98ecb2292f514d423423748e4d4cebc54fb59"; } + { locale = "mai"; arch = "linux-i686"; sha256 = "26a053e48f4e6f04e4856a0dcb26e577a6ddb99afc883786d9c260d57e5e4a6d"; } + { locale = "mai"; arch = "linux-x86_64"; sha256 = "86be2c736aa5ccf926d44f24afdb2d40c28444b5bd6cf090f9a847199b38b492"; } + { locale = "mk"; arch = "linux-i686"; sha256 = "dcf7759bcde70158298ad9e2434e37d4e8240e00589a83dd8dbba53c35466a58"; } + { locale = "mk"; arch = "linux-x86_64"; sha256 = "056297d6404794a8da78aeceb620b0ebbcb38a693ee1079cc02e4d0411e40ec3"; } + { locale = "ml"; arch = "linux-i686"; sha256 = "2d632b3a5b60f18955906adca80b7ac7af3bfa39d03afd308efd1136cfc8971d"; } + { locale = "ml"; arch = "linux-x86_64"; sha256 = "b54a9d47cadeae4f92d22a362ca887a18a16ef64500149ac8eb9355dbbe5971b"; } + { locale = "mr"; arch = "linux-i686"; sha256 = "e66b22488bf2c772fa6d29cf43f3e9c1aa2a1a867620a1144af8cb92c2647651"; } + { locale = "mr"; arch = "linux-x86_64"; sha256 = "da982205e9b659dd66ab05ca815324642bed2117e668e67ad620bb2d87c5d1c8"; } + { locale = "ms"; arch = "linux-i686"; sha256 = "ad39ffa6d6d765c1e983d885f5d139a28e481d536068d517b4807137fa8d3036"; } + { locale = "ms"; arch = "linux-x86_64"; sha256 = "fb1b6ed5e2e7247beb69f3d0ad937f76ce7c1107ccdad742ff5085d4b3a8da98"; } + { locale = "nb-NO"; arch = "linux-i686"; sha256 = "5220da4627863f9fa1c11886e9c19c315547afafa96c98b22a1a4359c75f1056"; } + { locale = "nb-NO"; arch = "linux-x86_64"; sha256 = "5f9d60faadc7b76b010cd9cf35922b1881377b535e8afc5d9b974651156df866"; } + { locale = "nl"; arch = "linux-i686"; sha256 = "357b28841ea861b8297a4986460d1d265b27202c37bb296dcc69224f9b07fc51"; } + { locale = "nl"; arch = "linux-x86_64"; sha256 = "9a8505da2fe045ab6c2a2277d2d043374a26f106a5966b00f42e22fb26cf929a"; } + { locale = "nn-NO"; arch = "linux-i686"; sha256 = "f115bb50d1e052584caf7363db875ae222ee37449fa151e2f313c157a6274d76"; } + { locale = "nn-NO"; arch = "linux-x86_64"; sha256 = "2e7829a8a20c946bddce13b7b3d1b3600f90d90d2438f3eb69188d47203b264d"; } + { locale = "or"; arch = "linux-i686"; sha256 = "9ad48bdf2b7f1deedb05bdcc49740d5075ebf6ec228d82a7ed455c6bb36d7cb0"; } + { locale = "or"; arch = "linux-x86_64"; sha256 = "a007bc73fb1ea7765016e9faebac2c4f5e0111a45b3d75d1e55f4de8931796a2"; } + { locale = "pa-IN"; arch = "linux-i686"; sha256 = "8a38d2b1516ed4b58e36d266cd25a5bd10548f9e412076c9b4f1f27256c98c2a"; } + { locale = "pa-IN"; arch = "linux-x86_64"; sha256 = "664fa562261532d0f6bad10b84e15d47b69073768c2d12986c8d776eb1af8ddd"; } + { locale = "pl"; arch = "linux-i686"; sha256 = "3bb8963f1e3dcdb22cc55feebb2583fefd6f3760f4e6f2cc754174079d4ca07f"; } + { locale = "pl"; arch = "linux-x86_64"; sha256 = "710f1d86d2974d6ad3c63ebc0873518fd59f218ba07b27d06fb75c83af2c632e"; } + { locale = "pt-BR"; arch = "linux-i686"; sha256 = "cd2fafbd2291bad8481c4086db3c2973a7869b28a5e68a5ff199079814c6b3fc"; } + { locale = "pt-BR"; arch = "linux-x86_64"; sha256 = "f0ba5dc2366757841afb9c9f7799c40667304c36efe7da284202e8e7a45aa1fc"; } + { locale = "pt-PT"; arch = "linux-i686"; sha256 = "051af14810ad0cee4487757833f1f5b4a6f6f903f3cecf00d00410c1324d9ce4"; } + { locale = "pt-PT"; arch = "linux-x86_64"; sha256 = "82102b33dc1989bc3aa49da3915baf7e4012afe6e4bd7f80a301dfe847f3dbbe"; } + { locale = "rm"; arch = "linux-i686"; sha256 = "02051668e46d98f4e2e5becc3192f6173dfdf3a48cc82264c5821be06c5e12a0"; } + { locale = "rm"; arch = "linux-x86_64"; sha256 = "9600c1d272785b946058ffac9e57a8b1701d065f24fa940ad22e4b5aec2efad9"; } + { locale = "ro"; arch = "linux-i686"; sha256 = "7f17cbd3041396135eee08eac597c8c6a936e5a33d67d2b5de8ae157a56719ad"; } + { locale = "ro"; arch = "linux-x86_64"; sha256 = "ba1de85abe53a7d66f6311d6a202d91f86e871bace168cf60a759ab0e17eccdb"; } + { locale = "ru"; arch = "linux-i686"; sha256 = "9dcd0c2b5671fc5849b01f2932504a7217fca9a4b4eca8e9b6ff8f5a146517e2"; } + { locale = "ru"; arch = "linux-x86_64"; sha256 = "725214900968e4e648d3d13635bf72d34910eb31a30b83a3e7ba9c5c4085c2d7"; } + { locale = "si"; arch = "linux-i686"; sha256 = "d22ed75aa727351efcdba1cffe8e24ff305943c9a3072cac08b004677cf6a028"; } + { locale = "si"; arch = "linux-x86_64"; sha256 = "89d60c682413949a6dad4b7fd49cc4508c4e067fe5847c5f21d5e25a953f195f"; } + { locale = "sk"; arch = "linux-i686"; sha256 = "4ecbc58df00eaf4fafb1c33a93493bdd3e544562a67c60e2d4d93da90d369261"; } + { locale = "sk"; arch = "linux-x86_64"; sha256 = "75baa2c5153e282e2671d6222b7fc8c3b9cfc2b9ee0a595a4451fd314a928fb4"; } + { locale = "sl"; arch = "linux-i686"; sha256 = "53e2ae3525d0bd2005a86bf7ed3f27ca66906ddfceb85a738bd60e46ba2df773"; } + { locale = "sl"; arch = "linux-x86_64"; sha256 = "2dcc5592a49767dc3f2a7d40387bb550fd36724419ff567f9d107e32b2cf2d6d"; } + { locale = "son"; arch = "linux-i686"; sha256 = "d3b7372c59b21d0393768197517b3666ab78705b04a6e84a3345da031bad3776"; } + { locale = "son"; arch = "linux-x86_64"; sha256 = "fc017e7a18701880c7a54c23a0f77a6521aae17880dbc562e2b37167ba918fa0"; } + { locale = "sq"; arch = "linux-i686"; sha256 = "7f9c9100c559ebfbfff35adc694199079930f4bf9f1f6a820c0e17d80ea0e12b"; } + { locale = "sq"; arch = "linux-x86_64"; sha256 = "0f3fcddabab8263eb4c238942c45c0b5efc20c169948da24c56ed401a85209dc"; } + { locale = "sr"; arch = "linux-i686"; sha256 = "6281e2f849b3c530ff383cfd4cdc4ab06115362c3d57ba8133a9f799af08e815"; } + { locale = "sr"; arch = "linux-x86_64"; sha256 = "368ca83faa5ef3640f71d977916614369ebac1622681e828b75e9abf6ebeb425"; } + { locale = "sv-SE"; arch = "linux-i686"; sha256 = "9f77f497fc3e8c585bd546c0bb95c92f9f37d683e092c0762b3fe0022b6d39b5"; } + { locale = "sv-SE"; arch = "linux-x86_64"; sha256 = "0aa21764f0ca58591e3cfebba75196edd51a8fdbadb738f036994178c9612a67"; } + { locale = "ta"; arch = "linux-i686"; sha256 = "463ce70405d84945c201cca56c84171e097e6a0420d38cd453a0836fad82f09c"; } + { locale = "ta"; arch = "linux-x86_64"; sha256 = "db7e78bc1f4bcb573474806d19324eca58f42008fb0b0fa856f701f1430aeefd"; } + { locale = "te"; arch = "linux-i686"; sha256 = "18643daf675f8ef9785a0039d012c3a8ce96f4d228426651c5f09c292cbfb335"; } + { locale = "te"; arch = "linux-x86_64"; sha256 = "d9f8a260fc47b608fd523c61e9c6981776997f4b7fc247e794be32d177abfbc0"; } + { locale = "th"; arch = "linux-i686"; sha256 = "e03b80d55d2a545ab3219c5e88ed6b7d6974945e32321a2fc96039a6996638f6"; } + { locale = "th"; arch = "linux-x86_64"; sha256 = "0416fd2b7e7ddde59a101fcba8258622a83b739effb327984fa8405e634c2121"; } + { locale = "tr"; arch = "linux-i686"; sha256 = "75a49ce141c9a04254185b62af72c7e8c214e19e5257ff308b294aee6ac49a28"; } + { locale = "tr"; arch = "linux-x86_64"; sha256 = "0845a554b299b848d35894144d3ba5c7e0b808bcc9b2732e904463258ca73cb7"; } + { locale = "uk"; arch = "linux-i686"; sha256 = "a89f58c0f20a3ff7e609f572a4786f06b48886b7e2d303824417f42af49c8df2"; } + { locale = "uk"; arch = "linux-x86_64"; sha256 = "b45768588aaf80917c8ad40d62835cc96c3dadf97715234e66542b96eeb8db8e"; } + { locale = "vi"; arch = "linux-i686"; sha256 = "3fc35e59ecbbdf1b76b5b66e962a60eb724d9514d622879108725bcf7881fd1e"; } + { locale = "vi"; arch = "linux-x86_64"; sha256 = "88116edeeecbfe1ac03af0da26aff84bc3aa5ba00574e899ec08e0d68243f509"; } + { locale = "xh"; arch = "linux-i686"; sha256 = "a3afd3ac14049c72a9be28fb9a0849e4d3c5c2f13cb160c480988c4231679329"; } + { locale = "xh"; arch = "linux-x86_64"; sha256 = "569587e9cc4cd99899d2939367d56f2e4e9ae333b583064a648f05a8b0b58e2c"; } + { locale = "zh-CN"; arch = "linux-i686"; sha256 = "358e44998142e56356b839a51dff97fe85e6293424bd0c148decf61f01b6125b"; } + { locale = "zh-CN"; arch = "linux-x86_64"; sha256 = "7b5a84dbbe361a775aaadad8fd328e24f6cf2e336297f1d5906f51ff5d3dfae7"; } + { locale = "zh-TW"; arch = "linux-i686"; sha256 = "cf2cb9bed37dffe178a524ef5fe983e0e8b18f17c999e98474ae13e012da54da"; } + { locale = "zh-TW"; arch = "linux-x86_64"; sha256 = "aa0f1c5fb96dc4585e70fbcc291c6842be25e5d59be8bf39e8dc0232e9f1a76c"; } + { locale = "zu"; arch = "linux-i686"; sha256 = "775f6507ae8d6c2ef6e29e6b4d00453dcf9a0c9651eb9da482c78b5ebe64f2cd"; } + { locale = "zu"; arch = "linux-x86_64"; sha256 = "603510372a52497a8e41468dbc193afa25b0615f504f4548201deb89f27bd354"; } + ]; + + arch = if stdenv.system == "i686-linux" + then "linux-i686" + else "linux-x86_64"; + + isPrefixOf = prefix: string: + builtins.substring 0 (builtins.stringLength prefix) string == prefix; + + sourceMatches = locale: source: + (isPrefixOf source.locale locale) && source.arch == arch; + + systemLocale = config.i18n.defaultLocale or "en-US"; + + defaultSource = stdenv.lib.findFirst (sourceMatches "en-US") {} sources; + + source = stdenv.lib.findFirst (sourceMatches systemLocale) defaultSource sources; + +in + +stdenv.mkDerivation { + name = "firefox-bin-${version}"; + + src = fetchurl { + url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/${version}/${source.arch}/${source.locale}/firefox-${version}.tar.bz2"; + inherit (source) sha256; + }; + + phases = "unpackPhase installPhase"; + + libPath = stdenv.lib.makeLibraryPath + [ stdenv.gcc.gcc + alsaLib + atk + cairo + cups + dbus_glib + dbus_libs + fontconfig + freetype + gconf + gdk_pixbuf + glib + glibc + gst_plugins_base + gstreamer + gtk + libX11 + libXScrnSaver + libXext + libXinerama + libXrender + libXt + libcanberra + libgnome + libgnomeui + mesa + nspr + nss + pango + heimdal + pulseaudio + systemd + ] + ":" + stdenv.lib.makeSearchPath "lib64" [ + stdenv.gcc.gcc + ]; + + # "strip" after "patchelf" may break binaries. + # See: https://github.com/NixOS/patchelf/issues/10 + dontStrip = 1; + + installPhase = + '' + mkdir -p "$prefix/usr/lib/firefox-bin-${version}" + cp -r * "$prefix/usr/lib/firefox-bin-${version}" + + mkdir -p "$out/bin" + ln -s "$prefix/usr/lib/firefox-bin-${version}/firefox" "$out/bin/" + + for executable in \ + firefox mozilla-xremote-client firefox-bin plugin-container \ + updater crashreporter webapprt-stub + do + patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ + "$out/usr/lib/firefox-bin-${version}/$executable" + done + + for executable in \ + firefox mozilla-xremote-client firefox-bin plugin-container \ + updater crashreporter webapprt-stub libxul.so + do + patchelf --set-rpath "$libPath" \ + "$out/usr/lib/firefox-bin-${version}/$executable" + done + + # Create a desktop item. + mkdir -p $out/share/applications + cat > $out/share/applications/firefox.desktop <<EOF + [Desktop Entry] + Type=Application + Exec=$out/bin/firefox + Icon=$out/lib/firefox-bin-${version}/chrome/icons/default/default256.png + Name=Firefox + GenericName=Web Browser + Categories=Application;Network; + EOF + ''; + + meta = with stdenv.lib; { + description = "Mozilla Firefox, free web browser"; + homepage = http://www.mozilla.org/firefox/; + license = { + shortName = "unfree"; # not sure + fullName = "unfree"; + url = http://www.mozilla.org/en-US/foundation/trademarks/policy/; + }; + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb b/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb new file mode 100644 index 000000000000..a768b1f8dffc --- /dev/null +++ b/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb @@ -0,0 +1,217 @@ +# TODO share code with thunderbird-bin/generate_nix.rb + +version = if ARGV.empty? + "latest" + else + ARGV[0] + end + +base_path = "download-installer.cdn.mozilla.net/pub/firefox/releases" + +arches = ["linux-i686", "linux-x86_64"] + +arches.each do |arch| + system("wget", "--recursive", "--continue", "--no-parent", "--reject-regex", ".*\\?.*", "--reject", "xpi", "http://#{base_path}/#{version}/#{arch}/") +end + +locales = Dir.glob("#{base_path}/#{version}/#{arches[0]}/*").map do |path| + File.basename(path) +end.sort + +locales.delete("index.html") +locales.delete("xpi") + +# real version number, e.g. "30.0" instead of "latest". +real_version = Dir.glob("#{base_path}/#{version}/#{arches[0]}/#{locales[0]}/firefox-*")[0].match(/firefox-([0-9.]*)/)[1][0..-2] + +locale_arch_path_tuples = locales.flat_map do |locale| + arches.map do |arch| + path = Dir.glob("#{base_path}/#{version}/#{arch}/#{locale}/firefox-*")[0] + + [locale, arch, path] + end +end + +paths = locale_arch_path_tuples.map do |tuple| tuple[2] end + +hashes = IO.popen(["sha256sum", "--binary", *paths]) do |input| + input.each_line.map do |line| + $stderr.puts(line) + + line.match(/^[0-9a-f]*/)[0] + end +end + + +puts(<<"EOH") +# This file is generated from generate_nix.rb +# Execute the following command in a temporary directory to update the file. +# +# ruby generate_nix.rb > default.nix + +{ stdenv, fetchurl, config +, alsaLib +, atk +, cairo +, cups +, dbus_glib +, dbus_libs +, fontconfig +, freetype +, gconf +, gdk_pixbuf +, glib +, glibc +, gst_plugins_base +, gstreamer +, gtk +, libX11 +, libXScrnSaver +, libXext +, libXinerama +, libXrender +, libXt +, libcanberra +, libgnome +, libgnomeui +, mesa +, nspr +, nss +, pango +, heimdal +, pulseaudio +, systemd +}: + +let + version = "#{real_version}"; + sources = [ +EOH + +locale_arch_path_tuples.zip(hashes) do |tuple, hash| + locale, arch, path = tuple + + puts(%Q| { locale = "#{locale}"; arch = "#{arch}"; sha256 = "#{hash}"; }|) +end + +puts(<<'EOF') + ]; + + arch = if stdenv.system == "i686-linux" + then "linux-i686" + else "linux-x86_64"; + + isPrefixOf = prefix: string: + builtins.substring 0 (builtins.stringLength prefix) string == prefix; + + sourceMatches = locale: source: + (isPrefixOf source.locale locale) && source.arch == arch; + + systemLocale = config.i18n.defaultLocale or "en-US"; + + defaultSource = stdenv.lib.findFirst (sourceMatches "en-US") {} sources; + + source = stdenv.lib.findFirst (sourceMatches systemLocale) defaultSource sources; + +in + +stdenv.mkDerivation { + name = "firefox-bin-${version}"; + + src = fetchurl { + url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/${version}/${source.arch}/${source.locale}/firefox-${version}.tar.bz2"; + inherit (source) sha256; + }; + + phases = "unpackPhase installPhase"; + + libPath = stdenv.lib.makeLibraryPath + [ stdenv.gcc.gcc + alsaLib + atk + cairo + cups + dbus_glib + dbus_libs + fontconfig + freetype + gconf + gdk_pixbuf + glib + glibc + gst_plugins_base + gstreamer + gtk + libX11 + libXScrnSaver + libXext + libXinerama + libXrender + libXt + libcanberra + libgnome + libgnomeui + mesa + nspr + nss + pango + heimdal + pulseaudio + systemd + ] + ":" + stdenv.lib.makeSearchPath "lib64" [ + stdenv.gcc.gcc + ]; + + # "strip" after "patchelf" may break binaries. + # See: https://github.com/NixOS/patchelf/issues/10 + dontStrip = 1; + + installPhase = + '' + mkdir -p "$prefix/usr/lib/firefox-bin-${version}" + cp -r * "$prefix/usr/lib/firefox-bin-${version}" + + mkdir -p "$out/bin" + ln -s "$prefix/usr/lib/firefox-bin-${version}/firefox" "$out/bin/" + + for executable in \ + firefox mozilla-xremote-client firefox-bin plugin-container \ + updater crashreporter webapprt-stub + do + patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ + "$out/usr/lib/firefox-bin-${version}/$executable" + done + + for executable in \ + firefox mozilla-xremote-client firefox-bin plugin-container \ + updater crashreporter webapprt-stub libxul.so + do + patchelf --set-rpath "$libPath" \ + "$out/usr/lib/firefox-bin-${version}/$executable" + done + + # Create a desktop item. + mkdir -p $out/share/applications + cat > $out/share/applications/firefox.desktop <<EOF + [Desktop Entry] + Type=Application + Exec=$out/bin/firefox + Icon=$out/lib/firefox-bin-${version}/chrome/icons/default/default256.png + Name=Firefox + GenericName=Web Browser + Categories=Application;Network; + EOF + ''; + + meta = with stdenv.lib; { + description = "Mozilla Firefox, free web browser"; + homepage = http://www.mozilla.org/firefox/; + license = { + shortName = "unfree"; # not sure + fullName = "unfree"; + url = http://www.mozilla.org/en-US/foundation/trademarks/policy/; + }; + platforms = platforms.linux; + }; +} +EOF diff --git a/pkgs/applications/networking/instant-messengers/baresip/default.nix b/pkgs/applications/networking/instant-messengers/baresip/default.nix index 61cd62fefd46..b878427e876a 100644 --- a/pkgs/applications/networking/instant-messengers/baresip/default.nix +++ b/pkgs/applications/networking/instant-messengers/baresip/default.nix @@ -4,11 +4,11 @@ , gsm, speex, portaudio, spandsp, libuuid }: stdenv.mkDerivation rec { - version = "0.4.3"; + version = "0.4.11"; name = "baresip-${version}"; src=fetchurl { url = "http://www.creytiv.com/pub/baresip-${version}.tar.gz"; - sha256 = "03vpzn0c3mybnwn84ha3yci780qsjm669dwja1srj0hbrq81rbil"; + sha256 = "1ql5h9ily9jncp9w302v3b2ldx613kc60zlqv0v0ln8hsm8q6bc5"; }; buildInputs = [zlib openssl libre librem pkgconfig cairo mpg123 gstreamer gst_ffmpeg gst_plugins_base gst_plugins_bad gst_plugins_good @@ -41,5 +41,9 @@ stdenv.mkDerivation rec { platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [raskin]; license = with stdenv.lib.licenses; bsd3; + inherit version; + downloadPage = "http://www.creytiv.com/pub/"; + updateWalker = true; + downloadURLRegexp = "/baresip-.*[.]tar[.].*"; }; } diff --git a/pkgs/applications/networking/instant-messengers/skype/default.nix b/pkgs/applications/networking/instant-messengers/skype/default.nix index 20a304952a7a..f1ac10639344 100644 --- a/pkgs/applications/networking/instant-messengers/skype/default.nix +++ b/pkgs/applications/networking/instant-messengers/skype/default.nix @@ -1,20 +1,18 @@ -{ stdenv, fetchurl, alsaLib, libXv, libXi, libXrender, libXrandr, zlib, glib +{ stdenv, fetchurl, libXv, libXi, libXrender, libXrandr, zlib, glib , libXext, libX11, libXScrnSaver, libSM, qt4, libICE, freetype, fontconfig -, pulseaudio, usePulseAudio, lib }: +, pulseaudio, lib, ... }: assert stdenv.system == "i686-linux"; stdenv.mkDerivation rec { - name = "skype-4.2.0.13"; + name = "skype-4.3.0.37"; src = fetchurl { url = "http://download.skype.com/linux/${name}.tar.bz2"; - sha256 = "137kp6c0v4z7n7pp4hwrx4gjgk4knwj815dc6swh44lb5cj1c5m5"; + sha256 = "0bc9kck99rcsqzxzw3j6vnw5byvr8c9wixrx609zp255g0wxr6cc"; }; - buildInputs = - lib.optional usePulseAudio pulseaudio ++ [ - alsaLib + buildInputs = [ stdenv.glibc stdenv.gcc.gcc libXv @@ -27,6 +25,7 @@ stdenv.mkDerivation rec { libXi libXrender libXrandr + pulseaudio freetype fontconfig zlib @@ -44,13 +43,13 @@ stdenv.mkDerivation rec { fullPath=$fullPath''${fullPath:+:}$i/lib done - dynlinker="$(cat $NIX_GCC/nix-support/dynamic-linker)" + patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ + --set-rpath "$fullPath" $out/libexec/skype/skype cat > $out/bin/skype << EOF #!${stdenv.shell} export PULSE_LATENCY_MSEC=60 # workaround for pulseaudio glitches - export LD_LIBRARY_PATH=$fullPath:$LD_LIBRARY_PATH - $dynlinker $out/libexec/skype/skype --resources=$out/libexec/skype "\$@" + $out/libexec/skype/skype --resources=$out/libexec/skype "\$@" EOF chmod +x $out/bin/skype diff --git a/pkgs/applications/networking/irc/bip/bip-0.8.8-yyparse.patch b/pkgs/applications/networking/irc/bip/bip-0.8.8-yyparse.patch deleted file mode 100644 index 5d48fc99a0da..000000000000 --- a/pkgs/applications/networking/irc/bip/bip-0.8.8-yyparse.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- bip-0.8.8/src/lex.l.orig -+++ bip-0.8.8/src/lex.l -@@ -16,7 +16,7 @@ - int linec; - #include "util.h" - extern list_t *root_list; --void yyparse(void); -+int yyparse(void); - void free_conf(list_t*); - int conf_error; - typedef struct bip bip_t; diff --git a/pkgs/applications/networking/irc/bip/default.nix b/pkgs/applications/networking/irc/bip/default.nix index 89fdf0d8df85..6f816e1db170 100644 --- a/pkgs/applications/networking/irc/bip/default.nix +++ b/pkgs/applications/networking/irc/bip/default.nix @@ -2,8 +2,8 @@ let - version = "0.8.8"; - sha256 = "7ca3fb96f5ee6b76eb398d7ea45344ea24855344ced11632241a33353bba05d7"; + version = "0.8.9"; + sha256 = "0q942g9lyd8pjvqimv547n6vik5759r9npw3ws3bdj4ixxqhz59w"; # fetches patches from a gentoo mirror fetchPatch = @@ -25,19 +25,12 @@ in stdenv.mkDerivation { # includes an important security patch patches = map fetchPatch [ - { file = "bip-0.8.8-configure.patch"; - sha256 = "286e169745e6cd768f0cb95bbc9589ca2bda497eb06461174549b80a459d901c"; - } - { file = "bip-CVE-2012-0806.patch"; - sha256 = "e47523095ee1d717c762ca0195520026c6ea2c30d8adcf434d276d42f052d506"; - } { file = "bip-freenode.patch"; sha256 = "a67e582f89cc6a32d5bb48c7e8ceb647b889808c2c8798ae3eb27d88869b892f"; } ]; postPatch = '' - patch -p1 < ${./bip-0.8.8-yyparse.patch} ''; configureFlags = [ "--disable-pie" ]; @@ -48,5 +41,7 @@ in stdenv.mkDerivation { description = "An IRC proxy (bouncer)"; homepage = http://bip.milkypond.org/; license = stdenv.lib.licenses.gpl2; + downloadPage= "https://projects.duckcorp.org/projects/bip/files"; + inherit version; }; } diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix index f4da232c7475..b1cbc6fd54f5 100644 --- a/pkgs/applications/office/libreoffice/default.nix +++ b/pkgs/applications/office/libreoffice/default.nix @@ -14,62 +14,20 @@ , autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr , libwpg, dbus_glib, glibc, qt4, kde4, clucene_core, libcdr, lcms, vigra , unixODBC, mdds, saneBackends, mythes, libexttextcat, libvisio -, fontsConf, pkgconfig, libzip, bluez5, libtool, maven +, fontsConf, pkgconfig, libzip, bluez5, libtool, maven, libe-book_00 +, libmwaw_02, libatomic_ops, graphite2, harfbuzz , langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" ] }: let langsSpaces = stdenv.lib.concatStringsSep " " langs; major = "4"; - minor = "0"; + minor = "2"; patch = "5"; tweak = "2"; subdir = "${major}.${minor}.${patch}"; version = "${subdir}${if tweak == "" then "" else "."}${tweak}"; - # configure phase dependency - liborcus = stdenv.mkDerivation rec { - version = "0.3.0"; - name = "liborcus-${version}"; - - src = fetchurl { - url = "http://dev-www.libreoffice.org/src/8755aac23317494a9028569374dc87b2-liborcus_0.3.0.tar.bz2"; - sha256 = "0xrw13s390mcpm50apclydl38sw2sdq27csrr1k0d39jna2990ih"; - }; - - configureFlags = "--disable-werror"; - - buildInputs = [ zlib boost mdds pkgconfig libixion libzip ]; - }; - - # configure phase dependency - liblangtag = stdenv.mkDerivation rec { - version = "0.4.0"; - name = "liblangtag-${version}"; - - src = fetchurl { - url = "http://dev-www.libreoffice.org/src/54e578c91b1b68e69c72be22adcb2195-${name}.tar.bz2"; - sha256 = "1bjb0fxjmvzxlhr5by9wgisf6w5yvy6wgfzfkjyw6igk39fivdyb"; - }; - - buildInputs = [ libtool pkgconfig libxml2 ]; - }; - - # doesn't work with srcs versioning - libmspub = stdenv.mkDerivation rec { - version = "0.0.6"; - name = "libmspub-${version}"; - - src = fetchurl { - url = "http://dev-www.libreoffice.org/src/${name}.tar.gz"; - sha256 = "1zdcvnm0dpac5yqdv34hq9j38cnhyqzyjgb19iyp54ajnwfjhmcq"; - }; - - configureFlags = "--disable-werror"; - - buildInputs = [ zlib libwpd libwpg pkgconfig boost icu ]; - }; - # doesn't exist in srcs libixion = stdenv.mkDerivation rec { version = "0.5.0"; @@ -85,9 +43,12 @@ let buildInputs = [ boost mdds pkgconfig ]; }; - fetchThirdParty = {name, md5}: fetchurl { + fetchThirdParty = {name, md5, brief}: fetchurl { inherit name md5; - url = "http://dev-www.libreoffice.org/src/${md5}-${name}"; + url = if brief then + "http://dev-www.libreoffice.org/src/${name}" + else + "http://dev-www.libreoffice.org/src/${md5}-${name}"; }; fetchSrc = {name, sha256}: fetchurl { @@ -104,14 +65,14 @@ let translations = fetchSrc { name = "translations"; - sha256 = "0x96wlwr5m7w4k3ygydzak3ycq35hjq60vfi6nfxczlr8pfjyjxv"; + sha256 = "0nv47r043w151687ks06w786h8azi8gylxma9c7qyjbdj6cdb2ly"; }; # TODO: dictionaries help = fetchSrc { name = "help"; - sha256 = "0nab5jcgrrgn0v1yrm18nl9avp4vifbas48l1absz3jmzf9wka7b"; + sha256 = "1kbkdngq39gfq2804v6vnllax4gqs25zlfk6y561iiipld1ncc5v"; }; }; @@ -121,7 +82,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz"; - sha256 = "195g1iab7j2x7sl326xbq7vya412ns57xrwpv9hqdrb7iiz2n8la"; + sha256 = "4bf7898d7d0ba918a8f6668eff0904a549e5a2de837854716e6d996f121817d5"; }; # Openoffice will open libcups dynamically, so we link it directly @@ -135,7 +96,7 @@ stdenv.mkDerivation rec { postUnpack = '' mkdir -v $sourceRoot/src - '' + (stdenv.lib.concatMapStrings (f: "ln -sv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\n") srcs.third_party) + '' + (stdenv.lib.concatMapStrings (f: "ln -sv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\nln -sv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party) + '' ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name} tar xf $sourceRoot/src/${srcs.help.name} -C $sourceRoot/../ @@ -149,6 +110,8 @@ stdenv.mkDerivation rec { -e 's,! */usr/bin/perl,!${perl}/bin/perl,' -e 's,! */usr/bin/env perl,!${perl}/bin/perl,' \ -e 's,! */usr/bin/python,!${python3}/bin/${python3.executable},' -e 's,! */usr/bin/env python,!${python3}/bin/${python3.executable},' #sed -i 's,ANT_OPTS+="\(.*\)",ANT_OPTS+=\1,' apache-commons/java/*/makefile.mk + + patch -Np1 -i ${./ooxmlexport.diff}; ''; QT4DIR = qt4; @@ -162,6 +125,10 @@ stdenv.mkDerivation rec { "--with-parallelism=$NIX_BUILD_CORES" "--with-lang=${langsSpaces}" ); + + chmod a+x ./bin/unpack-sources + # It is used only as an indicator of the proper current directory + touch solenv/inc/target.mk ''; makeFlags = "SHELL=${bash}/bin/bash"; @@ -172,9 +139,6 @@ stdenv.mkDerivation rec { # This is required as some cppunittests require fontconfig configured export FONTCONFIG_FILE=${fontsConf} - # Fix sysui: wants to create a tar for root - sed -i -e 's,--own.*root,,' sysui/desktop/slackware/makefile.mk - # This to aovid using /lib:/usr/lib at linking sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk @@ -199,7 +163,7 @@ stdenv.mkDerivation rec { ''; configureFlags = [ - "--with-vender=NixOS" + "--with-vendor=NixOS" # Without these, configure does not finish "--without-junit" @@ -219,11 +183,11 @@ stdenv.mkDerivation rec { "--without-doxygen" # I imagine this helps. Copied from go-oo. - "--disable-epm" - "--disable-mathmldtd" + # Modified on every upgrade, though "--disable-kde" "--disable-postgresql-sdbc" "--with-package-format=native" + "--enable-epm" "--with-jdk-home=${jdk}/lib/openjdk" "--with-ant-home=${ant}/lib/ant" "--without-afms" @@ -235,10 +199,17 @@ stdenv.mkDerivation rec { "--without-system-jars" "--without-system-altlinuxhyph" "--without-system-lpsolve" - "--without-system-graphite" "--without-system-npapi-headers" "--without-system-libcmis" - "--without-system-mozilla" + + "--without-system-libetonyek" + "--without-system-libfreehand" + "--without-system-libodfgen" + "--without-system-libabw" + "--without-system-firebird" + "--without-system-orcus" + "--without-system-liblangtag" + "--without-system-libmspub" ]; checkPhase = '' @@ -253,11 +224,11 @@ stdenv.mkDerivation rec { hunspell icu jdk kde4.kdelibs lcms libcdr libexttextcat unixODBC libjpeg libmspack librdf_redland librsvg libsndfile libvisio libwpd libwpg libX11 libXaw libXext libXi libXinerama libxml2 libxslt libXtst - libXdmcp libpthreadstubs mdds mesa mythes + libXdmcp libpthreadstubs mesa mythes neon nspr nss openldap openssl ORBit2 pam perl pkgconfigUpstream poppler python3 sablotron saneBackends tcsh unzip vigra which zip zlib - mdds bluez5 glibc libmspub libixion liborcus liblangtag - libxshmfence + mdds bluez5 glibc libixion + libxshmfence libe-book_00 libmwaw_02 libatomic_ops graphite2 harfbuzz ]; meta = with stdenv.lib; { diff --git a/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh b/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh index ab6c4e3fb079..e5a867463bfc 100755 --- a/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh +++ b/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh @@ -6,15 +6,39 @@ cat <<EOF [ EOF -read file -while read file; do - if [[ "$file" == @* ]]; then - break - fi +write_entry(){ echo '{' - echo " name = \"${file:33}\";" - echo " md5 = \"${file:0:32}\";" + echo " name = \"${name}\";" + echo " md5 = \"${md5}\";" + echo " brief = ${brief};" echo '}' +} + +while read line; do + case "$line" in + \#*) + echo Skipping comment: "$line" >&2; + ;; + *_MD5SUM\ :=*) + read tbline; + line=${line##* }; + tbline=${tbline##* }; + md5=$line + name=$tbline; + brief=true; + write_entry; + ;; + *_TARBALL\ :=*) + line=${line##* }; + md5=${line:0:32}; + name=${line:33}; + brief=false; + write_entry; + ;; + *) + echo Skipping: "$line" >&2; + ;; + esac done echo ']' diff --git a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix index 6ed1a5e2c639..cceb1a49e429 100644 --- a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix +++ b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix @@ -1,114 +1,467 @@ [ { - name = "glibc-2.1.3-stub.tar.gz"; - md5 = "4a660ce8466c9df01f19036435425c3a"; + name = "libabw-0.0.2.tar.bz2"; + md5 = "40fa48e03b1e28ae0325cc34b35bc46d"; + brief = true; } { - name = "ucpp-1.3.2.tar.gz"; - md5 = "0168229624cfac409e766913506961a8"; + name = "libcdr-0.0.15.tar.bz2"; + md5 = "fbcd8619fc6646f41d527c1329102998"; + brief = true; +} +{ + name = "libe-book-0.0.3.tar.bz2"; + md5 = "2f1ceaf2ac8752ed278e175447d9b978"; + brief = true; +} +{ + name = "libetonyek-0.0.4.tar.bz2"; + md5 = "3c50bc60394d1f2675fbf9bd22581363"; + brief = true; +} +{ + name = "libfreehand-0.0.0.tar.bz2"; + md5 = "496dd00028afcc19f896b01394769043"; + brief = true; +} +{ + name = "libmspub-0.0.6.tar.bz2"; + md5 = "1120705cd0f0d9bd5506360bf57b6c2e"; + brief = true; +} +{ + name = "libmwaw-0.2.0.tar.bz2"; + md5 = "d794625f156a9fb1c53b3f8a8aa13b5e"; + brief = true; +} +{ + name = "libodfgen-0.0.4.tar.bz2"; + md5 = "e5483d1f0b71e64c367c1194b54b0f53"; + brief = true; +} +{ + name = "libvisio-0.0.31.tar.bz2"; + md5 = "82628333418f101a20cd21f980cf9f40"; + brief = true; +} +{ + name = "Firebird-2.5.2.26540-0.tar.bz2"; + md5 = "21154d2004e025c8a3666625b0357bb5"; + brief = true; +} +{ + name = "harfbuzz-0.9.23.tar.bz2"; + md5 = "a4a9b548577e2ee22f0887937da5fd6c"; + brief = true; +} +{ + name = "libatomic_ops-7_2d.zip"; + md5 = "c0b86562d5aa40761a87134f83e6adcf"; + brief = true; +} +{ + name = "libeot-0.01.tar.bz2"; + md5 = "aa24f5dd2a2992f4a116aa72af817548"; + brief = true; +} +{ + name = "language-subtag-registry-2014-03-27.tar.bz2"; + md5 = "504af523f5d1a5590bbeb6a4b55e8a97"; + brief = true; +} +{ + name = "Adobe-Core35_AFMs-314.tar.gz"; + md5 = "1756c4fa6c616ae15973c104cd8cb256"; + brief = false; +} +{ + name = "commons-codec-1.6-src.tar.gz"; + md5 = "2e482c7567908d334785ce7d69ddfff7"; + brief = false; +} +{ + name = "commons-httpclient-3.1-src.tar.gz"; + md5 = "2c9b0f83ed5890af02c0df1c1776f39b"; + brief = false; +} +{ + name = "commons-lang-2.4-src.tar.gz"; + md5 = "625ff5f2f968dd908bca43c9469d6e6b"; + brief = false; } { name = "commons-logging-1.1.1-src.tar.gz"; md5 = "3c219630e4302863a9a83d0efde889db"; + brief = false; } { - name = "liblayout-0.2.10.zip"; - md5 = "db60e4fde8dd6d6807523deb71ee34dc"; + name = "boost_1_54_0.tar.bz2"; + md5 = "15cb8c0803064faef0c4ddf5bc5ca279"; + brief = false; +} +{ + name = "bsh-2.0b1-src.tar.gz"; + md5 = "ea570af93c284aa9e5621cd563f54f4d"; + brief = false; +} +{ + name = "cairo-1.10.2.tar.gz"; + md5 = "f101a9e88b783337b20b2e26dfd26d5f"; + brief = false; +} +{ + name = "clucene-core-2.3.3.4.tar.gz"; + md5 = "48d647fbd8ef8889e5a7f422c1bfda94"; + brief = false; +} +{ + name = "libcmis-0.4.1.tar.gz"; + md5 = "22f8a85daf4a012180322e1f52a7563b"; + brief = false; +} +{ + name = "cppunit-1.13.1.tar.gz"; + md5 = "ac4781e01619be13461bb2d562b94a7b"; + brief = false; +} +{ + name = "ConvertTextToNumber-1.3.2.oxt"; + md5 = "451ccf439a36a568653b024534669971"; + brief = false; +} +{ + name = "curl-7.33.0.tar.bz2"; + md5 = "57409d6bf0bd97053b8378dbe0cadcef"; + brief = false; +} +{ + name = "epm-3.7.tar.gz"; + md5 = "3ade8cfe7e59ca8e65052644fed9fca4"; + brief = false; +} +{ + name = "expat-2.1.0.tar.gz"; + md5 = "dd7dab7a5fea97d2a6a43f511449b7cd"; + brief = false; +} +{ + name = "fontconfig-2.8.0.tar.gz"; + md5 = "77e15a92006ddc2adbb06f840d591c0e"; + brief = false; +} +{ + name = "crosextrafonts-20130214.tar.gz"; + md5 = "368f114c078f94214a308a74c7e991bc"; + brief = false; +} +{ + name = "crosextrafonts-carlito-20130920.tar.gz"; + md5 = "c74b7223abe75949b4af367942d96c7a"; + brief = false; +} +{ + name = "dejavu-fonts-ttf-2.33.zip"; + md5 = "f872f4ac066433d8ff92f5e316b36ff9"; + brief = false; +} +{ + name = "gentiumbasic-fonts-1.10.zip"; + md5 = "35efabc239af896dfb79be7ebdd6e6b9"; + brief = false; +} +{ + name = "liberation-fonts-ttf-1.07.3.tar.gz"; + md5 = "b3174b11c2b6a341f5c99b31088bd67b"; + brief = false; +} +{ + name = "liberation-fonts-ttf-2.00.1.tar.gz"; + md5 = "5c781723a0d9ed6188960defba8e91cf"; + brief = false; +} +{ + name = "LinLibertineG-20120116.zip"; + md5 = "e7a384790b13c29113e22e596ade9687"; + brief = false; +} +{ + name = "open-sans-font-ttf-1.10.tar.gz"; + md5 = "7a15edea7d415ac5150ea403e27401fd"; + brief = false; +} +{ + name = "pt-serif-font-1.0000W.tar.gz"; + md5 = "c3c1a8ba7452950636e871d25020ce0d"; + brief = false; +} +{ + name = "source-code-font-1.009.tar.gz"; + md5 = "0279a21fab6f245e85a6f85fea54f511"; + brief = false; +} +{ + name = "source-sans-font-1.036.tar.gz"; + md5 = "1e9ddfe25ac9577da709d7b2ea36f939"; + brief = false; +} +{ + name = "freetype-2.4.8.tar.bz2"; + md5 = "dbf2caca1d3afd410a29217a9809d397"; + brief = false; +} +{ + name = "graphite2-1.2.3.tgz"; + md5 = "7042305e4208af4c2d5249d814ccce58"; + brief = false; } { name = "hsqldb_1_8_0.zip"; md5 = "17410483b5b5f267aa18b7e00b65e6e0"; + brief = false; } { - name = "rhino1_5R5.zip"; - md5 = "798b2ffdc8bcfe7bca2cf92b62caf685"; + name = "hunspell-1.3.2.tar.gz"; + md5 = "3121aaf3e13e5d88dfff13fb4a5f1ab8"; + brief = false; } { - name = "bsh-2.0b1-src.tar.gz"; - md5 = "ea570af93c284aa9e5621cd563f54f4d"; + name = "hyphen-2.8.4.tar.gz"; + md5 = "a2f6010987e1c601274ab5d63b72c944"; + brief = false; } { - name = "xmlsec1-1.2.14.tar.gz"; - md5 = "1f24ab1d39f4a51faf22244c94a6203f"; + name = "icu4c-52_1-src.tgz"; + md5 = "9e96ed4c1d99c0d14ac03c140f9f346c"; + brief = false; } { - name = "librepository-1.1.6.zip"; - md5 = "8ce2fcd72becf06c41f7201d15373ed9"; + name = "flow-engine-0.9.4.zip"; + md5 = "ba2930200c9f019c2d93a8c88c651a0f"; + brief = false; +} +{ + name = "flute-1.1.6.zip"; + md5 = "d8bd5eed178db6e2b18eeed243f85aa8"; + brief = false; } { name = "libbase-1.1.6.zip"; md5 = "eeb2c7ddf0d302fba4bfc6e97eac9624"; + brief = false; } { - name = "lp_solve_5.5.tar.gz"; - md5 = "26b3e95ddf3d9c077c480ea45874b3b8"; + name = "libfonts-1.1.6.zip"; + md5 = "3bdf40c0d199af31923e900d082ca2dd"; + brief = false; } { - name = "libloader-1.1.6.zip"; - md5 = "97b2d4dba862397f446b217e2b623e71"; + name = "libformula-1.1.7.zip"; + md5 = "3404ab6b1792ae5f16bbd603bd1e1d03"; + brief = false; } { - name = "graphite2-1.2.0.tgz"; - md5 = "f5ef3f7f10fa8c3542c6a085a233080b"; + name = "liblayout-0.2.10.zip"; + md5 = "db60e4fde8dd6d6807523deb71ee34dc"; + brief = false; } { - name = "jakarta-tomcat-5.0.30-src.tar.gz"; - md5 = "2a177023f9ea8ec8bd00837605c5df1b"; + name = "libloader-1.1.6.zip"; + md5 = "97b2d4dba862397f446b217e2b623e71"; + brief = false; } { - name = "hyphen-2.8.4.tar.gz"; - md5 = "a2f6010987e1c601274ab5d63b72c944"; + name = "librepository-1.1.6.zip"; + md5 = "8ce2fcd72becf06c41f7201d15373ed9"; + brief = false; } { name = "libserializer-1.1.6.zip"; md5 = "f94d9870737518e3b597f9265f4e9803"; -} -{ - name = "commons-lang-2.3-src.tar.gz"; - md5 = "2ae988b339daec234019a7066f96733e"; + brief = false; } { name = "libxml-1.1.7.zip"; md5 = "ace6ab49184e329db254e454a010f56d"; + brief = false; } { - name = "commons-httpclient-3.1-src.tar.gz"; - md5 = "2c9b0f83ed5890af02c0df1c1776f39b"; + name = "sacjava-1.3.zip"; + md5 = "39bb3fcea1514f1369fcfc87542390fd"; + brief = false; } { - name = "commons-codec-1.3-src.tar.gz"; - md5 = "af3c3acf618de6108d65fcdc92b492e1"; + name = "jpegsrc.v8d.tar.gz"; + md5 = "52654eb3b2e60c35731ea8fc87f1bd29"; + brief = false; } { - name = "libformula-1.1.7.zip"; - md5 = "3404ab6b1792ae5f16bbd603bd1e1d03"; + name = "JLanguageTool-1.7.0.tar.bz2"; + md5 = "b63e6340a02ff1cacfeadb2c42286161"; + brief = false; +} +{ + name = "lcms2-2.4.tar.gz"; + md5 = "861ef15fa0bc018f9ddc932c4ad8b6dd"; + brief = false; +} +{ + name = "libexttextcat-3.4.3.tar.bz2"; + md5 = "ae330b9493bd4503ac390106ff6060d7"; + brief = false; +} +{ + name = "liblangtag-0.5.1.tar.bz2"; + md5 = "36271d3fa0d9dec1632029b6d7aac925"; + brief = false; +} +{ + name = "xmlsec1-1.2.14.tar.gz"; + md5 = "1f24ab1d39f4a51faf22244c94a6203f"; + brief = false; +} +{ + name = "libxml2-2.9.1.tar.gz"; + md5 = "9c0cfef285d5c4a5c80d00904ddab380"; + brief = false; +} +{ + name = "libxslt-1.1.28.tar.gz"; + md5 = "9667bf6f9310b957254fdcf6596600b7"; + brief = false; +} +{ + name = "lp_solve_5.5.tar.gz"; + md5 = "26b3e95ddf3d9c077c480ea45874b3b8"; + brief = false; +} +{ + name = "mariadb-native-client-1.0.0.tar.bz2"; + md5 = "05f84c95b610c21c5fd510d10debcabf"; + brief = false; } { - name = "libcmis-0.3.0.tar.gz"; - md5 = "b2371dc7cf4811c9d32146eec913d296"; + name = "mdds_0.10.3.tar.bz2"; + md5 = "aa5ca9d1ed1082890835afab26400a39"; + brief = false; +} +{ + name = "mysql-connector-c++-1.1.0.tar.gz"; + md5 = "0981bda6548a8c8233ffce2b6e4b2a23"; + brief = false; +} +{ + name = "mythes-1.2.3.tar.gz"; + md5 = "46e92b68e31e858512b680b3b61dc4c1"; + brief = false; +} +{ + name = "neon-0.29.5.tar.gz"; + md5 = "ff369e69ef0f0143beb5626164e87ae2"; + brief = false; +} +{ + name = "nss-3.15.3-with-nspr-4.10.2.tar.gz"; + md5 = "06beb053e257d9e22641339c905c6eba"; + brief = false; +} +{ + name = "openldap-2.4.31.tgz"; + md5 = "804c6cb5698db30b75ad0ff1c25baefd"; + brief = false; +} +{ + name = "openssl-1.0.1e.tar.gz"; + md5 = "66bf6f10f060d561929de96f9dfe5b8c"; + brief = false; +} +{ + name = "liborcus-0.5.1.tar.bz2"; + md5 = "ea2acaf140ae40a87a952caa75184f4d"; + brief = false; +} +{ + name = "pixman-0.24.4.tar.bz2"; + md5 = "c63f411b3ad147db2bcce1bf262a0e02"; + brief = false; +} +{ + name = "libpng-1.5.10.tar.gz"; + md5 = "9e5d864bce8f06751bbd99962ecf4aad"; + brief = false; +} +{ + name = "poppler-0.22.5.tar.gz"; + md5 = "1cd27460f7e3379d1eb109cfd7bcdb39"; + brief = false; +} +{ + name = "postgresql-9.2.1.tar.bz2"; + md5 = "c0b4799ea9850eae3ead14f0a60e9418"; + brief = false; +} +{ + name = "Python-3.3.3.tar.bz2"; + md5 = "f3ebe34d4d8695bf889279b54673e10c"; + brief = false; +} +{ + name = "raptor2-2.0.9.tar.gz"; + md5 = "4ceb9316488b0ea01acf011023cf7fff"; + brief = false; +} +{ + name = "rasqal-0.9.30.tar.gz"; + md5 = "b12c5f9cfdb6b04efce5a4a186b8416b"; + brief = false; +} +{ + name = "redland-1.0.16.tar.gz"; + md5 = "32f8e1417a64d3c6f2c727f9053f55ea"; + brief = false; +} +{ + name = "rhino1_5R5.zip"; + md5 = "798b2ffdc8bcfe7bca2cf92b62caf685"; + brief = false; } { name = "swingExSrc.zip"; md5 = "35c94d2df8893241173de1d16b6034c0"; + brief = false; } { - name = "flow-engine-0.9.4.zip"; - md5 = "ba2930200c9f019c2d93a8c88c651a0f"; + name = "ucpp-1.3.2.tar.gz"; + md5 = "0168229624cfac409e766913506961a8"; + brief = false; } { - name = "sacjava-1.3.zip"; - md5 = "39bb3fcea1514f1369fcfc87542390fd"; + name = "vigra1.6.0.tar.gz"; + md5 = "d62650a6f908e85643e557a236ea989c"; + brief = false; } { - name = "libwps-0.2.7.tar.bz2"; - md5 = "d197bd6211669a2fa4ca648faf04bcb1"; + name = "libwpd-0.9.9.tar.bz2"; + md5 = "a3dcac551fae5ebbec16e844810828c4"; + brief = false; } { - name = "libfonts-1.1.6.zip"; - md5 = "3bdf40c0d199af31923e900d082ca2dd"; + name = "libwpg-0.2.2.tar.bz2"; + md5 = "b85436266b2ac91d351ab5684b181151"; + brief = false; } { - name = "flute-1.1.6.zip"; - md5 = "d8bd5eed178db6e2b18eeed243f85aa8"; + name = "libwps-0.2.9.tar.bz2"; + md5 = "46eb0e7f213ad61bd5dee0c494132cb0"; + brief = false; +} +{ + name = "xsltml_2.1.2.zip"; + md5 = "a7983f859eafb2677d7ff386a023bc40"; + brief = false; +} +{ + name = "zlib-1.2.7.tar.bz2"; + md5 = "2ab442d169156f34c379c968f3f482dd"; + brief = false; } ] diff --git a/pkgs/applications/office/libreoffice/ooxmlexport.diff b/pkgs/applications/office/libreoffice/ooxmlexport.diff new file mode 100644 index 000000000000..9c1d44612e26 --- /dev/null +++ b/pkgs/applications/office/libreoffice/ooxmlexport.diff @@ -0,0 +1,31 @@ +--- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx 2014-06-12 12:25:19.000000000 +0400 ++++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx 2014-06-12 12:25:20.000000000 +0400 +@@ -547,17 +547,17 @@ + getRun(xParagraph, 5, " After."); + } + +-DECLARE_OOXMLEXPORT_TEST(test1Table1Page, "1-table-1-page.docx") +-{ +- // 2 problem for this document after export: +- // - invalid sectPr inserted at the beginning of the page +- // - font of empty cell is not preserved, leading to change in rows height +- uno::Reference<frame::XModel> xModel(mxComponent, uno::UNO_QUERY); +- uno::Reference<text::XTextViewCursorSupplier> xTextViewCursorSupplier(xModel->getCurrentController(), uno::UNO_QUERY); +- uno::Reference<text::XPageCursor> xCursor(xTextViewCursorSupplier->getViewCursor(), uno::UNO_QUERY); +- xCursor->jumpToLastPage(); +- CPPUNIT_ASSERT_EQUAL(sal_Int16(1), xCursor->getPage()); +-} ++/// DECLARE_OOXMLEXPORT_TEST(test1Table1Page, "1-table-1-page.docx") ++/// { ++/// // 2 problem for this document after export: ++/// // - invalid sectPr inserted at the beginning of the page ++/// // - font of empty cell is not preserved, leading to change in rows height ++/// uno::Reference<frame::XModel> xModel(mxComponent, uno::UNO_QUERY); ++/// uno::Reference<text::XTextViewCursorSupplier> xTextViewCursorSupplier(xModel->getCurrentController(), uno::UNO_QUERY); ++/// uno::Reference<text::XPageCursor> xCursor(xTextViewCursorSupplier->getViewCursor(), uno::UNO_QUERY); ++/// xCursor->jumpToLastPage(); ++/// CPPUNIT_ASSERT_EQUAL(sal_Int16(1), xCursor->getPage()); ++/// } + + DECLARE_OOXMLEXPORT_TEST(testTextFrames, "textframes.odt") + { diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix index 8adab57656ea..0e81616a0069 100644 --- a/pkgs/applications/science/electronics/kicad/default.nix +++ b/pkgs/applications/science/electronics/kicad/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { src = fetchbzr { url = "https://code.launchpad.net/~kicad-stable-committers/kicad/stable"; - revision = 4024; + rev = 4024; sha256 = "1sv1l2zpbn6439ccz50p05hvqg6j551aqra551wck9h3929ghly5"; }; srcLibrary = fetchbzr { url = "http://bazaar.launchpad.net/~kicad-lib-committers/kicad/library"; - revision = 293; + rev = 293; sha256 = "1wn9a4nhqyjzzfkq6xm7ag8n5n10xy7gkq6i7yry7wxini7pzv1i"; }; diff --git a/pkgs/applications/science/logic/abc/default.nix b/pkgs/applications/science/logic/abc/default.nix index a8076b9e29ea..30c36ae29dc8 100644 --- a/pkgs/applications/science/logic/abc/default.nix +++ b/pkgs/applications/science/logic/abc/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { src = fetchhg { url = "https://bitbucket.org/alanmi/abc"; - tag = "03e221443d71e49e56cbc37f1907ee3b0ff3e7c9"; + rev = "03e221443d71e49e56cbc37f1907ee3b0ff3e7c9"; sha256 = "0ahrqg718y7xpv939f6x8w1kqh7wsja4pw8hca7j67j0qjdgb4lm"; }; diff --git a/pkgs/applications/science/logic/twelf/default.nix b/pkgs/applications/science/logic/twelf/default.nix new file mode 100644 index 000000000000..1079c3783218 --- /dev/null +++ b/pkgs/applications/science/logic/twelf/default.nix @@ -0,0 +1,46 @@ +{ stdenv, fetchurl, pkgconfig, smlnj, rsync }: + +stdenv.mkDerivation rec { + name = "twelf-${version}"; + version = "1.7.1"; + + src = fetchurl { + url = "http://twelf.plparty.org/releases/twelf-src-${version}.tar.gz"; + sha256 = "0fi1kbs9hrdrm1x4k13angpjasxlyd1gc3ys8ah54i75qbcd9c4i"; + }; + + buildInputs = [ pkgconfig smlnj rsync ]; + + buildPhase = '' + export SMLNJ_HOME=${smlnj} + make smlnj + ''; + + installPhase = '' + ensureDir $out/bin + rsync -av bin/* $out/bin/ + + ensureDir $out/share/emacs/site-lisp/twelf/ + rsync -av emacs/ $out/share/emacs/site-lisp/twelf/ + + ensureDir $out/share/twelf/examples + rsync -av examples/ $out/share/twelf/examples/ + ensureDir $out/share/twelf/vim + rsync -av vim/ $out/share/twelf/vim/ + ''; + + meta = { + description = "Twelf logic proof assistant"; + longDescription = '' + Twelf is a language used to specify, implement, and prove properties of + deductive systems such as programming languages and logics. Large + research projects using Twelf include the TALT typed assembly language, + a foundational proof-carrying-code system, and a type safety proof for + Standard ML. + ''; + homepage = http://twelf.org/wiki/Main_Page; + license = "MIT"; + maintainers = with stdenv.lib.maintainers; [ jwiegley ]; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/applications/science/math/glsurf/default.nix b/pkgs/applications/science/math/glsurf/default.nix index a056a32c64c2..c4352c46f92e 100644 --- a/pkgs/applications/science/math/glsurf/default.nix +++ b/pkgs/applications/science/math/glsurf/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation { src = fetchdarcs { url = "http://lama.univ-savoie.fr/~raffalli/GlSurf"; - tag = "3.3"; + rev = "3.3"; sha256 = ""; md5=""; }; diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix index 482866969a11..fd548296220e 100644 --- a/pkgs/applications/version-management/git-and-tools/default.nix +++ b/pkgs/applications/version-management/git-and-tools/default.nix @@ -95,4 +95,7 @@ rec { darcsToGit = callPackage ./darcs-to-git { }; gitflow = callPackage ./gitflow { }; + + git-remote-hg = callPackage ./git-remote-hg { }; + } diff --git a/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix new file mode 100644 index 000000000000..ffeb299f49b5 --- /dev/null +++ b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchgit, mercurial, makeWrapper, + asciidoc, xmlto, dbus, docbook_xsl, docbook_xml_dtd_45, libxslt, libxml2 +}: + +stdenv.mkDerivation rec { + rev = "185852eac44c25ae2e8d3b3fb6c9630e754e6363"; + version = "v0.2-185852eac44c25ae2e8d3b3fb6c9630e754e6363"; + name = "git-remote-hg-${version}"; + + src = fetchgit { + inherit rev; + url = "git://github.com/felipec/git-remote-hg.git"; + sha256 = "1hc65nvxq7if1imwffyxia0i6vnkbax09gfcl9vq9yffzi8xzzfy"; + }; + + buildInputs = [ mercurial.python mercurial makeWrapper + asciidoc xmlto dbus docbook_xsl docbook_xml_dtd_45 libxslt libxml2 + ]; + + doCheck = false; + + installFlags = "HOME=\${out}"; + + postInstall = '' + wrapProgram $out/bin/git-remote-hg \ + --prefix PYTHONPATH : "$(echo ${mercurial}/lib/python*/site-packages):$(echo ${mercurial.python}/lib/python*/site-packages)${stdenv.lib.concatMapStrings (x: ":$(echo ${x}/lib/python*/site-packages)") mercurial.pythonPackages}" + ''; + + meta = with stdenv.lib; { + homepage = "https://github.com/felipec/git-remote-hg"; + description = "semi-official Mercurial bridge from Git project, once installed, it allows you to clone, fetch and push to and from Mercurial repositories as if they were Git ones"; + license = licenses.gpl2; + maintainers = [ maintainers.garbas ]; + }; +} diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix index f95b5a493a65..054b1c1b0f3c 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -10,7 +10,7 @@ let - version = "1.9.4"; + version = "2.0.1"; svn = subversionClient.override { perlBindings = true; }; @@ -21,7 +21,7 @@ stdenv.mkDerivation { src = fetchurl { url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz"; - sha256 = "1shxa49lsxn81qpfi60wh7rn5ci4zjgljvr0qczdmnqzd8w1zyvb"; + sha256 = "1pylqr2qzndy92x3pq8hkwsb3garww2jxb167s6hshrva81s24mb"; }; patches = [ ./docbook2texi.patch ./symlinks-in-bin.patch ./cert-path.patch ]; diff --git a/pkgs/applications/version-management/gitolite/default.nix b/pkgs/applications/version-management/gitolite/default.nix new file mode 100644 index 000000000000..2dcb13e5db5e --- /dev/null +++ b/pkgs/applications/version-management/gitolite/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchurl, perl, git, fetchgit }: + +stdenv.mkDerivation rec { + name = "gitolite-${version}"; + version = "3.6.1"; + + src = fetchgit { + url = "git://github.com/sitaramc/gitolite"; + rev = "refs/tags/v${version}"; + sha256 = "47e0e9c3137b05af96c091494ba918d61d1d3396749a04d63e7949ebcc6c6dca"; + leaveDotGit = true; + }; + + buildInputs = [ perl git ]; + buildPhase = "true"; + + patchPhase = '' + substituteInPlace ./install --replace " 2>/dev/null" "" + substituteInPlace src/lib/Gitolite/Hooks/PostUpdate.pm \ + --replace /usr/bin/perl "/usr/bin/env perl" + substituteInPlace src/lib/Gitolite/Hooks/Update.pm \ + --replace /usr/bin/perl "/usr/bin/env perl" + ''; + installPhase = '' + mkdir -p $out/bin + git tag v${version} # Gitolite requires a tag for the version information :/ + perl ./install -to $out/bin + ''; + + meta = { + description = "Finely-grained git repository hosting"; + homepage = "http://gitolite.com/gitolite/index.html"; + license = stdenv.lib.licenses.gpl2; + platforms = stdenv.lib.platforms.unix; + maintainers = [ stdenv.lib.maintainers.thoughtpolice ]; + }; +} diff --git a/pkgs/applications/window-managers/tabbed/default.nix b/pkgs/applications/window-managers/tabbed/default.nix index 3ab950bf4d05..2dec3b2241f2 100644 --- a/pkgs/applications/window-managers/tabbed/default.nix +++ b/pkgs/applications/window-managers/tabbed/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation rec { src = fetchhg { url = http://hg.suckless.org/tabbed; - tag = "d7542a6f6dc5"; + rev = "d7542a6f6dc5"; sha256 = "1963jsazfmh5k7923c1mfwppz1xbh48z16j0sa64fiscq22as2gj"; }; diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 67934ed0c291..6f454dc2b581 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -82,9 +82,7 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version; # the default download location for Cabal packages is Hackage, # you still have to specify the checksum src = fetchurl { - # cannot use mirrors system because of subtly different directory structures - urls = ["http://hackage.haskell.org/packages/archive/${self.pname}/${self.version}/${self.fname}.tar.gz" - "http://hdiff.luite.com/packages/archive/${self.pname}/${self.fname}.tar.gz"]; + url = "mirror://hackage/${self.pname}/${self.fname}.tar.gz"; inherit (self) sha256; }; diff --git a/pkgs/build-support/fetchbzr/builder.sh b/pkgs/build-support/fetchbzr/builder.sh index 17567fdadd23..af1257d3688c 100644 --- a/pkgs/build-support/fetchbzr/builder.sh +++ b/pkgs/build-support/fetchbzr/builder.sh @@ -1,9 +1,9 @@ source "$stdenv/setup" -header "exporting \`$url' (revision $revision) into \`$out'" +header "exporting \`$url' (revision $rev) into \`$out'" # Perform a lightweight checkout so that we don't end up importing # all the repository's history. -bzr -Ossl.cert_reqs=none export -r "$revision" --format=dir "$out" "$url" +bzr -Ossl.cert_reqs=none export -r "$rev" --format=dir "$out" "$url" stopNest diff --git a/pkgs/build-support/fetchbzr/default.nix b/pkgs/build-support/fetchbzr/default.nix index 721250beeb3b..dd2c0363187a 100644 --- a/pkgs/build-support/fetchbzr/default.nix +++ b/pkgs/build-support/fetchbzr/default.nix @@ -1,5 +1,5 @@ { stdenv, bazaar }: -{ url, revision, sha256 }: +{ url, rev, sha256 }: stdenv.mkDerivation { name = "bzr-export"; @@ -11,5 +11,5 @@ stdenv.mkDerivation { outputHashMode = "recursive"; outputHash = sha256; - inherit url revision; + inherit url rev; } diff --git a/pkgs/build-support/fetchdarcs/builder.sh b/pkgs/build-support/fetchdarcs/builder.sh index efff5ff5ebf9..301deb98307f 100644 --- a/pkgs/build-support/fetchdarcs/builder.sh +++ b/pkgs/build-support/fetchdarcs/builder.sh @@ -2,9 +2,9 @@ source $stdenv/setup tagtext="" tagflags="" -if test -n "$tag"; then - tagtext="(tag $tag) " - tagflags="--tag=$tag" +if test -n "$rev"; then + tagtext="(tag $rev) " + tagflags="--tag=$rev" elif test -n "$context"; then tagtext="(context) " tagflags="--context=$context" diff --git a/pkgs/build-support/fetchdarcs/default.nix b/pkgs/build-support/fetchdarcs/default.nix index 63e4ecde88a5..3c2e0524eea5 100644 --- a/pkgs/build-support/fetchdarcs/default.nix +++ b/pkgs/build-support/fetchdarcs/default.nix @@ -1,4 +1,4 @@ -{stdenv, darcs, nix}: {url, tag ? null, context ? null, md5 ? "", sha256 ? ""}: +{stdenv, darcs, nix}: {url, rev ? null, context ? null, md5 ? "", sha256 ? ""}: stdenv.mkDerivation { name = "fetchdarcs"; @@ -9,5 +9,5 @@ stdenv.mkDerivation { outputHashMode = "recursive"; outputHash = if sha256 == "" then md5 else sha256; - inherit url tag context; + inherit url rev context; } diff --git a/pkgs/build-support/fetchgit/nix-prefetch-git b/pkgs/build-support/fetchgit/nix-prefetch-git index 3574f3b7539b..bd1d8b5c1af0 100755 --- a/pkgs/build-support/fetchgit/nix-prefetch-git +++ b/pkgs/build-support/fetchgit/nix-prefetch-git @@ -217,7 +217,9 @@ clone_user_rev() { fi;; esac - echo "git revision is $(cd $dir && (git rev-parse $rev 2> /dev/null || git rev-parse refs/heads/fetchgit) | tail -n1)" + local full_revision=$(cd $dir && (git rev-parse $rev 2> /dev/null || git rev-parse refs/heads/fetchgit) | tail -n1) + echo "git revision is $full_revision" + echo "git human-readable version is $(cd $dir && (git describe $full_revision 2> /dev/null || git describe --tags $full_revision 2> /dev/null || echo -- none --))" # Allow doing additional processing before .git removal eval "$NIX_PREFETCH_GIT_CHECKOUT_HOOK" diff --git a/pkgs/build-support/fetchhg/builder.sh b/pkgs/build-support/fetchhg/builder.sh index 9699fb69b7fc..0b51ef79b235 100644 --- a/pkgs/build-support/fetchhg/builder.sh +++ b/pkgs/build-support/fetchhg/builder.sh @@ -1,9 +1,9 @@ source $stdenv/setup -header "getting $url${tag:+ ($tag)} into $out" +header "getting $url${rev:+ ($rev)} into $out" hg clone --insecure "$url" hg-clone -hg archive -q -y ${tag:+-r "$tag"} --cwd hg-clone $out +hg archive -q -y ${rev:+-r "$rev"} --cwd hg-clone $out rm -f $out/.hg_archival.txt stopNest diff --git a/pkgs/build-support/fetchhg/default.nix b/pkgs/build-support/fetchhg/default.nix index 1aebb7ecc877..4675cbe6ec80 100644 --- a/pkgs/build-support/fetchhg/default.nix +++ b/pkgs/build-support/fetchhg/default.nix @@ -1,4 +1,4 @@ -{stdenv, mercurial, nix}: {name ? null, url, tag ? null, md5 ? null, sha256 ? null}: +{stdenv, mercurial, nix}: {name ? null, url, rev ? null, md5 ? null, sha256 ? null}: # TODO: statically check if mercurial as the https support if the url starts woth https. stdenv.mkDerivation { @@ -13,6 +13,6 @@ stdenv.mkDerivation { outputHashMode = "recursive"; outputHash = if md5 != null then md5 else sha256; - inherit url tag; + inherit url rev; preferLocalBuild = true; } diff --git a/pkgs/build-support/fetchurl/mirrors.nix b/pkgs/build-support/fetchurl/mirrors.nix index 8417499cd00d..38d3353202b1 100644 --- a/pkgs/build-support/fetchurl/mirrors.nix +++ b/pkgs/build-support/fetchurl/mirrors.nix @@ -20,6 +20,12 @@ rec { http://kent.dl.sourceforge.net/sourceforge/ ]; + # SourceForge.jp. + sourceforgejp = [ + http://osdn.dl.sourceforge.jp/ + http://jaist.dl.sourceforge.jp/ + ]; + # GNU (http://www.gnu.org/prep/ftp.html). gnu = [ # This one redirects to a (supposedly) nearby and (supposedly) up-to-date diff --git a/pkgs/build-support/fetchzip/nix-prefetch-zip b/pkgs/build-support/fetchzip/nix-prefetch-zip new file mode 100755 index 000000000000..76255ab36747 --- /dev/null +++ b/pkgs/build-support/fetchzip/nix-prefetch-zip @@ -0,0 +1,153 @@ +#! /bin/sh -e + +usage(){ + echo >&2 "syntax: nix-prefetch-zip [OPTIONS] [URL [EXPECTED-HASH]] + +Options: + --url url The url of the archive to fetch. + --name name The name to use for the store path (defaults to \`basename \$url\`). + --hash hash The hash of unpacked archive. + --hash-type type Use the specified cryptographic hash algorithm, which can be one of md5, sha1, and sha256. + --leave-root Keep the root directory of the archive. + --help Show this help text. +" + exit 1 +} + + +argi=0 +argfun="" +for arg; do + if test -z "$argfun"; then + case $arg in + --url) argfun=set_url;; + --name) argfun=set_name;; + --hash) argfun=set_expHash;; + --hash-type) argfun=set_hashType;; + --leave-root) leaveRoot=true;; + --help) usage;; + *) argi=$(($argi + 1)) + case $argi in + 1) url=$arg;; + 2) rev=$arg;; + 3) expHash=$arg;; + *) echo "Unexpected argument: $arg" >&2 + usage + ;; + esac + ;; + esac + else + case $argfun in + set_*) + var=$(echo $argfun | sed 's,^set_,,') + eval "$var=\$arg" + ;; + esac + argfun="" + fi +done + +if [ -z "$url" ]; then + echo "Error: No --url flag given" >&2 + usage +fi + +if [ -z "$name" ]; then + name=$(basename "$url") +fi + +if test -z "$hashType"; then + hashType=sha256 +fi + +hashFormat="--base32" + +tmp=$(mktemp -d 2>/dev/null || mktemp -d -t "$$") +trap "rm -rf '$tmp'" EXIT + +unpackDir=$tmp/unpacked/$name +mkdir -p $unpackDir +downloadedFile=$tmp/$name + +unpackFile() { + local curSrc="$1" + + case "$curSrc" in + *.tar.xz | *.tar.lzma) + # Don't rely on tar knowing about .xz. + xz -d < $curSrc | tar xf - + ;; + *.tar | *.tar.* | *.tgz | *.tbz2) + # GNU tar can automatically select the decompression method + # (info "(tar) gzip"). + tar xf $curSrc + ;; + *.zip) + unzip -qq $curSrc + ;; + *) + echo "source archive $curSrc has unknown type" >&2 + exit 1 + ;; + esac +} + +# If the hash was given, a file with that hash may already be in the +# store. +if test -n "$expHash"; then + finalPath=$(nix-store --print-fixed-path --recursive "$hashType" "$expHash" "$name") + if ! nix-store --check-validity "$finalPath" 2> /dev/null; then + finalPath= + fi + hash=$expHash +fi + +# If we don't know the hash or a path with that hash doesn't exist, +# download the file and add it to the store. +if test -z "$finalPath"; then + curl="curl \ + --location --max-redirs 20 \ + --disable-epsv \ + --insecure" + + if ! $curl --fail "$url" --output "$downloadedFile"; then + echo "error: could not download $url" >&2 + exit 1 + fi + + cd $unpackDir + unpackFile "$downloadedFile" + + # FIXME: handle zip files that contain a single regular file. + if [ -z "$leaveRoot" ]; then + shopt -s dotglob + if [ $(ls -d $unpackDir/* | wc -l) != 1 ]; then + echo "error: zip file must contain a single directory." + exit 1 + fi + fn=$(cd "$unpackDir" && echo *) + mv $unpackDir/$fn/* "$unpackDir/" + rmdir "$unpackDir/$fn" + fi + + # Compute the hash. + hash=$(nix-hash --type $hashType $hashFormat $unpackDir) + if ! test -n "$QUIET"; then echo "hash is $hash" >&2; fi + + # Add the downloaded file to the Nix store. + finalPath=$(nix-store --add-fixed --recursive "$hashType" $unpackDir) + + if test -n "$expHash" -a "$expHash" != "$hash"; then + echo "hash mismatch for URL \`$url'" + exit 1 + fi +fi + +if ! test -n "$QUIET"; then echo "path is $finalPath" >&2; fi + +echo $hash + +if test -n "$PRINT_PATH"; then + echo $finalPath +fi diff --git a/pkgs/build-support/kernel/paths-from-graph.pl b/pkgs/build-support/kernel/paths-from-graph.pl index f18662372103..9a199a2b3044 100644 --- a/pkgs/build-support/kernel/paths-from-graph.pl +++ b/pkgs/build-support/kernel/paths-from-graph.pl @@ -1,9 +1,27 @@ +# Parses a /nix/store/*-closure file and prints +# various information. +# By default, the nodes in the graph are printed to stdout. +# If the environment variable printManifest is set, +# then the graph is written as a manifest. +# If printRegistration is set, then the graph is written +# as a registration file for a manifest is written +# in the `nix-store --load-db' format. + use strict; use File::Basename; my %storePaths; my %refs; +# Each argument on the command line is a graph file. +# The graph file contains line-triples and a variable +# number of references: +# <store-path> +# <deriver> +# <count> +# <ref-#1> +# ... +# <ref-#count> foreach my $graph (@ARGV) { open GRAPH, "<$graph" or die; diff --git a/pkgs/build-support/upstream-updater/update-walker-service-specific.sh b/pkgs/build-support/upstream-updater/update-walker-service-specific.sh index a979e24edf2a..28c28f695875 100644 --- a/pkgs/build-support/upstream-updater/update-walker-service-specific.sh +++ b/pkgs/build-support/upstream-updater/update-walker-service-specific.sh @@ -5,7 +5,7 @@ SF_redirect () { } SF_version_dir () { - version_link 'http://sourceforge.net/.+/[0-9.]+/$' + version_link 'http://sourceforge.net/.+/'"$1"'[0-9.]+/$' } GH_latest () { diff --git a/pkgs/build-support/upstream-updater/update-walker.sh b/pkgs/build-support/upstream-updater/update-walker.sh index bc58f935f815..e11eb722e0e4 100755 --- a/pkgs/build-support/upstream-updater/update-walker.sh +++ b/pkgs/build-support/upstream-updater/update-walker.sh @@ -2,15 +2,22 @@ own_dir="$(cd "$(dirname "$0")"; pwd)" +URL_WAS_SET= +DL_URL_RE= CURRENT_URL= CURRENT_REV= PREFETCH_COMMAND= NEED_TO_CHOOSE_URL=1 url () { + URL_WAS_SET=1 CURRENT_URL="$1" } +dl_url_re () { + DL_URL_RE="$1" +} + version_unpack () { sed -re ' s/[.]/ /g; @@ -101,16 +108,27 @@ ensure_name () { ensure_attribute_name () { echo "Ensuring attribute name. CURRENT_ATTRIBUTE_NAME: $CURRENT_ATTRIBUTE_NAME" >&2 + ensure_name [ -z "$CURRENT_ATTRIBUTE_NAME" ] && attribute_name "$CURRENT_NAME" echo "Resulting attribute name: $CURRENT_ATTRIBUTE_NAME" } +ensure_url () { + echo "Ensuring starting URL. CURRENT_URL: $CURRENT_URL" >&2 + ensure_attribute_name + [ -z "$CURRENT_URL" ] && CURRENT_URL="$(retrieve_meta downloadPage)" + [ -z "$CURRENT_URL" ] && CURRENT_URL="$(retrieve_meta downloadpage)" + [ -z "$CURRENT_URL" ] && CURRENT_URL="$(retrieve_meta homepage)" + echo "Resulting URL: $CURRENT_URL" +} + ensure_choice () { echo "Ensuring that choice is made." >&2 echo "NEED_TO_CHOOSE_URL: [$NEED_TO_CHOOSE_URL]." >&2 echo "CURRENT_URL: $CURRENT_URL" >&2 + [ -z "$URL_WAS_SET" ] && [ -z "$CURRENT_URL" ] && ensure_url [ -n "$NEED_TO_CHOOSE_URL" ] && { - version_link '[.]tar[.]([^./])+$' + version_link "${DL_URL_RE:-[.]tar[.]([^./])+\$}" unset NEED_TO_CHOOSE_URL } [ -z "$CURRENT_URL" ] && { @@ -153,8 +171,18 @@ attribute_name () { echo "CURRENT_ATTRIBUTE_NAME: $CURRENT_ATTRIBUTE_NAME" >&2 } +retrieve_meta () { + nix-instantiate --eval-only '<nixpkgs>' -A "$CURRENT_ATTRIBUTE_NAME".meta."$1" | xargs +} + retrieve_version () { - PACKAGED_VERSION="$(nix-instantiate --eval-only '<nixpkgs>' -A "$CURRENT_ATTRIBUTE_NAME".meta.version | xargs)" + PACKAGED_VERSION="$(retrieve_meta version)" +} + +ensure_dl_url_re () { + echo "Ensuring DL_URL_RE. DL_URL_RE: $DL_URL_RE" >&2 + [ -z "$DL_URL_RE" ] && dl_url_re "$(retrieve_meta downloadURLRegexp)" + echo "DL_URL_RE: $DL_URL_RE" >&2 } directory_of () { @@ -256,10 +284,27 @@ process_config () { CONFIG_DIR="$(directory_of "$1")" CONFIG_NAME="$(basename "$1")" BEGIN_EXPRESSION='# Generated upstream information'; - source "$CONFIG_DIR/$CONFIG_NAME" - ensure_name + if [ -f "$CONFIG_DIR/$CONFIG_NAME" ] && + [ "${CONFIG_NAME}" = "${CONFIG_NAME%.nix}" ]; then + source "$CONFIG_DIR/$CONFIG_NAME" + else + CONFIG_NAME="${CONFIG_NAME%.nix}" + ensure_attribute_name + [ -n "$(retrieve_meta updateWalker)" ] || + [ -n "$FORCE_UPDATE_WALKER" ] || { + echo "Error: package not marked as safe for update-walker" >&2 + echo "Set FORCE_UPDATE_WALKER=1 to override" >&2 + exit 1; + } + [ -z "$(retrieve_meta fullRegenerate)" ] && eval " + do_overwrite(){ + do_overwrite_just_version + } + " + fi ensure_attribute_name retrieve_version + ensure_dl_url_re ensure_choice ensure_version ensure_target diff --git a/pkgs/data/fonts/anonymous-pro/default.nix b/pkgs/data/fonts/anonymous-pro/default.nix index 21a1c9bf5c85..cca775d941e1 100644 --- a/pkgs/data/fonts/anonymous-pro/default.nix +++ b/pkgs/data/fonts/anonymous-pro/default.nix @@ -40,6 +40,9 @@ rec { ]; platforms = with a.lib.platforms; all; + license = with a.lib.licenses; ofl; + hydraPlatforms = []; + homepage = "http://www.marksimonson.com/fonts/view/anonymous-pro"; }; passthru = { updateInfo = { diff --git a/pkgs/data/fonts/ipafont/default.nix b/pkgs/data/fonts/ipafont/default.nix new file mode 100644 index 000000000000..91bf95d1ea25 --- /dev/null +++ b/pkgs/data/fonts/ipafont/default.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchurl, unzip }: + +stdenv.mkDerivation { + name = "ipafont-003.03"; + + src = fetchurl { + url = "http://ipafont.ipa.go.jp/ipafont/IPAfont00303.php"; + sha256 = "f755ed79a4b8e715bed2f05a189172138aedf93db0f465b4e20c344a02766fe5"; + }; + + buildInputs = [ unzip ]; + + unpackPhase = '' + unzip $src + ''; + + installPhase = '' + mkdir -p $out/share/fonts/opentype + cp ./IPAfont00303/*.ttf $out/share/fonts/opentype/ + ''; + + meta = { + description = "Japanese font package with Mincho and Gothic fonts"; + longDescription = '' + IPAFont is a Japanese font developed by the Information-technology + Promotion Agency of Japan. It provides both Mincho and Gothic fonts, + suitable for both display and printing. + ''; + homepage = http://ipafont.ipa.go.jp/ipafont/; + license = stdenv.lib.licenses.ipa; + maintainers = [ stdenv.lib.maintainers.auntie ]; + }; +} diff --git a/pkgs/data/fonts/kochi-substitute-naga10/default.nix b/pkgs/data/fonts/kochi-substitute-naga10/default.nix new file mode 100644 index 000000000000..98ab8a3bcac5 --- /dev/null +++ b/pkgs/data/fonts/kochi-substitute-naga10/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl }: + +let version = "20030809"; +in +stdenv.mkDerivation { + name = "kochi-substitute-naga10-${version}"; + + src = fetchurl { + url = "mirror://sourceforgejp/efont/5411/kochi-substitute-${version}.tar.bz2"; + sha256 = "f4d69b24538833bf7e2c4de5e01713b3f1440960a6cc2a5993cb3c68cd23148c"; + }; + + sourceRoot = "kochi-substitute-${version}"; + + installPhase = '' + mkdir -p $out/share/fonts/truetype + cp ./kochi-gothic-subst.ttf $out/share/fonts/truetype/kochi-gothic-subst-naga10.ttf + cp ./kochi-mincho-subst.ttf $out/share/fonts/truetype/kochi-mincho-subst-naga10.ttf + ''; + + meta = { + description = "Japanese font, non-free replacement for MS Gothic and MS Mincho."; + longDescription = '' + Kochi Gothic and Kochi Mincho were developed as free replacements for the + MS Gothic and MS Mincho fonts from Microsoft. This version of the fonts + includes some non-free glyphs from the naga10 font, which stipulate that + this font may not be sold commercially. See kochi-substitute for the free + Debian version. + ''; + homepage = http://sourceforge.jp/projects/efont/; + license = stdenv.lib.licenses.unfreeRedistributable; + maintainers = [ stdenv.lib.maintainers.auntie ]; + }; +} diff --git a/pkgs/data/fonts/kochi-substitute/default.nix b/pkgs/data/fonts/kochi-substitute/default.nix new file mode 100644 index 000000000000..dec20fd51000 --- /dev/null +++ b/pkgs/data/fonts/kochi-substitute/default.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchurl, dpkg }: + +let version = "20030809"; +in +stdenv.mkDerivation { + name = "kochi-substitute-${version}"; + + src = fetchurl { + url = "mirror://debian/pool/main/t/ttf-kochi/ttf-kochi-gothic_${version}-15_all.deb"; + sha256 = "6e2311cd8e880a9328e4d3eef34a1c1f024fc87fba0dce177a0e1584a7360fea"; + }; + + src2 = fetchurl { + url = "mirror://debian/pool/main/t/ttf-kochi/ttf-kochi-mincho_${version}-15_all.deb"; + sha256 = "91ce6c993a3a0f77ed85db76f62ce18632b4c0cbd8f864676359a17ae5e6fa3c"; + }; + + buildInputs = [ dpkg ]; + + unpackCmd = '' + dpkg-deb --fsys-tarfile $src | tar xf - ./usr/share/fonts/truetype/kochi/kochi-gothic-subst.ttf + dpkg-deb --fsys-tarfile $src2 | tar xf - ./usr/share/fonts/truetype/kochi/kochi-mincho-subst.ttf + ''; + + installPhase = '' + mkdir -p $out/share/fonts/truetype + cp ./share/fonts/truetype/kochi/kochi-gothic-subst.ttf $out/share/fonts/truetype/ + cp ./share/fonts/truetype/kochi/kochi-mincho-subst.ttf $out/share/fonts/truetype/ + ''; + + meta = { + description = "Japanese font, a free replacement for MS Gothic and MS Mincho."; + longDescription = '' + Kochi Gothic and Kochi Mincho were developed as free replacements for the + MS Gothic and MS Mincho fonts from Microsoft. These are the Debian + versions of the fonts, which remove some non-free glyphs that were added + from the naga10 font. + ''; + homepage = http://sourceforge.jp/projects/efont/; + license = stdenv.lib.licenses.wadalab; + maintainers = [ stdenv.lib.maintainers.auntie ]; + }; +} diff --git a/pkgs/desktops/gnome-2/desktop/vte/default.nix b/pkgs/desktops/gnome-2/desktop/vte/default.nix index aca30f87dfc4..30c8bf07d418 100644 --- a/pkgs/desktops/gnome-2/desktop/vte/default.nix +++ b/pkgs/desktops/gnome-2/desktop/vte/default.nix @@ -11,11 +11,8 @@ stdenv.mkDerivation rec { patches = [ ./alt.patch - ( fetchurl { # CVE-2012-2738 - url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/" - + "vte/files/vte-0.28.2-limit-arguments.patch?revision=1.1"; - sha256 = "1s8agx74wa7wlv9ybd5h3dp4hzf4ddg7piyan37g2ab3fnvg4jhn"; - } ) + # CVE-2012-2738 + ./vte-0.28.2-limit-arguments.patch ]; buildInputs = [ intltool pkgconfig glib gtk ncurses ] ++ diff --git a/pkgs/desktops/gnome-2/desktop/vte/vte-0.28.2-limit-arguments.patch b/pkgs/desktops/gnome-2/desktop/vte/vte-0.28.2-limit-arguments.patch new file mode 100644 index 000000000000..fd454079390f --- /dev/null +++ b/pkgs/desktops/gnome-2/desktop/vte/vte-0.28.2-limit-arguments.patch @@ -0,0 +1,40 @@ +From feeee4b5832b17641e505b7083e0d299fdae318e Mon Sep 17 00:00:00 2001 +From: Christian Persch <chpe@gnome.org> +Date: Sat, 19 May 2012 17:36:09 +0000 +Subject: emulation: Limit integer arguments to 65535 + +To guard against malicious sequences containing excessively big numbers, +limit all parsed numbers to 16 bit range. Doing this here in the parsing +routine is a catch-all guard; this doesn't preclude enforcing +more stringent limits in the handlers themselves. + +https://bugzilla.gnome.org/show_bug.cgi?id=676090 +--- +diff --git a/src/table.c b/src/table.c +index 140e8c8..85cf631 100644 +--- a/src/table.c ++++ b/src/table.c +@@ -550,7 +550,7 @@ _vte_table_extract_numbers(GValueArray **array, + if (G_UNLIKELY (*array == NULL)) { + *array = g_value_array_new(1); + } +- g_value_set_long(&value, total); ++ g_value_set_long(&value, CLAMP (total, 0, G_MAXUSHORT)); + g_value_array_append(*array, &value); + } while (i++ < arginfo->length); + g_value_unset(&value); +diff --git a/src/vteseq.c b/src/vteseq.c +index 457c06a..46def5b 100644 +--- a/src/vteseq.c ++++ b/src/vteseq.c +@@ -557,7 +557,7 @@ vte_sequence_handler_multiple(VteTerminal *terminal, + GValueArray *params, + VteTerminalSequenceHandler handler) + { +- vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXLONG); ++ vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXUSHORT); + } + + static void +-- +cgit v0.9.0.2 diff --git a/pkgs/desktops/gnome-3/3.10/core/libcroco/default.nix b/pkgs/desktops/gnome-3/3.10/core/libcroco/default.nix index e5f6a0aa9b8b..1875c1491f96 100644 --- a/pkgs/desktops/gnome-3/3.10/core/libcroco/default.nix +++ b/pkgs/desktops/gnome-3/3.10/core/libcroco/default.nix @@ -13,6 +13,6 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig libxml2 glib ]; meta = with stdenv.lib; { - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/development/compilers/go/gox.nix b/pkgs/development/compilers/go/gox.nix new file mode 100644 index 000000000000..705cb6e5c28f --- /dev/null +++ b/pkgs/development/compilers/go/gox.nix @@ -0,0 +1,54 @@ +{ stdenv, lib, go, fetchFromGitHub }: + +let + goDeps = [ + { + root = "github.com/mitchellh/gox"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "gox"; + rev = "c7329055e2aeb253a947e5cc876586ff4ca19199"; + sha256 = "0zhb88jjxqn3sdc4bpzvajqvgi9igp5gk03q12gaksaxhy2wl4jy"; + }; + } + { + root = "github.com/mitchellh/iochan"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "iochan"; + rev = "b584a329b193e206025682ae6c10cdbe03b0cd77"; + sha256 = "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b"; + }; + } + ]; + sources = stdenv.mkDerivation rec { + name = "go-deps"; + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); + }; +in + +stdenv.mkDerivation rec { + name = "gox"; + + src = sources; + + propagatedBuildInputs = [ go ]; + + installPhase = '' + ensureDir $out/bin + export GOPATH=$src + go build -v -o $out/bin/gox github.com/mitchellh/gox + ''; + + meta = with lib; { + description = "A simple, no-frills tool for Go cross compilation that behaves a lot like standard go build"; + homepage = https://github.com/mitchellh/gox; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/compilers/jdk/jdk-linux-base.nix b/pkgs/development/compilers/jdk/jdk-linux-base.nix new file mode 100644 index 000000000000..b29ae826d888 --- /dev/null +++ b/pkgs/development/compilers/jdk/jdk-linux-base.nix @@ -0,0 +1,175 @@ +{ productVersion +, patchVersion +, downloadUrl +, sha256_i686 +, sha256_x86_64 +, jceName +, jceDownloadUrl +, sha256JCE +}: + +{ swingSupport ? true +, stdenv +, requireFile +, unzip +, file +, xlibs ? null +, installjdk ? true +, pluginSupport ? true +, installjce ? false +, glib +, libxml2 +, libav_0_8 +, ffmpeg +, libxslt +, mesa_noglu +, freetype +, fontconfig +, gnome +, cairo +, alsaLib +, atk +, gdk_pixbuf +}: + +assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"; +assert swingSupport -> xlibs != null; + +let + + /** + * The JRE libraries are in directories that depend on the CPU. + */ + architecture = + if stdenv.system == "i686-linux" then + "i386" + else if stdenv.system == "x86_64-linux" then + "amd64" + else + abort "jdk requires i686-linux or x86_64 linux"; + + jce = + if installjce then + requireFile { + name = jceName; + url = jceDownloadUrl; + sha256 = sha256JCE; + } + else + ""; +in + +stdenv.mkDerivation rec { + name = + if installjdk then "jdk-1.${productVersion}.0_${patchVersion}" else "jre-1.${productVersion}.0_${patchVersion}"; + + src = + if stdenv.system == "i686-linux" then + requireFile { + name = "jdk-${productVersion}u${patchVersion}-linux-i586.tar.gz"; + url = downloadUrl; + sha256 = sha256_i686; + } + else if stdenv.system == "x86_64-linux" then + + requireFile { + name = "jdk-${productVersion}u${patchVersion}-linux-x64.tar.gz"; + url = downloadUrl; + sha256 = sha256_x86_64; + } + else + abort "jdk requires i686-linux or x86_64 linux"; + + nativeBuildInputs = [ file ] + ++ stdenv.lib.optional installjce unzip; + + # See: https://github.com/NixOS/patchelf/issues/10 + dontStrip = 1; + + installPhase = '' + cd .. + + # Set PaX markings + exes=$(file $sourceRoot/bin/* $sourceRoot/jre/bin/* 2> /dev/null | grep -E 'ELF.*(executable|shared object)' | sed -e 's/: .*$//') + for file in $exes; do + paxmark m "$file" + # On x86 for heap sizes over 700MB disable SEGMEXEC and PAGEEXEC as well. + ${stdenv.lib.optionalString stdenv.isi686 ''paxmark msp "$file"''} + done + + if test -z "$installjdk"; then + mv $sourceRoot/jre $out + else + mv $sourceRoot $out + fi + + for file in $out/* + do + if test -f $file ; then + rm $file + fi + done + + if test -n "$installjdk"; then + for file in $out/jre/* + do + if test -f $file ; then + rm $file + fi + done + fi + + # construct the rpath + rpath= + for i in $libraries; do + rpath=$rpath''${rpath:+:}$i/lib:$i/lib64 + done + + if test -z "$installjdk"; then + jrePath=$out + else + jrePath=$out/jre + fi + + if test -n "${jce}"; then + unzip ${jce} + cp -v UnlimitedJCEPolicy/*.jar $jrePath/lib/security + fi + + rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/jli + rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/server + rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/xawt + rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture} + + # set all the dynamic linkers + find $out -type f -perm +100 \ + -exec patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ + --set-rpath "$rpath" {} \; + + find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \; + + if test -z "$pluginSupport"; then + rm -f $out/bin/javaws + if test -n "$installjdk"; then + rm -f $out/jre/bin/javaws + fi + fi + + mkdir $jrePath/lib/${architecture}/plugins + ln -s $jrePath/lib/${architecture}/libnpjp2.so $jrePath/lib/${architecture}/plugins + ''; + + inherit installjdk pluginSupport; + + /** + * libXt is only needed on amd64 + */ + libraries = + [stdenv.gcc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xlibs.libXxf86vm alsaLib fontconfig freetype gnome.pango gnome.gtk cairo gdk_pixbuf atk] ++ + (if swingSupport then [xlibs.libX11 xlibs.libXext xlibs.libXtst xlibs.libXi xlibs.libXp xlibs.libXt xlibs.libXrender stdenv.gcc.gcc] else []); + + passthru.mozillaPlugin = if installjdk then "/jre/lib/${architecture}/plugins" else "/lib/${architecture}/plugins"; + + meta.license = "unfree"; +} + diff --git a/pkgs/development/compilers/jdk/jdk7-linux.nix b/pkgs/development/compilers/jdk/jdk7-linux.nix index 7683ad81e597..46544dc390f2 100644 --- a/pkgs/development/compilers/jdk/jdk7-linux.nix +++ b/pkgs/development/compilers/jdk/jdk7-linux.nix @@ -1,170 +1,10 @@ -{ swingSupport ? true -, stdenv -, requireFile -, unzip -, file -, xlibs ? null -, installjdk ? true -, pluginSupport ? true -, installjce ? false -, glib -, libxml2 -, libav_0_8 -, ffmpeg -, libxslt -, mesa_noglu -, freetype -, fontconfig -, gnome -, cairo -, alsaLib -, atk -, gdk_pixbuf -}: - -assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"; -assert swingSupport -> xlibs != null; - -let - - /** - * The JRE libraries are in directories that depend on the CPU. - */ - architecture = - if stdenv.system == "i686-linux" then - "i386" - else if stdenv.system == "x86_64-linux" then - "amd64" - else - abort "jdk requires i686-linux or x86_64 linux"; - - jce = - if installjce then - requireFile { - name = "UnlimitedJCEPolicyJDK7.zip"; - url = http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html; - sha256 = "7a8d790e7bd9c2f82a83baddfae765797a4a56ea603c9150c87b7cdb7800194d"; - } - else - ""; -in - -stdenv.mkDerivation rec { - patchversion = "55"; - - name = - if installjdk then "jdk-1.7.0_${patchversion}" else "jre-1.7.0_${patchversion}"; - - src = - if stdenv.system == "i686-linux" then - requireFile { - name = "jdk-7u${patchversion}-linux-i586.tar.gz"; - url = http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html; - sha256 = "0y0v5ilbkdmf14jrvwa23x91rfdw90jji4y7hq0l494iy4wjnyc1"; - } - else if stdenv.system == "x86_64-linux" then - - requireFile { - name = "jdk-7u${patchversion}-linux-x64.tar.gz"; - url = http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html; - sha256 = "15sncxhjasv5i6p7hfrr92xq5ph9g6g12i4m52vp45l031bw5y46"; - } - else - abort "jdk requires i686-linux or x86_64 linux"; - - nativeBuildInputs = [ file ] - ++ stdenv.lib.optional installjce unzip; - - installPhase = '' - cd .. - - # Set PaX markings - exes=$(file $sourceRoot/bin/* $sourceRoot/jre/bin/* 2> /dev/null | grep -E 'ELF.*(executable|shared object)' | sed -e 's/: .*$//') - for file in $exes; do - paxmark m "$file" - # On x86 for heap sizes over 700MB disable SEGMEXEC and PAGEEXEC as well. - ${stdenv.lib.optionalString stdenv.isi686 ''paxmark msp "$file"''} - done - - if test -z "$installjdk"; then - mv $sourceRoot/jre $out - else - mv $sourceRoot $out - fi - - for file in $out/* - do - if test -f $file ; then - rm $file - fi - done - - if test -n "$installjdk"; then - for file in $out/jre/* - do - if test -f $file ; then - rm $file - fi - done - fi - - # construct the rpath - rpath= - for i in $libraries; do - rpath=$rpath''${rpath:+:}$i/lib''${rpath:+:}$i/lib64 - done - - if test -z "$installjdk"; then - jrePath=$out - else - jrePath=$out/jre - fi - - if test -n "${jce}"; then - unzip ${jce} - cp -v UnlimitedJCEPolicy/*.jar $jrePath/lib/security - fi - - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/jli - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/server - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture}/xawt - rpath=$rpath''${rpath:+:}$jrePath/lib/${architecture} - - # set all the dynamic linkers - find $out -type f -perm +100 \ - -exec patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ - --set-rpath "$rpath" {} \; - - find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \; - - # HACK: For some reason, appending atk to the global patchelf rpath paths causes: - # java: relocation error: java: symbol , version GLIBC_2.2.5 not defined in file libc.so.6 with link time reference - # Because only libglass.so needs atk, we put it only in it's rpath. - # This seems to work fine. - test -f $out/jre/lib/${architecture}/libglass.so && patchelf --set-rpath "$rpath:${atk}/lib" $out/jre/lib/${architecture}/libglass.so - - if test -z "$pluginSupport"; then - rm -f $out/bin/javaws - if test -n "$installjdk"; then - rm -f $out/jre/bin/javaws - fi - fi - - mkdir $jrePath/lib/${architecture}/plugins - ln -s $jrePath/lib/${architecture}/libnpjp2.so $jrePath/lib/${architecture}/plugins - ''; - - inherit installjdk pluginSupport; - - /** - * libXt is only needed on amd64 - */ - libraries = - [stdenv.gcc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xlibs.libXxf86vm alsaLib fontconfig freetype gnome.pango gnome.gtk cairo gdk_pixbuf] ++ - (if swingSupport then [xlibs.libX11 xlibs.libXext xlibs.libXtst xlibs.libXi xlibs.libXp xlibs.libXt xlibs.libXrender stdenv.gcc.gcc] else []); - - passthru.mozillaPlugin = if installjdk then "/jre/lib/${architecture}/plugins" else "/lib/${architecture}/plugins"; - - meta.license = "unfree"; +import ./jdk-linux-base.nix { + productVersion = "7"; + patchVersion = "60"; + downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html; + sha256_i686 = "d736fb4fd7c8ef50b76411daa640c6feeb48a5c275d29a90ffeb916a78d47a48"; + sha256_x86_64 = "c7232b717573b057dbe828d937ee406b7a75fbc6aba7f1de98a049cbd42c6ae8"; + jceName = "UnlimitedJCEPolicyJDK7.zip"; + jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html; + sha256JCE = "7a8d790e7bd9c2f82a83baddfae765797a4a56ea603c9150c87b7cdb7800194d"; } - diff --git a/pkgs/development/compilers/jdk/jdk8-linux.nix b/pkgs/development/compilers/jdk/jdk8-linux.nix new file mode 100644 index 000000000000..0c3eed75f4c2 --- /dev/null +++ b/pkgs/development/compilers/jdk/jdk8-linux.nix @@ -0,0 +1,10 @@ +import ./jdk-linux-base.nix { + productVersion = "8"; + patchVersion = "5"; + downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html; + sha256_i686 = "779f83efb8dc9ce7c1143ba9bbd38fa2d8a1c49dcb61f7d36972d37d109c5fc9"; + sha256_x86_64 = "44901389e9fb118971534ad0f58558ba8c43f315b369117135bd6617ae631edc"; + jceName = "jce_policy-8.zip"; + jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html; + sha256JCE = "f3020a3922efd6626c2fff45695d527f34a8020e938a49292561f18ad1320b59"; +} diff --git a/pkgs/development/compilers/nasm/default.nix b/pkgs/development/compilers/nasm/default.nix index 8098b9d278f4..8219882a2a21 100644 --- a/pkgs/development/compilers/nasm/default.nix +++ b/pkgs/development/compilers/nasm/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "nasm-2.11.01"; + name = "nasm-${version}"; + version = "2.11.05"; src = fetchurl { - url = "http://www.nasm.us/pub/nasm/releasebuilds/2.11.01/${name}.tar.bz2"; - sha256 = "0p0rhq18in2hyv3gircgxj72n2b1mvr8bvjlqscpaz8m62cyvam7"; + url = "http://www.nasm.us/pub/nasm/releasebuilds/${version}/${name}.tar.bz2"; + sha256 = "1sgspnascc0asmwlv3jm1mq4vzx653sa7vlg48z20pfybk7pnhaa"; }; meta = { diff --git a/pkgs/development/compilers/sbcl/bootstrap.nix b/pkgs/development/compilers/sbcl/bootstrap.nix new file mode 100644 index 000000000000..c3335ea6d22b --- /dev/null +++ b/pkgs/development/compilers/sbcl/bootstrap.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "sbcl-bootstrap-${version}"; + version = "1.1.8"; + + src = if stdenv.isDarwin + then fetchurl { + url = mirror://sourceforge/project/sbcl/sbcl/1.1.8/sbcl-1.1.8-x86-64-darwin-binary.tar.bz2; + sha256 = "006pr88053wclvbjfjdypnbiw8wymbzdzi7a6kbkpdfn4zf5943j"; + } + else fetchurl { + url = mirror://sourceforge/project/sbcl/sbcl/1.1.8/sbcl-1.1.8-x86-64-linux-binary.tar.bz2; + sha256 = "0lh1jglxlfwk4cm6sgwk1jnb6ikhbrkx7p5aha2nbmkd6zl96prx"; + }; + + installPhase = '' + ensureDir $out/bin + cp -p src/runtime/sbcl $out/bin + ensureDir $out/share/sbcl + cp -p output/sbcl.core $out/share/sbcl + ''; + + meta = { + description = "Lisp compiler"; + homepage = "http://www.sbcl.org"; + license = "bsd"; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix index e1de4c53de50..579d5ec11eb9 100644 --- a/pkgs/development/compilers/sbcl/default.nix +++ b/pkgs/development/compilers/sbcl/default.nix @@ -1,36 +1,18 @@ -a : -let - fetchurl = a.fetchurl; - s= # Generated upstream information - rec { - baseName="sbcl"; - version="1.2.0"; - name="${baseName}-${version}"; - hash="13k20sys1v4lvgis8cnbczww6zs93rw176vz07g4jx06418k53x2"; - url="mirror://sourceforge/project/sbcl/sbcl/1.2.0/sbcl-1.2.0-source.tar.bz2"; - sha256="13k20sys1v4lvgis8cnbczww6zs93rw176vz07g4jx06418k53x2"; - }; - buildInputs = with a; [ - clisp makeWrapper - ]; -in -rec { - src = a.fetchUrlFromSrcInfo s; +{ stdenv, fetchurl, sbclBootstrap, clisp}: - inherit buildInputs; - configureFlags = []; +stdenv.mkDerivation rec { + name = "sbcl-${version}"; + version = "1.2.0"; - /* doConfigure should be removed if not needed */ - phaseNames = ["setVars" "doFixNewer" "doFixTests" "setVersion" "doPatch" "doBuild" "doInstall" "doWrap"]; + src = fetchurl { + url = mirror://sourceforge/project/sbcl/sbcl/1.2.0/sbcl-1.2.0-source.tar.bz2; + sha256 = "13k20sys1v4lvgis8cnbczww6zs93rw176vz07g4jx06418k53x2"; + }; - setVars = a.fullDepEntry ('' - export INSTALL_ROOT=$out - mkdir test-home - export HOME=$PWD/test-home - '') ["minInit"]; + buildInputs = [ sbclBootstrap ] ++ stdenv.lib.optional stdenv.isLinux clisp; - setVersion = a.fullDepEntry ('' - echo '"${s.version}.nixos"' > version.lisp-expr + patchPhase = '' + echo '"${version}.nixos"' > version.lisp-expr echo " (lambda (features) (flet ((enable (x) @@ -38,14 +20,11 @@ rec { (disable (x) (setf features (remove x features)))) (enable :sb-thread))) " > customize-target-features.lisp - '') ["minInit" "doUnpack"]; - /* SBCL checks whether files are up-to-date in many places.. Unfortunately, same timestamp - is not good enought - */ - doFixNewer = a.fullDepEntry('' pwd + # SBCL checks whether files are up-to-date in many places.. + # Unfortunately, same timestamp is not good enough sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp sed -i src/cold/slam.lisp -e \ @@ -56,13 +35,8 @@ rec { '/date defaulted-fasl/a)' sed -i src/code/target-load.lisp -e \ '/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))' - '') ["minInit" "doUnpack"]; - doWrap = a.fullDepEntry ('' - wrapProgram "$out/bin/sbcl" --set "SBCL_HOME" "$out/lib/sbcl" - '') ["minInit" "addInputs"]; - - doFixTests = a.fullDepEntry ('' + # Fix the tests sed -e '/deftest pwent/inil' -i contrib/sb-posix/posix-tests.lisp sed -e '/deftest grent/inil' -i contrib/sb-posix/posix-tests.lisp sed -e '/deftest .*ent.non-existing/,+5d' -i contrib/sb-posix/posix-tests.lisp @@ -70,24 +44,31 @@ rec { sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp - '') ["minInit" "doUnpack"]; + ''; + + preBuild = '' + export INSTALL_ROOT=$out + ensureDir test-home + export HOME=$PWD/test-home + ''; - doBuild = a.fullDepEntry ('' - sh make.sh clisp - '') ["minInit" "doUnpack" "addInputs"]; + buildPhase = if stdenv.isLinux + then '' + sh make.sh clisp --prefix=$out + '' + else '' + sh make.sh --prefix=$out --xc-host='${sbclBootstrap}/bin/sbcl --core ${sbclBootstrap}/share/sbcl/sbcl.core --disable-debugger --no-userinit --no-sysinit' + ''; - doInstall = a.fullDepEntry ('' - sh install.sh - '') ["doBuild" "minInit" "addInputs"]; + installPhase = '' + INSTALL_ROOT=$out sh install.sh + ''; - inherit(s) name; - inherit(s) version; meta = { description = "Lisp compiler"; - homepage = "http://www.sbcl.org"; - license = "bsd"; - maintainers = [a.lib.maintainers.raskin]; - platforms = with a.lib.platforms; all; - inherit(s) version; + homepage = http://www.sbcl.org; + license = stdenv.lib.licenses.bsd3; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.all; }; } diff --git a/pkgs/development/compilers/scala/2.9.nix b/pkgs/development/compilers/scala/2.9.nix index a7c9dbc90736..41f377dbfa3f 100644 --- a/pkgs/development/compilers/scala/2.9.nix +++ b/pkgs/development/compilers/scala/2.9.nix @@ -3,11 +3,11 @@ # at runtime, need jre or jdk stdenv.mkDerivation rec { - name = "scala-2.9.2"; + name = "scala-2.9.3"; src = fetchurl { - url = "http://www.scala-lang.org/downloads/distrib/files/${name}.tgz"; - sha256 = "0s1shpzw2hyz7bwxdqq19rcrzbpq4d7b0kvdvjvhy7h05x496b46"; + url = "http://www.scala-lang.org/files/archive/${name}.tgz"; + sha256 = "faaab229f78c945063e8fd31c045bc797c731194296d7a4f49863fd87fc4e7b9"; }; installPhase = '' diff --git a/pkgs/development/compilers/smlnj/bootstrap.nix b/pkgs/development/compilers/smlnj/bootstrap.nix new file mode 100644 index 000000000000..27fdf75cc25d --- /dev/null +++ b/pkgs/development/compilers/smlnj/bootstrap.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchurl, cpio, rsync, makeWrapper }: + +stdenv.mkDerivation rec { + name = "smlnj-bootstrap-${version}"; + + version = "110.76"; + + src = fetchurl { + url = "http://smlnj.cs.uchicago.edu/dist/working/${version}/smlnj-x86-${version}.pkg"; + sha256 = "0n3kdlqffqw97piya7i4lddrhjml2dp1q9hfq2jrd2hbzln8vdjf"; + }; + + buildInputs = [ cpio rsync makeWrapper ]; + + unpackPhase = '' + /usr/bin/xar -xf $src + cd smlnj.pkg + ''; + + buildPhase = '' + cat Payload | gunzip -dc | cpio -i + ''; + + installPhase = '' + ensureDir $out/bin + rsync -av bin/ $out/bin/ + + ensureDir $out/lib + rsync -av lib/ $out/lib/ + ''; + + postInstall = '' + wrapProgram "$out/bin/sml" --set "SMLNJ_HOME" "$out" + ''; + + meta = { + description = "Compiler for the Standard ML '97 programming language"; + homepage = http://www.smlnj.org; + license = stdenv.lib.licenses.free; + platforms = stdenv.lib.platforms.darwin; + maintainers = [ stdenv.lib.maintainers.jwiegley ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/interpreters/lua-5/expat.nix b/pkgs/development/interpreters/lua-5/expat.nix new file mode 100644 index 000000000000..a2b42cb37c53 --- /dev/null +++ b/pkgs/development/interpreters/lua-5/expat.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchurl, lua5, expat }: + +stdenv.mkDerivation rec { + version = "1.3.0"; + name = "lua-expat-${version}"; + isLibrary = true; + src = fetchurl { + url = "https://matthewwild.co.uk/projects/luaexpat/luaexpat-${version}.tar.gz"; + sha256 = "1hvxqngn0wf5642i5p3vcyhg3pmp102k63s9ry4jqyyqc1wkjq6h"; + }; + + buildInputs = [ lua5 expat ]; + + preBuild = '' + makeFlagsArray=( + LUA_LDIR="$out/share/lua/${lua5.luaversion}" + LUA_INC="-I${lua5}/include" LUA_CDIR="$out/lib/lua/${lua5.luaversion}" + EXPAT_INC="-I${expat}/include"); + ''; + + meta = { + homepage = "http://matthewwild.co.uk/projects/luaexpat"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.flosse ]; + }; +} diff --git a/pkgs/development/interpreters/perl/5.20/cpp-precomp.patch b/pkgs/development/interpreters/perl/5.20/cpp-precomp.patch new file mode 100644 index 000000000000..231853fe51a6 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.20/cpp-precomp.patch @@ -0,0 +1,11 @@ +--- a/hints/darwin.sh 2013-05-08 11:13:45.000000000 -0600 ++++ b/hints/darwin.sh 2013-05-08 11:15:04.000000000 -0600 +@@ -129,7 +129,7 @@ + + # Avoid Apple's cpp precompiler, better for extensions + if [ "X`echo | ${cc} -no-cpp-precomp -E - 2>&1 >/dev/null`" = "X" ]; then +- cppflags="${cppflags} -no-cpp-precomp" ++ #cppflags="${cppflags} -no-cpp-precomp" + + # This is necessary because perl's build system doesn't + # apply cppflags to cc compile lines as it should. diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix new file mode 100644 index 000000000000..d9fb32aa43ea --- /dev/null +++ b/pkgs/development/interpreters/perl/5.20/default.nix @@ -0,0 +1,68 @@ +{ stdenv, fetchurl }: + +let + + libc = if stdenv.gcc.libc or null != null then stdenv.gcc.libc else "/usr"; + +in + +with { + inherit (stdenv.lib) optional optionalString; +}; + +stdenv.mkDerivation rec { + name = "perl-5.20.0"; + + src = fetchurl { + url = "mirror://cpan/src/${name}.tar.gz"; + sha256 = "00ndpgw4bjing9gy2y6jvs3q46mv2ll6zrxjkhpr12fcdsnji32f"; + }; + + patches = + [ # Do not look in /usr etc. for dependencies. + ./no-sys-dirs.patch + ] + ++ optional stdenv.isSunOS ./ld-shared.patch + ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; + + # Build a thread-safe Perl with a dynamic libperls.o. We need the + # "installstyle" option to ensure that modules are put under + # $out/lib/perl5 - this is the general default, but because $out + # contains the string "perl", Configure would select $out/lib. + # Miniperl needs -lm. perl needs -lrt. + configureFlags = + [ "-de" + "-Dcc=gcc" + "-Uinstallusrbinperl" + "-Dinstallstyle=lib/perl5" + "-Duseshrplib" + "-Dlocincpth=${libc}/include" + "-Dloclibpth=${libc}/lib" + ] + ++ optional (stdenv ? glibc) "-Dusethreads"; + + configureScript = "${stdenv.shell} ./Configure"; + + dontAddPrefix = true; + + enableParallelBuilding = true; + + preConfigure = + '' + configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" + + ${optionalString stdenv.isArm '' + configureFlagsArray=(-Dldflags="-lm -lrt") + ''} + ''; + + preBuild = optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools)) + '' + # Make Cwd work on NixOS (where we don't have a /bin/pwd). + substituteInPlace dist/PathTools/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'" + ''; + + setupHook = ./setup-hook.sh; + + passthru.libPrefix = "lib/perl5/site_perl"; +} diff --git a/pkgs/development/interpreters/perl/5.20/ld-shared.patch b/pkgs/development/interpreters/perl/5.20/ld-shared.patch new file mode 100644 index 000000000000..be45230c8a73 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.20/ld-shared.patch @@ -0,0 +1,11 @@ +--- perl-5.16.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000 ++++ perl-5.16.2/hints/solaris_2.sh 2013-02-14 19:30:31.681631019 +0000 +@@ -568,7 +568,7 @@ + # ccflags="$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" + # fi + ldflags="$ldflags -m64" +- lddlflags="$lddlflags -G -m64" ++ lddlflags="$lddlflags -shared -m64" + ;; + *) + getconfccflags="`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" diff --git a/pkgs/development/interpreters/perl/5.20/no-libutil.patch b/pkgs/development/interpreters/perl/5.20/no-libutil.patch new file mode 100644 index 000000000000..68d44612bfe6 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.20/no-libutil.patch @@ -0,0 +1,12 @@ +diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure +--- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200 ++++ perl-5.14.2/Configure 2012-02-16 17:24:50.779839039 +0100 +@@ -1368,7 +1368,7 @@ + : List of libraries we want. + : If anyone needs extra -lxxx, put those in a hint file. + libswanted="socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun" +-libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD" ++libswanted="$libswanted m crypt sec c cposix posix ucb bsd BSD" + : We probably want to search /usr/shlib before most other libraries. + : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. + glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` diff --git a/pkgs/development/interpreters/perl/5.20/no-sys-dirs.patch b/pkgs/development/interpreters/perl/5.20/no-sys-dirs.patch new file mode 100644 index 000000000000..1793273a76f9 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.20/no-sys-dirs.patch @@ -0,0 +1,250 @@ +diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure +--- perl-5.20.0-orig/Configure 2014-05-26 15:34:18.000000000 +0200 ++++ perl-5.20.0/Configure 2014-06-25 10:43:35.368285986 +0200 +@@ -106,15 +106,7 @@ + fi + + : Proper PATH setting +-paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin' +-paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin" +-paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" +-paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" +-paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" +-paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin" +-paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" +-paths="$paths /sbin /usr/sbin /usr/libexec" +-paths="$paths /system/gnu_library/bin" ++paths='' + + for p in $paths + do +@@ -1337,8 +1329,7 @@ + archname='' + : Possible local include directories to search. + : Set locincpth to "" in a hint file to defeat local include searches. +-locincpth="/usr/local/include /opt/local/include /usr/gnu/include" +-locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include" ++locincpth="" + : + : no include file wanted by default + inclwanted='' +@@ -1349,17 +1340,12 @@ + + libnames='' + : change the next line if compiling for Xenix/286 on Xenix/386 +-xlibpth='/usr/lib/386 /lib/386' ++xlibpth='' + : Possible local library directories to search. +-loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib" +-loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib" ++loclibpth="" + + : general looking path for locating libraries +-glibpth="/lib /usr/lib $xlibpth" +-glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib" +-test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth" +-test -f /shlib/libc.so && glibpth="/shlib $glibpth" +-test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64" ++glibpth="" + + : Private path used by Configure to find libraries. Its value + : is prepended to libpth. This variable takes care of special +@@ -1391,8 +1377,6 @@ + libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD" + : We probably want to search /usr/shlib before most other libraries. + : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. +-glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` +-glibpth="/usr/shlib $glibpth" + : Do not use vfork unless overridden by a hint file. + usevfork=false + +@@ -2446,7 +2430,6 @@ + zip + " + pth=`echo $PATH | sed -e "s/$p_/ /g"` +-pth="$pth $sysroot/lib $sysroot/usr/lib" + for file in $loclist; do + eval xxx=\$$file + case "$xxx" in +@@ -4936,7 +4919,7 @@ + : Set private lib path + case "$plibpth" in + '') if ./mips; then +- plibpth="$incpath/usr/lib $sysroot/usr/local/lib $sysroot/usr/ccs/lib" ++ plibpth="$incpath/usr/lib" + fi;; + esac + case "$libpth" in +@@ -8600,13 +8583,8 @@ + echo " " + case "$sysman" in + '') +- syspath='/usr/share/man/man1 /usr/man/man1' +- syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1" +- syspath="$syspath /usr/man/u_man/man1" +- syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1" +- syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1" +- syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1" +- sysman=`./loc . /usr/man/man1 $syspath` ++ syspath='' ++ sysman='' + ;; + esac + if $test -d "$sysman"; then +@@ -19900,9 +19878,10 @@ + case "$full_ar" in + '') full_ar=$ar ;; + esac ++full_ar=ar + + : Store the full pathname to the sed program for use in the C program +-full_sed=$sed ++full_sed=sed + + : see what type gids are declared as in the kernel + echo " " +Only in perl-5.20.0/: Configure.orig +diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/ext/Errno/Errno_pm.PL perl-5.20.0/ext/Errno/Errno_pm.PL +--- perl-5.20.0-orig/ext/Errno/Errno_pm.PL 2014-05-26 15:34:20.000000000 +0200 ++++ perl-5.20.0/ext/Errno/Errno_pm.PL 2014-06-25 10:31:24.317970047 +0200 +@@ -126,11 +126,7 @@ + if ($dep =~ /(\S+errno\.h)/) { + $file{$1} = 1; + } +- } elsif ($^O eq 'linux' && +- $Config{gccversion} ne '' && +- $Config{gccversion} !~ /intel/i +- # might be using, say, Intel's icc +- ) { ++ } elsif (0) { + # When cross-compiling we may store a path for gcc's "sysroot" option: + my $sysroot = $Config{sysroot} || ''; + # Some Linuxes have weird errno.hs which generate +Only in perl-5.20.0/ext/Errno: Errno_pm.PL.orig +diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/freebsd.sh perl-5.20.0/hints/freebsd.sh +--- perl-5.20.0-orig/hints/freebsd.sh 2014-01-31 22:55:51.000000000 +0100 ++++ perl-5.20.0/hints/freebsd.sh 2014-06-25 10:25:53.263964680 +0200 +@@ -119,21 +119,21 @@ + objformat=`/usr/bin/objformat` + if [ x$objformat = xaout ]; then + if [ -e /usr/lib/aout ]; then +- libpth="/usr/lib/aout /usr/local/lib /usr/lib" +- glibpth="/usr/lib/aout /usr/local/lib /usr/lib" ++ libpth="" ++ glibpth="" + fi + lddlflags='-Bshareable' + else +- libpth="/usr/lib /usr/local/lib" +- glibpth="/usr/lib /usr/local/lib" ++ libpth="" ++ glibpth="" + ldflags="-Wl,-E " + lddlflags="-shared " + fi + cccdlflags='-DPIC -fPIC' + ;; + *) +- libpth="/usr/lib /usr/local/lib" +- glibpth="/usr/lib /usr/local/lib" ++ libpth="" ++ glibpth="" + ldflags="-Wl,-E " + lddlflags="-shared " + cccdlflags='-DPIC -fPIC' +diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/linux.sh +--- perl-5.20.0-orig/hints/linux.sh 2014-05-26 15:34:20.000000000 +0200 ++++ perl-5.20.0/hints/linux.sh 2014-06-25 10:33:47.354883843 +0200 +@@ -150,25 +150,6 @@ + ;; + esac + +-# Ubuntu 11.04 (and later, presumably) doesn't keep most libraries +-# (such as -lm) in /lib or /usr/lib. So we have to ask gcc to tell us +-# where to look. We don't want gcc's own libraries, however, so we +-# filter those out. +-# This could be conditional on Unbuntu, but other distributions may +-# follow suit, and this scheme seems to work even on rather old gcc's. +-# This unconditionally uses gcc because even if the user is using another +-# compiler, we still need to find the math library and friends, and I don't +-# know how other compilers will cope with that situation. +-# Morever, if the user has their own gcc earlier in $PATH than the system gcc, +-# we don't want its libraries. So we try to prefer the system gcc +-# Still, as an escape hatch, allow Configure command line overrides to +-# plibpth to bypass this check. +-if [ -x /usr/bin/gcc ] ; then +- gcc=/usr/bin/gcc +-else +- gcc=gcc +-fi +- + case "$plibpth" in + '') plibpth=`LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries | + cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'` +@@ -178,32 +159,6 @@ + ;; + esac + +-case "$libc" in +-'') +-# If you have glibc, then report the version for ./myconfig bug reporting. +-# (Configure doesn't need to know the specific version since it just uses +-# gcc to load the library for all tests.) +-# We don't use __GLIBC__ and __GLIBC_MINOR__ because they +-# are insufficiently precise to distinguish things like +-# libc-2.0.6 and libc-2.0.7. +- for p in $plibpth +- do +- for trylib in libc.so.6 libc.so +- do +- if $test -e $p/$trylib; then +- libc=`ls -l $p/$trylib | awk '{print $NF}'` +- if $test "X$libc" != X; then +- break +- fi +- fi +- done +- if $test "X$libc" != X; then +- break +- fi +- done +- ;; +-esac +- + # Are we using ELF? Thanks to Kenneth Albanowski <kjahds@kjahds.com> + # for this test. + cat >try.c <<'EOM' +@@ -367,33 +322,6 @@ + ;; + esac + +-# SuSE8.2 has /usr/lib/libndbm* which are ld scripts rather than +-# true libraries. The scripts cause binding against static +-# version of -lgdbm which is a bad idea. So if we have 'nm' +-# make sure it can read the file +-# NI-S 2003/08/07 +-case "$nm" in +- '') ;; +- *) +- for p in $plibpth +- do +- if $test -r $p/libndbm.so; then +- if $nm $p/libndbm.so >/dev/null 2>&1 ; then +- echo 'Your shared -lndbm seems to be a real library.' +- _libndbm_real=1 +- break +- fi +- fi +- done +- if $test "X$_libndbm_real" = X; then +- echo 'Your shared -lndbm is not a real library.' +- set `echo X "$libswanted "| sed -e 's/ ndbm / /'` +- shift +- libswanted="$*" +- fi +- ;; +-esac +- + # Linux on Synology. + if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then + # Tested on Synology DS213 and DS413 diff --git a/pkgs/development/interpreters/perl/5.20/setup-hook.sh b/pkgs/development/interpreters/perl/5.20/setup-hook.sh new file mode 100644 index 000000000000..6a144a7f7804 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.20/setup-hook.sh @@ -0,0 +1,5 @@ +addPerlLibPath () { + addToSearchPath PERL5LIB $1/lib/perl5/site_perl +} + +envHooks=(${envHooks[@]} addPerlLibPath) diff --git a/pkgs/development/interpreters/php/5.4.nix b/pkgs/development/interpreters/php/5.4.nix index b692e4d8a991..c194c3aa8a07 100644 --- a/pkgs/development/interpreters/php/5.4.nix +++ b/pkgs/development/interpreters/php/5.4.nix @@ -9,7 +9,7 @@ in composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in { - version = "5.4.29"; + version = "5.4.30"; name = "php-${version}"; @@ -243,7 +243,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) src = fetchurl { url = "http://www.php.net/distributions/php-${version}.tar.bz2"; - sha256 = "19z2n6h1fvj30n6hl2mwhw2f4i1vwhbj3j7abq3gc16gcfh3rkk2"; + sha256 = "1rkc977b4k0y6qg5nf8729g5zpica31h1isyds6khmrdwi23df1j"; }; meta = { diff --git a/pkgs/development/libraries/gloox/default.nix b/pkgs/development/libraries/gloox/default.nix new file mode 100644 index 000000000000..4e271a8c6783 --- /dev/null +++ b/pkgs/development/libraries/gloox/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchurl +, zlibSupport ? true, zlib ? null +, sslSupport ? true, openssl ? null +, idnSupport ? true, libidn ? null +}: + +assert zlibSupport -> zlib != null; +assert sslSupport -> openssl != null; +assert idnSupport -> libidn != null; + +let + version = "1.0.10"; +in +stdenv.mkDerivation rec { + name = "gloox-${version}"; + + src = fetchurl { + url = "http://camaya.net/download/gloox-${version}.tar.bz2"; + sha256 = "300e756af97d43f3f70f1e68e4d4c7129d587dface61633f50d2c490876f58a3"; + }; + + buildInputs = [ ] + ++ stdenv.lib.optional zlibSupport zlib + ++ stdenv.lib.optional sslSupport openssl + ++ stdenv.lib.optional idnSupport libidn; + + meta = { + description = "A portable high-level Jabber/XMPP library for C++"; + homepage = "http://camaya.net/gloox"; + license = [ "GPLv3" ]; + }; +} diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix index 07c3c668793c..a78d98907291 100644 --- a/pkgs/development/libraries/gnu-efi/default.nix +++ b/pkgs/development/libraries/gnu-efi/default.nix @@ -1,23 +1,15 @@ -{ stdenv -, fetchurl -}: +{ stdenv, fetchurl }: -let version = "3.0u"; in stdenv.mkDerivation { - - name = "gnu-efi-${version}"; +stdenv.mkDerivation rec { + name = "gnu-efi_${version}"; + version = "3.0u"; src = fetchurl { - url = "mirror://sourceforge/gnu-efi/gnu-efi_${version}.orig.tar.gz"; + url = "mirror://sourceforge/gnu-efi/${name}.orig.tar.gz"; sha256 = "0klkdxh1aqwwfm393q67nxww6liffyp2lfybbnh4q819b06la39w"; }; - meta = { - description = "GNU EFI development toolchain"; - homepage = http://sourceforge.net/projects/gnu-efi/; - license = "GPL"; - maintainers = [ stdenv.lib.maintainers.shlevy ]; - platforms = ["x86_64-linux" "i686-linux"]; - }; + arch = with stdenv.lib; head (splitString "-" stdenv.system); makeFlags = [ "CC=gcc" @@ -34,8 +26,17 @@ let version = "3.0u"; in stdenv.mkDerivation { ''; installPhase = '' + mkdir -pv $out/include/efi/{protocol,$arch} make PREFIX="$out" $makeFlags install mkdir -pv $out/share/gnu-efi install -D -m644 apps/*.efi $out/share/gnu-efi ''; + + meta = with stdenv.lib; { + description = "GNU EFI development toolchain"; + homepage = http://sourceforge.net/projects/gnu-efi/; + license = licenses.bsd3; + maintainers = [ stdenv.lib.maintainers.shlevy ]; + platforms = platforms.linux; + }; } diff --git a/pkgs/development/libraries/gperftools/default.nix b/pkgs/development/libraries/gperftools/default.nix index c7c639f2adb8..9ffccac1e0f4 100644 --- a/pkgs/development/libraries/gperftools/default.nix +++ b/pkgs/development/libraries/gperftools/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "0ks9gsnhxrs2vccc6ha9m8xmj83lmw09xcws4zc0k57q4jcy5bgk"; }; - buildInputs = [ libunwind ]; + buildInputs = stdenv.lib.optional stdenv.isLinux libunwind; # some packages want to link to the static tcmalloc_minimal # to drop the runtime dependency on gperftools @@ -19,6 +19,6 @@ stdenv.mkDerivation rec { meta = { homepage = https://code.google.com/p/gperftools/; description = "Fast, multi-threaded malloc() and nifty performance analysis tools"; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; }; } diff --git a/pkgs/development/libraries/haskell/SHA2/default.nix b/pkgs/development/libraries/haskell/SHA2/default.nix new file mode 100644 index 000000000000..435d51ae0fed --- /dev/null +++ b/pkgs/development/libraries/haskell/SHA2/default.nix @@ -0,0 +1,14 @@ +{ cabal, aes, monadsTf, transformers }: + +cabal.mkDerivation (self: { + pname = "SHA2"; + version = "0.2.5"; + sha256 = "1zs79a327x6myfam3p2vr8lmszcaqnkll2qz8n4sy835vz328j40"; + buildDepends = [ aes monadsTf transformers ]; + meta = { + description = "Fast, incremental SHA hashing for bytestrings"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) + diff --git a/pkgs/development/libraries/haskell/Yampa/default.nix b/pkgs/development/libraries/haskell/Yampa/default.nix new file mode 100644 index 000000000000..7d941101eb36 --- /dev/null +++ b/pkgs/development/libraries/haskell/Yampa/default.nix @@ -0,0 +1,14 @@ +{ cabal, random }: + +cabal.mkDerivation (self: { + pname = "Yampa"; + version = "0.9.5"; + sha256 = "0r6fm2ccls7gbc5s0vbrzrqv6marnzlzc7zr4afkgfk9jsqfmqjh"; + buildDepends = [ random ]; + meta = { + homepage = "http://www.haskell.org/haskellwiki/Yampa"; + description = "Library for programming hybrid systems"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/bson/default.nix b/pkgs/development/libraries/haskell/bson/default.nix index da4629e93fba..028b2e7d969f 100644 --- a/pkgs/development/libraries/haskell/bson/default.nix +++ b/pkgs/development/libraries/haskell/bson/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "bson"; - version = "0.2.4"; - sha256 = "1fr0xx9q2l3cb72j5lgrwdlr2gba7idh2v80s8d6dr69dhwaccd9"; + version = "0.3"; + sha256 = "0787z6970lf93mgrsyqcilnkx5bynny88ag15z2f07l1rhva6ac4"; buildDepends = [ binary cryptohash dataBinaryIeee754 mtl network text time ]; diff --git a/pkgs/development/libraries/haskell/command-qq/default.nix b/pkgs/development/libraries/haskell/command-qq/default.nix new file mode 100644 index 000000000000..c48701efe0ef --- /dev/null +++ b/pkgs/development/libraries/haskell/command-qq/default.nix @@ -0,0 +1,16 @@ +{ cabal, doctest, hspec, text }: + +cabal.mkDerivation (self: { + pname = "command-qq"; + version = "0.3.0.0"; + sha256 = "1bqfb4gc5ja9d9jygijqpf6014bmfcxnsvpv7c5n4f1z2aj07jy5"; + buildDepends = [ text ]; + testDepends = [ doctest hspec text ]; + doCheck = false; + meta = { + homepage = "http://biegunka.github.io/command-qq/"; + description = "Quasiquoters for external commands"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/deepseq-generics/default.nix b/pkgs/development/libraries/haskell/deepseq-generics/default.nix new file mode 100644 index 000000000000..6b3edd59ab27 --- /dev/null +++ b/pkgs/development/libraries/haskell/deepseq-generics/default.nix @@ -0,0 +1,15 @@ +{ cabal, deepseq, HUnit, testFramework, testFrameworkHunit }: + +cabal.mkDerivation (self: { + pname = "deepseq-generics"; + version = "0.1.1.1"; + sha256 = "1icc2gxsbnjjl150msnyysvr9r14kb6s2gm3izrj5a3mwf6l7s08"; + buildDepends = [ deepseq ]; + testDepends = [ deepseq HUnit testFramework testFrameworkHunit ]; + meta = { + homepage = "https://github.com/hvr/deepseq-generics"; + description = "GHC.Generics-based Control.DeepSeq.rnf implementation"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/extensible-effects/default.nix b/pkgs/development/libraries/haskell/extensible-effects/default.nix index 8c188bf68203..a4c4f8ecc7c7 100644 --- a/pkgs/development/libraries/haskell/extensible-effects/default.nix +++ b/pkgs/development/libraries/haskell/extensible-effects/default.nix @@ -11,6 +11,7 @@ cabal.mkDerivation (self: { HUnit QuickCheck testFramework testFrameworkHunit testFrameworkQuickcheck2 ]; + jailbreak = true; meta = { homepage = "https://github.com/RobotGymnast/extensible-effects"; description = "An Alternative to Monad Transformers"; @@ -18,5 +19,4 @@ cabal.mkDerivation (self: { platforms = self.ghc.meta.platforms; maintainers = [ self.stdenv.lib.maintainers.ocharles ]; }; - jailbreak = true; }) diff --git a/pkgs/development/libraries/haskell/folds/default.nix b/pkgs/development/libraries/haskell/folds/default.nix new file mode 100644 index 000000000000..6317182f3050 --- /dev/null +++ b/pkgs/development/libraries/haskell/folds/default.nix @@ -0,0 +1,22 @@ +{ cabal, comonad, contravariant, deepseq, doctest, filepath, hlint +, lens, mtl, pointed, profunctors, reflection, semigroupoids +, semigroups, tagged, transformers, vector +}: + +cabal.mkDerivation (self: { + pname = "folds"; + version = "0.6.1"; + sha256 = "13p4kyr48g917ib87n14qpqaka6isp73cwy7mvvsqgprj1fghyj1"; + buildDepends = [ + comonad contravariant lens pointed profunctors reflection + semigroupoids tagged transformers vector + ]; + testDepends = [ deepseq doctest filepath hlint mtl semigroups ]; + doCheck = false; + meta = { + homepage = "http://github.com/ekmett/folds"; + description = "Beautiful Folding"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix index 31d1d7689b1e..5d29ec8474e6 100644 --- a/pkgs/development/libraries/haskell/ghc-mod/default.nix +++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix @@ -21,6 +21,7 @@ cabal.mkDerivation (self: { configureFlags = "--datasubdir=${self.pname}-${self.version}"; postInstall = '' cd $out/share/$pname-$version + sed -i -e 's/"-b" "\\n" "-l"/"-l" "-b" "\\"\\\\n\\""/' ghc-process.el make rm Makefile cd .. diff --git a/pkgs/development/libraries/haskell/hcltest/default.nix b/pkgs/development/libraries/haskell/hcltest/default.nix index 170c885d2405..fa2ab9a145ae 100644 --- a/pkgs/development/libraries/haskell/hcltest/default.nix +++ b/pkgs/development/libraries/haskell/hcltest/default.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "hcltest"; - version = "0.3.1"; - sha256 = "0qnf6ib01njcbjfbwxff8y4sqmrj6nyy9y9hb0l0kw21cxsgl7c9"; + version = "0.3.2"; + sha256 = "0q5b0v2gh0b3a15hg25bqj7scbckrkka2ckk49g2mrdz2gpr28bq"; buildDepends = [ dlist either filepath free lens mmorph monadControl mtl optparseApplicative randomShuffle split stm tagged tasty temporary diff --git a/pkgs/development/libraries/haskell/hdaemonize/default.nix b/pkgs/development/libraries/haskell/hdaemonize/default.nix new file mode 100644 index 000000000000..203eb33844e0 --- /dev/null +++ b/pkgs/development/libraries/haskell/hdaemonize/default.nix @@ -0,0 +1,14 @@ +{ cabal, extensibleExceptions, filepath, hsyslog, mtl }: + +cabal.mkDerivation (self: { + pname = "hdaemonize"; + version = "0.4.5.0"; + sha256 = "1b9aic08pgmp95qy74qcrmq9dn33k6knycy7mn1dg8c5svmchb2w"; + buildDepends = [ extensibleExceptions filepath hsyslog mtl ]; + meta = { + homepage = "http://github.com/madhadron/hdaemonize"; + description = "Library to handle the details of writing daemons for UNIX"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/ixset/default.nix b/pkgs/development/libraries/haskell/ixset/default.nix new file mode 100644 index 000000000000..f45e95b5e86f --- /dev/null +++ b/pkgs/development/libraries/haskell/ixset/default.nix @@ -0,0 +1,14 @@ +{ cabal, safecopy, syb, sybWithClass }: + +cabal.mkDerivation (self: { + pname = "ixset"; + version = "1.0.5"; + sha256 = "1hznn7f8f13x5125n76dchayi16z72050qbwifnkrca54nf9q2ns"; + buildDepends = [ safecopy syb sybWithClass ]; + meta = { + homepage = "http://happstack.com"; + description = "Efficient relational queries on Haskell sets"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/monadloc-pp/default.nix b/pkgs/development/libraries/haskell/monadloc-pp/default.nix new file mode 100644 index 000000000000..5ec05316ba0f --- /dev/null +++ b/pkgs/development/libraries/haskell/monadloc-pp/default.nix @@ -0,0 +1,18 @@ +{ cabal, filepath, haskellSrcExts, monadloc, syb }: + +cabal.mkDerivation (self: { + pname = "monadloc-pp"; + version = "0.3"; + sha256 = "0jr9ngcj3l6kd5cscll5kr3a4bp52sdjgrdxd1j5a21jyc3gdyvn"; + isLibrary = false; + isExecutable = true; + buildDepends = [ filepath haskellSrcExts monadloc syb ]; + jailbreak = true; + meta = { + homepage = "http://github.com/pepeiborra/monadloc"; + description = "A preprocessor for generating monadic call traces"; + license = self.stdenv.lib.licenses.publicDomain; + platforms = self.ghc.meta.platforms; + maintainers = [ self.stdenv.lib.maintainers.tomberek ]; + }; +}) diff --git a/pkgs/development/libraries/haskell/mongoDB/default.nix b/pkgs/development/libraries/haskell/mongoDB/default.nix index 259a8e2fc2d5..c97676b64d8b 100644 --- a/pkgs/development/libraries/haskell/mongoDB/default.nix +++ b/pkgs/development/libraries/haskell/mongoDB/default.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "mongoDB"; - version = "1.5.0"; - sha256 = "0dvy8pa79c26hcngds6nnwnayrhsyz1flj18m9bcyrcvwb5q3dd6"; + version = "2.0"; + sha256 = "1dspx1x20903i44i825ziwmvaax75m8g08kz97cv34077bdir80h"; buildDepends = [ binary bson cryptohash hashtables liftedBase monadControl mtl network parsec random randomShuffle text transformersBase diff --git a/pkgs/development/libraries/haskell/pipes-aeson/default.nix b/pkgs/development/libraries/haskell/pipes-aeson/default.nix index aa226aa4e3b3..2f4bd30994a2 100644 --- a/pkgs/development/libraries/haskell/pipes-aeson/default.nix +++ b/pkgs/development/libraries/haskell/pipes-aeson/default.nix @@ -10,6 +10,7 @@ cabal.mkDerivation (self: { aeson attoparsec pipes pipesAttoparsec pipesBytestring pipesParse transformers ]; + jailbreak = true; meta = { homepage = "https://github.com/k0001/pipes-aeson"; description = "Encode and decode JSON streams using Aeson and Pipes"; diff --git a/pkgs/development/libraries/haskell/pipes-binary/default.nix b/pkgs/development/libraries/haskell/pipes-binary/default.nix index e48ad2a96a48..55a332a6c298 100644 --- a/pkgs/development/libraries/haskell/pipes-binary/default.nix +++ b/pkgs/development/libraries/haskell/pipes-binary/default.nix @@ -13,6 +13,7 @@ cabal.mkDerivation (self: { binary lensFamilyCore pipes pipesParse smallcheck tasty tastyHunit tastySmallcheck transformers ]; + jailbreak = true; doCheck = false; meta = { homepage = "https://github.com/k0001/pipes-binary"; diff --git a/pkgs/development/libraries/haskell/pipes-bytestring/default.nix b/pkgs/development/libraries/haskell/pipes-bytestring/default.nix index 348847e6e9ae..4fc5b1993a3a 100644 --- a/pkgs/development/libraries/haskell/pipes-bytestring/default.nix +++ b/pkgs/development/libraries/haskell/pipes-bytestring/default.nix @@ -1,5 +1,4 @@ -{ cabal, pipes, pipesGroup, pipesParse, transformers -}: +{ cabal, pipes, pipesGroup, pipesParse, transformers }: cabal.mkDerivation (self: { pname = "pipes-bytestring"; diff --git a/pkgs/development/libraries/haskell/pipes-text/default.nix b/pkgs/development/libraries/haskell/pipes-text/default.nix index 7156b8897893..4b5a7973c525 100644 --- a/pkgs/development/libraries/haskell/pipes-text/default.nix +++ b/pkgs/development/libraries/haskell/pipes-text/default.nix @@ -10,6 +10,7 @@ cabal.mkDerivation (self: { pipes pipesBytestring pipesGroup pipesParse pipesSafe profunctors streamingCommons text transformers ]; + jailbreak = true; meta = { homepage = "https://github.com/michaelt/text-pipes"; description = "Text pipes"; diff --git a/pkgs/development/libraries/haskell/quickcheck-property-monad/default.nix b/pkgs/development/libraries/haskell/quickcheck-property-monad/default.nix index 203f22146b17..0c9a22b5974f 100644 --- a/pkgs/development/libraries/haskell/quickcheck-property-monad/default.nix +++ b/pkgs/development/libraries/haskell/quickcheck-property-monad/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "quickcheck-property-monad"; - version = "0.2.1"; - sha256 = "1ln8bcsc8hd8jyhd9rp2j90p5h5nhmwidb5my91p09h43y4z9xds"; + version = "0.2.2"; + sha256 = "1liixl4xxpx9f3877sss16m67y5bkwhxdmr8h40rpqdi7dz9s0mj"; buildDepends = [ either QuickCheck transformers ]; testDepends = [ doctest filepath QuickCheck ]; meta = { diff --git a/pkgs/development/libraries/haskell/shellmate/default.nix b/pkgs/development/libraries/haskell/shellmate/default.nix new file mode 100644 index 000000000000..37383792de1f --- /dev/null +++ b/pkgs/development/libraries/haskell/shellmate/default.nix @@ -0,0 +1,14 @@ +{ cabal, filepath, temporary, time, transformers }: + +cabal.mkDerivation (self: { + pname = "shellmate"; + version = "0.1.6"; + sha256 = "17fpl0h58cw5hp6jzrajkl629mw2c6x15cmlcbdxqk9xlxqrg4hr"; + buildDepends = [ filepath temporary time transformers ]; + meta = { + homepage = "http://github.com/valderman/shellmate"; + description = "Simple interface for shell scripting in Haskell"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/simple-sendfile/default.nix b/pkgs/development/libraries/haskell/simple-sendfile/default.nix index 52c5fd7fe684..604f3f065a9f 100644 --- a/pkgs/development/libraries/haskell/simple-sendfile/default.nix +++ b/pkgs/development/libraries/haskell/simple-sendfile/default.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "simple-sendfile"; - version = "0.2.14"; - sha256 = "00k9cachx7y4811b71f8p468kx018hzvpvw6jgf7zmjhc9v922ni"; + version = "0.2.15"; + sha256 = "1fa20h2zcvxwdb5j5a0nnhl38bry1p5ckya1l7lrxx9r2bvjkyj9"; buildDepends = [ network resourcet ]; testDepends = [ conduit conduitExtra hspec HUnit network networkConduit resourcet diff --git a/pkgs/development/libraries/haskell/snap/server.nix b/pkgs/development/libraries/haskell/snap/server.nix index a59252fb38cc..b72020b7f861 100644 --- a/pkgs/development/libraries/haskell/snap/server.nix +++ b/pkgs/development/libraries/haskell/snap/server.nix @@ -1,5 +1,5 @@ { cabal, attoparsec, attoparsecEnumerator, blazeBuilder -, blazeBuilderEnumerator, caseInsensitive, enumerator +, blazeBuilderEnumerator, caseInsensitive, enumerator, HsOpenSSL , MonadCatchIOTransformers, mtl, network, snapCore, text, time , unixCompat }: @@ -10,9 +10,10 @@ cabal.mkDerivation (self: { sha256 = "09399vlqgic0iwmx31c01bjpbdblw8gayxnz71lwzkixqibkbbip"; buildDepends = [ attoparsec attoparsecEnumerator blazeBuilder blazeBuilderEnumerator - caseInsensitive enumerator MonadCatchIOTransformers mtl network - snapCore text time unixCompat + caseInsensitive enumerator HsOpenSSL MonadCatchIOTransformers mtl + network snapCore text time unixCompat ]; + configureFlags = "-fopenssl"; meta = { homepage = "http://snapframework.com/"; description = "A fast, iteratee-based, epoll-enabled web server for the Snap Framework"; diff --git a/pkgs/development/libraries/haskell/tables/default.nix b/pkgs/development/libraries/haskell/tables/default.nix new file mode 100644 index 000000000000..f97512c7f7f7 --- /dev/null +++ b/pkgs/development/libraries/haskell/tables/default.nix @@ -0,0 +1,23 @@ +{ cabal, binary, cereal, comonad, deepseq, doctest, filepath +, hashable, lens, profunctors, safecopy, transformers +, transformersCompat, unorderedContainers +}: + +cabal.mkDerivation (self: { + pname = "tables"; + version = "0.4.1"; + sha256 = "131c97lgni0b9pmkdfd5y0lwrb9yh9qyahknhrim8dzpkkfynk49"; + buildDepends = [ + binary cereal comonad deepseq hashable lens profunctors safecopy + transformers transformersCompat unorderedContainers + ]; + testDepends = [ + doctest filepath lens transformers unorderedContainers + ]; + meta = { + homepage = "http://github.com/ekmett/tables/"; + description = "In-memory storage with multiple keys using lenses and traversals"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/haskell/unix-compat/default.nix b/pkgs/development/libraries/haskell/unix-compat/default.nix index 9742b193e7ba..a43da3b71948 100644 --- a/pkgs/development/libraries/haskell/unix-compat/default.nix +++ b/pkgs/development/libraries/haskell/unix-compat/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "unix-compat"; - version = "0.4.1.1"; - sha256 = "1cjny6zca5wdj7d56kjkaxlad85kknn91pisrizjy6wngszyaigf"; + version = "0.4.1.3"; + sha256 = "1vfw3ffzdk9mshhgyp3dnbn8rihkz8qg6n5zqak8966dsdqhm4xb"; meta = { homepage = "http://github.com/jystic/unix-compat"; description = "Portable POSIX-compatibility layer"; diff --git a/pkgs/development/libraries/haskell/webdriver/default.nix b/pkgs/development/libraries/haskell/webdriver/default.nix new file mode 100644 index 000000000000..4af61ece80a5 --- /dev/null +++ b/pkgs/development/libraries/haskell/webdriver/default.nix @@ -0,0 +1,27 @@ +{ cabal, aeson, attoparsec, base64Bytestring, cond, dataDefault +, directoryTree, exceptions, filepath, HTTP, liftedBase +, monadControl, mtl, network, parallel, scientific, temporary, text +, time, transformers, transformersBase, unorderedContainers, vector +, zipArchive +}: + +cabal.mkDerivation (self: { + pname = "webdriver"; + version = "0.5.4"; + sha256 = "0839vw7drjn5iray4ma17f0pfgwx44q10ad8m564jvjgcml4yhvq"; + buildDepends = [ + aeson attoparsec base64Bytestring cond dataDefault directoryTree + exceptions filepath HTTP liftedBase monadControl mtl network + scientific temporary text time transformers transformersBase + unorderedContainers vector zipArchive + ]; + testDepends = [ parallel text ]; + jailbreak = true; + doCheck = false; + meta = { + homepage = "https://github.com/kallisti-dev/hs-webdriver"; + description = "a Haskell client for the Selenium WebDriver protocol"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/development/libraries/libatomic_ops/default.nix b/pkgs/development/libraries/libatomic_ops/default.nix new file mode 100644 index 000000000000..0e8dae7bb911 --- /dev/null +++ b/pkgs/development/libraries/libatomic_ops/default.nix @@ -0,0 +1,28 @@ +{stdenv, fetchurl}: +let + s = # Generated upstream information + rec { + baseName="libatomic_ops"; + version="7.4.2"; + name="${baseName}-${version}"; + hash="1pdm0h1y7bgkczr8byg20r6bq15m5072cqm5pny4f9crc9gn3yh4"; + url="http://www.ivmaisoft.com/_bin/atomic_ops/libatomic_ops-7.4.2.tar.gz"; + sha256="1pdm0h1y7bgkczr8byg20r6bq15m5072cqm5pny4f9crc9gn3yh4"; + }; + buildInputs = [ + ]; +in +stdenv.mkDerivation { + inherit (s) name version; + inherit buildInputs; + src = fetchurl { + inherit (s) url sha256; + }; + meta = { + inherit (s) version; + description = ''A library for semi-portable access to hardware-provided atomic memory update operations''; + license = stdenv.lib.licenses.gpl2Plus ; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/libatomic_ops/default.upstream b/pkgs/development/libraries/libatomic_ops/default.upstream new file mode 100644 index 000000000000..c9fd4554e4a1 --- /dev/null +++ b/pkgs/development/libraries/libatomic_ops/default.upstream @@ -0,0 +1 @@ +url https://github.com/ivmai/libatomic_ops/wiki/Download diff --git a/pkgs/development/libraries/libe-book/0.0.nix b/pkgs/development/libraries/libe-book/0.0.nix new file mode 100644 index 000000000000..2dc8de670397 --- /dev/null +++ b/pkgs/development/libraries/libe-book/0.0.nix @@ -0,0 +1,30 @@ +{stdenv, fetchurl, gperf, pkgconfig, librevenge, libxml2, boost, icu, cppunit +, libwpd}: +let + s = # Generated upstream information + rec { + baseName="libe-book"; + version="0.0.3"; + name="${baseName}-${version}"; + hash="06xhg319wbqrkj8914npasv5lr7k2904mmy7wa78063mkh31365i"; + url="mirror://sourceforge/project/libebook/libe-book-0.0.3/libe-book-0.0.3.tar.xz"; + sha256="06xhg319wbqrkj8914npasv5lr7k2904mmy7wa78063mkh31365i"; + }; + buildInputs = [ + gperf pkgconfig librevenge libxml2 boost icu cppunit libwpd + ]; +in +stdenv.mkDerivation { + inherit (s) name version; + inherit buildInputs; + src = fetchurl { + inherit (s) url sha256; + }; + meta = { + inherit (s) version; + description = ''Library for import of reflowable e-book formats''; + license = stdenv.lib.licenses.lgpl21Plus ; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/libe-book/0.0.upstream b/pkgs/development/libraries/libe-book/0.0.upstream new file mode 100644 index 000000000000..e2994f526914 --- /dev/null +++ b/pkgs/development/libraries/libe-book/0.0.upstream @@ -0,0 +1,4 @@ +url http://sourceforge.net/projects/libebook/files/ +SF_version_dir libe-book-0.0. +version_link '[.]tar.xz/download$' +SF_redirect diff --git a/pkgs/development/libraries/libe-book/default.nix b/pkgs/development/libraries/libe-book/default.nix new file mode 100644 index 000000000000..6dc384de204b --- /dev/null +++ b/pkgs/development/libraries/libe-book/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, gperf, pkgconfig, librevenge, libxml2, boost, icu, cppunit}: +let + s = # Generated upstream information + rec { + baseName="libe-book"; + version="0.1.1"; + name="${baseName}-${version}"; + hash="0awv96q92qgxk22w2vrf4vg90cab5qfsrkbhgz252722mrkd5p4a"; + url="mirror://sourceforge/project/libebook/libe-book-0.1.1/libe-book-0.1.1.tar.xz"; + sha256="0awv96q92qgxk22w2vrf4vg90cab5qfsrkbhgz252722mrkd5p4a"; + }; + buildInputs = [ + gperf pkgconfig librevenge libxml2 boost icu cppunit + ]; +in +stdenv.mkDerivation { + inherit (s) name version; + inherit buildInputs; + src = fetchurl { + inherit (s) url sha256; + }; + meta = { + inherit (s) version; + description = ''Library for import of reflowable e-book formats''; + license = stdenv.lib.licenses.lgpl21Plus ; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/libe-book/default.upstream b/pkgs/development/libraries/libe-book/default.upstream new file mode 100644 index 000000000000..30a6d3907877 --- /dev/null +++ b/pkgs/development/libraries/libe-book/default.upstream @@ -0,0 +1,4 @@ +url http://sourceforge.net/projects/libebook/files/ +SF_version_dir libe-book- +version_link '[.]tar.xz/download$' +SF_redirect diff --git a/pkgs/development/libraries/libmwaw/0.2.nix b/pkgs/development/libraries/libmwaw/0.2.nix new file mode 100644 index 000000000000..d66414b68142 --- /dev/null +++ b/pkgs/development/libraries/libmwaw/0.2.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, boost, pkgconfig, cppunit, zlib, libwpg, libwpd, librevenge}: +let + s = # Generated upstream information + rec { + baseName="libmwaw"; + version="0.2.1"; + name="${baseName}-${version}"; + hash="1fil1ll84pq0k3g6rcc2xfg1yrigkljp4ay5p2wpwd9qlmfvvvqn"; + url="mirror://sourceforge/project/libmwaw/libmwaw/libmwaw-0.2.1/libmwaw-0.2.1.tar.xz"; + sha256="1fil1ll84pq0k3g6rcc2xfg1yrigkljp4ay5p2wpwd9qlmfvvvqn"; + }; + buildInputs = [ + boost pkgconfig cppunit zlib libwpg libwpd librevenge + ]; +in +stdenv.mkDerivation { + inherit (s) name version; + inherit buildInputs; + src = fetchurl { + inherit (s) url sha256; + }; + meta = { + inherit (s) version; + description = ''Import library for some old mac text documents''; + license = stdenv.lib.licenses.mpl20 ; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/libmwaw/0.2.upstream b/pkgs/development/libraries/libmwaw/0.2.upstream new file mode 100644 index 000000000000..8ce00ecf7675 --- /dev/null +++ b/pkgs/development/libraries/libmwaw/0.2.upstream @@ -0,0 +1,4 @@ +url http://sourceforge.net/projects/libmwaw/files/libmwaw/ +SF_version_dir libmwaw-0.2. +version_link '[.]tar.xz/download$' +SF_redirect diff --git a/pkgs/development/libraries/libmwaw/default.nix b/pkgs/development/libraries/libmwaw/default.nix new file mode 100644 index 000000000000..0a7b76edab13 --- /dev/null +++ b/pkgs/development/libraries/libmwaw/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, boost, pkgconfig, cppunit, zlib, libwpg, libwpd, librevenge}: +let + s = # Generated upstream information + rec { + baseName="libmwaw"; + version="0.3.1"; + name="${baseName}-${version}"; + hash="0fa6nf4pxl853xnh2kdjw1nk3w6i39diixiampml7g9qygbd0vqb"; + url="mirror://sourceforge/project/libmwaw/libmwaw/libmwaw-0.3.1/libmwaw-0.3.1.tar.xz"; + sha256="0fa6nf4pxl853xnh2kdjw1nk3w6i39diixiampml7g9qygbd0vqb"; + }; + buildInputs = [ + boost pkgconfig cppunit zlib libwpg libwpd librevenge + ]; +in +stdenv.mkDerivation { + inherit (s) name version; + inherit buildInputs; + src = fetchurl { + inherit (s) url sha256; + }; + meta = { + inherit (s) version; + description = ''Import library for some old mac text documents''; + license = stdenv.lib.licenses.mpl20 ; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/libmwaw/default.upstream b/pkgs/development/libraries/libmwaw/default.upstream new file mode 100644 index 000000000000..0db6d23a52f1 --- /dev/null +++ b/pkgs/development/libraries/libmwaw/default.upstream @@ -0,0 +1,4 @@ +url http://sourceforge.net/projects/libmwaw/files/libmwaw/ +SF_version_dir libmwaw- +version_link '[.]tar.xz/download$' +SF_redirect diff --git a/pkgs/development/libraries/libodfgen/default.nix b/pkgs/development/libraries/libodfgen/default.nix new file mode 100644 index 000000000000..2e6c58c804e0 --- /dev/null +++ b/pkgs/development/libraries/libodfgen/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, boost, pkgconfig, cppunit, zlib, libwpg, libwpd, librevenge}: +let + s = # Generated upstream information + rec { + baseName="libodfgen"; + version="0.1.1"; + name="${baseName}-${version}"; + hash="1p335m2l19c7glsss30rrm5dxfcyajk9fvj7rsclgn0kmb4y48cm"; + url="mirror://sourceforge/project/libwpd/libodfgen/libodfgen-0.1.1/libodfgen-0.1.1.tar.xz"; + sha256="1p335m2l19c7glsss30rrm5dxfcyajk9fvj7rsclgn0kmb4y48cm"; + }; + buildInputs = [ + boost pkgconfig cppunit zlib libwpg libwpd librevenge + ]; +in +stdenv.mkDerivation { + inherit (s) name version; + inherit buildInputs; + src = fetchurl { + inherit (s) url sha256; + }; + meta = { + inherit (s) version; + description = ''A base library for generating ODF documents''; + license = stdenv.lib.licenses.mpl20 ; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/libodfgen/default.upstream b/pkgs/development/libraries/libodfgen/default.upstream new file mode 100644 index 000000000000..44f66561bd81 --- /dev/null +++ b/pkgs/development/libraries/libodfgen/default.upstream @@ -0,0 +1,4 @@ +url http://sourceforge.net/projects/libwpd/files/libodfgen/ +SF_version_dir libodfgen- +version_link '[.]tar.xz/download$' +SF_redirect diff --git a/pkgs/development/libraries/libre/default.nix b/pkgs/development/libraries/libre/default.nix index cc9139d664ea..c67df46e89c0 100644 --- a/pkgs/development/libraries/libre/default.nix +++ b/pkgs/development/libraries/libre/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, zlib, openssl}: stdenv.mkDerivation rec { - version = "0.4.2"; + version = "0.4.9"; name = "libre-${version}"; src=fetchurl { url = "http://www.creytiv.com/pub/re-${version}.tar.gz"; - sha256 = "1c99ygs46qhd4a0ardxhdyjaw5p8clhzmsm8jydqxnmbakwy518m"; + sha256 = "1i98z9qw3jpkaq419189vr8h3qcxqlz40dls77rbn4c0agc69703"; }; buildInputs = [zlib openssl]; makeFlags = [ @@ -19,5 +19,9 @@ stdenv.mkDerivation rec { platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [raskin]; license = with stdenv.lib.licenses; bsd3; + inherit version; + downloadPage = "http://www.creytiv.com/pub/"; + updateWalker = true; + downloadURLRegexp = "/re-.*[.]tar[.].*"; }; } diff --git a/pkgs/development/libraries/librem/default.nix b/pkgs/development/libraries/librem/default.nix index 04f3cc97bf33..fe49609ce68d 100644 --- a/pkgs/development/libraries/librem/default.nix +++ b/pkgs/development/libraries/librem/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, zlib, openssl, libre}: stdenv.mkDerivation rec { - version = "0.4.2"; + version = "0.4.6"; name = "librem-${version}"; src=fetchurl { url = "http://www.creytiv.com/pub/rem-${version}.tar.gz"; - sha256 = "55c66118e3026c5ed42d8b9e0c668149baefe83f1aa76394cddba2d72f45d5c7"; + sha256 = "0rgqy9pqn730ijxvz1gk0virsf6jwjmq02s99jqqrfm3p0g6zs3w"; }; buildInputs = [zlib openssl libre]; makeFlags = [ @@ -20,5 +20,9 @@ stdenv.mkDerivation rec { platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [raskin]; license = with stdenv.lib.licenses; bsd3; + inherit version; + downloadPage = "http://www.creytiv.com/pub/"; + updateWalker = true; + downloadURLRegexp = "/rem-.*[.]tar[.].*"; }; } diff --git a/pkgs/development/libraries/librevenge/default.nix b/pkgs/development/libraries/librevenge/default.nix new file mode 100644 index 000000000000..8ddf026a1bc8 --- /dev/null +++ b/pkgs/development/libraries/librevenge/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, boost, pkgconfig, cppunit, zlib}: +let + s = # Generated upstream information + rec { + baseName="librevenge"; + version="0.0.1"; + name="${baseName}-${version}"; + hash="0zgfxvbqf11pypyc0vmcan73x197f7ia1ywin9qqy9hvvmrjgchc"; + url="mirror://sourceforge/project/libwpd/librevenge/librevenge-0.0.1/librevenge-0.0.1.tar.xz"; + sha256="0zgfxvbqf11pypyc0vmcan73x197f7ia1ywin9qqy9hvvmrjgchc"; + }; + buildInputs = [ + boost pkgconfig cppunit zlib + ]; +in +stdenv.mkDerivation { + inherit (s) name version; + inherit buildInputs; + src = fetchurl { + inherit (s) url sha256; + }; + meta = { + inherit (s) version; + description = ''A base library for writing document import filters''; + license = stdenv.lib.licenses.mpl20 ; + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/librevenge/default.upstream b/pkgs/development/libraries/librevenge/default.upstream new file mode 100644 index 000000000000..48b678a392a4 --- /dev/null +++ b/pkgs/development/libraries/librevenge/default.upstream @@ -0,0 +1,4 @@ +url http://sourceforge.net/projects/libwpd/files/librevenge/ +SF_version_dir librevenge- +version_link '[.]tar.xz/download$' +SF_redirect diff --git a/pkgs/development/libraries/mdds/default.nix b/pkgs/development/libraries/mdds/default.nix index 8ff2cac539cc..296744e1d56c 100644 --- a/pkgs/development/libraries/mdds/default.nix +++ b/pkgs/development/libraries/mdds/default.nix @@ -1,15 +1,21 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - version = "0.8.1"; + version = "0.10.3"; name = "mdds-${version}"; src = fetchurl { - url = "http://multidimalgorithm.googlecode.com/files/mdds_${version}.tar.bz2"; - sha256 = "12w8rs8kb8yffndsw0g7qfjvy4gpnppkdzc7r7vvc9n800ixl1gn"; + url = "http://kohei.us/files/mdds/src/mdds_${version}.tar.bz2"; + sha256 = "1hp0472mcsgzrz1v60jpywxrrqmpb8bchfsi7ydmp6vypqnr646v"; }; + postInstall = '' + mkdir -p "$out/lib/pkgconfig" + cp "$out/share/pkgconfig/"* "$out/lib/pkgconfig" + ''; + meta = { + inherit version; homepage = https://code.google.com/p/multidimalgorithm/; description = "A collection of multi-dimensional data structure and indexing algorithm"; platforms = stdenv.lib.platforms.all; diff --git a/pkgs/development/libraries/mdds/default.upstream b/pkgs/development/libraries/mdds/default.upstream new file mode 100644 index 000000000000..5c07878fdf20 --- /dev/null +++ b/pkgs/development/libraries/mdds/default.upstream @@ -0,0 +1,10 @@ +url https://code.google.com/p/multidimalgorithm/wiki/Downloads +version_link '[.]tar[.][a-z0-9]+$' +version '.*_([0-9.]+)[.]tar[.].*' '\1' + +do_overwrite(){ + ensure_hash + ensure_version + set_var_value version $CURRENT_VERSION + set_var_value sha256 $CURRENT_HASH +} diff --git a/pkgs/development/libraries/nix-plugins/default.nix b/pkgs/development/libraries/nix-plugins/default.nix new file mode 100644 index 000000000000..3b4f7da94f3d --- /dev/null +++ b/pkgs/development/libraries/nix-plugins/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchgit, nix }: + +stdenv.mkDerivation { + name = "nix-plugins-1.0.0"; + + src = fetchgit { + url = git://github.com/shlevy/nix-plugins.git; + rev = "refs/tags/1.0.0"; + sha256 = "e624de55cabc9014e77f21978d657089ae94ce161584b3d9dc3c9763658421b3"; + }; + + buildInputs = [ nix ]; + + buildFlags = [ "NIX_INCLUDE=${nix}/include" ]; + + installFlags = [ "PREFIX=$(out)" ]; + + meta = { + description = "Collection of miscellaneous plugins for the nix expression language"; + homepage = https://github.com/shlevy/nix-plugins; + license = stdenv.lib.licenses.mit; + maintaners = [ stdenv.lib.maintainers.shlevy ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/libraries/nvidia-texture-tools/default.nix b/pkgs/development/libraries/nvidia-texture-tools/default.nix new file mode 100644 index 000000000000..852d72cb9aad --- /dev/null +++ b/pkgs/development/libraries/nvidia-texture-tools/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchsvn, cmake, libpng, ilmbase, libtiff, zlib, libjpeg +, mesa, libX11 +}: + +stdenv.mkDerivation rec { + # No support yet for cg, cuda, glew, glut, openexr. + + name = "nvidia-texture-tools"; + + src = fetchsvn { + url = "http://nvidia-texture-tools.googlecode.com/svn/trunk"; + rev = "1388"; + sha256 = "0pwxqx5l16nqidzm6mwd3rd4gbbknkz6q8cxnvf7sggjpbcvm2d6"; + }; + + buildInputs = [ cmake libpng ilmbase libtiff zlib libjpeg mesa libX11 ]; + + patchPhase = '' + # Fix build due to missing dependnecies. + echo 'target_link_libraries(bc7 nvmath)' >> src/nvtt/bc7/CMakeLists.txt + echo 'target_link_libraries(bc6h nvmath)' >> src/nvtt/bc6h/CMakeLists.txt + + # Make a recently added pure virtual function just virtual, + # to keep compatibility. + sed -i 's/virtual void endImage() = 0;/virtual void endImage() {}/' src/nvtt/nvtt.h + + # Fix building shared libraries. + sed -i 's/SET(NVIMAGE_SHARED TRUE)/SET(NVIMAGE_SHARED TRUE)\nSET(NVTHREAD_SHARED TRUE)/' CMakeLists.txt + ''; + + cmakeFlags = [ + "-DNVTT_SHARED=TRUE" + ]; + + meta = { + description = "A set of cuda-enabled texture tools and compressors"; + homepage = "http://developer.nvidia.com/object/texture_tools.html"; + license = "MIT"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/lisp-modules/lisp-packages.nix b/pkgs/development/lisp-modules/lisp-packages.nix index f7d6dd2676d6..14c996fa05a8 100644 --- a/pkgs/development/lisp-modules/lisp-packages.nix +++ b/pkgs/development/lisp-modules/lisp-packages.nix @@ -37,7 +37,7 @@ let lispPackages = rec { src = pkgs.fetchdarcs { url = "http://common-lisp.net/project/iterate/darcs/iterate"; sha256 = "0m3q0s7h5s8varwx584m2akgdslj14df7kg4w1bj1fbgzsag5m1w"; - tag=version; + rev = version; }; overrides = x: { configurePhase="buildPhase(){ true; }"; diff --git a/pkgs/development/tools/etcdctl/default.nix b/pkgs/development/tools/etcdctl/default.nix new file mode 100644 index 000000000000..a37ef26f5412 --- /dev/null +++ b/pkgs/development/tools/etcdctl/default.nix @@ -0,0 +1,30 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "0.4.3"; + name = "etcdctl-${version}"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + go build -v -o etcdctl github.com/coreos/etcdctl + ''; + + installPhase = '' + ensureDir $out/bin + mv etcdctl $out/bin + ''; + + meta = with stdenv.lib; { + description = "A simple command line client for etcd"; + homepage = http://coreos.com/using-coreos/etcd/; + license = licenses.asl20; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/tools/etcdctl/deps.nix b/pkgs/development/tools/etcdctl/deps.nix new file mode 100644 index 000000000000..98bdda95a433 --- /dev/null +++ b/pkgs/development/tools/etcdctl/deps.nix @@ -0,0 +1,27 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "github.com/coreos/etcdctl"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "etcdctl"; + rev = "061135b2a02797a6b3c2b6c01183517c1bc76a2c"; + sha256 = "1hl9cz9ygr2k4d67qj9q1xj0n64b28qjy5sv7zylgg9h9ag2j2p4"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/development/tools/gocode/default.nix b/pkgs/development/tools/gocode/default.nix new file mode 100644 index 000000000000..6057c288cf69 --- /dev/null +++ b/pkgs/development/tools/gocode/default.nix @@ -0,0 +1,29 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + name = "gocode"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + go build -v -o gocode github.com/nsf/gocode + ''; + + installPhase = '' + ensureDir $out/bin + mv gocode $out/bin + ''; + + meta = with lib; { + description = "An autocompletion daemon for the Go programming language"; + homepage = https://github.com/nsf/gocode; + license = licenses.mit; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/tools/gocode/deps.nix b/pkgs/development/tools/gocode/deps.nix new file mode 100644 index 000000000000..4fd0578496d4 --- /dev/null +++ b/pkgs/development/tools/gocode/deps.nix @@ -0,0 +1,27 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "github.com/nsf/gocode"; + src = fetchFromGitHub { + owner = "nsf"; + repo = "gocode"; + rev = "9b760fdb16f18eafbe0cd274527efd2bd89dfa78"; + sha256 = "0d1wl0x8jkaav6lcfzs70cr6gy0p88cbk5n3p19l6d0h9xz464ax"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/development/tools/misc/arcanist/default.nix b/pkgs/development/tools/misc/arcanist/default.nix index 7e3a3a6d15c9..4236cffadfc9 100644 --- a/pkgs/development/tools/misc/arcanist/default.nix +++ b/pkgs/development/tools/misc/arcanist/default.nix @@ -3,18 +3,18 @@ let libphutil = fetchgit { url = "git://github.com/facebook/libphutil.git"; - rev = "0027e97cd6cbafcbdc626b4ac6cf315b9508a14f"; - sha256 = "4781a4e3e1cb72da24e97f89a9b879803be8e1cf6baa2a4517801dfb893eec26"; + rev = "8d1b522333caf4984180ac830be8635437bacedb"; + sha256 = "e83da381cd8845b64a1cd3244d17736fb736aeabce37efd19754447f47cd4fe1"; }; arcanist = fetchgit { url = "git://github.com/facebook/arcanist.git"; - rev = "680ec3670cd9d9195debf3e9b674b1b232156e61"; - sha256 = "a70cde586960676c0d69f4d98e6936633e0d79c37c6f6cc5b0213146a6b18c83"; + rev = "0971c728fea89ac45a67e06cdb89349ad8040c60"; + sha256 = "33e595b81dcbef181d3c71072ecf1c22db3f86f49dbb5276c671caefe83c8594"; }; in stdenv.mkDerivation rec { name = "arcanist-${version}"; - version = "20140617"; + version = "20140627"; src = [ arcanist libphutil ]; buildInputs = [ php makeWrapper flex ]; diff --git a/pkgs/development/tools/misc/openocd/default.nix b/pkgs/development/tools/misc/openocd/default.nix index 36a57e8fe96e..ea9278c2b3d0 100644 --- a/pkgs/development/tools/misc/openocd/default.nix +++ b/pkgs/development/tools/misc/openocd/default.nix @@ -1,43 +1,52 @@ -{ stdenv, fetchurl, libftdi, libusb1 }: +{ stdenv, fetchurl, libftdi, libusb1, pkgconfig }: + +# TODO: Add "hidapi" as dependency to gain access to CMSIS-DAP debuggers. +# Support should be auto-detected, but if not, pass "--enable-cmsis-dap" to +# configure. stdenv.mkDerivation rec { name = "openocd-${version}"; - version = "0.7.0"; + version = "0.8.0"; src = fetchurl { url = "mirror://sourceforge/openocd/openocd-${version}.tar.bz2"; - sha256 = "0qwfyd821sy5p0agz0ybgn5nd7vplipw4mhm485ldj1hcmw7n8sj"; + sha256 = "0byk7hnccgmhw0f84qlkfhps38gp2xp628bfrsc03vq08hr6q1sv"; }; - configureFlags = [ "--enable-ft2232_libftdi" - "--enable-jlink" - "--enable-rlink" - "--enable-ulink" - "--enable-stlink" ]; - - buildInputs = [ libftdi libusb1 ]; + buildInputs = [ libftdi libusb1 pkgconfig ]; + + configureFlags = [ + "--enable-jtag_vpi" + "--enable-usb_blaster_libftdi" + "--enable-amtjtagaccel" + "--enable-gw16012" + "--enable-presto_libftdi" + "--enable-openjtag_ftdi" + "--enable-oocd_trace" + "--enable-buspirate" + "--enable-sysfsgpio" + "--enable-remote-bitbang" + ]; postInstall = '' mkdir -p "$out/etc/udev/rules.d" - ln -s "$out/share/openocd/contrib/openocd.udev" "$out/etc/udev/rules.d/99-openocd.rules" + ln -s "$out/share/openocd/contrib/99-openocd.udev" "$out/etc/udev/rules.d/99-openocd.rules" ''; - meta = { + meta = with stdenv.lib; { + description = "Free and Open On-Chip Debugging, In-System Programming and Boundary-Scan Testing"; + longDescription = '' + OpenOCD provides on-chip programming and debugging support with a layered + architecture of JTAG interface and TAP support, debug target support + (e.g. ARM, MIPS), and flash chip drivers (e.g. CFI, NAND, etc.). Several + network interfaces are available for interactiving with OpenOCD: HTTP, + telnet, TCL, and GDB. The GDB server enables OpenOCD to function as a + "remote target" for source-level debugging of embedded systems using the + GNU GDB program. + ''; homepage = http://openocd.sourceforge.net/; - description = "OpenOCD, an on-chip debugger"; - - longDescription = - '' OpenOCD provides on-chip programming and debugging support with a - layered architecture of JTAG interface and TAP support, debug target - support (e.g. ARM, MIPS), and flash chip drivers (e.g. CFI, NAND, - etc.). Several network interfaces are available for interactiving - with OpenOCD: HTTP, telnet, TCL, and GDB. The GDB server enables - OpenOCD to function as a "remote target" for source-level debugging - of embedded systems using the GNU GDB program. - ''; - - license = "GPLv2+"; - maintainers = with stdenv.lib.maintainers; [ viric bjornfor ]; - platforms = with stdenv.lib.platforms; linux; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ viric bjornfor ]; + platforms = platforms.linux; }; } diff --git a/pkgs/development/tools/ocaml/cppo/default.nix b/pkgs/development/tools/ocaml/cppo/default.nix new file mode 100644 index 000000000000..04475959f3d9 --- /dev/null +++ b/pkgs/development/tools/ocaml/cppo/default.nix @@ -0,0 +1,37 @@ +{stdenv, fetchurl, ocaml, findlib}: +let + pname = "cppo"; + version = "0.9.4"; + webpage = "http://mjambon.com/${pname}.html"; +in +stdenv.mkDerivation rec { + + name = "${pname}-${version}"; + + src = fetchurl { + url = "http://mjambon.com/releases/${pname}/${name}.tar.gz"; + sha256 = "1m7cbja7cf74l45plqnmjrjjz55v8x65rvx0ikk9mg1ak8lcmvxa"; + }; + + buildInputs = [ ocaml findlib ]; + + createFindlibDestdir = true; + + makeFlags = "PREFIX=$(out)"; + + preBuild = '' + mkdir $out/bin + ''; + + meta = { + description = "The C preprocessor for OCaml"; + longDescription = '' + Cppo is an equivalent of the C preprocessor targeted at the OCaml language and its variants. + ''; + homepage = "${webpage}"; + license = "bsd"; + }; +} + + + diff --git a/pkgs/development/tools/packer/default.nix b/pkgs/development/tools/packer/default.nix new file mode 100644 index 000000000000..5cea753dd9c3 --- /dev/null +++ b/pkgs/development/tools/packer/default.nix @@ -0,0 +1,35 @@ +{ stdenv, lib, gox, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + name = "packer-0.6.0"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ gox ]; + + installPhase = '' + export GOPATH=$src + XC_ARCH=$(go env GOARCH) + XC_OS=$(go env GOOS) + + ensureDir $out/bin + + cd $src/src/github.com/mitchellh/packer + gox \ + -os="''${XC_OS}" \ + -arch="''${XC_ARCH}" \ + -output "$out/bin/packer-{{.Dir}}" \ + ./... + mv $out/bin/packer{*packer*,} + ''; + + meta = with stdenv.lib; { + description = "A tool for creating identical machine images for multiple platforms from a single source configuration"; + homepage = "http://www.packer.io"; + license = licenses.mpl20; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/tools/packer/deps.nix b/pkgs/development/tools/packer/deps.nix new file mode 100644 index 000000000000..ce56ecad8a28 --- /dev/null +++ b/pkgs/development/tools/packer/deps.nix @@ -0,0 +1,307 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "github.com/mitchellh/packer"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "packer"; + rev = "12e28f257f66299e3bb13a053bf06ccd236e7efd"; + sha256 = "1r5j864kr7lx137c23kk5s82znk11hsrgq98zfz5r8sbzq1xpbzw"; + }; + } + { + root = "code.google.com/p/go.crypto"; + src = fetchhg { + url = "http://code.google.com/p/go.crypto"; + rev = "199"; + sha256 = "0ibrpc6kknzl6a2g2fkxn03mvrd635lcnvf4a9rk1dfrpjbpcixh"; + }; + } + { + root = "code.google.com/p/goauth2"; + src = fetchhg { + url = "http://code.google.com/p/goauth2"; + rev = "67"; + sha256 = "053vajj8hd9869by7z9qfgzn84h6avpcjvyxcyw5jml8dsln4bah"; + }; + } + { + root = "code.google.com/p/google-api-go-client"; + src = fetchhg { + url = "http://code.google.com/p/google-api-go-client"; + rev = "111"; + sha256 = "1ib8i1c2mb86lkrr5w7bgwb70gkqmp860wa3h1j8080gxdx3yy16"; + }; + } + { + root = "code.google.com/p/gosshold"; + src = fetchhg { + url = "http://code.google.com/p/gosshold"; + rev = "2"; + sha256 = "1ljl8pcxxfz5rv89b2ajd31gxxzifl57kzpksvdhyjdxh98gkvg8"; + }; + } + { + root = "github.com/ActiveState/tail"; + src = fetchFromGitHub { + owner = "ActiveState"; + repo = "tail"; + rev = "8dcd1ad3e57aa8ce5614a837cbbdb21945fbb55a"; + sha256 = "1jxj576dd7mawawwg5nzwf6k7sks0r3lp2x8f6kxaps50n3k1wiz"; + }; + } + { + root = "github.com/howeyc/fsnotify"; + src = fetchFromGitHub { + owner = "howeyc"; + repo = "fsnotify"; + rev = "441bbc86b167f3c1f4786afae9931403b99fdacf"; + sha256 = "1v5vrwhmidxjj6sppinyizf85v60zrmn7i6c9xk0pvx6k0kw2mr2"; + }; + } + { + root = "launchpad.net/tomb"; + src = fetchbzr { + url = "https://launchpad.net/tomb"; + rev = "17"; + sha256 = "1cjw0sr9hald1darq6n8akfpkzcgrk3mcq59hga3ibf2lrg35ha0"; + }; + } + { + root = "github.com/going/toolkit"; + src = fetchFromGitHub { + owner = "going"; + repo = "toolkit"; + rev = "6185c1893604d52d36a97dd6bb1247ace93a9b80"; + sha256 = "1kzy5yppalcidsmv5yxmr6lpqplqj07kdqpn77fdp6fbb0y0sg11"; + }; + } + { + root = "code.google.com/p/goprotobuf"; + src = fetchhg { + url = "http://code.google.com/p/goprotobuf"; + rev = "246"; + sha256 = "0k4wcv1dnkwcp0gdrajj6kr25f1lg4lgpbi0h5v9l9n7sdwzplf4"; + }; + } + { + root = "github.com/bmizerany/assert"; + src = fetchFromGitHub { + owner = "bmizerany"; + repo = "assert"; + rev = "e17e99893cb6509f428e1728281c2ad60a6b31e3"; + sha256 = "1lfrvqqmb09y6pcr76yjv4r84cshkd4s7fpmiy7268kfi2cvqnpc"; + }; + } + { + root = "github.com/kr/pretty"; + src = fetchFromGitHub { + owner = "kr"; + repo = "pretty"; + rev = "bc9499caa0f45ee5edb2f0209fbd61fbf3d9018f"; + sha256 = "1m61y592qsnwsqn76v54mm6h2pcvh4wlzbzscc1ag645x0j33vvl"; + }; + } + { + root = "github.com/kr/text"; + src = fetchFromGitHub { + owner = "kr"; + repo = "text"; + rev = "6807e777504f54ad073ecef66747de158294b639"; + sha256 = "1wkszsg08zar3wgspl9sc8bdsngiwdqmg3ws4y0bh02sjx5a4698"; + }; + } + { + root = "github.com/kr/pty"; + src = fetchFromGitHub { + owner = "kr"; + repo = "pty"; + rev = "67e2db24c831afa6c64fc17b4a143390674365ef"; + sha256 = "1l3z3wbb112ar9br44m8g838z0pq2gfxcp5s3ka0xvm1hjvanw2d"; + }; + } + { + root = "github.com/xiocode/toolkit"; + src = fetchFromGitHub { + owner = "xiocode"; + repo = "toolkit"; + rev = "352fd7c6700074a81056cdfc9e82b3e8c5681ac5"; + sha256 = "0p33zh57xpxyk2wyp9xahdxyrkq48ysihpr0n9kj713q0dh7x4a3"; + }; + } + { + root = "launchpad.net/gocheck"; + src = fetchbzr { + url = "https://launchpad.net/gocheck"; + rev = "87"; + sha256 = "1y9fa2mv61if51gpik9isls48idsdz87zkm1p3my7swjdix7fcl0"; + }; + } + { + root = "github.com/hashicorp/go-version"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "go-version"; + rev = "bb92dddfa9792e738a631f04ada52858a139bcf7"; + sha256 = "0fl5a6j6nk1xsxwjdpa24a24fxvgnvm3jjlgpyrnmbdn380zil3m"; + }; + } + { + root = "github.com/mitchellh/go-fs"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "go-fs"; + rev = "faaa223588dd7005e49bf66fa2d19e35c8c4d761"; + sha256 = "19jsvy35g14f18ckymzxasy0zfd6n99zlqg6grpj1yqdfxfvqn9b"; + }; + } + { + root = "github.com/mitchellh/go-vnc"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "go-vnc"; + rev = "fc93dd80f5da4ccde0a9d97f0c73e56e04e0cf72"; + sha256 = "03rwsp1frvfx6c7yxr711lq7jdgsr1gcwg14jw26xvbzzxwjvnsf"; + }; + } + { + root = "github.com/mitchellh/goamz"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "goamz"; + rev = "c3ff5f734c89f1ea1f290c6aadbbceeeb19a623c"; + sha256 = "1nyi1p5yh21r161icnwkcgmj2y38b4m1jis47vvjbqinrp45w1gq"; + }; + } + { + root = "github.com/motain/gocheck"; + src = fetchFromGitHub { + owner = "motain"; + repo = "gocheck"; + rev = "9beb271d26e640863a5bf4a3c5ea40ccdd466b84"; + sha256 = "07arpwfdb51b5f7kzqnm5s5ndfmxv5j793hpn30nbdcya46diwjd"; + }; + } + { + root = "github.com/mitchellh/iochan"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "iochan"; + rev = "b584a329b193e206025682ae6c10cdbe03b0cd77"; + sha256 = "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b"; + }; + } + { + root = "github.com/mitchellh/mapstructure"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "mapstructure"; + rev = "743fcf103ac7cdbc159e540d9d0e3a7889b87d68"; + sha256 = "1qqxsnxabd7c04n0ip1wmpr2g913qchqrbmblq0shrf5p1hnszgn"; + }; + } + { + root = "github.com/mitchellh/multistep"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "multistep"; + rev = "162146fc57112954184d90266f4733e900ed05a5"; + sha256 = "0ydhbxziy9204qr43pjdh88y2jg34g2mhzdapjyfpf8a1rin6dn3"; + }; + } + { + root = "github.com/mitchellh/osext"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "osext"; + rev = "0dd3f918b21bec95ace9dc86c7e70266cfc5c702"; + sha256 = "02pczqml6p1mnfdrygm3rs02g0r65qx8v1bi3x24dx8wv9dr5y23"; + }; + } + { + root = "github.com/mitchellh/panicwrap"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "panicwrap"; + rev = "1aedff2aaa8b8ff7f65ab58e94ef9f593e2e3bf4"; + sha256 = "05brbpc7kizzbs1a128fmjddh7rdyg0jzzxgbvrl58cgklh4yzaa"; + }; + } + { + root = "github.com/rackspace/gophercloud"; + src = fetchFromGitHub { + owner = "rackspace"; + repo = "gophercloud"; + rev = "2285a429874c1365ef6c6d3ceb08b1d428e26aca"; + sha256 = "0py3h64r4wkl2r9j7xlh81nazpg2b0r5ba9iblh6d1380yk4fa7f"; + }; + } + { + root = "github.com/racker/perigee"; + src = fetchFromGitHub { + owner = "racker"; + repo = "perigee"; + rev = "01db3191866051f2ec854c2d876ac1a179d3049c"; + sha256 = "05pmlgwjynbr59bw50zhrklzhr5pgnij9ym5hqvijjrpw3qd9ivf"; + }; + } + { + root = "github.com/ugorji/go"; + src = fetchFromGitHub { + owner = "ugorji"; + repo = "go"; + rev = "71c2886f5a673a35f909803f38ece5810165097b"; + sha256 = "157f24xnkhclrjwwa1b7lmpj112ynlbf7g1cfw0c657iqny5720j"; + }; + } + { + root = "github.com/vmihailenco/msgpack"; + src = fetchFromGitHub { + owner = "vmihailenco"; + repo = "msgpack"; + rev = "20c1b88a6c7fc5432037439f4e8c582e236fb205"; + sha256 = "1dj5scpfhgnw0yrh0w6jlrb9d03halvsv4l3wgjhazrrimdqf0q0"; + }; + } + { + root = "github.com/ugorji/go-msgpack"; + src = fetchFromGitHub { + owner = "ugorji"; + repo = "go-msgpack"; + rev = "75092644046c5e38257395b86ed26c702dc95b92"; + sha256 = "1bmqi16bfiqw7qhb3d5hbh0dfzhx2bbq1g15nh2pxwxckwh80x98"; + }; + } + { + root = "launchpad.net/mgo"; + src = fetchbzr { + url = "https://launchpad.net/mgo"; + rev = "2"; + sha256 = "0h1dxzyx5c4r4gfnmjxv92hlhjxrgx9p4g53p4fhmz6x2fdglb0x"; + }; + } + { + root = "github.com/vmihailenco/bufio"; + src = fetchFromGitHub { + owner = "vmihailenco"; + repo = "bufio"; + rev = "24e7e48f60fc2d9e99e43c07485d9fff42051e66"; + sha256 = "0x46qnf2f15v7m0j2dcb16raxjamk5rdc7hqwgyxfr1sqmmw3983"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/development/tools/selenium/chromedriver/default.nix b/pkgs/development/tools/selenium/chromedriver/default.nix index 90f7647aa05f..30430671342d 100644 --- a/pkgs/development/tools/selenium/chromedriver/default.nix +++ b/pkgs/development/tools/selenium/chromedriver/default.nix @@ -10,8 +10,8 @@ stdenv.mkDerivation rec { name = "chromedriver_linux64"; src = fetchurl { - url = "http://chromedriver.storage.googleapis.com/2.9/${name}.zip"; - sha256 = "1m5xl5pz445igvhj31hby97xbizlw05b8fc6w53zq7faw7mzm665"; + url = "http://chromedriver.storage.googleapis.com/2.10/${name}.zip"; + sha256 = "1949lhrv4hrmgapvypsgwzyr75w7vpy7nkkkwjkjxn61dkwmx4jw"; }; buildInputs = [ unzip makeWrapper ]; diff --git a/pkgs/development/web/nodejs/default.nix b/pkgs/development/web/nodejs/default.nix index 4b79a500b1f0..c53cee4a20e3 100644 --- a/pkgs/development/web/nodejs/default.nix +++ b/pkgs/development/web/nodejs/default.nix @@ -6,7 +6,7 @@ let ln -sv /usr/sbin/dtrace $out/bin ''; - version = "0.10.28"; + version = "0.10.29"; # !!! Should we also do shared libuv? deps = { @@ -30,7 +30,7 @@ in stdenv.mkDerivation { src = fetchurl { url = "http://nodejs.org/dist/v${version}/node-v${version}.tar.gz"; - sha256 = "043pc6sb3y2b0aiakmmjvzvafgki7wly0id0v1p8y80g3r2cdpdb"; + sha256 = "0pdib215ldypc149ad03wlfj0i8fwdfydd4q2hd7ry35yw0rsds7"; }; configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps); diff --git a/pkgs/games/0ad/data.nix b/pkgs/games/0ad/data.nix new file mode 100644 index 000000000000..6f3c85183da5 --- /dev/null +++ b/pkgs/games/0ad/data.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchurl, version, releaseType }: + +stdenv.mkDerivation rec { + name = "0ad-data-${version}"; + + src = fetchurl { + url = "http://releases.wildfiregames.com/0ad-${version}-${releaseType}-unix-data.tar.xz"; + sha256 = "0f16d41e81d7349fb16490f3abbfd38bcb3f2b89648355b2b281c5045ddafadc"; + }; + + patchPhase = '' + rm binaries/data/tools/fontbuilder/fonts/*.txt + ''; + + installPhase = '' + mkdir -p $out/share/0ad + cp -r binaries/data/* $out/share/0ad/ + ''; +} diff --git a/pkgs/games/0ad/default.nix b/pkgs/games/0ad/default.nix new file mode 100644 index 000000000000..efbd59dbbe3f --- /dev/null +++ b/pkgs/games/0ad/default.nix @@ -0,0 +1,120 @@ +{ stdenv, stdenvType, callPackage, fetchurl, python27 +, pkgconfig, spidermonkey_24, boost, icu, libxml2, libpng +, libjpeg, zlib, curl, libogg, libvorbis, enet, miniupnpc +, openalSoft, mesa, xproto, libX11, libXcursor, nspr, SDL +, gloox, nvidia-texture-tools +, withEditor ? true, wxGTK ? null +}: + +assert withEditor -> wxGTK != null; + +let + version = "0.0.16"; + + releaseType = "alpha"; + + zeroadData = callPackage ./data.nix { inherit version releaseType; }; + + archForPremake = + if stdenv.lib.hasPrefix "x86_64-" stdenvType then "x64" else + if stdenv.lib.hasPrefix "i686-" stdenvType then "x32" else "ERROR"; + +in +stdenv.mkDerivation rec { + name = "0ad-${version}"; + + src = fetchurl { + url = "http://releases.wildfiregames.com/0ad-${version}-${releaseType}-unix-build.tar.xz"; + sha256 = "cb965ef7e292bc3a2f1f598a9695e16ff4d786398f384a1ec7d5f9bfe2626de5"; + }; + + buildInputs = [ + zeroadData python27 pkgconfig spidermonkey_24 boost icu + libxml2 libpng libjpeg zlib curl libogg libvorbis enet + miniupnpc openalSoft mesa xproto libX11 libXcursor nspr + SDL gloox nvidia-texture-tools + ] ++ stdenv.lib.optional withEditor wxGTK; + + NIX_CFLAGS_COMPILE = [ + "-I${xproto}/include/X11" + "-I${libX11}/include/X11" + "-I${libXcursor}/include/X11" + ]; + + configurePhase = '' + # Delete shipped libraries which we don't need. + rm -rf libraries/source/{enet,miniupnpc,nvtt,spidermonkey} + + # Build shipped premake. + make -C build/premake/premake4/build/gmake.unix + + # Run premake. + pushd build/premake + ./premake4/bin/release/premake4 \ + --file="premake4.lua" \ + --outpath="../workspaces/gcc/" \ + --platform=${archForPremake} \ + --os=linux \ + --with-system-nvtt \ + --with-system-enet \ + --with-system-miniupnpc \ + --with-system-mozjs24 \ + ${ if withEditor then "--atlas" else "" } \ + --collada \ + --bindir="$out"/bin \ + --libdir="$out"/lib/0ad \ + --datadir="$out"/share/0ad \ + gmake + popd + ''; + + buildPhase = '' + # Build bundled fcollada. + make -C libraries/source/fcollada/src + + # Build 0ad. + make -C build/workspaces/gcc verbose=1 + ''; + + installPhase = '' + # Copy executables. + mkdir -p "$out"/bin + cp binaries/system/pyrogenesis "$out"/bin/ + ((${ toString withEditor })) && cp binaries/system/ActorEditor "$out"/bin/ + + # Copy l10n data. + mkdir -p "$out"/share/0ad + cp -r binaries/data/l10n "$out"/share/0ad/ + + # Copy libraries. + mkdir -p "$out"/lib/0ad + cp binaries/system/libCollada.so "$out"/lib/0ad/ + ((${ toString withEditor })) && cp binaries/system/libAtlasUI.so "$out"/lib/0ad/ + + # Create links to data files. + ln -s -t "$out"/share/0ad "${zeroadData}"/share/0ad/* + + # Copy icon. + mkdir -p "$out"/share/icons + cp build/resources/0ad.png "$out"/share/icons/ + + # Copy/fix desktop item. + mkdir -p "$out"/share/applications + while read LINE; do + if [[ $LINE = "Exec=0ad" ]]; then + echo "Exec=$out/bin/pyrogenesis" + elif [[ $LINE = "Icon=0ad" ]]; then + echo "Icon=$out/share/icons/0ad.png" + else + echo "$LINE" + fi + done <build/resources/0ad.desktop >"$out"/share/applications/0ad.desktop + ''; + + meta = { + description = "A free, open-source game of ancient warfare"; + homepage = "http://wildfiregames.com/0ad/"; + license = [ "GPLv2" "LGPLv2.1" "MIT" "CC BY-SA 3.0" "zlib" ]; + platforms = [ "x86_64-linux" "i686-linux" ]; + }; +} diff --git a/pkgs/games/blobby/default.nix b/pkgs/games/blobby/default.nix index faf7366f2494..801b7ea72770 100644 --- a/pkgs/games/blobby/default.nix +++ b/pkgs/games/blobby/default.nix @@ -1,17 +1,18 @@ -{stdenv, fetchurl, SDL, SDL_image, mesa, cmake, physfs, boost, zip, zlib}: +{stdenv, fetchurl, SDL2, SDL2_image, mesa, cmake, physfs, boost, zip, zlib +, pkgconfig}: stdenv.mkDerivation rec { - version = "1.0-rc3"; + version = "1.0"; name = "blobby-volley-${version}"; src = fetchurl { - url = "mirror://sourceforge/project/blobby/Blobby%20Volley%202%20%28Linux%29/1.0RC3/blobby2-linux-1.0rc3.tar.gz"; - sha256 = "10f50b2ygw8cb9mp33wpdwv9p6lc10qlwc1xd44bbcby1d9v5ga5"; + url = "http://softlayer-ams.dl.sourceforge.net/project/blobby/Blobby%20Volley%202%20%28Linux%29/1.0/blobby2-linux-1.0.tar.gz"; + sha256 = "1qpmbdlyhfbrdsq4vkb6cb3b8mh27fpizb71q4a21ala56g08yms"; }; - buildInputs = [SDL SDL_image mesa cmake physfs boost zip zlib]; + buildInputs = [SDL2 SDL2_image mesa cmake physfs boost zip zlib pkgconfig]; - preConfigure = '' - sed -re '1i#include <cassert>' -i src/CrossCorrelation.h + preConfigure='' + sed -e '1i#include <iostream>' -i src/NetworkMessage.cpp ''; meta = { @@ -19,5 +20,8 @@ stdenv.mkDerivation rec { license = with stdenv.lib.licenses; bsd3; platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [raskin]; + homepage = "http://blobby.sourceforge.net/"; + downloadPage = "http://sourceforge.net/projects/blobby/files/Blobby%20Volley%202%20%28Linux%29/"; + inherit version; }; } diff --git a/pkgs/games/blobby/default.upstream b/pkgs/games/blobby/default.upstream new file mode 100644 index 000000000000..e9ab417f5d20 --- /dev/null +++ b/pkgs/games/blobby/default.upstream @@ -0,0 +1,8 @@ +url http://sourceforge.net/projects/blobby/files/Blobby%20Volley%202%20%28Linux%29/ +SF_version_dir +version_link '[.]tar[.][^.]+/download$' +SF_redirect +do_overwrite(){ + do_overwrite_just_version + set_var_value url $CURRENT_URL +} diff --git a/pkgs/games/dwarf-therapist/default.nix b/pkgs/games/dwarf-therapist/default.nix index c7e594f89bda..1a026132e525 100644 --- a/pkgs/games/dwarf-therapist/default.nix +++ b/pkgs/games/dwarf-therapist/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { src = fetchhg { url = "https://code.google.com/r/splintermind-attributes/"; - tag = rev; + inherit rev; sha256 = "0a9m967q6p2q3plrl6qysg1xrdmg65jzil6awjh2wr3g10x2x15z"; }; diff --git a/pkgs/games/openspades/default.nix b/pkgs/games/openspades/default.nix new file mode 100644 index 000000000000..7f11fc829032 --- /dev/null +++ b/pkgs/games/openspades/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, cmake, curl, glew, makeWrapper, mesa, SDL2, + SDL2_image, unzip, wget, zlib, withOpenal ? true, openal ? null }: + +assert withOpenal -> openal != null; + +stdenv.mkDerivation rec { + name = "openspades-${version}"; + version = "0.0.12"; + + src = fetchurl { + url = "https://github.com/yvt/openspades/archive/v${version}.tar.gz"; + sha256 = "1aa848cck8qrp67ha9vrkzm3k24r2aiv1v4dxla6pi22rw98yxzm"; + }; + + nativeBuildInputs = + with stdenv.lib; + [ cmake curl glew makeWrapper mesa SDL2 SDL2_image unzip wget zlib ] + ++ optional withOpenal openal; + + cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" "-DOPENSPADES_INSTALL_BINARY=bin" ]; + + # OpenAL is loaded dynamicly + postInstall = + if withOpenal then '' + wrapProgram "$out/bin/openspades" \ + --prefix LD_LIBRARY_PATH : "${openal}/lib" + '' + else null; + + meta = with stdenv.lib; { + description = "OpenSpades is a compatible client of Ace of Spades 0.75"; + homepage = "https://github.com/yvt/openspades/"; + license = licenses.gpl3; + platforms = platforms.linux; + }; +} diff --git a/pkgs/games/opentyrian/default.nix b/pkgs/games/opentyrian/default.nix index 5e2ecdbcc5c7..cfae6a4bb3e8 100644 --- a/pkgs/games/opentyrian/default.nix +++ b/pkgs/games/opentyrian/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { src = fetchhg { url = "https://opentyrian.googlecode.com/hg/"; - tag = "13ef8ce47362"; + rev = "13ef8ce47362"; md5 = "95c8f9e7ff3d4207f1c692c7cec6c9b0"; }; diff --git a/pkgs/misc/emulators/wine/winetricks.nix b/pkgs/misc/emulators/wine/winetricks.nix index f47902cd0bf1..3dd3d4bc7311 100644 --- a/pkgs/misc/emulators/wine/winetricks.nix +++ b/pkgs/misc/emulators/wine/winetricks.nix @@ -2,13 +2,13 @@ , cabextract, unzip, p7zip, gnused, gnugrep, bash } : stdenv.mkDerivation rec { - rev = "1083"; + rev = "1199"; name = "winetricks-${rev}"; src = fetchsvn { url = "http://winetricks.googlecode.com/svn/trunk"; inherit rev; - sha256 = "0zakwn7g2ni6xw92i1y3pngyaxsr93714s4jy11adf7rxdkj0a32"; + sha256 = "1kji1n6ps09g8xnl9m7vqk3vkl03abzwnc43c52i8p0adnv06khb"; }; buildInputs = [ perl which ]; @@ -28,4 +28,3 @@ stdenv.mkDerivation rec { maintainers = with stdenv.lib.maintainers; [ the-kenny ]; }; } - diff --git a/pkgs/os-specific/linux/broadcom-sta/cfg80211_ibss_joined-channel-parameter.patch b/pkgs/os-specific/linux/broadcom-sta/cfg80211_ibss_joined-channel-parameter.patch new file mode 100644 index 000000000000..5596c0ebcf2e --- /dev/null +++ b/pkgs/os-specific/linux/broadcom-sta/cfg80211_ibss_joined-channel-parameter.patch @@ -0,0 +1,17 @@ +Add channel parameter to cfg80211_ibss_joined call + +--- a/src/wl/sys/wl_cfg80211_hybrid.c ++++ b/src/wl/sys/wl_cfg80211_hybrid.c +@@ -1841,7 +1841,12 @@ wl_notify_connect_status(struct wl_cfg80211_priv *wl, struct net_device *ndev, + wl_get_assoc_ies(wl); + memcpy(&wl->bssid, &e->addr, ETHER_ADDR_LEN); + wl_update_bss_info(wl); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 15, 0) + cfg80211_ibss_joined(ndev, (u8 *)&wl->bssid, GFP_KERNEL); ++#else ++ cfg80211_ibss_joined(ndev, (u8 *)&wl->bssid, ++ &wl->conf->channel, GFP_KERNEL); ++#endif + set_bit(WL_STATUS_CONNECTED, &wl->status); + wl->profile->active = true; + } diff --git a/pkgs/os-specific/linux/broadcom-sta/default.nix b/pkgs/os-specific/linux/broadcom-sta/default.nix index 5955543f8e1e..1ed13c2e4501 100644 --- a/pkgs/os-specific/linux/broadcom-sta/default.nix +++ b/pkgs/os-specific/linux/broadcom-sta/default.nix @@ -19,6 +19,7 @@ stdenv.mkDerivation { patches = [ ./linux-recent.patch ./license.patch + ./cfg80211_ibss_joined-channel-parameter.patch ]; makeFlags = "KBASE=${kernel.dev}/lib/modules/${kernel.modDirVersion}"; diff --git a/pkgs/os-specific/linux/iomelt/default.nix b/pkgs/os-specific/linux/iomelt/default.nix new file mode 100644 index 000000000000..df267d304c15 --- /dev/null +++ b/pkgs/os-specific/linux/iomelt/default.nix @@ -0,0 +1,25 @@ +{ stdenv, lib, fetchurl }: + +let version = "0.7"; +in stdenv.mkDerivation { + name = "iomelt-${version}"; + src = fetchurl { + url = "http://iomelt.com/s/iomelt-${version}.tar.gz"; + sha256 = "1jhrdm5b7f1bcbrdwcc4yzg26790jxl4d2ndqiwd9brl2g5537im"; + }; + + preBuild = '' + ensureDir $out/bin + ensureDir $out/share/man/man1 + + substituteInPlace Makefile \ + --replace /usr $out + ''; + + meta = with lib; { + description = "A simple yet effective way to benchmark disk IO in Linux systems"; + homepage = http://www.iomelt.com; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index b089e962397d..7e7dd2dfda9d 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -78,17 +78,17 @@ with stdenv.lib; CLS_U32_MARK y # Wireless networking. - CFG80211_WEXT y # Without it, ipw2200 drivers don't build - IPW2100_MONITOR y # support promiscuous mode - IPW2200_MONITOR y # support promiscuous mode - HOSTAP_FIRMWARE y # Support downloading firmware images with Host AP driver - HOSTAP_FIRMWARE_NVRAM y - ATH9K_PCI y # Detect Atheros AR9xxx cards on PCI(e) bus - ATH9K_AHB y # Ditto, AHB bus + CFG80211_WEXT? y # Without it, ipw2200 drivers don't build + IPW2100_MONITOR? y # support promiscuous mode + IPW2200_MONITOR? y # support promiscuous mode + HOSTAP_FIRMWARE? y # Support downloading firmware images with Host AP driver + HOSTAP_FIRMWARE_NVRAM? y + ATH9K_PCI? y # Detect Atheros AR9xxx cards on PCI(e) bus + ATH9K_AHB? y # Ditto, AHB bus ${optionalString (versionAtLeast version "3.2") '' - B43_PHY_HT y + B43_PHY_HT? y ''} - BCMA_HOST_PCI y + BCMA_HOST_PCI? y # Enable various FB devices. FB y @@ -110,7 +110,7 @@ with stdenv.lib; # Enable KMS for devices whose X.org driver supports it. DRM_I915_KMS y ${optionalString (versionOlder version "3.9") '' - DRM_RADEON_KMS y + DRM_RADEON_KMS? y ''} # Hybrid graphics support VGA_SWITCHEROO y @@ -145,18 +145,18 @@ with stdenv.lib; EXT2_FS_XIP y # Ext2 execute in place support EXT4_FS_POSIX_ACL y EXT4_FS_SECURITY y - REISERFS_FS_XATTR y - REISERFS_FS_POSIX_ACL y - REISERFS_FS_SECURITY y - JFS_POSIX_ACL y - JFS_SECURITY y - XFS_QUOTA y - XFS_POSIX_ACL y - XFS_RT y # XFS Realtime subvolume support - OCFS2_DEBUG_MASKLOG n + REISERFS_FS_XATTR? y + REISERFS_FS_POSIX_ACL? y + REISERFS_FS_SECURITY? y + JFS_POSIX_ACL? y + JFS_SECURITY? y + XFS_QUOTA? y + XFS_POSIX_ACL? y + XFS_RT? y # XFS Realtime subvolume support + OCFS2_DEBUG_MASKLOG? n BTRFS_FS_POSIX_ACL y UBIFS_FS_XATTR? y - UBIFS_FS_ADVANCED_COMPR y + UBIFS_FS_ADVANCED_COMPR? y NFSD_V2_ACL y NFSD_V3 y NFSD_V3_ACL y @@ -192,14 +192,14 @@ with stdenv.lib; ${optionalString (versionAtLeast version "3.3" && versionOlder version "3.13") '' AUDIT_LOGINUID_IMMUTABLE y ''} - B43_PCMCIA y + B43_PCMCIA? y BLK_DEV_CMD640_ENHANCED y # CMD640 enhanced support BLK_DEV_IDEACPI y # IDE ACPI support BLK_DEV_INTEGRITY y BSD_PROCESS_ACCT_V3 y - BT_HCIUART_BCSP y - BT_HCIUART_H4 y # UART (H4) protocol support - BT_HCIUART_LL y + BT_HCIUART_BCSP? y + BT_HCIUART_H4? y # UART (H4) protocol support + BT_HCIUART_LL? y BT_RFCOMM_TTY? y # RFCOMM TTY support CRASH_DUMP? n ${optionalString (versionOlder version "3.1") '' @@ -213,10 +213,10 @@ with stdenv.lib; FUSION y # Fusion MPT device support IDE_GD_ATAPI y # ATAPI floppy support IRDA_ULTRA y # Ultra (connectionless) protocol - JOYSTICK_IFORCE_232 y # I-Force Serial joysticks and wheels - JOYSTICK_IFORCE_USB y # I-Force USB joysticks and wheels - JOYSTICK_XPAD_FF y # X-Box gamepad rumble support - JOYSTICK_XPAD_LEDS y # LED Support for Xbox360 controller 'BigX' LED + JOYSTICK_IFORCE_232? y # I-Force Serial joysticks and wheels + JOYSTICK_IFORCE_USB? y # I-Force USB joysticks and wheels + JOYSTICK_XPAD_FF? y # X-Box gamepad rumble support + JOYSTICK_XPAD_LEDS? y # LED Support for Xbox360 controller 'BigX' LED LDM_PARTITION y # Windows Logical Disk Manager (Dynamic Disk) support LEDS_TRIGGER_IDE_DISK y # LED IDE Disk Trigger LOGIRUMBLEPAD2_FF y # Logitech Rumblepad 2 force feedback @@ -315,8 +315,8 @@ with stdenv.lib; ''} # Enable the 9P cache to speed up NixOS VM tests. - 9P_FSCACHE y - 9P_FS_POSIX_ACL y + 9P_FSCACHE? y + 9P_FS_POSIX_ACL? y # Enable transparent support for huge pages. TRANSPARENT_HUGEPAGE? y diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index 8ba677d6dfe9..08611e448562 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -95,6 +95,8 @@ let ''; installPhase = "mv .config $out"; + + enableParallelBuilding = true; }; kernel = buildLinux { diff --git a/pkgs/os-specific/linux/kernel/linux-3.10.nix b/pkgs/os-specific/linux/kernel/linux-3.10.nix index a08ad5ea53d1..6ee5345f498c 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.10.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.10.44"; + version = "3.10.45"; extraMeta.branch = "3.10"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "06brvvxkgx4im4jzyl08y8hifgqb8ndxlhdkczwlqx3cgs6769c0"; + sha256 = "0bsmqszc86d33g6qpwgrdckgrd1x37087br3vsc5151s2p22rk1f"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/linux-3.12.nix b/pkgs/os-specific/linux/kernel/linux-3.12.nix index 33bed4213b41..7d5ff606eb98 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.12.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.12.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.12.22"; + version = "3.12.23"; extraMeta.branch = "3.12"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "0c9rw11iihjimqb6mdmwn4q67ds7jg4qibj5ijj5pdmkdqzj7g54"; + sha256 = "0aa9vnyk4p6hg4fp4rm4a95cn4p16j2dfrhc3cfznpcdkpi5q9m7"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/linux-3.13.nix b/pkgs/os-specific/linux/kernel/linux-3.13.nix deleted file mode 100644 index d84cec235cec..000000000000 --- a/pkgs/os-specific/linux/kernel/linux-3.13.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ stdenv, fetchurl, ... } @ args: - -import ./generic.nix (args // rec { - version = "3.13.11"; - extraMeta.branch = "3.13"; - - src = fetchurl { - url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "1nhi5m0nnrb7v2gqpa3181p32k5hm5jwkf647vs80r14750gxlpw"; - }; - - features.iwlwifi = true; - features.efiBootStub = true; - features.needsCifsUtils = true; - features.canDisableNetfilterConntrackHelpers = true; - features.netfilterRPFilter = true; -} // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-3.14.nix b/pkgs/os-specific/linux/kernel/linux-3.14.nix index 4fbca05501d3..f867309529f1 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.14.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.14.8"; + version = "3.14.9"; extraMeta.branch = "3.14"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "0l2k7c8i3vzcs8mwdy3h1yzlqli6vr56wbn6bxp4nyvxkwxlhs5d"; + sha256 = "0rm68hzkxzzh6a1nw6fsxbg43d4b88957ail7b9ga589cagf3p94"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/linux-3.15.nix b/pkgs/os-specific/linux/kernel/linux-3.15.nix index 531b85b789aa..68f58f83a2f7 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.15.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.15.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.15.1"; + version = "3.15.2"; extraMeta.branch = "3.15"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "0bmzag945bb9v20xc2f6i4syx456prai3qj5cxhm8cb76wby4s8b"; + sha256 = "09nq8q84xn6lwzdnn36pzfiqhn1lapi60yxn4hifb7v9ymhc5sv6"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/linux-3.4.nix b/pkgs/os-specific/linux/kernel/linux-3.4.nix index 8308340f3f5e..27efaac44889 100644 --- a/pkgs/os-specific/linux/kernel/linux-3.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-3.4.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, ... } @ args: import ./generic.nix (args // rec { - version = "3.4.94"; + version = "3.4.95"; extraMeta.branch = "3.4"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; - sha256 = "0kc1s38zij39z8mrk9x29wizhbn4i7c7gyd796s1ib4826p3k48k"; + sha256 = "1rv2jsfc2m12nk293v12rvvqnicyh73pwp6bcb28jdqdhm95k6l6"; }; kernelPatches = args.kernelPatches ++ diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index bafac2fc58df..f44f3d327921 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -2,13 +2,13 @@ import ./generic.nix (args // rec { # Reason to add: RTL8192EE - version = "3.16-rc2"; - modDirVersion = "3.16.0-rc2"; + version = "3.16-rc3"; + modDirVersion = "3.16.0-rc3"; extraMeta.branch = "3.16"; src = fetchurl { url = "mirror://kernel/linux/kernel/v3.x/testing/linux-${version}.tar.xz"; - sha256 = "12bxf62qqsf471ak6rj4gbvvjsybsamgwj9p8bphr98dp14js27w"; + sha256 = "17jgv1hnx2im68f8721x11yfg8mpas7lsxg0j00qxv2fc6km2glm"; }; features.iwlwifi = true; diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index eb4d7a100be9..5a6a7d15c3c9 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -60,17 +60,17 @@ rec { }; grsecurity_stable = grsecPatch - { kversion = "3.14.8"; - revision = "201406222110"; + { kversion = "3.14.9"; + revision = "201406262057"; branch = "stable"; - sha256 = "0jar710hqpjkp4g3ldrbcpgc170v9qp8ykajq5fi8mxx4j54gjwa"; + sha256 = "0rrcmlaz69028fwl45xnif1dc9wnl7lnrry1280mdg764wrc6g0n"; }; grsecurity_unstable = grsecPatch - { kversion = "3.15.1"; - revision = "201406222112"; + { kversion = "3.15.2"; + revision = "201406262058"; branch = "test"; - sha256 = "04sbpmzgfgn7hjiln9baynpgr7k67lm0b5wn2z8i2jsjigfmv0r4"; + sha256 = "02r9xasg1hiw3bynwh50r9cqjzwffmhsyg4gmiyzs58izivl1hvd"; }; grsec_fix_path = diff --git a/pkgs/os-specific/linux/keyutils/default.nix b/pkgs/os-specific/linux/keyutils/default.nix index 8673981ecd50..fc05fc234525 100644 --- a/pkgs/os-specific/linux/keyutils/default.nix +++ b/pkgs/os-specific/linux/keyutils/default.nix @@ -1,29 +1,28 @@ { stdenv, fetchurl, gnumake, file }: stdenv.mkDerivation rec { - name = "keyutils-1.5.8"; + name = "keyutils-1.5.9"; src = fetchurl { url = "http://people.redhat.com/dhowells/keyutils/${name}.tar.bz2"; - sha256 = "17419fr7mph8wlhxpqb1bdrghz0db15bmjdgxg1anfgbf9ra6zbc"; + sha256 = "1bl3w03ygxhc0hz69klfdlwqn33jvzxl1zfl2jmnb2v85iawb8jd"; }; buildInputs = [ file ]; patchPhase = '' - sed -i -e "s,/usr/bin/make,${gnumake}/bin/make," \ - -e "s, /etc, $out/etc," \ - -e "s, /bin, $out/bin," \ - -e "s, /sbin, $out/sbin," \ - -e "s, /lib, $out/lib," \ - -e "s, /lib64, $out/lib64," \ - -e "s,/usr,$out," \ + sed -i -e "s, /usr/bin/make, ${gnumake}/bin/make," \ + -e "s, /usr, ," \ + -e "s,\$(LNS) \$(LIBDIR)/\$(SONAME),\$(LNS) \$(SONAME)," \ Makefile ''; + + installPhase = "make install DESTDIR=$out"; - meta = { + meta = with stdenv.lib; { homepage = http://people.redhat.com/dhowells/keyutils/; description = "Tools used to control the Linux kernel key management system"; - license = "GPLv2+"; + license = licenses.gpl2Plus; + platforms = platforms.linux; }; } diff --git a/pkgs/os-specific/linux/syslinux/default.nix b/pkgs/os-specific/linux/syslinux/default.nix index 95f482a82305..734613c44ac8 100644 --- a/pkgs/os-specific/linux/syslinux/default.nix +++ b/pkgs/os-specific/linux/syslinux/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, nasm, perl, libuuid }: stdenv.mkDerivation rec { - name = "syslinux-4.07"; + name = "syslinux-6.02"; src = fetchurl { - url = "mirror://kernel/linux/utils/boot/syslinux/4.xx/${name}.tar.bz2"; - sha256 = "0nm0lx45h4c5nxnsr538bvryzvqvj1p1p4vqxzd8nlcv47ja8h0j"; + url = "mirror://kernel/linux/utils/boot/syslinux/${name}.tar.xz"; + sha256 = "0y2ld2s64s6vc5pf8rj36w71rq2cfax3c1iafp0w1qbjpxy1p8xg"; }; patches = [ ./perl-deps.patch ]; @@ -14,15 +14,27 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - preBuild = - '' - substituteInPlace gpxe/src/Makefile.housekeeping --replace /bin/echo $(type -P echo) - substituteInPlace gpxe/src/Makefile --replace /usr/bin/perl $(type -P perl) - makeFlagsArray=(BINDIR=$out/bin SBINDIR=$out/sbin LIBDIR=$out/lib INCDIR=$out/include DATADIR=$out/share MANDIR=$out/share/man PERL=perl) - ''; + preBuild = '' + substituteInPlace Makefile --replace /bin/pwd $(type -P pwd) + substituteInPlace gpxe/src/Makefile.housekeeping --replace /bin/echo $(type -P echo) + substituteInPlace gpxe/src/Makefile --replace /usr/bin/perl $(type -P perl) + ''; - meta = { + makeFlags = [ + "BINDIR=$(out)/bin" + "SBINDIR=$(out)/sbin" + "LIBDIR=$(out)/lib" + "INCDIR=$(out)/include" + "DATADIR=$(out)/share" + "MANDIR=$(out)/share/man" + "PERL=perl" + "bios" + ]; + + meta = with stdenv.lib; { homepage = http://www.syslinux.org/; description = "A lightweight bootloader"; + license = licenses.gpl2; + platforms = platforms.linux; }; } diff --git a/pkgs/servers/etcd/default.nix b/pkgs/servers/etcd/default.nix new file mode 100644 index 000000000000..1fb21f2b8ab6 --- /dev/null +++ b/pkgs/servers/etcd/default.nix @@ -0,0 +1,30 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "0.4.3"; + name = "etcd-${version}"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + go build -v -o etcd github.com/coreos/etcd + ''; + + installPhase = '' + ensureDir $out/bin + mv etcd $out/bin/etcd + ''; + + meta = with stdenv.lib; { + description = "A highly-available key value store for shared configuration and service discovery"; + homepage = http://coreos.com/using-coreos/etcd/; + license = licenses.asl20; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/etcd/deps.nix b/pkgs/servers/etcd/deps.nix new file mode 100644 index 000000000000..e9fd4a50d3e0 --- /dev/null +++ b/pkgs/servers/etcd/deps.nix @@ -0,0 +1,54 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "github.com/coreos/etcd"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "etcd"; + rev = "9970141f76241c909977af7bafe7b6f2c4923de8"; + sha256 = "1bva46gfy4rkfw8k8pb3lsfzfg16csds01f0nvfrkh99pr7sp0sy"; + }; + } + { + root = "github.com/stathat/go"; + src = fetchFromGitHub { + owner = "stathat"; + repo = "go"; + rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77"; + sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi"; + }; + } + { + root = "github.com/stretchr/objx"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "objx"; + rev = "cbeaeb16a013161a98496fad62933b1d21786672"; + sha256 = "1xn7iibjik77h6h0jilfvcjkkzaqz45baf44p3rb2i03hbmkqkp1"; + }; + } + { + root = "github.com/stretchr/testify"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "testify"; + rev = "3e03dde72495487a4deb74152ac205d0619fbc8d"; + sha256 = "1xd9sbi6y68cfwkxgybcz0dbfx4r6jmxq51wjj6six3wm9p7m8ls"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/servers/fleet/default.nix b/pkgs/servers/fleet/default.nix new file mode 100644 index 000000000000..627c1ff0cf90 --- /dev/null +++ b/pkgs/servers/fleet/default.nix @@ -0,0 +1,30 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "0.5.0"; + name = "fleet-${version}"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + go build -v -o fleet github.com/coreos/fleet + ''; + + installPhase = '' + ensureDir $out/bin + mv fleet $out/bin + ''; + + meta = with stdenv.lib; { + description = "A distributed init system"; + homepage = http://coreos.com/using-coreos/clustering/; + license = licenses.asl20; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/fleet/deps.nix b/pkgs/servers/fleet/deps.nix new file mode 100644 index 000000000000..d0529db37a2f --- /dev/null +++ b/pkgs/servers/fleet/deps.nix @@ -0,0 +1,81 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "code.google.com/p/gogoprotobuf"; + src = fetchgit { + url = "https://code.google.com/p/gogoprotobuf"; + rev = "7fd1620f09261338b6b1ca1289ace83aee0ec946"; + sha256 = "0f13y29zpxkv7b7kwnszygvg04fd5m9r8vpkl1wa3gxnc6az54i9"; + }; + } + { + root = "github.com/coreos/etcd"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "etcd"; + rev = "1359d29fa451b059bb76b51260610d92853e7316"; + sha256 = "0iz3vmf3nfp1i5r8al207wm0jvj68i47a814w90b1jl8g4f2amp7"; + }; + } + { + root = "github.com/coreos/fleet"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "fleet"; + rev = "da0a02ed3b07d83b0b542dcdee56e08d2457ab9c"; + sha256 = "0b8aq4ppyv1fjvf3f2qjq80mvjvf9r104bf4048wgsrs0pccs6s8"; + }; + } + { + root = "github.com/coreos/raft"; + src = fetchFromGitHub { + owner = "coreos"; + repo = "raft"; + rev = "67dca7288f1665b59860421673d46314f4348e45"; + sha256 = "1l27kjkwcxgx89d2m537plagbp1wh6qlzxirza6lliblrgxry6mw"; + }; + } + { + root = "github.com/stathat/go"; + src = fetchFromGitHub { + owner = "stathat"; + repo = "go"; + rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77"; + sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi"; + }; + } + { + root = "github.com/stretchr/objx"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "objx"; + rev = "cbeaeb16a013161a98496fad62933b1d21786672"; + sha256 = "1xn7iibjik77h6h0jilfvcjkkzaqz45baf44p3rb2i03hbmkqkp1"; + }; + } + { + root = "github.com/stretchr/testify"; + src = fetchFromGitHub { + owner = "stretchr"; + repo = "testify"; + rev = "3e03dde72495487a4deb74152ac205d0619fbc8d"; + sha256 = "1xd9sbi6y68cfwkxgybcz0dbfx4r6jmxq51wjj6six3wm9p7m8ls"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} + diff --git a/pkgs/servers/http/nix-binary-cache/default.nix b/pkgs/servers/http/nix-binary-cache/default.nix new file mode 100644 index 000000000000..b007c09b0560 --- /dev/null +++ b/pkgs/servers/http/nix-binary-cache/default.nix @@ -0,0 +1,61 @@ +{stdenv, fetchurl +, coreutils, findutils, nix, xz, bzip2, gnused, gnugrep, openssl +, lighttpd, iproute }: +stdenv.mkDerivation rec { + version = "2014-06-29-1"; + name = "nix-binary-cache-${version}"; + + phases = ["installPhase"]; + + installPhase = '' + mkdir -p "$out/bin" + substitute "${./nix-binary-cache.cgi.in}" "$out"/bin/nix-binary-cache.cgi \ + --replace @out@ "$out/bin" \ + --replace @shell@ "${stdenv.shell}" \ + --replace @coreutils@ "${coreutils}/bin" \ + --replace @findutils@ "${findutils}/bin" \ + --replace @nix@ "${nix}/bin" \ + --replace @xz@ "${xz}/bin" \ + --replace @bzip2@ "${bzip2}/bin" \ + --replace @gnused@ "${gnused}/bin" \ + --replace @gnugrep@ "${gnugrep}/bin" \ + --replace @openssl@ "${openssl}/bin" \ + --replace @lighttpd@ "${lighttpd}/sbin" \ + --replace @iproute@ "${iproute}/sbin" \ + --replace "xXxXx" "xXxXx" + + chmod a+x "$out/bin/nix-binary-cache.cgi" + + substitute "${./nix-binary-cache-start.in}" "$out"/bin/nix-binary-cache-start \ + --replace @out@ "$out/bin" \ + --replace @shell@ "${stdenv.shell}" \ + --replace @coreutils@ "${coreutils}/bin" \ + --replace @findutils@ "${findutils}/bin" \ + --replace @nix@ "${nix}/bin" \ + --replace @xz@ "${xz}/bin" \ + --replace @bzip2@ "${bzip2}/bin" \ + --replace @gnused@ "${gnused}/bin" \ + --replace @gnugrep@ "${gnugrep}/bin" \ + --replace @openssl@ "${openssl}/bin" \ + --replace @lighttpd@ "${lighttpd}/sbin" \ + --replace @iproute@ "${iproute}/sbin" \ + --replace "xXxXx" "xXxXx" + + chmod a+x "$out/bin/nix-binary-cache-start" + ''; + + meta = { + description = ''A set of scripts to serve the Nix store as a binary cache''; + longDescription = '' + This package installs a CGI script that serves Nix store path in the + binary cache format. It also installs a launcher called + nix-binary-cache-start that can be run without any setup to launch + a binary cache and get the example arguments for its usage. + ''; + maintainers = [stdenv.lib.maintainers.raskin]; + license = stdenv.lib.licenses.gpl2Plus; + inherit version; + platforms = stdenv.lib.platforms.all; + hydraPlatforms = []; + }; +} diff --git a/pkgs/servers/http/nix-binary-cache/nix-binary-cache-start.in b/pkgs/servers/http/nix-binary-cache/nix-binary-cache-start.in new file mode 100644 index 000000000000..2a2356f39ab2 --- /dev/null +++ b/pkgs/servers/http/nix-binary-cache/nix-binary-cache-start.in @@ -0,0 +1,105 @@ +#! @shell@ + +parse_opts () { + while @coreutils@/test -n "$1" && @coreutils@/test "x$1" != x-- ; do + case "$1" in + --store-dir) + shift; + echo "STORE_DIR='$1'" + shift; + ;; + --priority) + shift; + echo "PRIORITY=$1"; + shift; + ;; + --compression) + shift; + echo "COMPRESSION=$1"; + shift; + ;; + --key) + shift; + echo "KEY=${1#*:}" + echo "KEYNAME=${1%%:*}" + shift; + ;; + --nix-remote) + shift; + echo "NIX_REMOTE=$1" + shift; + ;; + --mass-query) + shift; + echo "MASS_QUERY=$1" + shift; + ;; + --port) + shift; + echo "PORT=$1" + shift; + ;; + --help) + cat <<EOF >&2 +"$0": start the Nix binary cache serving the Nix store dynamically. + +Recognized options: + +--port server port +--store-dir served Nix store + +--priority binary cache priority +--mass-query 0 or 1 - whether binary cache expects queries for nix-env -qas + +--compression compression to use: bzip2 or xz +--key name:/path/to/key - key to use for narinfo signing + +--nix-remote 'daemon' or empty string '' - whether to use daemon for store + operations + +--help show help and exit +EOF + exit 1; + ;; + *) shift ;; + esac; + done +} + +workingdir="$(@coreutils@/mktemp -d)" +cd "$workingdir" + +PORT=8080 +(echo "STORE_DIR=${NIX_STORE_DIR:-/nix/store}"; parse_opts "$@" + ) > nix-binary-cache.conf || exit +. "$workingdir/nix-binary-cache.conf" + +echo " +server.port = $PORT +server.modules = ( \"mod_cgi\", \"mod_setenv\", ) +server.document-root = \"$workingdir\" +cgi.assign = ( \".cgi\" => \"@shell@\" ) +setenv.add-request-header = ( \"NIX_BINARY_CACHE_CONFIG\" => \"$workingdir/nix-binary-cache.conf\" ) +" > lighttpd.conf + +cp @out@/nix-binary-cache.cgi . +cp @out@/nix-binary-cache.cgi ./nix-bc.cgi + +ip="$(@iproute@/ip a | @gnugrep@/grep 'inet .* scope global' | @coreutils@/head -n 1)" +ip="${ip%%/*}" +ip="${ip##* }" + +url="http://$ip:$PORT/nix-bc.cgi?" + +echo "Working directory: $workingdir" +echo +echo "Address of the binary cache: $url" +echo +echo "Usage example: NIX_REMOTE= nix-store --option binary-caches '$url'" +echo +echo + +@lighttpd@/lighttpd -D -f "$workingdir/lighttpd.conf" + +cd / +@coreutils@/rm -rf "$workingdir" diff --git a/pkgs/servers/http/nix-binary-cache/nix-binary-cache.cgi.in b/pkgs/servers/http/nix-binary-cache/nix-binary-cache.cgi.in new file mode 100644 index 000000000000..219ab9763ada --- /dev/null +++ b/pkgs/servers/http/nix-binary-cache/nix-binary-cache.cgi.in @@ -0,0 +1,97 @@ +#! @shell@ + +STORE_DIR="${NIX_STORE_DIR:-/nix/store}" +MASS_QUERY=0 +PRIORITY=75 +COMPRESSION=bzip2 +KEY= +KEYNAME=na + +export NIX_REMOTE=daemon + +config="${NIX_BINARY_CACHE_CONFIG:-${HTTP_NIX_BINARY_CACHE_CONFIG:-/etc/nix/nix-binary-cache.cgi.conf}}" +config="$(cd "$(@coreutils@/dirname "$config")"; + @coreutils@/pwd)/$(@coreutils@/basename "$config")" +@coreutils@/test -e "$config" && . "$config" + +header(){ + echo "Content-Type: text/plain; charset=utf-8" + echo +} + +clean_path() { + @gnused@/sed -re "s@^$STORE_DIR/?@@" | @findutils@/xargs +} + +storeq(){ + @nix@/nix-store -q "$@" +} + +sign(){ + test -n "$1" && + @coreutils@/sha256sum | @gnused@/sed -e 's/ .*//' | + @openssl@/openssl rsautl -sign -inkey "$@" | @coreutils@/base64 -w 0 +} + +case "$QUERY_STRING" in + "") + header + echo "Hello, this is a dynamically-generated Nix binary cache" + ;; + /debug) + header + set + ;; + /nix-cache-info) + header + echo "StoreDir: $STORE_DIR" + echo "WantMassQuery: $MASS_QUERY" + echo "Priority: $PRIORITY" + ;; + *.narinfo) + hash=${QUERY_STRING%.narinfo} + hash=${hash#/} + path="$(echo "$STORE_DIR/$hash-"* )" + if [ -n "$path" ] && [ -e "$path" ]; then + header + info="$( + echo "StorePath: $path" + echo "URL: $(@coreutils@/basename "$path" + ).nar.$COMPRESSION" + echo "Compression: $COMPRESSION" + echo "NarHash: $(storeq --hash "$path")" + echo "NarSize: $(storeq --size "$path")" + echo "References: $(storeq --references "$path" | + @coreutils@/tac | clean_path )" + echo "Deriver: $(storeq --deriver "$path" | + clean_path )" + )" + signature="$(echo "$info" | sign "$KEY")" + + echo "$info" + echo "Signature: 1;$KEYNAME;$signature" + + else + exit 1 + fi + ;; + *.nar.xz) + path="$STORE_DIR${QUERY_STRING%.nar.xz}" + if [ -n "$path" ] && [ -e "$path" ]; then + header + @nix@/nix-store --dump "$path" | @xz@/xz + else + exit 1 + fi + ;; + *.nar.bzip2) + path="$STORE_DIR${QUERY_STRING%.nar.bzip2}" + echo "$path" >&2; + if [ -n "$path" ] && [ -e "$path" ]; then + header + @nix@/nix-store --dump "$path" | @bzip2@/bzip2 + else + exit 1 + fi + ;; +esac diff --git a/pkgs/servers/nsq/default.nix b/pkgs/servers/nsq/default.nix new file mode 100644 index 000000000000..b1570d96c7b6 --- /dev/null +++ b/pkgs/servers/nsq/default.nix @@ -0,0 +1,37 @@ +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "0.2.28"; + name = "nsq-${version}"; + + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; + + buildInputs = [ go ]; + + buildPhase = '' + export GOPATH=$src + apps=(nsq_pubsub nsq_stat nsq_tail nsq_to_file nsq_to_http nsq_to_nsq nsqd nsqlookupd) + + mkdir build + + go build -v -o build/nsqadmin github.com/bitly/nsq/nsqadmin + for app in "''${apps[@]}"; do + go build -v -o build/$app github.com/bitly/nsq/apps/$app + done + ''; + + installPhase = '' + ensureDir $out/bin + mv build/* $out/bin + ''; + + meta = with stdenv.lib; { + description = "A realtime distributed messaging platform"; + homepage = http://nsq.io/; + license = licenses.mit; + maintainers = with maintainers; [ cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/nsq/deps.nix b/pkgs/servers/nsq/deps.nix new file mode 100644 index 000000000000..bd98357ece62 --- /dev/null +++ b/pkgs/servers/nsq/deps.nix @@ -0,0 +1,134 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "code.google.com/p/snappy-go"; + src = fetchhg { + url = "http://code.google.com/p/snappy-go"; + rev = "14"; + sha256 = "0ywa52kcii8g2a9lbqcx8ghdf6y56lqq96sl5nl9p6h74rdvmjr7"; + }; + } + { + root = "github.com/BurntSushi/toml"; + src = fetchFromGitHub { + owner = "BurntSushi"; + repo = "toml"; + rev = "f87ce853111478914f0bcffa34d43a93643e6eda"; + sha256 = "0g8203y9ycf34j2q3ymxb8nh4habgwdrjn9vdgrginllx73yq565"; + }; + } + { + root = "github.com/bitly/go-hostpool"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "go-hostpool"; + rev = "fed86fae5cacdc77e7399937e2f8836563620a2e"; + sha256 = "0nbssfp5ksj4hhc0d8lfq54afd9nqv6qzk3vi6rinxr3fgplrj44"; + }; + } + { + root = "github.com/bitly/go-nsq"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "go-nsq"; + rev = "c79a282f05364e340eadc2ce2f862a3d44eea9c0"; + sha256 = "19jlwj5419p5xwjzfnzlddjnbh5g7ifnqhd00i5p0b6ww1gk011p"; + }; + } + { + root = "github.com/bitly/go-simplejson"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "go-simplejson"; + rev = "1cfceb0e12f47ec02665ef480212d7b531d6f4c5"; + sha256 = "1d8x0himl58qn87lv418djy6mbs66p9ai3zpqq13nhkfl67fj3bi"; + }; + } + { + root = "github.com/bitly/nsq"; + src = fetchFromGitHub { + owner = "bitly"; + repo = "nsq"; + rev = "048691a8242c9ec224fc46bf7d05f321026b69f8"; + sha256 = "0drmf1j5w3q4l6f7xjy3y7d7cl50gcx0qwci6mahxsyaaclx60yx"; + }; + } + { + root = "github.com/bmizerany/assert"; + src = fetchFromGitHub { + owner = "bmizerany"; + repo = "assert"; + rev = "e17e99893cb6509f428e1728281c2ad60a6b31e3"; + sha256 = "1lfrvqqmb09y6pcr76yjv4r84cshkd4s7fpmiy7268kfi2cvqnpc"; + }; + } + { + root = "github.com/bmizerany/perks"; + src = fetchFromGitHub { + owner = "bmizerany"; + repo = "perks"; + rev = "aac9e2eab5a334037057336897fd10b0289a5ae8"; + sha256 = "1d027jgc327qz5xmal0hrpqvsj45i9yqmm9pxk3xp3hancvz3l3k"; + }; + } + { + root = "github.com/kr/pretty"; + src = fetchFromGitHub { + owner = "kr"; + repo = "pretty"; + rev = "bc9499caa0f45ee5edb2f0209fbd61fbf3d9018f"; + sha256 = "1m61y592qsnwsqn76v54mm6h2pcvh4wlzbzscc1ag645x0j33vvl"; + }; + } + { + root = "github.com/kr/pty"; + src = fetchFromGitHub { + owner = "kr"; + repo = "pty"; + rev = "67e2db24c831afa6c64fc17b4a143390674365ef"; + sha256 = "1l3z3wbb112ar9br44m8g838z0pq2gfxcp5s3ka0xvm1hjvanw2d"; + }; + } + { + root = "github.com/kr/text"; + src = fetchFromGitHub { + owner = "kr"; + repo = "text"; + rev = "6807e777504f54ad073ecef66747de158294b639"; + sha256 = "1wkszsg08zar3wgspl9sc8bdsngiwdqmg3ws4y0bh02sjx5a4698"; + }; + } + { + root = "github.com/mreiferson/go-options"; + src = fetchFromGitHub { + owner = "mreiferson"; + repo = "go-options"; + rev = "896a539cd709f4f39d787562d1583c016ce7517e"; + sha256 = "0hg0n5grcjcj5719rqchz0plp39wfk3znqxw8y354k4jwsqwmn17"; + }; + } + { + root = "github.com/mreiferson/go-snappystream"; + src = fetchFromGitHub { + owner = "mreiferson"; + repo = "go-snappystream"; + rev = "97c96e6648e99c2ce4fe7d169aa3f7368204e04d"; + sha256 = "08ylvx9r6b1fi76v6cqjvny4yqsvcqjfsg93jdrgs7hi4mxvxynn"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/servers/restund/default.nix b/pkgs/servers/restund/default.nix index e817151e778d..d6952e9700ee 100644 --- a/pkgs/servers/restund/default.nix +++ b/pkgs/servers/restund/default.nix @@ -24,5 +24,9 @@ stdenv.mkDerivation rec { platforms = with stdenv.lib.platforms; linux; maintainers = with stdenv.lib.maintainers; [raskin]; license = with stdenv.lib.licenses; bsd3; + inherit version; + downloadPage = "http://www.creytiv.com/pub/"; + updateWalker = true; + downloadURLRegexp = "/restund-.*[.]tar[.]"; }; } diff --git a/pkgs/servers/samba/default.nix b/pkgs/servers/samba/default.nix index ade79e2c99cd..08f12d975062 100644 --- a/pkgs/servers/samba/default.nix +++ b/pkgs/servers/samba/default.nix @@ -18,11 +18,11 @@ assert useKerberos -> kerberos != null; stdenv.mkDerivation rec { - name = "samba-3.6.22"; + name = "samba-3.6.24"; src = fetchurl { - url = "http://us3.samba.org/samba/ftp/stable/${name}.tar.gz"; - sha256 = "1sny3irf1p4fjli5qa29swr3l217grg90cva35rmay48fw7g5g9h"; + url = "http://samba.org/samba/ftp/stable/${name}.tar.gz"; + sha256 = "19rln8m1k359bz6dhmlv39kzyjg7p296dz4y4mq1jwrlnw2bvl0i"; }; buildInputs = [ readline pam openldap popt iniparser libunwind fam acl cups ] diff --git a/pkgs/servers/serfdom/default.nix b/pkgs/servers/serfdom/default.nix index 9274ba86a707..2c11372ee316 100644 --- a/pkgs/servers/serfdom/default.nix +++ b/pkgs/servers/serfdom/default.nix @@ -1,126 +1,30 @@ -{ stdenv, fetchurl, fetchgit, fetchhg, go, lib }: +{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: -let - goDeps = [ - { - dir = "github.com/hashicorp"; - name = "serf"; - rev = "c5b41a9d1d261135117a8d501d3293efade3cc74"; - sha256 = "a314d3c13fb370842a8f7c6650abfa907b51172a09c64f9184a240fab05b43df"; - fetcher = git; - } - { - dir = "github.com/armon"; - name = "go-metrics"; - rev = "e12c3591b520e819e8234bd585d592774f2b2ad5"; - sha256 = "79476efefb68876fcad7e71e76d95f4a7eece2cfcdc5a9c10f998af3178230ba"; - fetcher = git; - } - { - dir = "github.com/hashicorp"; - name = "logutils"; - rev = "8e0820fe7ac5eb2b01626b1d99df47c5449eb2d8"; - sha256 = "184lnn7x1v3xvj6zz1rg9s0252wkkd59kij2iyrrm7y80bym2jys"; - fetcher = git; - } - { - dir = "github.com/hashicorp"; - name = "memberlist"; - rev = "d5be01d1f4d75b086eba4ae808f2767c08cbbf73"; - sha256 = "4ab2b610d439e96c169d9caf9ac0e009d71d3ef9a2fd2c812870b71eb6b27dfc"; - fetcher = git; - } - { - dir = "github.com/ugorji"; - name = "go"; - rev = "71c2886f5a673a35f909803f38ece5810165097b"; - sha256 = "128853bcc5f114c300772cbce316b55e84206fa56705c5b9cc94c1693b11ee94"; - fetcher = git; - } - { - dir = "github.com/mitchellh"; - name = "cli"; - rev = "69f0b65ce53b27f729b1b807b88dc88007f41dd3"; - sha256 = "0hnnqd8vg5ca2hglkrj141ba2akdh7crl2lsrgz8d6ipw6asszx3"; - fetcher = git; - } - { - dir = "github.com/armon"; - name = "mdns"; - rev = "8be7e3ac4e941555169a99d01abcabd3c982d87a"; - sha256 = "87cd3a0ada3b094ee8fc4c4742158e0d051cde893da1ea320158a47d6254f69d"; - fetcher = git; - } - { - dir = "github.com/miekg"; - name = "dns"; - rev = "7ebb4c59b39d5984952a355086606dd91f6cfe86"; - sha256 = "8418ad2d27e607cef1dc0003471416294443e467f2de9df135e3a2ab411e2512"; - fetcher = git; - } - { - dir = "github.com/mitchellh"; - name = "mapstructure"; - rev = "57bb2fa7a7e00b26c80e4c4b0d4f15a210d94039"; - sha256 = "13lvd5vw8y6h5zl3samkrb7237kk778cky7k7ys1cm46mfd957zy"; - fetcher = git; - } - { - dir = "github.com/ryanuber"; - name = "columnize"; - rev = "d066e113d6e13232f45bda646a915dffeee7f1a4"; - sha256 = "2aaec396a223fc4b45117a595e74c0a874bd5cd9604c742b8c4747436b4721e9"; - fetcher = git; - } - { - dir = "code.google.com/p"; - name = "go.net"; - rev = "89dbba2db2d4"; - sha256 = "0168inai10nkdrz4g0rjlj8b5v34mv135v8bhyvh501vnqql50jn"; - fetcher = hg; - } - ]; - git = desc: fetchgit { url = "https://${desc.dir}/${desc.name}"; - inherit (desc) rev sha256; }; - hg = desc: fetchhg { url = "https://${desc.dir}/${desc.name}"; - tag = desc.rev; - inherit (desc) sha256; }; - createGoPathCmds = - lib.concatStrings - (map (desc: - let fetched = desc.fetcher desc; in '' - mkdir -p $GOPATH/src/${desc.dir} - ln -s ${fetched} $GOPATH/src/${desc.dir}/${desc.name} - '') goDeps); -in - stdenv.mkDerivation rec { - version = "0.5.0"; - name = "serfdom-${version}"; +stdenv.mkDerivation rec { + version = "0.6.2"; + name = "serfdom-${version}"; - src = fetchurl { - url = "https://github.com/hashicorp/serf/archive/v${version}.tar.gz"; - sha256 = "1p2cpkdx0gck1ypxc98im7gsv3275avpkizhsif3nxvl1xd8g1qp"; - }; + src = import ./deps.nix { + inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; + }; - buildInputs = [ go ]; + buildInputs = [ go ]; - buildPhase = '' - mkdir $TMPDIR/go - export GOPATH=$TMPDIR/go - ${createGoPathCmds} - go build -v -o bin/serf - ''; + buildPhase = '' + export GOPATH=$src + go build -v -o serf github.com/hashicorp/serf + ''; - installPhase = '' - mkdir -p $out/bin - cp bin/serf $out/bin - ''; + installPhase = '' + mkdir -p $out/bin + mv serf $out/bin/serf + ''; - meta = with stdenv.lib; { - description = "Serf is a service discovery and orchestration tool that is decentralized, highly available, and fault tolerant"; - homepage = http://www.serfdom.io/; - license = licenses.mpl20; - maintainers = [ maintainers.msackman ]; - platforms = platforms.linux; - }; - } + meta = with stdenv.lib; { + description = "A service discovery and orchestration tool that is decentralized, highly available, and fault tolerant"; + homepage = http://www.serfdom.io/; + license = licenses.mpl20; + maintainers = with maintainers; [ msackman cstrahan ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/servers/serfdom/deps.nix b/pkgs/servers/serfdom/deps.nix new file mode 100644 index 000000000000..b933c6088244 --- /dev/null +++ b/pkgs/servers/serfdom/deps.nix @@ -0,0 +1,185 @@ +{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: + +let + goDeps = [ + { + root = "code.google.com/p/go.net"; + src = fetchhg { + url = "http://code.google.com/p/go.net"; + rev = "134"; + sha256 = "1jycpgrfwgkfac60zjbx6babcz7sgyn9xgy6cr3l811j6k8r2pbv"; + }; + } + { + root = "code.google.com/p/go.text"; + src = fetchhg { + url = "http://code.google.com/p/go.text"; + rev = "85"; + sha256 = "1x8h6vq9g5gbi7iiwla6dkaaqqf7wmkdm4szj7wvzlsijf2x8dwr"; + }; + } + { + root = "github.com/armon/circbuf"; + src = fetchFromGitHub { + owner = "armon"; + repo = "circbuf"; + rev = "f092b4f207b6e5cce0569056fba9e1a2735cb6cf"; + sha256 = "06kwwdwa3hskdh6ws7clj1vim80dyc3ldim8k9y5qpd30x0avn5s"; + }; + } + { + root = "github.com/armon/go-metrics"; + src = fetchFromGitHub { + owner = "armon"; + repo = "go-metrics"; + rev = "02567bbc4f518a43853d262b651a3c8257c3f141"; + sha256 = "08fk3zmw0ywmdfp2qhrpv0vrk1y97hzqczrgr3y2yip3x8sr37ar"; + }; + } + { + root = "github.com/armon/mdns"; + src = fetchFromGitHub { + owner = "armon"; + repo = "mdns"; + rev = "70462deb060d44247356ee238ebafd7699ddcffe"; + sha256 = "0xkm3d0hsixdm1yrkx9c39723kfjkb3wvrzrmx3np9ylcwn6h5p5"; + }; + } + { + root = "github.com/hashicorp/go-syslog"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "go-syslog"; + rev = "ac3963b72ac367e48b1e68a831e62b93fb69091c"; + sha256 = "1r9s1gsa4azcs05gx1179ixk7qvrkrik3v92wr4s8gwm00m0gf81"; + }; + } + { + root = "github.com/hashicorp/logutils"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "logutils"; + rev = "8e0820fe7ac5eb2b01626b1d99df47c5449eb2d8"; + sha256 = "033rbkc066g657r0dnzysigjz2bs4biiz0kmiypd139d34jvslwz"; + }; + } + { + root = "github.com/hashicorp/memberlist"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "memberlist"; + rev = "17d39b695094be943bfb98442a80b082e6b9ac47"; + sha256 = "0nvgjnwmfqhv2wvr77d2q5mq1bfw4xbpil6wgyj4fyrmhsfzrv3g"; + }; + } + { + root = "github.com/hashicorp/serf"; + src = fetchFromGitHub { + owner = "hashicorp"; + repo = "serf"; + rev = "4232a3f7b52f755084caf6b2cc2789efa2948555"; + sha256 = "1hxxqrjz08882d205ylakhvvwciahiqdzkwi2a7zwrmx6sxna7sr"; + }; + } + { + root = "github.com/miekg/dns"; + src = fetchFromGitHub { + owner = "miekg"; + repo = "dns"; + rev = "fc67c4b981930a377f8a26a5a1f2c0ccd5dd1514"; + sha256 = "1csjmkx0gl34r4hmkhdbdxb0693f1p10yrjaj8f2jwli9p9sl4mg"; + }; + } + { + root = "github.com/mitchellh/cli"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "cli"; + rev = "8262fe3f76f0da53b5674eb35c8c6436430794c3"; + sha256 = "0pqkxh1q49kkxihggrfjs8174d927g4c5qqx00ggw8sqqsgrw6vn"; + }; + } + { + root = "github.com/mitchellh/mapstructure"; + src = fetchFromGitHub { + owner = "mitchellh"; + repo = "mapstructure"; + rev = "6fb2c832bcac61d01212ab1d172f7a14a8585b07"; + sha256 = "0mx855lwhv0rk461wmbnbzbpkhmq5p2ipmrm5bhzimagrr1w17hw"; + }; + } + { + root = "github.com/ryanuber/columnize"; + src = fetchFromGitHub { + owner = "ryanuber"; + repo = "columnize"; + rev = "785d943a7b6886e0bb2f139a60487b823dd8d9de"; + sha256 = "1h3sxzhiwz65vf3cvclirlf6zhdr97v01dpn5cmf3m09rxxpnp3f"; + }; + } + { + root = "github.com/ugorji/go"; + src = fetchFromGitHub { + owner = "ugorji"; + repo = "go"; + rev = "71c2886f5a673a35f909803f38ece5810165097b"; + sha256 = "157f24xnkhclrjwwa1b7lmpj112ynlbf7g1cfw0c657iqny5720j"; + }; + } + { + root = "github.com/ugorji/go-msgpack"; + src = fetchFromGitHub { + owner = "ugorji"; + repo = "go-msgpack"; + rev = "75092644046c5e38257395b86ed26c702dc95b92"; + sha256 = "1bmqi16bfiqw7qhb3d5hbh0dfzhx2bbq1g15nh2pxwxckwh80x98"; + }; + } + { + root = "github.com/vmihailenco/bufio"; + src = fetchFromGitHub { + owner = "vmihailenco"; + repo = "bufio"; + rev = "24e7e48f60fc2d9e99e43c07485d9fff42051e66"; + sha256 = "0x46qnf2f15v7m0j2dcb16raxjamk5rdc7hqwgyxfr1sqmmw3983"; + }; + } + { + root = "github.com/vmihailenco/msgpack"; + src = fetchFromGitHub { + owner = "vmihailenco"; + repo = "msgpack"; + rev = "20c1b88a6c7fc5432037439f4e8c582e236fb205"; + sha256 = "1dj5scpfhgnw0yrh0w6jlrb9d03halvsv4l3wgjhazrrimdqf0q0"; + }; + } + { + root = "launchpad.net/gocheck"; + src = fetchbzr { + url = "https://launchpad.net/gocheck"; + rev = "87"; + sha256 = "1y9fa2mv61if51gpik9isls48idsdz87zkm1p3my7swjdix7fcl0"; + }; + } + { + root = "launchpad.net/mgo"; + src = fetchbzr { + url = "https://launchpad.net/mgo"; + rev = "2"; + sha256 = "0h1dxzyx5c4r4gfnmjxv92hlhjxrgx9p4g53p4fhmz6x2fdglb0x"; + }; + } + ]; + +in + +stdenv.mkDerivation rec { + name = "go-deps"; + + buildCommand = + lib.concatStrings + (map (dep: '' + mkdir -p $out/src/`dirname ${dep.root}` + ln -s ${dep.src} $out/src/${dep.root} + '') goDeps); +} diff --git a/pkgs/shells/fish/default.nix b/pkgs/shells/fish/default.nix index e69c033cf404..adfe44b3bac1 100644 --- a/pkgs/shells/fish/default.nix +++ b/pkgs/shells/fish/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, ncurses, python27, which, groff, gettext, man_db, bc }: +{ stdenv, fetchurl, ncurses, python, which, groff, gettext, man_db, bc }: stdenv.mkDerivation rec { name = "fish-${version}"; @@ -12,8 +12,8 @@ stdenv.mkDerivation rec { buildInputs = [ ncurses ]; # Required binaries during execution - # Python27: Autocompletion generated from manpages and config editing - propagatedBuildInputs = [ python27 which groff gettext man_db bc ]; + # Python: Autocompletion generated from manpages and config editing + propagatedBuildInputs = [ python which groff gettext man_db bc ]; postInstall = '' sed -i "s|bc|${bc}/bin/bc|" "$out/share/fish/functions/seq.fish" diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix new file mode 100644 index 000000000000..7a8b85a8945f --- /dev/null +++ b/pkgs/tools/filesystems/ceph/default.nix @@ -0,0 +1,37 @@ +{stdenv, fetchgit, libatomic_ops, autoconf, automake, boost, btrfsProgs, cryptopp, curl, expat, + fcgi, fuse, gperftools, keyutils, leveldb, libaio, libedit, libtool, + libuuid, linuxHeaders, openssl, pkgconfig, python, snappy, which, xfsprogs, xz}: + +stdenv.mkDerivation rec { + baseName="ceph"; + version="0.79"; + name="${baseName}-${version}"; + buildInputs = [ + fuse linuxHeaders pkgconfig libatomic_ops autoconf automake boost btrfsProgs cryptopp expat + fcgi fuse gperftools keyutils leveldb libaio libedit libtool libuuid openssl pkgconfig + python snappy which xfsprogs.lib xz + ]; + + preConfigure = '' + ./autogen.sh + ''; + + installFlags = "DESTDIR=\${out}"; + + enableParallelBuilding = true; + src = fetchgit { + url = "https://github.com/ceph/ceph"; + rev = "4c2d73a5095f527c3a2168deb5fa54b3c8991a6e"; + sha256 = "0850m817wqqmw2qdnwm5jvbdgifzlc7kcd05jv526pdvmq1x92rf"; + }; + + meta = { + inherit version; + description = "Distributed storage system"; + maintainers = [ + stdenv.lib.maintainers.ak + ]; + platforms = with stdenv.lib.platforms; + linux; + }; +} diff --git a/pkgs/tools/filesystems/xfsprogs/default.nix b/pkgs/tools/filesystems/xfsprogs/default.nix index 400890e95f30..7c9cd05009d6 100644 --- a/pkgs/tools/filesystems/xfsprogs/default.nix +++ b/pkgs/tools/filesystems/xfsprogs/default.nix @@ -12,11 +12,26 @@ stdenv.mkDerivation rec { sed -i s,/bin/bash,`type -P bash`, install-sh ''; + outputs = ["out" "lib"]; + + postInstall = '' + (cd include; make install-dev) + # The make install-dev target is broken when --disable-shared + mkdir -p $lib/lib $lib/include + cp ./libhandle/.libs/libhandle.a \ + ./libxcmd/.libs/libxcmd.a \ + ./libxlog/.libs/libxlog.a \ + ./libxfs/.libs/libxfs.a $lib/lib + mv $out/include/* $lib/include + ''; + + enableParallelBuilding = true; + buildInputs = [ libtool gettext libuuid ]; configureFlags = "MAKE=make MSGFMT=msgfmt MSGMERGE=msgmerge XGETTEXT=xgettext ZIP=gzip AWK=gawk --disable-shared"; preConfigure = '' - configureFlags="$configureFlags root_sbindir=$out/sbin root_libdir=$out/lib" + configureFlags="$configureFlags root_sbindir=$out/sbin root_libdir=$lib/lib" ''; disableStatic = false; diff --git a/pkgs/tools/graphics/povray/default.nix b/pkgs/tools/graphics/povray/default.nix index 12f307ca9def..6272bdae7803 100644 --- a/pkgs/tools/graphics/povray/default.nix +++ b/pkgs/tools/graphics/povray/default.nix @@ -4,8 +4,8 @@ stdenv.mkDerivation { name = "povray-3.6"; src = fetchurl { - url = http://www.povray.org/redirect/www.povray.org/ftp/pub/povray/Official/Unix/povray-3.6.tar.bz2; - sha256 = "0wvsfgkybx28mj2p76nnsq9rdq50192g5qb7d0xk81s8skn7z2jf"; + url = http://www.povray.org/ftp/pub/povray/Old-Versions/Official-3.62/Unix/povray-3.6.tar.bz2; + sha256 = "4e8a7fecd44807343b6867e1f2440aa0e09613d6d69a7385ac48f4e5e7737a73"; }; # the installPhase wants to put files into $HOME. I let it put the files diff --git a/pkgs/tools/misc/gummiboot/default.nix b/pkgs/tools/misc/gummiboot/default.nix index 502d9044c5d1..2d0b0015f9dc 100644 --- a/pkgs/tools/misc/gummiboot/default.nix +++ b/pkgs/tools/misc/gummiboot/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, gnu-efi, unzip, pkgconfig, utillinux, libxslt, docbook_xsl, docbook_xml_dtd_42 }: stdenv.mkDerivation rec { - name = "gummiboot-43"; + name = "gummiboot-45"; buildInputs = [ gnu-efi pkgconfig libxslt utillinux ]; @@ -13,8 +13,8 @@ stdenv.mkDerivation rec { ]; src = fetchurl { - url = http://pkgs.fedoraproject.org/repo/pkgs/gummiboot/gummiboot-43.tar.xz/c9b46a3504a2f7e335404a1475818d98/gummiboot-43.tar.xz; - sha256 = "1hwaan3985ap9r5ncf9bykbaixbm0xn4x09silssngwfl2srn4iv"; + url = http://pkgs.fedoraproject.org/repo/pkgs/gummiboot/gummiboot-45.tar.xz/5d4957390e959cb9f325b87712ddd3f1/gummiboot-45.tar.xz; + md5 = "5d4957390e959cb9f325b87712ddd3f1"; }; meta = { diff --git a/pkgs/tools/misc/ngrok/default.nix b/pkgs/tools/misc/ngrok/default.nix index e517dba7c550..6435923b48a7 100644 --- a/pkgs/tools/misc/ngrok/default.nix +++ b/pkgs/tools/misc/ngrok/default.nix @@ -30,16 +30,16 @@ let url = "https://launchpad.net/goyaml"; sha256 = "03is37cgw62cha316xrs5h7q97im46ry5qldkfvbhimjq3ww0swj"; # Branch: "branch:lp:goyaml" - revision = 47; + rev = 47; }; log4go = fetchhg { url = "https://code.google.com/p/log4go/"; - tag = "c3294304d93f"; + rev = "c3294304d93f"; sha256 = "0q906sxrmwir295virfibqvdzlaj340qh2r4ysx1ccjrjazc0q5p"; }; osext = fetchhg { url = "https://bitbucket.org/kardianos/osext"; - tag = "364fb57"; + rev = "364fb57"; sha256 = "1w9x2zj716agfd5x5497ajb9nz3ljar74768vjidsyly143vzjws"; }; in stdenv.mkDerivation rec { diff --git a/pkgs/tools/networking/network-manager-applet/default.nix b/pkgs/tools/networking/network-manager-applet/default.nix index 352a908c1d7e..850981c5d338 100644 --- a/pkgs/tools/networking/network-manager-applet/default.nix +++ b/pkgs/tools/networking/network-manager-applet/default.nix @@ -2,7 +2,7 @@ , libnotify, libsecret, dbus_glib, polkit, isocodes, libgnome_keyring , mobile_broadband_provider_info, glib_networking, gsettings_desktop_schemas , makeWrapper, networkmanager_openvpn, networkmanager_vpnc -, networkmanager_openconnect, networkmanager_pptp, udev, hicolor_icon_theme }: +, networkmanager_openconnect, networkmanager_pptp, udev, hicolor_icon_theme, dconf }: let pn = "network-manager-applet"; @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { preFixup = '' wrapProgram "$out/bin/nm-applet" \ - --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \ + --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules:${dconf}/lib/gio/modules" \ --prefix XDG_DATA_DIRS : "${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH" \ --set GCONF_CONFIG_SOURCE "xml::~/.gconf" \ --prefix PATH ":" "${gnome3.gconf}/bin" diff --git a/pkgs/tools/package-management/cabal-install/1.20.0.2.nix b/pkgs/tools/package-management/cabal-install/1.20.0.3.nix index dba92ab9321b..ffcaee203b7d 100644 --- a/pkgs/tools/package-management/cabal-install/1.20.0.2.nix +++ b/pkgs/tools/package-management/cabal-install/1.20.0.3.nix @@ -5,8 +5,8 @@ cabal.mkDerivation (self: { pname = "cabal-install"; - version = "1.20.0.2"; - sha256 = "1nsc8qklhlg2xpaj7k158gg45rlrp7mn15zyfsgjpaqf3rjm9dl4"; + version = "1.20.0.3"; + sha256 = "050b9dc4khfc1fs283p1635zni25z4b55gi5ffwvg4mfpkrmdgfj"; isLibrary = false; isExecutable = true; buildDepends = [ diff --git a/pkgs/tools/package-management/nix-prefetch-scripts/default.nix b/pkgs/tools/package-management/nix-prefetch-scripts/default.nix index d7210b2f616b..84439136d49e 100644 --- a/pkgs/tools/package-management/nix-prefetch-scripts/default.nix +++ b/pkgs/tools/package-management/nix-prefetch-scripts/default.nix @@ -1,4 +1,4 @@ -{ stdenv, makeWrapper, git, subversion, mercurial, bazaar, cvs }: +{ stdenv, makeWrapper, git, subversion, mercurial, bazaar, cvs, unzip, curl, gnused }: stdenv.mkDerivation { name = "nix-prefetch-scripts"; @@ -11,9 +11,13 @@ stdenv.mkDerivation { function copyScript { local name=nix-prefetch-$1; local src=$2; - local exe=$3/bin; + local wrapArgs="" cp $src $out/bin/$name; - wrapProgram $out/bin/$name --suffix PATH : "$exe" + for dep in ''${@:3}; do + wrapArgs="$wrapArgs --prefix PATH : $dep/bin" + done + wrapArgs="$wrapArgs --prefix PATH : ${gnused}/bin" + wrapProgram $out/bin/$name $wrapArgs } copyScript "hg" ${../../../build-support/fetchhg/nix-prefetch-hg} ${mercurial} @@ -21,6 +25,7 @@ stdenv.mkDerivation { copyScript "svn" ${../../../build-support/fetchsvn/nix-prefetch-svn} ${subversion} copyScript "bzr" ${../../../build-support/fetchbzr/nix-prefetch-bzr} ${bazaar} copyScript "cvs" ${../../../build-support/fetchcvs/nix-prefetch-cvs} ${cvs} + copyScript "zip" ${../../../build-support/fetchzip/nix-prefetch-zip} ${unzip} ${curl} ''; meta = with stdenv.lib; { @@ -30,4 +35,4 @@ stdenv.mkDerivation { # Quicker to build than to download, I hope hydraPlatforms = []; }; -} \ No newline at end of file +} diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix index f61b9eb818ae..b81ab7cad424 100644 --- a/pkgs/tools/package-management/nix/unstable.nix +++ b/pkgs/tools/package-management/nix/unstable.nix @@ -14,7 +14,9 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ perl pkgconfig ]; - buildInputs = [ curl openssl boehmgc sqlite ]; + buildInputs = [ curl openssl sqlite ]; + + propagatedBuildInputs = [ boehmgc ]; # Note: bzip2 is not passed as a build input, because the unpack phase # would end up using the wrong bzip2 when cross-compiling. diff --git a/pkgs/tools/security/ecryptfs/default.nix b/pkgs/tools/security/ecryptfs/default.nix index d1ed6f420ec3..13046aa0b2d1 100644 --- a/pkgs/tools/security/ecryptfs/default.nix +++ b/pkgs/tools/security/ecryptfs/default.nix @@ -1,18 +1,37 @@ -{stdenv, fetchurl, fuse, python, perl, keyutils, pam, nss, nspr}: +{ stdenv, fetchurl, pkgconfig, perl, keyutils, nss, nspr, python, pam +, intltool, makeWrapper, coreutils, gettext, cryptsetup, lvm2, rsync, which }: + stdenv.mkDerivation { - name = "ecryptfs-82"; + name = "ecryptfs-104"; src = fetchurl { - url = http://launchpad.net/ecryptfs/trunk/82/+download/ecryptfs-utils_82.orig.tar.gz; - sha256 = "1w3swispgp71prz8h56hqby2wwnvam5vllqvc69rn8cf605i69a6"; + url = http://launchpad.net/ecryptfs/trunk/104/+download/ecryptfs-utils_104.orig.tar.gz; + sha256 = "0f3lzpjw97vcdqzzgii03j3knd6pgwn1y0lpaaf46iidaiv0282a"; }; - NIX_CFLAGS_COMPILE = "-I${nspr}/include/nspr -I${nss}/include/nss"; + buildInputs = [ pkgconfig perl nss nspr python pam intltool makeWrapper ]; + propagatedBuildInputs = [ coreutils gettext cryptsetup lvm2 rsync keyutils which ]; - buildInputs = [ python perl keyutils pam nss nspr ]; + postInstall = '' + FILES="$(grep -r '/bin/sh' $out/bin | sed 's,:.*,,' | uniq)" + for file in $FILES; do + sed -i $file -e "s,\(/sbin/u\?mount.ecryptfs\(_private\)\?\),$out\1," \ + -e "s,\(/sbin/cryptsetup\),${cryptsetup}\1," \ + -e "s,\(/sbin/dmsetup\),${lvm2}\1," \ + -e 's,/sbin/\(unix_chkpwd\),\1,' + wrapProgram $file \ + --prefix PATH ":" "${coreutils}/bin" \ + --prefix PATH ":" "${gettext}/bin" \ + --prefix PATH ":" "${rsync}/bin" \ + --prefix PATH ":" "${keyutils}/bin" \ + --prefix PATH ":" "${which}/bin" \ + --prefix PATH ":" "$out/bin" + done + ''; - meta = { + meta = with stdenv.lib; { description = "Enterprise-class stacked cryptographic filesystem"; - license = "GPLv2+"; + license = licenses.gpl2Plus; + platforms = platforms.linux; }; } diff --git a/pkgs/tools/security/gnupg/default.nix b/pkgs/tools/security/gnupg/default.nix index f242c3f323ae..9b8d33b6b696 100644 --- a/pkgs/tools/security/gnupg/default.nix +++ b/pkgs/tools/security/gnupg/default.nix @@ -13,11 +13,11 @@ assert useUsb -> (libusb != null); assert useCurl -> (curl != null); stdenv.mkDerivation rec { - name = "gnupg-2.0.22"; + name = "gnupg-2.0.24"; src = fetchurl { url = "mirror://gnupg/gnupg/${name}.tar.bz2"; - sha256 = "0lg210acj2rxq291q4cwamg9gx6gh2prb1xa93y5jhw5b6r0lza3"; + sha256 = "0ch2hbindk832cy7ca00a7whw84ndm0nhqrl24a5fw4ldkca2x6r"; }; buildInputs diff --git a/pkgs/tools/security/gnupg1/default.nix b/pkgs/tools/security/gnupg1/default.nix index 362ec3a25bbd..a25ae35b6cc9 100644 --- a/pkgs/tools/security/gnupg1/default.nix +++ b/pkgs/tools/security/gnupg1/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, readline, bzip2 }: stdenv.mkDerivation rec { - name = "gnupg-1.4.16"; + name = "gnupg-1.4.17"; src = fetchurl { url = "mirror://gnupg/gnupg/${name}.tar.bz2"; - sha256 = "0bsa1yqa3ybhvmc4ys73amdpcmckrlq1fsxjl2980cxada778fvv"; + sha256 = "0nvv1bd8v13gh2m1429azws7ks0ix9y1yv87ak9k9i1dsqcrvpg6"; }; buildInputs = [ readline bzip2 ]; diff --git a/pkgs/tools/security/meo/default.nix b/pkgs/tools/security/meo/default.nix index 820919d1a2ef..2dfdf466c28a 100644 --- a/pkgs/tools/security/meo/default.nix +++ b/pkgs/tools/security/meo/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation { src = fetchhg { url = http://oss.stamfest.net/hg/meo; - tag = "b48e5f16cff8"; + rev = "b48e5f16cff8"; sha256 = "0ifg7y28s89i9gwda6fyj1jbrykbcvq8bf1m6rxmdcv5afi3arbq"; }; diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix index b4c2d7f1c1fa..ab46af5a1cd9 100644 --- a/pkgs/tools/security/sudo/default.nix +++ b/pkgs/tools/security/sudo/default.nix @@ -11,39 +11,43 @@ stdenv.mkDerivation rec { sha256 = "002l6h27pnhb77b65frhazbhknsxvrsnkpi43j7i0qw1lrgi7nkf"; }; - postConfigure = '' - cat >> pathnames.h <<EOF - #undef _PATH_SUDO_LOGFILE - #define _PATH_SUDO_LOGFILE "/var/log/sudo.log" - #undef _PATH_SUDO_TIMEDIR - #define _PATH_SUDO_TIMEDIR "/run/sudo" - #undef _PATH_VI - #define _PATH_VI "/run/current-system/sw/bin/nano" - #undef _PATH_MV - #define _PATH_MV "${coreutils}/bin/mv" + configureFlags = [ + "--with-env-editor" + "--with-editor=/run/current-system/sw/bin/nano" + "--with-rundir=/var/run" + "--with-vardir=/var/db/sudo" + "--with-logpath=/var/log/sudo.log" + ]; + + postConfigure = + '' + cat >> pathnames.h <<'EOF' + #undef _PATH_MV + #define _PATH_MV "${coreutils}/bin/mv" EOF - makeFlags="install_uid=$(id -u) install_gid=$(id -g)" - installFlags="sudoers_uid=$(id -u) sudoers_gid=$(id -g) sysconfdir=$out/etc timedir=$TMPDIR/dummy" - ''; + installFlags="sudoers_uid=$(id -u) sudoers_gid=$(id -g) sysconfdir=$out/etc rundir=$TMPDIR/dummy vardir=$TMPDIR/dummy" + ''; buildInputs = [ coreutils pam groff ]; enableParallelBuilding = true; - postInstall = '' - rm $out/share/doc/sudo/ChangeLog - ''; + postInstall = + '' + rm -f $out/share/doc/sudo/ChangeLog + ''; meta = { description = "A command to run commands as root"; - longDescription = '' + longDescription = + '' Sudo (su "do") allows a system administrator to delegate authority to give certain users (or groups of users) the ability to run some (or all) commands as root or another user while providing an audit trail of the commands and their arguments. - ''; + ''; homepage = http://www.sudo.ws/; diff --git a/pkgs/tools/system/storebrowse/default.nix b/pkgs/tools/system/storebrowse/default.nix index a997e38ba4a3..ccb0f26e4358 100644 --- a/pkgs/tools/system/storebrowse/default.nix +++ b/pkgs/tools/system/storebrowse/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { # This source has license BSD srcGoSqlite = fetchhg { url = "https://code.google.com/p/gosqlite/"; - tag = "5baefb109e18"; + rev = "5baefb109e18"; sha256 = "0mqfnx06jj15cs8pq9msny2z18x99hgk6mchnaxpg343nzdiz4zk"; }; diff --git a/pkgs/tools/system/syslog-ng/default.nix b/pkgs/tools/system/syslog-ng/default.nix index cbffd8648d47..9102482d3d63 100644 --- a/pkgs/tools/system/syslog-ng/default.nix +++ b/pkgs/tools/system/syslog-ng/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, eventlog, pkgconfig, glib, python }: +{ stdenv, fetchurl, eventlog, pkgconfig, glib, python, systemd, perl }: stdenv.mkDerivation { name = "syslog-ng-3.5.4.1"; @@ -8,8 +8,13 @@ stdenv.mkDerivation { sha256 = "0rkgrmnyx1x6m3jw5n49k7r1dcg79lxh900g74rgvd3j86g9dilj"; }; - buildInputs = [ eventlog pkgconfig glib python ]; - configureFlags = "--enable-dynamic-linking"; + buildInputs = [ eventlog pkgconfig glib python systemd perl ]; + + configureFlags = [ + "--enable-dynamic-linking" + "--enable-systemd" + "--with-systemdsystemunitdir=$(out)/etc/systemd/system" + ]; meta = { homepage = "http://www.balabit.com/network-security/syslog-ng/"; diff --git a/pkgs/tools/text/diffstat/default.nix b/pkgs/tools/text/diffstat/default.nix index 94c2df9aabe0..e70dfaedddf5 100644 --- a/pkgs/tools/text/diffstat/default.nix +++ b/pkgs/tools/text/diffstat/default.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { ''; homepage = http://invisible-island.net/diffstat/; license = licenses.mit; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = [ maintainers.bjornfor ]; }; } diff --git a/pkgs/tools/typesetting/djvu2pdf/default.nix b/pkgs/tools/typesetting/djvu2pdf/default.nix new file mode 100644 index 000000000000..c7729ac676f8 --- /dev/null +++ b/pkgs/tools/typesetting/djvu2pdf/default.nix @@ -0,0 +1,28 @@ +{stdenv, fetchurl, pkgconfig, djvulibre, ghostscript }: + +stdenv.mkDerivation rec { + version = "0.9.2"; + name = "djvu2pdf-${version}"; + + src = fetchurl { + url = "http://0x2a.at/site/projects/djvu2pdf/djvu2pdf-${version}.tar.gz"; + sha256 = "0v2ax30m7j1yi4m02nzn9rc4sn4vzqh5vywdh96r64j4pwvn5s5g"; + }; + + buildInputs = [ pkgconfig ]; + propagatedUserEnvPkgs = [ djvulibre ghostscript ]; + + installPhase = '' + ensureDir $out/bin + cp -p djvu2pdf $out/bin + ensureDir $out/man/man1 + cp -p djvu2pdf.1.gz $out/man/man1 + ''; + + meta = { + description = "Creates djvu files from PDF files"; + homepage = http://0x2a.at/s/projects/djvu2pdf; + license = stdenv.lib.licenses.gpl2; + inherit version; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d61c789cb4f0..bd5bb4f1832f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -320,6 +320,8 @@ let fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or {}); + packer = callPackage ../development/tools/packer { }; + fetchpatch = callPackage ../build-support/fetchpatch { }; fetchsvn = import ../build-support/fetchsvn { @@ -726,6 +728,8 @@ let cdrkit = callPackage ../tools/cd-dvd/cdrkit { }; + ceph = callPackage ../tools/filesystems/ceph { }; + cfdg = builderDefsPackage ../tools/graphics/cfdg { inherit libpng bison flex ffmpeg; }; @@ -1594,7 +1598,7 @@ let networkmanager_openconnect = callPackage ../tools/networking/network-manager/openconnect.nix { }; - networkmanagerapplet = newScope gnome ../tools/networking/network-manager-applet { }; + networkmanagerapplet = newScope gnome ../tools/networking/network-manager-applet { dconf = gnome3.dconf; }; newsbeuter = callPackage ../applications/networking/feedreaders/newsbeuter { }; @@ -2474,7 +2478,9 @@ let dash = callPackage ../shells/dash { }; - fish = callPackage ../shells/fish { }; + fish = callPackage ../shells/fish { + python = python27Full; + }; tcsh = callPackage ../shells/tcsh { }; @@ -2971,6 +2977,8 @@ let go = go_1_3; + gox = callPackage ../development/compilers/go/gox.nix { }; + gprolog = callPackage ../development/compilers/gprolog { }; gwt240 = callPackage ../development/compilers/gwt/2.4.0.nix { }; @@ -3012,7 +3020,7 @@ let jdk = if stdenv.isDarwin || stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" then pkgs.openjdk else pkgs.oraclejdk; - jre = if stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" + jre = if stdenv.isDarwin || stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" then pkgs.openjre else pkgs.oraclejre; @@ -3020,10 +3028,14 @@ let oraclejdk7 = pkgs.oraclejdk7distro true false; + oraclejdk8 = pkgs.oraclejdk8distro true false; + oraclejre = lowPrio (pkgs.jdkdistro false false); oraclejre7 = lowPrio (pkgs.oraclejdk7distro false false); + oraclejre8 = lowPrio (pkgs.oraclejdk8distro false false); + jrePlugin = lowPrio (pkgs.jdkdistro false true); supportsJDK = @@ -3040,6 +3052,11 @@ let (if pluginSupport then appendToName "with-plugin" else x: x) (callPackage ../development/compilers/jdk/jdk7-linux.nix { inherit installjdk; }); + oraclejdk8distro = installjdk: pluginSupport: + assert supportsJDK; + (if pluginSupport then appendToName "with-plugin" else x: x) + (callPackage ../development/compilers/jdk/jdk8-linux.nix { inherit installjdk; }); + jikes = callPackage ../development/compilers/jikes { }; juliaGit = callPackage ../development/compilers/julia/git-20131013.nix { @@ -3162,6 +3179,8 @@ let ocaml_cairo = callPackage ../development/ocaml-modules/ocaml-cairo { }; + cppo = callPackage ../development/tools/ocaml/cppo { }; + cryptokit = callPackage ../development/ocaml-modules/cryptokit { }; deriving = callPackage ../development/tools/ocaml/deriving { }; @@ -3278,8 +3297,8 @@ let rust = callPackage ../development/compilers/rust {}; - sbcl = builderDefsPackage (import ../development/compilers/sbcl) { - inherit makeWrapper; + sbclBootstrap = callPackage ../development/compilers/sbcl/bootstrap.nix {}; + sbcl = callPackage ../development/compilers/sbcl { clisp = clisp_2_44_1; }; @@ -3290,6 +3309,7 @@ let sdcc = callPackage ../development/compilers/sdcc { }; + smlnjBootstrap = callPackage ../development/compilers/smlnj/bootstrap.nix { }; smlnj = callPackage_i686 ../development/compilers/smlnj { }; stalin = callPackage ../development/compilers/stalin { }; @@ -3435,6 +3455,7 @@ let lua5 = lua5_1; lua5_sockets = callPackage ../development/interpreters/lua-5/sockets.nix {}; + lua5_expat = callPackage ../development/interpreters/lua-5/expat.nix {}; luarocks = callPackage ../development/tools/misc/luarocks { lua = lua5; @@ -3483,6 +3504,8 @@ let fetchurl = fetchurlBoot; }; + perl520 = callPackage ../development/interpreters/perl/5.20 { }; + perl = if system != "i686-cygwin" then perl516 else sysPerl; php = php54; @@ -4605,6 +4628,15 @@ let ln -s $glibc32/lib $out/lib/32 ln -s lib $out/lib64 + # fixing ldd RLTDLIST + rm $out/bin + cp -rs $glibc64/bin $out + chmod u+w $out/bin + rm $out/bin/ldd + sed -e "s|^RTLDLIST=.*$|RTLDLIST=\"$out/lib/ld-2.19.so $out/lib/32/ld-linux.so.2\"|g" \ + $glibc64/bin/ldd > $out/bin/ldd + chmod 555 $out/bin/ldd + rm $out/include cp -rs $glibc32/include $out chmod -R u+w $out/include @@ -4616,6 +4648,8 @@ let glog = callPackage ../development/libraries/glog { }; + gloox = callPackage ../development/libraries/gloox { }; + glpk = callPackage ../development/libraries/glpk { }; glsurf = callPackage ../applications/science/math/glsurf { @@ -4949,6 +4983,8 @@ let libassuan2_1 = callPackage ../development/libraries/libassuan/git.nix { }; + libatomic_ops = callPackage ../development/libraries/libatomic_ops {}; + libav = libav_10; libav_all = callPackage ../development/libraries/libav { }; inherit (libav_all) libav_0_8 libav_9 libav_10; @@ -5081,6 +5117,9 @@ let liblscp = callPackage ../development/libraries/liblscp { }; + libe-book = callPackage ../development/libraries/libe-book {}; + libe-book_00 = callPackage ../development/libraries/libe-book/0.0.nix {}; + libev = builderDefsPackage ../development/libraries/libev { }; libevent14 = callPackage ../development/libraries/libevent/1.4.nix { }; @@ -5179,6 +5218,8 @@ let libresample = callPackage ../development/libraries/libresample {}; + librevenge = callPackage ../development/libraries/librevenge {}; + librevisa = callPackage ../development/libraries/librevisa { }; libsamplerate = callPackage ../development/libraries/libsamplerate { @@ -5287,6 +5328,9 @@ let libmusicbrainz = libmusicbrainz3; + libmwaw = callPackage ../development/libraries/libmwaw { }; + libmwaw_02 = callPackage ../development/libraries/libmwaw/0.2.nix { }; + libmx = callPackage ../development/libraries/libmx { }; libnet = callPackage ../development/libraries/libnet { }; @@ -5303,6 +5347,8 @@ let libnxml = callPackage ../development/libraries/libnxml { }; + libodfgen = callPackage ../development/libraries/libodfgen { }; + libofa = callPackage ../development/libraries/libofa { }; libofx = callPackage ../development/libraries/libofx { }; @@ -5680,6 +5726,10 @@ let newt = callPackage ../development/libraries/newt { }; + nix-plugins = callPackage ../development/libraries/nix-plugins { + nix = pkgs.nixUnstable; + }; + nspr = callPackage ../development/libraries/nspr { }; nss = lowPrio (callPackage ../development/libraries/nss { }); @@ -5690,6 +5740,8 @@ let ntrack = callPackage ../development/libraries/ntrack { }; + nvidia-texture-tools = callPackage ../development/libraries/nvidia-texture-tools { }; + ode = builderDefsPackage (import ../development/libraries/ode) { }; ogre = callPackage ../development/libraries/ogre {}; @@ -5748,6 +5800,8 @@ let ffmpeg = ffmpeg_0_10; }; + openspades = callPackage ../games/openspades {}; + openssl = callPackage ../development/libraries/openssl { fetchurl = fetchurlBoot; cryptodevHeaders = linuxPackages.cryptodev.override { @@ -6631,12 +6685,16 @@ let dovecot_pigeonhole = callPackage ../servers/mail/dovecot-pigeonhole { }; + etcd = callPackage ../servers/etcd { }; + ejabberd = callPackage ../servers/xmpp/ejabberd { erlang = erlangR16; }; elasticmq = callPackage ../servers/elasticmq { }; + etcdctl = callPackage ../development/tools/etcdctl { }; + fcgiwrap = callPackage ../servers/fcgiwrap { }; felix = callPackage ../servers/felix { }; @@ -6648,6 +6706,8 @@ let firebird = callPackage ../servers/firebird { icu = null; }; firebirdSuper = callPackage ../servers/firebird { superServer = true; }; + fleet = callPackage ../servers/fleet { }; + freepops = callPackage ../servers/mail/freepops { }; freeswitch = callPackage ../servers/sip/freeswitch { }; @@ -6708,8 +6768,12 @@ let ngircd = callPackage ../servers/irc/ngircd { }; + nix-binary-cache = callPackage ../servers/http/nix-binary-cache {}; + nsd = callPackage ../servers/dns/nsd { }; + nsq = callPackage ../servers/nsq { }; + opensmtpd = callPackage ../servers/mail/opensmtpd { }; petidomo = callPackage ../servers/mail/petidomo { }; @@ -7103,6 +7167,8 @@ let ifplugd = callPackage ../os-specific/linux/ifplugd { }; + iomelt = callPackage ../os-specific/linux/iomelt { }; + iotop = callPackage ../os-specific/linux/iotop { }; iproute = callPackage ../os-specific/linux/iproute { }; @@ -7215,15 +7281,6 @@ let ]; }; - linux_3_13 = makeOverridable (import ../os-specific/linux/kernel/linux-3.13.nix) { - inherit fetchurl stdenv perl buildLinux; - kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; - }; - linux_3_14 = makeOverridable (import ../os-specific/linux/kernel/linux-3.14.nix) { inherit fetchurl stdenv perl buildLinux; kernelPatches = lib.optionals ((platform.kernelArch or null) == "mips") @@ -7388,7 +7445,6 @@ let linuxPackages_3_10 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_10 linuxPackages_3_10); linuxPackages_3_10_tuxonice = linuxPackagesFor pkgs.linux_3_10_tuxonice linuxPackages_3_10_tuxonice; linuxPackages_3_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_12 linuxPackages_3_12); - linuxPackages_3_13 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_13 linuxPackages_3_13); linuxPackages_3_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_14 linuxPackages_3_14); linuxPackages_3_15 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_15 linuxPackages_3_15); linuxPackages_testing = recurseIntoAttrs (linuxPackagesFor pkgs.linux_testing linuxPackages_testing); @@ -7481,6 +7537,8 @@ let numactl = callPackage ../os-specific/linux/numactl { }; + gocode = callPackage ../development/tools/gocode { }; + gogoclient = callPackage ../os-specific/linux/gogoclient { }; nss_ldap = callPackage ../os-specific/linux/nss_ldap { }; @@ -7843,8 +7901,14 @@ let inconsolata = callPackage ../data/fonts/inconsolata {}; + ipafont = callPackage ../data/fonts/ipafont {}; + junicode = callPackage ../data/fonts/junicode { }; + kochi-substitute = callPackage ../data/fonts/kochi-substitute {}; + + kochi-substitute-naga10 = callPackage ../data/fonts/kochi-substitute-naga10 {}; + liberation_ttf = callPackage ../data/fonts/redhat-liberation-fonts { }; libertine = builderDefsPackage (import ../data/fonts/libertine) { @@ -8065,6 +8129,8 @@ let calibre = callPackage ../applications/misc/calibre { }; + camlistore = callPackage ../applications/misc/camlistore { }; + carrier = builderDefsPackage (import ../applications/networking/instant-messengers/carrier/2.5.0.nix) { inherit fetchurl stdenv pkgconfig perl perlXMLParser libxml2 openssl nss gtkspell aspell gettext ncurses avahi dbus dbus_glib python @@ -8188,6 +8254,8 @@ let djvulibre = callPackage ../applications/misc/djvulibre { }; + djvu2pdf = callPackage ../tools/typesetting/djvu2pdf { }; + djview = callPackage ../applications/graphics/djview { }; djview4 = pkgs.djview; @@ -8212,7 +8280,7 @@ let dvdauthor = callPackage ../applications/video/dvdauthor { }; - dwb = callPackage ../applications/networking/browsers/dwb { }; + dwb = callPackage ../applications/networking/browsers/dwb { dconf = gnome3.dconf; }; dwm = callPackage ../applications/window-managers/dwm { patches = config.dwm.patches or []; @@ -8542,6 +8610,13 @@ let firefoxWrapper = wrapFirefox { browser = firefoxPkgs.firefox; }; + firefox-bin = callPackage ../applications/networking/browsers/firefox-bin { + gconf = pkgs.gnome.GConf; + inherit (pkgs.gnome) libgnome libgnomeui; + inherit (pkgs.xlibs) libX11 libXScrnSaver libXext + libXinerama libXrender libXt; + }; + flac = callPackage ../applications/audio/flac { }; flashplayer = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-11 { @@ -8607,6 +8682,8 @@ let python = python27; }; + gitolite = callPackage ../applications/version-management/gitolite { }; + inherit (gnome3) gitg; giv = callPackage ../applications/graphics/giv { @@ -8924,7 +9001,7 @@ let inherit (perlPackages) ArchiveZip CompressZlib; inherit (gnome) GConf ORBit2 gnome_vfs; zip = zip.override { enableNLS = false; }; - boost = boost149; + boost = boost155; jdk = openjdk; fontsConf = makeFontsConf { fontDirectories = [ @@ -8933,7 +9010,9 @@ let }; clucene_core = clucene_core_2; lcms = lcms2; - mdds = mdds_0_7_1; + harfbuzz = harfbuzz.override { + withIcu = true; withGraphite2 = true; + }; }; liferea = callPackage ../applications/networking/newsreaders/liferea { }; @@ -9417,9 +9496,7 @@ let siproxd = callPackage ../applications/networking/siproxd { }; - skype = callPackage_i686 ../applications/networking/instant-messengers/skype { - usePulseAudio = config.pulseaudio or true; - }; + skype = callPackage_i686 ../applications/networking/instant-messengers/skype { }; skype4pidgin = callPackage ../applications/networking/instant-messengers/pidgin-plugins/skype4pidgin { }; @@ -9618,6 +9695,8 @@ let toxic = callPackage ../applications/networking/instant-messengers/toxic { }; + transcode = callPackage ../applications/audio/transcode { }; + transmission = callPackage ../applications/networking/p2p/transmission { }; transmission_gtk = transmission.override { enableGTK3 = true; }; @@ -9999,9 +10078,7 @@ let blackshadeselite = callPackage ../games/blackshadeselite { }; - blobby = callPackage ../games/blobby { - boost = boost149; - }; + blobby = callPackage ../games/blobby { }; bsdgames = callPackage ../games/bsdgames { }; @@ -10317,6 +10394,7 @@ let keen4 = callPackage ../games/keen4 { }; + zeroad = callPackage ../games/0ad { }; ### DESKTOP ENVIRONMENTS @@ -10712,6 +10790,12 @@ let tptp = callPackage ../applications/science/logic/tptp {}; + twelf = callPackage ../applications/science/logic/twelf { + smlnj = if stdenv.isDarwin + then smlnjBootstrap + else smlnj; + }; + verifast = callPackage ../applications/science/logic/verifast {}; why3 = callPackage ../applications/science/logic/why3 {}; diff --git a/pkgs/top-level/haskell-defaults.nix b/pkgs/top-level/haskell-defaults.nix index a770cbdda8f7..ba785f3ef555 100644 --- a/pkgs/top-level/haskell-defaults.nix +++ b/pkgs/top-level/haskell-defaults.nix @@ -15,13 +15,13 @@ # Older compilers inherit the overrides from newer ones. ghcHEADPrefs = self : super : super // { - cabalInstall_1_20_0_2 = super.cabalInstall_1_20_0_2.override { Cabal = null; }; + cabalInstall_1_20_0_3 = super.cabalInstall_1_20_0_3.override { Cabal = null; }; mtl = self.mtl_2_2_1; transformersCompat = super.transformersCompat_0_3_3; }; ghc782Prefs = self : super : ghcHEADPrefs self super // { - cabalInstall_1_20_0_2 = super.cabalInstall_1_20_0_2.override { Cabal = self.Cabal_1_20_0_1; }; + cabalInstall_1_20_0_3 = super.cabalInstall_1_20_0_3.override { Cabal = self.Cabal_1_20_0_1; }; codex = super.codex.override { hackageDb = super.hackageDb.override { Cabal = self.Cabal_1_20_0_1; }; }; mtl = self.mtl_2_1_2; }; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 608108a18474..560b0b77ce68 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -437,7 +437,9 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in compactStringFix = callPackage ../development/libraries/haskell/compact-string-fix {}; - compdata = callPackage ../development/libraries/haskell/compdata {}; + compdata = if (pkgs.stdenv.lib.versionOlder "7.8" ghc.version) + then callPackage ../development/libraries/haskell/compdata {} + else null; composition = callPackage ../development/libraries/haskell/composition {}; @@ -587,6 +589,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in deepseq_1_3_0_2 = callPackage ../development/libraries/haskell/deepseq/1.3.0.2.nix {}; deepseq = null; # core package since ghc >= 7.4.x + deepseqGenerics = callPackage ../development/libraries/haskell/deepseq-generics {}; + deepseqTh = callPackage ../development/libraries/haskell/deepseq-th {}; derive = callPackage ../development/libraries/haskell/derive {}; @@ -636,7 +640,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in directoryTree = callPackage ../development/libraries/haskell/directory-tree {}; distributedStatic = callPackage ../development/libraries/haskell/distributed-static {}; - + distributedProcess = callPackage ../development/libraries/haskell/distributed-process {}; distributive = callPackage ../development/libraries/haskell/distributive {}; @@ -799,6 +803,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in foldl = callPackage ../development/libraries/haskell/foldl {}; + folds = callPackage ../development/libraries/haskell/folds {}; + forceLayout = callPackage ../development/libraries/haskell/force-layout {}; free = callPackage ../development/libraries/haskell/free {}; @@ -1066,6 +1072,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in HaXml = callPackage ../development/libraries/haskell/HaXml {}; + hdaemonize = callPackage ../development/libraries/haskell/hdaemonize {}; + HDBC = callPackage ../development/libraries/haskell/HDBC/HDBC.nix {}; HDBCOdbc = callPackage ../development/libraries/haskell/HDBC/HDBC-odbc.nix { @@ -1280,6 +1288,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in preprocessorTools = self.preprocessorTools_0_1_3; }; + ixset = callPackage ../development/libraries/haskell/ixset {}; + ixShapable = callPackage ../development/libraries/haskell/ix-shapable {}; jack = callPackage ../development/libraries/haskell/jack {}; @@ -1466,6 +1476,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in monadloc = callPackage ../development/libraries/haskell/monadloc {}; + monadlocPp = callPackage ../development/libraries/haskell/monadloc-pp {}; + monadLoops = callPackage ../development/libraries/haskell/monad-loops {}; monadLogger = callPackage ../development/libraries/haskell/monad-logger {}; @@ -1960,6 +1972,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in setlocale = callPackage ../development/libraries/haskell/setlocale {}; + shellmate = callPackage ../development/libraries/haskell/shellmate {}; + shelly_0_15_4_1 = callPackage ../development/libraries/haskell/shelly/0.15.4.1.nix {}; shelly_1_5_3_1 = callPackage ../development/libraries/haskell/shelly {}; shelly = self.shelly_1_5_3_1; @@ -2080,6 +2094,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in SHA = callPackage ../development/libraries/haskell/SHA {}; + SHA2 = callPackage ../development/libraries/haskell/SHA2 {}; + shake = callPackage ../development/libraries/haskell/shake {}; shakespeare = callPackage ../development/libraries/haskell/shakespeare {}; @@ -2160,6 +2176,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in TableAlgebra = callPackage ../development/libraries/haskell/TableAlgebra {}; + tables = callPackage ../development/libraries/haskell/tables {}; + tabular = callPackage ../development/libraries/haskell/tabular {}; tagged = callPackage ../development/libraries/haskell/tagged {}; @@ -2462,6 +2480,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in wcwidth = callPackage ../development/libraries/haskell/wcwidth {}; + webdriver = callPackage ../development/libraries/haskell/webdriver {}; + webRoutes = callPackage ../development/libraries/haskell/web-routes {}; webRoutesBoomerang = callPackage ../development/libraries/haskell/web-routes-boomerang {}; @@ -2547,6 +2567,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in xssSanitize = callPackage ../development/libraries/haskell/xss-sanitize {}; + Yampa = callPackage ../development/libraries/haskell/Yampa {}; + yaml = callPackage ../development/libraries/haskell/yaml {}; yamlLight = callPackage ../development/libraries/haskell/yaml-light {}; @@ -2785,9 +2807,10 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in cabalDelete = callPackage ../development/tools/haskell/cabal-delete {}; cabalBounds = callPackage ../development/tools/haskell/cabal-bounds { - Cabal = if pkgs.stdenv.lib.versionOlder "7.7" ghc.version - then null - else self.Cabal_1_18_1_3; + Cabal = self.Cabal_1_20_0_1; + cabalLenses = self.cabalLenses.override { + Cabal = self.Cabal_1_20_0_1; + }; }; cabalMeta = callPackage ../development/tools/haskell/cabal-meta {}; @@ -2803,11 +2826,13 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in cabalInstall_0_14_0 = callPackage ../tools/package-management/cabal-install/0.14.0.nix {}; cabalInstall_1_16_0_2 = callPackage ../tools/package-management/cabal-install/1.16.0.2.nix { Cabal = self.Cabal_1_16_0_3; }; cabalInstall_1_18_0_3 = callPackage ../tools/package-management/cabal-install/1.18.0.3.nix { Cabal = self.Cabal_1_18_1_3; }; - cabalInstall_1_20_0_2 = callPackage ../tools/package-management/cabal-install/1.20.0.2.nix { Cabal = self.Cabal_1_20_0_1; }; - cabalInstall = self.cabalInstall_1_20_0_2; + cabalInstall_1_20_0_3 = callPackage ../tools/package-management/cabal-install/1.20.0.3.nix { Cabal = self.Cabal_1_20_0_1; }; + cabalInstall = self.cabalInstall_1_20_0_3; codex = callPackage ../development/tools/haskell/codex {}; + commandQq = callPackage ../development/libraries/haskell/command-qq {}; + gitAnnex = callPackage ../applications/version-management/git-and-tools/git-annex {}; githubBackup = callPackage ../applications/version-management/git-and-tools/github-backup {}; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f21bf4f4df93..2db19dbdf8bc 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -67,6 +67,28 @@ rec { inherit python; }; + discid = buildPythonPackage rec { + name = "discid-1.1.0"; + + meta = with stdenv.lib; { + description = "Python binding of libdiscid"; + homepage = "https://python-discid.readthedocs.org/"; + license = licenses.lgpl3Plus; + platforms = platforms.linux; + maintainer = with maintainers; [ iyzsong ]; + }; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/d/discid/${name}.tar.gz"; + md5 = "2ad2141452dd10b03ad96ccdad075235"; + }; + + patchPhase = '' + substituteInPlace discid/libdiscid.py \ + --replace '_open_library(_LIB_NAME)' "_open_library('${pkgs.libdiscid}/lib/libdiscid.so.0')" + ''; + }; + ipython = import ../shells/ipython { inherit (pkgs) stdenv fetchurl sip pyqt4; inherit buildPythonPackage pythonPackages; @@ -2264,6 +2286,37 @@ rec { }; }; + radicale = buildPythonPackage rec { + name = "radicale-${version}"; + namePrefix = ""; + version = "0.9b1"; + + src = fetchurl { + url = "http://pypi.python.org/packages/source/R/Radicale/Radicale-${version}.tar.gz"; + sha256 = "3a8451909de849f173f577ddec0a085f19040dbb6aa13d5256208a0f8e11d88d"; + }; + + propagatedBuildInputs = with pythonPackages; [ + flup + ldap + sqlalchemy + ]; + + doCheck = false; + + meta = { + homepage = "http://www.radicale.org/"; + longDescription = '' + The Radicale Project is a complete CalDAV (calendar) and CardDAV + (contact) server solution. Calendars and address books are available for + both local and remote access, possibly limited through authentication + policies. They can be viewed and edited by calendar and contact clients + on mobile phones or computers. + ''; + license = stdenv.lib.licenses.gpl3Plus; + maintainers = [ stdenv.lib.maintainers.edwtjo ]; + }; + }; raven = buildPythonPackage rec { name = "raven-3.4.1"; |