Merge master into staging-next

This commit is contained in:
github-actions[bot] 2022-04-11 18:01:19 +00:00 committed by GitHub
commit e7f42eb912
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
31 changed files with 637 additions and 163 deletions

View file

@ -381,6 +381,14 @@
cluster resource manager
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://nifi.apache.org">nifi</link>, an
easy to use, powerful, and reliable system to process and
distribute data. Available as
<link xlink:href="options.html#opt-services.nifi.enable">services.nifi</link>.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="sec-release-22.05-incompatibilities">

View file

@ -109,6 +109,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- [pacemaker](https://clusterlabs.org/pacemaker/) cluster resource manager
- [nifi](https://nifi.apache.org), an easy to use, powerful, and reliable system to process and distribute data. Available as [services.nifi](options.html#opt-services.nifi.enable).
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
## Backward Incompatibilities {#sec-release-22.05-incompatibilities}

View file

@ -1055,6 +1055,7 @@
./services/web-apps/netbox.nix
./services/web-apps/nextcloud.nix
./services/web-apps/nexus.nix
./services/web-apps/nifi.nix
./services/web-apps/node-red.nix
./services/web-apps/pict-rs.nix
./services/web-apps/peertube.nix

View file

@ -23,7 +23,6 @@ let
nixosRules = ''
# Miscellaneous devices.
KERNEL=="kvm", MODE="0666"
KERNEL=="kqemu", MODE="0666"
# Needed for gpm.
SUBSYSTEM=="input", KERNEL=="mice", TAG+="systemd"

View file

@ -0,0 +1,318 @@
{ lib, pkgs, config, options, ... }:
let
cfg = config.services.nifi;
opt = options.services.nifi;
env = {
NIFI_OVERRIDE_NIFIENV = "true";
NIFI_HOME = "/var/lib/nifi";
NIFI_PID_DIR = "/run/nifi";
NIFI_LOG_DIR = "/var/log/nifi";
};
envFile = pkgs.writeText "nifi.env" (lib.concatMapStrings (s: s + "\n") (
(lib.concatLists (lib.mapAttrsToList (name: value:
if value != null then [
"${name}=\"${toString value}\""
] else []
) env))));
nifiEnv = pkgs.writeShellScriptBin "nifi-env" ''
set -a
source "${envFile}"
eval -- "\$@"
'';
in {
options = {
services.nifi = {
enable = lib.mkEnableOption "Apache NiFi";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.nifi;
defaultText = lib.literalExpression "pkgs.nifi";
description = "Apache NiFi package to use.";
};
user = lib.mkOption {
type = lib.types.str;
default = "nifi";
description = "User account where Apache NiFi runs.";
};
group = lib.mkOption {
type = lib.types.str;
default = "nifi";
description = "Group account where Apache NiFi runs.";
};
enableHTTPS = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Enable HTTPS protocol. Don`t use in production.";
};
listenHost = lib.mkOption {
type = lib.types.str;
default = if cfg.enableHTTPS then "0.0.0.0" else "127.0.0.1";
defaultText = lib.literalExpression ''
if config.${opt.enableHTTPS}
then "0.0.0.0"
else "127.0.0.1"
'';
description = "Bind to an ip for Apache NiFi web-ui.";
};
listenPort = lib.mkOption {
type = lib.types.int;
default = if cfg.enableHTTPS then 8443 else 8080;
defaultText = lib.literalExpression ''
if config.${opt.enableHTTPS}
then "8443"
else "8000"
'';
description = "Bind to a port for Apache NiFi web-ui.";
};
proxyHost = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = if cfg.enableHTTPS then "0.0.0.0" else null;
defaultText = lib.literalExpression ''
if config.${opt.enableHTTPS}
then "0.0.0.0"
else null
'';
description = "Allow requests from a specific host.";
};
proxyPort = lib.mkOption {
type = lib.types.nullOr lib.types.int;
default = if cfg.enableHTTPS then 8443 else null;
defaultText = lib.literalExpression ''
if config.${opt.enableHTTPS}
then "8443"
else null
'';
description = "Allow requests from a specific port.";
};
initUser = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = null;
description = "Initial user account for Apache NiFi. Username must be at least 4 characters.";
};
initPasswordFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
default = null;
example = "/run/keys/nifi/password-nifi";
description = "nitial password for Apache NiFi. Password must be at least 12 characters.";
};
initJavaHeapSize = lib.mkOption {
type = lib.types.nullOr lib.types.int;
default = null;
example = 1024;
description = "Set the initial heap size for the JVM in MB.";
};
maxJavaHeapSize = lib.mkOption {
type = lib.types.nullOr lib.types.int;
default = null;
example = 2048;
description = "Set the initial heap size for the JVM in MB.";
};
};
};
config = lib.mkIf cfg.enable {
assertions = [
{ assertion = cfg.initUser!=null || cfg.initPasswordFile==null;
message = ''
<option>services.nifi.initUser</option> needs to be set if <option>services.nifi.initPasswordFile</option> enabled.
'';
}
{ assertion = cfg.initUser==null || cfg.initPasswordFile!=null;
message = ''
<option>services.nifi.initPasswordFile</option> needs to be set if <option>services.nifi.initUser</option> enabled.
'';
}
{ assertion = cfg.proxyHost==null || cfg.proxyPort!=null;
message = ''
<option>services.nifi.proxyPort</option> needs to be set if <option>services.nifi.proxyHost</option> value specified.
'';
}
{ assertion = cfg.proxyHost!=null || cfg.proxyPort==null;
message = ''
<option>services.nifi.proxyHost</option> needs to be set if <option>services.nifi.proxyPort</option> value specified.
'';
}
{ assertion = cfg.initJavaHeapSize==null || cfg.maxJavaHeapSize!=null;
message = ''
<option>services.nifi.maxJavaHeapSize</option> needs to be set if <option>services.nifi.initJavaHeapSize</option> value specified.
'';
}
{ assertion = cfg.initJavaHeapSize!=null || cfg.maxJavaHeapSize==null;
message = ''
<option>services.nifi.initJavaHeapSize</option> needs to be set if <option>services.nifi.maxJavaHeapSize</option> value specified.
'';
}
];
warnings = lib.optional (cfg.enableHTTPS==false) ''
Please do not disable HTTPS mode in production. In this mode, access to the nifi is opened without authentication.
'';
systemd.tmpfiles.rules = [
"d '/var/lib/nifi/conf' 0750 ${cfg.user} ${cfg.group}"
"L+ '/var/lib/nifi/lib' - - - - ${cfg.package}/lib"
];
systemd.services.nifi = {
description = "Apache NiFi";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
environment = env;
path = [ pkgs.gawk ];
serviceConfig = {
Type = "forking";
PIDFile = "/run/nifi/nifi.pid";
ExecStartPre = pkgs.writeScript "nifi-pre-start.sh" ''
#!/bin/sh
umask 077
test -f '/var/lib/nifi/conf/authorizers.xml' || (cp '${cfg.package}/share/nifi/conf/authorizers.xml' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/authorizers.xml')
test -f '/var/lib/nifi/conf/bootstrap.conf' || (cp '${cfg.package}/share/nifi/conf/bootstrap.conf' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/bootstrap.conf')
test -f '/var/lib/nifi/conf/bootstrap-hashicorp-vault.conf' || (cp '${cfg.package}/share/nifi/conf/bootstrap-hashicorp-vault.conf' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/bootstrap-hashicorp-vault.conf')
test -f '/var/lib/nifi/conf/bootstrap-notification-services.xml' || (cp '${cfg.package}/share/nifi/conf/bootstrap-notification-services.xml' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/bootstrap-notification-services.xml')
test -f '/var/lib/nifi/conf/logback.xml' || (cp '${cfg.package}/share/nifi/conf/logback.xml' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/logback.xml')
test -f '/var/lib/nifi/conf/login-identity-providers.xml' || (cp '${cfg.package}/share/nifi/conf/login-identity-providers.xml' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/login-identity-providers.xml')
test -f '/var/lib/nifi/conf/nifi.properties' || (cp '${cfg.package}/share/nifi/conf/nifi.properties' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/nifi.properties')
test -f '/var/lib/nifi/conf/stateless-logback.xml' || (cp '${cfg.package}/share/nifi/conf/stateless-logback.xml' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/stateless-logback.xml')
test -f '/var/lib/nifi/conf/stateless.properties' || (cp '${cfg.package}/share/nifi/conf/stateless.properties' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/stateless.properties')
test -f '/var/lib/nifi/conf/state-management.xml' || (cp '${cfg.package}/share/nifi/conf/state-management.xml' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/state-management.xml')
test -f '/var/lib/nifi/conf/zookeeper.properties' || (cp '${cfg.package}/share/nifi/conf/zookeeper.properties' '/var/lib/nifi/conf/' && chmod 0640 '/var/lib/nifi/conf/zookeeper.properties')
test -d '/var/lib/nifi/docs/html' || (mkdir -p /var/lib/nifi/docs && cp -r '${cfg.package}/share/nifi/docs/html' '/var/lib/nifi/docs/html')
${lib.optionalString ((cfg.initUser != null) && (cfg.initPasswordFile != null)) ''
awk -F'[<|>]' '/property name="Username"/ {if ($3!="") f=1} END{exit !f}' /var/lib/nifi/conf/login-identity-providers.xml || ${cfg.package}/bin/nifi.sh set-single-user-credentials ${cfg.initUser} $(cat ${cfg.initPasswordFile})
''}
${lib.optionalString (cfg.enableHTTPS == false) ''
sed -i /var/lib/nifi/conf/nifi.properties \
-e 's|nifi.remote.input.secure=.*|nifi.remote.input.secure=false|g' \
-e 's|nifi.web.http.host=.*|nifi.web.http.host=${cfg.listenHost}|g' \
-e 's|nifi.web.http.port=.*|nifi.web.http.port=${(toString cfg.listenPort)}|g' \
-e 's|nifi.web.https.host=.*|nifi.web.https.host=|g' \
-e 's|nifi.web.https.port=.*|nifi.web.https.port=|g' \
-e 's|nifi.security.keystore=.*|nifi.security.keystore=|g' \
-e 's|nifi.security.keystoreType=.*|nifi.security.keystoreType=|g' \
-e 's|nifi.security.truststore=.*|nifi.security.truststore=|g' \
-e 's|nifi.security.truststoreType=.*|nifi.security.truststoreType=|g' \
-e '/nifi.security.keystorePasswd/s|^|#|' \
-e '/nifi.security.keyPasswd/s|^|#|' \
-e '/nifi.security.truststorePasswd/s|^|#|'
''}
${lib.optionalString (cfg.enableHTTPS == true) ''
sed -i /var/lib/nifi/conf/nifi.properties \
-e 's|nifi.remote.input.secure=.*|nifi.remote.input.secure=true|g' \
-e 's|nifi.web.http.host=.*|nifi.web.http.host=|g' \
-e 's|nifi.web.http.port=.*|nifi.web.http.port=|g' \
-e 's|nifi.web.https.host=.*|nifi.web.https.host=${cfg.listenHost}|g' \
-e 's|nifi.web.https.port=.*|nifi.web.https.port=${(toString cfg.listenPort)}|g' \
-e 's|nifi.security.keystore=.*|nifi.security.keystore=./conf/keystore.p12|g' \
-e 's|nifi.security.keystoreType=.*|nifi.security.keystoreType=PKCS12|g' \
-e 's|nifi.security.truststore=.*|nifi.security.truststore=./conf/truststore.p12|g' \
-e 's|nifi.security.truststoreType=.*|nifi.security.truststoreType=PKCS12|g' \
-e '/nifi.security.keystorePasswd/s|^#\+||' \
-e '/nifi.security.keyPasswd/s|^#\+||' \
-e '/nifi.security.truststorePasswd/s|^#\+||'
''}
${lib.optionalString ((cfg.enableHTTPS == true) && (cfg.proxyHost != null) && (cfg.proxyPort != null)) ''
sed -i /var/lib/nifi/conf/nifi.properties \
-e 's|nifi.web.proxy.host=.*|nifi.web.proxy.host=${cfg.proxyHost}:${(toString cfg.proxyPort)}|g'
''}
${lib.optionalString ((cfg.enableHTTPS == false) || (cfg.proxyHost == null) && (cfg.proxyPort == null)) ''
sed -i /var/lib/nifi/conf/nifi.properties \
-e 's|nifi.web.proxy.host=.*|nifi.web.proxy.host=|g'
''}
${lib.optionalString ((cfg.initJavaHeapSize != null) && (cfg.maxJavaHeapSize != null))''
sed -i /var/lib/nifi/conf/bootstrap.conf \
-e 's|java.arg.2=.*|java.arg.2=-Xms${(toString cfg.initJavaHeapSize)}m|g' \
-e 's|java.arg.3=.*|java.arg.3=-Xmx${(toString cfg.maxJavaHeapSize)}m|g'
''}
${lib.optionalString ((cfg.initJavaHeapSize == null) && (cfg.maxJavaHeapSize == null))''
sed -i /var/lib/nifi/conf/bootstrap.conf \
-e 's|java.arg.2=.*|java.arg.2=-Xms512m|g' \
-e 's|java.arg.3=.*|java.arg.3=-Xmx512m|g'
''}
'';
ExecStart = "${cfg.package}/bin/nifi.sh start";
ExecStop = "${cfg.package}/bin/nifi.sh stop";
# User and group
User = cfg.user;
Group = cfg.group;
# Runtime directory and mode
RuntimeDirectory = "nifi";
RuntimeDirectoryMode = "0750";
# State directory and mode
StateDirectory = "nifi";
StateDirectoryMode = "0750";
# Logs directory and mode
LogsDirectory = "nifi";
LogsDirectoryMode = "0750";
# Proc filesystem
ProcSubset = "pid";
ProtectProc = "invisible";
# Access write directories
ReadWritePaths = [ cfg.initPasswordFile ];
UMask = "0027";
# Capabilities
CapabilityBoundingSet = "";
# Security
NoNewPrivileges = true;
# Sandboxing
ProtectSystem = "strict";
ProtectHome = true;
PrivateTmp = true;
PrivateDevices = true;
PrivateIPC = true;
PrivateUsers = true;
ProtectHostname = true;
ProtectClock = true;
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectKernelLogs = true;
ProtectControlGroups = true;
RestrictAddressFamilies = [ "AF_INET AF_INET6" ];
RestrictNamespaces = true;
LockPersonality = true;
MemoryDenyWriteExecute = false;
RestrictRealtime = true;
RestrictSUIDSGID = true;
RemoveIPC = true;
PrivateMounts = true;
# System Call Filtering
SystemCallArchitectures = "native";
SystemCallFilter = [ "~@cpu-emulation @debug @keyring @memlock @mount @obsolete @resources @privileged @setuid" "@chown" ];
};
};
users.users = lib.mkMerge [
(lib.mkIf (cfg.user == "nifi") {
nifi = {
group = cfg.group;
isSystemUser = true;
home = cfg.package;
};
})
(lib.attrsets.setAttrByPath [ cfg.user "packages" ] [ cfg.package nifiEnv ])
];
users.groups = lib.optionalAttrs (cfg.group == "nifi") {
nifi = { };
};
};
}

View file

@ -573,14 +573,6 @@ in
})
(filterAttrs (name: service: service.enable && service.startAt != []) cfg.services);
# Generate timer units for all services that have a startAt value.
systemd.user.timers =
mapAttrs (name: service:
{ wantedBy = [ "timers.target" ];
timerConfig.OnCalendar = service.startAt;
})
(filterAttrs (name: service: service.startAt != []) cfg.user.services);
# Some overrides to upstream units.
systemd.services."systemd-backlight@".restartIfChanged = false;
systemd.services."systemd-fsck@".restartIfChanged = false;

View file

@ -362,6 +362,7 @@ in
nginx-sandbox = handleTestOn ["x86_64-linux"] ./nginx-sandbox.nix {};
nginx-sso = handleTest ./nginx-sso.nix {};
nginx-variants = handleTest ./nginx-variants.nix {};
nifi = handleTestOn ["x86_64-linux"] ./web-apps/nifi.nix {};
nitter = handleTest ./nitter.nix {};
nix-ld = handleTest ./nix-ld {};
nix-serve = handleTest ./nix-serve.nix {};

View file

@ -0,0 +1,30 @@
import ../make-test-python.nix ({pkgs, ...}:
{
name = "nifi";
meta.maintainers = with pkgs.lib.maintainers; [ izorkin ];
nodes = {
nifi = { pkgs, ... }: {
virtualisation = {
memorySize = 2048;
diskSize = 4096;
};
services.nifi = {
enable = true;
enableHTTPS = false;
};
};
};
testScript = ''
nifi.start()
nifi.wait_for_unit("nifi.service")
nifi.wait_for_open_port(8080)
# Check if NiFi is running
nifi.succeed("curl --fail http://127.0.0.1:8080/nifi/login 2> /dev/null | grep 'NiFi Login'")
nifi.shutdown()
'';
})

View file

@ -3,12 +3,12 @@
, libGLU, lv2, gtk2, cairo, pango, fftwFloat, zita-convolver }:
stdenv.mkDerivation rec {
version = "20220107";
version = "20220327";
pname = "x42-plugins";
src = fetchurl {
url = "https://gareus.org/misc/x42-plugins/${pname}-${version}.tar.xz";
sha256 = "sha256-+lzgkRQHe6moid3h6az/iqt2XL5vbyM0BjSTwMBvd3I=";
sha256 = "sha256-IhuPqTlCbCxExT5B9Au42RQQl4sDEvz6+HhsuT02KVs=";
};
nativeBuildInputs = [ pkg-config ];

View file

@ -33,6 +33,7 @@
, enablePluginDillo ? true
, enablePluginFancy ? true, libsoup, webkitgtk
, enablePluginFetchInfo ? true
, enablePluginKeywordWarner ? true
, enablePluginLibravatar ? enablePluginRavatar
, enablePluginLitehtmlViewer ? true, gumbo
, enablePluginMailmbox ? true
@ -70,6 +71,7 @@ let
{ flags = [ "enchant" ]; enabled = enableEnchant; deps = [ enchant ]; }
{ flags = [ "fancy-plugin" ]; enabled = enablePluginFancy; deps = [ libsoup webkitgtk ]; }
{ flags = [ "fetchinfo-plugin" ]; enabled = enablePluginFetchInfo; }
{ flags = [ "keyword_warner-plugin" ]; enabled = enablePluginKeywordWarner; }
{ flags = [ "gnutls" ]; enabled = enableGnuTLS; deps = [ gnutls ]; }
{ flags = [ "ldap" ]; enabled = enableLdap; deps = [ openldap ]; }
{ flags = [ "libetpan" ]; enabled = enableLibetpan; deps = [ libetpan ]; }

View file

@ -112,13 +112,13 @@ let
sha512 = "ank38FdCLfJ+EoeMzCz3hkYJuZAd63ARvDKkxZYRDb+beBYf+/+gx8jNTqkq/hfyUl4dJQ/a7tECU0Y0F98CHg==";
};
};
"@babel/runtime-7.17.8" = {
"@babel/runtime-7.17.9" = {
name = "_at_babel_slash_runtime";
packageName = "@babel/runtime";
version = "7.17.8";
version = "7.17.9";
src = fetchurl {
url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.8.tgz";
sha512 = "dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA==";
url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.9.tgz";
sha512 = "lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg==";
};
};
"@colors/colors-1.5.0" = {
@ -967,13 +967,13 @@ let
sha512 = "z4oo33lmnvvNRqfUe3YjDGGpqu/L2+wXBIhMtwq6oqZ+exOUAkQYM6zd2VWKF7AIlajOF8ZZuPFfryTG9iLC/w==";
};
};
"aws-sdk-2.1106.0" = {
"aws-sdk-2.1111.0" = {
name = "aws-sdk";
packageName = "aws-sdk";
version = "2.1106.0";
version = "2.1111.0";
src = fetchurl {
url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1106.0.tgz";
sha512 = "3dr0TTR2LI70ST8fa4IgXHpWdH4yv7FLnt9YEndwFQ8ar2EMCMpMU67wwCGBA72GUi0aOg4+lsLjGmCvIq3jug==";
url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1111.0.tgz";
sha512 = "WRyNcCckzmu1djTAWfR2r+BuI/PbuLrhG3oa+oH39v4NZ4EecYWFL1CoCPlC2kRUML4maSba5T4zlxjcNl7ELQ==";
};
};
"aws-sign2-0.7.0" = {
@ -1381,13 +1381,13 @@ let
sha1 = "1b681c21ff84033c826543090689420d187151dc";
};
};
"cfb-1.2.1" = {
"cfb-1.2.2" = {
name = "cfb";
packageName = "cfb";
version = "1.2.1";
version = "1.2.2";
src = fetchurl {
url = "https://registry.npmjs.org/cfb/-/cfb-1.2.1.tgz";
sha512 = "wT2ScPAFGSVy7CY+aauMezZBnNrfnaLSrxHUHdea+Td/86vrk6ZquggV+ssBR88zNs0OnBkL2+lf9q0K+zVGzQ==";
url = "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz";
sha512 = "KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==";
};
};
"chalk-1.1.3" = {
@ -1840,13 +1840,13 @@ let
sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
};
};
"crc-32-1.2.1" = {
"crc-32-1.2.2" = {
name = "crc-32";
packageName = "crc-32";
version = "1.2.1";
version = "1.2.2";
src = fetchurl {
url = "https://registry.npmjs.org/crc-32/-/crc-32-1.2.1.tgz";
sha512 = "Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w==";
url = "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz";
sha512 = "ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==";
};
};
"cron-1.7.2" = {
@ -2137,22 +2137,22 @@ let
sha1 = "e38331f0844bba49b9a9cb71c771585aab1bc65a";
};
};
"dom-serializer-1.3.2" = {
"dom-serializer-1.4.1" = {
name = "dom-serializer";
packageName = "dom-serializer";
version = "1.3.2";
version = "1.4.1";
src = fetchurl {
url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz";
sha512 = "5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==";
url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz";
sha512 = "VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==";
};
};
"domelementtype-2.2.0" = {
"domelementtype-2.3.0" = {
name = "domelementtype";
packageName = "domelementtype";
version = "2.2.0";
version = "2.3.0";
src = fetchurl {
url = "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz";
sha512 = "DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==";
url = "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz";
sha512 = "OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==";
};
};
"domhandler-4.3.1" = {
@ -2902,13 +2902,13 @@ let
sha512 = "UWXQ7BpSCW8erDespU2I4cri22xsKgwOCyhsJal0OJhi2tFpwJpsYNJt4vCiFPL1p2HzCGiS713LKpNR25n9Kg==";
};
};
"graceful-fs-4.2.9" = {
"graceful-fs-4.2.10" = {
name = "graceful-fs";
packageName = "graceful-fs";
version = "4.2.9";
version = "4.2.10";
src = fetchurl {
url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz";
sha512 = "NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==";
url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz";
sha512 = "9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==";
};
};
"handlebars-4.7.7" = {
@ -3865,13 +3865,13 @@ let
sha512 = "2Bm96d5ktnE217Ib1FldvUaPAaOst6GtZrsxJCwnJgi9lnsoAKIHyU0sae8rNx6DNYbjdqqh8lv5/b9poD8qOg==";
};
};
"libphonenumber-js-1.9.50" = {
"libphonenumber-js-1.9.51" = {
name = "libphonenumber-js";
packageName = "libphonenumber-js";
version = "1.9.50";
version = "1.9.51";
src = fetchurl {
url = "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.9.50.tgz";
sha512 = "cCzQPChw2XbordcO2LKiw5Htx5leHVfFk/EXkxNHqJfFo7Fndcb1kF5wPJpc316vCJhhikedYnVysMh3Sc7Ocw==";
url = "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.9.51.tgz";
sha512 = "MGidRDs7s2nUybwrB/UjZT4nPXZPYQZQTu/sF3/O2v/DocmD8N6G+a9kwDt2qm7DaOo35XRt7hAIbYL+ml942Q==";
};
};
"libqp-1.1.0" = {
@ -4153,6 +4153,15 @@ let
sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
};
};
"lru-cache-7.8.1" = {
name = "lru-cache";
packageName = "lru-cache";
version = "7.8.1";
src = fetchurl {
url = "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.1.tgz";
sha512 = "E1v547OCgJvbvevfjgK9sNKIVXO96NnsTsFPBlg4ZxjhsJSODoH9lk8Bm0OxvHNm6Vm5Yqkl/1fErDxhYL8Skg==";
};
};
"lru-memoizer-2.1.4" = {
name = "lru-memoizer";
packageName = "lru-memoizer";
@ -4405,13 +4414,13 @@ let
sha512 = "lLzfLHcyc10MKQnNUCv7dMcoY/2Qxd6wJfbqCcVk3LDb8An4hF6ohk5AztrvgKhJCqj36uyzi/p5se+tvyD+Wg==";
};
};
"moment-2.29.1" = {
"moment-2.29.2" = {
name = "moment";
packageName = "moment";
version = "2.29.1";
version = "2.29.2";
src = fetchurl {
url = "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz";
sha512 = "kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==";
url = "https://registry.npmjs.org/moment/-/moment-2.29.2.tgz";
sha512 = "UgzG4rvxYpN15jgCmVJwac49h9ly9NurikMWGPdVxm8GZD6XjkKPxDTjQQ43gtGgnV3X0cAyWDdP2Wexoquifg==";
};
};
"moment-timezone-0.5.34" = {
@ -4531,49 +4540,49 @@ let
sha512 = "z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==";
};
};
"n8n-core-0.112.0" = {
"n8n-core-0.113.0" = {
name = "n8n-core";
packageName = "n8n-core";
version = "0.112.0";
version = "0.113.0";
src = fetchurl {
url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.112.0.tgz";
sha512 = "1b/J9XWBrjqMCcDAM1vZlsEpeBXI7gZ9Jpxgpgu4eHh3l/BJfyeqq5KXgULfyDtolDn/bil0s7qXA2njmZLerw==";
url = "https://registry.npmjs.org/n8n-core/-/n8n-core-0.113.0.tgz";
sha512 = "4LZWnno0N7gibiVF6tiMY63cyn+un1TwSXyjZvLzp9TH4UvxC457PSjWrS/IZOQYOHRfOR0SmO2Mz3j3NTYxFQ==";
};
};
"n8n-design-system-0.16.0" = {
"n8n-design-system-0.17.0" = {
name = "n8n-design-system";
packageName = "n8n-design-system";
version = "0.16.0";
version = "0.17.0";
src = fetchurl {
url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.16.0.tgz";
sha512 = "X7Qa+DoXRyJL4gqh7x59udnPIBYAUgDvhchL33dpI/Rgq9gaFajT9eAuOFQnXKMUaL0FZ5hu3rRGcAmwwEA/bA==";
url = "https://registry.npmjs.org/n8n-design-system/-/n8n-design-system-0.17.0.tgz";
sha512 = "7Gcy0uAiNjLIuVEPOb4UABhUgFA7ov287g2RMnAysC2edI4G7oeSvzMl/rlRojOGlTY4zjKiV6Wz4bkDlkiVbw==";
};
};
"n8n-editor-ui-0.138.0" = {
"n8n-editor-ui-0.139.0" = {
name = "n8n-editor-ui";
packageName = "n8n-editor-ui";
version = "0.138.0";
version = "0.139.0";
src = fetchurl {
url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.138.0.tgz";
sha512 = "1/mUJYSWG4vmUfMlT65lvtQzfDBMCHxhdIU3TUG2umvdIEsSHJM1gZwAPfoJZppoZ6DX/ApuxXY/67OXfgatQw==";
url = "https://registry.npmjs.org/n8n-editor-ui/-/n8n-editor-ui-0.139.0.tgz";
sha512 = "OaU3JI1uRhd26WqSxmHb6T14n4o8wXAjELj2OJ/f5TtrWwkmeL1ttmAJNH/yAAD7blAmIjjKqsacuhBk7lHP2w==";
};
};
"n8n-nodes-base-0.169.0" = {
"n8n-nodes-base-0.170.0" = {
name = "n8n-nodes-base";
packageName = "n8n-nodes-base";
version = "0.169.0";
version = "0.170.0";
src = fetchurl {
url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.169.0.tgz";
sha512 = "O8vwS7ROybSRLqXwG58xdLNrbA8hAvX4jSodXsztpGChbDWcrYJUXBewN9+Lfh1UAegz12G1devygc1W92qveQ==";
url = "https://registry.npmjs.org/n8n-nodes-base/-/n8n-nodes-base-0.170.0.tgz";
sha512 = "OIoh35VZyCLWHFrDW3Uu4jUhd8ulx8y5K3vWBY2hkOCpFthMkwjseZDwaLuKIz2TApFpDPicKEm3gLkf1Tm09g==";
};
};
"n8n-workflow-0.94.0" = {
"n8n-workflow-0.95.0" = {
name = "n8n-workflow";
packageName = "n8n-workflow";
version = "0.94.0";
version = "0.95.0";
src = fetchurl {
url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.94.0.tgz";
sha512 = "cVs5XPlbNDcCrGU5IoYzjO7IOsYNsNtEt5vVxkL9q5EgEmHhPYakValJN4GyLQ7Otdpsf47lJg/0EG3TvOssGQ==";
url = "https://registry.npmjs.org/n8n-workflow/-/n8n-workflow-0.95.0.tgz";
sha512 = "XxjwF3Zmcp2LOvgZ0Bfg15zegpwo1d2DHbFxYogUJT2CW7/S4gwE3opKzf/juaEWA14kOh0klNnOhdktDqTCAw==";
};
};
"named-placeholders-1.1.2" = {
@ -5467,15 +5476,6 @@ let
sha512 = "zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ==";
};
};
"printj-1.3.1" = {
name = "printj";
packageName = "printj";
version = "1.3.1";
src = fetchurl {
url = "https://registry.npmjs.org/printj/-/printj-1.3.1.tgz";
sha512 = "GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg==";
};
};
"process-0.11.10" = {
name = "process";
packageName = "process";
@ -6196,13 +6196,13 @@ let
sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==";
};
};
"semver-7.3.5" = {
"semver-7.3.6" = {
name = "semver";
packageName = "semver";
version = "7.3.5";
version = "7.3.6";
src = fetchurl {
url = "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz";
sha512 = "PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==";
url = "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz";
sha512 = "HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==";
};
};
"send-0.17.2" = {
@ -6322,13 +6322,13 @@ let
sha512 = "wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==";
};
};
"simple-git-3.5.0" = {
"simple-git-3.6.0" = {
name = "simple-git";
packageName = "simple-git";
version = "3.5.0";
version = "3.6.0";
src = fetchurl {
url = "https://registry.npmjs.org/simple-git/-/simple-git-3.5.0.tgz";
sha512 = "fZsaq5nzdxQRhMNs6ESGLpMUHoL5GRP+boWPhq9pMYMKwOGZV2jHOxi8AbFFA2Y/6u4kR99HoULizSbpzaODkA==";
url = "https://registry.npmjs.org/simple-git/-/simple-git-3.6.0.tgz";
sha512 = "2e+4QhOVO59GeLsHgwSMKNrSKCnuACeA/gMNrLCYR8ID9qwm4hViVt4WsODcUGjx//KDv6GMLC6Hs/MeosgXxg==";
};
};
"simple-lru-cache-0.0.2" = {
@ -7375,13 +7375,13 @@ let
sha512 = "NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==";
};
};
"winston-3.6.0" = {
"winston-3.7.2" = {
name = "winston";
packageName = "winston";
version = "3.6.0";
version = "3.7.2";
src = fetchurl {
url = "https://registry.npmjs.org/winston/-/winston-3.6.0.tgz";
sha512 = "9j8T75p+bcN6D00sF/zjFVmPp+t8KMPB1MzbbzYjeN9VWxdsYnTB40TkbNUEXAmILEfChMvAMgidlX64OG3p6w==";
url = "https://registry.npmjs.org/winston/-/winston-3.7.2.tgz";
sha512 = "QziIqtojHBoyzUOdQvQiar1DH0Xp9nF1A1y7NVy2DGEsz82SBDtOalS0ulTRGVT14xPX3WRWkCsdcJKqNflKng==";
};
};
"winston-transport-4.5.0" = {
@ -7624,10 +7624,10 @@ in
n8n = nodeEnv.buildNodePackage {
name = "n8n";
packageName = "n8n";
version = "0.171.0";
version = "0.172.0";
src = fetchurl {
url = "https://registry.npmjs.org/n8n/-/n8n-0.171.0.tgz";
sha512 = "GenMxluqj0PfttyWndoMUsmyJ8r5pilWoY7xT+TVjCl5znhtIUT+3GTeDZ8K3vYqJILHXVxspyF5yLz2Ytnjow==";
url = "https://registry.npmjs.org/n8n/-/n8n-0.172.0.tgz";
sha512 = "VPoIa8p2sP0AfEPOZrUkNpwIFqnBAupITV2Qho2gdEoPWfoRwuSzr0z8Ktx8uwCDGpaXth1dgITe5wY06w0Oig==";
};
dependencies = [
(sources."@azure/abort-controller-1.0.5" // {
@ -7679,7 +7679,7 @@ in
sources."tslib-2.3.1"
];
})
sources."@babel/runtime-7.17.8"
sources."@babel/runtime-7.17.9"
sources."@colors/colors-1.5.0"
(sources."@dabh/diagnostics-2.0.3" // {
dependencies = [
@ -7808,7 +7808,7 @@ in
];
})
sources."avsc-5.7.4"
(sources."aws-sdk-2.1106.0" // {
(sources."aws-sdk-2.1111.0" // {
dependencies = [
sources."buffer-4.9.2"
sources."events-1.1.1"
@ -7896,10 +7896,9 @@ in
];
})
sources."caseless-0.12.0"
(sources."cfb-1.2.1" // {
(sources."cfb-1.2.2" // {
dependencies = [
sources."adler-32-1.3.1"
sources."printj-1.3.1"
];
})
sources."chalk-4.1.2"
@ -7981,17 +7980,12 @@ in
sources."cookie-signature-1.0.6"
sources."core-js-3.21.1"
sources."core-util-is-1.0.2"
(sources."crc-32-1.2.1" // {
dependencies = [
sources."printj-1.3.1"
];
})
sources."crc-32-1.2.2"
sources."cron-1.7.2"
sources."cron-parser-2.18.0"
(sources."cross-spawn-4.0.2" // {
dependencies = [
sources."lru-cache-4.1.5"
sources."yallist-2.1.2"
];
})
sources."crypt-0.0.2"
@ -8017,8 +8011,8 @@ in
sources."difflib-0.2.4"
sources."dir-glob-3.0.1"
sources."discontinuous-range-1.0.0"
sources."dom-serializer-1.3.2"
sources."domelementtype-2.2.0"
sources."dom-serializer-1.4.1"
sources."domelementtype-2.3.0"
sources."domhandler-4.3.1"
sources."domutils-2.8.0"
(sources."dot-case-3.0.4" // {
@ -8149,7 +8143,7 @@ in
];
})
sources."google-timezones-json-1.0.2"
sources."graceful-fs-4.2.9"
sources."graceful-fs-4.2.10"
sources."handlebars-4.7.7"
sources."har-schema-2.0.0"
sources."har-validator-5.1.5"
@ -8261,7 +8255,7 @@ in
sources."iconv-lite-0.6.2"
];
})
sources."libphonenumber-js-1.9.50"
sources."libphonenumber-js-1.9.51"
sources."libqp-1.1.0"
sources."limiter-1.1.5"
sources."linkify-it-3.0.3"
@ -8298,11 +8292,10 @@ in
sources."tslib-2.3.1"
];
})
sources."lru-cache-6.0.0"
sources."lru-cache-7.8.1"
(sources."lru-memoizer-2.1.4" // {
dependencies = [
sources."lru-cache-4.0.2"
sources."yallist-2.1.2"
];
})
sources."luxon-2.3.1"
@ -8349,7 +8342,7 @@ in
sources."normalize-path-2.1.1"
];
})
sources."moment-2.29.1"
sources."moment-2.29.2"
sources."moment-timezone-0.5.34"
sources."monaco-editor-0.29.1"
sources."mongodb-3.7.3"
@ -8374,22 +8367,23 @@ in
dependencies = [
sources."denque-2.0.1"
sources."iconv-lite-0.6.3"
sources."lru-cache-6.0.0"
sources."yallist-4.0.0"
];
})
sources."mz-2.7.0"
sources."n8n-core-0.112.0"
sources."n8n-design-system-0.16.0"
sources."n8n-editor-ui-0.138.0"
(sources."n8n-nodes-base-0.169.0" // {
sources."n8n-core-0.113.0"
sources."n8n-design-system-0.17.0"
sources."n8n-editor-ui-0.139.0"
(sources."n8n-nodes-base-0.170.0" // {
dependencies = [
sources."iconv-lite-0.6.3"
];
})
sources."n8n-workflow-0.94.0"
sources."n8n-workflow-0.95.0"
(sources."named-placeholders-1.1.2" // {
dependencies = [
sources."lru-cache-4.1.5"
sources."yallist-2.1.2"
];
})
sources."nanoclone-0.2.1"
@ -8631,7 +8625,7 @@ in
sources."sb-promise-queue-2.1.0"
sources."sb-scandir-3.1.0"
sources."selderee-0.6.0"
sources."semver-7.3.5"
sources."semver-7.3.6"
(sources."send-0.17.2" // {
dependencies = [
(sources."debug-2.6.9" // {
@ -8663,7 +8657,7 @@ in
sources."shell-escape-0.2.0"
sources."side-channel-1.0.4"
sources."signal-exit-3.0.7"
sources."simple-git-3.5.0"
sources."simple-git-3.6.0"
sources."simple-lru-cache-0.0.2"
sources."simple-swizzle-0.2.2"
sources."slash-3.0.0"
@ -8831,7 +8825,7 @@ in
sources."which-boxed-primitive-1.0.2"
sources."wide-align-1.1.5"
sources."widest-line-3.1.0"
(sources."winston-3.6.0" // {
(sources."winston-3.7.2" // {
dependencies = [
sources."async-3.2.3"
sources."readable-stream-3.6.0"
@ -8862,7 +8856,7 @@ in
})
sources."xtend-4.0.2"
sources."y18n-5.0.8"
sources."yallist-4.0.0"
sources."yallist-2.1.2"
(sources."yargonaut-1.1.4" // {
dependencies = [
sources."ansi-regex-2.1.1"

View file

@ -178,7 +178,7 @@ let
chmod -R 755 share
cp -rLTf ${staticUsrProfileTarget}/share share
else
cp -rLf ${staticUsrProfileTarget}/share share
cp -rsHf ${staticUsrProfileTarget}/share share
fi
fi
for i in bin sbin include; do

View file

@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "jupyterlab";
version = "3.3.2";
version = "3.3.3";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-PHFr9VkssoxcVcYVxuW9PvxxiY9pV9E3GbVkeLu7WHo=";
sha256 = "sha256-KU1nEmAVujl/axyAVj3uyGLkfgQmI4Ubvip9hw1p62o=";
};
nativeBuildInputs = [

View file

@ -12,13 +12,13 @@
buildPythonPackage rec {
pname = "pip-tools";
version = "6.5.1";
version = "6.6.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-gPViqmmfx2pCRTlpfgvvQeSQoFDlemohRoUxmBqdQZ4=";
sha256 = "sha256-mKokAERAocBInXGlZ6Tor98jx3gr/0g9EhmIHnMC3oM=";
};
checkInputs = [

View file

@ -17,14 +17,14 @@
buildPythonPackage rec {
pname = "pyinfra";
version = "1.7.2";
version = "2.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-qA65l0+E5jVdPghjcX2YiVtdhHRxt4ey28xOedgwHaM=";
sha256 = "sha256-rzVirU697wGehCIc/WwE6Rg9AaYYELXfoe10GMRFHgw=";
};
propagatedBuildInputs = [

View file

@ -12,6 +12,10 @@ buildGoModule rec {
sha256 = "sha256-xYNq5hnkk6OIsnDHhN/vh1LNuP7isTNgtTY2WUwC8x4=";
};
postInstall = ''
mv $out/bin/symfony-cli $out/bin/symfony
'';
# Tests requires network access
doCheck = false;

View file

@ -0,0 +1,4 @@
{
"version": "2.1.22",
"sha256": "1wk57dz0kmc6d5y8d8dkx269lzh3ark3751z734gxncwdlclcyz3"
}

View file

@ -1,11 +1,12 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (args // {
version = "2.1.22";
sha256 = "1wk57dz0kmc6d5y8d8dkx269lzh3ark3751z734gxncwdlclcyz3";
generation = "2_1";
extraMeta.knownVulnerabilities = [
# Fixed in 3.* but 2.* hasn't been released since
"CVE-2020-17516"
];
})
callPackage ./generic.nix (
args
// builtins.fromJSON (builtins.readFile ./2.1.json)
// {
generation = "2_1";
extraMeta.knownVulnerabilities = [
# Fixed in 3.* but 2.* hasn't been released since
"CVE-2020-17516"
];
})

View file

@ -0,0 +1,4 @@
{
"version": "2.2.14",
"sha256": "1b2x3q1ach44qg07sh8wr7d8a10n36w5522drd3p35djbiwa3d9q"
}

View file

@ -1,11 +1,12 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (args // {
version = "2.2.14";
sha256 = "1b2x3q1ach44qg07sh8wr7d8a10n36w5522drd3p35djbiwa3d9q";
generation = "2_2";
extraMeta.knownVulnerabilities = [
# Fixed in 3.* but 2.* hasn't been released since
"CVE-2020-17516"
];
})
callPackage ./generic.nix (
args
// builtins.fromJSON (builtins.readFile ./2.2.json)
// {
generation = "2_2";
extraMeta.knownVulnerabilities = [
# Fixed in 3.* but 2.* hasn't been released since
"CVE-2020-17516"
];
})

View file

@ -0,0 +1,4 @@
{
"version": "3.0.26",
"sha256": "09wim1w2yizcqpja62jk64fhaw3jgnrgrjlrm4kgmcc3g3bsmw6i"
}

View file

@ -1,7 +1,7 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (args // {
version = "3.0.26";
sha256 = "09wim1w2yizcqpja62jk64fhaw3jgnrgrjlrm4kgmcc3g3bsmw6i";
generation = "3_0";
})
callPackage ./generic.nix (
args
// builtins.fromJSON (builtins.readFile ./3.0.json)
// {
generation = "3_0";
})

View file

@ -0,0 +1,4 @@
{
"version": "3.11.12",
"sha256": "16j58l7r47qrfh8q7fm92y935ykgvnbj3qn984c42qda15x92hkw"
}

View file

@ -1,7 +1,7 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (args // {
version = "3.11.12";
sha256 = "16j58l7r47qrfh8q7fm92y935ykgvnbj3qn984c42qda15x92hkw";
generation = "3_11";
})
callPackage ./generic.nix (
args
// builtins.fromJSON (builtins.readFile ./3.11.json)
// {
generation = "3_11";
})

View file

@ -16,6 +16,7 @@
, version
, sha256
, extraMeta ? { }
, callPackage
, ...
}:
@ -37,7 +38,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
inherit sha256;
url = "mirror://apache/cassandra/${version}/apache-${pname}-${version}-bin.tar.gz";
url = "mirror://apache/cassandra/${version}/apache-cassandra-${version}-bin.tar.gz";
};
nativeBuildInputs = [ makeWrapper coreutils ];
@ -113,6 +114,8 @@ stdenv.mkDerivation rec {
assert test.testPackage.version == version;
test;
};
updateScript = callPackage ./update-script.nix { inherit generation; };
};
meta = with lib; {

View file

@ -0,0 +1,55 @@
{ git
, lib
, runtimeShell
, writeScript
, generation
, gnupg
}:
let
inherit (lib) makeBinPath;
filename = lib.strings.replaceStrings [ "_" ] [ "." ] generation + ".json";
regex = lib.strings.replaceStrings [ "_" ] [ "[.]" ] generation;
in
writeScript "update-cassandra_${generation}" ''
#!${runtimeShell}
set -eux -o pipefail
test -d pkgs -a -d nixos -a -d lib || {
echo >&2 "$0 expects to be run in a nixpkgs checkout"
exit 1
}
cd pkgs/servers/nosql/cassandra
PATH="${makeBinPath [git gnupg]}:$PATH"
tmp="$(mktemp -d)"
cleanup() {
rm -rf "$tmp"
}
trap cleanup EXIT
# get numeric-only versions, sort them latest first
git ls-remote --tags https://github.com/apache/cassandra \
| awk '{ if (match($0, /refs.tags.cassandra-([0-9.]*)$/, m)) print m[1] }' \
| sort -V \
| tac >$tmp/versions
version="$(grep -E '^${regex}' <$tmp/versions | head -n 1)"
path="cassandra/$version/apache-cassandra-$version-bin.tar.gz"
curl "https://downloads.apache.org/$path" >$tmp/src.tar.gz
curl "https://downloads.apache.org/$path.asc" >$tmp/src.tar.gz.asc
# See https://downloads.apache.org/cassandra/KEYS
# Make sure that any new key corresponds to someone on the project
for key in A4C465FEA0C552561A392A61E91335D77E3E87CB; do
gpg --trustdb-name "$tmp/trust.db" --batch --recv-keys "$key"
echo "$key:5:" | gpg --trustdb-name "$tmp/trust.db" --batch --import-ownertrust
done
gpg --trustdb-name "$tmp/trust.db" --batch --verify --trust-model direct $tmp/src.tar.gz.asc $tmp/src.tar.gz
hash="$(nix-prefetch-url "file://$tmp/src.tar.gz")"
cat >${filename} <<EOF
{
"version": "$version",
"sha256": "$hash"
}
EOF
''

View file

@ -0,0 +1,45 @@
{ lib, stdenv, fetchurl, makeWrapper, jre8, nixosTests }:
stdenv.mkDerivation rec {
pname = "nifi";
version = "1.16.0";
src = fetchurl {
url = "https://dlcdn.apache.org/nifi/${version}/nifi-${version}-bin.tar.gz";
sha256 = "sha256-BE990mVSocO+UuMa9kULJcbXbqiX8oquZQTQKSRPe4g=";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ jre8 ];
installPhase = ''
mv ../$sourceRoot $out
rm -f $out/bin/*bat
rm -rf $out/extensions
mkdir -p $out/share/nifi
mv $out/conf $out/share/nifi
mv $out/docs $out/share/nifi
mv $out/{LICENSE,NOTICE,README} $out/share/nifi
substituteInPlace $out/bin/nifi.sh \
--replace "/bin/sh" "${stdenv.shell}"
substituteInPlace $out/bin/nifi-env.sh \
--replace "#export JAVA_HOME=/usr/java/jdk1.8.0/" "export JAVA_HOME=${jre8}"
'';
passthru = {
tests.nifi = nixosTests.nifi;
};
meta = with lib; {
description = "Easy to use, powerful, and reliable system to process and distribute data";
longDescription = ''
Apache NiFi supports powerful and scalable directed graphs of data routing,
transformation, and system mediation logic.
'';
license = licenses.asl20;
homepage = "https://nifi.apache.org";
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ izorkin ];
};
}

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "wordpress";
version = "5.9.2";
version = "5.9.3";
src = fetchurl {
url = "https://wordpress.org/${pname}-${version}.tar.gz";
sha256 = "sha256-d2Xy3SpWzpIHmXh8x5BKWF9jNlvKK6D3uwbqIGDGn4s=";
sha256 = "sha256-cMvqXXLez7Ep9MyObD0BdepkvsaOl5YbbbA3cnilKlY=";
};
installPhase = ''

View file

@ -5,15 +5,15 @@
, git, nix, nixfmt, jq, coreutils, gnused, curl, cacert }:
stdenv.mkDerivation rec {
version = "2022-04-06";
version = "2022-04-09";
pname = "oh-my-zsh";
rev = "b3999a4b156185b617a5608317497399f88dc8fe";
rev = "fcceeb666452c5a41b786f3cde9c8635ddde5448";
src = fetchFromGitHub {
inherit rev;
owner = "ohmyzsh";
repo = "ohmyzsh";
sha256 = "yXM+fLdNWOrUU03K7527NgtaAwSql5r0wPaWgUZqGhY=";
sha256 = "c929KV77wACO0AlEABwOPPz03Za8V4G7RRXalY+zfGg=";
};
installPhase = ''

View file

@ -13,8 +13,8 @@
let
sha256 = "1f0nrdg8hf650qxz79i3a1d2zyf24niyrcnbnhc9i7hzbnqbp5qg";
# specVersion taken from: https://www.linode.com/docs/api/openapi.yaml at `info.version`.
specVersion = "4.119.0";
specSha256 = "0q5cqx9w44a85r8h9an4iz4m3s7x3b0nyk188i3hsh3r1wf1nryv";
specVersion = "4.119.4";
specSha256 = "057qzpy8da0r0av8wmm640mqqhl4qynqxqalkf3ylsa3xnch5c9m";
spec = fetchurl {
url = "https://raw.githubusercontent.com/linode/linode-api-docs/v${specVersion}/openapi.yaml";
sha256 = specSha256;

View file

@ -8283,6 +8283,8 @@ with pkgs;
ngrok-1 = callPackage ../tools/networking/ngrok-1 { };
nifi = callPackage ../servers/web-apps/nifi { };
nitter = callPackage ../servers/nitter { };
noice = callPackage ../applications/misc/noice { };