Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2018-11-12 18:59:08 +01:00
commit daf3297cb4
141 changed files with 1835 additions and 779 deletions

View File

@ -67,9 +67,9 @@ buildDunePackage rec {
<para>
Here is a second example, this time using a source archive generated with
<literal>dune-release</literal>. The <literal>unpackCmd</literal>
redefinition is necessary to be able to unpack the kind of tarball that
<literal>dune-release</literal> generates. This library does not depend
<literal>dune-release</literal>. It is a good idea to use this archive when
it is available as it will usually contain substituted variables such as a
<literal>%%VERSION%%</literal> field. This library does not depend
on any other OCaml library and no tests are run after building it.
</para>
@ -87,8 +87,6 @@ buildDunePackage rec {
sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq";
};
unpackCmd = "tar xjf $src";
meta = with stdenv.lib; {
homepage = https://github.com/flowtype/ocaml-wtf8;
description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates.";

View File

@ -255,12 +255,22 @@ meta.platforms = stdenv.lib.platforms.linux;
<varname>tests</varname>
</term>
<listitem>
<warning>
<para>
This attribute is special in that it is not actually under the
<literal>meta</literal> attribute set but rather under the
<literal>passthru</literal> attribute set. This is due to a current
limitation of Nix, and will change as soon as Nixpkgs will be able to
depend on a new enough version of Nix. See
<link xlink:href="https://github.com/NixOS/nix/issues/2532">the relevant
issue</link> for more details.
</para>
</warning>
<para>
An attribute set with as values tests. A test is a derivation, which
builds successfully when the test passes, and fails to build otherwise. A
derivation that is a test requires some <literal>meta</literal> elements
to be defined: <literal>needsVMSupport</literal> (automatically filled-in
for NixOS tests) and <literal>timeout</literal>.
derivation that is a test needs to have <literal>meta.timeout</literal>
defined.
</para>
<para>
The NixOS tests are available as <literal>nixosTests</literal> in
@ -270,7 +280,7 @@ meta.platforms = stdenv.lib.platforms.linux;
{ /* ... */, nixosTests }:
{
# ...
meta.tests = {
passthru.tests = {
basic-functionality-and-dovecot-integration = nixosTests.opensmtpd;
};
}
@ -294,17 +304,6 @@ meta.platforms = stdenv.lib.platforms.linux;
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<varname>needsVMSupport</varname>
</term>
<listitem>
<para>
A boolan that states whether the derivation requires build-time support
for Virtual Machine to build successfully.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<varname>hydraPlatforms</varname>

View File

@ -1527,6 +1527,11 @@
github = "ftrvxmtrx";
name = "Siarhei Zirukin";
};
fuerbringer = {
email = "severin@fuerbringer.info";
github = "fuerbringer";
name = "Severin Fürbringer";
};
funfunctor = {
email = "eocallaghan@alterapraxis.com";
name = "Edward O'Callaghan";
@ -1536,6 +1541,11 @@
github = "fuuzetsu";
name = "Mateusz Kowalczyk";
};
fuwa = {
email = "echowss@gmail.com";
github = "fuwa0529";
name = "Haruka Akiyama";
};
fuzzy-id = {
email = "hacking+nixos@babibo.de";
name = "Thomas Bach";

View File

@ -1,6 +1,4 @@
{ system, minimal ? false, config ? {} }:
let pkgs = import ../.. { inherit system config; }; in
{ system, pkgs, minimal ? false, config ? {} }:
with pkgs.lib;
with import ../lib/qemu-flags.nix { inherit pkgs; };

View File

@ -1,6 +1,6 @@
{ system, minimal ? false, config ? {} }:
{ system, pkgs, minimal ? false, config ? {} }:
with import ./build-vms.nix { inherit system minimal config; };
with import ./build-vms.nix { inherit system pkgs minimal config; };
with pkgs;
let
@ -70,8 +70,6 @@ in rec {
mv $i $out/coverage-data/$(dirname $(dirname $i))
done
'';
meta.needsVMSupport = true;
};

View File

@ -1,9 +1,13 @@
{ system ? builtins.currentSystem
, config ? {}
, networkExpr
}:
let nodes = import networkExpr; in
with import ../../../../lib/testing.nix { inherit system; };
with import ../../../../lib/testing.nix {
inherit system;
pkgs = import ../.. { inherit system config; };
};
(makeTest { inherit nodes; testScript = ""; }).driver

View File

@ -335,6 +335,7 @@
kapacitor = 308;
solr = 309;
alerta = 310;
minetest = 311;
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
@ -630,6 +631,7 @@
kapacitor = 308;
solr = 309;
alerta = 310;
minetest = 311;
# When adding a gid, make sure it doesn't match an existing
# uid. Users and groups with the same name should have equal

View File

@ -84,7 +84,9 @@ in
home = "/var/lib/minetest";
createHome = true;
uid = config.ids.uids.minetest;
group = "minetest";
};
users.groups.minetest.gid = config.ids.gids.minetest;
systemd.services.minetest-server = {
description = "Minetest Server Service";
@ -93,6 +95,7 @@ in
serviceConfig.Restart = "always";
serviceConfig.User = "minetest";
serviceConfig.Group = "minetest";
script = ''
cd /var/lib/minetest

View File

@ -14,28 +14,19 @@ let
versionSuffix =
(if stableBranch then "." else "pre") + "${toString nixpkgs.revCount}.${nixpkgs.shortRev}";
importTest = fn: args: system: import fn ({
inherit system;
} // args);
# Note: only supportedSystems are considered.
callTestOnMatchingSystems = systems: fn: args:
forMatchingSystems
(intersectLists supportedSystems systems)
(system: hydraJob (importTest fn args system));
callTest = callTestOnMatchingSystems supportedSystems;
callSubTests = callSubTestsOnMatchingSystems supportedSystems;
callSubTestsOnMatchingSystems = systems: fn: args: let
discover = attrs: let
subTests = filterAttrs (const (hasAttr "test")) attrs;
in mapAttrs (const (t: hydraJob t.test)) subTests;
discoverForSystem = system: mapAttrs (_: test: {
${system} = test;
}) (discover (importTest fn args system));
in foldAttrs mergeAttrs {} (map discoverForSystem (intersectLists systems supportedSystems));
# Run the tests for each platform. You can run a test by doing
# e.g. nix-build -A tests.login.x86_64-linux, or equivalently,
# nix-build tests/login.nix -A result.
allTestsForSystem = system:
import ./tests/all-tests.nix {
inherit system;
pkgs = import nixpkgs { inherit system; };
callTest = t: {
${system} = hydraJob t.test;
};
};
allTests =
foldAttrs recursiveUpdate {} (map allTestsForSystem supportedSystems);
pkgs = import nixpkgs { system = "x86_64-linux"; };
@ -245,200 +236,7 @@ in rec {
};
*/
# Run the tests for each platform. You can run a test by doing
# e.g. nix-build -A tests.login.x86_64-linux, or equivalently,
# nix-build tests/login.nix -A result.
tests.atd = callTest tests/atd.nix {};
tests.acme = callTest tests/acme.nix {};
tests.avahi = callTest tests/avahi.nix {};
tests.beegfs = callTest tests/beegfs.nix {};
tests.upnp = callTest tests/upnp.nix {};
tests.bittorrent = callTest tests/bittorrent.nix {};
tests.bind = callTest tests/bind.nix {};
#tests.blivet = callTest tests/blivet.nix {}; # broken since 2017-07024
tests.boot = callSubTests tests/boot.nix {};
tests.boot-stage1 = callTest tests/boot-stage1.nix {};
tests.borgbackup = callTest tests/borgbackup.nix {};
tests.buildbot = callSubTests tests/buildbot.nix {};
tests.cadvisor = callTestOnMatchingSystems ["x86_64-linux"] tests/cadvisor.nix {};
tests.ceph = callTestOnMatchingSystems ["x86_64-linux"] tests/ceph.nix {};
tests.certmgr = callSubTests tests/certmgr.nix {};
tests.cfssl = callTestOnMatchingSystems ["x86_64-linux"] tests/cfssl.nix {};
tests.chromium = (callSubTestsOnMatchingSystems ["x86_64-linux"] tests/chromium.nix {}).stable or {};
tests.cjdns = callTest tests/cjdns.nix {};
tests.cloud-init = callTest tests/cloud-init.nix {};
tests.codimd = callTest tests/codimd.nix {};
tests.containers-ipv4 = callTest tests/containers-ipv4.nix {};
tests.containers-ipv6 = callTest tests/containers-ipv6.nix {};
tests.containers-bridge = callTest tests/containers-bridge.nix {};
tests.containers-imperative = callTest tests/containers-imperative.nix {};
tests.containers-extra_veth = callTest tests/containers-extra_veth.nix {};
tests.containers-physical_interfaces = callTest tests/containers-physical_interfaces.nix {};
tests.containers-restart_networking = callTest tests/containers-restart_networking.nix {};
tests.containers-tmpfs = callTest tests/containers-tmpfs.nix {};
tests.containers-hosts = callTest tests/containers-hosts.nix {};
tests.containers-macvlans = callTest tests/containers-macvlans.nix {};
tests.couchdb = callTest tests/couchdb.nix {};
tests.deluge = callTest tests/deluge.nix {};
tests.dhparams = callTest tests/dhparams.nix {};
tests.docker = callTestOnMatchingSystems ["x86_64-linux"] tests/docker.nix {};
tests.docker-tools = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-tools.nix {};
tests.docker-tools-overlay = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-tools-overlay.nix {};
tests.docker-edge = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-edge.nix {};
tests.docker-preloader = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-preloader.nix {};
tests.docker-registry = callTest tests/docker-registry.nix {};
tests.dovecot = callTest tests/dovecot.nix {};
tests.dnscrypt-proxy = callTestOnMatchingSystems ["x86_64-linux"] tests/dnscrypt-proxy.nix {};
tests.ecryptfs = callTest tests/ecryptfs.nix {};
tests.etcd = callTestOnMatchingSystems ["x86_64-linux"] tests/etcd.nix {};
tests.ec2-nixops = (callSubTestsOnMatchingSystems ["x86_64-linux"] tests/ec2.nix {}).boot-ec2-nixops or {};
# ec2-config doesn't work in a sandbox as the simulated ec2 instance needs network access
#tests.ec2-config = (callSubTestsOnMatchingSystems ["x86_64-linux"] tests/ec2.nix {}).boot-ec2-config or {};
tests.elk = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/elk.nix {};
tests.env = callTest tests/env.nix {};
tests.ferm = callTest tests/ferm.nix {};
tests.firefox = callTest tests/firefox.nix {};
tests.flatpak = callTest tests/flatpak.nix {};
tests.firewall = callTest tests/firewall.nix {};
tests.fsck = callTest tests/fsck.nix {};
tests.fwupd = callTest tests/fwupd.nix {};
tests.gdk-pixbuf = callTest tests/gdk-pixbuf.nix {};
tests.gitea = callSubTests tests/gitea.nix {};
tests.gitlab = callTest tests/gitlab.nix {};
tests.gitolite = callTest tests/gitolite.nix {};
tests.gjs = callTest tests/gjs.nix {};
tests.gocd-agent = callTest tests/gocd-agent.nix {};
tests.gocd-server = callTest tests/gocd-server.nix {};
tests.gnome3 = callTest tests/gnome3.nix {};
tests.gnome3-gdm = callTest tests/gnome3-gdm.nix {};
tests.grafana = callTest tests/grafana.nix {};
tests.graphite = callTest tests/graphite.nix {};
tests.hadoop.hdfs = callTestOnMatchingSystems [ "x86_64-linux" ] tests/hadoop/hdfs.nix {};
tests.hadoop.yarn = callTestOnMatchingSystems [ "x86_64-linux" ] tests/hadoop/yarn.nix {};
tests.hardened = callTest tests/hardened.nix { };
tests.haproxy = callTest tests/haproxy.nix {};
tests.hibernate = callTest tests/hibernate.nix {};
tests.hitch = callTest tests/hitch {};
tests.home-assistant = callTest tests/home-assistant.nix { };
tests.hound = callTest tests/hound.nix {};
tests.hocker-fetchdocker = callTest tests/hocker-fetchdocker {};
tests.hydra = callTest tests/hydra {};
tests.i3wm = callTest tests/i3wm.nix {};
tests.iftop = callTest tests/iftop.nix {};
tests.initrd-network-ssh = callTest tests/initrd-network-ssh {};
tests.installer = callSubTests tests/installer.nix {};
tests.influxdb = callTest tests/influxdb.nix {};
tests.ipv6 = callTest tests/ipv6.nix {};
tests.jenkins = callTest tests/jenkins.nix {};
tests.ostree = callTest tests/ostree.nix {};
tests.osquery = callTest tests/osquery.nix {};
tests.plasma5 = callTest tests/plasma5.nix {};
tests.plotinus = callTest tests/plotinus.nix {};
tests.keymap = callSubTests tests/keymap.nix {};
tests.incron = callTest tests/incron.nix {};
tests.initrdNetwork = callTest tests/initrd-network.nix {};
tests.kafka = callSubTests tests/kafka.nix {};
tests.kernel-latest = callTest tests/kernel-latest.nix {};
tests.kernel-lts = callTest tests/kernel-lts.nix {};
tests.kubernetes.dns = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/kubernetes/dns.nix {};
## kubernetes.e2e should eventually replace kubernetes.rbac when it works
#tests.kubernetes.e2e = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/kubernetes/e2e.nix {};
tests.kubernetes.rbac = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/kubernetes/rbac.nix {};
tests.latestKernel.login = callTest tests/login.nix { latestKernel = true; };
tests.ldap = callTest tests/ldap.nix {};
#tests.lightdm = callTest tests/lightdm.nix {};
tests.login = callTest tests/login.nix {};
#tests.logstash = callTest tests/logstash.nix {};
tests.mathics = callTest tests/mathics.nix {};
tests.matrix-synapse = callTest tests/matrix-synapse.nix {};
tests.memcached = callTest tests/memcached.nix {};
tests.mesos = callTest tests/mesos.nix {};
tests.misc = callTest tests/misc.nix {};
tests.mongodb = callTest tests/mongodb.nix {};
tests.mpd = callTest tests/mpd.nix {};
tests.mumble = callTest tests/mumble.nix {};
tests.munin = callTest tests/munin.nix {};
tests.mutableUsers = callTest tests/mutable-users.nix {};
tests.mysql = callTest tests/mysql.nix {};
tests.mysqlBackup = callTest tests/mysql-backup.nix {};
tests.mysqlReplication = callTest tests/mysql-replication.nix {};
tests.nat.firewall = callTest tests/nat.nix { withFirewall = true; };
tests.nat.firewall-conntrack = callTest tests/nat.nix { withFirewall = true; withConntrackHelpers = true; };
tests.nat.standalone = callTest tests/nat.nix { withFirewall = false; };
tests.netdata = callTest tests/netdata.nix { };
tests.networking.networkd = callSubTests tests/networking.nix { networkd = true; };
tests.networking.scripted = callSubTests tests/networking.nix { networkd = false; };
tests.nextcloud = callSubTests tests/nextcloud { };
# TODO: put in networking.nix after the test becomes more complete
tests.networkingProxy = callTest tests/networking-proxy.nix {};
tests.nexus = callTest tests/nexus.nix { };
tests.nfs3 = callTest tests/nfs.nix { version = 3; };
tests.nfs4 = callTest tests/nfs.nix { version = 4; };
tests.nginx = callTest tests/nginx.nix { };
tests.nghttpx = callTest tests/nghttpx.nix { };
tests.nix-ssh-serve = callTest tests/nix-ssh-serve.nix { };
tests.novacomd = callTestOnMatchingSystems ["x86_64-linux"] tests/novacomd.nix { };
tests.leaps = callTest tests/leaps.nix { };
tests.nsd = callTest tests/nsd.nix {};
tests.openssh = callTest tests/openssh.nix {};
tests.openldap = callTest tests/openldap.nix {};
tests.opensmtpd = callTest tests/opensmtpd.nix {};
tests.owncloud = callTest tests/owncloud.nix {};
tests.pam-oath-login = callTest tests/pam-oath-login.nix {};
tests.peerflix = callTest tests/peerflix.nix {};
tests.php-pcre = callTest tests/php-pcre.nix {};
tests.postgresql = callSubTests tests/postgresql.nix {};
tests.pgmanage = callTest tests/pgmanage.nix {};
tests.postgis = callTest tests/postgis.nix {};
tests.powerdns = callTest tests/powerdns.nix {};
tests.pgjwt = callTest tests/pgjwt.nix {};
tests.predictable-interface-names = callSubTests tests/predictable-interface-names.nix {};
tests.printing = callTest tests/printing.nix {};
tests.prometheus = callTest tests/prometheus.nix {};
tests.prometheus-exporters = callTest tests/prometheus-exporters.nix {};
tests.prosody = callTest tests/prosody.nix {};
tests.proxy = callTest tests/proxy.nix {};
tests.quagga = callTest tests/quagga.nix {};
tests.quake3 = callTest tests/quake3.nix {};
tests.rabbitmq = callTest tests/rabbitmq.nix {};
tests.radicale = callTest tests/radicale.nix {};
tests.redmine = callTest tests/redmine.nix {};
tests.rspamd = callSubTests tests/rspamd.nix {};
tests.rsyslogd = callSubTests tests/rsyslogd.nix {};
tests.runInMachine = callTest tests/run-in-machine.nix {};
tests.rxe = callTest tests/rxe.nix {};
tests.samba = callTest tests/samba.nix {};
tests.sddm = callSubTests tests/sddm.nix {};
tests.simple = callTest tests/simple.nix {};
tests.slim = callTest tests/slim.nix {};
tests.slurm = callTest tests/slurm.nix {};
tests.smokeping = callTest tests/smokeping.nix {};
tests.snapper = callTest tests/snapper.nix {};
tests.solr = callTest tests/solr.nix {};
#tests.statsd = callTest tests/statsd.nix {}; # statsd is broken: #45946
tests.strongswan-swanctl = callTest tests/strongswan-swanctl.nix {};
tests.sudo = callTest tests/sudo.nix {};
tests.systemd = callTest tests/systemd.nix {};
tests.switchTest = callTest tests/switch-test.nix {};
tests.taskserver = callTest tests/taskserver.nix {};
tests.tomcat = callTest tests/tomcat.nix {};
tests.tor = callTest tests/tor.nix {};
tests.transmission = callTest tests/transmission.nix {};
tests.udisks2 = callTest tests/udisks2.nix {};
tests.vault = callTest tests/vault.nix {};
tests.virtualbox = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/virtualbox.nix {};
tests.wordpress = callTest tests/wordpress.nix {};
tests.xautolock = callTest tests/xautolock.nix {};
tests.xdg-desktop-portal = callTest tests/xdg-desktop-portal.nix {};
tests.xfce = callTest tests/xfce.nix {};
tests.xmonad = callTest tests/xmonad.nix {};
tests.xrdp = callTest tests/xrdp.nix {};
tests.xss-lock = callTest tests/xss-lock.nix {};
tests.yabar = callTest tests/yabar.nix {};
tests.zookeeper = callTest tests/zookeeper.nix {};
tests.morty = callTest tests/morty.nix { };
tests.bcachefs = callTest tests/bcachefs.nix { };
tests = allTests;
/* Build a bunch of typical closures so that Hydra can keep track of
the evolution of closure sizes. */

214
nixos/tests/all-tests.nix Normal file
View File

@ -0,0 +1,214 @@
{ system, pkgs, callTest }:
# The return value of this function will be an attrset with arbitrary depth and
# the `anything` returned by callTest at its test leafs.
# The tests not supported by `system` will be replaced with `{}`, so that
# `passthru.tests` can contain links to those without breaking on architectures
# where said tests are unsupported.
# Example callTest that just extracts the derivation from the test:
# callTest = t: t.test;
with pkgs.lib;
let
discoverTests = val:
if !isAttrs val then val
else if hasAttr "test" val then callTest val
else mapAttrs (n: s: discoverTests s) val;
handleTest = path: args:
discoverTests (import path ({ inherit system pkgs; } // args));
handleTestOn = systems: path: args:
if elem system systems then handleTest path args
else {};
in
{
acme = handleTestOn ["x86_64-linux"] ./acme.nix {};
atd = handleTest ./atd.nix {};
avahi = handleTest ./avahi.nix {};
bcachefs = handleTestOn ["x86_64-linux"] ./bcachefs.nix {}; # linux-4.18.2018.10.12 is unsupported on aarch64
beegfs = handleTestOn ["x86_64-linux"] ./beegfs.nix {}; # beegfs is unsupported on aarch64
bind = handleTest ./bind.nix {};
bittorrent = handleTest ./bittorrent.nix {};
#blivet = handleTest ./blivet.nix {}; # broken since 2017-07024
boot = handleTestOn ["x86_64-linux"] ./boot.nix {}; # syslinux is unsupported on aarch64
boot-stage1 = handleTest ./boot-stage1.nix {};
borgbackup = handleTest ./borgbackup.nix {};
buildbot = handleTest ./buildbot.nix {};
cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {};
ceph = handleTestOn ["x86_64-linux"] ./ceph.nix {};
certmgr = handleTest ./certmgr.nix {};
cfssl = handleTestOn ["x86_64-linux"] ./cfssl.nix {};
chromium = (handleTestOn ["x86_64-linux"] ./chromium.nix {}).stable or {};
cjdns = handleTest ./cjdns.nix {};
cloud-init = handleTest ./cloud-init.nix {};
codimd = handleTest ./codimd.nix {};
containers-bridge = handleTest ./containers-bridge.nix {};
containers-extra_veth = handleTest ./containers-extra_veth.nix {};
containers-hosts = handleTest ./containers-hosts.nix {};
containers-imperative = handleTest ./containers-imperative.nix {};
containers-ipv4 = handleTest ./containers-ipv4.nix {};
containers-ipv6 = handleTest ./containers-ipv6.nix {};
containers-macvlans = handleTest ./containers-macvlans.nix {};
containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {};
containers-restart_networking = handleTest ./containers-restart_networking.nix {};
containers-tmpfs = handleTest ./containers-tmpfs.nix {};
#couchdb = handleTest ./couchdb.nix {}; # spidermonkey-1.8.5 is marked as broken
deluge = handleTest ./deluge.nix {};
dhparams = handleTest ./dhparams.nix {};
dnscrypt-proxy = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy.nix {};
docker = handleTestOn ["x86_64-linux"] ./docker.nix {};
docker-edge = handleTestOn ["x86_64-linux"] ./docker-edge.nix {};
docker-preloader = handleTestOn ["x86_64-linux"] ./docker-preloader.nix {};
docker-registry = handleTest ./docker-registry.nix {};
docker-tools = handleTestOn ["x86_64-linux"] ./docker-tools.nix {};
docker-tools-overlay = handleTestOn ["x86_64-linux"] ./docker-tools-overlay.nix {};
dovecot = handleTest ./dovecot.nix {};
# ec2-config doesn't work in a sandbox as the simulated ec2 instance needs network access
#ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {};
ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {};
ecryptfs = handleTest ./ecryptfs.nix {};
elk = handleTestOn ["x86_64-linux"] ./elk.nix {};
env = handleTest ./env.nix {};
etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {};
ferm = handleTest ./ferm.nix {};
firefox = handleTest ./firefox.nix {};
firewall = handleTest ./firewall.nix {};
flatpak = handleTest ./flatpak.nix {};
fsck = handleTest ./fsck.nix {};
fwupd = handleTestOn ["x86_64-linux"] ./fwupd.nix {}; # libsmbios is unsupported on aarch64
gdk-pixbuf = handleTest ./gdk-pixbuf.nix {};
gitea = handleTest ./gitea.nix {};
gitlab = handleTest ./gitlab.nix {};
gitolite = handleTest ./gitolite.nix {};
gjs = handleTest ./gjs.nix {};
gnome3 = handleTestOn ["x86_64-linux"] ./gnome3.nix {}; # libsmbios is unsupported on aarch64
gnome3-gdm = handleTestOn ["x86_64-linux"] ./gnome3-gdm.nix {}; # libsmbios is unsupported on aarch64
gocd-agent = handleTest ./gocd-agent.nix {};
gocd-server = handleTest ./gocd-server.nix {};
grafana = handleTest ./grafana.nix {};
graphite = handleTest ./graphite.nix {};
hadoop.hdfs = handleTestOn [ "x86_64-linux" ] ./hadoop/hdfs.nix {};
hadoop.yarn = handleTestOn [ "x86_64-linux" ] ./hadoop/yarn.nix {};
haproxy = handleTest ./haproxy.nix {};
#hardened = handleTest ./hardened.nix {}; # broken due useSandbox = true
hibernate = handleTest ./hibernate.nix {};
hitch = handleTest ./hitch {};
hocker-fetchdocker = handleTest ./hocker-fetchdocker {};
home-assistant = handleTest ./home-assistant.nix {};
hound = handleTest ./hound.nix {};
hydra = handleTest ./hydra {};
i3wm = handleTest ./i3wm.nix {};
iftop = handleTest ./iftop.nix {};
incron = handleTest tests/incron.nix {};
influxdb = handleTest ./influxdb.nix {};
initrd-network-ssh = handleTest ./initrd-network-ssh {};
initrdNetwork = handleTest ./initrd-network.nix {};
installer = handleTest ./installer.nix {};
ipv6 = handleTest ./ipv6.nix {};
jenkins = handleTest ./jenkins.nix {};
kafka = handleTest ./kafka.nix {};
kernel-latest = handleTest ./kernel-latest.nix {};
kernel-lts = handleTest ./kernel-lts.nix {};
keymap = handleTest ./keymap.nix {};
kubernetes.dns = handleTestOn ["x86_64-linux"] ./kubernetes/dns.nix {};
# kubernetes.e2e should eventually replace kubernetes.rbac when it works
#kubernetes.e2e = handleTestOn ["x86_64-linux"] ./kubernetes/e2e.nix {};
kubernetes.rbac = handleTestOn ["x86_64-linux"] ./kubernetes/rbac.nix {};
latestKernel.login = handleTest ./login.nix { latestKernel = true; };
ldap = handleTest ./ldap.nix {};
leaps = handleTest ./leaps.nix {};
#lightdm = handleTest ./lightdm.nix {};
login = handleTest ./login.nix {};
#logstash = handleTest ./logstash.nix {};
mathics = handleTest ./mathics.nix {};
matrix-synapse = handleTest ./matrix-synapse.nix {};
memcached = handleTest ./memcached.nix {};
mesos = handleTest ./mesos.nix {};
misc = handleTest ./misc.nix {};
mongodb = handleTest ./mongodb.nix {};
morty = handleTest ./morty.nix {};
mpd = handleTest ./mpd.nix {};
mumble = handleTest ./mumble.nix {};
munin = handleTest ./munin.nix {};
mutableUsers = handleTest ./mutable-users.nix {};
mysql = handleTest ./mysql.nix {};
mysqlBackup = handleTest ./mysql-backup.nix {};
mysqlReplication = handleTest ./mysql-replication.nix {};
nat.firewall = handleTest ./nat.nix { withFirewall = true; };
nat.firewall-conntrack = handleTest ./nat.nix { withFirewall = true; withConntrackHelpers = true; };
nat.standalone = handleTest ./nat.nix { withFirewall = false; };
netdata = handleTest ./netdata.nix {};
networking.networkd = handleTest ./networking.nix { networkd = true; };
networking.scripted = handleTest ./networking.nix { networkd = false; };
# TODO: put in networking.nix after the test becomes more complete
networkingProxy = handleTest ./networking-proxy.nix {};
nextcloud = handleTest ./nextcloud {};
nexus = handleTest ./nexus.nix {};
nfs3 = handleTest ./nfs.nix { version = 3; };
nfs4 = handleTest ./nfs.nix { version = 4; };
nghttpx = handleTest ./nghttpx.nix {};
nginx = handleTest ./nginx.nix {};
nix-ssh-serve = handleTest ./nix-ssh-serve.nix {};
novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {};
nsd = handleTest ./nsd.nix {};
openldap = handleTest ./openldap.nix {};
opensmtpd = handleTest ./opensmtpd.nix {};
openssh = handleTest ./openssh.nix {};
osquery = handleTest ./osquery.nix {};
ostree = handleTest ./ostree.nix {};
owncloud = handleTest ./owncloud.nix {};
pam-oath-login = handleTest ./pam-oath-login.nix {};
peerflix = handleTest ./peerflix.nix {};
pgjwt = handleTest ./pgjwt.nix {};
pgmanage = handleTest ./pgmanage.nix {};
php-pcre = handleTest ./php-pcre.nix {};
plasma5 = handleTest ./plasma5.nix {};
plotinus = handleTest ./plotinus.nix {};
postgis = handleTest ./postgis.nix {};
postgresql = handleTest ./postgresql.nix {};
powerdns = handleTest ./powerdns.nix {};
predictable-interface-names = handleTest ./predictable-interface-names.nix {};
printing = handleTest ./printing.nix {};
prometheus = handleTest ./prometheus.nix {};
prometheus-exporters = handleTest ./prometheus-exporters.nix {};
prosody = handleTest ./prosody.nix {};
proxy = handleTest ./proxy.nix {};
quagga = handleTest ./quagga.nix {};
quake3 = handleTest ./quake3.nix {};
rabbitmq = handleTest ./rabbitmq.nix {};
radicale = handleTest ./radicale.nix {};
redmine = handleTest ./redmine.nix {};
rspamd = handleTest ./rspamd.nix {};
rsyslogd = handleTest ./rsyslogd.nix {};
runInMachine = handleTest ./run-in-machine.nix {};
rxe = handleTest ./rxe.nix {};
samba = handleTest ./samba.nix {};
sddm = handleTest ./sddm.nix {};
simple = handleTest ./simple.nix {};
slim = handleTest ./slim.nix {};
slurm = handleTest ./slurm.nix {};
smokeping = handleTest ./smokeping.nix {};
snapper = handleTest ./snapper.nix {};
solr = handleTest ./solr.nix {};
#statsd = handleTest ./statsd.nix {}; # statsd is broken: #45946
strongswan-swanctl = handleTest ./strongswan-swanctl.nix {};
sudo = handleTest ./sudo.nix {};
switchTest = handleTest ./switch-test.nix {};
systemd = handleTest ./systemd.nix {};
taskserver = handleTest ./taskserver.nix {};
tomcat = handleTest ./tomcat.nix {};
tor = handleTest ./tor.nix {};
transmission = handleTest ./transmission.nix {};
udisks2 = handleTest ./udisks2.nix {};
upnp = handleTest ./upnp.nix {};
vault = handleTest ./vault.nix {};
virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {};
wordpress = handleTest ./wordpress.nix {};
xautolock = handleTest ./xautolock.nix {};
xdg-desktop-portal = handleTest ./xdg-desktop-portal.nix {};
xfce = handleTest ./xfce.nix {};
xmonad = handleTest ./xmonad.nix {};
xrdp = handleTest ./xrdp.nix {};
xss-lock = handleTest ./xss-lock.nix {};
yabar = handleTest ./yabar.nix {};
zookeeper = handleTest ./zookeeper.nix {};
}

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
let
# Test ensures buildbot master comes up correctly and workers can connect

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
let
mkSpec = { host, service ? null, action }: {
inherit action;

View File

@ -1,5 +1,6 @@
{ system ? builtins.currentSystem
, pkgs ? import ../.. { inherit system; }
, config ? {}
, pkgs ? import ../.. { inherit system config; }
, channelMap ? {
stable = pkgs.chromium;
beta = pkgs.chromiumBeta;
@ -7,7 +8,7 @@
}
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
mapAttrs (channel: chromiumPkg: makeTest rec {

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,6 +1,12 @@
{ system ? builtins.currentSystem, enableUnfree ? false }:
with import ../lib/testing.nix { inherit system; };
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; },
enableUnfree ? false
}:
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let
esUrl = "http://localhost:9200";

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
{

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,5 +1,9 @@
{ system ? builtins.currentSystem }:
with import ../lib/testing.nix { inherit system; };
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
let
readyFile = "/tmp/readerReady";

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../../lib/testing.nix { inherit system; };
with import ../../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,5 +1,9 @@
f: { system ? builtins.currentSystem, ... } @ args:
f: {
system ? builtins.currentSystem,
pkgs ? import ../.. { inherit system; config = {}; },
...
} @ args:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
makeTest (if pkgs.lib.isFunction f then f (args // { inherit pkgs; inherit (pkgs) lib; }) else f)

View File

@ -1,8 +1,10 @@
{ system ? builtins.currentSystem
, config ? {}
, pkgs ? import ../.. { inherit system config; }
# bool: whether to use networkd in the tests
, networkd }:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../../.. { inherit system config; }
}:
{
basic = import ./basic.nix { inherit system; };
with-postgresql-and-redis = import ./with-postgresql-and-redis.nix { inherit system; };
with-mysql-and-memcached = import ./with-mysql-and-memcached.nix { inherit system; };
basic = import ./basic.nix { inherit system pkgs; };
with-postgresql-and-redis = import ./with-postgresql-and-redis.nix { inherit system pkgs; };
with-mysql-and-memcached = import ./with-mysql-and-memcached.nix { inherit system pkgs; };
}

View File

@ -1,6 +1,11 @@
{ system ? builtins.currentSystem }:
with import ../lib/testing.nix { inherit system; };
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let
postgresql-versions = pkgs.callPackages ../../pkgs/servers/sql/postgresql { };
test-sql = pkgs.writeText "postgresql-test" ''

View File

@ -1,7 +1,10 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
let
inherit (import ../lib/testing.nix { inherit system; }) makeTest pkgs;
inherit (import ../lib/testing.nix { inherit system pkgs; }) makeTest;
in pkgs.lib.listToAttrs (pkgs.lib.crossLists (predictable: withNetworkd: {
name = pkgs.lib.optionalString (!predictable) "un" + "predictable"
+ pkgs.lib.optionalString withNetworkd "Networkd";

View File

@ -1,6 +1,11 @@
{ system ? builtins.currentSystem }:
with import ../lib/testing.nix { inherit system; };
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let
initMachine = ''
startAll

View File

@ -1,7 +1,11 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
{
test1 = makeTest {
name = "rsyslogd-test1";

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
let
output = runInMachine {

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
let
inherit (pkgs) lib;

View File

@ -1,6 +1,11 @@
{ system ? builtins.currentSystem, debug ? false, enableUnfree ? false }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; },
debug ? false,
enableUnfree ? false
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
with pkgs.lib;
let

View File

@ -1,6 +1,9 @@
{ system ? builtins.currentSystem }:
{ system ? builtins.currentSystem,
config ? {},
pkgs ? import ../.. { inherit system config; }
}:
with import ../lib/testing.nix { inherit system; };
with import ../lib/testing.nix { inherit system pkgs; };
let

View File

@ -81,6 +81,10 @@ rec {
sumokoin = callPackage ./sumokoin.nix { };
wownero = callPackage ./wownero.nix {
inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC;
};
zcash = callPackage ./zcash {
withGui = false;
openssl = openssl_1_1;

View File

@ -0,0 +1,51 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig, git
, boost, miniupnpc, openssl, unbound, cppzmq
, zeromq, pcsclite, readline, libsodium
, CoreData, IOKit, PCSC
}:
assert stdenv.isDarwin -> IOKit != null;
with stdenv.lib;
stdenv.mkDerivation rec {
name = "wownero-${version}";
version = "0.4.0.0";
src = fetchFromGitHub {
owner = "wownero";
repo = "wownero";
fetchSubmodules = true;
rev = "v${version}";
sha256 = "1z5fpl4gwys4v8ffrymlzwrbnrbg73x553a9lxwny7ba8yg2k14p";
};
nativeBuildInputs = [ cmake pkgconfig git ];
buildInputs = [
boost miniupnpc openssl unbound
cppzmq zeromq pcsclite readline libsodium
] ++ optionals stdenv.isDarwin [ IOKit CoreData PCSC ];
cmakeFlags = [
"-DReadline_ROOT_DIR=${readline.dev}"
"-DMANUAL_SUBMODULES=ON"
] ++ optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF";
hardeningDisable = [ "fortify" ];
meta = {
description = "Wownero is a fork of the cryptocurrency Monero with primary alterations";
longDescription = ''
Wowneros emission is capped and supply is finite. Wownero is a fairly
launched coin with no premine. Its not a fork of another blockchain. With
its own genesis block there is no degradation of privacy caused by ring
signatures using different participants for the same transaction outputs.
Unlike opposing forks.
'';
homepage = http://wownero.org/;
license = licenses.bsd3;
platforms = platforms.all;
maintainers = with maintainers; [ fuwa ];
};
}

View File

@ -0,0 +1,36 @@
{ stdenv, fetchFromGitHub
, cmake
, qtbase, qtquickcontrols2
, SDL
, python3
}:
stdenv.mkDerivation rec {
name = "sfxr-qt-${version}";
version = "1.2.0";
src = fetchFromGitHub {
owner = "agateau";
repo = "sfxr-qt";
rev = version;
sha256 = "1ndw1dcmzvkrc6gnb0y057zb4lqlhwrv18jlbx26w3s4xrbxqr41";
fetchSubmodules = true;
};
nativeBuildInputs = [
cmake
(python3.withPackages (pp: with pp; [ pyyaml jinja2 ]))
];
buildInputs = [
qtbase qtquickcontrols2
SDL
];
configurePhase = "cmake . -DCMAKE_INSTALL_PREFIX=$out";
meta = with stdenv.lib; {
homepage = https://github.com/agateau/sfxr-qt;
description = "A sound effect generator, QtQuick port of sfxr";
license = licenses.gpl2;
maintainers = with maintainers; [ fgaz ];
platforms = platforms.linux;
};
}

View File

@ -250,12 +250,12 @@ in
clion = buildClion rec {
name = "clion-${version}";
version = "2018.2.4"; /* updated by script */
version = "2018.2.5"; /* updated by script */
description = "C/C++ IDE. New. Intelligent. Cross-platform";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
sha256 = "0ljzdjvlkm37gclny652nm7kw2hlyl1iiix6h44zq7fhszp5kmyr"; /* updated by script */
sha256 = "0brbwgyjh38ix8nr176glmc3kr7ndi8wppxqkb1c890jw5d3916j"; /* updated by script */
};
wmClass = "jetbrains-clion";
update-channel = "CLion Release"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@ -315,12 +315,12 @@ in
phpstorm = buildPhpStorm rec {
name = "phpstorm-${version}";
version = "2018.2.3"; /* updated by script */
version = "2018.2.5"; /* updated by script */
description = "Professional IDE for Web and PHP developers";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
sha256 = "1kdv3h749ly2sadixz3khaxrias3k72fi2ixrzniynwhgiqixz70"; /* updated by script */
sha256 = "0crr3056hlv9x2q1i1n00aavj53xkwkfy4lgyyphk81c0gly4dg1"; /* updated by script */
};
wmClass = "jetbrains-phpstorm";
update-channel = "PhpStorm 2018.2";
@ -367,12 +367,12 @@ in
ruby-mine = buildRubyMine rec {
name = "ruby-mine-${version}";
version = "2018.2.2"; /* updated by script */
version = "2018.2.4"; /* updated by script */
description = "The Most Intelligent Ruby and Rails IDE";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
sha256 = "0585dnbvmzxnj2am6b04lfw75rdhk0fby2cbj58pzzcjz5xlrhvq"; /* updated by script */
sha256 = "0dk3ch749ai5kyg9q8819ckrqw2jk4f656iqrkkpab9fjqfjylka"; /* updated by script */
};
wmClass = "jetbrains-rubymine";
update-channel = "RubyMine 2018.2";
@ -380,12 +380,12 @@ in
webstorm = buildWebStorm rec {
name = "webstorm-${version}";
version = "2018.2.3"; /* updated by script */
version = "2018.2.5"; /* updated by script */
description = "Professional IDE for Web and JavaScript development";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
sha256 = "0y3a1p047knc598aamxxdmcf5nr86wk60w6nk2bhcasxjyqaw6r4"; /* updated by script */
sha256 = "0d4l2bf87i6kv45qmbw55hvcrnxr6zxjcjicbkjs2k01lv7y605c"; /* updated by script */
};
wmClass = "jetbrains-webstorm";
update-channel = "WebStorm Release";

View File

@ -20,11 +20,11 @@ let
in stdenv.mkDerivation rec {
name = "nano-${version}";
version = "3.1";
version = "3.2";
src = fetchurl {
url = "mirror://gnu/nano/${name}.tar.xz";
sha256 = "17kinzyv6vwgyx2d0ym1kp65qbf7kxzwpyg21ic1rijv1aj2rh0l";
sha256 = "0jb3zq0v84xb0chyynkcp2jhs9660wmpkic294p4p6c96npp69yi";
};
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, tk }:
stdenv.mkDerivation rec {
name = "gocr-0.51";
name = "gocr-0.52";
src = fetchurl {
url = "https://www-e.uni-magdeburg.de/jschulen/ocr/${name}.tar.gz";
sha256 = "14i6zi6q11h6d0qds2cpvgvhbxk5xaa027h8cd0wy1zblh7sxckf";
sha256 = "11l6gds1lrm8lwrrsxnm5fjlwz8q1xbh896cprrl4psz21in946z";
};
buildFlags = [ "all" "libs" ];

View File

@ -16,7 +16,10 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook bison flex pkgconfig perl ];
buildInputs = [ libuuid cppunit protobuf3_1 zlib avahi libmicrohttpd python3 ];
propagatedBuildInputs = [ python3Packages.protobuf3_1 python3Packages.numpy ];
propagatedBuildInputs = [
(python3Packages.protobuf.override { protobuf = protobuf3_1; })
python3Packages.numpy
];
configureFlags = [ "--enable-python-libs" ];

View File

@ -30,7 +30,8 @@
pango,
udev,
xorg,
zlib
zlib,
xdg_utils
}:
let rpath = lib.makeLibraryPath [
@ -65,32 +66,67 @@ let rpath = lib.makeLibraryPath [
udev
xorg.libxcb
zlib
xdg_utils
];
in stdenv.mkDerivation rec {
name = "brave";
version = "0.25.2";
version = "0.56.12";
src = fetchurl {
url = "https://github.com/brave/browser-laptop/releases/download/v${version}dev/brave_${version}_amd64.deb";
sha256 = "1r3rsa6szps7mvvpqyw0mg16zn36x451dxq4nmn2l5ds5cp1f017";
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
sha256 = "1pvablwchpsm1fdhfp9kr2912yv4812r8prv5fn799qpflzxvyai";
};
phases = [ "unpackPhase" "installPhase" ];
dontConfigure = true;
dontBuild = true;
dontPatchELF = true;
nativeBuildInputs = [ dpkg ];
unpackPhase = "dpkg-deb -x $src .";
unpackPhase = "dpkg-deb --fsys-tarfile $src | tar -x --no-same-permissions --no-same-owner";
installPhase = ''
mkdir -p $out
cp -R usr/* $out
cp -R opt/ $out/opt
export BINARYWRAPPER=$out/opt/brave.com/brave/brave-browser
# Fix path to bash in $BINARYWRAPPER
substituteInPlace $BINARYWRAPPER \
--replace /bin/bash ${stdenv.shell}
ln -sf $BINARYWRAPPER $out/bin/brave
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${rpath}" $out/bin/brave
--set-rpath "${rpath}" $out/opt/brave.com/brave/brave
# Fix paths
substituteInPlace $out/share/applications/brave-browser.desktop \
--replace /usr/bin/brave-browser $out/bin/brave
substituteInPlace $out/share/gnome-control-center/default-apps/brave-browser.xml \
--replace /opt/brave.com $out/opt/brave.com
substituteInPlace $out/share/menu/brave-browser.menu \
--replace /opt/brave.com $out/opt/brave.com
substituteInPlace $out/opt/brave.com/brave/default-app-block \
--replace /opt/brave.com $out/opt/brave.com
# Correct icons location
icon_sizes=("16" "22" "24" "32" "48" "64" "128" "256")
for icon in ''${icon_sizes[*]}
do
mkdir -p $out/share/icons/hicolor/$icon\x$icon/apps
ln -s $out/opt/brave.com/brave/product_logo_$icon.png $out/share/icons/hicolor/$icon\x$icon/apps/brave-browser.png
done
# Replace xdg-settings and xdg-mime
ln -sf ${xdg_utils}/bin/xdg-settings $out/opt/brave.com/brave/xdg-settings
ln -sf ${xdg_utils}/bin/xdg-mime $out/opt/brave.com/brave/xdg-mime
'';
meta = with stdenv.lib; {

View File

@ -72,7 +72,10 @@ in
categories = "Network;InstantMessaging;Chat;VideoConference";
};
phases = [ "unpackPhase" "installPhase" ];
dontBuild = true;
dontPatchELF = true;
dontConfigure = true;
nativeBuildInputs = [ dpkg ];
unpackPhase = "dpkg-deb -x $src .";
installPhase = ''
@ -93,7 +96,7 @@ in
# Desktop file
mkdir -p "$out/share/applications"
cp ${desktopItem}/share/applications/* "$out/share/applications"
cp "${desktopItem}/share/applications/"* "$out/share/applications"
'';
meta = with stdenv.lib; {

View File

@ -4,6 +4,7 @@
, curl, Cocoa, Foundation, libobjc, libcxx, tzdata
, withRecommendedPackages ? true
, enableStrictBarrier ? false
, javaSupport ? (!stdenv.hostPlatform.isAarch32 && !stdenv.hostPlatform.isAarch64)
}:
stdenv.mkDerivation rec {
@ -17,9 +18,10 @@ stdenv.mkDerivation rec {
buildInputs = [
bzip2 gfortran libX11 libXmu libXt libXt libjpeg libpng libtiff ncurses
pango pcre perl readline texLive xz zlib less texinfo graphviz icu
pkgconfig bison imake which jdk openblas curl
pkgconfig bison imake which openblas curl
] ++ stdenv.lib.optionals (!stdenv.isDarwin) [ tcl tk ]
++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa Foundation libobjc libcxx ];
++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa Foundation libobjc libcxx ]
++ stdenv.lib.optional javaSupport jdk;
patches = [ ./no-usr-local-search-paths.patch ];
@ -47,7 +49,7 @@ stdenv.mkDerivation rec {
CC=$(type -p cc)
CXX=$(type -p c++)
FC="${gfortran}/bin/gfortran" F77="${gfortran}/bin/gfortran"
JAVA_HOME="${jdk}"
${stdenv.lib.optionalString javaSupport "JAVA_HOME=\"${jdk}\""}
RANLIB=$(type -p ranlib)
R_SHELL="${stdenv.shell}"
'' + stdenv.lib.optionalString stdenv.isDarwin ''

View File

@ -7,13 +7,13 @@ with stdenv.lib;
buildGoPackage rec {
name = "gitea-${version}";
version = "1.5.2";
version = "1.5.3";
src = fetchFromGitHub {
owner = "go-gitea";
repo = "gitea";
rev = "v${version}";
sha256 = "168pbndlh7c148p8wzkd39kd7idiba9zw7v0alp9zqcqzzayaydj";
sha256 = "1f8cbsd3kn4v2a6c57rwh9slgvss7gnxs96yhcy2ddwyycf6i04d";
# Required to generate the same checksum on MacOS due to unicode encoding differences
# More information: https://github.com/NixOS/nixpkgs/pull/48128
extraPostFetch = ''

View File

@ -11,7 +11,6 @@
pkgs,
pigz,
nix,
perl,
runCommand,
rsync,
shadow,
@ -23,6 +22,7 @@
referencesByPopularity,
writeScript,
writeText,
closureInfo
}:
# WARNING: this API is unstable and may be subject to backwards-incompatible changes in the future.
@ -261,19 +261,6 @@ rec {
${text}
'';
nixRegistration = contents: runCommand "nix-registration" {
buildInputs = [ nix perl ];
# For obtaining the closure of `contents'.
exportReferencesGraph =
let contentsList = if builtins.isList contents then contents else [ contents ];
in map (x: [("closure-" + baseNameOf x) x]) contentsList;
}
''
mkdir $out
printRegistration=1 perl ${pkgs.pathsFromGraph} closure-* > $out/db.dump
perl ${pkgs.pathsFromGraph} closure-* > $out/storePaths
'';
# Create $maxLayers worth of Docker Layers, one layer per store path
# unless there are more paths than $maxLayers. In that case, create
# $maxLayers-1 for the most popular layers, and smush the remainaing
@ -795,29 +782,19 @@ rec {
# the container.
# Be careful since this doesn't work well with multilayer.
buildImageWithNixDb = args@{ contents ? null, extraCommands ? "", ... }:
buildImage (args // {
let contentsList = if builtins.isList contents then contents else [ contents ];
in buildImage (args // {
extraCommands = ''
echo "Generating the nix database..."
echo "Warning: only the database of the deepest Nix layer is loaded."
echo " If you want to use nix commands in the container, it would"
echo " be better to only have one layer that contains a nix store."
# This requires Nix 1.12 or higher
export NIX_REMOTE=local?root=$PWD
${nix}/bin/nix-store --load-db < ${nixRegistration contents}/db.dump
# We fill the store in order to run the 'verify' command that
# generates hash and size of output paths.
# Note when Nix 1.12 is be the stable one, the database dump
# generated by the exportReferencesGraph function will
# contains sha and size. See
# https://github.com/NixOS/nix/commit/c2b0d8749f7e77afc1c4b3e8dd36b7ee9720af4a
storePaths=$(cat ${nixRegistration contents}/storePaths)
echo "Copying everything to /nix/store (will take a while)..."
cp -prd $storePaths nix/store/
${nix}/bin/nix-store --verify --check-contents
export NIX_REMOTE=local?root=$PWD
${nix}/bin/nix-store --load-db < ${closureInfo {rootPaths = contentsList;}}/registration
mkdir -p nix/var/nix/gcroots/docker/
for i in ${lib.concatStringsSep " " contents}; do
for i in ${lib.concatStringsSep " " contentsList}; do
ln -s $i nix/var/nix/gcroots/docker/$(basename $i)
done;
'' + extraCommands;

View File

@ -1,19 +1,41 @@
{ stdenv }:
{ stdenv, coreutils }:
stdenv.mkDerivation {
name = "libredirect-0";
unpackPhase = "cp ${./libredirect.c} libredirect.c";
unpackPhase = ''
cp ${./libredirect.c} libredirect.c
cp ${./test.c} test.c
'';
buildPhase =
''
gcc -Wall -std=c99 -O3 -shared libredirect.c -o libredirect.so -fPIC -ldl
'';
shlibext = stdenv.targetPlatform.extensions.sharedLibrary;
installPhase = "mkdir -p $out/lib; cp libredirect.so $out/lib";
buildPhase = ''
$CC -Wall -std=c99 -O3 -shared libredirect.c \
-o "libredirect$shlibext" -fPIC -ldl
if [ -n "$doInstallCheck" ]; then
$CC -Wall -std=c99 -O3 test.c -o test
fi
'';
installPhase = ''
install -vD "libredirect$shlibext" "$out/lib/libredirect$shlibext"
'';
doInstallCheck = true;
installCheckPhase = if stdenv.isDarwin then ''
NIX_REDIRECTS="/foo/bar/test=${coreutils}/bin/true" \
DYLD_INSERT_LIBRARIES="$out/lib/libredirect$shlibext" \
DYLD_FORCE_FLAT_NAMESPACE=1 ./test
'' else ''
NIX_REDIRECTS="/foo/bar/test=${coreutils}/bin/true" \
LD_PRELOAD="$out/lib/libredirect$shlibext" ./test
'';
meta = {
platforms = stdenv.lib.platforms.linux;
platforms = stdenv.lib.platforms.unix;
description = "An LD_PRELOAD library to intercept and rewrite the paths in glibc calls";
longDescription = ''
libredirect is an LD_PRELOAD library to intercept and rewrite the paths in

View File

@ -119,6 +119,13 @@ int __xstat64(int ver, const char * path, struct stat64 * st)
return __xstat64_real(ver, rewrite(path, buf), st);
}
int stat(const char * path, struct stat * st)
{
int (*__stat_real) (const char *, struct stat *) = dlsym(RTLD_NEXT, "stat");
char buf[PATH_MAX];
return __stat_real(rewrite(path, buf), st);
}
int * access(const char * path, int mode)
{
int * (*access_real) (const char *, int mode) = dlsym(RTLD_NEXT, "access");

View File

@ -0,0 +1,59 @@
#include <assert.h>
#include <fcntl.h>
#include <spawn.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/wait.h>
#define TESTPATH "/foo/bar/test"
extern char **environ;
void test_spawn(void) {
pid_t pid;
int ret;
posix_spawn_file_actions_t file_actions;
char *argv[] = {"true", NULL};
assert(posix_spawn_file_actions_init(&file_actions) == 0);
ret = posix_spawn(&pid, TESTPATH, &file_actions, NULL, argv, environ);
assert(ret == 0);
assert(waitpid(pid, NULL, 0) != -1);
}
void test_execv(void) {
char *argv[] = {"true", NULL};
assert(execv(TESTPATH, argv) == 0);
}
int main(void)
{
FILE *testfp;
int testfd;
struct stat testsb;
testfp = fopen(TESTPATH, "r");
assert(testfp != NULL);
fclose(testfp);
testfd = open(TESTPATH, O_RDONLY);
assert(testfd != -1);
close(testfd);
assert(access(TESTPATH, X_OK) == 0);
assert(stat(TESTPATH, &testsb) != -1);
test_spawn();
test_execv();
/* If all goes well, this is never reached because test_execv() replaces
* the current process.
*/
return 0;
}

View File

@ -1,6 +1,6 @@
{ fetchurl }:
fetchurl {
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/98ec0eee2ddef5d4a00e2ac4a95e8add46d23b69.tar.gz";
sha256 = "0svcaaflqi5c815z3yrh61bjny1jnwp42sylmsnwryjldqvizc1a";
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/1fba236a8a8f685aaf55029d20ab24d7e4cbc5ba.tar.gz";
sha256 = "0yy6ass2c0vn81pcvb0ksc1qh3hlw2q97937vp73jawghgwsy9qv";
}

View File

@ -131,14 +131,17 @@ stdenv.mkDerivation rec {
substituteInPlace "src/cmd/link/internal/ld/lib.go" --replace dsymutil ${llvm}/bin/llvm-dsymutil
'';
GOOS = if stdenv.isDarwin then "darwin" else "linux";
GOARCH = if stdenv.isDarwin then "amd64"
else if stdenv.targetPlatform.isi686 then "386"
else if stdenv.targetPlatform.isx86_64 then "amd64"
else if stdenv.targetPlatform.isAarch32 then "arm"
else if stdenv.targetPlatform.isAarch64 then "arm64"
else throw "Unsupported system";
GOARM = toString (stdenv.lib.intersectLists [(stdenv.targetPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
GOOS = stdenv.hostPlatform.parsed.kernel.name;
GOARCH = {
"i686" = "386";
"x86_64" = "amd64";
"aarch64" = "arm64";
"arm" = "arm";
"armv5tel" = "arm";
"armv6l" = "arm";
"armv7l" = "arm";
}.${stdenv.hostPlatform.parsed.cpu.name} or (throw "Unsupported system");
GOARM = toString (stdenv.lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
GO386 = 387; # from Arch: don't assume sse2 on i686
CGO_ENABLED = 1;
GOROOT_BOOTSTRAP = "${goBootstrap}/share/go";

View File

@ -45,7 +45,7 @@ default-package-overrides:
- base-compat-batteries ==0.10.1
# Newer versions don't work in LTS-12.x
- cassava-megaparsec < 2
# LTS Haskell 12.17
# LTS Haskell 12.18
- abstract-deque ==0.3
- abstract-deque-tests ==0.3
- abstract-par ==0.3.3
@ -731,8 +731,8 @@ default-package-overrides:
- fileplow ==0.1.0.0
- filter-logger ==0.6.0.0
- filtrable ==0.1.1.0
- fin ==0.0.1
- Fin ==0.2.6.0
- fin ==0.0.1
- FindBin ==0.0.5
- find-clumpiness ==0.2.3.1
- fingertree ==0.1.4.1
@ -1010,8 +1010,8 @@ default-package-overrides:
- hsdns ==1.7.1
- hsebaysdk ==0.4.0.0
- hsemail ==2
- hset ==2.2.0
- HSet ==0.0.1
- hset ==2.2.0
- hsexif ==0.6.1.6
- hs-functors ==0.1.3.0
- hs-GeoIP ==0.3

File diff suppressed because it is too large Load Diff

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "catch-${version}";
version = "1.12.0";
version = "1.12.2";
src = fetchFromGitHub {
owner = "catchorg";
repo = "Catch";
rev = "v${version}";
sha256 = "0hkcmycvyyazzi9dywnyiipnmbx399iirh5xk5g957c8zl0505kd";
sha256 = "1gdp5wm8khn02g2miz381llw3191k7309qj8s3jd6sasj01rhf23";
};
nativeBuildInputs = [ cmake ];

View File

@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub, cmake, python }:
stdenv.mkDerivation rec {
name = "catch2-${version}";
version = "2.4.2";
src = fetchFromGitHub {
owner = "catchorg";
repo = "Catch2";
rev = "v${version}";
sha256="1105bxbvh1xxl4yxjjp6l6w6hgsh8xbdiwlnga9di5y2x92b9bjd";
};
nativeBuildInputs = [ cmake ];
cmakeFlags = [
"-H.."
"-DBUILD_TESTING=OFF"];
meta = with stdenv.lib; {
description = "A multi-paradigm automated test framework for C++ and Objective-C (and, maybe, C)";
homepage = http://catch-lib.net;
license = licenses.boost;
maintainers = with maintainers; [ edwtjo knedlsepp ];
platforms = with platforms; unix;
};
}

View File

@ -3,16 +3,18 @@
, systemd }:
let
version = "2018-04-04";
version = "2018-11-04";
in stdenv.mkDerivation rec {
name = "openzwave-${version}";
# Use fork by Home Assistant because this package is mainly used for python.pkgs.homeassistant-pyozw.
# See https://github.com/OpenZWave/open-zwave/compare/master...home-assistant:hass for the difference.
src = fetchFromGitHub {
owner = "OpenZWave";
owner = "home-assistant";
repo = "open-zwave";
rev = "ab5fe966fee882bb9e8d78a91db892a60a1863d9";
sha256 = "0yby8ygzjn5zp5vhysxaadbzysqanwd2zakz379299qs454pr2h9";
rev = "2cc174ad5c935d2d17828634aca2db5a60c59237";
sha256 = "1d13maj93i6h792cbvqpx43ffss44dxmvbwj2777vzvvjib8m4n8";
};
nativeBuildInputs = [ doxygen fontconfig graphviz-nox libxml2 pkgconfig which ];

View File

@ -113,6 +113,7 @@ let
qtwayland = callPackage ../modules/qtwayland.nix {};
qtwebchannel = callPackage ../modules/qtwebchannel.nix {};
qtwebengine = callPackage ../modules/qtwebengine.nix {};
qtwebglplugin = callPackage ../modules/qtwebglplugin.nix {};
qtwebkit = callPackage ../modules/qtwebkit.nix {};
qtwebsockets = callPackage ../modules/qtwebsockets.nix {};
qtx11extras = callPackage ../modules/qtx11extras.nix {};

View File

@ -0,0 +1,6 @@
{ qtModule, qtbase, qtwebsockets }:
qtModule {
name = "qtwebglplugin";
qtInputs = [ qtbase qtwebsockets ];
}

View File

@ -41,10 +41,16 @@ stdenv.mkDerivation rec {
}
else throw "platform not ${stdenv.hostPlatform.system} supported!";
emulator = fetchurl {
url = "https://dl.google.com/android/repository/emulator-linux-4969155.zip";
sha256 = "0iw0j6j3w9zpfalsa7xq2czz4vzgq96zk2zddjhanwwx4p8fhrfd";
};
buildCommand = ''
mkdir -p $out/libexec
cd $out/libexec
unpackFile $src
unpackFile $emulator
cd tools
for f in monitor bin/monkeyrunner bin/uiautomatorviewer
@ -76,13 +82,16 @@ stdenv.mkDerivation rec {
# The emulators need additional libraries, which are dynamically loaded => let's wrap them
${stdenv.lib.optionalString (stdenv.hostPlatform.system == "x86_64-linux") ''
for i in emulator emulator-check
cd ..
for i in emulator/emulator* emulator/qemu/linux-x86_64/qemu-system-*
do
patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux-x86-64.so.2 $i
wrapProgram `pwd`/$i \
--prefix PATH : ${stdenv.lib.makeBinPath [ file glxinfo ]} \
--suffix LD_LIBRARY_PATH : `pwd`/lib:${makeLibraryPath [ stdenv.cc.cc libX11 libxcb libXau libXdmcp libXext libGLU_combined alsaLib zlib libpulseaudio dbus.lib ]} \
--suffix QT_XKB_CONFIG_ROOT : ${xkeyboardconfig}/share/X11/xkb
done
cd tools
''}
''}
@ -93,7 +102,7 @@ stdenv.mkDerivation rec {
# The monitor requires some more patching
cd lib/monitor-x86
patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux.so.2 monitor
patchelf --set-interpreter ${stdenv_32bit.cc.libc.out}/lib/ld-linux.so.2 monitor
patchelf --set-rpath ${makeLibraryPath [ libX11 libXext libXrender freetype fontconfig ]} libcairo-swt.so
wrapProgram `pwd`/monitor \
@ -263,6 +272,14 @@ stdenv.mkDerivation rec {
fi
done
for i in $out/libexec/emulator/*
do
if [ ! -d $i ] && [ -x $i ]
then
ln -sf $i $out/bin/$(basename $i)
fi
done
wrapProgram $out/bin/sdkmanager \
--set JAVA_HOME ${jdk}

View File

@ -9,8 +9,6 @@ stdenv.mkDerivation rec {
sha256 = "0ixjwc3plrljvj24za3l9gy0w30lsbggp8yh02lwrzw61ls4cri0";
};
unpackCmd = "tar -xf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;

View File

@ -10,8 +10,6 @@ stdenv.mkDerivation rec {
sha256 = "1s10iqx8rgnxr5n93lf4blwirjf8nlm272yg5sipr7lsr35v49wc";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
propagatedBuildInputs = [ astring fmt fpath logs rresult ];

View File

@ -15,8 +15,6 @@ stdenv.mkDerivation rec {
sha256 = "18jqphjiifljlh9jg8zpl6310p3iwyaqphdkmf89acyaix0s4kj1";
};
unpackCmd = "tar xjf $src";
nativeBuildInputs = [ ocamlbuild topkg ];
buildInputs = [ ocaml findlib ];
propagatedBuildInputs = [ result ];

View File

@ -8,8 +8,6 @@ stdenv.mkDerivation {
sha256 = "08k2558a3dnxn8msgpz8c93sfn0y027ganfdi2yvql0fp1ixv97p";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ];
inherit (topkg) buildPhase installPhase;

View File

@ -9,8 +9,6 @@ buildDunePackage rec {
sha256 = "1x4jxsvd1lrfibnjdjrkfl7hqsc48rljnwbap6faanj9qhwwa6v2";
};
unpackCmd = "tar -xjf $curSrc";
propagatedBuildInputs = [ sexplib ocplib-endian ];
meta = {

View File

@ -2,7 +2,7 @@
buildDunePackage {
pname = "cstruct-lwt";
inherit (cstruct) version src unpackCmd meta;
inherit (cstruct) version src meta;
minimumOCamlVersion = "4.02";

View File

@ -2,7 +2,7 @@
buildDunePackage {
pname = "ppx_cstruct";
inherit (cstruct) version src unpackCmd meta;
inherit (cstruct) version src meta;
minimumOCamlVersion = "4.02";

View File

@ -2,7 +2,7 @@
buildDunePackage {
pname = "cstruct-unix";
inherit (cstruct) version src unpackCmd meta;
inherit (cstruct) version src meta;
minimumOCamlVersion = "4.02";

View File

@ -9,8 +9,6 @@ buildDunePackage rec {
sha256 = "0cgfb6cwhwy7ypc1i3jyfz6sdnykp75aqi6kk0g1a2d81yjwzbcg";
};
unpackCmd = "tar -xjf $src";
meta = {
description = "A pure OCaml library to read and write CSV files";
license = stdenv.lib.licenses.lgpl21;

View File

@ -13,8 +13,6 @@ stdenv.mkDerivation rec {
sha256 = "0fsyfi5ps17j3wjav5176gf6z3a5xcw9aqhcr1gml9n9ayfbkhrd";
};
unpackCmd = "tar -xjf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;

View File

@ -11,8 +11,6 @@ buildDunePackage rec {
sha256 = "0rzysj07z2q6gk0yhjxnjnba01vmdb9x32wwna10qk3rrb8r2pnn";
};
unpackCmd = "tar xjf $src";
hardeningDisable = stdenv.lib.optional stdenv.isDarwin "strictoverflow";
meta = with stdenv.lib; {

View File

@ -15,8 +15,6 @@ stdenv.mkDerivation rec {
sha256 = "06wvd57c8khpq0c2hvm15zng269zvabsw1lcaqphqdcckl67nsxr";
};
unpackCmd = "tar -xjf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
propagatedBuildInputs = [ faraday ];
@ -31,4 +29,3 @@ stdenv.mkDerivation rec {
inherit (ocaml.meta) platforms;
};
}

View File

@ -8,8 +8,6 @@ stdenv.mkDerivation {
sha256 = "1zj9azcxcn6skmb69ykgmi9z8c50yskwg03wqgh87lypgjdcz060";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
propagatedBuildInputs = [ result uchar ];

View File

@ -7,8 +7,6 @@ stdenv.mkDerivation {
sha256 = "1hr05d8bpqmqcfdavn4rjk9rxr7v2zl84866f5knjifrm60sxqic";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
propagatedBuildInputs = [ astring ];

View File

@ -13,8 +13,6 @@ stdenv.mkDerivation rec {
sha256 = "019rl4rir4lwgjyqj2wq3ylw4daih1kxxgbc6ld6kzcq66mwr747";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
propagatedBuildInputs = [ bos cmdliner ocamlgraph ];

View File

@ -23,8 +23,6 @@ stdenv.mkDerivation rec {
createFindlibDestdir = true;
unpackCmd = "tar xjf $src";
buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true";
installPhase = "opaline -libdir $OCAMLFIND_DESTDIR";

View File

@ -11,8 +11,6 @@ buildDunePackage rec {
sha256 = "17hqf7z5afp2z2c55fk5myxkm7cm74259rqm94hcxkqlpdaqhm8h";
};
unpackCmd = "tar -xjf $curSrc";
propagatedBuildInputs = [ cstruct ];
doCheck = true;

View File

@ -8,8 +8,6 @@ stdenv.mkDerivation {
sha256 = "08b1ljw88ny3l0mdq6xmffjk8anfc77igryva5jz1p6f4f746ywk";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;

View File

@ -13,8 +13,6 @@ stdenv.mkDerivation {
buildInputs = [ ocaml findlib ocamlbuild topkg ];
propagatedBuildInputs = [ uutf ];
unpackCmd = "tar xjf $src";
inherit (topkg) buildPhase installPhase;
meta = {

View File

@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
sha256 = "1khbn7jqpid83zn8rvyh1x1sirls7zc878zj4fz985m5xlsfy853";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg fmt cmdliner lwt ];
propagatedBuildInputs = [ result ];

View File

@ -9,8 +9,6 @@ stdenv.mkDerivation rec {
sha256 = "0bd7js9rrma1fjjjjc3fgr9l5fjbhgihx2nsaf96g2b35iiaimd0";
};
unpackCmd = "tar -xjf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
propagatedBuildInputs = [ psq ];

View File

@ -23,8 +23,6 @@ stdenv.mkDerivation {
inherit (param) sha256;
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ]
++ stdenv.lib.optional jsooSupport js_of_ocaml;

View File

@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
sha256 = "0zshi9hlhcz61n5z1k6fx6rsi0pl4xgahsyl2jp0crqkaf3hqwlg";
};
unpackCmd = "tar xjf $curSrc";
patches = [
(fetchpatch {
url = "https://raw.githubusercontent.com/ocaml/opam-repository/master/packages/nocrypto/nocrypto.0.5.4-1/files/0001-add-missing-runtime-dependencies-in-_tags.patch";

View File

@ -19,8 +19,6 @@ stdenv.mkDerivation rec {
sha256 = "0wdfmgx1mz77s7m451vy8r9i4iqwn7s7b39kpbpckf3w9417riq0";
};
unpackCmd = "tar -xjf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ];
propagatedBuildInputs = [ result uucp uuseg uutf ] ++
optional withLwt lwt;

View File

@ -10,8 +10,6 @@ stdenv.mkDerivation {
sha256 = "02milzzlr4xk5aymg2fjz27f528d5pyscqvld3q0dm41zcpkz5ml";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;

View File

@ -21,8 +21,6 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ uutf result ];
unpackCmd = "tar xjf $src";
inherit (topkg) buildPhase installPhase;
meta = with stdenv.lib; {

View File

@ -9,8 +9,6 @@ buildDunePackage rec {
sha256 = "1xmslk1mwdzhy1bydgsjlcb7h544c39hvxa8lywp8w72gaggjl16";
};
unpackCmd = "tar xjf $curSrc";
buildInputs = [ alcotest ocaml-migrate-parsetree ];
doCheck = true;

View File

@ -11,8 +11,6 @@ buildDunePackage rec {
sha256 = "0qy0wa3rd5yh1612jijadi1yddfslpsmmmf69phi2dhr3vmkhza7";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml-migrate-parsetree ];
meta = with stdenv.lib; {

View File

@ -13,8 +13,6 @@ stdenv.mkDerivation rec {
sha256 = "08ghgdivbjrxnaqc3hsb69mr9s2ql5ds0fb97b7z6zimzqibz6lp";
};
unpackCmd = "tar -xjf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;

View File

@ -9,8 +9,6 @@ stdenv.mkDerivation rec {
sha256 = "0z2snhda8bg136xkw2msw6k2dz84vb49p8bgzrxfs8mawdlk0kkg";
};
unpackCmd = "tar -xf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg js_of_ocaml ];
propagatedBuildInputs = [ result ];

View File

@ -8,7 +8,6 @@ stdenv.mkDerivation {
sha256 = "1aj8w79gdd9xnrbz7s5p8glcb4pmimi8jp9f439dqnf6ih3mqb3v";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib topkg ocamlbuild ];
inherit (topkg) buildPhase installPhase;

View File

@ -8,7 +8,6 @@ let param =
sha256 = "06pkbnkad2ck50jn59ggwv154yd9vb01abblihvam6p27m4za1pc";
buildInputs = [ dune ];
extra = {
unpackCmd = "tar -xjf $curSrc";
buildPhase = "dune build -p rope";
inherit (dune) installPhase;
};

View File

@ -8,8 +8,6 @@ stdenv.mkDerivation rec {
sha256 = "1k69a3gvrk7f2cshwjzvk7818f0bwxhacgd14wxy6d4gmrggci86";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml findlib ocamlbuild topkg ];
inherit (topkg) buildPhase installPhase;

View File

@ -32,7 +32,6 @@ stdenv.mkDerivation rec {
buildInputs = [ ocaml findlib ocamlbuild ];
propagatedBuildInputs = [ result ];
unpackCmd = "tar xjf ${src}";
buildPhase = "${run} build";
createFindlibDestdir = true;
installPhase = "${opaline}/bin/opaline -prefix $out -libdir $OCAMLFIND_DESTDIR";

View File

@ -22,8 +22,6 @@ stdenv.mkDerivation {
buildInputs = [ ocaml findlib ocamlbuild topkg result ocb-stubblr ];
propagatedBuildInputs = [ SDL2 ctypes ];
unpackCmd = "tar xjf $src";
preConfigure = ''
# The following is done to avoid an additional dependency (ncurses)
# due to linking in the custom bytecode runtime. Instead, just

View File

@ -8,7 +8,6 @@ stdenv.mkDerivation {
sha256 = "1w2saw7zanf9m9ffvz2lvcxvlm118pws2x1wym526xmydhqpyfa7";
};
unpackCmd = "tar xjf $src";
buildInputs = [ ocaml ocamlbuild findlib opaline ];
buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true";
installPhase = "opaline -libdir $OCAMLFIND_DESTDIR";

View File

@ -11,8 +11,6 @@ buildDunePackage rec {
sha256 = "1m845rwd70wi4iijkrigyz939m1x84ba70hvv0d9sgk6971w4kz0";
};
unpackCmd = "tar -xjf $curSrc";
buildInputs = [ ounit ];
propagatedBuildInputs = [ ppx_sexp_conv re sexplib stringext ];
doCheck = true;

View File

@ -15,8 +15,6 @@ stdenv.mkDerivation rec {
buildInputs = [ ocaml findlib ocamlbuild topkg ];
unpackCmd = "tar xjf $src";
inherit (topkg) buildPhase installPhase;
propagatedBuildInputs = [ xmlm ];

View File

@ -21,8 +21,6 @@ stdenv.mkDerivation {
propagatedBuildInputs = [ uchar ];
unpackCmd = "tar xjf $src";
buildPhase = "${topkg.buildPhase} --with-cmdliner false";
inherit (topkg) installPhase;

View File

@ -2,14 +2,12 @@
stdenv.mkDerivation rec {
version = "0.9.6";
name = "uuidm-${version}";
name = "uuidm-${version}";
src = fetchurl {
url = "http://erratique.ch/software/uuidm/releases/uuidm-${version}.tbz";
sha256 = "0hz4fdx0x16k0pw9995vkz5d1hmzz6b16wck9li399rcbfnv5jlc";
};
unpackCmd = "tar -xf $curSrc";
buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
inherit (topkg) buildPhase installPhase;

View File

@ -19,8 +19,6 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ uchar ];
unpackCmd = "tar xjf $src";
inherit (topkg) buildPhase installPhase;
meta = with stdenv.lib; {

Some files were not shown because too many files have changed in this diff Show More