diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix
index e35e7b4a1ec..932f8fd1e53 100644
--- a/lib/systems/inspect.nix
+++ b/lib/systems/inspect.nix
@@ -21,6 +21,7 @@ rec {
isSparc = { cpu = { family = "sparc"; }; };
isWasm = { cpu = { family = "wasm"; }; };
isAvr = { cpu = { family = "avr"; }; };
+ isAlpha = { cpu = { family = "alpha"; }; };
is32bit = { cpu = { bits = 32; }; };
is64bit = { cpu = { bits = 64; }; };
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index bbf016194ef..63d8385eeb3 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -752,6 +752,11 @@
github = "calbrecht";
name = "Christian Albrecht";
};
+ callahad = {
+ email = "dan.callahan@gmail.com";
+ github = "callahad";
+ name = "Dan Callahan";
+ };
calvertvl = {
email = "calvertvl@gmail.com";
github = "calvertvl";
diff --git a/nixos/doc/manual/configuration/configuration.xml b/nixos/doc/manual/configuration/configuration.xml
index cebc4122c6c..138d1d86d7f 100644
--- a/nixos/doc/manual/configuration/configuration.xml
+++ b/nixos/doc/manual/configuration/configuration.xml
@@ -23,5 +23,6 @@
+
diff --git a/nixos/doc/manual/configuration/kubernetes.xml b/nixos/doc/manual/configuration/kubernetes.xml
new file mode 100644
index 00000000000..ddc026c0c01
--- /dev/null
+++ b/nixos/doc/manual/configuration/kubernetes.xml
@@ -0,0 +1,127 @@
+
+ Kubernetes
+
+
+ The NixOS Kubernetes module is a collective term for a handful of
+ individual submodules implementing the Kubernetes cluster components.
+
+
+
+ There are generally two ways of enabling Kubernetes on NixOS.
+ One way is to enable and configure cluster components appropriately by hand:
+
+services.kubernetes = {
+ apiserver.enable = true;
+ controllerManager.enable = true;
+ scheduler.enable = true;
+ addonManager.enable = true;
+ proxy.enable = true;
+ flannel.enable = true;
+};
+
+ Another way is to assign cluster roles ("master" and/or "node") to the host.
+ This enables apiserver, controllerManager, scheduler, addonManager,
+ kube-proxy and etcd:
+
+ = [ "master" ];
+
+ While this will enable the kubelet and kube-proxy only:
+
+ = [ "node" ];
+
+ Assigning both the master and node roles is usable if you want a single
+ node Kubernetes cluster for dev or testing purposes:
+
+ = [ "master" "node" ];
+
+ Note: Assigning either role will also default both
+ and
+ to true.
+ This sets up flannel as CNI and activates automatic PKI bootstrapping.
+
+
+
+ As of kubernetes 1.10.X it has been deprecated to open
+ non-tls-enabled ports on kubernetes components. Thus, from NixOS 19.03 all
+ plain HTTP ports have been disabled by default.
+ While opening insecure ports is still possible, it is recommended not to
+ bind these to other interfaces than loopback.
+
+ To re-enable the insecure port on the apiserver, see options:
+
+ and
+
+
+
+
+
+ As of NixOS 19.03, it is mandatory to configure:
+ .
+ The masterAddress must be resolveable and routeable by all cluster nodes.
+ In single node clusters, this can be set to localhost.
+
+
+
+
+ Role-based access control (RBAC) authorization mode is enabled by default.
+ This means that anonymous requests to the apiserver secure port will
+ expectedly cause a permission denied error. All cluster components must
+ therefore be configured with x509 certificates for two-way tls communication.
+ The x509 certificate subject section determines the roles and permissions
+ granted by the apiserver to perform clusterwide or namespaced operations.
+ See also:
+
+ Using RBAC Authorization.
+
+
+
+ The NixOS kubernetes module provides an option for automatic certificate
+ bootstrapping and configuration,
+ .
+ The PKI bootstrapping process involves setting up a certificate authority
+ (CA) daemon (cfssl) on the kubernetes master node. cfssl generates a CA-cert
+ for the cluster, and uses the CA-cert for signing subordinate certs issued to
+ each of the cluster components. Subsequently, the certmgr daemon monitors
+ active certificates and renews them when needed. For single node Kubernetes
+ clusters, setting = true
+ is sufficient and no further action is required. For joining extra node
+ machines to an existing cluster on the other hand, establishing initial trust
+ is mandatory.
+
+
+
+ To add new nodes to the cluster:
+ On any (non-master) cluster node where
+ is enabled, the helper
+ script nixos-kubernetes-node-join is available on PATH.
+ Given a token on stdin, it will copy the token to the kubernetes
+ secrets directory and restart the certmgr service. As requested
+ certificates are issued, the script will restart kubernetes cluster
+ components as needed for them to pick up new keypairs.
+
+
+
+
+ Multi-master (HA) clusters are not supported by the easyCerts module.
+
+
+
+
+ In order to interact with an RBAC-enabled cluster as an administrator, one
+ needs to have cluster-admin privileges. By default, when easyCerts is
+ enabled, a cluster-admin kubeconfig file is generated and linked into
+ /etc/kubernetes/cluster-admin.kubeconfig as determined by
+ .
+ export KUBECONFIG=/etc/kubernetes/cluster-admin.kubeconfig
+ will make kubectl use this kubeconfig to access and authenticate the cluster.
+ The cluster-admin kubeconfig references an auto-generated keypair owned by
+ root. Thus, only root on the kubernetes master may obtain cluster-admin
+ rights by means of this file.
+
+
+
diff --git a/nixos/doc/manual/release-notes/rl-1903.xml b/nixos/doc/manual/release-notes/rl-1903.xml
index 6f78983d482..269f27f74fb 100644
--- a/nixos/doc/manual/release-notes/rl-1903.xml
+++ b/nixos/doc/manual/release-notes/rl-1903.xml
@@ -54,6 +54,13 @@
to false and enable your preferred display manager.
+
+ A major refactoring of the Kubernetes module has been completed.
+ Refactorings primarily focus on decoupling components and enhancing
+ security. Two-way TLS and RBAC has been enabled by default for all
+ components, which slightly changes the way the module is configured.
+ See: for details.
+
@@ -564,6 +571,40 @@
provisioning.
+
+
+ The use of insecure ports on kubernetes has been deprecated.
+ Thus options:
+ services.kubernetes.apiserver.port and
+ services.kubernetes.controllerManager.port
+ has been renamed to .insecurePort,
+ and default of both options has changed to 0 (disabled).
+
+
+
+
+ Note that the default value of
+ services.kubernetes.apiserver.bindAddress
+ has changed from 127.0.0.1 to 0.0.0.0, allowing the apiserver to be
+ accessible from outside the master node itself.
+ If the apiserver insecurePort is enabled,
+ it is strongly recommended to only bind on the loopback interface. See:
+ services.kubernetes.apiserver.insecurebindAddress.
+
+
+
+
+ The option services.kubernetes.apiserver.allowPrivileged
+ and services.kubernetes.kubelet.allowPrivileged now
+ defaults to false. Disallowing privileged containers on the cluster.
+
+
+
+
+ The kubernetes module does no longer add the kubernetes package to
+ environment.systemPackages implicitly.
+
+
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 08422d911eb..7af6e117c51 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -82,6 +82,7 @@
./misc/version.nix
./programs/adb.nix
./programs/atop.nix
+ ./programs/autojump.nix
./programs/bash/bash.nix
./programs/bcc.nix
./programs/blcr.nix
@@ -195,9 +196,17 @@
./services/backup/tarsnap.nix
./services/backup/znapzend.nix
./services/cluster/hadoop/default.nix
+ ./services/cluster/kubernetes/addons/dns.nix
+ ./services/cluster/kubernetes/addons/dashboard.nix
+ ./services/cluster/kubernetes/addon-manager.nix
+ ./services/cluster/kubernetes/apiserver.nix
+ ./services/cluster/kubernetes/controller-manager.nix
./services/cluster/kubernetes/default.nix
- ./services/cluster/kubernetes/dns.nix
- ./services/cluster/kubernetes/dashboard.nix
+ ./services/cluster/kubernetes/flannel.nix
+ ./services/cluster/kubernetes/kubelet.nix
+ ./services/cluster/kubernetes/pki.nix
+ ./services/cluster/kubernetes/proxy.nix
+ ./services/cluster/kubernetes/scheduler.nix
./services/computing/boinc/client.nix
./services/computing/torque/server.nix
./services/computing/torque/mom.nix
@@ -283,6 +292,7 @@
./services/hardware/acpid.nix
./services/hardware/actkbd.nix
./services/hardware/bluetooth.nix
+ ./services/hardware/bolt.nix
./services/hardware/brltty.nix
./services/hardware/freefall.nix
./services/hardware/fwupd.nix
diff --git a/nixos/modules/programs/autojump.nix b/nixos/modules/programs/autojump.nix
new file mode 100644
index 00000000000..3a8feec4bb4
--- /dev/null
+++ b/nixos/modules/programs/autojump.nix
@@ -0,0 +1,33 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.programs.autojump;
+ prg = config.programs;
+in
+{
+ options = {
+ programs.autojump = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable autojump.
+ '';
+ };
+ };
+ };
+
+ ###### implementation
+
+ config = mkIf cfg.enable {
+ environment.pathsToLink = [ "/share/autojump" ];
+ environment.systemPackages = [ pkgs.autojump ];
+
+ programs.bash.interactiveShellInit = "source ${pkgs.autojump}/share/autojump/autojump.bash";
+ programs.zsh.interactiveShellInit = mkIf prg.zsh.enable "source ${pkgs.autojump}/share/autojump/autojump.zsh";
+ programs.fish.interactiveShellInit = mkIf prg.fish.enable "source ${pkgs.autojump}/share/autojump/autojump.fish";
+ };
+}
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index 24ab963f718..1e6557e1f0e 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -40,9 +40,19 @@ with lib;
(mkRenamedOptionModule [ "services" "kibana" "host" ] [ "services" "kibana" "listenAddress" ])
(mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "admissionControl" ] [ "services" "kubernetes" "apiserver" "enableAdmissionPlugins" ])
(mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "address" ] ["services" "kubernetes" "apiserver" "bindAddress"])
+ (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "port" ] ["services" "kubernetes" "apiserver" "insecurePort"])
(mkRemovedOptionModule [ "services" "kubernetes" "apiserver" "publicAddress" ] "")
(mkRenamedOptionModule [ "services" "kubernetes" "addons" "dashboard" "enableRBAC" ] [ "services" "kubernetes" "addons" "dashboard" "rbac" "enable" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "controllerManager" "address" ] ["services" "kubernetes" "controllerManager" "bindAddress"])
+ (mkRenamedOptionModule [ "services" "kubernetes" "controllerManager" "port" ] ["services" "kubernetes" "controllerManager" "insecurePort"])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "servers" ] [ "services" "kubernetes" "apiserver" "etcd" "servers" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "keyFile" ] [ "services" "kubernetes" "apiserver" "etcd" "keyFile" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "certFile" ] [ "services" "kubernetes" "apiserver" "etcd" "certFile" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "caFile" ] [ "services" "kubernetes" "apiserver" "etcd" "caFile" ])
+ (mkRemovedOptionModule [ "services" "kubernetes" "kubelet" "applyManifests" ] "")
(mkRemovedOptionModule [ "services" "kubernetes" "kubelet" "cadvisorPort" ] "")
+ (mkRenamedOptionModule [ "services" "kubernetes" "proxy" "address" ] ["services" "kubernetes" "proxy" "bindAddress"])
+ (mkRemovedOptionModule [ "services" "kubernetes" "verbose" ] "")
(mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ])
(mkRenamedOptionModule [ "services" "mpd" "network" "host" ] [ "services" "mpd" "network" "listenAddress" ])
(mkRenamedOptionModule [ "services" "neo4j" "host" ] [ "services" "neo4j" "defaultListenAddress" ])
@@ -59,6 +69,7 @@ with lib;
(mkRenamedOptionModule [ "services" "statsd" "host" ] [ "services" "statsd" "listenAddress" ])
(mkRenamedOptionModule [ "services" "subsonic" "host" ] [ "services" "subsonic" "listenAddress" ])
(mkRenamedOptionModule [ "services" "tor" "relay" "portSpec" ] [ "services" "tor" "relay" "port" ])
+ (mkRenamedOptionModule [ "services" "vmwareGuest" ] [ "virtualisation" "vmware" "guest" ])
(mkRenamedOptionModule [ "jobs" ] [ "systemd" "services" ])
(mkRenamedOptionModule [ "services" "gitlab" "stateDir" ] [ "services" "gitlab" "statePath" ])
diff --git a/nixos/modules/services/cluster/kubernetes/addon-manager.nix b/nixos/modules/services/cluster/kubernetes/addon-manager.nix
new file mode 100644
index 00000000000..17f2dde31a7
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/addon-manager.nix
@@ -0,0 +1,167 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.addonManager;
+
+ isRBACEnabled = elem "RBAC" top.apiserver.authorizationMode;
+
+ addons = pkgs.runCommand "kubernetes-addons" { } ''
+ mkdir -p $out
+ # since we are mounting the addons to the addon manager, they need to be copied
+ ${concatMapStringsSep ";" (a: "cp -v ${a}/* $out/") (mapAttrsToList (name: addon:
+ pkgs.writeTextDir "${name}.json" (builtins.toJSON addon)
+ ) (cfg.addons))}
+ '';
+in
+{
+ ###### interface
+ options.services.kubernetes.addonManager = with lib.types; {
+
+ bootstrapAddons = mkOption {
+ description = ''
+ Bootstrap addons are like regular addons, but they are applied with cluster-admin rigths.
+ They are applied at addon-manager startup only.
+ '';
+ default = { };
+ type = attrsOf attrs;
+ example = literalExample ''
+ {
+ "my-service" = {
+ "apiVersion" = "v1";
+ "kind" = "Service";
+ "metadata" = {
+ "name" = "my-service";
+ "namespace" = "default";
+ };
+ "spec" = { ... };
+ };
+ }
+ '';
+ };
+
+ addons = mkOption {
+ description = "Kubernetes addons (any kind of Kubernetes resource can be an addon).";
+ default = { };
+ type = attrsOf (either attrs (listOf attrs));
+ example = literalExample ''
+ {
+ "my-service" = {
+ "apiVersion" = "v1";
+ "kind" = "Service";
+ "metadata" = {
+ "name" = "my-service";
+ "namespace" = "default";
+ };
+ "spec" = { ... };
+ };
+ }
+ // import { cfg = config.services.kubernetes; };
+ '';
+ };
+
+ enable = mkEnableOption "Whether to enable Kubernetes addon manager.";
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable {
+ environment.etc."kubernetes/addons".source = "${addons}/";
+
+ systemd.services.kube-addon-manager = {
+ description = "Kubernetes addon manager";
+ wantedBy = [ "kubernetes.target" ];
+ after = [ "kube-apiserver.service" ];
+ environment.ADDON_PATH = "/etc/kubernetes/addons/";
+ path = [ pkgs.gawk ];
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = "${top.package}/bin/kube-addons";
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ Restart = "on-failure";
+ RestartSec = 10;
+ };
+ };
+
+ services.kubernetes.addonManager.bootstrapAddons = mkIf isRBACEnabled
+ (let
+ name = system:kube-addon-manager;
+ namespace = "kube-system";
+ in
+ {
+
+ kube-addon-manager-r = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "Role";
+ metadata = {
+ inherit name namespace;
+ };
+ rules = [{
+ apiGroups = ["*"];
+ resources = ["*"];
+ verbs = ["*"];
+ }];
+ };
+
+ kube-addon-manager-rb = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "RoleBinding";
+ metadata = {
+ inherit name namespace;
+ };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "Role";
+ inherit name;
+ };
+ subjects = [{
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "User";
+ inherit name;
+ }];
+ };
+
+ kube-addon-manager-cluster-lister-cr = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "ClusterRole";
+ metadata = {
+ name = "${name}:cluster-lister";
+ };
+ rules = [{
+ apiGroups = ["*"];
+ resources = ["*"];
+ verbs = ["list"];
+ }];
+ };
+
+ kube-addon-manager-cluster-lister-crb = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "ClusterRoleBinding";
+ metadata = {
+ name = "${name}:cluster-lister";
+ };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "ClusterRole";
+ name = "${name}:cluster-lister";
+ };
+ subjects = [{
+ kind = "User";
+ inherit name;
+ }];
+ };
+ });
+
+ services.kubernetes.pki.certs = {
+ addonManager = top.lib.mkCert {
+ name = "kube-addon-manager";
+ CN = "system:kube-addon-manager";
+ action = "systemctl restart kube-addon-manager.service";
+ };
+ };
+ };
+
+}
diff --git a/nixos/modules/services/cluster/kubernetes/dashboard.nix b/nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
similarity index 95%
rename from nixos/modules/services/cluster/kubernetes/dashboard.nix
rename to nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
index cbd6e8f7bf7..454e7d35bc0 100644
--- a/nixos/modules/services/cluster/kubernetes/dashboard.nix
+++ b/nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
@@ -8,6 +8,13 @@ in {
options.services.kubernetes.addons.dashboard = {
enable = mkEnableOption "kubernetes dashboard addon";
+ extraArgs = mkOption {
+ description = "Extra arguments to append to the dashboard cmdline";
+ type = types.listOf types.str;
+ default = [];
+ example = ["--enable-skip-login"];
+ };
+
rbac = mkOption {
description = "Role-based access control (RBAC) options";
default = {};
@@ -31,7 +38,7 @@ in {
version = mkOption {
description = "Which version of the kubernetes dashboard to deploy";
type = types.str;
- default = "v1.8.3";
+ default = "v1.10.1";
};
image = mkOption {
@@ -39,9 +46,9 @@ in {
type = types.attrs;
default = {
imageName = "k8s.gcr.io/kubernetes-dashboard-amd64";
- imageDigest = "sha256:dc4026c1b595435ef5527ca598e1e9c4343076926d7d62b365c44831395adbd0";
+ imageDigest = "sha256:0ae6b69432e78069c5ce2bcde0fe409c5c4d6f0f4d9cd50a17974fea38898747";
finalImageTag = cfg.version;
- sha256 = "18ajcg0q1vignfjk2sm4xj4wzphfz8wah69ps8dklqfvv0164mc8";
+ sha256 = "01xrr4pwgr2hcjrjsi3d14ifpzdfbxzqpzxbk2fkbjb9zkv38zxy";
};
};
};
@@ -99,7 +106,7 @@ in {
memory = "100Mi";
};
};
- args = ["--auto-generate-certificates"];
+ args = ["--auto-generate-certificates"] ++ cfg.extraArgs;
volumeMounts = [{
name = "tmp-volume";
mountPath = "/tmp";
diff --git a/nixos/modules/services/cluster/kubernetes/dns.nix b/nixos/modules/services/cluster/kubernetes/addons/dns.nix
similarity index 97%
rename from nixos/modules/services/cluster/kubernetes/dns.nix
rename to nixos/modules/services/cluster/kubernetes/addons/dns.nix
index 5a3e281ea69..8f3234bfc70 100644
--- a/nixos/modules/services/cluster/kubernetes/dns.nix
+++ b/nixos/modules/services/cluster/kubernetes/addons/dns.nix
@@ -3,7 +3,7 @@
with lib;
let
- version = "1.2.5";
+ version = "1.3.1";
cfg = config.services.kubernetes.addons.dns;
ports = {
dns = 10053;
@@ -43,9 +43,9 @@ in {
type = types.attrs;
default = {
imageName = "coredns/coredns";
- imageDigest = "sha256:33c8da20b887ae12433ec5c40bfddefbbfa233d5ce11fb067122e68af30291d6";
+ imageDigest = "sha256:02382353821b12c21b062c59184e227e001079bb13ebd01f9d3270ba0fcbf1e4";
finalImageTag = version;
- sha256 = "13q19rgwapv27xcs664dw502254yw4zw63insf6g2danidv2mg6i";
+ sha256 = "0vbylgyxv2jm2mnzk6f28jbsj305zsxmx3jr6ngjq461czcl5fi5";
};
};
};
@@ -54,21 +54,7 @@ in {
services.kubernetes.kubelet.seedDockerImages =
singleton (pkgs.dockerTools.pullImage cfg.coredns);
- services.kubernetes.addonManager.addons = {
- coredns-sa = {
- apiVersion = "v1";
- kind = "ServiceAccount";
- metadata = {
- labels = {
- "addonmanager.kubernetes.io/mode" = "Reconcile";
- "k8s-app" = "kube-dns";
- "kubernetes.io/cluster-service" = "true";
- };
- name = "coredns";
- namespace = "kube-system";
- };
- };
-
+ services.kubernetes.addonManager.bootstrapAddons = {
coredns-cr = {
apiVersion = "rbac.authorization.k8s.io/v1beta1";
kind = "ClusterRole";
@@ -123,6 +109,22 @@ in {
}
];
};
+ };
+
+ services.kubernetes.addonManager.addons = {
+ coredns-sa = {
+ apiVersion = "v1";
+ kind = "ServiceAccount";
+ metadata = {
+ labels = {
+ "addonmanager.kubernetes.io/mode" = "Reconcile";
+ "k8s-app" = "kube-dns";
+ "kubernetes.io/cluster-service" = "true";
+ };
+ name = "coredns";
+ namespace = "kube-system";
+ };
+ };
coredns-cm = {
apiVersion = "v1";
diff --git a/nixos/modules/services/cluster/kubernetes/apiserver.nix b/nixos/modules/services/cluster/kubernetes/apiserver.nix
new file mode 100644
index 00000000000..81e45b417de
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/apiserver.nix
@@ -0,0 +1,428 @@
+ { config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.apiserver;
+
+ isRBACEnabled = elem "RBAC" cfg.authorizationMode;
+
+ apiserverServiceIP = (concatStringsSep "." (
+ take 3 (splitString "." cfg.serviceClusterIpRange
+ )) + ".1");
+in
+{
+ ###### interface
+ options.services.kubernetes.apiserver = with lib.types; {
+
+ advertiseAddress = mkOption {
+ description = ''
+ Kubernetes apiserver IP address on which to advertise the apiserver
+ to members of the cluster. This address must be reachable by the rest
+ of the cluster.
+ '';
+ default = null;
+ type = nullOr str;
+ };
+
+ allowPrivileged = mkOption {
+ description = "Whether to allow privileged containers on Kubernetes.";
+ default = false;
+ type = bool;
+ };
+
+ authorizationMode = mkOption {
+ description = ''
+ Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/Webhook/RBAC/Node). See
+
+ '';
+ default = ["RBAC" "Node"]; # Enabling RBAC by default, although kubernetes default is AllowAllow
+ type = listOf (enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "Webhook" "RBAC" "Node"]);
+ };
+
+ authorizationPolicy = mkOption {
+ description = ''
+ Kubernetes apiserver authorization policy file. See
+
+ '';
+ default = [];
+ type = listOf attrs;
+ };
+
+ basicAuthFile = mkOption {
+ description = ''
+ Kubernetes apiserver basic authentication file. See
+
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ bindAddress = mkOption {
+ description = ''
+ The IP address on which to listen for the --secure-port port.
+ The associated interface(s) must be reachable by the rest
+ of the cluster, and by CLI/web clients.
+ '';
+ default = "0.0.0.0";
+ type = str;
+ };
+
+ clientCaFile = mkOption {
+ description = "Kubernetes apiserver CA file for client auth.";
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ disableAdmissionPlugins = mkOption {
+ description = ''
+ Kubernetes admission control plugins to disable. See
+
+ '';
+ default = [];
+ type = listOf str;
+ };
+
+ enable = mkEnableOption "Kubernetes apiserver";
+
+ enableAdmissionPlugins = mkOption {
+ description = ''
+ Kubernetes admission control plugins to enable. See
+
+ '';
+ default = [
+ "NamespaceLifecycle" "LimitRanger" "ServiceAccount"
+ "ResourceQuota" "DefaultStorageClass" "DefaultTolerationSeconds"
+ "NodeRestriction"
+ ];
+ example = [
+ "NamespaceLifecycle" "NamespaceExists" "LimitRanger"
+ "SecurityContextDeny" "ServiceAccount" "ResourceQuota"
+ "PodSecurityPolicy" "NodeRestriction" "DefaultStorageClass"
+ ];
+ type = listOf str;
+ };
+
+ etcd = {
+ servers = mkOption {
+ description = "List of etcd servers.";
+ default = ["http://127.0.0.1:2379"];
+ type = types.listOf types.str;
+ };
+
+ keyFile = mkOption {
+ description = "Etcd key file.";
+ default = null;
+ type = types.nullOr types.path;
+ };
+
+ certFile = mkOption {
+ description = "Etcd cert file.";
+ default = null;
+ type = types.nullOr types.path;
+ };
+
+ caFile = mkOption {
+ description = "Etcd ca file.";
+ default = top.caFile;
+ type = types.nullOr types.path;
+ };
+ };
+
+ extraOpts = mkOption {
+ description = "Kubernetes apiserver extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ extraSANs = mkOption {
+ description = "Extra x509 Subject Alternative Names to be added to the kubernetes apiserver tls cert.";
+ default = [];
+ type = listOf str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ insecureBindAddress = mkOption {
+ description = "The IP address on which to serve the --insecure-port.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ insecurePort = mkOption {
+ description = "Kubernetes apiserver insecure listening port. (0 = disabled)";
+ default = 0;
+ type = int;
+ };
+
+ kubeletClientCaFile = mkOption {
+ description = "Path to a cert file for connecting to kubelet.";
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ kubeletClientCertFile = mkOption {
+ description = "Client certificate to use for connections to kubelet.";
+ default = null;
+ type = nullOr path;
+ };
+
+ kubeletClientKeyFile = mkOption {
+ description = "Key to use for connections to kubelet.";
+ default = null;
+ type = nullOr path;
+ };
+
+ kubeletHttps = mkOption {
+ description = "Whether to use https for connections to kubelet.";
+ default = true;
+ type = bool;
+ };
+
+ runtimeConfig = mkOption {
+ description = ''
+ Api runtime configuration. See
+
+ '';
+ default = "authentication.k8s.io/v1beta1=true";
+ example = "api/all=false,api/v1=true";
+ type = str;
+ };
+
+ storageBackend = mkOption {
+ description = ''
+ Kubernetes apiserver storage backend.
+ '';
+ default = "etcd3";
+ type = enum ["etcd2" "etcd3"];
+ };
+
+ securePort = mkOption {
+ description = "Kubernetes apiserver secure port.";
+ default = 6443;
+ type = int;
+ };
+
+ serviceAccountKeyFile = mkOption {
+ description = ''
+ Kubernetes apiserver PEM-encoded x509 RSA private or public key file,
+ used to verify ServiceAccount tokens. By default tls private key file
+ is used.
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ serviceClusterIpRange = mkOption {
+ description = ''
+ A CIDR notation IP range from which to assign service cluster IPs.
+ This must not overlap with any IP ranges assigned to nodes for pods.
+ '';
+ default = "10.0.0.0/24";
+ type = str;
+ };
+
+ tlsCertFile = mkOption {
+ description = "Kubernetes apiserver certificate file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsKeyFile = mkOption {
+ description = "Kubernetes apiserver private key file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tokenAuthFile = mkOption {
+ description = ''
+ Kubernetes apiserver token authentication file. See
+
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ webhookConfig = mkOption {
+ description = ''
+ Kubernetes apiserver Webhook config file. It uses the kubeconfig file format.
+ See
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ };
+
+
+ ###### implementation
+ config = mkMerge [
+
+ (mkIf cfg.enable {
+ systemd.services.kube-apiserver = {
+ description = "Kubernetes APIServer Service";
+ wantedBy = [ "kubernetes.target" ];
+ after = [ "network.target" ];
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-apiserver \
+ --allow-privileged=${boolToString cfg.allowPrivileged} \
+ --authorization-mode=${concatStringsSep "," cfg.authorizationMode} \
+ ${optionalString (elem "ABAC" cfg.authorizationMode)
+ "--authorization-policy-file=${
+ pkgs.writeText "kube-auth-policy.jsonl"
+ (concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.authorizationPolicy)
+ }"
+ } \
+ ${optionalString (elem "Webhook" cfg.authorizationMode)
+ "--authorization-webhook-config-file=${cfg.webhookConfig}"
+ } \
+ --bind-address=${cfg.bindAddress} \
+ ${optionalString (cfg.advertiseAddress != null)
+ "--advertise-address=${cfg.advertiseAddress}"} \
+ ${optionalString (cfg.clientCaFile != null)
+ "--client-ca-file=${cfg.clientCaFile}"} \
+ --disable-admission-plugins=${concatStringsSep "," cfg.disableAdmissionPlugins} \
+ --enable-admission-plugins=${concatStringsSep "," cfg.enableAdmissionPlugins} \
+ --etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
+ ${optionalString (cfg.etcd.caFile != null)
+ "--etcd-cafile=${cfg.etcd.caFile}"} \
+ ${optionalString (cfg.etcd.certFile != null)
+ "--etcd-certfile=${cfg.etcd.certFile}"} \
+ ${optionalString (cfg.etcd.keyFile != null)
+ "--etcd-keyfile=${cfg.etcd.keyFile}"} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ ${optionalString (cfg.basicAuthFile != null)
+ "--basic-auth-file=${cfg.basicAuthFile}"} \
+ --kubelet-https=${boolToString cfg.kubeletHttps} \
+ ${optionalString (cfg.kubeletClientCaFile != null)
+ "--kubelet-certificate-authority=${cfg.kubeletClientCaFile}"} \
+ ${optionalString (cfg.kubeletClientCertFile != null)
+ "--kubelet-client-certificate=${cfg.kubeletClientCertFile}"} \
+ ${optionalString (cfg.kubeletClientKeyFile != null)
+ "--kubelet-client-key=${cfg.kubeletClientKeyFile}"} \
+ --insecure-bind-address=${cfg.insecureBindAddress} \
+ --insecure-port=${toString cfg.insecurePort} \
+ ${optionalString (cfg.runtimeConfig != "")
+ "--runtime-config=${cfg.runtimeConfig}"} \
+ --secure-port=${toString cfg.securePort} \
+ ${optionalString (cfg.serviceAccountKeyFile!=null)
+ "--service-account-key-file=${cfg.serviceAccountKeyFile}"} \
+ --service-cluster-ip-range=${cfg.serviceClusterIpRange} \
+ --storage-backend=${cfg.storageBackend} \
+ ${optionalString (cfg.tlsCertFile != null)
+ "--tls-cert-file=${cfg.tlsCertFile}"} \
+ ${optionalString (cfg.tlsKeyFile != null)
+ "--tls-private-key-file=${cfg.tlsKeyFile}"} \
+ ${optionalString (cfg.tokenAuthFile != null)
+ "--token-auth-file=${cfg.tokenAuthFile}"} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ AmbientCapabilities = "cap_net_bind_service";
+ Restart = "on-failure";
+ RestartSec = 5;
+ };
+ };
+
+ services.etcd = {
+ clientCertAuth = mkDefault true;
+ peerClientCertAuth = mkDefault true;
+ listenClientUrls = mkDefault ["https://0.0.0.0:2379"];
+ listenPeerUrls = mkDefault ["https://0.0.0.0:2380"];
+ advertiseClientUrls = mkDefault ["https://${top.masterAddress}:2379"];
+ initialCluster = mkDefault ["${top.masterAddress}=https://${top.masterAddress}:2380"];
+ name = top.masterAddress;
+ initialAdvertisePeerUrls = mkDefault ["https://${top.masterAddress}:2380"];
+ };
+
+ services.kubernetes.addonManager.bootstrapAddons = mkIf isRBACEnabled {
+
+ apiserver-kubelet-api-admin-crb = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "ClusterRoleBinding";
+ metadata = {
+ name = "system:kube-apiserver:kubelet-api-admin";
+ };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "ClusterRole";
+ name = "system:kubelet-api-admin";
+ };
+ subjects = [{
+ kind = "User";
+ name = "system:kube-apiserver";
+ }];
+ };
+
+ };
+
+ services.kubernetes.pki.certs = with top.lib; {
+ apiServer = mkCert {
+ name = "kube-apiserver";
+ CN = "kubernetes";
+ hosts = [
+ "kubernetes.default.svc"
+ "kubernetes.default.svc.${top.addons.dns.clusterDomain}"
+ cfg.advertiseAddress
+ top.masterAddress
+ apiserverServiceIP
+ "127.0.0.1"
+ ] ++ cfg.extraSANs;
+ action = "systemctl restart kube-apiserver.service";
+ };
+ apiserverKubeletClient = mkCert {
+ name = "kube-apiserver-kubelet-client";
+ CN = "system:kube-apiserver";
+ action = "systemctl restart kube-apiserver.service";
+ };
+ apiserverEtcdClient = mkCert {
+ name = "kube-apiserver-etcd-client";
+ CN = "etcd-client";
+ action = "systemctl restart kube-apiserver.service";
+ };
+ clusterAdmin = mkCert {
+ name = "cluster-admin";
+ CN = "cluster-admin";
+ fields = {
+ O = "system:masters";
+ };
+ privateKeyOwner = "root";
+ };
+ etcd = mkCert {
+ name = "etcd";
+ CN = top.masterAddress;
+ hosts = [
+ "etcd.local"
+ "etcd.${top.addons.dns.clusterDomain}"
+ top.masterAddress
+ cfg.advertiseAddress
+ ];
+ privateKeyOwner = "etcd";
+ action = "systemctl restart etcd.service";
+ };
+ };
+
+ })
+
+ ];
+
+}
diff --git a/nixos/modules/services/cluster/kubernetes/controller-manager.nix b/nixos/modules/services/cluster/kubernetes/controller-manager.nix
new file mode 100644
index 00000000000..dff97f144d5
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/controller-manager.nix
@@ -0,0 +1,162 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.controllerManager;
+in
+{
+ ###### interface
+ options.services.kubernetes.controllerManager = with lib.types; {
+
+ allocateNodeCIDRs = mkOption {
+ description = "Whether to automatically allocate CIDR ranges for cluster nodes.";
+ default = true;
+ type = bool;
+ };
+
+ bindAddress = mkOption {
+ description = "Kubernetes controller manager listening address.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ clusterCidr = mkOption {
+ description = "Kubernetes CIDR Range for Pods in cluster.";
+ default = top.clusterCidr;
+ type = str;
+ };
+
+ enable = mkEnableOption "Kubernetes controller manager.";
+
+ extraOpts = mkOption {
+ description = "Kubernetes controller manager extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ insecurePort = mkOption {
+ description = "Kubernetes controller manager insecure listening port.";
+ default = 0;
+ type = int;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes controller manager";
+
+ leaderElect = mkOption {
+ description = "Whether to start leader election before executing main loop.";
+ type = bool;
+ default = true;
+ };
+
+ rootCaFile = mkOption {
+ description = ''
+ Kubernetes controller manager certificate authority file included in
+ service account's token secret.
+ '';
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ securePort = mkOption {
+ description = "Kubernetes controller manager secure listening port.";
+ default = 10252;
+ type = int;
+ };
+
+ serviceAccountKeyFile = mkOption {
+ description = ''
+ Kubernetes controller manager PEM-encoded private RSA key file used to
+ sign service account tokens
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsCertFile = mkOption {
+ description = "Kubernetes controller-manager certificate file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsKeyFile = mkOption {
+ description = "Kubernetes controller-manager private key file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable {
+ systemd.services.kube-controller-manager = {
+ description = "Kubernetes Controller Manager Service";
+ wantedBy = [ "kubernetes.target" ];
+ after = [ "kube-apiserver.service" ];
+ serviceConfig = {
+ RestartSec = "30s";
+ Restart = "on-failure";
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-controller-manager \
+ --allocate-node-cidrs=${boolToString cfg.allocateNodeCIDRs} \
+ --bind-address=${cfg.bindAddress} \
+ ${optionalString (cfg.clusterCidr!=null)
+ "--cluster-cidr=${cfg.clusterCidr}"} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --kubeconfig=${top.lib.mkKubeConfig "kube-controller-manager" cfg.kubeconfig} \
+ --leader-elect=${boolToString cfg.leaderElect} \
+ ${optionalString (cfg.rootCaFile!=null)
+ "--root-ca-file=${cfg.rootCaFile}"} \
+ --port=${toString cfg.insecurePort} \
+ --secure-port=${toString cfg.securePort} \
+ ${optionalString (cfg.serviceAccountKeyFile!=null)
+ "--service-account-private-key-file=${cfg.serviceAccountKeyFile}"} \
+ ${optionalString (cfg.tlsCertFile!=null)
+ "--tls-cert-file=${cfg.tlsCertFile}"} \
+ ${optionalString (cfg.tlsKeyFile!=null)
+ "--tls-key-file=${cfg.tlsKeyFile}"} \
+ ${optionalString (elem "RBAC" top.apiserver.authorizationMode)
+ "--use-service-account-credentials"} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ };
+ path = top.path;
+ };
+
+ services.kubernetes.pki.certs = with top.lib; {
+ controllerManager = mkCert {
+ name = "kube-controller-manager";
+ CN = "kube-controller-manager";
+ action = "systemctl restart kube-controller-manager.service";
+ };
+ controllerManagerClient = mkCert {
+ name = "kube-controller-manager-client";
+ CN = "system:kube-controller-manager";
+ action = "systemctl restart kube-controller-manager.service";
+ };
+ };
+
+ services.kubernetes.controllerManager.kubeconfig.server = mkDefault top.apiserverAddress;
+ };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/default.nix b/nixos/modules/services/cluster/kubernetes/default.nix
index 6f3c45b29bf..375e33e91b5 100644
--- a/nixos/modules/services/cluster/kubernetes/default.nix
+++ b/nixos/modules/services/cluster/kubernetes/default.nix
@@ -5,74 +5,52 @@ with lib;
let
cfg = config.services.kubernetes;
- # YAML config; see:
- # https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/
- # https://github.com/kubernetes/kubernetes/blob/release-1.10/pkg/kubelet/apis/kubeletconfig/v1beta1/types.go
- #
- # TODO: migrate the following flags to this config file
- #
- # --pod-manifest-path
- # --address
- # --port
- # --tls-cert-file
- # --tls-private-key-file
- # --client-ca-file
- # --authentication-token-webhook
- # --authentication-token-webhook-cache-ttl
- # --authorization-mode
- # --healthz-bind-address
- # --healthz-port
- # --allow-privileged
- # --cluster-dns
- # --cluster-domain
- # --hairpin-mode
- # --feature-gates
- kubeletConfig = pkgs.runCommand "kubelet-config.yaml" { } ''
- echo > $out ${pkgs.lib.escapeShellArg (builtins.toJSON {
- kind = "KubeletConfiguration";
- apiVersion = "kubelet.config.k8s.io/v1beta1";
- ${if cfg.kubelet.applyManifests then "staticPodPath" else null} =
- manifests;
- })}
- '';
-
- infraContainer = pkgs.dockerTools.buildImage {
- name = "pause";
- tag = "latest";
- contents = cfg.package.pause;
- config.Cmd = "/bin/pause";
- };
-
- mkKubeConfig = name: cfg: pkgs.writeText "${name}-kubeconfig" (builtins.toJSON {
+ mkKubeConfig = name: conf: pkgs.writeText "${name}-kubeconfig" (builtins.toJSON {
apiVersion = "v1";
kind = "Config";
clusters = [{
name = "local";
cluster.certificate-authority = cfg.caFile;
- cluster.server = cfg.server;
+ cluster.server = conf.server;
}];
users = [{
- name = "kubelet";
+ inherit name;
user = {
- client-certificate = cfg.certFile;
- client-key = cfg.keyFile;
+ client-certificate = conf.certFile;
+ client-key = conf.keyFile;
};
}];
contexts = [{
context = {
cluster = "local";
- user = "kubelet";
+ user = name;
};
- current-context = "kubelet-context";
+ current-context = "local";
}];
});
+ caCert = secret "ca";
+
+ etcdEndpoints = ["https://${cfg.masterAddress}:2379"];
+
+ mkCert = { name, CN, hosts ? [], fields ? {}, action ? "",
+ privateKeyOwner ? "kubernetes" }: rec {
+ inherit name caCert CN hosts fields action;
+ cert = secret name;
+ key = secret "${name}-key";
+ privateKeyOptions = {
+ owner = privateKeyOwner;
+ group = "nogroup";
+ mode = "0600";
+ path = key;
+ };
+ };
+
+ secret = name: "${cfg.secretsPath}/${name}.pem";
+
mkKubeConfigOptions = prefix: {
server = mkOption {
description = "${prefix} kube-apiserver server address.";
- default = "http://${if cfg.apiserver.advertiseAddress != null
- then cfg.apiserver.advertiseAddress
- else "127.0.0.1"}:${toString cfg.apiserver.port}";
type = types.str;
};
@@ -101,66 +79,6 @@ let
certFile = mkDefault cfg.kubeconfig.certFile;
keyFile = mkDefault cfg.kubeconfig.keyFile;
};
-
- cniConfig =
- if cfg.kubelet.cni.config != [] && !(isNull cfg.kubelet.cni.configDir) then
- throw "Verbatim CNI-config and CNI configDir cannot both be set."
- else if !(isNull cfg.kubelet.cni.configDir) then
- cfg.kubelet.cni.configDir
- else
- (pkgs.buildEnv {
- name = "kubernetes-cni-config";
- paths = imap (i: entry:
- pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
- ) cfg.kubelet.cni.config;
- });
-
- manifests = pkgs.buildEnv {
- name = "kubernetes-manifests";
- paths = mapAttrsToList (name: manifest:
- pkgs.writeTextDir "${name}.json" (builtins.toJSON manifest)
- ) cfg.kubelet.manifests;
- };
-
- addons = pkgs.runCommand "kubernetes-addons" { } ''
- mkdir -p $out
- # since we are mounting the addons to the addon manager, they need to be copied
- ${concatMapStringsSep ";" (a: "cp -v ${a}/* $out/") (mapAttrsToList (name: addon:
- pkgs.writeTextDir "${name}.json" (builtins.toJSON addon)
- ) (cfg.addonManager.addons))}
- '';
-
- taintOptions = { name, ... }: {
- options = {
- key = mkOption {
- description = "Key of taint.";
- default = name;
- type = types.str;
- };
- value = mkOption {
- description = "Value of taint.";
- type = types.str;
- };
- effect = mkOption {
- description = "Effect of taint.";
- example = "NoSchedule";
- type = types.enum ["NoSchedule" "PreferNoSchedule" "NoExecute"];
- };
- };
- };
-
- taints = concatMapStringsSep "," (v: "${v.key}=${v.value}:${v.effect}") (mapAttrsToList (n: v: v) cfg.kubelet.taints);
-
- # needed for flannel to pass options to docker
- mkDockerOpts = pkgs.runCommand "mk-docker-opts" {
- buildInputs = [ pkgs.makeWrapper ];
- } ''
- mkdir -p $out
- cp ${pkgs.kubernetes.src}/cluster/centos/node/bin/mk-docker-opts.sh $out/mk-docker-opts.sh
-
- # bashInteractive needed for `compgen`
- makeWrapper ${pkgs.bashInteractive}/bin/bash $out/mk-docker-opts --add-flags "$out/mk-docker-opts.sh"
- '';
in {
###### interface
@@ -170,8 +88,9 @@ in {
description = ''
Kubernetes role that this machine should take.
- Master role will enable etcd, apiserver, scheduler and controller manager
- services. Node role will enable etcd, docker, kubelet and proxy services.
+ Master role will enable etcd, apiserver, scheduler, controller manager
+ addon manager, flannel and proxy services.
+ Node role will enable flannel, docker, kubelet and proxy services.
'';
default = [];
type = types.listOf (types.enum ["master" "node"]);
@@ -184,40 +103,17 @@ in {
defaultText = "pkgs.kubernetes";
};
- verbose = mkOption {
- description = "Kubernetes enable verbose mode for debugging.";
- default = false;
- type = types.bool;
- };
-
- etcd = {
- servers = mkOption {
- description = "List of etcd servers. By default etcd is started, except if this option is changed.";
- default = ["http://127.0.0.1:2379"];
- type = types.listOf types.str;
- };
-
- keyFile = mkOption {
- description = "Etcd key file.";
- default = null;
- type = types.nullOr types.path;
- };
-
- certFile = mkOption {
- description = "Etcd cert file.";
- default = null;
- type = types.nullOr types.path;
- };
-
- caFile = mkOption {
- description = "Etcd ca file.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
- };
-
kubeconfig = mkKubeConfigOptions "Default kubeconfig";
+ apiserverAddress = mkOption {
+ description = ''
+ Clusterwide accessible address for the kubernetes apiserver,
+ including protocol and optional port.
+ '';
+ example = "https://kubernetes-apiserver.example.com:6443";
+ type = types.str;
+ };
+
caFile = mkOption {
description = "Default kubernetes certificate authority";
type = types.nullOr types.path;
@@ -230,549 +126,22 @@ in {
type = types.path;
};
+ easyCerts = mkOption {
+ description = "Automatically setup x509 certificates and keys for the entire cluster.";
+ default = false;
+ type = types.bool;
+ };
+
featureGates = mkOption {
- description = "List set of feature gates";
+ description = "List set of feature gates.";
default = [];
type = types.listOf types.str;
};
- apiserver = {
- enable = mkOption {
- description = "Whether to enable Kubernetes apiserver.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- bindAddress = mkOption {
- description = ''
- The IP address on which to listen for the --secure-port port.
- The associated interface(s) must be reachable by the rest
- of the cluster, and by CLI/web clients.
- '';
- default = "0.0.0.0";
- type = types.str;
- };
-
- advertiseAddress = mkOption {
- description = ''
- Kubernetes apiserver IP address on which to advertise the apiserver
- to members of the cluster. This address must be reachable by the rest
- of the cluster.
- '';
- default = null;
- type = types.nullOr types.str;
- };
-
- storageBackend = mkOption {
- description = ''
- Kubernetes apiserver storage backend.
- '';
- default = "etcd3";
- type = types.enum ["etcd2" "etcd3"];
- };
-
- port = mkOption {
- description = "Kubernetes apiserver listening port.";
- default = 8080;
- type = types.int;
- };
-
- securePort = mkOption {
- description = "Kubernetes apiserver secure port.";
- default = 443;
- type = types.int;
- };
-
- tlsCertFile = mkOption {
- description = "Kubernetes apiserver certificate file.";
- default = null;
- type = types.nullOr types.path;
- };
-
- tlsKeyFile = mkOption {
- description = "Kubernetes apiserver private key file.";
- default = null;
- type = types.nullOr types.path;
- };
-
- clientCaFile = mkOption {
- description = "Kubernetes apiserver CA file for client auth.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- tokenAuthFile = mkOption {
- description = ''
- Kubernetes apiserver token authentication file. See
-
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- basicAuthFile = mkOption {
- description = ''
- Kubernetes apiserver basic authentication file. See
-
- '';
- default = pkgs.writeText "users" ''
- kubernetes,admin,0
- '';
- type = types.nullOr types.path;
- };
-
- authorizationMode = mkOption {
- description = ''
- Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/Webhook/RBAC/Node). See
-
- '';
- default = ["RBAC" "Node"];
- type = types.listOf (types.enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "Webhook" "RBAC" "Node"]);
- };
-
- authorizationPolicy = mkOption {
- description = ''
- Kubernetes apiserver authorization policy file. See
-
- '';
- default = [];
- type = types.listOf types.attrs;
- };
-
- webhookConfig = mkOption {
- description = ''
- Kubernetes apiserver Webhook config file. It uses the kubeconfig file format.
- See
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- allowPrivileged = mkOption {
- description = "Whether to allow privileged containers on Kubernetes.";
- default = true;
- type = types.bool;
- };
-
- serviceClusterIpRange = mkOption {
- description = ''
- A CIDR notation IP range from which to assign service cluster IPs.
- This must not overlap with any IP ranges assigned to nodes for pods.
- '';
- default = "10.0.0.0/24";
- type = types.str;
- };
-
- runtimeConfig = mkOption {
- description = ''
- Api runtime configuration. See
-
- '';
- default = "authentication.k8s.io/v1beta1=true";
- example = "api/all=false,api/v1=true";
- type = types.str;
- };
-
- enableAdmissionPlugins = mkOption {
- description = ''
- Kubernetes admission control plugins to enable. See
-
- '';
- default = ["NamespaceLifecycle" "LimitRanger" "ServiceAccount" "ResourceQuota" "DefaultStorageClass" "DefaultTolerationSeconds" "NodeRestriction"];
- example = [
- "NamespaceLifecycle" "NamespaceExists" "LimitRanger"
- "SecurityContextDeny" "ServiceAccount" "ResourceQuota"
- "PodSecurityPolicy" "NodeRestriction" "DefaultStorageClass"
- ];
- type = types.listOf types.str;
- };
-
- disableAdmissionPlugins = mkOption {
- description = ''
- Kubernetes admission control plugins to disable. See
-
- '';
- default = [];
- type = types.listOf types.str;
- };
-
- serviceAccountKeyFile = mkOption {
- description = ''
- Kubernetes apiserver PEM-encoded x509 RSA private or public key file,
- used to verify ServiceAccount tokens. By default tls private key file
- is used.
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- kubeletClientCaFile = mkOption {
- description = "Path to a cert file for connecting to kubelet.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- kubeletClientCertFile = mkOption {
- description = "Client certificate to use for connections to kubelet.";
- default = null;
- type = types.nullOr types.path;
- };
-
- kubeletClientKeyFile = mkOption {
- description = "Key to use for connections to kubelet.";
- default = null;
- type = types.nullOr types.path;
- };
-
- kubeletHttps = mkOption {
- description = "Whether to use https for connections to kubelet.";
- default = true;
- type = types.bool;
- };
-
- extraOpts = mkOption {
- description = "Kubernetes apiserver extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- scheduler = {
- enable = mkOption {
- description = "Whether to enable Kubernetes scheduler.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- address = mkOption {
- description = "Kubernetes scheduler listening address.";
- default = "127.0.0.1";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes scheduler listening port.";
- default = 10251;
- type = types.int;
- };
-
- leaderElect = mkOption {
- description = "Whether to start leader election before executing main loop.";
- type = types.bool;
- default = true;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubernetes scheduler";
-
- extraOpts = mkOption {
- description = "Kubernetes scheduler extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- controllerManager = {
- enable = mkOption {
- description = "Whether to enable Kubernetes controller manager.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- address = mkOption {
- description = "Kubernetes controller manager listening address.";
- default = "127.0.0.1";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes controller manager listening port.";
- default = 10252;
- type = types.int;
- };
-
- leaderElect = mkOption {
- description = "Whether to start leader election before executing main loop.";
- type = types.bool;
- default = true;
- };
-
- serviceAccountKeyFile = mkOption {
- description = ''
- Kubernetes controller manager PEM-encoded private RSA key file used to
- sign service account tokens
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- rootCaFile = mkOption {
- description = ''
- Kubernetes controller manager certificate authority file included in
- service account's token secret.
- '';
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubernetes controller manager";
-
- extraOpts = mkOption {
- description = "Kubernetes controller manager extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- kubelet = {
- enable = mkOption {
- description = "Whether to enable Kubernetes kubelet.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- seedDockerImages = mkOption {
- description = "List of docker images to preload on system";
- default = [];
- type = types.listOf types.package;
- };
-
- registerNode = mkOption {
- description = "Whether to auto register kubelet with API server.";
- default = true;
- type = types.bool;
- };
-
- address = mkOption {
- description = "Kubernetes kubelet info server listening address.";
- default = "0.0.0.0";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes kubelet info server listening port.";
- default = 10250;
- type = types.int;
- };
-
- tlsCertFile = mkOption {
- description = "File containing x509 Certificate for HTTPS.";
- default = null;
- type = types.nullOr types.path;
- };
-
- tlsKeyFile = mkOption {
- description = "File containing x509 private key matching tlsCertFile.";
- default = null;
- type = types.nullOr types.path;
- };
-
- clientCaFile = mkOption {
- description = "Kubernetes apiserver CA file for client authentication.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- healthz = {
- bind = mkOption {
- description = "Kubernetes kubelet healthz listening address.";
- default = "127.0.0.1";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes kubelet healthz port.";
- default = 10248;
- type = types.int;
- };
- };
-
- hostname = mkOption {
- description = "Kubernetes kubelet hostname override.";
- default = config.networking.hostName;
- type = types.str;
- };
-
- allowPrivileged = mkOption {
- description = "Whether to allow Kubernetes containers to request privileged mode.";
- default = true;
- type = types.bool;
- };
-
- clusterDns = mkOption {
- description = "Use alternative DNS.";
- default = "10.1.0.1";
- type = types.str;
- };
-
- clusterDomain = mkOption {
- description = "Use alternative domain.";
- default = config.services.kubernetes.addons.dns.clusterDomain;
- type = types.str;
- };
-
- networkPlugin = mkOption {
- description = "Network plugin to use by Kubernetes.";
- type = types.nullOr (types.enum ["cni" "kubenet"]);
- default = "kubenet";
- };
-
- cni = {
- packages = mkOption {
- description = "List of network plugin packages to install.";
- type = types.listOf types.package;
- default = [];
- };
-
- config = mkOption {
- description = "Kubernetes CNI configuration.";
- type = types.listOf types.attrs;
- default = [];
- example = literalExample ''
- [{
- "cniVersion": "0.2.0",
- "name": "mynet",
- "type": "bridge",
- "bridge": "cni0",
- "isGateway": true,
- "ipMasq": true,
- "ipam": {
- "type": "host-local",
- "subnet": "10.22.0.0/16",
- "routes": [
- { "dst": "0.0.0.0/0" }
- ]
- }
- } {
- "cniVersion": "0.2.0",
- "type": "loopback"
- }]
- '';
- };
-
- configDir = mkOption {
- description = "Path to Kubernetes CNI configuration directory.";
- type = types.nullOr types.path;
- default = null;
- };
- };
-
- manifests = mkOption {
- description = "List of manifests to bootstrap with kubelet (only pods can be created as manifest entry)";
- type = types.attrsOf types.attrs;
- default = {};
- };
-
- applyManifests = mkOption {
- description = "Whether to apply manifests (this is true for master node).";
- default = false;
- type = types.bool;
- };
-
- unschedulable = mkOption {
- description = "Whether to set node taint to unschedulable=true as it is the case of node that has only master role.";
- default = false;
- type = types.bool;
- };
-
- taints = mkOption {
- description = "Node taints (https://kubernetes.io/docs/concepts/configuration/assign-pod-node/).";
- default = {};
- type = types.attrsOf (types.submodule [ taintOptions ]);
- };
-
- nodeIp = mkOption {
- description = "IP address of the node. If set, kubelet will use this IP address for the node.";
- default = null;
- type = types.nullOr types.str;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubelet";
-
- extraOpts = mkOption {
- description = "Kubernetes kubelet extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- proxy = {
- enable = mkOption {
- description = "Whether to enable Kubernetes proxy.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- address = mkOption {
- description = "Kubernetes proxy listening address.";
- default = "0.0.0.0";
- type = types.str;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubernetes proxy";
-
- extraOpts = mkOption {
- description = "Kubernetes proxy extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- addonManager = {
- enable = mkOption {
- description = "Whether to enable Kubernetes addon manager.";
- default = false;
- type = types.bool;
- };
-
- addons = mkOption {
- description = "Kubernetes addons (any kind of Kubernetes resource can be an addon).";
- default = { };
- type = types.attrsOf (types.either types.attrs (types.listOf types.attrs));
- example = literalExample ''
- {
- "my-service" = {
- "apiVersion" = "v1";
- "kind" = "Service";
- "metadata" = {
- "name" = "my-service";
- "namespace" = "default";
- };
- "spec" = { ... };
- };
- }
- // import { cfg = config.services.kubernetes; };
- '';
- };
+ masterAddress = mkOption {
+ description = "Clusterwide available network address or hostname for the kubernetes master server.";
+ example = "master.example.com";
+ type = types.str;
};
path = mkOption {
@@ -787,304 +156,75 @@ in {
type = types.nullOr types.str;
};
- flannel.enable = mkOption {
- description = "Whether to enable flannel networking";
- default = false;
- type = types.bool;
+ lib = mkOption {
+ description = "Common functions for the kubernetes modules.";
+ default = {
+ inherit mkCert;
+ inherit mkKubeConfig;
+ inherit mkKubeConfigOptions;
+ };
+ type = types.attrs;
};
+ secretsPath = mkOption {
+ description = "Default location for kubernetes secrets. Not a store location.";
+ type = types.path;
+ default = cfg.dataDir + "/secrets";
+ };
};
###### implementation
config = mkMerge [
- (mkIf cfg.kubelet.enable {
- services.kubernetes.kubelet.seedDockerImages = [infraContainer];
- systemd.services.kubelet-bootstrap = {
- description = "Boostrap Kubelet";
- wantedBy = ["kubernetes.target"];
- after = ["docker.service" "network.target"];
- path = with pkgs; [ docker ];
- script = ''
- ${concatMapStrings (img: ''
- echo "Seeding docker image: ${img}"
- docker load <${img}
- '') cfg.kubelet.seedDockerImages}
-
- rm /opt/cni/bin/* || true
- ${concatMapStrings (package: ''
- echo "Linking cni package: ${package}"
- ln -fs ${package}/bin/* /opt/cni/bin
- '') cfg.kubelet.cni.packages}
- '';
- serviceConfig = {
- Slice = "kubernetes.slice";
- Type = "oneshot";
- };
- };
-
- systemd.services.kubelet = {
- description = "Kubernetes Kubelet Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "network.target" "docker.service" "kube-apiserver.service" "kubelet-bootstrap.service" ];
- path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables socat ] ++ cfg.path;
- serviceConfig = {
- Slice = "kubernetes.slice";
- CPUAccounting = true;
- MemoryAccounting = true;
- ExecStart = ''${cfg.package}/bin/kubelet \
- ${optionalString (taints != "")
- "--register-with-taints=${taints}"} \
- --kubeconfig=${mkKubeConfig "kubelet" cfg.kubelet.kubeconfig} \
- --config=${kubeletConfig} \
- --address=${cfg.kubelet.address} \
- --port=${toString cfg.kubelet.port} \
- --register-node=${boolToString cfg.kubelet.registerNode} \
- ${optionalString (cfg.kubelet.tlsCertFile != null)
- "--tls-cert-file=${cfg.kubelet.tlsCertFile}"} \
- ${optionalString (cfg.kubelet.tlsKeyFile != null)
- "--tls-private-key-file=${cfg.kubelet.tlsKeyFile}"} \
- ${optionalString (cfg.kubelet.clientCaFile != null)
- "--client-ca-file=${cfg.kubelet.clientCaFile}"} \
- --authentication-token-webhook \
- --authentication-token-webhook-cache-ttl="10s" \
- --authorization-mode=Webhook \
- --healthz-bind-address=${cfg.kubelet.healthz.bind} \
- --healthz-port=${toString cfg.kubelet.healthz.port} \
- --hostname-override=${cfg.kubelet.hostname} \
- --allow-privileged=${boolToString cfg.kubelet.allowPrivileged} \
- --root-dir=${cfg.dataDir} \
- ${optionalString (cfg.kubelet.clusterDns != "")
- "--cluster-dns=${cfg.kubelet.clusterDns}"} \
- ${optionalString (cfg.kubelet.clusterDomain != "")
- "--cluster-domain=${cfg.kubelet.clusterDomain}"} \
- --pod-infra-container-image=pause \
- ${optionalString (cfg.kubelet.networkPlugin != null)
- "--network-plugin=${cfg.kubelet.networkPlugin}"} \
- --cni-conf-dir=${cniConfig} \
- --hairpin-mode=hairpin-veth \
- ${optionalString (cfg.kubelet.nodeIp != null)
- "--node-ip=${cfg.kubelet.nodeIp}"} \
- ${optionalString (cfg.kubelet.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.kubelet.featureGates}"} \
- ${optionalString cfg.verbose "--v=6 --log_flush_frequency=1s"} \
- ${cfg.kubelet.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- };
- };
-
- # Allways include cni plugins
- services.kubernetes.kubelet.cni.packages = [pkgs.cni-plugins];
-
- boot.kernelModules = ["br_netfilter"];
-
- services.kubernetes.kubelet.kubeconfig = kubeConfigDefaults;
+ (mkIf cfg.easyCerts {
+ services.kubernetes.pki.enable = mkDefault true;
+ services.kubernetes.caFile = caCert;
})
- (mkIf (cfg.kubelet.applyManifests && cfg.kubelet.enable) {
- environment.etc = mapAttrs' (name: manifest:
- nameValuePair "kubernetes/manifests/${name}.json" {
- text = builtins.toJSON manifest;
- mode = "0755";
- }
- ) cfg.kubelet.manifests;
- })
-
- (mkIf (cfg.kubelet.unschedulable && cfg.kubelet.enable) {
- services.kubernetes.kubelet.taints.unschedulable = {
- value = "true";
- effect = "NoSchedule";
- };
- })
-
- (mkIf cfg.apiserver.enable {
- systemd.services.kube-apiserver = {
- description = "Kubernetes APIServer Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "network.target" "docker.service" ];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-apiserver \
- --etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
- ${optionalString (cfg.etcd.caFile != null)
- "--etcd-cafile=${cfg.etcd.caFile}"} \
- ${optionalString (cfg.etcd.certFile != null)
- "--etcd-certfile=${cfg.etcd.certFile}"} \
- ${optionalString (cfg.etcd.keyFile != null)
- "--etcd-keyfile=${cfg.etcd.keyFile}"} \
- --insecure-port=${toString cfg.apiserver.port} \
- --bind-address=${cfg.apiserver.bindAddress} \
- ${optionalString (cfg.apiserver.advertiseAddress != null)
- "--advertise-address=${cfg.apiserver.advertiseAddress}"} \
- --allow-privileged=${boolToString cfg.apiserver.allowPrivileged}\
- ${optionalString (cfg.apiserver.tlsCertFile != null)
- "--tls-cert-file=${cfg.apiserver.tlsCertFile}"} \
- ${optionalString (cfg.apiserver.tlsKeyFile != null)
- "--tls-private-key-file=${cfg.apiserver.tlsKeyFile}"} \
- ${optionalString (cfg.apiserver.tokenAuthFile != null)
- "--token-auth-file=${cfg.apiserver.tokenAuthFile}"} \
- ${optionalString (cfg.apiserver.basicAuthFile != null)
- "--basic-auth-file=${cfg.apiserver.basicAuthFile}"} \
- --kubelet-https=${if cfg.apiserver.kubeletHttps then "true" else "false"} \
- ${optionalString (cfg.apiserver.kubeletClientCaFile != null)
- "--kubelet-certificate-authority=${cfg.apiserver.kubeletClientCaFile}"} \
- ${optionalString (cfg.apiserver.kubeletClientCertFile != null)
- "--kubelet-client-certificate=${cfg.apiserver.kubeletClientCertFile}"} \
- ${optionalString (cfg.apiserver.kubeletClientKeyFile != null)
- "--kubelet-client-key=${cfg.apiserver.kubeletClientKeyFile}"} \
- ${optionalString (cfg.apiserver.clientCaFile != null)
- "--client-ca-file=${cfg.apiserver.clientCaFile}"} \
- --authorization-mode=${concatStringsSep "," cfg.apiserver.authorizationMode} \
- ${optionalString (elem "ABAC" cfg.apiserver.authorizationMode)
- "--authorization-policy-file=${
- pkgs.writeText "kube-auth-policy.jsonl"
- (concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.apiserver.authorizationPolicy)
- }"
- } \
- ${optionalString (elem "Webhook" cfg.apiserver.authorizationMode)
- "--authorization-webhook-config-file=${cfg.apiserver.webhookConfig}"
- } \
- --secure-port=${toString cfg.apiserver.securePort} \
- --service-cluster-ip-range=${cfg.apiserver.serviceClusterIpRange} \
- ${optionalString (cfg.apiserver.runtimeConfig != "")
- "--runtime-config=${cfg.apiserver.runtimeConfig}"} \
- --enable-admission-plugins=${concatStringsSep "," cfg.apiserver.enableAdmissionPlugins} \
- --disable-admission-plugins=${concatStringsSep "," cfg.apiserver.disableAdmissionPlugins} \
- ${optionalString (cfg.apiserver.serviceAccountKeyFile!=null)
- "--service-account-key-file=${cfg.apiserver.serviceAccountKeyFile}"} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- --storage-backend=${cfg.apiserver.storageBackend} \
- ${optionalString (cfg.kubelet.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.kubelet.featureGates}"} \
- ${cfg.apiserver.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
- AmbientCapabilities = "cap_net_bind_service";
- Restart = "on-failure";
- RestartSec = 5;
- };
- };
- })
-
- (mkIf cfg.scheduler.enable {
- systemd.services.kube-scheduler = {
- description = "Kubernetes Scheduler Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-scheduler \
- --address=${cfg.scheduler.address} \
- --port=${toString cfg.scheduler.port} \
- --leader-elect=${boolToString cfg.scheduler.leaderElect} \
- --kubeconfig=${mkKubeConfig "kube-scheduler" cfg.scheduler.kubeconfig} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- ${optionalString (cfg.scheduler.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.scheduler.featureGates}"} \
- ${cfg.scheduler.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
- };
- };
-
- services.kubernetes.scheduler.kubeconfig = kubeConfigDefaults;
- })
-
- (mkIf cfg.controllerManager.enable {
- systemd.services.kube-controller-manager = {
- description = "Kubernetes Controller Manager Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- serviceConfig = {
- RestartSec = "30s";
- Restart = "on-failure";
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-controller-manager \
- --address=${cfg.controllerManager.address} \
- --port=${toString cfg.controllerManager.port} \
- --kubeconfig=${mkKubeConfig "kube-controller-manager" cfg.controllerManager.kubeconfig} \
- --leader-elect=${boolToString cfg.controllerManager.leaderElect} \
- ${if (cfg.controllerManager.serviceAccountKeyFile!=null)
- then "--service-account-private-key-file=${cfg.controllerManager.serviceAccountKeyFile}"
- else "--service-account-private-key-file=/var/run/kubernetes/apiserver.key"} \
- ${if (cfg.controllerManager.rootCaFile!=null)
- then "--root-ca-file=${cfg.controllerManager.rootCaFile}"
- else "--root-ca-file=/var/run/kubernetes/apiserver.crt"} \
- ${if (cfg.clusterCidr!=null)
- then "--cluster-cidr=${cfg.clusterCidr} --allocate-node-cidrs=true"
- else "--allocate-node-cidrs=false"} \
- ${optionalString (cfg.controllerManager.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.controllerManager.featureGates}"} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- ${cfg.controllerManager.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
- };
- path = cfg.path;
- };
-
- services.kubernetes.controllerManager.kubeconfig = kubeConfigDefaults;
- })
-
- (mkIf cfg.proxy.enable {
- systemd.services.kube-proxy = {
- description = "Kubernetes Proxy Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- path = [pkgs.iptables pkgs.conntrack_tools];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-proxy \
- --kubeconfig=${mkKubeConfig "kube-proxy" cfg.proxy.kubeconfig} \
- --bind-address=${cfg.proxy.address} \
- ${optionalString (cfg.proxy.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.proxy.featureGates}"} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- ${optionalString (cfg.clusterCidr!=null)
- "--cluster-cidr=${cfg.clusterCidr}"} \
- ${cfg.proxy.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- };
- };
-
- # kube-proxy needs iptables
- networking.firewall.enable = mkDefault true;
-
- services.kubernetes.proxy.kubeconfig = kubeConfigDefaults;
- })
-
- (mkIf (any (el: el == "master") cfg.roles) {
- virtualisation.docker.enable = mkDefault true;
- services.kubernetes.kubelet.enable = mkDefault true;
- services.kubernetes.kubelet.allowPrivileged = mkDefault true;
- services.kubernetes.kubelet.applyManifests = mkDefault true;
+ (mkIf (elem "master" cfg.roles) {
services.kubernetes.apiserver.enable = mkDefault true;
services.kubernetes.scheduler.enable = mkDefault true;
services.kubernetes.controllerManager.enable = mkDefault true;
- services.etcd.enable = mkDefault (cfg.etcd.servers == ["http://127.0.0.1:2379"]);
services.kubernetes.addonManager.enable = mkDefault true;
services.kubernetes.proxy.enable = mkDefault true;
+ services.etcd.enable = true; # Cannot mkDefault because of flannel default options
+ services.kubernetes.kubelet = {
+ enable = mkDefault true;
+ taints = mkIf (!(elem "node" cfg.roles)) {
+ master = {
+ key = "node-role.kubernetes.io/master";
+ value = "true";
+ effect = "NoSchedule";
+ };
+ };
+ };
})
- # if this node is only a master make it unschedulable by default
+
(mkIf (all (el: el == "master") cfg.roles) {
+ # if this node is only a master make it unschedulable by default
services.kubernetes.kubelet.unschedulable = mkDefault true;
})
- (mkIf (any (el: el == "node") cfg.roles) {
+ (mkIf (elem "node" cfg.roles) {
+ services.kubernetes.kubelet.enable = mkDefault true;
+ services.kubernetes.proxy.enable = mkDefault true;
+ })
+
+ # Using "services.kubernetes.roles" will automatically enable easyCerts and flannel
+ (mkIf (cfg.roles != []) {
+ services.kubernetes.flannel.enable = mkDefault true;
+ services.flannel.etcd.endpoints = mkDefault etcdEndpoints;
+ services.kubernetes.easyCerts = mkDefault true;
+ })
+
+ (mkIf cfg.apiserver.enable {
+ services.kubernetes.pki.etcClusterAdminKubeconfig = mkDefault "kubernetes/cluster-admin.kubeconfig";
+ services.kubernetes.apiserver.etcd.servers = mkDefault etcdEndpoints;
+ })
+
+ (mkIf cfg.kubelet.enable {
virtualisation.docker = {
enable = mkDefault true;
@@ -1094,26 +234,18 @@ in {
# iptables must be disabled for kubernetes
extraOptions = "--iptables=false --ip-masq=false";
};
-
- services.kubernetes.kubelet.enable = mkDefault true;
- services.kubernetes.proxy.enable = mkDefault true;
})
- (mkIf cfg.addonManager.enable {
- environment.etc."kubernetes/addons".source = "${addons}/";
-
- systemd.services.kube-addon-manager = {
- description = "Kubernetes addon manager";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- environment.ADDON_PATH = "/etc/kubernetes/addons/";
- path = [ pkgs.gawk ];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = "${cfg.package}/bin/kube-addons";
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
+ (mkIf (cfg.apiserver.enable || cfg.controllerManager.enable) {
+ services.kubernetes.pki.certs = {
+ serviceAccount = mkCert {
+ name = "service-account";
+ CN = "system:service-account-signer";
+ action = ''
+ systemctl reload \
+ kube-apiserver.service \
+ kube-controller-manager.service
+ '';
};
};
})
@@ -1123,7 +255,8 @@ in {
cfg.scheduler.enable ||
cfg.controllerManager.enable ||
cfg.kubelet.enable ||
- cfg.proxy.enable
+ cfg.proxy.enable ||
+ cfg.addonManager.enable
) {
systemd.targets.kubernetes = {
description = "Kubernetes";
@@ -1132,11 +265,10 @@ in {
systemd.tmpfiles.rules = [
"d /opt/cni/bin 0755 root root -"
- "d /var/run/kubernetes 0755 kubernetes kubernetes -"
+ "d /run/kubernetes 0755 kubernetes kubernetes -"
"d /var/lib/kubernetes 0755 kubernetes kubernetes -"
];
- environment.systemPackages = [ cfg.package ];
users.users = singleton {
name = "kubernetes";
uid = config.ids.uids.kubernetes;
@@ -1148,53 +280,12 @@ in {
};
users.groups.kubernetes.gid = config.ids.gids.kubernetes;
- # dns addon is enabled by default
+ # dns addon is enabled by default
services.kubernetes.addons.dns.enable = mkDefault true;
- })
- (mkIf cfg.flannel.enable {
- services.flannel = {
- enable = mkDefault true;
- network = mkDefault cfg.clusterCidr;
- etcd = mkDefault {
- endpoints = cfg.etcd.servers;
- inherit (cfg.etcd) caFile certFile keyFile;
- };
- };
-
- services.kubernetes.kubelet = {
- networkPlugin = mkDefault "cni";
- cni.config = mkDefault [{
- name = "mynet";
- type = "flannel";
- delegate = {
- isDefaultGateway = true;
- bridge = "docker0";
- };
- }];
- };
-
- systemd.services."mk-docker-opts" = {
- description = "Pre-Docker Actions";
- wantedBy = [ "flannel.service" ];
- before = [ "docker.service" ];
- after = [ "flannel.service" ];
- path = [ pkgs.gawk pkgs.gnugrep ];
- script = ''
- mkdir -p /run/flannel
- ${mkDockerOpts}/mk-docker-opts -d /run/flannel/docker
- '';
- serviceConfig.Type = "oneshot";
- };
- systemd.services.docker.serviceConfig.EnvironmentFile = "/run/flannel/docker";
-
- # read environment variables generated by mk-docker-opts
- virtualisation.docker.extraOptions = "$DOCKER_OPTS";
-
- networking.firewall.allowedUDPPorts = [
- 8285 # flannel udp
- 8472 # flannel vxlan
- ];
+ services.kubernetes.apiserverAddress = mkDefault ("https://${if cfg.apiserver.advertiseAddress != null
+ then cfg.apiserver.advertiseAddress
+ else "${cfg.masterAddress}:${toString cfg.apiserver.securePort}"}");
})
];
}
diff --git a/nixos/modules/services/cluster/kubernetes/flannel.nix b/nixos/modules/services/cluster/kubernetes/flannel.nix
new file mode 100644
index 00000000000..93ee2fd65ee
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/flannel.nix
@@ -0,0 +1,134 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.flannel;
+
+ # we want flannel to use kubernetes itself as configuration backend, not direct etcd
+ storageBackend = "kubernetes";
+
+ # needed for flannel to pass options to docker
+ mkDockerOpts = pkgs.runCommand "mk-docker-opts" {
+ buildInputs = [ pkgs.makeWrapper ];
+ } ''
+ mkdir -p $out
+ cp ${pkgs.kubernetes.src}/cluster/centos/node/bin/mk-docker-opts.sh $out/mk-docker-opts.sh
+
+ # bashInteractive needed for `compgen`
+ makeWrapper ${pkgs.bashInteractive}/bin/bash $out/mk-docker-opts --add-flags "$out/mk-docker-opts.sh"
+ '';
+in
+{
+ ###### interface
+ options.services.kubernetes.flannel = {
+ enable = mkEnableOption "enable flannel networking";
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable {
+ services.flannel = {
+
+ enable = mkDefault true;
+ network = mkDefault top.clusterCidr;
+ inherit storageBackend;
+ nodeName = config.services.kubernetes.kubelet.hostname;
+ };
+
+ services.kubernetes.kubelet = {
+ networkPlugin = mkDefault "cni";
+ cni.config = mkDefault [{
+ name = "mynet";
+ type = "flannel";
+ delegate = {
+ isDefaultGateway = true;
+ bridge = "docker0";
+ };
+ }];
+ };
+
+ systemd.services."mk-docker-opts" = {
+ description = "Pre-Docker Actions";
+ path = with pkgs; [ gawk gnugrep ];
+ script = ''
+ ${mkDockerOpts}/mk-docker-opts -d /run/flannel/docker
+ systemctl restart docker
+ '';
+ serviceConfig.Type = "oneshot";
+ };
+
+ systemd.paths."flannel-subnet-env" = {
+ wantedBy = [ "flannel.service" ];
+ pathConfig = {
+ PathModified = "/run/flannel/subnet.env";
+ Unit = "mk-docker-opts.service";
+ };
+ };
+
+ systemd.services.docker = {
+ environment.DOCKER_OPTS = "-b none";
+ serviceConfig.EnvironmentFile = "-/run/flannel/docker";
+ };
+
+ # read environment variables generated by mk-docker-opts
+ virtualisation.docker.extraOptions = "$DOCKER_OPTS";
+
+ networking = {
+ firewall.allowedUDPPorts = [
+ 8285 # flannel udp
+ 8472 # flannel vxlan
+ ];
+ dhcpcd.denyInterfaces = [ "docker*" "flannel*" ];
+ };
+
+ services.kubernetes.pki.certs = {
+ flannelClient = top.lib.mkCert {
+ name = "flannel-client";
+ CN = "flannel-client";
+ action = "systemctl restart flannel.service";
+ };
+ };
+
+ # give flannel som kubernetes rbac permissions if applicable
+ services.kubernetes.addonManager.bootstrapAddons = mkIf ((storageBackend == "kubernetes") && (elem "RBAC" top.apiserver.authorizationMode)) {
+
+ flannel-cr = {
+ apiVersion = "rbac.authorization.k8s.io/v1beta1";
+ kind = "ClusterRole";
+ metadata = { name = "flannel"; };
+ rules = [{
+ apiGroups = [ "" ];
+ resources = [ "pods" ];
+ verbs = [ "get" ];
+ }
+ {
+ apiGroups = [ "" ];
+ resources = [ "nodes" ];
+ verbs = [ "list" "watch" ];
+ }
+ {
+ apiGroups = [ "" ];
+ resources = [ "nodes/status" ];
+ verbs = [ "patch" ];
+ }];
+ };
+
+ flannel-crb = {
+ apiVersion = "rbac.authorization.k8s.io/v1beta1";
+ kind = "ClusterRoleBinding";
+ metadata = { name = "flannel"; };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "ClusterRole";
+ name = "flannel";
+ };
+ subjects = [{
+ kind = "User";
+ name = "flannel-client";
+ }];
+ };
+
+ };
+ };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/kubelet.nix b/nixos/modules/services/cluster/kubernetes/kubelet.nix
new file mode 100644
index 00000000000..c94bb28bf7f
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/kubelet.nix
@@ -0,0 +1,358 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.kubelet;
+
+ cniConfig =
+ if cfg.cni.config != [] && !(isNull cfg.cni.configDir) then
+ throw "Verbatim CNI-config and CNI configDir cannot both be set."
+ else if !(isNull cfg.cni.configDir) then
+ cfg.cni.configDir
+ else
+ (pkgs.buildEnv {
+ name = "kubernetes-cni-config";
+ paths = imap (i: entry:
+ pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
+ ) cfg.cni.config;
+ });
+
+ infraContainer = pkgs.dockerTools.buildImage {
+ name = "pause";
+ tag = "latest";
+ contents = top.package.pause;
+ config.Cmd = "/bin/pause";
+ };
+
+ kubeconfig = top.lib.mkKubeConfig "kubelet" cfg.kubeconfig;
+
+ manifests = pkgs.buildEnv {
+ name = "kubernetes-manifests";
+ paths = mapAttrsToList (name: manifest:
+ pkgs.writeTextDir "${name}.json" (builtins.toJSON manifest)
+ ) cfg.manifests;
+ };
+
+ manifestPath = "kubernetes/manifests";
+
+ taintOptions = with lib.types; { name, ... }: {
+ options = {
+ key = mkOption {
+ description = "Key of taint.";
+ default = name;
+ type = str;
+ };
+ value = mkOption {
+ description = "Value of taint.";
+ type = str;
+ };
+ effect = mkOption {
+ description = "Effect of taint.";
+ example = "NoSchedule";
+ type = enum ["NoSchedule" "PreferNoSchedule" "NoExecute"];
+ };
+ };
+ };
+
+ taints = concatMapStringsSep "," (v: "${v.key}=${v.value}:${v.effect}") (mapAttrsToList (n: v: v) cfg.taints);
+in
+{
+ ###### interface
+ options.services.kubernetes.kubelet = with lib.types; {
+
+ address = mkOption {
+ description = "Kubernetes kubelet info server listening address.";
+ default = "0.0.0.0";
+ type = str;
+ };
+
+ allowPrivileged = mkOption {
+ description = "Whether to allow Kubernetes containers to request privileged mode.";
+ default = false;
+ type = bool;
+ };
+
+ clusterDns = mkOption {
+ description = "Use alternative DNS.";
+ default = "10.1.0.1";
+ type = str;
+ };
+
+ clusterDomain = mkOption {
+ description = "Use alternative domain.";
+ default = config.services.kubernetes.addons.dns.clusterDomain;
+ type = str;
+ };
+
+ clientCaFile = mkOption {
+ description = "Kubernetes apiserver CA file for client authentication.";
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ cni = {
+ packages = mkOption {
+ description = "List of network plugin packages to install.";
+ type = listOf package;
+ default = [];
+ };
+
+ config = mkOption {
+ description = "Kubernetes CNI configuration.";
+ type = listOf attrs;
+ default = [];
+ example = literalExample ''
+ [{
+ "cniVersion": "0.2.0",
+ "name": "mynet",
+ "type": "bridge",
+ "bridge": "cni0",
+ "isGateway": true,
+ "ipMasq": true,
+ "ipam": {
+ "type": "host-local",
+ "subnet": "10.22.0.0/16",
+ "routes": [
+ { "dst": "0.0.0.0/0" }
+ ]
+ }
+ } {
+ "cniVersion": "0.2.0",
+ "type": "loopback"
+ }]
+ '';
+ };
+
+ configDir = mkOption {
+ description = "Path to Kubernetes CNI configuration directory.";
+ type = nullOr path;
+ default = null;
+ };
+ };
+
+ enable = mkEnableOption "Kubernetes kubelet.";
+
+ extraOpts = mkOption {
+ description = "Kubernetes kubelet extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ healthz = {
+ bind = mkOption {
+ description = "Kubernetes kubelet healthz listening address.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ port = mkOption {
+ description = "Kubernetes kubelet healthz port.";
+ default = 10248;
+ type = int;
+ };
+ };
+
+ hostname = mkOption {
+ description = "Kubernetes kubelet hostname override.";
+ default = config.networking.hostName;
+ type = str;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubelet";
+
+ manifests = mkOption {
+ description = "List of manifests to bootstrap with kubelet (only pods can be created as manifest entry)";
+ type = attrsOf attrs;
+ default = {};
+ };
+
+ networkPlugin = mkOption {
+ description = "Network plugin to use by Kubernetes.";
+ type = nullOr (enum ["cni" "kubenet"]);
+ default = "kubenet";
+ };
+
+ nodeIp = mkOption {
+ description = "IP address of the node. If set, kubelet will use this IP address for the node.";
+ default = null;
+ type = nullOr str;
+ };
+
+ registerNode = mkOption {
+ description = "Whether to auto register kubelet with API server.";
+ default = true;
+ type = bool;
+ };
+
+ port = mkOption {
+ description = "Kubernetes kubelet info server listening port.";
+ default = 10250;
+ type = int;
+ };
+
+ seedDockerImages = mkOption {
+ description = "List of docker images to preload on system";
+ default = [];
+ type = listOf package;
+ };
+
+ taints = mkOption {
+ description = "Node taints (https://kubernetes.io/docs/concepts/configuration/assign-pod-node/).";
+ default = {};
+ type = attrsOf (submodule [ taintOptions ]);
+ };
+
+ tlsCertFile = mkOption {
+ description = "File containing x509 Certificate for HTTPS.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsKeyFile = mkOption {
+ description = "File containing x509 private key matching tlsCertFile.";
+ default = null;
+ type = nullOr path;
+ };
+
+ unschedulable = mkOption {
+ description = "Whether to set node taint to unschedulable=true as it is the case of node that has only master role.";
+ default = false;
+ type = bool;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = mkMerge [
+ (mkIf cfg.enable {
+ services.kubernetes.kubelet.seedDockerImages = [infraContainer];
+
+ systemd.services.kubelet = {
+ description = "Kubernetes Kubelet Service";
+ wantedBy = [ "kubernetes.target" ];
+ after = [ "network.target" "docker.service" "kube-apiserver.service" ];
+ path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables socat ] ++ top.path;
+ preStart = ''
+ ${concatMapStrings (img: ''
+ echo "Seeding docker image: ${img}"
+ docker load <${img}
+ '') cfg.seedDockerImages}
+
+ rm /opt/cni/bin/* || true
+ ${concatMapStrings (package: ''
+ echo "Linking cni package: ${package}"
+ ln -fs ${package}/bin/* /opt/cni/bin
+ '') cfg.cni.packages}
+ '';
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ CPUAccounting = true;
+ MemoryAccounting = true;
+ Restart = "on-failure";
+ RestartSec = "1000ms";
+ ExecStart = ''${top.package}/bin/kubelet \
+ --address=${cfg.address} \
+ --allow-privileged=${boolToString cfg.allowPrivileged} \
+ --authentication-token-webhook \
+ --authentication-token-webhook-cache-ttl="10s" \
+ --authorization-mode=Webhook \
+ ${optionalString (cfg.clientCaFile != null)
+ "--client-ca-file=${cfg.clientCaFile}"} \
+ ${optionalString (cfg.clusterDns != "")
+ "--cluster-dns=${cfg.clusterDns}"} \
+ ${optionalString (cfg.clusterDomain != "")
+ "--cluster-domain=${cfg.clusterDomain}"} \
+ --cni-conf-dir=${cniConfig} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --hairpin-mode=hairpin-veth \
+ --healthz-bind-address=${cfg.healthz.bind} \
+ --healthz-port=${toString cfg.healthz.port} \
+ --hostname-override=${cfg.hostname} \
+ --kubeconfig=${kubeconfig} \
+ ${optionalString (cfg.networkPlugin != null)
+ "--network-plugin=${cfg.networkPlugin}"} \
+ ${optionalString (cfg.nodeIp != null)
+ "--node-ip=${cfg.nodeIp}"} \
+ --pod-infra-container-image=pause \
+ ${optionalString (cfg.manifests != {})
+ "--pod-manifest-path=/etc/${manifestPath}"} \
+ --port=${toString cfg.port} \
+ --register-node=${boolToString cfg.registerNode} \
+ ${optionalString (taints != "")
+ "--register-with-taints=${taints}"} \
+ --root-dir=${top.dataDir} \
+ ${optionalString (cfg.tlsCertFile != null)
+ "--tls-cert-file=${cfg.tlsCertFile}"} \
+ ${optionalString (cfg.tlsKeyFile != null)
+ "--tls-private-key-file=${cfg.tlsKeyFile}"} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ };
+ };
+
+ # Allways include cni plugins
+ services.kubernetes.kubelet.cni.packages = [pkgs.cni-plugins];
+
+ boot.kernelModules = ["br_netfilter"];
+
+ services.kubernetes.kubelet.hostname = with config.networking;
+ mkDefault (hostName + optionalString (!isNull domain) ".${domain}");
+
+ services.kubernetes.pki.certs = with top.lib; {
+ kubelet = mkCert {
+ name = "kubelet";
+ CN = top.kubelet.hostname;
+ action = "systemctl restart kubelet.service";
+
+ };
+ kubeletClient = mkCert {
+ name = "kubelet-client";
+ CN = "system:node:${top.kubelet.hostname}";
+ fields = {
+ O = "system:nodes";
+ };
+ action = "systemctl restart kubelet.service";
+ };
+ };
+
+ services.kubernetes.kubelet.kubeconfig.server = mkDefault top.apiserverAddress;
+ })
+
+ (mkIf (cfg.enable && cfg.manifests != {}) {
+ environment.etc = mapAttrs' (name: manifest:
+ nameValuePair "${manifestPath}/${name}.json" {
+ text = builtins.toJSON manifest;
+ mode = "0755";
+ }
+ ) cfg.manifests;
+ })
+
+ (mkIf (cfg.unschedulable && cfg.enable) {
+ services.kubernetes.kubelet.taints.unschedulable = {
+ value = "true";
+ effect = "NoSchedule";
+ };
+ })
+
+ ];
+}
diff --git a/nixos/modules/services/cluster/kubernetes/pki.nix b/nixos/modules/services/cluster/kubernetes/pki.nix
new file mode 100644
index 00000000000..38deca23a99
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/pki.nix
@@ -0,0 +1,388 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.pki;
+
+ csrCA = pkgs.writeText "kube-pki-cacert-csr.json" (builtins.toJSON {
+ key = {
+ algo = "rsa";
+ size = 2048;
+ };
+ names = singleton cfg.caSpec;
+ });
+
+ csrCfssl = pkgs.writeText "kube-pki-cfssl-csr.json" (builtins.toJSON {
+ key = {
+ algo = "rsa";
+ size = 2048;
+ };
+ CN = top.masterAddress;
+ });
+
+ cfsslAPITokenBaseName = "apitoken.secret";
+ cfsslAPITokenPath = "${config.services.cfssl.dataDir}/${cfsslAPITokenBaseName}";
+ certmgrAPITokenPath = "${top.secretsPath}/${cfsslAPITokenBaseName}";
+ cfsslAPITokenLength = 32;
+
+ clusterAdminKubeconfig = with cfg.certs.clusterAdmin;
+ top.lib.mkKubeConfig "cluster-admin" {
+ server = top.apiserverAddress;
+ certFile = cert;
+ keyFile = key;
+ };
+
+ remote = with config.services; "https://${kubernetes.masterAddress}:${toString cfssl.port}";
+in
+{
+ ###### interface
+ options.services.kubernetes.pki = with lib.types; {
+
+ enable = mkEnableOption "Whether to enable easyCert issuer service.";
+
+ certs = mkOption {
+ description = "List of certificate specs to feed to cert generator.";
+ default = {};
+ type = attrs;
+ };
+
+ genCfsslCACert = mkOption {
+ description = ''
+ Whether to automatically generate cfssl CA certificate and key,
+ if they don't exist.
+ '';
+ default = true;
+ type = bool;
+ };
+
+ genCfsslAPICerts = mkOption {
+ description = ''
+ Whether to automatically generate cfssl API webserver TLS cert and key,
+ if they don't exist.
+ '';
+ default = true;
+ type = bool;
+ };
+
+ genCfsslAPIToken = mkOption {
+ description = ''
+ Whether to automatically generate cfssl API-token secret,
+ if they doesn't exist.
+ '';
+ default = true;
+ type = bool;
+ };
+
+ pkiTrustOnBootstrap = mkOption {
+ description = "Whether to always trust remote cfssl server upon initial PKI bootstrap.";
+ default = true;
+ type = bool;
+ };
+
+ caCertPathPrefix = mkOption {
+ description = ''
+ Path-prefrix for the CA-certificate to be used for cfssl signing.
+ Suffixes ".pem" and "-key.pem" will be automatically appended for
+ the public and private keys respectively.
+ '';
+ default = "${config.services.cfssl.dataDir}/ca";
+ type = str;
+ };
+
+ caSpec = mkOption {
+ description = "Certificate specification for the auto-generated CAcert.";
+ default = {
+ CN = "kubernetes-cluster-ca";
+ O = "NixOS";
+ OU = "services.kubernetes.pki.caSpec";
+ L = "auto-generated";
+ };
+ type = attrs;
+ };
+
+ etcClusterAdminKubeconfig = mkOption {
+ description = ''
+ Symlink a kubeconfig with cluster-admin privileges to environment path
+ (/etc/<path>).
+ '';
+ default = null;
+ type = nullOr str;
+ };
+
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable
+ (let
+ cfsslCertPathPrefix = "${config.services.cfssl.dataDir}/cfssl";
+ cfsslCert = "${cfsslCertPathPrefix}.pem";
+ cfsslKey = "${cfsslCertPathPrefix}-key.pem";
+ in
+ {
+
+ services.cfssl = mkIf (top.apiserver.enable) {
+ enable = true;
+ address = "0.0.0.0";
+ tlsCert = cfsslCert;
+ tlsKey = cfsslKey;
+ configFile = toString (pkgs.writeText "cfssl-config.json" (builtins.toJSON {
+ signing = {
+ profiles = {
+ default = {
+ usages = ["digital signature"];
+ auth_key = "default";
+ expiry = "720h";
+ };
+ };
+ };
+ auth_keys = {
+ default = {
+ type = "standard";
+ key = "file:${cfsslAPITokenPath}";
+ };
+ };
+ }));
+ };
+
+ systemd.services.cfssl.preStart = with pkgs; with config.services.cfssl; mkIf (top.apiserver.enable)
+ (concatStringsSep "\n" [
+ "set -e"
+ (optionalString cfg.genCfsslCACert ''
+ if [ ! -f "${cfg.caCertPathPrefix}.pem" ]; then
+ ${cfssl}/bin/cfssl genkey -initca ${csrCA} | \
+ ${cfssl}/bin/cfssljson -bare ${cfg.caCertPathPrefix}
+ fi
+ '')
+ (optionalString cfg.genCfsslAPICerts ''
+ if [ ! -f "${dataDir}/cfssl.pem" ]; then
+ ${cfssl}/bin/cfssl gencert -ca "${cfg.caCertPathPrefix}.pem" -ca-key "${cfg.caCertPathPrefix}-key.pem" ${csrCfssl} | \
+ ${cfssl}/bin/cfssljson -bare ${cfsslCertPathPrefix}
+ fi
+ '')
+ (optionalString cfg.genCfsslAPIToken ''
+ if [ ! -f "${cfsslAPITokenPath}" ]; then
+ head -c ${toString (cfsslAPITokenLength / 2)} /dev/urandom | od -An -t x | tr -d ' ' >"${cfsslAPITokenPath}"
+ fi
+ chown cfssl "${cfsslAPITokenPath}" && chmod 400 "${cfsslAPITokenPath}"
+ '')]);
+
+ systemd.services.kube-certmgr-bootstrap = {
+ description = "Kubernetes certmgr bootstrapper";
+ wantedBy = [ "certmgr.service" ];
+ after = [ "cfssl.target" ];
+ script = concatStringsSep "\n" [''
+ set -e
+
+ # If there's a cfssl (cert issuer) running locally, then don't rely on user to
+ # manually paste it in place. Just symlink.
+ # otherwise, create the target file, ready for users to insert the token
+
+ if [ -f "${cfsslAPITokenPath}" ]; then
+ ln -fs "${cfsslAPITokenPath}" "${certmgrAPITokenPath}"
+ else
+ touch "${certmgrAPITokenPath}" && chmod 600 "${certmgrAPITokenPath}"
+ fi
+ ''
+ (optionalString (cfg.pkiTrustOnBootstrap) ''
+ if [ ! -f "${top.caFile}" ] || [ $(cat "${top.caFile}" | wc -c) -lt 1 ]; then
+ ${pkgs.curl}/bin/curl --fail-early -f -kd '{}' ${remote}/api/v1/cfssl/info | \
+ ${pkgs.cfssl}/bin/cfssljson -stdout >${top.caFile}
+ fi
+ '')
+ ];
+ serviceConfig = {
+ RestartSec = "10s";
+ Restart = "on-failure";
+ };
+ };
+
+ services.certmgr = {
+ enable = true;
+ package = pkgs.certmgr-selfsigned;
+ svcManager = "command";
+ specs =
+ let
+ mkSpec = _: cert: {
+ inherit (cert) action;
+ authority = {
+ inherit remote;
+ file.path = cert.caCert;
+ root_ca = cert.caCert;
+ profile = "default";
+ auth_key_file = certmgrAPITokenPath;
+ };
+ certificate = {
+ path = cert.cert;
+ };
+ private_key = cert.privateKeyOptions;
+ request = {
+ inherit (cert) CN hosts;
+ key = {
+ algo = "rsa";
+ size = 2048;
+ };
+ names = [ cert.fields ];
+ };
+ };
+ in
+ mapAttrs mkSpec cfg.certs;
+ };
+
+ #TODO: Get rid of kube-addon-manager in the future for the following reasons
+ # - it is basically just a shell script wrapped around kubectl
+ # - it assumes that it is clusterAdmin or can gain clusterAdmin rights through serviceAccount
+ # - it is designed to be used with k8s system components only
+ # - it would be better with a more Nix-oriented way of managing addons
+ systemd.services.kube-addon-manager = mkIf top.addonManager.enable (mkMerge [{
+ environment.KUBECONFIG = with cfg.certs.addonManager;
+ top.lib.mkKubeConfig "addon-manager" {
+ server = top.apiserverAddress;
+ certFile = cert;
+ keyFile = key;
+ };
+ }
+
+ (optionalAttrs (top.addonManager.bootstrapAddons != {}) {
+ serviceConfig.PermissionsStartOnly = true;
+ preStart = with pkgs;
+ let
+ files = mapAttrsToList (n: v: writeText "${n}.json" (builtins.toJSON v))
+ top.addonManager.bootstrapAddons;
+ in
+ ''
+ export KUBECONFIG=${clusterAdminKubeconfig}
+ ${kubectl}/bin/kubectl apply -f ${concatStringsSep " \\\n -f " files}
+ '';
+ })]);
+
+ environment.etc.${cfg.etcClusterAdminKubeconfig}.source = mkIf (!isNull cfg.etcClusterAdminKubeconfig)
+ clusterAdminKubeconfig;
+
+ environment.systemPackages = mkIf (top.kubelet.enable || top.proxy.enable) [
+ (pkgs.writeScriptBin "nixos-kubernetes-node-join" ''
+ set -e
+ exec 1>&2
+
+ if [ $# -gt 0 ]; then
+ echo "Usage: $(basename $0)"
+ echo ""
+ echo "No args. Apitoken must be provided on stdin."
+ echo "To get the apitoken, execute: 'sudo cat ${certmgrAPITokenPath}' on the master node."
+ exit 1
+ fi
+
+ if [ $(id -u) != 0 ]; then
+ echo "Run as root please."
+ exit 1
+ fi
+
+ read -r token
+ if [ ''${#token} != ${toString cfsslAPITokenLength} ]; then
+ echo "Token must be of length ${toString cfsslAPITokenLength}."
+ exit 1
+ fi
+
+ echo $token > ${certmgrAPITokenPath}
+ chmod 600 ${certmgrAPITokenPath}
+
+ echo "Restarting certmgr..." >&1
+ systemctl restart certmgr
+
+ echo "Waiting for certs to appear..." >&1
+
+ ${optionalString top.kubelet.enable ''
+ while [ ! -f ${cfg.certs.kubelet.cert} ]; do sleep 1; done
+ echo "Restarting kubelet..." >&1
+ systemctl restart kubelet
+ ''}
+
+ ${optionalString top.proxy.enable ''
+ while [ ! -f ${cfg.certs.kubeProxyClient.cert} ]; do sleep 1; done
+ echo "Restarting kube-proxy..." >&1
+ systemctl restart kube-proxy
+ ''}
+
+ ${optionalString top.flannel.enable ''
+ while [ ! -f ${cfg.certs.flannelClient.cert} ]; do sleep 1; done
+ echo "Restarting flannel..." >&1
+ systemctl restart flannel
+ ''}
+
+ echo "Node joined succesfully"
+ '')];
+
+ # isolate etcd on loopback at the master node
+ # easyCerts doesn't support multimaster clusters anyway atm.
+ services.etcd = with cfg.certs.etcd; {
+ listenClientUrls = ["https://127.0.0.1:2379"];
+ listenPeerUrls = ["https://127.0.0.1:2380"];
+ advertiseClientUrls = ["https://etcd.local:2379"];
+ initialCluster = ["${top.masterAddress}=https://etcd.local:2380"];
+ initialAdvertisePeerUrls = ["https://etcd.local:2380"];
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ trustedCaFile = mkDefault caCert;
+ };
+ networking.extraHosts = mkIf (config.services.etcd.enable) ''
+ 127.0.0.1 etcd.${top.addons.dns.clusterDomain} etcd.local
+ '';
+
+ services.flannel = with cfg.certs.flannelClient; {
+ kubeconfig = top.lib.mkKubeConfig "flannel" {
+ server = top.apiserverAddress;
+ certFile = cert;
+ keyFile = key;
+ };
+ };
+
+ services.kubernetes = {
+
+ apiserver = mkIf top.apiserver.enable (with cfg.certs.apiServer; {
+ etcd = with cfg.certs.apiserverEtcdClient; {
+ servers = ["https://etcd.local:2379"];
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ caFile = mkDefault caCert;
+ };
+ clientCaFile = mkDefault caCert;
+ tlsCertFile = mkDefault cert;
+ tlsKeyFile = mkDefault key;
+ serviceAccountKeyFile = mkDefault cfg.certs.serviceAccount.cert;
+ kubeletClientCaFile = mkDefault caCert;
+ kubeletClientCertFile = mkDefault cfg.certs.apiserverKubeletClient.cert;
+ kubeletClientKeyFile = mkDefault cfg.certs.apiserverKubeletClient.key;
+ });
+ controllerManager = mkIf top.controllerManager.enable {
+ serviceAccountKeyFile = mkDefault cfg.certs.serviceAccount.key;
+ rootCaFile = cfg.certs.controllerManagerClient.caCert;
+ kubeconfig = with cfg.certs.controllerManagerClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ scheduler = mkIf top.scheduler.enable {
+ kubeconfig = with cfg.certs.schedulerClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ kubelet = mkIf top.kubelet.enable {
+ clientCaFile = mkDefault cfg.certs.kubelet.caCert;
+ tlsCertFile = mkDefault cfg.certs.kubelet.cert;
+ tlsKeyFile = mkDefault cfg.certs.kubelet.key;
+ kubeconfig = with cfg.certs.kubeletClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ proxy = mkIf top.proxy.enable {
+ kubeconfig = with cfg.certs.kubeProxyClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ };
+ });
+}
diff --git a/nixos/modules/services/cluster/kubernetes/proxy.nix b/nixos/modules/services/cluster/kubernetes/proxy.nix
new file mode 100644
index 00000000000..6bcf2eaca82
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/proxy.nix
@@ -0,0 +1,80 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.proxy;
+in
+{
+
+ ###### interface
+ options.services.kubernetes.proxy = with lib.types; {
+
+ bindAddress = mkOption {
+ description = "Kubernetes proxy listening address.";
+ default = "0.0.0.0";
+ type = str;
+ };
+
+ enable = mkEnableOption "Whether to enable Kubernetes proxy.";
+
+ extraOpts = mkOption {
+ description = "Kubernetes proxy extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes proxy";
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable {
+ systemd.services.kube-proxy = {
+ description = "Kubernetes Proxy Service";
+ wantedBy = [ "kubernetes.target" ];
+ after = [ "kube-apiserver.service" ];
+ path = with pkgs; [ iptables conntrack_tools ];
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-proxy \
+ --bind-address=${cfg.bindAddress} \
+ ${optionalString (top.clusterCidr!=null)
+ "--cluster-cidr=${top.clusterCidr}"} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --kubeconfig=${top.lib.mkKubeConfig "kube-proxy" cfg.kubeconfig} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ };
+ };
+
+ services.kubernetes.pki.certs = {
+ kubeProxyClient = top.lib.mkCert {
+ name = "kube-proxy-client";
+ CN = "system:kube-proxy";
+ action = "systemctl restart kube-proxy.service";
+ };
+ };
+
+ services.kubernetes.proxy.kubeconfig.server = mkDefault top.apiserverAddress;
+ };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/scheduler.nix b/nixos/modules/services/cluster/kubernetes/scheduler.nix
new file mode 100644
index 00000000000..655e6f8b6e2
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/scheduler.nix
@@ -0,0 +1,92 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.scheduler;
+in
+{
+ ###### interface
+ options.services.kubernetes.scheduler = with lib.types; {
+
+ address = mkOption {
+ description = "Kubernetes scheduler listening address.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ enable = mkEnableOption "Whether to enable Kubernetes scheduler.";
+
+ extraOpts = mkOption {
+ description = "Kubernetes scheduler extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes scheduler";
+
+ leaderElect = mkOption {
+ description = "Whether to start leader election before executing main loop.";
+ type = bool;
+ default = true;
+ };
+
+ port = mkOption {
+ description = "Kubernetes scheduler listening port.";
+ default = 10251;
+ type = int;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable {
+ systemd.services.kube-scheduler = {
+ description = "Kubernetes Scheduler Service";
+ wantedBy = [ "kubernetes.target" ];
+ after = [ "kube-apiserver.service" ];
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-scheduler \
+ --address=${cfg.address} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --kubeconfig=${top.lib.mkKubeConfig "kube-scheduler" cfg.kubeconfig} \
+ --leader-elect=${boolToString cfg.leaderElect} \
+ --port=${toString cfg.port} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ };
+ };
+
+ services.kubernetes.pki.certs = {
+ schedulerClient = top.lib.mkCert {
+ name = "kube-scheduler-client";
+ CN = "system:kube-scheduler";
+ action = "systemctl restart kube-scheduler.service";
+ };
+ };
+
+ services.kubernetes.scheduler.kubeconfig.server = mkDefault top.apiserverAddress;
+ };
+}
diff --git a/nixos/modules/services/hardware/bolt.nix b/nixos/modules/services/hardware/bolt.nix
new file mode 100644
index 00000000000..32b60af0603
--- /dev/null
+++ b/nixos/modules/services/hardware/bolt.nix
@@ -0,0 +1,34 @@
+# Thunderbolt 3 device manager
+
+{ config, lib, pkgs, ...}:
+
+with lib;
+
+{
+ options = {
+
+ services.hardware.bolt = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable Bolt, a userspace daemon to enable
+ security levels for Thunderbolt 3 on GNU/Linux.
+
+ Bolt is used by GNOME 3 to handle Thunderbolt settings.
+ '';
+ };
+
+ };
+
+ };
+
+ config = mkIf config.services.hardware.bolt.enable {
+
+ environment.systemPackages = [ pkgs.bolt ];
+ services.udev.packages = [ pkgs.bolt ];
+ systemd.packages = [ pkgs.bolt ];
+
+ };
+}
diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix
index 25c258ebe13..b8617e48d8e 100644
--- a/nixos/modules/services/misc/gitlab.nix
+++ b/nixos/modules/services/misc/gitlab.nix
@@ -22,7 +22,8 @@ let
password = cfg.databasePassword;
username = cfg.databaseUsername;
encoding = "utf8";
- };
+ pool = cfg.databasePool;
+ } // cfg.extraDatabaseConfig;
};
gitalyToml = pkgs.writeText "gitaly.toml" ''
@@ -253,6 +254,18 @@ in {
description = "Gitlab database user.";
};
+ databasePool = mkOption {
+ type = types.int;
+ default = 5;
+ description = "Database connection pool size.";
+ };
+
+ extraDatabaseConfig = mkOption {
+ type = types.attrs;
+ default = {};
+ description = "Extra configuration in config/database.yml.";
+ };
+
host = mkOption {
type = types.str;
default = config.networking.hostName;
diff --git a/nixos/modules/services/misc/jackett.nix b/nixos/modules/services/misc/jackett.nix
index 8d1b3d225a4..b18ce2b1f81 100644
--- a/nixos/modules/services/misc/jackett.nix
+++ b/nixos/modules/services/misc/jackett.nix
@@ -4,11 +4,36 @@ with lib;
let
cfg = config.services.jackett;
+
in
{
options = {
services.jackett = {
enable = mkEnableOption "Jackett";
+
+ dataDir = mkOption {
+ type = types.str;
+ default = "/var/lib/jackett/.config/Jackett";
+ description = "The directory where Jackett stores its data files.";
+ };
+
+ openFirewall = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Open ports in the firewall for the Jackett web interface.";
+ };
+
+ user = mkOption {
+ type = types.str;
+ default = "jackett";
+ description = "User account under which Jackett runs.";
+ };
+
+ group = mkOption {
+ type = types.str;
+ default = "jackett";
+ description = "Group under which Jackett runs.";
+ };
};
};
@@ -18,30 +43,38 @@ in
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
- test -d /var/lib/jackett/ || {
- echo "Creating jackett data directory in /var/lib/jackett/"
- mkdir -p /var/lib/jackett/
+ test -d ${cfg.dataDir} || {
+ echo "Creating jackett data directory in ${cfg.dataDir}"
+ mkdir -p ${cfg.dataDir}
}
- chown -R jackett:jackett /var/lib/jackett/
- chmod 0700 /var/lib/jackett/
+ chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir}
+ chmod 0700 ${cfg.dataDir}
'';
serviceConfig = {
Type = "simple";
- User = "jackett";
- Group = "jackett";
+ User = cfg.user;
+ Group = cfg.group;
PermissionsStartOnly = "true";
- ExecStart = "${pkgs.jackett}/bin/Jackett";
+ ExecStart = "${pkgs.jackett}/bin/Jackett --NoUpdates --DataFolder '${cfg.dataDir}'";
Restart = "on-failure";
};
};
- users.users.jackett = {
- uid = config.ids.uids.jackett;
- home = "/var/lib/jackett";
- group = "jackett";
+ networking.firewall = mkIf cfg.openFirewall {
+ allowedTCPPorts = [ 9117 ];
};
- users.groups.jackett.gid = config.ids.gids.jackett;
+ users.users = mkIf (cfg.user == "jackett") {
+ jackett = {
+ group = cfg.group;
+ home = cfg.dataDir;
+ uid = config.ids.uids.jackett;
+ };
+ };
+
+ users.groups = mkIf (cfg.group == "jackett") {
+ jackett.gid = config.ids.gids.jackett;
+ };
};
}
diff --git a/nixos/modules/services/misc/radarr.nix b/nixos/modules/services/misc/radarr.nix
index 1a9fad3883c..9ab26d84832 100644
--- a/nixos/modules/services/misc/radarr.nix
+++ b/nixos/modules/services/misc/radarr.nix
@@ -4,11 +4,36 @@ with lib;
let
cfg = config.services.radarr;
+
in
{
options = {
services.radarr = {
enable = mkEnableOption "Radarr";
+
+ dataDir = mkOption {
+ type = types.str;
+ default = "/var/lib/radarr/.config/Radarr";
+ description = "The directory where Radarr stores its data files.";
+ };
+
+ openFirewall = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Open ports in the firewall for the Radarr web interface.";
+ };
+
+ user = mkOption {
+ type = types.str;
+ default = "radarr";
+ description = "User account under which Radarr runs.";
+ };
+
+ group = mkOption {
+ type = types.str;
+ default = "radarr";
+ description = "Group under which Radarr runs.";
+ };
};
};
@@ -18,30 +43,38 @@ in
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
- test -d /var/lib/radarr/ || {
- echo "Creating radarr data directory in /var/lib/radarr/"
- mkdir -p /var/lib/radarr/
+ test -d ${cfg.dataDir} || {
+ echo "Creating radarr data directory in ${cfg.dataDir}"
+ mkdir -p ${cfg.dataDir}
}
- chown -R radarr:radarr /var/lib/radarr/
- chmod 0700 /var/lib/radarr/
+ chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir}
+ chmod 0700 ${cfg.dataDir}
'';
serviceConfig = {
Type = "simple";
- User = "radarr";
- Group = "radarr";
+ User = cfg.user;
+ Group = cfg.group;
PermissionsStartOnly = "true";
- ExecStart = "${pkgs.radarr}/bin/Radarr";
+ ExecStart = "${pkgs.radarr}/bin/Radarr -nobrowser -data='${cfg.dataDir}'";
Restart = "on-failure";
};
};
- users.users.radarr = {
- uid = config.ids.uids.radarr;
- home = "/var/lib/radarr";
- group = "radarr";
+ networking.firewall = mkIf cfg.openFirewall {
+ allowedTCPPorts = [ 7878 ];
};
- users.groups.radarr.gid = config.ids.gids.radarr;
+ users.users = mkIf (cfg.user == "radarr") {
+ radarr = {
+ group = cfg.group;
+ home = cfg.dataDir;
+ uid = config.ids.uids.radarr;
+ };
+ };
+
+ users.groups = mkIf (cfg.group == "radarr") {
+ radarr.gid = config.ids.gids.radarr;
+ };
};
}
diff --git a/nixos/modules/services/networking/flannel.nix b/nixos/modules/services/networking/flannel.nix
index 6c43573851b..ec702cdc6ff 100644
--- a/nixos/modules/services/networking/flannel.nix
+++ b/nixos/modules/services/networking/flannel.nix
@@ -161,7 +161,10 @@ in {
FLANNELD_KUBECONFIG_FILE = cfg.kubeconfig;
NODE_NAME = cfg.nodeName;
};
- preStart = mkIf (cfg.storageBackend == "etcd") ''
+ preStart = ''
+ mkdir -p /run/flannel
+ touch /run/flannel/docker
+ '' + optionalString (cfg.storageBackend == "etcd") ''
echo "setting network configuration"
until ${pkgs.etcdctl.bin}/bin/etcdctl set /coreos.com/network/config '${builtins.toJSON networkConfig}'
do
@@ -169,13 +172,11 @@ in {
sleep 1
done
'';
- postStart = ''
- while [ ! -f /run/flannel/subnet.env ]
- do
- sleep 1
- done
- '';
- serviceConfig.ExecStart = "${cfg.package}/bin/flannel";
+ serviceConfig = {
+ ExecStart = "${cfg.package}/bin/flannel";
+ Restart = "always";
+ RestartSec = "10s";
+ };
};
services.etcd.enable = mkDefault (cfg.storageBackend == "etcd" && cfg.etcd.endpoints == ["http://127.0.0.1:2379"]);
diff --git a/nixos/modules/services/web-apps/tt-rss.nix b/nixos/modules/services/web-apps/tt-rss.nix
index fa42ce81234..f7a3daa5fdd 100644
--- a/nixos/modules/services/web-apps/tt-rss.nix
+++ b/nixos/modules/services/web-apps/tt-rss.nix
@@ -40,7 +40,7 @@ let
else if (cfg.database.passwordFile != null) then
"file_get_contents('${cfg.database.passwordFile}')"
else
- ""
+ "''"
});
define('DB_PORT', '${toString dbPort}');
diff --git a/nixos/modules/services/web-servers/apache-httpd/default.nix b/nixos/modules/services/web-servers/apache-httpd/default.nix
index eebb1c413fa..3fd19d425c7 100644
--- a/nixos/modules/services/web-servers/apache-httpd/default.nix
+++ b/nixos/modules/services/web-servers/apache-httpd/default.nix
@@ -497,8 +497,8 @@ in
default = false;
description = ''
If enabled, each virtual host gets its own
- access_log and
- error_log, namely suffixed by the
+ access.log and
+ error.log, namely suffixed by the
of the virtual host.
'';
};
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 7544ba4638a..31ff60019ae 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -151,6 +151,7 @@ in {
services.colord.enable = mkDefault true;
services.packagekit.enable = mkDefault true;
hardware.bluetooth.enable = mkDefault true;
+ services.hardware.bolt.enable = mkDefault true;
services.xserver.libinput.enable = mkDefault true; # for controlling touchpad settings via gnome control center
services.udev.packages = [ pkgs.gnome3.gnome-settings-daemon ];
systemd.packages = [ pkgs.gnome3.vino ];
diff --git a/nixos/modules/virtualisation/vmware-guest.nix b/nixos/modules/virtualisation/vmware-guest.nix
index 15c78f14c52..d18778f8158 100644
--- a/nixos/modules/virtualisation/vmware-guest.nix
+++ b/nixos/modules/virtualisation/vmware-guest.nix
@@ -3,19 +3,17 @@
with lib;
let
- cfg = config.services.vmwareGuest;
+ cfg = config.virtualisation.vmware.guest;
open-vm-tools = if cfg.headless then pkgs.open-vm-tools-headless else pkgs.open-vm-tools;
xf86inputvmmouse = pkgs.xorg.xf86inputvmmouse;
in
{
- options = {
- services.vmwareGuest = {
- enable = mkEnableOption "VMWare Guest Support";
- headless = mkOption {
- type = types.bool;
- default = false;
- description = "Whether to disable X11-related features.";
- };
+ options.virtualisation.vmware.guest = {
+ enable = mkEnableOption "VMWare Guest Support";
+ headless = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Whether to disable X11-related features.";
};
};
@@ -25,6 +23,8 @@ in
message = "VMWare guest is not currently supported on ${pkgs.stdenv.hostPlatform.system}";
} ];
+ boot.initrd.kernelModules = [ "vmw_pvscsi" ];
+
environment.systemPackages = [ open-vm-tools ];
systemd.services.vmware =
diff --git a/nixos/tests/kubernetes/base.nix b/nixos/tests/kubernetes/base.nix
index 9d77be13175..ec1a75e74c4 100644
--- a/nixos/tests/kubernetes/base.nix
+++ b/nixos/tests/kubernetes/base.nix
@@ -10,7 +10,6 @@ let
mkKubernetesBaseTest =
{ name, domain ? "my.zyx", test, machines
, pkgs ? import { inherit system; }
- , certs ? import ./certs.nix { inherit pkgs; externalDomain = domain; kubelets = attrNames machines; }
, extraConfiguration ? null }:
let
masterName = head (filter (machineName: any (role: role == "master") machines.${machineName}.roles) (attrNames machines));
@@ -20,6 +19,10 @@ let
${master.ip} api.${domain}
${concatMapStringsSep "\n" (machineName: "${machines.${machineName}.ip} ${machineName}.${domain}") (attrNames machines)}
'';
+ kubectl = with pkgs; runCommand "wrap-kubectl" { buildInputs = [ makeWrapper ]; } ''
+ mkdir -p $out/bin
+ makeWrapper ${pkgs.kubernetes}/bin/kubectl $out/bin/kubectl --set KUBECONFIG "/etc/kubernetes/cluster-admin.kubeconfig"
+ '';
in makeTest {
inherit name;
@@ -27,6 +30,7 @@ let
{ config, pkgs, lib, nodes, ... }:
mkMerge [
{
+ boot.postBootCommands = "rm -fr /var/lib/kubernetes/secrets /tmp/shared/*";
virtualisation.memorySize = mkDefault 1536;
virtualisation.diskSize = mkDefault 4096;
networking = {
@@ -45,34 +49,25 @@ let
};
};
programs.bash.enableCompletion = true;
- environment.variables = {
- ETCDCTL_CERT_FILE = "${certs.worker}/etcd-client.pem";
- ETCDCTL_KEY_FILE = "${certs.worker}/etcd-client-key.pem";
- ETCDCTL_CA_FILE = "${certs.worker}/ca.pem";
- ETCDCTL_PEERS = "https://etcd.${domain}:2379";
- };
+ environment.systemPackages = [ kubectl ];
services.flannel.iface = "eth1";
- services.kubernetes.apiserver.advertiseAddress = master.ip;
+ services.kubernetes = {
+ addons.dashboard.enable = true;
+
+ easyCerts = true;
+ inherit (machine) roles;
+ apiserver = {
+ securePort = 443;
+ advertiseAddress = master.ip;
+ };
+ masterAddress = "${masterName}.${config.networking.domain}";
+ };
}
(optionalAttrs (any (role: role == "master") machine.roles) {
networking.firewall.allowedTCPPorts = [
- 2379 2380 # etcd
443 # kubernetes apiserver
];
- services.etcd = {
- enable = true;
- certFile = "${certs.master}/etcd.pem";
- keyFile = "${certs.master}/etcd-key.pem";
- trustedCaFile = "${certs.master}/ca.pem";
- peerClientCertAuth = true;
- listenClientUrls = ["https://0.0.0.0:2379"];
- listenPeerUrls = ["https://0.0.0.0:2380"];
- advertiseClientUrls = ["https://etcd.${config.networking.domain}:2379"];
- initialCluster = ["${masterName}=https://etcd.${config.networking.domain}:2380"];
- initialAdvertisePeerUrls = ["https://etcd.${config.networking.domain}:2380"];
- };
})
- (import ./kubernetes-common.nix { inherit (machine) roles; inherit pkgs config certs; })
(optionalAttrs (machine ? "extraConfiguration") (machine.extraConfiguration { inherit config pkgs lib nodes; }))
(optionalAttrs (extraConfiguration != null) (extraConfiguration { inherit config pkgs lib nodes; }))
]
diff --git a/nixos/tests/kubernetes/certs.nix b/nixos/tests/kubernetes/certs.nix
deleted file mode 100644
index 85e92f6330c..00000000000
--- a/nixos/tests/kubernetes/certs.nix
+++ /dev/null
@@ -1,219 +0,0 @@
-{
- pkgs ? import {},
- externalDomain ? "myawesomecluster.cluster.yourdomain.net",
- serviceClusterIp ? "10.0.0.1",
- kubelets,
- ...
-}:
-let
- runWithCFSSL = name: cmd:
- let secrets = pkgs.runCommand "${name}-cfss.json" {
- buildInputs = [ pkgs.cfssl pkgs.jq ];
- outputs = [ "out" "cert" "key" "csr" ];
- }
- ''
- (
- echo "${cmd}"
- cfssl ${cmd} > tmp
- cat tmp | jq -r .key > $key
- cat tmp | jq -r .cert > $cert
- cat tmp | jq -r .csr > $csr
-
- touch $out
- ) 2>&1 | fold -w 80 -s
- '';
- in {
- key = secrets.key;
- cert = secrets.cert;
- csr = secrets.csr;
- };
-
- writeCFSSL = content:
- pkgs.runCommand content.name {
- buildInputs = [ pkgs.cfssl pkgs.jq ];
- } ''
- mkdir -p $out
- cd $out
-
- json=${pkgs.lib.escapeShellArg (builtins.toJSON content)}
-
- # for a given $field in the $json, treat the associated value as a
- # file path and substitute the contents thereof into the $json
- # object.
- expandFileField() {
- local field=$1
- if jq -e --arg field "$field" 'has($field)'; then
- local path="$(echo "$json" | jq -r ".$field")"
- json="$(echo "$json" | jq --arg val "$(cat "$path")" ".$field = \$val")"
- fi
- }
-
- expandFileField key
- expandFileField ca
- expandFileField cert
-
- echo "$json" | cfssljson -bare ${content.name}
- '';
-
- noCSR = content: pkgs.lib.filterAttrs (n: v: n != "csr") content;
- noKey = content: pkgs.lib.filterAttrs (n: v: n != "key") content;
-
- writeFile = content:
- if pkgs.lib.isDerivation content
- then content
- else pkgs.writeText "content" (builtins.toJSON content);
-
- createServingCertKey = { ca, cn, hosts? [], size ? 2048, name ? cn }:
- noCSR (
- (runWithCFSSL name "gencert -ca=${writeFile ca.cert} -ca-key=${writeFile ca.key} -profile=server -config=${writeFile ca.config} ${writeFile {
- CN = cn;
- hosts = hosts;
- key = { algo = "rsa"; inherit size; };
- }}") // { inherit name; }
- );
-
- createClientCertKey = { ca, cn, groups ? [], size ? 2048, name ? cn }:
- noCSR (
- (runWithCFSSL name "gencert -ca=${writeFile ca.cert} -ca-key=${writeFile ca.key} -profile=client -config=${writeFile ca.config} ${writeFile {
- CN = cn;
- names = map (group: {O = group;}) groups;
- hosts = [""];
- key = { algo = "rsa"; inherit size; };
- }}") // { inherit name; }
- );
-
- createSigningCertKey = { C ? "xx", ST ? "x", L ? "x", O ? "x", OU ? "x", CN ? "ca", emailAddress ? "x", expiry ? "43800h", size ? 2048, name ? CN }:
- (noCSR (runWithCFSSL CN "genkey -initca ${writeFile {
- key = { algo = "rsa"; inherit size; };
- names = [{ inherit C ST L O OU CN emailAddress; }];
- }}")) // {
- inherit name;
- config.signing = {
- default.expiry = expiry;
- profiles = {
- server = {
- inherit expiry;
- usages = [
- "signing"
- "key encipherment"
- "server auth"
- ];
- };
- client = {
- inherit expiry;
- usages = [
- "signing"
- "key encipherment"
- "client auth"
- ];
- };
- peer = {
- inherit expiry;
- usages = [
- "signing"
- "key encipherment"
- "server auth"
- "client auth"
- ];
- };
- };
- };
- };
-
- ca = createSigningCertKey {};
-
- kube-apiserver = createServingCertKey {
- inherit ca;
- cn = "kube-apiserver";
- hosts = ["kubernetes.default" "kubernetes.default.svc" "localhost" "api.${externalDomain}" serviceClusterIp];
- };
-
- kubelet = createServingCertKey {
- inherit ca;
- cn = "kubelet";
- hosts = ["*.${externalDomain}"];
- };
-
- service-accounts = createServingCertKey {
- inherit ca;
- cn = "kube-service-accounts";
- };
-
- etcd = createServingCertKey {
- inherit ca;
- cn = "etcd";
- hosts = ["etcd.${externalDomain}"];
- };
-
- etcd-client = createClientCertKey {
- inherit ca;
- cn = "etcd-client";
- };
-
- kubelet-client = createClientCertKey {
- inherit ca;
- cn = "kubelet-client";
- groups = ["system:masters"];
- };
-
- apiserver-client = {
- kubelet = hostname: createClientCertKey {
- inherit ca;
- name = "apiserver-client-kubelet-${hostname}";
- cn = "system:node:${hostname}.${externalDomain}";
- groups = ["system:nodes"];
- };
-
- kube-proxy = createClientCertKey {
- inherit ca;
- name = "apiserver-client-kube-proxy";
- cn = "system:kube-proxy";
- groups = ["system:kube-proxy" "system:nodes"];
- };
-
- kube-controller-manager = createClientCertKey {
- inherit ca;
- name = "apiserver-client-kube-controller-manager";
- cn = "system:kube-controller-manager";
- groups = ["system:masters"];
- };
-
- kube-scheduler = createClientCertKey {
- inherit ca;
- name = "apiserver-client-kube-scheduler";
- cn = "system:kube-scheduler";
- groups = ["system:kube-scheduler"];
- };
-
- admin = createClientCertKey {
- inherit ca;
- cn = "admin";
- groups = ["system:masters"];
- };
- };
-in {
- master = pkgs.buildEnv {
- name = "master-keys";
- paths = [
- (writeCFSSL (noKey ca))
- (writeCFSSL kube-apiserver)
- (writeCFSSL kubelet-client)
- (writeCFSSL apiserver-client.kube-controller-manager)
- (writeCFSSL apiserver-client.kube-scheduler)
- (writeCFSSL service-accounts)
- (writeCFSSL etcd)
- ];
- };
-
- worker = pkgs.buildEnv {
- name = "worker-keys";
- paths = [
- (writeCFSSL (noKey ca))
- (writeCFSSL kubelet)
- (writeCFSSL apiserver-client.kube-proxy)
- (writeCFSSL etcd-client)
- ] ++ map (hostname: writeCFSSL (apiserver-client.kubelet hostname)) kubelets;
- };
-
- admin = writeCFSSL apiserver-client.admin;
-}
diff --git a/nixos/tests/kubernetes/dns.nix b/nixos/tests/kubernetes/dns.nix
index f25ea5b9ed8..46bcb01a526 100644
--- a/nixos/tests/kubernetes/dns.nix
+++ b/nixos/tests/kubernetes/dns.nix
@@ -71,17 +71,17 @@ let
base = {
name = "dns";
- inherit domain certs extraConfiguration;
+ inherit domain extraConfiguration;
};
singleNodeTest = {
test = ''
# prepare machine1 for test
$machine1->waitUntilSucceeds("kubectl get node machine1.${domain} | grep -w Ready");
- $machine1->execute("docker load < ${redisImage}");
+ $machine1->waitUntilSucceeds("docker load < ${redisImage}");
$machine1->waitUntilSucceeds("kubectl create -f ${redisPod}");
$machine1->waitUntilSucceeds("kubectl create -f ${redisService}");
- $machine1->execute("docker load < ${probeImage}");
+ $machine1->waitUntilSucceeds("docker load < ${probeImage}");
$machine1->waitUntilSucceeds("kubectl create -f ${probePod}");
# check if pods are running
@@ -99,13 +99,16 @@ let
multiNodeTest = {
test = ''
+ # Node token exchange
+ $machine1->waitUntilSucceeds("cp -f /var/lib/cfssl/apitoken.secret /tmp/shared/apitoken.secret");
+ $machine2->waitUntilSucceeds("cat /tmp/shared/apitoken.secret | nixos-kubernetes-node-join");
+
# prepare machines for test
- $machine1->waitUntilSucceeds("kubectl get node machine1.${domain} | grep -w Ready");
$machine1->waitUntilSucceeds("kubectl get node machine2.${domain} | grep -w Ready");
- $machine2->execute("docker load < ${redisImage}");
+ $machine2->waitUntilSucceeds("docker load < ${redisImage}");
$machine1->waitUntilSucceeds("kubectl create -f ${redisPod}");
$machine1->waitUntilSucceeds("kubectl create -f ${redisService}");
- $machine2->execute("docker load < ${probeImage}");
+ $machine2->waitUntilSucceeds("docker load < ${probeImage}");
$machine1->waitUntilSucceeds("kubectl create -f ${probePod}");
# check if pods are running
diff --git a/nixos/tests/kubernetes/kubernetes-common.nix b/nixos/tests/kubernetes/kubernetes-common.nix
deleted file mode 100644
index 87c65b88365..00000000000
--- a/nixos/tests/kubernetes/kubernetes-common.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ roles, config, pkgs, certs }:
-with pkgs.lib;
-let
- base = {
- inherit roles;
- flannel.enable = true;
- addons.dashboard.enable = true;
-
- caFile = "${certs.master}/ca.pem";
- apiserver = {
- tlsCertFile = "${certs.master}/kube-apiserver.pem";
- tlsKeyFile = "${certs.master}/kube-apiserver-key.pem";
- kubeletClientCertFile = "${certs.master}/kubelet-client.pem";
- kubeletClientKeyFile = "${certs.master}/kubelet-client-key.pem";
- serviceAccountKeyFile = "${certs.master}/kube-service-accounts.pem";
- };
- etcd = {
- servers = ["https://etcd.${config.networking.domain}:2379"];
- certFile = "${certs.worker}/etcd-client.pem";
- keyFile = "${certs.worker}/etcd-client-key.pem";
- };
- kubeconfig = {
- server = "https://api.${config.networking.domain}";
- };
- kubelet = {
- tlsCertFile = "${certs.worker}/kubelet.pem";
- tlsKeyFile = "${certs.worker}/kubelet-key.pem";
- hostname = "${config.networking.hostName}.${config.networking.domain}";
- kubeconfig = {
- certFile = "${certs.worker}/apiserver-client-kubelet-${config.networking.hostName}.pem";
- keyFile = "${certs.worker}/apiserver-client-kubelet-${config.networking.hostName}-key.pem";
- };
- };
- controllerManager = {
- serviceAccountKeyFile = "${certs.master}/kube-service-accounts-key.pem";
- kubeconfig = {
- certFile = "${certs.master}/apiserver-client-kube-controller-manager.pem";
- keyFile = "${certs.master}/apiserver-client-kube-controller-manager-key.pem";
- };
- };
- scheduler = {
- kubeconfig = {
- certFile = "${certs.master}/apiserver-client-kube-scheduler.pem";
- keyFile = "${certs.master}/apiserver-client-kube-scheduler-key.pem";
- };
- };
- proxy = {
- kubeconfig = {
- certFile = "${certs.worker}/apiserver-client-kube-proxy.pem";
- keyFile = "${certs.worker}//apiserver-client-kube-proxy-key.pem";
- };
- };
- };
-
-in {
- services.kubernetes = base;
-}
diff --git a/nixos/tests/kubernetes/rbac.nix b/nixos/tests/kubernetes/rbac.nix
index 226808c4b26..3ce7adcd0d7 100644
--- a/nixos/tests/kubernetes/rbac.nix
+++ b/nixos/tests/kubernetes/rbac.nix
@@ -96,7 +96,7 @@ let
test = ''
$machine1->waitUntilSucceeds("kubectl get node machine1.my.zyx | grep -w Ready");
- $machine1->execute("docker load < ${kubectlImage}");
+ $machine1->waitUntilSucceeds("docker load < ${kubectlImage}");
$machine1->waitUntilSucceeds("kubectl apply -f ${roServiceAccount}");
$machine1->waitUntilSucceeds("kubectl apply -f ${roRole}");
@@ -105,7 +105,7 @@ let
$machine1->waitUntilSucceeds("kubectl get pod kubectl | grep Running");
- $machine1->succeed("kubectl exec -ti kubectl -- kubectl get pods");
+ $machine1->waitUntilSucceeds("kubectl exec -ti kubectl -- kubectl get pods");
$machine1->fail("kubectl exec -ti kubectl -- kubectl create -f /kubectl-pod-2.json");
$machine1->fail("kubectl exec -ti kubectl -- kubectl delete pods -l name=kubectl");
'';
@@ -113,10 +113,13 @@ let
multinode = base // {
test = ''
- $machine1->waitUntilSucceeds("kubectl get node machine1.my.zyx | grep -w Ready");
+ # Node token exchange
+ $machine1->waitUntilSucceeds("cp -f /var/lib/cfssl/apitoken.secret /tmp/shared/apitoken.secret");
+ $machine2->waitUntilSucceeds("cat /tmp/shared/apitoken.secret | nixos-kubernetes-node-join");
+
$machine1->waitUntilSucceeds("kubectl get node machine2.my.zyx | grep -w Ready");
- $machine2->execute("docker load < ${kubectlImage}");
+ $machine2->waitUntilSucceeds("docker load < ${kubectlImage}");
$machine1->waitUntilSucceeds("kubectl apply -f ${roServiceAccount}");
$machine1->waitUntilSucceeds("kubectl apply -f ${roRole}");
@@ -125,7 +128,7 @@ let
$machine1->waitUntilSucceeds("kubectl get pod kubectl | grep Running");
- $machine1->succeed("kubectl exec -ti kubectl -- kubectl get pods");
+ $machine1->waitUntilSucceeds("kubectl exec -ti kubectl -- kubectl get pods");
$machine1->fail("kubectl exec -ti kubectl -- kubectl create -f /kubectl-pod-2.json");
$machine1->fail("kubectl exec -ti kubectl -- kubectl delete pods -l name=kubectl");
'';
diff --git a/pkgs/applications/altcoins/go-ethereum.nix b/pkgs/applications/altcoins/go-ethereum.nix
index ad1ccbf496c..85dfacb2095 100644
--- a/pkgs/applications/altcoins/go-ethereum.nix
+++ b/pkgs/applications/altcoins/go-ethereum.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
name = "go-ethereum-${version}";
- version = "1.8.21";
+ version = "1.8.22";
goPackagePath = "github.com/ethereum/go-ethereum";
# Fix for usb-related segmentation faults on darwin
@@ -16,13 +16,13 @@ buildGoPackage rec {
owner = "ethereum";
repo = "go-ethereum";
rev = "v${version}";
- sha256 = "1p4qfxa90l26s9q4hddyb93gdf7vb0sb46z9n26ijiqlxdq3z7v2";
+ sha256 = "0ag9qxrf7n0qkccaf6v4jaysivpxvsy5zfzar3mcm65223pqy375";
};
meta = with stdenv.lib; {
homepage = https://ethereum.github.io/go-ethereum/;
description = "Official golang implementation of the Ethereum protocol";
license = with licenses; [ lgpl3 gpl3 ];
- maintainers = [ maintainers.adisbladis maintainers.lionello ];
+ maintainers = with maintainers; [ adisbladis asymmetric lionello ];
};
}
diff --git a/pkgs/applications/audio/mopidy/iris.nix b/pkgs/applications/audio/mopidy/iris.nix
index 45006fb8ef6..3e89101e042 100644
--- a/pkgs/applications/audio/mopidy/iris.nix
+++ b/pkgs/applications/audio/mopidy/iris.nix
@@ -2,11 +2,11 @@
pythonPackages.buildPythonApplication rec {
pname = "Mopidy-Iris";
- version = "3.32.4";
+ version = "3.32.5";
src = pythonPackages.fetchPypi {
inherit pname version;
- sha256 = "16b3dkxland4mjzjs2rz5gbqjapzzmap4d1mfhbrj2ch3plmdy7g";
+ sha256 = "0vs8x26zcakk6c31sc774h2lcdw3syp236vyymmx1jnfsh1jaqpn";
};
propagatedBuildInputs = [
diff --git a/pkgs/applications/audio/ncmpcpp/default.nix b/pkgs/applications/audio/ncmpcpp/default.nix
index 87f5f94bb30..d35cefb8841 100644
--- a/pkgs/applications/audio/ncmpcpp/default.nix
+++ b/pkgs/applications/audio/ncmpcpp/default.nix
@@ -1,8 +1,8 @@
{ stdenv, fetchurl, boost, mpd_clientlib, ncurses, pkgconfig, readline
, libiconv, icu, curl
-, outputsSupport ? false # outputs screen
+, outputsSupport ? true # outputs screen
, visualizerSupport ? false, fftw ? null # visualizer screen
-, clockSupport ? false # clock screen
+, clockSupport ? true # clock screen
, taglibSupport ? true, taglib ? null # tag editor
}:
diff --git a/pkgs/applications/audio/openmpt123/default.nix b/pkgs/applications/audio/openmpt123/default.nix
index af859702292..f8f08369ab9 100644
--- a/pkgs/applications/audio/openmpt123/default.nix
+++ b/pkgs/applications/audio/openmpt123/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, zlib, pkgconfig, mpg123, libogg, libvorbis, portaudio, libsndfile, flac
-, usePulseAudio ? false, libpulseaudio }:
+{ config, stdenv, fetchurl, zlib, pkgconfig, mpg123, libogg, libvorbis, portaudio, libsndfile, flac
+, usePulseAudio ? config.pulseaudio or false, libpulseaudio }:
let
version = "0.4.1";
diff --git a/pkgs/applications/editors/eclipse/build-eclipse.nix b/pkgs/applications/editors/eclipse/build-eclipse.nix
index 389608ad824..6ae9eb078e2 100644
--- a/pkgs/applications/editors/eclipse/build-eclipse.nix
+++ b/pkgs/applications/editors/eclipse/build-eclipse.nix
@@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = http://www.eclipse.org/;
inherit description;
+ platforms = [ "x86_64-linux" ];
};
}
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index 55bbc778e3a..3fa46fc4d92 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -11,7 +11,14 @@ assert stdenv ? glibc;
# http://download.eclipse.org/eclipse/downloads/ is the main place to
# find the downloads needed for new versions
-rec {
+let
+ platform_major = "4";
+ platform_minor = "10";
+ year = "2018";
+ month = "12";
+ timestamp = "201812060815";
+
+in rec {
buildEclipse = import ./build-eclipse.nix {
inherit stdenv makeDesktopItem freetype fontconfig libX11 libXrender zlib
@@ -21,133 +28,43 @@ rec {
### Eclipse CPP
- eclipse-cpp = eclipse-cpp-47; # always point to latest
-
- eclipse-cpp-47 = buildEclipse {
- name = "eclipse-cpp-4.7.0";
+ eclipse-cpp = buildEclipse {
+ name = "eclipse-cpp-${platform_major}.${platform_minor}";
description = "Eclipse IDE for C/C++ Developers, Oxygen release";
src =
- if stdenv.hostPlatform.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-cpp-oxygen-R-linux-gtk-x86_64.tar.gz;
- sha512 = "813c791e739d7d0e2ab242a5bacadca135bbeee20ef97aa830353cd90f63fa6e9c89cfcc6aadf635c742befe035bd6e3f15103013f63c419f6144e86ebde3ed1";
- }
- else if stdenv.hostPlatform.system == "i686-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-cpp-oxygen-R-linux-gtk.tar.gz;
- sha512 = "2b50f4a00306a89cda1aaaa606e62285cacbf93464a9dd3f3319dca3e2c578b802e685de6f78e5e617d269e21271188effe73d41f491a6de946e28795d82db8a";
- }
- else throw "Unsupported system: ${stdenv.hostPlatform.system}";
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+ sha512 = "1f5yr7cydz4iw8c14yn713d44f1g1wkiqiwmb4ikdfx4l70rc5xxsdxv9b4mhm89b02cqnxdh9p5hivkssmnzg0km3ab5bx9mvzgzx7";
+ };
};
- eclipse-cpp-37 = buildEclipse {
- name = "eclipse-cpp-3.7";
- description = "Eclipse IDE for C/C++ Developers";
- src =
- if stdenv.hostPlatform.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk-x86_64.tar.gz;
- sha256 = "14ppc9g9igzvj1pq7jl01vwhzb66nmzbl9wsdl1sf3xnwa9wnqk3";
- }
- else
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk.tar.gz;
- sha256 = "1cvg1vgyazrkinwzlvlf0dpl197p4784752srqybqylyj5psdi3b";
- };
- };
- eclipse_cpp_37 = eclipse-cpp-37; # backward compatibility, added 2016-01-30
-
### Eclipse Modeling
- eclipse-modeling = eclipse-modeling-47; # always point to latest
-
- eclipse-modeling-47 = buildEclipse {
- name = "eclipse-modeling-4.7";
+ eclipse-modeling = buildEclipse {
+ name = "eclipse-modeling-${platform_major}.${platform_minor}";
description = "Eclipse Modeling Tools";
src =
- if stdenv.hostPlatform.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-modeling-oxygen-R-linux-gtk-x86_64.tar.gz;
- sha512 = "3b9a7ad4b5d6b77fbdd64e8d323e0adb6c2904763ad042b374b4d87cef8607408cb407e395870fc755d58c0c800e20818adcf456ebe193d76cede16c5fe12271";
- }
- else
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-modeling-oxygen-R-linux-gtk.tar.gz;
- sha512 = "b8597c1dec117e69c72a5e1a53e09b1f81a7c9de86ed7e71a9d007664603202df301745f186ded02b2e76410345863e80a2ba40867d6848e5375601289999206";
- };
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+ sha512 = "18psh1lgqg21dmndyc0yr6rz7piqyk861j9mlhgv9xaq8nz11fb6lil594sk64yyv0qbgi98vp03f1p06zvhgs37k9rjkfjmzl7n97k";
+ };
};
- eclipse-modeling-36 = buildEclipse {
- name = "eclipse-modeling-3.6.2";
- description = "Eclipse Modeling Tools (includes Incubating components)";
- src =
- if stdenv.hostPlatform.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk-x86_64.tar.gz;
- sha1 = "e96f5f006298f68476f4a15a2be8589158d5cc61";
- }
- else
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk.tar.gz;
- sha1 = "696377895bb26445de39d82a916b7e69edb1d939";
- };
- };
- eclipse_modeling_36 = eclipse-modeling-36; # backward compatibility, added 2016-01-30
-
### Eclipse Platform
- eclipse-platform = eclipse-platform-49; # always point to latest
-
- eclipse-platform-47 = buildEclipse {
- name = "eclipse-platform-4.7.3a";
- description = "Eclipse Platform Oxygen";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk-x86_64.tar.gz;
- sha512 = "caf86cd6efaf66258c75434f1adf552587a7395d57dba4cfd20f86196308cf942866d931f4b352f9d39a6fbf14444fcd2167e6bfd146a28c96c229bb9988156a";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk.tar.gz;
- sha512 = "c633da467774e4ab40f8d51d07b8e7d8403f26f23365c3c3ceeaeec1039b8c23c7508cee1f786bf52db64c7b84e0f91cb31a2848a74ac8271f8504934407bd5c";
- };
- };
- };
-
- eclipse-platform-48 = buildEclipse {
- name = "eclipse-platform-4.8";
- description = "Eclipse Platform Photon";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk-x86_64.tar.gz;
- sha512 = "ccce2b954938479e42ef3f9b78f74b24ae4cae7499546fa4f9a55ec1849e1acfd06315d4529b11474a8b3d1142c9409c581edfa571baaf1342ab062f02467af2";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk.tar.gz;
- sha512 = "f5f407727e22b848931cf38f71b1a0c30a9778aa227c3df137dcceec2fba2ecc309cbfa8b4a660b814d2edb60f65110381497b4325781cab4d6402784139e32b";
- };
- };
- };
-
- eclipse-platform-49 = buildEclipse {
- name = "eclipse-platform-4.9";
- description = "Eclipse Platform 2018-09";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-platform-4.9-linux-gtk-x86_64.tar.gz;
- sha512 = "875714bb411145c917fccedf2f7c4fd2757640b2debf4a18f775604233abd6f0da893b350cc03da44413d7ec6fae3f773ef08634e632058e4b705e6cda2893eb";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-platform-4.9-linux-gtk.tar.gz;
- sha512 = "758bc0de30fa5c4b76b343ea0325611d87b6928ef5002244f2f1ba2a9fa937de89b2a94ce2c8d33d79344fd574d6e8a72c5d127fe416d785f48600e9e85fce86";
- };
- };
+ eclipse-platform = buildEclipse {
+ name = "eclipse-platform-${platform_major}.${platform_minor}";
+ description = "Eclipse Platform ${year}-${month}";
+ src =
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
+ sha512 = "2zdvbjk05a00lbcad9v30rcr93j03d2pycdhpwrvrakr8z4yrxs6svamq9s294ry1w3lw04pgsnqklw6zjx6iil1kp51f374lkfpxn7";
+ };
};
### Eclipse Scala SDK
- eclipse-scala-sdk = eclipse-scala-sdk-441; # always point to latest
-
- eclipse-scala-sdk-441 = buildEclipse {
+ eclipse-scala-sdk = buildEclipse {
name = "eclipse-scala-sdk-4.4.1";
description = "Eclipse IDE for Scala Developers";
src =
@@ -165,88 +82,26 @@ rec {
### Eclipse SDK
- eclipse-sdk = eclipse-sdk-49; # always point to latest
-
- eclipse-sdk-47 = buildEclipse {
- name = "eclipse-sdk-4.7.3a";
- description = "Eclipse Oxygen Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk-x86_64.tar.gz;
- sha512 = "d77e42aca16d26526cef32e363d038258bb8a4616d9dbe6e76dd3656dc2217369436390a82555bde4566bbbdb631813bbaca08602f7bb885cb30e8a26a14873f";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk.tar.gz;
- sha512 = "b0b936fd4142ae86ec5c30535cd5e4caf6fe313d814ae5b16f300635e4163a79b748b1eee11792a135114f2265678a74821ec80c2bfd69872769b6d0ccbcde3a";
- };
- };
+ eclipse-sdk = buildEclipse {
+ name = "eclipse-sdk-${platform_major}.${platform_minor}";
+ description = "Eclipse ${year}-${month} Classic";
+ src =
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
+ sha512 = "1kq14vhzcngfhl8kjs722rshny81gxv6wcgln46x7lnpg2274sb9dprhns62fpq97l0355cmg8mnny6fsd1nqibrw09xq932v86cfm8";
+ };
};
- eclipse-sdk-48 = buildEclipse {
- name = "eclipse-sdk-4.8";
- description = "Eclipse Photon Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk-x86_64.tar.gz;
- sha512 = "357ea9e7f426c68ced693f1c7b76eae23f9e3c7893de1f12d17994ec17b447896b5daa7292d5fbf6d9c4e5b7fd637ca5b2a6ba8ce40a2a7c2fe06f2124d31b75";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk.tar.gz;
- sha512 = "c7cae7baa3978d48477090bb9941e85b4c7484021ece9c5c77a7e859e57e5c1f13556262f92b561cfb11f828b934bad7a6018be7b8fd9454e3991e8d5cae9917";
- };
- };
- };
-
- eclipse-sdk-49 = buildEclipse {
- name = "eclipse-sdk-4.9";
- description = "Eclipse 2018-09 Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-SDK-4.9-linux-gtk-x86_64.tar.gz;
- sha512 = "5e74a0411f56b3973b7c6d8c3727392297d55ad458a814b4cc3f2f6a57dbeebc64852d1a6a958db5c3b08c620093bfb5bcc0d2c6a400f5594b82c2ef5d5fa9fb";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/eclipse-SDK-4.9-linux-gtk.tar.gz;
- sha512 = "b1861bd99c8e43f1d04247226584246aa7844af5e2da820fe98a51018dbe8ff4c25dbb9fa655f56e103f95c0696f40a65dcce13430c63aa080f786738e70eb8b";
- };
- };
- };
-
- eclipse-sdk-37 = buildEclipse {
- name = "eclipse-sdk-3.7";
- description = "Eclipse Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz;
- sha256 = "0nf4nv7awhp1k8b1hjb7chpjyjrqnyszsjbc4dlk9phpjv3j4wg5";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk.tar.gz;
- sha256 = "1isn7i45l9kyn2yx6vm88jl1gnxph8ynank0aaa218cg8kdygk7j";
- };
- };
- };
- eclipse_sdk_37 = eclipse-sdk-37; # backward compatibility, added 2016-01-30
-
### Eclipse Java
- eclipse-java = eclipse-java-49;
-
- eclipse-java-49 = buildEclipse {
- name = "eclipse-java-4.9.0";
+ eclipse-java = buildEclipse {
+ name = "eclipse-java-${platform_major}.${platform_minor}";
description = "Eclipse IDE for Java Developers";
src =
- if stdenv.system == "x86_64-linux" then
- fetchurl {
- url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/2018-09/R/eclipse-java-2018-09-linux-gtk-x86_64.tar.gz;
- sha512 = "9dac5d040cdabf779de3996de87290e352130c7e860c1d0a98772f41da828ad45f90748b68e0a8a4f8d1ebbbbe5fdfe6401b7d871b93af34103d4a81a041c6a5";
- }
- else if stdenv.system == "i686-linux" then
- fetchurl {
- url = http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/2018-09/R/eclipse-java-2018-09-linux-gtk.tar.gz;
- sha512 = "24208e95b972e848d6b65ed8108d9e81584cf051397f2f43fb6269f5a625b8d7552ad77c7980a1a5653c87f06776e2926fd85607aae44e44657b4f6cc9b3e2e3";
- }
- else throw "Unsupported system: ${stdenv.system}";
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+ sha512 = "2xd5q7kg3aly7jnz2fijn06ljmnnd7ggwwzmndfhqwfzxpyjg1lnlln76pcd6chx7gnwdrl7khg0fs566ddabfjv17c46dj5fpw9y6j";
+ };
};
### Environments
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index 8a5991cc7cd..4dc4aebe8fd 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -254,12 +254,12 @@ rec {
cdt = buildEclipseUpdateSite rec {
name = "cdt-${version}";
- version = "9.0.1";
+ version = "9.6.0";
src = fetchzip {
stripRoot = false;
- url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.0/${name}.zip";
- sha256 = "0vdx0j9ci533wnk7y17qjvjyqx38hlrdw67z6pi05vfv3r6ys39x";
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.6/${name}/${name}.zip";
+ sha256 = "08rk3b1va57jcy4s161fx0xmb8dn47akhhxd2f28hspq6i2jqicm";
};
meta = with stdenv.lib; {
@@ -497,12 +497,12 @@ rec {
jdt = buildEclipseUpdateSite rec {
name = "jdt-${version}";
- version = "4.9";
+ version = "4.10";
src = fetchzip {
stripRoot = false;
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.9-201809060745/org.eclipse.jdt-4.9.zip;
- sha256 = "144rqrw0crxd2v862dqxm2p5y60n4pbzdryv709xnhcw54rycm7n";
+ url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.10-201812060815/org.eclipse.jdt-4.10.zip;
+ sha256 = "1h11w3zd6xy5w4sk6xnyb2a27wxwhp83qfx67ji7bzdrwbvljqkz";
};
meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix
index 4f268a3a104..4a48cde571a 100644
--- a/pkgs/applications/editors/emacs/default.nix
+++ b/pkgs/applications/editors/emacs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
+{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d, libXcursor
, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
, alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO, m17n_lib, libotf
@@ -118,6 +118,17 @@ stdenv.mkDerivation rec {
mv nextstep/Emacs.app $out/Applications
'';
+ postFixup =
+ let libPath = lib.makeLibraryPath [
+ libXcursor
+ ];
+ in lib.optionalString (withX && toolkit == "lucid") ''
+ patchelf --set-rpath \
+ "$(patchelf --print-rpath "$out/bin/emacs"):${libPath}" \
+ "$out/bin/emacs"
+ patchelf --add-needed "libXcursor.so.1" "$out/bin/emacs"
+ '';
+
meta = with stdenv.lib; {
description = "The extensible, customizable GNU text editor";
homepage = https://www.gnu.org/software/emacs/;
diff --git a/pkgs/applications/editors/kdevelop5/kdev-php.nix b/pkgs/applications/editors/kdevelop5/kdev-php.nix
new file mode 100644
index 00000000000..532bb99e7d8
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/kdev-php.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, fetchurl, cmake, extra-cmake-modules, threadweaver, ktexteditor, kdevelop-unwrapped, kdevelop-pg-qt }:
+
+let
+ pname = "kdev-php";
+ version = "5.3.1";
+in
+stdenv.mkDerivation rec {
+ name = "${pname}-${version}";
+
+ src = fetchurl {
+ url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
+ sha256 = "1xiz4v6w30dsa7l4nk3jw3hxpkx71b0yaaj2k8s7xzgjif824bgl";
+ };
+
+ cmakeFlags = [
+ "-DBUILD_TESTING=OFF"
+ ];
+
+ nativeBuildInputs = [ cmake extra-cmake-modules ];
+ buildInputs = [ kdevelop-pg-qt threadweaver ktexteditor kdevelop-unwrapped ];
+
+ meta = with lib; {
+ maintainers = [ maintainers.aanderse ];
+ platforms = platforms.linux;
+ description = "PHP support for KDevelop";
+ homepage = https://www.kdevelop.org;
+ license = [ licenses.gpl2 ];
+ };
+}
diff --git a/pkgs/applications/editors/kdevelop5/kdev-python.nix b/pkgs/applications/editors/kdevelop5/kdev-python.nix
new file mode 100644
index 00000000000..be27e10f42a
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/kdev-python.nix
@@ -0,0 +1,30 @@
+{ stdenv, lib, fetchurl, cmake, extra-cmake-modules, threadweaver, ktexteditor, kdevelop-unwrapped, python }:
+
+let
+ pname = "kdev-python";
+ version = "5.3.1";
+in
+stdenv.mkDerivation rec {
+ name = "${pname}-${version}";
+
+ src = fetchurl {
+ url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
+ sha256 = "11hf8n6vrlaz31c0p3xbnf0df2q5j6ykgc9ip0l5g33kadwn5b9j";
+ };
+
+ cmakeFlags = [
+ "-DBUILD_TESTING=OFF"
+ "-DPYTHON_EXECUTABLE=${python}/bin/python"
+ ];
+
+ nativeBuildInputs = [ cmake extra-cmake-modules ];
+ buildInputs = [ threadweaver ktexteditor kdevelop-unwrapped ];
+
+ meta = with lib; {
+ maintainers = [ maintainers.aanderse ];
+ platforms = platforms.linux;
+ description = "Python support for KDevelop";
+ homepage = https://www.kdevelop.org;
+ license = [ licenses.gpl2 ];
+ };
+}
diff --git a/pkgs/applications/editors/kdevelop5/kdevelop.nix b/pkgs/applications/editors/kdevelop5/kdevelop.nix
index a35bd14f310..98154b4a5eb 100644
--- a/pkgs/applications/editors/kdevelop5/kdevelop.nix
+++ b/pkgs/applications/editors/kdevelop5/kdevelop.nix
@@ -43,6 +43,13 @@ mkDerivation rec {
"-DCLANG_BUILTIN_DIR=${llvmPackages.clang-unwrapped}/lib/clang/${(builtins.parseDrvName llvmPackages.clang.name).version}/include"
];
+ postPatch = ''
+ # FIXME: temporary until https://invent.kde.org/kde/kdevelop/merge_requests/8 is merged
+ substituteInPlace kdevplatform/language/backgroundparser/parsejob.cpp --replace \
+ 'if (internalFilePath.startsWith(dataPath.canonicalPath() + QStringLiteral("/kdev"))) {' \
+ 'if (internalFilePath.startsWith(dataPath.canonicalPath() + QStringLiteral("/kdev")) || localFile.startsWith(path + QStringLiteral("/kdev"))) {'
+ '';
+
postInstall = ''
# The kdevelop! script (shell environment) needs qdbus and kioclient5 in PATH.
wrapProgram "$out/bin/kdevelop!" \
diff --git a/pkgs/applications/editors/kdevelop5/wrapper.nix b/pkgs/applications/editors/kdevelop5/wrapper.nix
new file mode 100644
index 00000000000..86d3de9eb39
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/wrapper.nix
@@ -0,0 +1,7 @@
+{ symlinkJoin, kdevelop-unwrapped, plugins ? null }:
+
+symlinkJoin {
+ name = "kdevelop-with-plugins";
+
+ paths = [ kdevelop-unwrapped ] ++ (if plugins != null then plugins else []);
+}
diff --git a/pkgs/applications/graphics/ahoviewer/default.nix b/pkgs/applications/graphics/ahoviewer/default.nix
index 596570092a9..5210af4df7a 100644
--- a/pkgs/applications/graphics/ahoviewer/default.nix
+++ b/pkgs/applications/graphics/ahoviewer/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchFromGitHub, pkgconfig, libconfig,
- gtkmm2, glibmm, libxml2, libsecret, curl, libzip,
- librsvg, gst_all_1, autoreconfHook, makeWrapper,
- useUnrar ? false, unrar
+{ config, stdenv, fetchFromGitHub, pkgconfig, libconfig
+, gtkmm2, glibmm, libxml2, libsecret, curl, libzip
+, librsvg, gst_all_1, autoreconfHook, makeWrapper
+, useUnrar ? config.ahoviewer.useUnrar or false, unrar
}:
assert useUnrar -> unrar != null;
diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix
index 44855d5c8b4..bce2e882698 100644
--- a/pkgs/applications/graphics/openscad/default.nix
+++ b/pkgs/applications/graphics/openscad/default.nix
@@ -28,6 +28,9 @@ stdenv.mkDerivation rec {
qmakeFlags = [ "VERSION=${version}" ];
+ # src/lexer.l:36:10: fatal error: parser.hxx: No such file or directory
+ enableParallelBuilding = false; # true by default due to qmake
+
doCheck = false;
meta = {
diff --git a/pkgs/applications/graphics/paraview/default.nix b/pkgs/applications/graphics/paraview/default.nix
index 9839bb74077..cf13c6fb05e 100644
--- a/pkgs/applications/graphics/paraview/default.nix
+++ b/pkgs/applications/graphics/paraview/default.nix
@@ -6,7 +6,7 @@ stdenv, fetchFromGitHub, cmake, makeWrapper
stdenv.mkDerivation rec {
name = "paraview-${version}";
- version = "5.5.2";
+ version = "5.6.0";
# fetching from GitHub instead of taking an "official" source
# tarball because of missing submodules there
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
owner = "Kitware";
repo = "ParaView";
rev = "v${version}";
- sha256 = "1jivph7lppnflmjsiirhgv0mnh8mxx41i1vzkk78ynn00rzacx3j";
+ sha256 = "1j13yfdgcv4yzfr449i4c8r4rs1c9zr6qd3igr4vv3ani8zixkzi";
fetchSubmodules = true;
};
diff --git a/pkgs/applications/misc/audio/sox/default.nix b/pkgs/applications/misc/audio/sox/default.nix
index 2585b554548..878e62c68cb 100644
--- a/pkgs/applications/misc/audio/sox/default.nix
+++ b/pkgs/applications/misc/audio/sox/default.nix
@@ -1,7 +1,7 @@
-{ lib, stdenv, fetchurl
+{ config, lib, stdenv, fetchurl
, enableAlsa ? true, alsaLib ? null
, enableLibao ? true, libao ? null
-, enableLame ? false, lame ? null
+, enableLame ? config.sox.enableLame or false, lame ? null
, enableLibmad ? true, libmad ? null
, enableLibogg ? true, libogg ? null, libvorbis ? null
, enableFLAC ? true, flac ? null
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 89bd8ee4b3e..353cf620ee7 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -1,10 +1,10 @@
-{ stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
+{ config, stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
, ilmbase, libXi, libX11, libXext, libXrender
, libjpeg, libpng, libsamplerate, libsndfile
, libtiff, libGLU_combined, openal, opencolorio, openexr, openimageio, openjpeg_1, pythonPackages
, zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd
, jackaudioSupport ? false, libjack2
-, cudaSupport ? false, cudatoolkit
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
, colladaSupport ? true, opencollada
, enableNumpy ? false, makeWrapper
}:
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
index 0a1275cb17a..bde8fab8144 100644
--- a/pkgs/applications/misc/buku/default.nix
+++ b/pkgs/applications/misc/buku/default.nix
@@ -69,7 +69,7 @@ with python3.pkgs; buildPythonApplication rec {
homepage = https://github.com/jarun/Buku;
license = licenses.gpl3;
platforms = platforms.linux;
- maintainers = with maintainers; [ infinisil ];
+ maintainers = with maintainers; [ matthiasbeyer infinisil ];
};
}
diff --git a/pkgs/applications/misc/cataract/build.nix b/pkgs/applications/misc/cataract/build.nix
index f2aac4326cb..e48b32a783d 100644
--- a/pkgs/applications/misc/cataract/build.nix
+++ b/pkgs/applications/misc/cataract/build.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
homepage = http://cgg.bzatek.net/;
description = "a simple static web photo gallery, designed to be clean and easily usable";
license = stdenv.lib.licenses.gpl2;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
platforms = with stdenv.lib.platforms; linux ++ darwin;
};
}
diff --git a/pkgs/applications/misc/cli-visualizer/default.nix b/pkgs/applications/misc/cli-visualizer/default.nix
index 7aecc8f823e..e0d284c838e 100644
--- a/pkgs/applications/misc/cli-visualizer/default.nix
+++ b/pkgs/applications/misc/cli-visualizer/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
homepage = https://github.com/dpayne/cli-visualizer;
description = "CLI based audio visualizer";
license = stdenv.lib.licenses.mit;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
platforms = with stdenv.lib.platforms; linux;
};
}
diff --git a/pkgs/applications/misc/ctodo/default.nix b/pkgs/applications/misc/ctodo/default.nix
index f8927319a01..0123e0c38d7 100644
--- a/pkgs/applications/misc/ctodo/default.nix
+++ b/pkgs/applications/misc/ctodo/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
homepage = http://ctodo.apakoh.dk/;
description = "A simple ncurses-based task list manager";
license = stdenv.lib.licenses.mit;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
platforms = stdenv.lib.platforms.linux;
};
}
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index c6f83104fb1..5f252d97d86 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -14,13 +14,13 @@ in
python3Packages.buildPythonApplication rec {
pname = "electrum";
- version = "3.3.2";
+ version = "3.3.4";
src = fetchFromGitHub {
owner = "spesmilo";
repo = "electrum";
rev = version;
- sha256 = "1jsn02azdydpq4plr2552s7ijyqgw6zqm2zx8skwsalgbwmhx12i";
+ sha256 = "0yxdpc602jnd14xz3px85ka0b6db98zwbgfi9a3vj8p1k3mmiwaj";
};
propagatedBuildInputs = with python3Packages; [
@@ -53,9 +53,6 @@ python3Packages.buildPythonApplication rec {
preBuild = ''
sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py
- pyrcc5 icons.qrc -o electrum/gui/qt/icons_rc.py
- # Recording the creation timestamps introduces indeterminism to the build
- sed -i '/Created: .*/d' electrum/gui/qt/icons_rc.py
sed -i "s|name = 'libzbar.*'|name='${zbar}/lib/libzbar.so'|" electrum/qrscanner.py
substituteInPlace ./electrum/ecc_fast.py --replace libsecp256k1.so.0 ${secp256k1}/lib/libsecp256k1.so.0
'';
diff --git a/pkgs/applications/misc/haxor-news/default.nix b/pkgs/applications/misc/haxor-news/default.nix
index e09e65738e5..7353078600d 100644
--- a/pkgs/applications/misc/haxor-news/default.nix
+++ b/pkgs/applications/misc/haxor-news/default.nix
@@ -38,7 +38,7 @@ buildPythonApplication rec {
homepage = https://github.com/donnemartin/haxor-news;
description = "Browse Hacker News like a haxor";
license = licenses.asl20;
- maintainers = with maintainers; [ ];
+ maintainers = with maintainers; [ matthiasbeyer ];
};
}
diff --git a/pkgs/applications/misc/hr/default.nix b/pkgs/applications/misc/hr/default.nix
index 6b0926db047..2fd56e3c555 100644
--- a/pkgs/applications/misc/hr/default.nix
+++ b/pkgs/applications/misc/hr/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
homepage = https://github.com/LuRsT/hr;
description = "A horizontal bar for your terminal";
license = licenses.mit;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
platforms = platforms.unix;
};
}
diff --git a/pkgs/applications/misc/hstr/default.nix b/pkgs/applications/misc/hstr/default.nix
index 026cf9ecc14..1eae8c57fc4 100644
--- a/pkgs/applications/misc/hstr/default.nix
+++ b/pkgs/applications/misc/hstr/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
homepage = https://github.com/dvorka/hstr;
description = "Shell history suggest box - easily view, navigate, search and use your command history";
license = stdenv.lib.licenses.asl20;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
platforms = with stdenv.lib.platforms; linux; # Cannot test others
};
diff --git a/pkgs/applications/misc/khard/default.nix b/pkgs/applications/misc/khard/default.nix
index d6e05056e1c..61eb959a1dd 100644
--- a/pkgs/applications/misc/khard/default.nix
+++ b/pkgs/applications/misc/khard/default.nix
@@ -50,6 +50,6 @@ in with python.pkgs; buildPythonApplication rec {
homepage = https://github.com/scheibler/khard;
description = "Console carddav client";
license = stdenv.lib.licenses.gpl3;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
};
}
diff --git a/pkgs/applications/misc/mdp/default.nix b/pkgs/applications/misc/mdp/default.nix
index cd7bdd1fe7e..6c58dde00d3 100644
--- a/pkgs/applications/misc/mdp/default.nix
+++ b/pkgs/applications/misc/mdp/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = https://github.com/visit1985/mdp;
description = "A command-line based markdown presentation tool";
- maintainers = with maintainers; [ vrthra ];
+ maintainers = with maintainers; [ matthiasbeyer vrthra ];
license = licenses.gpl3;
platforms = with platforms; unix;
};
diff --git a/pkgs/applications/misc/mwic/default.nix b/pkgs/applications/misc/mwic/default.nix
index d1538261939..c08a21e8797 100644
--- a/pkgs/applications/misc/mwic/default.nix
+++ b/pkgs/applications/misc/mwic/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
homepage = http://jwilk.net/software/mwic;
description = "spell-checker that groups possible misspellings and shows them in their contexts";
license = licenses.mit;
- maintainers = with maintainers; [ ];
+ maintainers = with maintainers; [ matthiasbeyer ];
};
}
diff --git a/pkgs/applications/misc/rtv/default.nix b/pkgs/applications/misc/rtv/default.nix
index 05b19bbbff9..38b2d4ece4d 100644
--- a/pkgs/applications/misc/rtv/default.nix
+++ b/pkgs/applications/misc/rtv/default.nix
@@ -41,6 +41,6 @@ buildPythonApplication rec {
homepage = https://github.com/michael-lazar/rtv;
description = "Browse Reddit from your Terminal";
license = licenses.mit;
- maintainers = with maintainers; [ jgeerds wedens ];
+ maintainers = with maintainers; [ matthiasbeyer jgeerds wedens ];
};
}
diff --git a/pkgs/applications/misc/sigal/default.nix b/pkgs/applications/misc/sigal/default.nix
index a10b58d00b6..978ac2b7035 100644
--- a/pkgs/applications/misc/sigal/default.nix
+++ b/pkgs/applications/misc/sigal/default.nix
@@ -29,6 +29,6 @@ python3Packages.buildPythonApplication rec {
description = "Yet another simple static gallery generator";
homepage = http://sigal.saimon.org/en/latest/index.html;
license = licenses.mit;
- maintainers = with maintainers; [ domenkozar ];
+ maintainers = with maintainers; [ domenkozar matthiasbeyer ];
};
}
diff --git a/pkgs/applications/misc/stag/default.nix b/pkgs/applications/misc/stag/default.nix
index 6d6382faccd..ebb50e685da 100644
--- a/pkgs/applications/misc/stag/default.nix
+++ b/pkgs/applications/misc/stag/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
homepage = https://github.com/seenaburns/stag;
description = "Terminal streaming bar graph passed through stdin";
license = stdenv.lib.licenses.bsdOriginal;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
platforms = stdenv.lib.platforms.unix;
};
}
diff --git a/pkgs/applications/misc/tasknc/default.nix b/pkgs/applications/misc/tasknc/default.nix
index bf0e964d591..7ca421b49a3 100644
--- a/pkgs/applications/misc/tasknc/default.nix
+++ b/pkgs/applications/misc/tasknc/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = https://github.com/lharding/tasknc;
description = "A ncurses wrapper around taskwarrior";
- maintainers = with maintainers; [ infinisil ];
+ maintainers = with maintainers; [ matthiasbeyer infinisil ];
platforms = platforms.linux; # Cannot test others
license = licenses.mit;
};
diff --git a/pkgs/applications/misc/tasksh/default.nix b/pkgs/applications/misc/tasksh/default.nix
index dac447edd7d..6a30adb23da 100644
--- a/pkgs/applications/misc/tasksh/default.nix
+++ b/pkgs/applications/misc/tasksh/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
description = "REPL for taskwarrior";
homepage = http://tasktools.org;
license = licenses.mit;
- maintainers = with maintainers; [ ];
+ maintainers = with maintainers; [ matthiasbeyer ];
platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/misc/timewarrior/default.nix b/pkgs/applications/misc/timewarrior/default.nix
index 4ca7a86e6f7..ca049ba04c9 100644
--- a/pkgs/applications/misc/timewarrior/default.nix
+++ b/pkgs/applications/misc/timewarrior/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
description = "A command-line time tracker";
homepage = https://taskwarrior.org/docs/timewarrior;
license = licenses.mit;
- maintainers = with maintainers; [ mrVanDalo ];
+ maintainers = with maintainers; [ matthiasbeyer mrVanDalo ];
platforms = platforms.linux ++ platforms.darwin;
};
}
diff --git a/pkgs/applications/misc/toot/default.nix b/pkgs/applications/misc/toot/default.nix
index c6ee7508890..127d9f21d99 100644
--- a/pkgs/applications/misc/toot/default.nix
+++ b/pkgs/applications/misc/toot/default.nix
@@ -24,7 +24,7 @@ python3Packages.buildPythonApplication rec {
description = "Mastodon CLI interface";
homepage = "https://github.com/ihabunek/toot";
license = licenses.mit;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
};
}
diff --git a/pkgs/applications/misc/weather/default.nix b/pkgs/applications/misc/weather/default.nix
index 544c1252ff4..90fa0166154 100644
--- a/pkgs/applications/misc/weather/default.nix
+++ b/pkgs/applications/misc/weather/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
homepage = http://fungi.yuggoth.org/weather;
description = "Quick access to current weather conditions and forecasts";
license = stdenv.lib.licenses.isc;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
platforms = with stdenv.lib.platforms; linux; # my only platform
};
}
diff --git a/pkgs/applications/misc/xmr-stak/default.nix b/pkgs/applications/misc/xmr-stak/default.nix
index 0fb2cec2916..6878bc5ab03 100644
--- a/pkgs/applications/misc/xmr-stak/default.nix
+++ b/pkgs/applications/misc/xmr-stak/default.nix
@@ -12,13 +12,13 @@ in
stdenv'.mkDerivation rec {
name = "xmr-stak-${version}";
- version = "2.7.1";
+ version = "2.8.2";
src = fetchFromGitHub {
owner = "fireice-uk";
repo = "xmr-stak";
rev = "${version}";
- sha256 = "1mlli8sx1f3922ygnwakmi2h3swccz62njxbzxfzbi4hlmvsaz0y";
+ sha256 = "0z0fdh5fmiisx5dgfyyin3ddl8g28fpd64gn8nl8dd6sf3iw8z7p";
};
NIX_CFLAGS_COMPILE = "-O3";
diff --git a/pkgs/applications/misc/yaft/default.nix b/pkgs/applications/misc/yaft/default.nix
index 0794b2b6dbe..d273d27944a 100644
--- a/pkgs/applications/misc/yaft/default.nix
+++ b/pkgs/applications/misc/yaft/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
homepage = https://github.com/uobikiemukot/yaft;
description = "Yet another framebuffer terminal";
license = stdenv.lib.licenses.mit;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
platforms = with stdenv.lib.platforms; linux;
};
}
diff --git a/pkgs/applications/misc/zathura/default.nix b/pkgs/applications/misc/zathura/default.nix
index e67bebb3710..315df563946 100644
--- a/pkgs/applications/misc/zathura/default.nix
+++ b/pkgs/applications/misc/zathura/default.nix
@@ -1,4 +1,6 @@
-{ pkgs, useMupdf ? true, synctexSupport ? true }:
+{ config, pkgs
+, useMupdf ? config.zathura.useMupdf or true
+, synctexSupport ? true }:
let
callPackage = pkgs.newScope self;
diff --git a/pkgs/applications/misc/zola/default.nix b/pkgs/applications/misc/zola/default.nix
index bdf6d0da145..d4afe4ea9e1 100644
--- a/pkgs/applications/misc/zola/default.nix
+++ b/pkgs/applications/misc/zola/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
name = "zola-${version}";
- version = "0.5.0";
+ version = "0.5.1";
src = fetchFromGitHub {
owner = "getzola";
repo = "zola";
rev = "v${version}";
- sha256 = "0as8nrzw9zz10w4xxiibgz8ylghc879b2pwaxnw8sjbji2d9qv63";
+ sha256 = "1jj6yfb3qkfq3nwcxfrc7k1gqyls873imxgpifbwjx9slg6ssis9";
};
- cargoSha256 = "0a14hq8d3xjr6yfg5qn5r7npqivm816f1p53bbm826igvpc9hsxa";
+ cargoSha256 = "1hn2l25fariidgdr32mfx2yqb3g8xk4qafs614bdjiyvfrb7j752";
nativeBuildInputs = [ cmake pkgconfig openssl ];
buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices cf-private ];
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index ad145583d49..b604453bb46 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -13,11 +13,11 @@
stdenv.mkDerivation rec {
name = "${product}-${version}";
product = "vivaldi";
- version = "2.3.1440.41-1";
+ version = "2.3.1440.48-1";
src = fetchurl {
url = "https://downloads.vivaldi.com/stable/${product}-stable_${version}_amd64.deb";
- sha256 = "0wrq7c0sw1b41bshwgzji4pwl0raj0l5h2r7gkcg952rcn0wl9bs";
+ sha256 = "0zc9080np82qqqrfavg78vbjfl7w1b4p7f3s6h5wga9f6w1m078c";
};
unpackPhase = ''
diff --git a/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix b/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
index b303bf2188b..831ddddd2a1 100644
--- a/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix
@@ -6,11 +6,11 @@
stdenv.mkDerivation rec {
name = "${product}-${version}";
product = "vivaldi-ffmpeg-codecs";
- version = "72.0.3626.96";
+ version = "72.0.3626.109";
src = fetchurl {
url = "https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${version}.tar.xz";
- sha512 = "2hawkyydcd0b6ipfigkf5n6c1ha1vknaqd4mgw381pi0ayq8skxbjazqabfcg9gcj84cnksi8j4dylfcrbgrmlnmc479fix0m0xx7cl";
+ sha512 = "0ffpzvamrzw71vfi12sdwqrxc42bhraai21zzx8rp5n12794rr687dzw9hn3735sc0h2bq7c59zc4hcx3ighr2i93iplz35hp883dhy";
};
buildInputs = [ ];
diff --git a/pkgs/applications/networking/cluster/minishift/default.nix b/pkgs/applications/networking/cluster/minishift/default.nix
index de11a116533..bb10349470f 100644
--- a/pkgs/applications/networking/cluster/minishift/default.nix
+++ b/pkgs/applications/networking/cluster/minishift/default.nix
@@ -4,7 +4,7 @@
}:
let
- version = "1.30.0";
+ version = "1.31.0";
# Update these on version bumps according to Makefile
centOsIsoVersion = "v1.14.0";
@@ -18,7 +18,7 @@ in buildGoPackage rec {
owner = "minishift";
repo = "minishift";
rev = "v${version}";
- sha256 = "0p7g7r4m3brssy2znw7pd60aph6m6absqy23x88c07n5n4mv9wj8";
+ sha256 = "0v5hngfz393yi3x4c328g5bjazw02jr59ljqh6ws0j6wzxzm8jxf";
};
nativeBuildInputs = [ pkgconfig go-bindata makeWrapper ];
@@ -28,9 +28,6 @@ in buildGoPackage rec {
subPackages = [ "cmd/minishift" ];
postPatch = ''
- substituteInPlace vendor/github.com/containers/image/storage/storage_image.go \
- --replace 'nil, diff' 'diff'
-
# minishift downloads openshift if not found therefore set the cache to /nix/store/...
substituteInPlace pkg/minishift/cache/oc_caching.go \
--replace 'filepath.Join(oc.MinishiftCacheDir, OC_CACHE_DIR, oc.OpenShiftVersion, runtime.GOOS)' '"${openshift}/bin"' \
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index d52d8b6b31e..6bdade7198a 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -10,6 +10,7 @@
, rubySupport ? true, ruby
, tclSupport ? true, tcl
, extraBuildInputs ? []
+, fetchpatch
}:
let
@@ -27,14 +28,22 @@ let
in
assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
stdenv.mkDerivation rec {
- version = "2.3";
+ version = "2.4";
name = "weechat-${version}";
src = fetchurl {
url = "https://weechat.org/files/src/weechat-${version}.tar.bz2";
- sha256 = "0mi4pfnyny0vqc35r0scn6yy21y790a5iwq8ms7kch7b7z11jn9w";
+ sha256 = "1z80y5fbrb56wdcx9njrf203r8282wnn3piw3yffk5lvhklsz9k1";
};
+ patches = [
+ (fetchpatch {
+ url = https://github.com/weechat/weechat/commit/6a9937f08ad2c14aeb0a847ffb99e652d47d8251.patch;
+ sha256 = "1blhgxwqs65dvpw3ppxszxrsg02rx7qck1w71h61ljinyjzri3bp";
+ excludes = [ "ChangeLog.adoc" ];
+ })
+ ];
+
outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
enableParallelBuilding = true;
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index 47a104b252c..34361e1dab9 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, wrapGAppsHook, autoreconfHook
+{ config, fetchurl, stdenv, wrapGAppsHook, autoreconfHook
, curl, dbus, dbus-glib, enchant, gtk2, gnutls, gnupg, gpgme, hicolor-icon-theme
, libarchive, libcanberra-gtk2, libetpan, libnotify, libsoup, libxml2, networkmanager
, openldap, perl, pkgconfig, poppler, python, shared-mime-info, webkitgtk24x-gtk2
@@ -10,7 +10,7 @@
# gdata requires libgdata
# geolocation requires libchamplain
, enableLdap ? false
-, enableNetworkManager ? false
+, enableNetworkManager ? config.networking.networkmanager.enable or false
, enablePgp ? true
, enablePluginArchive ? false
, enablePluginFancy ? false
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 106be4fddc4..2fff46a1737 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -12,7 +12,7 @@
with stdenv.lib;
stdenv.mkDerivation rec {
- version = "0.28.1";
+ version = "0.28.2";
name = "notmuch-${version}";
passthru = {
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://notmuchmail.org/releases/${name}.tar.gz";
- sha256 = "0mcsfkrp6mpy374m5rwwgm9md8qzvwa3s4rbzid4cnkx2cwfj4fi";
+ sha256 = "0cg9ff7h7mklgbqqknxigxxx1j3p3s2a9cxvrs5ih7j56f04k9l5";
};
nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/office/beancount/bean-add.nix b/pkgs/applications/office/beancount/bean-add.nix
index cfd7a4eda20..9eec315217c 100644
--- a/pkgs/applications/office/beancount/bean-add.nix
+++ b/pkgs/applications/office/beancount/bean-add.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
# The (only) source file states:
# License: "Do what you feel is right, but don't be a jerk" public license.
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
};
}
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index 6f0fcca480a..5459859150c 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -32,6 +32,6 @@ buildPythonApplication rec {
homepage = https://beancount.github.io/fava;
description = "Web interface for beancount";
license = stdenv.lib.licenses.mit;
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
};
}
diff --git a/pkgs/applications/office/wordgrinder/default.nix b/pkgs/applications/office/wordgrinder/default.nix
index 8efe9b368a0..be5ac7a2f2b 100644
--- a/pkgs/applications/office/wordgrinder/default.nix
+++ b/pkgs/applications/office/wordgrinder/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
description = "Text-based word processor";
homepage = https://cowlark.com/wordgrinder;
license = licenses.mit;
- maintainers = with maintainers; [ ];
+ maintainers = with maintainers; [ matthiasbeyer ];
platforms = with stdenv.lib.platforms; linux ++ darwin;
};
}
diff --git a/pkgs/applications/science/logic/alt-ergo/default.nix b/pkgs/applications/science/logic/alt-ergo/default.nix
index 794430ebbe8..234b7474997 100644
--- a/pkgs/applications/science/logic/alt-ergo/default.nix
+++ b/pkgs/applications/science/logic/alt-ergo/default.nix
@@ -1,17 +1,20 @@
-{ fetchurl, stdenv, ocamlPackages }:
+{ fetchurl, stdenv, which, dune, ocamlPackages }:
stdenv.mkDerivation rec {
name = "alt-ergo-${version}";
- version = "2.2.0";
+ version = "2.3.0";
src = fetchurl {
url = "https://alt-ergo.ocamlpro.com/download_manager.php?target=${name}.tar.gz";
name = "${name}.tar.gz";
- sha256 = "106zfgisq6qxr7dlk8z7gi68ly7qff4frn8wab2g8z2nkkwla92w";
+ sha256 = "1ycr3ff0gacq1aqzs16n6swgfniwpim0m7rvhcam64kj0a80c6bz";
};
- buildInputs = with ocamlPackages;
- [ ocaml findlib camlzip ocamlgraph zarith lablgtk ocplib-simplex psmt2-frontend menhir num ];
+ buildInputs = [ dune which ] ++ (with ocamlPackages; [
+ ocaml findlib camlzip lablgtk menhir num ocplib-simplex psmt2-frontend seq zarith
+ ]);
+
+ preConfigure = "patchShebangs ./configure";
meta = {
description = "High-performance theorem prover and SMT solver";
diff --git a/pkgs/applications/science/machine-learning/sc2-headless/default.nix b/pkgs/applications/science/machine-learning/sc2-headless/default.nix
index cd9cf6dafd1..ced075ff432 100644
--- a/pkgs/applications/science/machine-learning/sc2-headless/default.nix
+++ b/pkgs/applications/science/machine-learning/sc2-headless/default.nix
@@ -1,9 +1,9 @@
-{ stdenv
+{ config, stdenv
, callPackage
, lib
, fetchurl
, unzip
-, licenseAccepted ? false
+, licenseAccepted ? config.sc2-headless.accept_license or false
}:
if !licenseAccepted then throw ''
diff --git a/pkgs/applications/science/math/caffe/default.nix b/pkgs/applications/science/math/caffe/default.nix
index 4e8829f7e31..9ee56041ed3 100644
--- a/pkgs/applications/science/math/caffe/default.nix
+++ b/pkgs/applications/science/math/caffe/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, runCommand
+{ config, stdenv, lib, runCommand
, fetchFromGitHub
, fetchurl
, cmake
@@ -13,8 +13,8 @@
, Accelerate, CoreGraphics, CoreVideo
, lmdbSupport ? true, lmdb
, leveldbSupport ? true, leveldb, snappy
-, cudaSupport ? stdenv.isLinux, cudatoolkit
-, cudnnSupport ? false, cudnn ? null
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
+, cudnnSupport ? cudaSupport, cudnn ? null
, ncclSupport ? false, nccl ? null
, pythonSupport ? false, python ? null, numpy ? null
, substituteAll
diff --git a/pkgs/applications/science/math/cntk/default.nix b/pkgs/applications/science/math/cntk/default.nix
index fe5c77be8b2..4bf922c4e16 100644
--- a/pkgs/applications/science/math/cntk/default.nix
+++ b/pkgs/applications/science/math/cntk/default.nix
@@ -1,8 +1,8 @@
-{ lib, stdenv, fetchgit, fetchFromGitHub, cmake
+{ config, lib, stdenv, fetchgit, fetchFromGitHub, cmake
, openblas, opencv3, libzip, boost, protobuf, openmpi
, onebitSGDSupport ? false
-, cudaSupport ? false, cudatoolkit, nvidia_x11
-, cudnnSupport ? false, cudnn
+, cudaSupport ? config.cudaSupport or false, cudatoolkit, nvidia_x11
+, cudnnSupport ? cudaSupport, cudnn
}:
assert cudnnSupport -> cudaSupport;
diff --git a/pkgs/applications/science/math/mxnet/default.nix b/pkgs/applications/science/math/mxnet/default.nix
index 990d3f1a5d5..061f48bb3d9 100644
--- a/pkgs/applications/science/math/mxnet/default.nix
+++ b/pkgs/applications/science/math/mxnet/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, lib, fetchurl, bash, cmake
+{ config, stdenv, lib, fetchurl, bash, cmake
, opencv, gtest, openblas, liblapack, perl
-, cudaSupport ? false, cudatoolkit, nvidia_x11
-, cudnnSupport ? false, cudnn
+, cudaSupport ? config.cudaSupport or false, cudatoolkit, nvidia_x11
+, cudnnSupport ? cudaSupport, cudnn
}:
assert cudnnSupport -> cudaSupport;
diff --git a/pkgs/applications/version-management/bugseverywhere/default.nix b/pkgs/applications/version-management/bugseverywhere/default.nix
index 7c41a60a725..6301acdf134 100644
--- a/pkgs/applications/version-management/bugseverywhere/default.nix
+++ b/pkgs/applications/version-management/bugseverywhere/default.nix
@@ -28,7 +28,7 @@ pythonPackages.buildPythonApplication rec {
homepage = http://www.bugseverywhere.org/;
license = licenses.gpl2Plus;
platforms = platforms.all;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
};
}
diff --git a/pkgs/applications/version-management/git-and-tools/git-dit/default.nix b/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
index 9c362276383..473f0b1c450 100644
--- a/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
@@ -49,6 +49,6 @@ buildRustPackage rec {
inherit (src.meta) homepage;
description = "Decentralized Issue Tracking for git";
license = licenses.gpl2;
- maintainers = with maintainers; [ Profpatsch ];
+ maintainers = with maintainers; [ Profpatsch matthiasbeyer ];
};
}
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index b5a5a9feb76..3298bc16751 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,32 +1,32 @@
{
"ce": {
- "version": "11.7.4",
- "repo_hash": "0qq9snykdlpkpbznwpkv0n7bz1rsgz4z7lcjl4xkjxkf2gkf8pxp",
- "deb_hash": "1j76jya0ydyg7v3vcdfjmcr5ir23yzdwmg9fxlirvgh74py7q85c",
- "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.7.4-ce.0_amd64.deb/download.deb",
+ "version": "11.7.5",
+ "repo_hash": "0bbyx9zmscf9273fgypb82gw166psy7d3p7dnwb6f5r9yz7rmhbn",
+ "deb_hash": "1m6hdvrz467q33z626l9f3d5pssl0bbj2hkqy5g0b05wvdznmldy",
+ "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.7.5-ce.0_amd64.deb/download.deb",
"owner": "gitlab-org",
"repo": "gitlab-ce",
- "rev": "v11.7.4",
+ "rev": "v11.7.5",
"passthru": {
"GITALY_SERVER_VERSION": "1.12.2",
"GITLAB_PAGES_VERSION": "1.3.1",
"GITLAB_SHELL_VERSION": "8.4.4",
- "GITLAB_WORKHORSE_VERSION": "8.0.1"
+ "GITLAB_WORKHORSE_VERSION": "8.0.2"
}
},
"ee": {
- "version": "11.7.4",
- "repo_hash": "0riqww094ylbbwb9mhjpsqhrdpxlcf6rc5p796p7x7f46p31mcjb",
- "deb_hash": "02hnhhyrm4a3lgwnl399byka2dr5q3pjirki447373270ca93h5i",
- "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.7.4-ee.0_amd64.deb/download.deb",
+ "version": "11.7.5",
+ "repo_hash": "05dzvqrdgxbzsrf9rbis5m3iic04midx2arxgg3g4f78qfjxzylm",
+ "deb_hash": "1nfd68vzy3zc6a3xn5lhr83kqv9d7aaxvzv4ca9awcz4va5b33kc",
+ "deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.7.5-ee.0_amd64.deb/download.deb",
"owner": "gitlab-org",
"repo": "gitlab-ee",
- "rev": "v11.7.4-ee",
+ "rev": "v11.7.5-ee",
"passthru": {
"GITALY_SERVER_VERSION": "1.12.2",
"GITLAB_PAGES_VERSION": "1.3.1",
"GITLAB_SHELL_VERSION": "8.4.4",
- "GITLAB_WORKHORSE_VERSION": "8.0.1"
+ "GITLAB_WORKHORSE_VERSION": "8.0.2"
}
}
}
\ No newline at end of file
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 96ea361a254..ad3b11f3b2c 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "gitlab-workhorse-${version}";
- version = "8.0.1";
+ version = "8.0.2";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-workhorse";
rev = "v${version}";
- sha256 = "1aslcadag1q2rdirf9m0dl5vfaz8v3yy1232mvyjyvy1wb51pf4q";
+ sha256 = "12xwr9yl59i58gnf0yn5yjp7zwz3s46042lk7rihvvzsa0kax690";
};
buildInputs = [ git go ];
diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix
index 07474c5e52c..b17ba7e19f4 100644
--- a/pkgs/applications/video/handbrake/default.nix
+++ b/pkgs/applications/video/handbrake/default.nix
@@ -29,12 +29,12 @@
}:
stdenv.mkDerivation rec {
- version = "1.2.0";
- name = "handbrake-${version}";
+ pname = "handbrake";
+ version = "1.2.1";
src = fetchurl {
url = ''https://download2.handbrake.fr/${version}/HandBrake-${version}-source.tar.bz2'';
- sha256 = "03clkknaq3mz84p85cvr21gsy9b8vv2g4vvyfz44hz8la253jfqi";
+ sha256 = "0gbqzar49c8ygz6chnsz65xgsdcwr60lbc8ivnw8i6xjggn6wc80";
};
nativeBuildInputs = [
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index ffbaa9fffdf..66fc1645e9a 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchurl, fetchFromGitHub, makeWrapper
+{ config, stdenv, fetchurl, fetchFromGitHub, makeWrapper
, docutils, perl, pkgconfig, python3, which, ffmpeg_4
, freefont_ttf, freetype, libass, libpthreadstubs, mujs
, lua, libuchardet, libiconv ? null, darwin
-, waylandSupport ? false
+, waylandSupport ? stdenv.isLinux
, wayland ? null
, wayland-protocols ? null
, libxkbcommon ? null
@@ -24,30 +24,30 @@
, vulkan-headers ? null
, vulkan-loader ? null
-, alsaSupport ? true, alsaLib ? null
-, bluraySupport ? true, libbluray ? null
-, bs2bSupport ? true, libbs2b ? null
-, cacaSupport ? true, libcaca ? null
-, cmsSupport ? true, lcms2 ? null
-, drmSupport ? true, libdrm ? null
-, dvdnavSupport ? true, libdvdnav ? null
-, dvdreadSupport ? true, libdvdread ? null
-, libpngSupport ? true, libpng ? null
-, pulseSupport ? true, libpulseaudio ? null
-, rubberbandSupport ? true, rubberband ? null
-, screenSaverSupport ? true, libXScrnSaver ? null
-, sdl2Support ? true, SDL2 ? null
-, speexSupport ? true, speex ? null
-, theoraSupport ? true, libtheora ? null
-, vaapiSupport ? true, libva ? null
-, vdpauSupport ? true, libvdpau ? null
-, xineramaSupport ? true, libXinerama ? null
-, xvSupport ? true, libXv ? null
-, youtubeSupport ? true, youtube-dl ? null
-, archiveSupport ? false, libarchive ? null
-, jackaudioSupport ? false, libjack2 ? null
-, openalSupport ? false, openalSoft ? null
-, vapoursynthSupport ? false, vapoursynth ? null
+, alsaSupport ? stdenv.isLinux, alsaLib ? null
+, bluraySupport ? true, libbluray ? null
+, bs2bSupport ? true, libbs2b ? null
+, cacaSupport ? true, libcaca ? null
+, cmsSupport ? true, lcms2 ? null
+, drmSupport ? stdenv.isLinux, libdrm ? null
+, dvdnavSupport ? stdenv.isLinux, libdvdnav ? null
+, dvdreadSupport ? stdenv.isLinux, libdvdread ? null
+, libpngSupport ? true, libpng ? null
+, pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
+, rubberbandSupport ? stdenv.isLinux, rubberband ? null
+, screenSaverSupport ? true, libXScrnSaver ? null
+, sdl2Support ? true, SDL2 ? null
+, speexSupport ? true, speex ? null
+, theoraSupport ? true, libtheora ? null
+, vaapiSupport ? stdenv.isLinux, libva ? null
+, vdpauSupport ? true, libvdpau ? null
+, xineramaSupport ? stdenv.isLinux, libXinerama ? null
+, xvSupport ? stdenv.isLinux, libXv ? null
+, youtubeSupport ? true, youtube-dl ? null
+, archiveSupport ? false, libarchive ? null
+, jackaudioSupport ? false, libjack2 ? null
+, openalSupport ? false, openalSoft ? null
+, vapoursynthSupport ? false, vapoursynth ? null
}:
with stdenv.lib;
@@ -92,7 +92,7 @@ let
"http://www.freehackers.org/~tnagy/release/waf-${wafVersion}" ];
sha256 = "0j7sbn3w6bgslvwwh5v9527w3gi2sd08kskrgxamx693y0b0i3ia";
};
- luaEnv = lua.withPackages(ps: with ps; [ luasocket]);
+ luaEnv = lua.withPackages(ps: with ps; [ luasocket ]);
in stdenv.mkDerivation rec {
name = "mpv-${version}";
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index 579d5566f13..7211f9ff3d1 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -1,4 +1,4 @@
-{ stdenv
+{ config, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
@@ -26,9 +26,9 @@
, swig
, python3
-, alsaSupport ? false
+, alsaSupport ? stdenv.isLinux
, alsaLib
-, pulseaudioSupport ? false
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
, libpulseaudio
}:
diff --git a/pkgs/applications/virtualization/dynamips/default.nix b/pkgs/applications/virtualization/dynamips/default.nix
index 4499fff4dc8..9419939d1c7 100644
--- a/pkgs/applications/virtualization/dynamips/default.nix
+++ b/pkgs/applications/virtualization/dynamips/default.nix
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "dynamips";
- version = "0.2.19";
+ version = "0.2.20";
src = fetchFromGitHub {
owner = "GNS3";
repo = pname;
rev = "v${version}";
- sha256 = "0x63m37vjyp57900x09gfvw02cwg85b33918x7fjj9x37wgmi5qf";
+ sha256 = "1841h0m0k0p3c3ify4imafjk7jigcj2zlr8rn3iyp7jnafkxqik7";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/virtualization/firecracker/default.nix b/pkgs/applications/virtualization/firecracker/default.nix
index e1696fc15a5..f277bafa214 100644
--- a/pkgs/applications/virtualization/firecracker/default.nix
+++ b/pkgs/applications/virtualization/firecracker/default.nix
@@ -1,7 +1,7 @@
{ fetchurl, stdenv }:
let
- version = "0.13.0";
+ version = "0.14.0";
baseurl = "https://github.com/firecracker-microvm/firecracker/releases/download";
fetchbin = name: sha256: fetchurl {
@@ -9,8 +9,8 @@ let
inherit sha256;
};
- firecracker-bin = fetchbin "firecracker" "1wdcy4vmnx216jnza7bz6czlqpsjrnpqfsb5d322ld4gzbylm718";
- jailer-bin = fetchbin "jailer" "0k0sc5138bh35ciim2l78ma9g5x18dw098f2ar5y31ybr8i4q60y";
+ firecracker-bin = fetchbin "firecracker" "02d7s2hzhl13k5linlav7yc4kg9v70sccc3ysfgaqq8hz7zfqywg";
+ jailer-bin = fetchbin "jailer" "120n14zjnm21s39dza99p003bn5n0n5fzcyaw4l6laq336r24gvi";
in
stdenv.mkDerivation {
name = "firecracker-${version}";
diff --git a/pkgs/applications/window-managers/xmonad/log-applet/default.nix b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
index 57f00887103..f7ccda27389 100644
--- a/pkgs/applications/window-managers/xmonad/log-applet/default.nix
+++ b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, glib, dbus-glib
-, desktopSupport, xorg
+, desktopSupport ? "gnomeflashback", xorg
, gtk2
, gtk3, gnome3, mate
, libxfce4util, xfce4-panel
diff --git a/pkgs/build-support/bintools-wrapper/default.nix b/pkgs/build-support/bintools-wrapper/default.nix
index 4122af898de..142f5255caa 100644
--- a/pkgs/build-support/bintools-wrapper/default.nix
+++ b/pkgs/build-support/bintools-wrapper/default.nix
@@ -187,6 +187,7 @@ stdenv.mkDerivation {
else if targetPlatform.isPower then if targetPlatform.isBigEndian then "ppc" else "lppc"
else if targetPlatform.isSparc then "sparc"
else if targetPlatform.isAvr then "avr"
+ else if targetPlatform.isAlpha then "alpha"
else throw "unknown emulation for platform: " + targetPlatform.config;
in targetPlatform.platform.bfdEmulation or (fmt + sep + arch);
diff --git a/pkgs/build-support/build-bazel-package/default.nix b/pkgs/build-support/build-bazel-package/default.nix
index 931b68c6329..f39f4e65e45 100644
--- a/pkgs/build-support/build-bazel-package/default.nix
+++ b/pkgs/build-support/build-bazel-package/default.nix
@@ -33,7 +33,9 @@ in stdenv.mkDerivation (fBuildAttrs // {
# sandbox enabled. Code here
# https://github.com/bazelbuild/bazel/blob/9323c57607d37f9c949b60e293b573584906da46/src/main/cpp/startup_options.cc#L123-L124
#
- USER=homeless-shelter bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" fetch $bazelFlags $bazelTarget
+ # On macOS Bazel will use the system installed Xcode or CLT toolchain instead of the one in the PATH unless we pass BAZEL_USE_CPP_ONLY_TOOLCHAIN
+ #
+ BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 USER=homeless-shelter bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" fetch $bazelFlags $bazelTarget
runHook postBuild
'';
@@ -90,7 +92,42 @@ in stdenv.mkDerivation (fBuildAttrs // {
buildPhase = fBuildAttrs.buildPhase or ''
runHook preBuild
- bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" build -j $NIX_BUILD_CORES $bazelFlags $bazelTarget
+ # Bazel sandboxes the execution of the tools it invokes, so even though we are
+ # calling the correct nix wrappers, the values of the environment variables
+ # the wrappers are expecting will not be set. So instead of relying on the
+ # wrappers picking them up, pass them in explicitly via `--copt`, `--linkopt`
+ # and related flags.
+ #
+ copts=()
+ host_copts=()
+ for flag in $NIX_CFLAGS_COMPILE; do
+ copts+=( "--copt=$flag" )
+ host_copts+=( "--host_copt=$flag" )
+ done
+ for flag in $NIX_CXXSTDLIB_COMPILE; do
+ copts+=( "--copt=$flag" )
+ host_copts+=( "--host_copt=$flag" )
+ done
+ linkopts=()
+ host_linkopts=()
+ for flag in $NIX_LD_FLAGS; do
+ linkopts+=( "--linkopt=$flag" )
+ host_linkopts+=( "--host_linkopt=$flag" )
+ done
+
+ BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
+ USER=homeless-shelter \
+ bazel \
+ --output_base="$bazelOut" \
+ --output_user_root="$bazelUserRoot" \
+ build \
+ -j $NIX_BUILD_CORES \
+ "''${copts[@]}" \
+ "''${host_copts[@]}" \
+ "''${linkopts[@]}" \
+ "''${host_linkopts[@]}" \
+ $bazelFlags \
+ $bazelTarget
runHook postBuild
'';
diff --git a/pkgs/build-support/fetchsvn/default.nix b/pkgs/build-support/fetchsvn/default.nix
index 194ce3b39b1..68433d1471d 100644
--- a/pkgs/build-support/fetchsvn/default.nix
+++ b/pkgs/build-support/fetchsvn/default.nix
@@ -1,4 +1,4 @@
-{stdenvNoCC, subversion, glibcLocales, sshSupport ? false, openssh ? null}:
+{stdenvNoCC, subversion, glibcLocales, sshSupport ? true, openssh ? null}:
{url, rev ? "HEAD", md5 ? "", sha256 ? ""
, ignoreExternals ? false, ignoreKeywords ? false, name ? null
, preferLocalBuild ? true }:
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
index 541b30ec1b3..80153332934 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
description = "Mailwatch plugin for Xfce panel";
platforms = platforms.linux;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
};
}
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
index 5331c29a454..8a602b8b4a1 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
description = "MPD plugin for Xfce panel";
platforms = platforms.linux;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
};
}
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
index 57cd48c6f27..73ab7782ebd 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
@@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
description = "A simple XFCE panel plugin that lets the user run an alarm at a specified time or at the end of a specified countdown period";
platforms = platforms.linux;
license = licenses.gpl2;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
};
}
diff --git a/pkgs/development/compilers/coreclr/default.nix b/pkgs/development/compilers/coreclr/default.nix
index 05958d52336..8be482e2150 100644
--- a/pkgs/development/compilers/coreclr/default.nix
+++ b/pkgs/development/compilers/coreclr/default.nix
@@ -1,4 +1,4 @@
-{ stdenv
+{ config, stdenv
, fetchFromGitHub
, fetchpatch
, which
@@ -14,7 +14,7 @@
, liburcu
, libuuid
, libkrb5
-, debug ? false
+, debug ? config.coreclr.debug or false
}:
stdenv.mkDerivation rec {
diff --git a/pkgs/development/compilers/gnu-smalltalk/default.nix b/pkgs/development/compilers/gnu-smalltalk/default.nix
index 39d1652fc70..41c325c2b1a 100644
--- a/pkgs/development/compilers/gnu-smalltalk/default.nix
+++ b/pkgs/development/compilers/gnu-smalltalk/default.nix
@@ -1,5 +1,7 @@
-{ stdenv, fetchurl, pkgconfig, libtool, zip, libffi, libsigsegv, readline, gmp,
-gnutls, gnome2, cairo, SDL, sqlite, emacsSupport ? false, emacs ? null }:
+{ config, stdenv, fetchurl, pkgconfig, libtool
+, zip, libffi, libsigsegv, readline, gmp
+, gnutls, gnome2, cairo, SDL, sqlite
+, emacsSupport ? config.emacsSupport or false, emacs ? null }:
assert emacsSupport -> (emacs != null);
diff --git a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
index 4d88f3b9772..8342c9fd335 100644
--- a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
@@ -17,7 +17,8 @@
, installjdk ? true
, pluginSupport ? true
, installjce ? false
-, licenseAccepted ? false
+, config
+, licenseAccepted ? config.oraclejdk.accept_license or false
, glib
, libxml2
, libav_0_8
diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix
index b7a2f602cc6..bd4b10ddec0 100644
--- a/pkgs/development/compilers/solc/default.nix
+++ b/pkgs/development/compilers/solc/default.nix
@@ -1,4 +1,8 @@
-{ stdenv, fetchzip, fetchFromGitHub, boost, cmake, z3 }:
+{ stdenv, fetchzip, fetchFromGitHub, boost, cmake
+, z3Support ? true, z3 ? null
+}:
+
+assert z3Support -> z3 != null;
let
version = "0.5.3";
@@ -33,6 +37,8 @@ stdenv.mkDerivation {
cmakeFlags = [
"-DBoost_USE_STATIC_LIBS=OFF"
"-DBUILD_SHARED_LIBS=ON"
+ ] ++ stdenv.lib.optionals (!z3Support) [
+ "-DUSE_Z3=OFF"
];
doCheck = stdenv.hostPlatform.isLinux && stdenv.hostPlatform == stdenv.buildPlatform;
@@ -40,7 +46,8 @@ stdenv.mkDerivation {
"./test/soltest -p -- --no-ipc --no-smt --testpath ../test";
nativeBuildInputs = [ cmake ];
- buildInputs = [ boost z3 ];
+ buildInputs = [ boost ]
+ ++ stdenv.lib.optionals z3Support [ z3 ];
outputs = [ "out" "dev" ];
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 41d050531a3..426d23d6c7e 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -85,7 +85,7 @@ self: super: {
name = "git-annex-${super.git-annex.version}-src";
url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + super.git-annex.version;
- sha256 = "06385r9rlncrrmzdfl8q600bw6plbvkmkwgl3llg595xrm711a97";
+ sha256 = "1v2v6cwy957y5rgclb66ia7bl5j5mx291s3lh2swa39q3420m6v0";
};
}).override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 7071f345037..feaf5507d1f 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -46,7 +46,7 @@ default-package-overrides:
# Newer versions don't work in LTS-12.x
- alsa-mixer < 0.3
- cassava-megaparsec < 2
- # LTS Haskell 13.7
+ # LTS Haskell 13.8
- abstract-deque ==0.3
- abstract-deque-tests ==0.3
- abstract-par ==0.3.3
@@ -365,7 +365,7 @@ default-package-overrides:
- cassava-records ==0.1.0.4
- cast ==0.1.0.2
- category ==0.2.2.0
- - cayley-client ==0.4.8
+ - cayley-client ==0.4.9
- cborg ==0.2.1.0
- cborg-json ==0.2.1.0
- cereal ==0.5.8.0
@@ -481,7 +481,7 @@ default-package-overrides:
- cql-io ==1.0.1.1
- crackNum ==2.3
- credential-store ==0.1.2
- - criterion ==1.5.3.0
+ - criterion ==1.5.4.0
- criterion-measurement ==0.1.1.0
- cron ==0.6.1
- crypto-api ==0.13.3
@@ -557,8 +557,8 @@ default-package-overrides:
- dataurl ==0.1.0.0
- DAV ==1.3.3
- dbcleaner ==0.1.3
- - DBFunctor ==0.1.1.0
- - dbus ==1.2.3
+ - DBFunctor ==0.1.1.1
+ - dbus ==1.2.4
- debian-build ==0.10.1.2
- debug ==0.1.1
- debug-trace-var ==0.2.0
@@ -595,7 +595,7 @@ default-package-overrides:
- digits ==0.3.1
- di-monad ==1.3
- directory-tree ==0.12.1
- - direct-sqlite ==2.3.23
+ - direct-sqlite ==2.3.24
- discount ==0.1.1
- disk-free-space ==0.1.0.1
- distributed-closure ==0.4.1
@@ -610,7 +610,7 @@ default-package-overrides:
- doctemplates ==0.2.2.1
- doctest ==0.16.0.1
- doctest-discover ==0.2.0.0
- - doctest-driver-gen ==0.3.0.0
+ - doctest-driver-gen ==0.3.0.1
- do-list ==1.0.1
- dom-parser ==3.1.0
- dotenv ==0.8.0.0
@@ -850,7 +850,7 @@ default-package-overrides:
- gloss-rendering ==1.13.0.2
- GLURaw ==2.0.0.4
- GLUT ==2.7.0.14
- - gnuplot ==0.5.5.3
+ - gnuplot ==0.5.6
- goggles ==0.3.2
- google-isbn ==1.0.3
- google-oauth2-jwt ==0.3.1
@@ -918,7 +918,7 @@ default-package-overrides:
- HDBC-session ==0.1.2.0
- heap ==1.0.4
- heaps ==0.3.6.1
- - hebrew-time ==0.1.1
+ - hebrew-time ==0.1.2
- hedgehog ==0.6.1
- hedgehog-corpus ==0.1.0
- hedis ==0.10.10
@@ -1110,7 +1110,7 @@ default-package-overrides:
- intern ==0.9.2
- interpolate ==0.2.0
- interpolatedstring-perl6 ==1.0.1
- - interpolation ==0.1.0.3
+ - interpolation ==0.1.1
- interpolator ==0.1.1
- IntervalMap ==0.6.1.0
- intervals ==0.8.1
@@ -1216,7 +1216,7 @@ default-package-overrides:
- libgraph ==1.14
- libmpd ==0.9.0.9
- libraft ==0.1.1.0
- - libyaml ==0.1.0.0
+ - libyaml ==0.1.1.0
- LibZip ==1.0.1
- lifted-async ==0.10.0.3
- lifted-base ==0.2.3.12
@@ -1321,7 +1321,7 @@ default-package-overrides:
- mmap ==0.5.9
- mmark ==0.0.6.1
- mmark-cli ==0.0.5.0
- - mmark-ext ==0.2.1.1
+ - mmark-ext ==0.2.1.2
- mmorph ==1.1.2
- mnist-idx ==0.1.2.8
- mockery ==0.3.5
@@ -1491,10 +1491,10 @@ default-package-overrides:
- parsers ==0.12.9
- partial-handler ==1.0.3
- partial-isomorphisms ==0.2.2.1
- - partial-semigroup ==0.5.0.0
+ - partial-semigroup ==0.5.1.0
- path ==0.6.1
- path-extra ==0.2.0
- - path-io ==1.4.1
+ - path-io ==1.4.2
- path-pieces ==0.2.1
- path-text-utf8 ==0.0.1.2
- pathtype ==0.8.1
@@ -2183,7 +2183,7 @@ default-package-overrides:
- void ==0.7.2
- vty ==5.25.1
- wai ==3.2.2
- - wai-app-static ==3.1.6.2
+ - wai-app-static ==3.1.6.3
- wai-cli ==0.1.1
- wai-conduit ==3.0.0.4
- wai-cors ==0.2.6
@@ -2286,19 +2286,19 @@ default-package-overrides:
- xmonad-extras ==0.15.1
- xss-sanitize ==0.3.6
- xxhash-ffi ==0.2.0.0
- - yam ==0.5.11
- - yam-datasource ==0.5.11
+ - yam ==0.5.13
+ - yam-datasource ==0.5.13
- yaml ==0.11.0.0
- yeshql ==4.1.0.1
- yeshql-core ==4.1.0.2
- yeshql-hdbc ==4.1.0.2
- yesod ==1.6.0
- yesod-alerts ==0.1.2.0
- - yesod-auth ==1.6.5
+ - yesod-auth ==1.6.6
- yesod-auth-hashdb ==1.7.1
- yesod-auth-oauth2 ==0.6.1.0
- yesod-bin ==1.6.0.3
- - yesod-core ==1.6.11
+ - yesod-core ==1.6.12
- yesod-csp ==0.2.4.0
- yesod-eventsource ==1.6.0
- yesod-fb ==0.5.0
@@ -3226,6 +3226,7 @@ dont-distribute-packages:
broadcast-chan-tests: [ i686-linux, x86_64-linux, x86_64-darwin ]
broadcast-chan: [ i686-linux, x86_64-linux, x86_64-darwin ]
broccoli: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ brok: [ i686-linux, x86_64-linux, x86_64-darwin ]
broker-haskell: [ i686-linux, x86_64-linux, x86_64-darwin ]
bronyradiogermany-streaming: [ i686-linux, x86_64-linux, x86_64-darwin ]
browscap: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3279,6 +3280,7 @@ dont-distribute-packages:
c2ats: [ i686-linux, x86_64-linux, x86_64-darwin ]
c2hsc: [ i686-linux, x86_64-linux, x86_64-darwin ]
cabal-audit: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ cabal-bundle-clib: [ i686-linux, x86_64-linux, x86_64-darwin ]
cabal-cargs: [ i686-linux, x86_64-linux, x86_64-darwin ]
cabal-constraints: [ i686-linux, x86_64-linux, x86_64-darwin ]
cabal-db: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3325,6 +3327,7 @@ dont-distribute-packages:
caffegraph: [ i686-linux, x86_64-linux, x86_64-darwin ]
cairo-appbase: [ i686-linux, x86_64-linux, x86_64-darwin ]
cairo-canvas: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ cairo-core: [ i686-linux, x86_64-linux, x86_64-darwin ]
cairo: [ i686-linux, x86_64-linux, x86_64-darwin ]
cake3: [ i686-linux, x86_64-linux, x86_64-darwin ]
cake: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3474,6 +3477,7 @@ dont-distribute-packages:
cil: [ i686-linux, x86_64-linux, x86_64-darwin ]
cinvoke: [ i686-linux, x86_64-linux, x86_64-darwin ]
cio: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ ciphersaber2: [ i686-linux, x86_64-linux, x86_64-darwin ]
circlehs: [ i686-linux, x86_64-linux, x86_64-darwin ]
citation-resolve: [ i686-linux, x86_64-linux, x86_64-darwin ]
citeproc-hs-pandoc-filter: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3922,10 +3926,12 @@ dont-distribute-packages:
data-util: [ i686-linux, x86_64-linux, x86_64-darwin ]
data-variant: [ i686-linux, x86_64-linux, x86_64-darwin ]
database-study: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ datadog-tracing: [ i686-linux, x86_64-linux, x86_64-darwin ]
datadog: [ i686-linux, x86_64-linux, x86_64-darwin ]
datafix: [ i686-linux, x86_64-linux, x86_64-darwin ]
dataflow: [ i686-linux, x86_64-linux, x86_64-darwin ]
datalog: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ datasets: [ i686-linux, x86_64-linux, x86_64-darwin ]
DataTreeView: [ i686-linux, x86_64-linux, x86_64-darwin ]
date-conversions: [ i686-linux, x86_64-linux, x86_64-darwin ]
dates: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4586,6 +4592,7 @@ dont-distribute-packages:
flite: [ i686-linux, x86_64-linux, x86_64-darwin ]
float-binstring: [ i686-linux, x86_64-linux, x86_64-darwin ]
floating-bits: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ floskell: [ i686-linux, x86_64-linux, x86_64-darwin ]
flow-er: [ i686-linux, x86_64-linux, x86_64-darwin ]
flow2dot: [ i686-linux, x86_64-linux, x86_64-darwin ]
flowdock-api: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4740,6 +4747,7 @@ dont-distribute-packages:
game-probability: [ i686-linux, x86_64-linux, x86_64-darwin ]
gameclock: [ i686-linux, x86_64-linux, x86_64-darwin ]
Gamgine: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ gamma: [ i686-linux, x86_64-linux, x86_64-darwin ]
Ganymede: [ i686-linux, x86_64-linux, x86_64-darwin ]
garepinoh: [ i686-linux, x86_64-linux, x86_64-darwin ]
gargoyle-postgresql: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4846,6 +4854,7 @@ dont-distribute-packages:
ghc-heap-view: [ i686-linux, x86_64-linux, x86_64-darwin ]
ghc-imported-from: [ i686-linux, x86_64-linux, x86_64-darwin ]
ghc-instances: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ ghc-lib: [ i686-linux, x86_64-linux, x86_64-darwin ]
ghc-man-completion: [ i686-linux, x86_64-linux, x86_64-darwin ]
ghc-mod: [ i686-linux, x86_64-linux, x86_64-darwin ]
ghc-parmake: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4878,6 +4887,7 @@ dont-distribute-packages:
ghcjs-xhr: [ i686-linux, x86_64-linux, x86_64-darwin ]
ghclive: [ i686-linux, x86_64-linux, x86_64-darwin ]
ght: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ gi-cairo-again: [ i686-linux, x86_64-linux, x86_64-darwin ]
gi-gstpbutils: [ i686-linux, x86_64-linux, x86_64-darwin ]
gi-gsttag: [ i686-linux, x86_64-linux, x86_64-darwin ]
gi-gtkosxapplication: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5243,6 +5253,7 @@ dont-distribute-packages:
happstack-facebook: [ i686-linux, x86_64-linux, x86_64-darwin ]
happstack-fay-ajax: [ i686-linux, x86_64-linux, x86_64-darwin ]
happstack-fay: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ happstack-foundation: [ i686-linux, x86_64-linux, x86_64-darwin ]
happstack-hamlet: [ i686-linux, x86_64-linux, x86_64-darwin ]
happstack-heist: [ i686-linux, x86_64-linux, x86_64-darwin ]
happstack-helpers: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5437,6 +5448,7 @@ dont-distribute-packages:
haskus-utils-data: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskus-utils-variant: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskus-utils: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ haskus-web: [ i686-linux, x86_64-linux, x86_64-darwin ]
haslo: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasloGUI: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasparql-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5725,6 +5737,7 @@ dont-distribute-packages:
hmeap-utils: [ i686-linux, x86_64-linux, x86_64-darwin ]
hmeap: [ i686-linux, x86_64-linux, x86_64-darwin ]
hmenu: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ hmep: [ i686-linux, x86_64-linux, x86_64-darwin ]
hmk: [ i686-linux, x86_64-linux, x86_64-darwin ]
hmm-hmatrix: [ i686-linux, x86_64-linux, x86_64-darwin ]
hmm-lapack: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6256,6 +6269,7 @@ dont-distribute-packages:
insert-ordered-containers: [ i686-linux, x86_64-linux, x86_64-darwin ]
inserts: [ i686-linux, x86_64-linux, x86_64-darwin ]
inspector-wrecker: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ instana-haskell-trace-sdk: [ i686-linux, x86_64-linux, x86_64-darwin ]
instant-aeson: [ i686-linux, x86_64-linux, x86_64-darwin ]
instant-bytes: [ i686-linux, x86_64-linux, x86_64-darwin ]
instant-deepseq: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6472,7 +6486,9 @@ dont-distribute-packages:
kansas-lava: [ i686-linux, x86_64-linux, x86_64-darwin ]
karakuri: [ i686-linux, x86_64-linux, x86_64-darwin ]
karps: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ katip-datadog: [ i686-linux, x86_64-linux, x86_64-darwin ]
katip-elasticsearch: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ katip-logzio: [ i686-linux, x86_64-linux, x86_64-darwin ]
katip-rollbar: [ i686-linux, x86_64-linux, x86_64-darwin ]
katip-scalyr-scribe: [ i686-linux, x86_64-linux, x86_64-darwin ]
katip-syslog: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6526,6 +6542,7 @@ dont-distribute-packages:
krapsh: [ i686-linux, x86_64-linux, x86_64-darwin ]
Kriens: [ i686-linux, x86_64-linux, x86_64-darwin ]
krpc: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ ks-test: [ i686-linux, x86_64-linux, x86_64-darwin ]
KSP: [ i686-linux, x86_64-linux, x86_64-darwin ]
ktx: [ i686-linux, x86_64-linux, x86_64-darwin ]
kure-your-boilerplate: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6652,6 +6669,7 @@ dont-distribute-packages:
ldif: [ i686-linux, x86_64-linux, x86_64-darwin ]
leaf: [ i686-linux, x86_64-linux, x86_64-darwin ]
leaky: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ leanpub-wreq: [ i686-linux, x86_64-linux, x86_64-darwin ]
leapseconds: [ i686-linux, x86_64-linux, x86_64-darwin ]
learn-physics-examples: [ i686-linux, x86_64-linux, x86_64-darwin ]
learn-physics: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6958,6 +6976,7 @@ dont-distribute-packages:
MASMGen: [ i686-linux, x86_64-linux, x86_64-darwin ]
master-plan: [ i686-linux, x86_64-linux, x86_64-darwin ]
matchers: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ math-grads: [ i686-linux, x86_64-linux, x86_64-darwin ]
mathblog: [ i686-linux, x86_64-linux, x86_64-darwin ]
mathflow: [ i686-linux, x86_64-linux, x86_64-darwin ]
mathlink: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7092,6 +7111,8 @@ dont-distribute-packages:
ml-w: [ i686-linux, x86_64-linux, x86_64-darwin ]
mlist: [ i686-linux, x86_64-linux, x86_64-darwin ]
mltool: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ mmark-cli: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ mmark-ext: [ i686-linux, x86_64-linux, x86_64-darwin ]
mmtf: [ i686-linux, x86_64-linux, x86_64-darwin ]
mmtl-base: [ i686-linux, x86_64-linux, x86_64-darwin ]
mmtl: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7648,6 +7669,7 @@ dont-distribute-packages:
pareto: [ i686-linux, x86_64-linux, x86_64-darwin ]
Parry: [ i686-linux, x86_64-linux, x86_64-darwin ]
parse-help: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ parseargs: [ i686-linux, x86_64-linux, x86_64-darwin ]
parsec-free: [ i686-linux, x86_64-linux, x86_64-darwin ]
parsec-parsers: [ i686-linux, x86_64-linux, x86_64-darwin ]
parsec-pratt: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7971,6 +7993,7 @@ dont-distribute-packages:
priority-sync: [ i686-linux, x86_64-linux, x86_64-darwin ]
PriorityChansConverger: [ i686-linux, x86_64-linux, x86_64-darwin ]
ProbabilityMonads: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ probable: [ i686-linux, x86_64-linux, x86_64-darwin ]
proc: [ i686-linux, x86_64-linux, x86_64-darwin ]
process-conduit: [ i686-linux, x86_64-linux, x86_64-darwin ]
process-iterio: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8181,6 +8204,7 @@ dont-distribute-packages:
rasa: [ i686-linux, x86_64-linux, x86_64-darwin ]
rascal: [ i686-linux, x86_64-linux, x86_64-darwin ]
Rasenschach: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ rating-chgk-info: [ i686-linux, x86_64-linux, x86_64-darwin ]
rattletrap: [ i686-linux, x86_64-linux, x86_64-darwin ]
raven-haskell-scotty: [ i686-linux, x86_64-linux, x86_64-darwin ]
raw-feldspar: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8249,6 +8273,7 @@ dont-distribute-packages:
refh: [ i686-linux, x86_64-linux, x86_64-darwin ]
reflection-extras: [ i686-linux, x86_64-linux, x86_64-darwin ]
reflex-animation: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ reflex-dom-core: [ i686-linux, x86_64-linux, x86_64-darwin ]
reflex-gloss-scene: [ i686-linux, x86_64-linux, x86_64-darwin ]
reflex-gloss: [ i686-linux, x86_64-linux, x86_64-darwin ]
reflex-orphans: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8474,6 +8499,7 @@ dont-distribute-packages:
saferoute: [ i686-linux, x86_64-linux, x86_64-darwin ]
sai-shape-syb: [ i686-linux, x86_64-linux, x86_64-darwin ]
sajson: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ salak: [ i686-linux, x86_64-linux, x86_64-darwin ]
Salsa: [ i686-linux, x86_64-linux, x86_64-darwin ]
saltine-quickcheck: [ i686-linux, x86_64-linux, x86_64-darwin ]
salvia-demo: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8502,6 +8528,8 @@ dont-distribute-packages:
sax: [ i686-linux, x86_64-linux, x86_64-darwin ]
SBench: [ i686-linux, x86_64-linux, x86_64-darwin ]
sbvPlugin: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ sc2-lowlevel: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ sc2-proto: [ i686-linux, x86_64-linux, x86_64-darwin ]
sc3-rdu: [ i686-linux, x86_64-linux, x86_64-darwin ]
scalable-server: [ i686-linux, x86_64-linux, x86_64-darwin ]
scaleimage: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8543,6 +8571,7 @@ dont-distribute-packages:
scotty: [ i686-linux, x86_64-linux, x86_64-darwin ]
scp-streams: [ i686-linux, x86_64-linux, x86_64-darwin ]
scrabble-bot: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ scrapbook: [ i686-linux, x86_64-linux, x86_64-darwin ]
scrape-changes: [ i686-linux, x86_64-linux, x86_64-darwin ]
ScratchFs: [ i686-linux, x86_64-linux, x86_64-darwin ]
script-monad: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8666,6 +8695,7 @@ dont-distribute-packages:
servant-swagger-ui-redoc: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-swagger-ui: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-swagger: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ servant-waargonaut: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-xml: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-zeppelin-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-zeppelin-server: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8739,6 +8769,7 @@ dont-distribute-packages:
shorten-strings: [ i686-linux, x86_64-linux, x86_64-darwin ]
ShortestPathProblems: [ i686-linux, x86_64-linux, x86_64-darwin ]
showdown: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ shower: [ i686-linux, x86_64-linux, x86_64-darwin ]
shpider: [ i686-linux, x86_64-linux, x86_64-darwin ]
shuffle: [ i686-linux, x86_64-linux, x86_64-darwin ]
si-clock: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8843,6 +8874,8 @@ dont-distribute-packages:
sme: [ i686-linux, x86_64-linux, x86_64-darwin ]
smerdyakov: [ i686-linux, x86_64-linux, x86_64-darwin ]
smiles: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ smith-cli: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ smith-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
Smooth: [ i686-linux, x86_64-linux, x86_64-darwin ]
smsaero: [ i686-linux, x86_64-linux, x86_64-darwin ]
smt-lib: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8945,6 +8978,8 @@ dont-distribute-packages:
sorting: [ i686-linux, x86_64-linux, x86_64-darwin ]
sorty: [ i686-linux, x86_64-linux, x86_64-darwin ]
sound-collage: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ sounddelay: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ soundgen: [ i686-linux, x86_64-linux, x86_64-darwin ]
source-code-server: [ i686-linux, x86_64-linux, x86_64-darwin ]
SourceGraph: [ i686-linux, x86_64-linux, x86_64-darwin ]
sousit: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9075,6 +9110,7 @@ dont-distribute-packages:
stb-truetype: [ i686-linux, x86_64-linux, x86_64-darwin ]
stdata: [ i686-linux, x86_64-linux, x86_64-darwin ]
stdf: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ stdio: [ i686-linux, x86_64-linux, x86_64-darwin ]
steambrowser: [ i686-linux, x86_64-linux, x86_64-darwin ]
stego-uuid: [ i686-linux, x86_64-linux, x86_64-darwin ]
stemmer-german: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9274,6 +9310,7 @@ dont-distribute-packages:
target: [ i686-linux, x86_64-linux, x86_64-darwin ]
task-distribution: [ i686-linux, x86_64-linux, x86_64-darwin ]
task: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ taskell: [ i686-linux, x86_64-linux, x86_64-darwin ]
tasty-auto: [ i686-linux, x86_64-linux, x86_64-darwin ]
tasty-fail-fast: [ i686-linux, x86_64-linux, x86_64-darwin ]
tasty-groundhog-converters: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9552,6 +9589,7 @@ dont-distribute-packages:
tripLL: [ i686-linux, x86_64-linux, x86_64-darwin ]
trivia: [ i686-linux, x86_64-linux, x86_64-darwin ]
tropical: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ truelevel: [ i686-linux, x86_64-linux, x86_64-darwin ]
trurl: [ i686-linux, x86_64-linux, x86_64-darwin ]
tsession-happstack: [ i686-linux, x86_64-linux, x86_64-darwin ]
tsession: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9785,6 +9823,7 @@ dont-distribute-packages:
vaultaire-common: [ i686-linux, x86_64-linux, x86_64-darwin ]
vaultenv: [ i686-linux, x86_64-linux, x86_64-darwin ]
vaultenv: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ vaultenv: [ i686-linux, x86_64-linux, x86_64-darwin ]
vcard: [ i686-linux, x86_64-linux, x86_64-darwin ]
vcatt: [ i686-linux, x86_64-linux, x86_64-darwin ]
vcf: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9915,6 +9954,7 @@ dont-distribute-packages:
wasm: [ i686-linux, x86_64-linux, x86_64-darwin ]
watcher: [ i686-linux, x86_64-linux, x86_64-darwin ]
watchit: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ WAVE: [ i686-linux, x86_64-linux, x86_64-darwin ]
wavefront-obj: [ i686-linux, x86_64-linux, x86_64-darwin ]
WaveFront: [ i686-linux, x86_64-linux, x86_64-darwin ]
wavesurfer: [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9970,6 +10010,7 @@ dont-distribute-packages:
whiskers: [ i686-linux, x86_64-linux, x86_64-darwin ]
whitespace: [ i686-linux, x86_64-linux, x86_64-darwin ]
why3: [ i686-linux, x86_64-linux, x86_64-darwin ]
+ wide-word: [ i686-linux, x86_64-linux, x86_64-darwin ]
WikimediaParser: [ i686-linux, x86_64-linux, x86_64-darwin ]
wikipedia4epub: [ i686-linux, x86_64-linux, x86_64-darwin ]
wild-bind-indicator: [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index f7a8e6c0182..3113d433bac 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -3514,34 +3514,6 @@ self: {
}) {};
"DBFunctor" = callPackage
- ({ mkDerivation, base, bytestring, cassava, cereal, containers
- , deepseq, either, MissingH, text, time, transformers
- , unordered-containers, vector
- }:
- mkDerivation {
- pname = "DBFunctor";
- version = "0.1.1.0";
- sha256 = "1hjjnjs8nlqrqfiv5qxn60avl1avpgsxx8aq5hihrr6f6yj61s4a";
- isLibrary = true;
- isExecutable = true;
- libraryHaskellDepends = [
- base bytestring cassava cereal containers deepseq either MissingH
- text time transformers unordered-containers vector
- ];
- executableHaskellDepends = [
- base bytestring cassava cereal containers deepseq either MissingH
- text time transformers unordered-containers vector
- ];
- testHaskellDepends = [
- base bytestring cassava cereal containers deepseq either MissingH
- text time transformers unordered-containers vector
- ];
- description = "DBFunctor - Functional Data Management => ETL/ELT Data Processing in Haskell";
- license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
- }) {};
-
- "DBFunctor_0_1_1_1" = callPackage
({ mkDerivation, base, bytestring, cassava, cereal, containers
, deepseq, either, MissingH, text, time, transformers
, unordered-containers, vector
@@ -18836,6 +18808,7 @@ self: {
];
description = "WAVE audio file IO library";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"WL500gPControl" = callPackage
@@ -28826,6 +28799,8 @@ self: {
pname = "arbtt";
version = "0.10.1";
sha256 = "09n6v32yz612ag4acjd4jwnmv0ljarxi3b7v2mp4bj18c2gx1wbq";
+ revision = "1";
+ editedCabalFile = "0wnm1izr12yjh1kc7bhhj87sd7jwbh7qf6qpij0z84mlk58nq0mb";
isLibrary = false;
isExecutable = true;
executableHaskellDepends = [
@@ -31644,6 +31619,18 @@ self: {
license = stdenv.lib.licenses.mit;
}) {};
+ "auto-update_0_1_4_1" = callPackage
+ ({ mkDerivation, base }:
+ mkDerivation {
+ pname = "auto-update";
+ version = "0.1.4.1";
+ sha256 = "1jfgxwicd0r31dcbcd83sj99v1w9mbg873xp7v7z21gmxhalpzrm";
+ libraryHaskellDepends = [ base ];
+ description = "Efficiently run periodic, on-demand actions";
+ license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"autoexporter" = callPackage
({ mkDerivation, base, Cabal, directory, filepath }:
mkDerivation {
@@ -40242,6 +40229,7 @@ self: {
testToolDepends = [ tasty-discover ];
description = "Finds broken links in text files";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"broker-haskell" = callPackage
@@ -42124,6 +42112,7 @@ self: {
];
description = "Bundling C/C++ projects in Cabal package made easy";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"cabal-cargs" = callPackage
@@ -42671,6 +42660,26 @@ self: {
license = stdenv.lib.licenses.gpl3;
}) {};
+ "cabal-rpm_0_13" = callPackage
+ ({ mkDerivation, base, bytestring, Cabal, directory, filepath
+ , http-client, http-client-tls, http-conduit, process, simple-cmd
+ , time, unix
+ }:
+ mkDerivation {
+ pname = "cabal-rpm";
+ version = "0.13";
+ sha256 = "063y8f18zsw7slvmjr0w6r2ssvn3p1jb0cs81sihp4fw8371bd50";
+ isLibrary = false;
+ isExecutable = true;
+ executableHaskellDepends = [
+ base bytestring Cabal directory filepath http-client
+ http-client-tls http-conduit process simple-cmd time unix
+ ];
+ description = "RPM packaging tool for Haskell Cabal-based packages";
+ license = stdenv.lib.licenses.gpl3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"cabal-scripts" = callPackage
({ mkDerivation, base }:
mkDerivation {
@@ -43382,6 +43391,7 @@ self: {
libraryToolDepends = [ c2hs ];
description = "Cairo Haskell binding (partial)";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {inherit (pkgs) cairo;};
"cake" = callPackage
@@ -45107,26 +45117,6 @@ self: {
}) {};
"cayley-client" = callPackage
- ({ mkDerivation, aeson, attoparsec, base, binary, bytestring
- , exceptions, hspec, http-client, http-conduit, lens, lens-aeson
- , mtl, text, transformers, unordered-containers, vector
- }:
- mkDerivation {
- pname = "cayley-client";
- version = "0.4.8";
- sha256 = "09hrq1k8s8w7rawyn78hjagirs3yrkp79nn7p5w1l8amp27k5cdi";
- libraryHaskellDepends = [
- aeson attoparsec base binary bytestring exceptions http-client
- http-conduit lens lens-aeson mtl text transformers
- unordered-containers vector
- ];
- testHaskellDepends = [ aeson base hspec unordered-containers ];
- description = "A Haskell client for the Cayley graph database";
- license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
- }) {};
-
- "cayley-client_0_4_9" = callPackage
({ mkDerivation, aeson, attoparsec, base, binary, bytestring
, exceptions, hspec, http-client, http-conduit, lens, lens-aeson
, mtl, text, transformers, unordered-containers, vector
@@ -47325,6 +47315,7 @@ self: {
executableHaskellDepends = [ array base bytestring parseargs ];
description = "Implementation of CipherSaber2 RC4 cryptography";
license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"circ" = callPackage
@@ -52555,6 +52546,35 @@ self: {
license = stdenv.lib.licenses.mit;
}) {};
+ "conduit-extra_1_3_1" = callPackage
+ ({ mkDerivation, async, attoparsec, base, bytestring
+ , bytestring-builder, conduit, directory, exceptions, filepath
+ , gauge, hspec, network, primitive, process, QuickCheck, resourcet
+ , stm, streaming-commons, text, transformers, transformers-base
+ , typed-process, unliftio-core
+ }:
+ mkDerivation {
+ pname = "conduit-extra";
+ version = "1.3.1";
+ sha256 = "0zfdrpdc86kw2c3gzq5lxdy1qmy069qy7xcjjbnf4359igjyq69v";
+ libraryHaskellDepends = [
+ async attoparsec base bytestring conduit directory filepath network
+ primitive process resourcet stm streaming-commons text transformers
+ typed-process unliftio-core
+ ];
+ testHaskellDepends = [
+ async attoparsec base bytestring bytestring-builder conduit
+ directory exceptions filepath hspec process QuickCheck resourcet
+ stm streaming-commons text transformers transformers-base
+ ];
+ benchmarkHaskellDepends = [
+ base bytestring bytestring-builder conduit gauge transformers
+ ];
+ description = "Batteries included conduit: adapters for common libraries";
+ license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"conduit-find" = callPackage
({ mkDerivation, attoparsec, base, conduit, conduit-combinators
, conduit-extra, directory, doctest, either, exceptions, filepath
@@ -53632,8 +53652,8 @@ self: {
}:
mkDerivation {
pname = "consumers";
- version = "2.1.2.0";
- sha256 = "1fgnb4q5bbad6rmknclvwv79s593r054x7iafrhj3czrfzg94dfx";
+ version = "2.2.0.0";
+ sha256 = "0r7v5gfi7lw19h9chhn80fwnlgph5ak6n1vf153gq6l7bm10hacl";
libraryHaskellDepends = [
base containers exceptions extra hpqtypes lifted-base
lifted-threads log-base monad-control monad-time mtl stm time
@@ -55975,41 +55995,6 @@ self: {
}) {};
"criterion" = callPackage
- ({ mkDerivation, aeson, ansi-wl-pprint, base, base-compat
- , base-compat-batteries, binary, bytestring, cassava, code-page
- , containers, criterion-measurement, deepseq, directory, exceptions
- , filepath, Glob, HUnit, js-flot, js-jquery, microstache, mtl
- , mwc-random, optparse-applicative, parsec, QuickCheck, statistics
- , tasty, tasty-hunit, tasty-quickcheck, text, time, transformers
- , transformers-compat, vector, vector-algorithms
- }:
- mkDerivation {
- pname = "criterion";
- version = "1.5.3.0";
- sha256 = "17q4dj9sl9dp2gyknycc9kdp5y6ak4vlmbfqp1w0fwfy76aaj0mn";
- isLibrary = true;
- isExecutable = true;
- enableSeparateDataOutput = true;
- libraryHaskellDepends = [
- aeson ansi-wl-pprint base base-compat-batteries binary bytestring
- cassava code-page containers criterion-measurement deepseq
- directory exceptions filepath Glob js-flot js-jquery microstache
- mtl mwc-random optparse-applicative parsec statistics text time
- transformers transformers-compat vector vector-algorithms
- ];
- executableHaskellDepends = [
- base base-compat-batteries optparse-applicative
- ];
- testHaskellDepends = [
- aeson base base-compat base-compat-batteries bytestring deepseq
- directory HUnit QuickCheck statistics tasty tasty-hunit
- tasty-quickcheck vector
- ];
- description = "Robust, reliable performance measurement and analysis";
- license = stdenv.lib.licenses.bsd3;
- }) {};
-
- "criterion_1_5_4_0" = callPackage
({ mkDerivation, aeson, ansi-wl-pprint, base, base-compat
, base-compat-batteries, binary, bytestring, cassava, code-page
, containers, criterion-measurement, deepseq, directory, exceptions
@@ -56042,7 +56027,6 @@ self: {
];
description = "Robust, reliable performance measurement and analysis";
license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"criterion-measurement" = callPackage
@@ -60466,6 +60450,7 @@ self: {
testToolDepends = [ tasty-discover ];
description = "Datadog tracing client and mock agent";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"dataenc" = callPackage
@@ -60627,6 +60612,7 @@ self: {
];
description = "Classical data sets for statistics and machine learning";
license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"dataurl" = callPackage
@@ -60955,33 +60941,6 @@ self: {
}) {};
"dbus" = callPackage
- ({ mkDerivation, base, bytestring, cereal, conduit, containers
- , criterion, deepseq, directory, exceptions, extra, filepath, lens
- , network, parsec, process, QuickCheck, random, resourcet, split
- , tasty, tasty-hunit, tasty-quickcheck, template-haskell, text
- , th-lift, transformers, unix, vector, xml-conduit, xml-types
- }:
- mkDerivation {
- pname = "dbus";
- version = "1.2.3";
- sha256 = "04x0scjl9kyhh2wl02slfa7ykd2lmxbx6x7bp7wv8x4pwgd849zc";
- libraryHaskellDepends = [
- base bytestring cereal conduit containers deepseq exceptions
- filepath lens network parsec random split template-haskell text
- th-lift transformers unix vector xml-conduit xml-types
- ];
- testHaskellDepends = [
- base bytestring cereal containers directory extra filepath network
- parsec process QuickCheck random resourcet tasty tasty-hunit
- tasty-quickcheck text transformers unix vector
- ];
- benchmarkHaskellDepends = [ base criterion ];
- doCheck = false;
- description = "A client library for the D-Bus IPC system";
- license = stdenv.lib.licenses.asl20;
- }) {};
-
- "dbus_1_2_4" = callPackage
({ mkDerivation, base, bytestring, cereal, conduit, containers
, criterion, deepseq, directory, exceptions, extra, filepath, lens
, network, parsec, process, QuickCheck, random, resourcet, split
@@ -61006,7 +60965,6 @@ self: {
doCheck = false;
description = "A client library for the D-Bus IPC system";
license = stdenv.lib.licenses.asl20;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"dbus-client" = callPackage
@@ -65107,22 +65065,6 @@ self: {
}) {};
"direct-sqlite" = callPackage
- ({ mkDerivation, base, base16-bytestring, bytestring, directory
- , HUnit, semigroups, temporary, text
- }:
- mkDerivation {
- pname = "direct-sqlite";
- version = "2.3.23";
- sha256 = "0ywkah9gmjnx0zdlvinc2i898jsbdrw4ba315zkpijaaldp6znqz";
- libraryHaskellDepends = [ base bytestring semigroups text ];
- testHaskellDepends = [
- base base16-bytestring bytestring directory HUnit temporary text
- ];
- description = "Low-level binding to SQLite3. Includes UTF8 and BLOB support.";
- license = stdenv.lib.licenses.bsd3;
- }) {};
-
- "direct-sqlite_2_3_24" = callPackage
({ mkDerivation, base, base16-bytestring, bytestring, directory
, HUnit, semigroups, temporary, text
}:
@@ -65130,13 +65072,14 @@ self: {
pname = "direct-sqlite";
version = "2.3.24";
sha256 = "0xd6wcmshzadwqjgd9ddcfi76p0v2c18h49spl076h285kp3plj1";
+ revision = "1";
+ editedCabalFile = "0cfl7h43q2qib1qq8sipgcxcm3i9d6cp1diwmxv8n7ygx7awz6w6";
libraryHaskellDepends = [ base bytestring semigroups text ];
testHaskellDepends = [
base base16-bytestring bytestring directory HUnit temporary text
];
description = "Low-level binding to SQLite3. Includes UTF8 and BLOB support.";
license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"directed-cubical" = callPackage
@@ -67019,22 +66962,6 @@ self: {
}) {};
"doctest-driver-gen" = callPackage
- ({ mkDerivation, base, doctest }:
- mkDerivation {
- pname = "doctest-driver-gen";
- version = "0.3.0.0";
- sha256 = "13m5f15076grwln29pnpqrq9h45cy46pagpk1qw3vzspp7k4ahk1";
- isLibrary = true;
- isExecutable = true;
- libraryHaskellDepends = [ base ];
- executableHaskellDepends = [ base ];
- testHaskellDepends = [ base doctest ];
- description = "Generate driver file for doctest's cabal integration";
- license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
- }) {};
-
- "doctest-driver-gen_0_3_0_1" = callPackage
({ mkDerivation, base, doctest }:
mkDerivation {
pname = "doctest-driver-gen";
@@ -68945,8 +68872,8 @@ self: {
}:
mkDerivation {
pname = "dynamodb-simple";
- version = "0.6.0.0";
- sha256 = "0dshi4binsfjrlw7sl1jxa09a1s4qkp3g48x6hchaipk6b1nx960";
+ version = "0.6.0.1";
+ sha256 = "00966z61119p2qammdiaxnfc5by0b12pj95745i792kqw647vygj";
libraryHaskellDepends = [
aeson amazonka amazonka-core amazonka-dynamodb base bytestring
conduit containers double-conversion exceptions generics-sop
@@ -69315,15 +69242,20 @@ self: {
}) {};
"eccrypto" = callPackage
- ({ mkDerivation, base, bytestring, cereal, crypto-api, SHA, vector
+ ({ mkDerivation, base, base16-bytestring, bytestring, Cabal
+ , criterion, crypto-api, integer-gmp, MonadRandom, SHA
}:
mkDerivation {
pname = "eccrypto";
- version = "0.0.1";
- sha256 = "1jcwlwbcd77536ii0wxalbdslzbvv224b07g3801pgjvr38xljpx";
+ version = "0.1.0";
+ sha256 = "1cyp313ifcdndafk91g6ivs6ab94jnddw1684d8bkmkr42kmn772";
enableSeparateDataOutput = true;
libraryHaskellDepends = [
- base bytestring cereal crypto-api SHA vector
+ base bytestring crypto-api integer-gmp SHA
+ ];
+ testHaskellDepends = [ base base16-bytestring bytestring Cabal ];
+ benchmarkHaskellDepends = [
+ base bytestring criterion MonadRandom
];
description = "Elliptic Curve Cryptography for Haskell";
license = stdenv.lib.licenses.bsd3;
@@ -70845,6 +70777,32 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "elm2nix_0_1_1" = callPackage
+ ({ mkDerivation, aeson, ansi-wl-pprint, async, base, binary
+ , bytestring, containers, data-default, directory, filepath, here
+ , mtl, optparse-applicative, process, req, text, transformers
+ , unordered-containers
+ }:
+ mkDerivation {
+ pname = "elm2nix";
+ version = "0.1.1";
+ sha256 = "16b7vv7ndn8mpkg05rhljpmld2dazsgl9yqg8j3mza1f5x4f6jwp";
+ isLibrary = true;
+ isExecutable = true;
+ libraryHaskellDepends = [
+ aeson async base binary bytestring containers data-default
+ directory filepath here mtl process req text transformers
+ unordered-containers
+ ];
+ executableHaskellDepends = [
+ ansi-wl-pprint base directory here optparse-applicative
+ ];
+ testHaskellDepends = [ base ];
+ description = "Turn your Elm project into buildable Nix project";
+ license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"elo" = callPackage
({ mkDerivation, base, tasty }:
mkDerivation {
@@ -72044,19 +72002,20 @@ self: {
}) {};
"equivalence" = callPackage
- ({ mkDerivation, base, containers, mtl, QuickCheck, STMonadTrans
- , template-haskell, test-framework, test-framework-quickcheck2
- , transformers, transformers-compat
+ ({ mkDerivation, base, containers, fail, mtl, QuickCheck
+ , STMonadTrans, template-haskell, test-framework
+ , test-framework-quickcheck2, transformers, transformers-compat
}:
mkDerivation {
pname = "equivalence";
- version = "0.3.3";
- sha256 = "02jhn8z1aqyxp3krylhfnwr7zzjcd17q9qriyd9653i92b7di3gf";
+ version = "0.3.4";
+ sha256 = "02s24624xnwq790mip5pj6828an36j8jbdj5kvx9bv5a7ap3vzn1";
libraryHaskellDepends = [
- base containers mtl STMonadTrans transformers transformers-compat
+ base containers fail mtl STMonadTrans transformers
+ transformers-compat
];
testHaskellDepends = [
- base containers mtl QuickCheck STMonadTrans template-haskell
+ base containers fail mtl QuickCheck STMonadTrans template-haskell
test-framework test-framework-quickcheck2 transformers
transformers-compat
];
@@ -76096,6 +76055,18 @@ self: {
license = stdenv.lib.licenses.gpl3;
}) {};
+ "fedora-dists_1_0_1" = callPackage
+ ({ mkDerivation, base }:
+ mkDerivation {
+ pname = "fedora-dists";
+ version = "1.0.1";
+ sha256 = "107ykp3f1f35ghlxfv53mxl0wmj1jyr7xnil16gyg6gcyi0shbll";
+ libraryHaskellDepends = [ base ];
+ description = "Library for Fedora distribution versions";
+ license = stdenv.lib.licenses.gpl3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"fedora-haskell-tools" = callPackage
({ mkDerivation, base, csv, directory, filepath, HTTP, process
, time, unix
@@ -78572,6 +78543,7 @@ self: {
];
description = "A flexible Haskell source code pretty printer";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"flow" = callPackage
@@ -78759,8 +78731,8 @@ self: {
}:
mkDerivation {
pname = "fltkhs";
- version = "0.6.0.0";
- sha256 = "1cbyp8rq9yzx6jrw68dbprkdyd8pkdqbxx08wajyg7bfks6j39cb";
+ version = "0.7.0.2";
+ sha256 = "025249sdh8w5v1rhykyrm0k3w5ci4lk34fhjr0bgws8gmimvk86f";
configureFlags = [ "-fopengl" ];
isLibrary = true;
isExecutable = true;
@@ -78842,14 +78814,15 @@ self: {
}:
mkDerivation {
pname = "fltkhs-themes";
- version = "0.1.0.1";
- sha256 = "03awhraincinrqr1zzb9c64mkb391isw3gb87csa1dkqk846wij6";
+ version = "0.1.0.4";
+ sha256 = "0hjx7v02w6dlizb16jpdndy12kp2cxp9y1fbl8asjybhwvqid5sc";
enableSeparateDataOutput = true;
setupHaskellDepends = [ base Cabal ];
libraryHaskellDepends = [
base bytestring fltkhs load-font text vector
];
librarySystemDepends = [ fontconfig ];
+ description = "A set of themed widgets that provides drop in replacements to the ones in FLTKHS";
license = stdenv.lib.licenses.bsd3;
hydraPlatforms = stdenv.lib.platforms.none;
}) {inherit (pkgs) fontconfig;};
@@ -80437,8 +80410,8 @@ self: {
}:
mkDerivation {
pname = "free-algebras";
- version = "0.0.7.1";
- sha256 = "16hdc019x32azkhzag1d504ahdgqswim5cpgmacvdxj3r08havq3";
+ version = "0.0.7.2";
+ sha256 = "0hljd9wsv516jcqp7pkacmadjchkd9sxq42pj5j1my95hvc5apfd";
libraryHaskellDepends = [
base constraints containers data-fix dlist free groups
kan-extensions mtl natural-numbers transformers
@@ -82628,6 +82601,7 @@ self: {
];
description = "Gamma function and related functions";
license = stdenv.lib.licenses.publicDomain;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"gang-of-threads" = callPackage
@@ -85245,6 +85219,7 @@ self: {
];
description = "The GHC API, decoupled from GHC versions";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"ghc-make" = callPackage
@@ -86334,6 +86309,7 @@ self: {
];
description = "Bridge between packages gi-* and cairo-core";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"gi-cairo-connector" = callPackage
@@ -87377,12 +87353,12 @@ self: {
}:
mkDerivation {
pname = "git-annex";
- version = "7.20190129";
- sha256 = "0gsi1ymv7dmx429vhv58979hfh23zrfvrsam6saf16ckh5hd0n81";
+ version = "7.20190219";
+ sha256 = "0161jszid9nih31q55zh8dldyfz5q0v4m2gw9dbb2hb1x47w3ww2";
configureFlags = [
"-fassistant" "-f-benchmark" "-fdbus" "-f-debuglocks" "-fmagicmime"
- "-fpairing" "-fproduction" "-fs3" "-ftorrentparser" "-fwebapp"
- "-fwebdav"
+ "-f-networkbsd" "-fpairing" "-fproduction" "-fs3" "-ftorrentparser"
+ "-fwebapp" "-fwebdav"
];
isLibrary = false;
isExecutable = true;
@@ -87420,7 +87396,7 @@ self: {
'';
enableSharedExecutables = false;
description = "manage files with git, without checking their contents into git";
- license = stdenv.lib.licenses.gpl3;
+ license = stdenv.lib.licenses.agpl3;
maintainers = with stdenv.lib.maintainers; [ peti ];
}) {inherit (pkgs) bup; inherit (pkgs) curl; inherit (pkgs) git;
inherit (pkgs) gnupg; inherit (pkgs) lsof; inherit (pkgs) openssh;
@@ -87798,23 +87774,24 @@ self: {
"github" = callPackage
({ mkDerivation, aeson, base, base-compat, base16-bytestring
- , binary, binary-orphans, byteable, bytestring, containers
- , cryptohash, deepseq, deepseq-generics, exceptions, file-embed
- , hashable, hspec, hspec-discover, http-client, http-client-tls
+ , binary, binary-orphans, bytestring, containers, cryptohash-sha1
+ , deepseq, deepseq-generics, exceptions, file-embed, hashable
+ , hspec, hspec-discover, http-client, http-client-tls
, http-link-header, http-types, iso8601-time, mtl, network-uri
- , semigroups, text, time, tls, transformers, transformers-compat
- , unordered-containers, vector, vector-instances
+ , semigroups, tagged, text, time, tls, transformers
+ , transformers-compat, unordered-containers, vector
+ , vector-instances
}:
mkDerivation {
pname = "github";
- version = "0.20";
- sha256 = "0gyinmrdwbqd6h5bvlv5jkv2rfp48p11088w5ayms8h361ck3kdp";
+ version = "0.21";
+ sha256 = "1ck4mnvxzgbpzy1v7xgggfn69733hm2smhbivmcvdmxd104lzvsq";
libraryHaskellDepends = [
aeson base base-compat base16-bytestring binary binary-orphans
- byteable bytestring containers cryptohash deepseq deepseq-generics
+ bytestring containers cryptohash-sha1 deepseq deepseq-generics
exceptions hashable http-client http-client-tls http-link-header
- http-types iso8601-time mtl network-uri semigroups text time tls
- transformers transformers-compat unordered-containers vector
+ http-types iso8601-time mtl network-uri semigroups tagged text time
+ tls transformers transformers-compat unordered-containers vector
vector-instances
];
testHaskellDepends = [
@@ -88744,10 +88721,8 @@ self: {
}:
mkDerivation {
pname = "glirc";
- version = "2.29";
- sha256 = "04i6dzb6fgvx1vxpn8syzc9pa4mq2m62mrgq4iraqwgkzl54ahgx";
- revision = "2";
- editedCabalFile = "0s37m39c3vnwskvbsiziysm9ck7l30bfkp2jg0l49dhi8v01q6cs";
+ version = "2.30";
+ sha256 = "1ky0xwspnfknbjyf0fa459f38nwqakwq6fh7ady4rch8ck22phql";
isLibrary = true;
isExecutable = true;
setupHaskellDepends = [ base Cabal filepath ];
@@ -89404,27 +89379,6 @@ self: {
}) {inherit (pkgs) libidn;};
"gnuplot" = callPackage
- ({ mkDerivation, array, base, containers, data-accessor
- , data-accessor-transformers, deepseq, filepath, process
- , semigroups, temporary, time, transformers, utility-ht
- }:
- mkDerivation {
- pname = "gnuplot";
- version = "0.5.5.3";
- sha256 = "0105ajc5szgrh091x5fxdcydc96rdh75gg2snyfr2y2rhf120x2g";
- isLibrary = true;
- isExecutable = true;
- enableSeparateDataOutput = true;
- libraryHaskellDepends = [
- array base containers data-accessor data-accessor-transformers
- deepseq filepath process semigroups temporary time transformers
- utility-ht
- ];
- description = "2D and 3D plots using gnuplot";
- license = stdenv.lib.licenses.bsd3;
- }) {};
-
- "gnuplot_0_5_6" = callPackage
({ mkDerivation, array, base, containers, data-accessor
, data-accessor-transformers, deepseq, filepath, process
, semigroups, temporary, time, transformers, utility-ht
@@ -89443,7 +89397,6 @@ self: {
];
description = "2D and 3D plots using gnuplot";
license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"gnutls" = callPackage
@@ -96318,8 +96271,8 @@ self: {
}:
mkDerivation {
pname = "hackport";
- version = "0.5.6";
- sha256 = "0im76n8487q08rmw8bn536qncrdhz9pjir5cxlf2myh7prrrrczs";
+ version = "0.6";
+ sha256 = "1fi3f90jd7s10iw1lcqhy8vfv27794sfsp7bjlb9rgab7jqf3wqv";
isLibrary = false;
isExecutable = true;
executableHaskellDepends = [
@@ -97441,10 +97394,10 @@ self: {
}:
mkDerivation {
pname = "hal";
- version = "0.1.2";
- sha256 = "0fflx0xism12cfdifwpiv0caxkm4f46yqhcwyrdwrdmq6q0pxdk2";
+ version = "0.2.0";
+ sha256 = "19binbpgkx04gx2apqa59rm32d8jr4m2v9xxfc2fd9v28gaa7cw2";
revision = "1";
- editedCabalFile = "09ng464s88dsfdwk4zdzi0yagy5mm41035p4glwiyhdqxc5n60yg";
+ editedCabalFile = "1pp82nv1r61rlykhllgldm2x6wvp8w4xjflx31bnba2444sn92mm";
libraryHaskellDepends = [
aeson base bytestring containers envy exceptions http-conduit
http-types mtl text time
@@ -98487,6 +98440,7 @@ self: {
];
description = "Glue code for using Happstack with acid-state, web-routes, reform, and HSP";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"happstack-hamlet" = callPackage
@@ -101285,6 +101239,27 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "haskell-src-meta_0_8_1" = callPackage
+ ({ mkDerivation, base, containers, haskell-src-exts, HUnit, pretty
+ , syb, template-haskell, test-framework, test-framework-hunit
+ , th-orphans
+ }:
+ mkDerivation {
+ pname = "haskell-src-meta";
+ version = "0.8.1";
+ sha256 = "0cainxgsa206fc2ij5gv1zaaazvqwzp5bavimrvwbscpnscnm89n";
+ libraryHaskellDepends = [
+ base haskell-src-exts pretty syb template-haskell th-orphans
+ ];
+ testHaskellDepends = [
+ base containers haskell-src-exts HUnit pretty syb template-haskell
+ test-framework test-framework-hunit
+ ];
+ description = "Parse source to template-haskell abstract syntax";
+ license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"haskell-src-meta-mwotton" = callPackage
({ mkDerivation, base, containers, ghc-prim, haskell-src-exts
, pretty, syb, template-haskell
@@ -103342,6 +103317,7 @@ self: {
];
description = "Haskus web";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"haskyapi" = callPackage
@@ -105481,23 +105457,6 @@ self: {
}) {};
"hebrew-time" = callPackage
- ({ mkDerivation, base, HUnit, QuickCheck, test-framework
- , test-framework-hunit, test-framework-quickcheck2, time
- }:
- mkDerivation {
- pname = "hebrew-time";
- version = "0.1.1";
- sha256 = "0ckridxf4rvhhp0k1mckbbbpzfs32l4mwg7n9mrmsggldpl7x6f7";
- libraryHaskellDepends = [ base time ];
- testHaskellDepends = [
- base HUnit QuickCheck test-framework test-framework-hunit
- test-framework-quickcheck2 time
- ];
- description = "Hebrew dates and prayer times";
- license = stdenv.lib.licenses.mit;
- }) {};
-
- "hebrew-time_0_1_2" = callPackage
({ mkDerivation, base, hspec, QuickCheck, time }:
mkDerivation {
pname = "hebrew-time";
@@ -105507,7 +105466,6 @@ self: {
testHaskellDepends = [ base hspec QuickCheck time ];
description = "Hebrew dates and prayer times";
license = stdenv.lib.licenses.mit;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"hecc" = callPackage
@@ -108000,7 +107958,7 @@ self: {
"hierarchical-spectral-clustering" = callPackage
({ mkDerivation, aeson, aeson-pretty, base, bytestring, cassava
- , clustering, containers, eigen, fgl, filepath
+ , clustering, containers, directory, eigen, fgl, filepath
, hierarchical-clustering, hmatrix, lens, managed, modularity, mtl
, optparse-generic, safe, sparse-linear-algebra
, spectral-clustering, streaming, streaming-bytestring
@@ -108009,8 +107967,8 @@ self: {
}:
mkDerivation {
pname = "hierarchical-spectral-clustering";
- version = "0.3.0.0";
- sha256 = "0n4rs9s7gavzm9ms2rgxw4jri0n10x5y9jg1vkcmkkklp8n04w70";
+ version = "0.3.0.1";
+ sha256 = "15k1mmfh5iklivz1w8fx0y9w7qivhvkj16xll9m0i9k1p8irlzwj";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -108021,8 +107979,8 @@ self: {
vector
];
executableHaskellDepends = [
- aeson aeson-pretty base bytestring cassava containers filepath
- hmatrix lens optparse-generic safe text text-show vector
+ aeson aeson-pretty base bytestring cassava containers directory
+ filepath hmatrix lens optparse-generic safe text text-show vector
];
description = "Hierarchical spectral clustering of a graph";
license = stdenv.lib.licenses.gpl3;
@@ -109223,8 +109181,8 @@ self: {
}:
mkDerivation {
pname = "hjugement";
- version = "2.0.0.20181030";
- sha256 = "063d484ns520prgvb2b1szq33wx569fgbgrzvfrgpfcznra638fi";
+ version = "2.0.1.20190208";
+ sha256 = "10921dk9y460dmgy5dhkfxcsc96cxkw2xxziykizp8zhmzrdlwz6";
libraryHaskellDepends = [
base containers hashable unordered-containers
];
@@ -109330,8 +109288,8 @@ self: {
}:
mkDerivation {
pname = "hleap";
- version = "0.1.2.7";
- sha256 = "1qpfwg69dzwzaf09q3pzkzwanzc9kb5zx733ck27g5xdsi79slsf";
+ version = "0.2.0.0";
+ sha256 = "0hh9r884kjw8gi7mcg74kzixzxxwzs1h67mg9z108kmlmnb742ry";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -110319,6 +110277,7 @@ self: {
testHaskellDepends = [ base HUnit vector ];
description = "HMEP Multi Expression Programming – a genetic programming variant";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"hmidi" = callPackage
@@ -118124,7 +118083,7 @@ self: {
license = stdenv.lib.licenses.mit;
}) {};
- "http-client_0_6_1" = callPackage
+ "http-client_0_6_1_1" = callPackage
({ mkDerivation, array, async, base, blaze-builder, bytestring
, case-insensitive, containers, cookie, deepseq, directory
, exceptions, filepath, ghc-prim, hspec, http-types, memory
@@ -118133,10 +118092,8 @@ self: {
}:
mkDerivation {
pname = "http-client";
- version = "0.6.1";
- sha256 = "0ryj5far7744c297ji9aaqcm56rpm2fyma8mbghli086nq4xiryl";
- revision = "1";
- editedCabalFile = "10fihwn9vvk4mdjppmzhxz7iacm8av03xv8hshiwnz3wg6bfh813";
+ version = "0.6.1.1";
+ sha256 = "0dyrk1c90fj9z5fy68hngqlzxa1sd8abkh7y0higbd15sb1yml6x";
libraryHaskellDepends = [
array base blaze-builder bytestring case-insensitive containers
cookie deepseq exceptions filepath ghc-prim http-types memory
@@ -124657,6 +124614,7 @@ self: {
];
description = "SDK for adding custom Instana tracing support to Haskell applications";
license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"instance-control" = callPackage
@@ -125104,6 +125062,37 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "interp" = callPackage
+ ({ mkDerivation, aeson, base, bytestring, containers, hspec
+ , megaparsec, mtl, optparse-applicative, parser-combinators
+ , random-fu, rvar, semigroups, text, transformers
+ , unordered-containers, vector
+ }:
+ mkDerivation {
+ pname = "interp";
+ version = "1.0.0.2";
+ sha256 = "036j44vrvgvxvnlj57mkg4h8cc6dycxfrszmgai70mybr3bxvhd5";
+ isLibrary = true;
+ isExecutable = true;
+ libraryHaskellDepends = [
+ aeson base bytestring containers hspec megaparsec mtl
+ optparse-applicative parser-combinators random-fu rvar semigroups
+ text transformers unordered-containers vector
+ ];
+ executableHaskellDepends = [
+ aeson base bytestring containers hspec megaparsec mtl
+ optparse-applicative parser-combinators random-fu rvar semigroups
+ text transformers unordered-containers vector
+ ];
+ testHaskellDepends = [
+ aeson base bytestring containers hspec megaparsec mtl
+ optparse-applicative parser-combinators random-fu rvar semigroups
+ text transformers unordered-containers vector
+ ];
+ description = "Tracery-like randomized text interpolation";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"interpol" = callPackage
({ mkDerivation, base, haskell-src-exts, HUnit, regex-posix, syb
, test-framework, test-framework-hunit
@@ -125195,22 +125184,6 @@ self: {
}) {};
"interpolation" = callPackage
- ({ mkDerivation, array, base, containers, QuickCheck, utility-ht }:
- mkDerivation {
- pname = "interpolation";
- version = "0.1.0.3";
- sha256 = "0j9hdzi59lqq92773f8h17awrm9ghr45k876qc7krq87pgbr95z2";
- isLibrary = true;
- isExecutable = true;
- libraryHaskellDepends = [ base utility-ht ];
- testHaskellDepends = [
- array base containers QuickCheck utility-ht
- ];
- description = "piecewise linear and cubic Hermite interpolation";
- license = stdenv.lib.licenses.bsd3;
- }) {};
-
- "interpolation_0_1_1" = callPackage
({ mkDerivation, array, base, containers, QuickCheck, utility-ht }:
mkDerivation {
pname = "interpolation";
@@ -125224,7 +125197,6 @@ self: {
];
description = "piecewise linear and cubic Hermite interpolation";
license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"interpolator" = callPackage
@@ -126208,10 +126180,8 @@ self: {
}:
mkDerivation {
pname = "irc-core";
- version = "2.5.0";
- sha256 = "124zfp6s8hj7z3m873145bnr0z8xlkbr1qgj2hvasd2qs2zrb8y8";
- revision = "1";
- editedCabalFile = "06n7shnd8ij4wlzm5xhxdqv26b3am8mgbqfcvsqppk6hgmmyvggq";
+ version = "2.6.0";
+ sha256 = "07w8nyvscc2d643dq02bl533c2kwx8zw8j1b1dizfwhixwnzgphq";
libraryHaskellDepends = [
attoparsec base base64-bytestring bytestring hashable primitive
text time vector
@@ -129886,8 +129856,8 @@ self: {
}:
mkDerivation {
pname = "kafka-device";
- version = "0.2.1.2";
- sha256 = "0fs6k04cchlsmrcn2sm9sdq07waia4ff8hhhqx24yjjab5ai2798";
+ version = "1.0.0.0";
+ sha256 = "1bcd7fm42vly9hlfzv0cjzx2g4hrqp66nrypki75f2c8lqfzcr11";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -129905,8 +129875,8 @@ self: {
({ mkDerivation, base, GLUT, kafka-device, OpenGL }:
mkDerivation {
pname = "kafka-device-glut";
- version = "0.2.1.2";
- sha256 = "0in1hwmhbj41cvcwysbzbda7idbdpnlq2zggw2smlxjv078zp939";
+ version = "1.0.0.0";
+ sha256 = "0pkvar1rf0gv7h5a95h28jaifpwknfdvxvcv4s7f5vdrs0376j3k";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [ base GLUT kafka-device OpenGL ];
@@ -129922,8 +129892,8 @@ self: {
}:
mkDerivation {
pname = "kafka-device-joystick";
- version = "0.2.1.2";
- sha256 = "17plqjbl2jh185yjbphgw1viim7w52ib8sjv1g93i460ggpwsyp0";
+ version = "1.0.0.0";
+ sha256 = "0vm1a61brvhr5digsw480210cq7s6y2yp80j6907425y1r4165q4";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -129941,8 +129911,8 @@ self: {
({ mkDerivation, aeson, base, hleap, kafka-device, websockets }:
mkDerivation {
pname = "kafka-device-leap";
- version = "0.2.1.2";
- sha256 = "14wn3ywa462nf4snjl78bnxjf9jfqj39zkiay2z594yplqp2qsy1";
+ version = "1.0.0.0";
+ sha256 = "1xkkkq1plzjf20p6gfnk8nc809rp57ihffggvgzsgq8dwybzfssg";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -129962,8 +129932,8 @@ self: {
}:
mkDerivation {
pname = "kafka-device-spacenav";
- version = "0.2.1.2";
- sha256 = "0drpf4frlnf17qa92rppjdnxpsks8v3q0h3jad5lyvcvmpssrw1r";
+ version = "1.0.0.0";
+ sha256 = "0m382s7q3w21pl62fjh6pw9w4dwi6cmpc8s4xnzivwjj91hynryb";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -129981,8 +129951,8 @@ self: {
({ mkDerivation, base, kafka-device, vrpn }:
mkDerivation {
pname = "kafka-device-vrpn";
- version = "0.2.1.2";
- sha256 = "0zmiyfvdn16rd2jg44xvdpfm08fi8ivv0af6hdhc46l5q4zd9p4s";
+ version = "1.0.0.0";
+ sha256 = "13l32gfpz5l2xi42xvvyzj9g1kqsbd3jkx2498lacwx4kgvlm2rd";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [ base kafka-device vrpn ];
@@ -130348,6 +130318,7 @@ self: {
];
description = "Datadog scribe for the Katip logging framework";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"katip-elasticsearch" = callPackage
@@ -130419,6 +130390,7 @@ self: {
];
description = "Logz.IO scribe for the Katip logging framework";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"katip-rollbar" = callPackage
@@ -131842,6 +131814,7 @@ self: {
libraryHaskellDepends = [ base gamma random-fu roots vector ];
description = "Kolmogorov distribution and Kolmogorov-Smirnov test";
license = stdenv.lib.licenses.publicDomain;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"ksystools" = callPackage
@@ -132981,6 +132954,21 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "language-asn" = callPackage
+ ({ mkDerivation, base, bytestring, contravariant, hashable, pretty
+ , primitive, text, vector
+ }:
+ mkDerivation {
+ pname = "language-asn";
+ version = "0.1.0.0";
+ sha256 = "0pjzcnw5d9j8nif0w8ibh3rnsgpv710ng8w8hsrcsbq7qm02sp7f";
+ libraryHaskellDepends = [
+ base bytestring contravariant hashable pretty primitive text vector
+ ];
+ description = "ASN.1 encoding and decoding";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"language-asn1" = callPackage
({ mkDerivation, base, parsec, syb }:
mkDerivation {
@@ -134995,6 +134983,7 @@ self: {
];
description = "Use the Leanpub API via Wreq";
license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"leapseconds" = callPackage
@@ -136877,17 +136866,6 @@ self: {
}) {xslt = null;};
"libyaml" = callPackage
- ({ mkDerivation, base, bytestring, conduit, resourcet }:
- mkDerivation {
- pname = "libyaml";
- version = "0.1.0.0";
- sha256 = "01vgzf05ad1v8h65n12fwd2whldnqhlv7cbcaf08m3ck2viqimlw";
- libraryHaskellDepends = [ base bytestring conduit resourcet ];
- description = "Low-level, streaming YAML interface";
- license = stdenv.lib.licenses.bsd3;
- }) {};
-
- "libyaml_0_1_1_0" = callPackage
({ mkDerivation, base, bytestring, conduit, resourcet }:
mkDerivation {
pname = "libyaml";
@@ -136896,7 +136874,6 @@ self: {
libraryHaskellDepends = [ base bytestring conduit resourcet ];
description = "Low-level, streaming YAML interface";
license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"libzfs" = callPackage
@@ -140992,6 +140969,23 @@ self: {
license = stdenv.lib.licenses.mit;
}) {};
+ "lucid-extras_0_2_2" = callPackage
+ ({ mkDerivation, aeson, base, blaze-builder, bytestring, directory
+ , lucid, text
+ }:
+ mkDerivation {
+ pname = "lucid-extras";
+ version = "0.2.2";
+ sha256 = "0zi48ly2729rs3rsbnwj3z5zk9zgzmva0d3dvp448726r62ryfc3";
+ libraryHaskellDepends = [
+ aeson base blaze-builder bytestring lucid text
+ ];
+ testHaskellDepends = [ base directory lucid ];
+ description = "Generate more HTML with Lucid - Bootstrap, Rdash, Vega-Lite, Leaflet JS, Email";
+ license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"lucid-foundation" = callPackage
({ mkDerivation, base, hspec, lucid, QuickCheck
, quickcheck-instances, text
@@ -141807,8 +141801,8 @@ self: {
}:
mkDerivation {
pname = "madlang";
- version = "4.0.2.14";
- sha256 = "1fpqs3cyb0iwld53gljkzsz7xhwamkd4g2irk7j3z6pxvn36bhin";
+ version = "4.0.2.15";
+ sha256 = "0fv2p6f6gj9jg72kmlf56nymvs3sf6hn98jh4q0ighn6k5dkhbf3";
isLibrary = true;
isExecutable = true;
setupHaskellDepends = [ base Cabal cli-setup ];
@@ -143494,6 +143488,7 @@ self: {
testHaskellDepends = [ array base containers hspec random ];
description = "Library containing graph data structures and graph algorithms";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"mathblog" = callPackage
@@ -147197,29 +147192,10 @@ self: {
];
description = "Command line interface to the MMark markdown processor";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"mmark-ext" = callPackage
- ({ mkDerivation, base, foldl, ghc-syntax-highlighter, hspec
- , hspec-discover, lucid, microlens, mmark, modern-uri, skylighting
- , text
- }:
- mkDerivation {
- pname = "mmark-ext";
- version = "0.2.1.1";
- sha256 = "01av7d9n75mg9yzkxszrvbxjbsv4n0gsdmg3n2620zn40j5lwmcq";
- enableSeparateDataOutput = true;
- libraryHaskellDepends = [
- base foldl ghc-syntax-highlighter lucid microlens mmark modern-uri
- skylighting text
- ];
- testHaskellDepends = [ base hspec lucid mmark skylighting text ];
- testToolDepends = [ hspec-discover ];
- description = "Commonly useful extensions for the MMark markdown processor";
- license = stdenv.lib.licenses.bsd3;
- }) {};
-
- "mmark-ext_0_2_1_2" = callPackage
({ mkDerivation, base, foldl, ghc-syntax-highlighter, hspec
, hspec-discover, lucid, microlens, mmark, modern-uri, skylighting
, text
@@ -162760,6 +162736,7 @@ self: {
testHaskellDepends = [ base process ];
description = "Parse command-line arguments";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"parsec_3_1_13_0" = callPackage
@@ -163256,18 +163233,6 @@ self: {
}) {};
"partial-semigroup" = callPackage
- ({ mkDerivation, base, doctest, hedgehog }:
- mkDerivation {
- pname = "partial-semigroup";
- version = "0.5.0.0";
- sha256 = "03wfizykalpnv2i2qmj2vm27ajs1s8kmzy7ynsh8b2l43nafixqm";
- libraryHaskellDepends = [ base ];
- testHaskellDepends = [ base doctest hedgehog ];
- description = "A partial binary associative operator";
- license = stdenv.lib.licenses.asl20;
- }) {};
-
- "partial-semigroup_0_5_1_0" = callPackage
({ mkDerivation, base, doctest, hedgehog }:
mkDerivation {
pname = "partial-semigroup";
@@ -163277,7 +163242,6 @@ self: {
testHaskellDepends = [ base doctest hedgehog ];
description = "A partial binary associative operator";
license = stdenv.lib.licenses.asl20;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"partial-semigroup-hedgehog" = callPackage
@@ -163609,27 +163573,6 @@ self: {
}) {};
"path-io" = callPackage
- ({ mkDerivation, base, containers, directory, dlist, exceptions
- , filepath, hspec, path, temporary, time, transformers, unix-compat
- }:
- mkDerivation {
- pname = "path-io";
- version = "1.4.1";
- sha256 = "0v5zwdsy8dd2ljidjm2rr8wfpvjlgk1g7c5xf40ddzjn9ghykk2p";
- revision = "1";
- editedCabalFile = "1qb9b3rvzpdm6xp2xljmp2izz0x26bj3zvai22iyl914pzph3181";
- libraryHaskellDepends = [
- base containers directory dlist exceptions filepath path temporary
- time transformers unix-compat
- ];
- testHaskellDepends = [
- base directory exceptions hspec path transformers unix-compat
- ];
- description = "Interface to ‘directory’ package for users of ‘path’";
- license = stdenv.lib.licenses.bsd3;
- }) {};
-
- "path-io_1_4_2" = callPackage
({ mkDerivation, base, containers, directory, dlist, exceptions
, filepath, hspec, path, temporary, time, transformers, unix-compat
}:
@@ -163646,7 +163589,6 @@ self: {
];
description = "Interface to ‘directory’ package for users of ‘path’";
license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"path-pieces" = callPackage
@@ -172665,6 +172607,7 @@ self: {
];
description = "Easy and reasonably efficient probabilistic programming and random generation";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"proc" = callPackage
@@ -177429,6 +177372,8 @@ self: {
pname = "radian";
version = "0.1";
sha256 = "150vb9wk73avh8rrsz92y1fcwlm30w4k23lbdncb8ivinqhdi4pv";
+ revision = "1";
+ editedCabalFile = "1mkk17rrg2z6s1qkzz7qcm6q6qvgmcmvii9rzjzgn73m1x1l5rim";
libraryHaskellDepends = [ base profunctors ];
testHaskellDepends = [ base HUnit lens ];
description = "Isomorphisms for measurements that use radians";
@@ -178680,6 +178625,7 @@ self: {
benchmarkHaskellDepends = [ base-noprelude gauge relude ];
description = "Client for rating.chgk.info API and CSV tables (documentation in Russian)";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"rating-systems" = callPackage
@@ -178736,7 +178682,7 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
- "rattletrap_6_2_1" = callPackage
+ "rattletrap_6_2_2" = callPackage
({ mkDerivation, aeson, aeson-pretty, base, binary, binary-bits
, bytestring, clock, containers, filepath, http-client
, http-client-tls, HUnit, template-haskell, temporary, text
@@ -178744,8 +178690,8 @@ self: {
}:
mkDerivation {
pname = "rattletrap";
- version = "6.2.1";
- sha256 = "0pygwgq5q6mvpbkis2xiw6ac65fn8q9452qql5dc21p4mi27bwka";
+ version = "6.2.2";
+ sha256 = "06gbvkg6wn7dql954bzbw8l1460hk2f9055404q0a949qlmmqb3p";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -180692,6 +180638,7 @@ self: {
];
description = "Functional Reactive Web Apps with Reflex";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"reflex-dom-fragment-shader-canvas" = callPackage
@@ -182854,7 +182801,7 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
- "req_2_0_0" = callPackage
+ "req_2_0_1" = callPackage
({ mkDerivation, aeson, authenticate-oauth, base, blaze-builder
, bytestring, case-insensitive, connection, hspec, hspec-core
, hspec-discover, http-api-data, http-client, http-client-tls
@@ -182863,8 +182810,8 @@ self: {
}:
mkDerivation {
pname = "req";
- version = "2.0.0";
- sha256 = "0avwvslsb689p9afbh3k0zwmqwkrqagicz26xcyfjsd5648mh3wr";
+ version = "2.0.1";
+ sha256 = "1mfm6yy23l64kqbxvp1yn3yqf7fl46as87rz4yazg7f5x13bas3r";
enableSeparateDataOutput = true;
libraryHaskellDepends = [
aeson authenticate-oauth base blaze-builder bytestring
@@ -186993,6 +186940,7 @@ self: {
];
description = "Configuration Loader";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"salak_0_2_3" = callPackage
@@ -187306,6 +187254,8 @@ self: {
pname = "sandi";
version = "0.5";
sha256 = "1ndgai8idlxyccvkz5zsgq06v58blc30i6hkky5b1sf5x6gs2h29";
+ revision = "1";
+ editedCabalFile = "1aj9i1ir6ks3bdb47yvqlxv2azrz09p69ggr73m0cxvir9rd0y5j";
libraryHaskellDepends = [ base bytestring conduit exceptions ];
testHaskellDepends = [
base bytestring tasty tasty-hunit tasty-quickcheck tasty-th
@@ -187726,6 +187676,7 @@ self: {
];
description = "Low-level Starcraft II API";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"sc2-proto" = callPackage
@@ -187745,6 +187696,7 @@ self: {
libraryToolDepends = [ proto-lens-protoc protoc ];
description = "A protocol buffer model for the Starcraft II bot API";
license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {protoc = null;};
"sc2-support" = callPackage
@@ -188178,8 +188130,8 @@ self: {
}:
mkDerivation {
pname = "schematic";
- version = "0.4.2.0";
- sha256 = "0k63pnv8mip8kn623s5n7w24bd4spjmi1a9h280nf7wd1q8z72n4";
+ version = "0.5.0.0";
+ sha256 = "0mq38m08gj90gyk38lj4vyyfz0d6qrpxlpqjizqvyj4k3hqqy4ka";
libraryHaskellDepends = [
aeson base bytestring containers hjsonschema mtl profunctors
regex-tdfa regex-tdfa-text scientific singletons smallcheck tagged
@@ -188852,6 +188804,7 @@ self: {
];
description = "Automatically derive Kotlin class to query servant webservices";
license = stdenv.lib.licenses.mit;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"scrape-changes" = callPackage
@@ -192752,6 +192705,7 @@ self: {
];
description = "Servant Integration for Waargonaut JSON Package";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"servant-websockets" = callPackage
@@ -195035,6 +194989,7 @@ self: {
];
description = "Clean up the formatting of 'show' output";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"shpider" = callPackage
@@ -195513,6 +195468,29 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "simple-cmd_0_1_3" = callPackage
+ ({ mkDerivation, base, directory, filepath, process }:
+ mkDerivation {
+ pname = "simple-cmd";
+ version = "0.1.3";
+ sha256 = "04bbdfmfy08fl07f0pqzp31jy4fdky4d9hazyxpqla8m3rs49xa9";
+ libraryHaskellDepends = [ base directory filepath process ];
+ description = "Simple String-based process commands";
+ license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
+ "simple-cmd-args" = callPackage
+ ({ mkDerivation, base, optparse-applicative }:
+ mkDerivation {
+ pname = "simple-cmd-args";
+ version = "0.1.0";
+ sha256 = "1cwh2ikk1iccbm5yq7hihk3yhfg4zbxsi8q1jpjavzlcs18sfnll";
+ libraryHaskellDepends = [ base optparse-applicative ];
+ description = "Simple command args parsing and execution";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"simple-conduit" = callPackage
({ mkDerivation, base, bifunctors, bytestring, CC-delcont
, chunked-data, conduit, conduit-combinators, conduit-extra
@@ -196561,8 +196539,8 @@ self: {
}:
mkDerivation {
pname = "siren-json";
- version = "0.3.0.0";
- sha256 = "096a4ls4kqpslqsh499ykh7mkvnz3q7n00w1par69kmj4x3g9v0j";
+ version = "0.3.1.1";
+ sha256 = "0idkblh14jz1l2miphb07lynpw8n1bshxf3q37chclc25wr156zk";
libraryHaskellDepends = [
aeson base bytestring containers http-media http-types network-uri
network-uri-json text unordered-containers
@@ -197733,6 +197711,7 @@ self: {
];
description = "Command line tool for .";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"smith-client" = callPackage
@@ -197756,6 +197735,7 @@ self: {
];
description = "API client for .";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"smoothie" = callPackage
@@ -199448,21 +199428,18 @@ self: {
}) {};
"snmp" = callPackage
- ({ mkDerivation, asn1-encoding, asn1-parse, asn1-types, async, base
- , binary, bytestring, cipher-aes, cipher-des, containers
- , crypto-cipher-types, cryptohash, mtl, network, network-info
- , random, securemem, text, time
+ ({ mkDerivation, base, bytestring, containers, cryptonite, ip
+ , language-asn, memory, network, stm, vector
}:
mkDerivation {
pname = "snmp";
- version = "0.2.1.1";
- sha256 = "1944ffsmw4hamjpzb9prlcnz6l9lgggbsgi6ilj0v84r8bydcdq7";
+ version = "0.3.0.0";
+ sha256 = "1lpmwl74hg1x5065r1jhgi6rfmyasjmhqaghnckg6rzii0nxym9d";
libraryHaskellDepends = [
- asn1-encoding asn1-parse asn1-types async base binary bytestring
- cipher-aes cipher-des containers crypto-cipher-types cryptohash mtl
- network network-info random securemem text time
+ base bytestring containers cryptonite ip language-asn memory
+ network stm vector
];
- description = "API for write snmp client";
+ description = "SNMP protocol library";
license = stdenv.lib.licenses.bsd3;
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
@@ -200173,6 +200150,7 @@ self: {
executableHaskellDepends = [ base containers parseargs WAVE ];
description = "Audio delay line";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"soundgen" = callPackage
@@ -200186,6 +200164,7 @@ self: {
executableHaskellDepends = [ base split WAVE ];
description = "sound generator";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"source-code-server" = callPackage
@@ -203719,19 +203698,20 @@ self: {
"stdio" = callPackage
({ mkDerivation, base, case-insensitive, deepseq, exceptions
, ghc-prim, hashable, hspec, hspec-discover, HUnit, integer-gmp
- , primitive, QuickCheck, quickcheck-instances, scientific, stm
- , template-haskell, time, transformers, uv, word8
+ , libuv, primitive, QuickCheck, quickcheck-instances, scientific
+ , stm, template-haskell, time, word8
}:
mkDerivation {
pname = "stdio";
- version = "0.1.0.0";
- sha256 = "1y98y92n30sxn8hk4nwfh8jjrwnc2v0cqd766r5dgd1rq6rlf6yv";
+ version = "0.1.1.0";
+ sha256 = "1sspnrflqac9clf9h6zwnhlvsw52xx97dlxyl6lhw6czy2qy813d";
+ revision = "1";
+ editedCabalFile = "1xdw84i0nlc3iz3i01li9p44raxn265kqjd284ifbf83vvhbp897";
libraryHaskellDepends = [
base case-insensitive deepseq exceptions ghc-prim hashable
- integer-gmp primitive scientific stm template-haskell time
- transformers word8
+ integer-gmp primitive scientific stm template-haskell time word8
];
- librarySystemDepends = [ uv ];
+ libraryPkgconfigDepends = [ libuv ];
libraryToolDepends = [ hspec-discover ];
testHaskellDepends = [
base hashable hspec HUnit integer-gmp primitive QuickCheck
@@ -203739,7 +203719,8 @@ self: {
];
description = "A simple and high performance IO toolkit for Haskell";
license = stdenv.lib.licenses.bsd3;
- }) {uv = null;};
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {inherit (pkgs) libuv;};
"steambrowser" = callPackage
({ mkDerivation, base, directory, parsec, transformers }:
@@ -204847,23 +204828,24 @@ self: {
}) {};
"streaming-base64" = callPackage
- ({ mkDerivation, base, safe-exceptions, streaming
- , streaming-bytestring, tasty, tasty-hunit, transformers
+ ({ mkDerivation, base, base-compat-batteries, filepath
+ , safe-exceptions, streaming, streaming-bytestring, streaming-with
+ , tasty, tasty-golden, transformers
}:
mkDerivation {
pname = "streaming-base64";
- version = "0.1.0.0";
- sha256 = "0w6xj80z1z21pgxadwc48w15a08g94i4g7qkgv5gvq46kpl44bq6";
- revision = "1";
- editedCabalFile = "0mc71ncw2mw3yfryk0g2iq86wba7i3khy8fbsjaz5dr22hkkzh9r";
+ version = "0.1.1.0";
+ sha256 = "0yyjdld05i4bfx73maf5vzdrp7hx65784sv7bnnw4xfal1k20vlj";
libraryHaskellDepends = [
- base safe-exceptions streaming streaming-bytestring transformers
+ base base-compat-batteries safe-exceptions streaming
+ streaming-bytestring transformers
];
testHaskellDepends = [
- base streaming-bytestring tasty tasty-hunit
+ base base-compat-batteries filepath streaming-bytestring
+ streaming-with tasty tasty-golden
];
description = "Streaming conversion from/to base64";
- license = stdenv.lib.licenses.cc0;
+ license = stdenv.lib.licenses.publicDomain;
}) {};
"streaming-benchmarks" = callPackage
@@ -210099,6 +210081,7 @@ self: {
testToolDepends = [ tasty-discover ];
description = "A command-line kanban board/task manager";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"taskpool" = callPackage
@@ -210337,8 +210320,8 @@ self: {
pname = "tasty-hedgehog-coverage";
version = "0.1.0.0";
sha256 = "1d2hnhkpk71k0xjw63jsn6fa4ih01xqn4dgdbflp6yrs0zw6p95c";
- revision = "1";
- editedCabalFile = "1p3d9w24q39fnljv9m5a8anpv3j3cvazbca4d3hqrjx5w06ik42f";
+ revision = "2";
+ editedCabalFile = "10fzklan91gyd3bs5qgyv83v7xflxdfcjlvqgcv15bzwplzngclx";
libraryHaskellDepends = [
base containers hedgehog mtl tagged tasty tasty-hedgehog text
transformers wl-pprint-annotated
@@ -211256,8 +211239,8 @@ self: {
({ mkDerivation, base, base-prelude, template-haskell }:
mkDerivation {
pname = "template-haskell-compat-v0208";
- version = "0.1.1";
- sha256 = "1dgxfcz68h583r15vc3zmj2fchsv5v4n2v55fz2ccw6sl3kyvlp3";
+ version = "0.1.1.1";
+ sha256 = "0il2bm5bwa4majddlzckc6jlcwx4w1kmymz9szj11hwjchgd1w3l";
libraryHaskellDepends = [ base base-prelude template-haskell ];
description = "A backwards compatibility layer for Template Haskell newer than 2.8";
license = stdenv.lib.licenses.mit;
@@ -216634,6 +216617,8 @@ self: {
pname = "to-string-class";
version = "0.1.2";
sha256 = "0l2hj0cbc0dhd7m5bn6xqgzkdf2z4knirmv8c65hsjig9mpsvsxf";
+ revision = "1";
+ editedCabalFile = "1p5q59gswv86pk7hxpg1n81q4szhwx8rwfx5hsibdz9i9mgz2bbs";
libraryHaskellDepends = [ base ];
description = "Converting string-like types to Strings";
license = stdenv.lib.licenses.bsd3;
@@ -217181,32 +217166,34 @@ self: {
}) {};
"toodles" = callPackage
- ({ mkDerivation, aeson, base, blaze-html, cmdargs, directory, extra
- , hspec, hspec-expectations, megaparsec, MissingH, regex-posix
- , servant, servant-blaze, servant-server, strict, text, wai, warp
+ ({ mkDerivation, aeson, base, base64-bytestring, blaze-html
+ , bytestring, cmdargs, directory, extra, hspec, hspec-expectations
+ , megaparsec, MissingH, process, regex-posix, RSA, servant
+ , servant-blaze, servant-server, strict, text, time, wai, warp
, yaml
}:
mkDerivation {
pname = "toodles";
- version = "1.0.3";
- sha256 = "1nzrfdbwz5ykiim76jr3v1666acrhh76k4q4gwix9bixcm8al2zf";
+ version = "1.1.1";
+ sha256 = "0n1z99f2zr2xj55y90ll9dvqq51sv4r4zyhjx7qilqw34djzfn88";
isLibrary = true;
isExecutable = true;
enableSeparateDataOutput = true;
libraryHaskellDepends = [
- aeson base blaze-html cmdargs directory extra hspec
- hspec-expectations megaparsec MissingH regex-posix servant
- servant-blaze servant-server strict text wai warp yaml
+ aeson base base64-bytestring blaze-html bytestring cmdargs
+ directory extra megaparsec MissingH process regex-posix RSA servant
+ servant-blaze servant-server strict text time wai warp yaml
];
executableHaskellDepends = [
- aeson base blaze-html cmdargs directory extra hspec
- hspec-expectations megaparsec MissingH regex-posix servant
- servant-blaze servant-server strict text wai warp yaml
+ aeson base base64-bytestring blaze-html bytestring cmdargs
+ directory extra megaparsec MissingH process regex-posix RSA servant
+ servant-blaze servant-server strict text time wai warp yaml
];
testHaskellDepends = [
- aeson base blaze-html cmdargs directory extra hspec
- hspec-expectations megaparsec MissingH regex-posix servant
- servant-blaze servant-server strict text wai warp yaml
+ aeson base base64-bytestring blaze-html bytestring cmdargs
+ directory extra hspec hspec-expectations megaparsec MissingH
+ process regex-posix servant servant-blaze servant-server strict
+ text time wai warp yaml
];
description = "Manage the TODO entries in your code";
license = stdenv.lib.licenses.mit;
@@ -218852,6 +218839,7 @@ self: {
executableHaskellDepends = [ base containers parseargs WAVE ];
description = "Audio file compressor-limiter";
license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"trurl" = callPackage
@@ -224306,6 +224294,20 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "useragents" = callPackage
+ ({ mkDerivation, base, random-fu, text }:
+ mkDerivation {
+ pname = "useragents";
+ version = "1.0.0";
+ sha256 = "1n4n4mhikzgx2a9qq8rify5wwhngnz0qip32fnhshham5yyldmy6";
+ isLibrary = true;
+ isExecutable = true;
+ libraryHaskellDepends = [ base random-fu text ];
+ executableHaskellDepends = [ base random-fu text ];
+ description = "A collection of user agents";
+ license = stdenv.lib.licenses.mit;
+ }) {};
+
"userid" = callPackage
({ mkDerivation, aeson, base, boomerang, cereal, safecopy
, web-routes, web-routes-th
@@ -226844,6 +226846,23 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "vinyl-generics" = callPackage
+ ({ mkDerivation, aeson, base, generics-sop, hspec, hspec-core
+ , QuickCheck, records-sop, text, vinyl
+ }:
+ mkDerivation {
+ pname = "vinyl-generics";
+ version = "0.1.0.0";
+ sha256 = "1rxv1wgckq5a3c65lvniizmv5f55gbnngxx76wa93h8lgrhf6ac0";
+ libraryHaskellDepends = [ base generics-sop records-sop vinyl ];
+ testHaskellDepends = [
+ aeson base generics-sop hspec hspec-core QuickCheck records-sop
+ text vinyl
+ ];
+ description = "Convert plain records to vinyl (and vice versa), generically";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"vinyl-gl" = callPackage
({ mkDerivation, base, containers, GLUtil, HUnit, linear, OpenGL
, tagged, test-framework, test-framework-hunit, transformers
@@ -227259,21 +227278,21 @@ self: {
}) {};
"vrpn" = callPackage
- ({ mkDerivation, base, vrpn }:
+ ({ mkDerivation, base, quat, vrpn }:
mkDerivation {
pname = "vrpn";
- version = "0.2.1.4";
- sha256 = "11iiwzhb9dqhk83p9gcnj4q2ya5m35bnic30a23z3l9lhsnn49b4";
+ version = "0.3.0.0";
+ sha256 = "1wyp8dnjag53qlbiz83d21046190kf8hv2izqk1alrniva4vz1kp";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [ base ];
- librarySystemDepends = [ vrpn ];
+ librarySystemDepends = [ quat vrpn ];
executableHaskellDepends = [ base ];
- executableSystemDepends = [ vrpn ];
+ executableSystemDepends = [ quat vrpn ];
description = "Bindings to VRPN";
license = stdenv.lib.licenses.mit;
hydraPlatforms = stdenv.lib.platforms.none;
- }) {inherit (pkgs) vrpn;};
+ }) {quat = null; inherit (pkgs) vrpn;};
"vt-utils" = callPackage
({ mkDerivation, aeson, aeson-pretty, base, bytestring
@@ -227632,39 +227651,6 @@ self: {
}) {};
"wai-app-static" = callPackage
- ({ mkDerivation, base, blaze-html, blaze-markup, bytestring
- , containers, cryptonite, directory, file-embed, filepath, hspec
- , http-date, http-types, memory, mime-types, mockery, network
- , old-locale, optparse-applicative, template-haskell, temporary
- , text, time, transformers, unix-compat, unordered-containers, wai
- , wai-extra, warp, zlib
- }:
- mkDerivation {
- pname = "wai-app-static";
- version = "3.1.6.2";
- sha256 = "0gnwq6ad5m8w8sqq4dzpz23l5rjdphfsf8h9h27lrvv1prkabc6h";
- isLibrary = true;
- isExecutable = true;
- libraryHaskellDepends = [
- base blaze-html blaze-markup bytestring containers cryptonite
- directory file-embed filepath http-date http-types memory
- mime-types old-locale optparse-applicative template-haskell text
- time transformers unix-compat unordered-containers wai wai-extra
- warp zlib
- ];
- executableHaskellDepends = [
- base bytestring containers directory mime-types text
- ];
- testHaskellDepends = [
- base bytestring filepath hspec http-date http-types mime-types
- mockery network old-locale temporary text time transformers
- unix-compat wai wai-extra zlib
- ];
- description = "WAI application for static serving";
- license = stdenv.lib.licenses.mit;
- }) {};
-
- "wai-app-static_3_1_6_3" = callPackage
({ mkDerivation, base, blaze-html, blaze-markup, bytestring
, containers, cryptonite, directory, file-embed, filepath, hspec
, http-date, http-types, memory, mime-types, mockery, network
@@ -227697,7 +227683,6 @@ self: {
];
description = "WAI application for static serving";
license = stdenv.lib.licenses.mit;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"wai-cli" = callPackage
@@ -231118,6 +231103,7 @@ self: {
];
description = "Data types for large but fixed width signed and unsigned integers";
license = stdenv.lib.licenses.bsd2;
+ hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"wigner-symbols" = callPackage
@@ -231167,6 +231153,23 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "wikicfp-scraper_0_1_0_10" = callPackage
+ ({ mkDerivation, attoparsec, base, bytestring, filepath, hspec
+ , scalpel-core, text, time
+ }:
+ mkDerivation {
+ pname = "wikicfp-scraper";
+ version = "0.1.0.10";
+ sha256 = "1j6aizgsf387pm6ajr6zjj1l4nnaq8mryq4vr09jji91ix9zhnw7";
+ libraryHaskellDepends = [
+ attoparsec base bytestring scalpel-core text time
+ ];
+ testHaskellDepends = [ base bytestring filepath hspec time ];
+ description = "Scrape WikiCFP web site";
+ license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"wikipedia4epub" = callPackage
({ mkDerivation, base, bytestring, directory, epub, filepath
, haskell98, HTTP, network, regex-base, regex-posix, tagsoup, url
@@ -231600,8 +231603,8 @@ self: {
}:
mkDerivation {
pname = "wkt-geom";
- version = "0.0.7";
- sha256 = "0lsasdlznsmfj6b9ky448fdkgvdqhldyzx9fbnj1jgd779hlammb";
+ version = "0.0.8";
+ sha256 = "123y2xl22gmg28dcj244gk9bsbw0chz32gim48dz4bmqnkmvl7wl";
libraryHaskellDepends = [
base base16-bytestring binary bytestring containers geojson
scientific trifecta utf8-string vector
@@ -235453,37 +235456,6 @@ self: {
}) {};
"yam" = callPackage
- ({ mkDerivation, base, base16-bytestring, binary, bytestring
- , data-default, fast-logger, hspec, http-client, http-types, lens
- , monad-logger, mtl, mwc-random, QuickCheck, reflection, salak
- , scientific, servant-client, servant-server, servant-swagger
- , servant-swagger-ui, swagger2, text, unliftio-core
- , unordered-containers, vault, vector, wai, warp
- }:
- mkDerivation {
- pname = "yam";
- version = "0.5.11";
- sha256 = "0k9y8zg1sbdxb6c3fdmlz0dswb8yam5x812avfw6rg3as8sp1pcf";
- libraryHaskellDepends = [
- base base16-bytestring binary bytestring data-default fast-logger
- http-client http-types lens monad-logger mtl mwc-random reflection
- salak scientific servant-client servant-server servant-swagger
- servant-swagger-ui swagger2 text unliftio-core unordered-containers
- vault vector wai warp
- ];
- testHaskellDepends = [
- base base16-bytestring binary bytestring data-default fast-logger
- hspec http-client http-types lens monad-logger mtl mwc-random
- QuickCheck reflection salak scientific servant-client
- servant-server servant-swagger servant-swagger-ui swagger2 text
- unliftio-core unordered-containers vault vector wai warp
- ];
- description = "Yam Web";
- license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
- }) {};
-
- "yam_0_5_13" = callPackage
({ mkDerivation, aeson, base, base16-bytestring, binary, bytestring
, data-default, fast-logger, hspec, http-client, http-types, lens
, menshen, monad-logger, mtl, mwc-random, QuickCheck, reflection
@@ -235555,22 +235527,6 @@ self: {
}) {};
"yam-datasource" = callPackage
- ({ mkDerivation, base, conduit, persistent, resource-pool
- , resourcet, unliftio-core, yam
- }:
- mkDerivation {
- pname = "yam-datasource";
- version = "0.5.11";
- sha256 = "170xpd1kw403g9zds795zbxkaz0qy7lfgzppx4q0ri42ky59z8pl";
- libraryHaskellDepends = [
- base conduit persistent resource-pool resourcet unliftio-core yam
- ];
- description = "Yam DataSource Middleware";
- license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
- }) {};
-
- "yam-datasource_0_5_13" = callPackage
({ mkDerivation, base, conduit, persistent, resource-pool
, resourcet, unliftio-core, yam
}:
@@ -236555,34 +236511,6 @@ self: {
}) {};
"yesod-auth" = callPackage
- ({ mkDerivation, aeson, authenticate, base, base16-bytestring
- , base64-bytestring, binary, blaze-builder, blaze-html
- , blaze-markup, bytestring, conduit, conduit-extra, containers
- , cryptonite, data-default, email-validate, file-embed, http-client
- , http-client-tls, http-conduit, http-types, memory, network-uri
- , nonce, persistent, random, safe, shakespeare, template-haskell
- , text, time, transformers, unliftio, unliftio-core
- , unordered-containers, wai, yesod-core, yesod-form
- , yesod-persistent
- }:
- mkDerivation {
- pname = "yesod-auth";
- version = "1.6.5";
- sha256 = "1crpqcx8zynwmas4ja5yv1jg4xvcv0hw7h11d5m8vld4fcs9dpdr";
- libraryHaskellDepends = [
- aeson authenticate base base16-bytestring base64-bytestring binary
- blaze-builder blaze-html blaze-markup bytestring conduit
- conduit-extra containers cryptonite data-default email-validate
- file-embed http-client http-client-tls http-conduit http-types
- memory network-uri nonce persistent random safe shakespeare
- template-haskell text time transformers unliftio unliftio-core
- unordered-containers wai yesod-core yesod-form yesod-persistent
- ];
- description = "Authentication for Yesod";
- license = stdenv.lib.licenses.mit;
- }) {};
-
- "yesod-auth_1_6_6" = callPackage
({ mkDerivation, aeson, authenticate, base, base16-bytestring
, base64-bytestring, binary, blaze-builder, blaze-html
, blaze-markup, bytestring, conduit, conduit-extra, containers
@@ -236608,7 +236536,6 @@ self: {
];
description = "Authentication for Yesod";
license = stdenv.lib.licenses.mit;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"yesod-auth-account" = callPackage
@@ -237143,42 +237070,6 @@ self: {
}) {};
"yesod-core" = callPackage
- ({ mkDerivation, aeson, async, auto-update, base, blaze-html
- , blaze-markup, byteable, bytestring, case-insensitive, cereal
- , clientsession, conduit, conduit-extra, containers, cookie
- , deepseq, fast-logger, gauge, hspec, hspec-expectations
- , http-types, HUnit, monad-logger, mtl, network, parsec
- , path-pieces, primitive, random, resourcet, rio, shakespeare
- , streaming-commons, template-haskell, text, time, transformers
- , unix-compat, unliftio, unordered-containers, vector, wai
- , wai-extra, wai-logger, warp, word8
- }:
- mkDerivation {
- pname = "yesod-core";
- version = "1.6.11";
- sha256 = "1cpl8g2sdvv751vvs68169w9nki43h6rmj2i2wqkfzijwgd8djwr";
- libraryHaskellDepends = [
- aeson auto-update base blaze-html blaze-markup byteable bytestring
- case-insensitive cereal clientsession conduit conduit-extra
- containers cookie deepseq fast-logger http-types monad-logger mtl
- parsec path-pieces primitive random resourcet rio shakespeare
- template-haskell text time transformers unix-compat unliftio
- unordered-containers vector wai wai-extra wai-logger warp word8
- ];
- testHaskellDepends = [
- async base bytestring clientsession conduit conduit-extra
- containers cookie hspec hspec-expectations http-types HUnit network
- path-pieces random resourcet shakespeare streaming-commons
- template-haskell text transformers unliftio wai wai-extra warp
- ];
- benchmarkHaskellDepends = [
- base blaze-html bytestring gauge shakespeare text
- ];
- description = "Creation of type-safe, RESTful web applications";
- license = stdenv.lib.licenses.mit;
- }) {};
-
- "yesod-core_1_6_12" = callPackage
({ mkDerivation, aeson, async, auto-update, base, blaze-html
, blaze-markup, byteable, bytestring, case-insensitive, cereal
, clientsession, conduit, conduit-extra, containers, cookie
@@ -237212,7 +237103,6 @@ self: {
];
description = "Creation of type-safe, RESTful web applications";
license = stdenv.lib.licenses.mit;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"yesod-crud" = callPackage
@@ -237594,6 +237484,22 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "yesod-gitrev_0_2_1" = callPackage
+ ({ mkDerivation, aeson, base, githash, template-haskell, yesod-core
+ }:
+ mkDerivation {
+ pname = "yesod-gitrev";
+ version = "0.2.1";
+ sha256 = "0wd6xvq9aa11n8y4hna0a5ivqfxnbg8w2bq5lramm895xs7c8d7w";
+ libraryHaskellDepends = [
+ aeson base githash template-haskell yesod-core
+ ];
+ testHaskellDepends = [ base yesod-core ];
+ description = "A subsite for displaying git information";
+ license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"yesod-goodies" = callPackage
({ mkDerivation, base, blaze-html, bytestring, directory, HTTP
, old-locale, pandoc, pureMD5, text, time, yesod, yesod-form
diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix
index 39f8d251410..d26ad077c14 100644
--- a/pkgs/development/interpreters/php/default.nix
+++ b/pkgs/development/interpreters/php/default.nix
@@ -2,7 +2,7 @@
{ lib, stdenv, fetchurl, flex, bison, autoconf
, mysql, libxml2, readline, zlib, curl, postgresql, gettext
, openssl, pcre, pcre2, pkgconfig, sqlite, config, libjpeg, libpng, freetype
-, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash
+, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, unixODBC
, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2, libzip
}:
@@ -28,6 +28,7 @@ let
, curlSupport ? config.php.curl or true
, gettextSupport ? config.php.gettext or true
, pcntlSupport ? config.php.pcntl or true
+ , pdo_odbcSupport ? config.php.pdo_odbc or true
, postgresqlSupport ? config.php.postgresql or true
, pdo_pgsqlSupport ? config.php.pdo_pgsql or true
, readlineSupport ? config.php.readline or true
@@ -88,6 +89,7 @@ let
++ optional readlineSupport readline
++ optional sqliteSupport sqlite
++ optional postgresqlSupport postgresql
+ ++ optional pdo_odbcSupport unixODBC
++ optional pdo_pgsqlSupport postgresql
++ optional pdo_mysqlSupport mysqlBuildInputs
++ optional mysqliSupport mysqlBuildInputs
@@ -141,6 +143,7 @@ let
++ optional readlineSupport "--with-readline=${readline.dev}"
++ optional sqliteSupport "--with-pdo-sqlite=${sqlite.dev}"
++ optional postgresqlSupport "--with-pgsql=${postgresql}"
+ ++ optional pdo_odbcSupport "--with-pdo-odbc=unixODBC,${unixODBC}"
++ optional pdo_pgsqlSupport "--with-pdo-pgsql=${postgresql}"
++ optional pdo_mysqlSupport "--with-pdo-mysql=${if mysqlndSupport then "mysqlnd" else mysql.connector-c}"
++ optionals mysqliSupport [
diff --git a/pkgs/development/libraries/aws-c-common/default.nix b/pkgs/development/libraries/aws-c-common/default.nix
new file mode 100644
index 00000000000..dd200304ab6
--- /dev/null
+++ b/pkgs/development/libraries/aws-c-common/default.nix
@@ -0,0 +1,28 @@
+{ lib, stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+ pname = "aws-c-common";
+ version = "0.3.2";
+
+ src = fetchFromGitHub {
+ owner = "awslabs";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "169ha105qgcvj93hf1bhlya2nlwh8g5fvypd6whfjs9k0hqddi0c";
+ };
+
+ nativeBuildInputs = [ cmake ];
+
+ NIX_CFLAGS_COMPILE = lib.optionals stdenv.isDarwin [
+ "-Wno-nullability-extension"
+ "-Wno-typedef-redefinition"
+ ];
+
+ meta = with lib; {
+ description = "AWS SDK for C common core";
+ homepage = https://github.com/awslabs/aws-c-common;
+ license = licenses.asl20;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ orivej eelco ];
+ };
+}
diff --git a/pkgs/development/libraries/aws-c-event-stream/default.nix b/pkgs/development/libraries/aws-c-event-stream/default.nix
new file mode 100644
index 00000000000..47363e12a68
--- /dev/null
+++ b/pkgs/development/libraries/aws-c-event-stream/default.nix
@@ -0,0 +1,29 @@
+{ lib, stdenv, fetchFromGitHub, cmake, aws-c-common, aws-checksums }:
+
+stdenv.mkDerivation rec {
+ pname = "aws-c-event-stream";
+ version = "0.1.1";
+
+ src = fetchFromGitHub {
+ owner = "awslabs";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0anjynfghk3inysy21wqvhxha33xsswh3lm8pr7nx7cpj6cmr37m";
+ };
+
+ nativeBuildInputs = [ cmake ];
+
+ buildInputs = [ aws-c-common aws-checksums ];
+
+ cmakeFlags = [
+ "-DCMAKE_MODULE_PATH=${aws-c-common}/lib/cmake"
+ ];
+
+ meta = with lib; {
+ description = "C99 implementation of the vnd.amazon.eventstream content-type";
+ homepage = https://github.com/awslabs/aws-c-event-stream;
+ license = licenses.asl20;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ orivej eelco ];
+ };
+}
diff --git a/pkgs/development/libraries/aws-checksums/default.nix b/pkgs/development/libraries/aws-checksums/default.nix
new file mode 100644
index 00000000000..0e47398b346
--- /dev/null
+++ b/pkgs/development/libraries/aws-checksums/default.nix
@@ -0,0 +1,23 @@
+{ lib, stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+ pname = "aws-checksums";
+ version = "0.1.2";
+
+ src = fetchFromGitHub {
+ owner = "awslabs";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "1r21sfs1ik6cb8bz17w6gp6y2xa9rbjxjka0p6airb3qds094iv5";
+ };
+
+ nativeBuildInputs = [ cmake ];
+
+ meta = with lib; {
+ description = "HW accelerated CRC32c and CRC32";
+ homepage = https://github.com/awslabs/aws-checksums;
+ license = licenses.asl20;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ orivej eelco ];
+ };
+}
diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix
index a5517a2522d..9ba611b0f96 100644
--- a/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -1,4 +1,5 @@
{ lib, stdenv, fetchFromGitHub, cmake, curl, openssl, zlib
+, aws-c-common, aws-c-event-stream, aws-checksums
, CoreAudio, AudioToolbox
, # Allow building a limited set of APIs, e.g. ["s3" "ec2"].
apis ? ["*"]
@@ -6,22 +7,15 @@
customMemoryManagement ? true
}:
-let
- loaderVar =
- if stdenv.isLinux
- then "LD_LIBRARY_PATH"
- else if stdenv.isDarwin
- then "DYLD_LIBRARY_PATH"
- else throw "Unsupported system!";
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
name = "aws-sdk-cpp-${version}";
- version = "1.6.52";
+ version = "1.7.53";
src = fetchFromGitHub {
owner = "awslabs";
repo = "aws-sdk-cpp";
rev = version;
- sha256 = "17hyq6rv1xl3f70p2pfkkxm86gbfimq2pwpakv1wv3xjibmppbrf";
+ sha256 = "0ybccffz5nrhp4n4nyb6ykrk9fdi0vqqqhjkaxx3l0xvmqx9rbrv";
};
# FIXME: might be nice to put different APIs in different outputs
@@ -30,43 +24,35 @@ in stdenv.mkDerivation rec {
separateDebugInfo = stdenv.isLinux;
nativeBuildInputs = [ cmake curl ];
- buildInputs = [ zlib curl openssl ]
- ++ lib.optionals (stdenv.isDarwin &&
+
+ buildInputs = [
+ curl openssl zlib
+ aws-c-common aws-c-event-stream aws-checksums
+ ] ++ lib.optionals (stdenv.isDarwin &&
((builtins.elem "text-to-speech" apis) ||
(builtins.elem "*" apis)))
[ CoreAudio AudioToolbox ];
- cmakeFlags =
- lib.optional (!customMemoryManagement) "-DCUSTOM_MEMORY_MANAGEMENT=0"
+ cmakeFlags = [
+ "-DBUILD_DEPS=OFF"
+ "-DCMAKE_SKIP_BUILD_RPATH=OFF"
+ ] ++ lib.optional (!customMemoryManagement) "-DCUSTOM_MEMORY_MANAGEMENT=0"
++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "-DENABLE_TESTING=OFF"
++ lib.optional (apis != ["*"])
"-DBUILD_ONLY=${lib.concatStringsSep ";" apis}";
- enableParallelBuilding = true;
-
- # Behold the escaping nightmare below on loaderVar o.O
- preBuild =
- ''
- # Ensure that the unit tests can find the *.so files.
- for i in testing-resources aws-cpp-sdk-*; do
- export ${loaderVar}=$(pwd)/$i:''${${loaderVar}}
- done
- '';
-
preConfigure =
''
rm aws-cpp-sdk-core-tests/aws/auth/AWSCredentialsProviderTest.cpp
'';
- NIX_CFLAGS_COMPILE = [ "-Wno-error=noexcept-type" ];
-
__darwinAllowLocalNetworking = true;
- meta = {
+ meta = with lib; {
description = "A C++ interface for Amazon Web Services";
homepage = https://github.com/awslabs/aws-sdk-cpp;
- license = lib.licenses.asl20;
- platforms = lib.platforms.linux ++ lib.platforms.darwin;
- maintainers = [ lib.maintainers.eelco ];
+ license = licenses.asl20;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ eelco orivej ];
};
}
diff --git a/pkgs/development/libraries/boehm-gc/default.nix b/pkgs/development/libraries/boehm-gc/default.nix
index d6f7b46079f..1a2c75ecf91 100644
--- a/pkgs/development/libraries/boehm-gc/default.nix
+++ b/pkgs/development/libraries/boehm-gc/default.nix
@@ -31,7 +31,12 @@ stdenv.mkDerivation rec {
configureFlags =
[ "--enable-cplusplus" ]
++ lib.optional enableLargeConfig "--enable-large-config"
- ++ lib.optional (stdenv.hostPlatform.libc == "musl") "--disable-static";
+ ++ lib.optional (stdenv.hostPlatform.libc == "musl") "--disable-static"
+ # Configure script can't detect whether C11 atomic intrinsics are available
+ # when cross-compiling, so it links to libatomic_ops, which has to be
+ # propagated to all dependencies. To avoid this, assume that the intrinsics
+ # are available.
+ ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--with-libatomic-ops=none";
doCheck = true; # not cross;
diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix
index f161e0f511a..845b09053ad 100644
--- a/pkgs/development/libraries/cairo/default.nix
+++ b/pkgs/development/libraries/cairo/default.nix
@@ -1,8 +1,10 @@
-{ stdenv, fetchurl, fetchpatch, pkgconfig, libiconv
+{ config, stdenv, fetchurl, fetchpatch, pkgconfig, libiconv
, libintl, expat, zlib, libpng, pixman, fontconfig, freetype, xorg
, gobjectSupport ? true, glib
, xcbSupport ? true # no longer experimental since 1.12
-, glSupport ? true, libGL ? null # libGLU_combined is no longer a big dependency
+, libGLSupported
+, glSupport ? config.cairo.gl or (libGLSupported && stdenv.isLinux && !stdenv.isAarch32 && !stdenv.isMips)
+, libGL ? null # libGLU_combined is no longer a big dependency
, pdfSupport ? true
, darwin
}:
diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix
index 7e99a0c18d7..cb4571265af 100644
--- a/pkgs/development/libraries/glibc/common.nix
+++ b/pkgs/development/libraries/glibc/common.nix
@@ -94,7 +94,8 @@ stdenv.mkDerivation ({
})
]
++ lib.optional stdenv.isx86_64 ./fix-x64-abi.patch
- ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch;
+ ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch
+ ++ lib.optional stdenv.buildPlatform.isDarwin ./darwin-cross-build.patch;
postPatch =
''
diff --git a/pkgs/development/libraries/glibc/darwin-cross-build.patch b/pkgs/development/libraries/glibc/darwin-cross-build.patch
new file mode 100644
index 00000000000..7b224924104
--- /dev/null
+++ b/pkgs/development/libraries/glibc/darwin-cross-build.patch
@@ -0,0 +1,103 @@
+enable cross-compilation of glibc on Darwin (build=Darwin, host=Linux)
+* increase ulimit for open files: macOS default of 256 is too low for glibc build system
+* use host version of ar, which is given by environment variable
+* build system uses stamp.os and stamp.oS files, which only differ in case;
+ this fails on macOS, so replace .oS with .o_S
+* libintl.h does not exist (and is not needed) on macOS
+
+--- glibc-2.27/Makefile.in 2018-02-01 17:17:18.000000000 +0100
++++ glibc-2.27/Makefile.in 2019-02-15 17:38:27.022965553 +0100
+@@ -6,9 +6,11 @@
+ .PHONY: all install bench
+
+ all .DEFAULT:
+- $(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
++ ulimit -n 1024; \
++ $(MAKE) -r AR=$$AR PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
+
+ install:
++ ulimit -n 1024; \
+ LC_ALL=C; export LC_ALL; \
+ $(MAKE) -r PARALLELMFLAGS="$(PARALLELMFLAGS)" -C $(srcdir) objdir=`pwd` $@
+
+--- glibc-2.27/Makerules 2018-02-01 17:17:18.000000000 +0100
++++ glibc-2.27/Makerules 2019-02-15 17:43:11.196039000 +0100
+@@ -915,8 +915,8 @@
+ ifndef objects
+
+ # Create the stamp$o files to keep the parent makefile happy.
+-subdir_lib: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$o)
+-$(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$o):
++subdir_lib: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$(subst .oS,.o_S,$o))
++$(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$(subst .oS,.o_S,$o)):
+ $(make-target-directory)
+ rm -f $@; > $@
+ else
+@@ -927,7 +927,7 @@
+ # The parent will then actually add them all to the archive in the
+ # archive rule, below.
+ define o-iterator-doit
+-$(objpfx)stamp$o: $(o-objects); $$(do-stamp)
++$(objpfx)stamp$(subst .oS,.o_S,$o): $(o-objects); $$(do-stamp)
+ endef
+ define do-stamp
+ $(make-target-directory)
+@@ -943,14 +943,14 @@
+ # on the stamp files built above.
+ define o-iterator-doit
+ $(common-objpfx)$(patsubst %,$(libtype$o),c): \
+- $(subdirs-stamp-o) $(common-objpfx)stamp$o; $$(do-makelib)
++ $(subdirs-stamp-o) $(common-objpfx)stamp$(subst .oS,.o_S,$o); $$(do-makelib)
+ endef
+ define do-makelib
+ cd $(common-objdir) && \
+ $(AR) $(CREATE_ARFLAGS) $(@F) `cat $(patsubst $(common-objpfx)%,%,$^)`
+ endef
+ subdirs-stamps := $(foreach d,$(subdirs),$(common-objpfx)$d/stamp%)
+-subdirs-stamp-o = $(subst %,$o,$(subdirs-stamps))
++subdirs-stamp-o = $(subst %,$(subst .oS,.o_S,$o),$(subdirs-stamps))
+ ifndef subdir
+ $(subdirs-stamps): subdir_lib;
+ endif
+@@ -961,7 +961,7 @@
+ # This makes all the object files.
+ .PHONY: objects objs libobjs extra-objs
+ objects objs: libobjs extra-objs
+-libobjs: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$o)
++libobjs: $(foreach o,$(object-suffixes-for-libc),$(objpfx)stamp$(subst .oS,.o_S,$o))
+ extra-objs: $(addprefix $(objpfx),$(extra-objs))
+
+ # Canned sequence for building an extra library archive.
+@@ -1615,7 +1615,7 @@
+ $(rmobjs)
+ define rmobjs
+ $(foreach o,$(object-suffixes-for-libc),
+--rm -f $(objpfx)stamp$o $(o-objects))
++-rm -f $(objpfx)stamp$(subst .oS,.o_S,$o) $(o-objects))
+ endef
+
+ # Also remove the dependencies and generated source files.
+--- glibc-2.27/sunrpc/rpc_main.c 2019-02-15 17:32:43.710244513 +0100
++++ glibc-2.27/sunrpc/rpc_main.c 2019-02-15 17:23:57.139617796 +0100
+@@ -38,7 +38,9 @@
+ #include
+ #include
+ #include
++#ifndef __APPLE__
+ #include
++#endif
+ #include
+ #include
+ #include
+--- glibc-2.27/sunrpc/rpc_scan.c 2019-02-15 17:32:54.845490606 +0100
++++ glibc-2.27/sunrpc/rpc_scan.c 2019-02-15 17:24:54.288066644 +0100
+@@ -37,7 +37,9 @@
+ #include
+ #include
+ #include
++#ifndef __APPLE__
+ #include
++#endif
+ #include "rpc_scan.h"
+ #include "rpc_parse.h"
+ #include "rpc_util.h"
diff --git a/pkgs/development/libraries/gnutls-kdh/generic.nix b/pkgs/development/libraries/gnutls-kdh/generic.nix
index d1d3c8575b0..75c71632aeb 100644
--- a/pkgs/development/libraries/gnutls-kdh/generic.nix
+++ b/pkgs/development/libraries/gnutls-kdh/generic.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
-, guileBindings, guile, perl, gmp, autogen, libidn, p11-kit, unbound, libiconv
+{ config, lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
+, perl, gmp, autogen, libidn, p11-kit, unbound, libiconv
+, guileBindings ? config.gnutls.guile or false, guile
, tpmSupport ? true, trousers, nettools, gperftools, gperf, gettext, automake
, yacc, texinfo
diff --git a/pkgs/development/libraries/gnutls/generic.nix b/pkgs/development/libraries/gnutls/generic.nix
index 7dc45edd636..086c0560cc4 100644
--- a/pkgs/development/libraries/gnutls/generic.nix
+++ b/pkgs/development/libraries/gnutls/generic.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
-, guileBindings, guile, perl, gmp, autogen, libidn, p11-kit, libiconv
+{ config, lib, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
+, perl, gmp, autogen, libidn, p11-kit, libiconv
+, guileBindings ? config.gnutls.guile or false, guile
, tpmSupport ? false, trousers, which, nettools, libunistring
, unbound, dns-root-data, gettext
diff --git a/pkgs/development/libraries/gtk+/2.x.nix b/pkgs/development/libraries/gtk+/2.x.nix
index c7638ea5fe5..8dad69eb998 100644
--- a/pkgs/development/libraries/gtk+/2.x.nix
+++ b/pkgs/development/libraries/gtk+/2.x.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchurl, pkgconfig, gettext, glib, atk, pango, cairo, perl, xorg
+{ config, stdenv, fetchurl, pkgconfig, gettext, glib, atk, pango, cairo, perl, xorg
, gdk_pixbuf, xlibsWrapper, gobject-introspection
, xineramaSupport ? stdenv.isLinux
-, cupsSupport ? true, cups ? null
+, cupsSupport ? config.gtk2.cups or stdenv.isLinux, cups ? null
, gdktarget ? if stdenv.isDarwin then "quartz" else "x11"
, AppKit, Cocoa
, fetchpatch
diff --git a/pkgs/development/libraries/libiodbc/default.nix b/pkgs/development/libraries/libiodbc/default.nix
index faa070b3468..ad55c6cb18f 100644
--- a/pkgs/development/libraries/libiodbc/default.nix
+++ b/pkgs/development/libraries/libiodbc/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, gtk2, Carbon, useGTK ? false }:
+{ config, stdenv, fetchurl, pkgconfig, gtk2, Carbon
+, useGTK ? config.libiodbc.gtk or false }:
stdenv.mkDerivation rec {
name = "libiodbc-3.52.12";
diff --git a/pkgs/development/libraries/libtensorflow/default.nix b/pkgs/development/libraries/libtensorflow/default.nix
index f41f6303e01..98096371e40 100644
--- a/pkgs/development/libraries/libtensorflow/default.nix
+++ b/pkgs/development/libraries/libtensorflow/default.nix
@@ -1,7 +1,7 @@
-{ stdenv
+{ config, stdenv
, fetchurl
, patchelf
-, cudaSupport ? false, symlinkJoin, cudatoolkit, cudnn, nvidia_x11
+, cudaSupport ? config.cudaSupport or false, symlinkJoin, cudatoolkit, cudnn, nvidia_x11
}:
with stdenv.lib;
let
diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix
index cca820e2f37..f1e82c166a1 100644
--- a/pkgs/development/libraries/opencv/3.x.nix
+++ b/pkgs/development/libraries/opencv/3.x.nix
@@ -8,13 +8,13 @@
, enablePNG ? true, libpng
, enableTIFF ? true, libtiff
, enableWebP ? true, libwebp
-, enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
+, enableEXR ? !stdenv.isDarwin, openexr, ilmbase
, enableJPEG2K ? true, jasper
, enableEigen ? true, eigen
, enableOpenblas ? true, openblas
, enableContrib ? true
-, enableCuda ? (config.cudaSupport or false), cudatoolkit
+, enableCuda ? config.cudaSupport or false, cudatoolkit
, enableUnfree ? false
, enableIpp ? false
diff --git a/pkgs/development/libraries/opencv/4.x.nix b/pkgs/development/libraries/opencv/4.x.nix
index 3f21ee15bf3..8addc150555 100644
--- a/pkgs/development/libraries/opencv/4.x.nix
+++ b/pkgs/development/libraries/opencv/4.x.nix
@@ -8,13 +8,13 @@
, enablePNG ? true, libpng
, enableTIFF ? true, libtiff
, enableWebP ? true, libwebp
-, enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
+, enableEXR ? !stdenv.isDarwin, openexr, ilmbase
, enableJPEG2K ? true, jasper
, enableEigen ? true, eigen
, enableOpenblas ? true, openblas
, enableContrib ? true
-, enableCuda ? (config.cudaSupport or false), cudatoolkit
+, enableCuda ? config.cudaSupport or false, cudatoolkit
, enableUnfree ? false
, enableIpp ? false
diff --git a/pkgs/development/libraries/opensubdiv/default.nix b/pkgs/development/libraries/opensubdiv/default.nix
index 614df6fb063..57f1c9830a6 100644
--- a/pkgs/development/libraries/opensubdiv/default.nix
+++ b/pkgs/development/libraries/opensubdiv/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkgconfig, xorg, libGLU
+{ config, lib, stdenv, fetchFromGitHub, cmake, pkgconfig, xorg, libGLU
, libGL, glew, ocl-icd, python3
-, cudaSupport ? false, cudatoolkit
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
, darwin
}:
diff --git a/pkgs/development/libraries/physics/rivet/default.nix b/pkgs/development/libraries/physics/rivet/default.nix
index 30f8ad8e8a3..01214878cd8 100644
--- a/pkgs/development/libraries/physics/rivet/default.nix
+++ b/pkgs/development/libraries/physics/rivet/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "rivet-${version}";
- version = "2.6.2";
+ version = "2.7.0";
src = fetchurl {
url = "https://www.hepforge.org/archive/rivet/Rivet-${version}.tar.bz2";
- sha256 = "0yp3mllr2b4bhsmixjmmpl2n4x78bgw74a9xy2as4f10q3alkplx";
+ sha256 = "12mlj2j1glidjhiaxlr25qz2vfb865wip1vwwg8vlyd3yzisf533";
};
patches = [
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
substituteInPlace analyses/Makefile.in \
--replace "!(tmp)" ""
substituteInPlace bin/rivet-buildplugin.in \
- --replace '"which"' '"${which}/bin/which"' \
+ --replace 'which' '"${which}/bin/which"' \
--replace 'mycxx=' 'mycxx=${stdenv.cc}/bin/${if stdenv.cc.isClang or false then "clang++" else "g++"} #' \
--replace 'mycxxflags="' "mycxxflags=\"-std=c++11 $NIX_CFLAGS_COMPILE $NIX_CXXSTDLIB_COMPILE $NIX_CFLAGS_LINK "
'';
diff --git a/pkgs/development/libraries/qt-3/default.nix b/pkgs/development/libraries/qt-3/default.nix
index 3f3e9158622..dc05251478c 100644
--- a/pkgs/development/libraries/qt-3/default.nix
+++ b/pkgs/development/libraries/qt-3/default.nix
@@ -6,7 +6,8 @@
, cursorSupport ? true, libXcursor ? null
, threadSupport ? true
, mysqlSupport ? false, mysql ? null
-, openglSupport ? false, libGLU_combined ? null, libXmu ? null
+, libGLSupported
+, openglSupport ? libGLSupported, libGLU_combined ? null, libXmu ? null
, xlibsWrapper, xorgproto, zlib, libjpeg, libpng, which
}:
diff --git a/pkgs/development/libraries/qt-5/5.11/default.nix b/pkgs/development/libraries/qt-5/5.11/default.nix
index 59dab2beabd..b6e24c63222 100644
--- a/pkgs/development/libraries/qt-5/5.11/default.nix
+++ b/pkgs/development/libraries/qt-5/5.11/default.nix
@@ -62,8 +62,8 @@ let
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
qttools = [ ./qttools.patch ];
- qtwebengine =
- optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch
+ qtwebengine = [ ./qtwebengine-no-build-skip.patch ]
+ ++ optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch
++ optional stdenv.isDarwin ./qtwebengine-darwin-sdk-10.10.patch;
qtwebkit = [ ./qtwebkit.patch ];
};
@@ -94,7 +94,9 @@ let
};
qtcharts = callPackage ../modules/qtcharts.nix {};
- qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+ qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+ inherit cf-private;
+ };
qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
qtdoc = callPackage ../modules/qtdoc.nix {};
qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.11/qtwebengine-no-build-skip.patch b/pkgs/development/libraries/qt-5/5.11/qtwebengine-no-build-skip.patch
new file mode 100644
index 00000000000..f332d5e1bb2
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.11/qtwebengine-no-build-skip.patch
@@ -0,0 +1,12 @@
+diff --git a/qtwebengine.pro b/qtwebengine.pro
+--- a/qtwebengine.pro
++++ b/qtwebengine.pro
+@@ -5,7 +5,7 @@ runConfigure()
+
+ !isEmpty(skipBuildReason) {
+ SUBDIRS =
+- log($${skipBuildReason}$${EOL})
++ error($${skipBuildReason}$${EOL})
+ log(QtWebEngine will not be built.$${EOL})
+ }
+
diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix
index 22535deb767..4b002837c3d 100644
--- a/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -60,6 +60,7 @@ let
qtdeclarative = [ ./qtdeclarative.patch ];
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
+ qtwebengine = [ ./qtwebengine-no-build-skip.patch ];
qtwebkit = [ ./qtwebkit.patch ];
};
@@ -89,7 +90,9 @@ let
};
qtcharts = callPackage ../modules/qtcharts.nix {};
- qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+ qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+ inherit cf-private;
+ };
qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
qtdoc = callPackage ../modules/qtdoc.nix {};
qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.12/qtwebengine-no-build-skip.patch b/pkgs/development/libraries/qt-5/5.12/qtwebengine-no-build-skip.patch
new file mode 100644
index 00000000000..f332d5e1bb2
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.12/qtwebengine-no-build-skip.patch
@@ -0,0 +1,12 @@
+diff --git a/qtwebengine.pro b/qtwebengine.pro
+--- a/qtwebengine.pro
++++ b/qtwebengine.pro
+@@ -5,7 +5,7 @@ runConfigure()
+
+ !isEmpty(skipBuildReason) {
+ SUBDIRS =
+- log($${skipBuildReason}$${EOL})
++ error($${skipBuildReason}$${EOL})
+ log(QtWebEngine will not be built.$${EOL})
+ }
+
diff --git a/pkgs/development/libraries/qt-5/5.6/default.nix b/pkgs/development/libraries/qt-5/5.6/default.nix
index bf0ae42ea1f..e493fc169ab 100644
--- a/pkgs/development/libraries/qt-5/5.6/default.nix
+++ b/pkgs/development/libraries/qt-5/5.6/default.nix
@@ -29,6 +29,7 @@ existing packages here and modify it as necessary.
stdenv, fetchurl, fetchpatch, makeSetupHook,
bison, cups ? null, harfbuzz, libGL, perl,
gstreamer, gst-plugins-base,
+ cf-private,
# options
developerBuild ? false,
@@ -132,7 +133,9 @@ let
/* qtactiveqt = not packaged */
/* qtandroidextras = not packaged */
/* qtcanvas3d = not packaged */
- qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+ qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+ inherit cf-private;
+ };
qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
qtdoc = callPackage ../modules/qtdoc.nix {};
qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.9/default.nix b/pkgs/development/libraries/qt-5/5.9/default.nix
index 68c6745bcb5..589f175efd9 100644
--- a/pkgs/development/libraries/qt-5/5.9/default.nix
+++ b/pkgs/development/libraries/qt-5/5.9/default.nix
@@ -43,6 +43,7 @@ let
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
qttools = [ ./qttools.patch ];
+ qtwebengine = [ ./qtwebengine-no-build-skip.patch ];
qtwebkit = [ ./qtwebkit.patch ];
qtvirtualkeyboard = [
(fetchpatch {
@@ -91,7 +92,9 @@ let
};
qtcharts = callPackage ../modules/qtcharts.nix {};
- qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+ qtconnectivity = callPackage ../modules/qtconnectivity.nix {
+ inherit cf-private;
+ };
qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
qtdoc = callPackage ../modules/qtdoc.nix {};
qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebengine-no-build-skip.patch b/pkgs/development/libraries/qt-5/5.9/qtwebengine-no-build-skip.patch
new file mode 100644
index 00000000000..f332d5e1bb2
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtwebengine-no-build-skip.patch
@@ -0,0 +1,12 @@
+diff --git a/qtwebengine.pro b/qtwebengine.pro
+--- a/qtwebengine.pro
++++ b/qtwebengine.pro
+@@ -5,7 +5,7 @@ runConfigure()
+
+ !isEmpty(skipBuildReason) {
+ SUBDIRS =
+- log($${skipBuildReason}$${EOL})
++ error($${skipBuildReason}$${EOL})
+ log(QtWebEngine will not be built.$${EOL})
+ }
+
diff --git a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
index d866edb052b..17e7f0ee7cf 100644
--- a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
@@ -1,8 +1,8 @@
-{ qtModule, qtbase, qtdeclarative, bluez }:
+{ qtModule, stdenv, qtbase, qtdeclarative, bluez, cf-private }:
qtModule {
name = "qtconnectivity";
qtInputs = [ qtbase qtdeclarative ];
- buildInputs = [ bluez ];
+ buildInputs = if stdenv.isDarwin then [ cf-private ] else [ bluez ];
outputs = [ "out" "dev" "bin" ];
}
diff --git a/pkgs/development/libraries/tpm2-tss/default.nix b/pkgs/development/libraries/tpm2-tss/default.nix
new file mode 100644
index 00000000000..0ea8107cad1
--- /dev/null
+++ b/pkgs/development/libraries/tpm2-tss/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, lib, fetchurl
+, cmocka, doxygen, ibm-sw-tpm2, iproute, openssl, perl, pkgconfig, procps
+, uthash, which }:
+
+stdenv.mkDerivation rec {
+ pname = "tpm2-tss";
+ version = "2.2.0";
+
+ src = fetchurl {
+ url = "https://github.com/tpm2-software/${pname}/releases/download/${version}/${pname}-${version}.tar.gz";
+ sha256 = "10r5wgrq21p0y700gh5iirh26pc5gsaib2b8b2nzmbr27apiw4y9";
+ };
+
+ nativeBuildInputs = [
+ doxygen perl pkgconfig
+ # For unit tests and integration tests.
+ ibm-sw-tpm2 iproute procps which
+ ];
+ buildInputs = [
+ openssl
+ # For unit tests and integration tests.
+ cmocka uthash
+ ];
+
+ postPatch = "patchShebangs script";
+
+ configureFlags = [
+ "--enable-unit"
+ "--enable-integration"
+ ];
+
+ doCheck = true;
+
+ postInstall = ''
+ # Do not install the upstream udev rules, they rely on specific
+ # users/groups which aren't guaranteed to exist on the system.
+ rm -R $out/lib/udev
+ '';
+
+ meta = with lib; {
+ description = "OSS implementation of the TCG TPM2 Software Stack (TSS2)";
+ homepage = https://github.com/tpm2-software/tpm2-tss;
+ license = licenses.bsd2;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ delroth ];
+ };
+}
diff --git a/pkgs/development/libraries/wxwidgets/2.8/default.nix b/pkgs/development/libraries/wxwidgets/2.8/default.nix
index 6d2e25709b5..1b08bb090b4 100644
--- a/pkgs/development/libraries/wxwidgets/2.8/default.nix
+++ b/pkgs/development/libraries/wxwidgets/2.8/default.nix
@@ -1,6 +1,7 @@
{ stdenv, fetchurl, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm, xorgproto
, gstreamer, gst-plugins-base, GConf, libX11, cairo
-, withMesa ? true, libGLU ? null, libGL ? null
+, libGLSupported
+, withMesa ? libGLSupported, libGLU ? null, libGL ? null
, compat24 ? false, compat26 ? true, unicode ? true,
}:
diff --git a/pkgs/development/libraries/wxwidgets/2.9/default.nix b/pkgs/development/libraries/wxwidgets/2.9/default.nix
index 426f5cf92a1..1938b15efbb 100644
--- a/pkgs/development/libraries/wxwidgets/2.9/default.nix
+++ b/pkgs/development/libraries/wxwidgets/2.9/default.nix
@@ -1,6 +1,7 @@
{ stdenv, fetchurl, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm, xorgproto
, gstreamer, gst-plugins-base, GConf, setfile
-, withMesa ? true, libGLU ? null, libGL ? null
+, libGLSupported
+, withMesa ? libGLSupported, libGLU ? null, libGL ? null
, compat24 ? false, compat26 ? true, unicode ? true
, Carbon ? null, Cocoa ? null, Kernel ? null, QuickTime ? null, AGL ? null
}:
diff --git a/pkgs/development/libraries/wxwidgets/3.0/default.nix b/pkgs/development/libraries/wxwidgets/3.0/default.nix
index 45bf5f779c2..948b261fe45 100644
--- a/pkgs/development/libraries/wxwidgets/3.0/default.nix
+++ b/pkgs/development/libraries/wxwidgets/3.0/default.nix
@@ -1,7 +1,8 @@
{ stdenv, fetchFromGitHub, fetchurl, fetchpatch, pkgconfig
, gtk2, gtk3, libXinerama, libSM, libXxf86vm
, xorgproto, gstreamer, gst-plugins-base, GConf, setfile
-, withMesa ? true, libGLU ? null, libGL ? null
+, libGLSupported
+, withMesa ? libGLSupported, libGLU ? null, libGL ? null
, compat24 ? false, compat26 ? true, unicode ? true
, withGtk2 ? true
, withWebKit ? false, webkitgtk24x-gtk2 ? null, webkitgtk ? null
diff --git a/pkgs/development/libraries/xgboost/default.nix b/pkgs/development/libraries/xgboost/default.nix
index ad1cc2efc87..b4c79d7f816 100644
--- a/pkgs/development/libraries/xgboost/default.nix
+++ b/pkgs/development/libraries/xgboost/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchgit, cmake
-, cudaSupport ? false, cudatoolkit
+{ config, stdenv, lib, fetchgit, cmake
+, cudaSupport ? config.cudaSupport or false, cudatoolkit
, ncclSupport ? false, nccl
, llvmPackages
}:
diff --git a/pkgs/development/libraries/zlog/default.nix b/pkgs/development/libraries/zlog/default.nix
index 21d8a7babb3..d3dc41371de 100644
--- a/pkgs/development/libraries/zlog/default.nix
+++ b/pkgs/development/libraries/zlog/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
homepage = http://hardysimpson.github.com/zlog;
license = licenses.lgpl21;
platforms = platforms.linux; # cannot test on something else
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
};
}
diff --git a/pkgs/development/mobile/androidenv/default.nix b/pkgs/development/mobile/androidenv/default.nix
index 92560105422..8d57f737c34 100644
--- a/pkgs/development/mobile/androidenv/default.nix
+++ b/pkgs/development/mobile/androidenv/default.nix
@@ -1,6 +1,6 @@
-{ pkgs ? import {}
+{ config, pkgs ? import {}
, pkgs_i686 ? import { system = "i686-linux"; }
-, licenseAccepted ? false
+, licenseAccepted ? config.android_sdk.accept_license or false
}:
rec {
diff --git a/pkgs/development/node-packages/node-packages-v10.json b/pkgs/development/node-packages/node-packages-v10.json
index fc71c183240..69c781c1d98 100644
--- a/pkgs/development/node-packages/node-packages-v10.json
+++ b/pkgs/development/node-packages/node-packages-v10.json
@@ -91,6 +91,7 @@
, "pulp"
, "react-tools"
, "react-native-cli"
+, "reveal.js"
, "s3http"
, "scuttlebot"
, "semver"
diff --git a/pkgs/development/node-packages/node-packages-v10.nix b/pkgs/development/node-packages/node-packages-v10.nix
index b63a0a9e869..7f2b73da2d9 100644
--- a/pkgs/development/node-packages/node-packages-v10.nix
+++ b/pkgs/development/node-packages/node-packages-v10.nix
@@ -13,33 +13,6 @@ let
sha512 = "t4WmWoGV9gyzypwG3y3JlcK2t8fKLtvzBA7xEoFTj9SMPvOuLsf13uh4ikK0RRaaa9RPPWLgFUdOyIRaQvCpwQ==";
};
};
- "@angular-devkit/architect-0.13.1" = {
- name = "_at_angular-devkit_slash_architect";
- packageName = "@angular-devkit/architect";
- version = "0.13.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.13.1.tgz";
- sha512 = "QDmIbqde75ZZSEFbw6Q6kQWq4cY6C7D67yujXw6XTyubDNAs1tyXJyxTIB8vjSlEKwRizTTDd/B0ZXVcke3Mvw==";
- };
- };
- "@angular-devkit/core-7.3.1" = {
- name = "_at_angular-devkit_slash_core";
- packageName = "@angular-devkit/core";
- version = "7.3.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/@angular-devkit/core/-/core-7.3.1.tgz";
- sha512 = "56XDWWfIzOAkEk69lBLgmCYybPUA4yjunhmMlCk7vVdb7gbQUyzNjFD04Uj0GjlejatAQ5F76tRwygD9C+3RXQ==";
- };
- };
- "@angular-devkit/schematics-7.3.1" = {
- name = "_at_angular-devkit_slash_schematics";
- packageName = "@angular-devkit/schematics";
- version = "7.3.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-7.3.1.tgz";
- sha512 = "cd7usiasfSgw75INz72/VssrLr9tiVRYfo1TEdvr9ww0GuQbuQpB33xbV8W135eAV8+wzQ3Ce8ohaDHibvj6Yg==";
- };
- };
"@apollographql/apollo-tools-0.3.3" = {
name = "_at_apollographql_slash_apollo-tools";
packageName = "@apollographql/apollo-tools";
@@ -913,13 +886,13 @@ let
sha1 = "890ae7c5d8c877f6d384860215ace9d7ec945bda";
};
};
- "@iarna/toml-2.2.1" = {
+ "@iarna/toml-2.2.2" = {
name = "_at_iarna_slash_toml";
packageName = "@iarna/toml";
- version = "2.2.1";
+ version = "2.2.2";
src = fetchurl {
- url = "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.1.tgz";
- sha512 = "I2EjI9TbEFJNLziNPFfpo64PNanOaK17iL2kTW/jGlGOa4bvHw4VEied83kOEB7NJjXf1KfvmsQ2aEjy3xjiGg==";
+ url = "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.2.tgz";
+ sha512 = "xm/Wpip5LRK1y1ZlzQLC/pDHlk0e1lNpQgOqWamfZSAU9pbTBHJFLM8wS4EB7LOc3EySARf9lZoGVX7cO26tJQ==";
};
};
"@ionic/cli-framework-1.6.1" = {
@@ -1489,13 +1462,13 @@ let
sha512 = "5YRqYNZOAaL7+nt7w3Scp6Sz4P2g7wKFP9npx1xdExMomk8/M/ICXVLYVam2wzxeY0cIc6wcKpjC5KI4jiNbGw==";
};
};
- "@octokit/rest-16.15.0" = {
+ "@octokit/rest-16.16.0" = {
name = "_at_octokit_slash_rest";
packageName = "@octokit/rest";
- version = "16.15.0";
+ version = "16.16.0";
src = fetchurl {
- url = "https://registry.npmjs.org/@octokit/rest/-/rest-16.15.0.tgz";
- sha512 = "Un+e7rgh38RtPOTe453pT/KPM/p2KZICimBmuZCd2wEo8PacDa4h6RqTPZs+f2DPazTTqdM7QU4LKlUjgiBwWw==";
+ url = "https://registry.npmjs.org/@octokit/rest/-/rest-16.16.0.tgz";
+ sha512 = "Q6L5OwQJrdJ188gLVmUHLKNXBoeCU0DynKPYW8iZQQoGNGws2hkP/CePVNlzzDgmjuv7o8dCrJgecvDcIHccTA==";
};
};
"@parcel/fs-1.11.0" = {
@@ -1633,24 +1606,6 @@ let
sha1 = "a777360b5b39a1a2e5106f8e858f2fd2d060c570";
};
};
- "@schematics/angular-7.3.1" = {
- name = "_at_schematics_slash_angular";
- packageName = "@schematics/angular";
- version = "7.3.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/@schematics/angular/-/angular-7.3.1.tgz";
- sha512 = "0Ne8APPlTAjKg5CSZqluwCuW/5yPjr3ALCWzqwPxN0suE745usThtasBmqrjw0RMIt8nRqRgtg54Z7lCPO9ZFg==";
- };
- };
- "@schematics/update-0.13.1" = {
- name = "_at_schematics_slash_update";
- packageName = "@schematics/update";
- version = "0.13.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/@schematics/update/-/update-0.13.1.tgz";
- sha512 = "EHOqolT/d/jRGuVTCUESLpk8JNpuaPlsVHfeK7Kdp/t0wSEnmtOelZX4+leS25lGXDaDUF3138ntjrZR4n6bGw==";
- };
- };
"@sindresorhus/is-0.14.0" = {
name = "_at_sindresorhus_slash_is";
packageName = "@sindresorhus/is";
@@ -1669,22 +1624,22 @@ let
sha512 = "ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==";
};
};
- "@snyk/dep-graph-1.1.2" = {
+ "@snyk/dep-graph-1.4.0" = {
name = "_at_snyk_slash_dep-graph";
packageName = "@snyk/dep-graph";
- version = "1.1.2";
+ version = "1.4.0";
src = fetchurl {
- url = "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.1.2.tgz";
- sha512 = "mCoAFKtmezBL61JOzLMzqqd/sXXxp0iektEwf4zw+sM3zuG4Tnmhf8OqNO6Wscn84bMIfLlI/nvECdxvSS7MTw==";
+ url = "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.4.0.tgz";
+ sha512 = "dz4Fo4L9sN0Rt8hMe+zMYZ4mAiljtyIeWvujLyCxhIT5iHSlceUYlba5TDsOFuKyuZKkuhVjORWY1oFEuRzCcA==";
};
};
- "@snyk/gemfile-1.1.0" = {
+ "@snyk/gemfile-1.2.0" = {
name = "_at_snyk_slash_gemfile";
packageName = "@snyk/gemfile";
- version = "1.1.0";
+ version = "1.2.0";
src = fetchurl {
- url = "https://registry.npmjs.org/@snyk/gemfile/-/gemfile-1.1.0.tgz";
- sha512 = "mLwF+ccuvRZMS0SxUAxA3dAp8mB3m2FxIsBIUWFTYvzxl+E4XTZb8uFrUqXHbcxhZH1Z8taHohNTbzXZn3M8ag==";
+ url = "https://registry.npmjs.org/@snyk/gemfile/-/gemfile-1.2.0.tgz";
+ sha512 = "nI7ELxukf7pT4/VraL4iabtNNMz8mUo7EXlqCFld8O5z6mIMLX9llps24iPpaIZOwArkY3FWA+4t+ixyvtTSIA==";
};
};
"@szmarczak/http-timer-1.1.2" = {
@@ -2866,15 +2821,6 @@ let
sha512 = "7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==";
};
};
- "ajv-6.7.0" = {
- name = "ajv";
- packageName = "ajv";
- version = "6.7.0";
- src = fetchurl {
- url = "https://registry.npmjs.org/ajv/-/ajv-6.7.0.tgz";
- sha512 = "RZXPviBTtfmtka9n9sy1N5M5b82CbxWIR6HIis4s3WQTXDJamc/0gpCWNGz6EWdWp4DOfjzJfhz/AS9zVPjjWg==";
- };
- };
"ajv-6.9.1" = {
name = "ajv";
packageName = "ajv";
@@ -3010,6 +2956,15 @@ let
sha512 = "SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==";
};
};
+ "ansi-colors-3.2.3" = {
+ name = "ansi-colors";
+ packageName = "ansi-colors";
+ version = "3.2.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz";
+ sha512 = "LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==";
+ };
+ };
"ansi-cyan-0.1.1" = {
name = "ansi-cyan";
packageName = "ansi-cyan";
@@ -4414,13 +4369,13 @@ let
sha1 = "00f35b2d27ac91b1f0d3ef2084c98cf1d1f0adc3";
};
};
- "aws-sdk-2.404.0" = {
+ "aws-sdk-2.405.0" = {
name = "aws-sdk";
packageName = "aws-sdk";
- version = "2.404.0";
+ version = "2.405.0";
src = fetchurl {
- url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.404.0.tgz";
- sha512 = "eQ+hv2hOpcyHUoUUIXcb7TVItzFfgTC0HIribcaDlbF4Kc1p9PSg+2jnK7ibjT6iMcoERx9Hr/vt6Cfc3Sgh5w==";
+ url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.405.0.tgz";
+ sha512 = "krgJBy/5FFGFjlOoODLH4ryXqUSQKz6He6QdIboKXvjIEV2CNxsoB+tFaThKD3SZmFcRxoWjho7R17dIlswTtQ==";
};
};
"aws-sign2-0.6.0" = {
@@ -7114,22 +7069,13 @@ let
sha1 = "798e689778151c8076b4b360e5edd28cda2bb468";
};
};
- "chokidar-2.0.4" = {
+ "chokidar-2.1.2" = {
name = "chokidar";
packageName = "chokidar";
- version = "2.0.4";
+ version = "2.1.2";
src = fetchurl {
- url = "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz";
- sha512 = "z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==";
- };
- };
- "chokidar-2.1.1" = {
- name = "chokidar";
- packageName = "chokidar";
- version = "2.1.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/chokidar/-/chokidar-2.1.1.tgz";
- sha512 = "gfw3p2oQV2wEt+8VuMlNsPjCxDxvvgnm/kz+uATu805mWVF8IJN7uz9DN7iBz+RMJISmiVbCOBFs9qBGMjtPfQ==";
+ url = "https://registry.npmjs.org/chokidar/-/chokidar-2.1.2.tgz";
+ sha512 = "IwXUx0FXc5ibYmPC2XeEj5mpXoV66sR+t3jqu2NS2GYwCktt3KF1/Qqjws/NkegajBA4RbZ5+DDwlOiJsxDHEg==";
};
};
"chownr-0.0.2" = {
@@ -8077,15 +8023,6 @@ let
sha512 = "b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==";
};
};
- "commander-2.15.1" = {
- name = "commander";
- packageName = "commander";
- version = "2.15.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz";
- sha512 = "VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==";
- };
- };
"commander-2.17.1" = {
name = "commander";
packageName = "commander";
@@ -8257,13 +8194,13 @@ let
sha1 = "524a9f10903f3a813389b0225d27c48bb751890f";
};
};
- "compressible-2.0.15" = {
+ "compressible-2.0.16" = {
name = "compressible";
packageName = "compressible";
- version = "2.0.15";
+ version = "2.0.16";
src = fetchurl {
- url = "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz";
- sha512 = "4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw==";
+ url = "https://registry.npmjs.org/compressible/-/compressible-2.0.16.tgz";
+ sha512 = "JQfEOdnI7dASwCuSPWIeVYwc/zMsu/+tRhoUvEfXz2gxOA2DNjmG5vhtFdBlhWPPGo+RdT9S3tgc/uH5qgDiiA==";
};
};
"compression-1.5.2" = {
@@ -12165,13 +12102,13 @@ let
sha512 = "D5nG2rErquLUstgUaxJlWB5+gu+U/3VDY0fk/Iuq8y9CUFy/7Y6oF4N2cR1tV8knzQvciIbfqfohd359xTLIKQ==";
};
};
- "eslint-5.14.0" = {
+ "eslint-5.14.1" = {
name = "eslint";
packageName = "eslint";
- version = "5.14.0";
+ version = "5.14.1";
src = fetchurl {
- url = "https://registry.npmjs.org/eslint/-/eslint-5.14.0.tgz";
- sha512 = "jrOhiYyENRrRnWlMYANlGZTqb89r2FuRT+615AabBoajhNjeh9ywDNlh2LU9vTqf0WYN+L3xdXuIi7xuj/tK9w==";
+ url = "https://registry.npmjs.org/eslint/-/eslint-5.14.1.tgz";
+ sha512 = "CyUMbmsjxedx8B0mr79mNOqetvkbij/zrXnFeK2zc3pGRn3/tibjiNAv/3UxFEyfMDjh+ZqTrJrEGBFiGfD5Og==";
};
};
"eslint-plugin-no-unsafe-innerhtml-1.0.16" = {
@@ -13668,6 +13605,15 @@ let
sha512 = "lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==";
};
};
+ "flat-4.1.0" = {
+ name = "flat";
+ packageName = "flat";
+ version = "4.1.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz";
+ sha512 = "Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==";
+ };
+ };
"flat-cache-1.3.4" = {
name = "flat-cache";
packageName = "flat-cache";
@@ -15884,15 +15830,6 @@ let
sha1 = "2c05ffaef90b68e860f3fd2b54ef580989277ee2";
};
};
- "he-1.1.1" = {
- name = "he";
- packageName = "he";
- version = "1.1.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/he/-/he-1.1.1.tgz";
- sha1 = "93410fd21b009735151f8868c2f271f3427e23fd";
- };
- };
"he-1.2.0" = {
name = "he";
packageName = "he";
@@ -16181,13 +16118,13 @@ let
sha1 = "8b55680bb4be283a0b5bf4ea2e38580be1d9320d";
};
};
- "http-errors-1.7.1" = {
+ "http-errors-1.7.2" = {
name = "http-errors";
packageName = "http-errors";
- version = "1.7.1";
+ version = "1.7.2";
src = fetchurl {
- url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.1.tgz";
- sha512 = "jWEUgtZWGSMba9I1N3gc1HmvpBUaNC9vDdA46yScAdp+C5rdEuKWUBLWTQpW9FwSWSbYYs++b6SDCxf9UEJzfw==";
+ url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz";
+ sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==";
};
};
"http-headers-3.0.2" = {
@@ -16865,15 +16802,6 @@ let
sha512 = "QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==";
};
};
- "inquirer-6.2.1" = {
- name = "inquirer";
- packageName = "inquirer";
- version = "6.2.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/inquirer/-/inquirer-6.2.1.tgz";
- sha512 = "088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==";
- };
- };
"inquirer-6.2.2" = {
name = "inquirer";
packageName = "inquirer";
@@ -17243,6 +17171,15 @@ let
sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
};
};
+ "is-buffer-2.0.3" = {
+ name = "is-buffer";
+ packageName = "is-buffer";
+ version = "2.0.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz";
+ sha512 = "U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==";
+ };
+ };
"is-callable-1.1.4" = {
name = "is-callable";
packageName = "is-callable";
@@ -17765,15 +17702,6 @@ let
sha512 = "Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==";
};
};
- "is-relative-url-2.0.0" = {
- name = "is-relative-url";
- packageName = "is-relative-url";
- version = "2.0.0";
- src = fetchurl {
- url = "https://registry.npmjs.org/is-relative-url/-/is-relative-url-2.0.0.tgz";
- sha1 = "72902d7fe04b3d4792e7db15f9db84b7204c9cef";
- };
- };
"is-resolvable-1.1.0" = {
name = "is-resolvable";
packageName = "is-resolvable";
@@ -19458,15 +19386,6 @@ let
sha1 = "bf967ba0dd31faaf09ab5bdb3676ad7f2aa18493";
};
};
- "link-check-4.4.4" = {
- name = "link-check";
- packageName = "link-check";
- version = "4.4.4";
- src = fetchurl {
- url = "https://registry.npmjs.org/link-check/-/link-check-4.4.4.tgz";
- sha512 = "yvowNBZEMOFH9nGLiJ5/YV68PBMVTo4opC2SzcACO8g4gSPTB9Rwa5GIziOX9Z5Er3Yf01DHoOyVV2LeApIw8w==";
- };
- };
"linkify-it-2.1.0" = {
name = "linkify-it";
packageName = "linkify-it";
@@ -21141,15 +21060,6 @@ let
sha512 = "7pxkHuvqTOu3iwVGmDPeYjQg+AIS9VQxzyLP9JCg9lBjgPAJXGEkChK6A2iFuj3tS0GV3HG2u5AMNhcQqwxpJw==";
};
};
- "markdown-link-extractor-1.2.0" = {
- name = "markdown-link-extractor";
- packageName = "markdown-link-extractor";
- version = "1.2.0";
- src = fetchurl {
- url = "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.2.0.tgz";
- sha512 = "1unDsoZSSiF5oGFu/2y8M3E2I2YhWT/jiKGTQxa1IAmkC1OcyHo9OYNu3qCuVSj5Ty87+mFtgQxJPUfc08WirA==";
- };
- };
"markdown-table-0.4.0" = {
name = "markdown-table";
packageName = "markdown-table";
@@ -21168,15 +21078,6 @@ let
sha512 = "ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==";
};
};
- "marked-0.4.0" = {
- name = "marked";
- packageName = "marked";
- version = "0.4.0";
- src = fetchurl {
- url = "https://registry.npmjs.org/marked/-/marked-0.4.0.tgz";
- sha512 = "tMsdNBgOsrUophCAFQl0XPe6Zqk/uy9gnue+jIIKhykO51hxyu6uNx7zBPy0+y/WKYVZZMspV9YeXLNdKk+iYw==";
- };
- };
"matchdep-2.0.0" = {
name = "matchdep";
packageName = "matchdep";
@@ -22329,13 +22230,13 @@ let
sha1 = "2a8f2ddf70eed564dff2d57f1e1a137d9f05078b";
};
};
- "multiserver-3.1.2" = {
+ "multiserver-3.2.0" = {
name = "multiserver";
packageName = "multiserver";
- version = "3.1.2";
+ version = "3.2.0";
src = fetchurl {
- url = "https://registry.npmjs.org/multiserver/-/multiserver-3.1.2.tgz";
- sha512 = "6jXoKH0vGfm5NxwaSkReuD+3VB9mq25WYsdMgB7YC43XboVCufhmFQ724DVz0Jx8Z8RNPKvjVfCiuXpsKgwV0Q==";
+ url = "https://registry.npmjs.org/multiserver/-/multiserver-3.2.0.tgz";
+ sha512 = "cJ9nnh/+aMwOpegTPSLC1zFRFJKn6f3va6WI0WPV84R55Llh8TinhpH8ZrpYfRofETykRWIvWhX6sQRZg04F1Q==";
};
};
"multiserver-address-1.0.1" = {
@@ -23035,6 +22936,15 @@ let
sha512 = "Li9NfZTL83/URoUEWly+iHJeOcZRBYUaeIL4MImnB4r21oe/xpkR6JRHjdNjLf1rMtO0tgPyOvuGW4Beytaaow==";
};
};
+ "node-environment-flags-1.0.4" = {
+ name = "node-environment-flags";
+ packageName = "node-environment-flags";
+ version = "1.0.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.4.tgz";
+ sha512 = "M9rwCnWVLW7PX+NUWe3ejEdiLYinRpsEre9hMkU/6NS4h+EEulYaDH1gCEZ2gyXsmw+RXYDaV2JkkTNcsPDJ0Q==";
+ };
+ };
"node-fetch-1.7.3" = {
name = "node-fetch";
packageName = "node-fetch";
@@ -24872,22 +24782,13 @@ let
sha1 = "79b302fc144cdfbb4ab6feba7040e6a5d99c79c7";
};
};
- "pacote-9.4.0" = {
+ "pacote-9.5.0" = {
name = "pacote";
packageName = "pacote";
- version = "9.4.0";
+ version = "9.5.0";
src = fetchurl {
- url = "https://registry.npmjs.org/pacote/-/pacote-9.4.0.tgz";
- sha512 = "WQ1KL/phGMkedYEQx9ODsjj7xvwLSpdFJJdEXrLyw5SILMxcTNt5DTxT2Z93fXuLFYJBlZJdnwdalrQdB/rX5w==";
- };
- };
- "pacote-9.4.1" = {
- name = "pacote";
- packageName = "pacote";
- version = "9.4.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/pacote/-/pacote-9.4.1.tgz";
- sha512 = "YKSRsQqmeHxgra0KCdWA2FtVxDPUlBiCdmew+mSe44pzlx5t1ViRMWiQg18T+DREA+vSqYfKzynaToFR4hcKHw==";
+ url = "https://registry.npmjs.org/pacote/-/pacote-9.5.0.tgz";
+ sha512 = "aUplXozRbzhaJO48FaaeClmN+2Mwt741MC6M3bevIGZwdCaP7frXzbUOfOWa91FPHoLITzG0hYaKY363lxO3bg==";
};
};
"pad-0.0.5" = {
@@ -28581,13 +28482,13 @@ let
sha512 = "J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==";
};
};
- "regexp-tree-0.1.4" = {
+ "regexp-tree-0.1.5" = {
name = "regexp-tree";
packageName = "regexp-tree";
- version = "0.1.4";
+ version = "0.1.5";
src = fetchurl {
- url = "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.4.tgz";
- sha512 = "DohP6WXzgrc7gFs9GsTQgigUfMXZqXkPk+20qkMF6YCy0Qk0FsHL1/KtxTycGR/62DHRtJ1MHQF2g8YzywP4kA==";
+ url = "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.5.tgz";
+ sha512 = "nUmxvfJyAODw+0B13hj8CFVAxhe7fDEAgJgaotBu3nnR+IgGgZq59YedJP5VYTlkEfqjuK6TuRpnymKdatLZfQ==";
};
};
"regexp.prototype.flags-1.2.0" = {
@@ -29580,15 +29481,6 @@ let
sha512 = "xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==";
};
};
- "rxjs-6.3.3" = {
- name = "rxjs";
- packageName = "rxjs";
- version = "6.3.3";
- src = fetchurl {
- url = "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz";
- sha512 = "JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==";
- };
- };
"rxjs-6.4.0" = {
name = "rxjs";
packageName = "rxjs";
@@ -29922,15 +29814,6 @@ let
sha1 = "13e8c2658ab9691cb0cd71093240280d36f77a5b";
};
};
- "semver-intersect-1.4.0" = {
- name = "semver-intersect";
- packageName = "semver-intersect";
- version = "1.4.0";
- src = fetchurl {
- url = "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz";
- sha512 = "d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==";
- };
- };
"semver-regex-1.0.0" = {
name = "semver-regex";
packageName = "semver-regex";
@@ -30210,6 +30093,15 @@ let
sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
};
};
+ "setprototypeof-1.1.1" = {
+ name = "setprototypeof";
+ packageName = "setprototypeof";
+ version = "1.1.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz";
+ sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
+ };
+ };
"sha.js-2.4.11" = {
name = "sha.js";
packageName = "sha.js";
@@ -30759,13 +30651,13 @@ let
sha512 = "SQE4sudrscd48EoRJqy5h5S6c8YBiOw0r0Se3rfg1l6ElJGgCB9je6XEzfe+UmfES06D7ueFYepiQPxTwH4Qww==";
};
};
- "snyk-1.133.0" = {
+ "snyk-1.134.2" = {
name = "snyk";
packageName = "snyk";
- version = "1.133.0";
+ version = "1.134.2";
src = fetchurl {
- url = "https://registry.npmjs.org/snyk/-/snyk-1.133.0.tgz";
- sha512 = "/6xQISFy08oWJasSye77eOaRScPkTIzD7AZYlSWfyS+flYJHgUhNJcTimXGcDwwBmfPtESpDtFpB1LBA16NUOg==";
+ url = "https://registry.npmjs.org/snyk/-/snyk-1.134.2.tgz";
+ sha512 = "WGR3TTZxXOdALEEcQtADFEOHaanhbzwLvS6gyg5vF6Akj7qRAwIIXYBUycbNdAax1mylAsXCzR352dkTwKD9lg==";
};
};
"snyk-config-2.2.0" = {
@@ -30777,6 +30669,15 @@ let
sha512 = "mq0wbP/AgjcmRq5i5jg2akVVV3iSYUPTowZwKn7DChRLDL8ySOzWAwan+ImXiyNbrWo87FNI/15O6MpOnTxOIg==";
};
};
+ "snyk-config-2.2.1" = {
+ name = "snyk-config";
+ packageName = "snyk-config";
+ version = "2.2.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/snyk-config/-/snyk-config-2.2.1.tgz";
+ sha512 = "eCsFKHHE4J2DpD/1NzAtCmkmVDK310OXRtmoW0RlLnld1ESprJ5A/QRJ5Zxx1JbA8gjuwERY5vfUFA8lEJeopA==";
+ };
+ };
"snyk-docker-plugin-1.12.3" = {
name = "snyk-docker-plugin";
packageName = "snyk-docker-plugin";
@@ -30885,22 +30786,22 @@ let
sha512 = "3qIndzkxCxiaGvAwMkqChbChGdwhNePPyfi0WjhC/nJGwecqU3Fb/NeTW7lgyT+xoq/dFnzW0DgBJ4+AyNA2gA==";
};
};
- "snyk-nuget-plugin-1.7.1" = {
+ "snyk-nuget-plugin-1.7.2" = {
name = "snyk-nuget-plugin";
packageName = "snyk-nuget-plugin";
- version = "1.7.1";
+ version = "1.7.2";
src = fetchurl {
- url = "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.7.1.tgz";
- sha512 = "j4VavJ9HtDDnLZgqJRFzXfBLErC3YtIwAwvECL2xs3q2mVQlw3GpWH+6gQJVfzRm8CWZpbDNdr1DD5lkXxTXXg==";
+ url = "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.7.2.tgz";
+ sha512 = "zmYD9veH7OeIqGnZHiGv8c8mKtmYrxo2o7P4lNUkpHdCMMsar7moRJxGgO9WlcIrwAGjIhMdP9fUvJ+jVDEteQ==";
};
};
- "snyk-paket-parser-1.4.1" = {
+ "snyk-paket-parser-1.4.3" = {
name = "snyk-paket-parser";
packageName = "snyk-paket-parser";
- version = "1.4.1";
+ version = "1.4.3";
src = fetchurl {
- url = "https://registry.npmjs.org/snyk-paket-parser/-/snyk-paket-parser-1.4.1.tgz";
- sha512 = "JabIAWwbjfSOkR0os6/KkdkLt7MN6ILFbyP5KgPxGP26V+1bJyXP24/h1blq/0dQY8UOiCQ62eP6Ycv+lfzCBg==";
+ url = "https://registry.npmjs.org/snyk-paket-parser/-/snyk-paket-parser-1.4.3.tgz";
+ sha512 = "6m736zGVoeT/zS9KEtlmqTSPEPjAfLe8iYoQ3AwbyxDhzuLY49lTaV67MyZtGwjhi1x4KBe+XOgeWwyf6Avf/A==";
};
};
"snyk-php-plugin-1.5.1" = {
@@ -31173,13 +31074,13 @@ let
sha512 = "+2r83WaRT3PXYoO/1z+RDEBE7Z2f9YcdQnJ0K/ncXXbV5gJ6wYfNAebYFYiiUjM6E4JyXnPY8cimwyvFYHVUUA==";
};
};
- "socks-2.3.1" = {
+ "socks-2.3.2" = {
name = "socks";
packageName = "socks";
- version = "2.3.1";
+ version = "2.3.2";
src = fetchurl {
- url = "https://registry.npmjs.org/socks/-/socks-2.3.1.tgz";
- sha512 = "srMrPbfQnLOVRDv/sQvBeM4rvFvKT4ErhdcXejaLHLQFPmCMt5XPF0TeE9Uv3iVa+GpXDevs1VgqZgwykr78Yw==";
+ url = "https://registry.npmjs.org/socks/-/socks-2.3.2.tgz";
+ sha512 = "pCpjxQgOByDHLlNqlnh/mNSAxIUkyBBuwwhTcV+enZGbDaClPvHdvm6uvOwZfFJkam7cGhBNbb4JxiP8UZkRvQ==";
};
};
"socks-proxy-agent-3.0.1" = {
@@ -31389,15 +31290,6 @@ let
sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
};
};
- "source-map-0.7.3" = {
- name = "source-map";
- packageName = "source-map";
- version = "0.7.3";
- src = fetchurl {
- url = "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz";
- sha512 = "CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==";
- };
- };
"source-map-resolve-0.5.2" = {
name = "source-map-resolve";
packageName = "source-map-resolve";
@@ -32874,15 +32766,6 @@ let
sha512 = "Ts0Mu/A1S1aZxEJNG88I4Oc9rcZSBFNac5e27yh4j2mqbhZSSzR1Ah79EYwSn9Zuh7lrlGD2cVGzw1RKGzyLSg==";
};
};
- "supports-color-5.4.0" = {
- name = "supports-color";
- packageName = "supports-color";
- version = "5.4.0";
- src = fetchurl {
- url = "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz";
- sha512 = "zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==";
- };
- };
"supports-color-5.5.0" = {
name = "supports-color";
packageName = "supports-color";
@@ -32892,6 +32775,15 @@ let
sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
};
};
+ "supports-color-6.0.0" = {
+ name = "supports-color";
+ packageName = "supports-color";
+ version = "6.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz";
+ sha512 = "on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==";
+ };
+ };
"supports-color-6.1.0" = {
name = "supports-color";
packageName = "supports-color";
@@ -34342,15 +34234,6 @@ let
sha512 = "tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA==";
};
};
- "typescript-3.2.4" = {
- name = "typescript";
- packageName = "typescript";
- version = "3.2.4";
- src = fetchurl {
- url = "https://registry.npmjs.org/typescript/-/typescript-3.2.4.tgz";
- sha512 = "0RNDbSdEokBeEAkgNbxJ+BLwSManFy9TeXz8uW+48j/xhEXv1ePME60olyzw2XzUqUBNAYFeJadIqAgNqIACwg==";
- };
- };
"typewise-1.0.3" = {
name = "typewise";
packageName = "typewise";
@@ -37142,6 +37025,15 @@ let
sha512 = "yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==";
};
};
+ "yargs-unparser-1.5.0" = {
+ name = "yargs-unparser";
+ packageName = "yargs-unparser";
+ version = "1.5.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.5.0.tgz";
+ sha512 = "HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw==";
+ };
+ };
"yauzl-2.10.0" = {
name = "yauzl";
packageName = "yauzl";
@@ -37298,444 +37190,6 @@ let
};
in
{
- "@angular/cli" = nodeEnv.buildNodePackage {
- name = "_at_angular_slash_cli";
- packageName = "@angular/cli";
- version = "7.3.1";
- src = fetchurl {
- url = "https://registry.npmjs.org/@angular/cli/-/cli-7.3.1.tgz";
- sha512 = "8EvXYRhTqTaTk5PKv7VZxIWJiyG51R9RC9gtpRFx4bbnurqBHdEUxGMmaRsGT8QDbfvVsWnuakE0eeW1CrfZAQ==";
- };
- dependencies = [
- sources."@angular-devkit/architect-0.13.1"
- sources."@angular-devkit/core-7.3.1"
- sources."@angular-devkit/schematics-7.3.1"
- sources."@schematics/angular-7.3.1"
- sources."@schematics/update-0.13.1"
- sources."@yarnpkg/lockfile-1.1.0"
- sources."JSONStream-1.3.5"
- sources."agent-base-4.2.1"
- sources."agentkeepalive-3.5.2"
- sources."ajv-6.7.0"
- sources."ansi-escapes-3.2.0"
- sources."ansi-regex-3.0.0"
- sources."ansi-styles-3.2.1"
- sources."anymatch-2.0.0"
- sources."aproba-1.2.0"
- sources."arr-diff-4.0.0"
- sources."arr-flatten-1.1.0"
- sources."arr-union-3.1.0"
- sources."array-unique-0.3.2"
- sources."assign-symbols-1.0.0"
- sources."async-each-1.0.1"
- sources."atob-2.1.2"
- sources."balanced-match-1.0.0"
- (sources."base-0.11.2" // {
- dependencies = [
- sources."define-property-1.0.0"
- ];
- })
- sources."binary-extensions-1.13.0"
- sources."bluebird-3.5.3"
- sources."brace-expansion-1.1.11"
- (sources."braces-2.3.2" // {
- dependencies = [
- sources."extend-shallow-2.0.1"
- sources."is-extendable-0.1.1"
- ];
- })
- sources."buffer-from-1.1.1"
- sources."builtins-1.0.3"
- sources."cacache-11.3.2"
- sources."cache-base-1.0.1"
- sources."chalk-2.4.2"
- sources."chardet-0.7.0"
- sources."chokidar-2.0.4"
- sources."chownr-1.1.1"
- (sources."class-utils-0.3.6" // {
- dependencies = [
- sources."define-property-0.2.5"
- (sources."is-accessor-descriptor-0.1.6" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- (sources."is-data-descriptor-0.1.4" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- sources."is-descriptor-0.1.6"
- sources."kind-of-5.1.0"
- ];
- })
- sources."cli-cursor-2.1.0"
- sources."cli-width-2.2.0"
- sources."collection-visit-1.0.0"
- sources."color-convert-1.9.3"
- sources."color-name-1.1.3"
- sources."component-emitter-1.2.1"
- sources."concat-map-0.0.1"
- sources."concat-stream-1.6.2"
- sources."copy-concurrently-1.0.5"
- sources."copy-descriptor-0.1.1"
- sources."core-util-is-1.0.2"
- sources."cyclist-0.2.2"
- sources."debug-2.6.9"
- sources."decode-uri-component-0.2.0"
- sources."define-property-2.0.2"
- sources."duplexify-3.7.1"
- sources."encoding-0.1.12"
- sources."end-of-stream-1.4.1"
- sources."err-code-1.1.2"
- sources."es6-promise-4.2.6"
- sources."es6-promisify-5.0.0"
- sources."escape-string-regexp-1.0.5"
- (sources."expand-brackets-2.1.4" // {
- dependencies = [
- sources."define-property-0.2.5"
- sources."extend-shallow-2.0.1"
- (sources."is-accessor-descriptor-0.1.6" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- (sources."is-data-descriptor-0.1.4" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- sources."is-descriptor-0.1.6"
- sources."is-extendable-0.1.1"
- sources."kind-of-5.1.0"
- ];
- })
- sources."extend-shallow-3.0.2"
- sources."external-editor-3.0.3"
- (sources."extglob-2.0.4" // {
- dependencies = [
- sources."define-property-1.0.0"
- sources."extend-shallow-2.0.1"
- sources."is-extendable-0.1.1"
- ];
- })
- sources."fast-deep-equal-2.0.1"
- sources."fast-json-stable-stringify-2.0.0"
- sources."figgy-pudding-3.5.1"
- sources."figures-2.0.0"
- (sources."fill-range-4.0.0" // {
- dependencies = [
- sources."extend-shallow-2.0.1"
- sources."is-extendable-0.1.1"
- ];
- })
- sources."flush-write-stream-1.1.1"
- sources."for-in-1.0.2"
- sources."fragment-cache-0.2.1"
- sources."from2-2.3.0"
- sources."fs-minipass-1.2.5"
- sources."fs-write-stream-atomic-1.0.10"
- sources."fs.realpath-1.0.0"
- sources."fsevents-1.2.7"
- sources."genfun-5.0.0"
- sources."get-stream-4.1.0"
- sources."get-value-2.0.6"
- sources."glob-7.1.3"
- (sources."glob-parent-3.1.0" // {
- dependencies = [
- sources."is-glob-3.1.0"
- ];
- })
- sources."graceful-fs-4.1.15"
- sources."has-flag-3.0.0"
- sources."has-value-1.0.0"
- (sources."has-values-1.0.0" // {
- dependencies = [
- sources."kind-of-4.0.0"
- ];
- })
- sources."hosted-git-info-2.7.1"
- sources."http-cache-semantics-3.8.1"
- (sources."http-proxy-agent-2.1.0" // {
- dependencies = [
- sources."debug-3.1.0"
- ];
- })
- (sources."https-proxy-agent-2.2.1" // {
- dependencies = [
- sources."debug-3.2.6"
- sources."ms-2.1.1"
- ];
- })
- sources."humanize-ms-1.2.1"
- sources."iconv-lite-0.4.24"
- sources."iferr-0.1.5"
- sources."ignore-walk-3.0.1"
- sources."imurmurhash-0.1.4"
- sources."inflight-1.0.6"
- sources."inherits-2.0.3"
- sources."ini-1.3.5"
- sources."inquirer-6.2.1"
- sources."ip-1.1.5"
- sources."is-accessor-descriptor-1.0.0"
- sources."is-binary-path-1.0.1"
- sources."is-buffer-1.1.6"
- sources."is-data-descriptor-1.0.0"
- sources."is-descriptor-1.0.2"
- sources."is-extendable-1.0.1"
- sources."is-extglob-2.1.1"
- sources."is-fullwidth-code-point-2.0.0"
- sources."is-glob-4.0.0"
- (sources."is-number-3.0.0" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- sources."is-plain-object-2.0.4"
- sources."is-promise-2.1.0"
- sources."is-windows-1.0.2"
- sources."is-wsl-1.1.0"
- sources."isarray-1.0.0"
- sources."isexe-2.0.0"
- sources."isobject-3.0.1"
- sources."json-parse-better-errors-1.0.2"
- sources."json-schema-traverse-0.4.1"
- sources."jsonparse-1.3.1"
- sources."kind-of-6.0.2"
- sources."lodash-4.17.11"
- sources."lodash.debounce-4.0.8"
- sources."lru-cache-5.1.1"
- (sources."make-fetch-happen-4.0.1" // {
- dependencies = [
- sources."lru-cache-4.1.5"
- sources."yallist-2.1.2"
- ];
- })
- sources."map-cache-0.2.2"
- sources."map-visit-1.0.0"
- sources."micromatch-3.1.10"
- sources."mimic-fn-1.2.0"
- sources."minimatch-3.0.4"
- sources."minimist-0.0.8"
- sources."minipass-2.3.5"
- sources."minizlib-1.2.1"
- sources."mississippi-3.0.0"
- sources."mixin-deep-1.3.1"
- sources."mkdirp-0.5.1"
- sources."move-concurrently-1.0.1"
- sources."ms-2.0.0"
- sources."mute-stream-0.0.7"
- sources."nan-2.12.1"
- sources."nanomatch-1.2.13"
- sources."node-fetch-npm-2.0.2"
- sources."normalize-package-data-2.5.0"
- sources."normalize-path-2.1.1"
- sources."npm-bundled-1.0.6"
- sources."npm-package-arg-6.1.0"
- sources."npm-packlist-1.3.0"
- sources."npm-pick-manifest-2.2.3"
- (sources."npm-registry-fetch-3.9.0" // {
- dependencies = [
- sources."lru-cache-4.1.5"
- sources."yallist-2.1.2"
- ];
- })
- (sources."object-copy-0.1.0" // {
- dependencies = [
- sources."define-property-0.2.5"
- sources."is-accessor-descriptor-0.1.6"
- sources."is-data-descriptor-0.1.4"
- (sources."is-descriptor-0.1.6" // {
- dependencies = [
- sources."kind-of-5.1.0"
- ];
- })
- sources."kind-of-3.2.2"
- ];
- })
- sources."object-visit-1.0.1"
- sources."object.pick-1.3.0"
- sources."once-1.4.0"
- sources."onetime-2.0.1"
- sources."opn-5.4.0"
- sources."os-homedir-1.0.2"
- sources."os-tmpdir-1.0.2"
- sources."osenv-0.1.5"
- sources."pacote-9.4.0"
- sources."parallel-transform-1.1.0"
- sources."pascalcase-0.1.1"
- sources."path-dirname-1.0.2"
- sources."path-is-absolute-1.0.1"
- sources."path-parse-1.0.6"
- sources."posix-character-classes-0.1.1"
- sources."process-nextick-args-2.0.0"
- sources."promise-inflight-1.0.1"
- sources."promise-retry-1.1.1"
- sources."protoduck-5.0.1"
- sources."pseudomap-1.0.2"
- sources."pump-3.0.0"
- (sources."pumpify-1.5.1" // {
- dependencies = [
- sources."pump-2.0.1"
- ];
- })
- sources."punycode-2.1.1"
- sources."readable-stream-2.3.6"
- sources."readdirp-2.2.1"
- sources."regex-not-1.0.2"
- sources."remove-trailing-separator-1.1.0"
- sources."repeat-element-1.1.3"
- sources."repeat-string-1.6.1"
- sources."resolve-1.10.0"
- sources."resolve-url-0.2.1"
- sources."restore-cursor-2.0.0"
- sources."ret-0.1.15"
- sources."retry-0.10.1"
- sources."rimraf-2.6.3"
- sources."run-async-2.3.0"
- sources."run-queue-1.0.3"
- sources."rxjs-6.3.3"
- sources."safe-buffer-5.1.2"
- sources."safe-regex-1.1.0"
- sources."safer-buffer-2.1.2"
- sources."semver-5.6.0"
- sources."semver-intersect-1.4.0"
- (sources."set-value-2.0.0" // {
- dependencies = [
- sources."extend-shallow-2.0.1"
- sources."is-extendable-0.1.1"
- ];
- })
- sources."signal-exit-3.0.2"
- sources."smart-buffer-4.0.2"
- (sources."snapdragon-0.8.2" // {
- dependencies = [
- sources."define-property-0.2.5"
- sources."extend-shallow-2.0.1"
- (sources."is-accessor-descriptor-0.1.6" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- (sources."is-data-descriptor-0.1.4" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- sources."is-descriptor-0.1.6"
- sources."is-extendable-0.1.1"
- sources."kind-of-5.1.0"
- sources."source-map-0.5.7"
- ];
- })
- (sources."snapdragon-node-2.1.1" // {
- dependencies = [
- sources."define-property-1.0.0"
- ];
- })
- (sources."snapdragon-util-3.0.1" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- sources."socks-2.2.3"
- sources."socks-proxy-agent-4.0.1"
- sources."source-map-0.7.3"
- sources."source-map-resolve-0.5.2"
- sources."source-map-url-0.4.0"
- sources."spdx-correct-3.1.0"
- sources."spdx-exceptions-2.2.0"
- sources."spdx-expression-parse-3.0.0"
- sources."spdx-license-ids-3.0.3"
- sources."split-string-3.1.0"
- sources."ssri-6.0.1"
- (sources."static-extend-0.1.2" // {
- dependencies = [
- sources."define-property-0.2.5"
- (sources."is-accessor-descriptor-0.1.6" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- (sources."is-data-descriptor-0.1.4" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- sources."is-descriptor-0.1.6"
- sources."kind-of-5.1.0"
- ];
- })
- sources."stream-each-1.2.3"
- sources."stream-shift-1.0.0"
- (sources."string-width-2.1.1" // {
- dependencies = [
- sources."strip-ansi-4.0.0"
- ];
- })
- sources."string_decoder-1.1.1"
- (sources."strip-ansi-5.0.0" // {
- dependencies = [
- sources."ansi-regex-4.0.0"
- ];
- })
- sources."supports-color-5.5.0"
- sources."symbol-observable-1.2.0"
- sources."tar-4.4.8"
- sources."through-2.3.8"
- sources."through2-2.0.5"
- sources."tmp-0.0.33"
- (sources."to-object-path-0.3.0" // {
- dependencies = [
- sources."kind-of-3.2.2"
- ];
- })
- sources."to-regex-3.0.2"
- sources."to-regex-range-2.1.1"
- sources."tslib-1.9.3"
- sources."typedarray-0.0.6"
- sources."typescript-3.2.4"
- (sources."union-value-1.0.0" // {
- dependencies = [
- sources."extend-shallow-2.0.1"
- sources."is-extendable-0.1.1"
- sources."set-value-0.4.3"
- ];
- })
- sources."unique-filename-1.1.1"
- sources."unique-slug-2.0.1"
- (sources."unset-value-1.0.0" // {
- dependencies = [
- (sources."has-value-0.3.1" // {
- dependencies = [
- sources."isobject-2.1.0"
- ];
- })
- sources."has-values-0.1.4"
- ];
- })
- sources."upath-1.1.0"
- sources."uri-js-4.2.2"
- sources."urix-0.1.0"
- sources."use-3.1.1"
- sources."util-deprecate-1.0.2"
- sources."validate-npm-package-license-3.0.4"
- sources."validate-npm-package-name-3.0.0"
- sources."which-1.3.1"
- sources."wrappy-1.0.2"
- sources."xtend-4.0.1"
- sources."y18n-4.0.0"
- sources."yallist-3.0.3"
- ];
- buildInputs = globalBuildInputs;
- meta = {
- description = "CLI tool for Angular";
- homepage = https://github.com/angular/angular-cli;
- license = "MIT";
- };
- production = true;
- bypassCache = true;
- };
asar = nodeEnv.buildNodePackage {
name = "asar";
packageName = "asar";
@@ -38894,7 +38348,7 @@ in
sources."color-name-1.1.3"
sources."combine-source-map-0.8.0"
sources."combined-stream-1.0.7"
- sources."compressible-2.0.15"
+ sources."compressible-2.0.16"
sources."compression-1.7.3"
sources."concat-map-0.0.1"
(sources."concat-stream-1.5.2" // {
@@ -40594,7 +40048,7 @@ in
sources."assert-plus-1.0.0"
sources."async-2.6.2"
sources."asynckit-0.4.0"
- sources."aws-sdk-2.404.0"
+ sources."aws-sdk-2.405.0"
sources."aws-sign2-0.7.0"
sources."aws4-1.8.0"
sources."base64-js-1.3.0"
@@ -41824,10 +41278,10 @@ in
eslint = nodeEnv.buildNodePackage {
name = "eslint";
packageName = "eslint";
- version = "5.14.0";
+ version = "5.14.1";
src = fetchurl {
- url = "https://registry.npmjs.org/eslint/-/eslint-5.14.0.tgz";
- sha512 = "jrOhiYyENRrRnWlMYANlGZTqb89r2FuRT+615AabBoajhNjeh9ywDNlh2LU9vTqf0WYN+L3xdXuIi7xuj/tK9w==";
+ url = "https://registry.npmjs.org/eslint/-/eslint-5.14.1.tgz";
+ sha512 = "CyUMbmsjxedx8B0mr79mNOqetvkbij/zrXnFeK2zc3pGRn3/tibjiNAv/3UxFEyfMDjh+ZqTrJrEGBFiGfD5Og==";
};
dependencies = [
sources."@babel/code-frame-7.0.0"
@@ -41999,7 +41453,7 @@ in
sources."doctrine-3.0.0"
sources."emoji-regex-7.0.3"
sources."escape-string-regexp-1.0.5"
- sources."eslint-5.14.0"
+ sources."eslint-5.14.1"
sources."eslint-scope-4.0.0"
sources."eslint-utils-1.3.1"
sources."eslint-visitor-keys-1.0.0"
@@ -42961,6 +42415,7 @@ in
sources."chloride-2.2.10"
sources."chloride-test-1.2.2"
sources."commander-2.19.0"
+ sources."debug-4.1.1"
sources."deep-equal-1.0.1"
sources."deep-extend-0.6.0"
sources."diff-3.5.0"
@@ -43003,8 +42458,9 @@ in
})
sources."moment-2.24.0"
sources."moo-0.4.3"
+ sources."ms-2.1.1"
sources."multicb-1.2.2"
- sources."multiserver-3.1.2"
+ sources."multiserver-3.2.0"
sources."multiserver-address-1.0.1"
sources."multiserver-scopes-1.0.0"
sources."muxrpc-6.4.2"
@@ -43076,7 +42532,7 @@ in
sources."separator-escape-0.0.0"
sources."sha.js-2.4.5"
sources."smart-buffer-4.0.2"
- sources."socks-2.3.1"
+ sources."socks-2.3.2"
sources."sodium-browserify-1.2.4"
(sources."sodium-browserify-tweetnacl-0.2.3" // {
dependencies = [
@@ -44077,7 +43533,7 @@ in
sources."buffer-from-1.1.1"
sources."cache-base-1.0.1"
sources."camelcase-3.0.0"
- (sources."chokidar-2.1.1" // {
+ (sources."chokidar-2.1.2" // {
dependencies = [
sources."normalize-path-3.0.0"
];
@@ -44825,8 +44281,8 @@ in
sha512 = "Zn+mo0NNXIW7+pWfdIZx49IfmuVI4I1UPjZhXFvc0Rq7fHul//gbVASrnxtiTbOOCNvD4JKVvKkpo4BNDzHi6w==";
};
dependencies = [
- sources."@snyk/dep-graph-1.1.2"
- sources."@snyk/gemfile-1.1.0"
+ sources."@snyk/dep-graph-1.4.0"
+ sources."@snyk/gemfile-1.2.0"
sources."@yarnpkg/lockfile-1.1.0"
sources."abbrev-1.1.1"
sources."agent-base-4.2.1"
@@ -44889,7 +44345,7 @@ in
sources."core-js-2.3.0"
sources."core-util-is-1.0.2"
sources."create-error-class-3.0.2"
- sources."cross-spawn-5.1.0"
+ sources."cross-spawn-6.0.5"
sources."crypto-random-string-1.0.0"
sources."csslint-1.0.5"
sources."dashdash-1.14.1"
@@ -44924,7 +44380,7 @@ in
sources."esprima-3.1.3"
sources."estraverse-4.2.0"
sources."esutils-2.0.2"
- sources."execa-0.7.0"
+ sources."execa-0.10.0"
sources."exit-0.1.2"
sources."extend-3.0.2"
sources."external-editor-2.2.0"
@@ -45048,7 +44504,7 @@ in
sources."lodash.set-4.3.2"
sources."lowercase-keys-1.0.1"
sources."lru-cache-4.1.5"
- sources."macos-release-1.1.0"
+ sources."macos-release-2.0.0"
sources."make-dir-1.3.0"
sources."mime-db-1.38.0"
sources."mime-types-2.1.22"
@@ -45074,6 +44530,7 @@ in
];
})
sources."netmask-1.0.6"
+ sources."nice-try-1.0.5"
sources."npm-run-path-2.0.2"
sources."number-is-nan-1.0.1"
sources."oauth-sign-0.9.0"
@@ -45082,7 +44539,7 @@ in
sources."opn-5.4.0"
sources."optionator-0.8.2"
sources."os-locale-1.4.0"
- sources."os-name-2.0.1"
+ sources."os-name-3.0.0"
sources."os-tmpdir-1.0.2"
sources."p-finally-1.0.0"
sources."pac-proxy-agent-2.0.2"
@@ -45144,16 +44601,16 @@ in
sources."shelljs-0.3.0"
sources."signal-exit-3.0.2"
sources."smart-buffer-1.1.15"
- sources."snyk-1.133.0"
- sources."snyk-config-2.2.0"
+ sources."snyk-1.134.2"
+ sources."snyk-config-2.2.1"
sources."snyk-docker-plugin-1.22.0"
sources."snyk-go-plugin-1.6.1"
sources."snyk-gradle-plugin-2.1.3"
sources."snyk-module-1.9.1"
sources."snyk-mvn-plugin-2.0.1"
sources."snyk-nodejs-lockfile-parser-1.11.0"
- sources."snyk-nuget-plugin-1.7.1"
- sources."snyk-paket-parser-1.4.1"
+ sources."snyk-nuget-plugin-1.7.2"
+ sources."snyk-paket-parser-1.4.3"
sources."snyk-php-plugin-1.5.2"
sources."snyk-policy-1.13.3"
sources."snyk-python-plugin-1.9.1"
@@ -45177,7 +44634,12 @@ in
sources."supports-color-5.5.0"
sources."temp-dir-1.0.0"
sources."tempfile-2.0.0"
- sources."term-size-1.2.0"
+ (sources."term-size-1.2.0" // {
+ dependencies = [
+ sources."cross-spawn-5.1.0"
+ sources."execa-0.7.0"
+ ];
+ })
sources."then-fs-2.0.0"
sources."through-2.3.8"
sources."thunkify-2.1.2"
@@ -45205,8 +44667,8 @@ in
sources."vscode-languageserver-types-3.14.0"
sources."which-1.3.1"
sources."widest-line-2.0.1"
- sources."win-release-1.1.1"
sources."window-size-0.1.4"
+ sources."windows-release-3.1.0"
sources."wordwrap-1.0.0"
(sources."wrap-ansi-2.1.0" // {
dependencies = [
@@ -46168,7 +45630,7 @@ in
sources."color-convert-1.9.3"
sources."color-name-1.1.3"
sources."combined-stream-1.0.7"
- sources."compressible-2.0.15"
+ sources."compressible-2.0.16"
sources."compression-1.7.3"
sources."configstore-3.1.2"
sources."connect-pause-0.1.1"
@@ -46488,7 +45950,7 @@ in
sources."bytes-3.0.0"
sources."cache-base-1.0.1"
sources."callsite-1.0.0"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
sources."circular-json-0.5.9"
(sources."class-utils-0.3.6" // {
dependencies = [
@@ -47268,7 +46730,7 @@ in
sources."@octokit/endpoint-3.1.3"
sources."@octokit/plugin-enterprise-rest-2.1.1"
sources."@octokit/request-2.3.0"
- sources."@octokit/rest-16.15.0"
+ sources."@octokit/rest-16.16.0"
sources."JSONStream-1.3.5"
sources."abbrev-1.1.1"
sources."agent-base-4.2.1"
@@ -47764,7 +47226,7 @@ in
sources."p-reduce-1.0.0"
sources."p-try-2.0.0"
sources."p-waterfall-1.0.0"
- sources."pacote-9.4.1"
+ sources."pacote-9.5.0"
sources."parallel-transform-1.1.0"
sources."parse-github-repo-url-1.4.1"
sources."parse-json-4.0.0"
@@ -48185,7 +47647,7 @@ in
];
})
sources."cache-base-1.0.1"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
(sources."class-utils-0.3.6" // {
dependencies = [
sources."define-property-0.2.5"
@@ -49276,7 +48738,7 @@ in
];
})
sources."cherow-1.6.9"
- (sources."chokidar-2.1.1" // {
+ (sources."chokidar-2.1.2" // {
dependencies = [
sources."array-unique-0.3.2"
sources."braces-2.3.2"
@@ -49963,7 +49425,7 @@ in
sources."regenerator-transform-0.13.3"
sources."regex-cache-0.4.4"
sources."regex-not-1.0.2"
- sources."regexp-tree-0.1.4"
+ sources."regexp-tree-0.1.5"
sources."regexpu-core-4.4.0"
sources."regjsgen-0.5.0"
(sources."regjsparser-0.6.0" // {
@@ -50349,94 +49811,6 @@ in
production = true;
bypassCache = true;
};
- markdown-link-check = nodeEnv.buildNodePackage {
- name = "markdown-link-check";
- packageName = "markdown-link-check";
- version = "3.7.2";
- src = fetchurl {
- url = "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.7.2.tgz";
- sha512 = "rt6d75iz0Bw9LHmN+DT1a7kiVrkK3gsGhPVB/PwwZDq8LHlILQToC/hwq9tE2CUDg8OdZOV1+7j8vuG9Mu4sIQ==";
- };
- dependencies = [
- sources."ajv-6.9.1"
- sources."ansi-styles-3.2.1"
- sources."asn1-0.2.4"
- sources."assert-plus-1.0.0"
- sources."async-2.6.2"
- sources."asynckit-0.4.0"
- sources."aws-sign2-0.7.0"
- sources."aws4-1.8.0"
- sources."bcrypt-pbkdf-1.0.2"
- sources."caseless-0.12.0"
- sources."chalk-2.4.2"
- sources."color-convert-1.9.3"
- sources."color-name-1.1.3"
- sources."combined-stream-1.0.7"
- sources."commander-2.19.0"
- sources."core-util-is-1.0.2"
- sources."dashdash-1.14.1"
- sources."delayed-stream-1.0.0"
- sources."ecc-jsbn-0.1.2"
- sources."escape-string-regexp-1.0.5"
- sources."extend-3.0.2"
- sources."extsprintf-1.3.0"
- sources."fast-deep-equal-2.0.1"
- sources."fast-json-stable-stringify-2.0.0"
- sources."forever-agent-0.6.1"
- sources."form-data-2.3.3"
- sources."getpass-0.1.7"
- sources."har-schema-2.0.0"
- sources."har-validator-5.1.3"
- sources."has-flag-3.0.0"
- sources."http-signature-1.2.0"
- sources."is-absolute-url-2.1.0"
- sources."is-relative-url-2.0.0"
- sources."is-typedarray-1.0.0"
- sources."isemail-3.2.0"
- sources."isstream-0.1.2"
- sources."jsbn-0.1.1"
- sources."json-schema-0.2.3"
- sources."json-schema-traverse-0.4.1"
- sources."json-stringify-safe-5.0.1"
- sources."jsprim-1.4.1"
- sources."link-check-4.4.4"
- sources."lodash-4.17.11"
- sources."markdown-link-extractor-1.2.0"
- sources."marked-0.4.0"
- sources."mime-db-1.38.0"
- sources."mime-types-2.1.22"
- sources."ms-2.1.1"
- sources."oauth-sign-0.9.0"
- sources."performance-now-2.1.0"
- sources."progress-2.0.3"
- sources."psl-1.1.31"
- sources."punycode-2.1.1"
- sources."qs-6.5.2"
- sources."request-2.88.0"
- sources."safe-buffer-5.1.2"
- sources."safer-buffer-2.1.2"
- sources."sshpk-1.16.1"
- sources."supports-color-5.5.0"
- (sources."tough-cookie-2.4.3" // {
- dependencies = [
- sources."punycode-1.4.1"
- ];
- })
- sources."tunnel-agent-0.6.0"
- sources."tweetnacl-0.14.5"
- sources."uri-js-4.2.2"
- sources."uuid-3.3.2"
- sources."verror-1.10.0"
- ];
- buildInputs = globalBuildInputs;
- meta = {
- description = "checks the all of the hyperlinks in a markdown text to determine if they are alive or dead";
- homepage = "https://github.com/tcort/markdown-link-check#readme";
- license = "ISC";
- };
- production = true;
- bypassCache = true;
- };
mathjax = nodeEnv.buildNodePackage {
name = "mathjax";
packageName = "mathjax";
@@ -51217,35 +50591,350 @@ in
mocha = nodeEnv.buildNodePackage {
name = "mocha";
packageName = "mocha";
- version = "5.2.0";
+ version = "6.0.0";
src = fetchurl {
- url = "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz";
- sha512 = "2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==";
+ url = "https://registry.npmjs.org/mocha/-/mocha-6.0.0.tgz";
+ sha512 = "A7g9k3yr8oJaXn2IItFnfgjyxFc/LTe6Wwv7FczP+e8G74o9xYNSbMYmCf1ouldRojLrFcOb+z75P6Ak0GX6ug==";
};
dependencies = [
+ sources."ansi-colors-3.2.3"
+ sources."ansi-regex-3.0.0"
+ sources."ansi-styles-3.2.1"
+ sources."argparse-1.0.10"
+ sources."arr-diff-4.0.0"
+ sources."arr-flatten-1.1.0"
+ sources."arr-union-3.1.0"
+ sources."array-unique-0.3.2"
+ sources."assign-symbols-1.0.0"
+ sources."atob-2.1.2"
sources."balanced-match-1.0.0"
+ (sources."base-0.11.2" // {
+ dependencies = [
+ sources."define-property-1.0.0"
+ ];
+ })
sources."brace-expansion-1.1.11"
+ (sources."braces-2.3.2" // {
+ dependencies = [
+ sources."extend-shallow-2.0.1"
+ ];
+ })
sources."browser-stdout-1.3.1"
- sources."commander-2.15.1"
+ sources."cache-base-1.0.1"
+ sources."camelcase-5.0.0"
+ (sources."chalk-2.4.2" // {
+ dependencies = [
+ sources."supports-color-5.5.0"
+ ];
+ })
+ (sources."class-utils-0.3.6" // {
+ dependencies = [
+ sources."define-property-0.2.5"
+ (sources."is-accessor-descriptor-0.1.6" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ (sources."is-data-descriptor-0.1.4" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."is-descriptor-0.1.6"
+ sources."kind-of-5.1.0"
+ ];
+ })
+ sources."cliui-4.1.0"
+ sources."code-point-at-1.1.0"
+ sources."collection-visit-1.0.0"
+ sources."color-convert-1.9.3"
+ sources."color-name-1.1.3"
+ sources."component-emitter-1.2.1"
sources."concat-map-0.0.1"
- sources."debug-3.1.0"
+ sources."copy-descriptor-0.1.1"
+ sources."cross-spawn-6.0.5"
+ sources."debug-3.2.6"
+ sources."decamelize-1.2.0"
+ sources."decode-uri-component-0.2.0"
+ sources."define-properties-1.1.3"
+ sources."define-property-2.0.2"
+ sources."detect-file-1.0.0"
sources."diff-3.5.0"
+ sources."end-of-stream-1.4.1"
+ sources."es-abstract-1.13.0"
+ sources."es-to-primitive-1.2.0"
sources."escape-string-regexp-1.0.5"
+ sources."esprima-4.0.1"
+ sources."execa-1.0.0"
+ (sources."expand-brackets-2.1.4" // {
+ dependencies = [
+ sources."debug-2.6.9"
+ sources."define-property-0.2.5"
+ sources."extend-shallow-2.0.1"
+ (sources."is-accessor-descriptor-0.1.6" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ (sources."is-data-descriptor-0.1.4" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."is-descriptor-0.1.6"
+ sources."kind-of-5.1.0"
+ sources."ms-2.0.0"
+ ];
+ })
+ sources."expand-tilde-2.0.2"
+ (sources."extend-shallow-3.0.2" // {
+ dependencies = [
+ sources."is-extendable-1.0.1"
+ ];
+ })
+ (sources."extglob-2.0.4" // {
+ dependencies = [
+ sources."define-property-1.0.0"
+ sources."extend-shallow-2.0.1"
+ ];
+ })
+ (sources."fill-range-4.0.0" // {
+ dependencies = [
+ sources."extend-shallow-2.0.1"
+ ];
+ })
+ sources."find-up-3.0.0"
+ sources."findup-sync-2.0.0"
+ (sources."flat-4.1.0" // {
+ dependencies = [
+ sources."is-buffer-2.0.3"
+ ];
+ })
+ sources."for-in-1.0.2"
+ sources."fragment-cache-0.2.1"
sources."fs.realpath-1.0.0"
- sources."glob-7.1.2"
+ sources."function-bind-1.1.1"
+ sources."get-caller-file-1.0.3"
+ sources."get-stream-4.1.0"
+ sources."get-value-2.0.6"
+ sources."glob-7.1.3"
+ sources."global-modules-1.0.0"
+ sources."global-prefix-1.0.2"
sources."growl-1.10.5"
+ sources."has-1.0.3"
sources."has-flag-3.0.0"
- sources."he-1.1.1"
+ sources."has-symbols-1.0.0"
+ sources."has-value-1.0.0"
+ (sources."has-values-1.0.0" // {
+ dependencies = [
+ sources."kind-of-4.0.0"
+ ];
+ })
+ sources."he-1.2.0"
+ sources."homedir-polyfill-1.0.1"
sources."inflight-1.0.6"
sources."inherits-2.0.3"
+ sources."ini-1.3.5"
+ sources."invert-kv-2.0.0"
+ sources."is-accessor-descriptor-1.0.0"
+ sources."is-buffer-1.1.6"
+ sources."is-callable-1.1.4"
+ sources."is-data-descriptor-1.0.0"
+ sources."is-date-object-1.0.1"
+ sources."is-descriptor-1.0.2"
+ sources."is-extendable-0.1.1"
+ sources."is-extglob-2.1.1"
+ sources."is-fullwidth-code-point-2.0.0"
+ sources."is-glob-3.1.0"
+ (sources."is-number-3.0.0" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."is-plain-object-2.0.4"
+ sources."is-regex-1.0.4"
+ sources."is-stream-1.1.0"
+ sources."is-symbol-1.0.2"
+ sources."is-windows-1.0.2"
+ sources."isarray-1.0.0"
+ sources."isexe-2.0.0"
+ sources."isobject-3.0.1"
+ sources."js-yaml-3.12.0"
+ sources."kind-of-6.0.2"
+ sources."lcid-2.0.0"
+ sources."locate-path-3.0.0"
+ sources."lodash-4.17.11"
+ sources."log-symbols-2.2.0"
+ sources."map-age-cleaner-0.1.3"
+ sources."map-cache-0.2.2"
+ sources."map-visit-1.0.0"
+ sources."mem-4.1.0"
+ sources."micromatch-3.1.10"
+ sources."mimic-fn-1.2.0"
sources."minimatch-3.0.4"
sources."minimist-0.0.8"
+ (sources."mixin-deep-1.3.1" // {
+ dependencies = [
+ sources."is-extendable-1.0.1"
+ ];
+ })
sources."mkdirp-0.5.1"
- sources."ms-2.0.0"
+ sources."ms-2.1.1"
+ sources."nanomatch-1.2.13"
+ sources."nice-try-1.0.5"
+ sources."node-environment-flags-1.0.4"
+ sources."npm-run-path-2.0.2"
+ sources."number-is-nan-1.0.1"
+ (sources."object-copy-0.1.0" // {
+ dependencies = [
+ sources."define-property-0.2.5"
+ sources."is-accessor-descriptor-0.1.6"
+ sources."is-data-descriptor-0.1.4"
+ (sources."is-descriptor-0.1.6" // {
+ dependencies = [
+ sources."kind-of-5.1.0"
+ ];
+ })
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."object-keys-1.1.0"
+ sources."object-visit-1.0.1"
+ sources."object.assign-4.1.0"
+ sources."object.getownpropertydescriptors-2.0.3"
+ sources."object.pick-1.3.0"
sources."once-1.4.0"
+ sources."os-locale-3.1.0"
+ sources."p-defer-1.0.0"
+ sources."p-finally-1.0.0"
+ sources."p-is-promise-2.0.0"
+ sources."p-limit-2.1.0"
+ sources."p-locate-3.0.0"
+ sources."p-try-2.0.0"
+ sources."parse-passwd-1.0.0"
+ sources."pascalcase-0.1.1"
+ sources."path-exists-3.0.0"
sources."path-is-absolute-1.0.1"
- sources."supports-color-5.4.0"
+ sources."path-key-2.0.1"
+ sources."posix-character-classes-0.1.1"
+ sources."pump-3.0.0"
+ sources."regex-not-1.0.2"
+ sources."repeat-element-1.1.3"
+ sources."repeat-string-1.6.1"
+ sources."require-directory-2.1.1"
+ sources."require-main-filename-1.0.1"
+ sources."resolve-dir-1.0.1"
+ sources."resolve-url-0.2.1"
+ sources."ret-0.1.15"
+ sources."safe-regex-1.1.0"
+ sources."semver-5.6.0"
+ sources."set-blocking-2.0.0"
+ (sources."set-value-2.0.0" // {
+ dependencies = [
+ sources."extend-shallow-2.0.1"
+ ];
+ })
+ sources."shebang-command-1.2.0"
+ sources."shebang-regex-1.0.0"
+ sources."signal-exit-3.0.2"
+ (sources."snapdragon-0.8.2" // {
+ dependencies = [
+ sources."debug-2.6.9"
+ sources."define-property-0.2.5"
+ sources."extend-shallow-2.0.1"
+ (sources."is-accessor-descriptor-0.1.6" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ (sources."is-data-descriptor-0.1.4" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."is-descriptor-0.1.6"
+ sources."kind-of-5.1.0"
+ sources."ms-2.0.0"
+ ];
+ })
+ (sources."snapdragon-node-2.1.1" // {
+ dependencies = [
+ sources."define-property-1.0.0"
+ ];
+ })
+ (sources."snapdragon-util-3.0.1" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."source-map-0.5.7"
+ sources."source-map-resolve-0.5.2"
+ sources."source-map-url-0.4.0"
+ sources."split-string-3.1.0"
+ sources."sprintf-js-1.0.3"
+ (sources."static-extend-0.1.2" // {
+ dependencies = [
+ sources."define-property-0.2.5"
+ (sources."is-accessor-descriptor-0.1.6" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ (sources."is-data-descriptor-0.1.4" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."is-descriptor-0.1.6"
+ sources."kind-of-5.1.0"
+ ];
+ })
+ sources."string-width-2.1.1"
+ sources."strip-ansi-4.0.0"
+ sources."strip-eof-1.0.0"
+ sources."strip-json-comments-2.0.1"
+ sources."supports-color-6.0.0"
+ (sources."to-object-path-0.3.0" // {
+ dependencies = [
+ sources."kind-of-3.2.2"
+ ];
+ })
+ sources."to-regex-3.0.2"
+ sources."to-regex-range-2.1.1"
+ (sources."union-value-1.0.0" // {
+ dependencies = [
+ sources."extend-shallow-2.0.1"
+ sources."set-value-0.4.3"
+ ];
+ })
+ (sources."unset-value-1.0.0" // {
+ dependencies = [
+ (sources."has-value-0.3.1" // {
+ dependencies = [
+ sources."isobject-2.1.0"
+ ];
+ })
+ sources."has-values-0.1.4"
+ ];
+ })
+ sources."urix-0.1.0"
+ sources."use-3.1.1"
+ sources."which-1.3.1"
+ sources."which-module-2.0.0"
+ sources."wide-align-1.1.3"
+ (sources."wrap-ansi-2.1.0" // {
+ dependencies = [
+ sources."ansi-regex-2.1.1"
+ sources."is-fullwidth-code-point-1.0.0"
+ sources."string-width-1.0.2"
+ sources."strip-ansi-3.0.1"
+ ];
+ })
sources."wrappy-1.0.2"
+ sources."y18n-4.0.0"
+ sources."yargs-12.0.5"
+ sources."yargs-parser-11.1.1"
+ sources."yargs-unparser-1.5.0"
];
buildInputs = globalBuildInputs;
meta = {
@@ -52082,7 +51771,7 @@ in
sources."camelcase-4.1.0"
sources."capture-stack-trace-1.0.1"
sources."chalk-2.4.2"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
sources."ci-info-1.6.0"
(sources."class-utils-0.3.6" // {
dependencies = [
@@ -53576,7 +53265,7 @@ in
sources."normalize-path-2.1.1"
];
})
- sources."compressible-2.0.15"
+ sources."compressible-2.0.16"
sources."compression-1.5.2"
sources."concat-map-0.0.1"
(sources."connect-2.30.2" // {
@@ -53691,7 +53380,7 @@ in
})
sources."has-cors-1.1.0"
sources."hat-0.0.3"
- sources."http-errors-1.7.1"
+ sources."http-errors-1.7.2"
sources."http-signature-1.2.0"
sources."iconv-lite-0.4.11"
sources."ieee754-1.1.12"
@@ -53850,7 +53539,7 @@ in
sources."statuses-1.2.1"
];
})
- sources."setprototypeof-1.1.0"
+ sources."setprototypeof-1.1.1"
sources."simple-concat-1.0.0"
sources."simple-get-2.8.1"
sources."simple-peer-6.4.4"
@@ -54059,7 +53748,7 @@ in
sources."@babel/template-7.2.2"
sources."@babel/traverse-7.2.3"
sources."@babel/types-7.3.3"
- sources."@iarna/toml-2.2.1"
+ sources."@iarna/toml-2.2.2"
sources."@mrmlnc/readdir-enhanced-2.2.1"
sources."@nodelib/fs.stat-1.1.3"
sources."@parcel/fs-1.11.0"
@@ -54169,7 +53858,7 @@ in
sources."caniuse-db-1.0.30000938"
sources."caniuse-lite-1.0.30000938"
sources."chalk-2.4.2"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
sources."cipher-base-1.0.4"
(sources."clap-1.2.3" // {
dependencies = [
@@ -54751,7 +54440,7 @@ in
sources."is-extendable-1.0.1"
];
})
- sources."regexp-tree-0.1.4"
+ sources."regexp-tree-0.1.5"
sources."regexpu-core-4.4.0"
sources."regjsgen-0.5.0"
(sources."regjsparser-0.6.0" // {
@@ -55027,7 +54716,7 @@ in
sources."builtin-status-codes-3.0.0"
sources."cache-base-1.0.1"
sources."cached-path-relative-1.0.2"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
sources."cipher-base-1.0.4"
(sources."class-utils-0.3.6" // {
dependencies = [
@@ -55526,6 +55215,23 @@ in
production = true;
bypassCache = true;
};
+ reveal = nodeEnv.buildNodePackage {
+ name = "reveal";
+ packageName = "reveal";
+ version = "0.0.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/reveal/-/reveal-0.0.4.tgz";
+ sha1 = "1c1428193359fb03bc029139062ea29f8f691d85";
+ };
+ buildInputs = globalBuildInputs;
+ meta = {
+ description = "The HTML presentation framework";
+ homepage = https://github.com/ForbesLindesay/reveal;
+ license = "MIT";
+ };
+ production = true;
+ bypassCache = true;
+ };
s3http = nodeEnv.buildNodePackage {
name = "s3http";
packageName = "s3http";
@@ -56010,7 +55716,12 @@ in
sources."multiblob-1.13.3"
sources."multiblob-http-0.4.2"
sources."multicb-1.2.2"
- sources."multiserver-3.1.2"
+ (sources."multiserver-3.2.0" // {
+ dependencies = [
+ sources."debug-4.1.1"
+ sources."ms-2.1.1"
+ ];
+ })
sources."multiserver-address-1.0.1"
sources."multiserver-scopes-1.0.0"
sources."muxrpc-6.4.2"
@@ -56305,7 +56016,7 @@ in
];
})
sources."snapdragon-util-3.0.1"
- sources."socks-2.3.1"
+ sources."socks-2.3.2"
sources."sodium-browserify-1.2.4"
(sources."sodium-browserify-tweetnacl-0.2.3" // {
dependencies = [
@@ -56506,7 +56217,7 @@ in
})
sources."color-convert-1.9.3"
sources."color-name-1.1.3"
- sources."compressible-2.0.15"
+ sources."compressible-2.0.16"
sources."compression-1.7.3"
sources."concat-map-0.0.1"
sources."content-disposition-0.5.2"
@@ -57191,14 +56902,14 @@ in
snyk = nodeEnv.buildNodePackage {
name = "snyk";
packageName = "snyk";
- version = "1.133.0";
+ version = "1.134.2";
src = fetchurl {
- url = "https://registry.npmjs.org/snyk/-/snyk-1.133.0.tgz";
- sha512 = "/6xQISFy08oWJasSye77eOaRScPkTIzD7AZYlSWfyS+flYJHgUhNJcTimXGcDwwBmfPtESpDtFpB1LBA16NUOg==";
+ url = "https://registry.npmjs.org/snyk/-/snyk-1.134.2.tgz";
+ sha512 = "WGR3TTZxXOdALEEcQtADFEOHaanhbzwLvS6gyg5vF6Akj7qRAwIIXYBUycbNdAax1mylAsXCzR352dkTwKD9lg==";
};
dependencies = [
- sources."@snyk/dep-graph-1.1.2"
- sources."@snyk/gemfile-1.1.0"
+ sources."@snyk/dep-graph-1.4.0"
+ sources."@snyk/gemfile-1.2.0"
sources."@yarnpkg/lockfile-1.1.0"
sources."abbrev-1.1.1"
sources."agent-base-4.2.1"
@@ -57247,7 +56958,7 @@ in
sources."core-js-2.3.0"
sources."core-util-is-1.0.2"
sources."create-error-class-3.0.2"
- sources."cross-spawn-5.1.0"
+ sources."cross-spawn-6.0.5"
sources."crypto-random-string-1.0.0"
sources."data-uri-to-buffer-1.2.0"
sources."debug-3.2.6"
@@ -57268,7 +56979,7 @@ in
sources."esprima-3.1.3"
sources."estraverse-4.2.0"
sources."esutils-2.0.2"
- sources."execa-0.7.0"
+ sources."execa-0.10.0"
sources."extend-3.0.2"
sources."external-editor-2.2.0"
sources."fast-levenshtein-2.0.6"
@@ -57357,7 +57068,7 @@ in
sources."lodash.set-4.3.2"
sources."lowercase-keys-1.0.1"
sources."lru-cache-4.1.5"
- sources."macos-release-1.1.0"
+ sources."macos-release-2.0.0"
sources."make-dir-1.3.0"
sources."mimic-fn-1.2.0"
sources."minimatch-3.0.4"
@@ -57377,13 +57088,14 @@ in
];
})
sources."netmask-1.0.6"
+ sources."nice-try-1.0.5"
sources."npm-run-path-2.0.2"
sources."number-is-nan-1.0.1"
sources."onetime-2.0.1"
sources."opn-5.4.0"
sources."optionator-0.8.2"
sources."os-locale-1.4.0"
- sources."os-name-2.0.1"
+ sources."os-name-3.0.0"
sources."os-tmpdir-1.0.2"
sources."p-finally-1.0.0"
sources."pac-proxy-agent-2.0.2"
@@ -57435,15 +57147,15 @@ in
sources."shebang-regex-1.0.0"
sources."signal-exit-3.0.2"
sources."smart-buffer-1.1.15"
- sources."snyk-config-2.2.0"
+ sources."snyk-config-2.2.1"
sources."snyk-docker-plugin-1.22.0"
sources."snyk-go-plugin-1.6.1"
sources."snyk-gradle-plugin-2.1.3"
sources."snyk-module-1.9.1"
sources."snyk-mvn-plugin-2.0.1"
sources."snyk-nodejs-lockfile-parser-1.11.0"
- sources."snyk-nuget-plugin-1.7.1"
- sources."snyk-paket-parser-1.4.1"
+ sources."snyk-nuget-plugin-1.7.2"
+ sources."snyk-paket-parser-1.4.3"
sources."snyk-php-plugin-1.5.2"
sources."snyk-policy-1.13.3"
sources."snyk-python-plugin-1.9.1"
@@ -57466,7 +57178,12 @@ in
sources."supports-color-5.5.0"
sources."temp-dir-1.0.0"
sources."tempfile-2.0.0"
- sources."term-size-1.2.0"
+ (sources."term-size-1.2.0" // {
+ dependencies = [
+ sources."cross-spawn-5.1.0"
+ sources."execa-0.7.0"
+ ];
+ })
sources."then-fs-2.0.0"
sources."through-2.3.8"
sources."thunkify-2.1.2"
@@ -57485,8 +57202,8 @@ in
sources."vscode-languageserver-types-3.14.0"
sources."which-1.3.1"
sources."widest-line-2.0.1"
- sources."win-release-1.1.1"
sources."window-size-0.1.4"
+ sources."windows-release-3.1.0"
sources."wordwrap-1.0.0"
(sources."wrap-ansi-2.1.0" // {
dependencies = [
@@ -57760,7 +57477,7 @@ in
sources."capture-stack-trace-1.0.1"
sources."chalk-1.1.3"
sources."charenc-0.0.2"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
sources."ci-info-1.6.0"
(sources."class-utils-0.3.6" // {
dependencies = [
@@ -59674,6 +59391,7 @@ in
dependencies = [
sources."debug-2.6.9"
sources."http-errors-1.6.3"
+ sources."setprototypeof-1.1.0"
];
})
sources."boxen-1.3.0"
@@ -59696,7 +59414,7 @@ in
sources."caw-2.0.1"
sources."chalk-2.4.2"
sources."chardet-0.7.0"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
sources."ci-info-1.6.0"
(sources."class-utils-0.3.6" // {
dependencies = [
@@ -59842,6 +59560,7 @@ in
(sources."express-4.16.4" // {
dependencies = [
sources."debug-2.6.9"
+ sources."setprototypeof-1.1.0"
sources."statuses-1.4.0"
];
})
@@ -59945,7 +59664,7 @@ in
sources."hash.js-1.1.7"
sources."hoek-6.1.2"
sources."homedir-polyfill-1.0.1"
- sources."http-errors-1.7.1"
+ sources."http-errors-1.7.2"
sources."http-signature-1.2.0"
sources."iconv-lite-0.4.23"
sources."ieee754-1.1.12"
@@ -60173,6 +59892,7 @@ in
(sources."raw-body-2.3.3" // {
dependencies = [
sources."http-errors-1.6.3"
+ sources."setprototypeof-1.1.0"
];
})
sources."rc-1.2.8"
@@ -60223,12 +59943,13 @@ in
dependencies = [
sources."debug-2.6.9"
sources."http-errors-1.6.3"
+ sources."setprototypeof-1.1.0"
sources."statuses-1.4.0"
];
})
sources."serve-static-1.13.2"
sources."set-value-2.0.0"
- sources."setprototypeof-1.1.0"
+ sources."setprototypeof-1.1.1"
sources."sha.js-2.4.11"
sources."shebang-command-1.2.0"
sources."shebang-regex-1.0.0"
@@ -60725,7 +60446,7 @@ in
sources."builtin-status-codes-3.0.0"
sources."cacache-11.3.2"
sources."cache-base-1.0.1"
- sources."chokidar-2.1.1"
+ sources."chokidar-2.1.2"
sources."chownr-1.1.1"
sources."chrome-trace-event-1.0.0"
sources."cipher-base-1.0.4"
@@ -61895,7 +61616,7 @@ in
sources."chalk-2.4.0"
sources."chardet-0.4.2"
sources."cheerio-1.0.0-rc.2"
- (sources."chokidar-2.1.1" // {
+ (sources."chokidar-2.1.2" // {
dependencies = [
sources."fsevents-1.2.7"
sources."normalize-path-3.0.0"
diff --git a/pkgs/development/ocaml-modules/psmt2-frontend/default.nix b/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
index c09cf5a77c1..57f1a832f56 100644
--- a/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
+++ b/pkgs/development/ocaml-modules/psmt2-frontend/default.nix
@@ -5,14 +5,14 @@ then throw "psmt2-frontend is not available for OCaml ${ocaml.version}"
else
stdenv.mkDerivation rec {
- version = "0.1";
+ version = "0.2";
name = "ocaml${ocaml.version}-psmt2-frontend-${version}";
src = fetchFromGitHub {
owner = "Coquera";
repo = "psmt2-frontend";
rev = version;
- sha256 = "0k7jlsbkdyg7hafmvynp0ik8xk7mfr00wz27vxn4ncnmp20yz4vn";
+ sha256 = "097zmbrx4gp2gnrxdmsm9lkkp5450gwi0blpxqy3833m6k5brx3n";
};
prefixKey = "-prefix ";
diff --git a/pkgs/development/ocaml-modules/yojson/default.nix b/pkgs/development/ocaml-modules/yojson/default.nix
index dfef72835cc..75810a79e28 100644
--- a/pkgs/development/ocaml-modules/yojson/default.nix
+++ b/pkgs/development/ocaml-modules/yojson/default.nix
@@ -2,15 +2,16 @@
let
pname = "yojson";
param =
- if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
- version = "1.4.1";
- sha256 = "0nwsfkmqpyfab4rxq76q8ff7giyanghw08094jyrp275v99zdjr9";
+ if stdenv.lib.versionAtLeast ocaml.version "4.02" then rec {
+ version = "1.6.0";
+ url = "https://github.com/ocaml-community/yojson/releases/download/${version}/yojson-${version}.tbz";
+ sha256 = "1h73zkgqs6cl9y7p2l0cgjwyqa1fzcrnzv3k6w7wyq2p1q5m84xh";
buildInputs = [ dune ];
extra = { inherit (dune) installPhase; };
- } else {
+ } else rec {
version = "1.2.3";
+ url = "https://github.com/ocaml-community/yojson/archive/v${version}.tar.gz";
sha256 = "10dvkndgwanvw4agbjln7kgb1n9s6lii7jw82kwxczl5rd1sgmvl";
- buildInputs = [];
extra = {
createFindlibDestdir = true;
@@ -25,11 +26,10 @@ stdenv.mkDerivation ({
name = "ocaml${ocaml.version}-${pname}-${param.version}";
src = fetchzip {
- url = "https://github.com/mjambon/${pname}/archive/v${param.version}.tar.gz";
- inherit (param) sha256;
+ inherit (param) url sha256;
};
- buildInputs = [ ocaml findlib ] ++ param.buildInputs;
+ buildInputs = [ ocaml findlib ] ++ (param.buildInputs or []);
propagatedBuildInputs = [ cppo easy-format biniou ];
diff --git a/pkgs/development/python-modules/acoustics/default.nix b/pkgs/development/python-modules/acoustics/default.nix
index 7b26d5c07a5..7f54af28bd8 100644
--- a/pkgs/development/python-modules/acoustics/default.nix
+++ b/pkgs/development/python-modules/acoustics/default.nix
@@ -3,21 +3,20 @@
buildPythonPackage rec {
pname = "acoustics";
- version = "0.2.0.post1";
+ version = "0.2.0.post2";
checkInputs = [ pytest ];
propagatedBuildInputs = [ numpy scipy matplotlib pandas tabulate ];
src = fetchPypi {
inherit pname version;
- sha256 = "738218db41ff1b1f932eabb700e400d84141af6f29392aab5f7be1b19758f806";
+ sha256 = "c0ca4d7ca67fd867c3a7e34232a98a1fc210ee7ff845f3d2eed445a01737b2ff";
};
- # Tests look in wrong place for test data
- doCheck = false;
-
checkPhase = ''
- py.test tests
+ pushd tests
+ py.test ./.
+ popd
'';
disabled = pythonOlder "3.6";
diff --git a/pkgs/development/python-modules/nbconvert/default.nix b/pkgs/development/python-modules/nbconvert/default.nix
index 19e8e1eede9..e8e2dde5e1e 100644
--- a/pkgs/development/python-modules/nbconvert/default.nix
+++ b/pkgs/development/python-modules/nbconvert/default.nix
@@ -22,11 +22,11 @@
buildPythonPackage rec {
pname = "nbconvert";
- version = "5.4.0";
+ version = "5.4.1";
src = fetchPypi {
inherit pname version;
- sha256 = "a8a2749f972592aa9250db975304af6b7337f32337e523a2c995cc9e12c07807";
+ sha256 = "302554a2e219bc0fc84f3edd3e79953f3767b46ab67626fdec16e38ba3f7efe4";
};
checkInputs = [ nose pytest glibcLocales ];
diff --git a/pkgs/development/python-modules/nbsphinx/default.nix b/pkgs/development/python-modules/nbsphinx/default.nix
new file mode 100644
index 00000000000..ad6de3d3175
--- /dev/null
+++ b/pkgs/development/python-modules/nbsphinx/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, docutils
+, jinja2
+, nbconvert
+, nbformat
+, sphinx
+, traitlets
+, python
+}:
+
+buildPythonPackage rec {
+ pname = "nbsphinx";
+ version = "0.4.2";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "b794219e465b3aab500b800884ff40fd152bb19d8b6f87580de1f3a07170aef8";
+ };
+
+ propagatedBuildInputs = [
+ docutils
+ jinja2
+ nbconvert
+ nbformat
+ sphinx
+ traitlets
+ ];
+
+ checkPhase = ''
+ ${python.interpreter} -m nbsphinx
+ '';
+
+ meta = with lib; {
+ description = "Jupyter Notebook Tools for Sphinx";
+ homepage = https://nbsphinx.readthedocs.io/;
+ license = licenses.mit;
+ maintainers = [ maintainers.costrouc ];
+ };
+}
diff --git a/pkgs/development/python-modules/pygraphviz/default.nix b/pkgs/development/python-modules/pygraphviz/default.nix
index 1fcc0ef8ce4..835cdbaa6be 100644
--- a/pkgs/development/python-modules/pygraphviz/default.nix
+++ b/pkgs/development/python-modules/pygraphviz/default.nix
@@ -32,6 +32,6 @@ buildPythonPackage rec {
description = "Python interface to Graphviz graph drawing package";
homepage = https://github.com/pygraphviz/pygraphviz;
license = licenses.bsd3;
- maintainers = with maintainers; [ ];
+ maintainers = with maintainers; [ matthiasbeyer ];
};
}
diff --git a/pkgs/development/python-modules/python-dbusmock/default.nix b/pkgs/development/python-modules/python-dbusmock/default.nix
new file mode 100644
index 00000000000..bee0cab0a3f
--- /dev/null
+++ b/pkgs/development/python-modules/python-dbusmock/default.nix
@@ -0,0 +1,59 @@
+{ lib, buildPythonPackage, fetchPypi,
+ nose, dbus, dbus-python, pygobject3,
+ which, pyflakes, pycodestyle, bluez, networkmanager
+}:
+
+buildPythonPackage rec {
+ pname = "python-dbusmock";
+ version = "0.18.1";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "1hj02p65cic4jdc6a5xf1hx8j5icwy7dcrm5kg91lkjks4gwpg5h";
+ };
+
+ prePatch = ''
+ sed -i -e 's|pyflakes3|pyflakes|g' tests/test_code.py;
+ '';
+
+ # TODO: Get the rest of these tests running?
+ # This is a mocking library used as a check dependency for a single derivation.
+ # That derivation's tests pass. Maybe not worth the effort to fix these...
+ NOSE_EXCLUDE = lib.concatStringsSep "," [
+ "test_bluez4" # NixOS ships BlueZ5
+ # These appear to fail because they're expecting to run in an Ubuntu chroot?
+ "test_everything" # BlueZ5 OBEX
+ "test_polkitd"
+ "test_consolekit"
+ "test_api"
+ "test_logind"
+ "test_notification_daemon"
+ "test_ofono"
+ "test_gnome_screensaver"
+ "test_cli"
+ "test_timedated"
+ "test_upower"
+ # Very slow, consider disabling?
+ # "test_networkmanager"
+ ];
+
+ checkInputs = [
+ nose dbus dbus-python which pycodestyle pyflakes
+ pygobject3 bluez bluez.test networkmanager
+ ];
+
+ checkPhase = ''
+ runHook preCheck
+ export PATH="$PATH:${bluez.test}/test";
+ nosetests -v
+ runHook postCheck
+ '';
+
+ meta = with lib; {
+ description = "Mock D-Bus objects for tests";
+ homepage = https://github.com/martinpitt/python-dbusmock;
+ license = licenses.lgpl3Plus;
+ maintainers = with maintainers; [ callahad ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/development/python-modules/requests-toolbelt/default.nix b/pkgs/development/python-modules/requests-toolbelt/default.nix
index f865f6b8aed..7623640ea0a 100644
--- a/pkgs/development/python-modules/requests-toolbelt/default.nix
+++ b/pkgs/development/python-modules/requests-toolbelt/default.nix
@@ -26,6 +26,6 @@ buildPythonPackage rec {
meta = {
description = "A toolbelt of useful classes and functions to be used with python-requests";
homepage = http://toolbelt.rtfd.org;
- maintainers = with lib.maintainers; [ jgeerds ];
+ maintainers = with lib.maintainers; [ matthiasbeyer jgeerds ];
};
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix
index a72ef7937c5..68931773f04 100644
--- a/pkgs/development/tools/analysis/radare2/default.nix
+++ b/pkgs/development/tools/analysis/radare2/default.nix
@@ -8,7 +8,10 @@
, python3 ? null
, ruby ? null
, lua ? null
-, useX11, rubyBindings, pythonBindings, luaBindings
+, useX11 ? false
+, rubyBindings ? false
+, pythonBindings ? false
+, luaBindings ? false
}:
assert useX11 -> (gtk2 != null && vte != null && gtkdialog != null);
diff --git a/pkgs/development/tools/documentation/mdsh/default.nix b/pkgs/development/tools/documentation/mdsh/default.nix
index 74cde43440b..3c6e6728529 100644
--- a/pkgs/development/tools/documentation/mdsh/default.nix
+++ b/pkgs/development/tools/documentation/mdsh/default.nix
@@ -2,13 +2,13 @@
rustPlatform.buildRustPackage rec {
name = "mdsh-${version}";
- version = "0.1.2";
+ version = "0.1.3";
src = fetchFromGitHub {
owner = "zimbatm";
repo = "mdsh";
rev = "v${version}";
- sha256 = "0sggclzghm54g4wnbab00qw4ry49min4zyw3hjwi0v741aa51xb2";
+ sha256 = "17pd090wpnx7i8q9pp9rhps35ahm1xn4h6pm1cfsafm072qd7rff";
};
cargoSha256 = "1hsnz4sj8kff9azcbw9pkr2ipxlymz4zcm4vhfwydfkdlvdncpxm";
diff --git a/pkgs/development/tools/godef/default.nix b/pkgs/development/tools/godef/default.nix
index 497c765b5b1..993305bd98f 100644
--- a/pkgs/development/tools/godef/default.nix
+++ b/pkgs/development/tools/godef/default.nix
@@ -1,17 +1,18 @@
-{ stdenv, buildGoPackage, fetchgit }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "godef-${version}";
- version = "1.0.0";
- rev = "7b4626be9fa8081987905fd4719d2f6628f9d8b5";
+ version = "1.1.1";
+ rev = "v${version}";
goPackagePath = "github.com/rogpeppe/godef";
- excludedPackages = "go/printer/testdata";
+ subPackages = [ "." ];
- src = fetchgit {
+ src = fetchFromGitHub {
inherit rev;
- url = "https://github.com/rogpeppe/godef";
- sha256 = "0zhw4ba19hy0kv74c58ax759h8721khmwj04fak2y5800ymsgndg";
+ owner = "rogpeppe";
+ repo = "godef";
+ sha256 = "1bpzqnb9fsk1pjjap3gm94pqch1jz02rfah9hg8iqbfm0dzpy31b";
};
meta = {
diff --git a/pkgs/development/tools/mbed-cli/default.nix b/pkgs/development/tools/mbed-cli/default.nix
index 62489800cbb..cd80a5ad9e6 100644
--- a/pkgs/development/tools/mbed-cli/default.nix
+++ b/pkgs/development/tools/mbed-cli/default.nix
@@ -1,17 +1,28 @@
-{ lib, python3Packages }:
+{ lib, python3Packages, git, mercurial }:
with python3Packages;
buildPythonApplication rec {
pname = "mbed-cli";
- version = "1.8.3";
+ version = "1.9.1";
src = fetchPypi {
inherit pname version;
- sha256 = "04vn2v0d7y3vmm8cswzvn2z85balgp3095n5flvgf3r60fdlhlmp";
+ sha256 = "1228plh55id03qywsw0ai88ypdpbh9iz18jfcyhn21pci7mj77fv";
};
- doCheck = false; # no tests available in Pypi
+ checkInputs = [
+ git
+ mercurial
+ pytest
+ ];
+
+ checkPhase = ''
+ export GIT_COMMITTER_NAME=nixbld
+ export EMAIL=nixbld@localhost
+ export GIT_COMMITTER_DATE=$SOURCE_DATE_EPOCH
+ pytest test
+ '';
meta = with lib; {
homepage = https://github.com/ARMmbed/mbed-cli;
diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix
index c31b8b22216..17f25e25e3f 100644
--- a/pkgs/games/steam/chrootenv.nix
+++ b/pkgs/games/steam/chrootenv.nix
@@ -1,11 +1,13 @@
-{ stdenv, lib, writeScript, buildFHSUserEnv, steam, glxinfo-i686
+{ config, stdenv, lib, writeScript, buildFHSUserEnv, steam, glxinfo-i686
, steam-runtime-wrapped, steam-runtime-wrapped-i686 ? null
-, withJava ? false
-, withPrimus ? false
, extraPkgs ? pkgs: [ ] # extra packages to add to targetPkgs
, extraProfile ? "" # string to append to profile
, nativeOnly ? false
, runtimeOnly ? false
+
+# DEPRECATED
+, withJava ? config.steam.java or false
+, withPrimus ? config.steam.primus or false
}:
let
diff --git a/pkgs/misc/drivers/epkowa/default.nix b/pkgs/misc/drivers/epkowa/default.nix
index 3892c37a1d5..6bb021c4958 100644
--- a/pkgs/misc/drivers/epkowa/default.nix
+++ b/pkgs/misc/drivers/epkowa/default.nix
@@ -25,6 +25,39 @@ in
# adding a plugin for another printer shouldn't be too difficult, but you need the firmware to test...
let plugins = {
+ v330 = stdenv.mkDerivation rec {
+ name = "iscan-v330-bundle";
+ version = "1.0.1";
+ pluginVersion = "0.2.0";
+
+ src = fetchurl {
+ url = "https://download2.ebz.epson.net/iscan/plugin/perfection-v330/rpm/x64/iscan-perfection-v330-bundle-${version}.x64.rpm.tar.gz";
+ sha256 = "f6fa455f04cdfbc3d38526573260746e9546830de93ba182d0365f557d2f7df9";
+ };
+
+ buildInputs = [ patchelf rpm ];
+
+ installPhase = ''
+ ${rpm}/bin/rpm2cpio "plugins/esci-interpreter-perfection-v330-${pluginVersion}-1.x86_64.rpm" | ${cpio}/bin/cpio -idmv
+ mkdir $out{,/share,/lib}
+ cp -r ./usr/share/{iscan-data,esci}/ $out/share/
+ cp -r ./usr/lib64/esci $out/lib
+ '';
+
+ preFixup = ''
+ lib=$out/lib/esci/libesci-interpreter-perfection-v330.so
+ rpath=${gcc.cc.lib}/lib/
+ patchelf --set-rpath $rpath $lib
+ '';
+
+ passthru = {
+ registrationCommand = ''
+ $registry --add interpreter usb 0x04b8 0x0142 "$plugin/lib/esci/libesci-interpreter-perfection-v330 $plugin/share/esci/esfwad.bin"
+ '';
+ hw = "Perfection V330 Photo";
+ };
+ meta = common_meta // { description = "Plugin to support "+passthru.hw+" scanner in sane."; };
+ };
x770 = stdenv.mkDerivation rec {
pname = "iscan-gt-x770-bundle";
version = "1.0.1";
diff --git a/pkgs/misc/screensavers/pipes/default.nix b/pkgs/misc/screensavers/pipes/default.nix
index 6e4ae16e9c8..8539db5e002 100644
--- a/pkgs/misc/screensavers/pipes/default.nix
+++ b/pkgs/misc/screensavers/pipes/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
homepage = https://github.com/pipeseroni/pipes.sh;
description = "Animated pipes terminal screensaver";
license = licenses.mit;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
platforms = platforms.unix;
};
}
diff --git a/pkgs/misc/urbit/default.nix b/pkgs/misc/urbit/default.nix
index e356e83436d..e10fa1b06b7 100644
--- a/pkgs/misc/urbit/default.nix
+++ b/pkgs/misc/urbit/default.nix
@@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
name = "urbit-${version}";
- version = "0.6.0";
+ version = "0.7.3";
src = fetchFromGitHub {
owner = "urbit";
repo = "urbit";
- rev = "urbit-${version}";
- sha256 = "158mz6c6y5z1b6piid8hvrl5mcqh8q1ny185gz51jayia51azmgs";
+ rev = "v${version}";
+ sha256 = "192843pjzh8z55fd0x70m3l1vncmixljia3nphgn7j7x4976xkp2";
fetchSubmodules = true;
};
diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
index 94152d1628d..c111492f2b3 100644
--- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
+++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix
@@ -155,7 +155,6 @@ rec {
"/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication"
"/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC"
"/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation"
- "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity"
"/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport"
"/usr/lib/libCRFSuite.dylib"
"/usr/lib/libOpenScriptingUtil.dylib"
@@ -203,7 +202,6 @@ rec {
"/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv"
"/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices"
"/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary"
- "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity"
"/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing"
"/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211"
"/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage"
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix
index 7725b9f3d1a..f54d667d6ae 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix
@@ -101,7 +101,6 @@
"/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication"
"/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC"
"/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation"
- "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity"
"/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport"
"/usr/lib/libCRFSuite.dylib"
"/usr/lib/libOpenScriptingUtil.dylib"
diff --git a/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch b/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch
new file mode 100644
index 00000000000..0853bcea916
--- /dev/null
+++ b/pkgs/os-specific/linux/bolt/0001-skip-mkdir.patch
@@ -0,0 +1,12 @@
+diff --git a/scripts/meson-install.sh b/scripts/meson-install.sh
+index 859ae81..05a1c58 100644
+--- a/scripts/meson-install.sh
++++ b/scripts/meson-install.sh
+@@ -7,5 +7,5 @@ fi
+
+ BOLT_DBDIR=$1
+
+-echo "Creating database dir: ${BOLT_DBDIR}"
+-mkdir -p "${DESTDIR}/${BOLT_DBDIR}"
++# echo "Creating database dir: ${BOLT_DBDIR}"
++# mkdir -p "${DESTDIR}/${BOLT_DBDIR}"
diff --git a/pkgs/os-specific/linux/bolt/default.nix b/pkgs/os-specific/linux/bolt/default.nix
new file mode 100644
index 00000000000..f57fb1310c6
--- /dev/null
+++ b/pkgs/os-specific/linux/bolt/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, meson, ninja, pkgconfig, fetchFromGitLab,
+ python3, umockdev, gobject-introspection, dbus,
+ asciidoc, libxml2, libxslt, docbook_xml_dtd_45, docbook_xsl,
+ glib, systemd, polkit
+}:
+
+stdenv.mkDerivation rec {
+ pname = "bolt";
+ version = "0.7";
+
+ src = fetchFromGitLab {
+ domain = "gitlab.freedesktop.org";
+ owner = "bolt";
+ repo = "bolt";
+ rev = "${version}";
+ sha256 = "0xn2c31kcjh1j76gq1qrcxwjyjyqnsxygkfrvh3xk07qc92f99xd";
+ };
+
+ nativeBuildInputs = [
+ meson ninja pkgconfig
+ asciidoc libxml2 libxslt docbook_xml_dtd_45 docbook_xsl
+ ] ++ stdenv.lib.optional (!doCheck) python3;
+
+ buildInputs = [
+ glib systemd polkit
+ ];
+
+ doCheck = true;
+
+ preCheck = ''
+ export LD_LIBRARY_PATH=${umockdev.out}/lib/
+ '';
+
+ checkInputs = [
+ dbus umockdev gobject-introspection
+ (python3.withPackages
+ (p: [ p.pygobject3 p.dbus-python p.python-dbusmock ]))
+ ];
+
+ # meson install tries to create /var/lib/boltd
+ patches = [ ./0001-skip-mkdir.patch ];
+
+ postPatch = ''
+ patchShebangs tests/test-integration
+ '';
+
+ mesonFlags = [
+ "-Dlocalstatedir=/var"
+ ];
+
+ PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR = "${placeholder "out"}/lib/systemd/system";
+ PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev";
+
+ meta = with stdenv.lib; {
+ description = "Thunderbolt 3 device management daemon";
+ homepage = https://gitlab.freedesktop.org/bolt/bolt;
+ license = licenses.lgpl21Plus;
+ maintainers = [ maintainers.callahad ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/os-specific/linux/conky/default.nix b/pkgs/os-specific/linux/conky/default.nix
index 3d7fb43bbd1..d67c268f054 100644
--- a/pkgs/os-specific/linux/conky/default.nix
+++ b/pkgs/os-specific/linux/conky/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, cmake
+{ config, stdenv, fetchFromGitHub, pkgconfig, cmake
# dependencies
, glib, libXinerama
@@ -27,7 +27,7 @@
, wirelessSupport ? true , wirelesstools ? null
, nvidiaSupport ? false , libXNVCtrl ? null
-, pulseSupport ? false , libpulseaudio ? null
+, pulseSupport ? config.pulseaudio or false, libpulseaudio ? null
, curlSupport ? true , curl ? null
, rssSupport ? curlSupport
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index 57135bf515b..df917888dc7 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
name = "firmware-linux-nonfree-${version}";
- version = "2018-12-13";
+ version = "2019-02-13";
src = fetchgit {
url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
- rev = "813fa1fc6fba6638decd974c4a6a2e485069ea15";
- sha256 = "0zspisbrvplgz1plk4ya22h7ilnsk60srk4q38h6n5d18fpn7rdw";
+ rev = "710963fe53ee3f227556d36839df3858daf6e232";
+ sha256 = "1q3jvlqqxba08s2mrh9hwl0d5w6nhkwj63j0m6amxqpf10k49jxp";
};
installFlags = [ "DESTDIR=$(out)" ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
outputHashMode = "recursive";
outputHashAlgo = "sha256";
- outputHash = "1yr6wcvc3s97h4w0qapma4l17dqsj175an6kmn5w6dppz19g0r5b";
+ outputHash = "13gqnr6gm7336pm48v5p37clphwwdmgbrcipsg3w44wdwgc7fa2f";
meta = with stdenv.lib; {
description = "Binary firmware collection packaged by kernel.org";
diff --git a/pkgs/os-specific/linux/guvcview/default.nix b/pkgs/os-specific/linux/guvcview/default.nix
index 1afd1078c03..acafa0376f5 100644
--- a/pkgs/os-specific/linux/guvcview/default.nix
+++ b/pkgs/os-specific/linux/guvcview/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, intltool, pkgconfig
+{ config, stdenv, fetchurl, intltool, pkgconfig
, gtk3, portaudio, SDL2, ffmpeg, udev, libusb1, libv4l, alsaLib, gsl
-, pulseaudioSupport ? true, libpulseaudio ? null }:
+, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null }:
assert pulseaudioSupport -> libpulseaudio != null;
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 1a56e68fa4b..e8126c23d3d 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -203,6 +203,7 @@ let
SND_HDA_RECONFIG = yes; # Support reconfiguration of jack functions
# Support configuring jack functions via fw mechanism at boot
SND_HDA_PATCH_LOADER = yes;
+ SND_OSSEMUL = yes;
SND_USB_CAIAQ_INPUT = yes;
# Enable PSS mixer (Beethoven ADSP-16 and other compatible)
PSS_MIXER = whenOlder "4.12" yes;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index 95050a37d28..0be12e1bfaa 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
- version = "4.14.101";
+ version = "4.14.102";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "16mnrn2lb6xhcmpqx8brk2w4g6igfb1cwkqkpvlnc7003g2zfbql";
+ sha256 = "0095aqc1jbic77r34mpddjbz75rq1smr41yjx4mdqkl0lb7q5afq";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index ac6b3dad86b..f94bb32361b 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
- version = "4.19.23";
+ version = "4.19.24";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "02hkiz5vlx2qhyi1hxar9d1cr2gfnrpjdrjjkh83yzxci9kjb6rd";
+ sha256 = "014fpzy40yy56whnd8fclgxbdmaab8f5f6gam1lv8x6qmdgqic9v";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.20.nix b/pkgs/os-specific/linux/kernel/linux-4.20.nix
index 382747b69d9..7a6b502048a 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.20.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.20.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
- version = "4.20.10";
+ version = "4.20.11";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "1y1w3j65n2k4ibn9clapbhy5m2rbyspg2maql7q9k27vmplnppjk";
+ sha256 = "07s1sw256nz72yx6kvzws32s9faphsmg91wq4h7fk3jwyi0mrnfw";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 8edd744ba66..d814deefb1a 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,11 +1,11 @@
{ stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
buildLinux (args // rec {
- version = "4.4.174";
+ version = "4.4.175";
extraMeta.branch = "4.4";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "0fdsxfwhn1xqic56c4aafxw1rdqy7s4w0inmkhcnh98lj3fi2lmy";
+ sha256 = "1r8bp8dcjgndx9ziwv3pkgngr1bxwvdmimg8gxq8ak0km9bqfz76";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index cdebebc7482..c5f4b45082f 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,11 +1,11 @@
{ stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
buildLinux (args // rec {
- version = "4.9.158";
+ version = "4.9.159";
extraMeta.branch = "4.9";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "1vvm2gw5cddy40amxxr1hcw0bis2zldzyicvjhy11wg6j3snk2lc";
+ sha256 = "0hhpfyvankdiwbngpsl9xprf6777830dms722hix3450d0qz37cz";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/lxcfs/default.nix b/pkgs/os-specific/linux/lxcfs/default.nix
index a32f99600cd..3953ff1915a 100644
--- a/pkgs/os-specific/linux/lxcfs/default.nix
+++ b/pkgs/os-specific/linux/lxcfs/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, help2man, fuse
-, enableDebugBuild ? false }:
+{ config, stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, help2man, fuse
+, enableDebugBuild ? config.lxcfs.enableDebugBuild or false }:
with stdenv.lib;
stdenv.mkDerivation rec {
diff --git a/pkgs/os-specific/linux/pcmciautils/default.nix b/pkgs/os-specific/linux/pcmciautils/default.nix
index 93e2c097ff7..aeb4d78d0ec 100644
--- a/pkgs/os-specific/linux/pcmciautils/default.nix
+++ b/pkgs/os-specific/linux/pcmciautils/default.nix
@@ -1,10 +1,9 @@
-{ stdenv, fetchurl
+{ config, lib, stdenv, fetchurl
, yacc, flex
, sysfsutils, kmod, udev
-, firmware # Special pcmcia cards.
-, config # Special hardware (map memory & port & irq)
-, lib # used to generate postInstall script.
-}:
+, firmware ? config.pcmciaUtils.firmware or [] # Special pcmcia cards.
+, configOpts ? config.pcmciaUtils.config or null # Special hardware (map memory & port & irq)
+}: # used to generate postInstall script.
# FIXME: should add an option to choose between hotplug and udev.
stdenv.mkDerivation rec {
@@ -28,8 +27,8 @@ stdenv.mkDerivation rec {
" src/{startup.c,pcmcia-check-broken-cis.c} # fix-color */
''
+ (if firmware == [] then ''sed -i "s,STARTUP = true,STARTUP = false," Makefile'' else "")
- + (if config == null then "" else ''
- ln -sf ${config} ./config/config.opts'')
+ + (if configOpts == null then "" else ''
+ ln -sf ${configOpts} ./config/config.opts'')
;
makeFlags = "LEX=flex";
diff --git a/pkgs/servers/atlassian/jira.nix b/pkgs/servers/atlassian/jira.nix
index 8e11ef6163c..3c7c0dc6156 100644
--- a/pkgs/servers/atlassian/jira.nix
+++ b/pkgs/servers/atlassian/jira.nix
@@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "atlassian-jira-${version}";
- version = "7.13.0";
+ version = "8.0.1";
src = fetchurl {
- url = "https://downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
- sha256 = "1dra5h8lgqwzhs95br8x34c5pcrkgrkmpyhiq9vbayf1aarjxfnq";
+ url = "https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
+ sha256 = "0cf0j781k23fs3jzrd4ranzvqnhdnza8dbaqxx31dk3p7c7168bw";
};
phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix
index 74e1fda2d42..550a8fa13cc 100644
--- a/pkgs/servers/dns/bind/default.nix
+++ b/pkgs/servers/dns/bind/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, lib, fetchurl
+{ config, stdenv, lib, fetchurl
, perl
, libcap, libtool, libxml2, openssl
-, enablePython ? false, python3 ? null
+, enablePython ? config.bind.enablePython or false, python3 ? null
, enableSeccomp ? false, libseccomp ? null, buildPackages
}:
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
buildInputs = [ libtool libxml2 openssl ]
++ lib.optional stdenv.isLinux libcap
++ lib.optional enableSeccomp libseccomp
- ++ lib.optional enablePython python3;
+ ++ lib.optional enablePython (python3.withPackages (ps: with ps; [ ply ]));
STD_CDEFINES = [ "-DDIG_SIGCHASE=1" ]; # support +sigchase
diff --git a/pkgs/servers/mautrix-whatsapp/default.nix b/pkgs/servers/mautrix-whatsapp/default.nix
new file mode 100644
index 00000000000..ea3fbd58e2e
--- /dev/null
+++ b/pkgs/servers/mautrix-whatsapp/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+ name = "mautrix-unstable-${version}";
+ version = "2019-02-11";
+
+ goPackagePath = "maunium.net/go/mautrix-whatsapp";
+
+ src = fetchFromGitHub {
+ owner = "tulir";
+ repo = "mautrix-whatsapp";
+ rev = "f689297ba6704265a938951f307b365e829fcfa1";
+ sha256 = "1658bika9ylhm64k9lxavp43dxilygn6vx7yn6y1l10j8by2akxk";
+ };
+
+ goDeps = ./deps.nix;
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/tulir/mautrix-whatsapp;
+ description = "Matrix <-> Whatsapp hybrid puppeting/relaybot bridge";
+ license = licenses.agpl3;
+ maintainers = with maintainers; [ vskilet ];
+ };
+}
diff --git a/pkgs/servers/mautrix-whatsapp/deps.nix b/pkgs/servers/mautrix-whatsapp/deps.nix
new file mode 100644
index 00000000000..8a1543ac012
--- /dev/null
+++ b/pkgs/servers/mautrix-whatsapp/deps.nix
@@ -0,0 +1,201 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+ {
+ goPackagePath = "github.com/Baozisoftware/qrcode-terminal-go";
+ fetch = {
+ type = "git";
+ url = "https://github.com/Baozisoftware/qrcode-terminal-go";
+ rev = "c0650d8dff0f";
+ sha256 = "166h9zy9y7ygayhybg7d080hpdcf1mvkf3rwnq5lqg8i3cg71s7b";
+ };
+ }
+ {
+ goPackagePath = "github.com/Rhymen/go-whatsapp";
+ fetch = {
+ type = "git";
+ url = "https://github.com/Rhymen/go-whatsapp";
+ rev = "2ca6af00572c";
+ sha256 = "0lrscj59n9nmd5z0h9r2c952m0da672r3aj33bi443ap0h97w19i";
+ };
+ }
+ {
+ goPackagePath = "github.com/fatih/color";
+ fetch = {
+ type = "git";
+ url = "https://github.com/fatih/color";
+ rev = "v1.7.0";
+ sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+ };
+ }
+ {
+ goPackagePath = "github.com/golang/protobuf";
+ fetch = {
+ type = "git";
+ url = "https://github.com/golang/protobuf";
+ rev = "v1.2.0";
+ sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
+ };
+ }
+ {
+ goPackagePath = "github.com/gorilla/mux";
+ fetch = {
+ type = "git";
+ url = "https://github.com/gorilla/mux";
+ rev = "v1.6.2";
+ sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
+ };
+ }
+ {
+ goPackagePath = "github.com/gorilla/websocket";
+ fetch = {
+ type = "git";
+ url = "https://github.com/gorilla/websocket";
+ rev = "v1.4.0";
+ sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
+ };
+ }
+ {
+ goPackagePath = "github.com/mattn/go-colorable";
+ fetch = {
+ type = "git";
+ url = "https://github.com/mattn/go-colorable";
+ rev = "v0.0.9";
+ sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
+ };
+ }
+ {
+ goPackagePath = "github.com/mattn/go-isatty";
+ fetch = {
+ type = "git";
+ url = "https://github.com/mattn/go-isatty";
+ rev = "v0.0.4";
+ sha256 = "0zs92j2cqaw9j8qx1sdxpv3ap0rgbs0vrvi72m40mg8aa36gd39w";
+ };
+ }
+ {
+ goPackagePath = "github.com/mattn/go-sqlite3";
+ fetch = {
+ type = "git";
+ url = "https://github.com/mattn/go-sqlite3";
+ rev = "v1.10.0";
+ sha256 = "1zmz6asplixfihxhj11spgfs0v3xzb3nv0hlq6n6zsg781ni31xx";
+ };
+ }
+ {
+ goPackagePath = "github.com/russross/blackfriday";
+ fetch = {
+ type = "git";
+ url = "https://github.com/russross/blackfriday";
+ rev = "v2.0.1";
+ sha256 = "0nlz7isdd4rgnwzs68499hlwicxz34j2k2a0b8jy0y7ycd2bcr5j";
+ };
+ }
+ {
+ goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+ fetch = {
+ type = "git";
+ url = "https://github.com/shurcooL/sanitized_anchor_name";
+ rev = "v1.0.0";
+ sha256 = "1gv9p2nr46z80dnfjsklc6zxbgk96349sdsxjz05f3z6wb6m5l8f";
+ };
+ }
+ {
+ goPackagePath = "github.com/skip2/go-qrcode";
+ fetch = {
+ type = "git";
+ url = "https://github.com/skip2/go-qrcode";
+ rev = "dc11ecdae0a9";
+ sha256 = "0mc70hsn5x2a66a9sbwlq51cng2s1aq7rw4pr9pif4xdzflkl057";
+ };
+ }
+ {
+ goPackagePath = "golang.org/x/crypto";
+ fetch = {
+ type = "git";
+ url = "https://go.googlesource.com/crypto";
+ rev = "ff983b9c42bc";
+ sha256 = "1hpr06kzn8jnn3gvzp0p9zn4fz4l9h69f7x66idx142w4xdlaanz";
+ };
+ }
+ {
+ goPackagePath = "golang.org/x/net";
+ fetch = {
+ type = "git";
+ url = "https://go.googlesource.com/net";
+ rev = "915654e7eabc";
+ sha256 = "0fzd7n2yc4qnnf2wk21zxy6gb01xviq2z1dzrbqcn8p1s4fjsqw5";
+ };
+ }
+ {
+ goPackagePath = "golang.org/x/sync";
+ fetch = {
+ type = "git";
+ url = "https://go.googlesource.com/sync";
+ rev = "37e7f081c4d4";
+ sha256 = "1bb0mw6ckb1k7z8v3iil2qlqwfj408fvvp8m1cik2b46p7snyjhm";
+ };
+ }
+ {
+ goPackagePath = "golang.org/x/sys";
+ fetch = {
+ type = "git";
+ url = "https://go.googlesource.com/sys";
+ rev = "48ac38b7c8cb";
+ sha256 = "037vs8sdvq310j3b6z9k62zlby1mzmsr9ha01rcy98dv5v8bkhin";
+ };
+ }
+ {
+ goPackagePath = "gopkg.in/check.v1";
+ fetch = {
+ type = "git";
+ url = "https://gopkg.in/check.v1";
+ rev = "788fd7840127";
+ sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+ };
+ }
+ {
+ goPackagePath = "gopkg.in/yaml.v2";
+ fetch = {
+ type = "git";
+ url = "https://gopkg.in/yaml.v2";
+ rev = "v2.2.2";
+ sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+ };
+ }
+ {
+ goPackagePath = "maunium.net/go/mauflag";
+ fetch = {
+ type = "git";
+ url = "https://github.com/tulir/mauflag.git";
+ rev = "v1.0.0";
+ sha256 = "09jv1819jwq5i29y6ngf4j4ii6qwlshydvprfvsfplc419dkz1vx";
+ };
+ }
+ {
+ goPackagePath = "maunium.net/go/maulogger";
+ fetch = {
+ type = "git";
+ url = "https://github.com/tulir/maulogger.git";
+ rev = "v2.0.0";
+ sha256 = "0qz4cpaqvcmrj3fb2bb6yrhw3k5h51crskricyqgg1b7aklphan5";
+ };
+ }
+ {
+ goPackagePath = "maunium.net/go/mautrix";
+ fetch = {
+ type = "git";
+ url = "https://github.com/tulir/mautrix-go.git";
+ rev = "v0.1.0-alpha.3";
+ sha256 = "12nlyij57ss2a5d1f1k1vsmjjvxp1fannlrbnp2jsj6rrsq0d2wr";
+ };
+ }
+ {
+ goPackagePath = "maunium.net/go/mautrix-appservice";
+ fetch = {
+ type = "git";
+ url = "https://github.com/tulir/mautrix-appservice-go.git";
+ rev = "v0.1.0-alpha.3";
+ sha256 = "17y11wgqbrafbq6bnn4rp2lzd50fjz9d6f8j3382jsara7ps95vr";
+ };
+ }
+]
diff --git a/pkgs/servers/misc/taskserver/default.nix b/pkgs/servers/misc/taskserver/default.nix
index 63925d30c64..f15b7ca2e82 100644
--- a/pkgs/servers/misc/taskserver/default.nix
+++ b/pkgs/servers/misc/taskserver/default.nix
@@ -38,6 +38,6 @@ stdenv.mkDerivation rec {
homepage = https://taskwarrior.org;
license = stdenv.lib.licenses.mit;
platforms = stdenv.lib.platforms.linux;
- maintainers = with stdenv.lib.maintainers; [ makefu ];
+ maintainers = with stdenv.lib.maintainers; [ matthiasbeyer makefu ];
};
}
diff --git a/pkgs/servers/plex/default.nix b/pkgs/servers/plex/default.nix
index cce1f5c6ab0..f94d185910f 100644
--- a/pkgs/servers/plex/default.nix
+++ b/pkgs/servers/plex/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, rpmextract, glibc
+{ config, stdenv, fetchurl, rpmextract, glibc
, dataDir ? "/var/lib/plex" # Plex's data directory must be baked into the package due to symlinks.
-, enablePlexPass ? false
+, enablePlexPass ? config.plex.enablePlexPass or false
}:
let
diff --git a/pkgs/shells/oil/default.nix b/pkgs/shells/oil/default.nix
index 8d3452b912b..d019457ab8a 100644
--- a/pkgs/shells/oil/default.nix
+++ b/pkgs/shells/oil/default.nix
@@ -1,13 +1,13 @@
{ stdenv, lib, fetchurl }:
let
- version = "0.3.0";
+ version = "0.6.pre15";
in
stdenv.mkDerivation {
name = "oil-${version}";
src = fetchurl {
url = "https://www.oilshell.org/download/oil-${version}.tar.xz";
- sha256 = "0j4fyn6xjaf29xqyzm09ahazmq9v1hkxv4kps7n3lzdfr32a4kk9";
+ sha256 = "1azdmicv39rp30msl6fpw6921gi6ib8lxiyc8kanljqk5d7zg4p6";
};
postPatch = ''
diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix
index 63affdde718..84a2375302f 100644
--- a/pkgs/tools/bluetooth/blueman/default.nix
+++ b/pkgs/tools/bluetooth/blueman/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, lib, fetchurl, intltool, pkgconfig, python3Packages, bluez, gtk3
+{ config, stdenv, lib, fetchurl, intltool, pkgconfig, python3Packages, bluez, gtk3
, obex_data_server, xdg_utils, libnotify, dnsmasq, dhcp
, hicolor-icon-theme, librsvg, wrapGAppsHook, gobject-introspection
-, withPulseAudio ? true, libpulseaudio }:
+, withPulseAudio ? config.pulseaudio or stdenv.isLinux, libpulseaudio }:
let
pythonPackages = python3Packages;
diff --git a/pkgs/tools/graphics/lepton/default.nix b/pkgs/tools/graphics/lepton/default.nix
new file mode 100644
index 00000000000..fec092db0c5
--- /dev/null
+++ b/pkgs/tools/graphics/lepton/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, cmake, git, glibc }:
+
+stdenv.mkDerivation rec {
+ version = "1.2.1";
+ name = "lepton-${version}";
+
+ src = fetchFromGitHub {
+ repo = "lepton";
+ owner = "dropbox";
+ rev = "c378cbfa2daaa99e8828be7395013f94cedb1bcc";
+ sha256 = "1f2vyp0crj4yw27bs53vykf2fqk4w57gv3lh9dp89dh3y7wwh1ba";
+ };
+
+ nativeBuildInputs = [ cmake git ];
+ buildInputs = [ glibc.static ];
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/dropbox/lepton;
+ description = "A tool to losslessly compress JPEGs";
+ license = licenses.asl20;
+ platforms = [ "x86_64-linux" ];
+ maintainers = with maintainers; [ artemist ];
+ };
+}
diff --git a/pkgs/tools/misc/aptly/default.nix b/pkgs/tools/misc/aptly/default.nix
index 168a3f88772..27ee38b3417 100644
--- a/pkgs/tools/misc/aptly/default.nix
+++ b/pkgs/tools/misc/aptly/default.nix
@@ -2,14 +2,14 @@
let
- version = "1.2.0";
+ version = "1.3.0";
rev = "v${version}";
aptlySrc = fetchFromGitHub {
inherit rev;
- owner = "smira";
+ owner = "aptly-dev";
repo = "aptly";
- sha256 = "1acnkmgarz9rp0skkh7zzwkhisjlmbl74jqjmqd3mn42y528c34b";
+ sha256 = "032gw8qkxcgc0jyrvzqh7jkbmk4k0gf7j74hyhclfnjmd9548f5l";
};
aptlyCompletionSrc = fetchFromGitHub {
@@ -26,7 +26,7 @@ buildGoPackage {
src = aptlySrc;
- goPackagePath = "github.com/smira/aptly";
+ goPackagePath = "github.com/aptly-dev/aptly";
nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix
index 2a8734822ac..fa1729b929c 100644
--- a/pkgs/tools/misc/grub/2.0x.nix
+++ b/pkgs/tools/misc/grub/2.0x.nix
@@ -47,6 +47,21 @@ stdenv.mkDerivation rec {
sha256 = "03vvdfhdmf16121v7xs8is2krwnv15wpkhkf16a4yf8nsfc3f2w1";
};
+ patches = [
+ ./fix-bash-completion.patch
+ # This patch makes grub compatible with the XFS sparse inode
+ # feature introduced by xfsprogs-4.16.
+ # to be removed in grub-2.03
+ (fetchpatch {
+ url = https://git.savannah.gnu.org/cgit/grub.git/patch/?id=cda0a857dd7a27cd5d621747464bfe71e8727fff;
+ sha256 = "0k9qrkdxwdqk6sz05q9smqwjr6pvgc9adx1mlf0807g4im91xnm0";
+ })
+ ./relocation-not-implemented.diff
+ ];
+ postPatch = ''
+ substituteInPlace ./configure --replace '/usr/share/fonts/unifont' '${unifont}/share/fonts'
+ '';
+
nativeBuildInputs = [ bison flex python pkgconfig ];
buildInputs = [ ncurses libusb freetype gettext lvm2 fuse ]
++ optional doCheck qemu
@@ -57,10 +72,6 @@ stdenv.mkDerivation rec {
# Work around a bug in the generated flex lexer (upstream flex bug?)
NIX_CFLAGS_COMPILE = "-Wno-error";
- postPatch = ''
- substituteInPlace ./configure --replace '/usr/share/fonts/unifont' '${unifont}/share/fonts'
- '';
-
preConfigure =
'' for i in "tests/util/"*.in
do
@@ -82,17 +93,6 @@ stdenv.mkDerivation rec {
unset CPP # setting CPP intereferes with dependency calculation
'';
- patches = [
- ./fix-bash-completion.patch
- # This patch makes grub compatible with the XFS sparse inode
- # feature introduced by xfsprogs-4.16.
- # to be removed in grub-2.03
- (fetchpatch {
- url = https://git.savannah.gnu.org/cgit/grub.git/patch/?id=cda0a857dd7a27cd5d621747464bfe71e8727fff;
- sha256 = "0k9qrkdxwdqk6sz05q9smqwjr6pvgc9adx1mlf0807g4im91xnm0";
- })
- ];
-
configureFlags = [ "--enable-grub-mount" ] # dep of os-prober
++ optional zfsSupport "--enable-libzfs"
++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystemsBuild.${stdenv.hostPlatform.system}.target}" "--program-prefix=" ]
diff --git a/pkgs/tools/misc/grub/relocation-not-implemented.diff b/pkgs/tools/misc/grub/relocation-not-implemented.diff
new file mode 100644
index 00000000000..0b7bf947d14
--- /dev/null
+++ b/pkgs/tools/misc/grub/relocation-not-implemented.diff
@@ -0,0 +1,25 @@
+https://git.savannah.gnu.org/cgit/grub.git/commit/util?id=842c390469e2c2e10b5
+diff --git a/util/grub-mkimagexx.c b/util/grub-mkimagexx.c
+index a2bb054..39d7efb 100644
+--- a/util/grub-mkimagexx.c
++++ b/util/grub-mkimagexx.c
+@@ -841,6 +841,7 @@ SUFFIX (relocate_addresses) (Elf_Ehdr *e, Elf_Shdr *sections,
+ break;
+
+ case R_X86_64_PC32:
++ case R_X86_64_PLT32:
+ {
+ grub_uint32_t *t32 = (grub_uint32_t *) target;
+ *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32)
+diff --git a/util/grub-module-verifier.c b/util/grub-module-verifier.c
+index 9179285..a79271f 100644
+--- a/util/grub-module-verifier.c
++++ b/util/grub-module-verifier.c
+@@ -19,6 +19,7 @@ struct grub_module_verifier_arch archs[] = {
+ -1
+ }, (int[]){
+ R_X86_64_PC32,
++ R_X86_64_PLT32,
+ -1
+ }
+ },
diff --git a/pkgs/tools/misc/mpdscribble/default.nix b/pkgs/tools/misc/mpdscribble/default.nix
index 6913f1c11fd..ca6808effda 100644
--- a/pkgs/tools/misc/mpdscribble/default.nix
+++ b/pkgs/tools/misc/mpdscribble/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
description = "A Music Player Daemon (MPD) client which submits information about tracks beeing played to a scrobbler (e.g. last.fm)";
homepage = http://mpd.wikia.com/wiki/Client:mpdscribble;
license = licenses.gpl2;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
platforms = platforms.linux;
};
}
diff --git a/pkgs/tools/misc/multitail/default.nix b/pkgs/tools/misc/multitail/default.nix
index 48714a4b6e8..07561d390cd 100644
--- a/pkgs/tools/misc/multitail/default.nix
+++ b/pkgs/tools/misc/multitail/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = http://www.vanheusden.com/multitail/;
description = "tail on Steroids";
- maintainers = with stdenv.lib.maintainers; [ ];
+ maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
platforms = stdenv.lib.platforms.unix;
license = stdenv.lib.licenses.gpl2Plus;
};
diff --git a/pkgs/tools/misc/skim/default.nix b/pkgs/tools/misc/skim/default.nix
index f1df0691205..52cc5671531 100644
--- a/pkgs/tools/misc/skim/default.nix
+++ b/pkgs/tools/misc/skim/default.nix
@@ -2,13 +2,13 @@
rustPlatform.buildRustPackage rec {
name = "skim-${version}";
- version = "0.5.2";
+ version = "0.5.4";
src = fetchFromGitHub {
owner = "lotabout";
repo = "skim";
rev = "v${version}";
- sha256 = "1b3l0h69cm70669apsgzp7qw1k5fi2gbk9176hjr9iypbdiwjyir";
+ sha256 = "1mn0wa10f9ik6ddhwjdd1n15gdif10284zpwbrwprya643959aj2";
};
outputs = [ "out" "vim" ];
@@ -21,6 +21,7 @@ rustPlatform.buildRustPackage rec {
postInstall = ''
install -D -m 555 bin/sk-tmux -t $out/bin
+ install -D -m 644 shell/skim.1 $out/man/man1/skim.1
install -D -m 444 shell/* -t $out/share/skim
install -D -m 444 plugin/skim.vim -t $vim/plugin
diff --git a/pkgs/tools/misc/smenu/default.nix b/pkgs/tools/misc/smenu/default.nix
index b5c963307df..2b9f83041a4 100644
--- a/pkgs/tools/misc/smenu/default.nix
+++ b/pkgs/tools/misc/smenu/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
your selection will be sent to standard output.
'';
license = licenses.gpl2;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
platforms = platforms.linux;
};
}
diff --git a/pkgs/tools/misc/vdirsyncer/default.nix b/pkgs/tools/misc/vdirsyncer/default.nix
index 2212ba870c4..f538fcbe4ec 100644
--- a/pkgs/tools/misc/vdirsyncer/default.nix
+++ b/pkgs/tools/misc/vdirsyncer/default.nix
@@ -71,7 +71,7 @@ python3Packages.buildPythonApplication rec {
meta = with stdenv.lib; {
homepage = https://github.com/pimutils/vdirsyncer;
description = "Synchronize calendars and contacts";
- maintainers = with maintainers; [ jgeerds ];
+ maintainers = with maintainers; [ matthiasbeyer jgeerds ];
platforms = platforms.all;
license = licenses.mit;
};
diff --git a/pkgs/tools/misc/vimer/default.nix b/pkgs/tools/misc/vimer/default.nix
index 7ccc6e9dc27..a655aa9502e 100644
--- a/pkgs/tools/misc/vimer/default.nix
+++ b/pkgs/tools/misc/vimer/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
in an existing instance of GVim or MacVim.
'';
license = licenses.mit;
- maintainers = [ ];
+ maintainers = [ maintainers.matthiasbeyer ];
platforms = platforms.linux;
};
diff --git a/pkgs/tools/misc/xsel/default.nix b/pkgs/tools/misc/xsel/default.nix
index 604868f8c49..0ec7d58598f 100644
--- a/pkgs/tools/misc/xsel/default.nix
+++ b/pkgs/tools/misc/xsel/default.nix
@@ -3,23 +3,18 @@
stdenv.mkDerivation rec {
name = "xsel-unstable-${version}";
- version = "2016-09-02";
+ version = "2018-01-10";
src = fetchFromGitHub {
owner = "kfish";
repo = "xsel";
- rev = "aa7f57eed805adb09e9c59c8ea841870e8206b81";
- sha256 = "04mrc8j0rr7iy1k6brfxnx26pmxm800gh4nqrxn6j2lz6vd5y9m5";
+ rev = "9bfc13d64b5acb92c6648c696a9d9260fcbecc65";
+ sha256 = "05ms34by5hxznnpvmvhgp6llvlkz0zw4sq6c4bgwr82lj140lscm";
};
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ libX11 ];
- # We need a README file, otherwise autoconf complains.
- postUnpack = ''
- mv $sourceRoot/README{.md,}
- '';
-
meta = with lib; {
description = "Command-line program for getting and setting the contents of the X selection";
homepage = http://www.kfish.org/software/xsel;
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index 0598976ec98..fbba83d7a33 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -19,11 +19,11 @@ buildPythonPackage rec {
# The websites youtube-dl deals with are a very moving target. That means that
# downloads break constantly. Because of that, updates should always be backported
# to the latest stable release.
- version = "2019.01.30.1";
+ version = "2019.02.18";
src = fetchurl {
url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
- sha256 = "0wamv1fs4w8jjx67p60rgrgdi6k04yy0h4p3cwscza5pzhpmvnlf";
+ sha256 = "1sr0f6ixpaqyp3cf29zswx84y3nfabwnk3sljcgvgnmjp73zzfv1";
};
nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/networking/http-prompt/default.nix b/pkgs/tools/networking/http-prompt/default.nix
index 69b23b3e3a4..78dc52905d8 100644
--- a/pkgs/tools/networking/http-prompt/default.nix
+++ b/pkgs/tools/networking/http-prompt/default.nix
@@ -29,7 +29,7 @@ pythonPackages.buildPythonApplication rec {
description = "An interactive command-line HTTP client featuring autocomplete and syntax highlighting";
homepage = https://github.com/eliangcs/http-prompt;
license = licenses.mit;
- maintainers = with maintainers; [ ];
+ maintainers = with maintainers; [ matthiasbeyer ];
platforms = platforms.linux; # can only test on linux
};
}
diff --git a/pkgs/tools/networking/lftp/default.nix b/pkgs/tools/networking/lftp/default.nix
index bb627f49971..b4886f58cbb 100644
--- a/pkgs/tools/networking/lftp/default.nix
+++ b/pkgs/tools/networking/lftp/default.nix
@@ -21,10 +21,14 @@ stdenv.mkDerivation rec {
configureFlags = [
"--with-readline=${readline.dev}"
+ "--with-zlib=${zlib.dev}"
+ "--without-expat"
];
installFlags = [ "PREFIX=$(out)" ];
+ enableParallelBuilding = true;
+
meta = with stdenv.lib; {
description = "A file transfer program supporting a number of network protocols";
homepage = https://lftp.tech/;
diff --git a/pkgs/tools/security/ibm-sw-tpm2/default.nix b/pkgs/tools/security/ibm-sw-tpm2/default.nix
new file mode 100644
index 00000000000..cec31cec377
--- /dev/null
+++ b/pkgs/tools/security/ibm-sw-tpm2/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, lib, openssl }:
+
+stdenv.mkDerivation rec {
+ pname = "ibm-sw-tpm2";
+ version = "1332";
+
+ src = fetchurl {
+ url = "mirror://sourceforge/ibmswtpm2/ibmtpm${version}.tar.gz";
+ sha256 = "1zdhi8acd4jfp1v7ibd86hcv0g39yk8qrnhxjmmgzn8i7npr70cf";
+ };
+
+ buildInputs = [ openssl ];
+
+ sourceRoot = "src";
+
+ prePatch = ''
+ # Fix hardcoded path to GCC.
+ substituteInPlace makefile --replace /usr/bin/gcc "${stdenv.cc}/bin/cc"
+
+ # Remove problematic default CFLAGS.
+ substituteInPlace makefile \
+ --replace -Werror "" \
+ --replace -O0 "" \
+ --replace -ggdb ""
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp tpm_server $out/bin
+ '';
+
+ meta = with lib; {
+ description = "IBM's Software TPM 2.0, an implementation of the TCG TPM 2.0 specification";
+ homepage = https://sourceforge.net/projects/ibmswtpm2/;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ delroth ];
+ license = licenses.bsd3;
+ };
+}
diff --git a/pkgs/tools/security/tpm2-tools/default.nix b/pkgs/tools/security/tpm2-tools/default.nix
new file mode 100644
index 00000000000..84369e6ea54
--- /dev/null
+++ b/pkgs/tools/security/tpm2-tools/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, fetchpatch, lib
+, cmocka, curl, pandoc, pkgconfig, openssl, tpm2-tss }:
+
+stdenv.mkDerivation rec {
+ pname = "tpm2-tools";
+ version = "3.1.3";
+
+ src = fetchurl {
+ url = "https://github.com/tpm2-software/${pname}/releases/download/${version}/${pname}-${version}.tar.gz";
+ sha256 = "05is1adwcg7y2p121yldd8m1gigdnzf9izbjazvsr6yg95pmg5fc";
+ };
+
+ patches = [
+ (fetchpatch {
+ name = "tests-tss-2.2.0-compat.patch";
+ url = "https://patch-diff.githubusercontent.com/raw/tpm2-software/tpm2-tools/pull/1322.patch";
+ sha256 = "0yy5qbgbd13d7cl8pzsji95a6qnwiik5s2cyqj35jd8blymikqxh";
+ })
+ ];
+
+ nativeBuildInputs = [ pandoc pkgconfig ];
+ buildInputs = [
+ curl openssl tpm2-tss
+ # For unit tests.
+ cmocka
+ ];
+
+ configureFlags = [ "--enable-unit" ];
+ doCheck = true;
+
+ meta = with lib; {
+ description = "Command line tools that provide access to a TPM 2.0 compatible device";
+ homepage = https://github.com/tpm2-software/tpm2-tools;
+ license = licenses.bsd3;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ delroth ];
+ };
+}
diff --git a/pkgs/tools/system/gotop/default.nix b/pkgs/tools/system/gotop/default.nix
index 2b918d15581..745139f9e50 100644
--- a/pkgs/tools/system/gotop/default.nix
+++ b/pkgs/tools/system/gotop/default.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
name = "gotop-${version}";
- version = "1.7.1";
+ version = "2.0.1";
goPackagePath = "github.com/cjbassi/gotop";
@@ -10,11 +10,9 @@ buildGoPackage rec {
repo = "gotop";
owner = "cjbassi";
rev = version;
- sha256 = "0dxnhal10kv6ypsg6mildzpz6vi1iw996q47f4rv8hvfyrffhzc9";
+ sha256 = "0xpm8nrn53kz65f93czflgdgr2a33qfi1w0gsgngrmaliq1vlpji";
};
- goDeps = ./deps.nix;
-
meta = with stdenv.lib; {
description = "A terminal based graphical activity monitor inspired by gtop and vtop";
homepage = https://github.com/cjbassi/gotop;
diff --git a/pkgs/tools/system/gotop/deps.nix b/pkgs/tools/system/gotop/deps.nix
deleted file mode 100644
index ceae7857551..00000000000
--- a/pkgs/tools/system/gotop/deps.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
-[
- {
- goPackagePath = "github.com/cjbassi/termui";
- fetch = {
- type = "git";
- url = "https://github.com/cjbassi/termui";
- rev = "e8dd23f6146c0e0d80f1be0163b8069abfbb921b";
- sha256 = "0jds2mpa7whrwaznlkcn2y92q41zbf2rjj5267kl8zqllbia8cbx";
- };
- }
- {
- goPackagePath = "github.com/docopt/docopt-go";
- fetch = {
- type = "git";
- url = "https://github.com/docopt/docopt-go";
- rev = "ee0de3bc6815ee19d4a46c7eb90f829db0e014b1";
- sha256 = "0hlra7rmi5pmd7d93rv56ahiy4qkgmq8a6mz0jpadvbi5qh8lq6j";
- };
- }
- {
- goPackagePath = "github.com/shirou/gopsutil";
- fetch = {
- type = "git";
- url = "https://github.com/shirou/gopsutil";
- rev = "51e6519305e4871657c291a6281fcddc6364bbef";
- sha256 = "1pvvaj51m0w2v6bp5hhhzfy27hbicf4ga7r9m073vqcwjnfyz431";
- };
- }
- {
- goPackagePath = "golang.org/x/sys";
- fetch = {
- type = "git";
- url = "https://go.googlesource.com/sys";
- rev = "9b800f95dbbc54abff0acf7ee32d88ba4e328c89";
- sha256 = "07v3l7q7y59cwvw0mc85i39v7qjcc1jh4svwi789rmrqqm5nq7q6";
- };
- }
-]
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7487ff65d69..d3468d31f07 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -226,9 +226,7 @@ in
fetchs3 = callPackage ../build-support/fetchs3 { };
- fetchsvn = callPackage ../build-support/fetchsvn {
- sshSupport = true;
- };
+ fetchsvn = callPackage ../build-support/fetchsvn { };
fetchsvnrevision = import ../build-support/fetchsvnrevision runCommand subversion;
@@ -785,7 +783,6 @@ in
androidenv = callPackage ../development/mobile/androidenv {
pkgs_i686 = pkgsi686Linux;
- licenseAccepted = config.android_sdk.accept_license or false;
};
androidndkPkgs = androidndkPkgs_18b;
@@ -936,7 +933,6 @@ in
tensor = libsForQt5.callPackage ../applications/networking/instant-messengers/tensor { };
libtensorflow = callPackage ../development/libraries/libtensorflow {
- cudaSupport = config.cudaSupport or false;
inherit (linuxPackages) nvidia_x11;
cudatoolkit = cudatoolkit_9_0;
cudnn = cudnn_cudatoolkit_9_0;
@@ -1491,6 +1487,8 @@ in
languagetool = callPackage ../tools/text/languagetool { };
+ lepton = callPackage ../tools/graphics/lepton { };
+
lief = callPackage ../development/libraries/lief {};
libndtypes = callPackage ../development/libraries/libndtypes { };
@@ -1765,9 +1763,7 @@ in
inherit (python27Packages) pillow;
};
- blueman = callPackage ../tools/bluetooth/blueman {
- withPulseAudio = config.pulseaudio or true;
- };
+ blueman = callPackage ../tools/bluetooth/blueman { };
bmrsa = callPackage ../tools/security/bmrsa/11.nix { };
@@ -3363,6 +3359,8 @@ in
iannix = libsForQt5.callPackage ../applications/audio/iannix { };
+ ibm-sw-tpm2 = callPackage ../tools/security/ibm-sw-tpm2 { };
+
ibniz = callPackage ../tools/graphics/ibniz { };
icecast = callPackage ../servers/icecast { };
@@ -3749,6 +3747,8 @@ in
mautrix-telegram = callPackage ../servers/mautrix-telegram { };
+ mautrix-whatsapp = callPackage ../servers/mautrix-whatsapp { };
+
mdbook = callPackage ../tools/text/mdbook {
inherit (darwin.apple_sdk.frameworks) CoreServices;
};
@@ -4038,9 +4038,7 @@ in
ltris = callPackage ../games/ltris { };
lxc = callPackage ../os-specific/linux/lxc { };
- lxcfs = callPackage ../os-specific/linux/lxcfs {
- enableDebugBuild = config.lxcfs.enableDebugBuild or false;
- };
+ lxcfs = callPackage ../os-specific/linux/lxcfs { };
lxd = callPackage ../tools/admin/lxd { };
lzfse = callPackage ../tools/compression/lzfse { };
@@ -4879,7 +4877,7 @@ in
playbar2 = libsForQt5.callPackage ../applications/audio/playbar2 { };
- plex = callPackage ../servers/plex { enablePlexPass = config.plex.enablePlexPass or false; };
+ plex = callPackage ../servers/plex { };
plexpy = callPackage ../servers/plexpy { python = python2; };
@@ -5827,6 +5825,8 @@ in
tpm-luks = callPackage ../tools/security/tpm-luks { };
+ tpm2-tools = callPackage ../tools/security/tpm2-tools { };
+
trezord = callPackage ../servers/trezord { };
tthsum = callPackage ../applications/misc/tthsum { };
@@ -6958,9 +6958,7 @@ in
inherit (gnome2) libart_lgpl;
});
- gnu-smalltalk = callPackage ../development/compilers/gnu-smalltalk {
- emacsSupport = config.emacsSupport or false;
- };
+ gnu-smalltalk = callPackage ../development/compilers/gnu-smalltalk { };
gccgo = gccgo6;
gccgo6 = wrapCC (gcc6.cc.override {
@@ -7201,14 +7199,12 @@ in
(if pluginSupport then appendToName "with-plugin" else x: x)
(callPackage ../development/compilers/oraclejdk/jdk8cpu-linux.nix {
inherit installjdk pluginSupport;
- licenseAccepted = config.oraclejdk.accept_license or false;
});
oraclejdk8psu_distro = installjdk: pluginSupport:
(if pluginSupport then appendToName "with-plugin" else x: x)
(callPackage ../development/compilers/oraclejdk/jdk8psu-linux.nix {
inherit installjdk pluginSupport;
- licenseAccepted = config.oraclejdk.accept_license or false;
});
javacard-devkit = pkgsi686Linux.callPackage ../development/compilers/javacard-devkit { };
@@ -9013,14 +9009,10 @@ in
r10k = callPackage ../tools/system/r10k { };
- inherit (callPackages ../development/tools/analysis/radare2 {
+ inherit (callPackages ../development/tools/analysis/radare2 ({
inherit (gnome2) vte;
lua = lua5;
- useX11 = config.radare.useX11 or false;
- pythonBindings = config.radare.pythonBindings or false;
- rubyBindings = config.radare.rubyBindings or false;
- luaBindings = config.radare.luaBindings or false;
- }) radare2 r2-for-cutter;
+ } // (config.radare or {}))) radare2 r2-for-cutter;
radare2-cutter = libsForQt5.callPackage ../development/tools/analysis/radare2/cutter.nix { };
@@ -9361,6 +9353,12 @@ in
inherit (darwin.apple_sdk.frameworks) AudioUnit CoreServices;
};
+ aws-c-common = callPackage ../development/libraries/aws-c-common { };
+
+ aws-c-event-stream = callPackage ../development/libraries/aws-c-event-stream { };
+
+ aws-checksums = callPackage ../development/libraries/aws-checksums { };
+
aws-sdk-cpp = callPackage ../development/libraries/aws-sdk-cpp {
inherit (darwin.apple_sdk.frameworks) CoreAudio AudioToolbox;
};
@@ -10117,12 +10115,9 @@ in
# https://github.com/NixOS/nixpkgs/commit/d6454e6a1
then ../development/libraries/gnutls/3.5.10.nix
else ../development/libraries/gnutls/3.6.nix)
- {
- guileBindings = config.gnutls.guile or false;
- };
+ { };
gnutls-kdh = callPackage ../development/libraries/gnutls-kdh/3.5.nix {
- guileBindings = config.gnutls.guile or false;
gperf = gperf_3_0;
};
@@ -10180,11 +10175,7 @@ in
pixman = callPackage ../development/libraries/pixman { };
- cairo = callPackage ../development/libraries/cairo {
- glSupport = config.cairo.gl or (stdenv.isLinux &&
- !stdenv.isAarch32 && !stdenv.isMips);
- };
-
+ cairo = callPackage ../development/libraries/cairo { };
cairomm = callPackage ../development/libraries/cairomm { };
@@ -10211,7 +10202,6 @@ in
elementary-cmake-modules = callPackage ../development/libraries/elementary-cmake-modules { };
gtk2 = callPackage ../development/libraries/gtk+/2.x.nix {
- cupsSupport = config.gtk2.cups or stdenv.isLinux;
inherit (darwin.apple_sdk.frameworks) AppKit Cocoa;
};
@@ -10976,7 +10966,6 @@ in
libinotify-kqueue = callPackage ../development/libraries/libinotify-kqueue { };
libiodbc = callPackage ../development/libraries/libiodbc {
- useGTK = config.libiodbc.gtk or false;
inherit (darwin.apple_sdk.frameworks) Carbon;
};
@@ -11866,7 +11855,6 @@ in
};
opencv3 = callPackage ../development/libraries/opencv/3.x.nix {
- enableCuda = config.cudaSupport or false;
inherit (darwin) cf-private;
inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa QTKit VideoDecodeAcceleration;
};
@@ -11876,7 +11864,6 @@ in
};
opencv4 = callPackage ../development/libraries/opencv/4.x.nix {
- enableCuda = config.cudaSupport or false;
inherit (darwin) cf-private;
inherit (darwin.apple_sdk.frameworks) AVFoundation Cocoa QTKit VideoDecodeAcceleration;
};
@@ -11935,7 +11922,6 @@ in
openssl-chacha = callPackage ../development/libraries/openssl/chacha.nix { };
opensubdiv = callPackage ../development/libraries/opensubdiv {
- cudaSupport = config.cudaSupport or false;
cmake = cmake_2_8;
};
@@ -12100,7 +12086,6 @@ in
qolibri = libsForQt5.callPackage ../applications/misc/qolibri { };
qt3 = callPackage ../development/libraries/qt-3 {
- openglSupport = libGLSupported;
libpng = libpng12;
};
@@ -12140,6 +12125,7 @@ in
harfbuzz = harfbuzzFull;
inherit libGL;
inherit perl;
+ inherit (darwin) cf-private;
inherit (gst_all_1) gstreamer gst-plugins-base;
});
@@ -12830,6 +12816,8 @@ in
totem-pl-parser = callPackage ../development/libraries/totem-pl-parser { };
+ tpm2-tss = callPackage ../development/libraries/tpm2-tss { };
+
tremor = callPackage ../development/libraries/tremor { };
twolame = callPackage ../development/libraries/twolame { };
@@ -13009,21 +12997,18 @@ in
wxGTK28 = callPackage ../development/libraries/wxwidgets/2.8 {
inherit (gnome2) GConf;
- withMesa = lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms;
};
wxGTK29 = callPackage ../development/libraries/wxwidgets/2.9 {
inherit (gnome2) GConf;
inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QuickTime;
- withMesa = lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms;
};
wxGTK30 = callPackage ../development/libraries/wxwidgets/3.0 {
inherit (gnome2) GConf;
inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit;
- withMesa = lib.elem stdenv.hostPlatform.system lib.platforms.mesaPlatforms;
};
wxGTK31 = callPackage ../development/libraries/wxwidgets/3.1 {};
@@ -13073,9 +13058,7 @@ in
xalanc = callPackage ../development/libraries/xalanc {};
- xgboost = callPackage ../development/libraries/xgboost {
- cudaSupport = config.cudaSupport or false;
- };
+ xgboost = callPackage ../development/libraries/xgboost { };
xgeometry-select = callPackage ../tools/X11/xgeometry-select { };
@@ -13465,10 +13448,7 @@ in
bftpd = callPackage ../servers/ftp/bftpd {};
- bind = callPackage ../servers/dns/bind {
- enablePython = config.bind.enablePython or false;
- python3 = python3.withPackages (ps: with ps; [ ply ]);
- };
+ bind = callPackage ../servers/dns/bind { };
dnsutils = bind.dnsutils;
inherit (callPackages ../servers/bird { })
@@ -14303,6 +14283,8 @@ in
inherit (python3Packages) bedup;
+ bolt = callPackage ../os-specific/linux/bolt { };
+
bridge-utils = callPackage ../os-specific/linux/bridge-utils { };
busybox = callPackage ../os-specific/linux/busybox { };
@@ -14322,8 +14304,7 @@ in
conky = callPackage ../os-specific/linux/conky ({
lua = lua5_3_compat;
- libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
- pulseSupport = config.pulseaudio or false;
+ inherit (linuxPackages.nvidia_x11.settings) libXNVCtrl;
} // config.conky or {});
conntrack-tools = callPackage ../os-specific/linux/conntrack-tools { };
@@ -15102,10 +15083,7 @@ in
pax-utils = callPackage ../os-specific/linux/pax-utils { };
- pcmciaUtils = callPackage ../os-specific/linux/pcmciautils {
- firmware = config.pcmciaUtils.firmware or [];
- config = config.pcmciaUtils.config or null;
- };
+ pcmciaUtils = callPackage ../os-specific/linux/pcmciautils { };
pcstat = callPackage ../tools/system/pcstat { };
@@ -15471,9 +15449,7 @@ in
comic-relief = callPackage ../data/fonts/comic-relief {};
- coreclr = callPackage ../development/compilers/coreclr {
- debug = config.coreclr.debug or false;
- };
+ coreclr = callPackage ../development/compilers/coreclr { };
corefonts = callPackage ../data/fonts/corefonts { };
@@ -16056,9 +16032,7 @@ in
agedu = callPackage ../tools/misc/agedu { };
- ahoviewer = callPackage ../applications/graphics/ahoviewer {
- useUnrar = config.ahoviewer.useUnrar or false;
- };
+ ahoviewer = callPackage ../applications/graphics/ahoviewer { };
airwave = callPackage ../applications/audio/airwave { };
@@ -16292,7 +16266,6 @@ in
bleachbit = callPackage ../applications/misc/bleachbit { };
blender = callPackage ../applications/misc/blender {
- cudaSupport = config.cudaSupport or false;
pythonPackages = python35Packages;
stdenv = overrideCC stdenv gcc6;
};
@@ -16417,7 +16390,6 @@ in
claws-mail = callPackage ../applications/networking/mailreaders/claws-mail {
inherit (gnome3) gsettings-desktop-schemas;
inherit (xorg) libSM;
- enableNetworkManager = config.networking.networkmanager.enable or false;
};
clfswm = callPackage ../applications/window-managers/clfswm { };
@@ -17540,9 +17512,7 @@ in
gv = callPackage ../applications/misc/gv { };
- guvcview = callPackage ../os-specific/linux/guvcview {
- pulseaudioSupport = config.pulseaudio or true;
- };
+ guvcview = callPackage ../os-specific/linux/guvcview { };
gxmessage = callPackage ../applications/misc/gxmessage { };
@@ -17895,12 +17865,19 @@ in
inherit (kdeFrameworks) kdesu;
- kdevelop-pg-qt = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop-pg-qt.nix {};
+ kdevelop-pg-qt = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop-pg-qt.nix { };
- kdevelop = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop.nix {
+ kdevelop-unwrapped = libsForQt5.callPackage ../applications/editors/kdevelop5/kdevelop.nix {
llvmPackages = llvmPackages_7;
};
+ kdev-php = libsForQt5.callPackage ../applications/editors/kdevelop5/kdev-php.nix { };
+ kdev-python = libsForQt5.callPackage ../applications/editors/kdevelop5/kdev-python.nix {
+ python = python3;
+ };
+
+ kdevelop = libsForQt5.callPackage ../applications/editors/kdevelop5/wrapper.nix { };
+
keepnote = callPackage ../applications/office/keepnote { };
kega-fusion = pkgsi686Linux.callPackage ../misc/emulators/kega-fusion { };
@@ -18376,19 +18353,8 @@ in
# !!! should depend on MPlayer
};
- mpv = callPackage ../applications/video/mpv rec {
+ mpv = callPackage ../applications/video/mpv {
inherit lua;
- waylandSupport = stdenv.isLinux;
- alsaSupport = !stdenv.isDarwin;
- pulseSupport = !stdenv.isDarwin;
- rubberbandSupport = !stdenv.isDarwin;
- dvdreadSupport = !stdenv.isDarwin;
- dvdnavSupport = !stdenv.isDarwin;
- drmSupport = !stdenv.isDarwin;
- vaapiSupport = !stdenv.isDarwin;
- x11Support = !stdenv.isDarwin;
- xineramaSupport = !stdenv.isDarwin;
- xvSupport = !stdenv.isDarwin;
};
mpv-with-scripts = callPackage ../applications/video/mpv/wrapper.nix { };
@@ -18646,10 +18612,7 @@ in
obs-linuxbrowser = callPackage ../applications/video/obs-studio/linuxbrowser.nix { };
- obs-studio = libsForQt5.callPackage ../applications/video/obs-studio {
- alsaSupport = stdenv.isLinux;
- pulseaudioSupport = config.pulseaudio or true;
- };
+ obs-studio = libsForQt5.callPackage ../applications/video/obs-studio { };
octoprint = callPackage ../applications/misc/octoprint { };
@@ -18713,9 +18676,7 @@ in
vivaldi-ffmpeg-codecs = callPackage ../applications/networking/browsers/vivaldi/ffmpeg-codecs.nix {};
- openmpt123 = callPackage ../applications/audio/openmpt123 {
- usePulseAudio = config.pulseaudio or false;
- };
+ openmpt123 = callPackage ../applications/audio/openmpt123 { };
opusfile = callPackage ../applications/audio/opusfile { };
@@ -18749,7 +18710,7 @@ in
pavucontrol = callPackage ../applications/audio/pavucontrol { };
- paraview = libsForQt59.callPackage ../applications/graphics/paraview { };
+ paraview = libsForQt5.callPackage ../applications/graphics/paraview { };
packet = callPackage ../development/tools/packet { };
@@ -19422,9 +19383,7 @@ in
soulseekqt = libsForQt5.callPackage ../applications/networking/p2p/soulseekqt { };
- sox = callPackage ../applications/misc/audio/sox {
- enableLame = config.sox.enableLame or false;
- };
+ sox = callPackage ../applications/misc/audio/sox { };
soxr = callPackage ../applications/misc/audio/soxr { };
@@ -20295,18 +20254,15 @@ in
};
xmonad_log_applet = callPackage ../applications/window-managers/xmonad/log-applet {
- desktopSupport = "gnomeflashback";
inherit (xfce) libxfce4util xfce4-panel;
};
xmonad_log_applet_mate = xmonad_log_applet.override {
desktopSupport = "mate";
- inherit (xfce) libxfce4util xfce4-panel;
};
xmonad_log_applet_xfce = xmonad_log_applet.override {
desktopSupport = "xfce4";
- inherit (xfce) libxfce4util xfce4-panel;
};
xmpp-client = callPackage ../applications/networking/instant-messengers/xmpp-client { };
@@ -20407,9 +20363,7 @@ in
boost = boost160;
};
- zathura = callPackage ../applications/misc/zathura {
- useMupdf = config.zathura.useMupdf or true;
- };
+ zathura = callPackage ../applications/misc/zathura { };
zeroc_ice = callPackage ../development/libraries/zeroc-ice {
inherit (darwin.apple_sdk.frameworks) Security;
@@ -21043,11 +20997,7 @@ in
steamPackages = callPackage ../games/steam { };
- steam = steamPackages.steam-chrootenv.override {
- # DEPRECATED
- withJava = config.steam.java or false;
- withPrimus = config.steam.primus or false;
- };
+ steam = steamPackages.steam-chrootenv;
steam-run = steam.run;
steam-run-native = (steam.override {
@@ -21575,9 +21525,7 @@ in
### SCIENCE/MACHINE LEARNING
- sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless {
- licenseAccepted = (config.sc2-headless.accept_license or false);
- };
+ sc2-headless = callPackage ../applications/science/machine-learning/sc2-headless { };
### SCIENCE/MATH
@@ -21993,28 +21941,21 @@ in
### SCIENCE / MATH
- caffe = callPackage ../applications/science/math/caffe rec {
- cudaSupport = config.caffe.cudaSupport or config.cudaSupport or false;
- cudnnSupport = cudaSupport;
- # Used only for image loading.
- opencv3 = opencv3WithoutCuda;
+ caffe = callPackage ../applications/science/math/caffe ({
+ opencv3 = opencv3WithoutCuda; # Used only for image loading.
inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo;
- };
+ } // (config.caffe or {}));
caffe2 = callPackage ../development/libraries/science/math/caffe2 (rec {
inherit (python36Packages) python future six numpy pydot;
protobuf = protobuf3_1;
python-protobuf = python36Packages.protobuf.override { inherit protobuf; };
- # Used only for image loading.
- opencv3 = opencv3WithoutCuda;
+ opencv3 = opencv3WithoutCuda; # Used only for image loading.
});
- cntk = callPackage ../applications/science/math/cntk rec {
- cudaSupport = pkgs.config.cudaSupport or false;
- cudnnSupport = cudaSupport;
+ cntk = callPackage ../applications/science/math/cntk {
inherit (linuxPackages) nvidia_x11;
- # Used only for image loading.
- opencv3 = opencv3WithoutCuda;
+ opencv3 = opencv3WithoutCuda; # Used only for image loading.
};
ecm = callPackage ../applications/science/math/ecm { };
@@ -22045,9 +21986,7 @@ in
sbcl = null;
};
- mxnet = callPackage ../applications/science/math/mxnet rec {
- cudaSupport = config.cudaSupport or false;
- cudnnSupport = cudaSupport;
+ mxnet = callPackage ../applications/science/math/mxnet {
inherit (linuxPackages) nvidia_x11;
};
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 15d4cf3f213..3e59bf872d5 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -55,7 +55,7 @@ in {
};
ghc844 = callPackage ../development/compilers/ghc/8.4.4.nix {
bootPkgs = packages.ghc822Binary;
- inherit (buildPackages.python3Packages) sphinx;
+ sphinx = null; # broken with sphinx 1.8.x
buildLlvmPackages = buildPackages.llvmPackages_5;
llvmPackages = pkgs.llvmPackages_5;
};
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 07715ce856a..0077482ab17 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -305,7 +305,7 @@ in {
cdecimal = callPackage ../development/python-modules/cdecimal { };
cfn-flip = callPackage ../development/python-modules/cfn-flip { };
-
+
chalice = callPackage ../development/python-modules/chalice { };
cleo = callPackage ../development/python-modules/cleo { };
@@ -492,6 +492,8 @@ in {
nanomsg-python = callPackage ../development/python-modules/nanomsg-python { inherit (pkgs) nanomsg; };
+ nbsphinx = callPackage ../development/python-modules/nbsphinx { };
+
nbval = callPackage ../development/python-modules/nbval { };
nest-asyncio = callPackage ../development/python-modules/nest-asyncio { };
@@ -718,6 +720,8 @@ in {
python-binance = callPackage ../development/python-modules/python-binance { };
+ python-dbusmock = callPackage ../development/python-modules/python-dbusmock { };
+
python-engineio = callPackage ../development/python-modules/python-engineio { };
python-hosts = callPackage ../development/python-modules/python-hosts { };