Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
83e224cacb
@ -37,7 +37,7 @@ rec {
|
||||
# `driver' is the script that runs the network.
|
||||
runTests = driver:
|
||||
stdenv.mkDerivation {
|
||||
name = "vm-test-run";
|
||||
name = "vm-test-run-${driver.testName}";
|
||||
|
||||
requiredSystemFeatures = [ "kvm" "nixos-test" ];
|
||||
|
||||
@ -68,9 +68,10 @@ rec {
|
||||
|
||||
|
||||
makeTest =
|
||||
{ testScript, makeCoverageReport ? false, ... } @ t:
|
||||
{ testScript, makeCoverageReport ? false, name ? "unnamed", ... } @ t:
|
||||
|
||||
let
|
||||
testDriverName = "nixos-test-driver-${name}";
|
||||
|
||||
nodes = buildVirtualNetwork (
|
||||
t.nodes or (if t ? machine then { machine = t.machine; } else { }));
|
||||
@ -88,10 +89,11 @@ rec {
|
||||
# Generate onvenience wrappers for running the test driver
|
||||
# interactively with the specified network, and for starting the
|
||||
# VMs from the command line.
|
||||
driver = runCommand "nixos-test-driver"
|
||||
driver = runCommand testDriverName
|
||||
{ buildInputs = [ makeWrapper];
|
||||
testScript = testScript';
|
||||
preferLocalBuild = true;
|
||||
testName = name;
|
||||
}
|
||||
''
|
||||
mkdir -p $out/bin
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Test whether `avahi-daemon' and `libnss-mdns' work as expected.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "avahi";
|
||||
|
||||
nodes = {
|
||||
one =
|
||||
|
@ -23,6 +23,7 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
name = "bittorrent";
|
||||
|
||||
nodes =
|
||||
{ tracker =
|
||||
|
@ -6,6 +6,8 @@
|
||||
with import ../lib/build-vms.nix { inherit nixos nixpkgs system; };
|
||||
|
||||
rec {
|
||||
name = "check-filesystems";
|
||||
|
||||
nodes = {
|
||||
share = {pkgs, config, ...}: {
|
||||
services.nfs.server.enable = true;
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Test for NixOS' container support.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "containers";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix ({ pkgs, ... }: {
|
||||
name = "firefox";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Test the firewall module.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "firewall";
|
||||
|
||||
nodes =
|
||||
{ walled =
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix {
|
||||
name = "gnome3";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix {
|
||||
name = "gnome3_12";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
@ -1,6 +1,8 @@
|
||||
# This test runs influxdb and checks if influxdb is up and running
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "influxdb";
|
||||
|
||||
nodes = {
|
||||
one = { config, pkgs, ... }: {
|
||||
services.influxdb.enable = true;
|
||||
|
@ -215,10 +215,11 @@ let
|
||||
'';
|
||||
|
||||
|
||||
makeInstallerTest =
|
||||
makeInstallerTest = name:
|
||||
{ createPartitions, testChannel ? false, useEFI ? false, grubVersion ? 2, grubDevice ? "/dev/vda" }:
|
||||
makeTest {
|
||||
inherit iso;
|
||||
name = "installer-" + name;
|
||||
nodes = if testChannel then { inherit webserver; } else { };
|
||||
testScript = testScriptFun {
|
||||
inherit createPartitions testChannel useEFI grubVersion grubDevice;
|
||||
@ -233,7 +234,7 @@ in {
|
||||
|
||||
# The (almost) simplest partitioning scheme: a swap partition and
|
||||
# one big filesystem partition.
|
||||
simple = makeInstallerTest
|
||||
simple = makeInstallerTest "simple"
|
||||
{ createPartitions =
|
||||
''
|
||||
$machine->succeed(
|
||||
@ -251,7 +252,7 @@ in {
|
||||
};
|
||||
|
||||
# Same as the previous, but now with a separate /boot partition.
|
||||
separateBoot = makeInstallerTest
|
||||
separateBoot = makeInstallerTest "separateBoot"
|
||||
{ createPartitions =
|
||||
''
|
||||
$machine->succeed(
|
||||
@ -273,7 +274,7 @@ in {
|
||||
|
||||
# Create two physical LVM partitions combined into one volume group
|
||||
# that contains the logical swap and root partitions.
|
||||
lvm = makeInstallerTest
|
||||
lvm = makeInstallerTest "lvm"
|
||||
{ createPartitions =
|
||||
''
|
||||
$machine->succeed(
|
||||
@ -295,7 +296,7 @@ in {
|
||||
'';
|
||||
};
|
||||
|
||||
swraid = makeInstallerTest
|
||||
swraid = makeInstallerTest "swraid"
|
||||
{ createPartitions =
|
||||
''
|
||||
$machine->succeed(
|
||||
@ -328,7 +329,7 @@ in {
|
||||
};
|
||||
|
||||
# Test a basic install using GRUB 1.
|
||||
grub1 = makeInstallerTest
|
||||
grub1 = makeInstallerTest "grub1"
|
||||
{ createPartitions =
|
||||
''
|
||||
$machine->succeed(
|
||||
@ -348,7 +349,7 @@ in {
|
||||
};
|
||||
|
||||
# Test an EFI install.
|
||||
efi = makeInstallerTest
|
||||
efi = makeInstallerTest "efi"
|
||||
{ createPartitions =
|
||||
''
|
||||
$machine->succeed(
|
||||
@ -369,6 +370,7 @@ in {
|
||||
# Rebuild the CD configuration with a little modification.
|
||||
rebuildCD = makeTest
|
||||
{ inherit iso;
|
||||
name = "rebuild-CD";
|
||||
nodes = { };
|
||||
testScript =
|
||||
''
|
||||
|
@ -2,6 +2,7 @@
|
||||
# solicication/advertisement using radvd works.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "ipv6";
|
||||
|
||||
nodes =
|
||||
{ client = { config, pkgs, ... }: { };
|
||||
|
@ -4,6 +4,7 @@
|
||||
# 3. jenkins service not started on slave node
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "jenkins";
|
||||
|
||||
nodes = {
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix ({ pkgs, ... }: {
|
||||
name = "kde4";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Test whether fast reboots via kexec work.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "kexec";
|
||||
|
||||
machine = { config, pkgs, ... }:
|
||||
{ virtualisation.vlans = [ ]; };
|
||||
|
@ -1,6 +1,7 @@
|
||||
import ./make-test.nix ({ pkgs, latestKernel ? false, ... }:
|
||||
|
||||
{
|
||||
name = "login";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
@ -2,6 +2,7 @@
|
||||
# elasticsearch is started.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "logstash";
|
||||
|
||||
nodes = {
|
||||
one =
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Miscellaneous small tests that don't warrant their own VM run.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "misc";
|
||||
|
||||
machine =
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
@ -1,6 +1,8 @@
|
||||
# Simple example to showcase distributed tests using NixOS VMs.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "mpich";
|
||||
|
||||
nodes = {
|
||||
master =
|
||||
{ config, pkgs, ... }: {
|
||||
|
@ -7,6 +7,8 @@ let
|
||||
};
|
||||
in
|
||||
{
|
||||
name = "mumble";
|
||||
|
||||
nodes = {
|
||||
server = { config, pkgs, ... }: {
|
||||
services.murmur.enable = true;
|
||||
|
@ -2,6 +2,7 @@
|
||||
# machine.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "munin";
|
||||
|
||||
nodes = {
|
||||
one =
|
||||
|
@ -6,6 +6,8 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
name = "mysql-replication";
|
||||
|
||||
nodes = {
|
||||
master =
|
||||
{ pkgs, config, ... }:
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix {
|
||||
name = "mysql";
|
||||
|
||||
nodes = {
|
||||
master =
|
||||
|
@ -5,6 +5,7 @@
|
||||
# for the client.
|
||||
|
||||
import ./make-test.nix {
|
||||
name = "nat";
|
||||
|
||||
nodes =
|
||||
{ client =
|
||||
|
@ -17,6 +17,7 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
name = "nfs";
|
||||
|
||||
nodes =
|
||||
{ client1 = client;
|
||||
|
@ -16,6 +16,7 @@ let
|
||||
];
|
||||
|
||||
in {
|
||||
name = "openssh";
|
||||
|
||||
nodes = {
|
||||
|
||||
|
@ -63,6 +63,8 @@ let
|
||||
logvol / --size=1000 --grow --fstype=ext4 --name=root --vgname=nixos
|
||||
'';
|
||||
in {
|
||||
name = "partitiion";
|
||||
|
||||
machine = { config, pkgs, ... }: {
|
||||
environment.systemPackages = [
|
||||
pkgs.pythonPackages.nixpart
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix ({ pkgs, ... }: {
|
||||
name = "phabricator";
|
||||
|
||||
nodes = {
|
||||
storage =
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Test printing via CUPS.
|
||||
|
||||
import ./make-test.nix ({pkgs, ... }: {
|
||||
name = "printing";
|
||||
|
||||
nodes = {
|
||||
|
||||
|
@ -14,6 +14,7 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
name = "proxy";
|
||||
|
||||
nodes =
|
||||
{ proxy =
|
||||
|
@ -13,6 +13,7 @@ let
|
||||
in
|
||||
|
||||
rec {
|
||||
name = "quake3";
|
||||
|
||||
makeCoverageReport = true;
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
# This test runs rabbitmq and checks if rabbitmq is up and running.
|
||||
|
||||
import ./make-test.nix ({ pkgs, ... }: {
|
||||
name = "rabbitmq";
|
||||
|
||||
nodes = {
|
||||
one = { config, pkgs, ... }: {
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix {
|
||||
name = "simple"
|
||||
|
||||
machine = { config, pkgs, ... }: { };
|
||||
|
||||
|
@ -32,6 +32,7 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
name = "subversion";
|
||||
|
||||
nodes =
|
||||
{ webserver =
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix {
|
||||
name = "tomcat";
|
||||
|
||||
nodes = {
|
||||
server =
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix ({ pkgs, ... }: {
|
||||
name = "trac";
|
||||
|
||||
nodes = {
|
||||
storage =
|
||||
|
@ -10,6 +10,7 @@ let
|
||||
in
|
||||
|
||||
{
|
||||
name = "udisks2";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
@ -1,4 +1,5 @@
|
||||
import ./make-test.nix {
|
||||
name = "xfce";
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
|
@ -95,4 +95,7 @@ rec {
|
||||
darcsToGit = callPackage ./darcs-to-git { };
|
||||
|
||||
gitflow = callPackage ./gitflow { };
|
||||
|
||||
git-remote-hg = callPackage ./git-remote-hg { };
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,35 @@
|
||||
{ stdenv, fetchgit, mercurial, makeWrapper,
|
||||
asciidoc, xmlto, dbus, docbook_xsl, docbook_xml_dtd_45, libxslt, libxml2
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
rev = "185852eac44c25ae2e8d3b3fb6c9630e754e6363";
|
||||
version = "v0.2-185852eac44c25ae2e8d3b3fb6c9630e754e6363";
|
||||
name = "git-remote-hg-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
inherit rev;
|
||||
url = "git://github.com/felipec/git-remote-hg.git";
|
||||
sha256 = "1hc65nvxq7if1imwffyxia0i6vnkbax09gfcl9vq9yffzi8xzzfy";
|
||||
};
|
||||
|
||||
buildInputs = [ mercurial.python mercurial makeWrapper
|
||||
asciidoc xmlto dbus docbook_xsl docbook_xml_dtd_45 libxslt libxml2
|
||||
];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
installFlags = "HOME=\${out}";
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/git-remote-hg \
|
||||
--prefix PYTHONPATH : "$(echo ${mercurial}/lib/python*/site-packages):$(echo ${mercurial.python}/lib/python*/site-packages)${stdenv.lib.concatMapStrings (x: ":$(echo ${x}/lib/python*/site-packages)") mercurial.pythonPackages}"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://github.com/felipec/git-remote-hg";
|
||||
description = "semi-official Mercurial bridge from Git project, once installed, it allows you to clone, fetch and push to and from Mercurial repositories as if they were Git ones";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ maintainers.garbas ];
|
||||
};
|
||||
}
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0ks9gsnhxrs2vccc6ha9m8xmj83lmw09xcws4zc0k57q4jcy5bgk";
|
||||
};
|
||||
|
||||
buildInputs = [ libunwind ];
|
||||
buildInputs = stdenv.lib.optional stdenv.isLinux libunwind;
|
||||
|
||||
# some packages want to link to the static tcmalloc_minimal
|
||||
# to drop the runtime dependency on gperftools
|
||||
@ -19,6 +19,6 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
homepage = https://code.google.com/p/gperftools/;
|
||||
description = "Fast, multi-threaded malloc() and nifty performance analysis tools";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
25
pkgs/development/libraries/nix-plugins/default.nix
Normal file
25
pkgs/development/libraries/nix-plugins/default.nix
Normal file
@ -0,0 +1,25 @@
|
||||
{ stdenv, fetchgit, nix }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "nix-plugins-1.0.0";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://github.com/shlevy/nix-plugins.git;
|
||||
rev = "refs/tags/1.0.0";
|
||||
sha256 = "e624de55cabc9014e77f21978d657089ae94ce161584b3d9dc3c9763658421b3";
|
||||
};
|
||||
|
||||
buildInputs = [ nix ];
|
||||
|
||||
buildFlags = [ "NIX_INCLUDE=${nix}/include" ];
|
||||
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
meta = {
|
||||
description = "Collection of miscellaneous plugins for the nix expression language";
|
||||
homepage = https://github.com/shlevy/nix-plugins;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintaners = [ stdenv.lib.maintainers.shlevy ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -14,7 +14,9 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ perl pkgconfig ];
|
||||
|
||||
buildInputs = [ curl openssl boehmgc sqlite ];
|
||||
buildInputs = [ curl openssl sqlite ];
|
||||
|
||||
propagatedBuildInputs = [ boehmgc ];
|
||||
|
||||
# Note: bzip2 is not passed as a build input, because the unpack phase
|
||||
# would end up using the wrong bzip2 when cross-compiling.
|
||||
|
@ -5708,6 +5708,10 @@ let
|
||||
|
||||
newt = callPackage ../development/libraries/newt { };
|
||||
|
||||
nix-plugins = callPackage ../development/libraries/nix-plugins {
|
||||
nix = pkgs.nixUnstable;
|
||||
};
|
||||
|
||||
nspr = callPackage ../development/libraries/nspr { };
|
||||
|
||||
nss = lowPrio (callPackage ../development/libraries/nss { });
|
||||
|
Loading…
Reference in New Issue
Block a user