From 557e8963e8c7970e280bfbaa9d7e8cae79f98420 Mon Sep 17 00:00:00 2001 From: Rocky Breslow <1774125+rbreslow@users.noreply.github.com> Date: Wed, 23 Mar 2022 10:40:27 -0400 Subject: [PATCH 01/12] maintainers: add rbreslow --- maintainers/maintainer-list.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 4a66ffa1eaf..5e75f9d6b44 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -10283,6 +10283,16 @@ githubId = 16487165; name = "Rafael Basso"; }; + rbreslow = { + name = "Rocky Breslow"; + email = "1774125+rbreslow@users.noreply.github.com"; + github = "rbreslow"; + githubId = 1774125; + keys = [{ + longkeyid = "ed25519/0xA0D32ACCA38B88ED"; + fingerprint = "B5B7 BCA0 EE6F F31E 263A 69E3 A0D3 2ACC A38B 88ED"; + }]; + }; rbrewer = { email = "rwb123@gmail.com"; github = "rbrewer123"; From cb1c5dbb15f1c2f0802007c7ac661d371d00babf Mon Sep 17 00:00:00 2001 From: Roland Synnestvedt Date: Sat, 26 Mar 2022 17:53:26 -0700 Subject: [PATCH 02/12] nixos/unifi-video: convert int to string in default command --- nixos/modules/services/video/unifi-video.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/video/unifi-video.nix b/nixos/modules/services/video/unifi-video.nix index 43208a9fe4c..366a7111fde 100644 --- a/nixos/modules/services/video/unifi-video.nix +++ b/nixos/modules/services/video/unifi-video.nix @@ -16,7 +16,7 @@ let -pidfile ${cfg.pidFile} \ -procname unifi-video \ -Djava.security.egd=file:/dev/./urandom \ - -Xmx${cfg.maximumJavaHeapSize}M \ + -Xmx${toString cfg.maximumJavaHeapSize}M \ -Xss512K \ -XX:+UseG1GC \ -XX:+UseStringDeduplication \ From 95a3f6ad266c1a340630bbdb4787e202bf9bd883 Mon Sep 17 00:00:00 2001 From: Roland Synnestvedt Date: Sat, 26 Mar 2022 17:59:54 -0700 Subject: [PATCH 03/12] nixos/unifi-video: rename openPorts to openFirewall --- nixos/modules/services/video/unifi-video.nix | 24 +++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/nixos/modules/services/video/unifi-video.nix b/nixos/modules/services/video/unifi-video.nix index 366a7111fde..53acb9d79b9 100644 --- a/nixos/modules/services/video/unifi-video.nix +++ b/nixos/modules/services/video/unifi-video.nix @@ -145,13 +145,6 @@ in ''; }; - openPorts = mkOption { - type = types.bool; - default = true; - description = '' - Whether or not to open the required ports on the firewall. - ''; - }; maximumJavaHeapSize = mkOption { type = types.nullOr types.int; @@ -168,6 +161,13 @@ in defaultText = literalExpression ''"''${config.${opt.dataDir}}/unifi-video.pid"''; description = "Location of unifi-video pid file."; }; + openFirewall = mkOption { + type = types.bool; + default = true; + description = '' + Whether or not to open the required ports on the firewall. + ''; + }; }; @@ -182,7 +182,7 @@ config = mkIf cfg.enable { groups.unifi-video = {}; }; - networking.firewall = mkIf cfg.openPorts { + networking.firewall = mkIf cfg.openFirewall { # https://help.ui.com/hc/en-us/articles/217875218-UniFi-Video-Ports-Used allowedTCPPorts = [ 7080 # HTTP portal @@ -261,7 +261,9 @@ config = mkIf cfg.enable { }; - meta = { - maintainers = with lib.maintainers; [ rsynnest ]; - }; + imports = [ + (mkRenamedOptionModule [ "services" "unifi-video" "openPorts" ] [ "services" "unifi-video" "openFirewall" ]) + ]; + + meta.maintainers = with lib.maintainers; [ rsynnest ]; } From 60e62c36df25e882d73881a627b8cd6816340bee Mon Sep 17 00:00:00 2001 From: Roland Synnestvedt Date: Sun, 27 Mar 2022 13:39:19 -0700 Subject: [PATCH 04/12] nixos/unifi-video: clean up indentation and formatting --- nixos/modules/services/video/unifi-video.nix | 138 +++++++++---------- 1 file changed, 68 insertions(+), 70 deletions(-) diff --git a/nixos/modules/services/video/unifi-video.nix b/nixos/modules/services/video/unifi-video.nix index 53acb9d79b9..7456736c8b2 100644 --- a/nixos/modules/services/video/unifi-video.nix +++ b/nixos/modules/services/video/unifi-video.nix @@ -91,76 +91,61 @@ let stateDir = "/var/lib/unifi-video"; in - { +{ - options.services.unifi-video = { - enable = mkOption { - type = types.bool; - default = false; - description = '' - Whether or not to enable the unifi-video service. - ''; - }; + options.services.unifi-video = { - jrePackage = mkOption { - type = types.package; - default = pkgs.jre8; - defaultText = literalExpression "pkgs.jre8"; - description = '' - The JRE package to use. Check the release notes to ensure it is supported. - ''; - }; + enable = mkOption { + type = types.bool; + default = false; + description = '' + Whether or not to enable the unifi-video service. + ''; + }; - unifiVideoPackage = mkOption { - type = types.package; - default = pkgs.unifi-video; - defaultText = literalExpression "pkgs.unifi-video"; - description = '' - The unifi-video package to use. - ''; - }; + jrePackage = mkOption { + type = types.package; + default = pkgs.jre8; + defaultText = literalExpression "pkgs.jre8"; + description = '' + The JRE package to use. Check the release notes to ensure it is supported. + ''; + }; - mongodbPackage = mkOption { - type = types.package; - default = pkgs.mongodb-4_0; - defaultText = literalExpression "pkgs.mongodb"; - description = '' - The mongodb package to use. - ''; - }; + unifiVideoPackage = mkOption { + type = types.package; + default = pkgs.unifi-video; + defaultText = literalExpression "pkgs.unifi-video"; + description = '' + The unifi-video package to use. + ''; + }; - logDir = mkOption { - type = types.str; - default = "${stateDir}/logs"; - description = '' - Where to store the logs. - ''; - }; + mongodbPackage = mkOption { + type = types.package; + default = pkgs.mongodb-4_0; + defaultText = literalExpression "pkgs.mongodb"; + description = '' + The mongodb package to use. + ''; + }; - dataDir = mkOption { - type = types.str; - default = "${stateDir}/data"; - description = '' - Where to store the database and other data. - ''; - }; + logDir = mkOption { + type = types.str; + default = "${stateDir}/logs"; + description = '' + Where to store the logs. + ''; + }; + dataDir = mkOption { + type = types.str; + default = "${stateDir}/data"; + description = '' + Where to store the database and other data. + ''; + }; - maximumJavaHeapSize = mkOption { - type = types.nullOr types.int; - default = 1024; - example = 4096; - description = '' - Set the maximimum heap size for the JVM in MB. - ''; - }; - - pidFile = mkOption { - type = types.path; - default = "${cfg.dataDir}/unifi-video.pid"; - defaultText = literalExpression ''"''${config.${opt.dataDir}}/unifi-video.pid"''; - description = "Location of unifi-video pid file."; - }; openFirewall = mkOption { type = types.bool; default = true; @@ -169,18 +154,33 @@ in ''; }; -}; + maximumJavaHeapSize = mkOption { + type = types.nullOr types.int; + default = 1024; + example = 4096; + description = '' + Set the maximimum heap size for the JVM in MB. + ''; + }; -config = mkIf cfg.enable { - users = { - users.unifi-video = { + pidFile = mkOption { + type = types.path; + default = "${cfg.dataDir}/unifi-video.pid"; + defaultText = literalExpression ''"''${config.${opt.dataDir}}/unifi-video.pid"''; + description = "Location of unifi-video pid file."; + }; + + }; + + config = mkIf cfg.enable { + + users.users.unifi-video = { description = "UniFi Video controller daemon user"; home = stateDir; group = "unifi-video"; isSystemUser = true; }; - groups.unifi-video = {}; - }; + users.groups.unifi-video = {}; networking.firewall = mkIf cfg.openFirewall { # https://help.ui.com/hc/en-us/articles/217875218-UniFi-Video-Ports-Used @@ -237,7 +237,6 @@ config = mkIf cfg.enable { "L+ '${stateDir}/conf/server.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/server.xml" "L+ '${stateDir}/conf/tomcat-users.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/tomcat-users.xml" "L+ '${stateDir}/conf/web.xml' 0700 unifi-video unifi-video - ${pkgs.unifi-video}/lib/unifi-video/conf/web.xml" - ]; systemd.services.unifi-video = { @@ -258,7 +257,6 @@ config = mkIf cfg.enable { WorkingDirectory = "${stateDir}"; }; }; - }; imports = [ From c75a58bb927d010f90c66f54999d42e5a93c1f6c Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Mon, 28 Mar 2022 22:29:15 +0800 Subject: [PATCH 05/12] bless: fix build with meson 0.61 doc/user/meson.build:73:6: ERROR: Program 'itstool' not found or not executable --- pkgs/applications/editors/bless/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/editors/bless/default.nix b/pkgs/applications/editors/bless/default.nix index e613747aeab..c40a44bbb46 100644 --- a/pkgs/applications/editors/bless/default.nix +++ b/pkgs/applications/editors/bless/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchFromGitHub , pkg-config , mono @@ -12,6 +13,7 @@ , libxslt , docbook_xsl , python3 +, itstool }: stdenv.mkDerivation rec { @@ -47,6 +49,7 @@ stdenv.mkDerivation rec { libxslt docbook_xsl python3 + itstool ]; preFixup = '' From bcdb2fdee603dd13066f184b0fe6c2b744752428 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Mon, 28 Mar 2022 22:52:26 +0800 Subject: [PATCH 06/12] mate.mate-backgrounds: fix build with meson 0.61 abstract/meson.build:3:5: ERROR: Function does not take positional arguments. --- pkgs/desktops/mate/mate-backgrounds/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/desktops/mate/mate-backgrounds/default.nix b/pkgs/desktops/mate/mate-backgrounds/default.nix index 9384d49e2a3..3076a7170cb 100644 --- a/pkgs/desktops/mate/mate-backgrounds/default.nix +++ b/pkgs/desktops/mate/mate-backgrounds/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, meson, ninja, gettext, mateUpdateScript }: +{ lib, stdenv, fetchurl, fetchpatch, meson, ninja, gettext, mateUpdateScript }: stdenv.mkDerivation rec { pname = "mate-backgrounds"; @@ -9,6 +9,15 @@ stdenv.mkDerivation rec { sha256 = "0379hngy3ap1r5kmqvmzs9r710k2c9nal2ps3hq765df4ir15j8d"; }; + patches = [ + # Fix build with meson 0.61, can be removed on next update. + # https://github.com/mate-desktop/mate-backgrounds/pull/39 + (fetchpatch { + url = "https://github.com/mate-desktop/mate-backgrounds/commit/0096e237d420e6247a75a1c6940a818e309ac2a7.patch"; + sha256 = "HEF8VWunFO+NCG18fZA7lbE2l8pc6Z3jcD+rSZ1Jsqg="; + }) + ]; + nativeBuildInputs = [ gettext meson From 603e9d7b6483e43fd7d1742875d278bd7c3dff87 Mon Sep 17 00:00:00 2001 From: Rocky Breslow <1774125+rbreslow@users.noreply.github.com> Date: Wed, 23 Mar 2022 10:41:58 -0400 Subject: [PATCH 07/12] flywheel-cli: init at 16.2.0 --- .../science/biology/flywheel-cli/default.nix | 49 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 51 insertions(+) create mode 100644 pkgs/applications/science/biology/flywheel-cli/default.nix diff --git a/pkgs/applications/science/biology/flywheel-cli/default.nix b/pkgs/applications/science/biology/flywheel-cli/default.nix new file mode 100644 index 00000000000..7db8b006626 --- /dev/null +++ b/pkgs/applications/science/biology/flywheel-cli/default.nix @@ -0,0 +1,49 @@ +{ lib +, stdenv +, fetchurl +, unzip +}: + +let + inherit (stdenv.targetPlatform) system; + throwSystem = throw "Unsupported system: ${system}"; + + os = { + x86_64-darwin = "darwin"; + x86_64-linux = "linux"; + }.${system} or throwSystem; + + sha256 = { + x86_64-darwin = "sha256-OIyEu3Hsobui9s5+T9nC10SxMw0MhgmTA4SN9Ridyzo="; + x86_64-linux = "sha256-SxBjRd95hoh2zwX6IDnkZnTWVduQafPHvnWw8qTuM78="; + }.${system} or throwSystem; +in +stdenv.mkDerivation rec { + pname = "flywheel-cli"; + version = "16.2.0"; + + src = fetchurl { + url = "https://storage.googleapis.com/flywheel-dist/cli/${version}/fw-${os}_amd64-${version}.zip"; + inherit sha256; + }; + + nativeBuildInputs = [ unzip ]; + + unpackPhase = '' + unzip ${src} + ''; + + installPhase = '' + runHook preInstall + install -Dt $out/bin ./${os}_amd64/fw + runHook postInstall + ''; + + meta = with lib; { + description = "Library and command line interface for interacting with a Flywheel site"; + homepage = "https://gitlab.com/flywheel-io/public/python-cli"; + license = licenses.mit; + maintainers = with maintainers; [ rbreslow ]; + platforms = [ "x86_64-darwin" "x86_64-linux" ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a5ee3327e03..969317d33f9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -32209,6 +32209,8 @@ with pkgs; febio-studio = libsForQt5.callPackage ../applications/science/biology/febio-studio { }; + flywheel-cli = callPackage ../applications/science/biology/flywheel-cli { }; + hisat2 = callPackage ../applications/science/biology/hisat2 { }; htslib = callPackage ../development/libraries/science/biology/htslib { }; From 33b04f2a80aa6a4556a0cbc102f82c2b8d788fe0 Mon Sep 17 00:00:00 2001 From: Roland Synnestvedt Date: Mon, 28 Mar 2022 09:20:53 -0700 Subject: [PATCH 08/12] nixos/unifi-video: add deprecation warning for openFirewall --- .../doc/manual/from_md/release-notes/rl-2205.section.xml | 9 +++++++++ nixos/doc/manual/release-notes/rl-2205.section.md | 3 +++ nixos/modules/services/video/unifi-video.nix | 4 ++++ 3 files changed, 16 insertions(+) diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml index 66f2ac7ae26..bc37478ddbb 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml @@ -1210,6 +1210,15 @@ using this default will print a warning when rebuilt. + + + The services.unifi-video.openPorts option + default value of true is now deprecated and + will be changed to false in 22.11. + Configurations using this default will print a warning when + rebuilt. + + security.acme certificates will now diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md index 01893993955..288f6c045f5 100644 --- a/nixos/doc/manual/release-notes/rl-2205.section.md +++ b/nixos/doc/manual/release-notes/rl-2205.section.md @@ -454,6 +454,9 @@ In addition to numerous new and upgraded packages, this release has the followin - The `services.unifi.openPorts` option default value of `true` is now deprecated and will be changed to `false` in 22.11. Configurations using this default will print a warning when rebuilt. +- The `services.unifi-video.openPorts` option default value of `true` is now deprecated and will be changed to `false` in 22.11. + Configurations using this default will print a warning when rebuilt. + - `security.acme` certificates will now correctly check for CA revokation before reaching their minimum age. diff --git a/nixos/modules/services/video/unifi-video.nix b/nixos/modules/services/video/unifi-video.nix index 7456736c8b2..11d9fe30547 100644 --- a/nixos/modules/services/video/unifi-video.nix +++ b/nixos/modules/services/video/unifi-video.nix @@ -174,6 +174,10 @@ in config = mkIf cfg.enable { + warnings = optional + (options.services.unifi-video.openFirewall.highestPrio >= (mkOptionDefault null).priority) + "The current services.unifi-video.openFirewall = true default is deprecated and will change to false in 22.11. Set it explicitly to silence this warning."; + users.users.unifi-video = { description = "UniFi Video controller daemon user"; home = stateDir; From 0bc4ac64dbdd9549bde7245ed9e5e6a8e28b4ee8 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Tue, 29 Mar 2022 10:57:01 +0800 Subject: [PATCH 09/12] bless: disable tests via mesonFlags --- pkgs/applications/editors/bless/default.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/bless/default.nix b/pkgs/applications/editors/bless/default.nix index c40a44bbb46..f79d7279231 100644 --- a/pkgs/applications/editors/bless/default.nix +++ b/pkgs/applications/editors/bless/default.nix @@ -27,11 +27,6 @@ stdenv.mkDerivation rec { hash = "sha256-rS+vJX0y9v1TiPsRfABroHiTuENQKEOxNsyKwagRuHM="; }; - postPatch = '' - sed "s|get_option('tests')|false|g" -i meson.build - patchShebangs . - ''; - buildInputs = [ gtk-sharp-2_0 mono @@ -52,6 +47,14 @@ stdenv.mkDerivation rec { itstool ]; + mesonFlags = [ + "-Dtests=false" # requires NUnit + ]; + + postPatch = '' + patchShebangs . + ''; + preFixup = '' MPATH="${gtk-sharp-2_0}/lib/mono/gtk-sharp-2.0:${glib.out}/lib:${gtk2-x11}/lib:${gtk-sharp-2_0}/lib" wrapProgram $out/bin/bless --prefix MONO_PATH : "$MPATH" --prefix LD_LIBRARY_PATH : "$MPATH" --prefix PATH : ${lib.makeBinPath [ mono ]} From c01faddbd5881f6667703fa176baf5f8fe5c776e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 29 Mar 2022 12:27:06 +0200 Subject: [PATCH 10/12] kubecolor: fix --kubecolor-version, add SuperSandro2000 as maintainer --- pkgs/applications/networking/cluster/kubecolor/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/cluster/kubecolor/default.nix b/pkgs/applications/networking/cluster/kubecolor/default.nix index 8a3c2d12d1b..a295a48a192 100644 --- a/pkgs/applications/networking/cluster/kubecolor/default.nix +++ b/pkgs/applications/networking/cluster/kubecolor/default.nix @@ -13,11 +13,13 @@ buildGoModule rec { vendorSha256 = "sha256-C1K7iEugA4HBLthcOI7EZ6H4YHW6el8X6FjVN1BeJR0="; + ldflags = [ "-s" "-w" "-X main.Version=${version}" ]; + meta = with lib; { description = "Colorizes kubectl output"; homepage = "https://github.com/hidetatz/kubecolor"; changelog = "https://github.com/hidetatz/kubecolor/releases/tag/v${version}"; license = licenses.mit; - maintainers = [ maintainers.ivankovnatsky ]; + maintainers = with maintainers; [ ivankovnatsky SuperSandro2000 ]; }; } From 20a5de1e431d2ef4a4f0ccbeca0fb0f7b6c233a3 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 29 Mar 2022 10:51:50 +0000 Subject: [PATCH 11/12] python310Packages.scmrepo: 0.0.13 -> 0.0.14 --- pkgs/development/python-modules/scmrepo/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/scmrepo/default.nix b/pkgs/development/python-modules/scmrepo/default.nix index 90d435fc6c0..23ce846ecc5 100644 --- a/pkgs/development/python-modules/scmrepo/default.nix +++ b/pkgs/development/python-modules/scmrepo/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "scmrepo"; - version = "0.0.13"; + version = "0.0.14"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -23,7 +23,7 @@ buildPythonPackage rec { owner = "iterative"; repo = pname; rev = version; - hash = "sha256-VWdewy4sfnM5zwDmeL8PdNZINN07rBosg4+GOWkkhVE="; + hash = "sha256-/J8cCcGAWGrJmUvznOKXtNiHasdOJ3CzsGMeakgL0sY="; }; propagatedBuildInputs = [ From 13baee8253b0d6cf678691a0d75e44cd334e3b95 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Tue, 29 Mar 2022 10:37:31 +0200 Subject: [PATCH 12/12] terraform-providers.utils: init at 0.17.17 This provides the Cloud Posse Terraform Provider for various utilities (e.g. deep merging, stack configuration management). --- .../cluster/terraform-providers/providers.json | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index dfc96d2f692..56743624efa 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1141,6 +1141,15 @@ "vendorSha256": null, "version": "1.31.0" }, + "utils": { + "owner": "cloudposse", + "provider-source-address": "registry.terraform.io/cloudposse/utils", + "repo": "terraform-provider-utils", + "rev": "0.17.17", + "sha256": "sha256-QJtdCEw8bnVku4fqAX5MBU9tkPv5jwjra9lGPfUPGQw=", + "vendorSha256": "sha256-5EelFIfHVLRiRJig6EeJG6KGJuQ05LX3M5CNxUxQAas=", + "version": "0.17.17" + }, "vault": { "owner": "hashicorp", "provider-source-address": "registry.terraform.io/hashicorp/vault",