diff options
260 files changed, 1956 insertions, 1983 deletions
diff --git a/lib/tests/modules.sh b/lib/tests/modules.sh index da8c02e35ba..f69befd15c6 100755 --- a/lib/tests/modules.sh +++ b/lib/tests/modules.sh @@ -87,36 +87,36 @@ checkConfigOutput "false" "$@" ./define-force-enable.nix checkConfigOutput "false" "$@" ./define-enable-force.nix # Check mkForce with option and submodules. -checkConfigError 'attribute .*foo.* .* not found' config.loaOfSub.foo.enable ./declare-loaOfSub-any-enable.nix -checkConfigOutput 'false' config.loaOfSub.foo.enable ./declare-loaOfSub-any-enable.nix ./define-loaOfSub-foo.nix -set -- config.loaOfSub.foo.enable ./declare-loaOfSub-any-enable.nix ./define-loaOfSub-foo-enable.nix +checkConfigError 'attribute .*foo.* .* not found' config.attrsOfSub.foo.enable ./declare-attrsOfSub-any-enable.nix +checkConfigOutput 'false' config.attrsOfSub.foo.enable ./declare-attrsOfSub-any-enable.nix ./define-attrsOfSub-foo.nix +set -- config.attrsOfSub.foo.enable ./declare-attrsOfSub-any-enable.nix ./define-attrsOfSub-foo-enable.nix checkConfigOutput 'true' "$@" -checkConfigOutput 'false' "$@" ./define-force-loaOfSub-foo-enable.nix -checkConfigOutput 'false' "$@" ./define-loaOfSub-force-foo-enable.nix -checkConfigOutput 'false' "$@" ./define-loaOfSub-foo-force-enable.nix -checkConfigOutput 'false' "$@" ./define-loaOfSub-foo-enable-force.nix +checkConfigOutput 'false' "$@" ./define-force-attrsOfSub-foo-enable.nix +checkConfigOutput 'false' "$@" ./define-attrsOfSub-force-foo-enable.nix +checkConfigOutput 'false' "$@" ./define-attrsOfSub-foo-force-enable.nix +checkConfigOutput 'false' "$@" ./define-attrsOfSub-foo-enable-force.nix # Check overriding effect of mkForce on submodule definitions. -checkConfigError 'attribute .*bar.* .* not found' config.loaOfSub.bar.enable ./declare-loaOfSub-any-enable.nix ./define-loaOfSub-foo.nix -checkConfigOutput 'false' config.loaOfSub.bar.enable ./declare-loaOfSub-any-enable.nix ./define-loaOfSub-foo.nix ./define-loaOfSub-bar.nix -set -- config.loaOfSub.bar.enable ./declare-loaOfSub-any-enable.nix ./define-loaOfSub-foo.nix ./define-loaOfSub-bar-enable.nix +checkConfigError 'attribute .*bar.* .* not found' config.attrsOfSub.bar.enable ./declare-attrsOfSub-any-enable.nix ./define-attrsOfSub-foo.nix +checkConfigOutput 'false' config.attrsOfSub.bar.enable ./declare-attrsOfSub-any-enable.nix ./define-attrsOfSub-foo.nix ./define-attrsOfSub-bar.nix +set -- config.attrsOfSub.bar.enable ./declare-attrsOfSub-any-enable.nix ./define-attrsOfSub-foo.nix ./define-attrsOfSub-bar-enable.nix checkConfigOutput 'true' "$@" -checkConfigError 'attribute .*bar.* .* not found' "$@" ./define-force-loaOfSub-foo-enable.nix -checkConfigError 'attribute .*bar.* .* not found' "$@" ./define-loaOfSub-force-foo-enable.nix -checkConfigOutput 'true' "$@" ./define-loaOfSub-foo-force-enable.nix -checkConfigOutput 'true' "$@" ./define-loaOfSub-foo-enable-force.nix +checkConfigError 'attribute .*bar.* .* not found' "$@" ./define-force-attrsOfSub-foo-enable.nix +checkConfigError 'attribute .*bar.* .* not found' "$@" ./define-attrsOfSub-force-foo-enable.nix +checkConfigOutput 'true' "$@" ./define-attrsOfSub-foo-force-enable.nix +checkConfigOutput 'true' "$@" ./define-attrsOfSub-foo-enable-force.nix # Check mkIf with submodules. -checkConfigError 'attribute .*foo.* .* not found' config.loaOfSub.foo.enable ./declare-enable.nix ./declare-loaOfSub-any-enable.nix -set -- config.loaOfSub.foo.enable ./declare-enable.nix ./declare-loaOfSub-any-enable.nix -checkConfigError 'attribute .*foo.* .* not found' "$@" ./define-if-loaOfSub-foo-enable.nix -checkConfigError 'attribute .*foo.* .* not found' "$@" ./define-loaOfSub-if-foo-enable.nix -checkConfigError 'attribute .*foo.* .* not found' "$@" ./define-loaOfSub-foo-if-enable.nix -checkConfigOutput 'false' "$@" ./define-loaOfSub-foo-enable-if.nix -checkConfigOutput 'true' "$@" ./define-enable.nix ./define-if-loaOfSub-foo-enable.nix -checkConfigOutput 'true' "$@" ./define-enable.nix ./define-loaOfSub-if-foo-enable.nix -checkConfigOutput 'true' "$@" ./define-enable.nix ./define-loaOfSub-foo-if-enable.nix -checkConfigOutput 'true' "$@" ./define-enable.nix ./define-loaOfSub-foo-enable-if.nix +checkConfigError 'attribute .*foo.* .* not found' config.attrsOfSub.foo.enable ./declare-enable.nix ./declare-attrsOfSub-any-enable.nix +set -- config.attrsOfSub.foo.enable ./declare-enable.nix ./declare-attrsOfSub-any-enable.nix +checkConfigError 'attribute .*foo.* .* not found' "$@" ./define-if-attrsOfSub-foo-enable.nix +checkConfigError 'attribute .*foo.* .* not found' "$@" ./define-attrsOfSub-if-foo-enable.nix +checkConfigError 'attribute .*foo.* .* not found' "$@" ./define-attrsOfSub-foo-if-enable.nix +checkConfigOutput 'false' "$@" ./define-attrsOfSub-foo-enable-if.nix +checkConfigOutput 'true' "$@" ./define-enable.nix ./define-if-attrsOfSub-foo-enable.nix +checkConfigOutput 'true' "$@" ./define-enable.nix ./define-attrsOfSub-if-foo-enable.nix +checkConfigOutput 'true' "$@" ./define-enable.nix ./define-attrsOfSub-foo-if-enable.nix +checkConfigOutput 'true' "$@" ./define-enable.nix ./define-attrsOfSub-foo-enable-if.nix # Check disabledModules with config definitions and option declarations. set -- config.enable ./define-enable.nix ./declare-enable.nix @@ -138,7 +138,7 @@ checkConfigError 'while evaluating the module argument .*custom.* in .*import-cu checkConfigError 'infinite recursion encountered' "$@" # Check _module.check. -set -- config.enable ./declare-enable.nix ./define-enable.nix ./define-loaOfSub-foo.nix +set -- config.enable ./declare-enable.nix ./define-enable.nix ./define-attrsOfSub-foo.nix checkConfigError 'The option .* defined in .* does not exist.' "$@" checkConfigOutput "true" "$@" ./define-module-check.nix @@ -152,12 +152,6 @@ checkConfigOutput "12" config.value ./declare-coerced-value-unsound.nix checkConfigError 'The option value .* in .* is not.*8 bit signed integer.* or string convertible to it' config.value ./declare-coerced-value-unsound.nix ./define-value-string-bigint.nix checkConfigError 'unrecognised JSON value' config.value ./declare-coerced-value-unsound.nix ./define-value-string-arbitrary.nix -# Check loaOf with long list. -checkConfigOutput "1 2 3 4 5 6 7 8 9 10" config.result ./loaOf-with-long-list.nix - -# Check loaOf with many merges of lists. -checkConfigOutput "1 2 3 4 5 6 7 8 9 10" config.result ./loaOf-with-many-list-merges.nix - # Check mkAliasOptionModule. checkConfigOutput "true" config.enable ./alias-with-priority.nix checkConfigOutput "true" config.enableAlias ./alias-with-priority.nix diff --git a/lib/tests/modules/declare-loaOfSub-any-enable.nix b/lib/tests/modules/declare-attrsOfSub-any-enable.nix index 71dad1c9135..986d07227e1 100644 --- a/lib/tests/modules/declare-loaOfSub-any-enable.nix +++ b/lib/tests/modules/declare-attrsOfSub-any-enable.nix @@ -17,10 +17,10 @@ in { options = { - loaOfSub = lib.mkOption { + attrsOfSub = lib.mkOption { default = {}; example = {}; - type = lib.types.loaOf (lib.types.submodule [ submod ]); + type = lib.types.attrsOf (lib.types.submodule [ submod ]); description = '' Some descriptive text ''; diff --git a/lib/tests/modules/define-attrsOfSub-bar-enable.nix b/lib/tests/modules/define-attrsOfSub-bar-enable.nix new file mode 100644 index 00000000000..99c55d8b360 --- /dev/null +++ b/lib/tests/modules/define-attrsOfSub-bar-enable.nix @@ -0,0 +1,3 @@ +{ + attrsOfSub.bar.enable = true; +} diff --git a/lib/tests/modules/define-attrsOfSub-bar.nix b/lib/tests/modules/define-attrsOfSub-bar.nix new file mode 100644 index 00000000000..2a33068a568 --- /dev/null +++ b/lib/tests/modules/define-attrsOfSub-bar.nix @@ -0,0 +1,3 @@ +{ + attrsOfSub.bar = {}; +} diff --git a/lib/tests/modules/define-attrsOfSub-foo-enable-force.nix b/lib/tests/modules/define-attrsOfSub-foo-enable-force.nix new file mode 100644 index 00000000000..c9ee36446f1 --- /dev/null +++ b/lib/tests/modules/define-attrsOfSub-foo-enable-force.nix @@ -0,0 +1,5 @@ +{ lib, ... }: + +{ + attrsOfSub.foo.enable = lib.mkForce false; +} diff --git a/lib/tests/modules/define-attrsOfSub-foo-enable-if.nix b/lib/tests/modules/define-attrsOfSub-foo-enable-if.nix new file mode 100644 index 00000000000..0b3baddb5ec --- /dev/null +++ b/lib/tests/modules/define-attrsOfSub-foo-enable-if.nix @@ -0,0 +1,5 @@ +{ config, lib, ... }: + +{ + attrsOfSub.foo.enable = lib.mkIf config.enable true; +} diff --git a/lib/tests/modules/define-attrsOfSub-foo-enable.nix b/lib/tests/modules/define-attrsOfSub-foo-enable.nix new file mode 100644 index 00000000000..39cd63cef72 --- /dev/null +++ b/lib/tests/modules/define-attrsOfSub-foo-enable.nix @@ -0,0 +1,3 @@ +{ + attrsOfSub.foo.enable = true; +} diff --git a/lib/tests/modules/define-loaOfSub-foo-force-enable.nix b/lib/tests/modules/define-attrsOfSub-foo-force-enable.nix index dce0ef547b3..009da7c77cd 100644 --- a/lib/tests/modules/define-loaOfSub-foo-force-enable.nix +++ b/lib/tests/modules/define-attrsOfSub-foo-force-enable.nix @@ -1,7 +1,7 @@ { lib, ... }: { - loaOfSub.foo = lib.mkForce { + attrsOfSub.foo = lib.mkForce { enable = false; }; } diff --git a/lib/tests/modules/define-loaOfSub-foo-if-enable.nix b/lib/tests/modules/define-attrsOfSub-foo-if-enable.nix index 236b2840ee5..93702dfa86f 100644 --- a/lib/tests/modules/define-loaOfSub-foo-if-enable.nix +++ b/lib/tests/modules/define-attrsOfSub-foo-if-enable.nix @@ -1,7 +1,7 @@ { config, lib, ... }: { - loaOfSub.foo = lib.mkIf config.enable { + attrsOfSub.foo = lib.mkIf config.enable { enable = true; }; } diff --git a/lib/tests/modules/define-attrsOfSub-foo.nix b/lib/tests/modules/define-attrsOfSub-foo.nix new file mode 100644 index 00000000000..e6bb531dedd --- /dev/null +++ b/lib/tests/modules/define-attrsOfSub-foo.nix @@ -0,0 +1,3 @@ +{ + attrsOfSub.foo = {}; +} diff --git a/lib/tests/modules/define-loaOfSub-force-foo-enable.nix b/lib/tests/modules/define-attrsOfSub-force-foo-enable.nix index df5722274ee..5c02dd34314 100644 --- a/lib/tests/modules/define-loaOfSub-force-foo-enable.nix +++ b/lib/tests/modules/define-attrsOfSub-force-foo-enable.nix @@ -1,7 +1,7 @@ { lib, ... }: { - loaOfSub = lib.mkForce { + attrsOfSub = lib.mkForce { foo.enable = false; }; } diff --git a/lib/tests/modules/define-loaOfSub-if-foo-enable.nix b/lib/tests/modules/define-attrsOfSub-if-foo-enable.nix index bd2d068d31a..a3fe6051d41 100644 --- a/lib/tests/modules/define-loaOfSub-if-foo-enable.nix +++ b/lib/tests/modules/define-attrsOfSub-if-foo-enable.nix @@ -1,7 +1,7 @@ { config, lib, ... }: { - loaOfSub = lib.mkIf config.enable { + attrsOfSub = lib.mkIf config.enable { foo.enable = true; }; } diff --git a/lib/tests/modules/define-force-attrsOfSub-foo-enable.nix b/lib/tests/modules/define-force-attrsOfSub-foo-enable.nix new file mode 100644 index 00000000000..dafb2360e1f --- /dev/null +++ b/lib/tests/modules/define-force-attrsOfSub-foo-enable.nix @@ -0,0 +1,5 @@ +{ lib, ... }: + +lib.mkForce { + attrsOfSub.foo.enable = false; +} diff --git a/lib/tests/modules/define-force-loaOfSub-foo-enable.nix b/lib/tests/modules/define-force-loaOfSub-foo-enable.nix deleted file mode 100644 index bfd8e084b59..00000000000 --- a/lib/tests/modules/define-force-loaOfSub-foo-enable.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ lib, ... }: - -lib.mkForce { - loaOfSub.foo.enable = false; -} diff --git a/lib/tests/modules/define-if-loaOfSub-foo-enable.nix b/lib/tests/modules/define-if-attrsOfSub-foo-enable.nix index 4288d74dec0..6a8e32e802a 100644 --- a/lib/tests/modules/define-if-loaOfSub-foo-enable.nix +++ b/lib/tests/modules/define-if-attrsOfSub-foo-enable.nix @@ -1,5 +1,5 @@ { config, lib, ... }: lib.mkIf config.enable { - loaOfSub.foo.enable = true; + attrsOfSub.foo.enable = true; } diff --git a/lib/tests/modules/define-loaOfSub-bar-enable.nix b/lib/tests/modules/define-loaOfSub-bar-enable.nix deleted file mode 100644 index 422bb0a600b..00000000000 --- a/lib/tests/modules/define-loaOfSub-bar-enable.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - loaOfSub.bar.enable = true; -} diff --git a/lib/tests/modules/define-loaOfSub-bar.nix b/lib/tests/modules/define-loaOfSub-bar.nix deleted file mode 100644 index c24315e09b6..00000000000 --- a/lib/tests/modules/define-loaOfSub-bar.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - loaOfSub.bar = {}; -} diff --git a/lib/tests/modules/define-loaOfSub-foo-enable-force.nix b/lib/tests/modules/define-loaOfSub-foo-enable-force.nix deleted file mode 100644 index c1d7b198be5..00000000000 --- a/lib/tests/modules/define-loaOfSub-foo-enable-force.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ lib, ... }: - -{ - loaOfSub.foo.enable = lib.mkForce false; -} diff --git a/lib/tests/modules/define-loaOfSub-foo-enable-if.nix b/lib/tests/modules/define-loaOfSub-foo-enable-if.nix deleted file mode 100644 index 44b2c96cd02..00000000000 --- a/lib/tests/modules/define-loaOfSub-foo-enable-if.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ config, lib, ... }: - -{ - loaOfSub.foo.enable = lib.mkIf config.enable true; -} diff --git a/lib/tests/modules/define-loaOfSub-foo-enable.nix b/lib/tests/modules/define-loaOfSub-foo-enable.nix deleted file mode 100644 index 822425c71bb..00000000000 --- a/lib/tests/modules/define-loaOfSub-foo-enable.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - loaOfSub.foo.enable = true; -} diff --git a/lib/tests/modules/define-loaOfSub-foo.nix b/lib/tests/modules/define-loaOfSub-foo.nix deleted file mode 100644 index e9b2e631f2e..00000000000 --- a/lib/tests/modules/define-loaOfSub-foo.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - loaOfSub.foo = {}; -} diff --git a/lib/tests/modules/loaOf-with-long-list.nix b/lib/tests/modules/loaOf-with-long-list.nix deleted file mode 100644 index f30903c47e5..00000000000 --- a/lib/tests/modules/loaOf-with-long-list.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ config, lib, ... }: - -{ - options = { - loaOfInt = lib.mkOption { - type = lib.types.loaOf lib.types.int; - }; - - result = lib.mkOption { - type = lib.types.str; - }; - }; - - config = { - loaOfInt = [ 1 2 3 4 5 6 7 8 9 10 ]; - - result = toString (lib.attrValues config.loaOfInt); - }; -} diff --git a/lib/tests/modules/loaOf-with-many-list-merges.nix b/lib/tests/modules/loaOf-with-many-list-merges.nix deleted file mode 100644 index f8f8a8da82b..00000000000 --- a/lib/tests/modules/loaOf-with-many-list-merges.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ config, lib, ... }: - -{ - options = { - loaOfInt = lib.mkOption { - type = lib.types.loaOf lib.types.int; - }; - - result = lib.mkOption { - type = lib.types.str; - }; - }; - - config = { - loaOfInt = lib.mkMerge (map lib.singleton [ 1 2 3 4 5 6 7 8 9 10 ]); - - result = toString (lib.attrValues config.loaOfInt); - }; -} diff --git a/lib/types.nix b/lib/types.nix index de3c4f0d603..bb1b17e6bee 100644 --- a/lib/types.nix +++ b/lib/types.nix @@ -295,26 +295,43 @@ rec { # List or attribute set of ... loaOf = elemType: let - convertAllLists = defs: + convertAllLists = loc: defs: let padWidth = stringLength (toString (length defs)); unnamedPrefix = i: "unnamed-" + fixedWidthNumber padWidth i + "."; in - imap1 (i: convertIfList (unnamedPrefix i)) defs; - - convertIfList = unnamedPrefix: def: + imap1 (i: convertIfList loc (unnamedPrefix i)) defs; + convertIfList = loc: unnamedPrefix: def: if isList def.value then let padWidth = stringLength (toString (length def.value)); unnamed = i: unnamedPrefix + fixedWidthNumber padWidth i; + res = + { inherit (def) file; + value = listToAttrs ( + imap1 (elemIdx: elem: + { name = elem.name or (unnamed elemIdx); + value = elem; + }) def.value); + }; + option = concatStringsSep "." loc; + sample = take 3 def.value; + list = concatMapStrings (x: ''{ name = "${x.name or "unnamed"}"; ...} '') sample; + set = concatMapStrings (x: ''${x.name or "unnamed"} = {...}; '') sample; + msg = '' + In file ${def.file} + a list is being assigned to the option config.${option}. + This will soon be an error as type loaOf is deprecated. + See https://git.io/fj2zm for more information. + Do + ${option} = + { ${set}...} + instead of + ${option} = + [ ${list}...] + ''; in - { inherit (def) file; - value = listToAttrs ( - imap1 (elemIdx: elem: - { name = elem.name or (unnamed elemIdx); - value = elem; - }) def.value); - } + lib.warn msg res else def; attrOnly = attrsOf elemType; @@ -322,7 +339,7 @@ rec { name = "loaOf"; description = "list or attribute set of ${elemType.description}s"; check = x: isList x || isAttrs x; - merge = loc: defs: attrOnly.merge loc (convertAllLists defs); + merge = loc: defs: attrOnly.merge loc (convertAllLists loc defs); getSubOptions = prefix: elemType.getSubOptions (prefix ++ ["<name?>"]); getSubModules = elemType.getSubModules; substSubModules = m: loaOf (elemType.substSubModules m); diff --git a/nixos/modules/config/i18n.nix b/nixos/modules/config/i18n.nix index 45691f4839c..cc2ddda9d32 100644 --- a/nixos/modules/config/i18n.nix +++ b/nixos/modules/config/i18n.nix @@ -80,14 +80,11 @@ with lib; }; # ‘/etc/locale.conf’ is used by systemd. - environment.etc = singleton - { target = "locale.conf"; - source = pkgs.writeText "locale.conf" - '' - LANG=${config.i18n.defaultLocale} - ${concatStringsSep "\n" (mapAttrsToList (n: v: ''${n}=${v}'') config.i18n.extraLocaleSettings)} - ''; - }; + environment.etc."locale.conf".source = pkgs.writeText "locale.conf" + '' + LANG=${config.i18n.defaultLocale} + ${concatStringsSep "\n" (mapAttrsToList (n: v: ''${n}=${v}'') config.i18n.extraLocaleSettings)} + ''; }; } diff --git a/nixos/modules/config/ldap.nix b/nixos/modules/config/ldap.nix index e008497a2a6..9c8e9d14937 100644 --- a/nixos/modules/config/ldap.nix +++ b/nixos/modules/config/ldap.nix @@ -224,7 +224,9 @@ in config = mkIf cfg.enable { - environment.etc = optional (!cfg.daemon.enable) ldapConfig; + environment.etc = optionalAttrs (!cfg.daemon.enable) { + "ldap.conf" = ldapConfig; + }; system.activationScripts = mkIf (!cfg.daemon.enable) { ldap = stringAfter [ "etc" "groups" "users" ] '' diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix index 9baad9b5854..048bbb30c73 100644 --- a/nixos/modules/config/pulseaudio.nix +++ b/nixos/modules/config/pulseaudio.nix @@ -215,9 +215,8 @@ in { config = mkMerge [ { - environment.etc = singleton { - target = "pulse/client.conf"; - source = clientConf; + environment.etc = { + "pulse/client.conf".source = clientConf; }; hardware.pulseaudio.configFile = mkDefault "${getBin overriddenPackage}/etc/pulse/default.pa"; @@ -228,19 +227,16 @@ in { sound.enable = true; - environment.etc = [ - { target = "asound.conf"; - source = alsaConf; } + environment.etc = { + "asound.conf".source = alsaConf; - { target = "pulse/daemon.conf"; - source = writeText "daemon.conf" (lib.generators.toKeyValue {} cfg.daemon.config); } + "pulse/daemon.conf".source = writeText "daemon.conf" + (lib.generators.toKeyValue {} cfg.daemon.config); - { target = "openal/alsoft.conf"; - source = writeText "alsoft.conf" "drivers=pulse"; } + "openal/alsoft.conf".source = writeText "alsoft.conf" "drivers=pulse"; - { target = "libao.conf"; - source = writeText "libao.conf" "default_driver=pulse"; } - ]; + "libao.conf".source = writeText "libao.conf" "default_driver=pulse"; + }; # Disable flat volumes to enable relative ones hardware.pulseaudio.daemon.config.flat-volumes = mkDefault "no"; @@ -275,9 +271,8 @@ in { }) (mkIf nonSystemWide { - environment.etc = singleton { - target = "pulse/default.pa"; - source = myConfigFile; + environment.etc = { + "pulse/default.pa".source = myConfigFile; }; systemd.user = { services.pulseaudio = { diff --git a/nixos/modules/i18n/input-method/ibus.nix b/nixos/modules/i18n/input-method/ibus.nix index 810e1643d31..a3d97619fc4 100644 --- a/nixos/modules/i18n/input-method/ibus.nix +++ b/nixos/modules/i18n/input-method/ibus.nix @@ -64,6 +64,8 @@ in # Without dconf enabled it is impossible to use IBus programs.dconf.enable = true; + programs.dconf.profiles.ibus = "${ibusPackage}/etc/dconf/profile/ibus"; + services.dbus.packages = [ ibusAutostart ]; diff --git a/nixos/modules/installer/cd-dvd/system-tarball-pc.nix b/nixos/modules/installer/cd-dvd/system-tarball-pc.nix index bf8b7deb59e..f2af7dcde3d 100644 --- a/nixos/modules/installer/cd-dvd/system-tarball-pc.nix +++ b/nixos/modules/installer/cd-dvd/system-tarball-pc.nix @@ -122,11 +122,10 @@ in /* fake entry, just to have a happy stage-1. Users may boot without having stage-1 though */ - fileSystems = [ + fileSystems.fake = { mountPoint = "/"; device = "/dev/something"; - } - ]; + }; nixpkgs.config = { packageOverrides = p: { diff --git a/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix b/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix index 90a5128c02a..8408f56f94f 100644 --- a/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix +++ b/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix @@ -117,11 +117,10 @@ in /* fake entry, just to have a happy stage-1. Users may boot without having stage-1 though */ - fileSystems = [ + fileSystems.fake = { mountPoint = "/"; device = "/dev/something"; - } - ]; + }; services.mingetty = { # Some more help text. diff --git a/nixos/modules/installer/cd-dvd/system-tarball.nix b/nixos/modules/installer/cd-dvd/system-tarball.nix index b84096861f5..58098c45535 100644 --- a/nixos/modules/installer/cd-dvd/system-tarball.nix +++ b/nixos/modules/installer/cd-dvd/system-tarball.nix @@ -41,7 +41,7 @@ in # In stage 1 of the boot, mount the CD/DVD as the root FS by label # so that we don't need to know its device. - fileSystems = [ ]; + fileSystems = { }; # boot.initrd.availableKernelModules = [ "mvsdio" "reiserfs" "ext3" "ext4" ]; diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix index e0e2ffd80cf..6702e8efd1c 100644 --- a/nixos/modules/programs/dconf.nix +++ b/nixos/modules/programs/dconf.nix @@ -6,7 +6,10 @@ let cfg = config.programs.dconf; mkDconfProfile = name: path: - { source = path; target = "dconf/profile/${name}"; }; + { + name = "dconf/profile/${name}"; + value.source = path; + }; in { @@ -29,8 +32,8 @@ in ###### implementation config = mkIf (cfg.profiles != {} || cfg.enable) { - environment.etc = optionals (cfg.profiles != {}) - (mapAttrsToList mkDconfProfile cfg.profiles); + environment.etc = optionalAttrs (cfg.profiles != {}) + (mapAttrs' mkDconfProfile cfg.profiles); services.dbus.packages = [ pkgs.dconf ]; diff --git a/nixos/modules/programs/shadow.nix b/nixos/modules/programs/shadow.nix index 7eaf79d864e..fc352795c01 100644 --- a/nixos/modules/programs/shadow.nix +++ b/nixos/modules/programs/shadow.nix @@ -76,22 +76,18 @@ in config.users.defaultUserShell; environment.etc = - [ { # /etc/login.defs: global configuration for pwdutils. You - # cannot login without it! - source = pkgs.writeText "login.defs" loginDefs; - target = "login.defs"; - } - - { # /etc/default/useradd: configuration for useradd. - source = pkgs.writeText "useradd" - '' - GROUP=100 - HOME=/home - SHELL=${utils.toShellPath config.users.defaultUserShell} - ''; - target = "default/useradd"; - } - ]; + { # /etc/login.defs: global configuration for pwdutils. You + # cannot login without it! + "login.defs".source = pkgs.writeText "login.defs" loginDefs; + + # /etc/default/useradd: configuration for useradd. + "default/useradd".source = pkgs.writeText "useradd" + '' + GROUP=100 + HOME=/home + SHELL=${utils.toShellPath config.users.defaultUserShell} + ''; + }; security.pam.services = { chsh = { rootOK = true; }; diff --git a/nixos/modules/security/duosec.nix b/nixos/modules/security/duosec.nix index 997328ad9e6..78a82b7154e 100644 --- a/nixos/modules/security/duosec.nix +++ b/nixos/modules/security/duosec.nix @@ -25,19 +25,21 @@ let accept_env_factor=${boolToStr cfg.acceptEnvFactor} ''; - loginCfgFile = optional cfg.ssh.enable - { source = pkgs.writeText "login_duo.conf" configFileLogin; - mode = "0600"; - user = "sshd"; - target = "duo/login_duo.conf"; - }; + loginCfgFile = optionalAttrs cfg.ssh.enable { + "duo/login_duo.conf" = + { source = pkgs.writeText "login_duo.conf" configFileLogin; + mode = "0600"; + user = "sshd"; + }; + }; - pamCfgFile = optional cfg.pam.enable - { source = pkgs.writeText "pam_duo.conf" configFilePam; - mode = "0600"; - user = "sshd"; - target = "duo/pam_duo.conf"; - }; + pamCfgFile = optional cfg.pam.enable { + "duo/pam_duo.conf" = + { source = pkgs.writeText "pam_duo.conf" configFilePam; + mode = "0600"; + user = "sshd"; + }; + }; in { options = { @@ -186,7 +188,7 @@ in environment.systemPackages = [ pkgs.duo-unix ]; security.wrappers.login_duo.source = "${pkgs.duo-unix.out}/bin/login_duo"; - environment.etc = loginCfgFile ++ pamCfgFile; + environment.etc = loginCfgFile // pamCfgFile; /* If PAM *and* SSH are enabled, then don't do anything special. If PAM isn't used, set the default SSH-only options. */ diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix index 0adc27c47f0..ee37c18d980 100644 --- a/nixos/modules/security/pam.nix +++ b/nixos/modules/security/pam.nix @@ -475,9 +475,9 @@ let motd = pkgs.writeText "motd" config.users.motd; - makePAMService = pamService: - { source = pkgs.writeText "${pamService.name}.pam" pamService.text; - target = "pam.d/${pamService.name}"; + makePAMService = name: service: + { name = "pam.d/${name}"; + value.source = pkgs.writeText "${name}.pam" service.text; }; in @@ -760,8 +760,7 @@ in }; }; - environment.etc = - mapAttrsToList (n: v: makePAMService v) config.security.pam.services; + environment.etc = mapAttrs' makePAMService config.security.pam.services; security.pam.services = { other.text = diff --git a/nixos/modules/security/pam_mount.nix b/nixos/modules/security/pam_mount.nix index 75f58462d13..77e22a96b55 100644 --- a/nixos/modules/security/pam_mount.nix +++ b/nixos/modules/security/pam_mount.nix @@ -36,8 +36,7 @@ in config = mkIf (cfg.enable || anyPamMount) { environment.systemPackages = [ pkgs.pam_mount ]; - environment.etc = [{ - target = "security/pam_mount.conf.xml"; + environment.etc."security/pam_mount.conf.xml" = { source = let extraUserVolumes = filterAttrs (n: u: u.cryptHomeLuks != null) config.users.users; @@ -66,7 +65,7 @@ in ${concatStringsSep "\n" cfg.extraVolumes} </pam_mount> ''; - }]; + }; }; } diff --git a/nixos/modules/security/rtkit.nix b/nixos/modules/security/rtkit.nix index f6dda21c600..a7b27cbcf21 100644 --- a/nixos/modules/security/rtkit.nix +++ b/nixos/modules/security/rtkit.nix @@ -34,9 +34,8 @@ with lib; services.dbus.packages = [ pkgs.rtkit ]; - users.users = singleton - { name = "rtkit"; - uid = config.ids.uids.rtkit; + users.users.rtkit = + { uid = config.ids.uids.rtkit; description = "RealtimeKit daemon"; }; diff --git a/nixos/modules/security/sudo.nix b/nixos/modules/security/sudo.nix index 10ee036be84..d899806ef05 100644 --- a/nixos/modules/security/sudo.nix +++ b/nixos/modules/security/sudo.nix @@ -212,7 +212,7 @@ in security.pam.services.sudo = { sshAgentAuth = true; }; - environment.etc = singleton + environment.etc.sudoers = { source = pkgs.runCommand "sudoers" { @@ -222,7 +222,6 @@ in # Make sure that the sudoers file is syntactically valid. # (currently disabled - NIXOS-66) "${pkgs.buildPackages.sudo}/sbin/visudo -f $src -c && cp $src $out"; - target = "sudoers"; mode = "0440"; }; diff --git a/nixos/modules/services/admin/oxidized.nix b/nixos/modules/services/admin/oxidized.nix index 885eaed1de6..94b44630ba6 100644 --- a/nixos/modules/services/admin/oxidized.nix +++ b/nixos/modules/services/admin/oxidized.nix @@ -111,7 +111,7 @@ in Restart = "always"; WorkingDirectory = cfg.dataDir; KillSignal = "SIGKILL"; - PIDFile = "${cfg.dataDir}.config/oxidized/pid"; + PIDFile = "${cfg.dataDir}/.config/oxidized/pid"; }; }; }; diff --git a/nixos/modules/services/audio/mpd.nix b/nixos/modules/services/audio/mpd.nix index 7932d094197..e20591b5beb 100644 --- a/nixos/modules/services/audio/mpd.nix +++ b/nixos/modules/services/audio/mpd.nix @@ -184,19 +184,19 @@ in { }; }; - users.users = optionalAttrs (cfg.user == name) (singleton { - inherit uid; - inherit name; - group = cfg.group; - extraGroups = [ "audio" ]; - description = "Music Player Daemon user"; - home = "${cfg.dataDir}"; - }); - - users.groups = optionalAttrs (cfg.group == name) (singleton { - inherit name; - gid = gid; - }); + users.users = optionalAttrs (cfg.user == name) { + ${name} = { + inherit uid; + group = cfg.group; + extraGroups = [ "audio" ]; + description = "Music Player Daemon user"; + home = "${cfg.dataDir}"; + }; + }; + + users.groups = optionalAttrs (cfg.group == name) { + ${name}.gid = gid; + }; }; } diff --git a/nixos/modules/services/backup/mysql-backup.nix b/nixos/modules/services/backup/mysql-backup.nix index dbd5605143f..f58af82773f 100644 --- a/nixos/modules/services/backup/mysql-backup.nix +++ b/nixos/modules/services/backup/mysql-backup.nix @@ -84,13 +84,14 @@ in }; config = mkIf cfg.enable { - users.users = optionalAttrs (cfg.user == defaultUser) (singleton - { name = defaultUser; + users.users = optionalAttrs (cfg.user == defaultUser) { + ${defaultUser} = { isSystemUser = true; createHome = false; home = cfg.location; group = "nogroup"; - }); + }; + }; services.mysql.ensureUsers = [{ name = cfg.user; diff --git a/nixos/modules/services/cluster/kubernetes/default.nix b/nixos/modules/services/cluster/kubernetes/default.nix index 3605d036509..3a11a6513a4 100644 --- a/nixos/modules/services/cluster/kubernetes/default.nix +++ b/nixos/modules/services/cluster/kubernetes/default.nix @@ -266,8 +266,7 @@ in { "d /var/lib/kubernetes 0755 kubernetes kubernetes -" ]; - users.users = singleton { - name = "kubernetes"; + users.users.kubernetes = { uid = config.ids.uids.kubernetes; description = "Kubernetes user"; extraGroups = [ "docker" ]; diff --git a/nixos/modules/services/continuous-integration/buildbot/master.nix b/nixos/modules/services/continuous-integration/buildbot/master.nix index 9c615fbe885..326d2cbd82c 100644 --- a/nixos/modules/services/continuous-integration/buildbot/master.nix +++ b/nixos/modules/services/continuous-integration/buildbot/master.nix @@ -223,18 +223,19 @@ in { config = mkIf cfg.enable { users.groups = optional (cfg.group == "buildbot") { - name = "buildbot"; + buildbot = { }; }; - users.users = optional (cfg.user == "buildbot") { - name = "buildbot"; - description = "Buildbot User."; - isNormalUser = true; - createHome = true; - home = cfg.home; - group = cfg.group; - extraGroups = cfg.extraGroups; - useDefaultShell = true; + users.users = optionalAttrs (cfg.user == "buildbot") { + buildbot = { + description = "Buildbot User."; + isNormalUser = true; + createHome = true; + home = cfg.home; + group = cfg.group; + extraGroups = cfg.extraGroups; + useDefaultShell = true; + }; }; systemd.services.buildbot-master = { diff --git a/nixos/modules/services/continuous-integration/buildbot/worker.nix b/nixos/modules/services/continuous-integration/buildbot/worker.nix index 49e04ca3622..7613692f0a3 100644 --- a/nixos/modules/services/continuous-integration/buildbot/worker.nix +++ b/nixos/modules/services/continuous-integration/buildbot/worker.nix @@ -137,18 +137,19 @@ in { services.buildbot-worker.workerPassFile = mkDefault (pkgs.writeText "buildbot-worker-password" cfg.workerPass); users.groups = optional (cfg.group == "bbworker") { - name = "bbworker"; + bbworker = { }; }; - users.users = optional (cfg.user == "bbworker") { - name = "bbworker"; - description = "Buildbot Worker User."; - isNormalUser = true; - createHome = true; - home = cfg.home; - group = cfg.group; - extraGroups = cfg.extraGroups; - useDefaultShell = true; + users.users = optionalAttrs (cfg.user == "bbworker") { + bbworker = { + description = "Buildbot Worker User."; + isNormalUser = true; + createHome = true; + home = cfg.home; + group = cfg.group; + extraGroups = cfg.extraGroups; + useDefaultShell = true; + }; }; systemd.services.buildbot-worker = { diff --git a/nixos/modules/services/continuous-integration/gocd-agent/default.nix b/nixos/modules/services/continuous-integration/gocd-agent/default.nix index 8126f27c2b0..2e9e1c94857 100644 --- a/nixos/modules/services/continuous-integration/gocd-agent/default.nix +++ b/nixos/modules/services/continuous-integration/gocd-agent/default.nix @@ -135,20 +135,20 @@ in { }; config = mkIf cfg.enable { - users.groups = optional (cfg.group == "gocd-agent") { - name = "gocd-agent"; - gid = config.ids.gids.gocd-agent; + users.groups = optionalAttrs (cfg.group == "gocd-agent") { + gocd-agent.gid = config.ids.gids.gocd-agent; }; - users.users = optional (cfg.user == "gocd-agent") { - name = "gocd-agent"; - description = "gocd-agent user"; - createHome = true; - home = cfg.workDir; - group = cfg.group; - extraGroups = cfg.extraGroups; - useDefaultShell = true; - uid = config.ids.uids.gocd-agent; + users.users = optionalAttrs (cfg.user == "gocd-agent") { + gocd-agent = { + description = "gocd-agent user"; + createHome = true; + home = cfg.workDir; + group = cfg.group; + extraGroups = cfg.extraGroups; + useDefaultShell = true; + uid = config.ids.uids.gocd-agent; + }; }; systemd.services.gocd-agent = { diff --git a/nixos/modules/services/continuous-integration/gocd-server/default.nix b/nixos/modules/services/continuous-integration/gocd-server/default.nix index 8f177da129e..4fa41ac49ed 100644 --- a/nixos/modules/services/continuous-integration/gocd-server/default.nix +++ b/nixos/modules/services/continuous-integration/gocd-server/default.nix @@ -143,20 +143,20 @@ in { }; config = mkIf cfg.enable { - users.groups = optional (cfg.group == "gocd-server") { - name = "gocd-server"; - gid = config.ids.gids.gocd-server; + users.groups = optionalAttrs (cfg.group == "gocd-server") { + gocd-server.gid = config.ids.gids.gocd-server; }; - users.users = optional (cfg.user == "gocd-server") { - name = "gocd-server"; - description = "gocd-server user"; - createHome = true; - home = cfg.workDir; - group = cfg.group; - extraGroups = cfg.extraGroups; - useDefaultShell = true; - uid = config.ids.uids.gocd-server; + users.users = optionalAttrs (cfg.user == "gocd-server") { + gocd-server = { + description = "gocd-server user"; + createHome = true; + home = cfg.workDir; + group = cfg.group; + extraGroups = cfg.extraGroups; + useDefaultShell = true; + uid = config.ids.uids.gocd-server; + }; }; systemd.services.gocd-server = { diff --git a/nixos/modules/services/continuous-integration/jenkins/default.nix b/nixos/modules/services/continuous-integration/jenkins/default.nix index 0ec90671388..1477c471f8a 100644 --- a/nixos/modules/services/continuous-integration/jenkins/default.nix +++ b/nixos/modules/services/continuous-integration/jenkins/default.nix @@ -150,20 +150,20 @@ in { pkgs.dejavu_fonts ]; - users.groups = optional (cfg.group == "jenkins") { - name = "jenkins"; - gid = config.ids.gids.jenkins; + users.groups = optionalAttrs (cfg.group == "jenkins") { + jenkins.gid = config.ids.gids.jenkins; }; - users.users = optional (cfg.user == "jenkins") { - name = "jenkins"; - description = "jenkins user"; - createHome = true; - home = cfg.home; - group = cfg.group; - extraGroups = cfg.extraGroups; - useDefaultShell = true; - uid = config.ids.uids.jenkins; + users.users = optionalAttrs (cfg.user == "jenkins") { + jenkins = { + description = "jenkins user"; + createHome = true; + home = cfg.home; + group = cfg.group; + extraGroups = cfg.extraGroups; + useDefaultShell = true; + uid = config.ids.uids.jenkins; + }; }; systemd.services.jenkins = { diff --git a/nixos/modules/services/continuous-integration/jenkins/slave.nix b/nixos/modules/services/continuous-integration/jenkins/slave.nix index 92deabc3dd3..26368cb94e4 100644 --- a/nixos/modules/services/continuous-integration/jenkins/slave.nix +++ b/nixos/modules/services/continuous-integration/jenkins/slave.nix @@ -51,18 +51,18 @@ in { config = mkIf (cfg.enable && !masterCfg.enable) { users.groups = optional (cfg.group == "jenkins") { - name = "jenkins"; - gid = config.ids.gids.jenkins; + jenkins.gid = config.ids.gids.jenkins; }; - users.users = optional (cfg.user == "jenkins") { - name = "jenkins"; - description = "jenkins user"; - createHome = true; - home = cfg.home; - group = cfg.group; - useDefaultShell = true; - uid = config.ids.uids.jenkins; + users.users = optionalAttrs (cfg.user == "jenkins") { + jenkins = { + description = "jenkins user"; + createHome = true; + home = cfg.home; + group = cfg.group; + useDefaultShell = true; + uid = config.ids.uids.jenkins; + }; }; }; } diff --git a/nixos/modules/services/databases/cockroachdb.nix b/nixos/modules/services/databases/cockroachdb.nix index 268fdcc819f..b6f94a4881a 100644 --- a/nixos/modules/services/databases/cockroachdb.nix +++ b/nixos/modules/services/databases/cockroachdb.nix @@ -171,17 +171,17 @@ in environment.systemPackages = [ crdb ]; - users.users = optionalAttrs (cfg.user == "cockroachdb") (singleton - { name = "cockroachdb"; + users.users = optionalAttrs (cfg.user == "cockroachdb") { + cockroachdb = { description = "CockroachDB Server User"; uid = config.ids.uids.cockroachdb; group = cfg.group; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "cockroachdb") (singleton - { name = "cockroachdb"; - gid = config.ids.gids.cockroachdb; - }); + users.groups = optionalAttrs (cfg.group == "cockroachdb") { + cockroachdb.gid = config.ids.gids.cockroachdb; + }; networking.firewall.allowedTCPPorts = lib.optionals cfg.openPorts [ cfg.http.port cfg.listen.port ]; diff --git a/nixos/modules/services/databases/foundationdb.nix b/nixos/modules/services/databases/foundationdb.nix index 8f8d0da7c8d..18727acc7c7 100644 --- a/nixos/modules/services/databases/foundationdb.nix +++ b/nixos/modules/services/databases/foundationdb.nix @@ -341,17 +341,17 @@ in environment.systemPackages = [ pkg ]; - users.users = optionalAttrs (cfg.user == "foundationdb") (singleton - { name = "foundationdb"; + users.users = optionalAttrs (cfg.user == "foundationdb") { + foundationdb = { description = "FoundationDB User"; uid = config.ids.uids.foundationdb; group = cfg.group; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "foundationdb") (singleton - { name = "foundationdb"; - gid = config.ids.gids.foundationdb; - }); + users.groups = optionalAttrs (cfg.group == "foundationdb") { + foundationdb.gid = config.ids.gids.foundationdb; + }; networking.firewall.allowedTCPPortRanges = mkIf cfg.openFirewall [ { from = cfg.listenPortStart; diff --git a/nixos/modules/services/databases/influxdb.nix b/nixos/modules/services/databases/influxdb.nix index 2f176a03872..dd5d69b1147 100644 --- a/nixos/modules/services/databases/influxdb.nix +++ b/nixos/modules/services/databases/influxdb.nix @@ -182,15 +182,15 @@ in ''; }; - users.users = optional (cfg.user == "influxdb") { - name = "influxdb"; - uid = config.ids.uids.influxdb; - description = "Influxdb daemon user"; + users.users = optionalAttrs (cfg.user == "influxdb") { + influxdb = { + uid = config.ids.uids.influxdb; + description = "Influxdb daemon user"; + }; }; - users.groups = optional (cfg.group == "influxdb") { - name = "influxdb"; - gid = config.ids.gids.influxdb; + users.groups = optionalAttrs (cfg.group == "influxdb") { + influxdb.gid = config.ids.gids.influxdb; }; }; diff --git a/nixos/modules/services/databases/memcached.nix b/nixos/modules/services/databases/memcached.nix index d1dfdb41bf4..89ff957babf 100644 --- a/nixos/modules/services/databases/memcached.nix +++ b/nixos/modules/services/databases/memcached.nix @@ -64,10 +64,9 @@ in config = mkIf config.services.memcached.enable { - users.users = optional (cfg.user == "memcached") { - name = "memcached"; - description = "Memcached server user"; - isSystemUser = true; + users.users = optionalAttrs (cfg.user == "memcached") { + memcached.description = "Memcached server user"; + memcached.isSystemUser = true; }; environment.systemPackages = [ memcached ]; diff --git a/nixos/modules/services/databases/neo4j.nix b/nixos/modules/services/databases/neo4j.nix index 29a83300ec1..09b453e7584 100644 --- a/nixos/modules/services/databases/neo4j.nix +++ b/nixos/modules/services/databases/neo4j.nix @@ -650,8 +650,7 @@ in { environment.systemPackages = [ cfg.package ]; - users.users = singleton { - name = "neo4j"; + users.users.neo4j = { uid = config.ids.uids.neo4j; description = "Neo4j daemon user"; home = cfg.directories.home; diff --git a/nixos/modules/services/databases/virtuoso.nix b/nixos/modules/services/databases/virtuoso.nix index 6ffc44a5274..0cc027cb1d7 100644 --- a/nixos/modules/services/databases/virtuoso.nix +++ b/nixos/modules/services/databases/virtuoso.nix @@ -54,9 +54,8 @@ with lib; config = mkIf cfg.enable { - users.users = singleton - { name = virtuosoUser; - uid = config.ids.uids.virtuoso; + users.users.${virtuosoUser} = + { uid = config.ids.uids.virtuoso; description = "virtuoso user"; home = stateDir; }; diff --git a/nixos/modules/services/editors/infinoted.nix b/nixos/modules/services/editors/infinoted.nix index be366761694..8b997ccbf66 100644 --- a/nixos/modules/services/editors/infinoted.nix +++ b/nixos/modules/services/editors/infinoted.nix @@ -111,14 +111,15 @@ in { }; config = mkIf (cfg.enable) { - users.users = optional (cfg.user == "infinoted") - { name = "infinoted"; - description = "Infinoted user"; - group = cfg.group; - isSystemUser = true; + users.users = optionalAttrs (cfg.user == "infinoted") + { infinoted = { + description = "Infinoted user"; + group = cfg.group; + isSystemUser = true; + }; }; - users.groups = optional (cfg.group == "infinoted") - { name = "infinoted"; + users.groups = optionalAttrs (cfg.group == "infinoted") + { infinoted = { }; }; systemd.services.infinoted = diff --git a/nixos/modules/services/hardware/bluetooth.nix b/nixos/modules/services/hardware/bluetooth.nix index 11d67418a31..dfa39e7f602 100644 --- a/nixos/modules/services/hardware/bluetooth.nix +++ b/nixos/modules/services/hardware/bluetooth.nix @@ -74,9 +74,9 @@ in { environment.systemPackages = [ bluez-bluetooth ]; - environment.etc = singleton { - source = pkgs.writeText "main.conf" (generators.toINI { } cfg.config + optionalString (cfg.extraConfig != null) cfg.extraConfig); - target = "bluetooth/main.conf"; + environment.etc."bluetooth/main.conf"= { + source = pkgs.writeText "main.conf" + (generators.toINI { } cfg.config + optionalString (cfg.extraConfig != null) cfg.extraConfig); }; services.udev.packages = [ bluez-bluetooth ]; diff --git a/nixos/modules/services/hardware/sane_extra_backends/brscan4.nix b/nixos/modules/services/hardware/sane_extra_backends/brscan4.nix index f6ed4e25e9c..6f49a1ab6d4 100644 --- a/nixos/modules/services/hardware/sane_extra_backends/brscan4.nix +++ b/nixos/modules/services/hardware/sane_extra_backends/brscan4.nix @@ -67,11 +67,11 @@ in { options = { - hardware.sane.brscan4.enable = + hardware.sane.brscan4.enable = mkEnableOption "Brother's brscan4 scan backend" // { description = '' When enabled, will automatically register the "brscan4" sane - backend and bring configuration files to their expected location. + backend and bring configuration files to their expected location. ''; }; @@ -95,14 +95,11 @@ in pkgs.brscan4 ]; - environment.etc = singleton { - target = "opt/brother/scanner/brscan4"; - source = "${etcFiles}/etc/opt/brother/scanner/brscan4"; - }; + environment.etc."opt/brother/scanner/brscan4" = + { source = "${etcFiles}/etc/opt/brother/scanner/brscan4"; }; assertions = [ { assertion = all (x: !(null != x.ip && null != x.nodename)) netDeviceList; - message = '' When describing a network device as part of the attribute list `hardware.sane.brscan4.netDevices`, only one of its `ip` or `nodename` diff --git a/nixos/modules/services/hardware/tcsd.nix b/nixos/modules/services/hardware/tcsd.nix index 3876280ee6b..68cb5d791aa 100644 --- a/nixos/modules/services/hardware/tcsd.nix +++ b/nixos/modules/services/hardware/tcsd.nix @@ -137,15 +137,15 @@ in serviceConfig.ExecStart = "${pkgs.trousers}/sbin/tcsd -f -c ${tcsdConf}"; }; - users.users = optionalAttrs (cfg.user == "tss") (singleton - { name = "tss"; + users.users = optionalAttrs (cfg.user == "tss") { + tss = { group = "tss"; uid = config.ids.uids.tss; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "tss") (singleton - { name = "tss"; - gid = config.ids.gids.tss; - }); + users.groups = optionalAttrs (cfg.group == "tss") { + tss.gid = config.ids.gids.tss; + }; }; } diff --git a/nixos/modules/services/hardware/tlp.nix b/nixos/modules/services/hardware/tlp.nix index adc1881a525..955a6067799 100644 --- a/nixos/modules/services/hardware/tlp.nix +++ b/nixos/modules/services/hardware/tlp.nix @@ -103,13 +103,14 @@ in services.udev.packages = [ tlp ]; - environment.etc = [{ source = confFile; - target = "default/tlp"; - } - ] ++ optional enableRDW { - source = "${tlp}/etc/NetworkManager/dispatcher.d/99tlp-rdw-nm"; - target = "NetworkManager/dispatcher.d/99tlp-rdw-nm"; - }; + environment.etc = + { + "default/tlp".source = confFile; + } // optionalAttrs enableRDW { + "NetworkManager/dispatcher.d/99tlp-rdw-nm" = { + source = "${tlp}/etc/NetworkManager/dispatcher.d/99tlp-rdw-nm"; + }; + }; environment.systemPackages = [ tlp ]; diff --git a/nixos/modules/services/hardware/udev.nix b/nixos/modules/services/hardware/udev.nix index 50997bb9bb1..168056a475e 100644 --- a/nixos/modules/services/hardware/udev.nix +++ b/nixos/modules/services/hardware/udev.nix @@ -281,13 +281,10 @@ in boot.kernelParams = mkIf (!config.networking.usePredictableInterfaceNames) [ "net.ifnames=0" ]; environment.etc = - [ { source = udevRules; - target = "udev/rules.d"; - } - { source = hwdbBin; - target = "udev/hwdb.bin"; - } - ]; + { + "udev/rules.d".source = udevRules; + "udev/hwdb.bin".source = hwdbBin; + }; system.requiredKernelConfig = with config.lib.kernelConfig; [ (isEnabled "UNIX") diff --git a/nixos/modules/services/hardware/usbmuxd.nix b/nixos/modules/services/hardware/usbmuxd.nix index 39bbcaf4627..50b931dcb48 100644 --- a/nixos/modules/services/hardware/usbmuxd.nix +++ b/nixos/modules/services/hardware/usbmuxd.nix @@ -43,15 +43,16 @@ in config = mkIf cfg.enable { - users.users = optional (cfg.user == defaultUserGroup) { - name = cfg.user; - description = "usbmuxd user"; - group = cfg.group; - isSystemUser = true; + users.users = optionalAttrs (cfg.user == defaultUserGroup) { + ${cfg.user} = { + description = "usbmuxd user"; + group = cfg.group; + isSystemUser = true; + }; }; users.groups = optional (cfg.group == defaultUserGroup) { - name = cfg.group; + ${cfg.group} = { }; }; # Give usbmuxd permission for Apple devices diff --git a/nixos/modules/services/logging/logcheck.nix b/nixos/modules/services/logging/logcheck.nix index 6d8be5b926d..4296b2270c2 100644 --- a/nixos/modules/services/logging/logcheck.nix +++ b/nixos/modules/services/logging/logcheck.nix @@ -213,13 +213,14 @@ in mapAttrsToList writeIgnoreRule cfg.ignore ++ mapAttrsToList writeIgnoreCronRule cfg.ignoreCron; - users.users = optionalAttrs (cfg.user == "logcheck") (singleton - { name = "logcheck"; + users.users = optionalAttrs (cfg.user == "logcheck") { + logcheck = { uid = config.ids.uids.logcheck; shell = "/bin/sh"; description = "Logcheck user account"; extraGroups = cfg.extraGroups; - }); + }; + }; system.activationScripts.logcheck = '' mkdir -m 700 -p /var/{lib,lock}/logcheck diff --git a/nixos/modules/services/mail/dovecot.nix b/nixos/modules/services/mail/dovecot.nix index 2cda8c49f5e..0be60d8ff76 100644 --- a/nixos/modules/services/mail/dovecot.nix +++ b/nixos/modules/services/mail/dovecot.nix @@ -310,36 +310,32 @@ in ++ optional cfg.enablePop3 "pop3" ++ optional cfg.enableLmtp "lmtp"; - users.users = [ - { name = "dovenull"; - uid = config.ids.uids.dovenull2; - description = "Dovecot user for untrusted logins"; - group = "dovenull"; - } - ] ++ optional (cfg.user == "dovecot2") - { name = "dovecot2"; - uid = config.ids.uids.dovecot2; + users.users = { + dovenull = + { uid = config.ids.uids.dovenull2; + description = "Dovecot user for untrusted logins"; + group = "dovenull"; + }; + } // optionalAttrs (cfg.user == "dovecot2") { + dovecot2 = + { uid = config.ids.uids.dovecot2; description = "Dovecot user"; group = cfg.group; - } - ++ optional (cfg.createMailUser && cfg.mailUser != null) - ({ name = cfg.mailUser; - description = "Virtual Mail User"; - } // optionalAttrs (cfg.mailGroup != null) { - group = cfg.mailGroup; - }); - - users.groups = optional (cfg.group == "dovecot2") - { name = "dovecot2"; - gid = config.ids.gids.dovecot2; - } - ++ optional (cfg.createMailUser && cfg.mailGroup != null) - { name = cfg.mailGroup; - } - ++ singleton - { name = "dovenull"; - gid = config.ids.gids.dovenull2; - }; + }; + } // optionalAttrs (cfg.createMailUser && cfg.mailUser != null) { + ${cfg.mailUser} = + { description = "Virtual Mail User"; } // + optionalAttrs (cfg.mailGroup != null) + { group = cfg.mailGroup; }; + }; + + users.groups = { + dovenull.gid = config.ids.gids.dovenull2; + } // optionalAttrs (cfg.group == "dovecot2") { + dovecot2.gid = config.ids.gids.dovecot2; + } // optionalAttrs (cfg.createMailUser && cfg.mailGroup != null) { + ${cfg.mailgroup} = { }; + }; environment.etc."dovecot/modules".source = modulesDir; environment.etc."dovecot/dovecot.conf".source = cfg.configFile; diff --git a/nixos/modules/services/mail/dspam.nix b/nixos/modules/services/mail/dspam.nix index 72b8c4c08b9..766ebc8095a 100644 --- a/nixos/modules/services/mail/dspam.nix +++ b/nixos/modules/services/mail/dspam.nix @@ -86,16 +86,16 @@ in { config = mkIf cfg.enable (mkMerge [ { - users.users = optionalAttrs (cfg.user == "dspam") (singleton - { name = "dspam"; + users.users = optionalAttrs (cfg.user == "dspam") { + dspam = { group = cfg.group; uid = config.ids.uids.dspam; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "dspam") (singleton - { name = "dspam"; - gid = config.ids.gids.dspam; - }); + users.groups = optionalAttrs (cfg.group == "dspam") { + dspam.gid = config.ids.gids.dspam; + }; environment.systemPackages = [ dspam ]; diff --git a/nixos/modules/services/mail/exim.nix b/nixos/modules/services/mail/exim.nix index 47812dd1e40..892fbd33214 100644 --- a/nixos/modules/services/mail/exim.nix +++ b/nixos/modules/services/mail/exim.nix @@ -87,15 +87,13 @@ in systemPackages = [ cfg.package ]; }; - users.users = singleton { - name = cfg.user; + users.users.${cfg.user} = { description = "Exim mail transfer agent user"; uid = config.ids.uids.exim; group = cfg.group; }; - users.groups = singleton { - name = cfg.group; + users.groups.${cfg.group} = { gid = config.ids.gids.exim; }; diff --git a/nixos/modules/services/mail/mlmmj.nix b/nixos/modules/services/mail/mlmmj.nix index 7ae00f3e501..d58d93c4214 100644 --- a/nixos/modules/services/mail/mlmmj.nix +++ b/nixos/modules/services/mail/mlmmj.nix @@ -94,8 +94,7 @@ in config = mkIf cfg.enable { - users.users = singleton { - name = cfg.user; + users.users.${cfg.user} = { description = "mlmmj user"; home = stateDir; createHome = true; @@ -104,8 +103,7 @@ in useDefaultShell = true; }; - users.groups = singleton { - name = cfg.group; + users.groups.${cfg.group} = { gid = config.ids.gids.mlmmj; }; diff --git a/nixos/modules/services/mail/nullmailer.nix b/nixos/modules/services/mail/nullmailer.nix index 2c2910e0aa9..fe3f8ef9b39 100644 --- a/nixos/modules/services/mail/nullmailer.nix +++ b/nixos/modules/services/mail/nullmailer.nix @@ -201,15 +201,12 @@ with lib; }; users = { - users = singleton { - name = cfg.user; + users.${cfg.user} = { description = "Nullmailer relay-only mta user"; group = cfg.group; }; - groups = singleton { - name = cfg.group; - }; + groups.${cfg.group} = { }; }; systemd.tmpfiles.rules = [ diff --git a/nixos/modules/services/mail/opendkim.nix b/nixos/modules/services/mail/opendkim.nix index 6431531d5eb..f9a0c06c287 100644 --- a/nixos/modules/services/mail/opendkim.nix +++ b/nixos/modules/services/mail/opendkim.nix @@ -91,16 +91,16 @@ in { config = mkIf cfg.enable { - users.users = optionalAttrs (cfg.user == "opendkim") (singleton - { name = "opendkim"; + users.users = optionalAttrs (cfg.user == "opendkim") { + opendkim = { group = cfg.group; uid = config.ids.uids.opendkim; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "opendkim") (singleton - { name = "opendkim"; - gid = config.ids.gids.opendkim; - }); + users.groups = optionalAttrs (cfg.group == "opendkim") { + opendkimgid = config.ids.gids.opendkim; + }; environment.systemPackages = [ pkgs.opendkim ]; diff --git a/nixos/modules/services/mail/postfix.nix b/nixos/modules/services/mail/postfix.nix index df438a0c69d..654d0cfed70 100644 --- a/nixos/modules/services/mail/postfix.nix +++ b/nixos/modules/services/mail/postfix.nix @@ -655,21 +655,20 @@ in setgid = true; }; - users.users = optional (user == "postfix") - { name = "postfix"; - description = "Postfix mail server user"; - uid = config.ids.uids.postfix; - group = group; + users.users = optionalAttrs (user == "postfix") + { postfix = { + description = "Postfix mail server user"; + uid = config.ids.uids.postfix; + group = group; + }; }; users.groups = - optional (group == "postfix") - { name = group; - gid = config.ids.gids.postfix; + optionalAttrs (group == "postfix") + { group.gid = config.ids.gids.postfix; } - ++ optional (setgidGroup == "postdrop") - { name = setgidGroup; - gid = config.ids.gids.postdrop; + ++ optionalAttrs (setgidGroup == "postdrop") + { ${setgidGroup}.gid = config.ids.gids.postdrop; }; systemd.services.postfix = diff --git a/nixos/modules/services/mail/postsrsd.nix b/nixos/modules/services/mail/postsrsd.nix index 8f12a16906c..2ebc675ab10 100644 --- a/nixos/modules/services/mail/postsrsd.nix +++ b/nixos/modules/services/mail/postsrsd.nix @@ -90,16 +90,16 @@ in { services.postsrsd.domain = mkDefault config.networking.hostName; - users.users = optionalAttrs (cfg.user == "postsrsd") (singleton - { name = "postsrsd"; + users.users = optionalAttrs (cfg.user == "postsrsd") { + postsrsd = { group = cfg.group; uid = config.ids.uids.postsrsd; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "postsrsd") (singleton - { name = "postsrsd"; - gid = config.ids.gids.postsrsd; - }); + users.groups = optionalAttrs (cfg.group == "postsrsd") { + postsrsd.gid = config.ids.gids.postsrsd; + }; systemd.services.postsrsd = { description = "PostSRSd SRS rewriting server"; diff --git a/nixos/modules/services/mail/rspamd.nix b/nixos/modules/services/mail/rspamd.nix index f156595e6f8..aacdbe2aeed 100644 --- a/nixos/modules/services/mail/rspamd.nix +++ b/nixos/modules/services/mail/rspamd.nix @@ -374,15 +374,13 @@ in # Allow users to run 'rspamc' and 'rspamadm'. environment.systemPackages = [ pkgs.rspamd ]; - users.users = singleton { - name = cfg.user; + users.users.${cfg.user} = { description = "rspamd daemon"; uid = config.ids.uids.rspamd; group = cfg.group; }; - users.groups = singleton { - name = cfg.group; + users.groups.${cfg.group} = { gid = config.ids.gids.rspamd; }; diff --git a/nixos/modules/services/mail/spamassassin.nix b/nixos/modules/services/mail/spamassassin.nix index 1fe77ce5a0c..107280f7c14 100644 --- a/nixos/modules/services/mail/spamassassin.nix +++ b/nixos/modules/services/mail/spamassassin.nix @@ -128,15 +128,13 @@ in systemPackages = [ pkgs.spamassassin ]; }; - users.users = singleton { - name = "spamd"; + users.users.spamd = { description = "Spam Assassin Daemon"; uid = config.ids.uids.spamd; group = "spamd"; }; - users.groups = singleton { - name = "spamd"; + users.groups.spamd = { gid = config.ids.gids.spamd; }; diff --git a/nixos/modules/services/misc/apache-kafka.nix b/nixos/modules/services/misc/apache-kafka.nix index 46308f74dc9..f3a650a260f 100644 --- a/nixos/modules/services/misc/apache-kafka.nix +++ b/nixos/modules/services/misc/apache-kafka.nix @@ -124,8 +124,7 @@ in { environment.systemPackages = [cfg.package]; - users.users = singleton { - name = "apache-kafka"; + users.users.apache-kafka = { uid = config.ids.uids.apache-kafka; description = "Apache Kafka daemon user"; home = head cfg.logDirs; diff --git a/nixos/modules/services/misc/bepasty.nix b/nixos/modules/services/misc/bepasty.nix index 87d36068144..f69832e5b2b 100644 --- a/nixos/modules/services/misc/bepasty.nix +++ b/nixos/modules/services/misc/bepasty.nix @@ -168,16 +168,12 @@ in }) ) cfg.servers; - users.users = [{ - uid = config.ids.uids.bepasty; - name = user; - group = group; - home = default_home; - }]; - - users.groups = [{ - name = group; - gid = config.ids.gids.bepasty; - }]; + users.users.${user} = + { uid = config.ids.uids.bepasty; + group = group; + home = default_home; + }; + + users.groups.${group}.gid = config.ids.gids.bepasty; }; } diff --git a/nixos/modules/services/misc/cgminer.nix b/nixos/modules/services/misc/cgminer.nix index b1cf5a7d110..9fcae645269 100644 --- a/nixos/modules/services/misc/cgminer.nix +++ b/nixos/modules/services/misc/cgminer.nix @@ -110,11 +110,12 @@ in config = mkIf config.services.cgminer.enable { - users.users = optionalAttrs (cfg.user == "cgminer") (singleton - { name = "cgminer"; + users.users = optionalAttrs (cfg.user == "cgminer") { + cgminer = { uid = config.ids.uids.cgminer; description = "Cgminer user"; - }); + }; + }; environment.systemPackages = [ cfg.package ]; diff --git a/nixos/modules/services/misc/couchpotato.nix b/nixos/modules/services/misc/couchpotato.nix index 528af486b41..f5163cf86cf 100644 --- a/nixos/modules/services/misc/couchpotato.nix +++ b/nixos/modules/services/misc/couchpotato.nix @@ -29,17 +29,14 @@ in }; }; - users.users = singleton - { name = "couchpotato"; - group = "couchpotato"; + users.users.couchpotato = + { group = "couchpotato"; home = "/var/lib/couchpotato/"; description = "CouchPotato daemon user"; uid = config.ids.uids.couchpotato; }; - users.groups = singleton - { name = "couchpotato"; - gid = config.ids.gids.couchpotato; - }; + users.groups.couchpotato = + { gid = config.ids.gids.couchpotato; }; }; } diff --git a/nixos/modules/services/misc/dictd.nix b/nixos/modules/services/misc/dictd.nix index 8d3e294622d..d175854d2d1 100644 --- a/nixos/modules/services/misc/dictd.nix +++ b/nixos/modules/services/misc/dictd.nix @@ -45,18 +45,14 @@ in # get the command line client on system path to make some use of the service environment.systemPackages = [ pkgs.dict ]; - users.users = singleton - { name = "dictd"; - group = "dictd"; + users.users.dictd = + { group = "dictd"; description = "DICT.org dictd server"; home = "${dictdb}/share/dictd"; uid = config.ids.uids.dictd; }; - users.groups = singleton - { name = "dictd"; - gid = config.ids.gids.dictd; - }; + users.groups.dictd.gid = config.ids.gids.dictd; systemd.services.dictd = { description = "DICT.org Dictionary Server"; diff --git a/nixos/modules/services/misc/etcd.nix b/nixos/modules/services/misc/etcd.nix index e4d5322f9b5..7322e1c080b 100644 --- a/nixos/modules/services/misc/etcd.nix +++ b/nixos/modules/services/misc/etcd.nix @@ -186,8 +186,7 @@ in { environment.systemPackages = [ pkgs.etcdctl ]; - users.users = singleton { - name = "etcd"; + users.users.etcd = { uid = config.ids.uids.etcd; description = "Etcd daemon user"; home = cfg.dataDir; diff --git a/nixos/modules/services/misc/exhibitor.nix b/nixos/modules/services/misc/exhibitor.nix index 74f4f671f46..f8c79f892da 100644 --- a/nixos/modules/services/misc/exhibitor.nix +++ b/nixos/modules/services/misc/exhibitor.nix @@ -410,8 +410,7 @@ in sed -i 's/'"$replace_what"'/'"$replace_with"'/g' ${cfg.baseDir}/zookeeper/bin/zk*.sh ''; }; - users.users = singleton { - name = "zookeeper"; + users.users.zookeeper = { uid = config.ids.uids.zookeeper; description = "Zookeeper daemon user"; home = cfg.baseDir; diff --git a/nixos/modules/services/misc/felix.nix b/nixos/modules/services/misc/felix.nix index 1c5ece86825..188e45abc58 100644 --- a/nixos/modules/services/misc/felix.nix +++ b/nixos/modules/services/misc/felix.nix @@ -47,14 +47,10 @@ in ###### implementation config = mkIf cfg.enable { - users.groups = singleton - { name = "osgi"; - gid = config.ids.gids.osgi; - }; + users.groups.osgi.gid = config.ids.gids.osgi; - users.users = singleton - { name = "osgi"; - uid = config.ids.uids.osgi; + users.users.osgi = + { uid = config.ids.uids.osgi; description = "OSGi user"; home = "/homeless-shelter"; }; diff --git a/nixos/modules/services/misc/folding-at-home.nix b/nixos/modules/services/misc/folding-at-home.nix index 122c89ce068..fd2ea3948f6 100644 --- a/nixos/modules/services/misc/folding-at-home.nix +++ b/nixos/modules/services/misc/folding-at-home.nix @@ -42,9 +42,8 @@ in { config = mkIf cfg.enable { - users.users = singleton - { name = fahUser; - uid = config.ids.uids.foldingathome; + users.users.${fahUser} = + { uid = config.ids.uids.foldingathome; description = "Folding@Home user"; home = stateDir; }; diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix index 61d0ce0aef8..aa958985379 100644 --- a/nixos/modules/services/misc/gitlab.nix +++ b/nixos/modules/services/misc/gitlab.nix @@ -633,20 +633,14 @@ in { # Use postfix to send out mails. services.postfix.enable = mkDefault true; - users.users = [ - { name = cfg.user; - group = cfg.group; + users.users.${cfg.user} = + { group = cfg.group; home = "${cfg.statePath}/home"; shell = "${pkgs.bash}/bin/bash"; uid = config.ids.uids.gitlab; - } - ]; + }; - users.groups = [ - { name = cfg.group; - gid = config.ids.gids.gitlab; - } - ]; + users.groups.${cfg.group}.gid = config.ids.gids.gitlab; systemd.tmpfiles.rules = [ "d /run/gitlab 0755 ${cfg.user} ${cfg.group} -" diff --git a/nixos/modules/services/misc/gpsd.nix b/nixos/modules/services/misc/gpsd.nix index 3bfcb636a3c..f954249942a 100644 --- a/nixos/modules/services/misc/gpsd.nix +++ b/nixos/modules/services/misc/gpsd.nix @@ -86,17 +86,13 @@ in config = mkIf cfg.enable { - users.users = singleton - { name = "gpsd"; - inherit uid; + users.users.gpsd = + { inherit uid; description = "gpsd daemon user"; home = "/var/empty"; }; - users.groups = singleton - { name = "gpsd"; - inherit gid; - }; + users.groups.gpsd = { inherit gid; }; systemd.services.gpsd = { description = "GPSD daemon"; diff --git a/nixos/modules/services/misc/headphones.nix b/nixos/modules/services/misc/headphones.nix index 4a77045be28..3ee0a4458bd 100644 --- a/nixos/modules/services/misc/headphones.nix +++ b/nixos/modules/services/misc/headphones.nix @@ -59,19 +59,19 @@ in config = mkIf cfg.enable { - users.users = optionalAttrs (cfg.user == name) (singleton { - name = name; - uid = config.ids.uids.headphones; - group = cfg.group; - description = "headphones user"; - home = cfg.dataDir; - createHome = true; - }); + users.users = optionalAttrs (cfg.user == name) { + ${name} = { + uid = config.ids.uids.headphones; + group = cfg.group; + description = "headphones user"; + home = cfg.dataDir; + createHome = true; + }; + }; - users.groups = optionalAttrs (cfg.group == name) (singleton { - name = name; - gid = config.ids.gids.headphones; - }); + users.groups = optionalAttrs (cfg.group == name) { + ${name}.gid = config.ids.gids.headphones; + }; systemd.services.headphones = { description = "Headphones Server"; diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix index 0bda8980720..c0d44e6feb7 100644 --- a/nixos/modules/services/misc/matrix-synapse.nix +++ b/nixos/modules/services/misc/matrix-synapse.nix @@ -657,19 +657,18 @@ in { }; config = mkIf cfg.enable { - users.users = [ - { name = "matrix-synapse"; + users.users.matrix-synapse = + { name = ""; group = "matrix-synapse"; home = cfg.dataDir; createHome = true; shell = "${pkgs.bash}/bin/bash"; uid = config.ids.uids.matrix-synapse; - } ]; + }; - users.groups = [ - { name = "matrix-synapse"; - gid = config.ids.gids.matrix-synapse; - } ]; + users.groups.matrix-synapse = { + gid = config.ids.gids.matrix-synapse; + }; services.postgresql = mkIf (usePostgresql && cfg.create_local_database) { enable = mkDefault true; diff --git a/nixos/modules/services/misc/mediatomb.nix b/nixos/modules/services/misc/mediatomb.nix index 107fb57fe1c..529f584a201 100644 --- a/nixos/modules/services/misc/mediatomb.nix +++ b/nixos/modules/services/misc/mediatomb.nix @@ -266,19 +266,19 @@ in { serviceConfig.User = "${cfg.user}"; }; - users.groups = optionalAttrs (cfg.group == "mediatomb") (singleton { - name = "mediatomb"; - gid = gid; - }); + users.groups = optionalAttrs (cfg.group == "mediatomb") { + mediatomb.gid = gid; + }; - users.users = optionalAttrs (cfg.user == "mediatomb") (singleton { - name = "mediatomb"; - isSystemUser = true; - group = cfg.group; - home = "${cfg.dataDir}"; - createHome = true; - description = "Mediatomb DLNA Server User"; - }); + users.users = optionalAttrs (cfg.user == "mediatomb") { + mediatomb = { + isSystemUser = true; + group = cfg.group; + home = "${cfg.dataDir}"; + createHome = true; + description = "Mediatomb DLNA Server User"; + }; + }; networking.firewall = { allowedUDPPorts = [ 1900 cfg.port ]; diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix index 24780446d50..17c3582db0f 100644 --- a/nixos/modules/services/misc/nix-daemon.nix +++ b/nixos/modules/services/misc/nix-daemon.nix @@ -12,8 +12,9 @@ let isNix23 = versionAtLeast nixVersion "2.3pre"; - makeNixBuildUser = nr: - { name = "nixbld${toString nr}"; + makeNixBuildUser = nr: { + name = "nixbld${toString nr}"; + value = { description = "Nix build user ${toString nr}"; /* For consistency with the setgid(2), setuid(2), and setgroups(2) @@ -23,8 +24,9 @@ let group = "nixbld"; extraGroups = [ "nixbld" ]; }; + }; - nixbldUsers = map makeNixBuildUser (range 1 cfg.nrBuildUsers); + nixbldUsers = listToAttrs (map makeNixBuildUser (range 1 cfg.nrBuildUsers)); nixConf = assert versionAtLeast nixVersion "2.2"; @@ -445,7 +447,7 @@ in users.users = nixbldUsers; - services.xserver.displayManager.hiddenUsers = map ({ name, ... }: name) nixbldUsers; + services.xserver.displayManager.hiddenUsers = attrNames nixbldUsers; system.activationScripts.nix = stringAfter [ "etc" "users" ] '' diff --git a/nixos/modules/services/misc/octoprint.nix b/nixos/modules/services/misc/octoprint.nix index 8950010773c..651ed374388 100644 --- a/nixos/modules/services/misc/octoprint.nix +++ b/nixos/modules/services/misc/octoprint.nix @@ -86,16 +86,16 @@ in config = mkIf cfg.enable { - users.users = optionalAttrs (cfg.user == "octoprint") (singleton - { name = "octoprint"; + users.users = optionalAttrs (cfg.user == "octoprint") { + octoprint = { group = cfg.group; uid = config.ids.uids.octoprint; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "octoprint") (singleton - { name = "octoprint"; - gid = config.ids.gids.octoprint; - }); + users.groups = optionalAttrs (cfg.group == "octoprint") { + octoprint.gid = config.ids.gids.octoprint; + }; systemd.tmpfiles.rules = [ "d '${cfg.stateDir}' - ${cfg.user} ${cfg.group} - -" diff --git a/nixos/modules/services/misc/redmine.nix b/nixos/modules/services/misc/redmine.nix index 8bd687d0838..3b8c14d196f 100644 --- a/nixos/modules/services/misc/redmine.nix +++ b/nixos/modules/services/misc/redmine.nix @@ -367,17 +367,17 @@ in }; - users.users = optionalAttrs (cfg.user == "redmine") (singleton - { name = "redmine"; + users.users = optionalAttrs (cfg.user == "redmine") { + redmine = { group = cfg.group; home = cfg.stateDir; uid = config.ids.uids.redmine; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "redmine") (singleton - { name = "redmine"; - gid = config.ids.gids.redmine; - }); + users.groups = optionalAttrs (cfg.group == "redmine") { + redmine.gid = config.ids.gids.redmine; + }; warnings = optional (cfg.database.password != "") ''config.services.redmine.database.password will be stored as plaintext diff --git a/nixos/modules/services/misc/ripple-data-api.nix b/nixos/modules/services/misc/ripple-data-api.nix index 042b496d35e..9fab462f7e3 100644 --- a/nixos/modules/services/misc/ripple-data-api.nix +++ b/nixos/modules/services/misc/ripple-data-api.nix @@ -185,9 +185,8 @@ in { ]; }; - users.users = singleton - { name = "ripple-data-api"; - description = "Ripple data api user"; + users.users.ripple-data-api = + { description = "Ripple data api user"; uid = config.ids.uids.ripple-data-api; }; }; diff --git a/nixos/modules/services/misc/rippled.nix b/nixos/modules/services/misc/rippled.nix index cdf61730de3..ef34e3a779f 100644 --- a/nixos/modules/services/misc/rippled.nix +++ b/nixos/modules/services/misc/rippled.nix @@ -406,9 +406,8 @@ in config = mkIf cfg.enable { - users.users = singleton - { name = "rippled"; - description = "Ripple server user"; + users.users.rippled = + { description = "Ripple server user"; uid = config.ids.uids.rippled; home = cfg.databasePath; createHome = true; diff --git a/nixos/modules/services/misc/serviio.nix b/nixos/modules/services/misc/serviio.nix index 9868192724b..0ead6a81691 100644 --- a/nixos/modules/services/misc/serviio.nix +++ b/nixos/modules/services/misc/serviio.nix @@ -63,20 +63,15 @@ in { }; }; - users.users = [ - { - name = "serviio"; - group = "serviio"; + users.users.serviio = + { group = "serviio"; home = cfg.dataDir; description = "Serviio Media Server User"; createHome = true; isSystemUser = true; - } - ]; + }; - users.groups = [ - { name = "serviio";} - ]; + users.groups.serviio = { }; networking.firewall = { allowedTCPPorts = [ diff --git a/nixos/modules/services/misc/sickbeard.nix b/nixos/modules/services/misc/sickbeard.nix index 5cfbbe516ae..a32dbfa3108 100644 --- a/nixos/modules/services/misc/sickbeard.nix +++ b/nixos/modules/services/misc/sickbeard.nix @@ -63,19 +63,19 @@ in config = mkIf cfg.enable { - users.users = optionalAttrs (cfg.user == name) (singleton { - name = name; - uid = config.ids.uids.sickbeard; - group = cfg.group; - description = "sickbeard user"; - home = cfg.dataDir; - createHome = true; - }); + users.users = optionalAttrs (cfg.user == name) { + ${name} = { + uid = config.ids.uids.sickbeard; + group = cfg.group; + description = "sickbeard user"; + home = cfg.dataDir; + createHome = true; + }; + }; - users.groups = optionalAttrs (cfg.group == name) (singleton { - name = name; - gid = config.ids.gids.sickbeard; - }); + users.groups = optionalAttrs (cfg.group == name) { + ${name}.gid = config.ids.gids.sickbeard; + }; systemd.services.sickbeard = { description = "Sickbeard Server"; diff --git a/nixos/modules/services/misc/siproxd.nix b/nixos/modules/services/misc/siproxd.nix index dcaf73aca44..ae7b27de8e7 100644 --- a/nixos/modules/services/misc/siproxd.nix +++ b/nixos/modules/services/misc/siproxd.nix @@ -161,8 +161,7 @@ in config = mkIf cfg.enable { - users.users = singleton { - name = "siproxyd"; + users.users.siproxyd = { uid = config.ids.uids.siproxd; }; diff --git a/nixos/modules/services/misc/taskserver/default.nix b/nixos/modules/services/misc/taskserver/default.nix index 8a57277fafe..a894caed1a3 100644 --- a/nixos/modules/services/misc/taskserver/default.nix +++ b/nixos/modules/services/misc/taskserver/default.nix @@ -368,16 +368,16 @@ in { (mkIf cfg.enable { environment.systemPackages = [ nixos-taskserver ]; - users.users = optional (cfg.user == "taskd") { - name = "taskd"; - uid = config.ids.uids.taskd; - description = "Taskserver user"; - group = cfg.group; + users.users = optionalAttrs (cfg.user == "taskd") { + taskd = { + uid = config.ids.uids.taskd; + description = "Taskserver user"; + group = cfg.group; + }; }; - users.groups = optional (cfg.group == "taskd") { - name = "taskd"; - gid = config.ids.gids.taskd; + users.groups = optionalAttrs (cfg.group == "taskd") { + taskd.gid = config.ids.gids.taskd; }; services.taskserver.config = { diff --git a/nixos/modules/services/misc/uhub.nix b/nixos/modules/services/misc/uhub.nix index 753580c3e40..d1b38831028 100644 --- a/nixos/modules/services/misc/uhub.nix +++ b/nixos/modules/services/misc/uhub.nix @@ -41,31 +41,31 @@ in enable = mkOption { type = types.bool; default = false; - description = "Whether to enable the uhub ADC hub."; + description = "Whether to enable the uhub ADC hub."; }; port = mkOption { type = types.int; default = 1511; - description = "TCP port to bind the hub to."; + description = "TCP port to bind the hub to."; }; address = mkOption { type = types.str; default = "any"; - description = "Address to bind the hub to."; + description = "Address to bind the hub to."; }; enableTLS = mkOption { type = types.bool; default = false; - description = "Whether to enable TLS support."; + description = "Whether to enable TLS support."; }; hubConfig = mkOption { type = types.lines; default = ""; - description = "Contents of uhub configuration file."; + description = "Contents of uhub configuration file."; }; aclConfig = mkOption { @@ -77,11 +77,11 @@ in plugins = { authSqlite = { - enable = mkOption { + enable = mkOption { type = types.bool; default = false; description = "Whether to enable the Sqlite authentication database plugin"; - }; + }; file = mkOption { type = types.path; example = "/var/db/uhub-users"; @@ -161,14 +161,8 @@ in config = mkIf cfg.enable { users = { - users = singleton { - name = "uhub"; - uid = config.ids.uids.uhub; - }; - groups = singleton { - name = "uhub"; - gid = config.ids.gids.uhub; - }; + users.uhub.uid = config.ids.uids.uhub; + groups.uhub.gid = config.ids.gids.uhub; }; systemd.services.uhub = { diff --git a/nixos/modules/services/misc/zookeeper.nix b/nixos/modules/services/misc/zookeeper.nix index 5d91e44a199..f6af7c75eba 100644 --- a/nixos/modules/services/misc/zookeeper.nix +++ b/nixos/modules/services/misc/zookeeper.nix @@ -146,8 +146,7 @@ in { ''; }; - users.users = singleton { - name = "zookeeper"; + users.users.zookeeper = { uid = config.ids.uids.zookeeper; description = "Zookeeper daemon user"; home = cfg.dataDir; diff --git a/nixos/modules/services/monitoring/collectd.nix b/nixos/modules/services/monitoring/collectd.nix index 731ac743b7c..ef3663c62e0 100644 --- a/nixos/modules/services/monitoring/collectd.nix +++ b/nixos/modules/services/monitoring/collectd.nix @@ -129,9 +129,10 @@ in { }; }; - users.users = optional (cfg.user == "collectd") { - name = "collectd"; - isSystemUser = true; + users.users = optionalAttrs (cfg.user == "collectd") { + collectd = { + isSystemUser = true; + }; }; }; } diff --git a/nixos/modules/services/monitoring/datadog-agent.nix b/nixos/modules/services/monitoring/datadog-agent.nix index 02a9f316fc3..2c5fe47242e 100644 --- a/nixos/modules/services/monitoring/datadog-agent.nix +++ b/nixos/modules/services/monitoring/datadog-agent.nix @@ -22,9 +22,9 @@ let # Generate Datadog configuration files for each configured checks. # This works because check configurations have predictable paths, # and because JSON is a valid subset of YAML. - makeCheckConfigs = entries: mapAttrsToList (name: conf: { - source = pkgs.writeText "${name}-check-conf.yaml" (builtins.toJSON conf); - target = "datadog-agent/conf.d/${name}.d/conf.yaml"; + makeCheckConfigs = entries: mapAttrs' (name: conf: { + name = "datadog-agent/conf.d/${name}.d/conf.yaml"; + value.source = pkgs.writeText "${name}-check-conf.yaml" (builtins.toJSON conf); }) entries; defaultChecks = { @@ -34,10 +34,11 @@ let # Assemble all check configurations and the top-level agent # configuration. - etcfiles = with pkgs; with builtins; [{ - source = writeText "datadog.yaml" (toJSON ddConf); - target = "datadog-agent/datadog.yaml"; - }] ++ makeCheckConfigs (cfg.checks // defaultChecks); + etcfiles = with pkgs; with builtins; + { "datadog-agent/datadog.yaml" = { + source = writeText "datadog.yaml" (toJSON ddConf); + }; + } // makeCheckConfigs (cfg.checks // defaultChecks); # Apply the configured extraIntegrations to the provided agent # package. See the documentation of `dd-agent/integrations-core.nix` @@ -204,7 +205,7 @@ in { config = mkIf cfg.enable { environment.systemPackages = [ datadogPkg pkgs.sysstat pkgs.procps pkgs.iproute ]; - users.extraUsers.datadog = { + users.users.datadog = { description = "Datadog Agent User"; uid = config.ids.uids.datadog; group = "datadog"; @@ -212,7 +213,7 @@ in { createHome = true; }; - users.extraGroups.datadog.gid = config.ids.gids.datadog; + users.groups.datadog.gid = config.ids.gids.datadog; systemd.services = let makeService = attrs: recursiveUpdate { @@ -224,7 +225,7 @@ in { Restart = "always"; RestartSec = 2; }; - restartTriggers = [ datadogPkg ] ++ map (etc: etc.source) etcfiles; + restartTriggers = [ datadogPkg ] ++ attrNames etcfiles; } attrs; in { datadog-agent = makeService { diff --git a/nixos/modules/services/monitoring/dd-agent/dd-agent.nix b/nixos/modules/services/monitoring/dd-agent/dd-agent.nix index 5ee6b092a6a..e91717fb205 100644 --- a/nixos/modules/services/monitoring/dd-agent/dd-agent.nix +++ b/nixos/modules/services/monitoring/dd-agent/dd-agent.nix @@ -78,37 +78,35 @@ let etcfiles = let defaultConfd = import ./dd-agent-defaults.nix; - in (map (f: { source = "${pkgs.dd-agent}/agent/conf.d-system/${f}"; - target = "dd-agent/conf.d/${f}"; - }) defaultConfd) ++ [ - { source = ddConf; - target = "dd-agent/datadog.conf"; - } - { source = diskConfig; - target = "dd-agent/conf.d/disk.yaml"; - } - { source = networkConfig; - target = "dd-agent/conf.d/network.yaml"; - } ] ++ - (optional (cfg.postgresqlConfig != null) - { source = postgresqlConfig; - target = "dd-agent/conf.d/postgres.yaml"; - }) ++ - (optional (cfg.nginxConfig != null) - { source = nginxConfig; - target = "dd-agent/conf.d/nginx.yaml"; - }) ++ - (optional (cfg.mongoConfig != null) - { source = mongoConfig; - target = "dd-agent/conf.d/mongo.yaml"; - }) ++ - (optional (cfg.processConfig != null) - { source = processConfig; - target = "dd-agent/conf.d/process.yaml"; - }) ++ - (optional (cfg.jmxConfig != null) - { source = jmxConfig; - target = "dd-agent/conf.d/jmx.yaml"; + in + listToAttrs (map (f: { + name = "dd-agent/conf.d/${f}"; + value.source = "${pkgs.dd-agent}/agent/conf.d-system/${f}"; + }) defaultConfd) // + { + "dd-agent/datadog.conf".source = ddConf; + "dd-agent/conf.d/disk.yaml".source = diskConfig; + "dd-agent/conf.d/network.yaml".source = networkConfig; + } // + (optionalAttrs (cfg.postgresqlConfig != null) + { + "dd-agent/conf.d/postgres.yaml".source = postgresqlConfig; + }) // + (optionalAttrs (cfg.nginxConfig != null) + { + "dd-agent/conf.d/nginx.yaml".source = nginxConfig; + }) // + (optionalAttrs (cfg.mongoConfig != null) + { + "dd-agent/conf.d/mongo.yaml".source = mongoConfig; + }) // + (optionalAttrs (cfg.processConfig != null) + { + "dd-agent/conf.d/process.yaml".source = processConfig; + }) // + (optionalAttrs (cfg.jmxConfig != null) + { + "dd-agent/conf.d/jmx.yaml".source = jmxConfig; }); in { diff --git a/nixos/modules/services/monitoring/fusion-inventory.nix b/nixos/modules/services/monitoring/fusion-inventory.nix index fe19ed56195..9b65c76ce02 100644 --- a/nixos/modules/services/monitoring/fusion-inventory.nix +++ b/nixos/modules/services/monitoring/fusion-inventory.nix @@ -46,8 +46,7 @@ in { config = mkIf cfg.enable { - users.users = singleton { - name = "fusion-inventory"; + users.users.fusion-inventory = { description = "FusionInventory user"; isSystemUser = true; }; diff --git a/nixos/modules/services/monitoring/graphite.nix b/nixos/modules/services/monitoring/graphite.nix index f7874af3df2..dd147bb3793 100644 --- a/nixos/modules/services/monitoring/graphite.nix +++ b/nixos/modules/services/monitoring/graphite.nix @@ -632,8 +632,7 @@ in { cfg.web.enable || cfg.api.enable || cfg.seyren.enable || cfg.pager.enable || cfg.beacon.enable ) { - users.users = singleton { - name = "graphite"; + users.users.graphite = { uid = config.ids.uids.graphite; description = "Graphite daemon user"; home = dataDir; diff --git a/nixos/modules/services/monitoring/heapster.nix b/nixos/modules/services/monitoring/heapster.nix index 6da0831b4c5..585632943fd 100644 --- a/nixos/modules/services/monitoring/heapster.nix +++ b/nixos/modules/services/monitoring/heapster.nix @@ -49,8 +49,7 @@ in { }; }; - users.users = singleton { - name = "heapster"; + users.users.heapsterrs = { uid = config.ids.uids.heapster; description = "Heapster user"; }; diff --git a/nixos/modules/services/monitoring/munin.nix b/nixos/modules/services/monitoring/munin.nix index 8af0650c738..1ebf7ee6a76 100644 --- a/nixos/modules/services/monitoring/munin.nix +++ b/nixos/modules/services/monitoring/munin.nix @@ -317,18 +317,16 @@ in environment.systemPackages = [ pkgs.munin ]; - users.users = [{ - name = "munin"; + users.users.munin = { description = "Munin monitoring user"; group = "munin"; uid = config.ids.uids.munin; home = "/var/lib/munin"; - }]; + }; - users.groups = [{ - name = "munin"; + users.groups.munin = { gid = config.ids.gids.munin; - }]; + }; }) (mkIf nodeCfg.enable { diff --git a/nixos/modules/services/monitoring/nagios.nix b/nixos/modules/services/monitoring/nagios.nix index 94f378bebc3..3ca79dddaf5 100644 --- a/nixos/modules/services/monitoring/nagios.nix +++ b/nixos/modules/services/monitoring/nagios.nix @@ -184,11 +184,7 @@ in # This isn't needed, it's just so that the user can type "nagiostats # -c /etc/nagios.cfg". - environment.etc = [ - { source = nagiosCfgFile; - target = "nagios.cfg"; - } - ]; + environment.etc."nagios.cfg".source = nagiosCfgFile; environment.systemPackages = [ pkgs.nagios ]; systemd.services.nagios = { diff --git a/nixos/modules/services/monitoring/netdata.nix b/nixos/modules/services/monitoring/netdata.nix index 3ffde8e9bce..f8225af2042 100644 --- a/nixos/modules/services/monitoring/netdata.nix +++ b/nixos/modules/services/monitoring/netdata.nix @@ -179,13 +179,14 @@ in { { domain = "netdata"; type = "hard"; item = "nofile"; value = "30000"; } ]; - users.users = optional (cfg.user == defaultUser) { - name = defaultUser; - isSystemUser = true; + users.users = optionalAttrs (cfg.user == defaultUser) { + ${defaultUser} = { + isSystemUser = true; + }; }; - users.groups = optional (cfg.group == defaultUser) { - name = defaultUser; + users.groups = optionalAttrs (cfg.group == defaultUser) { + ${defaultUser} = { }; }; }; diff --git a/nixos/modules/services/monitoring/statsd.nix b/nixos/modules/services/monitoring/statsd.nix index ea155821ecc..17836e95a6f 100644 --- a/nixos/modules/services/monitoring/statsd.nix +++ b/nixos/modules/services/monitoring/statsd.nix @@ -125,8 +125,7 @@ in message = "Only builtin backends (graphite, console, repeater) or backends enumerated in `pkgs.nodePackages` are allowed!"; }) cfg.backends; - users.users = singleton { - name = "statsd"; + users.use.statsdrs = { uid = config.ids.uids.statsd; description = "Statsd daemon user"; }; diff --git a/nixos/modules/services/monitoring/telegraf.nix b/nixos/modules/services/monitoring/telegraf.nix index d8786732668..5d131557e8b 100644 --- a/nixos/modules/services/monitoring/telegraf.nix +++ b/nixos/modules/services/monitoring/telegraf.nix @@ -63,10 +63,9 @@ in { }; }; - users.users = [{ - name = "telegraf"; + users.users.telegraf = { uid = config.ids.uids.telegraf; description = "telegraf daemon user"; - }]; + }; }; } diff --git a/nixos/modules/services/monitoring/ups.nix b/nixos/modules/services/monitoring/ups.nix index 1bdc4e4410f..a45e806d4ad 100644 --- a/nixos/modules/services/monitoring/ups.nix +++ b/nixos/modules/services/monitoring/ups.nix @@ -214,14 +214,12 @@ in environment.NUT_STATEPATH = "/var/lib/nut/"; }; - environment.etc = [ - { source = pkgs.writeText "nut.conf" + environment.etc = { + "nut/nut.conf".source = pkgs.writeText "nut.conf" '' MODE = ${cfg.mode} ''; - target = "nut/nut.conf"; - } - { source = pkgs.writeText "ups.conf" + "nut/ups.conf".source = pkgs.writeText "ups.conf" '' maxstartdelay = ${toString cfg.maxStartDelay} @@ -229,25 +227,15 @@ in "} ''; - target = "nut/ups.conf"; - } - { source = cfg.schedulerRules; - target = "nut/upssched.conf"; - } + "nut/upssched.conf".source = cfg.schedulerRules; # These file are containing private informations and thus should not # be stored inside the Nix store. /* - { source = ; - target = "nut/upsd.conf"; - } - { source = ; - target = "nut/upsd.users"; - } - { source = ; - target = "nut/upsmon.conf; - } + "nut/upsd.conf".source = ""; + "nut/upsd.users".source = ""; + "nut/upsmon.conf".source = ""; */ - ]; + }; power.ups.schedulerRules = mkDefault "${pkgs.nut}/etc/upssched.conf.sample"; @@ -259,21 +247,16 @@ in /* - users.users = [ - { name = "nut"; - uid = 84; + users.users.nut = + { uid = 84; home = "/var/lib/nut"; createHome = true; group = "nut"; description = "UPnP A/V Media Server user"; - } - ]; - - users.groups = [ - { name = "nut"; - gid = 84; - } - ]; + }; + + users.groups."nut" = + { gid = 84; }; */ }; diff --git a/nixos/modules/services/network-filesystems/ceph.nix b/nixos/modules/services/network-filesystems/ceph.nix index 543a7b25d5d..d17959a6a30 100644 --- a/nixos/modules/services/network-filesystems/ceph.nix +++ b/nixos/modules/services/network-filesystems/ceph.nix @@ -371,15 +371,14 @@ in in generators.toINI {} totalConfig; - users.users = singleton { - name = "ceph"; + users.users.ceph = { uid = config.ids.uids.ceph; description = "Ceph daemon user"; group = "ceph"; extraGroups = [ "disk" ]; }; - users.groups = singleton { - name = "ceph"; + + users.groups.ceph = { gid = config.ids.gids.ceph; }; diff --git a/nixos/modules/services/network-filesystems/davfs2.nix b/nixos/modules/services/network-filesystems/davfs2.nix index 100d458d536..4b6f85e4a2c 100644 --- a/nixos/modules/services/network-filesystems/davfs2.nix +++ b/nixos/modules/services/network-filesystems/davfs2.nix @@ -57,18 +57,19 @@ in environment.systemPackages = [ pkgs.davfs2 ]; environment.etc."davfs2/davfs2.conf".source = cfgFile; - users.groups = optionalAttrs (cfg.davGroup == "davfs2") (singleton { - name = "davfs2"; - gid = config.ids.gids.davfs2; - }); + users.groups = optionalAttrs (cfg.davGroup == "davfs2") { + davfs2.gid = config.ids.gids.davfs2; + }; + + users.users = optionalAttrs (cfg.davUser == "davfs2") { + davfs2 = { + createHome = false; + group = cfg.davGroup; + uid = config.ids.uids.davfs2; + description = "davfs2 user"; + }; + }; - users.users = optionalAttrs (cfg.davUser == "davfs2") (singleton { - name = "davfs2"; - createHome = false; - group = cfg.davGroup; - uid = config.ids.uids.davfs2; - description = "davfs2 user"; - }); }; } diff --git a/nixos/modules/services/network-filesystems/drbd.nix b/nixos/modules/services/network-filesystems/drbd.nix index 4ab74ed8e1c..916e7eaaaa9 100644 --- a/nixos/modules/services/network-filesystems/drbd.nix +++ b/nixos/modules/services/network-filesystems/drbd.nix @@ -47,10 +47,8 @@ let cfg = config.services.drbd; in options drbd usermode_helper=/run/current-system/sw/bin/drbdadm ''; - environment.etc = singleton - { source = pkgs.writeText "drbd.conf" cfg.config; - target = "drbd.conf"; - }; + environment.etc.drbd.conf = + { source = pkgs.writeText "drbd.conf" cfg.config; }; systemd.services.drbd = { after = [ "systemd-udev.settle.service" "network.target" ]; diff --git a/nixos/modules/services/networking/bind.nix b/nixos/modules/services/networking/bind.nix index d09c6735e12..e3b95afb3d8 100644 --- a/nixos/modules/services/networking/bind.nix +++ b/nixos/modules/services/networking/bind.nix @@ -178,9 +178,8 @@ in networking.resolvconf.useLocalResolver = mkDefault true; - users.users = singleton - { name = bindUser; - uid = config.ids.uids.bind; + users.users.${bindUser} = + { uid = config.ids.uids.bind; description = "BIND daemon user"; }; diff --git a/nixos/modules/services/networking/bitlbee.nix b/nixos/modules/services/networking/bitlbee.nix index 274b3617160..54fe70f7ccc 100644 --- a/nixos/modules/services/networking/bitlbee.nix +++ b/nixos/modules/services/networking/bitlbee.nix @@ -161,8 +161,7 @@ in config = mkMerge [ (mkIf config.services.bitlbee.enable { - users.users = singleton { - name = "bitlbee"; + users.users.bitlbee = { uid = bitlbeeUid; description = "BitlBee user"; home = "/var/lib/bitlbee"; diff --git a/nixos/modules/services/networking/charybdis.nix b/nixos/modules/services/networking/charybdis.nix index da26246e703..43829d36e41 100644 --- a/nixos/modules/services/networking/charybdis.nix +++ b/nixos/modules/services/networking/charybdis.nix @@ -71,15 +71,13 @@ in config = mkIf cfg.enable (lib.mkMerge [ { - users.users = singleton { - name = cfg.user; + users.users.${cfg.user} = { description = "Charybdis IRC daemon user"; uid = config.ids.uids.ircd; group = cfg.group; }; - users.groups = singleton { - name = cfg.group; + users.groups.${cfg.group} = { gid = config.ids.gids.ircd; }; diff --git a/nixos/modules/services/networking/coturn.nix b/nixos/modules/services/networking/coturn.nix index c430ce5af92..1bfbc307c59 100644 --- a/nixos/modules/services/networking/coturn.nix +++ b/nixos/modules/services/networking/coturn.nix @@ -294,16 +294,14 @@ in { }; config = mkIf cfg.enable { - users.users = [ - { name = "turnserver"; - uid = config.ids.uids.turnserver; + users.users.turnserver = + { uid = config.ids.uids.turnserver; description = "coturn TURN server user"; - } ]; - users.groups = [ - { name = "turnserver"; - gid = config.ids.gids.turnserver; + }; + users.groups.turnserver = + { gid = config.ids.gids.turnserver; members = [ "turnserver" ]; - } ]; + }; systemd.services.coturn = { description = "coturn TURN server"; diff --git a/nixos/modules/services/networking/dhcpcd.nix b/nixos/modules/services/networking/dhcpcd.nix index 7b278603455..6fbc014db71 100644 --- a/nixos/modules/services/networking/dhcpcd.nix +++ b/nixos/modules/services/networking/dhcpcd.nix @@ -185,11 +185,7 @@ in environment.systemPackages = [ dhcpcd ]; - environment.etc = - [ { source = exitHook; - target = "dhcpcd.exit-hook"; - } - ]; + environment.etc."dhcpcd.exit-hook".source = exitHook; powerManagement.resumeCommands = mkIf config.systemd.services.dhcpcd.enable '' diff --git a/nixos/modules/services/networking/dnschain.nix b/nixos/modules/services/networking/dnschain.nix index 2586f2d74e9..003609ea705 100644 --- a/nixos/modules/services/networking/dnschain.nix +++ b/nixos/modules/services/networking/dnschain.nix @@ -147,8 +147,7 @@ in ''; }; - users.users = singleton { - name = username; + users.users.${username} = { description = "DNSChain daemon user"; home = dataDir; createHome = true; diff --git a/nixos/modules/services/networking/dnsmasq.nix b/nixos/modules/services/networking/dnsmasq.nix index 714a5903bff..377d7bc5705 100644 --- a/nixos/modules/services/networking/dnsmasq.nix +++ b/nixos/modules/services/networking/dnsmasq.nix @@ -86,8 +86,7 @@ in services.dbus.packages = [ dnsmasq ]; - users.users = singleton { - name = "dnsmasq"; + users.users.dnsmasq = { uid = config.ids.uids.dnsmasq; description = "Dnsmasq daemon user"; }; diff --git a/nixos/modules/services/networking/ejabberd.nix b/nixos/modules/services/networking/ejabberd.nix index 6a38f85c48a..a5af25b983b 100644 --- a/nixos/modules/services/networking/ejabberd.nix +++ b/nixos/modules/services/networking/ejabberd.nix @@ -94,18 +94,18 @@ in { config = mkIf cfg.enable { environment.systemPackages = [ cfg.package ]; - users.users = optionalAttrs (cfg.user == "ejabberd") (singleton - { name = "ejabberd"; + users.users = optionalAttrs (cfg.user == "ejabberd") { + ejabberd = { group = cfg.group; home = cfg.spoolDir; createHome = true; uid = config.ids.uids.ejabberd; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "ejabberd") (singleton - { name = "ejabberd"; - gid = config.ids.gids.ejabberd; - }); + users.groups = optionalAttrs (cfg.group == "ejabberd") { + ejabberd.gid = config.ids.gids.ejabberd; + }; systemd.services.ejabberd = { description = "ejabberd server"; diff --git a/nixos/modules/services/networking/gale.nix b/nixos/modules/services/networking/gale.nix index 7083d87c407..cb954fd836b 100644 --- a/nixos/modules/services/networking/gale.nix +++ b/nixos/modules/services/networking/gale.nix @@ -104,14 +104,13 @@ in systemPackages = [ pkgs.gale ]; }; - users.users = [{ - name = cfg.user; + users.users.${cfg.user} = { description = "Gale daemon"; uid = config.ids.uids.gale; group = cfg.group; home = home; createHome = true; - }]; + }; users.groups = [{ name = cfg.group; diff --git a/nixos/modules/services/networking/git-daemon.nix b/nixos/modules/services/networking/git-daemon.nix index a638a3083fb..6f2e149433f 100644 --- a/nixos/modules/services/networking/git-daemon.nix +++ b/nixos/modules/services/networking/git-daemon.nix @@ -104,16 +104,16 @@ in config = mkIf cfg.enable { - users.users = if cfg.user != "git" then {} else singleton - { name = "git"; + users.users = optionalAttrs (cfg.user != "git") { + git = { uid = config.ids.uids.git; description = "Git daemon user"; }; + }; - users.groups = if cfg.group != "git" then {} else singleton - { name = "git"; - gid = config.ids.gids.git; - }; + users.groups = optionalAttrs (cfg.group != "git") { + git.gid = config.ids.gids.git; + }; systemd.services.git-daemon = { after = [ "network.target" ]; diff --git a/nixos/modules/services/networking/hans.nix b/nixos/modules/services/networking/hans.nix index 4f60300f5ff..8334dc68d62 100644 --- a/nixos/modules/services/networking/hans.nix +++ b/nixos/modules/services/networking/hans.nix @@ -135,8 +135,7 @@ in }; }; - users.users = singleton { - name = hansUser; + users.users.${hansUser} = { description = "Hans daemon user"; isSystemUser = true; }; diff --git a/nixos/modules/services/networking/i2pd.nix b/nixos/modules/services/networking/i2pd.nix index e2c2275b551..326d34f6ca9 100644 --- a/nixos/modules/services/networking/i2pd.nix +++ b/nixos/modules/services/networking/i2pd.nix @@ -158,10 +158,10 @@ let (sec "addressbook") (strOpt "defaulturl" cfg.addressbook.defaulturl) ] ++ (optionalEmptyList "subscriptions" cfg.addressbook.subscriptions) - ++ (flip map - (collect (proto: proto ? port && proto ? address && proto ? name) cfg.proto) + ++ (flip mapAttrs + (collect (name: proto: proto ? port && proto ? address && proto ? name) cfg.proto) (proto: let protoOpts = [ - (sec proto.name) + (sec name) (boolOpt "enabled" proto.enable) (strOpt "address" proto.address) (intOpt "port" proto.port) @@ -181,10 +181,10 @@ let tunnelConf = let opts = [ notice - (flip map - (collect (tun: tun ? port && tun ? destination) cfg.outTunnels) + (flip mapAttrs + (collect (name: tun: tun ? port && tun ? destination) cfg.outTunnels) (tun: let outTunOpts = [ - (sec tun.name) + (sec name) "type = client" (intOpt "port" tun.port) (strOpt "destination" tun.destination) @@ -204,10 +204,10 @@ let ++ (if tun ? crypto.tagsToSend then optionalNullInt "crypto.tagstosend" tun.crypto.tagsToSend else []); in concatStringsSep "\n" outTunOpts)) - (flip map - (collect (tun: tun ? port && tun ? address) cfg.inTunnels) + (flip mapAttrs + (collect (name: tun: tun ? port && tun ? address) cfg.inTunnels) (tun: let inTunOpts = [ - (sec tun.name) + (sec name) "type = server" (intOpt "port" tun.port) (strOpt "host" tun.address) diff --git a/nixos/modules/services/networking/iodine.nix b/nixos/modules/services/networking/iodine.nix index 97b5843bbcf..f9ca26c2796 100644 --- a/nixos/modules/services/networking/iodine.nix +++ b/nixos/modules/services/networking/iodine.nix @@ -147,8 +147,7 @@ in }; }; - users.users = singleton { - name = iodinedUser; + users.users.${iodinedUser} = { uid = config.ids.uids.iodined; description = "Iodine daemon user"; }; diff --git a/nixos/modules/services/networking/ircd-hybrid/default.nix b/nixos/modules/services/networking/ircd-hybrid/default.nix index f5abe61a1ba..b236552eb65 100644 --- a/nixos/modules/services/networking/ircd-hybrid/default.nix +++ b/nixos/modules/services/networking/ircd-hybrid/default.nix @@ -112,9 +112,8 @@ in config = mkIf config.services.ircdHybrid.enable { - users.users = singleton - { name = "ircd"; - description = "IRCD owner"; + users.users.ircd = + { description = "IRCD owner"; group = "ircd"; uid = config.ids.uids.ircd; }; diff --git a/nixos/modules/services/networking/kippo.nix b/nixos/modules/services/networking/kippo.nix index bdea6a1d1ca..553415a2f32 100644 --- a/nixos/modules/services/networking/kippo.nix +++ b/nixos/modules/services/networking/kippo.nix @@ -73,12 +73,11 @@ in ${cfg.extraConfig} ''; - users.users = singleton { - name = "kippo"; + users.users.kippo = { description = "kippo web server privilege separation user"; uid = 108; # why does config.ids.uids.kippo give an error? }; - users.groups = singleton { name = "kippo";gid=108; }; + users.groups.kippo.gid = 108; systemd.services.kippo = with pkgs; { description = "Kippo Web Server"; diff --git a/nixos/modules/services/networking/kresd.nix b/nixos/modules/services/networking/kresd.nix index 574074944d5..5eb50a13ca9 100644 --- a/nixos/modules/services/networking/kresd.nix +++ b/nixos/modules/services/networking/kresd.nix @@ -74,16 +74,12 @@ in config = mkIf cfg.enable { environment.etc."kresd.conf".source = configFile; # not required - users.users = singleton - { name = "kresd"; - uid = config.ids.uids.kresd; + users.users.kresd = + { uid = config.ids.uids.kresd; group = "kresd"; description = "Knot-resolver daemon user"; }; - users.groups = singleton - { name = "kresd"; - gid = config.ids.gids.kresd; - }; + users.groups.kresd.gid = config.ids.gids.kresd; systemd.sockets.kresd = rec { wantedBy = [ "sockets.target" ]; diff --git a/nixos/modules/services/networking/matterbridge.nix b/nixos/modules/services/networking/matterbridge.nix index 682eaa6eb29..bad35133459 100644 --- a/nixos/modules/services/networking/matterbridge.nix +++ b/nixos/modules/services/networking/matterbridge.nix @@ -92,14 +92,15 @@ in warnings = optional options.services.matterbridge.configFile.isDefined "The option services.matterbridge.configFile is insecure and should be replaced with services.matterbridge.configPath"; - users.users = optional (cfg.user == "matterbridge") - { name = "matterbridge"; - group = "matterbridge"; - isSystemUser = true; + users.users = optionalAttrs (cfg.user == "matterbridge") + { matterbridge = { + group = "matterbridge"; + isSystemUser = true; + }; }; - users.groups = optional (cfg.group == "matterbridge") - { name = "matterbridge"; + users.groups = optionalAttrs (cfg.group == "matterbridge") + { matterbridge = { }; }; systemd.services.matterbridge = { diff --git a/nixos/modules/services/networking/mjpg-streamer.nix b/nixos/modules/services/networking/mjpg-streamer.nix index e0a6c112e3c..dbc35e2e71c 100644 --- a/nixos/modules/services/networking/mjpg-streamer.nix +++ b/nixos/modules/services/networking/mjpg-streamer.nix @@ -49,10 +49,11 @@ in { config = mkIf cfg.enable { - users.users = optional (cfg.user == "mjpg-streamer") { - name = "mjpg-streamer"; - uid = config.ids.uids.mjpg-streamer; - group = cfg.group; + users.users = optionalAttrs (cfg.user == "mjpg-streamer") { + mjpg-streamer = { + uid = config.ids.uids.mjpg-streamer; + group = cfg.group; + }; }; systemd.services.mjpg-streamer = { diff --git a/nixos/modules/services/networking/monero.nix b/nixos/modules/services/networking/monero.nix index 98a3456f639..b9536430868 100644 --- a/nixos/modules/services/networking/monero.nix +++ b/nixos/modules/services/networking/monero.nix @@ -197,17 +197,15 @@ in config = mkIf cfg.enable { - users.users = singleton { - name = "monero"; + users.users.monero = { uid = config.ids.uids.monero; description = "Monero daemon user"; home = dataDir; createHome = true; }; - users.groups = singleton { - name = "monero"; - gid = config.ids.gids.monero; + users.groups.monero = { + gid = config.ids.gids.monero; }; systemd.services.monero = { diff --git a/nixos/modules/services/networking/mxisd.nix b/nixos/modules/services/networking/mxisd.nix index a3d61922e57..b59371d241e 100644 --- a/nixos/modules/services/networking/mxisd.nix +++ b/nixos/modules/services/networking/mxisd.nix @@ -93,23 +93,20 @@ in { }; config = mkIf cfg.enable { - users.users = [ + users.users.mxisd = { - name = "mxisd"; group = "mxisd"; home = cfg.dataDir; createHome = true; shell = "${pkgs.bash}/bin/bash"; uid = config.ids.uids.mxisd; - } - ]; + }; - users.groups = [ + users.groups.mxisd = { - name = "mxisd"; + name = ""; gid = config.ids.gids.mxisd; - } - ]; + }; systemd.services.mxisd = { description = "a federated identity server for the matrix ecosystem"; diff --git a/nixos/modules/services/networking/namecoind.nix b/nixos/modules/services/networking/namecoind.nix index 43a9a0b2598..ead7f085943 100644 --- a/nixos/modules/services/networking/namecoind.nix +++ b/nixos/modules/services/networking/namecoind.nix @@ -154,16 +154,14 @@ in config = ${configFile} ''; - users.users = singleton { - name = "namecoin"; + users.users.namecoin = { uid = config.ids.uids.namecoin; description = "Namecoin daemon user"; home = dataDir; createHome = true; }; - users.groups = singleton { - name = "namecoin"; + users.groups.namecoin = { gid = config.ids.gids.namecoin; }; diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix index a949e0e0ec3..e817f295a44 100644 --- a/nixos/modules/services/networking/networkmanager.nix +++ b/nixos/modules/services/networking/networkmanager.nix @@ -362,62 +362,59 @@ in { } ]; - environment.etc = with pkgs; [ - { source = configFile; - target = "NetworkManager/NetworkManager.conf"; - } - { source = "${networkmanager-openvpn}/lib/NetworkManager/VPN/nm-openvpn-service.name"; - target = "NetworkManager/VPN/nm-openvpn-service.name"; - } - { source = "${networkmanager-vpnc}/lib/NetworkManager/VPN/nm-vpnc-service.name"; - target = "NetworkManager/VPN/nm-vpnc-service.name"; - } - { source = "${networkmanager-openconnect}/lib/NetworkManager/VPN/nm-openconnect-service.name"; - target = "NetworkManager/VPN/nm-openconnect-service.name"; - } - { source = "${networkmanager-fortisslvpn}/lib/NetworkManager/VPN/nm-fortisslvpn-service.name"; - target = "NetworkManager/VPN/nm-fortisslvpn-service.name"; - } - { source = "${networkmanager-l2tp}/lib/NetworkManager/VPN/nm-l2tp-service.name"; - target = "NetworkManager/VPN/nm-l2tp-service.name"; - } - { source = "${networkmanager-iodine}/lib/NetworkManager/VPN/nm-iodine-service.name"; - target = "NetworkManager/VPN/nm-iodine-service.name"; + environment.etc = with pkgs; { + "NetworkManager/NetworkManager.conf".source = configFile; + + "NetworkManager/VPN/nm-openvpn-service.name".source = + "${networkmanager-openvpn}/lib/NetworkManager/VPN/nm-openvpn-service.name"; + + "NetworkManager/VPN/nm-vpnc-service.name".source = + "${networkmanager-vpnc}/lib/NetworkManager/VPN/nm-vpnc-service.name"; + + "NetworkManager/VPN/nm-openconnect-service.name".source = + "${networkmanager-openconnect}/lib/NetworkManager/VPN/nm-openconnect-service.name"; + + "NetworkManager/VPN/nm-fortisslvpn-service.name".source = + "${networkmanager-fortisslvpn}/lib/NetworkManager/VPN/nm-fortisslvpn-service.name"; + + "NetworkManager/VPN/nm-l2tp-service.name".source = + "${networkmanager-l2tp}/lib/NetworkManager/VPN/nm-l2tp-service.name"; + + "NetworkManager/VPN/nm-iodine-service.name".source = + "${networkmanager-iodine}/lib/NetworkManager/VPN/nm-iodine-service.name"; } - ] ++ optional (cfg.appendNameservers != [] || cfg.insertNameservers != []) - { source = overrideNameserversScript; - target = "NetworkManager/dispatcher.d/02overridedns"; - } - ++ lib.imap1 (i: s: { - inherit (s) source; - target = "NetworkManager/dispatcher.d/${dispatcherTypesSubdirMap.${s.type}}03userscript${lib.fixedWidthNumber 4 i}"; - mode = "0544"; - }) cfg.dispatcherScripts - ++ optional cfg.enableStrongSwan - { source = "${pkgs.networkmanager_strongswan}/lib/NetworkManager/VPN/nm-strongswan-service.name"; - target = "NetworkManager/VPN/nm-strongswan-service.name"; - }; + // optionalAttrs (cfg.appendNameservers != [] || cfg.insertNameservers != []) + { + "NetworkManager/dispatcher.d/02overridedns".source = overrideNameserversScript; + } + // optionalAttrs cfg.enableStrongSwan + { + "NetworkManager/VPN/nm-strongswan-service.name".source = + "${pkgs.networkmanager_strongswan}/lib/NetworkManager/VPN/nm-strongswan-service.name"; + } + // listToAttrs (lib.imap1 (i: s: + { + name = "NetworkManager/dispatcher.d/${dispatcherTypesSubdirMap.${s.type}}03userscript${lib.fixedWidthNumber 4 i}"; + value = { mode = "0544"; inherit (s) source; }; + }) cfg.dispatcherScripts); environment.systemPackages = cfg.packages; - users.groups = [{ - name = "networkmanager"; - gid = config.ids.gids.networkmanager; - } - { - name = "nm-openvpn"; - gid = config.ids.gids.nm-openvpn; - }]; - users.users = [{ - name = "nm-openvpn"; - uid = config.ids.uids.nm-openvpn; - extraGroups = [ "networkmanager" ]; - } - { - name = "nm-iodine"; - isSystemUser = true; - group = "networkmanager"; - }]; + users.groups = { + networkmanager.gid = config.ids.gids.networkmanager; + nm-openvpn.gid = config.ids.gids.nm-openvpn; + }; + + users.users = { + nm-openvpn = { + uid = config.ids.uids.nm-openvpn; + extraGroups = [ "networkmanager" ]; + }; + nm-iodine = { + isSystemUser = true; + group = "networkmanager"; + }; + }; systemd.packages = cfg.packages; diff --git a/nixos/modules/services/networking/nntp-proxy.nix b/nixos/modules/services/networking/nntp-proxy.nix index d24d6f77a49..cc061bf6e3b 100644 --- a/nixos/modules/services/networking/nntp-proxy.nix +++ b/nixos/modules/services/networking/nntp-proxy.nix @@ -210,9 +210,8 @@ in config = mkIf cfg.enable { - users.users = singleton - { name = proxyUser; - uid = config.ids.uids.nntp-proxy; + users.users.${proxyUser} = + { uid = config.ids.uids.nntp-proxy; description = "NNTP-Proxy daemon user"; }; diff --git a/nixos/modules/services/networking/nsd.nix b/nixos/modules/services/networking/nsd.nix index bc0966e6b8e..344396638a6 100644 --- a/nixos/modules/services/networking/nsd.nix +++ b/nixos/modules/services/networking/nsd.nix @@ -899,13 +899,9 @@ in environment.systemPackages = [ nsdPkg ]; - users.groups = singleton { - name = username; - gid = config.ids.gids.nsd; - }; + users.groups.${username}.gid = config.ids.gids.nsd; - users.users = singleton { - name = username; + users.users.${username} = { description = "NSD service user"; home = stateDir; createHome = true; diff --git a/nixos/modules/services/networking/ntp/chrony.nix b/nixos/modules/services/networking/ntp/chrony.nix index c74476c7a15..da9d960cc14 100644 --- a/nixos/modules/services/networking/ntp/chrony.nix +++ b/nixos/modules/services/networking/ntp/chrony.nix @@ -79,14 +79,10 @@ in environment.systemPackages = [ pkgs.chrony ]; - users.groups = singleton - { name = "chrony"; - gid = config.ids.gids.chrony; - }; + users.groups.chrony.gid = config.ids.gids.chrony; - users.users = singleton - { name = "chrony"; - uid = config.ids.uids.chrony; + users.users.chrony = + { uid = config.ids.uids.chrony; group = "chrony"; description = "chrony daemon user"; home = stateDir; diff --git a/nixos/modules/services/networking/ntp/ntpd.nix b/nixos/modules/services/networking/ntp/ntpd.nix index 1197c84f045..b5403cb747d 100644 --- a/nixos/modules/services/networking/ntp/ntpd.nix +++ b/nixos/modules/services/networking/ntp/ntpd.nix @@ -104,9 +104,8 @@ in systemd.services.systemd-timedated.environment = { SYSTEMD_TIMEDATED_NTP_SERVICES = "ntpd.service"; }; - users.users = singleton - { name = ntpUser; - uid = config.ids.uids.ntp; + users.users.${ntpUser} = + { uid = config.ids.uids.ntp; description = "NTP daemon user"; home = stateDir; }; diff --git a/nixos/modules/services/networking/ntp/openntpd.nix b/nixos/modules/services/networking/ntp/openntpd.nix index 471d15b1687..67a04d48d30 100644 --- a/nixos/modules/services/networking/ntp/openntpd.nix +++ b/nixos/modules/services/networking/ntp/openntpd.nix @@ -60,8 +60,7 @@ in environment.etc."ntpd.conf".text = configFile; - users.users = singleton { - name = "ntp"; + users.users.ntp = { uid = config.ids.uids.ntp; description = "OpenNTP daemon user"; home = "/var/empty"; diff --git a/nixos/modules/services/networking/owamp.nix b/nixos/modules/services/networking/owamp.nix index dbb2e3b4c40..637ed618b89 100644 --- a/nixos/modules/services/networking/owamp.nix +++ b/nixos/modules/services/networking/owamp.nix @@ -17,16 +17,13 @@ in ###### implementation config = mkIf cfg.enable { - users.users = singleton { - name = "owamp"; + users.users.owamp = { group = "owamp"; description = "Owamp daemon"; isSystemUser = true; }; - users.groups = singleton { - name = "owamp"; - }; + users.groups.owamp = { }; systemd.services.owamp = { description = "Owamp server"; diff --git a/nixos/modules/services/networking/pdnsd.nix b/nixos/modules/services/networking/pdnsd.nix index f5b174dd7b7..24b5bbc5104 100644 --- a/nixos/modules/services/networking/pdnsd.nix +++ b/nixos/modules/services/networking/pdnsd.nix @@ -62,15 +62,13 @@ in }; config = mkIf cfg.enable { - users.users = singleton { - name = pdnsdUser; + users.users.${pdnsdUser} = { uid = config.ids.uids.pdnsd; group = pdnsdGroup; description = "pdnsd user"; }; - users.groups = singleton { - name = pdnsdGroup; + users.groups.${pdnsdGroup} = { gid = config.ids.gids.pdnsd; }; diff --git a/nixos/modules/services/networking/polipo.nix b/nixos/modules/services/networking/polipo.nix index dbe3b738097..1ff9388346b 100644 --- a/nixos/modules/services/networking/polipo.nix +++ b/nixos/modules/services/networking/polipo.nix @@ -85,17 +85,15 @@ in config = mkIf cfg.enable { - users.users = singleton - { name = "polipo"; - uid = config.ids.uids.polipo; + users.users.polipo = + { uid = config.ids.uids.polipo; description = "Polipo caching proxy user"; home = "/var/cache/polipo"; createHome = true; }; - users.groups = singleton - { name = "polipo"; - gid = config.ids.gids.polipo; + users.groups.polipo = + { gid = config.ids.gids.polipo; members = [ "polipo" ]; }; diff --git a/nixos/modules/services/networking/pppd.nix b/nixos/modules/services/networking/pppd.nix index e96c27bd84b..b31bfa64235 100644 --- a/nixos/modules/services/networking/pppd.nix +++ b/nixos/modules/services/networking/pppd.nix @@ -64,11 +64,13 @@ in enabledConfigs = filter (f: f.enable) (attrValues cfg.peers); mkEtc = peerCfg: { - "ppp/peers/${peerCfg.name}".text = peerCfg.config; + name = "ppp/peers/${peerCfg.name}"; + value.text = peerCfg.config; }; mkSystemd = peerCfg: { - "pppd-${peerCfg.name}" = { + name = "pppd-${peerCfg.name}"; + value = { restartTriggers = [ config.environment.etc."ppp/peers/${peerCfg.name}".source ]; before = [ "network.target" ]; wants = [ "network.target" ]; @@ -124,8 +126,8 @@ in }; }; - etcFiles = map mkEtc enabledConfigs; - systemdConfigs = map mkSystemd enabledConfigs; + etcFiles = listToAttrs (map mkEtc enabledConfigs); + systemdConfigs = listToAttrs (map mkSystemd enabledConfigs); in mkIf cfg.enable { environment.etc = mkMerge etcFiles; diff --git a/nixos/modules/services/networking/prayer.nix b/nixos/modules/services/networking/prayer.nix index c936417e68c..9c9eeba23da 100644 --- a/nixos/modules/services/networking/prayer.nix +++ b/nixos/modules/services/networking/prayer.nix @@ -72,17 +72,14 @@ in config = mkIf config.services.prayer.enable { environment.systemPackages = [ prayer ]; - users.users = singleton - { name = prayerUser; - uid = config.ids.uids.prayer; + users.users.${prayerUser} = + { uid = config.ids.uids.prayer; description = "Prayer daemon user"; home = stateDir; }; - users.groups = singleton - { name = prayerGroup; - gid = config.ids.gids.prayer; - }; + users.groups.${prayerGroup} = + { gid = config.ids.gids.prayer; }; systemd.services.prayer = { wantedBy = [ "multi-user.target" ]; diff --git a/nixos/modules/services/networking/radicale.nix b/nixos/modules/services/networking/radicale.nix index 1daced4a6c7..30bf22586f8 100644 --- a/nixos/modules/services/networking/radicale.nix +++ b/nixos/modules/services/networking/radicale.nix @@ -59,18 +59,15 @@ in config = mkIf cfg.enable { environment.systemPackages = [ cfg.package ]; - users.users = singleton - { name = "radicale"; - uid = config.ids.uids.radicale; + users.users.radicale = + { uid = config.ids.uids.radicale; description = "radicale user"; home = "/var/lib/radicale"; createHome = true; }; - users.groups = singleton - { name = "radicale"; - gid = config.ids.gids.radicale; - }; + users.groups.radicale = + { gid = config.ids.gids.radicale; }; systemd.services.radicale = { description = "A Simple Calendar and Contact Server"; diff --git a/nixos/modules/services/networking/shairport-sync.nix b/nixos/modules/services/networking/shairport-sync.nix index 68e005ab81d..2e988e0ca2e 100644 --- a/nixos/modules/services/networking/shairport-sync.nix +++ b/nixos/modules/services/networking/shairport-sync.nix @@ -55,9 +55,8 @@ in services.avahi.publish.enable = true; services.avahi.publish.userServices = true; - users.users = singleton - { name = cfg.user; - description = "Shairport user"; + users.users.${cfg.user} = + { description = "Shairport user"; isSystemUser = true; createHome = true; home = "/var/lib/shairport-sync"; diff --git a/nixos/modules/services/networking/shout.nix b/nixos/modules/services/networking/shout.nix index e548ec66962..a808a7f39d0 100644 --- a/nixos/modules/services/networking/shout.nix +++ b/nixos/modules/services/networking/shout.nix @@ -82,8 +82,7 @@ in { }; config = mkIf cfg.enable { - users.users = singleton { - name = "shout"; + users.users.shout = { uid = config.ids.uids.shout; description = "Shout daemon user"; home = shoutHome; diff --git a/nixos/modules/services/networking/smokeping.nix b/nixos/modules/services/networking/smokeping.nix index b48b0b3a9d6..37ee2a80389 100644 --- a/nixos/modules/services/networking/smokeping.nix +++ b/nixos/modules/services/networking/smokeping.nix @@ -280,8 +280,7 @@ in fping6.source = "${pkgs.fping}/bin/fping6"; }; environment.systemPackages = [ pkgs.fping ]; - users.users = singleton { - name = cfg.user; + users.users.${cfg.user} = { isNormalUser = false; isSystemUser = true; uid = config.ids.uids.smokeping; diff --git a/nixos/modules/services/networking/supybot.nix b/nixos/modules/services/networking/supybot.nix index 64eb1106832..92c84bd0e1e 100644 --- a/nixos/modules/services/networking/supybot.nix +++ b/nixos/modules/services/networking/supybot.nix @@ -45,8 +45,7 @@ in environment.systemPackages = [ pkgs.pythonPackages.limnoria ]; - users.users = singleton { - name = "supybot"; + users.users.supybotrs = { uid = config.ids.uids.supybot; group = "supybot"; description = "Supybot IRC bot user"; @@ -55,7 +54,6 @@ in }; users.groups.supybot = { - name = "supybot"; gid = config.ids.gids.supybot; }; diff --git a/nixos/modules/services/networking/tcpcrypt.nix b/nixos/modules/services/networking/tcpcrypt.nix index a0ccb995009..18f2e135124 100644 --- a/nixos/modules/services/networking/tcpcrypt.nix +++ b/nixos/modules/services/networking/tcpcrypt.nix @@ -29,8 +29,7 @@ in config = mkIf cfg.enable { - users.users = singleton { - name = "tcpcryptd"; + users.users.tcpcryptd = { uid = config.ids.uids.tcpcryptd; description = "tcpcrypt daemon user"; }; diff --git a/nixos/modules/services/networking/tox-bootstrapd.nix b/nixos/modules/services/networking/tox-bootstrapd.nix index 1d349215169..f88e34827d0 100644 --- a/nixos/modules/services/networking/tox-bootstrapd.nix +++ b/nixos/modules/services/networking/tox-bootstrapd.nix @@ -56,9 +56,8 @@ in config = mkIf config.services.toxBootstrapd.enable { - users.users = singleton - { name = "tox-bootstrapd"; - uid = config.ids.uids.tox-bootstrapd; + users.users.tox-bootstrapd = + { uid = config.ids.uids.tox-bootstrapd; description = "Tox bootstrap daemon user"; inherit home; createHome = true; diff --git a/nixos/modules/services/networking/vsftpd.nix b/nixos/modules/services/networking/vsftpd.nix index 90093d9a78d..47990dbb377 100644 --- a/nixos/modules/services/networking/vsftpd.nix +++ b/nixos/modules/services/networking/vsftpd.nix @@ -279,21 +279,22 @@ in message = "vsftpd: If enableVirtualUsers is true, you need to setup both the userDbPath and localUsers options."; }]; - users.users = - [ { name = "vsftpd"; - uid = config.ids.uids.vsftpd; - description = "VSFTPD user"; - home = if cfg.localRoot != null - then cfg.localRoot # <= Necessary for virtual users. - else "/homeless-shelter"; - } - ] ++ optional cfg.anonymousUser - { name = "ftp"; + users.users = { + "vsftpd" = { + uid = config.ids.uids.vsftpd; + description = "VSFTPD user"; + home = if cfg.localRoot != null + then cfg.localRoot # <= Necessary for virtual users. + else "/homeless-shelter"; + }; + } // optionalAttrs cfg.anonymousUser { + "ftp" = { name = "ftp"; uid = config.ids.uids.ftp; group = "ftp"; description = "Anonymous FTP user"; home = cfg.anonymousUserHome; }; + }; users.groups.ftp.gid = config.ids.gids.ftp; diff --git a/nixos/modules/services/networking/znc/default.nix b/nixos/modules/services/networking/znc/default.nix index 0a9848a4934..a7315896c50 100644 --- a/nixos/modules/services/networking/znc/default.nix +++ b/nixos/modules/services/networking/znc/default.nix @@ -287,20 +287,22 @@ in ''; }; - users.users = optional (cfg.user == defaultUser) - { name = defaultUser; - description = "ZNC server daemon owner"; - group = defaultUser; - uid = config.ids.uids.znc; - home = cfg.dataDir; - createHome = true; + users.users = optionalAttrs (cfg.user == defaultUser) { + ${defaultUser} = + { description = "ZNC server daemon owner"; + group = defaultUser; + uid = config.ids.uids.znc; + home = cfg.dataDir; + createHome = true; + }; }; - users.groups = optional (cfg.user == defaultUser) - { name = defaultUser; - gid = config.ids.gids.znc; - members = [ defaultUser ]; - }; + users.groups = optionalAttrs (cfg.user == defaultUser) { + ${defaultUser} = + { gid = config.ids.gids.znc; + members = [ defaultUser ]; + }; + }; }; } diff --git a/nixos/modules/services/printing/cupsd.nix b/nixos/modules/services/printing/cupsd.nix index cc35be49bc3..59306d625e6 100644 --- a/nixos/modules/services/printing/cupsd.nix +++ b/nixos/modules/services/printing/cupsd.nix @@ -288,9 +288,8 @@ in config = mkIf config.services.printing.enable { - users.users = singleton - { name = "cups"; - uid = config.ids.uids.cups; + users.users.cups = + { uid = config.ids.uids.cups; group = "lp"; description = "CUPS printing services"; }; diff --git a/nixos/modules/services/scheduling/atd.nix b/nixos/modules/services/scheduling/atd.nix index a32907647a0..93ed9231d3c 100644 --- a/nixos/modules/services/scheduling/atd.nix +++ b/nixos/modules/services/scheduling/atd.nix @@ -57,17 +57,13 @@ in security.pam.services.atd = {}; - users.users = singleton - { name = "atd"; - uid = config.ids.uids.atd; + users.users.atd = + { uid = config.ids.uids.atd; description = "atd user"; home = "/var/empty"; }; - users.groups = singleton - { name = "atd"; - gid = config.ids.gids.atd; - }; + users.groups.atd.gid = config.ids.gids.atd; systemd.services.atd = { description = "Job Execution Daemon (atd)"; diff --git a/nixos/modules/services/scheduling/fcron.nix b/nixos/modules/services/scheduling/fcron.nix index e43ca014e14..42bed21bf25 100644 --- a/nixos/modules/services/scheduling/fcron.nix +++ b/nixos/modules/services/scheduling/fcron.nix @@ -86,7 +86,8 @@ in services.fcron.systab = systemCronJobs; - environment.etc = + environment.etc = listToAttrs + (map (x: { name = x.target; value = x; }) [ (allowdeny "allow" (cfg.allow)) (allowdeny "deny" cfg.deny) # see man 5 fcron.conf @@ -112,7 +113,7 @@ in gid = config.ids.gids.fcron; mode = "0644"; } - ]; + ]); environment.systemPackages = [ pkgs.fcron ]; users.users.fcron = { diff --git a/nixos/modules/services/search/hound.nix b/nixos/modules/services/search/hound.nix index 6740928db9a..7a44489efe6 100644 --- a/nixos/modules/services/search/hound.nix +++ b/nixos/modules/services/search/hound.nix @@ -88,19 +88,19 @@ in { }; config = mkIf cfg.enable { - users.groups = optional (cfg.group == "hound") { - name = "hound"; - gid = config.ids.gids.hound; + users.groups = optionalAttrs (cfg.group == "hound") { + hound.gid = config.ids.gids.hound; }; - users.users = optional (cfg.user == "hound") { - name = "hound"; - description = "hound code search"; - createHome = true; - home = cfg.home; - group = cfg.group; - extraGroups = cfg.extraGroups; - uid = config.ids.uids.hound; + users.users = optionalAttrs (cfg.user == "hound") { + hound = { + description = "hound code search"; + createHome = true; + home = cfg.home; + group = cfg.group; + extraGroups = cfg.extraGroups; + uid = config.ids.uids.hound; + }; }; systemd.services.hound = { diff --git a/nixos/modules/services/search/kibana.nix b/nixos/modules/services/search/kibana.nix index 43a63aa8fdc..2beb265ee5d 100644 --- a/nixos/modules/services/search/kibana.nix +++ b/nixos/modules/services/search/kibana.nix @@ -198,8 +198,7 @@ in { environment.systemPackages = [ cfg.package ]; - users.users = singleton { - name = "kibana"; + users.users.kibana = { uid = config.ids.uids.kibana; description = "Kibana service user"; home = cfg.dataDir; diff --git a/nixos/modules/services/search/solr.nix b/nixos/modules/services/search/solr.nix index 5ef7d9893a4..b2176225493 100644 --- a/nixos/modules/services/search/solr.nix +++ b/nixos/modules/services/search/solr.nix @@ -100,18 +100,18 @@ in }; }; - users.users = optionalAttrs (cfg.user == "solr") (singleton - { name = "solr"; + users.users = optionalAttrs (cfg.user == "solr") { + solr = { group = cfg.group; home = cfg.stateDir; createHome = true; uid = config.ids.uids.solr; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "solr") (singleton - { name = "solr"; - gid = config.ids.gids.solr; - }); + users.groups = optionalAttrs (cfg.group == "solr") { + solr.gid = config.ids.gids.solr; + }; }; diff --git a/nixos/modules/services/security/clamav.nix b/nixos/modules/services/security/clamav.nix index ef5bde7907e..aaf6fb0479b 100644 --- a/nixos/modules/services/security/clamav.nix +++ b/nixos/modules/services/security/clamav.nix @@ -83,18 +83,15 @@ in config = mkIf (cfg.updater.enable || cfg.daemon.enable) { environment.systemPackages = [ pkg ]; - users.users = singleton { - name = clamavUser; + users.users.${clamavUser} = { uid = config.ids.uids.clamav; group = clamavGroup; description = "ClamAV daemon user"; home = stateDir; }; - users.groups = singleton { - name = clamavGroup; - gid = config.ids.gids.clamav; - }; + users.groups.${clamavGroup} = + { gid = config.ids.gids.clamav; }; environment.etc."clamav/freshclam.conf".source = freshclamConfigFile; environment.etc."clamav/clamd.conf".source = clamdConfigFile; diff --git a/nixos/modules/services/security/fprot.nix b/nixos/modules/services/security/fprot.nix index 47449039146..f203f2abc03 100644 --- a/nixos/modules/services/security/fprot.nix +++ b/nixos/modules/services/security/fprot.nix @@ -48,22 +48,18 @@ in { services.fprot.updater.licenseKeyfile = mkDefault "${pkgs.fprot}/opt/f-prot/license.key"; environment.systemPackages = [ pkgs.fprot ]; - environment.etc = singleton { + environment.etc."f-prot.conf" = { source = "${pkgs.fprot}/opt/f-prot/f-prot.conf"; - target = "f-prot.conf"; }; - users.users = singleton - { name = fprotUser; - uid = config.ids.uids.fprot; + users.users.${fprotUser} = + { uid = config.ids.uids.fprot; description = "F-Prot daemon user"; home = stateDir; }; - users.groups = singleton - { name = fprotGroup; - gid = config.ids.gids.fprot; - }; + users.groups.${fprotGroup} = + { gid = config.ids.gids.fprot; }; services.cron.systemCronJobs = [ "*/${toString cfg.updater.frequency} * * * * root start fprot-updater" ]; diff --git a/nixos/modules/services/security/torsocks.nix b/nixos/modules/services/security/torsocks.nix index c60c745443b..47ac95c4626 100644 --- a/nixos/modules/services/security/torsocks.nix +++ b/nixos/modules/services/security/torsocks.nix @@ -112,10 +112,9 @@ in config = mkIf cfg.enable { environment.systemPackages = [ pkgs.torsocks (wrapTorsocks "torsocks-faster" cfg.fasterServer) ]; - environment.etc = - [ { source = pkgs.writeText "torsocks.conf" (configFile cfg.server); - target = "tor/torsocks.conf"; - } - ]; + environment.etc."tor/torsocks.conf" = + { + source = pkgs.writeText "torsocks.conf" (configFile cfg.server); + }; }; } diff --git a/nixos/modules/services/system/dbus.nix b/nixos/modules/services/system/dbus.nix index 936646a5fd7..4a60fec1ca8 100644 --- a/nixos/modules/services/system/dbus.nix +++ b/nixos/modules/services/system/dbus.nix @@ -68,10 +68,7 @@ in environment.systemPackages = [ pkgs.dbus.daemon pkgs.dbus ]; - environment.etc = singleton - { source = configDir; - target = "dbus-1"; - }; + environment.etc."dbus-1".source = configDir; users.users.messagebus = { uid = config.ids.uids.messagebus; diff --git a/nixos/modules/services/system/localtime.nix b/nixos/modules/services/system/localtime.nix index c3c0b432b49..74925c5e2c4 100644 --- a/nixos/modules/services/system/localtime.nix +++ b/nixos/modules/services/system/localtime.nix @@ -35,6 +35,10 @@ in { # Install the systemd unit. systemd.packages = [ pkgs.localtime.out ]; + users.users.localtimed = { + description = "Taskserver user"; + }; + systemd.services.localtime = { wantedBy = [ "multi-user.target" ]; serviceConfig.Restart = "on-failure"; diff --git a/nixos/modules/services/ttys/agetty.nix b/nixos/modules/services/ttys/agetty.nix index f127d8a0276..f3a629f7af7 100644 --- a/nixos/modules/services/ttys/agetty.nix +++ b/nixos/modules/services/ttys/agetty.nix @@ -102,7 +102,7 @@ in enable = mkDefault config.boot.isContainer; }; - environment.etc = singleton + environment.etc.issue = { # Friendly greeting on the virtual consoles. source = pkgs.writeText "issue" '' @@ -110,7 +110,6 @@ in ${config.services.mingetty.helpLine} ''; - target = "issue"; }; }; diff --git a/nixos/modules/services/web-apps/frab.nix b/nixos/modules/services/web-apps/frab.nix index a9a30b40922..1b5890d6b0c 100644 --- a/nixos/modules/services/web-apps/frab.nix +++ b/nixos/modules/services/web-apps/frab.nix @@ -173,15 +173,13 @@ in config = mkIf cfg.enable { environment.systemPackages = [ frab-rake ]; - users.users = [ - { name = cfg.user; - group = cfg.group; + users.users.${cfg.user} = + { group = cfg.group; home = "${cfg.statePath}"; isSystemUser = true; - } - ]; + }; - users.groups = [ { name = cfg.group; } ]; + users.groups.${cfg.group} = { }; systemd.tmpfiles.rules = [ "d '${cfg.statePath}/system/attachments' - ${cfg.user} ${cfg.group} - -" diff --git a/nixos/modules/services/web-apps/mattermost.nix b/nixos/modules/services/web-apps/mattermost.nix index 8c7fc4056ad..41c52b9653b 100644 --- a/nixos/modules/services/web-apps/mattermost.nix +++ b/nixos/modules/services/web-apps/mattermost.nix @@ -146,17 +146,17 @@ in config = mkMerge [ (mkIf cfg.enable { - users.users = optionalAttrs (cfg.user == "mattermost") (singleton { - name = "mattermost"; - group = cfg.group; - uid = config.ids.uids.mattermost; - home = cfg.statePath; - }); - - users.groups = optionalAttrs (cfg.group == "mattermost") (singleton { - name = "mattermost"; - gid = config.ids.gids.mattermost; - }); + users.users = optionalAttrs (cfg.user == "mattermost") { + mattermost = { + group = cfg.group; + uid = config.ids.uids.mattermost; + home = cfg.statePath; + }; + }; + + users.groups = optionalAttrs (cfg.group == "mattermost") { + mattermost.gid = config.ids.gids.mattermost; + }; services.postgresql.enable = cfg.localDatabaseCreate; diff --git a/nixos/modules/services/web-servers/apache-httpd/default.nix b/nixos/modules/services/web-servers/apache-httpd/default.nix index 3020fd68fc8..4460f89ec5c 100644 --- a/nixos/modules/services/web-servers/apache-httpd/default.nix +++ b/nixos/modules/services/web-servers/apache-httpd/default.nix @@ -606,17 +606,17 @@ in } ]; - users.users = optionalAttrs (mainCfg.user == "wwwrun") (singleton - { name = "wwwrun"; + users.users = optionalAttrs (mainCfg.user == "wwwrun") { + wwwrun = { group = mainCfg.group; description = "Apache httpd user"; uid = config.ids.uids.wwwrun; - }); + }; + }; - users.groups = optionalAttrs (mainCfg.group == "wwwrun") (singleton - { name = "wwwrun"; - gid = config.ids.gids.wwwrun; - }); + users.groups = optionalAttrs (mainCfg.group == "wwwrun") { + wwwrun.gid = config.ids.gids.wwwrun; + }; security.acme.certs = mapAttrs (name: hostOpts: { user = mainCfg.user; diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix index 60a5b503def..c8602e5975b 100644 --- a/nixos/modules/services/web-servers/nginx/default.nix +++ b/nixos/modules/services/web-servers/nginx/default.nix @@ -740,15 +740,16 @@ in listToAttrs acmePairs ); - users.users = optionalAttrs (cfg.user == "nginx") (singleton - { name = "nginx"; + users.users = optionalAttrs (cfg.user == "nginx") { + nginx = { group = cfg.group; uid = config.ids.uids.nginx; - }); + }; + }; + + users.groups = optionalAttrs (cfg.group == "nginx") { + nginx.gid = config.ids.gids.nginx; + }; - users.groups = optionalAttrs (cfg.group == "nginx") (singleton - { name = "nginx"; - gid = config.ids.gids.nginx; - }); }; } diff --git a/nixos/modules/services/web-servers/tomcat.nix b/nixos/modules/services/web-servers/tomcat.nix index 68261c50324..6d12925829f 100644 --- a/nixos/modules/services/web-servers/tomcat.nix +++ b/nixos/modules/services/web-servers/tomcat.nix @@ -194,14 +194,10 @@ in config = mkIf config.services.tomcat.enable { - users.groups = singleton - { name = "tomcat"; - gid = config.ids.gids.tomcat; - }; + users.groups.tomcat.gid = config.ids.gids.tomcat; - users.users = singleton - { name = "tomcat"; - uid = config.ids.uids.tomcat; + users.users.tomcat = + { uid = config.ids.uids.tomcat; description = "Tomcat user"; home = "/homeless-shelter"; extraGroups = cfg.extraGroups; diff --git a/nixos/modules/services/web-servers/unit/default.nix b/nixos/modules/services/web-servers/unit/default.nix index b07212580a5..2303dfa9540 100644 --- a/nixos/modules/services/web-servers/unit/default.nix +++ b/nixos/modules/services/web-servers/unit/default.nix @@ -129,14 +129,14 @@ in { }; }; - users.users = optionalAttrs (cfg.user == "unit") (singleton { - name = "unit"; - group = cfg.group; + users.users = optionalAttrs (cfg.user == "unit") { + unit.group = cfg.group; isSystemUser = true; - }); + }; + + users.groups = optionalAttrs (cfg.group == "unit") { + unit = { }; + }; - users.groups = optionalAttrs (cfg.group == "unit") (singleton { - name = "unit"; - }); }; } diff --git a/nixos/modules/services/web-servers/uwsgi.nix b/nixos/modules/services/web-servers/uwsgi.nix index af70f32f32d..0c727cf44ae 100644 --- a/nixos/modules/services/web-servers/uwsgi.nix +++ b/nixos/modules/services/web-servers/uwsgi.nix @@ -146,15 +146,15 @@ in { }; }; - users.users = optionalAttrs (cfg.user == "uwsgi") (singleton - { name = "uwsgi"; + users.users = optionalAttrs (cfg.user == "uwsgi") { + uwsgi = { group = cfg.group; uid = config.ids.uids.uwsgi; - }); + }; + }; - users.groups = optionalAttrs (cfg.group == "uwsgi") (singleton - { name = "uwsgi"; - gid = config.ids.gids.uwsgi; - }); + users.groups = optionalAttrs (cfg.group == "uwsgi") { + uwsgi.gid = config.ids.gids.uwsgi; + }; }; } diff --git a/nixos/modules/services/x11/desktop-managers/enlightenment.nix b/nixos/modules/services/x11/desktop-managers/enlightenment.nix index 04e82599b94..26b662a2a64 100644 --- a/nixos/modules/services/x11/desktop-managers/enlightenment.nix +++ b/nixos/modules/services/x11/desktop-managers/enlightenment.nix @@ -68,10 +68,7 @@ in security.wrappers = (import "${e.enlightenment}/e-wrappers.nix").security.wrappers; - environment.etc = singleton - { source = xcfg.xkbDir; - target = "X11/xkb"; - }; + environment.etc."X11/xkb".source = xcfg.xkbDir; fonts.fonts = [ pkgs.dejavu_fonts pkgs.ubuntu_font_family ]; diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix index fce274477b6..2538858ac0f 100644 --- a/nixos/modules/services/x11/desktop-managers/plasma5.nix +++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix @@ -183,10 +183,7 @@ in "/share" ]; - environment.etc = singleton { - source = xcfg.xkbDir; - target = "X11/xkb"; - }; + environment.etc."X11/xkb".source = xcfg.xkbDir; # Enable GTK applications to load SVG icons services.xserver.gdk-pixbuf.modulePackages = [ pkgs.librsvg ]; diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix index 6630f012f04..4de3dbd8770 100644 --- a/nixos/modules/services/x11/display-managers/gdm.nix +++ b/nixos/modules/services/x11/display-managers/gdm.nix @@ -159,22 +159,21 @@ in GDM_X_SESSION_WRAPPER = "${xSessionWrapper}"; }; execCmd = "exec ${gdm}/bin/gdm"; - preStart = optionalString config.hardware.pulseaudio.enable '' - mkdir -p /run/gdm/.config/pulse - ln -sf ${pulseConfig} /run/gdm/.config/pulse/default.pa - chown -R gdm:gdm /run/gdm/.config - '' + optionalString config.services.gnome3.gnome-initial-setup.enable '' - # Create stamp file for gnome-initial-setup to prevent run. - mkdir -p /run/gdm/.config - cat - > /run/gdm/.config/gnome-initial-setup-done <<- EOF - yes - EOF - '' + optionalString (defaultSessionName != null) '' + preStart = optionalString (defaultSessionName != null) '' # Set default session in session chooser to a specified values – basically ignore session history. ${setSessionScript}/bin/set-session ${cfg.sessionData.autologinSession} ''; }; + systemd.tmpfiles.rules = [ + "d /run/gdm/.config 0711 gdm gdm -" + ] ++ optionals config.hardware.pulseaudio.enable [ + "L+ /run/gdm/.config/pulse - - - - ${pulseConfig}" + ] ++ optionals config.services.gnome3.gnome-initial-setup.enable [ + # Create stamp file for gnome-initial-setup to prevent it starting in GDM. + "f /run/gdm/.config/gnome-initial-setup-done 0711 gdm gdm yes" + ]; + systemd.services.display-manager.wants = [ # Because sd_login_monitor_new requires /run/systemd/machines "systemd-machined.service" diff --git a/nixos/modules/services/x11/hardware/libinput.nix b/nixos/modules/services/x11/hardware/libinput.nix index 71065dfc26b..f6b0e7c09f5 100644 --- a/nixos/modules/services/x11/hardware/libinput.nix +++ b/nixos/modules/services/x11/hardware/libinput.nix @@ -198,12 +198,13 @@ in { environment.systemPackages = [ pkgs.xorg.xf86inputlibinput ]; - environment.etc = [ - (let cfgPath = "X11/xorg.conf.d/40-libinput.conf"; in { - source = pkgs.xorg.xf86inputlibinput.out + "/share/" + cfgPath; - target = cfgPath; - }) - ]; + environment.etc = + let cfgPath = "X11/xorg.conf.d/40-libinput.conf"; + in { + ${cfgPath} = { + source = pkgs.xorg.xf86inputlibinput.out + "/share/" + cfgPath; + }; + }; services.udev.packages = [ pkgs.libinput.out ]; diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix index 3a9b70c0673..7029919170a 100644 --- a/nixos/modules/services/x11/xserver.nix +++ b/nixos/modules/services/x11/xserver.nix @@ -590,19 +590,15 @@ in ]; environment.etc = - (optionals cfg.exportConfiguration - [ { source = "${configFile}"; - target = "X11/xorg.conf"; - } + (optionalAttrs cfg.exportConfiguration + { + "X11/xorg.conf".source = "${configFile}"; # -xkbdir command line option does not seems to be passed to xkbcomp. - { source = "${cfg.xkbDir}"; - target = "X11/xkb"; - } - ]) + "X11/xkb".source = "${cfg.xkbDir}"; + }) # localectl looks into 00-keyboard.conf - ++ [ - { - text = '' + //{ + "X11/xorg.conf.d/00-keyboard.conf".text = '' Section "InputClass" Identifier "Keyboard catchall" MatchIsKeyboard "on" @@ -612,16 +608,12 @@ in Option "XkbVariant" "${cfg.xkbVariant}" EndSection ''; - target = "X11/xorg.conf.d/00-keyboard.conf"; } - ] # Needed since 1.18; see https://bugs.freedesktop.org/show_bug.cgi?id=89023#c5 - ++ (let cfgPath = "/X11/xorg.conf.d/10-evdev.conf"; in - [{ - source = xorg.xf86inputevdev.out + "/share" + cfgPath; - target = cfgPath; - }] - ); + // (let cfgPath = "/X11/xorg.conf.d/10-evdev.conf"; in + { + ${cfgPath}.source = xorg.xf86inputevdev.out + "/share" + cfgPath; + }); environment.systemPackages = [ xorg.xorgserver.out diff --git a/nixos/modules/system/boot/kernel.nix b/nixos/modules/system/boot/kernel.nix index 8a309f3bc5f..6edb9082e75 100644 --- a/nixos/modules/system/boot/kernel.nix +++ b/nixos/modules/system/boot/kernel.nix @@ -256,9 +256,8 @@ in # Create /etc/modules-load.d/nixos.conf, which is read by # systemd-modules-load.service to load required kernel modules. - environment.etc = singleton - { target = "modules-load.d/nixos.conf"; - source = kernelModulesConf; + environment.etc = + { "modules-load.d/nixos.conf".source = kernelModulesConf; }; systemd.services.systemd-modules-load = diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix index 58d914d0810..3e289a63139 100644 --- a/nixos/modules/system/boot/networkd.nix +++ b/nixos/modules/system/boot/networkd.nix @@ -872,10 +872,10 @@ let ''; }; - unitFiles = map (name: { - target = "systemd/network/${name}"; - source = "${cfg.units.${name}.unit}/${name}"; - }) (attrNames cfg.units); + unitFiles = listToAttrs (map (name: { + name = "systemd/network/${name}"; + value.source = "${cfg.units.${name}.unit}/${name}"; + }) (attrNames cfg.units)); in { @@ -938,7 +938,7 @@ in systemd.services.systemd-networkd = { wantedBy = [ "multi-user.target" ]; - restartTriggers = map (f: f.source) (unitFiles); + restartTriggers = attrNames unitFiles; # prevent race condition with interface renaming (#39069) requires = [ "systemd-udev-settle.service" ]; after = [ "systemd-udev-settle.service" ]; diff --git a/nixos/modules/virtualisation/xen-dom0.nix b/nixos/modules/virtualisation/xen-dom0.nix index 6fd54c52758..7f0af9901b9 100644 --- a/nixos/modules/virtualisation/xen-dom0.nix +++ b/nixos/modules/virtualisation/xen-dom0.nix @@ -233,26 +233,19 @@ in environment.etc = - [ { source = "${cfg.package}/etc/xen/xl.conf"; - target = "xen/xl.conf"; - } - { source = "${cfg.package}/etc/xen/scripts"; - target = "xen/scripts"; - } - { text = '' - source ${cfg.package}/etc/default/xendomains - - ${cfg.domains.extraConfig} - ''; - target = "default/xendomains"; - } - ] - ++ lib.optionals (builtins.compareVersions cfg.package.version "4.10" >= 0) [ + { + "xen/xl.conf".source = "${cfg.package}/etc/xen/xl.conf"; + "xen/scripts".source = "${cfg.package}/etc/xen/scripts"; + "default/xendomains".text = '' + source ${cfg.package}/etc/default/xendomains + + ${cfg.domains.extraConfig} + ''; + } + // optionalAttrs (builtins.compareVersions cfg.package.version "4.10" >= 0) { # in V 4.10 oxenstored requires /etc/xen/oxenstored.conf to start - { source = "${cfg.package}/etc/xen/oxenstored.conf"; - target = "xen/oxenstored.conf"; - } - ]; + "xen/oxenstored.conf".source = "${cfg.package}/etc/xen/oxenstored.conf"; + }; # Xen provides udev rules. services.udev.packages = [ cfg.package ]; diff --git a/pkgs/applications/audio/timemachine/default.nix b/pkgs/applications/audio/timemachine/default.nix index 48dd3f39e88..3564f875c9b 100644 --- a/pkgs/applications/audio/timemachine/default.nix +++ b/pkgs/applications/audio/timemachine/default.nix @@ -4,12 +4,12 @@ stdenv.mkDerivation rec { pname = "timemachine"; - version = "0.3.3"; + version = "0.3.4"; src = fetchFromGitHub { owner = "swh"; repo = "timemachine"; rev = "v${version}"; - sha256 = "1jsvd29wiqigxyqxl2xjklla11fwyjy68vqivcnlr9f2af4ylym8"; + sha256 = "16fgyw6jnscx9279dczv72092dddghwlp53rkfw469kcgvjhwx0z"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/applications/editors/glow/default.nix b/pkgs/applications/editors/glow/default.nix index 0e30d879b0c..7187a2df80c 100644 --- a/pkgs/applications/editors/glow/default.nix +++ b/pkgs/applications/editors/glow/default.nix @@ -2,20 +2,23 @@ buildGoModule rec { pname = "glow"; - version = "0.1.3"; + version = "0.1.6"; src = fetchFromGitHub { owner = "charmbracelet"; repo = "glow"; rev = "v${version}"; - sha256 = "16zadrp42y01hi83hg47cw6c9zpw8z4xfssb5pxkmd2ynihaxfv5"; + sha256 = "0q35napi1aa6dfrqz26hvhzijymb9sxsf3mrrn1mh7ssgkhvmqqc"; }; - modSha256 = "1q67j9wg0kgb41zjgdbcrywxbwh597n8shwnwgl2xa6f7fvzpr4f"; + modSha256 = "07imn9p0s79x1h45dk05hjcm6946d84j6k5pnljqrz4zk64hy26c"; - meta = src.meta // { + buildFlagsArray = [ "-ldflags=" "-X=main.Version=${version}" ]; + + meta = with lib; { description = "Render markdown on the CLI"; - maintainers = with lib.maintainers; [ ehmry filalex77 ]; - license = lib.licenses.mit; + homepage = "https://github.com/charmbracelet/glow"; + license = licenses.mit; + maintainers = with maintainers; [ ehmry filalex77 ]; }; } diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix index ceecfa73ce4..485f1d0dca3 100644 --- a/pkgs/applications/editors/vim/common.nix +++ b/pkgs/applications/editors/vim/common.nix @@ -1,12 +1,12 @@ { lib, fetchFromGitHub }: rec { - version = "8.1.2407"; + version = "8.2.0013"; src = fetchFromGitHub { owner = "vim"; repo = "vim"; rev = "v${version}"; - sha256 = "1h23lncm8py0ip8p61y8hivmnd8fzf8xpwpkd73d3a3fpiyd2yx8"; + sha256 = "00sc9zdjdww6f3svwf0nxpx8q2zp1n1r978h7ijapgvn2ysx2z1f"; }; enableParallelBuilding = true; @@ -24,7 +24,7 @@ rec { description = "The most popular clone of the VI editor"; homepage = http://www.vim.org; license = licenses.vim; - maintainers = with maintainers; [ lovek323 ]; + maintainers = with maintainers; [ lovek323 equirosa ]; platforms = platforms.unix; }; } diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix index d602647c34c..663c64ac5de 100644 --- a/pkgs/applications/editors/vscode/vscode.nix +++ b/pkgs/applications/editors/vscode/vscode.nix @@ -16,6 +16,8 @@ let }.${system}; in callPackage ./generic.nix rec { + # The update script doesn't correctly change the hash for darwin, so please: + # nixpkgs-update: no auto update version = "1.41.1"; pname = "vscode"; diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix index 72484730a3e..e7bdacc1390 100644 --- a/pkgs/applications/editors/vscode/vscodium.nix +++ b/pkgs/applications/editors/vscode/vscodium.nix @@ -22,6 +22,8 @@ let in callPackage ./generic.nix rec { inherit sourceRoot; + # The update script doesn't correctly change the hash for darwin, so please: + # nixpkgs-update: no auto update version = "1.41.1"; pname = "vscodium"; diff --git a/pkgs/applications/misc/formatter/default.nix b/pkgs/applications/misc/formatter/default.nix index 7cb1e7dfebb..b777c3b72e7 100644 --- a/pkgs/applications/misc/formatter/default.nix +++ b/pkgs/applications/misc/formatter/default.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation rec { pname = "formatter"; - version = "0.3.1"; + version = "0.3.2"; src = fetchFromGitHub { owner = "Djaler"; repo = "Formatter"; rev = version; - sha256 = "1ghxd2h0pklhlrjslfr46vza1kjsm3mr0sdzzjiqi9jd6hddnk7i"; + sha256 = "0da1dvzsvbwg1ys19yf0n080xc0hjwin9zacjndb24jvphy3bxql"; }; patches = [ diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix index b5c57054f8b..69ca6a83764 100644 --- a/pkgs/applications/misc/hugo/default.nix +++ b/pkgs/applications/misc/hugo/default.nix @@ -2,7 +2,7 @@ buildGoModule rec { pname = "hugo"; - version = "0.62.0"; + version = "0.62.2"; goPackagePath = "github.com/gohugoio/hugo"; @@ -10,7 +10,7 @@ buildGoModule rec { owner = "gohugoio"; repo = pname; rev = "v${version}"; - sha256 = "0z14qhsjgwqgm7kj25y0zh4b42bwd7zhcmwjxzkk6chzw7fwq375"; + sha256 = "1rdfx5gv0q64ivyg0ilb96p5nksip9cj75fmvw0bjky9w6i07yd9"; }; modSha256 = "0dwv5qnglv00jj7vlps76zlfpkzsplf93401j2l03xfvmvadifrs"; diff --git a/pkgs/applications/misc/khal/default.nix b/pkgs/applications/misc/khal/default.nix index 756c8e25971..c435eaefed5 100644 --- a/pkgs/applications/misc/khal/default.nix +++ b/pkgs/applications/misc/khal/default.nix @@ -1,4 +1,4 @@ -{ stdenv, pkgs, python3, fetchpatch }: +{ stdenv, pkgs, python3, fetchpatch, glibcLocales }: with python3.pkgs; buildPythonApplication rec { pname = "khal"; @@ -11,11 +11,14 @@ with python3.pkgs; buildPythonApplication rec { # Include a khal.desktop file via upstream commit. # This patch should be removed when updating to the next version, probably. - patches = [ (fetchpatch { - name = "add-khal-dot-desktop.patch"; - url = "https://github.com/pimutils/khal/commit/1f93d238fec7c934dd2f8e48f54925d22130e3aa.patch"; - sha256 = "06skn3van7zd93348fc6axllx71ckkc7h2zljqlvwa339vca608c"; - }) ]; + patches = [ + (fetchpatch { + name = "add-khal-dot-desktop.patch"; + url = "https://github.com/pimutils/khal/commit/1f93d238fec7c934dd2f8e48f54925d22130e3aa.patch"; + sha256 = "06skn3van7zd93348fc6axllx71ckkc7h2zljqlvwa339vca608c"; + }) + ./skip-broken-test.patch + ]; propagatedBuildInputs = [ atomicwrites @@ -35,7 +38,8 @@ with python3.pkgs; buildPythonApplication rec { freezegun ]; nativeBuildInputs = [ setuptools_scm sphinx sphinxcontrib_newsfeed ]; - checkInputs = [ pytest ]; + checkInputs = [ pytest glibcLocales ]; + LC_ALL = "en_US.UTF-8"; postInstall = '' # zsh completion diff --git a/pkgs/applications/misc/khal/skip-broken-test.patch b/pkgs/applications/misc/khal/skip-broken-test.patch new file mode 100644 index 00000000000..c3c982547ae --- /dev/null +++ b/pkgs/applications/misc/khal/skip-broken-test.patch @@ -0,0 +1,21 @@ +diff --git a/tests/ui/test_editor.py b/tests/ui/test_editor.py +index 27b7fa5..5978d72 100644 +--- a/tests/ui/test_editor.py ++++ b/tests/ui/test_editor.py +@@ -1,5 +1,7 @@ + import datetime as dt + ++import pytest ++ + import icalendar + from khal.ui.editor import RecurrenceEditor, StartEndEditor + +@@ -19,7 +21,7 @@ palette = { + 'edit': 'blue', + } + +- ++@pytest.mark.skip(reason="Mocking breaks in this testcase") + def test_popup(monkeypatch): + """making sure the popup calendar gets callend with the right inital value + diff --git a/pkgs/applications/window-managers/cwm/default.nix b/pkgs/applications/window-managers/cwm/default.nix index c109cd5cb68..53489eca3a0 100644 --- a/pkgs/applications/window-managers/cwm/default.nix +++ b/pkgs/applications/window-managers/cwm/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "cwm"; - version = "6.3"; + version = "6.6"; src = fetchFromGitHub { owner = "leahneukirchen"; repo = pname; rev = "v${version}"; - sha256 = "1m08gd6nscwfx6040zbg2zl89m4g73im68iflzcihd6pdc8rzzs4"; + sha256 = "1rvb4y37vw3bpkqa6fbizgc74x3nrlkk6yf5hlm0hf8qz0c17vbl"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/desktops/gnome-3/apps/accerciser/default.nix b/pkgs/desktops/gnome-3/apps/accerciser/default.nix index 0b833a876b6..8fd4a092376 100644 --- a/pkgs/desktops/gnome-3/apps/accerciser/default.nix +++ b/pkgs/desktops/gnome-3/apps/accerciser/default.nix @@ -17,13 +17,13 @@ python3.pkgs.buildPythonApplication rec { name = "accerciser-${version}"; - version = "3.34.2"; + version = "3.34.3"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/accerciser/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; - sha256 = "1n6sy95j0r0v01sc9rbbpzikq2z4z42j8ah73hzmjdmck4iniik4"; + sha256 = "1ixyxfv2h5921x82d0r39v952ggclnf2xba5li01qmshl6b21kcc"; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome-3/core/eog/default.nix b/pkgs/desktops/gnome-3/core/eog/default.nix index e8f4663ad30..80ef1f4659f 100644 --- a/pkgs/desktops/gnome-3/core/eog/default.nix +++ b/pkgs/desktops/gnome-3/core/eog/default.nix @@ -4,13 +4,13 @@ let pname = "eog"; - version = "3.34.1"; + version = "3.34.2"; in stdenv.mkDerivation rec { name = "${pname}-${version}"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; - sha256 = "0b7ld4azs9xbdjsk9b91ywhdzvxgajhndiwiivxjzbr0hjgp7c7x"; + sha256 = "1lx96nn8q61ajk2m5454s9b5v5wyn7jbz2sf3k1irv8waiq0aavg"; }; nativeBuildInputs = [ meson ninja pkgconfig gettext itstool wrapGAppsHook libxml2 gobject-introspection python3 ]; diff --git a/pkgs/desktops/gnome-3/core/epiphany/default.nix b/pkgs/desktops/gnome-3/core/epiphany/default.nix index f042bbd146a..46f0f4191df 100644 --- a/pkgs/desktops/gnome-3/core/epiphany/default.nix +++ b/pkgs/desktops/gnome-3/core/epiphany/default.nix @@ -34,11 +34,11 @@ stdenv.mkDerivation rec { pname = "epiphany"; - version = "3.34.2"; + version = "3.34.3.1"; src = fetchurl { url = "mirror://gnome/sources/epiphany/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "18d48vcp2nxs63bddkdplslgbnlfq79pm2ivl8hk38kkggy3dahf"; + sha256 = "0vga9bqcv792ivnlw6pbfz17zn0nh6wq01rp60c4px08l7xpkr00"; }; # Tests need an X display diff --git a/pkgs/development/compilers/elm/packages/node-packages.nix b/pkgs/development/compilers/elm/packages/node-packages.nix index 770e7c3529a..c9b54aee4fd 100644 --- a/pkgs/development/compilers/elm/packages/node-packages.nix +++ b/pkgs/development/compilers/elm/packages/node-packages.nix @@ -40,6 +40,15 @@ let sha512 = "1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ=="; }; }; + "@sindresorhus/is-0.14.0" = { + name = "_at_sindresorhus_slash_is"; + packageName = "@sindresorhus/is"; + version = "0.14.0"; + src = fetchurl { + url = "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz"; + sha512 = "9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ=="; + }; + }; "@sindresorhus/is-0.7.0" = { name = "_at_sindresorhus_slash_is"; packageName = "@sindresorhus/is"; @@ -49,6 +58,24 @@ let sha512 = "ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow=="; }; }; + "@szmarczak/http-timer-1.1.2" = { + name = "_at_szmarczak_slash_http-timer"; + packageName = "@szmarczak/http-timer"; + version = "1.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz"; + sha512 = "XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA=="; + }; + }; + "@types/color-name-1.1.1" = { + name = "_at_types_slash_color-name"; + packageName = "@types/color-name"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz"; + sha512 = "rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ=="; + }; + }; "@types/events-3.0.0" = { name = "_at_types_slash_events"; packageName = "@types/events"; @@ -76,13 +103,13 @@ let sha512 = "tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="; }; }; - "@types/node-12.12.3" = { + "@types/node-13.1.2" = { name = "_at_types_slash_node"; packageName = "@types/node"; - version = "12.12.3"; + version = "13.1.2"; src = fetchurl { - url = "https://registry.npmjs.org/@types/node/-/node-12.12.3.tgz"; - sha512 = "opgSsy+cEF9N8MgaVPnWVtdJ3o4mV2aMHvDq7thkQUFt0EuOHJon4rQpJfhjmNHB+ikl0Cd6WhWIErOyQ+f7tw=="; + url = "https://registry.npmjs.org/@types/node/-/node-13.1.2.tgz"; + sha512 = "B8emQA1qeKerqd1dmIsQYnXi+mmAzTB7flExjmy5X1aVAKFNNNDubkavwR13kR6JnpeLp3aLoJhwn9trWPAyFQ=="; }; }; "accepts-1.3.7" = { @@ -139,6 +166,15 @@ let sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA=="; }; }; + "ansi-styles-4.2.1" = { + name = "ansi-styles"; + packageName = "ansi-styles"; + version = "4.2.1"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz"; + sha512 = "9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA=="; + }; + }; "anymatch-2.0.0" = { name = "anymatch"; packageName = "anymatch"; @@ -274,13 +310,13 @@ let sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"; }; }; - "aws4-1.8.0" = { + "aws4-1.9.0" = { name = "aws4"; packageName = "aws4"; - version = "1.8.0"; + version = "1.9.0"; src = fetchurl { - url = "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz"; - sha512 = "ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ=="; + url = "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz"; + sha512 = "Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A=="; }; }; "babel-runtime-6.18.0" = { @@ -346,15 +382,6 @@ let sha512 = "Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow=="; }; }; - "bindings-1.5.0" = { - name = "bindings"; - packageName = "bindings"; - version = "1.5.0"; - src = fetchurl { - url = "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz"; - sha512 = "p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ=="; - }; - }; "binwrap-0.2.2" = { name = "binwrap"; packageName = "binwrap"; @@ -364,13 +391,13 @@ let sha512 = "Y+Wvypk3JhH5GPZAvlwJAWOVH/OsOhQMSj37vySuWHwQivoALplPxfBA8b973rFJI7OS+O+1YmmYXIiEXVMAcw=="; }; }; - "bluebird-3.7.1" = { + "bluebird-3.7.2" = { name = "bluebird"; packageName = "bluebird"; - version = "3.7.1"; + version = "3.7.2"; src = fetchurl { - url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.1.tgz"; - sha512 = "DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg=="; + url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz"; + sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="; }; }; "body-parser-1.18.2" = { @@ -472,6 +499,15 @@ let sha1 = "0d808801b6342ad33c91df9d0b44dc09b91e5c3d"; }; }; + "cacheable-request-6.1.0" = { + name = "cacheable-request"; + packageName = "cacheable-request"; + version = "6.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz"; + sha512 = "Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg=="; + }; + }; "camelcase-5.3.1" = { name = "camelcase"; packageName = "camelcase"; @@ -490,15 +526,6 @@ let sha512 = "PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g=="; }; }; - "capture-stack-trace-1.0.1" = { - name = "capture-stack-trace"; - packageName = "capture-stack-trace"; - version = "1.0.1"; - src = fetchurl { - url = "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz"; - sha512 = "mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw=="; - }; - }; "caseless-0.12.0" = { name = "caseless"; packageName = "caseless"; @@ -544,6 +571,15 @@ let sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ=="; }; }; + "chalk-3.0.0" = { + name = "chalk"; + packageName = "chalk"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz"; + sha512 = "4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg=="; + }; + }; "charenc-0.0.2" = { name = "charenc"; packageName = "charenc"; @@ -571,6 +607,15 @@ let sha512 = "/j5PPkb5Feyps9e+jo07jUZGvkB5Aj953NrI4s8xSVScrAo/RHeILrtdb4uzR7N6aaFFxxJ+gt8mA8HfNpw76w=="; }; }; + "chokidar-3.3.0" = { + name = "chokidar"; + packageName = "chokidar"; + version = "3.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz"; + sha512 = "dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A=="; + }; + }; "chownr-1.1.3" = { name = "chownr"; packageName = "chownr"; @@ -625,6 +670,15 @@ let sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg=="; }; }; + "color-convert-2.0.1" = { + name = "color-convert"; + packageName = "color-convert"; + version = "2.0.1"; + src = fetchurl { + url = "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"; + sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="; + }; + }; "color-name-1.1.3" = { name = "color-name"; packageName = "color-name"; @@ -634,6 +688,15 @@ let sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25"; }; }; + "color-name-1.1.4" = { + name = "color-name"; + packageName = "color-name"; + version = "1.1.4"; + src = fetchurl { + url = "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"; + sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="; + }; + }; "combined-stream-1.0.8" = { name = "combined-stream"; packageName = "combined-stream"; @@ -661,6 +724,15 @@ let sha512 = "Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow=="; }; }; + "compare-versions-3.5.1" = { + name = "compare-versions"; + packageName = "compare-versions"; + version = "3.5.1"; + src = fetchurl { + url = "https://registry.npmjs.org/compare-versions/-/compare-versions-3.5.1.tgz"; + sha512 = "9fGPIB7C6AyM18CJJBHt5EnCZDG3oiTJYy0NjfIAGjKpzv0tkxWko7TNQHF5ymqm7IH03tqmeuBxtvD+Izh6mg=="; + }; + }; "component-emitter-1.3.0" = { name = "component-emitter"; packageName = "component-emitter"; @@ -760,22 +832,22 @@ let sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d"; }; }; - "core-js-2.6.10" = { + "core-js-2.6.11" = { name = "core-js"; packageName = "core-js"; - version = "2.6.10"; + version = "2.6.11"; src = fetchurl { - url = "https://registry.npmjs.org/core-js/-/core-js-2.6.10.tgz"; - sha512 = "I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA=="; + url = "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz"; + sha512 = "5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg=="; }; }; - "core-js-3.3.5" = { + "core-js-3.6.1" = { name = "core-js"; packageName = "core-js"; - version = "3.3.5"; + version = "3.6.1"; src = fetchurl { - url = "https://registry.npmjs.org/core-js/-/core-js-3.3.5.tgz"; - sha512 = "0J3K+Par/ZydhKg8pEiTcK/9d65/nqJOzY62uMkjeBmt05fDOt/khUVjDdh8TpeIuGQDy1yLDDCjiWN/8pFIuw=="; + url = "https://registry.npmjs.org/core-js/-/core-js-3.6.1.tgz"; + sha512 = "186WjSik2iTGfDjfdCZAxv2ormxtKgemjC3SI6PL31qOA0j5LhTDVjHChccoc7brwLvpvLPiMyRlcO88C4l1QQ=="; }; }; "core-util-is-1.0.2" = { @@ -787,15 +859,6 @@ let sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7"; }; }; - "create-error-class-3.0.2" = { - name = "create-error-class"; - packageName = "create-error-class"; - version = "3.0.2"; - src = fetchurl { - url = "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz"; - sha1 = "06be7abef947a3f14a30fd610671d401bca8b7b6"; - }; - }; "crocks-0.12.1" = { name = "crocks"; packageName = "crocks"; @@ -922,6 +985,15 @@ let sha512 = "h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA=="; }; }; + "defer-to-connect-1.1.1" = { + name = "defer-to-connect"; + packageName = "defer-to-connect"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.1.tgz"; + sha512 = "J7thop4u3mRTkYRQ+Vpfwy2G5Ehoy82I14+14W4YMDLKdWloI9gSzRbV30s/NckQGVJtPkWNcW4oMAUigTdqiQ=="; + }; + }; "define-properties-1.1.3" = { name = "define-properties"; packageName = "define-properties"; @@ -1067,6 +1139,15 @@ let sha512 = "zNinzt6/YMr11HgeBlC9Z0UM3qHkYrGsWJTjrCmgBkKnaOLUzTP5K9N3z1RltyunItXtHAxb8DFPvMxlYRPv/Q=="; }; }; + "elmi-to-json-1.3.0" = { + name = "elmi-to-json"; + packageName = "elmi-to-json"; + version = "1.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/elmi-to-json/-/elmi-to-json-1.3.0.tgz"; + sha512 = "6m1D5/Pb5pUrSOOBgRG3fE2mK19nhmLgZ16jj2KWTVIhT+0GIBuDI1iV0Fee27CZH790J7uMcdGWJ7fnVvpsKg=="; + }; + }; "emoji-regex-7.0.3" = { name = "emoji-regex"; packageName = "emoji-regex"; @@ -1094,22 +1175,22 @@ let sha512 = "+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q=="; }; }; - "es-abstract-1.16.0" = { + "es-abstract-1.17.0" = { name = "es-abstract"; packageName = "es-abstract"; - version = "1.16.0"; + version = "1.17.0"; src = fetchurl { - url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.0.tgz"; - sha512 = "xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg=="; + url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0.tgz"; + sha512 = "yYkE07YF+6SIBmg1MsJ9dlub5L48Ek7X0qz+c/CPCHS9EBXfESorzng4cJQjJW5/pB6vDF41u7F8vUhLVDqIug=="; }; }; - "es-to-primitive-1.2.0" = { + "es-to-primitive-1.2.1" = { name = "es-to-primitive"; packageName = "es-to-primitive"; - version = "1.2.0"; + version = "1.2.1"; src = fetchurl { - url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz"; - sha512 = "qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg=="; + url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz"; + sha512 = "QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA=="; }; }; "es6-promisify-6.0.2" = { @@ -1157,13 +1238,13 @@ let sha512 = "tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q=="; }; }; - "exec-sh-0.3.2" = { + "exec-sh-0.3.4" = { name = "exec-sh"; packageName = "exec-sh"; - version = "0.3.2"; + version = "0.3.4"; src = fetchurl { - url = "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz"; - sha512 = "9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg=="; + url = "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz"; + sha512 = "sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A=="; }; }; "execa-1.0.0" = { @@ -1175,13 +1256,13 @@ let sha512 = "adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA=="; }; }; - "execa-3.2.0" = { + "execa-3.4.0" = { name = "execa"; packageName = "execa"; - version = "3.2.0"; + version = "3.4.0"; src = fetchurl { - url = "https://registry.npmjs.org/execa/-/execa-3.2.0.tgz"; - sha512 = "kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw=="; + url = "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz"; + sha512 = "r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g=="; }; }; "expand-brackets-2.1.4" = { @@ -1292,22 +1373,22 @@ let sha512 = "xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w=="; }; }; - "fast-glob-3.1.0" = { + "fast-glob-3.1.1" = { name = "fast-glob"; packageName = "fast-glob"; - version = "3.1.0"; + version = "3.1.1"; src = fetchurl { - url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.1.0.tgz"; - sha512 = "TrUz3THiq2Vy3bjfQUB2wNyPdGBeGmdjbzzBLhfHN4YFurYptCKwGq/TfiRavbGywFRzY6U2CdmQ1zmsY5yYaw=="; + url = "https://registry.npmjs.org/fast-glob/-/fast-glob-3.1.1.tgz"; + sha512 = "nTCREpBY8w8r+boyFYAx21iL6faSsQynliPHM4Uf56SbkyohCNxpVPEH9xrF5TXKy+IsjkPUHDKiUkzBVRXn9g=="; }; }; - "fast-json-stable-stringify-2.0.0" = { + "fast-json-stable-stringify-2.1.0" = { name = "fast-json-stable-stringify"; packageName = "fast-json-stable-stringify"; - version = "2.0.0"; + version = "2.1.0"; src = fetchurl { - url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz"; - sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2"; + url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz"; + sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="; }; }; "fastq-1.6.0" = { @@ -1319,22 +1400,13 @@ let sha512 = "jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA=="; }; }; - "fb-watchman-2.0.0" = { + "fb-watchman-2.0.1" = { name = "fb-watchman"; packageName = "fb-watchman"; - version = "2.0.0"; - src = fetchurl { - url = "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz"; - sha1 = "54e9abf7dfa2f26cd9b1636c588c1afc05de5d58"; - }; - }; - "file-uri-to-path-1.0.0" = { - name = "file-uri-to-path"; - packageName = "file-uri-to-path"; - version = "1.0.0"; + version = "2.0.1"; src = fetchurl { - url = "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz"; - sha512 = "0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="; + url = "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz"; + sha512 = "DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg=="; }; }; "fill-range-4.0.0" = { @@ -1499,15 +1571,6 @@ let sha1 = "8bfb5502bde4a4d36cfdeea007fcca21d7e382af"; }; }; - "fs-extra-0.30.0" = { - name = "fs-extra"; - packageName = "fs-extra"; - version = "0.30.0"; - src = fetchurl { - url = "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz"; - sha1 = "f233ffcc08d4da7d432daa449776989db1df93f0"; - }; - }; "fs-extra-2.0.0" = { name = "fs-extra"; packageName = "fs-extra"; @@ -1562,13 +1625,13 @@ let sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f"; }; }; - "fsevents-2.1.1" = { + "fsevents-2.1.2" = { name = "fsevents"; packageName = "fsevents"; - version = "2.1.1"; + version = "2.1.2"; src = fetchurl { - url = "https://registry.npmjs.org/fsevents/-/fsevents-2.1.1.tgz"; - sha512 = "4FRPXWETxtigtJW/gxzEDsX1LVbPAM93VleB83kZB+ellqbHMkyt2aJfuzNLRvFPnGi6bcE5SvfxgbXPeKteJw=="; + url = "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz"; + sha512 = "R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA=="; }; }; "function-bind-1.1.1" = { @@ -1652,13 +1715,13 @@ let sha512 = "hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A=="; }; }; - "glob-7.1.5" = { + "glob-7.1.6" = { name = "glob"; packageName = "glob"; - version = "7.1.5"; + version = "7.1.6"; src = fetchurl { - url = "https://registry.npmjs.org/glob/-/glob-7.1.5.tgz"; - sha512 = "J9dlskqUXK1OeTOYBEn5s8aMukWMwWfs+rPTn/jn50Ux4MNXVhubL1wu/j2t+H4NVI+cXEcCaYellqaPVGXNqQ=="; + url = "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz"; + sha512 = "LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA=="; }; }; "glob-parent-5.1.0" = { @@ -1679,22 +1742,22 @@ let sha512 = "sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A=="; }; }; - "got-6.7.1" = { + "got-8.3.2" = { name = "got"; packageName = "got"; - version = "6.7.1"; + version = "8.3.2"; src = fetchurl { - url = "https://registry.npmjs.org/got/-/got-6.7.1.tgz"; - sha1 = "240cd05785a9a18e561dc1b44b41c763ef1e8db0"; + url = "https://registry.npmjs.org/got/-/got-8.3.2.tgz"; + sha512 = "qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw=="; }; }; - "got-8.3.2" = { + "got-9.6.0" = { name = "got"; packageName = "got"; - version = "8.3.2"; + version = "9.6.0"; src = fetchurl { - url = "https://registry.npmjs.org/got/-/got-8.3.2.tgz"; - sha512 = "qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw=="; + url = "https://registry.npmjs.org/got/-/got-9.6.0.tgz"; + sha512 = "R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q=="; }; }; "graceful-fs-4.2.3" = { @@ -1769,13 +1832,13 @@ let sha512 = "3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw=="; }; }; - "has-symbols-1.0.0" = { + "has-symbols-1.0.1" = { name = "has-symbols"; packageName = "has-symbols"; - version = "1.0.0"; + version = "1.0.1"; src = fetchurl { - url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz"; - sha1 = "ba1a8f1af2a0fc39650f5c850367704122063b44"; + url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz"; + sha512 = "PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg=="; }; }; "has-to-string-tag-x-1.4.1" = { @@ -1832,6 +1895,15 @@ let sha512 = "5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w=="; }; }; + "http-cache-semantics-4.0.3" = { + name = "http-cache-semantics"; + packageName = "http-cache-semantics"; + version = "4.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz"; + sha512 = "TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew=="; + }; + }; "http-errors-1.6.2" = { name = "http-errors"; packageName = "http-errors"; @@ -2039,13 +2111,13 @@ let sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="; }; }; - "is-callable-1.1.4" = { + "is-callable-1.1.5" = { name = "is-callable"; packageName = "is-callable"; - version = "1.1.4"; + version = "1.1.5"; src = fetchurl { - url = "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz"; - sha512 = "r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA=="; + url = "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz"; + sha512 = "ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q=="; }; }; "is-data-descriptor-0.1.4" = { @@ -2066,13 +2138,13 @@ let sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ=="; }; }; - "is-date-object-1.0.1" = { + "is-date-object-1.0.2" = { name = "is-date-object"; packageName = "is-date-object"; - version = "1.0.1"; + version = "1.0.2"; src = fetchurl { - url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz"; - sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"; + url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz"; + sha512 = "USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g=="; }; }; "is-descriptor-0.1.6" = { @@ -2183,22 +2255,13 @@ let sha512 = "h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og=="; }; }; - "is-redirect-1.0.0" = { - name = "is-redirect"; - packageName = "is-redirect"; - version = "1.0.0"; - src = fetchurl { - url = "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz"; - sha1 = "1d03dded53bd8db0f30c26e4f95d36fc7c87dc24"; - }; - }; - "is-regex-1.0.4" = { + "is-regex-1.0.5" = { name = "is-regex"; packageName = "is-regex"; - version = "1.0.4"; + version = "1.0.5"; src = fetchurl { - url = "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz"; - sha1 = "5517489b547091b0930e095654ced25ee97e9491"; + url = "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz"; + sha512 = "vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ=="; }; }; "is-retry-allowed-1.2.0" = { @@ -2228,13 +2291,13 @@ let sha512 = "XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw=="; }; }; - "is-symbol-1.0.2" = { + "is-symbol-1.0.3" = { name = "is-symbol"; packageName = "is-symbol"; - version = "1.0.2"; + version = "1.0.3"; src = fetchurl { - url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz"; - sha512 = "HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw=="; + url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz"; + sha512 = "OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ=="; }; }; "is-typedarray-1.0.0" = { @@ -2399,6 +2462,15 @@ let sha512 = "eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA=="; }; }; + "keyv-3.1.0" = { + name = "keyv"; + packageName = "keyv"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz"; + sha512 = "9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA=="; + }; + }; "kind-of-3.2.2" = { name = "kind-of"; packageName = "kind-of"; @@ -2435,15 +2507,6 @@ let sha512 = "s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA=="; }; }; - "klaw-1.3.1" = { - name = "klaw"; - packageName = "klaw"; - version = "1.3.1"; - src = fetchurl { - url = "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz"; - sha1 = "4088433b46b3b1ba259d78785d8e96f73ba02439"; - }; - }; "klaw-2.1.1" = { name = "klaw"; packageName = "klaw"; @@ -2498,6 +2561,15 @@ let sha512 = "G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA=="; }; }; + "lowercase-keys-2.0.0" = { + name = "lowercase-keys"; + packageName = "lowercase-keys"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz"; + sha512 = "tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA=="; + }; + }; "lru-cache-4.1.5" = { name = "lru-cache"; packageName = "lru-cache"; @@ -2633,22 +2705,22 @@ let sha512 = "QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw=="; }; }; - "mime-db-1.40.0" = { + "mime-db-1.42.0" = { name = "mime-db"; packageName = "mime-db"; - version = "1.40.0"; + version = "1.42.0"; src = fetchurl { - url = "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz"; - sha512 = "jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA=="; + url = "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz"; + sha512 = "UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ=="; }; }; - "mime-types-2.1.24" = { + "mime-types-2.1.25" = { name = "mime-types"; packageName = "mime-types"; - version = "2.1.24"; + version = "2.1.25"; src = fetchurl { - url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz"; - sha512 = "WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ=="; + url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz"; + sha512 = "5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg=="; }; }; "mimic-fn-2.1.0" = { @@ -2768,22 +2840,13 @@ let sha1 = "5041049269c96633c866386960b2f4289e75e5b0"; }; }; - "mustache-3.1.0" = { + "mustache-3.2.1" = { name = "mustache"; packageName = "mustache"; - version = "3.1.0"; - src = fetchurl { - url = "https://registry.npmjs.org/mustache/-/mustache-3.1.0.tgz"; - sha512 = "3Bxq1R5LBZp7fbFPZzFe5WN4s0q3+gxZaZuZVY+QctYJiCiVgXHOTIC0/HgZuOPFt/6BQcx5u0H2CUOxT/RoGQ=="; - }; - }; - "nan-2.14.0" = { - name = "nan"; - packageName = "nan"; - version = "2.14.0"; + version = "3.2.1"; src = fetchurl { - url = "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz"; - sha512 = "INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg=="; + url = "https://registry.npmjs.org/mustache/-/mustache-3.2.1.tgz"; + sha512 = "RERvMFdLpaFfSRIEe632yDm5nsd0SDKn8hGmcUwswnyiE5mtdZLDybtHAz6hjJhawokF0hXvGLtx9mrQfm6FkA=="; }; }; "nanomatch-1.2.13" = { @@ -2867,6 +2930,15 @@ let sha512 = "D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw=="; }; }; + "normalize-url-4.5.0" = { + name = "normalize-url"; + packageName = "normalize-url"; + version = "4.5.0"; + src = fetchurl { + url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz"; + sha512 = "2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ=="; + }; + }; "npm-conf-1.1.3" = { name = "npm-conf"; packageName = "npm-conf"; @@ -2885,13 +2957,13 @@ let sha1 = "35a9232dfa35d7067b4cb2ddf2357b1871536c5f"; }; }; - "npm-run-path-4.0.0" = { + "npm-run-path-4.0.1" = { name = "npm-run-path"; packageName = "npm-run-path"; - version = "4.0.0"; + version = "4.0.1"; src = fetchurl { - url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.0.tgz"; - sha512 = "8eyAOAH+bYXFPSnNnKr3J+yoybe8O87Is5rtAQ8qRczJz1ajcsjg8l2oZqP+Ppx15Ii3S1vUTjQN2h4YO2tWWQ=="; + url = "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz"; + sha512 = "S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw=="; }; }; "oauth-sign-0.9.0" = { @@ -2921,13 +2993,13 @@ let sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c"; }; }; - "object-inspect-1.6.0" = { + "object-inspect-1.7.0" = { name = "object-inspect"; packageName = "object-inspect"; - version = "1.6.0"; + version = "1.7.0"; src = fetchurl { - url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz"; - sha512 = "GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ=="; + url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz"; + sha512 = "a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw=="; }; }; "object-keys-1.1.1" = { @@ -2948,13 +3020,22 @@ let sha1 = "f79c4493af0c5377b59fe39d395e41042dd045bb"; }; }; - "object.getownpropertydescriptors-2.0.3" = { + "object.assign-4.1.0" = { + name = "object.assign"; + packageName = "object.assign"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz"; + sha512 = "exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w=="; + }; + }; + "object.getownpropertydescriptors-2.1.0" = { name = "object.getownpropertydescriptors"; packageName = "object.getownpropertydescriptors"; - version = "2.0.3"; + version = "2.1.0"; src = fetchurl { - url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz"; - sha1 = "8758c846f5b407adab0f236e0986f14b051caa16"; + url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz"; + sha512 = "Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg=="; }; }; "object.pick-1.3.0" = { @@ -3056,6 +3137,15 @@ let sha512 = "HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ=="; }; }; + "p-cancelable-1.1.0" = { + name = "p-cancelable"; + packageName = "p-cancelable"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz"; + sha512 = "s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw=="; + }; + }; "p-finally-1.0.0" = { name = "p-finally"; packageName = "p-finally"; @@ -3083,13 +3173,13 @@ let sha1 = "9c9456989e9f6588017b0434d56097675c3da05e"; }; }; - "p-limit-2.2.1" = { + "p-limit-2.2.2" = { name = "p-limit"; packageName = "p-limit"; - version = "2.2.1"; + version = "2.2.2"; src = fetchurl { - url = "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz"; - sha512 = "85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg=="; + url = "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz"; + sha512 = "WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ=="; }; }; "p-locate-3.0.0" = { @@ -3173,13 +3263,13 @@ let sha1 = "411cadb574c5a140d3a4b1910d40d80cc9f40b40"; }; }; - "path-key-3.1.0" = { + "path-key-3.1.1" = { name = "path-key"; packageName = "path-key"; - version = "3.1.0"; + version = "3.1.1"; src = fetchurl { - url = "https://registry.npmjs.org/path-key/-/path-key-3.1.0.tgz"; - sha512 = "8cChqz0RP6SHJkMt48FW0A7+qUOn+OsnOsVtzI59tZ8m+5bCSk7hzwET0pulwOM2YMn9J1efb07KB9l9f30SGg=="; + url = "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz"; + sha512 = "ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="; }; }; "path-to-regexp-0.1.7" = { @@ -3218,13 +3308,13 @@ let sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"; }; }; - "picomatch-2.1.0" = { + "picomatch-2.1.1" = { name = "picomatch"; packageName = "picomatch"; - version = "2.1.0"; + version = "2.1.1"; src = fetchurl { - url = "https://registry.npmjs.org/picomatch/-/picomatch-2.1.0.tgz"; - sha512 = "uhnEDzAbrcJ8R3g2fANnSuXZMBtkpSjxTTgn2LeSiQlfmq72enQJWdQllXW24MBLYnA1SBD2vfvx2o0Zw3Ielw=="; + url = "https://registry.npmjs.org/picomatch/-/picomatch-2.1.1.tgz"; + sha512 = "OYMyqkKzK7blWO/+XZYP6w8hH0LDvkBvdvKukti+7kqYFCiEAk+gI3DWnryapc0Dau05ugGTy0foQ6mqn4AHYA=="; }; }; "pify-3.0.0" = { @@ -3254,15 +3344,6 @@ let sha1 = "01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"; }; }; - "prepend-http-1.0.4" = { - name = "prepend-http"; - packageName = "prepend-http"; - version = "1.0.4"; - src = fetchurl { - url = "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz"; - sha1 = "d4f4562b0ce3696e41ac52d0e002e57a635dc6dc"; - }; - }; "prepend-http-2.0.0" = { name = "prepend-http"; packageName = "prepend-http"; @@ -3317,13 +3398,13 @@ let sha1 = "f052a28da70e618917ef0a8ac34c1ae5a68286b3"; }; }; - "psl-1.4.0" = { + "psl-1.7.0" = { name = "psl"; packageName = "psl"; - version = "1.4.0"; + version = "1.7.0"; src = fetchurl { - url = "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz"; - sha512 = "HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw=="; + url = "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz"; + sha512 = "5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ=="; }; }; "pump-3.0.0" = { @@ -3461,6 +3542,15 @@ let sha512 = "crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ=="; }; }; + "readdirp-3.3.0" = { + name = "readdirp"; + packageName = "readdirp"; + version = "3.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz"; + sha512 = "zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ=="; + }; + }; "regenerator-runtime-0.9.6" = { name = "regenerator-runtime"; packageName = "regenerator-runtime"; @@ -3533,22 +3623,22 @@ let sha512 = "NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg=="; }; }; - "request-promise-4.2.4" = { + "request-promise-4.2.5" = { name = "request-promise"; packageName = "request-promise"; - version = "4.2.4"; + version = "4.2.5"; src = fetchurl { - url = "https://registry.npmjs.org/request-promise/-/request-promise-4.2.4.tgz"; - sha512 = "8wgMrvE546PzbR5WbYxUQogUnUDfM0S7QIFZMID+J73vdFARkFy+HElj4T+MWYhpXwlLp0EQ8Zoj8xUA0he4Vg=="; + url = "https://registry.npmjs.org/request-promise/-/request-promise-4.2.5.tgz"; + sha512 = "ZgnepCykFdmpq86fKGwqntyTiUrHycALuGggpyCZwMvGaZWgxW6yagT0FHkgo5LzYvOaCNvxYwWYIjevSH1EDg=="; }; }; - "request-promise-core-1.1.2" = { + "request-promise-core-1.1.3" = { name = "request-promise-core"; packageName = "request-promise-core"; - version = "1.1.2"; + version = "1.1.3"; src = fetchurl { - url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz"; - sha512 = "UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag=="; + url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz"; + sha512 = "QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ=="; }; }; "require-directory-2.1.1" = { @@ -3650,13 +3740,13 @@ let sha512 = "DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q=="; }; }; - "rxjs-6.5.3" = { + "rxjs-6.5.4" = { name = "rxjs"; packageName = "rxjs"; - version = "6.5.3"; + version = "6.5.4"; src = fetchurl { - url = "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz"; - sha512 = "wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA=="; + url = "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz"; + sha512 = "naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q=="; }; }; "safe-buffer-5.1.1" = { @@ -3731,6 +3821,15 @@ let sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="; }; }; + "semver-6.3.0" = { + name = "semver"; + packageName = "semver"; + version = "6.3.0"; + src = fetchurl { + url = "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz"; + sha512 = "b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="; + }; + }; "semver-regex-1.0.0" = { name = "semver-regex"; packageName = "semver-regex"; @@ -3938,13 +4037,13 @@ let sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"; }; }; - "source-map-resolve-0.5.2" = { + "source-map-resolve-0.5.3" = { name = "source-map-resolve"; packageName = "source-map-resolve"; - version = "0.5.2"; + version = "0.5.3"; src = fetchurl { - url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz"; - sha512 = "MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA=="; + url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz"; + sha512 = "Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw=="; }; }; "source-map-url-0.4.0" = { @@ -4037,22 +4136,22 @@ let sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w=="; }; }; - "string.prototype.trimleft-2.1.0" = { + "string.prototype.trimleft-2.1.1" = { name = "string.prototype.trimleft"; packageName = "string.prototype.trimleft"; - version = "2.1.0"; + version = "2.1.1"; src = fetchurl { - url = "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz"; - sha512 = "FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw=="; + url = "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz"; + sha512 = "iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag=="; }; }; - "string.prototype.trimright-2.1.0" = { + "string.prototype.trimright-2.1.1" = { name = "string.prototype.trimright"; packageName = "string.prototype.trimright"; - version = "2.1.0"; + version = "2.1.1"; src = fetchurl { - url = "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz"; - sha512 = "fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg=="; + url = "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz"; + sha512 = "qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g=="; }; }; "string_decoder-0.10.31" = { @@ -4154,15 +4253,6 @@ let sha512 = "oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g=="; }; }; - "syncprompt-2.0.0" = { - name = "syncprompt"; - packageName = "syncprompt"; - version = "2.0.0"; - src = fetchurl { - url = "https://registry.npmjs.org/syncprompt/-/syncprompt-2.0.0.tgz"; - sha512 = "tPYCsLGWTDRlET7cen2iAwbmO+lSwfIdKoLkUPC41t/54UhqbzpwXL4RhODu5fQnmZdQZlEFKeD0W/BysU5WEg=="; - }; - }; "tar-4.4.13" = { name = "tar"; packageName = "tar"; @@ -4181,6 +4271,15 @@ let sha512 = "YfUhPQCJoNQE5N+FJQcdPz63O3x3sdT4Xju69Gj4iZe0lBKOtnAMi0SLj9xKhGkcGhsxThvTJ/usxtFPo438zQ=="; }; }; + "temp-0.9.1" = { + name = "temp"; + packageName = "temp"; + version = "0.9.1"; + src = fetchurl { + url = "https://registry.npmjs.org/temp/-/temp-0.9.1.tgz"; + sha512 = "WMuOgiua1xb5R56lE0eH6ivpVmg/lq2OHm4+LtT/xtEtPQ+sz6N3bBM6WZ5FvO1lO4IKIOb43qnhoc4qxP5OeA=="; + }; + }; "through-2.3.8" = { name = "through"; packageName = "through"; @@ -4253,6 +4352,15 @@ let sha1 = "297588b7b0e7e0ac08e04e672f85c1f4999e17af"; }; }; + "to-readable-stream-1.0.0" = { + name = "to-readable-stream"; + packageName = "to-readable-stream"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz"; + sha512 = "Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q=="; + }; + }; "to-regex-3.0.2" = { name = "to-regex"; packageName = "to-regex"; @@ -4415,15 +4523,6 @@ let sha1 = "8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"; }; }; - "unzip-response-2.0.1" = { - name = "unzip-response"; - packageName = "unzip-response"; - version = "2.0.1"; - src = fetchurl { - url = "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz"; - sha1 = "d2f0f737d16b0615e72a6935ed04214572d56f97"; - }; - }; "unzip-stream-0.3.0" = { name = "unzip-stream"; packageName = "unzip-stream"; @@ -4451,15 +4550,6 @@ let sha1 = "da937f7a62e21fec1fd18d49b35c2935067a6c72"; }; }; - "url-parse-lax-1.0.0" = { - name = "url-parse-lax"; - packageName = "url-parse-lax"; - version = "1.0.0"; - src = fetchurl { - url = "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz"; - sha1 = "7af8f303645e9bd79a272e7a14ac68bc0609da73"; - }; - }; "url-parse-lax-3.0.0" = { name = "url-parse-lax"; packageName = "url-parse-lax"; @@ -4604,13 +4694,13 @@ let sha1 = "2f7f9b8fd10d677262b18a884e28d19618e028fb"; }; }; - "web-tree-sitter-0.15.10" = { + "web-tree-sitter-0.15.11" = { name = "web-tree-sitter"; packageName = "web-tree-sitter"; - version = "0.15.10"; + version = "0.15.11"; src = fetchurl { - url = "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.15.10.tgz"; - sha512 = "8utowZB5h5djbotf1umt4na9Vt6Q18ZICUeC9jW4qWWjUrtQ2xvxDuAJ+EibmqUJBAKATrDMXnY2xYaskGg8wg=="; + url = "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.15.11.tgz"; + sha512 = "7Sr26MV8bPPvKU+4VMpOoLYwaAFBsCsxRGtxYPSxClWIaR2KIciqg6zUeG14W9QrdlpBt7VHHzhd1CBb0e6i8w=="; }; }; "which-1.3.1" = { @@ -4631,6 +4721,15 @@ let sha512 = "N7GBZOTswtB9lkQBZA4+zAXrjEIWAUOB93AvzUiudRzRxhUdLURQ7D/gAIMY1gatT/LTbmbcv8SiYazy3eYB7w=="; }; }; + "which-2.0.2" = { + name = "which"; + packageName = "which"; + version = "2.0.2"; + src = fetchurl { + url = "https://registry.npmjs.org/which/-/which-2.0.2.tgz"; + sha512 = "BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="; + }; + }; "which-module-2.0.0" = { name = "which-module"; packageName = "which-module"; @@ -4703,13 +4802,13 @@ let sha512 = "o41D/WmDeca0BqYhsr3nJzQyg9NF5X8l/UdnFNux9cS3lwB+swm8qGWX5rn+aD6xfBU3rGmtHij7g7x6LxFU3A=="; }; }; - "ws-7.2.0" = { + "ws-7.2.1" = { name = "ws"; packageName = "ws"; - version = "7.2.0"; + version = "7.2.1"; src = fetchurl { - url = "https://registry.npmjs.org/ws/-/ws-7.2.0.tgz"; - sha512 = "+SqNqFbwTm/0DC18KYzIsMTnEWpLwJsiasW/O17la4iDRRIO9uaHbvKiAS3AHgTiuuWerK/brj4O6MYZkei9xg=="; + url = "https://registry.npmjs.org/ws/-/ws-7.2.1.tgz"; + sha512 = "sucePNSafamSKoOqoNfBd8V0StlkzJKL2ZAhGQinCfNQ+oacw+Pk7lcdAElecBF2VkLNZRiIb5Oi1Q5lVUVt2A=="; }; }; "xmlbuilder-13.0.2" = { @@ -4775,13 +4874,13 @@ let sha512 = "oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ=="; }; }; - "yn-2.0.0" = { + "yn-3.1.1" = { name = "yn"; packageName = "yn"; - version = "2.0.0"; + version = "3.1.1"; src = fetchurl { - url = "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz"; - sha1 = "e5adabc8acf408f6385fc76495684c88e6af689a"; + url = "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz"; + sha512 = "Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q=="; }; }; }; @@ -4790,57 +4889,49 @@ in elm-test = nodeEnv.buildNodePackage { name = "elm-test"; packageName = "elm-test"; - version = "0.19.1"; + version = "0.19.1-revision2"; src = fetchurl { - url = "https://registry.npmjs.org/elm-test/-/elm-test-0.19.1.tgz"; - sha512 = "SyZgZ/hxq62budS3k0M1Qj1E8fIRvldSxFSm4XfzE6qRRuHAT2a82fxprZRZl1yG2GwnImGmhuKH5hSyjPpzjA=="; + url = "https://registry.npmjs.org/elm-test/-/elm-test-0.19.1-revision2.tgz"; + sha512 = "zVs2mVeyIE+K9y7/8b333h5xRMDWAoqbBDm7ThLDhyTi7ICxeL3t5uOS4KZCrRk9+4sP6+voSbcBlgr46Q+GiQ=="; }; dependencies = [ + sources."@types/color-name-1.1.1" sources."ajv-6.10.2" - sources."ansi-styles-3.2.1" + sources."ansi-styles-4.2.1" sources."anymatch-3.1.1" sources."asn1-0.2.4" sources."assert-plus-1.0.0" sources."asynckit-0.4.0" sources."aws-sign2-0.7.0" - sources."aws4-1.8.0" + sources."aws4-1.9.0" sources."balanced-match-1.0.0" sources."bcrypt-pbkdf-1.0.2" sources."binary-0.3.0" sources."binary-extensions-2.0.0" sources."binwrap-0.2.2" - sources."bluebird-3.7.1" + sources."bluebird-3.7.2" sources."brace-expansion-1.1.11" sources."braces-3.0.2" sources."buffers-0.1.1" sources."caseless-0.12.0" sources."chainsaw-0.1.0" - (sources."chalk-2.4.2" // { - dependencies = [ - sources."supports-color-5.5.0" - ]; - }) - sources."chokidar-3.2.1" + sources."chalk-3.0.0" + sources."chokidar-3.3.0" sources."chownr-1.1.3" - sources."color-convert-1.9.3" - sources."color-name-1.1.3" + sources."color-convert-2.0.1" + sources."color-name-1.1.4" sources."combined-stream-1.0.8" sources."concat-map-0.0.1" sources."core-util-is-1.0.2" - (sources."cross-spawn-7.0.0" // { - dependencies = [ - sources."which-1.3.1" - ]; - }) + sources."cross-spawn-7.0.1" sources."dashdash-1.14.1" sources."delayed-stream-1.0.0" sources."ecc-jsbn-0.1.2" - sources."elmi-to-json-1.2.0" - sources."escape-string-regexp-1.0.5" + sources."elmi-to-json-1.3.0" sources."extend-3.0.2" sources."extsprintf-1.3.0" sources."fast-deep-equal-2.0.1" - sources."fast-json-stable-stringify-2.0.0" + sources."fast-json-stable-stringify-2.1.0" sources."fill-range-7.0.1" (sources."find-elm-dependencies-2.0.2" // { dependencies = [ @@ -4854,14 +4945,14 @@ in sources."fs-extra-8.1.0" sources."fs-minipass-1.2.7" sources."fs.realpath-1.0.0" - sources."fsevents-2.1.1" + sources."fsevents-2.1.2" sources."getpass-0.1.7" - sources."glob-7.1.4" + sources."glob-7.1.6" sources."glob-parent-5.1.0" sources."graceful-fs-4.2.3" sources."har-schema-2.0.0" sources."har-validator-5.1.3" - sources."has-flag-3.0.0" + sources."has-flag-4.0.0" sources."http-signature-1.2.0" sources."inflight-1.0.6" sources."inherits-2.0.4" @@ -4879,8 +4970,8 @@ in sources."jsonfile-4.0.0" sources."jsprim-1.4.1" sources."lodash-4.17.15" - sources."mime-db-1.40.0" - sources."mime-types-2.1.24" + sources."mime-db-1.42.0" + sources."mime-types-2.1.25" sources."minimatch-3.0.4" sources."minimist-1.2.0" sources."minipass-2.9.0" @@ -4891,12 +4982,14 @@ in ]; }) sources."murmur-hash-js-1.0.0" - sources."mustache-3.1.0" + sources."mustache-3.2.1" sources."nice-try-1.0.5" (sources."node-elm-compiler-5.0.4" // { dependencies = [ sources."cross-spawn-6.0.5" sources."path-key-2.0.1" + sources."shebang-command-1.2.0" + sources."shebang-regex-1.0.0" sources."which-1.3.1" ]; }) @@ -4904,32 +4997,28 @@ in sources."oauth-sign-0.9.0" sources."once-1.4.0" sources."path-is-absolute-1.0.1" - sources."path-key-3.1.0" + sources."path-key-3.1.1" sources."performance-now-2.1.0" - sources."picomatch-2.1.0" - sources."psl-1.4.0" + sources."picomatch-2.1.1" + sources."psl-1.7.0" sources."punycode-2.1.1" sources."qs-6.5.2" - sources."readdirp-3.1.3" + sources."readdirp-3.2.0" sources."request-2.88.0" - sources."request-promise-4.2.4" - sources."request-promise-core-1.1.2" + sources."request-promise-4.2.5" + sources."request-promise-core-1.1.3" sources."rimraf-2.6.3" sources."safe-buffer-5.2.0" sources."safer-buffer-2.1.2" sources."semver-5.7.1" - sources."shebang-command-1.2.0" - sources."shebang-regex-1.0.0" + sources."shebang-command-2.0.0" + sources."shebang-regex-3.0.0" sources."split-1.0.1" sources."sshpk-1.16.1" sources."stealthy-require-1.1.1" - (sources."supports-color-7.1.0" // { - dependencies = [ - sources."has-flag-4.0.0" - ]; - }) + sources."supports-color-7.1.0" sources."tar-4.4.13" - sources."temp-0.9.0" + sources."temp-0.9.1" sources."through-2.3.8" sources."to-regex-range-5.0.1" (sources."tough-cookie-2.4.3" // { @@ -4977,13 +5066,13 @@ in sources."assert-plus-1.0.0" sources."asynckit-0.4.0" sources."aws-sign2-0.7.0" - sources."aws4-1.8.0" + sources."aws4-1.9.0" sources."balanced-match-1.0.0" sources."bcrypt-pbkdf-1.0.2" sources."binary-0.3.0" sources."binary-extensions-2.0.0" sources."binwrap-0.2.2" - sources."bluebird-3.7.1" + sources."bluebird-3.7.2" sources."brace-expansion-1.1.11" sources."braces-3.0.2" sources."buffers-0.1.1" @@ -5021,7 +5110,7 @@ in sources."extend-3.0.2" sources."extsprintf-1.3.0" sources."fast-deep-equal-2.0.1" - sources."fast-json-stable-stringify-2.0.0" + sources."fast-json-stable-stringify-2.1.0" sources."fill-range-7.0.1" (sources."find-elm-dependencies-2.0.2" // { dependencies = [ @@ -5036,7 +5125,7 @@ in sources."fs-extra-5.0.0" sources."fs-minipass-1.2.7" sources."fs.realpath-1.0.0" - sources."fsevents-2.1.1" + sources."fsevents-2.1.2" sources."get-caller-file-2.0.5" sources."getpass-0.1.7" sources."glob-7.1.4" @@ -5064,8 +5153,8 @@ in sources."jsprim-1.4.1" sources."locate-path-3.0.0" sources."lodash-4.17.15" - sources."mime-db-1.40.0" - sources."mime-types-2.1.24" + sources."mime-db-1.42.0" + sources."mime-types-2.1.25" sources."minimatch-3.0.4" sources."minimist-1.2.0" sources."minipass-2.9.0" @@ -5076,7 +5165,7 @@ in ]; }) sources."murmur-hash-js-1.0.0" - sources."mustache-3.1.0" + sources."mustache-3.2.1" sources."nice-try-1.0.5" (sources."node-elm-compiler-5.0.4" // { dependencies = [ @@ -5088,21 +5177,21 @@ in sources."normalize-path-3.0.0" sources."oauth-sign-0.9.0" sources."once-1.4.0" - sources."p-limit-2.2.1" + sources."p-limit-2.2.2" sources."p-locate-3.0.0" sources."p-try-2.2.0" sources."path-exists-3.0.0" sources."path-is-absolute-1.0.1" - sources."path-key-3.1.0" + sources."path-key-3.1.1" sources."performance-now-2.1.0" - sources."picomatch-2.1.0" - sources."psl-1.4.0" + sources."picomatch-2.1.1" + sources."psl-1.7.0" sources."punycode-2.1.1" sources."qs-6.5.2" sources."readdirp-3.1.3" sources."request-2.88.0" - sources."request-promise-4.2.4" - sources."request-promise-core-1.1.2" + sources."request-promise-4.2.5" + sources."request-promise-core-1.1.3" sources."require-directory-2.1.1" sources."require-main-filename-2.0.0" sources."rimraf-2.7.1" @@ -5233,7 +5322,7 @@ in sources."cookie-0.4.0" sources."cookie-signature-1.0.6" sources."copy-descriptor-0.1.1" - sources."core-js-3.3.5" + sources."core-js-3.6.1" sources."core-util-is-1.0.2" sources."cross-spawn-6.0.5" sources."debug-2.6.9" @@ -5248,12 +5337,12 @@ in sources."ee-first-1.1.1" sources."encodeurl-1.0.2" sources."end-of-stream-1.4.4" - sources."es-abstract-1.16.0" - sources."es-to-primitive-1.2.0" + sources."es-abstract-1.17.0" + sources."es-to-primitive-1.2.1" sources."escape-html-1.0.3" sources."escape-string-regexp-1.0.5" sources."etag-1.8.1" - sources."exec-sh-0.3.2" + sources."exec-sh-0.3.4" (sources."execa-1.0.0" // { dependencies = [ sources."get-stream-4.1.0" @@ -5294,7 +5383,7 @@ in sources."extend-shallow-2.0.1" ]; }) - sources."fb-watchman-2.0.0" + sources."fb-watchman-2.0.1" (sources."fill-range-4.0.0" // { dependencies = [ sources."extend-shallow-2.0.1" @@ -5310,12 +5399,12 @@ in sources."function-bind-1.1.1" sources."get-stream-3.0.0" sources."get-value-2.0.6" - sources."glob-7.1.5" + sources."glob-7.1.6" sources."got-8.3.2" sources."has-1.0.3" sources."has-flag-3.0.0" sources."has-symbol-support-x-1.4.2" - sources."has-symbols-1.0.0" + sources."has-symbols-1.0.1" sources."has-to-string-tag-x-1.4.1" sources."has-value-1.0.0" (sources."has-values-1.0.0" // { @@ -5333,9 +5422,9 @@ in sources."ipaddr.js-1.9.0" sources."is-accessor-descriptor-1.0.0" sources."is-buffer-1.1.6" - sources."is-callable-1.1.4" + sources."is-callable-1.1.5" sources."is-data-descriptor-1.0.0" - sources."is-date-object-1.0.1" + sources."is-date-object-1.0.2" sources."is-descriptor-1.0.2" sources."is-extendable-0.1.1" (sources."is-number-3.0.0" // { @@ -5346,10 +5435,10 @@ in sources."is-object-1.0.1" sources."is-plain-obj-1.1.0" sources."is-plain-object-2.0.4" - sources."is-regex-1.0.4" + sources."is-regex-1.0.5" sources."is-retry-allowed-1.2.0" sources."is-stream-1.1.0" - sources."is-symbol-1.0.2" + sources."is-symbol-1.0.3" sources."is-windows-1.0.2" sources."is-wsl-1.1.0" sources."isarray-1.0.0" @@ -5369,8 +5458,8 @@ in sources."methods-1.1.2" sources."micromatch-3.1.10" sources."mime-1.6.0" - sources."mime-db-1.40.0" - sources."mime-types-2.1.24" + sources."mime-db-1.42.0" + sources."mime-types-2.1.25" sources."mimic-response-1.0.1" sources."minimatch-3.0.4" sources."minimist-1.2.0" @@ -5401,10 +5490,11 @@ in sources."kind-of-3.2.2" ]; }) - sources."object-inspect-1.6.0" + sources."object-inspect-1.7.0" sources."object-keys-1.1.1" sources."object-visit-1.0.1" - sources."object.getownpropertydescriptors-2.0.3" + sources."object.assign-4.1.0" + sources."object.getownpropertydescriptors-2.1.0" sources."object.pick-1.3.0" sources."on-finished-2.3.0" sources."once-1.4.0" @@ -5498,7 +5588,7 @@ in }) sources."sort-keys-2.0.0" sources."source-map-0.5.7" - sources."source-map-resolve-0.5.2" + sources."source-map-resolve-0.5.3" sources."source-map-url-0.4.0" sources."split-string-3.1.0" (sources."static-extend-0.1.2" // { @@ -5520,8 +5610,8 @@ in }) sources."statuses-1.5.0" sources."strict-uri-encode-1.1.0" - sources."string.prototype.trimleft-2.1.0" - sources."string.prototype.trimright-2.1.0" + sources."string.prototype.trimleft-2.1.1" + sources."string.prototype.trimright-2.1.1" sources."string_decoder-1.1.1" sources."strip-eof-1.0.0" sources."strip-json-comments-2.0.1" @@ -5576,64 +5666,64 @@ in elm-upgrade = nodeEnv.buildNodePackage { name = "elm-upgrade"; packageName = "elm-upgrade"; - version = "0.19.6"; + version = "0.19.7"; src = fetchurl { - url = "https://registry.npmjs.org/elm-upgrade/-/elm-upgrade-0.19.6.tgz"; - sha512 = "i7+z/6uAqKxOUD58nwyAJJGUCNKG7/wTBY1qBanveFSaQuX5vrfhQNH/3NWIGCufGoW3QEyADGhaLhAxNPVs5Q=="; + url = "https://registry.npmjs.org/elm-upgrade/-/elm-upgrade-0.19.7.tgz"; + sha512 = "/BFMWGJ0SmoFzsYb7QwKUZ7kfdimllVkRO51NokYCj9ehAts5TnuG+GLHsmVCJh1mGL4Qc0D4cgeleEwDgoCAQ=="; }; dependencies = [ - sources."balanced-match-1.0.0" - sources."bindings-1.5.0" - sources."brace-expansion-1.1.11" - sources."capture-stack-trace-1.0.1" + sources."@sindresorhus/is-0.14.0" + sources."@szmarczak/http-timer-1.1.2" + (sources."cacheable-request-6.1.0" // { + dependencies = [ + sources."get-stream-5.1.0" + sources."lowercase-keys-2.0.0" + ]; + }) sources."caw-2.0.1" - sources."concat-map-0.0.1" + sources."clone-response-1.0.2" sources."config-chain-1.1.12" - sources."create-error-class-3.0.2" + sources."decompress-response-3.3.0" + sources."defer-to-connect-1.1.1" sources."duplexer3-0.1.4" - sources."file-uri-to-path-1.0.0" - sources."fs-extra-0.30.0" - sources."fs.realpath-1.0.0" + sources."end-of-stream-1.4.4" + sources."fs-extra-8.1.0" sources."get-proxy-2.1.0" - sources."get-stream-3.0.0" - sources."glob-7.1.5" - sources."got-6.7.1" + sources."get-stream-4.1.0" + sources."got-9.6.0" sources."graceful-fs-4.2.3" sources."has-symbol-support-x-1.4.2" sources."has-to-string-tag-x-1.4.1" - sources."inflight-1.0.6" - sources."inherits-2.0.4" + sources."http-cache-semantics-4.0.3" sources."ini-1.3.5" sources."is-object-1.0.1" - sources."is-redirect-1.0.0" - sources."is-retry-allowed-1.2.0" - sources."is-stream-1.1.0" sources."isexe-2.0.0" sources."isurl-1.0.0" - sources."jsonfile-2.4.0" - sources."klaw-1.3.1" + sources."json-buffer-3.0.0" + sources."jsonfile-4.0.0" + sources."keyv-3.1.0" sources."lowercase-keys-1.0.1" - sources."minimatch-3.0.4" - sources."nan-2.14.0" + sources."mimic-response-1.0.1" + sources."normalize-url-4.5.0" sources."npm-conf-1.1.3" sources."once-1.4.0" - sources."path-is-absolute-1.0.1" + sources."p-cancelable-1.1.0" sources."pify-3.0.0" - sources."prepend-http-1.0.4" + sources."prepend-http-2.0.0" sources."proto-list-1.2.4" - sources."rimraf-2.7.1" + sources."pump-3.0.0" + sources."responselike-1.0.2" sources."safe-buffer-5.2.0" sources."safename-1.0.2" - sources."semver-5.7.1" - sources."syncprompt-2.0.0" - sources."timed-out-4.0.1" + sources."semver-6.3.0" + sources."to-readable-stream-1.0.0" sources."tunnel-agent-0.6.0" - sources."unzip-response-2.0.1" - sources."url-parse-lax-1.0.0" + sources."universalify-0.1.2" + sources."url-parse-lax-3.0.0" sources."url-to-options-1.0.1" - sources."which-1.3.1" + sources."which-2.0.2" sources."wrappy-1.0.2" - sources."yn-2.0.0" + sources."yn-3.1.1" ]; buildInputs = globalBuildInputs; meta = { @@ -5662,7 +5752,7 @@ in sources."async-limiter-1.0.1" sources."asynckit-0.4.0" sources."aws-sign2-0.7.0" - sources."aws4-1.8.0" + sources."aws4-1.9.0" sources."babel-runtime-6.18.0" sources."bcrypt-pbkdf-1.0.2" sources."body-parser-1.19.0" @@ -5674,7 +5764,7 @@ in sources."content-type-1.0.4" sources."cookie-0.3.1" sources."cookie-signature-1.0.6" - sources."core-js-2.6.10" + sources."core-js-2.6.11" sources."core-util-is-1.0.2" sources."dashdash-1.14.1" sources."debug-2.6.9" @@ -5712,7 +5802,7 @@ in sources."extend-3.0.2" sources."extsprintf-1.3.0" sources."fast-deep-equal-2.0.1" - sources."fast-json-stable-stringify-2.0.0" + sources."fast-json-stable-stringify-2.1.0" (sources."finalhandler-1.1.1" // { dependencies = [ sources."statuses-1.4.0" @@ -5749,8 +5839,8 @@ in sources."merge-descriptors-1.0.1" sources."methods-1.1.2" sources."mime-1.4.1" - sources."mime-db-1.40.0" - sources."mime-types-2.1.24" + sources."mime-db-1.42.0" + sources."mime-types-2.1.25" sources."minimist-1.2.0" sources."ms-2.0.0" sources."negotiator-0.6.2" @@ -5766,7 +5856,7 @@ in sources."performance-now-2.1.0" sources."process-nextick-args-1.0.7" sources."proxy-addr-2.0.5" - sources."psl-1.4.0" + sources."psl-1.7.0" sources."punycode-2.1.1" sources."qs-6.7.0" sources."range-parser-1.2.1" @@ -5880,7 +5970,7 @@ in ]; }) sources."fresh-0.5.2" - sources."fsevents-2.1.1" + sources."fsevents-2.1.2" sources."get-stream-4.1.0" sources."glob-parent-5.1.0" sources."has-ansi-2.0.0" @@ -5913,11 +6003,11 @@ in sources."parseurl-1.3.3" sources."path-key-2.0.1" sources."pem-1.14.2" - sources."picomatch-2.1.0" + sources."picomatch-2.1.1" sources."pseudomap-1.0.2" sources."pump-3.0.0" sources."range-parser-1.2.1" - sources."readdirp-3.2.0" + sources."readdirp-3.3.0" sources."requires-port-1.0.0" sources."semver-5.7.1" (sources."send-0.17.1" // { @@ -5956,13 +6046,14 @@ in elm-xref = nodeEnv.buildNodePackage { name = "elm-xref"; packageName = "elm-xref"; - version = "4.0.0"; + version = "4.1.0"; src = fetchurl { - url = "https://registry.npmjs.org/elm-xref/-/elm-xref-4.0.0.tgz"; - sha512 = "9AjXLkznJBVLHHO+KErcgFMKeXe3tcudjj3PYIH6gWXG6W3PT+HF+t2zCflvgFPlhJO5H/wQCCo4rfCApltBzg=="; + url = "https://registry.npmjs.org/elm-xref/-/elm-xref-4.1.0.tgz"; + sha512 = "23nVGYsArS2DZ0RnFq6cKYO49pCjuLULhM+fvBcfA7ZIbKSw5WkDyK9c5hlQEm+JZAPZ43PNcI0yLzTEqaajiA=="; }; dependencies = [ - sources."bluebird-3.7.1" + sources."bluebird-3.7.2" + sources."compare-versions-3.5.1" sources."core-util-is-1.0.2" sources."fs-extra-6.0.1" sources."graceful-fs-4.2.3" @@ -5974,9 +6065,13 @@ in sources."process-nextick-args-2.0.1" sources."readable-stream-2.3.6" sources."safe-buffer-5.1.2" - sources."semver-5.7.1" + sources."semver-6.3.0" sources."semver-regex-1.0.0" - sources."semver-sort-0.0.4" + (sources."semver-sort-0.0.4" // { + dependencies = [ + sources."semver-5.7.1" + ]; + }) sources."string_decoder-1.1.1" sources."through2-2.0.5" sources."universalify-0.1.2" @@ -5996,10 +6091,10 @@ in "@elm-tooling/elm-language-server" = nodeEnv.buildNodePackage { name = "_at_elm-tooling_slash_elm-language-server"; packageName = "@elm-tooling/elm-language-server"; - version = "1.4.4"; + version = "1.4.6"; src = fetchurl { - url = "https://registry.npmjs.org/@elm-tooling/elm-language-server/-/elm-language-server-1.4.4.tgz"; - sha512 = "vhiQZHael3isY254nS/iiW5zFiTwXmyaj+IOO9q1PQ6URP8PKzQla74o7UuURRlkF5B/OuwB+u/hncmEbwyy+w=="; + url = "https://registry.npmjs.org/@elm-tooling/elm-language-server/-/elm-language-server-1.4.6.tgz"; + sha512 = "Cf1atW2nqZtDgyPFug0c9qo3A1a1mtTtKHRr3jGpIQnp8eb99kbPkERI3xFcbgyhgBOygVd3g282Y8jGawHbdA=="; }; dependencies = [ sources."@nodelib/fs.scandir-2.1.3" @@ -6008,7 +6103,7 @@ in sources."@types/events-3.0.0" sources."@types/glob-7.1.1" sources."@types/minimatch-3.0.3" - sources."@types/node-12.12.3" + sources."@types/node-13.1.2" sources."accepts-1.3.7" sources."ajv-6.10.2" sources."array-flatten-1.1.1" @@ -6018,7 +6113,7 @@ in sources."async-limiter-1.0.1" sources."asynckit-0.4.0" sources."aws-sign2-0.7.0" - sources."aws4-1.8.0" + sources."aws4-1.9.0" sources."babel-runtime-6.18.0" sources."balanced-match-1.0.0" sources."bcrypt-pbkdf-1.0.2" @@ -6034,7 +6129,7 @@ in sources."content-type-1.0.4" sources."cookie-0.3.1" sources."cookie-signature-1.0.6" - sources."core-js-2.6.10" + sources."core-js-2.6.11" sources."core-util-is-1.0.2" sources."cross-spawn-7.0.1" sources."dashdash-1.14.1" @@ -6055,7 +6150,7 @@ in sources."end-of-stream-1.4.4" sources."escape-html-1.0.3" sources."etag-1.8.1" - (sources."execa-3.2.0" // { + (sources."execa-3.4.0" // { dependencies = [ sources."is-stream-2.0.0" ]; @@ -6070,8 +6165,8 @@ in sources."extsprintf-1.3.0" sources."fast-deep-equal-2.0.1" sources."fast-diff-1.2.0" - sources."fast-glob-3.1.0" - sources."fast-json-stable-stringify-2.0.0" + sources."fast-glob-3.1.1" + sources."fast-json-stable-stringify-2.1.0" sources."fastq-1.6.0" sources."fill-range-7.0.1" sources."finalhandler-1.1.1" @@ -6084,7 +6179,7 @@ in sources."fs.realpath-1.0.0" sources."get-stream-5.1.0" sources."getpass-0.1.7" - sources."glob-7.1.5" + sources."glob-7.1.6" sources."glob-parent-5.1.0" sources."globby-10.0.1" sources."graceful-fs-4.2.3" @@ -6121,15 +6216,15 @@ in sources."methods-1.1.2" sources."micromatch-4.0.2" sources."mime-1.4.1" - sources."mime-db-1.40.0" - sources."mime-types-2.1.24" + sources."mime-db-1.42.0" + sources."mime-types-2.1.25" sources."mimic-fn-2.1.0" sources."minimatch-3.0.4" sources."minimist-1.2.0" sources."ms-2.0.0" sources."negotiator-0.6.2" sources."node-watch-0.5.5" - sources."npm-run-path-4.0.0" + sources."npm-run-path-4.0.1" sources."oauth-sign-0.9.0" sources."on-finished-2.3.0" sources."once-1.4.0" @@ -6141,15 +6236,15 @@ in sources."p-finally-2.0.1" sources."parseurl-1.3.3" sources."path-is-absolute-1.0.1" - sources."path-key-3.1.0" + sources."path-key-3.1.1" sources."path-to-regexp-0.1.7" sources."path-type-4.0.0" sources."performance-now-2.1.0" - sources."picomatch-2.1.0" + sources."picomatch-2.1.1" sources."pjson-1.0.9" sources."process-nextick-args-1.0.7" sources."proxy-addr-2.0.5" - sources."psl-1.4.0" + sources."psl-1.7.0" sources."pump-3.0.0" sources."punycode-2.1.1" sources."qs-6.5.1" @@ -6171,7 +6266,7 @@ in }) sources."reusify-1.0.4" sources."run-parallel-1.1.9" - sources."rxjs-6.5.3" + sources."rxjs-6.5.4" sources."safe-buffer-5.1.1" sources."safer-buffer-2.1.2" sources."send-0.16.2" @@ -6217,10 +6312,10 @@ in sources."vscode-languageserver-protocol-3.14.1" sources."vscode-languageserver-types-3.14.0" sources."vscode-uri-2.1.1" - sources."web-tree-sitter-0.15.10" - sources."which-2.0.1" + sources."web-tree-sitter-0.15.11" + sources."which-2.0.2" sources."wrappy-1.0.2" - sources."ws-7.2.0" + sources."ws-7.2.1" sources."xtend-4.0.2" ]; buildInputs = globalBuildInputs; diff --git a/pkgs/development/compilers/llvm/9/clang/default.nix b/pkgs/development/compilers/llvm/9/clang/default.nix index bf9b1a32a83..12fa33a7f8c 100644 --- a/pkgs/development/compilers/llvm/9/clang/default.nix +++ b/pkgs/development/compilers/llvm/9/clang/default.nix @@ -9,11 +9,11 @@ let pname = "clang"; inherit version; - src = fetch "cfe" "0426ma80i41qsgzm1qdz81mjskck426diygxi2k5vji2gkpixa3v"; + src = fetch "clang" "0ls2h3iv4finqyflyhry21qhc9cm9ga7g1zq21020p065qmm2y2p"; unpackPhase = '' unpackFile $src - mv cfe-${version}* clang + mv clang-${version}* clang sourceRoot=$PWD/clang unpackFile ${clang-tools-extra_src} mv clang-tools-extra-* $sourceRoot/tools/extra diff --git a/pkgs/development/compilers/llvm/9/compiler-rt.nix b/pkgs/development/compilers/llvm/9/compiler-rt.nix index 5826f0fbb35..75d0614b514 100644 --- a/pkgs/development/compilers/llvm/9/compiler-rt.nix +++ b/pkgs/development/compilers/llvm/9/compiler-rt.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "compiler-rt"; inherit version; - src = fetch pname "03ni43lbkp63lr3p6sc94dphqmvnz5av5mml0xmk930xvnbcvr2n"; + src = fetch pname "0xwh79g3zggdabxgnd0bphry75asm1qz7mv3hcqihqwqr6aspgy2"; nativeBuildInputs = [ cmake python llvm ]; buildInputs = stdenv.lib.optional stdenv.hostPlatform.isDarwin libcxxabi; diff --git a/pkgs/development/compilers/llvm/9/default.nix b/pkgs/development/compilers/llvm/9/default.nix index 1590d180c3f..c9e8ce91f0c 100644 --- a/pkgs/development/compilers/llvm/9/default.nix +++ b/pkgs/development/compilers/llvm/9/default.nix @@ -5,15 +5,15 @@ }: let - release_version = "9.0.0"; + release_version = "9.0.1"; version = release_version; # differentiating these is important for rc's fetch = name: sha256: fetchurl { - url = "https://releases.llvm.org/${release_version}/${name}-${version}.src.tar.xz"; + url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${release_version}/${name}-${version}.src.tar.xz"; inherit sha256; }; - clang-tools-extra_src = fetch "clang-tools-extra" "045cldmcfd8s33wyjlviifgpnw52yqicd6v4ysvdg4i96p78c77a"; + clang-tools-extra_src = fetch "clang-tools-extra" "01vgzd4k1q93nfs8gyl83mjlc4x0qsgfqw32lacbjzdxg0mdfvxj"; tools = stdenv.lib.makeExtensible (tools: let callPackage = newScope (tools // { inherit stdenv cmake libxml2 python isl release_version version fetch; }); diff --git a/pkgs/development/compilers/llvm/9/libc++/default.nix b/pkgs/development/compilers/llvm/9/libc++/default.nix index daf8ed5a9ae..1166c7bd76c 100644 --- a/pkgs/development/compilers/llvm/9/libc++/default.nix +++ b/pkgs/development/compilers/llvm/9/libc++/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation { pname = "libc++"; inherit version; - src = fetch "libcxx" "136j3v7il9aq8wyp48klx6sifnl5asj4lf5c8yx08cjx5fbn4h9w"; + src = fetch "libcxx" "0d2bj5i6mk4caq7skd5nsdmz8c2m5w5anximl5wz3x32p08zz089"; postUnpack = '' unpackFile ${libcxxabi.src} diff --git a/pkgs/development/compilers/llvm/9/libc++abi.nix b/pkgs/development/compilers/llvm/9/libc++abi.nix index 7afff991e75..fbc9a3731ef 100644 --- a/pkgs/development/compilers/llvm/9/libc++abi.nix +++ b/pkgs/development/compilers/llvm/9/libc++abi.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation { pname = "libc++abi"; inherit version; - src = fetch "libcxxabi" "1s9haplqv8ashlsdx2psxiqxh50gqk2jp2vz5yn0djb56mw42l37"; + src = fetch "libcxxabi" "1b4aiaa8cirx52vk2p5kfk57qmbqf1ipb4nqnjhdgqps9jm7iyg8"; nativeBuildInputs = [ cmake ]; buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind; diff --git a/pkgs/development/compilers/llvm/9/libunwind.nix b/pkgs/development/compilers/llvm/9/libunwind.nix index 5eba9e03c78..883c36baf06 100644 --- a/pkgs/development/compilers/llvm/9/libunwind.nix +++ b/pkgs/development/compilers/llvm/9/libunwind.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation rec { pname = "libunwind"; inherit version; - src = fetch pname "1chd1nz4bscrs6qa7p8sqgk5df86ll0frv0f451vhks2w44qsslp"; + src = fetch pname "1wb02ha3gl6p0a321hwpll74pz5qvjr11xmjqx62g288f1m10njk"; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/compilers/llvm/9/lld.nix b/pkgs/development/compilers/llvm/9/lld.nix index c5baef4357e..775dc2e1905 100644 --- a/pkgs/development/compilers/llvm/9/lld.nix +++ b/pkgs/development/compilers/llvm/9/lld.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { pname = "lld"; inherit version; - src = fetch pname "14cgd34gr826qpxzhrkbz6qgm8ymds0hrsiznwzp42ax4f5p9iii"; + src = fetch pname "10hckfxpapfnh6y9apjiya2jpw9nmbbmh8ayijx89mrg7snjn9l6"; nativeBuildInputs = [ cmake ]; buildInputs = [ llvm libxml2 ]; diff --git a/pkgs/development/compilers/llvm/9/lldb.nix b/pkgs/development/compilers/llvm/9/lldb.nix index ee281384c40..64f111502cc 100644 --- a/pkgs/development/compilers/llvm/9/lldb.nix +++ b/pkgs/development/compilers/llvm/9/lldb.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { pname = "lldb"; inherit version; - src = fetch pname "1507dl0xw03nppxpz2xsq4s30jdbkplx4w14za54ngqm3xm2yk0y"; + src = fetch pname "02gb3fbz09kyw8n71218v5v77ip559x3gqbcp8y3w6n3jpbryywa"; patches = [ ./lldb-procfs.patch ]; diff --git a/pkgs/development/compilers/llvm/9/llvm.nix b/pkgs/development/compilers/llvm/9/llvm.nix index d4af41ee436..acd3ec92897 100644 --- a/pkgs/development/compilers/llvm/9/llvm.nix +++ b/pkgs/development/compilers/llvm/9/llvm.nix @@ -31,8 +31,8 @@ in stdenv.mkDerivation (rec { pname = "llvm"; inherit version; - src = fetch pname "117ymdz1by2nkfq1c2p9m4050dp848kbjbiv6nsfj8hzy9f5d86n"; - polly_src = fetch "polly" "0cyl2gsibf1dhqvkyw1qb0f8q58ib6cihzyh4f9kj9g77ll95ym4"; + src = fetch pname "16hwp3qa54c3a3v7h8nlw0fh5criqh0hlr1skybyk0cz70gyx880"; + polly_src = fetch "polly" "1kqg0isv0kicnylrdp5iajlgd6alc0zx1l3cxc9hs8r3z6fwcjls"; unpackPhase = '' unpackFile $src diff --git a/pkgs/development/compilers/llvm/9/openmp.nix b/pkgs/development/compilers/llvm/9/openmp.nix index a511aed2eb8..4e0a5535ae3 100644 --- a/pkgs/development/compilers/llvm/9/openmp.nix +++ b/pkgs/development/compilers/llvm/9/openmp.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { pname = "openmp"; inherit version; - src = fetch pname "0nrv9np134b7c483jnq786spy3hbpj11d7g21g67cqq66c8ynycr"; + src = fetch pname "1knafnpp0f7hylx8q20lkd6g1sf0flly572dayc5d5kghh7hd52w"; nativeBuildInputs = [ cmake perl ]; buildInputs = [ llvm ]; diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix index 285f2cd2ebe..23e6c64f3ff 100644 --- a/pkgs/development/compilers/solc/default.nix +++ b/pkgs/development/compilers/solc/default.nix @@ -7,26 +7,23 @@ assert z3Support -> z3 != null && stdenv.lib.versionAtLeast z3.version "4.6.0"; assert cvc4Support -> cvc4 != null && cln != null && gmp != null; let - jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.8.4.tar.gz; + jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.9.2.tar.gz; jsoncpp = fetchzip { url = jsoncppURL; - sha256 = "1z0gj7a6jypkijmpknis04qybs1hkd04d1arr3gy89lnxmp6qzlm"; + sha256 = "037d1b1qdmn3rksmn1j71j26bv4hkjv7sn7da261k853xb5899sg"; }; - buildSharedLibs = stdenv.hostPlatform.isLinux; in stdenv.mkDerivation rec { pname = "solc"; - version = "0.5.12"; + version = "0.5.15"; # upstream suggests avoid using archive generated by github src = fetchzip { url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz"; - sha256 = "0b9m9jhdz5lgrhrkngj1xnggxp1f6z8pzh29acsz3298l77kfk3z"; + sha256 = "1nfvsaci5ja5ss603z04197wndwkvcq9nm5mdab1kpdr91djxh2y"; }; - patches = stdenv.lib.optionals buildSharedLibs [ ./patches/shared-libs-install.patch ]; - postPatch = '' substituteInPlace cmake/jsoncpp.cmake \ --replace "${jsoncppURL}" ${jsoncpp} @@ -34,8 +31,6 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DBoost_USE_STATIC_LIBS=OFF" - ] ++ stdenv.lib.optionals buildSharedLibs [ - "-DBUILD_SHARED_LIBS=ON" ] ++ stdenv.lib.optionals (!z3Support) [ "-DUSE_Z3=OFF" ] ++ stdenv.lib.optionals (!cvc4Support) [ @@ -74,8 +69,6 @@ stdenv.mkDerivation rec { popd ''; - outputs = [ "out" "dev" ]; - meta = with stdenv.lib; { description = "Compiler for Ethereum smart contract language Solidity"; homepage = https://github.com/ethereum/solidity; diff --git a/pkgs/development/compilers/solc/patches/shared-libs-install.patch b/pkgs/development/compilers/solc/patches/shared-libs-install.patch deleted file mode 100644 index 382d49599c7..00000000000 --- a/pkgs/development/compilers/solc/patches/shared-libs-install.patch +++ /dev/null @@ -1,71 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0c05208f..8893648e 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -48,6 +48,22 @@ add_subdirectory(libevmasm) - add_subdirectory(libsolidity) - add_subdirectory(libsolc) - -+install(DIRECTORY libdevcore/ -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libdevcore -+ FILES_MATCHING PATTERN "*.h") -+install(DIRECTORY libevmasm/ -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libevmasm -+ FILES_MATCHING PATTERN "*.h") -+install(DIRECTORY libsolidity/ -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libsolidity -+ FILES_MATCHING PATTERN "*.h") -+install(DIRECTORY libyul/ -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libyul -+ FILES_MATCHING PATTERN "*.h") -+install(DIRECTORY liblangutil/ -+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/liblangutil -+ FILES_MATCHING PATTERN "*.h") -+ - if (NOT EMSCRIPTEN) - add_subdirectory(solc) - add_subdirectory(liblll) -diff --git a/libdevcore/CMakeLists.txt b/libdevcore/CMakeLists.txt -index fa7e3f48..1f9f52b4 100644 ---- a/libdevcore/CMakeLists.txt -+++ b/libdevcore/CMakeLists.txt -@@ -6,3 +6,4 @@ target_link_libraries(devcore PRIVATE jsoncpp ${Boost_FILESYSTEM_LIBRARIES} ${Bo - target_include_directories(devcore PUBLIC "${CMAKE_SOURCE_DIR}") - target_include_directories(devcore SYSTEM PUBLIC ${Boost_INCLUDE_DIRS}) - add_dependencies(devcore solidity_BuildInfo.h) -+install(TARGETS devcore LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) -diff --git a/libevmasm/CMakeLists.txt b/libevmasm/CMakeLists.txt -index 86192c1b..e7f15e93 100644 ---- a/libevmasm/CMakeLists.txt -+++ b/libevmasm/CMakeLists.txt -@@ -3,3 +3,4 @@ file(GLOB headers "*.h") - - add_library(evmasm ${sources} ${headers}) - target_link_libraries(evmasm PUBLIC devcore) -+install(TARGETS evmasm LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) -diff --git a/libsolidity/CMakeLists.txt b/libsolidity/CMakeLists.txt -index 0bdec4b4..e876177e 100644 ---- a/libsolidity/CMakeLists.txt -+++ b/libsolidity/CMakeLists.txt -@@ -29,6 +29,7 @@ endif() - - add_library(solidity ${sources} ${z3_SRCS} ${cvc4_SRCS}) - target_link_libraries(solidity PUBLIC yul evmasm langutil devcore Boost::boost Boost::filesystem Boost::system) -+install(TARGETS solidity LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) - - if (${Z3_FOUND}) - target_link_libraries(solidity PUBLIC ${Z3_LIBRARY}) ---- a/libyul/CMakeLists.txt -+++ b/libyul/CMakeLists.txt -@@ -43,3 +43,4 @@ endif() - optimiser/VarDeclPropagator.cpp - ) - target_link_libraries(yul PUBLIC evmasm devcore langutil) -+install(TARGETS yul LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) ---- a/liblangutil/CMakeLists.txt -+++ b/liblangutil/CMakeLists.txt -@@ -11,3 +11,4 @@ endif() - - add_library(langutil ${sources}) - target_link_libraries(langutil PUBLIC devcore) -+install(TARGETS langutil LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) diff --git a/pkgs/development/libraries/apr/default.nix b/pkgs/development/libraries/apr/default.nix index d9409636bd0..2ce4b77927f 100644 --- a/pkgs/development/libraries/apr/default.nix +++ b/pkgs/development/libraries/apr/default.nix @@ -23,10 +23,18 @@ stdenv.mkDerivation rec { configureFlagsArray+=("--with-installbuilddir=$dev/share/build") ''; - configureFlags = + configureFlags = stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [ + "ac_cv_file__dev_zero=yes" + "ac_cv_func_setpgrp_void=0" + "apr_cv_process_shared_works=1" + "apr_cv_tcp_nodelay_with_cork=1" + ] ++ stdenv.lib.optionals (stdenv.hostPlatform.system == "i686-cygwin") [ # Including the Windows headers breaks unistd.h. # Based on ftp://sourceware.org/pub/cygwin/release/libapr1/libapr1-1.3.8-2-src.tar.bz2 - stdenv.lib.optional (stdenv.hostPlatform.system == "i686-cygwin") "ac_cv_header_windows_h=no"; + "ac_cv_header_windows_h=no" + ]; + + CPPFLAGS=stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "-DAPR_IOVEC_DEFINED"; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix index f6f3493002a..87684a4bbe4 100644 --- a/pkgs/development/libraries/arrow-cpp/default.nix +++ b/pkgs/development/libraries/arrow-cpp/default.nix @@ -1,6 +1,7 @@ -{ stdenv, fetchurl, fetchFromGitHub, fixDarwinDylibNames, autoconf, boost +{ stdenv, lib, fetchurl, fetchFromGitHub, fixDarwinDylibNames, autoconf, boost , brotli, cmake, double-conversion, flatbuffers, gflags, glog, gtest, lz4, perl -, python, rapidjson, snappy, thrift, uriparser, which, zlib, zstd }: +, python, rapidjson, snappy, thrift, uriparser, which, zlib, zstd +, enableShared ? true }: let parquet-testing = fetchFromGitHub { @@ -34,13 +35,16 @@ in stdenv.mkDerivation rec { patches = [ # patch to fix python-test ./darwin.patch + ] ++ lib.optionals (!enableShared) [ + # The shared jemalloc lib is unused and breaks in static mode due to missing -fpic. + ./jemalloc-disable-shared.patch ]; nativeBuildInputs = [ cmake autoconf # for vendored jemalloc flatbuffers - ] ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames; + ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; buildInputs = [ boost brotli @@ -71,21 +75,26 @@ in stdenv.mkDerivation rec { "-DARROW_DEPENDENCY_SOURCE=SYSTEM" "-DARROW_PARQUET=ON" "-DARROW_PLASMA=ON" - "-DARROW_PYTHON=ON" + # Disable Python for static mode because openblas is currently broken there. + "-DARROW_PYTHON=${if enableShared then "ON" else "OFF"}" "-Duriparser_SOURCE=SYSTEM" - ] ++ stdenv.lib.optional (!stdenv.isx86_64) "-DARROW_USE_SIMD=OFF"; + ] ++ lib.optionals (!enableShared) [ + "-DARROW_BUILD_SHARED=OFF" + "-DARROW_TEST_LINKAGE=static" + "-DOPENSSL_USE_STATIC_LIBS=ON" + ] ++ lib.optional (!stdenv.isx86_64) "-DARROW_USE_SIMD=OFF"; doInstallCheck = true; PARQUET_TEST_DATA = if doInstallCheck then "${parquet-testing}/data" else null; installCheckInputs = [ perl which ]; - installCheckPhase = (stdenv.lib.optionalString stdenv.isDarwin '' + installCheckPhase = (lib.optionalString stdenv.isDarwin '' for f in release/*test{,s}; do install_name_tool -add_rpath "$out"/lib "$f" done '') + (let - excludedTests = stdenv.lib.optionals stdenv.isDarwin [ + excludedTests = lib.optionals stdenv.isDarwin [ # Some plasma tests need to be patched to use a shorter AF_UNIX socket # path on Darwin. See https://github.com/NixOS/nix/pull/1085 "plasma-external-store-tests" @@ -99,8 +108,8 @@ in stdenv.mkDerivation rec { meta = { description = "A cross-language development platform for in-memory data"; homepage = "https://arrow.apache.org/"; - license = stdenv.lib.licenses.asl20; - platforms = stdenv.lib.platforms.unix; - maintainers = with stdenv.lib.maintainers; [ tobim veprbl ]; + license = lib.licenses.asl20; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [ tobim veprbl ]; }; } diff --git a/pkgs/development/libraries/arrow-cpp/jemalloc-disable-shared.patch b/pkgs/development/libraries/arrow-cpp/jemalloc-disable-shared.patch new file mode 100644 index 00000000000..0f7955724e1 --- /dev/null +++ b/pkgs/development/libraries/arrow-cpp/jemalloc-disable-shared.patch @@ -0,0 +1,11 @@ +diff --git a/cmake_modules/ThirdpartyToolchain.cmake b/cmake_modules/ThirdpartyToolchain.cmake +--- a/cmake_modules/ThirdpartyToolchain.cmake ++++ b/cmake_modules/ThirdpartyToolchain.cmake +@@ -1428,6 +1428,7 @@ if(ARROW_JEMALLOC) + "--with-jemalloc-prefix=je_arrow_" + "--with-private-namespace=je_arrow_private_" + "--without-export" ++ "--disable-shared" + # Don't override operator new() + "--disable-cxx" "--disable-libdl" + # See https://github.com/jemalloc/jemalloc/issues/1237 diff --git a/pkgs/development/libraries/cyrus-sasl/default.nix b/pkgs/development/libraries/cyrus-sasl/default.nix index a050dd8d9ca..68f6a7c5d8b 100644 --- a/pkgs/development/libraries/cyrus-sasl/default.nix +++ b/pkgs/development/libraries/cyrus-sasl/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, openssl, openldap, kerberos, db, gettext , pam, fixDarwinDylibNames, autoreconfHook, enableLdap ? false -, buildPackages, pruneLibtoolFiles }: +, buildPackages, pruneLibtoolFiles, fetchpatch }: with stdenv.lib; stdenv.mkDerivation rec { @@ -27,6 +27,11 @@ stdenv.mkDerivation rec { patches = [ ./missing-size_t.patch # https://bugzilla.redhat.com/show_bug.cgi?id=906519 ./cyrus-sasl-ac-try-run-fix.patch + (fetchpatch { + name = "CVE-2019-19906.patch"; + url = "https://sources.debian.org/data/main/c/cyrus-sasl2/2.1.27+dfsg-1+deb10u1/debian/patches/0021-CVE-2019-19906.patch"; + sha256 = "1n4c5wg7l9j8rlbvx8i605j5d39xmj5wm618k8acxl4fmglcmfls"; + }) ]; configureFlags = [ diff --git a/pkgs/development/libraries/double-conversion/default.nix b/pkgs/development/libraries/double-conversion/default.nix index bc4bc8b2352..4d8f623b36a 100644 --- a/pkgs/development/libraries/double-conversion/default.nix +++ b/pkgs/development/libraries/double-conversion/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, cmake }: +{ stdenv, lib, fetchFromGitHub, cmake, static ? false }: stdenv.mkDerivation rec { pname = "double-conversion"; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake ]; - cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ]; + cmakeFlags = [ "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}" ]; # Case sensitivity issue preConfigure = lib.optionalString stdenv.isDarwin '' @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Binary-decimal and decimal-binary routines for IEEE doubles"; - homepage = https://github.com/google/double-conversion; + homepage = "https://github.com/google/double-conversion"; license = licenses.bsd3; platforms = platforms.unix; maintainers = with maintainers; [ abbradar ]; diff --git a/pkgs/development/libraries/flatbuffers/default.nix b/pkgs/development/libraries/flatbuffers/default.nix index d43c10c8bf9..11e86703616 100644 --- a/pkgs/development/libraries/flatbuffers/default.nix +++ b/pkgs/development/libraries/flatbuffers/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchFromGitHub, cmake }: +{ stdenv, fetchFromGitHub, fetchpatch, cmake }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (rec { pname = "flatbuffers"; version = "1.11.0"; @@ -34,4 +34,12 @@ stdenv.mkDerivation rec { platforms = stdenv.lib.platforms.unix; homepage = https://google.github.io/flatbuffers/; }; -} +} // stdenv.lib.optionalAttrs stdenv.hostPlatform.isMusl { + # Remove when updating to the next version. + patches = [ + (fetchpatch { + url = "https://github.com/google/flatbuffers/commit/2b52494047fb6e97af03e1801b42adc7ed3fd78a.diff"; + sha256 = "01k07ws0f4w7nnl8nli795wgjm4p94lxd3kva4yf7nf3pg4p8arx"; + }) + ]; +}) diff --git a/pkgs/development/libraries/gflags/default.nix b/pkgs/development/libraries/gflags/default.nix index 2e818ea94ea..b09936f2924 100644 --- a/pkgs/development/libraries/gflags/default.nix +++ b/pkgs/development/libraries/gflags/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, cmake }: +{ stdenv, fetchFromGitHub, cmake, enableShared ? true}: stdenv.mkDerivation rec { pname = "gflags"; @@ -17,8 +17,8 @@ stdenv.mkDerivation rec { preConfigure = "rm BUILD"; cmakeFlags = [ - "-DBUILD_SHARED_LIBS=ON" - "-DBUILD_STATIC_LIBS=ON" + "-DGFLAGS_BUILD_SHARED_LIBS=${if enableShared then "ON" else "OFF"}" + "-DGFLAGS_BUILD_STATIC_LIBS=ON" ]; doCheck = false; diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index 0febed9f9c9..4a7d6cce90b 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -138,9 +138,6 @@ stdenv.mkDerivation rec { patchShebangs tests/gen-casemap-txt.py ''; - LIBELF_CFLAGS = optional stdenv.isFreeBSD "-I${libelf}"; - LIBELF_LIBS = optional stdenv.isFreeBSD "-L${libelf} -lelf"; - DETERMINISTIC_BUILD = 1; postInstall = '' diff --git a/pkgs/development/libraries/glibc/default.nix b/pkgs/development/libraries/glibc/default.nix index 98e579cb7a6..1a17595a1a3 100644 --- a/pkgs/development/libraries/glibc/default.nix +++ b/pkgs/development/libraries/glibc/default.nix @@ -48,21 +48,21 @@ callPackage ./common.nix { inherit stdenv; } { # limit rebuilds by only disabling pie w/musl ++ stdenv.lib.optional stdenv.hostPlatform.isMusl "pie"; - NIX_CFLAGS_COMPILE = - if !stdenv.hostPlatform.isMusl + NIX_CFLAGS_COMPILE = stdenv.lib.concatStringsSep " " + (if !stdenv.hostPlatform.isMusl # TODO: This (returning a string or `null`, instead of a list) is to # not trigger a mass rebuild due to the introduction of the # musl-specific flags below. # At next change to non-musl glibc builds, remove this `then` # and the above condition, instead keeping only the `else` below. - then (if withGd then gdCflags else null) + then (stdenv.lib.optionals withGd gdCflags) else (builtins.concatLists [ (stdenv.lib.optionals withGd gdCflags) # Fix -Werror build failure when building glibc with musl with GCC >= 8, see: # https://github.com/NixOS/nixpkgs/pull/68244#issuecomment-544307798 (stdenv.lib.optional stdenv.hostPlatform.isMusl "-Wno-error=attribute-alias") - ]); + ])); # When building glibc from bootstrap-tools, we need libgcc_s at RPATH for # any program we run, because the gcc will have been placed at a new diff --git a/pkgs/development/libraries/glog/default.nix b/pkgs/development/libraries/glog/default.nix index 792217043da..7809dc08842 100644 --- a/pkgs/development/libraries/glog/default.nix +++ b/pkgs/development/libraries/glog/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, fetchpatch, autoreconfHook, perl }: +{ stdenv, lib, fetchFromGitHub, fetchpatch, cmake, perl, static ? false }: stdenv.mkDerivation rec { pname = "glog"; @@ -20,13 +20,15 @@ stdenv.mkDerivation rec { }) ]; - nativeBuildInputs = [ autoreconfHook ]; + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}" ]; checkInputs = [ perl ]; doCheck = false; # fails with "Mangled symbols (28 out of 380) found in demangle.dm" meta = with stdenv.lib; { - homepage = https://github.com/google/glog; + homepage = "https://github.com/google/glog"; license = licenses.bsd3; description = "Library for application-level logging"; platforms = platforms.unix; diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 9582e1bf1bf..761d6594bd0 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -27,7 +27,7 @@ with stdenv.lib; let - version = "19.2.7"; + version = "19.3.1"; branch = versions.major version; in @@ -42,7 +42,7 @@ stdenv.mkDerivation { "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz" "https://mesa.freedesktop.org/archive/mesa-${version}.tar.xz" ]; - sha256 = "17jp8ghipgz62vqqz5llskxypkcmgf8gnlgnj0pyvnbgi6vryyg3"; + sha256 = "0ndfpqry08s74yw4x3ydyhim6v4ywg0b4yhaazq7zaankjv1v5fd"; }; prePatch = "patchShebangs ."; diff --git a/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch b/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch index 1e280b64ee5..8ce3473dd32 100644 --- a/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch +++ b/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch @@ -1,4 +1,4 @@ -From 2a1e32b4105fe95413a615a44d40938920ea1a19 Mon Sep 17 00:00:00 2001 +From 6d22383149e4cdc646c68e29238f41d895a4705b Mon Sep 17 00:00:00 2001 From: David McFarland <corngood@gmail.com> Date: Mon, 6 Aug 2018 15:52:11 -0300 Subject: [PATCH] disk_cache: include dri driver path in cache key @@ -12,10 +12,10 @@ timestamps in /nix/store are zero. 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/meson_options.txt b/meson_options.txt -index a723b5406cf..65a8954291f 100644 +index 626baf3..579c15b 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -330,3 +330,9 @@ option( +@@ -341,6 +341,12 @@ option( value : true, description : 'Enable direct rendering in GLX and EGL for DRI', ) @@ -25,11 +25,14 @@ index a723b5406cf..65a8954291f 100644 + value : '', + description : 'Mesa cache key.' +) + option( + 'I-love-half-baked-turnips', + type : 'boolean', diff --git a/src/util/disk_cache.c b/src/util/disk_cache.c -index 0aa2646a9bb..bd784d38e21 100644 +index 0cd92ca..fc1c173 100644 --- a/src/util/disk_cache.c +++ b/src/util/disk_cache.c -@@ -389,8 +389,10 @@ disk_cache_create(const char *gpu_name, const char *driver_id, +@@ -395,8 +395,10 @@ disk_cache_create(const char *gpu_name, const char *driver_id, /* Create driver id keys */ size_t id_size = strlen(driver_id) + 1; @@ -40,7 +43,7 @@ index 0aa2646a9bb..bd784d38e21 100644 cache->driver_keys_blob_size += gpu_name_size; /* We sometimes store entire structs that contains a pointers in the cache, -@@ -411,6 +413,7 @@ disk_cache_create(const char *gpu_name, const char *driver_id, +@@ -417,6 +419,7 @@ disk_cache_create(const char *gpu_name, const char *driver_id, uint8_t *drv_key_blob = cache->driver_keys_blob; DRV_KEY_CPY(drv_key_blob, &cache_version, cv_size) DRV_KEY_CPY(drv_key_blob, driver_id, id_size) @@ -49,13 +52,13 @@ index 0aa2646a9bb..bd784d38e21 100644 DRV_KEY_CPY(drv_key_blob, &ptr_size, ptr_size_size) DRV_KEY_CPY(drv_key_blob, &driver_flags, driver_flags_size) diff --git a/src/util/meson.build b/src/util/meson.build -index 397c2228129..77013563e5d 100644 +index f69ebe9..e2bd8e2 100644 --- a/src/util/meson.build +++ b/src/util/meson.build -@@ -120,7 +120,12 @@ libmesa_util = static_library( +@@ -158,7 +158,12 @@ _libmesa_util = static_library( [files_mesa_util, format_srgb], include_directories : inc_common, - dependencies : [dep_zlib, dep_clock, dep_thread, dep_atomic, dep_m], + dependencies : deps_for_libmesa_util, - c_args : [c_msvc_compat_args, c_vis_args], + c_args : [ + c_msvc_compat_args, c_vis_args, @@ -67,5 +70,5 @@ index 397c2228129..77013563e5d 100644 ) -- -2.19.2 +2.24.1 diff --git a/pkgs/development/libraries/physics/fastjet/default.nix b/pkgs/development/libraries/physics/fastjet/default.nix index 826362cc586..96eb13d11cd 100644 --- a/pkgs/development/libraries/physics/fastjet/default.nix +++ b/pkgs/development/libraries/physics/fastjet/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "fastjet"; - version = "3.3.2"; + version = "3.3.3"; src = fetchurl { url = "http://fastjet.fr/repo/fastjet-${version}.tar.gz"; - sha256 = "1hk3k7dyik640dzg21filpywc2dl862nl2hbpg384hf5pw9syn9z"; + sha256 = "0avkgn19plq593p872hirr0yj2vgjvsi88w68ngarbp55hla1c1h"; }; buildInputs = [ python2 ]; diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix index f8d392691ab..a26cf38a9d0 100644 --- a/pkgs/development/libraries/science/math/openblas/default.nix +++ b/pkgs/development/libraries/science/math/openblas/default.nix @@ -8,6 +8,7 @@ # See https://github.com/xianyi/OpenBLAS/blob/develop/TargetList.txt , target ? null , enableStatic ? false +, enableShared ? true }: with stdenv.lib; @@ -60,7 +61,7 @@ let TARGET = setTarget "ATHLON"; DYNAMIC_ARCH = true; NO_AVX512 = true; - USE_OPENMP = true; + USE_OPENMP = !stdenv.hostPlatform.isMusl; }; }; in @@ -115,6 +116,9 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ perl which + ]; + + depsBuildBuild = [ buildPackages.gfortran buildPackages.stdenv.cc ]; @@ -126,6 +130,7 @@ stdenv.mkDerivation rec { NUM_THREADS = 64; INTERFACE64 = blas64; NO_STATIC = !enableStatic; + NO_SHARED = !enableShared; CROSS = stdenv.hostPlatform != stdenv.buildPlatform; HOSTCC = "cc"; # Makefile.system only checks defined status diff --git a/pkgs/development/libraries/science/math/openlibm/default.nix b/pkgs/development/libraries/science/math/openlibm/default.nix index 6fc96623a33..e4a3241c1f3 100644 --- a/pkgs/development/libraries/science/math/openlibm/default.nix +++ b/pkgs/development/libraries/science/math/openlibm/default.nix @@ -2,10 +2,10 @@ stdenv.mkDerivation rec { pname = "openlibm"; - version = "0.6.0"; + version = "0.7.0"; src = fetchurl { url = "https://github.com/JuliaLang/openlibm/archive/v${version}.tar.gz"; - sha256 = "0a5fpm8nra5ldhjk0cqd2rx1qh32wiarkxmcqcm5xl8z7l4kjm6l"; + sha256 = "18q6mrq4agvlpvhix2k13qcyvqqzh30vj7b329dva64035rzg68n"; }; makeFlags = [ "prefix=$(out)" ]; diff --git a/pkgs/development/libraries/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix index f35f5bfc55a..0ad1a4b2898 100644 --- a/pkgs/development/libraries/snappy/default.nix +++ b/pkgs/development/libraries/snappy/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, cmake }: +{ stdenv, fetchFromGitHub, cmake, static ? false }: stdenv.mkDerivation rec { pname = "snappy"; @@ -17,7 +17,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake ]; - cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" "-DCMAKE_SKIP_BUILD_RPATH=OFF" ]; + cmakeFlags = [ + "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}" + "-DCMAKE_SKIP_BUILD_RPATH=OFF" + ]; postInstall = '' substituteInPlace "$out"/lib/cmake/Snappy/SnappyTargets.cmake \ @@ -29,7 +32,7 @@ stdenv.mkDerivation rec { doCheck = true; meta = with stdenv.lib; { - homepage = https://google.github.io/snappy/; + homepage = "https://google.github.io/snappy/"; license = licenses.bsd3; description = "Compression/decompression library for very high speeds"; platforms = platforms.all; diff --git a/pkgs/development/libraries/thrift/default.nix b/pkgs/development/libraries/thrift/default.nix index ecdb831fcfa..b1b66ed052f 100644 --- a/pkgs/development/libraries/thrift/default.nix +++ b/pkgs/development/libraries/thrift/default.nix @@ -1,6 +1,5 @@ -{ stdenv, fetchurl, boost, zlib, libevent, openssl, python, pkgconfig, bison -, flex, twisted -}: +{ stdenv, fetchurl, boost, zlib, libevent, openssl, python, cmake, pkgconfig +, bison, flex, twisted, static ? false }: stdenv.mkDerivation rec { pname = "thrift"; @@ -11,27 +10,36 @@ stdenv.mkDerivation rec { sha256 = "0yai9c3bdsrkkjshgim7zk0i7malwfprg00l9774dbrkh2w4ilvs"; }; - #enableParallelBuilding = true; problems on hydra - # Workaround to make the python wrapper not drop this package: # pythonFull.buildEnv.override { extraLibs = [ thrift ]; } pythonPath = []; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ - boost zlib libevent openssl python bison flex twisted - ]; + nativeBuildInputs = [ cmake pkgconfig ]; + buildInputs = [ boost zlib libevent openssl python bison flex ] + ++ stdenv.lib.optional (!static) twisted; preConfigure = "export PY_PREFIX=$out"; - # TODO: package boost-test, so we can run the test suite. (Currently it fails - # to find libboost_unit_test_framework.a.) - configureFlags = [ "--enable-tests=no" ]; - doCheck = false; + cmakeFlags = [ + # FIXME: Fails to link in static mode with undefined reference to + # `boost::unit_test::unit_test_main(bool (*)(), int, char**)' + "-DBUILD_TESTING:BOOL=${if static then "OFF" else "ON"}" + ] ++ stdenv.lib.optionals static [ + "-DWITH_STATIC_LIB:BOOL=ON" + "-DOPENSSL_USE_STATIC_LIBS=ON" + ]; + + doCheck = !static; + checkPhase = '' + runHook preCheck + LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib ctest -E PythonTestSSLSocket + runHook postCheck + ''; + enableParallelChecking = false; meta = with stdenv.lib; { description = "Library for scalable cross-language services"; - homepage = http://thrift.apache.org/; + homepage = "http://thrift.apache.org/"; license = licenses.asl20; platforms = platforms.linux ++ platforms.darwin; maintainers = [ maintainers.bjornfor ]; diff --git a/pkgs/development/libraries/tiledb/default.nix b/pkgs/development/libraries/tiledb/default.nix index 605307e080e..395dd6952f6 100644 --- a/pkgs/development/libraries/tiledb/default.nix +++ b/pkgs/development/libraries/tiledb/default.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation rec { pname = "tiledb"; - version = "1.7.0"; + version = "1.7.2"; src = fetchFromGitHub { owner = "TileDB-Inc"; repo = "TileDB"; rev = version; - sha256 = "07wh9q72vsaf5j2m2c6cfmllwhr3m9f8xzg8h0i6mhd7d0wr4lna"; + sha256 = "00ykfc7p6n0nc97lvjnqjar95xyv8b2b77cjqczy03wh5i4gmifj"; }; nativeBuildInputs = [ diff --git a/pkgs/development/perl-modules/timedate-2020.patch b/pkgs/development/perl-modules/timedate-2020.patch new file mode 100644 index 00000000000..ea4d8307f03 --- /dev/null +++ b/pkgs/development/perl-modules/timedate-2020.patch @@ -0,0 +1,12 @@ +Index: TimeDate-2.30/t/getdate.t +=================================================================== +--- TimeDate-2.30.orig/t/getdate.t ++++ TimeDate-2.30/t/getdate.t +@@ -156,7 +156,7 @@ Jul 22 10:00:00 UTC 2002 ;102733200 + !; + + require Time::Local; +-my $offset = Time::Local::timegm(0,0,0,1,0,70); ++my $offset = Time::Local::timegm(0,0,0,1,0,1970); + + @data = split(/\n/, $data); diff --git a/pkgs/development/python-modules/mypy/default.nix b/pkgs/development/python-modules/mypy/default.nix index b2731f5bb62..90b00ba1717 100644 --- a/pkgs/development/python-modules/mypy/default.nix +++ b/pkgs/development/python-modules/mypy/default.nix @@ -5,12 +5,12 @@ buildPythonPackage rec { pname = "mypy"; - version = "0.750"; + version = "0.761"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "0k0l74g3jcq7ppzn234sffsaacn6qaq242famckk0cviwgld1jvf"; + sha256 = "1gw7h84d21wmi267kmgqs9whz0l7rp62pzja2f31wq7cfj6spfl5"; }; propagatedBuildInputs = [ typed-ast psutil mypy-extensions typing-extensions ]; diff --git a/pkgs/development/python-modules/numpy/default.nix b/pkgs/development/python-modules/numpy/default.nix index 61f85773949..bdd76696885 100644 --- a/pkgs/development/python-modules/numpy/default.nix +++ b/pkgs/development/python-modules/numpy/default.nix @@ -1,4 +1,15 @@ -{ lib, fetchPypi, python, buildPythonPackage, gfortran, pytest, blas, writeTextFile, isPyPy }: +{ lib +, fetchPypi +, python +, buildPythonPackage +, gfortran +, pytest +, blas +, writeTextFile +, isPyPy +, cython +, setuptoolsBuildHook + }: let blasImplementation = lib.nameFromURL blas.name "-"; @@ -16,15 +27,16 @@ let }; in buildPythonPackage rec { pname = "numpy"; - version = "1.17.4"; + version = "1.18.0"; + format = "pyproject.toml"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "f58913e9227400f1395c7b800503ebfdb0772f1c33ff8cb4d6451c06cabdf316"; + sha256 = "a9d72d9abaf65628f0f31bbb573b7d9304e43b1e6bbae43149c17737a42764c4"; }; - nativeBuildInputs = [ gfortran pytest ]; + nativeBuildInputs = [ gfortran pytest cython setuptoolsBuildHook ]; buildInputs = [ blas ]; patches = lib.optionals python.hasDistutilsCxxPatch [ diff --git a/pkgs/development/python-modules/pyopenssl/default.nix b/pkgs/development/python-modules/pyopenssl/default.nix index 4e643257a0c..8d5f6291c26 100644 --- a/pkgs/development/python-modules/pyopenssl/default.nix +++ b/pkgs/development/python-modules/pyopenssl/default.nix @@ -10,6 +10,7 @@ , flaky , glibcLocales , six +, fetchpatch }: with stdenv.lib; @@ -80,6 +81,27 @@ buildPythonPackage rec { runHook postCheck ''; + patches = [ + # 4 patches for 2020 bug + # https://github.com/pyca/pyopenssl/pull/828 + (fetchpatch { + url = https://github.com/pyca/pyopenssl/commit/0d2fd1a24b30077ead6960bd63b4a9893a57c101.patch; + sha256 = "1c27g53qrwxddyx04sxf8yvj7xgbaabla7mc1cgbfd426rncbqf3"; + }) + (fetchpatch { + url = https://github.com/pyca/pyopenssl/commit/d08a742573c3205348a4eec9a65abaf6c16110c4.patch; + sha256 = "18xn8s1wpycz575ivrbsbs0qd2q48z8pdzsjzh8i60xba3f8yj2f"; + }) + (fetchpatch { + url = https://github.com/pyca/pyopenssl/commit/60b9e10e6da7ccafaf722def630285f54510ed12.patch; + sha256 = "0aw8qvy8m0bhgp39lmbcrpprpg4bhpssm327hyrk476wwgajk01j"; + }) + (fetchpatch { + url = https://github.com/pyca/pyopenssl/commit/7a37cc23fcbe43abe785cd4badd14bdc7acfb175.patch; + sha256 = "1c7zb568rs71rsl16p6dq7aixwlkgzfnba4vzmfvbmy3zsnaslq2"; + }) + ]; + # Seems to fail unpredictably on Darwin. See http://hydra.nixos.org/build/49877419/nixlog/1 # for one example, but I've also seen ContextTests.test_set_verify_callback_exception fail. doCheck = !stdenv.isDarwin; diff --git a/pkgs/development/python-modules/tensorflow/cuda-10.2-no-bin2c-path.patch b/pkgs/development/python-modules/tensorflow/cuda-10.2-no-bin2c-path.patch new file mode 100644 index 00000000000..25f1ba7a551 --- /dev/null +++ b/pkgs/development/python-modules/tensorflow/cuda-10.2-no-bin2c-path.patch @@ -0,0 +1,10 @@ +--- a/third_party/nccl/build_defs.bzl.tpl ++++ b/third_party/nccl/build_defs.bzl.tpl +@@ -113,7 +113,6 @@ def _device_link_impl(ctx): + "--cmdline=--compile-only", + "--link", + "--compress-all", +- "--bin2c-path=%s" % bin2c.dirname, + "--create=%s" % tmp_fatbin.path, + "--embedded-fatbin=%s" % fatbin_h.path, + ] + images, diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/default.nix index 34282a5ec93..a9f3ebf9e48 100644 --- a/pkgs/development/python-modules/tensorflow/default.nix +++ b/pkgs/development/python-modules/tensorflow/default.nix @@ -124,6 +124,10 @@ let sha256 = "077cpj0kzyqxzdya1dwh8df17zfzhqn7c685hx6iskvw2979zg2n"; }) ./lift-gast-restriction.patch + + # cuda 10.2 does not have "-bin2c-path" option anymore + # https://github.com/tensorflow/tensorflow/issues/34429 + ./cuda-10.2-no-bin2c-path.patch ]; # On update, it can be useful to steal the changes from gentoo diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix index 009458d4176..985dd8dfd8c 100644 --- a/pkgs/development/tools/analysis/checkstyle/default.nix +++ b/pkgs/development/tools/analysis/checkstyle/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, makeWrapper, jre }: stdenv.mkDerivation rec { - version = "8.27"; + version = "8.28"; pname = "checkstyle"; src = fetchurl { url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar"; - sha256 = "1x3klaww0x5ql0jrqfmirni7jbph4hybmkslc268f6knsbs5lijl"; + sha256 = "014jsj6pbpf3y4c1vx606f82c7pic6q4lcsbl7wwqn67dr0g0v1m"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/tools/cmake-format/default.nix b/pkgs/development/tools/cmake-format/default.nix index 891a653a373..837e1484583 100644 --- a/pkgs/development/tools/cmake-format/default.nix +++ b/pkgs/development/tools/cmake-format/default.nix @@ -10,12 +10,12 @@ buildPythonApplication rec { pname = "cmake-format"; - version = "0.6.4"; + version = "0.6.5"; src = fetchPypi { inherit version; pname = "cmake_format"; - sha256 = "0n03vaa8b51c0lzdcy8ygivsg07d1n26576rfzwqzx4izy0rclj9"; + sha256 = "0fzfczf66df81szp488zwdz6phx6lcq6wkb0dzpzq6ni39r7kvw8"; }; propagatedBuildInputs = [ autopep8 flake8 jinja2 pylint pyyaml ]; diff --git a/pkgs/development/tools/misc/terracognita/default.nix b/pkgs/development/tools/misc/terracognita/default.nix index e18f32fb07c..26aa50f7f7a 100644 --- a/pkgs/development/tools/misc/terracognita/default.nix +++ b/pkgs/development/tools/misc/terracognita/default.nix @@ -2,16 +2,18 @@ buildGoModule rec { pname = "terracognita"; - version = "0.2.0"; + version = "0.3.0"; src = fetchFromGitHub { owner = "cycloidio"; repo = pname; rev = "v${version}"; - sha256 = "06qw3mycgqkj2f5n6lm9xb2c21xjim2qlwizxsdc5hjrwbasl2q0"; + sha256 = "1d5yi2jxmk04wcz8rjwa5kz9525j8s90d4rj2d4cbgd3lbbk45qq"; }; - modSha256 = "0sjs1dd8z8brxj5wwfrwimnlscy7i6flc4kq4576zwrcjg6pjvkr"; + modSha256 = "0xlhp8pa5g6an10m56g237pixc4h6ay89hkp1ijdz45iyfn9fk91"; + + subPackages = [ "." ]; buildFlagsArray = [ "-ldflags=-s -w -X github.com/cycloidio/terracognita/cmd.Version=${version}" ]; diff --git a/pkgs/development/tools/parsing/bison/3.x.nix b/pkgs/development/tools/parsing/bison/3.x.nix index 5382ec421b7..0253fa27dc0 100644 --- a/pkgs/development/tools/parsing/bison/3.x.nix +++ b/pkgs/development/tools/parsing/bison/3.x.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "bison"; - version = "3.4.2"; + version = "3.5"; src = fetchurl { url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz"; - sha256 = "1kzsb6fmmpq00l2s55hyb4dbsmz8f3a64ria6354wlbx6ypj4fgz"; + sha256 = "1l8k2fcklwy0y57yidxvk5lbf0kb96ci3zffg2djivk8k05j0dhb"; }; nativeBuildInputs = [ m4 perl ] ++ stdenv.lib.optional stdenv.isSunOS help2man; diff --git a/pkgs/development/tools/scry/default.nix b/pkgs/development/tools/scry/default.nix index 9a87f5f9369..7bd3fa38332 100644 --- a/pkgs/development/tools/scry/default.nix +++ b/pkgs/development/tools/scry/default.nix @@ -1,51 +1,23 @@ -{ stdenv, lib, fetchFromGitHub, crystal, shards, llvm, which }: +{ lib, fetchFromGitHub, crystal }: -stdenv.mkDerivation { +crystal.buildCrystalPackage rec { pname = "scry"; - version = "0.8.0"; + version = "0.8.1"; src = fetchFromGitHub { - owner = "crystal-lang-tools"; - repo = "scry"; - rev = "543c1c3f764298f9fff192ca884d10f72338607d"; - sha256 = "1yq7jap3y5pr2yqc6fn6bxshzwv7dz3w97incq7wpcvi7ibb4lcn"; + owner = "crystal-lang-tools"; + repo = pname; + rev = "v${version}"; + sha256 = "0ii4k9l3dgm1c9lllc8ni9dar59lrxik0v9iz7gk3d6v62wwnq79"; }; - patches = lib.optional (lib.versionAtLeast crystal.version "0.28") ./fix_for_crystal_0_28_and_above.patch; + shardsFile = ./shards.nix; + crystalBinaries.scry.src = "src/scry.cr"; - nativeBuildInputs = [ crystal shards llvm which ]; - - buildPhase = '' - runHook preBuild - - shards build --release - - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - - install -Dm755 -t $out/bin bin/scry - - runHook postInstall - ''; - - # https://github.com/crystal-lang-tools/scry/issues/138 - doCheck = false; - - checkPhase = '' - runHook preCheck - - crystal spec - - runHook postCheck - ''; - - meta = with stdenv.lib; { + meta = with lib; { description = "Code analysis server for the Crystal programming language"; - homepage = https://github.com/crystal-lang-tools/scry; + homepage = "https://github.com/crystal-lang-tools/scry"; license = licenses.mit; - maintainers = with maintainers; [ peterhoeg ]; + maintainers = with maintainers; [ peterhoeg filalex77 ]; }; } diff --git a/pkgs/development/tools/scry/shards.nix b/pkgs/development/tools/scry/shards.nix new file mode 100644 index 00000000000..31660ef7cd2 --- /dev/null +++ b/pkgs/development/tools/scry/shards.nix @@ -0,0 +1,8 @@ +{ + lsp = { + owner = "crystal-lang-tools"; + repo = "lsp"; + rev = "v0.1.0"; + sha256 = "1sgsdgm2dmkp92a2lbaf2pgf80gljdlqzp9xkqvwz0rr92la6810"; + }; +} diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix index a7d9057d9f0..4ef723c9a1f 100644 --- a/pkgs/development/tools/vagrant/default.nix +++ b/pkgs/development/tools/vagrant/default.nix @@ -25,6 +25,17 @@ let inherit version; }; } // lib.optionalAttrs withLibvirt (import ./gemset_libvirt.nix)); + + # This replaces the gem symlinks with directories, resolving this + # error when running vagrant (I have no idea why): + # /nix/store/p4hrycs0zaa9x0gsqylbk577ppnryixr-vagrant-2.2.6/lib/ruby/gems/2.6.0/gems/i18n-1.1.1/lib/i18n/config.rb:6:in `<module:I18n>': uninitialized constant I18n::Config (NameError) + postBuild = '' + for gem in "$out"/lib/ruby/gems/*/gems/*; do + cp -a "$gem/" "$gem.new" + rm "$gem" + mv "$gem.new" "$gem" + done + ''; }; in buildRubyGem rec { @@ -79,12 +90,7 @@ in buildRubyGem rec { ''; installCheckPhase = '' - if [[ "$("$out/bin/vagrant" --version)" == "Vagrant ${version}" ]]; then - echo 'Vagrant smoke check passed' - else - echo 'Vagrant smoke check failed' - return 1 - fi + HOME="$(mktemp -d)" $out/bin/vagrant init --output - > /dev/null ''; # `patchShebangsAuto` patches this one script which is intended to run diff --git a/pkgs/development/web/woff2/brotli-static.patch b/pkgs/development/web/woff2/brotli-static.patch new file mode 100644 index 00000000000..4ed6d7e741a --- /dev/null +++ b/pkgs/development/web/woff2/brotli-static.patch @@ -0,0 +1,36 @@ +diff a/cmake/FindBrotliDec.cmake b/cmake/FindBrotliDec.cmake +--- a/cmake/FindBrotliDec.cmake ++++ b/cmake/FindBrotliDec.cmake +@@ -18,10 +18,10 @@ find_path(BROTLIDEC_INCLUDE_DIRS + HINTS ${PC_BROTLIDEC_INCLUDEDIR} + ) + +-find_library(BROTLIDEC_LIBRARIES +- NAMES brotlidec +- HINTS ${PC_BROTLIDEC_LIBDIR} +-) ++if(NOT BUILD_SHARED_LIBS) ++ set(_S "STATIC_") ++endif() ++set(BROTLIDEC_LIBRARIES ${PC_BROTLIDEC_${_S}LIBRARIES}) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(BrotliDec +diff a/cmake/FindBrotliEnc.cmake b/cmake/FindBrotliEnc.cmake +--- a/cmake/FindBrotliEnc.cmake ++++ b/cmake/FindBrotliEnc.cmake +@@ -18,10 +18,10 @@ find_path(BROTLIENC_INCLUDE_DIRS + HINTS ${PC_BROTLIENC_INCLUDEDIR} + ) + +-find_library(BROTLIENC_LIBRARIES +- NAMES brotlienc +- HINTS ${PC_BROTLIENC_LIBDIR} +-) ++if(NOT BUILD_SHARED_LIBS) ++ set(_S "STATIC_") ++endif() ++set(BROTLIENC_LIBRARIES ${PC_BROTLIENC_${_S}LIBRARIES}) + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(BrotliEnc diff --git a/pkgs/development/web/woff2/default.nix b/pkgs/development/web/woff2/default.nix index b77184e5652..ff0484547fc 100644 --- a/pkgs/development/web/woff2/default.nix +++ b/pkgs/development/web/woff2/default.nix @@ -1,4 +1,4 @@ -{ brotli, cmake, fetchFromGitHub, stdenv }: +{ brotli, cmake, pkgconfig, fetchFromGitHub, stdenv, static ? false }: stdenv.mkDerivation rec { pname = "woff2"; @@ -13,18 +13,24 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" "lib" ]; - nativeBuildInputs = [ cmake ]; + # Need to explicitly link to brotlicommon + patches = stdenv.lib.optional static ./brotli-static.patch; + + nativeBuildInputs = [ cmake pkgconfig ]; + + cmakeFlags = [ "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}" ] + ++ stdenv.lib.optional static "-DCMAKE_SKIP_RPATH:BOOL=TRUE"; propagatedBuildInputs = [ brotli ]; - # without this binaries only get built if shared libs are disable - patchPhase = '' + postPatch = '' + # without this binaries only get built if shared libs are disable sed 's@^if (NOT BUILD_SHARED_LIBS)$@if (TRUE)@g' -i CMakeLists.txt ''; meta = with stdenv.lib; { description = "Webfont compression reference code"; - homepage = https://github.com/google/woff2; + homepage = "https://github.com/google/woff2"; license = licenses.mit; maintainers = [ maintainers.hrdinka ]; platforms = platforms.unix; diff --git a/pkgs/games/runelite/default.nix b/pkgs/games/runelite/default.nix index 77d1888b86e..9b6ca4f7c05 100644 --- a/pkgs/games/runelite/default.nix +++ b/pkgs/games/runelite/default.nix @@ -1,17 +1,17 @@ { stdenv, fetchurl, makeWrapper, jre, makeDesktopItem, lib }: - stdenv.mkDerivation rec { +stdenv.mkDerivation rec { pname = "runelite"; - version = "1.6.0"; + version = "2.0.0"; src = fetchurl { url = "https://github.com/runelite/launcher/releases/download/${version}/RuneLite.jar"; - sha256 = "0q2xx0wrnlg5mrv8nnmnh300r8mqfm8k2p028m7mr09kn18xvkzx"; + sha256 = "0q0x8g43ggkvp5fgnymgygx59xfhnyyrhpi6ha333gqg97rr0rvw"; }; icon = fetchurl { - url = "https://github.com/runelite/runelite/raw/master/runelite-client/src/main/resources/runelite.png"; - sha256 = "0fxzkpsin09giqp7h8z0plxznk5d5j60sv34v1lw61p7d5y2izvr"; + url = "https://github.com/runelite/launcher/raw/${version}/appimage/runelite.png"; + sha256 = "04fcjm7p546gr82g0jbh497j7rnh70lrvas0k171bff4v3knrjw1"; }; desktop = makeDesktopItem { @@ -43,11 +43,11 @@ --add-flags "-jar $out/share/runelite/RuneLite.jar" ''; - meta = { + meta = with lib; { description = "Open source Old School RuneScape client"; homepage = "https://runelite.net/"; - license = lib.licenses.bsd2; - maintainers = [ lib.maintainers.kmeakin ]; - platforms = lib.platforms.all; + license = licenses.bsd2; + maintainers = with maintainers; [ kmeakin ]; + platforms = platforms.all; }; - } +} diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix index cb6768a348b..16502002aba 100644 --- a/pkgs/os-specific/linux/kernel/linux-libre.nix +++ b/pkgs/os-specific/linux/kernel/linux-libre.nix @@ -1,7 +1,7 @@ { stdenv, lib, fetchsvn, linux , scripts ? fetchsvn { url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/"; - rev = "17165"; + rev = "17167"; sha256 = "0hyd7wp73w4555d42xcvk4x4nxrfckbzah2ckb4d2aqzxab87789"; } , ... diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 3462801c07c..214c9b75cea 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -36,10 +36,10 @@ in stdenv.mkDerivation { # When updating, use https://github.com/systemd/systemd-stable tree, not the development one! # Also fresh patches should be cherry-picked from that tree to our current one. src = fetchFromGitHub { - owner = "NixOS"; + owner = "nixos"; repo = "systemd"; - rev = "491a247eff9b7ce1e5877f5f3431517c95f3222f"; - sha256 = "1xqiahapg480m165glrwqbfmc1fxw5sacdlm933cwyi1q8x4537g"; + rev = "d8853d39a28b9884e0acd3ae5732a1e7caaf08af"; + sha256 = "1wqm51i2czbbb3nara11mnxzqng4na1l8fvz7qnbxcrjsqm7hz18"; }; outputs = [ "out" "lib" "man" "dev" ]; @@ -263,6 +263,6 @@ in stdenv.mkDerivation { license = licenses.lgpl21Plus; platforms = platforms.linux; priority = 10; - maintainers = with maintainers; [ eelco andir mic92 ]; + maintainers = with maintainers; [ andir eelco flokli mic92 ]; }; } diff --git a/pkgs/servers/nosql/neo4j/default.nix b/pkgs/servers/nosql/neo4j/default.nix index 2e06ff5d95e..98dd604c76d 100644 --- a/pkgs/servers/nosql/neo4j/default.nix +++ b/pkgs/servers/nosql/neo4j/default.nix @@ -4,11 +4,11 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "neo4j"; - version = "3.5.13"; + version = "3.5.14"; src = fetchurl { url = "https://neo4j.com/artifact.php?name=neo4j-community-${version}-unix.tar.gz"; - sha256 = "0l320314pqy1mbcrkf7xkifwz86s5xa5saq81yqr8a67df0jknrg"; + sha256 = "1zjb6cgk2lpzx6pq1cs5fh65in6b5ccpl1cgfiglgpjc948mnhzv"; }; buildInputs = [ makeWrapper jre8 which gawk ]; diff --git a/pkgs/tools/compression/zstd/default.nix b/pkgs/tools/compression/zstd/default.nix index a3aecf88c90..82a6a3a8a53 100644 --- a/pkgs/tools/compression/zstd/default.nix +++ b/pkgs/tools/compression/zstd/default.nix @@ -1,7 +1,8 @@ -{ stdenv, fetchFromGitHub, fetchpatch, gnugrep +{ stdenv, fetchFromGitHub, fetchpatch, cmake, gnugrep , fixDarwinDylibNames , file -, legacySupport ? false }: +, legacySupport ? false +, enableShared ? true }: stdenv.mkDerivation rec { pname = "zstd"; @@ -14,56 +15,46 @@ stdenv.mkDerivation rec { owner = "facebook"; }; + nativeBuildInputs = [ cmake ] + ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames; + patches = [ - # All 3 from https://github.com/facebook/zstd/pull/1883 + # From https://github.com/facebook/zstd/pull/1883 (fetchpatch { url = "https://github.com/facebook/zstd/commit/106278e7e5fafaea3b7deb4147bdc8071562d2f0.diff"; sha256 = "13z7id1qbc05cv1rmak7c8xrchp7jh1i623bq5pwcihg57wzcyr8"; }) - (fetchpatch { - url = "https://github.com/facebook/zstd/commit/0ede342acc2c26f87ae962fa88e158904d4198c4.diff"; - sha256 = "12l5xbvnzkvr76mvl1ls767paqfwbd9q1pzq44ckacfpz4f6iaap"; - excludes = [ - # I think line endings are causing problems, or something like that - "programs/windres/generate_res.bat" - ]; - }) - (fetchpatch { - url = "https://github.com/facebook/zstd/commit/10552eaffef84c011f67af0e04f0780b50a5ab26.diff"; - sha256 = "1s27ravar3rn7q8abybp9733jhpsfcaci51k04da94ahahvxwiqw"; - }) ] # This I didn't upstream because if you use posix threads with MinGW it will # work find, and I'm not sure how to write the condition. ++ stdenv.lib.optional stdenv.hostPlatform.isWindows ./mcfgthreads-no-pthread.patch; - nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames; - - makeFlags = [ - "ZSTD_LEGACY_SUPPORT=${if legacySupport then "1" else "0"}" - ] ++ stdenv.lib.optional stdenv.hostPlatform.isWindows "OS=Windows"; + cmakeFlags = [ + "-DZSTD_BUILD_SHARED:BOOL=${if enableShared then "ON" else "OFF"}" + "-DZSTD_LEGACY_SUPPORT:BOOL=${if legacySupport then "ON" else "OFF"}" + "-DZSTD_BUILD_TESTS:BOOL=ON" + ]; + cmakeDir = "../build/cmake"; + dontUseCmakeBuildDir = true; + preConfigure = '' + mkdir -p build_ && cd $_ + ''; checkInputs = [ file ]; doCheck = true; preCheck = '' - substituteInPlace tests/playTests.sh \ + substituteInPlace ../tests/playTests.sh \ --replace 'MD5SUM="md5 -r"' 'MD5SUM="md5sum"' ''; - installFlags = [ - "PREFIX=$(out)" - ]; - - preInstall = '' - substituteInPlace programs/zstdgrep \ + preInstall = stdenv.lib.optionalString enableShared '' + substituteInPlace ../programs/zstdgrep \ --replace ":-grep" ":-${gnugrep}/bin/grep" \ --replace ":-zstdcat" ":-$out/bin/zstdcat" - substituteInPlace programs/zstdless \ + substituteInPlace ../programs/zstdless \ --replace "zstdcat" "$out/bin/zstdcat" ''; - enableParallelBuilding = true; - meta = with stdenv.lib; { description = "Zstandard real-time compression algorithm"; longDescription = '' diff --git a/pkgs/tools/misc/chezmoi/default.nix b/pkgs/tools/misc/chezmoi/default.nix index 3eb3851457a..637f7a17695 100644 --- a/pkgs/tools/misc/chezmoi/default.nix +++ b/pkgs/tools/misc/chezmoi/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "chezmoi"; - version = "1.7.9"; + version = "1.7.10"; src = fetchFromGitHub { owner = "twpayne"; repo = "chezmoi"; rev = "v${version}"; - sha256 = "1qvrzksqr06lslryh7qzs56bs11xfyah5153x3aab2f5kgk1i8md"; + sha256 = "1miki6p611s0m3s0q5qsc9cks0akm59ks3x1gzi9wvhzf6k9h0dn"; }; modSha256 = "0rzwslpikadhqw8rcbg4hbasfcgjcc850ccfnprdxva4g1bb5rqc"; diff --git a/pkgs/tools/misc/entr/default.nix b/pkgs/tools/misc/entr/default.nix index 735580eee5d..247572a379f 100644 --- a/pkgs/tools/misc/entr/default.nix +++ b/pkgs/tools/misc/entr/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "entr"; - version = "4.3"; + version = "4.4"; src = fetchurl { url = "http://entrproject.org/code/${pname}-${version}.tar.gz"; - sha256 = "0ni34sfrssa6njiqm22q2kxv437r6vbs0a6mys8kwwn7vbdw30dh"; + sha256 = "1x2hyc8vc5dz6k7b3291vxz36wllhinvqrb0d8zx9bv0ydj6qmjl"; }; postPatch = '' diff --git a/pkgs/tools/misc/file/default.nix b/pkgs/tools/misc/file/default.nix index 9dd3970bbb2..24a7143d8e1 100644 --- a/pkgs/tools/misc/file/default.nix +++ b/pkgs/tools/misc/file/default.nix @@ -1,25 +1,17 @@ -{ stdenv, fetchurl, fetchpatch, file, zlib, libgnurx }: +{ stdenv, fetchurl, file, zlib, libgnurx }: stdenv.mkDerivation rec { pname = "file"; - version = "5.37"; + version = "5.38"; src = fetchurl { urls = [ "ftp://ftp.astron.com/pub/file/${pname}-${version}.tar.gz" "https://distfiles.macports.org/file/${pname}-${version}.tar.gz" ]; - sha256 = "0zz0p9bqnswfx0c16j8k62ivjq1m16x10xqv4hy9lcyxyxkkkhg9"; + sha256 = "0d7s376b4xqymnrsjxi3nsv3f5v89pzfspzml2pcajdk5by2yg2r"; }; - patches = [ - (fetchpatch { - name = "CVE-2019-18218.patch"; - url = "https://sources.debian.org/data/main/f/file/1:5.37-6/debian/patches/cherry-pick.FILE5_37-67-g46a8443f.limit-the-number-of-elements-in-a-vector-found-by-oss-fuzz.patch"; - sha256 = "1i22y91yndc3n2p2ngczp1lwil8l05sp8ciicil74xrc5f91y6mj"; - }) - ]; - nativeBuildInputs = stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) file; buildInputs = [ zlib ] ++ stdenv.lib.optional stdenv.hostPlatform.isWindows libgnurx; diff --git a/pkgs/tools/misc/man-db/default.nix b/pkgs/tools/misc/man-db/default.nix index 49e4ab44836..918e8372dcb 100644 --- a/pkgs/tools/misc/man-db/default.nix +++ b/pkgs/tools/misc/man-db/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, libpipeline, db, groff, libiconv, makeWrapper, buildPackages }: stdenv.mkDerivation rec { - name = "man-db-2.8.7"; + name = "man-db-2.9.0"; src = fetchurl { url = "mirror://savannah/man-db/${name}.tar.xz"; - sha256 = "09mkpvwirv9kh2pqhfq90zl7pjdl63f4w4g1x6zhhp9hjswmpkdr"; + sha256 = "0qg2sdn8mayya0ril484iz1r7hi46l68d2d80cr6lvc7x3csqjjx"; }; outputs = [ "out" "doc" ]; diff --git a/pkgs/tools/misc/neo-cowsay/default.nix b/pkgs/tools/misc/neo-cowsay/default.nix new file mode 100644 index 00000000000..128d582e32e --- /dev/null +++ b/pkgs/tools/misc/neo-cowsay/default.nix @@ -0,0 +1,24 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "neo-cowsay"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "Code-Hex"; + repo = "Neo-cowsay"; + rev = "v${version}"; + sha256 = "1in6kadczv05v62qhskqbdx7wppch0gwl0bshr5ihmi39k8l7v3z"; + }; + + modSha256 = "063ds35dzv8m4bjk7v1q3f6jwyp7j5jrkrhrl41z1c1mbzzkagkq"; + + subPackages = [ "cmd/cowsay" "cmd/cowthink" ]; + + meta = with lib; { + description = "Cowsay reborn, written in Go"; + homepage = "https://github.com/Code-Hex/Neo-cowsay"; + license = with licenses; [artistic1 /* or */ gpl3]; + maintainers = with maintainers; [ filalex77 ]; + }; +} diff --git a/pkgs/tools/networking/bandwhich/default.nix b/pkgs/tools/networking/bandwhich/default.nix index 21253745cb0..f1b9a87dd5a 100644 --- a/pkgs/tools/networking/bandwhich/default.nix +++ b/pkgs/tools/networking/bandwhich/default.nix @@ -2,13 +2,13 @@ rustPlatform.buildRustPackage rec { pname = "bandwhich"; - version = "0.6.0"; + version = "0.7.0"; src = fetchFromGitHub { owner = "imsnif"; repo = pname; rev = version; - sha256 = "0jjqc8sysvw63mwy68z9p16vc1pygrm1wxyll6piwvbbnirpys1y"; + sha256 = "1qrxxy6vhac1g6jzg30lqwcpjffyk2297jkd9j4rmwwf5cgip58a"; }; cargoSha256 = "1rixpljqddwhryddzni5l6m4sjyn1krrj0ig0rzc701am7srhg3a"; diff --git a/pkgs/tools/networking/eternal-terminal/default.nix b/pkgs/tools/networking/eternal-terminal/default.nix index 3382616bfb6..8dd18df28c7 100644 --- a/pkgs/tools/networking/eternal-terminal/default.nix +++ b/pkgs/tools/networking/eternal-terminal/default.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "eternal-terminal"; - version = "6.0.4"; + version = "6.0.5"; src = fetchFromGitHub { owner = "MisterTea"; repo = "EternalTerminal"; rev = "et-v${version}"; - sha256 = "05hbcbbxpvwm17ascnrwrz413kp3i94kp4px3vqx0f635rm41dqc"; + sha256 = "04jn0189vq5lc795izkxq1zdv9fnpxz2xchg2mm37armpz7n06id"; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/tools/networking/findomain/default.nix b/pkgs/tools/networking/findomain/default.nix new file mode 100644 index 00000000000..abc34abd77f --- /dev/null +++ b/pkgs/tools/networking/findomain/default.nix @@ -0,0 +1,37 @@ +{ stdenv +, lib +, fetchFromGitHub +, rustPlatform +, installShellFiles +, perl +, Security +}: + +rustPlatform.buildRustPackage rec { + pname = "findomain"; + version = "0.9.3"; + + src = fetchFromGitHub { + owner = "Edu4rdSHL"; + repo = pname; + rev = version; + sha256 = "1p7bj8q3zwn92nn6d71bk7cczclcsjvan6m8znlzr4lrwircp1y1"; + }; + + cargoSha256 = "1grb0frc1kp3z6vs2906h9v1yx9qxn6x0gf9jy1msqgnqjw0bgn9"; + + nativeBuildInputs = [ installShellFiles perl ]; + buildInputs = lib.optional stdenv.isDarwin Security; + + postInstall = '' + installManPage ${pname}.1 + ''; + + meta = with lib; { + description = "The fastest and cross-platform subdomain enumerator"; + homepage = "https://github.com/Edu4rdSHL/findomain"; + license = licenses.gpl3; + maintainers = with maintainers; [ filalex77 ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/tools/networking/frp/default.nix b/pkgs/tools/networking/frp/default.nix index 87932cd02bd..46ccfc0d24c 100644 --- a/pkgs/tools/networking/frp/default.nix +++ b/pkgs/tools/networking/frp/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "frp"; - version = "0.30.0"; + version = "0.31.1"; src = fetchFromGitHub { owner = "fatedier"; repo = pname; rev = "v${version}"; - sha256 = "15q2lfwqyicgllhh5fn3a8g3iw9m42cd0izb99a24hn57pd9cr0n"; + sha256 = "1cf2f0nbcg76i4mv8l3d38c13lw0mma6d2xzwkb9iqn7jflj1j9y"; }; modSha256 = "1zbl0gfc99pbzdacxhfa1k3y6i7v13sb441wpbp9aygxhvwqrms9"; diff --git a/pkgs/tools/system/ctop/default.nix b/pkgs/tools/system/ctop/default.nix index 8d8b710750c..4f492def162 100644 --- a/pkgs/tools/system/ctop/default.nix +++ b/pkgs/tools/system/ctop/default.nix @@ -2,22 +2,18 @@ buildGoModule rec { pname = "ctop"; - version = "0.7.2"; + version = "0.7.3"; src = fetchFromGitHub { owner = "bcicen"; repo = pname; rev = "v${version}"; - sha256 = "0mm6hl5qklfv0yffj6cgypsgcrk4fq6p60djycfgj20yhz9cmf9x"; + sha256 = "0y72l65xgfqrgghzbm1zcy776l5m31z0gn6vfr689zyi3k3f4kh8"; }; - patches = [ - # Version 0.7.2 does not build with go 1.13. - # TODO: Remove once(and if) https://github.com/bcicen/ctop/pull/178 is merged and lands in a release. - ./go-1.13-deps.patch - ]; + modSha256 = "0wxv6yzlgki7047qszx9p9xpph95bg097jkgaa0b3wbpx8vg7qml"; - modSha256 = "0ad1gvamckg94r7f68cnjdbq9nyz6c3hh339hy4hghxd3rd1qskn"; + buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version} -X main.build=v${version}" ]; meta = with lib; { description = "Top-like interface for container metrics"; diff --git a/pkgs/tools/system/ctop/go-1.13-deps.patch b/pkgs/tools/system/ctop/go-1.13-deps.patch deleted file mode 100644 index 153c0f36f81..00000000000 --- a/pkgs/tools/system/ctop/go-1.13-deps.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff --git a/go.mod b/go.mod -index 4921cba..cbb4028 100644 ---- a/go.mod -+++ b/go.mod -@@ -18,9 +18,6 @@ require ( - github.com/golang/protobuf v0.0.0-20170712042213-0a4f71a498b7 // indirect - github.com/hashicorp/go-cleanhttp v0.0.0-20170211013415-3573b8b52aa7 // indirect - github.com/jgautheron/codename-generator v0.0.0-20150829203204-16d037c7cc3c -- github.com/kr/pretty v0.1.0 // indirect -- github.com/maruel/panicparse v0.0.0-20170227222818-25bcac0d793c // indirect -- github.com/maruel/ut v1.0.0 // indirect - github.com/mattn/go-runewidth v0.0.0-20170201023540-14207d285c6c // indirect - github.com/mitchellh/go-wordwrap v0.0.0-20150314170334-ad45545899c7 // indirect - github.com/nsf/termbox-go v0.0.0-20180303152453-e2050e41c884 -@@ -39,3 +36,5 @@ require ( - ) - - replace github.com/gizak/termui => github.com/bcicen/termui v0.0.0-20180326052246-4eb80249d3f5 -+ -+go 1.13 -diff --git a/go.sum b/go.sum -new file mode 100644 -index 0000000..5ca7d55 ---- /dev/null -+++ b/go.sum -@@ -0,0 +1,64 @@ -+github.com/Azure/go-ansiterm v0.0.0-20160622173216-fa152c58bc15 h1:VtP6TygBMvrR+SMMPHj3z3jvnj4vcafMRLIw4at7xww= -+github.com/Azure/go-ansiterm v0.0.0-20160622173216-fa152c58bc15/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= -+github.com/BurntSushi/toml v0.3.0 h1:e1/Ivsx3Z0FVTV0NSOv/aVgbUWyQuzj7DDnFblkRvsY= -+github.com/BurntSushi/toml v0.3.0/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -+github.com/Microsoft/go-winio v0.3.8 h1:dvxbxtpTIjdAbx2OtL26p4eq0iEvys/U5yrsTJb3NZI= -+github.com/Microsoft/go-winio v0.3.8/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA= -+github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw= -+github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk= -+github.com/Sirupsen/logrus v0.0.0-20150423025312-26709e271410 h1:RxP6uUzJlS1Qa3+HYls3u+nQMKlnqC3RhL7wWC4Y4+E= -+github.com/Sirupsen/logrus v0.0.0-20150423025312-26709e271410/go.mod h1:rmk17hk6i8ZSAJkSDa7nOxamrG+SP4P0mm+DAvExv4U= -+github.com/bcicen/termui v0.0.0-20180326052246-4eb80249d3f5 h1:2pI3ZsoefWIi++8EqmANoC7Px/v2lRwnleVUcCuFgLg= -+github.com/bcicen/termui v0.0.0-20180326052246-4eb80249d3f5/go.mod h1:yIA9ITWZD1p4/DvCQ44xvhyVb9XEUlVnY1rzGSHwbiM= -+github.com/c9s/goprocinfo v0.0.0-20170609001544-b34328d6e0cd h1:xqaBnULC8wEnQpRDXAsDgXkU/STqoluz1REOoegSfNU= -+github.com/c9s/goprocinfo v0.0.0-20170609001544-b34328d6e0cd/go.mod h1:uEyr4WpAH4hio6LFriaPkL938XnrvLpNPmQHBdrmbIE= -+github.com/coreos/go-systemd v0.0.0-20151104194251-b4a58d95188d h1:MJ4ge3i0lehw+gE3JcGUUp8TmWjsLAlQlhmdASs/9wk= -+github.com/coreos/go-systemd v0.0.0-20151104194251-b4a58d95188d/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -+github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -+github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -+github.com/docker/docker v0.0.0-20170502054910-90d35abf7b35 h1:ly3dRUfvdP5i/t9iqVHd2VQQIDtO3tpfFWPah7g4CFw= -+github.com/docker/docker v0.0.0-20170502054910-90d35abf7b35/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -+github.com/docker/go-connections v0.0.0-20170301234100-a2afab980204 h1:JYhQLEn7v7EtrpA9ByRz51gwlk8qt12EGP9XlbX/qw4= -+github.com/docker/go-connections v0.0.0-20170301234100-a2afab980204/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= -+github.com/docker/go-units v0.3.2 h1:Kjm80apys7gTtfVmCvVY8gwu10uofaFSrmAKOVrtueE= -+github.com/docker/go-units v0.3.2/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= -+github.com/fsouza/go-dockerclient v0.0.0-20170307141636-318513eb1ab2 h1:JuVaWSoRMBrstn2l8cxKXjK8l/qurk5qyJ9dq7EIQmU= -+github.com/fsouza/go-dockerclient v0.0.0-20170307141636-318513eb1ab2/go.mod h1:KpcjM623fQYE9MZiTGzKhjfxXAV9wbyX2C1cyRHfhl0= -+github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55 h1:oIgNYSrSUbNH5DJh6DMhU1PiOKOYIHNxrV3djLsLpEI= -+github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= -+github.com/golang/protobuf v0.0.0-20170712042213-0a4f71a498b7 h1:ulJ2cj/xlDlrwLCvWH4UeV9vJ/jXP6wEGgTSF7EOnmQ= -+github.com/golang/protobuf v0.0.0-20170712042213-0a4f71a498b7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -+github.com/hashicorp/go-cleanhttp v0.0.0-20170211013415-3573b8b52aa7 h1:67fHcS+inUoiIqWCKIqeDuq2AlPHNHPiTqp97LdQ+bc= -+github.com/hashicorp/go-cleanhttp v0.0.0-20170211013415-3573b8b52aa7/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= -+github.com/jgautheron/codename-generator v0.0.0-20150829203204-16d037c7cc3c h1:/hc+TxW4Q1v6aqNPHE5jiaNF2xEK0CzWTgo25RQhQ+U= -+github.com/jgautheron/codename-generator v0.0.0-20150829203204-16d037c7cc3c/go.mod h1:FJRkXmPrkHw0WDjB/LXMUhjWJ112Y6JUYnIVBOy8oH8= -+github.com/mattn/go-runewidth v0.0.0-20170201023540-14207d285c6c h1:eFzthqtg3W6Pihj3DMTXLAF4f+ge5r5Ie5g6HLIZAF0= -+github.com/mattn/go-runewidth v0.0.0-20170201023540-14207d285c6c/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= -+github.com/mitchellh/go-wordwrap v0.0.0-20150314170334-ad45545899c7 h1:DpOJ2HYzCv8LZP15IdmG+YdwD2luVPHITV96TkirNBM= -+github.com/mitchellh/go-wordwrap v0.0.0-20150314170334-ad45545899c7/go.mod h1:ZXFpozHsX6DPmq2I0TCekCxypsnAUbP2oI0UX1GXzOo= -+github.com/nsf/termbox-go v0.0.0-20180303152453-e2050e41c884 h1:fcs71SMqqDhUD+PbpIv9xf3EH9F9s6HfiLwr6jKm1VA= -+github.com/nsf/termbox-go v0.0.0-20180303152453-e2050e41c884/go.mod h1:IuKpRQcYE1Tfu+oAQqaLisqDeXgjyyltCfsaoYN18NQ= -+github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d h1:VhgPp6v9qf9Agr/56bj7Y/xa04UccTW04VP0Qed4vnQ= -+github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d/go.mod h1:YUTz3bUH2ZwIWBy3CJBeOBEugqcmXREj14T+iG/4k4U= -+github.com/op/go-logging v0.0.0-20160211212156-b2cb9fa56473 h1:J1QZwDXgZ4dJD2s19iqR9+U00OWM2kDzbf1O/fmvCWg= -+github.com/op/go-logging v0.0.0-20160211212156-b2cb9fa56473/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk= -+github.com/opencontainers/runc v0.1.1 h1:GlxAyO6x8rfZYN9Tt0Kti5a/cP41iuiO2yYT0IJGY8Y= -+github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= -+github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -+github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -+github.com/seccomp/libseccomp-golang v0.0.0-20150813023252-1b506fc7c24e h1:HJbgNpzYMeTLPpkMwbPNTPlhNd9r4xQtqcZG6qoIGgs= -+github.com/seccomp/libseccomp-golang v0.0.0-20150813023252-1b506fc7c24e/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo= -+github.com/stretchr/testify v1.2.2 h1:bSDNvY7ZPG5RlJ8otE/7V6gMiyenm9RtJ7IUVIAoJ1w= -+github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -+github.com/syndtr/gocapability v0.0.0-20150716010906-2c00daeb6c3b h1:UzwAjzrPQVJoxLfb26YI2WRrhD3g09ZHt9vAQckWiPY= -+github.com/syndtr/gocapability v0.0.0-20150716010906-2c00daeb6c3b/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= -+github.com/vishvananda/netlink v0.0.0-20150820014904-1e2e08e8a2dc h1:0HAHLwEY4k1VqaO1SzBi4XxT0KA06Cv+QW2LXknBk9g= -+github.com/vishvananda/netlink v0.0.0-20150820014904-1e2e08e8a2dc/go.mod h1:+SR5DhBJrl6ZM7CoCKvpw5BKroDKQ+PJqOg65H/2ktk= -+github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc h1:R83G5ikgLMxrBvLh22JhdfI8K6YXEPHx5P03Uu3DRs4= -+github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI= -+golang.org/x/net v0.0.0-20170308210134-a6577fac2d73 h1:5kGFsglTK4KqaHYb/WCmYmj+Gm1+dzbilbtzruHj6dw= -+golang.org/x/net v0.0.0-20170308210134-a6577fac2d73/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -+golang.org/x/sync v0.0.0-20181108010431-42b317875d0f h1:Bl/8QSvNqXvPGPGXa2z5xUTmV7VDcZyvRZ+QQXkXTZQ= -+golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -+golang.org/x/sys v0.0.0-20170308153327-99f16d856c98 h1:U3NsAsR1IG0Aet3Z+IToBDWbPoJ7hjwgDpqqch4APkU= -+golang.org/x/sys v0.0.0-20170308153327-99f16d856c98/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= diff --git a/pkgs/tools/system/di/default.nix b/pkgs/tools/system/di/default.nix index 6aaa0eeddfe..3aef366ea06 100644 --- a/pkgs/tools/system/di/default.nix +++ b/pkgs/tools/system/di/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "di"; - version = "4.47.2"; + version = "4.47.3"; src = fetchurl { url = "https://gentoo.com/${pname}/${pname}-${version}.tar.gz"; - sha256 = "1g97pp2hznskqlkhl6ppyzgdmv878bcqiwh633kdnm70d1pvh192"; + sha256 = "0m4npba50sf5s61g5z3xd2r7937zwja941f2h3f081xi24c2hfck"; }; makeFlags = [ "INSTALL_DIR=$(out)" ]; diff --git a/pkgs/tools/video/bento4/default.nix b/pkgs/tools/video/bento4/default.nix index 5594143bfbc..4dea8dba6ed 100644 --- a/pkgs/tools/video/bento4/default.nix +++ b/pkgs/tools/video/bento4/default.nix @@ -3,13 +3,13 @@ }: stdenv.mkDerivation rec { pname = "bento4"; - version = "1.5.1-628"; + version = "1.5.1-629"; src = fetchFromGitHub { owner = "axiomatic-systems"; repo = "Bento4"; rev = "v${version}"; - sha256 = "1fv0k7f3ifwa0c0x22wblm6i8x9zbc13pg047a9i74n456p0mzp3"; + sha256 = "1614idy0r7qrkiaq4kz3gh1b1bpx592aqvi574kxnjrxc34kpmb3"; }; patches = [ ./libap4.patch ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 07b82aed4c4..d64fd48197b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3244,6 +3244,10 @@ in filet = callPackage ../applications/misc/filet { }; + findomain = callPackage ../tools/networking/findomain { + inherit (darwin.apple_sdk.frameworks) Security; + }; + findutils = callPackage ../tools/misc/findutils { }; finger_bsd = callPackage ../tools/networking/bsd-finger { }; @@ -5127,6 +5131,8 @@ in nemiver = callPackage ../development/tools/nemiver { }; + neo-cowsay = callPackage ../tools/misc/neo-cowsay { }; + neofetch = callPackage ../tools/misc/neofetch { }; nerdfonts = callPackage ../data/fonts/nerdfonts { }; @@ -6140,7 +6146,9 @@ in rubocop = callPackage ../development/tools/rubocop { }; - runelite = callPackage ../games/runelite { }; + runelite = callPackage ../games/runelite { + jre = openjdk11; + }; runningx = callPackage ../tools/X11/runningx { }; diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 94ef3224998..db9c412877f 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -19541,6 +19541,8 @@ let url = mirror://cpan/authors/id/G/GB/GBARR/TimeDate-2.30.tar.gz; sha256 = "11lf54akr9nbivqkjrhvkmfdgkbhw85sq0q4mak56n6bf542bgbm"; }; + # https://rt.cpan.org/Public/Bug/Display.html?id=124509 + patches = [ ../development/perl-modules/timedate-2020.patch ]; }; TimeDuration = buildPerlPackage { diff --git a/pkgs/top-level/static.nix b/pkgs/top-level/static.nix index 7736a265b94..40673426136 100644 --- a/pkgs/top-level/static.nix +++ b/pkgs/top-level/static.nix @@ -143,6 +143,9 @@ in { static = true; shared = false; }; + fmt = super.fmt.override { + enableShared = false; + }; gifsicle = super.gifsicle.override { static = true; }; @@ -152,7 +155,10 @@ in { optipng = super.optipng.override { static = true; }; - openblas = super.openblas.override { enableStatic = true; }; + openblas = super.openblas.override { + enableStatic = true; + enableShared = false; + }; mkl = super.mkl.override { enableStatic = true; }; nix = super.nix.override { withAWS = false; }; # openssl 1.1 doesn't compile @@ -163,6 +169,10 @@ in { # --disable-shared flag stdenv = super.stdenv; }; + arrow-cpp = super.arrow-cpp.override { + enableShared = false; + python = { pkgs = { python = null; numpy = null; }; }; + }; boost = super.boost.override { enableStatic = true; enableShared = false; @@ -171,9 +181,25 @@ in { # --disable-shared flag stdenv = super.stdenv; }; + thrift = super.thrift.override { + static = true; + twisted = null; + }; + double-conversion = super.double-conversion.override { + static = true; + }; gmp = super.gmp.override { withStatic = true; }; + gflags = super.gflags.override { + enableShared = false; + }; + glog = super.glog.override { + static = true; + }; + gtest = super.gtest.override { + static = true; + }; cdo = super.cdo.override { enable_all_static = true; }; @@ -192,6 +218,12 @@ in { # it doesn’t like the --disable-shared flag stdenv = super.stdenv; }; + woff2 = super.woff2.override { + static = true; + }; + snappy = super.snappy.override { + static = true; + }; lz4 = super.lz4.override { enableShared = false; enableStatic = true; @@ -224,6 +256,10 @@ in { staticOnly = true; }; + zstd = super.zstd.override { + enableShared = false; + }; + llvmPackages_8 = super.llvmPackages_8 // { libraries = super.llvmPackages_8.libraries // rec { libcxxabi = super.llvmPackages_8.libraries.libcxxabi.override { |