Merge branch 'master.upstream' into staging.upstream

This commit is contained in:
William A. Kennington III 2015-07-27 16:11:03 -07:00
commit 6b55ca513d
25 changed files with 251 additions and 55 deletions

View File

@ -50,12 +50,30 @@ following incompatible changes:
<itemizedlist>
<listitem><para><command>sshd</command> no longer supports DSA and ECDSA
host keys by default. If you have existing systems with such host keys
and want to continue to use them, please set
<programlisting>
system.stateVersion = "14.12";
</programlisting>
(The new option <option>system.stateVersion</option> ensures that
certain configuration changes that could break existing systems (such
as the <command>sshd</command> host key setting) will maintain
compatibility with the specified NixOS release.)</para></listitem>
<listitem><para><command>cron</command> is no longer enabled by
default, unless you have a non-empty
<option>services.cron.systemCronJobs</option>. To force
<command>cron</command> to be enabled, set
<option>services.cron.enable = true</option>.</para></listitem>
<listitem><para>Nix now requires binary caches to be cryptographically
signed. If you have unsigned binary caches that you want to continue
to use, you should set <option>nix.requireSignedBinaryCaches =
false</option>.</para></listitem>
<listitem><para>Steam now doesn't need root rights to work. Instead of using
<literal>*-steam-chrootenv</literal>, you should now just run <literal>steam</literal>.
<literal>steamChrootEnv</literal> package was renamed to <literal>steam</literal>,

View File

@ -544,6 +544,9 @@ $bootLoaderConfig
# uid = 1000;
# };
# The NixOS release to be compatible with for stateful data such as databases.
system.stateVersion = "@nixosRelease@";
}
EOF
} else {

View File

@ -40,6 +40,7 @@ let
src = ./nixos-generate-config.pl;
path = [ pkgs.btrfsProgs ];
perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl";
inherit (config.system) nixosRelease;
};
nixos-option = makeProg {

View File

@ -6,12 +6,35 @@ with lib;
options = {
system.stateVersion = mkOption {
type = types.str;
default = config.system.nixosRelease;
description = ''
Every once in a while, a new NixOS release may change
configuration defaults in a way incompatible with stateful
data. For instance, if the default version of PostgreSQL
changes, the new version will probably be unable to read your
existing databases. To prevent such breakage, you can set the
value of this option to the NixOS release with which you want
to be compatible. The effect is that NixOS will option
defaults corresponding to the specified release (such as using
an older version of PostgreSQL).
'';
};
system.nixosVersion = mkOption {
internal = true;
type = types.str;
description = "NixOS version.";
};
system.nixosRelease = mkOption {
internal = true;
type = types.str;
default = readFile "${toString pkgs.path}/.version";
description = "NixOS release.";
};
system.nixosVersionSuffix = mkOption {
internal = true;
type = types.str;
@ -41,8 +64,7 @@ with lib;
config = {
system.nixosVersion =
mkDefault (readFile "${toString pkgs.path}/.version" + config.system.nixosVersionSuffix);
system.nixosVersion = mkDefault (config.system.nixosRelease + config.system.nixosVersionSuffix);
system.nixosVersionSuffix =
let suffixFile = "${toString pkgs.path}/.version-suffix"; in

View File

@ -154,6 +154,12 @@ in
config = mkIf config.services.postgresql.enable {
services.postgresql.package =
# Note: when changing the default, make it conditional on
# system.stateVersion to maintain compatibility with existing
# systems!
mkDefault pkgs.postgresql94;
services.postgresql.authentication = mkAfter
''
# Generated file; do not edit!

View File

@ -254,7 +254,7 @@ in
requireSignedBinaryCaches = mkOption {
type = types.bool;
default = false;
default = true;
description = ''
If enabled, Nix will only download binaries from binary
caches if they are cryptographically signed with any of the

View File

@ -184,16 +184,11 @@ in
hostKeys = mkOption {
type = types.listOf types.attrs;
default =
[ { path = "/etc/ssh/ssh_host_dsa_key";
type = "dsa";
}
{ path = "/etc/ssh/ssh_host_ecdsa_key";
type = "ecdsa";
bits = 521;
}
{ path = "/etc/ssh/ssh_host_ed25519_key";
type = "ed25519";
}
[ { type = "rsa"; bits = 4096; path = "/etc/ssh/ssh_host_rsa_key"; }
{ type = "ed25519"; path = "/etc/ssh/ssh_host_ed25519_key"; }
] ++ optionals (!versionAtLeast config.system.stateVersion "15.07")
[ { type = "dsa"; path = "/etc/ssh/ssh_host_dsa_key"; }
{ type = "ecdsa"; bits = 521; path = "/etc/ssh/ssh_host_ecdsa_key"; }
];
description = ''
NixOS can automatically generate SSH host keys. This option

View File

@ -67,7 +67,7 @@ in {
-l ${cfg.latitude}:${cfg.longitude} \
-t ${toString cfg.temperature.day}:${toString cfg.temperature.night} \
-b ${toString cfg.brightness.day}:${toString cfg.brightness.night} \
${cfg.extraOptions}
${lib.strings.concatStringsSep " " cfg.extraOptions}
'';
environment = { DISPLAY = ":0"; };
serviceConfig.Restart = "always";

View File

@ -60,8 +60,8 @@ import ./make-test.nix ({pkgs, ... }: {
$client->succeed("lpq") =~ /DeskjetRemote is ready.*no entries/s or die;
# Test printing various file types.
foreach my $file ("${pkgs.groff}/share/doc/*/examples/mom/penguin.pdf",
"${pkgs.groff}/share/doc/*/meref.ps",
foreach my $file ("${pkgs.groff.doc}/share/doc/*/examples/mom/penguin.pdf",
"${pkgs.groff.doc}/share/doc/*/meref.ps",
"${pkgs.cups}/share/doc/cups/images/cups.png",
"${pkgs.pcre}/share/doc/pcre/pcre.txt")
{

View File

@ -0,0 +1,41 @@
{ stdenv, fetchurl, libxml2Python, libxslt, makeWrapper
, python, pyserial, pygtk
}:
let
version = "0.4.1";
in
stdenv.mkDerivation rec {
name = "chirp-${version}";
inherit version;
src = fetchurl {
url = "http://chirp.danplanet.com/download/0.4.1/chirp-${version}.tar.gz";
sha256 = "17iihghqjprn2hld193qw0yl1kkrf6m0fp57l7ibkflxr0nnb7cc";
};
buildInputs = [
makeWrapper
pyserial pygtk libxml2Python libxslt pyserial
];
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
installPhase = ''
mkdir -p $out/bin $out/share/chirp
cp -r . $out/share/chirp/
ln -s $out/share/chirp/chirpw $out/bin/chirpw
for file in "$out"/bin/*; do
wrapProgram "$file" \
--prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out")
done
'';
meta = with stdenv.lib; {
description = "A free, open-source tool for programming your amateur radio.";
homepage = http://chirp.danplanet.com/;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = [ maintainers.the-kenny ];
};
}

View File

@ -0,0 +1,36 @@
{ stdenv, fetchurl, unzip, alsaLib }:
let
version = "1.2";
in
stdenv.mkDerivation rec {
name = "direwolf-${version}";
inherit version;
src = fetchurl {
url = "http://home.comcast.net/~wb2osz/Version%201.2/direwolf-${version}-src.zip";
sha256 = "0csl6harx7gmjmamxy0ylzhbamppphffisk8j33dc6g08k6rc77f";
};
buildInputs = [
unzip alsaLib
];
patchPhase = ''
substituteInPlace Makefile.linux \
--replace "/usr/local" "$out" \
--replace "/usr/share" "$out/share"
'';
preInstall = ''
mkdir -p $out/bin
'';
meta = with stdenv.lib; {
description = "A Soundcard Packet TNC, APRS Digipeater, IGate, APRStt gateway.";
# On the page: This page will be disappearing on October 8, 2015.
homepage = https://home.comcast.net/~wb2osz/site/;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = [ maintainers.the-kenny ];
};
}

View File

@ -30,6 +30,6 @@ stdenv.mkDerivation rec {
homepage = http://sdr.osmocom.org/trac/wiki/GrOsmoSDR;
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = [ maintainers.bjornfor ];
maintainers = with maintainers; [ bjornfor the-kenny ];
};
}

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, qt4, gnuradio, boost, gnuradio-osmosdr
# drivers (optional):
, rtl-sdr
, rtl-sdr, hackrf
, pulseaudioSupport ? true, libpulseaudio
}:
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [
qt4 gnuradio boost gnuradio-osmosdr rtl-sdr
qt4 gnuradio boost gnuradio-osmosdr rtl-sdr hackrf
] ++ stdenv.lib.optionals pulseaudioSupport [ libpulseaudio ];
configurePhase = ''qmake PREFIX="$out"'';
@ -42,6 +42,6 @@ stdenv.mkDerivation rec {
# it's currently unknown which version of the BSD license that is.
license = licenses.gpl3Plus;
platforms = platforms.linux; # should work on Darwin / OS X too
maintainers = [ maintainers.bjornfor ];
maintainers = with maintainers; [ bjornfor the-kenny ];
};
}

View File

@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
name = "hackrf-${version}";
version = "2014.08.1";
version = "2015.07.2";
src = fetchgit {
url = "git://github.com/mossmann/hackrf";
rev = "refs/tags/v${version}";
sha256 = "1f3mmzyn6qqbl02h6dkz0zybppihqgpdxjgqmkb1pn3i0d98ydb3";
sha256 = "0wa4m0kdq8q2ib724w8ry8shmmm1liaaawhjygrjx6zxz9jxr3vm";
};
buildInputs = [
@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
homepage = http://greatscottgadgets.com/hackrf/;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = [ maintainers.sjmackenzie ];
maintainers = with maintainers; [ sjmackenzie the-kenny ];
};
}

View File

@ -0,0 +1,41 @@
{ stdenv, fetchFromGitHub, qt4, libpulseaudio }:
let
version = "1.0.0";
in
stdenv.mkDerivation {
name = "multimon-ng-${version}";
src = fetchFromGitHub {
owner = "EliasOenal";
repo = "multimon-ng";
rev = "4cc984f35f859539c94aa56d3fc6218a6de51148";
sha256 = "12z6f0ra2k0qh56pcvnwvlxd3msvr6yr97jvs7w5kf42jqbxdsga";
};
buildInputs = [ qt4 libpulseaudio ];
preBuild = "qmake multimon-ng.pro";
installPhase = ''
mkdir -p $out/bin
cp multimon-ng $out/bin
'';
meta = with stdenv.lib; {
description = "Multimon is a digital baseband audio protocol decoder.";
longDescription = ''
multimon-ng a fork of multimon, a digital baseband audio
protocol decoder for common signaling modes in commercial and
amateur radio data services. It decodes the following digital
transmission modes:
POCSAG512 POCSAG1200 POCSAG2400 EAS UFSK1200 CLIPFSK AFSK1200
AFSK2400 AFSK2400_2 AFSK2400_3 HAPN4800 FSK9600 DTMF ZVEI1 ZVEI2
ZVEI3 DZVEI PZVEI EEA EIA CCIR MORSE CW
'';
homepage = "https://github.com/EliasOenal/multimon-ng";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ the-kenny ];
};
}

View File

@ -34,8 +34,9 @@ let
gamesPackages = with gnome3; [ swell-foop lightsoff iagno ];
inherit (pkgs) libsoup glib gtk2 webkitgtk24x gtk3 gtkmm3 libcanberra;
inherit (pkgs) glib gtk2 webkitgtk24x gtk3 gtkmm3 libcanberra;
inherit (pkgs.gnome2) ORBit2;
libsoup = pkgs.libsoup.override { gnomeSupport = true; };
orbit = ORBit2;
gnome3 = self // { recurseForDerivations = false; };
clutter = pkgs.clutter_1_22;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, unzip, ant, jdk, makeWrapper }:
{ stdenv, fetchurl, unzip, ant, jdk7, makeWrapper }:
let
version = "3.7.2";
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "0swyysbyfmv068x8q1c5jqpwk5zb4xahg17aypx5rwb660f8fpbm";
};
buildInputs = [ unzip ant jdk makeWrapper ];
buildInputs = [ unzip ant jdk7 makeWrapper ];
unpackPhase = ''
mkdir "${name}"
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
cp -v *.jar $out/share/java
mkdir -pv $out/bin
makeWrapper ${jdk.jre}/bin/java $out/bin/ecj \
makeWrapper ${jdk7.jre}/bin/java $out/bin/ecj \
--add-flags "-cp $out/share/java/ecj.jar org.eclipse.jdt.internal.compiler.batch.Main"
# Add a setup hook that causes Ant to use the ECJ.

View File

@ -8,7 +8,9 @@ stdenv.mkDerivation rec {
sha256 = "01vcd1mfn2s0iiq2cjyzgvnxx6kcq9cwra1iipijhs0vwvjx0yhf";
};
configureFlags = [ "--with-boost=${boost.dev}" ];
configureFlags = [
"--with-boost=${boost.dev}"
];
buildInputs = [ expat zlib boost ];

View File

@ -1,14 +1,17 @@
{ fetchurl, stdenv, binutils }:
{ stdenv, fetchurl, binutils }:
with stdenv.lib;
stdenv.mkDerivation rec {
name = "lightning-2.0.5";
name = "lightning-${version}";
version = "2.1.0";
src = fetchurl {
url = "mirror://gnu/lightning/${name}.tar.gz";
sha256 = "0jm9a8ddxc1v9hyzyv4ybg37fjac2yjqv1hkd262wxzqms36mdk5";
sha256 = "19j9nwl88k660045s40cbz5zrl1wpd2mcxnnc8qqnnaj311a58qz";
};
# Needs libopcodes.so from binutils for 'make check'
# Needs libopcodes.so from binutils for 'make check'
buildInputs = [ binutils ];
doCheck = true;
@ -16,7 +19,6 @@ stdenv.mkDerivation rec {
meta = {
homepage = http://www.gnu.org/software/lightning/;
description = "Run-time code generation library";
longDescription = ''
GNU lightning is a library that generates assembly language code
at run-time; it is very fast, making it ideal for Just-In-Time
@ -24,7 +26,7 @@ stdenv.mkDerivation rec {
to the clients a standardized RISC instruction set inspired by
the MIPS and SPARC chips.
'';
license = stdenv.lib.licenses.lgpl3Plus;
maintainers = [ maintainers.AndersonTorres ];
license = licenses.lgpl3Plus;
};
}

View File

@ -0,0 +1,12 @@
{ callPackage, fetchFromGitHub, ... } @ args:
callPackage ./generic.nix (args // rec {
version = "3.0.0-alpha-3.1";
# make sure you test also -A pythonPackages.protobuf
src = fetchFromGitHub {
owner = "google";
repo = "protobuf";
rev = "v${version}";
sha256 = "0vzw20ymjmjrrmg84f822qslclsb2q0wf0qdj2da198gmkkbrw45";
};
})

View File

@ -19,9 +19,16 @@ stdenv.mkDerivation rec {
"DESTDIR="
"LIBDIR=$(out)/lib"
"SBINDIR=$(out)/sbin"
"CONFDIR=$(out)/etc"
"DOCDIR=$(out)/share/doc/${name}"
"MANDIR=$(out)/share/man"
"DOCDIR=$(TMPDIR)/share/doc/${name}" # Don't install docs
];
buildFlags = [
"CONFDIR=/etc"
];
installFlags = [
"CONFDIR=$(out)/etc"
];
buildInputs = [ db iptables ];
@ -29,9 +36,6 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
# Get rid of useless TeX/SGML docs.
postInstall = "rm -rf $out/share/doc";
meta = with stdenv.lib; {
homepage = http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2;
description = "A collection of utilities for controlling TCP/IP networking and traffic control in Linux";

View File

@ -12,12 +12,12 @@ assert ldapSupport -> aprutil.ldapSupport && openldap != null;
assert mpm == "prefork" || mpm == "worker" || mpm == "event";
stdenv.mkDerivation rec {
version = "2.2.29";
version = "2.2.31";
name = "apache-httpd-${version}";
src = fetchurl {
url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
sha1 = "1d6a8fbc1391d358cc6fe430edc16222b97258d5";
sha256 = "1b165zi7jrrlz5wmyy3b34lcs3dl4g0dymfb0qxwdnimylcrsbzk";
};
buildInputs = [perl apr aprutil pcre] ++

View File

@ -14,12 +14,12 @@ assert sslSupport -> aprutil.sslSupport && openssl != null;
assert ldapSupport -> aprutil.ldapSupport && openldap != null;
stdenv.mkDerivation rec {
version = "2.4.12";
version = "2.4.16";
name = "apache-httpd-${version}";
src = fetchurl {
url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
sha256 = "1r7a63ka41vlswrqbb21vall6sc7svwgd497kb6dh8a6zvnkjvdd";
sha256 = "0hrpy6gjwma0kba7p7m61vwh82qcnkf08123lrwpg257m93hnrmc";
};
buildInputs = [perl] ++

View File

@ -1,13 +1,14 @@
{ stdenv, fetchurl, which, protobuf, gperftools
, boost, zlib, curl, python, m4, icu, jemalloc }:
{ stdenv, fetchurl, which, m4, python
, protobuf, boost, zlib, curl, openssl, icu, jemalloc
}:
stdenv.mkDerivation rec {
name = "rethinkdb-${version}";
version = "2.0.3";
version = "2.0.4";
src = fetchurl {
url = "http://download.rethinkdb.com/dist/${name}.tgz";
sha256 = "1580h5clkw8kprdb9waaf8al3wa2vj5d2l2m394r91fq45ss23sd";
sha256 = "19qhia4lfa8a0rzp2v6lnlxp2lf4z4vqhgfxnicfdnx07q4r847i";
};
preConfigure = ''
@ -15,12 +16,17 @@ stdenv.mkDerivation rec {
patchShebangs .
'';
configureFlags = "--lib-path ${gperftools}/lib --lib-path ${jemalloc}/lib";
configureFlags = [
"--with-jemalloc"
"--lib-path=${jemalloc}/lib"
];
buildInputs = [ protobuf boost zlib curl icu jemalloc ];
buildInputs = [ protobuf boost zlib curl openssl icu jemalloc ];
nativeBuildInputs = [ which m4 python ];
enableParallelBuilding = true;
meta = {
description = "An open-source distributed database built with love";
longDescription = ''

View File

@ -1415,7 +1415,7 @@ let
evtest = callPackage ../applications/misc/evtest { };
exempi = callPackage ../development/libraries/exempi { boost = boost155; };
exempi = callPackage ../development/libraries/exempi { };
execline = callPackage ../tools/misc/execline { };
@ -7839,6 +7839,7 @@ let
postgis = callPackage ../development/libraries/postgis { };
protobuf = protobuf2_6;
protobuf3_0 = lowPrio (callPackage ../development/libraries/protobuf/3.0.nix { });
protobuf2_6 = callPackage ../development/libraries/protobuf/2.6.nix { };
protobuf2_5 = callPackage ../development/libraries/protobuf/2.5.nix { };
@ -9155,9 +9156,7 @@ let
restund = callPackage ../servers/restund {};
rethinkdb = callPackage ../servers/nosql/rethinkdb {
boost = boost155;
};
rethinkdb = callPackage ../servers/nosql/rethinkdb { };
rippled = callPackage ../servers/rippled {
boost = boost157;
@ -10824,6 +10823,10 @@ let
chatzilla = callPackage ../applications/networking/irc/chatzilla { };
chirp = callPackage ../applications/misc/chirp {
inherit (pythonPackages) pyserial pygtk;
};
chromium = callPackage ../applications/networking/browsers/chromium {
channel = "stable";
pulseSupport = config.pulseaudio or true;
@ -10939,6 +10942,8 @@ let
diffuse = callPackage ../applications/version-management/diffuse { };
direwolf = callPackage ../applications/misc/direwolf { };
dirt = callPackage ../applications/audio/dirt {};
distrho = callPackage ../applications/audio/distrho {};
@ -11853,7 +11858,6 @@ let
inherit (perlPackages) ArchiveZip CompressZlib;
inherit (gnome) GConf ORBit2 gnome_vfs;
zip = zip.override { enableNLS = false; };
#boost = boost155;
#glm = glm_0954;
bluez5 = bluez5_28;
fontsConf = makeFontsConf {
@ -12085,6 +12089,8 @@ let
inherit (lua51Packages) luafilesystem lrexlib luazip luasqlite3;
};
multimon-ng = callPackage ../applications/misc/multimon-ng { };
multisync = callPackage ../applications/misc/multisync {
inherit (gnome) ORBit2 libbonobo libgnomeui GConf;
};