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>";
dbohdan = "Danyil Bohdan <danyil.bohdan@gmail.com>";
DerGuteMoritz = "Moritz Heidkamp <moritz@twoticketsplease.de>";
desiderius = "Didier J. Devroye <didier@devroye.name>";
devhell = "devhell <\"^\"@regexmail.net>";
dezgeg = "Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>";
dmalikov = "Dmitry Malikov <malikov.d.y@gmail.com>";

View File

@ -10,7 +10,7 @@ let
''
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
''
@ -70,6 +70,11 @@ in
description = "Start the IMAP listener (when Dovecot is enabled).";
};
enableLmtp = mkOption {
default = false;
description = "Start the LMTP listener (when Dovecot is enabled).";
};
user = mkOption {
default = "dovecot2";
description = "Dovecot user name.";

View File

@ -40,7 +40,6 @@ let
};
haskellPackages = mkOption {
default = pkgs.haskellPackages;
defaultText = "pkgs.haskellPackages";
example = literalExample "pkgs.haskell.packages.ghc784";
description = "haskellPackages used to build gitit and plugins.";
@ -143,7 +142,6 @@ let
staticDir = mkOption {
type = types.path;
default = gititShared + "/data/static";
description = ''
Specifies the path of the static directory (containing javascript,
css, and images). If it does not exist, gitit will create it and
@ -214,7 +212,6 @@ let
templatesDir = mkOption {
type = types.path;
default = gititShared + "/data/templates";
description = ''
Specifies the path of the directory containing page templates. If it
does not exist, gitit will create it with default templates. Users
@ -296,7 +293,6 @@ let
plugins = mkOption {
type = types.path;
default = gititShared + "/plugins/Dot.hs";
description = ''
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
@ -608,6 +604,13 @@ in
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 = {
group = config.users.extraGroups.gitit.name;
description = "Gitit user";

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
dialog for the PulseAudio sound server.
'';
homepage = http://freedesktop.org/software/pulseaudio/paprefs/ ;
homepage = http://freedesktop.org/software/pulseaudio/paprefs/;
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; {
description = "QML based X11 display manager";
homepage = http://launchpad.net/lightdm;
homepage = https://github.com/sddm/sddm;
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar ];
};

View File

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

View File

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

View File

@ -117,9 +117,6 @@ self: super: {
sha256 = "1vn3xm38v2f4lzyzkadvq322f3s2yf8c88v56wpdpzfxmvlzaqr8";
});
# Already applied in darcs repository.
gnuplot = appendPatch super.gnuplot ./gnuplot-fix-new-time.patch;
ghcjs-prim = self.callPackage ({ mkDerivation, fetchgit, primitive }: mkDerivation {
pname = "ghcjs-prim";
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.mkDerivation rec {
name = "cppzmq-2015-03-05";
name = "cppzmq-2015-07-06";
src = fetchgit {
url = "git://github.com/zeromq/cppzmq";
rev = "ac705f604701e2ca1643fa31bae240f9da8b9b9a";
sha256 = "1bcd5553601a6cdc926aa7a7c89fe54d3b14693cfce85dea97af25cf5a144398";
url = "https://github.com/zeromq/cppzmq";
rev = "a88bf3e0b0bc6ed5f5b25a58f8997a1dae374c8b";
sha256 = "75a6630b870c1f0d5b9d6a0ba03e83ceee47aaa2a253894e75a8a93a6d65d3aa";
};
installPhase = ''

View File

@ -1,14 +1,14 @@
{ stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
version = "1.1.5";
version = "2.0.1";
name = "double-conversion-${version}";
src = fetchFromGitHub {
owner = "google";
repo = "double-conversion";
rev = "v${version}";
sha256 = "1a264wpnvxmnq5pdlnp417ld1ybrng83lnbg38bv4ahz7a29ap4z";
sha256 = "05x5rdwndgp1vdq2z1bpvng0dd8pn93kw4vhl6nsvv9vsara2q4b";
};
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";
};
patches = [ ./CVE-2015-1283.patch ];
meta = with stdenv.lib; {
homepage = http://www.libexpat.org/;
description = "A stream-oriented XML parser library written in C";

View File

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

View File

@ -8,7 +8,7 @@
# https://wiki.archlinux.org/index.php/BluRay
let baseName = "libaacs";
version = "0.8.0";
version = "0.8.1";
in
stdenv.mkDerivation {
@ -16,7 +16,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "http://download.videolan.org/pub/videolan/${baseName}/${version}/${baseName}-${version}.tar.bz2";
sha256 = "155sah8z4vbp6j3sq9b17mcn6rj1938ijszz97m8pd2cgif58i2y";
sha256 = "1s5v075hnbs57995r6lljm79wgrip3gnyf55a0y7bja75jh49hwm";
};
buildInputs = [ libgcrypt libgpgerror ];
@ -24,7 +24,7 @@ stdenv.mkDerivation {
nativeBuildInputs = [ yacc flex ];
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";
license = licenses.lgpl21;
maintainers = with maintainers; [ abbradar ];

View File

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

View File

@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
name = "libchardet-1.0.4";
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";
};

View File

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

View File

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

View File

@ -1,19 +1,16 @@
{ fetchurl, stdenv, libkrb5 }:
stdenv.mkDerivation rec {
name = "libtirpc-0.3.0";
name = "libtirpc-0.3.2";
src = fetchurl {
url = "mirror://sourceforge/libtirpc/${name}.tar.bz2";
sha256 = "07d1wlfzf3ia09mjn3f3ay8isk7yx4a6ckfkzx5khnqlc7amkzna";
sha256 = "1z1z8xnlqgqznxzmyc6sypjc6b220xkv0s55hxd5sb3zydws6210";
};
propagatedBuildInputs = [ libkrb5 ];
# http://www.sourcemage.org/projects/grimoire/repository/revisions/d6344b6a3a94b88ed67925a474de5930803acfbf
preConfigure = ''
echo "" > src/des_crypt.c
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; {
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;
platforms = platforms.unix;
maintainers = with maintainers; [ abbradar ];

View File

@ -1502,6 +1502,20 @@ let
];
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: {
preConfigure = "export LIBXML_INCDIR=${pkgs.libxml2}/include/libxml2";
});

View File

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

View File

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

View File

@ -1,57 +1,75 @@
a :
let
fetchurl = a.fetchurl;
{ stdenv, fetchurl, writeScript, ncurses, gzip, flex, bison }:
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 {
url = "mirror://sourceforge/nethack/nethack-343-src.tgz";
sha256 = "1r3ghqj82j0bar62z3b0lx9hhx33pj7p1ppxr2hg8bgfm79c6fdv";
};
inherit buildInputs;
configureFlags = [];
buildInputs = [ ncurses ];
/* doConfigure should be removed if not needed */
phaseNames = ["preBuild" "doMakeInstall" "postInstall"];
preBuild = a.fullDepEntry (''
nativeBuildInputs = [ flex bison ];
preBuild = ''
( 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 '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 '/define CHDIR/d' -i include/config.h
sed -e '/extern char [*]tparm/d' -i win/tty/*.c
sed -e 's/-ltermlib/-lncurses/' -i src/Makefile
sed -e 's/^YACC *=.*/YACC = bison -y/' -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
'') ["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
ln -s $out/games/nethack $out/bin/nethack
sed -i $out/bin/nethack -e '5aNEWHACKDIR="$HOME/.nethack"'
sed -i $out/bin/nethack -e '6amkdir -p "$NEWHACKDIR/save"'
sed -i $out/bin/nethack -e '7afor i in $(find "$NEWHACKDIR" -type l); do if ! test -e $(readlink "$i"); then rm "$i"; fi; done;'
sed -i $out/bin/nethack -e '8aln -s "$HACKDIR"/* "$NEWHACKDIR" &>/dev/null'
sed -i $out/bin/nethack -e '9atest -L "$NEWHACKDIR/record" && rm "$NEWHACKDIR"/record'
sed -i $out/bin/nethack -e '10aexport HACKDIR="$NEWHACKDIR"'
'') ["minInit" "defEnsureDir"];
cat <<EOF >$out/bin/nethack
#! ${stdenv.shell} -e
if [ ! -d ~/.nethack ]; then
mkdir -p ~/.nethack/save
for i in logfile perm record; do
[ ! -e ~/.nethack/\$i ] && touch ~/.nethack/\$i
done
fi
makeFlags = [
"PREFIX=$out"
];
cd ~/.nethack
name = "nethack-" + version;
meta = {
description = "rogue-like game";
cleanup() {
for i in $out/games/lib/nethackdir/*; do
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 = ''
# 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";

View File

@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "A free 2D physics sandbox game";
homepage = http://powdertoy.co.uk/;
platforms = platforms.unix;
license = licenses.gpl3;
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.mkDerivation {
name = "android-udev-rules-2015-02-28";
name = "android-udev-rules-20150301";
src = fetchgit {
url = "git://github.com/M0Rf30/android-udev-rules";
url = "https://github.com/M0Rf30/android-udev-rules";
rev = "2cc51a456ccfbca338c4e6b76211645aaac631e9";
sha256 = "dbf1614cebb466d1adbcc5f17cefc0c37f148f9e3b46443b3e82f6cd19a1514f";
};

View File

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

View File

@ -1,5 +1,5 @@
{ 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
# nvidia-settings). Used to support 32-bit binaries on 64-bit
# Linux.
@ -52,7 +52,9 @@ stdenv.mkDerivation {
[ gtk atk pango glib gdk_pixbuf cairo ] );
programPath = makeLibraryPath [ xlibs.libXv ];
buildInputs = [ perl ];
buildInputs = [ perl nukeReferences ];
disallowedReferences = if libsOnly then [] else [ kernel.dev ];
meta = with stdenv.lib.meta; {
homepage = http://www.nvidia.com/object/unix.html;

View File

@ -93,6 +93,12 @@ installPhase() {
patchelf --set-rpath "$out/lib:$allLibPath" "$libname"
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.1"
done

View File

@ -61,6 +61,12 @@ installPhase() {
patchelf --set-rpath "$out/lib:$allLibPath" "$libname"
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.1"
done

View File

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

View File

@ -24,11 +24,11 @@ in
assert builtins.filter (x: lib.all (y: y.name != x) available) plugins == [];
stdenv.mkDerivation rec {
name = "uwsgi-2.0.10";
name = "uwsgi-2.0.11.1";
src = fetchurl {
url = "http://projects.unbit.it/downloads/${name}.tar.gz";
sha256 = "12q2sn35vf1ils5043svq8da0czy54k63ziybvl33a9dqbb83cy0";
sha256 = "11v2j9n204hlvi1p1wp4r3nn22fqyd1qlbqcfqddi77sih9x79vm";
};
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 }:
stdenv.mkDerivation rec {
name = "sdl-jstest-20150611";
name = "sdl-jstest-20150625";
src = fetchgit {
url = "https://github.com/Grumbel/sdl-jstest";
rev = "684d168e5526da16760dcfc6d40da0103ab284cc";
sha256 = "fc110a858edc2defc5cd8b176a5ce74666d3957d0268b861d0f9669362a1bd03";
rev = "3f54b86ebe0d2f95e9c1d034bc4ed02d6d2b6409";
sha256 = "d33e0a2c66b551ecf333590f1a6e1730093af31cee1be8757748624d42e14df1";
};
buildInputs = [ SDL SDL2 ncurses ];

View File

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

View File

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

View File

@ -5753,21 +5753,32 @@ let
});
falcon = buildPythonPackage (rec {
name = "falcon-0.2";
name = "falcon-0.3.0";
src = pkgs.fetchurl {
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 ];
# 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 = {
description = "An unladen web framework for building APIs and app backends";
homepage = http://falconframework.org;
license = licenses.asl20;
maintainers = with maintainers; [ desiderius ];
};
});