Merge branch 'master' into staging

There was a mass-rebuild due to expat CVE.
This commit is contained in:
Vladimír Čunát 2015-07-28 13:09:43 +02:00
commit 0c4e4e6849
41 changed files with 349 additions and 167 deletions

View File

@ -70,6 +70,7 @@
davidrusu = "David Rusu <davidrusu.me@gmail.com>"; davidrusu = "David Rusu <davidrusu.me@gmail.com>";
dbohdan = "Danyil Bohdan <danyil.bohdan@gmail.com>"; dbohdan = "Danyil Bohdan <danyil.bohdan@gmail.com>";
DerGuteMoritz = "Moritz Heidkamp <moritz@twoticketsplease.de>"; DerGuteMoritz = "Moritz Heidkamp <moritz@twoticketsplease.de>";
desiderius = "Didier J. Devroye <didier@devroye.name>";
devhell = "devhell <\"^\"@regexmail.net>"; devhell = "devhell <\"^\"@regexmail.net>";
dezgeg = "Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>"; dezgeg = "Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>";
dmalikov = "Dmitry Malikov <malikov.d.y@gmail.com>"; dmalikov = "Dmitry Malikov <malikov.d.y@gmail.com>";

View File

@ -10,7 +10,7 @@ let
'' ''
base_dir = /var/run/dovecot2/ base_dir = /var/run/dovecot2/
protocols = ${optionalString cfg.enableImap "imap"} ${optionalString cfg.enablePop3 "pop3"} protocols = ${optionalString cfg.enableImap "imap"} ${optionalString cfg.enablePop3 "pop3"} ${optionalString cfg.enableLmtp "lmtp"}
'' ''
+ (if cfg.sslServerCert!="" then + (if cfg.sslServerCert!="" then
'' ''
@ -70,6 +70,11 @@ in
description = "Start the IMAP listener (when Dovecot is enabled)."; description = "Start the IMAP listener (when Dovecot is enabled).";
}; };
enableLmtp = mkOption {
default = false;
description = "Start the LMTP listener (when Dovecot is enabled).";
};
user = mkOption { user = mkOption {
default = "dovecot2"; default = "dovecot2";
description = "Dovecot user name."; description = "Dovecot user name.";

View File

@ -40,7 +40,6 @@ let
}; };
haskellPackages = mkOption { haskellPackages = mkOption {
default = pkgs.haskellPackages;
defaultText = "pkgs.haskellPackages"; defaultText = "pkgs.haskellPackages";
example = literalExample "pkgs.haskell.packages.ghc784"; example = literalExample "pkgs.haskell.packages.ghc784";
description = "haskellPackages used to build gitit and plugins."; description = "haskellPackages used to build gitit and plugins.";
@ -143,7 +142,6 @@ let
staticDir = mkOption { staticDir = mkOption {
type = types.path; type = types.path;
default = gititShared + "/data/static";
description = '' description = ''
Specifies the path of the static directory (containing javascript, Specifies the path of the static directory (containing javascript,
css, and images). If it does not exist, gitit will create it and css, and images). If it does not exist, gitit will create it and
@ -214,7 +212,6 @@ let
templatesDir = mkOption { templatesDir = mkOption {
type = types.path; type = types.path;
default = gititShared + "/data/templates";
description = '' description = ''
Specifies the path of the directory containing page templates. If it Specifies the path of the directory containing page templates. If it
does not exist, gitit will create it with default templates. Users does not exist, gitit will create it with default templates. Users
@ -296,7 +293,6 @@ let
plugins = mkOption { plugins = mkOption {
type = types.path; type = types.path;
default = gititShared + "/plugins/Dot.hs";
description = '' description = ''
Specifies a list of plugins to load. Plugins may be specified either Specifies a list of plugins to load. Plugins may be specified either
by their path or by their module name. If the plugin name starts by their path or by their module name. If the plugin name starts
@ -608,6 +604,13 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.gitit = {
haskellPackages = mkDefault pkgs.haskellPackages;
staticDir = gititShared + "/data/static";
templatesDir = gititShared + "/data/templates";
plugins = gititShared + "/plugins/Dot.hs";
};
users.extraUsers.gitit = { users.extraUsers.gitit = {
group = config.users.extraGroups.gitit.name; group = config.users.extraGroups.gitit.name;
description = "Gitit user"; description = "Gitit user";

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
dialog for the PulseAudio sound server. dialog for the PulseAudio sound server.
''; '';
homepage = http://freedesktop.org/software/pulseaudio/paprefs/ ; homepage = http://freedesktop.org/software/pulseaudio/paprefs/;
license = licenses.gpl2Plus; license = licenses.gpl2Plus;

View File

@ -0,0 +1,21 @@
{ stdenv, fetchurl, libpulseaudio, libnotify, pkgconfig }:
stdenv.mkDerivation rec {
name = "ponymix-${version}";
version = "4";
src = fetchurl {
url = "http://code.falconindy.com/archive/ponymix/${name}.tar.xz";
sha256 = "008pk3sqc8955k2f502z1syzv43a4q0yk5ws69lgpqfsy1mzki2d";
};
buildInputs = [ libpulseaudio libnotify ];
nativeBuildInputs = [ pkgconfig ];
postPatch = ''substituteInPlace Makefile --replace "\$(DESTDIR)/usr" "$out"'';
meta = {
description = "CLI PulseAudio Volume Control";
homepage = "http://github.com/falconindy/ponymix";
license = "mit";
};
}

View File

@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "QML based X11 display manager"; description = "QML based X11 display manager";
homepage = http://launchpad.net/lightdm; homepage = https://github.com/sddm/sddm;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = with maintainers; [ abbradar ]; maintainers = with maintainers; [ abbradar ];
}; };

View File

@ -26,28 +26,23 @@ assert pulseSupport -> libpulseaudio != null;
assert cddaSupport -> libcdda != null; assert cddaSupport -> libcdda != null;
assert youtubeSupport -> youtube-dl != null; assert youtubeSupport -> youtube-dl != null;
let let qtPath = makeSearchPath "lib/qt5/qml" [ qt5.declarative qt5.quickcontrols ];
waf = fetchurl {
url = http://ftp.waf.io/pub/release/waf-1.8.4;
sha256 = "1a7skwgpl91adhcwlmdr76xzdpidh91hvcmj34zz6548bpx3a87h";
};
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "bomi-${version}"; name = "bomi-${version}";
version = "0.9.10"; version = "0.9.11";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "xylosper"; owner = "xylosper";
repo = "bomi"; repo = "bomi";
rev = "v${version}"; rev = "v${version}";
sha256 = "1c7497gks7yxzfy6jx77vn9zs2pdq7y6l9w61miwnkdm91093n17"; sha256 = "0a7n46gn3n5098lxxvl3s29s8jlkzss6by9074jx94ncn9cayf2h";
}; };
buildInputs = with stdenv.lib; buildInputs = with stdenv.lib;
[ libX11 libxcb mesa [ libX11 libxcb mesa
qt5.base qt5.x11extras qt5.declarative qt5.quickcontrols qt5.base qt5.x11extras
ffmpeg ffmpeg
libchardet libchardet
mpg123 mpg123
@ -72,13 +67,13 @@ stdenv.mkDerivation rec {
''; '';
preBuild = '' preBuild = ''
install -m755 ${waf} src/mpv/waf
patchShebangs src/mpv/waf patchShebangs src/mpv/waf
patchShebangs build-mpv patchShebangs build-mpv
''; '';
postInstall = '' postInstall = ''
wrapProgram $out/bin/bomi \ wrapProgram $out/bin/bomi \
--set QML2_IMPORT_PATH ${qtPath} \
${optionalString youtubeSupport "--prefix PATH ':' '${youtube-dl}/bin'"} ${optionalString youtubeSupport "--prefix PATH ':' '${youtube-dl}/bin'"}
''; '';

View File

@ -27,14 +27,14 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "7.11.20150703"; version = "7.11.20150718";
name = "ghc-nokinds-${version}"; name = "ghc-nokinds-${version}";
rev = "887170ac254aaacc2d5e29f2565ac61522fd8f61"; rev = "4cb79c85a4976c509a65a8638899391a60cd0962";
src = fetchgit { src = fetchgit {
url = "https://github.com/goldfirere/ghc.git"; url = "https://github.com/goldfirere/ghc.git";
inherit rev; inherit rev;
sha256 = "010x9ckig76sz97s2ss1j1sf70czqx1cn39nj4xbh49m8n2zvsqf"; sha256 = "1pyz459hs189bw2jaz7k2j2r53nc1vfa4q3zd3zz1zm0h14lsmlv";
}; };
postUnpack = '' postUnpack = ''

View File

@ -117,9 +117,6 @@ self: super: {
sha256 = "1vn3xm38v2f4lzyzkadvq322f3s2yf8c88v56wpdpzfxmvlzaqr8"; sha256 = "1vn3xm38v2f4lzyzkadvq322f3s2yf8c88v56wpdpzfxmvlzaqr8";
}); });
# Already applied in darcs repository.
gnuplot = appendPatch super.gnuplot ./gnuplot-fix-new-time.patch;
ghcjs-prim = self.callPackage ({ mkDerivation, fetchgit, primitive }: mkDerivation { ghcjs-prim = self.callPackage ({ mkDerivation, fetchgit, primitive }: mkDerivation {
pname = "ghcjs-prim"; pname = "ghcjs-prim";
version = "0.1.0.0"; version = "0.1.0.0";

View File

@ -1,60 +0,0 @@
diff -ru3 gnuplot-0.5.3.1-old/gnuplot.cabal gnuplot-0.5.3.1/gnuplot.cabal
--- gnuplot-0.5.3.1-old/gnuplot.cabal 2015-04-17 22:25:06.561715968 +0300
+++ gnuplot-0.5.3.1/gnuplot.cabal 2015-04-17 22:27:07.610913755 +0300
@@ -75,7 +75,7 @@
Library
Build-Depends:
- filepath >=1.1 && <1.4,
+ filepath >=1.1 && <1.5,
temporary >=1.1 && <1.3,
array >=0.1 && <0.6,
containers >=0.1 && <0.6,
@@ -83,12 +83,11 @@
data-accessor-transformers >=0.2.1 && <0.3,
data-accessor >=0.2.2 && <0.3,
transformers >=0.3 && <0.5,
- deepseq >=1.0 && <1.4
+ deepseq >=1.0 && <1.5
If flag(splitBase)
Build-Depends:
- process >=1.0,
- time >=1.1,
- old-locale >=1.0,
+ process >=1.0 && <1.3,
+ time >=1.1 && <1.6,
base >=2 && <5
Else
Build-Depends:
diff -ru3 gnuplot-0.5.3.1-old/src/Graphics/Gnuplot/Time.hs gnuplot-0.5.3.1/src/Graphics/Gnuplot/Time.hs
--- gnuplot-0.5.3.1-old/src/Graphics/Gnuplot/Time.hs 2015-04-17 22:25:06.560715975 +0300
+++ gnuplot-0.5.3.1/src/Graphics/Gnuplot/Time.hs 2015-04-17 22:27:49.872542430 +0300
@@ -1,7 +1,6 @@
module Graphics.Gnuplot.Time where
-import System.Locale (defaultTimeLocale, )
-import Data.Time.Format (FormatTime, formatTime, )
+import Data.Time.Format (FormatTime, formatTime, defaultTimeLocale, )
import Data.Tuple.HT (mapFst, )
{- |
diff -ru3 gnuplot-0.5.3.1-old/src/Graphics/Gnuplot/Value/Tuple.hs gnuplot-0.5.3.1/src/Graphics/Gnuplot/Value/Tuple.hs
--- gnuplot-0.5.3.1-old/src/Graphics/Gnuplot/Value/Tuple.hs 2015-04-17 22:25:06.560715975 +0300
+++ gnuplot-0.5.3.1/src/Graphics/Gnuplot/Value/Tuple.hs 2015-04-17 22:28:24.426238829 +0300
@@ -9,7 +9,6 @@
ColumnCount(ColumnCount),
) where
-import System.Locale (defaultTimeLocale, )
import qualified Data.Time as Time
import Data.Word (Word8, Word16, Word32, Word64, )
@@ -82,7 +81,7 @@
instance C Time.Day where
text d = text $ Time.UTCTime d 0
instance C Time.UTCTime where
- text = singleton . showString . Time.formatTime defaultTimeLocale "%s"
+ text = singleton . showString . Time.formatTime Time.defaultTimeLocale "%s"
instance (C a, C b) => C (a,b) where

View File

@ -1,12 +1,12 @@
{ stdenv, fetchgit }: { stdenv, fetchgit }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "cppzmq-2015-03-05"; name = "cppzmq-2015-07-06";
src = fetchgit { src = fetchgit {
url = "git://github.com/zeromq/cppzmq"; url = "https://github.com/zeromq/cppzmq";
rev = "ac705f604701e2ca1643fa31bae240f9da8b9b9a"; rev = "a88bf3e0b0bc6ed5f5b25a58f8997a1dae374c8b";
sha256 = "1bcd5553601a6cdc926aa7a7c89fe54d3b14693cfce85dea97af25cf5a144398"; sha256 = "75a6630b870c1f0d5b9d6a0ba03e83ceee47aaa2a253894e75a8a93a6d65d3aa";
}; };
installPhase = '' installPhase = ''

View File

@ -1,14 +1,14 @@
{ stdenv, fetchFromGitHub, cmake }: { stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.1.5"; version = "2.0.1";
name = "double-conversion-${version}"; name = "double-conversion-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "google"; owner = "google";
repo = "double-conversion"; repo = "double-conversion";
rev = "v${version}"; rev = "v${version}";
sha256 = "1a264wpnvxmnq5pdlnp417ld1ybrng83lnbg38bv4ahz7a29ap4z"; sha256 = "05x5rdwndgp1vdq2z1bpvng0dd8pn93kw4vhl6nsvv9vsara2q4b";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View File

@ -0,0 +1,77 @@
Found at https://hg.mozilla.org/releases/mozilla-esr31/rev/2f3e78643f5c on 2015-07-27. Modified: replaced path parser/expat/lib/xmlparse.c with lib/xmlparse.c.
diff --git a/lib/xmlparse.c b/lib/xmlparse.c
--- a/lib/xmlparse.c
+++ b/lib/xmlparse.c
@@ -1646,29 +1646,40 @@ XML_ParseBuffer(XML_Parser parser, int l
XmlUpdatePosition(encoding, positionPtr, bufferPtr, &position);
positionPtr = bufferPtr;
return result;
}
void * XMLCALL
XML_GetBuffer(XML_Parser parser, int len)
{
+/* BEGIN MOZILLA CHANGE (sanity check len) */
+ if (len < 0) {
+ errorCode = XML_ERROR_NO_MEMORY;
+ return NULL;
+ }
+/* END MOZILLA CHANGE */
switch (ps_parsing) {
case XML_SUSPENDED:
errorCode = XML_ERROR_SUSPENDED;
return NULL;
case XML_FINISHED:
errorCode = XML_ERROR_FINISHED;
return NULL;
default: ;
}
if (len > bufferLim - bufferEnd) {
- /* FIXME avoid integer overflow */
int neededSize = len + (int)(bufferEnd - bufferPtr);
+/* BEGIN MOZILLA CHANGE (sanity check neededSize) */
+ if (neededSize < 0) {
+ errorCode = XML_ERROR_NO_MEMORY;
+ return NULL;
+ }
+/* END MOZILLA CHANGE */
#ifdef XML_CONTEXT_BYTES
int keep = (int)(bufferPtr - buffer);
if (keep > XML_CONTEXT_BYTES)
keep = XML_CONTEXT_BYTES;
neededSize += keep;
#endif /* defined XML_CONTEXT_BYTES */
if (neededSize <= bufferLim - buffer) {
@@ -1687,17 +1698,25 @@ XML_GetBuffer(XML_Parser parser, int len
}
else {
char *newBuf;
int bufferSize = (int)(bufferLim - bufferPtr);
if (bufferSize == 0)
bufferSize = INIT_BUFFER_SIZE;
do {
bufferSize *= 2;
- } while (bufferSize < neededSize);
+/* BEGIN MOZILLA CHANGE (prevent infinite loop on overflow) */
+ } while (bufferSize < neededSize && bufferSize > 0);
+/* END MOZILLA CHANGE */
+/* BEGIN MOZILLA CHANGE (sanity check bufferSize) */
+ if (bufferSize <= 0) {
+ errorCode = XML_ERROR_NO_MEMORY;
+ return NULL;
+ }
+/* END MOZILLA CHANGE */
newBuf = (char *)MALLOC(bufferSize);
if (newBuf == 0) {
errorCode = XML_ERROR_NO_MEMORY;
return NULL;
}
bufferLim = newBuf + bufferSize;
#ifdef XML_CONTEXT_BYTES
if (bufferPtr) {

View File

@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
sha256 = "11pblz61zyxh68s5pdcbhc30ha1b2vfjd83aiwfg4vc15x3hadw2"; sha256 = "11pblz61zyxh68s5pdcbhc30ha1b2vfjd83aiwfg4vc15x3hadw2";
}; };
patches = [ ./CVE-2015-1283.patch ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://www.libexpat.org/; homepage = http://www.libexpat.org/;
description = "A stream-oriented XML parser library written in C"; description = "A stream-oriented XML parser library written in C";

View File

@ -2,14 +2,14 @@
, google-gflags, python, libiberty, openssl }: , google-gflags, python, libiberty, openssl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.38.0"; version = "0.52.0";
name = "folly-${version}"; name = "folly-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "facebook"; owner = "facebook";
repo = "folly"; repo = "folly";
rev = "v${version}"; rev = "v${version}";
sha256 = "0b273iwizy08r8lap367q79lai4l4aib2bvd827lkkdax5jpqf6b"; sha256 = "16g3hpy1gy56zqnhwzkvzzpm6dgm01qa9yaigmrqr9b59c3k6cqf";
}; };
buildInputs = [ libiberty boost.lib libevent double_conversion glog google-gflags openssl ]; buildInputs = [ libiberty boost.lib libevent double_conversion glog google-gflags openssl ];

View File

@ -8,7 +8,7 @@
# https://wiki.archlinux.org/index.php/BluRay # https://wiki.archlinux.org/index.php/BluRay
let baseName = "libaacs"; let baseName = "libaacs";
version = "0.8.0"; version = "0.8.1";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
@ -16,7 +16,7 @@ stdenv.mkDerivation {
src = fetchurl { src = fetchurl {
url = "http://download.videolan.org/pub/videolan/${baseName}/${version}/${baseName}-${version}.tar.bz2"; url = "http://download.videolan.org/pub/videolan/${baseName}/${version}/${baseName}-${version}.tar.bz2";
sha256 = "155sah8z4vbp6j3sq9b17mcn6rj1938ijszz97m8pd2cgif58i2y"; sha256 = "1s5v075hnbs57995r6lljm79wgrip3gnyf55a0y7bja75jh49hwm";
}; };
buildInputs = [ libgcrypt libgpgerror ]; buildInputs = [ libgcrypt libgpgerror ];
@ -24,7 +24,7 @@ stdenv.mkDerivation {
nativeBuildInputs = [ yacc flex ]; nativeBuildInputs = [ yacc flex ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://www.videolan.org/developers/libbluray.html; homepage = https://www.videolan.org/developers/libaacs.html;
description = "Library to access AACS protected Blu-Ray disks"; description = "Library to access AACS protected Blu-Ray disks";
license = licenses.lgpl21; license = licenses.lgpl21;
maintainers = with maintainers; [ abbradar ]; maintainers = with maintainers; [ abbradar ];

View File

@ -19,12 +19,12 @@ assert withFonts -> freetype != null;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
baseName = "libbluray"; baseName = "libbluray";
version = "0.8.0"; version = "0.8.1";
name = "${baseName}-${version}"; name = "${baseName}-${version}";
src = fetchurl { src = fetchurl {
url = "ftp://ftp.videolan.org/pub/videolan/${baseName}/${version}/${name}.tar.bz2"; url = "ftp://ftp.videolan.org/pub/videolan/${baseName}/${version}/${name}.tar.bz2";
sha256 = "027xbdbsjyp1spfiva2331pzixrzw6vm97xlvgz16hzm5a5j103v"; sha256 = "13zvkrwy2fr877gkifgwnqfsb3krbz7hklfcwqfjbhmvqn0cdgnd";
}; };
nativeBuildInputs = [ pkgconfig autoreconfHook ] nativeBuildInputs = [ pkgconfig autoreconfHook ]

View File

@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
name = "libchardet-1.0.4"; name = "libchardet-1.0.4";
src = fetchurl { src = fetchurl {
url = "ftp://ftp.oops.org/pub/oops/libchardet/${name}.tar.bz2"; url = "http://yupmin.net/wp-content/uploads/2014/03/libchardet-1.0.4.tar.bz2";
sha256 = "0cvwba4la25qw70ap8jd5r743a9jshqd26nnbh5ph68zj1imlgzl"; sha256 = "0cvwba4la25qw70ap8jd5r743a9jshqd26nnbh5ph68zj1imlgzl";
}; };

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl }: { stdenv, fetchurl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "4.8.4"; version = "4.9.3";
name = "libiberty-${version}"; name = "libiberty-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2";
sha256 = "15c6gwm6dzsaagamxkak5smdkf1rdfbqqjs9jdbrp3lbg4ism02a"; sha256 = "0zmnm00d2a1hsd41g34bhvxzvxisa2l584q3p447bd91lfjv4ci3";
}; };
postUnpack = "sourceRoot=\${sourceRoot}/libiberty"; postUnpack = "sourceRoot=\${sourceRoot}/libiberty";

View File

@ -1,13 +1,13 @@
{ stdenv, fetchurl, pcre, zlib, perl }: { stdenv, fetchurl, pcre, zlib, perl }:
let version = "5.1.2"; let version = "5.1.3";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "qpdf-${version}"; name = "qpdf-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/qpdf/qpdf/${version}/${name}.tar.gz"; url = "mirror://sourceforge/qpdf/qpdf/${version}/${name}.tar.gz";
sha256 = "1zbvhrp0zjzbi6q2bnbxbg6399r47pq5gw3kspzph81j19fqvpg9"; sha256 = "1lq1v7xghvl6p4hgrwbps3a13ad6lh4ib3myimb83hxgsgd4n5nm";
}; };
nativeBuildInputs = [ perl ]; nativeBuildInputs = [ perl ];

View File

@ -1,19 +1,16 @@
{ fetchurl, stdenv, libkrb5 }: { fetchurl, stdenv, libkrb5 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libtirpc-0.3.0"; name = "libtirpc-0.3.2";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/libtirpc/${name}.tar.bz2"; url = "mirror://sourceforge/libtirpc/${name}.tar.bz2";
sha256 = "07d1wlfzf3ia09mjn3f3ay8isk7yx4a6ckfkzx5khnqlc7amkzna"; sha256 = "1z1z8xnlqgqznxzmyc6sypjc6b220xkv0s55hxd5sb3zydws6210";
}; };
propagatedBuildInputs = [ libkrb5 ]; propagatedBuildInputs = [ libkrb5 ];
# http://www.sourcemage.org/projects/grimoire/repository/revisions/d6344b6a3a94b88ed67925a474de5930803acfbf
preConfigure = '' preConfigure = ''
echo "" > src/des_crypt.c
sed -es"|/etc/netconfig|$out/etc/netconfig|g" -i doc/Makefile.in tirpc/netconfig.h sed -es"|/etc/netconfig|$out/etc/netconfig|g" -i doc/Makefile.in tirpc/netconfig.h
''; '';

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "C++/C library to construct Excel .xls files in code"; description = "C++/C library to construct Excel .xls files in code";
homepage = http://sourceforge.net/projects/xlslib/files/; homepage = http://sourceforge.net/projects/xlslib/;
license = licenses.bsd2; license = licenses.bsd2;
platforms = platforms.unix; platforms = platforms.unix;
maintainers = with maintainers; [ abbradar ]; maintainers = with maintainers; [ abbradar ];

View File

@ -1502,6 +1502,20 @@ let
]; ];
otherOverrides = old: new: { otherOverrides = old: new: {
stringi = old.stringi.overrideDerivation (attrs: {
postInstall = let
icuName = "icudt52l";
icuSrc = pkgs.fetchzip {
url = "http://static.rexamine.com/packages/${icuName}.zip";
sha256 = "0hvazpizziq5ibc9017i1bb45yryfl26wzfsv05vk9mc1575r6xj";
stripRoot = false;
};
in ''
${attrs.postInstall or ""}
cp ${icuSrc}/${icuName}.dat $out/library/stringi/libs
'';
});
xml2 = old.xml2.overrideDerivation (attrs: { xml2 = old.xml2.overrideDerivation (attrs: {
preConfigure = "export LIBXML_INCDIR=${pkgs.libxml2}/include/libxml2"; preConfigure = "export LIBXML_INCDIR=${pkgs.libxml2}/include/libxml2";
}); });

View File

@ -18,6 +18,8 @@ stdenv.mkDerivation rec {
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];
sourceRoot = ".";
installPhase = '' installPhase = ''
install -D apktool.jar "$out/libexec/apktool/apktool.jar" install -D apktool.jar "$out/libexec/apktool/apktool.jar"
mkdir -p "$out/bin" mkdir -p "$out/bin"

View File

@ -44,6 +44,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Open-source, single-player, role-playing roguelike game"; description = "Open-source, single-player, role-playing roguelike game";
homepage = http://crawl.develz.org/;
longDescription = '' longDescription = ''
Open-source, single-player, role-playing roguelike game of exploration and Open-source, single-player, role-playing roguelike game of exploration and
treasure-hunting in dungeons filled with dangerous and unfriendly monsters treasure-hunting in dungeons filled with dangerous and unfriendly monsters

View File

@ -1,57 +1,75 @@
a : { stdenv, fetchurl, writeScript, ncurses, gzip, flex, bison }:
let
fetchurl = a.fetchurl; stdenv.mkDerivation rec {
name = "nethack-3.4.3";
version = a.lib.attrByPath ["version"] "3.4.3" a;
buildInputs = with a; [
ncurses flex bison
];
in
rec {
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/nethack/nethack-343-src.tgz"; url = "mirror://sourceforge/nethack/nethack-343-src.tgz";
sha256 = "1r3ghqj82j0bar62z3b0lx9hhx33pj7p1ppxr2hg8bgfm79c6fdv"; sha256 = "1r3ghqj82j0bar62z3b0lx9hhx33pj7p1ppxr2hg8bgfm79c6fdv";
}; };
inherit buildInputs; buildInputs = [ ncurses ];
configureFlags = [];
/* doConfigure should be removed if not needed */ nativeBuildInputs = [ flex bison ];
phaseNames = ["preBuild" "doMakeInstall" "postInstall"];
preBuild = ''
preBuild = a.fullDepEntry (''
( cd sys/unix ; sh setup.sh ) ( cd sys/unix ; sh setup.sh )
sed -e 's@.*define HACKDIR.*@\#define HACKDIR "/tmp/nethack"@' -i include/config.h
sed -e '/define COMPRESS/d' -i include/config.h sed -e '/define COMPRESS/d' -i include/config.h
sed -e '1i\#define COMPRESS "/usr/local/bin/gzip"' -i include/config.h sed -e '1i\#define COMPRESS "${gzip}/bin/gzip"' -i include/config.h
sed -e '1i\#define COMPRESS_EXTENSION ".gz"' -i include/config.h sed -e '1i\#define COMPRESS_EXTENSION ".gz"' -i include/config.h
sed -e '/define CHDIR/d' -i include/config.h
sed -e '/extern char [*]tparm/d' -i win/tty/*.c sed -e '/extern char [*]tparm/d' -i win/tty/*.c
sed -e 's/-ltermlib/-lncurses/' -i src/Makefile sed -e 's/-ltermlib/-lncurses/' -i src/Makefile
sed -e 's/^YACC *=.*/YACC = bison -y/' -i util/Makefile sed -e 's/^YACC *=.*/YACC = bison -y/' -i util/Makefile
sed -e 's/^LEX *=.*/LEX = flex/' -i util/Makefile sed -e 's/^LEX *=.*/LEX = flex/' -i util/Makefile
sed -e 's@GAMEDIR = @GAMEDIR = /tmp/nethack@' -i Makefile
sed -re 's@^(CH...).*@\1 = true@' -i Makefile sed -re 's@^(CH...).*@\1 = true@' -i Makefile
'') ["minInit" "doUnpack"];
postInstall = a.fullDepEntry ('' sed -e '/^ *cd /d' -i sys/unix/nethack.sh
'';
postInstall = ''
for i in logfile perm record save; do
rm -rf $out/games/lib/nethackdir/$i
done
mkdir -p $out/bin mkdir -p $out/bin
ln -s $out/games/nethack $out/bin/nethack cat <<EOF >$out/bin/nethack
sed -i $out/bin/nethack -e '5aNEWHACKDIR="$HOME/.nethack"' #! ${stdenv.shell} -e
sed -i $out/bin/nethack -e '6amkdir -p "$NEWHACKDIR/save"' if [ ! -d ~/.nethack ]; then
sed -i $out/bin/nethack -e '7afor i in $(find "$NEWHACKDIR" -type l); do if ! test -e $(readlink "$i"); then rm "$i"; fi; done;' mkdir -p ~/.nethack/save
sed -i $out/bin/nethack -e '8aln -s "$HACKDIR"/* "$NEWHACKDIR" &>/dev/null' for i in logfile perm record; do
sed -i $out/bin/nethack -e '9atest -L "$NEWHACKDIR/record" && rm "$NEWHACKDIR"/record' [ ! -e ~/.nethack/\$i ] && touch ~/.nethack/\$i
sed -i $out/bin/nethack -e '10aexport HACKDIR="$NEWHACKDIR"' done
'') ["minInit" "defEnsureDir"]; fi
makeFlags = [ cd ~/.nethack
"PREFIX=$out"
];
name = "nethack-" + version; cleanup() {
meta = { for i in $out/games/lib/nethackdir/*; do
description = "rogue-like game"; rm -rf \$(basename \$i)
done
}
trap cleanup EXIT
for i in $out/games/lib/nethackdir/*; do
ln -s \$i \$(basename \$i)
done
$out/games/nethack
EOF
chmod +x $out/bin/nethack
'';
makeFlags = [ "PREFIX=$(out)" ];
meta = with stdenv.lib; {
description = "Rogue-like game";
homepage = "http://nethack.org/";
license = "nethack";
platforms = platforms.unix;
maintainers = with maintainers; [ abbradar ];
}; };
} }

View File

@ -70,7 +70,9 @@ buildFHSUserEnv {
profile = '' profile = ''
# Ugly workaround for https://github.com/ValveSoftware/steam-for-linux/issues/3504 # Ugly workaround for https://github.com/ValveSoftware/steam-for-linux/issues/3504
export LD_PRELOAD=/lib32/libpulse.so:/lib64/libpulse.so:/lib32/libasound.so:/lib64/libasound.so export LD_PRELOAD=/lib32/libpulse.so:/lib64/libpulse.so:/lib32/libasound.so:/lib64/libasound.so:$LD_PRELOAD
# Another one for https://github.com/ValveSoftware/steam-for-linux/issues/3801
export LD_PRELOAD=/lib32/libstdc++.so:/lib64/libstdc++.so:$LD_PRELOAD
''; '';
runScript = "steam"; runScript = "steam";

View File

@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A free 2D physics sandbox game"; description = "A free 2D physics sandbox game";
homepage = http://powdertoy.co.uk/;
platforms = platforms.unix; platforms = platforms.unix;
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ abbradar ]; maintainers = with maintainers; [ abbradar ];

View File

@ -0,0 +1,53 @@
{ stdenv, fetchgit, utillinux, ncurses, flex, bison }:
stdenv.mkDerivation rec {
name = "unnethack-5.3.1";
src = fetchgit {
url = "https://github.com/UnNetHack/UnNetHack";
rev = "63677eb256b5a75430f190cfb0f76bdd9bd0b9dd";
sha256 = "48a80ef83308b91d4aa86598e30e5b5ce9a5b2da2a763fe921698990c3243969";
};
buildInputs = [ ncurses ];
nativeBuildInputs = [ utillinux flex bison ];
configureFlags = [ "--enable-curses-graphics"
"--disable-tty-graphics"
"--with-owner=no"
"--with-group=no"
"--with-gamesdir=/tmp/unnethack"
];
postInstall = ''
cp -r /tmp/unnethack $out/share/unnethack/profile
mv $out/bin/unnethack $out/bin/.wrapped_unnethack
cat <<EOF >$out/bin/unnethack
#! ${stdenv.shell} -e
if [ ! -d ~/.unnethack ]; then
mkdir -p ~/.unnethack
cp -r $out/share/unnethack/profile/* ~/.unnethack
chmod -R +w ~/.unnethack
fi
ln -s ~/.unnethack /tmp/unnethack
cleanup() {
rm -rf /tmp/unnethack
}
trap cleanup EXIT
$out/bin/.wrapped_unnethack
EOF
chmod +x $out/bin/unnethack
'';
meta = with stdenv.lib; {
description = "Fork of NetHack";
homepage = "http://unnethack.wordpress.com/";
license = "nethack";
platforms = platforms.all;
maintainers = with maintainers; [ abbradar ];
};
}

View File

@ -1,10 +1,10 @@
{ stdenv, fetchgit }: { stdenv, fetchgit }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "android-udev-rules-2015-02-28"; name = "android-udev-rules-20150301";
src = fetchgit { src = fetchgit {
url = "git://github.com/M0Rf30/android-udev-rules"; url = "https://github.com/M0Rf30/android-udev-rules";
rev = "2cc51a456ccfbca338c4e6b76211645aaac631e9"; rev = "2cc51a456ccfbca338c4e6b76211645aaac631e9";
sha256 = "dbf1614cebb466d1adbcc5f17cefc0c37f148f9e3b46443b3e82f6cd19a1514f"; sha256 = "dbf1614cebb466d1adbcc5f17cefc0c37f148f9e3b46443b3e82f6cd19a1514f";
}; };

View File

@ -24,11 +24,11 @@ stdenv.mkDerivation rec {
]; ];
buildFlags = [ buildFlags = [
"CONFDIR=/etc" "CONFDIR=/etc/iproute2"
]; ];
installFlags = [ installFlags = [
"CONFDIR=$(out)/etc" "CONFDIR=$(out)/etc/iproute2"
]; ];
buildInputs = [ db iptables ]; buildInputs = [ db iptables ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, kernel ? null, xlibs, zlib, perl { stdenv, fetchurl, kernel ? null, xlibs, zlib, perl
, gtk, atk, pango, glib, gdk_pixbuf, cairo , gtk, atk, pango, glib, gdk_pixbuf, cairo, nukeReferences
, # Whether to build the libraries only (i.e. not the kernel module or , # Whether to build the libraries only (i.e. not the kernel module or
# nvidia-settings). Used to support 32-bit binaries on 64-bit # nvidia-settings). Used to support 32-bit binaries on 64-bit
# Linux. # Linux.
@ -52,7 +52,9 @@ stdenv.mkDerivation {
[ gtk atk pango glib gdk_pixbuf cairo ] ); [ gtk atk pango glib gdk_pixbuf cairo ] );
programPath = makeLibraryPath [ xlibs.libXv ]; programPath = makeLibraryPath [ xlibs.libXv ];
buildInputs = [ perl ]; buildInputs = [ perl nukeReferences ];
disallowedReferences = if libsOnly then [] else [ kernel.dev ];
meta = with stdenv.lib.meta; { meta = with stdenv.lib.meta; {
homepage = http://www.nvidia.com/object/unix.html; homepage = http://www.nvidia.com/object/unix.html;

View File

@ -93,6 +93,12 @@ installPhase() {
patchelf --set-rpath "$out/lib:$allLibPath" "$libname" patchelf --set-rpath "$out/lib:$allLibPath" "$libname"
libname_short=`echo -n "$libname" | sed 's/so\..*/so/'` libname_short=`echo -n "$libname" | sed 's/so\..*/so/'`
# nvidia's EGL stack seems to expect libGLESv2.so.2 to be available
if [ $(basename "$libname_short") == "libGLESv2.so" ]; then
ln -srnf "$libname" "$libname_short.2"
fi
ln -srnf "$libname" "$libname_short" ln -srnf "$libname" "$libname_short"
ln -srnf "$libname" "$libname_short.1" ln -srnf "$libname" "$libname_short.1"
done done

View File

@ -61,6 +61,12 @@ installPhase() {
patchelf --set-rpath "$out/lib:$allLibPath" "$libname" patchelf --set-rpath "$out/lib:$allLibPath" "$libname"
libname_short=`echo -n "$libname" | sed 's/so\..*/so/'` libname_short=`echo -n "$libname" | sed 's/so\..*/so/'`
# nvidia's EGL stack seems to expect libGLESv2.so.2 to be available
if [ $(basename "$libname_short") == "libGLESv2.so" ]; then
ln -srnf "$libname" "$libname_short.2"
fi
ln -srnf "$libname" "$libname_short" ln -srnf "$libname" "$libname_short"
ln -srnf "$libname" "$libname_short.1" ln -srnf "$libname" "$libname_short.1"
done done

View File

@ -1,19 +1,16 @@
{ fetchurl, stdenv, pkgconfig, libtirpc { fetchurl, stdenv, pkgconfig, libtirpc
, useSystemd ? true, systemd }: , useSystemd ? true, systemd }:
let version = "1.0.7"; let version = "0.2.3";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "rpcbind-${version}"; name = "rpcbind-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/rpcbind/${version}/${name}.tar.bz2"; url = "mirror://sourceforge/rpcbind/${version}/${name}.tar.bz2";
sha256 = "14vl0kmavc1fay630f4w8l1hjfzhmcqm8d0akzahhgymh5fw1f7r"; sha256 = "0yyjzv4161rqxrgjcijkrawnk55rb96ha0pav48s03l2klx855wq";
}; };
patches = [ ./sunrpc.patch ]; patches = [ ./sunrpc.patch ];
postPatch = ''
sed -e 's|/usr/include/tirpc|${libtirpc}/include/tirpc|' -i src/Makefile.am -i src/Makefile.in
'';
buildInputs = [ libtirpc ] buildInputs = [ libtirpc ]
++ stdenv.lib.optional useSystemd systemd; ++ stdenv.lib.optional useSystemd systemd;

View File

@ -24,11 +24,11 @@ in
assert builtins.filter (x: lib.all (y: y.name != x) available) plugins == []; assert builtins.filter (x: lib.all (y: y.name != x) available) plugins == [];
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "uwsgi-2.0.10"; name = "uwsgi-2.0.11.1";
src = fetchurl { src = fetchurl {
url = "http://projects.unbit.it/downloads/${name}.tar.gz"; url = "http://projects.unbit.it/downloads/${name}.tar.gz";
sha256 = "12q2sn35vf1ils5043svq8da0czy54k63ziybvl33a9dqbb83cy0"; sha256 = "11v2j9n204hlvi1p1wp4r3nn22fqyd1qlbqcfqddi77sih9x79vm";
}; };
nativeBuildInputs = [ python3 pkgconfig ]; nativeBuildInputs = [ python3 pkgconfig ];

View File

@ -0,0 +1,27 @@
{ stdenv, fetchurl, bash, curl, xsel }:
stdenv.mkDerivation {
name = "imgurbash-4";
src = fetchurl {
url = "https://imgur.com/tools/imgurbash.sh";
sha256 = "16m7dn5vqzx1q4pzssnwiwajfzrbhrz0niyhf5abxi1lwr3h0ca1";
};
buildCommand = ''
mkdir -p $out/bin
cat <<EOF >$out/bin/imgurbash
#!${bash}/bin/bash
PATH=${stdenv.lib.makeSearchPath "bin" [curl xsel]}:\$PATH
EOF
cat $src >>$out/bin/imgurbash
chmod +x $out/bin/imgurbash
'';
meta = with stdenv.lib; {
description = "A simple bash script to upload an image to imgur from the commandline";
license = licenses.publicDomain;
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar ];
};
}

View File

@ -1,11 +1,11 @@
{ fetchgit, stdenv, cmake, pkgconfig, SDL, SDL2, ncurses, docbook_xsl }: { fetchgit, stdenv, cmake, pkgconfig, SDL, SDL2, ncurses, docbook_xsl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "sdl-jstest-20150611"; name = "sdl-jstest-20150625";
src = fetchgit { src = fetchgit {
url = "https://github.com/Grumbel/sdl-jstest"; url = "https://github.com/Grumbel/sdl-jstest";
rev = "684d168e5526da16760dcfc6d40da0103ab284cc"; rev = "3f54b86ebe0d2f95e9c1d034bc4ed02d6d2b6409";
sha256 = "fc110a858edc2defc5cd8b176a5ce74666d3957d0268b861d0f9669362a1bd03"; sha256 = "d33e0a2c66b551ecf333590f1a6e1730093af31cee1be8757748624d42e14df1";
}; };
buildInputs = [ SDL SDL2 ncurses ]; buildInputs = [ SDL SDL2 ncurses ];

View File

@ -1,13 +1,13 @@
{ stdenv, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, dbus_libs, dbus_glib, libxml2 }: { stdenv, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, dbus_libs, dbus_glib, libxml2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.4.2"; version = "1.4.3";
name = "thermald-${version}"; name = "thermald-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "01org"; owner = "01org";
repo = "thermal_daemon"; repo = "thermal_daemon";
rev = "v${version}"; rev = "v${version}";
sha256 = "051119wb0n31rn15pnx56d1r58a2d1fmj030q991mcv7pcy6c8mg"; sha256 = "1wrbydmw1jc5dcjawhhsa52hilzajl9n849i09d2nfilv3qcqqi9";
}; };
buildInputs = [ autoconf automake libtool pkgconfig dbus_libs dbus_glib libxml2 ]; buildInputs = [ autoconf automake libtool pkgconfig dbus_libs dbus_glib libxml2 ];

View File

@ -1892,6 +1892,8 @@ let
inherit (perlPackages) MailIMAPClient; inherit (perlPackages) MailIMAPClient;
}; };
imgurbash = callPackage ../tools/graphics/imgurbash { };
inadyn = callPackage ../tools/networking/inadyn { }; inadyn = callPackage ../tools/networking/inadyn { };
inetutils = callPackage ../tools/networking/inetutils { }; inetutils = callPackage ../tools/networking/inetutils { };
@ -7618,9 +7620,7 @@ let
sslSupport = true; sslSupport = true;
}; };
nethack = builderDefsPackage (import ../games/nethack) { nethack = callPackage ../games/nethack { };
inherit ncurses flex bison;
};
nettle27 = callPackage ../development/libraries/nettle/27.nix { }; nettle27 = callPackage ../development/libraries/nettle/27.nix { };
nettle = callPackage ../development/libraries/nettle { }; nettle = callPackage ../development/libraries/nettle { };
@ -8264,6 +8264,8 @@ let
gnutls = gnutls; gnutls = gnutls;
}); });
unnethack = callPackage ../games/unnethack { };
v8_3_16_14 = callPackage ../development/libraries/v8/3.16.14.nix { v8_3_16_14 = callPackage ../development/libraries/v8/3.16.14.nix {
inherit (pythonPackages) gyp; inherit (pythonPackages) gyp;
stdenv = overrideCC stdenv gcc48; stdenv = overrideCC stdenv gcc48;
@ -12362,6 +12364,8 @@ let
pond = callPackage ../applications/networking/pond { goPackages = go14Packages; }; pond = callPackage ../applications/networking/pond { goPackages = go14Packages; };
ponymix = callPackage ../applications/audio/ponymix { };
potrace = callPackage ../applications/graphics/potrace {}; potrace = callPackage ../applications/graphics/potrace {};
posterazor = callPackage ../applications/misc/posterazor { }; posterazor = callPackage ../applications/misc/posterazor { };

View File

@ -5753,21 +5753,32 @@ let
}); });
falcon = buildPythonPackage (rec { falcon = buildPythonPackage (rec {
name = "falcon-0.2"; name = "falcon-0.3.0";
src = pkgs.fetchurl { src = pkgs.fetchurl {
url = "https://pypi.python.org/packages/source/f/falcon/${name}.tar.gz"; url = "https://pypi.python.org/packages/source/f/falcon/${name}.tar.gz";
md5 = "bf9e8bdd20700f1ff7ce6397cd441fbd"; sha256 = "10ivzk88m8nn3bqbg6xgv6yfy2dgp6yzbcvr645y93pzlash4xpj";
}; };
propagatedBuildInputs = with self; [ coverage ddt nose pyyaml requests2 six testtools python_mimeparse ]; propagatedBuildInputs = with self; [ coverage ddt nose pyyaml requests2 six testtools python_mimeparse ];
# The travis build fails since the migration from multiprocessing to threading for hosting the API under test.
# OSError: [Errno 98] Address already in use
doCheck = false;
# This patch is required if the tests are enabled
# See https://github.com/falconry/falcon/issues/572
#patches = singleton (pkgs.fetchurl {
# name = "falcon-572.patch";
# url = "https://github.com/desiderius/falcon/commit/088bd3f2204eb6368acb3a1bf6c6b54c415225c2.patch";
# sha256 = "19102dlzc4890skmam2v20va2vk5xr56fi4nzibzfvl7vyq68060";
#});
meta = { meta = {
description = "An unladen web framework for building APIs and app backends"; description = "An unladen web framework for building APIs and app backends";
homepage = http://falconframework.org; homepage = http://falconframework.org;
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ desiderius ];
}; };
}); });