From 7dc84e18247e8ad28505fb7ac708dcf55fda21ef Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Tue, 22 Oct 2019 00:28:47 -0400 Subject: installer: use sddm in plasma5 Slim is abandoned and won't work with wayland. It's in our best interest to use the display-manager that makes most sense for Plasma5, sddm. We've already moved on from it being default in #30890 and the graphical.nix profile, which the virtualbox profile uses, has sddm anyway. --- .../installer/cd-dvd/installation-cd-graphical-base.nix | 12 +----------- .../installer/cd-dvd/installation-cd-graphical-gnome.nix | 2 -- .../installer/cd-dvd/installation-cd-graphical-kde.nix | 9 +++++++++ 3 files changed, 10 insertions(+), 13 deletions(-) diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix index 719ba5ffb127..e0b558dcb0d8 100644 --- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix +++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix @@ -22,17 +22,7 @@ with lib; }); ''; - services.xserver = { - enable = true; - - # Automatically login as nixos. - displayManager.slim = { - enable = true; - defaultUser = "nixos"; - autoLogin = true; - }; - - }; + services.xserver.enable = true; # Provide networkmanager for easy wireless configuration. networking.networkmanager.enable = true; diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix index 0b813bbf37b4..23c3426bff08 100644 --- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix +++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix @@ -10,8 +10,6 @@ with lib; services.xserver.desktopManager.gnome3.enable = true; - services.xserver.displayManager.slim.enable = mkForce false; - # Auto-login as root. services.xserver.displayManager.gdm.autoLogin = { enable = true; diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix index 1dc7920ff640..6a10a6404e67 100644 --- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix +++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix @@ -13,6 +13,15 @@ with lib; enable = true; enableQt4Support = false; }; + + # Automatically login as nixos. + displayManager.sddm = { + enable = true; + autoLogin = { + enable = true; + user = "nixos"; + }; + }; }; environment.systemPackages = with pkgs; [ -- cgit 1.4.1 From 9a27aceddafe10d82d6fd4ddf58c2d477a6fbbfb Mon Sep 17 00:00:00 2001 From: Izorkin Date: Mon, 4 Nov 2019 10:26:41 +0300 Subject: nixos/phpfpm: fix apply global phpOptions --- nixos/modules/services/web-servers/phpfpm/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/web-servers/phpfpm/default.nix b/nixos/modules/services/web-servers/phpfpm/default.nix index 4ab7e3f0c0a9..095de64dfb14 100644 --- a/nixos/modules/services/web-servers/phpfpm/default.nix +++ b/nixos/modules/services/web-servers/phpfpm/default.nix @@ -31,7 +31,7 @@ let ''; passAsFile = [ "nixDefaults" "phpOptions" ]; } '' - cat $phpPackage/etc/php.ini $nixDefaultsPath $phpOptionsPath > $out + cat ${poolOpts.phpPackage}/etc/php.ini $nixDefaultsPath $phpOptionsPath > $out ''; poolOpts = { name, ... }: @@ -69,8 +69,6 @@ let phpOptions = mkOption { type = types.lines; - default = cfg.phpOptions; - defaultText = "config.services.phpfpm.phpOptions"; description = '' "Options appended to the PHP configuration file php.ini used for this PHP-FPM pool." ''; @@ -137,6 +135,7 @@ let config = { socket = if poolOpts.listen == "" then "${runtimeDir}/${name}.sock" else poolOpts.listen; group = mkDefault poolOpts.user; + phpOptions = mkBefore cfg.phpOptions; settings = mapAttrs (name: mkDefault){ listen = poolOpts.socket; -- cgit 1.4.1 From 96e1473966f5d70dda74fc380150a3c71a0e301c Mon Sep 17 00:00:00 2001 From: Pasquale Date: Tue, 29 Oct 2019 12:33:32 +0100 Subject: home-manager:2019-10-23 -> 2019-10-29 --- pkgs/tools/package-management/home-manager/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/package-management/home-manager/default.nix b/pkgs/tools/package-management/home-manager/default.nix index 5f4cc58c6a22..560698db18cf 100644 --- a/pkgs/tools/package-management/home-manager/default.nix +++ b/pkgs/tools/package-management/home-manager/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "home-manager"; - version = "2019-10-23"; + version = "2019-10-29"; src = fetchFromGitHub { owner = "rycee"; repo = "home-manager"; - rev = "1b987952b5f7d18f0bb66317cf18ffda43ad45aa"; - sha256 = "1jdmxdnyd6jaiqjjkzw3qr0ia4qvmwmgfn05hbph37v03p55ah5q"; + rev = "149c0593abac5879631f63e55ef5b68277020b66"; + sha256 = "1a39mj238mxd5b6zglmsb1iclqpzs7av38g6gc1dfjxhnb731rvc"; }; nativeBuildInputs = [ makeWrapper ]; -- cgit 1.4.1 From abe1248b7881de2dee180e3fdcbfce8d5960628d Mon Sep 17 00:00:00 2001 From: Pasquale Date: Thu, 7 Nov 2019 12:05:45 +0100 Subject: home-manager:2019-10-23 -> 2019-10-29 --- pkgs/tools/package-management/home-manager/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/package-management/home-manager/default.nix b/pkgs/tools/package-management/home-manager/default.nix index 560698db18cf..da4bb43066cc 100644 --- a/pkgs/tools/package-management/home-manager/default.nix +++ b/pkgs/tools/package-management/home-manager/default.nix @@ -11,8 +11,8 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "rycee"; repo = "home-manager"; - rev = "149c0593abac5879631f63e55ef5b68277020b66"; - sha256 = "1a39mj238mxd5b6zglmsb1iclqpzs7av38g6gc1dfjxhnb731rvc"; + rev = "450571056552c9311fcb2894328696b535265593"; + sha256 = "1rlv234m0bqj9x2y9wnl8z3yq8mixzq8332nqlb8fw9k8mazis6s"; }; nativeBuildInputs = [ makeWrapper ]; -- cgit 1.4.1 From 9ced8a5c46639a77c2cf34066e3336088cdd5988 Mon Sep 17 00:00:00 2001 From: Daniël de Kok Date: Sat, 9 Nov 2019 08:34:37 +0100 Subject: drawio: 12.1.7 -> 12.2.2 Changelog: https://github.com/jgraph/drawio-desktop/releases/tag/v12.2.2 --- pkgs/applications/graphics/drawio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix index 4142310b705a..25cefabbd634 100644 --- a/pkgs/applications/graphics/drawio/default.nix +++ b/pkgs/applications/graphics/drawio/default.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "drawio"; - version = "12.1.7"; + version = "12.2.2"; src = fetchurl { url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm"; - sha256 = "1vac0cz99yjlz7b186wyy4wk4sxkvlirpjmh3vw65xaxamn8spn3"; + sha256 = "04h11gdy78py9zrs3v6y0hhhc2n1h4s0ymbvf6qn4vv4r3r9vbaw"; }; nativeBuildInputs = [ -- cgit 1.4.1 From 5a13b856c49ca5fd9b4efc112d772fd657e7e198 Mon Sep 17 00:00:00 2001 From: Andreas Baldeau Date: Sat, 9 Nov 2019 11:53:07 +0100 Subject: steam: Add libva to chrootenv After the newest update Steam itself complained about missing files and would not start: * libva.so.2 * libva-x11.so.2 --- pkgs/games/steam/chrootenv.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix index b2bca7ca7b97..0de961e6d49f 100644 --- a/pkgs/games/steam/chrootenv.nix +++ b/pkgs/games/steam/chrootenv.nix @@ -75,6 +75,7 @@ in buildFHSUserEnv rec { xorg.libX11 xorg.libXfixes libGL + libva # Not formally in runtime but needed by some games at-spi2-atk -- cgit 1.4.1 From 64c9c083028671f6c0f3a67446932e45984e2d87 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sat, 2 Nov 2019 15:15:33 +0100 Subject: nixos/ceph: create /etc/ceph and /var/lib/ceph via tmpfiles We seem to be relying on those being present during runtime anyways. --- nixos/modules/services/network-filesystems/ceph.nix | 2 ++ nixos/tests/ceph-multi-node.nix | 13 ++----------- nixos/tests/ceph-single-node.nix | 7 ++----- 3 files changed, 6 insertions(+), 16 deletions(-) diff --git a/nixos/modules/services/network-filesystems/ceph.nix b/nixos/modules/services/network-filesystems/ceph.nix index 656a2d21b868..887a6ff925d2 100644 --- a/nixos/modules/services/network-filesystems/ceph.nix +++ b/nixos/modules/services/network-filesystems/ceph.nix @@ -401,7 +401,9 @@ in mkMerge targets; systemd.tmpfiles.rules = [ + "d /etc/ceph - ceph ceph - -" "d /run/ceph 0770 ceph ceph -" + "d /var/lib/ceph - ceph ceph - -" ]; }; } diff --git a/nixos/tests/ceph-multi-node.nix b/nixos/tests/ceph-multi-node.nix index 6698aac3f271..13d0851366eb 100644 --- a/nixos/tests/ceph-multi-node.nix +++ b/nixos/tests/ceph-multi-node.nix @@ -118,21 +118,12 @@ let $monA->mustSucceed( "mkdir -p /var/lib/ceph/mgr/ceph-${cfg.monA.name}", "mkdir -p /var/lib/ceph/mon/ceph-${cfg.monA.name}", - "chown ceph:ceph -R /var/lib/ceph/", - "mkdir -p /etc/ceph", - "chown ceph:ceph -R /etc/ceph" ); $osd0->mustSucceed( "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd0.name}", - "chown ceph:ceph -R /var/lib/ceph/", - "mkdir -p /etc/ceph", - "chown ceph:ceph -R /etc/ceph" ); $osd1->mustSucceed( "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd1.name}", - "chown ceph:ceph -R /var/lib/ceph/", - "mkdir -p /etc/ceph", - "chown ceph:ceph -R /etc/ceph" ); # Bootstrap ceph-mon daemon @@ -216,7 +207,7 @@ let "systemctl stop ceph-mgr-${cfg.monA.name}", "systemctl stop ceph-mon-${cfg.monA.name}" ); - + $monA->succeed("systemctl start ceph.target"); $monA->waitForUnit("ceph-mon-${cfg.monA.name}"); $monA->waitForUnit("ceph-mgr-${cfg.monA.name}"); @@ -224,7 +215,7 @@ let $osd0->waitForUnit("ceph-osd-${cfg.osd0.name}"); $osd1->succeed("systemctl start ceph.target"); $osd1->waitForUnit("ceph-osd-${cfg.osd1.name}"); - + $monA->succeed("ceph -s | grep 'mon: 1 daemons'"); $monA->waitUntilSucceeds("ceph -s | grep 'quorum ${cfg.monA.name}'"); $monA->waitUntilSucceeds("ceph osd stat | grep -e '2 osds: 2 up[^,]*, 2 in'"); diff --git a/nixos/tests/ceph-single-node.nix b/nixos/tests/ceph-single-node.nix index 10b77cff5a31..cb37b4b43bcd 100644 --- a/nixos/tests/ceph-single-node.nix +++ b/nixos/tests/ceph-single-node.nix @@ -83,9 +83,6 @@ let "mkdir -p /var/lib/ceph/mon/ceph-${cfg.monA.name}", "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd0.name}", "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd1.name}", - "mkdir -p /etc/ceph", - "chown ceph:ceph -R /etc/ceph", - "chown ceph:ceph -R /var/lib/ceph/", ); # Bootstrap ceph-mon daemon @@ -166,13 +163,13 @@ let "systemctl stop ceph-mgr-${cfg.monA.name}", "systemctl stop ceph-mon-${cfg.monA.name}" ); - + $monA->succeed("systemctl start ceph.target"); $monA->waitForUnit("ceph-mon-${cfg.monA.name}"); $monA->waitForUnit("ceph-mgr-${cfg.monA.name}"); $monA->waitForUnit("ceph-osd-${cfg.osd0.name}"); $monA->waitForUnit("ceph-osd-${cfg.osd1.name}"); - + $monA->succeed("ceph -s | grep 'mon: 1 daemons'"); $monA->waitUntilSucceeds("ceph -s | grep 'quorum ${cfg.monA.name}'"); $monA->waitUntilSucceeds("ceph osd stat | grep -e '2 osds: 2 up[^,]*, 2 in'"); -- cgit 1.4.1 From 67e0777f6258ded0029bbfeec65fbedf36d6d4c8 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sat, 2 Nov 2019 15:01:39 +0100 Subject: nixos/ceph: run unprivileged, use StateDirectory and tmpfiles, don't pass extraServiceConfig Don't pass user and group to ceph, and rely on it to drop ceps, but let systemd handle running it as the appropriate user. This also inlines the extraServiceConfig into the makeService function, as we have conditionals depending on daemonType there anyways. Use StateDirectory to create directories in /var/lib/ceph/${daemonType}/${clusterName}-${daemonId}. There previously was a condition on daemonType being one of mds,mon,rgw or mgr. We only instantiate makeServices with these types, and "osd" was special. In the osd case, test examples suggest it'd be in something like /var/lib/ceph/osd/ceph-${cfg.osd0.name} - so it's not special at all, but exactly like the pattern for the others. During initialization, we also need these folders, before the unit is started up. Move the mkdir -p commands in the vm tests to the line immediately before they're required. --- .../modules/services/network-filesystems/ceph.nix | 57 +++++++++++----------- nixos/tests/ceph-multi-node.nix | 15 ++---- nixos/tests/ceph-single-node.nix | 13 ++--- 3 files changed, 36 insertions(+), 49 deletions(-) diff --git a/nixos/modules/services/network-filesystems/ceph.nix b/nixos/modules/services/network-filesystems/ceph.nix index 887a6ff925d2..ef0d2d90a1a1 100644 --- a/nixos/modules/services/network-filesystems/ceph.nix +++ b/nixos/modules/services/network-filesystems/ceph.nix @@ -9,12 +9,12 @@ let expandCamelCase = replaceStrings upperChars (map (s: " ${s}") lowerChars); expandCamelCaseAttrs = mapAttrs' (name: value: nameValuePair (expandCamelCase name) value); - makeServices = (daemonType: daemonIds: extraServiceConfig: + makeServices = (daemonType: daemonIds: mkMerge (map (daemonId: - { "ceph-${daemonType}-${daemonId}" = makeService daemonType daemonId cfg.global.clusterName pkgs.ceph extraServiceConfig; }) + { "ceph-${daemonType}-${daemonId}" = makeService daemonType daemonId cfg.global.clusterName pkgs.ceph; }) daemonIds)); - makeService = (daemonType: daemonId: clusterName: ceph: extraServiceConfig: { + makeService = (daemonType: daemonId: clusterName: ceph: { enable = true; description = "Ceph ${builtins.replaceStrings lowerChars upperChars daemonType} daemon ${daemonId}"; after = [ "network-online.target" "time-sync.target" ] ++ optional (daemonType == "osd") "ceph-mon.target"; @@ -22,6 +22,8 @@ let partOf = [ "ceph-${daemonType}.target" ]; wantedBy = [ "ceph-${daemonType}.target" ]; + path = [ pkgs.getopt ]; + serviceConfig = { LimitNOFILE = 1048576; LimitNPROC = 1048576; @@ -34,22 +36,22 @@ let Restart = "on-failure"; StartLimitBurst = "5"; StartLimitInterval = "30min"; + StateDirectory = "ceph/${if daemonType == "rgw" then "radosgw" else daemonType}/${clusterName}-${daemonId}"; + User = "ceph"; + Group = if daemonType == "osd" then "disk" else "ceph"; ExecStart = ''${ceph.out}/bin/${if daemonType == "rgw" then "radosgw" else "ceph-${daemonType}"} \ - -f --cluster ${clusterName} --id ${daemonId} --setuser ceph \ - --setgroup ${if daemonType == "osd" then "disk" else "ceph"}''; - } // extraServiceConfig - // optionalAttrs (daemonType == "osd") { ExecStartPre = ''${ceph.lib}/libexec/ceph/ceph-osd-prestart.sh \ - --id ${daemonId} --cluster ${clusterName}''; }; - } // optionalAttrs (builtins.elem daemonType [ "mds" "mon" "rgw" "mgr" ]) { - preStart = '' - daemonPath="/var/lib/ceph/${if daemonType == "rgw" then "radosgw" else daemonType}/${clusterName}-${daemonId}" - if [ ! -d $daemonPath ]; then - mkdir -m 755 -p $daemonPath - chown -R ceph:ceph $daemonPath - fi - ''; - } // optionalAttrs (daemonType == "osd") { path = [ pkgs.getopt ]; } - ); + -f --cluster ${clusterName} --id ${daemonId}''; + } // optionalAttrs (daemonType == "osd") { + ExecStartPre = ''${ceph.lib}/libexec/ceph/ceph-osd-prestart.sh --id ${daemonId} --cluster ${clusterName}''; + StartLimitBurst = "30"; + RestartSec = "20s"; + PrivateDevices = "no"; # osd needs disk access + } // optionalAttrs ( daemonType == "mon") { + RestartSec = "10"; + } // optionalAttrs (lib.elem daemonType ["mgr" "mds"]) { + StartLimitBurst = "3"; + }; + }); makeTarget = (daemonType: { @@ -377,14 +379,11 @@ in systemd.services = let services = [] - ++ optional cfg.mon.enable (makeServices "mon" cfg.mon.daemons { RestartSec = "10"; }) - ++ optional cfg.mds.enable (makeServices "mds" cfg.mds.daemons { StartLimitBurst = "3"; }) - ++ optional cfg.osd.enable (makeServices "osd" cfg.osd.daemons { StartLimitBurst = "30"; - RestartSec = "20s"; - PrivateDevices = "no"; # osd needs disk access - }) - ++ optional cfg.rgw.enable (makeServices "rgw" cfg.rgw.daemons { }) - ++ optional cfg.mgr.enable (makeServices "mgr" cfg.mgr.daemons { StartLimitBurst = "3"; }); + ++ optional cfg.mon.enable (makeServices "mon" cfg.mon.daemons) + ++ optional cfg.mds.enable (makeServices "mds" cfg.mds.daemons) + ++ optional cfg.osd.enable (makeServices "osd" cfg.osd.daemons) + ++ optional cfg.rgw.enable (makeServices "rgw" cfg.rgw.daemons) + ++ optional cfg.mgr.enable (makeServices "mgr" cfg.mgr.daemons); in mkMerge services; @@ -403,7 +402,9 @@ in systemd.tmpfiles.rules = [ "d /etc/ceph - ceph ceph - -" "d /run/ceph 0770 ceph ceph -" - "d /var/lib/ceph - ceph ceph - -" - ]; + "d /var/lib/ceph - ceph ceph - -"] + ++ optionals cfg.mgr.enable [ "d /var/lib/ceph/mgr - ceph ceph - -"] + ++ optionals cfg.mon.enable [ "d /var/lib/ceph/mon - ceph ceph - -"] + ++ optionals cfg.osd.enable [ "d /var/lib/ceph/osd - ceph ceph - -"]; }; } diff --git a/nixos/tests/ceph-multi-node.nix b/nixos/tests/ceph-multi-node.nix index 13d0851366eb..c34b134de531 100644 --- a/nixos/tests/ceph-multi-node.nix +++ b/nixos/tests/ceph-multi-node.nix @@ -114,18 +114,6 @@ let $osd0->waitForUnit("network.target"); $osd1->waitForUnit("network.target"); - # Create the ceph-related directories - $monA->mustSucceed( - "mkdir -p /var/lib/ceph/mgr/ceph-${cfg.monA.name}", - "mkdir -p /var/lib/ceph/mon/ceph-${cfg.monA.name}", - ); - $osd0->mustSucceed( - "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd0.name}", - ); - $osd1->mustSucceed( - "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd1.name}", - ); - # Bootstrap ceph-mon daemon $monA->mustSucceed( "sudo -u ceph ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'", @@ -133,6 +121,7 @@ let "sudo -u ceph ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring", "monmaptool --create --add ${cfg.monA.name} ${cfg.monA.ip} --fsid ${cfg.clusterId} /tmp/monmap", "sudo -u ceph ceph-mon --mkfs -i ${cfg.monA.name} --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring", + "sudo -u ceph mkdir -p /var/lib/ceph/mgr/ceph-${cfg.monA.name}/", "sudo -u ceph touch /var/lib/ceph/mon/ceph-${cfg.monA.name}/done", "systemctl start ceph-mon-${cfg.monA.name}" ); @@ -159,12 +148,14 @@ let # Bootstrap both OSDs $osd0->mustSucceed( "mkfs.xfs /dev/vdb", + "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd0.name}", "mount /dev/vdb /var/lib/ceph/osd/ceph-${cfg.osd0.name}", "ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-${cfg.osd0.name}/keyring --name osd.${cfg.osd0.name} --add-key ${cfg.osd0.key}", "echo '{\"cephx_secret\": \"${cfg.osd0.key}\"}' | ceph osd new ${cfg.osd0.uuid} -i -", ); $osd1->mustSucceed( "mkfs.xfs /dev/vdb", + "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd1.name}", "mount /dev/vdb /var/lib/ceph/osd/ceph-${cfg.osd1.name}", "ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-${cfg.osd1.name}/keyring --name osd.${cfg.osd1.name} --add-key ${cfg.osd1.key}", "echo '{\"cephx_secret\": \"${cfg.osd1.key}\"}' | ceph osd new ${cfg.osd1.uuid} -i -" diff --git a/nixos/tests/ceph-single-node.nix b/nixos/tests/ceph-single-node.nix index cb37b4b43bcd..5938300ebb4a 100644 --- a/nixos/tests/ceph-single-node.nix +++ b/nixos/tests/ceph-single-node.nix @@ -77,14 +77,6 @@ let $monA->waitForUnit("network.target"); - # Create the ceph-related directories - $monA->mustSucceed( - "mkdir -p /var/lib/ceph/mgr/ceph-${cfg.monA.name}", - "mkdir -p /var/lib/ceph/mon/ceph-${cfg.monA.name}", - "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd0.name}", - "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd1.name}", - ); - # Bootstrap ceph-mon daemon $monA->mustSucceed( "sudo -u ceph ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'", @@ -101,8 +93,9 @@ let # Can't check ceph status until a mon is up $monA->succeed("ceph -s | grep 'mon: 1 daemons'"); - # Start the ceph-mgr daemon, it has no deps and hardly any setup + # Start the ceph-mgr daemon, after copying in the keyring $monA->mustSucceed( + "sudo -u ceph mkdir -p /var/lib/ceph/mgr/ceph-${cfg.monA.name}/", "ceph auth get-or-create mgr.${cfg.monA.name} mon 'allow profile mgr' osd 'allow *' mds 'allow *' > /var/lib/ceph/mgr/ceph-${cfg.monA.name}/keyring", "systemctl start ceph-mgr-${cfg.monA.name}" ); @@ -114,7 +107,9 @@ let $monA->mustSucceed( "mkfs.xfs /dev/vdb", "mkfs.xfs /dev/vdc", + "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd0.name}", "mount /dev/vdb /var/lib/ceph/osd/ceph-${cfg.osd0.name}", + "mkdir -p /var/lib/ceph/osd/ceph-${cfg.osd1.name}", "mount /dev/vdc /var/lib/ceph/osd/ceph-${cfg.osd1.name}", "ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-${cfg.osd0.name}/keyring --name osd.${cfg.osd0.name} --add-key ${cfg.osd0.key}", "ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-${cfg.osd1.name}/keyring --name osd.${cfg.osd1.name} --add-key ${cfg.osd1.key}", -- cgit 1.4.1 From ffd006086945924511114fa1f5478665870da3af Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sat, 9 Nov 2019 16:05:58 +0100 Subject: nixos/ceph: use ConditionPathExists to delay ceph daemon start This prevents services to be started before they're initialized, and renders the `systemd.targets.ceph.wantedBy = lib.mkForce [];` hack in the vm tests obsolete - The config now starts up ceph after a reboot, too. Let's take advantage of that, crash all VMs, and boot them up again. --- .../modules/services/network-filesystems/ceph.nix | 19 +++++++++++----- nixos/tests/ceph-multi-node.nix | 26 ++++++++-------------- nixos/tests/ceph-single-node.nix | 14 ++++-------- 3 files changed, 27 insertions(+), 32 deletions(-) diff --git a/nixos/modules/services/network-filesystems/ceph.nix b/nixos/modules/services/network-filesystems/ceph.nix index ef0d2d90a1a1..543a7b25d5d6 100644 --- a/nixos/modules/services/network-filesystems/ceph.nix +++ b/nixos/modules/services/network-filesystems/ceph.nix @@ -14,7 +14,9 @@ let { "ceph-${daemonType}-${daemonId}" = makeService daemonType daemonId cfg.global.clusterName pkgs.ceph; }) daemonIds)); - makeService = (daemonType: daemonId: clusterName: ceph: { + makeService = (daemonType: daemonId: clusterName: ceph: + let + stateDirectory = "ceph/${if daemonType == "rgw" then "radosgw" else daemonType}/${clusterName}-${daemonId}"; in { enable = true; description = "Ceph ${builtins.replaceStrings lowerChars upperChars daemonType} daemon ${daemonId}"; after = [ "network-online.target" "time-sync.target" ] ++ optional (daemonType == "osd") "ceph-mon.target"; @@ -24,6 +26,9 @@ let path = [ pkgs.getopt ]; + # Don't start services that are not yet initialized + unitConfig.ConditionPathExists = "/var/lib/${stateDirectory}/keyring"; + serviceConfig = { LimitNOFILE = 1048576; LimitNPROC = 1048576; @@ -36,7 +41,7 @@ let Restart = "on-failure"; StartLimitBurst = "5"; StartLimitInterval = "30min"; - StateDirectory = "ceph/${if daemonType == "rgw" then "radosgw" else daemonType}/${clusterName}-${daemonId}"; + StateDirectory = stateDirectory; User = "ceph"; Group = if daemonType == "osd" then "disk" else "ceph"; ExecStart = ''${ceph.out}/bin/${if daemonType == "rgw" then "radosgw" else "ceph-${daemonType}"} \ @@ -60,6 +65,7 @@ let partOf = [ "ceph.target" ]; wantedBy = [ "ceph.target" ]; before = [ "ceph.target" ]; + unitConfig.StopWhenUnneeded = true; }; } ); @@ -389,9 +395,12 @@ in systemd.targets = let targets = [ - { ceph = { description = "Ceph target allowing to start/stop all ceph service instances at once"; - wantedBy = [ "multi-user.target" ]; }; } - ] ++ optional cfg.mon.enable (makeTarget "mon") + { ceph = { + description = "Ceph target allowing to start/stop all ceph service instances at once"; + wantedBy = [ "multi-user.target" ]; + unitConfig.StopWhenUnneeded = true; + }; } ] + ++ optional cfg.mon.enable (makeTarget "mon") ++ optional cfg.mds.enable (makeTarget "mds") ++ optional cfg.osd.enable (makeTarget "osd") ++ optional cfg.rgw.enable (makeTarget "rgw") diff --git a/nixos/tests/ceph-multi-node.nix b/nixos/tests/ceph-multi-node.nix index c34b134de531..09a81ae25e3d 100644 --- a/nixos/tests/ceph-multi-node.nix +++ b/nixos/tests/ceph-multi-node.nix @@ -49,9 +49,6 @@ let boot.kernelModules = [ "xfs" ]; services.ceph = cephConfig; - - # So that we don't have to battle systemd when bootstraping - systemd.targets.ceph.wantedBy = lib.mkForce []; }; networkMonA = { @@ -191,22 +188,17 @@ let "ceph osd pool delete multi-node-other-test multi-node-other-test --yes-i-really-really-mean-it" ); - # As we disable the target in the config, we still want to test that it works as intended - $osd0->mustSucceed("systemctl stop ceph-osd-${cfg.osd0.name}"); - $osd1->mustSucceed("systemctl stop ceph-osd-${cfg.osd1.name}"); - $monA->mustSucceed( - "systemctl stop ceph-mgr-${cfg.monA.name}", - "systemctl stop ceph-mon-${cfg.monA.name}" - ); + # Shut down ceph on all machines in a very unpolite way + $monA->crash; + $osd0->crash; + $osd1->crash; - $monA->succeed("systemctl start ceph.target"); - $monA->waitForUnit("ceph-mon-${cfg.monA.name}"); - $monA->waitForUnit("ceph-mgr-${cfg.monA.name}"); - $osd0->succeed("systemctl start ceph.target"); - $osd0->waitForUnit("ceph-osd-${cfg.osd0.name}"); - $osd1->succeed("systemctl start ceph.target"); - $osd1->waitForUnit("ceph-osd-${cfg.osd1.name}"); + # Start it up + $osd0->start; + $osd1->start; + $monA->start; + # Ensure the cluster comes back up again $monA->succeed("ceph -s | grep 'mon: 1 daemons'"); $monA->waitUntilSucceeds("ceph -s | grep 'quorum ${cfg.monA.name}'"); $monA->waitUntilSucceeds("ceph osd stat | grep -e '2 osds: 2 up[^,]*, 2 in'"); diff --git a/nixos/tests/ceph-single-node.nix b/nixos/tests/ceph-single-node.nix index 5938300ebb4a..3278d76769a4 100644 --- a/nixos/tests/ceph-single-node.nix +++ b/nixos/tests/ceph-single-node.nix @@ -46,9 +46,6 @@ let boot.kernelModules = [ "xfs" ]; services.ceph = cephConfig; - - # So that we don't have to battle systemd when bootstraping - systemd.targets.ceph.wantedBy = lib.mkForce []; }; networkMonA = { @@ -151,20 +148,17 @@ let "ceph osd pool delete single-node-other-test single-node-other-test --yes-i-really-really-mean-it" ); - # As we disable the target in the config, we still want to test that it works as intended - $monA->mustSucceed( - "systemctl stop ceph-osd-${cfg.osd0.name}", - "systemctl stop ceph-osd-${cfg.osd1.name}", - "systemctl stop ceph-mgr-${cfg.monA.name}", - "systemctl stop ceph-mon-${cfg.monA.name}" - ); + # Shut down ceph by stopping ceph.target. + $monA->mustSucceed("systemctl stop ceph.target"); + # Start it up $monA->succeed("systemctl start ceph.target"); $monA->waitForUnit("ceph-mon-${cfg.monA.name}"); $monA->waitForUnit("ceph-mgr-${cfg.monA.name}"); $monA->waitForUnit("ceph-osd-${cfg.osd0.name}"); $monA->waitForUnit("ceph-osd-${cfg.osd1.name}"); + # Ensure the cluster comes back up again $monA->succeed("ceph -s | grep 'mon: 1 daemons'"); $monA->waitUntilSucceeds("ceph -s | grep 'quorum ${cfg.monA.name}'"); $monA->waitUntilSucceeds("ceph osd stat | grep -e '2 osds: 2 up[^,]*, 2 in'"); -- cgit 1.4.1 From 4f2daa7b29591c569efcae87aaec0abad618e1b1 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 6 Nov 2019 21:18:26 -0500 Subject: nixosTests.xmonad: port to python --- nixos/tests/xmonad.nix | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/nixos/tests/xmonad.nix b/nixos/tests/xmonad.nix index 79c15ccffecd..c2e5ba60d7bc 100644 --- a/nixos/tests/xmonad.nix +++ b/nixos/tests/xmonad.nix @@ -1,4 +1,4 @@ -import ./make-test.nix ({ pkgs, ...} : { +import ./make-test-python.nix ({ pkgs, ...} : { name = "xmonad"; meta = with pkgs.stdenv.lib.maintainers; { maintainers = [ nequissimus ]; @@ -21,19 +21,21 @@ import ./make-test.nix ({ pkgs, ...} : { }; }; - testScript = { ... }: '' - $machine->waitForX; - $machine->waitForFile("/home/alice/.Xauthority"); - $machine->succeed("xauth merge ~alice/.Xauthority"); - $machine->sendKeys("alt-ctrl-x"); - $machine->waitForWindow(qr/alice.*machine/); - $machine->sleep(1); - $machine->screenshot("terminal"); - $machine->waitUntilSucceeds("xmonad --restart"); - $machine->sleep(3); - $machine->sendKeys("alt-shift-ret"); - $machine->waitForWindow(qr/alice.*machine/); - $machine->sleep(1); - $machine->screenshot("terminal"); + testScript = { nodes, ... }: let + user = nodes.machine.config.users.users.alice; + in '' + machine.wait_for_x() + machine.wait_for_file("${user.home}/.Xauthority") + machine.succeed("xauth merge ${user.home}/.Xauthority") + machine.send_chars("alt-ctrl-x") + machine.wait_for_window("${user.name}.*machine") + machine.sleep(1) + machine.screenshot("terminal") + machine.wait_until_succeeds("xmonad --restart") + machine.sleep(3) + machine.send_chars("alt-shift-ret") + machine.wait_for_window("${user.name}.*machine") + machine.sleep(1) + machine.screenshot("terminal") ''; }) -- cgit 1.4.1 From 1972904fc6ede120add8f035ab964be174436292 Mon Sep 17 00:00:00 2001 From: Daniel Kuehn Date: Sat, 9 Nov 2019 13:16:56 +0100 Subject: nixos/ceph: Clarify comments in tests and add source reference for the bootstraping method --- nixos/tests/ceph-multi-node.nix | 4 ++++ nixos/tests/ceph-single-node.nix | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/nixos/tests/ceph-multi-node.nix b/nixos/tests/ceph-multi-node.nix index 09a81ae25e3d..ed493d6a1b34 100644 --- a/nixos/tests/ceph-multi-node.nix +++ b/nixos/tests/ceph-multi-node.nix @@ -104,6 +104,10 @@ let }; }; }; + # Following deployment is based on the manual deployment described here: + # https://docs.ceph.com/docs/master/install/manual-deployment/ + # For other ways to deploy a ceph cluster, look at the documentation at + # https://docs.ceph.com/docs/master/ testscript = { ... }: '' startAll; diff --git a/nixos/tests/ceph-single-node.nix b/nixos/tests/ceph-single-node.nix index 3278d76769a4..041fbd7e8e64 100644 --- a/nixos/tests/ceph-single-node.nix +++ b/nixos/tests/ceph-single-node.nix @@ -69,6 +69,10 @@ let }; }; }; + # Following deployment is based on the manual deployment described here: + # https://docs.ceph.com/docs/master/install/manual-deployment/ + # For other ways to deploy a ceph cluster, look at the documentation at + # https://docs.ceph.com/docs/master/ testscript = { ... }: '' startAll; -- cgit 1.4.1 From 98875b5b4e98acbbc6b8431f803c3c06df37bcef Mon Sep 17 00:00:00 2001 From: ash lea Date: Sat, 9 Nov 2019 20:51:57 -0800 Subject: elasticsearchPlugins: add ingest-attachment --- pkgs/servers/search/elasticsearch/plugins.nix | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/pkgs/servers/search/elasticsearch/plugins.nix b/pkgs/servers/search/elasticsearch/plugins.nix index 3a480bd74674..bb5c56f0b8f7 100644 --- a/pkgs/servers/search/elasticsearch/plugins.nix +++ b/pkgs/servers/search/elasticsearch/plugins.nix @@ -62,6 +62,25 @@ in { }; }; + ingest-attachment = esPlugin rec { + name = "elasticsearch-ingest-attachment-${version}"; + pluginName = "ingest-attachment"; + version = esVersion; + src = pkgs.fetchurl { + url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${version}.zip"; + sha256 = + if version == "7.0.1" then "03hnw0g3gyvs1aby75b3wz093dn5dsyn2845hxxwh1n2s8csswkk" + else if version == "6.7.2" then "1dgb0gx4q5xlhkchwxbsaml3i1w9vzppnw068b8kfdq5g5wi31kd" + else if version == "5.6.16" then "0qp9r6n0f24adxpb0142nw80a89pfx4hns82l61ssmykawsrfhkg" + else throw "unsupported version ${version} for plugin ${pluginName}"; + }; + meta = with stdenv.lib; { + homepage = https://github.com/elastic/elasticsearch/tree/master/plugins/ingest-attachment; + description = "Ingest processor that uses Apache Tika to extract contents"; + license = licenses.asl20; + }; + }; + repository-s3 = esPlugin rec { name = "elasticsearch-repository-s3-${version}"; pluginName = "repository-s3"; -- cgit 1.4.1 From 2e3d3cff7ea33a56e817dfa13b84b6f8b7527d7b Mon Sep 17 00:00:00 2001 From: ash lea Date: Sun, 10 Nov 2019 00:09:11 -0800 Subject: elasticsearchPlugins: match elasticsearch version --- pkgs/servers/search/elasticsearch/plugins.nix | 58 ++++++++++++--------------- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 27 insertions(+), 32 deletions(-) diff --git a/pkgs/servers/search/elasticsearch/plugins.nix b/pkgs/servers/search/elasticsearch/plugins.nix index bb5c56f0b8f7..e6078a806818 100644 --- a/pkgs/servers/search/elasticsearch/plugins.nix +++ b/pkgs/servers/search/elasticsearch/plugins.nix @@ -1,4 +1,4 @@ -{ pkgs, lib, stdenv, fetchurl, unzip, elasticsearch }: +{ lib, stdenv, fetchurl, unzip, elasticsearch }: let esVersion = elasticsearch.version; @@ -20,7 +20,7 @@ let buildInputs = [ unzip ]; meta = a.meta // { platforms = elasticsearch.meta.platforms; - maintainers = (a.meta.maintainers or []) ++ (with stdenv.lib.maintainers; [ offline ]); + maintainers = (a.meta.maintainers or []) ++ (with lib.maintainers; [ offline ]); }; }); in { @@ -32,11 +32,11 @@ in { src = fetchurl { url = "https://github.com/vhyza/${pluginName}/releases/download/v${version}/${name}-plugin.zip"; sha256 = - if version == "7.0.1" then "155zj9zw81msx976c952nk926ndav1zqhmy2xih6nr82qf0p71hm" - else if version == "6.7.2" then "1r176ncjbilkmri2c5rdxh5xqsrn77m1f0p98zs47czwlqh230iq" + if version == "7.3.1" then "1nb82z6s94mzdx1srb1pwj7cpzs8w74njap0xiqn7sg5ylk6adm8" + else if version == "6.8.3" then "12bshvp01pp2lgwd0cn9l58axg8gdimsh4g9wfllxi1bdpv4cy53" else throw "unsupported version ${version} for plugin ${pluginName}"; }; - meta = with stdenv.lib; { + meta = with lib; { homepage = https://github.com/vhyza/elasticsearch-analysis-lemmagen; description = "LemmaGen Analysis plugin provides jLemmaGen lemmatizer as Elasticsearch token filter"; license = licenses.asl20; @@ -47,15 +47,14 @@ in { name = "elasticsearch-discovery-ec2-${version}"; pluginName = "discovery-ec2"; version = esVersion; - src = pkgs.fetchurl { + src = fetchurl { url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${version}.zip"; sha256 = - if version == "7.0.1" then "0nrvralh4fygs0ys2ikg3x08jdyh9276d5w7yfncbbi0xrg9hk6g" - else if version == "6.7.2" then "1p0cdz3lfksfd2kvlcj0syxhbx27mimsaw8q4kgjpjjjwqayg523" - else if version == "5.6.16" then "1300pfmnlpfm1hh2jgas8j2kqjqiqkxhr8czshj9lx0wl4ciknin" + if version == "7.3.1" then "1p30by7pqnvj8dcwws51kh9s962c42qwqq07gmj4jl83zxcl8kyl" + else if version == "6.8.3" then "0pmffz761dqjpvmkl7i7xsyw1iyyspqpddxp89rjsznfc9pak5im" else throw "unsupported version ${version} for plugin ${pluginName}"; }; - meta = with stdenv.lib; { + meta = with lib; { homepage = https://github.com/elastic/elasticsearch/tree/master/plugins/discovery-ec2; description = "The EC2 discovery plugin uses the AWS API for unicast discovery."; license = licenses.asl20; @@ -66,15 +65,14 @@ in { name = "elasticsearch-ingest-attachment-${version}"; pluginName = "ingest-attachment"; version = esVersion; - src = pkgs.fetchurl { + src = fetchurl { url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${version}.zip"; sha256 = - if version == "7.0.1" then "03hnw0g3gyvs1aby75b3wz093dn5dsyn2845hxxwh1n2s8csswkk" - else if version == "6.7.2" then "1dgb0gx4q5xlhkchwxbsaml3i1w9vzppnw068b8kfdq5g5wi31kd" - else if version == "5.6.16" then "0qp9r6n0f24adxpb0142nw80a89pfx4hns82l61ssmykawsrfhkg" + if version == "7.3.1" then "1b9l17zv6582sdcdiabwd293xx5ckc2d3h6smiv6znk5f4dxj7km" + else if version == "6.8.3" then "0kfr4i2rcwinjn31xrc2piicasjanaqcgnbif9xc7lnak2nnzmll" else throw "unsupported version ${version} for plugin ${pluginName}"; }; - meta = with stdenv.lib; { + meta = with lib; { homepage = https://github.com/elastic/elasticsearch/tree/master/plugins/ingest-attachment; description = "Ingest processor that uses Apache Tika to extract contents"; license = licenses.asl20; @@ -85,15 +83,14 @@ in { name = "elasticsearch-repository-s3-${version}"; pluginName = "repository-s3"; version = esVersion; - src = pkgs.fetchurl { + src = fetchurl { url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${esVersion}.zip"; sha256 = - if version == "7.0.1" then "17bf8m1q92j5yhgldckl4hlsfv6qgwwqdc1da9kzgidgky7jwkbc" - else if version == "6.7.2" then "1l353zfyv3qziz8xkann9cbzx4wj5s14wnknfw351j6vgdq26l12" - else if version == "5.6.16" then "0k3li5xv1270ygb9lqk6ji3nngngl2im3z38k08nd627vxdrzij2" + if version == "7.3.1" then "1dqd3hd8qa1bsvd1p42k5zcrdmb66d2yspfc7g8nsz89w6b1invg" + else if version == "6.8.3" then "1mm6hj2m1db68n81rzsvlw6nisflr5ikzk5zv9nmk0z641n5vh1x" else throw "unsupported version ${version} for plugin ${pluginName}"; }; - meta = with stdenv.lib; { + meta = with lib; { homepage = https://github.com/elastic/elasticsearch/tree/master/plugins/repository-s3; description = "The S3 repository plugin adds support for using AWS S3 as a repository for Snapshot/Restore."; license = licenses.asl20; @@ -104,15 +101,14 @@ in { name = "elasticsearch-repository-gcs-${version}"; pluginName = "repository-gcs"; version = esVersion; - src = pkgs.fetchurl { + src = fetchurl { url = "https://artifacts.elastic.co/downloads/elasticsearch-plugins/${pluginName}/${pluginName}-${esVersion}.zip"; sha256 = - if version == "7.0.1" then "0a3rc2gggsj7xfncil1s53dmq799lcm82h0yncs94jnb182sbmzc" - else if version == "6.7.2" then "0afccbvb7x6y3nrwmal09vpgxyz4lar6lffw4mngalcppsk8irvv" - else if version == "5.6.16" then "0hwqx4yhdn4c0ccdpvgrg30ag8hy3mgxgk7h7pibdmzvy7qw7501" + if version == "7.3.1" then "0kpb1hn2fb4lh6kn96vi7265ign9lwcd0zfc19l4n6fpp8js5lfh" + else if version == "6.8.3" then "1s2klpvnhpkrk53p64zbga3b66czi7h1a13f58kfn2cn0zfavnbk" else throw "unsupported version ${version} for plugin ${pluginName}"; }; - meta = with stdenv.lib; { + meta = with lib; { homepage = https://github.com/elastic/elasticsearch/tree/master/plugins/repository-gcs; description = "The GCS repository plugin adds support for using Google Cloud Storage as a repository for Snapshot/Restore."; license = licenses.asl20; @@ -125,19 +121,17 @@ in { name = "elasticsearch-search-guard-${version}"; pluginName = "search-guard"; version = - if esVersion == "7.0.1" then "${esVersion}-35.0.0" - else if esVersion == "6.7.2" then "${esVersion}-25.1" - else if esVersion == "5.6.16" then "${esVersion}-19.3" + if esVersion == "7.3.1" then "${esVersion}-37.0.0" + else if esVersion == "6.8.3" then "${esVersion}-25.5" else throw "unsupported version ${esVersion} for plugin ${pluginName}"; src = fetchurl { url = "mirror://maven/com/floragunn/${pluginName}-${majorVersion}/${version}/${pluginName}-${majorVersion}-${version}.zip"; sha256 = - if version == "7.0.1-35.0.0" then "0wsiqq7j7ph9g2vhhvjmwrh5a2q1wzlysgr75gc35zcvqz6cq8ha" - else if version == "6.7.2-25.1" then "119r1zibi0z40mfxrpkx0zzay0yz6c7syqmmw8i2681wmz4nksda" - else if version == "5.6.16-19.3" then "1q70anihh89c53fnk8wlq9z5dx094j0f9a0y0v2zsqx18lz9ikmx" + if version == "7.3.1-37.0.0" then "0rb631npr6vykrhln3x6q75xwb0wndvrspwnak0rld5d7pqn1r04" + else if version == "6.8.3-25.5" then "0a7ys9qinc0fjyka03cx9rv0pm7wnvslk234zv5vrphkrj52s1cb" else throw "unsupported version ${version} for plugin ${pluginName}"; }; - meta = with stdenv.lib; { + meta = with lib; { homepage = https://github.com/floragunncom/search-guard; description = "Elasticsearch plugin that offers encryption, authentication, and authorisation. "; license = licenses.asl20; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a5cb6ed6e103..8e63250c71a9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2963,6 +2963,7 @@ in evemu = callPackage ../tools/system/evemu { }; # The latest version used by elasticsearch, logstash, kibana and the the beats from elastic. + # When updating make sure to update all plugins or they will break! elk6Version = "6.8.3"; elk7Version = "7.3.1"; -- cgit 1.4.1 From a23730cf9a6be4b0670181bd6a33ac796a981228 Mon Sep 17 00:00:00 2001 From: ash lea Date: Sun, 10 Nov 2019 00:26:56 -0800 Subject: elasticsearchPlugins: style fixups --- pkgs/servers/search/elasticsearch/plugins.nix | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/pkgs/servers/search/elasticsearch/plugins.nix b/pkgs/servers/search/elasticsearch/plugins.nix index e6078a806818..7615acf3f8e7 100644 --- a/pkgs/servers/search/elasticsearch/plugins.nix +++ b/pkgs/servers/search/elasticsearch/plugins.nix @@ -16,6 +16,7 @@ let }: stdenv.mkDerivation (a // { inherit installPhase; + pname = "elasticsearch-${pluginName}"; dontUnpack = true; buildInputs = [ unzip ]; meta = a.meta // { @@ -26,11 +27,10 @@ let in { analysis-lemmagen = esPlugin rec { - name = "elasticsearch-analysis-lemmagen-${version}"; - pluginName = "elasticsearch-analysis-lemmagen"; + pluginName = "analysis-lemmagen"; version = esVersion; src = fetchurl { - url = "https://github.com/vhyza/${pluginName}/releases/download/v${version}/${name}-plugin.zip"; + url = "https://github.com/vhyza/${pluginName}/releases/download/v${version}/${pluginName}-${version}-plugin.zip"; sha256 = if version == "7.3.1" then "1nb82z6s94mzdx1srb1pwj7cpzs8w74njap0xiqn7sg5ylk6adm8" else if version == "6.8.3" then "12bshvp01pp2lgwd0cn9l58axg8gdimsh4g9wfllxi1bdpv4cy53" @@ -44,7 +44,6 @@ in { }; discovery-ec2 = esPlugin rec { - name = "elasticsearch-discovery-ec2-${version}"; pluginName = "discovery-ec2"; version = esVersion; src = fetchurl { @@ -62,7 +61,6 @@ in { }; ingest-attachment = esPlugin rec { - name = "elasticsearch-ingest-attachment-${version}"; pluginName = "ingest-attachment"; version = esVersion; src = fetchurl { @@ -80,7 +78,6 @@ in { }; repository-s3 = esPlugin rec { - name = "elasticsearch-repository-s3-${version}"; pluginName = "repository-s3"; version = esVersion; src = fetchurl { @@ -98,7 +95,6 @@ in { }; repository-gcs = esPlugin rec { - name = "elasticsearch-repository-gcs-${version}"; pluginName = "repository-gcs"; version = esVersion; src = fetchurl { @@ -118,7 +114,6 @@ in { search-guard = let majorVersion = lib.head (builtins.splitVersion esVersion); in esPlugin rec { - name = "elasticsearch-search-guard-${version}"; pluginName = "search-guard"; version = if esVersion == "7.3.1" then "${esVersion}-37.0.0" -- cgit 1.4.1 From f92cc632aee36fe1a9ae3ae17ed176cc79c4a931 Mon Sep 17 00:00:00 2001 From: ash lea Date: Sun, 10 Nov 2019 00:30:12 -0800 Subject: elasticsearchPlugins.search-guard: fix homepage link --- pkgs/servers/search/elasticsearch/plugins.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/search/elasticsearch/plugins.nix b/pkgs/servers/search/elasticsearch/plugins.nix index 7615acf3f8e7..a40a142368ab 100644 --- a/pkgs/servers/search/elasticsearch/plugins.nix +++ b/pkgs/servers/search/elasticsearch/plugins.nix @@ -116,6 +116,7 @@ in { in esPlugin rec { pluginName = "search-guard"; version = + # https://docs.search-guard.com/latest/search-guard-versions if esVersion == "7.3.1" then "${esVersion}-37.0.0" else if esVersion == "6.8.3" then "${esVersion}-25.5" else throw "unsupported version ${esVersion} for plugin ${pluginName}"; @@ -127,7 +128,7 @@ in { else throw "unsupported version ${version} for plugin ${pluginName}"; }; meta = with lib; { - homepage = https://github.com/floragunncom/search-guard; + homepage = https://search-guard.com; description = "Elasticsearch plugin that offers encryption, authentication, and authorisation. "; license = licenses.asl20; }; -- cgit 1.4.1 From 8142cad918f09101bddb9502abe8ba27286ca973 Mon Sep 17 00:00:00 2001 From: MarcFontaine Date: Sun, 10 Nov 2019 18:53:28 +0100 Subject: ghcjs : fix the patch for ghc-paths-package This patch is used in pkgs/development/haskell-modules/configuration-ghcjs.nix to fix the ghc-path package for use with ghcjs. The ghc-paths package has been updated in a way that the existing patch can no longer be applied. --- .../development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch b/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch index 26ea0eaa5a8b..48cf6a035afb 100644 --- a/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch +++ b/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch @@ -43,13 +43,13 @@ index c87565d..88b3db4 100644 +ghc = fromMaybe GHC_PATHS_GHC nixGhc +ghc_pkg = fromMaybe GHC_PATHS_GHC_PKG nixGhcPkg diff --git a/Setup.hs b/Setup.hs -index fad5026..1651650 100644 +index f2d1733..ca4792e 100644 --- a/Setup.hs +++ b/Setup.hs -@@ -27,13 +27,13 @@ main = defaultMainWithHooks simpleUserHooks { - defaultPostConf :: Args -> ConfigFlags -> PackageDescription -> LocalBuildInfo -> IO () - defaultPostConf args flags pkgdescr lbi = do +@@ -39,13 +39,13 @@ main = defaultMainWithHooks simpleUserHooks { + #else libdir_ <- rawSystemProgramStdoutConf (fromFlag (configVerbosity flags)) + #endif - ghcProgram (withPrograms lbi) ["--print-libdir"] + ghcjsProgram (withPrograms lbi) ["--print-libdir"] let libdir = reverse $ dropWhile isSpace $ reverse libdir_ -- cgit 1.4.1 From 859a933a5aaaeeb9855542f2a890760128b6b9b1 Mon Sep 17 00:00:00 2001 From: Claudio Bley Date: Sun, 10 Nov 2019 22:14:41 +0100 Subject: wtf: 0.23.0 -> 0.24.0 --- pkgs/applications/misc/wtf/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/wtf/default.nix b/pkgs/applications/misc/wtf/default.nix index 2706a5ed658a..46c134081433 100644 --- a/pkgs/applications/misc/wtf/default.nix +++ b/pkgs/applications/misc/wtf/default.nix @@ -7,7 +7,7 @@ buildGoModule rec { pname = "wtf"; - version = "0.23.0"; + version = "0.24.0"; overrideModAttrs = _oldAttrs : _oldAttrs // { preBuild = ''export GOPROXY="https://gocenter.io"''; @@ -17,10 +17,10 @@ buildGoModule rec { owner = "wtfutil"; repo = pname; rev = "v${version}"; - sha256 = "0bhk81jmv6rq8h898lmvrh9v356310fbi82lvakmgay7nvzk9a1c"; + sha256 = "0jz7hjcm0hfxcih2zplp47wx6lyvhhzj9ka4ljqrx0i4l7cm9ahs"; }; - modSha256 = "1ndb7zbhaq0cnd8fd05fvb62qi0mxilgydz42qqz2z4fkbx9gp3m"; + modSha256 = "03vj6q1ln71r685k2j91ycj6xxrc688pj4bdc561693r20sr49xj"; buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ]; -- cgit 1.4.1 From ad4a1e0f850f34d938c466cd858e360d801dd623 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Mon, 11 Nov 2019 08:51:55 +0100 Subject: wtf: Use Go 1.13 and drop `overrideModAttrs` This no longer uses gocenter.io as a proxy, but the official Go module proxy instead. --- pkgs/applications/misc/wtf/default.nix | 8 +++----- pkgs/top-level/all-packages.nix | 4 +--- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/misc/wtf/default.nix b/pkgs/applications/misc/wtf/default.nix index 46c134081433..f20c4aff1697 100644 --- a/pkgs/applications/misc/wtf/default.nix +++ b/pkgs/applications/misc/wtf/default.nix @@ -9,10 +9,6 @@ buildGoModule rec { pname = "wtf"; version = "0.24.0"; - overrideModAttrs = _oldAttrs : _oldAttrs // { - preBuild = ''export GOPROXY="https://gocenter.io"''; - }; - src = fetchFromGitHub { owner = "wtfutil"; repo = pname; @@ -20,10 +16,12 @@ buildGoModule rec { sha256 = "0jz7hjcm0hfxcih2zplp47wx6lyvhhzj9ka4ljqrx0i4l7cm9ahs"; }; - modSha256 = "03vj6q1ln71r685k2j91ycj6xxrc688pj4bdc561693r20sr49xj"; + modSha256 = "04d8hvd90f7v853p23xcx38qz3ryv7kz7zjk9b131cjnd4mcv0sm"; buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ]; + subPackages = [ "." ]; + nativeBuildInputs = [ makeWrapper ]; postInstall = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fb9920847977..12ff68238468 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25325,9 +25325,7 @@ in zimg = callPackage ../development/libraries/zimg { }; - wtf = callPackage ../applications/misc/wtf { - buildGoModule = buildGo112Module; - }; + wtf = callPackage ../applications/misc/wtf { }; zk-shell = callPackage ../applications/misc/zk-shell { }; -- cgit 1.4.1 From 832ce6942c608b97ef0362f36846ecaa7767c491 Mon Sep 17 00:00:00 2001 From: Fabian Möller Date: Mon, 11 Nov 2019 10:46:30 +0100 Subject: hotspot: use Qt mkDerivation --- pkgs/development/tools/analysis/hotspot/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/tools/analysis/hotspot/default.nix b/pkgs/development/tools/analysis/hotspot/default.nix index 89ffbff3db71..fc7cd2ffe193 100644 --- a/pkgs/development/tools/analysis/hotspot/default.nix +++ b/pkgs/development/tools/analysis/hotspot/default.nix @@ -1,4 +1,5 @@ { stdenv, + mkDerivation, cmake, elfutils, extra-cmake-modules, @@ -14,7 +15,7 @@ threadweaver, }: -stdenv.mkDerivation rec { +mkDerivation rec { pname = "hotspot"; version = "1.2.0"; -- cgit 1.4.1 From 3f72f7bac2e12a5766783be5fefe9482113e2916 Mon Sep 17 00:00:00 2001 From: Oleksii Filonenko Date: Mon, 11 Nov 2019 13:50:42 +0200 Subject: antibody: 4.1.2 -> 4.2.0 --- pkgs/shells/zsh/antibody/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/shells/zsh/antibody/default.nix b/pkgs/shells/zsh/antibody/default.nix index 0ea3c8d158d0..88baa3959feb 100644 --- a/pkgs/shells/zsh/antibody/default.nix +++ b/pkgs/shells/zsh/antibody/default.nix @@ -2,7 +2,7 @@ buildGoModule rec { pname = "antibody"; - version = "4.1.2"; + version = "4.2.0"; goPackagePath = "github.com/getantibody/antibody"; @@ -10,10 +10,10 @@ buildGoModule rec { owner = "getantibody"; repo = "antibody"; rev = "v${version}"; - sha256 = "1csanmvix7b2sa7nsy8nh3jq6gmhp8i51xivsabm1lj2y30c0ly3"; + sha256 = "1vds7mxqxa7xlhvjvmnh1nr1ra3dciav0qlv45s1dmwn5qrcilci"; }; - modSha256 = "1p9cw92ivwgpkvjxvwd9anbd1vzhpicm9il4pg37z2kgr2ihhnyh"; + modSha256 = "1n9sgrm16iig600f4q1cmbwwk0822isjvbyazplylha843510b17"; meta = with lib; { description = "The fastest shell plugin manager"; -- cgit 1.4.1 From dfb9a1e164956edc64b77e52f23e833fc65bbec6 Mon Sep 17 00:00:00 2001 From: Oleksii Filonenko Date: Mon, 11 Nov 2019 13:51:02 +0200 Subject: antibody: add filalex77 as a maintainer --- pkgs/shells/zsh/antibody/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/shells/zsh/antibody/default.nix b/pkgs/shells/zsh/antibody/default.nix index 88baa3959feb..e1bfc68dc4de 100644 --- a/pkgs/shells/zsh/antibody/default.nix +++ b/pkgs/shells/zsh/antibody/default.nix @@ -19,6 +19,6 @@ buildGoModule rec { description = "The fastest shell plugin manager"; homepage = https://github.com/getantibody/antibody; license = licenses.mit; - maintainers = with maintainers; [ worldofpeace ]; + maintainers = with maintainers; [ filalex77 worldofpeace ]; }; } -- cgit 1.4.1 From a8e9a93493bca33f59b6c893cd8af459b18ab619 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Mon, 11 Nov 2019 01:24:49 +0100 Subject: nixos/tests: fix succeed() with multiple commands we previously immediately returned the first commands output, and didn't execute any of the other commands. Now, return the last commands output. This should be documented in the method docstring. --- nixos/lib/test-driver/test-driver.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/nixos/lib/test-driver/test-driver.py b/nixos/lib/test-driver/test-driver.py index c8940d78af4e..c8d4936ac52a 100644 --- a/nixos/lib/test-driver/test-driver.py +++ b/nixos/lib/test-driver/test-driver.py @@ -381,15 +381,17 @@ class Machine: def succeed(self, *commands): """Execute each command and check that it succeeds.""" + output = "" for command in commands: with self.nested("must succeed: {}".format(command)): - status, output = self.execute(command) + (status, out) = self.execute(command) if status != 0: - self.log("output: {}".format(output)) + self.log("output: {}".format(out)) raise Exception( "command `{}` failed (exit code {})".format(command, status) ) - return output + output += out + return output def fail(self, *commands): """Execute each command and check that it fails.""" -- cgit 1.4.1 From cd411946542e7a3dfef15a317375bc0a449be07e Mon Sep 17 00:00:00 2001 From: tekeri <47343275+tekeri@users.noreply.github.com> Date: Mon, 11 Nov 2019 22:09:58 +0900 Subject: circus: fix incompatible dependency of python-circus (#73199) * circus: fix incompatible dependency of python-circus * circus: move out of python packages set * circus: remove directly used python packages arguments --- pkgs/development/python-modules/circus/default.nix | 31 -------------------- pkgs/tools/networking/circus/default.nix | 33 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ pkgs/top-level/python-packages.nix | 2 -- 4 files changed, 35 insertions(+), 33 deletions(-) delete mode 100644 pkgs/development/python-modules/circus/default.nix create mode 100644 pkgs/tools/networking/circus/default.nix diff --git a/pkgs/development/python-modules/circus/default.nix b/pkgs/development/python-modules/circus/default.nix deleted file mode 100644 index a4f96ccaf68e..000000000000 --- a/pkgs/development/python-modules/circus/default.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ stdenv, buildPythonPackage, fetchPypi -, iowait, psutil, pyzmq, tornado, mock }: - -buildPythonPackage rec { - pname = "circus"; - version = "0.15.0"; - - src = fetchPypi { - inherit pname version; - sha256 = "d1603cf4c4f620ce6593d3d2a67fad25bf0242183ea24110d8bb1c8079c55d1b"; - }; - - postPatch = '' - # relax version restrictions to fix build - substituteInPlace setup.py \ - --replace "pyzmq>=13.1.0,<17.0" "pyzmq>13.1.0" \ - --replace "tornado>=3.0,<5.0" "tornado>=3.0" - ''; - - checkInputs = [ mock ]; - - doCheck = false; # weird error - - propagatedBuildInputs = [ iowait psutil pyzmq tornado ]; - - meta = with stdenv.lib; { - description = "A process and socket manager"; - homepage = "https://github.circus.com/circus-tent/circus"; - license = licenses.asl20; - }; -} diff --git a/pkgs/tools/networking/circus/default.nix b/pkgs/tools/networking/circus/default.nix new file mode 100644 index 000000000000..10edc92a9951 --- /dev/null +++ b/pkgs/tools/networking/circus/default.nix @@ -0,0 +1,33 @@ +{ stdenv, python3Packages }: + +let + inherit (python3Packages) buildPythonApplication fetchPypi iowait psutil pyzmq tornado_4 mock; +in + +buildPythonApplication rec { + pname = "circus"; + version = "0.15.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "d1603cf4c4f620ce6593d3d2a67fad25bf0242183ea24110d8bb1c8079c55d1b"; + }; + + postPatch = '' + # relax version restrictions to fix build + substituteInPlace setup.py \ + --replace "pyzmq>=13.1.0,<17.0" "pyzmq>13.1.0" + ''; + + checkInputs = [ mock ]; + + doCheck = false; # weird error + + propagatedBuildInputs = [ iowait psutil pyzmq tornado_4 ]; + + meta = with stdenv.lib; { + description = "A process and socket manager"; + homepage = "https://github.circus.com/circus-tent/circus"; + license = licenses.asl20; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c17dca4db3f6..5b1672b41b6d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2311,6 +2311,8 @@ in buildGoModule = buildGo112Module; }; + circus = callPackage ../tools/networking/circus { }; + # Cleanup before 20.03: citrix_receiver = throw "citrix_receiver has been discontinued by Citrix (https://docs.citrix.com/en-us/citrix-workspace-app.html). Please use citrix_workspace."; citrix_receiver_13_10_0 = citrix_receiver; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f9df5646d8eb..b507137649da 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1643,8 +1643,6 @@ in { cmarkgfm = callPackage ../development/python-modules/cmarkgfm { }; - circus = callPackage ../development/python-modules/circus {}; - colorcet = callPackage ../development/python-modules/colorcet { }; coloredlogs = callPackage ../development/python-modules/coloredlogs { }; -- cgit 1.4.1 From ceb648f66a1ddd27da9319fd0d78e1bd422ac10c Mon Sep 17 00:00:00 2001 From: Renaud Date: Mon, 11 Nov 2019 14:14:24 +0100 Subject: fierce: 1.3.0 -> 1.4.0 (#73129) --- pkgs/tools/security/fierce/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/security/fierce/default.nix b/pkgs/tools/security/fierce/default.nix index 809d8e29ea35..5d12a0008158 100644 --- a/pkgs/tools/security/fierce/default.nix +++ b/pkgs/tools/security/fierce/default.nix @@ -2,13 +2,13 @@ python3.pkgs.buildPythonApplication rec { pname = "fierce"; - version = "1.3.0"; + version = "1.4.0"; src = fetchFromGitHub { owner = "mschwager"; repo = pname; rev = version; - sha256 = "0cdp9rpabazyfnks30rsf3qfdi40z1bkspxk4ds9bm82kpq33jxy"; + sha256 = "11yaz8ap9swx95j3wpqh0b6jhw6spqgfnsyn1liw9zqi4jwgiax7"; }; propagatedBuildInputs = [ python3.pkgs.dns ]; -- cgit 1.4.1 From 776d4c13acdaacc8e5497addf1ade153604a69c6 Mon Sep 17 00:00:00 2001 From: Aldwin Vlasblom Date: Sun, 3 Nov 2019 21:07:46 +0100 Subject: twa: 1.8.0 -> 1.9.1 This commit updates twa from version 1.8.0 to version 1.9.1, specifying its new 'jq' dependency. It also moves 'makeWrapper' from the build inputs to the native build inputs, as it's not necessary during runtime. --- pkgs/tools/networking/twa/default.nix | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/networking/twa/default.nix b/pkgs/tools/networking/twa/default.nix index fe75b35eea2b..b15b6dcba31e 100644 --- a/pkgs/tools/networking/twa/default.nix +++ b/pkgs/tools/networking/twa/default.nix @@ -4,6 +4,7 @@ , fetchFromGitHub , gawk , host +, jq , lib , makeWrapper , ncurses @@ -12,18 +13,25 @@ stdenv.mkDerivation rec { pname = "twa"; - version = "1.8.0"; + version = "1.9.1"; src = fetchFromGitHub { owner = "trailofbits"; repo = "twa"; rev = version; - sha256 = "1xq35xyz5536nwrwmlp1wqa7q9jgh90ly7vdy3a5rvxnksx0b2l5"; + sha256 = "1ab3bcyhfach9y15w8ffvqqan2qk8h62n6z8nqbgygi7n1mf6jzx"; }; dontBuild = true; - buildInputs = [ makeWrapper bash gawk curl netcat host.dnsutils ]; + nativeBuildInputs = [ makeWrapper ]; + + buildInputs = [ bash + curl + gawk + host.dnsutils + jq + netcat ]; installPhase = '' install -Dm 0755 twa "$out/bin/twa" @@ -32,7 +40,11 @@ stdenv.mkDerivation rec { install -Dm 0644 README.md "$out/share/doc/twa/README.md" wrapProgram "$out/bin/twa" \ - --prefix PATH : ${stdenv.lib.makeBinPath [ curl netcat ncurses host.dnsutils ]} + --prefix PATH : ${stdenv.lib.makeBinPath [ curl + host.dnsutils + jq + ncurses + netcat ]} ''; meta = with lib; { -- cgit 1.4.1 From 82dfacc7fedeadef2bc356b5a9d66a1fcee611eb Mon Sep 17 00:00:00 2001 From: Alex Guzman Date: Mon, 11 Nov 2019 10:43:14 -0800 Subject: trousers: 0.3.13 -> 0.3.14 * Update trousers to latest, use regular openssl (#68338) trousers: cleanup * some CFLAGS and LDFLAGS are not needed anymore * libtool file fixup was a no-op * license is now BSD-3 since: https://sourceforge.net/p/trousers/trousers/ci/0160d229f8fbab7c6900662155f42050e3d563a0/ --- pkgs/tools/security/trousers/default.nix | 19 +++++++------------ pkgs/top-level/all-packages.nix | 4 +--- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/pkgs/tools/security/trousers/default.nix b/pkgs/tools/security/trousers/default.nix index 6f7fed20c89d..a38c011d7a49 100644 --- a/pkgs/tools/security/trousers/default.nix +++ b/pkgs/tools/security/trousers/default.nix @@ -2,13 +2,15 @@ stdenv.mkDerivation rec { pname = "trousers"; - version = "0.3.13"; + version = "0.3.14"; src = fetchurl { url = "mirror://sourceforge/trousers/trousers/${version}/${pname}-${version}.tar.gz"; - sha256 = "1lvnla1c1ig2w3xvvrqg2w9qm7a1ygzy1j2gg8j7p8c87i58x45v"; + sha256 = "0iwgsbrbb7nfqgl61x8aailwxm8akxh9gkcwxhsvf50x4qx72l6f"; }; + sourceRoot = "."; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ openssl ]; @@ -16,21 +18,14 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-usercheck" ]; - # Attempt to remove -std=gnu89 when updating if using gcc5 - NIX_CFLAGS_COMPILE = "-std=gnu89 -DALLOW_NON_TSS_CONFIG_FILE"; - NIX_LDFLAGS = "-lgcc_s"; - - # Fix broken libtool file - preFixup = stdenv.lib.optionalString (!stdenv.isDarwin) '' - sed 's,-lcrypto,-L${openssl.out}/lib -lcrypto,' -i $out/lib/libtspi.la - ''; + NIX_CFLAGS_COMPILE = [ "-DALLOW_NON_TSS_CONFIG_FILE" ]; + enableParallelBuilding = true; meta = with stdenv.lib; { description = "Trusted computing software stack"; homepage = http://trousers.sourceforge.net/; - license = licenses.cpl10; + license = licenses.bsd3; maintainers = [ maintainers.ak ]; platforms = platforms.linux; }; } - diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5b1672b41b6d..17bb758bed8a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6759,9 +6759,7 @@ in trilium = callPackage ../applications/office/trilium { }; - trousers = callPackage ../tools/security/trousers { - openssl = openssl_1_0_2; - }; + trousers = callPackage ../tools/security/trousers { }; trx = callPackage ../tools/audio/trx { }; -- cgit 1.4.1 From 3fe11d11805accab27d9c90183dd76559a5edc47 Mon Sep 17 00:00:00 2001 From: Oleksii Filonenko Date: Mon, 11 Nov 2019 21:04:14 +0200 Subject: licensor: init at 2.0.0 --- pkgs/tools/misc/licensor/default.nix | 23 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/tools/misc/licensor/default.nix diff --git a/pkgs/tools/misc/licensor/default.nix b/pkgs/tools/misc/licensor/default.nix new file mode 100644 index 000000000000..99d9fc72681e --- /dev/null +++ b/pkgs/tools/misc/licensor/default.nix @@ -0,0 +1,23 @@ +{ lib, rustPlatform, fetchFromGitHub }: + +rustPlatform.buildRustPackage rec { + pname = "licensor"; + version = "2.0.0"; + + src = fetchFromGitHub { + owner = "raftario"; + repo = pname; + rev = "v${version}"; + sha256 = "0bb6q3jpzdygjcs3apl38zzmgkn22ya5wxlqgmlp0cybqbhpi20s"; + }; + + cargoSha256 = "1cvwyj2043vi5905n5126ikwbs3flfgzqkzjnzha0h8in8p3skv1"; + + meta = with lib; { + description = "Write licenses to stdout"; + homepage = "https://github.com/raftario/licensor"; + license = licenses.mit; + maintainers = with maintainers; [ filalex77 ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2fffb4c639ed..e87a8ad25b4d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4388,6 +4388,8 @@ in libsmi = callPackage ../development/libraries/libsmi { }; + licensor = callPackage ../tools/misc/licensor { }; + lesspipe = callPackage ../tools/misc/lesspipe { }; liquidsoap = callPackage ../tools/audio/liquidsoap/full.nix { -- cgit 1.4.1 From 150f62b92364865d51bff1144ed289d6a25cfbb5 Mon Sep 17 00:00:00 2001 From: Sondre Nilsen Date: Tue, 22 Oct 2019 20:31:15 +0200 Subject: pythonPackage.jsonlines: init at 1.2.0 --- .../python-modules/jsonlines/default.nix | 28 ++++++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/development/python-modules/jsonlines/default.nix diff --git a/pkgs/development/python-modules/jsonlines/default.nix b/pkgs/development/python-modules/jsonlines/default.nix new file mode 100644 index 000000000000..eec4c6b38469 --- /dev/null +++ b/pkgs/development/python-modules/jsonlines/default.nix @@ -0,0 +1,28 @@ +{ lib, fetchFromGitHub, buildPythonPackage, six +, flake8, pep8-naming, pytest, pytestcov, pytestpep8 }: + +buildPythonPackage rec { + pname = "jsonlines"; + version = "1.2.0"; + + src = fetchFromGitHub { + owner = "wbolster"; + repo = pname; + rev = version; + sha256 = "1f8zsqy8p9a41gqg2a5x7sppc5qhhq7gw58id2aigb270yxzs7jw"; + }; + + propagatedBuildInputs = [ six ]; + + checkInputs = [ flake8 pep8-naming pytest pytestcov pytestpep8 ]; + checkPhase = '' + pytest + ''; + + meta = with lib; { + description = "Python library to simplify working with jsonlines and ndjson data"; + homepage = https://github.com/wbolster/jsonlines; + maintainers = with maintainers; [ sondr3 ]; + license = licenses.bsd3; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b507137649da..557bb919a49c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1962,6 +1962,8 @@ in { impacket = callPackage ../development/python-modules/impacket { }; + jsonlines = callPackage ../development/python-modules/jsonlines { }; + jsonrpc-async = callPackage ../development/python-modules/jsonrpc-async { }; jsonrpc-base = callPackage ../development/python-modules/jsonrpc-base { }; -- cgit 1.4.1 From b35e68d77d2cdf211b245660ba5f4c4fdd1d9e51 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Mon, 11 Nov 2019 21:44:31 +0100 Subject: calls: fix build --- pkgs/applications/networking/calls/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/networking/calls/default.nix b/pkgs/applications/networking/calls/default.nix index 63caf836ad9e..9a8b9316c5d6 100644 --- a/pkgs/applications/networking/calls/default.nix +++ b/pkgs/applications/networking/calls/default.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { src = fetchFromGitLab { domain = "source.puri.sm"; owner = "Librem5"; - repo = pname; + repo = "calls"; rev = "4b4cfa04266ebbe2f3da5abd9624ea07aa159fea"; sha256 = "0qvnddjpkh6gsywzdi24lmjlbwi0q54m1xa6hiaf1ch1j7kcv8fr"; }; -- cgit 1.4.1 From 053168d47004e9a29d4c3fbb6b905a320a0edb1b Mon Sep 17 00:00:00 2001 From: isgy Date: Sun, 10 Nov 2019 09:33:51 +0000 Subject: maintainers: add isgy maintainers: fixed typo --- maintainers/maintainer-list.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index ec21dd9fafb3..5b7eec82c7a1 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2884,6 +2884,15 @@ githubId = 137306; name = "Michele Catalano"; }; + isgy = { + email = "isgy@teiyg.com"; + github = "isgy"; + githubId = 13622947; + keys = [{ + longkeyid = "rsa4096/0xD3E1B013B4631293"; + fingerprint = "1412 816B A9FA F62F D051 1975 D3E1 B013 B463 1293"; + }]; + }; ivan = { email = "ivan@ludios.org"; github = "ivan"; -- cgit 1.4.1 From 3be103989c26379c12c3545ba0e090ce65ea8769 Mon Sep 17 00:00:00 2001 From: isgy Date: Sun, 10 Nov 2019 09:47:40 +0000 Subject: python3Packages.pyjson5: init at 0.8.5 --- .../development/python-modules/pyjson5/default.nix | 26 ++++++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/development/python-modules/pyjson5/default.nix diff --git a/pkgs/development/python-modules/pyjson5/default.nix b/pkgs/development/python-modules/pyjson5/default.nix new file mode 100644 index 000000000000..232bafd3ba7e --- /dev/null +++ b/pkgs/development/python-modules/pyjson5/default.nix @@ -0,0 +1,26 @@ +{ buildPythonPackage, lib, nose, fetchFromGitHub }: + +buildPythonPackage rec { + pname = "pyjson5"; + version = "0.8.5"; + + src = fetchFromGitHub { + owner = "dpranke"; + repo = pname; + rev = "v${version}"; + sha256 = "0nyngj18jlkgvm1177lc3cj47wm4yh3dqigygvcvw7xkyryafsqn"; + }; + + doCheck = true; + checkInputs = [ nose ]; + checkPhase = '' + nosetests + ''; + + meta = with lib; { + description = "Python implementation of the JSON5 data format"; + license = licenses.asl20; + homepage = "https://github.com/dpranke/pyjson5"; + maintainers = with maintainers; [ isgy ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 557bb919a49c..30efca26ee5d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4690,6 +4690,8 @@ in { pyhocon = callPackage ../development/python-modules/pyhocon { }; + pyjson5 = callPackage ../development/python-modules/pyjson5 {}; + pymaging = callPackage ../development/python-modules/pymaging { }; pymaging_png = callPackage ../development/python-modules/pymaging_png { }; -- cgit 1.4.1 From da006ed9370009b8b531cf4f961048f37ad48300 Mon Sep 17 00:00:00 2001 From: isgy Date: Sun, 10 Nov 2019 09:49:27 +0000 Subject: python3Packages.jupyterlab_server: added pyjson5 dependency --- pkgs/development/python-modules/jupyterlab_server/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/jupyterlab_server/default.nix b/pkgs/development/python-modules/jupyterlab_server/default.nix index 6d0da2925cc2..edfe01728a49 100644 --- a/pkgs/development/python-modules/jupyterlab_server/default.nix +++ b/pkgs/development/python-modules/jupyterlab_server/default.nix @@ -6,6 +6,7 @@ , pythonOlder , requests , pytest +, pyjson5 }: buildPythonPackage rec { @@ -19,7 +20,7 @@ buildPythonPackage rec { }; checkInputs = [ requests pytest ]; - propagatedBuildInputs = [ notebook jsonschema ]; + propagatedBuildInputs = [ notebook jsonschema pyjson5 ]; # test_listing test fails # this is a new package and not all tests pass -- cgit 1.4.1 From 781d85c69abf78740dd980f98e084a8a9d74f04b Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sat, 9 Nov 2019 23:32:56 +0100 Subject: rocksdb: enable USE_RTTI=1 This is required for programs using rocksdb and and typeinfo. Otherwise, linking them fails with errors like this (that's ceph): /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(RocksDBStore.cc.o):(.data.rel.ro._ZTIN12RocksDBStore14RocksWBHandlerE[_ZTIN12RocksDBStore14RocksWBHandlerE]+0x10): undefined reference to `typeinfo for rocksdb::WriteBatch::Handler' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(RocksDBStore.cc.o):(.data.rel.ro._ZTIN12RocksDBStore19MergeOperatorRouterE[_ZTIN12RocksDBStore19MergeOperatorRouterE]+0x10): undefined reference to `typeinfo for rocksdb::AssociativeMergeOperator' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(RocksDBStore.cc.o):(.data.rel.ro._ZTIN12RocksDBStore19MergeOperatorLinkerE[_ZTIN12RocksDBStore19MergeOperatorLinkerE]+0x10): undefined reference to `typeinfo for rocksdb::AssociativeMergeOperator' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(RocksDBStore.cc.o):(.data.rel.ro._ZTI17CephRocksdbLogger[_ZTI17CephRocksdbLogger]+0x10): undefined reference to `typeinfo for rocksdb::Logger' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(BlueRocksEnv.cc.o):(.data.rel.ro._ZTI12BlueRocksEnv[_ZTI12BlueRocksEnv]+0x10): undefined reference to `typeinfo for rocksdb::EnvWrapper' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(BlueRocksEnv.cc.o):(.data.rel.ro._ZTI23BlueRocksSequentialFile[_ZTI23BlueRocksSequentialFile]+0x10): undefined reference to `typeinfo for rocksdb::SequentialFile' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(BlueRocksEnv.cc.o):(.data.rel.ro._ZTI25BlueRocksRandomAccessFile[_ZTI25BlueRocksRandomAccessFile]+0x10): undefined reference to `typeinfo for rocksdb::RandomAccessFile' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(BlueRocksEnv.cc.o):(.data.rel.ro._ZTI21BlueRocksWritableFile[_ZTI21BlueRocksWritableFile]+0x10): undefined reference to `typeinfo for rocksdb::WritableFile' /nix/store/cg0k49h66nkdqx6ccwnqr0i4q0fnfznc-binutils-2.31.1/bin/ld: ../../lib/libos.a(BlueRocksEnv.cc.o):(.data.rel.ro._ZTI17BlueRocksFileLock[_ZTI17BlueRocksFileLock]+0x10): undefined reference to `typeinfo for rocksdb::FileLock' --- pkgs/development/libraries/rocksdb/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix index d2ea22b85a1a..2bb56bec8c0a 100644 --- a/pkgs/development/libraries/rocksdb/default.nix +++ b/pkgs/development/libraries/rocksdb/default.nix @@ -30,6 +30,7 @@ stdenv.mkDerivation rec { "-DWITH_ZLIB=1" "-DWITH_ZSTD=1" "-DWITH_GFLAGS=0" + "-DUSE_RTTI=1" (lib.optional (stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux") -- cgit 1.4.1 From 05590b3efdc9884de47faaac8db3711103386705 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Mon, 11 Nov 2019 00:24:27 +0100 Subject: ceph: fix build and cleanup expression correct platforms. ceph currently doesn't build on aarch64-linux. So let's not lie in meta.platforms. ceph: fix multiple output We currently just move $out/share/ceph/mgr to $lib/lib/ceph, and then remove all references to $out with a find command. I checked $out, the only reference to $out is in $lib/lib/ceph/libceph-common.so.0, coming from src/common/options.cc: https://github.com/ceph/ceph/blob/master/src/common/options.cc#L5050: > Option("mgr_module_path", Option::TYPE_STR, Option::LEVEL_ADVANCED) > .set_default(CEPH_DATADIR "/mgr") > .add_service("mgr") > .set_description("Filesystem path to manager modules."), Just removing the reference might break some behaviour - it should point to $lib/ceph/mgr instead. We can fix this in a much more elegant fashion by just passing a custom CMAKE_INSTALL_DATADIR to the build system. ceph: fix outdated Boost::python substitutions Instead of substituting in CMakeLists.txt files, one now needs to set MGR_PYTHON_VERSION. ceph: clean up PYTHONPATH wrapping Set `pythonPath` instead of exporting PYTHONPATH. Use `toPythonPath` to construct the PYTHONPATH where we need manual wrapping. There's no ceph-volume, only ceph-mgr. ceph: set doCheck = false explicitly and describe why. ceph: patch more shebangs ceph: use system-provided gtest and rocksdb --- pkgs/tools/filesystems/ceph/default.nix | 35 ++++++++++++++++----------------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix index 141d21951a88..3066be27772e 100644 --- a/pkgs/tools/filesystems/ceph/default.nix +++ b/pkgs/tools/filesystems/ceph/default.nix @@ -6,9 +6,10 @@ , libxml2, zlib, lz4 , openldap, lttng-ust , babeltrace, gperf +, gtest , cunit, snappy , rocksdb, makeWrapper -, leveldb, oathToolkit, removeReferencesTo +, leveldb, oathToolkit # Optional Dependencies , yasm ? null, fcgi ? null, expat ? null @@ -108,14 +109,14 @@ in rec { nativeBuildInputs = [ cmake pkgconfig which git python3Packages.wrapPython makeWrapper + python3Packages.python # for the toPythonPath function (ensureNewerSourcesHook { year = "1980"; }) ]; buildInputs = cryptoLibsMap.${cryptoStr} ++ [ boost ceph-python-env libxml2 optYasm optLibatomic_ops optLibs3 - malloc zlib openldap lttng-ust babeltrace gperf cunit + malloc zlib openldap lttng-ust babeltrace gperf gtest cunit snappy rocksdb lz4 oathToolkit leveldb - removeReferencesTo ] ++ optionals stdenv.isLinux [ linuxHeaders utillinux libuuid udev keyutils optLibaio optLibxfs optZfs # ceph 14 @@ -124,54 +125,52 @@ in rec { optFcgi optExpat optCurl optFuse optLibedit ]; + pythonPath = [ ceph-python-env "${placeholder "out"}/${ceph-python-env.sitePackages}" ]; + preConfigure ='' substituteInPlace src/common/module.c --replace "/sbin/modinfo" "modinfo" substituteInPlace src/common/module.c --replace "/sbin/modprobe" "modprobe" - # Since Boost 1.67 this seems to have changed - substituteInPlace CMakeLists.txt --replace "list(APPEND BOOST_COMPONENTS python)" "list(APPEND BOOST_COMPONENTS python37)" - substituteInPlace src/CMakeLists.txt --replace "Boost::python " "Boost::python37 " # for pybind/rgw to find internal dep export LD_LIBRARY_PATH="$PWD/build/lib:$LD_LIBRARY_PATH" # install target needs to be in PYTHONPATH for "*.pth support" check to succeed - export PYTHONPATH=${ceph-python-env}/lib/python3.7/site-packages:$lib/lib/python3.7/site-packages/:$out/lib/python3.7/site-packages/ - patchShebangs src/spdk + patchShebangs src/script src/spdk src/test src/tools ''; cmakeFlags = [ "-DWITH_PYTHON3=ON" "-DWITH_SYSTEM_ROCKSDB=OFF" + "-DCMAKE_INSTALL_DATADIR=${placeholder "lib"}/lib" + "-DWITH_SYSTEM_BOOST=ON" + "-DWITH_SYSTEM_ROCKSDB=ON" + "-DWITH_SYSTEM_GTEST=ON" + "-DMGR_PYTHON_VERSION=${ceph-python-env.python.pythonVersion}" "-DWITH_SYSTEMD=OFF" "-DWITH_TESTS=OFF" # TODO breaks with sandbox, tries to download stuff with npm "-DWITH_MGR_DASHBOARD_FRONTEND=OFF" ]; - preFixup = '' - find $lib -type f -exec remove-references-to -t $out '{}' + - mv $out/share/ceph/mgr $lib/lib/ceph/ - ''; - postFixup = '' - export PYTHONPATH="${ceph-python-env}/lib/python3.7/site-packages:$lib/lib/ceph/mgr:$out/lib/python3.7/site-packages/" wrapPythonPrograms - wrapProgram $out/bin/ceph-mgr --prefix PYTHONPATH ":" "${ceph-python-env}/lib/python3.7/site-packages:$lib/lib/ceph/mgr:$out/lib/python3.7/site-packages/" - wrapProgram $out/bin/ceph-volume --prefix PYTHONPATH ":" "${ceph-python-env}/lib/python3.7/site-packages:$lib/lib/ceph/mgr:$out/lib/python3.7/site-packages/" + wrapProgram $out/bin/ceph-mgr --prefix PYTHONPATH ":" "$(toPythonPath ${placeholder "out"}):$(toPythonPath ${ceph-python-env})" ''; enableParallelBuilding = true; outputs = [ "out" "lib" "dev" "doc" "man" ]; + doCheck = false; # uses pip to install things from the internet + meta = { homepage = https://ceph.com/; description = "Distributed storage system"; license = with licenses; [ lgpl21 gpl2 bsd3 mit publicDomain ]; maintainers = with maintainers; [ adev ak krav johanot ]; - platforms = platforms.unix; + platforms = [ "x86_64-linux" ]; }; passthru.version = version; @@ -183,7 +182,7 @@ in rec { description = "Tools needed to mount Ceph's RADOS Block Devices"; license = with licenses; [ lgpl21 gpl2 bsd3 mit publicDomain ]; maintainers = with maintainers; [ adev ak johanot krav ]; - platforms = platforms.unix; + platforms = [ "x86_64-linux" ]; }; } '' mkdir -p $out/{bin,etc,lib/python3.7/site-packages} -- cgit 1.4.1 From 0dfbff1d4629d51f5d7bcc1ce7517df596fa150a Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Wed, 6 Nov 2019 13:27:15 -0800 Subject: python3Packages.google_cloud_vision: fix tests --- pkgs/development/python-modules/google_cloud_vision/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/google_cloud_vision/default.nix b/pkgs/development/python-modules/google_cloud_vision/default.nix index a8d748db126d..10c8792b9c86 100644 --- a/pkgs/development/python-modules/google_cloud_vision/default.nix +++ b/pkgs/development/python-modules/google_cloud_vision/default.nix @@ -3,7 +3,6 @@ , fetchPypi , enum34 , google_api_core -, pytest , mock }: @@ -16,11 +15,13 @@ buildPythonPackage rec { sha256 = "f33aea6721d453901ded268dee61a01ab77d4cd215a76edc3cc61b6028299d3e"; }; - checkInputs = [ pytest mock ]; + checkInputs = [ mock ]; propagatedBuildInputs = [ enum34 google_api_core ]; + # pytest seems to pick up some file which overrides PYTHONPATH checkPhase = '' - pytest tests/unit + cd tests/unit + python -m unittest discover ''; meta = with stdenv.lib; { -- cgit 1.4.1 From e9453fc87841ef6698f3344ac435fc9143c6ebc3 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Sat, 9 Nov 2019 10:37:16 -0800 Subject: python3Packages.datasette: 0.29.3 -> 0.30.2 --- pkgs/development/python-modules/datasette/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/datasette/default.nix b/pkgs/development/python-modules/datasette/default.nix index 828976f0e9fb..7210aa6b1e31 100644 --- a/pkgs/development/python-modules/datasette/default.nix +++ b/pkgs/development/python-modules/datasette/default.nix @@ -20,16 +20,16 @@ buildPythonPackage rec { pname = "datasette"; - version = "0.29.3"; + version = "0.30.2"; src = fetchFromGitHub { owner = "simonw"; repo = "datasette"; rev = version; - sha256 = "0cib7pd4z240ncck0pskzvizblhwkr42fsjpd719wdxy4scs7yqa"; + sha256 = "07swnpz4c7vzlc69vavs1xvbhr5fa8g63kyfj1hf3zafskgjnzwy"; }; - buildInputs = [ pytestrunner ]; + nativeBuildInputs = [ pytestrunner ]; propagatedBuildInputs = [ click @@ -57,15 +57,19 @@ buildPythonPackage rec { --replace "Sanic==0.7.0" "Sanic" \ --replace "hupper==1.0" "hupper" \ --replace "pint~=0.8.1" "pint" \ + --replace "pluggy~=0.12.0" "pint" \ --replace "Jinja2==2.10.1" "Jinja2" \ --replace "uvicorn~=0.8.4" "uvicorn" ''; # many tests require network access + # test_black fails on darwin checkPhase = '' pytest --ignore tests/test_api.py \ --ignore tests/test_csv.py \ - --ignore tests/test_html.py + --ignore tests/test_html.py \ + --ignore tests/test_black.py \ + -k 'not facet' ''; meta = with lib; { -- cgit 1.4.1 From 920faee436dc7fae1cf1f32a02683dd0faeb3bcc Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Wed, 6 Nov 2019 11:28:15 -0800 Subject: pythonPackages.wurlitzer: add missing python2 dependencies --- pkgs/development/python-modules/wurlitzer/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/wurlitzer/default.nix b/pkgs/development/python-modules/wurlitzer/default.nix index 8a4d96515d7c..b946d23acf60 100644 --- a/pkgs/development/python-modules/wurlitzer/default.nix +++ b/pkgs/development/python-modules/wurlitzer/default.nix @@ -1,8 +1,10 @@ { lib , buildPythonPackage , fetchPypi +, isPy27 , mock , pytest +, selectors2 }: buildPythonPackage rec { @@ -14,6 +16,8 @@ buildPythonPackage rec { sha256 = "0xndv47iwc9k8cp5r9r1z3r0xww0r5x5b7qsmn39gk2gsg0119c6"; }; + propagatedBuildInputs = lib.optionals isPy27 [ selectors2 ]; + checkInputs = [ mock pytest ]; checkPhase = '' @@ -25,4 +29,4 @@ buildPythonPackage rec { homepage = https://github.com/minrk/wurlitzer; license = lib.licenses.mit; }; -} \ No newline at end of file +} -- cgit 1.4.1 From 9fe897c1ece8710f18b434c4c50a2282243304fc Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Mon, 11 Nov 2019 22:23:01 +0100 Subject: calls: 2019-10-09 → 2019-10-29 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkgs/applications/networking/calls/default.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/networking/calls/default.nix b/pkgs/applications/networking/calls/default.nix index 9a8b9316c5d6..065f264f1529 100644 --- a/pkgs/applications/networking/calls/default.nix +++ b/pkgs/applications/networking/calls/default.nix @@ -9,24 +9,26 @@ , gom , gsound , evolution-data-server +, folks , desktop-file-utils , libpeas , dbus +, vala , xorg , xvfb_run , libxml2 }: stdenv.mkDerivation rec { - pname = "calls-unstable"; - version = "2019-10-09"; + pname = "calls"; + version = "unstable-2019-10-29"; src = fetchFromGitLab { domain = "source.puri.sm"; owner = "Librem5"; repo = "calls"; - rev = "4b4cfa04266ebbe2f3da5abd9624ea07aa159fea"; - sha256 = "0qvnddjpkh6gsywzdi24lmjlbwi0q54m1xa6hiaf1ch1j7kcv8fr"; + rev = "9fe575053d8f01c3a76a6c20d39f0816166d5afd"; + sha256 = "01inx4mvrzvklwrfryw5hw9p89v8cn78m3qmv97g7a3v0h5c0n35"; }; nativeBuildInputs = [ @@ -34,27 +36,29 @@ stdenv.mkDerivation rec { ninja pkgconfig desktop-file-utils + vala ]; buildInputs = [ modemmanager libhandy evolution-data-server + folks gom gsound gtk3 libhandy libpeas - libxml2 ]; checkInputs = [ dbus xvfb_run - xorg.xauth ]; mesonFlags = [ + # docs fail to build + # https://source.puri.sm/Librem5/calls/issues/99 "-Dgtk_doc=false" ]; -- cgit 1.4.1