Merge master into #2129

Conflicts (easy, just UID shifted):
	nixos/modules/misc/ids.nix
	nixos/modules/module-list.nix
This commit is contained in:
Vladimír Čunát
2014-08-12 19:24:08 +02:00
4409 changed files with 71673 additions and 25537 deletions

View File

@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
meta = {
description = "AES encrypting or decrypting pipe";
homepage = http://loop-aes.sourceforge.net/aespipe.README;
license = "GPL";
license = stdenv.lib.licenses.gpl2;
maintainers = stdenv.lib.maintainers.goibhniu;
platforms = stdenv.lib.platforms.linux;
};

View File

@@ -1,24 +0,0 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "cb1cat-${version}";
version = "20140403153000";
src = fetchurl {
url = "https://www.cblnk.com/cb1cat/dist/${name}.tgz";
sha256 = "1zi0rxbgmp6vkcarg493gfgn7pnfdpz0iplcgslbc45n2bxkv70q";
};
installPhase = ''
mkdir -p $out/bin
mv cb1cat $out/bin
'';
meta = {
description = "cryptographic tool based on the CBEAMr1 sponge function";
homepage = "https://www.cblnk.com/cb1cat/";
license = stdenv.lib.licenses.bsd3;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
};
}

View File

@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
meta = {
description = "ccid drivers for pcsclite";
homepage = http://pcsclite.alioth.debian.org/;
license = "GPLv2+";
license = stdenv.lib.licenses.gpl2Plus;
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
};

View File

@@ -13,7 +13,7 @@ stdenv.mkDerivation {
meta = {
homepage = http://ccrypt.sourceforge.net/;
description = "Utility for encrypting and decrypting files and streams with AES-256";
license = "GPLv2+";
license = stdenv.lib.licenses.gpl2Plus;
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; all;
};

View File

@@ -1,12 +1,12 @@
{ stdenv, fetchurl, pam, openssl, zlib }:
stdenv.mkDerivation rec {
name = "duo-unix";
version = "1.9.7";
name = "duo-unix-${version}";
version = "1.9.11";
src = fetchurl {
url = "https://dl.duosecurity.com/duo_unix-${version}.tar.gz";
sha256 = "090kx9nixlhvy5nw0ywqmi7yhd4nz7wvdv38cpkgrspkridfl07j";
sha256 = "0747avzmzzz1gaisahgjlpxyxxbrn04w1mip90lfj9wp2x6a9jgm";
};
buildInputs = [ pam openssl zlib ];

View File

@@ -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;
};
}

View File

@@ -1,6 +1,6 @@
{ stdenv, fetchurl, pythonPackages, unzip, gamin }:
{ stdenv, fetchurl, python, pythonPackages, unzip, systemd, gamin }:
let version = "0.8.13"; in
let version = "0.9"; in
pythonPackages.buildPythonPackage {
name = "fail2ban-${version}";
@@ -9,12 +9,12 @@ pythonPackages.buildPythonPackage {
src = fetchurl {
url = "https://github.com/fail2ban/fail2ban/zipball/${version}";
name = "fail2ban-${version}.zip";
sha256 = "0c63i5jsn2n6hv6fb6q922ksxfpppah9415vpydiv0vpf23pq0cb";
sha256 = "0dawl0vvdvpnkg1hc4l0c8sj8ikcr2l48d6khfx0174nq8yfcg93";
};
buildInputs = [ unzip ];
pythonPath = [ gamin ];
pythonPath = [ systemd python.modules.sqlite3 gamin ];
preConfigure = ''
substituteInPlace setup.cfg \

View File

@@ -11,10 +11,10 @@ stdenv.mkDerivation rec {
};
installPhase = ''
ensureDir $out/bin
mkdir -p $out/bin
cp fpscan $out/bin
ensureDir $out/opt/f-prot
mkdir -p $out/opt/f-prot
cp fpupdate $out/opt/f-prot
cp product.data.default $out/opt/f-prot/product.data
cp license.key $out/opt/f-prot/
@@ -23,12 +23,12 @@ stdenv.mkDerivation rec {
patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" $out/opt/f-prot/fpupdate
ensureDir $out/share/man/
ensureDir $out/share/man/man1
mkdir -p $out/share/man/
mkdir -p $out/share/man/man1
cp doc/man/fpscan.1 $out/share/man/man1
ensureDir $out/share/man/man5
mkdir -p $out/share/man/man5
cp doc/man/f-prot.conf.5 $out/share/man/man5
ensureDir $out/share/man/man8
mkdir -p $out/share/man/man8
cp doc/man/fpupdate.8 $out/share/man/man8
'';

View File

@@ -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

View File

@@ -52,6 +52,6 @@ stdenv.mkDerivation rec {
homepage = http://gnupg.org/;
license = "GPLv3+";
license = stdenv.lib.licenses.gpl3Plus;
};
}

View File

@@ -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 ];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
meta = {
description = "free implementation of the OpenPGP standard for encrypting and signing data";
homepage = http://www.gnupg.org/;
license = "GPLv3+";
license = stdenv.lib.licenses.gpl3Plus;
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
};
}

View File

@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "haveged-${version}";
version = "1.7c";
version = "1.9.1";
src = fetchurl {
url = "http://www.issihosts.com/haveged/haveged-${version}.tar.gz";
sha256 = "08gi3d9lbrllk5lyxw8l65py88xhia48w758lqjddh3gv7g7wfa0";
sha256 = "059pxlfd4l5dqhd6r3lynzfz4wby2f17294fy17pi9j2jpnn68ww";
};
meta = {

View File

@@ -0,0 +1,33 @@
{ stdenv, fetchurl, gtk, atk, gdk_pixbuf, pango, makeWrapper }:
let
dynlibPath = stdenv.lib.makeLibraryPath
[ gtk atk gdk_pixbuf pango ];
in
stdenv.mkDerivation rec {
name = "jd-gui-${version}";
version = "0.3.5";
src = fetchurl {
url = "http://jd.benow.ca/jd-gui/downloads/${name}.linux.i686.tar.gz";
sha256 = "0jrvzs2s836yvqi41c7fq0gfiwf187qg765b9r1il2bjc0mb3dqv";
};
buildInputs = [ makeWrapper ];
phases = "unpackPhase installPhase";
unpackPhase = "tar xf ${src}";
installPhase = ''
mkdir -p $out/bin && mv jd-gui $out/bin
wrapProgram $out/bin/jd-gui \
--prefix LD_LIBRARY_PATH ":" "${dynlibPath}"
'';
meta = {
description = "Fast Java Decompiler with powerful GUI";
homepage = "http://jd.benow.ca/";
license = stdenv.lib.licenses.unfreeRedistributable;
platforms = [ "i686-linux" ];
maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
};
}

View File

@@ -5,7 +5,7 @@ stdenv.mkDerivation {
src = fetchhg {
url = http://oss.stamfest.net/hg/meo;
tag = "b48e5f16cff8";
rev = "b48e5f16cff8";
sha256 = "0ifg7y28s89i9gwda6fyj1jbrykbcvq8bf1m6rxmdcv5afi3arbq";
};
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
'';
installPhase = ''
ensureDir $out/bin
mkdir -p $out/bin
cp tools/{meo,p11} $out/bin
cp meo-gui/meo-gui $out/bin
cp meo-gui/meo-gui $out/bin
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
meta = {
homepage = http://oss.stamfest.net/wordpress/meo-multiple-eyepairs-only;
description = "Tools to use cryptography for things like four-eyes principles";
license = "AGPLv3+";
license = stdenv.lib.licenses.agpl3Plus;
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
};

View File

@@ -1,14 +1,15 @@
{ stdenv, fetchurl
}:
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
name = "mkpasswd-${version}";
version = "5.1.1";
src = fetchurl {
url = "http://ftp.debian.org/debian/pool/main/w/whois/whois_${version}.tar.xz";
sha256 = "0i06a9mb9qcq272782mg6dffv3k7bqkw4cdr31yrc0s6jqylryv9";
src = fetchFromGitHub {
owner = "rfc1036";
repo = "whois";
rev = "v${version}";
sha256 = "026x8byx8pcpkdxca64368p0nlspk4phw18jg4p04di6cg6nc1m5";
};
preConfigure = ''
@@ -19,10 +20,11 @@ stdenv.mkDerivation rec {
installPhase = "make install-mkpasswd";
meta = {
homepage = http://ftp.debian.org/debian/pool/main/w/whois/;
description = ''
Overfeatured front end to crypt, from the Debian whois package.
'';
meta = with stdenv.lib; {
homepage = http://packages.qa.debian.org/w/whois.html;
description = "Overfeatured front-end to crypt, from the Debian whois package";
license = licenses.gpl2;
maintainers = [ maintainers.cstrahan ];
platforms = platforms.linux;
};
}

View File

@@ -25,6 +25,7 @@ stdenv.mkDerivation {
homepage = http://muscleplugins.alioth.debian.org/;
license = "BSD";
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
# XXX: don't build before libmusclecard is fixed
# platforms = with stdenv.lib.platforms; linux;
};
}

View File

@@ -12,8 +12,9 @@ stdenv.mkDerivation {
meta = {
description = "Smart card applications for use with MUSCLE plugins";
homepage = http://muscleapps.alioth.debian.org/;
license = "BSD";
license = "BSD"; # http://anonscm.debian.org/viewvc/muscleapps/trunk/muscleTool/COPYING?view=markup
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
# XXX: don't build before libmusclecard is fixed
# platforms = with stdenv.lib.platforms; linux;
};
}

View File

@@ -0,0 +1,28 @@
{ fetchurl, stdenv }:
stdenv.mkDerivation rec {
version = "1.3";
name = "paperkey-${version}";
src = fetchurl {
url = "http://www.jabberwocky.com/software/paperkey/${name}.tar.gz";
sha256 = "5b57d7522336fb65c4c398eec27bf44ec0aaa35926157b79a76423231792cbfb";
};
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "Store OpenPGP or GnuPG on paper";
longDescription = ''
A reasonable way to achieve a long term backup of OpenPGP (GnuPG, PGP, etc)
keys is to print them out on paper. Paper and ink have amazingly long
retention qualities - far longer than the magnetic or optical means that
are generally used to back up computer data.
'';
homepage = "http://www.jabberwocky.com/software/paperkey/";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = [ maintainers.skeidel ];
};
}

View File

@@ -0,0 +1,11 @@
diff --git a/src/platform/darwin.sh b/src/platform/darwin.sh
index 1b76c33..fa40104 100644
--- a/src/platform/darwin.sh
+++ b/src/platform/darwin.sh
@@ -31,5 +31,5 @@ tmpdir() {
mount -t hfs -o noatime -o nobrowse "$ramdisk_dev" "$SECURE_TMPDIR" || exit 1
}
-GETOPT="$(brew --prefix gnu-getopt 2>/dev/null || echo /usr/local)/bin/getopt"
+GETOPT="getopt"
SHRED="srm -f -z"

View File

@@ -1,16 +1,22 @@
{ stdenv, fetchurl
, coreutils, gnused, getopt, pwgen, git, tree, gnupg
, makeWrapper }:
, makeWrapper
, withX ? false, xclip ? null
}:
assert withX -> xclip != null;
stdenv.mkDerivation rec {
version = "1.4.2";
version = "1.6.3";
name = "password-store-${version}";
src = fetchurl {
url = "http://git.zx2c4.com/password-store/snapshot/${name}.tar.xz";
sha256 = "00m3q6dihrhw8cxsrham3bdqg5841an8ch4s3a4k5fynlcb802m1";
sha256 = "1xs00c7ffqd0093i452kryw9sjip6dkp1pclx69zihb5l45d86fl";
};
patches = [ ./darwin-getopt.patch ];
buildInputs = [ makeWrapper ];
meta = with stdenv.lib; {
@@ -30,21 +36,17 @@ stdenv.mkDerivation rec {
};
installPhase = ''
# link zsh and fish completions
sed -ie '22s/^#//' Makefile
sed -ie '25s/^#//' Makefile
sed -i 's/find /find -L /' contrib/pass.zsh-completion
mkdir -p "$out/share/bash-completion/completions"
mkdir -p "$out/share/zsh/site-functions"
mkdir -p "$out/share/fish/completions"
# use gnused
sed -i 's/sed -i ""/sed -i /' Makefile
# Install Emacs Mode. NOTE: We can't install the necessary
# dependencies (s.el and f.el) here. The user has to do this
# himself.
mkdir -p "$out/share/emacs/site-lisp"
cp "contrib/emacs/password-store.el" "$out/share/emacs/site-lisp/"
SYSCONFDIR="$out/etc" PREFIX="$out" make install
'' + stdenv.lib.optionalString stdenv.isDarwin ''
# use nix-supplied getopt
sed -ie '34c GETOPT="${getopt}/bin/getopt"' \
"$out/lib/password-store.platform.sh"
PREFIX="$out" make install
'';
postFixup = ''
@@ -54,6 +56,6 @@ stdenv.mkDerivation rec {
# Ensure all dependencies are in PATH
wrapProgram $out/bin/pass \
--prefix PATH : "${coreutils}/bin:${gnused}/bin:${getopt}/bin:${gnupg}/bin:${git}/bin:${tree}/bin:${pwgen}/bin"
--prefix PATH : "${coreutils}/bin:${gnused}/bin:${getopt}/bin:${gnupg}/bin:${git}/bin:${tree}/bin:${pwgen}/bin${if withX then ":${xclip}/bin" else ""}"
'';
}

View File

@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = "http://gnupg.org/aegypten2/";
description = "GnuPG's interface to passphrase input";
license = "GPLv2+";
license = stdenv.lib.licenses.gpl2Plus;
longDescription = ''
Pinentry provides a console and a GTK+ GUI that allows users to

View File

@@ -38,7 +38,7 @@ stdenv.mkDerivation {
to the process.
'';
license = "GPLv2";
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.gnu;
maintainers = [ ];

View File

@@ -1,52 +1,53 @@
{ stdenv, fetchurl, coreutils, pam, groff }:
stdenv.mkDerivation rec {
name = "sudo-1.8.9p4";
name = "sudo-1.8.10p3";
src = fetchurl {
urls =
[ "ftp://ftp.sudo.ws/pub/sudo/${name}.tar.gz"
"ftp://ftp.sudo.ws/pub/sudo/OLD/${name}.tar.gz"
];
sha256 = "19y75bsh4z2kid5jk2r84z7rvmnh90n8cb9fbn9l4rcw83lzjhqr";
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"
EOF
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 = ''
# visudo does not make sense on NixOS.
rm $out/sbin/visudo $out/share/man/man8/visudo.8
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/;

View File

@@ -1,11 +1,11 @@
{ stdenv, fetchurl, libevent, openssl, zlib }:
stdenv.mkDerivation rec {
name = "tor-0.2.3.25";
name = "tor-0.2.4.23";
src = fetchurl {
url = "http://www.torproject.org/dist/${name}.tar.gz";
sha256 = "bb2d6f1136f33e11d37e6e34184143bf191e59501613daf33ae3d6f78f3176a0";
url = "https://archive.torproject.org/tor-package-archive/${name}.tar.gz";
sha256 = "0a8l6d82hk4wbn7nlphd3c1maxhgdli8338wbg5r9dk6zcy7k8q5";
};
buildInputs = [ libevent openssl zlib ];

View File

@@ -20,13 +20,13 @@ let
in stdenv.mkDerivation rec {
name = "tor-browser-${version}";
version = "3.5";
version = "3.6.2";
src = fetchurl {
url = "https://www.torproject.org/dist/torbrowser/${version}/tor-browser-linux${bits}-${version}_en-US.tar.xz";
url = "https://archive.torproject.org/tor-package-archive/torbrowser/${version}/tor-browser-linux${bits}-${version}_en-US.tar.xz";
sha256 = if bits == "64" then
"e448dc90365a88d73a6ff85347adbe763ef0f800d0cb2e7b7165d7f0646f7c41" else
"b0b29b4e75cd4a1aaecf7f4716216edcfc5947516744e2eaeae38bec1d03cea1";
"1rfv59k9mia6hr1z1k4im20dy59ir7i054cgf78sfj1zsh08q7hf" else
"1klkk1k5r51pcx44r1z3sw08fqcl2f2v5iblf4yh83js482c37r8";
};
patchPhase = ''
@@ -45,8 +45,8 @@ in stdenv.mkDerivation rec {
'';
installPhase = ''
ensureDir $out/share/tor-browser
ensureDir $out/bin
mkdir -p $out/share/tor-browser
mkdir -p $out/bin
cp -R * $out/share/tor-browser
cat > "$out/bin/tor-browser" << EOF

View File

@@ -19,6 +19,6 @@ stdenv.mkDerivation rec {
description = "use socks-friendly applications with Tor";
homepage = http://code.google.com/p/torsocks/;
repositories.git = https://git.torproject.org/torsocks.git;
license = "GPLv2";
license = stdenv.lib.licenses.gpl2;
};
}

View File

@@ -0,0 +1,22 @@
{ stdenv, fetchurl, buildPythonPackage, pycrypto }:
buildPythonPackage rec {
namePrefix = "";
name = "volatility-2.3.1";
src = fetchurl {
url = "http://volatility.googlecode.com/files/${name}.tar.gz";
sha256 = "bb1411fc671e0bf550a31e534fb1991b2f940f1dce1ebe4ce2fb627aec40726c";
};
doCheck = false;
propagatedBuildInputs = [ pycrypto ];
meta = with stdenv.lib; {
homepage = https://code.google.com/p/volatility;
description = "advanced memory forensics framework";
maintainers = with maintainers; [ bosu ];
license = "GPLv2+";
};
}