diff options
114 files changed, 3015 insertions, 1142 deletions
diff --git a/doc/languages-frameworks/android.section.md b/doc/languages-frameworks/android.section.md index 9a5df2523a25..d76b590ede30 100644 --- a/doc/languages-frameworks/android.section.md +++ b/doc/languages-frameworks/android.section.md @@ -235,5 +235,5 @@ package manager uses. To update the expressions run the `generate.sh` script that is stored in the `pkgs/development/mobile/androidenv/` sub directory: ```bash -sh ./generate.sh +./generate.sh ``` diff --git a/lib/modules.nix b/lib/modules.nix index 6cbef5632bd7..518f4047cc60 100644 --- a/lib/modules.nix +++ b/lib/modules.nix @@ -93,7 +93,11 @@ rec { res set._definedNames else res; - result = { inherit options config; }; + result = { + inherit options; + config = removeAttrs config [ "_module" ]; + inherit (config) _module; + }; in result; # collectModules :: (modulesPath: String) -> (modules: [ Module ]) -> (args: Attrs) -> [ Module ] @@ -295,7 +299,9 @@ rec { in throw "The option `${showOption loc}' in `${firstOption._file}' is a prefix of options in `${firstNonOption._file}'." else - mergeModules' loc decls defns + if all (def: isAttrs def.value) defns' then mergeModules' loc decls defns + else let firstInvalid = findFirst (def: ! isAttrs def.value) null defns'; + in throw "The option path `${showOption loc}' is an attribute set of options, but it is defined to not be an attribute set in `${firstInvalid.file}'. Did you define its value at the correct and complete path?" )) // { _definedNames = map (m: { inherit (m) file; names = attrNames m.config; }) configs; }; @@ -410,10 +416,9 @@ rec { # Type-check the remaining definitions, and merge them. Or throw if no definitions. mergedValue = if isDefined then - foldl' (res: def: - if type.check def.value then res - else throw "The option value `${showOption loc}' in `${def.file}' is not of type `${type.description}'." - ) (type.merge loc defsFinal) defsFinal + if all (def: type.check def.value) defsFinal then type.merge loc defsFinal + else let firstInvalid = findFirst (def: ! type.check def.value) null defsFinal; + in throw "The option value `${showOption loc}' in `${firstInvalid.file}' is not of type `${type.description}'." else # (nixos-option detects this specific error message and gives it special # handling. If changed here, please change it there too.) diff --git a/lib/tests/modules.sh b/lib/tests/modules.sh index 8cd632a439cd..1b3d01646d84 100755 --- a/lib/tests/modules.sh +++ b/lib/tests/modules.sh @@ -185,6 +185,11 @@ checkConfigError 'The option .* defined in .* does not exist' config.enable ./di # Check that imports can depend on derivations checkConfigOutput "true" config.enable ./import-from-store.nix +# Check that configs can be conditional on option existence +checkConfigOutput true config.enable ./define-option-dependently.nix ./declare-enable.nix ./declare-int-positive-value.nix +checkConfigOutput 360 config.value ./define-option-dependently.nix ./declare-enable.nix ./declare-int-positive-value.nix +checkConfigOutput 7 config.value ./define-option-dependently.nix ./declare-int-positive-value.nix + # Check attrsOf and lazyAttrsOf. Only lazyAttrsOf should be lazy, and only # attrsOf should work with conditional definitions # In addition, lazyAttrsOf should honor an options emptyValue @@ -194,6 +199,14 @@ checkConfigOutput "true" config.conditionalWorks ./declare-attrsOf.nix ./attrsOf checkConfigOutput "false" config.conditionalWorks ./declare-lazyAttrsOf.nix ./attrsOf-conditional-check.nix checkConfigOutput "empty" config.value.foo ./declare-lazyAttrsOf.nix ./attrsOf-conditional-check.nix +# Check error for when an option set is defined to be a non-attribute set value +checkConfigError 'The option path .* is an attribute set of options, but it is defined to not be an attribute set in' \ + config.value ./declare-option-set.nix ./define-value-int-zero.nix + +# Even with multiple assignments, a type error should be thrown if any of them aren't valid +checkConfigError 'The option value .* in .* is not of type .*' \ + config.value ./declare-int-unsigned-value.nix ./define-value-list.nix ./define-value-int-positive.nix + cat <<EOF ====== module tests ====== $pass Pass diff --git a/lib/tests/modules/declare-option-set.nix b/lib/tests/modules/declare-option-set.nix new file mode 100644 index 000000000000..fddc650ffa90 --- /dev/null +++ b/lib/tests/modules/declare-option-set.nix @@ -0,0 +1,3 @@ +{ + options.value = {}; +} diff --git a/lib/tests/modules/define-option-dependently.nix b/lib/tests/modules/define-option-dependently.nix new file mode 100644 index 000000000000..6abce29366ae --- /dev/null +++ b/lib/tests/modules/define-option-dependently.nix @@ -0,0 +1,16 @@ +{ lib, options, ... }: + +# Some modules may be distributed separately and need to adapt to other modules +# that are distributed and versioned separately. +{ + + # Always defined, but the value depends on the presence of an option. + config = { + value = if options ? enable then 360 else 7; + } + # Only define if possible. + // lib.optionalAttrs (options ? enable) { + enable = true; + }; + +} diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index a38dccb27e1b..336ee7a88306 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -711,6 +711,12 @@ githubId = 55833; name = "Troels Henriksen"; }; + atkinschang = { + email = "atkinschang+nixpkgs@gmail.com"; + github = "AtkinsChang"; + githubId = 5193600; + name = "Atkins Chang"; + }; atnnn = { email = "etienne@atnnn.com"; github = "atnnn"; @@ -4613,6 +4619,12 @@ githubId = 1269099; name = "Marius Bakke"; }; + mbaillie = { + email = "martin@baillie.email"; + github = "martinbaillie"; + githubId = 613740; + name = "Martin Baillie"; + }; mbbx6spp = { email = "me@susanpotter.net"; github = "mbbx6spp"; diff --git a/nixos/doc/manual/release-notes/rl-2003.xml b/nixos/doc/manual/release-notes/rl-2003.xml index 20f232c9110e..0996791944f0 100644 --- a/nixos/doc/manual/release-notes/rl-2003.xml +++ b/nixos/doc/manual/release-notes/rl-2003.xml @@ -235,7 +235,7 @@ services.xserver.displayManager.defaultSession = "xfce+icewm"; <listitem> <para> The <literal>buildRustCrate</literal> infrastructure now produces <literal>lib</literal> outputs in addition to the <literal>out</literal> output. - This has led to drastically reduced closed sizes for some rust crates since development dependencies are now in the <literal>lib</literal> output. + This has led to drastically reduced closure sizes for some rust crates since development dependencies are now in the <literal>lib</literal> output. </para> </listitem> <listitem> @@ -641,6 +641,13 @@ auth required pam_succeed_if.so uid >= 1000 quiet The previous behavior can be restored by setting <literal>config.riot-web.conf = { disable_guests = false; piwik = true; }</literal>. </para> </listitem> + <listitem> + <para> + Stand-alone usage of <literal>Upower</literal> now requires + <option>services.upower.enable</option> instead of just installing into + <xref linkend="opt-environment.systemPackages"/>. + </para> + </listitem> </itemizedlist> </section> diff --git a/nixos/doc/manual/release-notes/rl-2009.xml b/nixos/doc/manual/release-notes/rl-2009.xml index 72474e5dbd4a..2f61ee5ae2ed 100644 --- a/nixos/doc/manual/release-notes/rl-2009.xml +++ b/nixos/doc/manual/release-notes/rl-2009.xml @@ -86,6 +86,16 @@ }</programlisting> </para> </listitem> + <listitem> + <para> + The <link linkend="opt-services.supybot.enable">supybot</link> module now uses <literal>/var/lib/supybot</literal> + as its default <link linkend="opt-services.supybot.stateDir">stateDir</link> path if <literal>stateVersion</literal> + is 20.09 or higher. It also enables number of + <link xlink:href="https://www.freedesktop.org/software/systemd/man/systemd.exec.html#Sandboxing">systemd sandboxing options</link> + which may possibly interfere with some plugins. If this is the case you can disable the options through attributes in + <option>systemd.services.supybot.serviceConfig</option>. + </para> + </listitem> </itemizedlist> </section> diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 8c6e8766cd9c..1ff5f5ff0c25 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -728,6 +728,7 @@ ./services/networking/syncthing.nix ./services/networking/syncthing-relay.nix ./services/networking/syncplay.nix + ./services/networking/tailscale.nix ./services/networking/tcpcrypt.nix ./services/networking/teamspeak3.nix ./services/networking/tedicross.nix diff --git a/nixos/modules/services/networking/firewall.nix b/nixos/modules/services/networking/firewall.nix index b0045ff795e3..cdc3a172ea70 100644 --- a/nixos/modules/services/networking/firewall.nix +++ b/nixos/modules/services/networking/firewall.nix @@ -546,9 +546,13 @@ in options nf_conntrack nf_conntrack_helper=1 ''; - assertions = [ { assertion = cfg.checkReversePath -> kernelHasRPFilter; - message = "This kernel does not support rpfilter"; } - ]; + assertions = [ + # This is approximately "checkReversePath -> kernelHasRPFilter", + # but the checkReversePath option can include non-boolean + # values. + { assertion = cfg.checkReversePath == false || kernelHasRPFilter; + message = "This kernel does not support rpfilter"; } + ]; systemd.services.firewall = { description = "Firewall"; diff --git a/nixos/modules/services/networking/iodine.nix b/nixos/modules/services/networking/iodine.nix index f9ca26c27960..46051d7044b5 100644 --- a/nixos/modules/services/networking/iodine.nix +++ b/nixos/modules/services/networking/iodine.nix @@ -9,6 +9,8 @@ let iodinedUser = "iodined"; + /* is this path made unreadable by ProtectHome = true ? */ + isProtected = x: hasPrefix "/root" x || hasPrefix "/home" x; in { imports = [ @@ -35,45 +37,48 @@ in corresponding attribute name. ''; example = literalExample '' - { - foo = { - server = "tunnel.mdomain.com"; - relay = "8.8.8.8"; - extraConfig = "-v"; + { + foo = { + server = "tunnel.mdomain.com"; + relay = "8.8.8.8"; + extraConfig = "-v"; + } } - } ''; - type = types.attrsOf (types.submodule ( - { - options = { - server = mkOption { - type = types.str; - default = ""; - description = "Domain or Subdomain of server running iodined"; - example = "tunnel.mydomain.com"; - }; - - relay = mkOption { - type = types.str; - default = ""; - description = "DNS server to use as a intermediate relay to the iodined server"; - example = "8.8.8.8"; - }; - - extraConfig = mkOption { - type = types.str; - default = ""; - description = "Additional command line parameters"; - example = "-l 192.168.1.10 -p 23"; - }; - - passwordFile = mkOption { - type = types.str; - default = ""; - description = "File that contains password"; - }; - }; - })); + type = types.attrsOf ( + types.submodule ( + { + options = { + server = mkOption { + type = types.str; + default = ""; + description = "Hostname of server running iodined"; + example = "tunnel.mydomain.com"; + }; + + relay = mkOption { + type = types.str; + default = ""; + description = "DNS server to use as an intermediate relay to the iodined server"; + example = "8.8.8.8"; + }; + + extraConfig = mkOption { + type = types.str; + default = ""; + description = "Additional command line parameters"; + example = "-l 192.168.1.10 -p 23"; + }; + + passwordFile = mkOption { + type = types.str; + default = ""; + description = "Path to a file containing the password."; + }; + }; + } + ) + ); }; server = { @@ -121,31 +126,67 @@ in boot.kernelModules = [ "tun" ]; systemd.services = - let - createIodineClientService = name: cfg: - { - description = "iodine client - ${name}"; - after = [ "network.target" ]; - wantedBy = [ "multi-user.target" ]; - script = "exec ${pkgs.iodine}/bin/iodine -f -u ${iodinedUser} ${cfg.extraConfig} ${optionalString (cfg.passwordFile != "") "< \"${cfg.passwordFile}\""} ${cfg.relay} ${cfg.server}"; - serviceConfig = { - RestartSec = "30s"; - Restart = "always"; + let + createIodineClientService = name: cfg: + { + description = "iodine client - ${name}"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + script = "exec ${pkgs.iodine}/bin/iodine -f -u ${iodinedUser} ${cfg.extraConfig} ${optionalString (cfg.passwordFile != "") "< \"${builtins.toString cfg.passwordFile}\""} ${cfg.relay} ${cfg.server}"; + serviceConfig = { + RestartSec = "30s"; + Restart = "always"; + + # hardening : + # Filesystem access + ProtectSystem = "strict"; + ProtectHome = if isProtected cfg.passwordFile then "read-only" else "true" ; + PrivateTmp = true; + ReadWritePaths = "/dev/net/tun"; + PrivateDevices = false; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectControlGroups = true; + # Caps + NoNewPrivileges = true; + # Misc. + LockPersonality = true; + RestrictRealtime = true; + PrivateMounts = true; + MemoryDenyWriteExecute = true; + }; + }; + in + listToAttrs ( + mapAttrsToList + (name: value: nameValuePair "iodine-${name}" (createIodineClientService name value)) + cfg.clients + ) // { + iodined = mkIf (cfg.server.enable) { + description = "iodine, ip over dns server daemon"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + script = "exec ${pkgs.iodine}/bin/iodined -f -u ${iodinedUser} ${cfg.server.extraConfig} ${optionalString (cfg.server.passwordFile != "") "< \"${builtins.toString cfg.server.passwordFile}\""} ${cfg.server.ip} ${cfg.server.domain}"; + serviceConfig = { + # Filesystem access + ProtectSystem = "strict"; + ProtectHome = if isProtected cfg.server.passwordFile then "read-only" else "true" ; + PrivateTmp = true; + ReadWritePaths = "/dev/net/tun"; + PrivateDevices = false; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectControlGroups = true; + # Caps + NoNewPrivileges = true; + # Misc. + LockPersonality = true; + RestrictRealtime = true; + PrivateMounts = true; + MemoryDenyWriteExecute = true; + }; + }; }; - }; - in - listToAttrs ( - mapAttrsToList - (name: value: nameValuePair "iodine-${name}" (createIodineClientService name value)) - cfg.clients - ) // { - iodined = mkIf (cfg.server.enable) { - description = "iodine, ip over dns server daemon"; - after = [ "network.target" ]; - wantedBy = [ "multi-user.target" ]; - script = "exec ${pkgs.iodine}/bin/iodined -f -u ${iodinedUser} ${cfg.server.extraConfig} ${optionalString (cfg.server.passwordFile != "") "< \"${cfg.server.passwordFile}\""} ${cfg.server.ip} ${cfg.server.domain}"; - }; - }; users.users.${iodinedUser} = { uid = config.ids.uids.iodined; diff --git a/nixos/modules/services/networking/supybot.nix b/nixos/modules/services/networking/supybot.nix index d5b9a97a1c1a..dc9fb31ffd0b 100644 --- a/nixos/modules/services/networking/supybot.nix +++ b/nixos/modules/services/networking/supybot.nix @@ -3,32 +3,35 @@ with lib; let - cfg = config.services.supybot; - + isStateDirHome = hasPrefix "/home/" cfg.stateDir; + isStateDirVar = cfg.stateDir == "/var/lib/supybot"; + pyEnv = pkgs.python3.withPackages (p: [ p.limnoria ] ++ (cfg.extraPackages p)); in - { - options = { services.supybot = { enable = mkOption { + type = types.bool; default = false; - description = "Enable Supybot, an IRC bot"; + description = "Enable Supybot, an IRC bot (also known as Limnoria)."; }; stateDir = mkOption { - # Setting this to /var/lib/supybot caused useradd to fail - default = "/home/supybot"; + type = types.path; + default = if versionAtLeast config.system.stateVersion "20.09" + then "/var/lib/supybot" + else "/home/supybot"; + defaultText = "/var/lib/supybot"; description = "The root directory, logs and plugins are stored here"; }; configFile = mkOption { type = types.path; description = '' - Path to a supybot config file. This can be generated by + Path to initial supybot config file. This can be generated by running supybot-wizard. Note: all paths should include the full path to the stateDir @@ -36,21 +39,54 @@ in ''; }; + plugins = mkOption { + type = types.attrsOf types.path; + default = {}; + description = '' + Attribute set of additional plugins that will be symlinked to the + <filename>plugin</filename> subdirectory. + + Please note that you still need to add the plugins to the config + file (or with <literal>!load</literal>) using their attribute name. + ''; + example = literalExample '' + let + plugins = pkgs.fetchzip { + url = "https://github.com/ProgVal/Supybot-plugins/archive/57c2450c.zip"; + sha256 = "077snf84ibnva3sbpzdfpfma6hcdw7dflwnhg6pw7mgnf0nd84qd"; + }; + in + { + Wikipedia = "''${plugins}/Wikipedia"; + Decide = ./supy-decide; + } + ''; + }; + + extraPackages = mkOption { + default = p: []; + description = '' + Extra Python packages available to supybot plugins. The + value must be a function which receives the attrset defined + in <varname>python3Packages</varname> as the sole argument. + ''; + example = literalExample ''p: [ p.lxml p.requests ]''; + }; + }; }; - config = mkIf cfg.enable { - environment.systemPackages = [ pkgs.pythonPackages.limnoria ]; + environment.systemPackages = [ pkgs.python3Packages.limnoria ]; users.users.supybot = { uid = config.ids.uids.supybot; group = "supybot"; description = "Supybot IRC bot user"; home = cfg.stateDir; - createHome = true; + isSystemUser = true; }; users.groups.supybot = { @@ -59,19 +95,16 @@ in systemd.services.supybot = { description = "Supybot, an IRC bot"; + documentation = [ "https://limnoria.readthedocs.io/" ]; after = [ "network.target" ]; wantedBy = [ "multi-user.target" ]; - path = [ pkgs.pythonPackages.limnoria ]; preStart = '' - cd ${cfg.stateDir} - mkdir -p backup conf data plugins logs/plugins tmp web - ln -sf ${cfg.configFile} supybot.cfg # This needs to be created afresh every time - rm -f supybot.cfg.bak + rm -f '${cfg.stateDir}/supybot.cfg.bak' ''; serviceConfig = { - ExecStart = "${pkgs.pythonPackages.limnoria}/bin/supybot ${cfg.stateDir}/supybot.cfg"; + ExecStart = "${pyEnv}/bin/supybot ${cfg.stateDir}/supybot.cfg"; PIDFile = "/run/supybot.pid"; User = "supybot"; Group = "supybot"; @@ -79,8 +112,50 @@ in Restart = "on-abort"; StartLimitInterval = "5m"; StartLimitBurst = "1"; + + NoNewPrivileges = true; + PrivateDevices = true; + PrivateMounts = true; + PrivateTmp = true; + ProtectControlGroups = true; + ProtectKernelModules = true; + ProtectKernelTunables = true; + RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; + RestrictSUIDSGID = true; + SystemCallArchitectures = "native"; + RestrictNamespaces = true; + RestrictRealtime = true; + LockPersonality = true; + MemoryDenyWriteExecute = true; + RemoveIPC = true; + ProtectHostname = true; + CapabilityBoundingSet = ""; + ProtectSystem = "full"; + } + // optionalAttrs isStateDirVar { + StateDirectory = "supybot"; + ProtectSystem = "strict"; + } + // optionalAttrs (!isStateDirHome) { + ProtectHome = true; }; }; + systemd.tmpfiles.rules = [ + "d '${cfg.stateDir}' 0700 supybot supybot - -" + "d '${cfg.stateDir}/backup' 0750 supybot supybot - -" + "d '${cfg.stateDir}/conf' 0750 supybot supybot - -" + "d '${cfg.stateDir}/data' 0750 supybot supybot - -" + "d '${cfg.stateDir}/plugins' 0750 supybot supybot - -" + "d '${cfg.stateDir}/logs' 0750 supybot supybot - -" + "d '${cfg.stateDir}/logs/plugins' 0750 supybot supybot - -" + "d '${cfg.stateDir}/tmp' 0750 supybot supybot - -" + "d '${cfg.stateDir}/web' 0750 supybot supybot - -" + "L '${cfg.stateDir}/supybot.cfg' - - - - ${cfg.configFile}" + ] + ++ (flip mapAttrsToList cfg.plugins (name: dest: + "L+ '${cfg.stateDir}/plugins/${name}' - - - - ${dest}" + )); + }; } diff --git a/nixos/modules/services/networking/tailscale.nix b/nixos/modules/services/networking/tailscale.nix new file mode 100644 index 000000000000..513c42b40117 --- /dev/null +++ b/nixos/modules/services/networking/tailscale.nix @@ -0,0 +1,46 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let cfg = config.services.tailscale; +in { + meta.maintainers = with maintainers; [ danderson mbaillie ]; + + options.services.tailscale = { + enable = mkEnableOption "Tailscale client daemon"; + + port = mkOption { + type = types.port; + default = 41641; + description = "The port to listen on for tunnel traffic (0=autoselect)."; + }; + }; + + config = mkIf cfg.enable { + systemd.services.tailscale = { + description = "Tailscale client daemon"; + + after = [ "network-pre.target" ]; + wants = [ "network-pre.target" ]; + wantedBy = [ "multi-user.target" ]; + + unitConfig = { + StartLimitIntervalSec = 0; + StartLimitBurst = 0; + }; + + serviceConfig = { + ExecStart = + "${pkgs.tailscale}/bin/tailscaled --port ${toString cfg.port}"; + + RuntimeDirectory = "tailscale"; + RuntimeDirectoryMode = 755; + + StateDirectory = "tailscale"; + StateDirectoryMode = 700; + + Restart = "on-failure"; + }; + }; + }; +} diff --git a/nixos/modules/system/boot/kernel.nix b/nixos/modules/system/boot/kernel.nix index c247f334c23d..43871f439f7f 100644 --- a/nixos/modules/system/boot/kernel.nix +++ b/nixos/modules/system/boot/kernel.nix @@ -192,139 +192,144 @@ in ###### implementation - config = mkIf (!config.boot.isContainer) { - - system.build = { inherit kernel; }; - - system.modulesTree = [ kernel ] ++ config.boot.extraModulePackages; - - # Implement consoleLogLevel both in early boot and using sysctl - # (so you don't need to reboot to have changes take effect). - boot.kernelParams = - [ "loglevel=${toString config.boot.consoleLogLevel}" ] ++ - optionals config.boot.vesa [ "vga=0x317" "nomodeset" ]; - - boot.kernel.sysctl."kernel.printk" = mkDefault config.boot.consoleLogLevel; - - boot.kernelModules = [ "loop" "atkbd" ]; - - boot.initrd.availableKernelModules = - [ # Note: most of these (especially the SATA/PATA modules) - # shouldn't be included by default since nixos-generate-config - # detects them, but I'm keeping them for now for backwards - # compatibility. - - # Some SATA/PATA stuff. - "ahci" - "sata_nv" - "sata_via" - "sata_sis" - "sata_uli" - "ata_piix" - "pata_marvell" - - # Standard SCSI stuff. - "sd_mod" - "sr_mod" - - # SD cards and internal eMMC drives. - "mmc_block" - - # Support USB keyboards, in case the boot fails and we only have - # a USB keyboard, or for LUKS passphrase prompt. - "uhci_hcd" - "ehci_hcd" - "ehci_pci" - "ohci_hcd" - "ohci_pci" - "xhci_hcd" - "xhci_pci" - "usbhid" - "hid_generic" "hid_lenovo" "hid_apple" "hid_roccat" - "hid_logitech_hidpp" "hid_logitech_dj" - - ] ++ optionals (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) [ - # Misc. x86 keyboard stuff. - "pcips2" "atkbd" "i8042" - - # x86 RTC needed by the stage 2 init script. - "rtc_cmos" - ]; - - boot.initrd.kernelModules = - [ # For LVM. - "dm_mod" - ]; - - # The Linux kernel >= 2.6.27 provides firmware. - hardware.firmware = [ kernel ]; - - # Create /etc/modules-load.d/nixos.conf, which is read by - # systemd-modules-load.service to load required kernel modules. - environment.etc = - { "modules-load.d/nixos.conf".source = kernelModulesConf; - }; - - systemd.services.systemd-modules-load = - { wantedBy = [ "multi-user.target" ]; - restartTriggers = [ kernelModulesConf ]; - serviceConfig = - { # Ignore failed module loads. Typically some of the - # modules in ‘boot.kernelModules’ are "nice to have but - # not required" (e.g. acpi-cpufreq), so we don't want to - # barf on those. - SuccessExitStatus = "0 1"; + config = mkMerge + [ (mkIf config.boot.initrd.enable { + boot.initrd.availableKernelModules = + [ # Note: most of these (especially the SATA/PATA modules) + # shouldn't be included by default since nixos-generate-config + # detects them, but I'm keeping them for now for backwards + # compatibility. + + # Some SATA/PATA stuff. + "ahci" + "sata_nv" + "sata_via" + "sata_sis" + "sata_uli" + "ata_piix" + "pata_marvell" + + # Standard SCSI stuff. + "sd_mod" + "sr_mod" + + # SD cards and internal eMMC drives. + "mmc_block" + + # Support USB keyboards, in case the boot fails and we only have + # a USB keyboard, or for LUKS passphrase prompt. + "uhci_hcd" + "ehci_hcd" + "ehci_pci" + "ohci_hcd" + "ohci_pci" + "xhci_hcd" + "xhci_pci" + "usbhid" + "hid_generic" "hid_lenovo" "hid_apple" "hid_roccat" + "hid_logitech_hidpp" "hid_logitech_dj" + + ] ++ optionals (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) [ + # Misc. x86 keyboard stuff. + "pcips2" "atkbd" "i8042" + + # x86 RTC needed by the stage 2 init script. + "rtc_cmos" + ]; + + boot.initrd.kernelModules = + [ # For LVM. + "dm_mod" + ]; + }) + + (mkIf (!config.boot.isContainer) { + system.build = { inherit kernel; }; + + system.modulesTree = [ kernel ] ++ config.boot.extraModulePackages; + + # Implement consoleLogLevel both in early boot and using sysctl + # (so you don't need to reboot to have changes take effect). + boot.kernelParams = + [ "loglevel=${toString config.boot.consoleLogLevel}" ] ++ + optionals config.boot.vesa [ "vga=0x317" "nomodeset" ]; + + boot.kernel.sysctl."kernel.printk" = mkDefault config.boot.consoleLogLevel; + + boot.kernelModules = [ "loop" "atkbd" ]; + + # The Linux kernel >= 2.6.27 provides firmware. + hardware.firmware = [ kernel ]; + + # Create /etc/modules-load.d/nixos.conf, which is read by + # systemd-modules-load.service to load required kernel modules. + environment.etc = + { "modules-load.d/nixos.conf".source = kernelModulesConf; }; - }; - - lib.kernelConfig = { - isYes = option: { - assertion = config: config.isYes option; - message = "CONFIG_${option} is not yes!"; - configLine = "CONFIG_${option}=y"; - }; - - isNo = option: { - assertion = config: config.isNo option; - message = "CONFIG_${option} is not no!"; - configLine = "CONFIG_${option}=n"; - }; - - isModule = option: { - assertion = config: config.isModule option; - message = "CONFIG_${option} is not built as a module!"; - configLine = "CONFIG_${option}=m"; - }; - - ### Usually you will just want to use these two - # True if yes or module - isEnabled = option: { - assertion = config: config.isEnabled option; - message = "CONFIG_${option} is not enabled!"; - configLine = "CONFIG_${option}=y"; - }; - - # True if no or omitted - isDisabled = option: { - assertion = config: config.isDisabled option; - message = "CONFIG_${option} is not disabled!"; - configLine = "CONFIG_${option}=n"; - }; - }; - # The config options that all modules can depend upon - system.requiredKernelConfig = with config.lib.kernelConfig; [ - # !!! Should this really be needed? - (isYes "MODULES") - (isYes "BINFMT_ELF") - ] ++ (optional (randstructSeed != "") (isYes "GCC_PLUGIN_RANDSTRUCT")); + systemd.services.systemd-modules-load = + { wantedBy = [ "multi-user.target" ]; + restartTriggers = [ kernelModulesConf ]; + serviceConfig = + { # Ignore failed module loads. Typically some of the + # modules in ‘boot.kernelModules’ are "nice to have but + # not required" (e.g. acpi-cpufreq), so we don't want to + # barf on those. + SuccessExitStatus = "0 1"; + }; + }; - # nixpkgs kernels are assumed to have all required features - assertions = if config.boot.kernelPackages.kernel ? features then [] else - let cfg = config.boot.kernelPackages.kernel.config; in map (attrs: - { assertion = attrs.assertion cfg; inherit (attrs) message; } - ) config.system.requiredKernelConfig; + lib.kernelConfig = { + isYes = option: { + assertion = config: config.isYes option; + message = "CONFIG_${option} is not yes!"; + configLine = "CONFIG_${option}=y"; + }; - }; + isNo = option: { + assertion = config: config.isNo option; + message = "CONFIG_${option} is not no!"; + configLine = "CONFIG_${option}=n"; + }; + + isModule = option: { + assertion = config: config.isModule option; + message = "CONFIG_${option} is not built as a module!"; + configLine = "CONFIG_${option}=m"; + }; + + ### Usually you will just want to use these two + # True if yes or module + isEnabled = option: { + assertion = config: config.isEnabled option; + message = "CONFIG_${option} is not enabled!"; + configLine = "CONFIG_${option}=y"; + }; + + # True if no or omitted + isDisabled = option: { + assertion = config: config.isDisabled option; + message = "CONFIG_${option} is not disabled!"; + configLine = "CONFIG_${option}=n"; + }; + }; + + # The config options that all modules can depend upon + system.requiredKernelConfig = with config.lib.kernelConfig; + [ + # !!! Should this really be needed? + (isYes "MODULES") + (isYes "BINFMT_ELF") + ] ++ (optional (randstructSeed != "") (isYes "GCC_PLUGIN_RANDSTRUCT")); + + # nixpkgs kernels are assumed to have all required features + assertions = if config.boot.kernelPackages.kernel ? features then [] else + let cfg = config.boot.kernelPackages.kernel.config; in map (attrs: + { assertion = attrs.assertion cfg; inherit (attrs) message; } + ) config.system.requiredKernelConfig; + + }) + + ]; } diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix index 26117cffeda2..93cd801ef803 100644 --- a/nixos/modules/system/boot/stage-1.nix +++ b/nixos/modules/system/boot/stage-1.nix @@ -390,6 +390,17 @@ in ''; }; + boot.initrd.enable = mkOption { + type = types.bool; + default = !config.boot.isContainer; + defaultText = "!config.boot.isContainer"; + description = '' + Whether to enable the NixOS initial RAM disk (initrd). This may be + needed to perform some initialisation tasks (like mounting + network/encrypted file systems) before continuing the boot process. + ''; + }; + boot.initrd.prepend = mkOption { default = [ ]; type = types.listOf types.str; @@ -555,7 +566,7 @@ in }; - config = mkIf (!config.boot.isContainer) { + config = mkIf config.boot.initrd.enable { assertions = [ { assertion = any (fs: fs.mountPoint == "/") fileSystems; message = "The ‘fileSystems’ option does not specify your root file system."; diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 7dd0f23df658..51b463747b0e 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -135,6 +135,7 @@ in initrd-network-ssh = handleTest ./initrd-network-ssh {}; initrdNetwork = handleTest ./initrd-network.nix {}; installer = handleTest ./installer.nix {}; + iodine = handleTest ./iodine.nix {}; ipv6 = handleTest ./ipv6.nix {}; jackett = handleTest ./jackett.nix {}; jellyfin = handleTest ./jellyfin.nix {}; diff --git a/nixos/tests/iodine.nix b/nixos/tests/iodine.nix new file mode 100644 index 000000000000..8bd9603a6d6c --- /dev/null +++ b/nixos/tests/iodine.nix @@ -0,0 +1,63 @@ +import ./make-test-python.nix ( + { pkgs, ... }: let + domain = "whatever.example.com"; + in + { + name = "iodine"; + nodes = { + server = + { ... }: + + { + networking.firewall = { + allowedUDPPorts = [ 53 ]; + trustedInterfaces = [ "dns0" ]; + }; + boot.kernel.sysctl = { + "net.ipv4.ip_forward" = 1; + "net.ipv6.ip_forward" = 1; + }; + + services.iodine.server = { + enable = true; + ip = "10.53.53.1/24"; + passwordFile = "${builtins.toFile "password" "foo"}"; + inherit domain; + }; + + # test resource: accessible only via tunnel + services.openssh = { + enable = true; + openFirewall = false; + }; + }; + + client = + { ... }: { + services.iodine.clients.testClient = { + # test that ProtectHome is "read-only" + passwordFile = "/root/pw"; + relay = "server"; + server = domain; + }; + systemd.tmpfiles.rules = [ + "f /root/pw 0666 root root - foo" + ]; + environment.systemPackages = [ + pkgs.nagiosPluginsOfficial + ]; + }; + + }; + + testScript = '' + start_all() + + server.wait_for_unit("sshd") + server.wait_for_unit("iodined") + client.wait_for_unit("iodine-testClient") + + client.succeed("check_ssh -H 10.53.53.1") + ''; + } +) diff --git a/pkgs/applications/audio/aucatctl/default.nix b/pkgs/applications/audio/aucatctl/default.nix new file mode 100644 index 000000000000..4aff3e1f7bfb --- /dev/null +++ b/pkgs/applications/audio/aucatctl/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchurl, sndio, libbsd }: + +stdenv.mkDerivation rec { + pname = "aucatctl"; + version = "0.1"; + + src = fetchurl { + url = "http://www.sndio.org/${pname}-${version}.tar.gz"; + sha256 = "524f2fae47db785234f166551520d9605b9a27551ca438bd807e3509ce246cf0"; + }; + + buildInputs = [ sndio ] + ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.targetPlatform.isBSD) + libbsd; + + outputs = [ "out" "man" ]; + + preBuild = '' + makeFlagsArray+=("PREFIX=$out") + '' + stdenv.lib.optionalString + (!stdenv.isDarwin && !stdenv.targetPlatform.isBSD) '' + makeFlagsArray+=(LDADD="-lsndio -lbsd") + + # Fix warning about implicit declaration of function 'strlcpy' + substituteInPlace aucatctl.c \ + --replace '#include <string.h>' '#include <bsd/string.h>' + ''; + + meta = with stdenv.lib; { + description = + "The aucatctl utility sends MIDI messages to control sndiod and/or aucat volumes"; + homepage = "http://www.sndio.org"; + license = licenses.isc; + maintainers = with maintainers; [ sna ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/applications/audio/cmt/default.nix b/pkgs/applications/audio/cmt/default.nix new file mode 100644 index 000000000000..96cc3c573198 --- /dev/null +++ b/pkgs/applications/audio/cmt/default.nix @@ -0,0 +1,33 @@ +{ stdenv +, fetchurl +, ladspaH +}: + +stdenv.mkDerivation rec { + name = "cmt"; + version = "1.17"; + + src = fetchurl { + url = "http://www.ladspa.org/download/${name}_${version}.tgz"; + sha256 = "07xd0xmwpa0j12813jpf87fr9hwzihii5l35mp8ady7xxfmxfmpb"; + }; + + buildInputs = [ ladspaH ]; + + preBuild = '' + cd src + ''; + + installFlags = [ "INSTALL_PLUGINS_DIR=${placeholder "out"}/lib/ladspa" ]; + preInstall = '' + mkdir -p $out/lib/ladspa + ''; + + meta = with stdenv.lib; { + description = "Computer Music Toolkit"; + homepage = "https://www.ladspa.org/cmt"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = with maintainers; [ sjfloat ]; + }; +} diff --git a/pkgs/applications/audio/mopidy/iris.nix b/pkgs/applications/audio/mopidy/iris.nix index 2f3e5f64767d..000a0bc0bfe3 100644 --- a/pkgs/applications/audio/mopidy/iris.nix +++ b/pkgs/applications/audio/mopidy/iris.nix @@ -2,11 +2,11 @@ python3Packages.buildPythonApplication rec { pname = "Mopidy-Iris"; - version = "3.45.1"; + version = "3.46.0"; src = python3Packages.fetchPypi { inherit pname version; - sha256 = "02jmylz76wlwxlv8drndprb7r9l8kqqgjkp17mjx5ngnl545pc2w"; + sha256 = "0c7b6zbcj4bq5qsxvhjwqclrl1k2hs3wb50pfjbw7gs7m3gm2b7d"; }; propagatedBuildInputs = [ diff --git a/pkgs/applications/audio/vorbis-tools/default.nix b/pkgs/applications/audio/vorbis-tools/default.nix index f815ac02e6e5..44d322069fc2 100644 --- a/pkgs/applications/audio/vorbis-tools/default.nix +++ b/pkgs/applications/audio/vorbis-tools/default.nix @@ -3,8 +3,8 @@ let debPatch = fetchzip { - url = "mirror://debian/pool/main/v/vorbis-tools/vorbis-tools_1.4.0-6.debian.tar.xz"; - sha256 = "1xmmpdvxyr84lazlg23c6ck5ic97ga2rkiqabb1d98ix2zdzyqz5"; + url = "mirror://debian/pool/main/v/vorbis-tools/vorbis-tools_1.4.0-11.debian.tar.xz"; + sha256 = "0kvmd5nslyqplkdb7pnmqj47ir3y5lmaxd12wmrnqh679a8jhcyi"; }; in stdenv.mkDerivation { diff --git a/pkgs/applications/blockchains/zcash/default.nix b/pkgs/applications/blockchains/zcash/default.nix index f6114b3c2134..e2c57d514cda 100644 --- a/pkgs/applications/blockchains/zcash/default.nix +++ b/pkgs/applications/blockchains/zcash/default.nix @@ -7,15 +7,19 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "zcash"; - version = "2.1.0-1"; + version = "2.1.1-1"; src = fetchFromGitHub { owner = "zcash"; repo = "zcash"; rev = "v${version}"; - sha256 = "05bnn4lxrrcv1ha3jdfrgwg4ar576161n3j9d4gpc14ww3zgf9vz"; + sha256 = "1g5zlfzfp31my8w8nlg5fncpr2y95iv9fm04x57sjb93rgmjdh5n"; }; + patchPhase = '' + sed -i"" 's,-fvisibility=hidden,,g' src/Makefile.am + ''; + nativeBuildInputs = [ autoreconfHook pkgconfig ]; buildInputs = [ gtest gmock gmp openssl wget db62 boost17x zlib protobuf libevent libsodium librustzcash ] @@ -23,17 +27,15 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-boost-libdir=${boost17x.out}/lib" ]; - patchPhase = '' - sed -i"" 's,-fvisibility=hidden,,g' src/Makefile.am - ''; - postInstall = '' cp zcutil/fetch-params.sh $out/bin/zcash-fetch-params ''; + enableParallelBuilding = true; + meta = { description = "Peer-to-peer, anonymous electronic cash system"; - homepage = https://z.cash/; + homepage = "https://z.cash/"; maintainers = with maintainers; [ rht tkerber ]; license = licenses.mit; platforms = platforms.linux; diff --git a/pkgs/applications/blockchains/zcash/librustzcash/default.nix b/pkgs/applications/blockchains/zcash/librustzcash/default.nix index 5032594468e7..6cd2ae018fb6 100644 --- a/pkgs/applications/blockchains/zcash/librustzcash/default.nix +++ b/pkgs/applications/blockchains/zcash/librustzcash/default.nix @@ -1,20 +1,17 @@ { stdenv, fetchFromGitHub, rustPlatform }: rustPlatform.buildRustPackage rec { - pname = "librustzcash-unstable"; - version = "2018-10-27"; + pname = "librustzcash"; + version = "0.1.0"; src = fetchFromGitHub { owner = "zcash"; repo = "librustzcash"; - rev = "06da3b9ac8f278e5d4ae13088cf0a4c03d2c13f5"; - sha256 = "0md0pp3k97iv7kfjpfkg14pjanhrql4vafa8ggbxpkajv1j4xldv"; + rev = version; + sha256 = "0d28k29sgzrg9clynz29kpw50kbkp0a4dfdayqhmpjmsh05y6261"; }; - # Delete this on next update; see #79975 for details - legacyCargoFetcher = true; - - cargoSha256 = "166v8cxlpfslbs5gljbh7wp0lxqakayw47ikxm9r9a39n7j36mq1"; + cargoSha256 = "1wzyrcmcbrna6rjzw19c4lq30didzk4w6fs6wmvxp0xfg4qqdlax"; installPhase = '' mkdir -p $out/lib @@ -23,11 +20,12 @@ rustPlatform.buildRustPackage rec { cp librustzcash/include/librustzcash.h $out/include/ ''; + # The tests do pass, but they take an extremely long time to run. doCheck = false; meta = with stdenv.lib; { description = "Rust-language assets for Zcash"; - homepage = https://github.com/zcash/librustzcash; + homepage = "https://github.com/zcash/librustzcash"; maintainers = with maintainers; [ rht tkerber ]; license = with licenses; [ mit asl20 ]; platforms = platforms.unix; diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix index 747777c75af2..30ae92f58aee 100644 --- a/pkgs/applications/gis/saga/default.nix +++ b/pkgs/applications/gis/saga/default.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation { pname = "saga"; - version = "7.5.0"; + version = "7.6.1"; # See https://groups.google.com/forum/#!topic/nix-devel/h_vSzEJAPXs # for why the have additional buildInputs on darwin @@ -18,13 +18,13 @@ stdenv.mkDerivation { CXXFLAGS = stdenv.lib.optionalString stdenv.cc.isClang "-std=c++11 -Wno-narrowing"; src = fetchurl { - url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.5.0/saga-7.5.0.tar.gz"; - sha256 = "0s5195802xwlkb2w4i4vd9ys95d7fnzn5cnnixh1csaqc2x1qp6r"; + url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.6.1/saga-7.6.1.tar.gz"; + sha256 = "1i0cp1lms6cmjl7f5vgr9pl3qc02fmappn4kq21y0dn2gy7j2mkn"; }; meta = with stdenv.lib; { description = "System for Automated Geoscientific Analyses"; - homepage = http://www.saga-gis.org; + homepage = "http://www.saga-gis.org"; license = licenses.gpl2Plus; maintainers = with maintainers; [ michelk mpickering ]; platforms = with platforms; unix; diff --git a/pkgs/applications/graphics/jbrout/default.nix b/pkgs/applications/graphics/jbrout/default.nix deleted file mode 100644 index 4eb7518cc102..000000000000 --- a/pkgs/applications/graphics/jbrout/default.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ stdenv, fetchsvn, pythonPackages, makeWrapper, fbida, which }: - -let - inherit (pythonPackages) python; -in pythonPackages.buildPythonApplication rec { - pname = "jbrout"; - version = "338"; - - src = fetchsvn { - url = "http://jbrout.googlecode.com/svn/trunk"; - rev = version; - sha256 = "0257ni4vkxgd0qhs73fw5ppw1qpf11j8fgwsqc03b1k1yv3hk4hf"; - }; - - doCheck = false; - - # XXX: patchPhase to avoid this - # File "/nix/store/vnyjxn6h3rbrn49m25yyw7i1chlxglhw-python-2.7.1/lib/python2.7/zipfile.py", line 348, in FileHeader - # len(filename), len(extra)) - #struct.error: ushort format requires 0 <= number <= USHRT_MAX - patchPhase = '' - find | xargs touch - - substituteInPlace setup.py --replace "version=__version__" "version=baseVersion" - ''; - - postInstall = '' - mkdir $out/bin - echo "python $out/${python.sitePackages}/jbrout/jbrout.py" > $out/bin/jbrout - chmod +x $out/bin/jbrout - ''; - - buildInputs = [ python makeWrapper which ]; - propagatedBuildInputs = with pythonPackages; [ pillow lxml pyGtkGlade pyexiv2 fbida ]; - - meta = { - homepage = https://manatlan.com/jbrout/; - description = "Photo manager"; - platforms = stdenv.lib.platforms.linux; - license = stdenv.lib.licenses.gpl2Plus; - }; -} diff --git a/pkgs/applications/misc/toggldesktop/default.nix b/pkgs/applications/misc/toggldesktop/default.nix index bf22cb0181da..a0d663efb3cc 100644 --- a/pkgs/applications/misc/toggldesktop/default.nix +++ b/pkgs/applications/misc/toggldesktop/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchzip, buildEnv, makeDesktopItem, runCommand, writeText, pkgconfig +{ mkDerivation, lib, fetchzip, buildEnv, makeDesktopItem, runCommand, writeText, pkgconfig , cmake, qmake, cacert, jsoncpp, libX11, libXScrnSaver, lua, openssl, poco , qtbase, qtwebengine, qtx11extras, sqlite }: @@ -11,7 +11,7 @@ let sha256 = "01hqkx9dljnhwnyqi6mmzfp02hnbi2j50rsfiasniqrkbi99x9v1"; }; - bugsnag-qt = stdenv.mkDerivation rec { + bugsnag-qt = mkDerivation rec { pname = "bugsnag-qt"; version = "20180522.005732"; @@ -24,7 +24,7 @@ let buildInputs = [ qtbase ]; }; - qxtglobalshortcut = stdenv.mkDerivation rec { + qxtglobalshortcut = mkDerivation rec { pname = "qxtglobalshortcut"; version = "f584471dada2099ba06c574bdfdd8b078c2e3550"; @@ -37,7 +37,7 @@ let buildInputs = [ qtbase qtx11extras ]; }; - qt-oauth-lib = stdenv.mkDerivation rec { + qt-oauth-lib = mkDerivation rec { pname = "qt-oauth-lib"; version = "20190125.190943"; @@ -62,7 +62,7 @@ let mkdir -p $out/lib/pkgconfig && ln -s ${poco-pc} $_/poco.pc ''; - libtoggl = stdenv.mkDerivation { + libtoggl = mkDerivation { name = "libtoggl-${version}"; inherit src version; @@ -77,7 +77,7 @@ let ''; }; - toggldesktop = stdenv.mkDerivation { + toggldesktop = mkDerivation { name = "${name}-unwrapped"; inherit src version; @@ -108,7 +108,7 @@ let ]; }; - toggldesktop-icons = stdenv.mkDerivation { + toggldesktop-icons = mkDerivation { name = "${name}-icons"; inherit (toggldesktop) src sourceRoot; @@ -138,7 +138,7 @@ buildEnv { inherit name; paths = [ desktopItem toggldesktop-icons toggldesktop-wrapped ]; - meta = with stdenv.lib; { + meta = with lib; { description = "Client for Toggl time tracking service"; homepage = https://github.com/toggl/toggldesktop; license = licenses.bsd3; diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix index 4fafe19b3792..a8a426b61626 100644 --- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix +++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix @@ -90,19 +90,19 @@ let fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ]; # Upstream source - version = "9.0.5"; + version = "9.0.6"; lang = "en-US"; srcs = { x86_64-linux = fetchurl { url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"; - sha256 = "1d4c3mrvqd6v086mwn3rnv776y2j3y45agnd0k5njqnmr53ybn2s"; + sha256 = "1vk1pww8zmpjd5snyfz0if9v17g140ymlp6navxp28snzlffahss"; }; i686-linux = fetchurl { url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"; - sha256 = "040nh79hjkg5afvzshzhp7588dbi1pcpjsyk8phfqaapds74ma8y"; + sha256 = "0bhikdilfz31iilgb48mayy9f4lilycq24pqsrq7w3dqdjg4v55v"; }; }; in diff --git a/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix b/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix new file mode 100644 index 000000000000..716e9da8b7e5 --- /dev/null +++ b/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix @@ -0,0 +1,22 @@ +{ lib, buildGoModule, minikube }: + +buildGoModule rec { + inherit (minikube) version src nativeBuildInputs buildInputs goPackagePath preBuild; + + pname = "docker-machine-hyperkit"; + subPackages = [ "cmd/drivers/hyperkit" ]; + + modSha256 = minikube.go-modules.outputHash; + + postInstall = '' + mv $out/bin/hyperkit $out/bin/docker-machine-driver-hyperkit + ''; + + meta = with lib; { + homepage = https://github.com/kubernetes/minikube/blob/master/docs/drivers.md; + description = "HyperKit driver for docker-machine."; + license = licenses.asl20; + maintainers = with maintainers; [ atkinschang ]; + platforms = platforms.darwin; + }; +} diff --git a/pkgs/applications/networking/cluster/docker-machine/kvm2.nix b/pkgs/applications/networking/cluster/docker-machine/kvm2.nix index eb2946cec771..609b7b02cbb4 100644 --- a/pkgs/applications/networking/cluster/docker-machine/kvm2.nix +++ b/pkgs/applications/networking/cluster/docker-machine/kvm2.nix @@ -1,32 +1,22 @@ -{ stdenv, buildGoModule, libvirt, pkgconfig, minikube }: +{ lib, buildGoModule, minikube }: buildGoModule rec { - pname = "docker-machine-kvm2"; - version = minikube.version; + inherit (minikube) version src nativeBuildInputs buildInputs goPackagePath preBuild; - goPackagePath = "k8s.io/minikube"; + pname = "docker-machine-kvm2"; subPackages = [ "cmd/drivers/kvm" ]; - src = minikube.src; - - modSha256 = minikube.go-modules.outputHash; - - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ libvirt ]; - - preBuild = '' - export buildFlagsArray=(-ldflags="-X k8s.io/minikube/pkg/drivers/kvm/version.VERSION=v${version}") - ''; + modSha256 = minikube.go-modules.outputHash; postInstall = '' mv $out/bin/kvm $out/bin/docker-machine-driver-kvm2 ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = https://github.com/kubernetes/minikube/blob/master/docs/drivers.md; description = "KVM2 driver for docker-machine."; license = licenses.asl20; - maintainers = with maintainers; [ tadfisher ]; + maintainers = with maintainers; [ tadfisher atkinschang ]; platforms = platforms.unix; }; } diff --git a/pkgs/applications/networking/cluster/kubeval/default.nix b/pkgs/applications/networking/cluster/kubeval/default.nix index 84e9b8899431..54be5956040c 100644 --- a/pkgs/applications/networking/cluster/kubeval/default.nix +++ b/pkgs/applications/networking/cluster/kubeval/default.nix @@ -1,26 +1,5 @@ { stdenv, lib, fetchFromGitHub, buildGoModule, makeWrapper }: -let - - # Cache schema as a package so network calls are not - # necessary at runtime, allowing use in package builds - schema = stdenv.mkDerivation { - name = "kubeval-schema"; - src = fetchFromGitHub { - owner = "instrumenta"; - repo = "kubernetes-json-schema"; - rev = "6a498a60dc68c5f6a1cc248f94b5cd1e7241d699"; - sha256 = "1y9m2ma3n4h7sf2lg788vjw6pkfyi0fa7gzc870faqv326n6x2jr"; - }; - - installPhase = '' - mkdir -p $out/kubernetes-json-schema/master - cp -R . $out/kubernetes-json-schema/master - ''; - }; - -in - buildGoModule rec { pname = "kubeval"; version = "0.14.0"; @@ -32,12 +11,8 @@ buildGoModule rec { sha256 = "0kpwk7bv36m3i8vavm1pqc8l611c6l9qbagcc64v6r85qig4w5xv"; }; - buildInputs = [ makeWrapper ]; - modSha256 = "0y9x44y3bchi8xg0a6jmp2rmi8dybkl6qlywb6nj1viab1s8dd4y"; - postFixup = "wrapProgram $out/bin/kubeval --set KUBEVAL_SCHEMA_LOCATION file:///${schema}/kubernetes-json-schema/master"; - meta = with lib; { description = "Validate your Kubernetes configuration files"; homepage = https://github.com/instrumenta/kubeval; diff --git a/pkgs/applications/networking/cluster/kubeval/schema.nix b/pkgs/applications/networking/cluster/kubeval/schema.nix new file mode 100644 index 000000000000..370fe9a1cd82 --- /dev/null +++ b/pkgs/applications/networking/cluster/kubeval/schema.nix @@ -0,0 +1,15 @@ +{ fetchFromGitHub }: +# To cache schema as a package so network calls are not +# necessary at runtime, allowing use in package builds you can use the following: + +# KUBEVAL_SCHEMA_LOCATION="file:///${kubeval-schema}"; +(fetchFromGitHub { + name = "kubeval-schema"; + owner = "instrumenta"; + repo = "kubernetes-json-schema"; + rev = "6a498a60dc68c5f6a1cc248f94b5cd1e7241d699"; + sha256 = "1y9m2ma3n4h7sf2lg788vjw6pkfyi0fa7gzc870faqv326n6x2jr"; +}) // { + # the schema is huge (> 7GB), we don't get any benefit from building int on hydra + meta.hydraPlatforms = []; +} diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix index 5637e486ef11..f49f1768ced4 100644 --- a/pkgs/applications/networking/cluster/minikube/default.nix +++ b/pkgs/applications/networking/cluster/minikube/default.nix @@ -1,68 +1,67 @@ -{ stdenv, buildGoModule, fetchFromGitHub, go-bindata, libvirt, qemu -, gpgme, makeWrapper, vmnet -, docker-machine-kvm, docker-machine-kvm2 -, extraDrivers ? [] +{ stdenv +, buildGoModule +, fetchFromGitHub +, pkgconfig +, makeWrapper +, go-bindata +, libvirt +, vmnet }: -let - drivers = stdenv.lib.filter (d: d != null) (extraDrivers - ++ stdenv.lib.optionals stdenv.isLinux [ docker-machine-kvm docker-machine-kvm2 ]); - - binPath = drivers - ++ stdenv.lib.optionals stdenv.isLinux ([ libvirt qemu ]); - -in buildGoModule rec { +buildGoModule rec { pname = "minikube"; - version = "1.2.0"; - - kubernetesVersion = "1.15.0"; + version = "1.8.1"; + # for -ldflags + commit = "cbda04cf6bbe65e987ae52bb393c10099ab62014"; goPackagePath = "k8s.io/minikube"; + subPackages = [ "cmd/minikube" ]; + modSha256 = "1wyz8aq291lx614ilqrcgzdc8rjxbd6v3rv1fy6r2m6snyysycfn"; src = fetchFromGitHub { owner = "kubernetes"; repo = "minikube"; rev = "v${version}"; - sha256 = "0l9znrp49877cp1bkwx84c8lv282ga5a946rjbxi8gznkf3kwaw7"; + sha256 = "1nf0n701rw3anp8j7k3f553ipqwpzzxci41zsi0il4l35dpln5g0"; }; - modSha256 = "1cp63n0x2lgbqvvymx9byx48r42qw6w224x5x4iiarc2nryfdhn0"; - - buildInputs = [ go-bindata makeWrapper gpgme ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin vmnet; - subPackages = [ "cmd/minikube" ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin "cmd/drivers/hyperkit"; + nativeBuildInputs = [ pkgconfig go-bindata makeWrapper ]; + buildInputs = stdenv.lib.optionals stdenv.isLinux [ libvirt ] + ++ stdenv.lib.optionals stdenv.isDarwin [ vmnet ]; preBuild = '' go-bindata -nomemcopy -o pkg/minikube/assets/assets.go -pkg assets deploy/addons/... + go-bindata -nomemcopy -o pkg/minikube/translate/translations.go -pkg translate translations/... VERSION_MAJOR=$(grep "^VERSION_MAJOR" Makefile | sed "s/^.*\s//") VERSION_MINOR=$(grep "^VERSION_MINOR" Makefile | sed "s/^.*\s//") ISO_VERSION=v$VERSION_MAJOR.$VERSION_MINOR.0 ISO_BUCKET=$(grep "^ISO_BUCKET" Makefile | sed "s/^.*\s//") - KUBERNETES_VERSION=${kubernetesVersion} export buildFlagsArray="-ldflags=\ - -X k8s.io/minikube/pkg/version.version=v${version} \ - -X k8s.io/minikube/pkg/version.isoVersion=$ISO_VERSION \ - -X k8s.io/minikube/pkg/version.isoPath=$ISO_BUCKET \ - -X k8s.io/minikube/vendor/k8s.io/client-go/pkg/version.gitVersion=$KUBERNETES_VERSION \ - -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitVersion=$KUBERNETES_VERSION" + -X ${goPackagePath}/pkg/version.version=v${version} \ + -X ${goPackagePath}/pkg/version.isoVersion=$ISO_VERSION \ + -X ${goPackagePath}/pkg/version.isoPath=$ISO_BUCKET \ + -X ${goPackagePath}/pkg/version.gitCommitID=${commit} \ + -X ${goPackagePath}/pkg/drivers/kvm.version=v${version} \ + -X ${goPackagePath}/pkg/drivers/kvm.gitCommitID=${commit} \ + -X ${goPackagePath}/pkg/drivers/hyperkit.version=v${version} \ + -X ${goPackagePath}/pkg/drivers/hyperkit.gitCommitID=${commit}" ''; postInstall = '' - wrapProgram $out/bin/${pname} --prefix PATH : $out/bin:${stdenv.lib.makeBinPath binPath} mkdir -p $out/share/bash-completion/completions/ MINIKUBE_WANTUPDATENOTIFICATION=false MINIKUBE_WANTKUBECTLDOWNLOADMSG=false HOME=$PWD $out/bin/minikube completion bash > $out/share/bash-completion/completions/minikube + mkdir -p $out/share/zsh/site-functions/ MINIKUBE_WANTUPDATENOTIFICATION=false MINIKUBE_WANTKUBECTLDOWNLOADMSG=false HOME=$PWD $out/bin/minikube completion zsh > $out/share/zsh/site-functions/_minikube - ''+ stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' - mv $out/bin/hyperkit $out/bin/docker-machine-driver-hyperkit ''; meta = with stdenv.lib; { homepage = https://github.com/kubernetes/minikube; description = "A tool that makes it easy to run Kubernetes locally"; license = licenses.asl20; - maintainers = with maintainers; [ ebzzry copumpkin vdemeester ]; + maintainers = with maintainers; [ ebzzry copumpkin vdemeester atkinschang ]; platforms = with platforms; unix; }; } diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix index 122a7e74f863..87342115e1e4 100644 --- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix +++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix @@ -6,12 +6,12 @@ let executableName = "riot-desktop"; - version = "1.5.12"; + version = "1.5.13"; riot-web-src = fetchFromGitHub { owner = "vector-im"; repo = "riot-web"; rev = "v${version}"; - sha256 = "1qz3n2dlklhbi6rbhv2v769xbr4rcp9s6pm2cc9r33ak6axn4aym"; + sha256 = "1p2bdqq8yziv3l7kjkwqvi27a8djav7rk3lsipl7dvdjk1926941"; }; electron = electron_7; diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix index e633f60d9770..1ff55fbb1cb0 100644 --- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix +++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix @@ -12,11 +12,11 @@ let in stdenv.mkDerivation rec { pname = "riot-web"; - version = "1.5.12"; + version = "1.5.13"; src = fetchurl { url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz"; - sha256 = "064zghrsl348ydzngwxhwjn0d0gkkf3nkzq03v5gad2f11qwnwb6"; + sha256 = "0xghpf9rv7ns5aipc6n517qd9dp50rr93arvx6r36kqhkdyzbfad"; }; installPhase = '' diff --git a/pkgs/applications/radio/gnss-sdr/default.nix b/pkgs/applications/radio/gnss-sdr/default.nix index ba37b7ecad22..005f83e0f54e 100644 --- a/pkgs/applications/radio/gnss-sdr/default.nix +++ b/pkgs/applications/radio/gnss-sdr/default.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation rec { pname = "gnss-sdr"; - version = "0.0.11"; + version = "0.0.12"; src = fetchFromGitHub { owner = "gnss-sdr"; repo = "gnss-sdr"; rev = "v${version}"; - sha256 = "0ajj0wx68yyzigppxxa1wag3hzkrjj8dqq8k28rj0jhp8a6bw2q7"; + sha256 = "0i9cz85jc2m758pzy3bq4dk4vj9wv7k2z118lasb09xldx01dwsq"; }; buildInputs = [ @@ -73,7 +73,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "An open source Global Navigation Satellite Systems software-defined receiver"; - homepage = https://gnss-sdr.org/; + homepage = "https://gnss-sdr.org/"; license = licenses.gpl3Plus; platforms = platforms.linux; }; diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix index a60f8db388a5..f03a0a0cceff 100644 --- a/pkgs/applications/science/electronics/kicad/default.nix +++ b/pkgs/applications/science/electronics/kicad/default.nix @@ -137,5 +137,9 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ evils kiwi berce ]; # kicad's cross-platform, not sure what to fill in here platforms = with platforms; linux; + } // optionalAttrs with3d { + # We can't download the 3d models on Hydra - they are a ~1 GiB download and + # they occupy ~5 GiB in store. + hydraPlatforms = []; }; } diff --git a/pkgs/applications/science/electronics/kicad/libraries.nix b/pkgs/applications/science/electronics/kicad/libraries.nix index 53e190d2749b..7cdf9373e087 100644 --- a/pkgs/applications/science/electronics/kicad/libraries.nix +++ b/pkgs/applications/science/electronics/kicad/libraries.nix @@ -12,8 +12,8 @@ # }; with lib; let - mkLib = name: attrs: - stdenv.mkDerivation ( + mkLib = name: + stdenv.mkDerivation { pname = "kicad-${name}"; version = "${version}"; @@ -27,16 +27,13 @@ let ); nativeBuildInputs = [ cmake ]; meta.license = licenses.cc-by-sa-40; - } // attrs - ); + }; in { - symbols = mkLib "symbols" { }; - templates = mkLib "templates" { }; - footprints = mkLib "footprints" { }; - packages3d = mkLib "packages3d" { - hydraPlatforms = []; # this is a ~1 GiB download, occupies ~5 GiB in store - }; + symbols = mkLib "symbols"; + templates = mkLib "templates"; + footprints = mkLib "footprints"; + packages3d = mkLib "packages3d"; # i18n is a special case, not actually a library # more a part of kicad proper, but also optional and separate diff --git a/pkgs/applications/science/logic/abc/default.nix b/pkgs/applications/science/logic/abc/default.nix index 8551a3ee4ca3..a33cc92c7ce7 100644 --- a/pkgs/applications/science/logic/abc/default.nix +++ b/pkgs/applications/science/logic/abc/default.nix @@ -1,35 +1,32 @@ -{ fetchFromGitHub, stdenv, readline, cmake }: +{ stdenv, fetchFromGitHub +, readline, cmake +}: -let - rev = "71f2b40320127561175ad60f6f2428f3438e5243"; -in stdenv.mkDerivation { - pname = "abc-verifier"; - version = "2020-01-11"; +stdenv.mkDerivation rec { + pname = "abc-verifier"; + version = "2020.03.05"; src = fetchFromGitHub { - inherit rev; - owner = "berkeley-abc"; - repo = "abc"; - sha256 = "15sn146ajxql7l1h8rsag5lhn4spwvgjhwzqawfr78snzadw8by3"; + owner = "berkeley-abc"; + repo = "abc"; + rev = "ed90ce20df9c7c4d6e1db5d3f786f9b52e06bab1"; + sha256 = "01sw67pkrb6wzflkxbkxzwsnli3nvp0yxwp3j1ngb3c0j86ri437"; }; - passthru.rev = rev; - nativeBuildInputs = [ cmake ]; buildInputs = [ readline ]; enableParallelBuilding = true; + installPhase = "mkdir -p $out/bin && mv abc $out/bin"; - installPhase = '' - mkdir -p $out/bin - mv abc $out/bin - ''; + # needed by yosys + passthru.rev = src.rev; - meta = { + meta = with stdenv.lib; { description = "A tool for squential logic synthesis and formal verification"; - homepage = https://people.eecs.berkeley.edu/~alanmi/abc; - license = stdenv.lib.licenses.mit; - platforms = stdenv.lib.platforms.unix; - maintainers = [ stdenv.lib.maintainers.thoughtpolice ]; + homepage = "https://people.eecs.berkeley.edu/~alanmi/abc"; + license = licenses.mit; + platforms = platforms.unix; + maintainers = with maintainers; [ thoughtpolice ]; }; } diff --git a/pkgs/applications/science/logic/mcy/default.nix b/pkgs/applications/science/logic/mcy/default.nix index 9f239f221b18..ec9af1926318 100644 --- a/pkgs/applications/science/logic/mcy/default.nix +++ b/pkgs/applications/science/logic/mcy/default.nix @@ -7,28 +7,31 @@ let in stdenv.mkDerivation { pname = "mcy"; - version = "2020.02.05"; + version = "2020.03.16"; src = fetchFromGitHub { owner = "YosysHQ"; repo = "mcy"; - rev = "83deeddd12d583a89ad4aa1d2147efa4d6adc33c"; - sha256 = "1i0cabiqr68zflwzc6z894i4n7k6m3hbfck58vzh8zb9jwxwizav"; + rev = "562c02375067428bb657f57faa5131ee1ab44051"; + sha256 = "0q77v2hxnmv61zx5bl4lrqiavgvsiyb5qxdp9hnihimj1m30bc5h"; }; buildInputs = [ python ]; patchPhase = '' substituteInPlace mcy.py \ --replace yosys '${yosys}/bin/yosys' \ - --replace 'os.execvp("mcy-dash"' "os.execvp(\"$out/libexec/mcy/mcy-dash.py\"" + --replace 'os.execvp("mcy-dash"' "os.execvp(\"$out/bin/mcy-dash\"" + substituteInPlace mcy-dash.py \ + --replace 'app.run(debug=True)' 'app.run(host="0.0.0.0",debug=True)' ''; # the build needs a bit of work... buildPhase = "true"; installPhase = '' - mkdir -p $out/bin $out/libexec/mcy - install mcy.py $out/bin/mcy && chmod +x $out/bin/mcy - install mcy-dash.py $out/libexec/mcy/mcy-dash.py + mkdir -p $out/bin $out/share/mcy/dash + install mcy.py $out/bin/mcy && chmod +x $out/bin/mcy + install mcy-dash.py $out/bin/mcy-dash && chmod +x $out/bin/mcy-dash + cp -r dash/. $out/share/mcy/dash/. ''; meta = { diff --git a/pkgs/applications/science/logic/symbiyosys/default.nix b/pkgs/applications/science/logic/symbiyosys/default.nix index 6b41a44a3583..48c48836b06d 100644 --- a/pkgs/applications/science/logic/symbiyosys/default.nix +++ b/pkgs/applications/science/logic/symbiyosys/default.nix @@ -1,17 +1,17 @@ { stdenv, fetchFromGitHub , bash, python3, yosys -, yices, boolector, aiger, abc-verifier +, yices, boolector, aiger }: stdenv.mkDerivation { pname = "symbiyosys"; - version = "2020.02.08"; + version = "2020.02.11"; src = fetchFromGitHub { owner = "YosysHQ"; repo = "SymbiYosys"; - rev = "500b526131f434b9679732fc89515dbed67c8d7d"; - sha256 = "1pwbirszc80r288x81nx032snniqgmc80i09bbha2i3zd0c3pj5h"; + rev = "0a7013017f9d583ef6cc8d10712f4bf11cf6e024"; + sha256 = "08xz8sgvs1qy7jxp8ma5yl49i6nl7k6bkhry4afdvwg3fvwis39c"; }; buildInputs = [ python3 ]; @@ -29,8 +29,8 @@ stdenv.mkDerivation { --replace ': "btormc"' ': "${boolector}/bin/btormc"' \ --replace ': "yosys"' ': "${yosys}/bin/yosys"' \ --replace ': "yosys-smtbmc"' ': "${yosys}/bin/yosys-smtbmc"' \ - --replace ': "yosys-abc"' ': "${abc-verifier}/bin/abc"' \ - --replace ': "aigbmc"' ': "${aiger}/bin/aigbmc"' \ + --replace ': "yosys-abc"' ': "${yosys}/bin/yosys-abc"' \ + --replace ': "aigbmc"' ': "${aiger}/bin/aigbmc"' \ ''; buildPhase = "true"; diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix index 53a31c656346..37223b5cb425 100644 --- a/pkgs/applications/virtualization/conmon/default.nix +++ b/pkgs/applications/virtualization/conmon/default.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "conmon"; - version = "2.0.11"; + version = "2.0.13"; src = fetchFromGitHub { owner = "containers"; repo = pname; rev = "v${version}"; - sha256 = "1mdnfkbbv41g590a1ja4rfw69z6kp03znyhikdmg6zqp4qsv32ib"; + sha256 = "1cp9hhanndr6c71g4hdxfgwk348vnnlgijkr12f7qmd5acwfl7jc"; }; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/applications/virtualization/virtualbox/extpack.nix b/pkgs/applications/virtualization/virtualbox/extpack.nix index c935a40c5400..ba8407e4a736 100644 --- a/pkgs/applications/virtualization/virtualbox/extpack.nix +++ b/pkgs/applications/virtualization/virtualbox/extpack.nix @@ -1,8 +1,9 @@ -{fetchurl, lib}: +{fetchurl, lib, virtualbox}: with lib; -let version = "6.0.14"; +let + inherit (virtualbox) version; in fetchurl rec { name = "Oracle_VM_VirtualBox_Extension_Pack-${version}.vbox-extpack"; @@ -11,7 +12,7 @@ fetchurl rec { # Manually sha256sum the extensionPack file, must be hex! # Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`. # Checksums can also be found at https://www.virtualbox.org/download/hashes/${version}/SHA256SUMS - let value = "c8a5cc980c9c94cdac3d94e23cf159c2433aae76b416dbfb5b1a918758f21e63"; + let value = "3b73798d776ff223ea8025b1a45001762f8d4e5bcd1ea61449773c1249935800"; in assert (builtins.stringLength value) == 64; value; meta = { diff --git a/pkgs/data/misc/unicode-character-database/default.nix b/pkgs/data/misc/unicode-character-database/default.nix index 5f50049856f3..1eda25fbe2b1 100644 --- a/pkgs/data/misc/unicode-character-database/default.nix +++ b/pkgs/data/misc/unicode-character-database/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "unicode-character-database"; - version = "12.1.0"; + version = "13.0.0"; src = fetchurl { url = "https://www.unicode.org/Public/zipped/${version}/UCD.zip"; - sha256 = "19m06iw0jl7lhlggcmghi12p6jld0qrmfpksgc243yn6sjh53fi5"; + sha256 = "0ld97ppkb5f8d5b3mlkxfwnr6f3inijyqias9xc4bbin9lxrfxig"; }; nativeBuildInputs = [ diff --git a/pkgs/data/themes/ant-theme/ant-bloody.nix b/pkgs/data/themes/ant-theme/ant-bloody.nix new file mode 100644 index 000000000000..4ec1c3281d55 --- /dev/null +++ b/pkgs/data/themes/ant-theme/ant-bloody.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchurl, gtk-engine-murrine }: + +let + themeName = "Ant-Bloody"; +in +stdenv.mkDerivation rec { + pname = "ant-bloody-theme"; + version = "1.3.0"; + + src = fetchurl { + url = "https://github.com/EliverLara/${themeName}/releases/download/v${version}/${themeName}.tar"; + sha256 = "0rrz50kmzjmqj17hvrw67pbaclwxv85i5m08s7842iky6dnn5z8s"; + }; + + propagatedUserEnvPkgs = [ + gtk-engine-murrine + ]; + + dontBuild = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/themes/${themeName} + cp -a * $out/share/themes/${themeName} + rm -r $out/share/themes/${themeName}/{Art,LICENSE,README.md,gtk-2.0/render-assets.sh} + runHook postInstall + ''; + + outputHashAlgo = "sha256"; + outputHashMode = "recursive"; + outputHash = "0v5pdhysa2460sh400cpq11smcfsi9g1lbfzx8nj1w5a21d811cz"; + + meta = with stdenv.lib; { + description = "Bloody variant of the Ant theme"; + homepage = "https://github.com/EliverLara/${themeName}"; + license = licenses.gpl3; + platforms = platforms.all; + maintainers = with maintainers; [ alexarice ]; + }; +} diff --git a/pkgs/data/themes/ant-theme/ant-dracula.nix b/pkgs/data/themes/ant-theme/ant-dracula.nix new file mode 100644 index 000000000000..baeafb255275 --- /dev/null +++ b/pkgs/data/themes/ant-theme/ant-dracula.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchurl, gtk-engine-murrine }: + +let + themeName = "Ant-Dracula"; +in +stdenv.mkDerivation rec { + pname = "ant-dracula-theme"; + version = "1.3.0"; + + src = fetchurl { + url = "https://github.com/EliverLara/${themeName}/releases/download/v${version}/${themeName}.tar"; + sha256 = "00b8w69xapqy8kc7zqwlfz1xpld6hibbh35djvhcnd905gzzymkd"; + }; + + propagatedUserEnvPkgs = [ + gtk-engine-murrine + ]; + + dontBuild = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/themes/${themeName} + cp -a * $out/share/themes/${themeName} + rm -r $out/share/themes/${themeName}/{Art,LICENSE,README.md,gtk-2.0/render-assets.sh} + runHook postInstall + ''; + + outputHashAlgo = "sha256"; + outputHashMode = "recursive"; + outputHash = "1a9mkxfb0zixx8s05h15lhnnzygh2qzc8k2q10i0khx90bf72x14"; + + meta = with stdenv.lib; { + description = "Dracula variant of the Ant theme"; + homepage = "https://github.com/EliverLara/${themeName}"; + license = licenses.gpl3; + platforms = platforms.all; + maintainers = with maintainers; [ alexarice ]; + }; +} diff --git a/pkgs/data/themes/ant-theme/ant-nebula.nix b/pkgs/data/themes/ant-theme/ant-nebula.nix new file mode 100644 index 000000000000..75aeb91f9022 --- /dev/null +++ b/pkgs/data/themes/ant-theme/ant-nebula.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchurl, gtk-engine-murrine }: + +let + themeName = "Ant-Nebula"; +in +stdenv.mkDerivation rec { + pname = "ant-nebula-theme"; + version = "1.3.0"; + + src = fetchurl { + url = "https://github.com/EliverLara/${themeName}/releases/download/v${version}/${themeName}.tar"; + sha256 = "1xpgw577nmgjk547mg2vvv0gdai60srgncykm5pb1w8dnlk69jbz"; + }; + + propagatedUserEnvPkgs = [ + gtk-engine-murrine + ]; + + dontBuild = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/themes/${themeName} + cp -a * $out/share/themes/${themeName} + rm -r $out/share/themes/${themeName}/{Art,LICENSE,README.md,gtk-2.0/render-assets.sh} + runHook postInstall + ''; + + outputHashAlgo = "sha256"; + outputHashMode = "recursive"; + outputHash = "1lmlc4fvjnp05gshc0arfysh8r1xxzpzdv3j0bk40mjf3d59814c"; + + meta = with stdenv.lib; { + description = "Nebula variant of the Ant theme"; + homepage = "https://github.com/EliverLara/${themeName}"; + license = licenses.gpl3; + platforms = platforms.all; + maintainers = with maintainers; [ alexarice ]; + }; +} diff --git a/pkgs/data/themes/ant-theme/default.nix b/pkgs/data/themes/ant-theme/ant.nix index c60fb4d33558..0908883e20ec 100644 --- a/pkgs/data/themes/ant-theme/default.nix +++ b/pkgs/data/themes/ant-theme/ant.nix @@ -1,11 +1,14 @@ { stdenv, fetchurl, gtk-engine-murrine }: +let + themeName = "Ant"; +in stdenv.mkDerivation rec { pname = "ant-theme"; version = "1.3.0"; src = fetchurl { - url = "https://github.com/EliverLara/Ant/releases/download/v${version}/Ant.tar"; + url = "https://github.com/EliverLara/${themeName}/releases/download/v${version}/${themeName}.tar"; sha256 = "1r795v96ywzcb4dq08q2fdbmfia32g36cc512mhy41s8fb1a47dz"; }; @@ -17,21 +20,21 @@ stdenv.mkDerivation rec { installPhase = '' runHook preInstall - mkdir -p $out/share/themes/Ant - cp -a * $out/share/themes/Ant - rm -r $out/share/themes/Ant/{Art,LICENSE,README.md,gtk-2.0/render-assets.sh} + mkdir -p $out/share/themes/${themeName} + cp -a * $out/share/themes/${themeName} + rm -r $out/share/themes/${themeName}/{Art,LICENSE,README.md,gtk-2.0/render-assets.sh} runHook postInstall ''; outputHashAlgo = "sha256"; outputHashMode = "recursive"; - outputHash = "1gpacrmi5y87shp39jgy78n0ca2xdpvbqfh0mgldlxx99ca9rvvy"; + outputHash = "07iv4jangqnzrvjr749vl3x31z7dxds51bq1bhz5acbjbwf25wjf"; meta = with stdenv.lib; { description = "A flat and light theme with a modern look"; - homepage = https://github.com/EliverLara/Ant; + homepage = "https://github.com/EliverLara/${themeName}"; license = licenses.gpl3; platforms = platforms.all; - maintainers = [ ]; + maintainers = with maintainers; [ alexarice ]; }; } diff --git a/pkgs/data/themes/matcha/default.nix b/pkgs/data/themes/matcha/default.nix index 05292e97772f..c2274c57bbf4 100644 --- a/pkgs/data/themes/matcha/default.nix +++ b/pkgs/data/themes/matcha/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "matcha"; - version = "2020-03-11"; + version = "2020-03-15"; src = fetchFromGitHub { owner = "vinceliuice"; repo = pname; rev = version; - sha256 = "1np2964g5f0vwdvfmi8gidsk9jj7v43nkshiqnfdbvmwa85ldpfl"; + sha256 = "0hj1hpg9p46hyfcssd5ac7m599zkq7nrbwdwfbp98g5rw4fq8jaw"; }; buildInputs = [ gdk-pixbuf librsvg ]; diff --git a/pkgs/development/compilers/elm/default.nix b/pkgs/development/compilers/elm/default.nix index 1d61b8331493..ea84edd5e1db 100644 --- a/pkgs/development/compilers/elm/default.nix +++ b/pkgs/development/compilers/elm/default.nix @@ -42,6 +42,7 @@ let doCheck = false; jailbreak = true; })); + elmi-to-json = justStaticExecutables (overrideCabal (self.callPackage ./packages/elmi-to-json.nix {}) (drv: { prePatch = '' substituteInPlace package.yaml --replace "- -Werror" "" @@ -50,6 +51,23 @@ let jailbreak = true; })); + elm-instrument = justStaticExecutables (overrideCabal (self.callPackage ./packages/elm-instrument.nix {}) (drv: { + patches = [( + # GHC 8.8.1 and Cabal >= 1.25.0 support + # https://github.com/zwilias/elm-instrument/pull/3 + fetchpatch { + url = "https://github.com/turboMaCk/elm-instrument/commit/4272db2aea742c8b54509e536fa4f35d04f95da5.patch"; + sha256 = "1d1lc43lp3x5jfhlyb1b7na7nj1g1i1vc1np26pcisg9c2s7gjz6"; + } + )]; + prePatch = '' + sed "s/desc <-.*/let desc = \"${drv.version}\"/g" Setup.hs --in-place + ''; + jailbreak = true; + # Tests are failing because of missing instances for Eq and Show type classes + doCheck = false; + })); + inherit fetchElmDeps; elmVersion = elmPkgs.elm.version; }; @@ -73,9 +91,29 @@ let inherit nodejs pkgs; inherit (stdenv.hostPlatform) system; }; - in with hsPkgs.elmPkgs; { + in with hsPkgs.elmPkgs; rec { elm-test = patchBinwrap [elmi-to-json] nodePkgs.elm-test; elm-verify-examples = patchBinwrap [elmi-to-json] nodePkgs.elm-verify-examples; + elm-coverage = + let patched = patchBinwrap [elm elmi-to-json] nodePkgs.elm-coverage; + in patched.override { + preRebuild = '' + sed 's/\"install\".*/\"install\":\"echo no-op\"/g' --in-place package.json + + # This should not be needed (thanks to binwrap* being nooped) but for some reason it still needs to be done + # in case of just this package + sed 's/\"install\".*/\"install\":\"echo no-op\",/g' --in-place node_modules/elmi-to-json/package.json + + rm node_modules/elm/install.js + echo "console.log('no-op');" > node_modules/elm/install.js + ''; + + # Link Elm instrument binary + postInstall = patched.postInstall + '' + mkdir -p unpacked_bin + ln -sf ${elm-instrument}/bin/elm-instrument unpacked_bin/elm-instrument + ''; + }; elm-language-server = nodePkgs."@elm-tooling/elm-language-server"; inherit (nodePkgs) elm-doc-preview elm-live elm-upgrade elm-xref elm-analyse; diff --git a/pkgs/development/compilers/elm/packages/elm-instrument.nix b/pkgs/development/compilers/elm/packages/elm-instrument.nix new file mode 100644 index 000000000000..bd7690162277 --- /dev/null +++ b/pkgs/development/compilers/elm/packages/elm-instrument.nix @@ -0,0 +1,34 @@ +{ mkDerivation, ansi-terminal, ansi-wl-pprint, base, binary +, bytestring, Cabal, cmark, containers, directory, elm-format +, fetchgit, filepath, free, HUnit, indents, json, mtl +, optparse-applicative, parsec, process, QuickCheck, quickcheck-io +, split, stdenv, tasty, tasty-golden, tasty-hunit, tasty-quickcheck +, text, elm +}: +mkDerivation { + pname = "elm-instrument"; + version = "0.0.7"; + src = fetchgit { + url = "https://github.com/zwilias/elm-instrument.git"; + sha256 = "14yfzwsyvgc6rzn19sdmwk2mc1vma9hcljnmjnmlig8mp0271v56"; + rev = "31b527e405a6afdb25bb87ad7bd14f979e65cff7"; + fetchSubmodules = true; + }; + isLibrary = true; + isExecutable = true; + setupHaskellDepends = [ base Cabal directory filepath process ]; + libraryHaskellDepends = [ + ansi-terminal ansi-wl-pprint base binary bytestring containers + directory filepath free indents json mtl optparse-applicative + parsec process split text + ]; + executableHaskellDepends = [ base ]; + testHaskellDepends = [ + base cmark containers elm-format HUnit mtl parsec QuickCheck + quickcheck-io split tasty tasty-golden tasty-hunit tasty-quickcheck + text + ]; + homepage = "http://elm-lang.org"; + description = "Instrumentation library for Elm"; + license = stdenv.lib.licenses.bsd3; +} diff --git a/pkgs/development/compilers/elm/packages/elmi-to-json.nix b/pkgs/development/compilers/elm/packages/elmi-to-json.nix index 87b02f013f85..eaed18c5297b 100644 --- a/pkgs/development/compilers/elm/packages/elmi-to-json.nix +++ b/pkgs/development/compilers/elm/packages/elmi-to-json.nix @@ -5,11 +5,11 @@ }: mkDerivation { pname = "elmi-to-json"; - version = "1.2.0"; + version = "1.3.0"; src = fetchgit { - url = "https://github.com/stoeffel/elmi-to-json.git"; - sha256 = "1kxai87h2g0749yq0fkxwk3xaavydraaivhnavbwr62q2hw4wrj7"; - rev = "af08ceafe742a252f1f1f3c229b0ce3b3e00084d"; + url = "https://github.com/stoeffel/elmi-to-json"; + sha256 = "11j56vcyhijkwi9hzggkwwmxlhzhgm67ab2m7kxkhcbbqgpasa8n"; + rev = "ae40d1aa1e3d6878f2af514e611d44890e7abc1e"; fetchSubmodules = true; }; isLibrary = true; diff --git a/pkgs/development/compilers/elm/packages/node-composition.nix b/pkgs/development/compilers/elm/packages/node-composition.nix index 4add754b5999..1ffd758ac82e 100644 --- a/pkgs/development/compilers/elm/packages/node-composition.nix +++ b/pkgs/development/compilers/elm/packages/node-composition.nix @@ -1,4 +1,4 @@ -# This file has been generated by node2nix 1.8.0. Do not edit! +# This file has been generated by node2nix 1.7.0. Do not edit! {pkgs ? import <nixpkgs> { inherit system; diff --git a/pkgs/development/compilers/elm/packages/node-packages.json b/pkgs/development/compilers/elm/packages/node-packages.json index e129a0ffaec4..643aad746fa2 100644 --- a/pkgs/development/compilers/elm/packages/node-packages.json +++ b/pkgs/development/compilers/elm/packages/node-packages.json @@ -1,10 +1,11 @@ [ - "elm-test", - "elm-verify-examples", - "elm-doc-preview", - "elm-upgrade", "elm-analyse", + "elm-coverage", + "elm-doc-preview", + "@elm-tooling/elm-language-server", "elm-live", - "elm-xref", - "@elm-tooling/elm-language-server" + "elm-test", + "elm-upgrade", + "elm-verify-examples", + "elm-xref" ] diff --git a/pkgs/development/compilers/elm/packages/node-packages.nix b/pkgs/development/compilers/elm/packages/node-packages.nix index 70aa04987c68..46920bf62b74 100644 --- a/pkgs/development/compilers/elm/packages/node-packages.nix +++ b/pkgs/development/compilers/elm/packages/node-packages.nix @@ -1,4 +1,4 @@ -# This file has been generated by node2nix 1.8.0. Do not edit! +# This file has been generated by node2nix 1.7.0. Do not edit! {nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}: @@ -121,6 +121,15 @@ let sha512 = "85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA=="; }; }; + "abbrev-1.1.1" = { + name = "abbrev"; + packageName = "abbrev"; + version = "1.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz"; + sha512 = "nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="; + }; + }; "accepts-1.3.7" = { name = "accepts"; packageName = "accepts"; @@ -157,6 +166,15 @@ let sha512 = "1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg=="; }; }; + "ansi-regex-5.0.0" = { + name = "ansi-regex"; + packageName = "ansi-regex"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz"; + sha512 = "bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg=="; + }; + }; "ansi-styles-2.2.1" = { name = "ansi-styles"; packageName = "ansi-styles"; @@ -283,6 +301,15 @@ let sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"; }; }; + "astral-regex-1.0.0" = { + name = "astral-regex"; + packageName = "astral-regex"; + version = "1.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz"; + sha512 = "+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg=="; + }; + }; "async-limiter-1.0.1" = { name = "async-limiter"; packageName = "async-limiter"; @@ -661,6 +688,15 @@ let sha512 = "PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA=="; }; }; + "cliui-6.0.0" = { + name = "cliui"; + packageName = "cliui"; + version = "6.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz"; + sha512 = "t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ=="; + }; + }; "clone-response-1.0.2" = { name = "clone-response"; packageName = "clone-response"; @@ -895,6 +931,15 @@ let sha1 = "a3bbb302db2297cbea3c04edf36941f4613aa399"; }; }; + "cross-spawn-5.1.0" = { + name = "cross-spawn"; + packageName = "cross-spawn"; + version = "5.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz"; + sha1 = "e8bd0efee58fcff6f8f94510a0a554bbfa235449"; + }; + }; "cross-spawn-6.0.5" = { name = "cross-spawn"; packageName = "cross-spawn"; @@ -1129,6 +1174,15 @@ let sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d"; }; }; + "elm-0.19.1" = { + name = "elm"; + packageName = "elm"; + version = "0.19.1"; + src = fetchurl { + url = "https://registry.npmjs.org/elm/-/elm-0.19.1.tgz"; + sha512 = "rehOtJKZvoYDddlrd7AX5NAf0H+LUllnBg3AHaeaIOKWzw4W316d7Bkhlbo7aSG+hVUVWP2ihKwyYkDi589TfA=="; + }; + }; "elm-analyse-git://github.com/elm-tooling/elm-analyse#1a665a6e540d7d11b29b3c5e3c52089704325d9c" = { name = "elm-analyse"; packageName = "elm-analyse"; @@ -1184,6 +1238,15 @@ let sha512 = "CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA=="; }; }; + "emoji-regex-8.0.0" = { + name = "emoji-regex"; + packageName = "emoji-regex"; + version = "8.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz"; + sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="; + }; + }; "encodeurl-1.0.2" = { name = "encodeurl"; packageName = "encodeurl"; @@ -1220,13 +1283,13 @@ let sha512 = "QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA=="; }; }; - "es6-promisify-6.0.2" = { + "es6-promisify-6.1.0" = { name = "es6-promisify"; packageName = "es6-promisify"; - version = "6.0.2"; + version = "6.1.0"; src = fetchurl { - url = "https://registry.npmjs.org/es6-promisify/-/es6-promisify-6.0.2.tgz"; - sha512 = "eO6vFm0JvqGzjWIQA6QVKjxpmELfhWbDUWHm1rPfIbn55mhKPiAa5xpLmQWJrNa629ZIeQ8ZvMAi13kvrjK6Mg=="; + url = "https://registry.npmjs.org/es6-promisify/-/es6-promisify-6.1.0.tgz"; + sha512 = "jCsk2fpfEFusVv1MDkF4Uf0hAzIKNDMgR6LyOIw6a3jwkN1sCgWzuwgnsHY9YSQ8n8P31HoncvE0LC44cpWTrw=="; }; }; "escape-html-1.0.3" = { @@ -1481,6 +1544,15 @@ let sha1 = "7afbd00f8f08c5b622f97cda6f714173d547bb3f"; }; }; + "find-0.2.9" = { + name = "find"; + packageName = "find"; + version = "0.2.9"; + src = fetchurl { + url = "https://registry.npmjs.org/find/-/find-0.2.9.tgz"; + sha1 = "4b73f1ff9e56ad91b76e716407fe5ffe6554bb8c"; + }; + }; "find-elm-dependencies-2.0.2" = { name = "find-elm-dependencies"; packageName = "find-elm-dependencies"; @@ -1508,6 +1580,15 @@ let sha512 = "1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg=="; }; }; + "find-up-4.1.0" = { + name = "find-up"; + packageName = "find-up"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz"; + sha512 = "PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw=="; + }; + }; "firstline-1.2.0" = { name = "firstline"; packageName = "firstline"; @@ -1607,6 +1688,15 @@ let sha1 = "337352bded4a0b714f3eb84de8cea765e9d37600"; }; }; + "fs-extra-4.0.3" = { + name = "fs-extra"; + packageName = "fs-extra"; + version = "4.0.3"; + src = fetchurl { + url = "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz"; + sha512 = "q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg=="; + }; + }; "fs-extra-5.0.0" = { name = "fs-extra"; packageName = "fs-extra"; @@ -2219,6 +2309,15 @@ let sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f"; }; }; + "is-fullwidth-code-point-3.0.0" = { + name = "is-fullwidth-code-point"; + packageName = "is-fullwidth-code-point"; + version = "3.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz"; + sha512 = "zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="; + }; + }; "is-glob-4.0.1" = { name = "is-glob"; packageName = "is-glob"; @@ -2561,6 +2660,15 @@ let sha512 = "7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A=="; }; }; + "locate-path-5.0.0" = { + name = "locate-path"; + packageName = "locate-path"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz"; + sha512 = "t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g=="; + }; + }; "lodash-4.17.15" = { name = "lodash"; packageName = "lodash"; @@ -2849,6 +2957,15 @@ let sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903"; }; }; + "moment-2.24.0" = { + name = "moment"; + packageName = "moment"; + version = "2.24.0"; + src = fetchurl { + url = "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz"; + sha512 = "bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg=="; + }; + }; "ms-2.0.0" = { name = "ms"; packageName = "ms"; @@ -2948,6 +3065,15 @@ let sha512 = "z9xN2ibI6P0UylFadN7oMcIMsoTeCENC0rZyRM5MVK9AqzSPx+uGqKG6KMPeC/laOV4wOGZq/GH0PTstRNSqOA=="; }; }; + "nopt-1.0.10" = { + name = "nopt"; + packageName = "nopt"; + version = "1.0.10"; + src = fetchurl { + url = "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz"; + sha1 = "6ddd21bd2a31417b92727dd585f8a6f37608ebee"; + }; + }; "normalize-path-2.1.1" = { name = "normalize-path"; packageName = "normalize-path"; @@ -3236,6 +3362,15 @@ let sha512 = "x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ=="; }; }; + "p-locate-4.1.0" = { + name = "p-locate"; + packageName = "p-locate"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz"; + sha512 = "R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A=="; + }; + }; "p-timeout-2.0.1" = { name = "p-timeout"; packageName = "p-timeout"; @@ -3290,6 +3425,15 @@ let sha1 = "ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"; }; }; + "path-exists-4.0.0" = { + name = "path-exists"; + packageName = "path-exists"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"; + sha512 = "ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="; + }; + }; "path-is-absolute-1.0.1" = { name = "path-is-absolute"; packageName = "path-is-absolute"; @@ -4064,6 +4208,15 @@ let sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q=="; }; }; + "slice-ansi-2.1.0" = { + name = "slice-ansi"; + packageName = "slice-ansi"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz"; + sha512 = "Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ=="; + }; + }; "snapdragon-0.8.2" = { name = "snapdragon"; packageName = "snapdragon"; @@ -4208,6 +4361,15 @@ let sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w=="; }; }; + "string-width-4.2.0" = { + name = "string-width"; + packageName = "string-width"; + version = "4.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz"; + sha512 = "zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg=="; + }; + }; "string.prototype.trimleft-2.1.1" = { name = "string.prototype.trimleft"; packageName = "string.prototype.trimleft"; @@ -4262,6 +4424,15 @@ let sha512 = "DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA=="; }; }; + "strip-ansi-6.0.0" = { + name = "strip-ansi"; + packageName = "strip-ansi"; + version = "6.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz"; + sha512 = "AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w=="; + }; + }; "strip-eof-1.0.0" = { name = "strip-eof"; packageName = "strip-eof"; @@ -4325,6 +4496,15 @@ let sha512 = "oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g=="; }; }; + "table-5.4.6" = { + name = "table"; + packageName = "table"; + version = "5.4.6"; + src = fetchurl { + url = "https://registry.npmjs.org/table/-/table-5.4.6.tgz"; + sha512 = "wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug=="; + }; + }; "tar-4.4.13" = { name = "tar"; packageName = "tar"; @@ -4397,6 +4577,15 @@ let sha1 = "8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7"; }; }; + "tmp-0.0.33" = { + name = "tmp"; + packageName = "tmp"; + version = "0.0.33"; + src = fetchurl { + url = "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz"; + sha512 = "jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw=="; + }; + }; "tmp-0.1.0" = { name = "tmp"; packageName = "tmp"; @@ -4469,6 +4658,15 @@ let sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw=="; }; }; + "touch-3.1.0" = { + name = "touch"; + packageName = "touch"; + version = "3.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz"; + sha512 = "WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA=="; + }; + }; "tough-cookie-2.4.3" = { name = "tough-cookie"; packageName = "tough-cookie"; @@ -4622,6 +4820,15 @@ let sha512 = "NG1h/MdGIX3HzyqMjyj1laBCmlPYhcO4xEy7gEqqzGiSLw7XqDQCnY4nYSn5XSaH8mQ6TFkaujrO8d/PIZN85A=="; }; }; + "upgrade-1.1.0" = { + name = "upgrade"; + packageName = "upgrade"; + version = "1.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/upgrade/-/upgrade-1.1.0.tgz"; + sha1 = "4a50875ec5c715d19379799f0590a0e796958f61"; + }; + }; "uri-js-4.2.2" = { name = "uri-js"; packageName = "uri-js"; @@ -4838,6 +5045,15 @@ let sha512 = "QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q=="; }; }; + "wrap-ansi-6.2.0" = { + name = "wrap-ansi"; + packageName = "wrap-ansi"; + version = "6.2.0"; + src = fetchurl { + url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz"; + sha512 = "r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA=="; + }; + }; "wrappy-1.0.2" = { name = "wrappy"; packageName = "wrappy"; @@ -4946,6 +5162,15 @@ let sha512 = "AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw=="; }; }; + "yargs-15.3.1" = { + name = "yargs"; + packageName = "yargs"; + version = "15.3.1"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz"; + sha512 = "92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA=="; + }; + }; "yargs-parser-13.1.2" = { name = "yargs-parser"; packageName = "yargs-parser"; @@ -4955,6 +5180,15 @@ let sha512 = "3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg=="; }; }; + "yargs-parser-18.1.1" = { + name = "yargs-parser"; + packageName = "yargs-parser"; + version = "18.1.1"; + src = fetchurl { + url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.1.tgz"; + sha512 = "KRHEsOM16IX7XuLnMOqImcPNbLVXMNHYAoFc3BKR8Ortl5gzDbtXvvEoGx9imk5E+X1VeNKNlcHr8B8vi+7ipA=="; + }; + }; "yn-4.0.0" = { name = "yn"; packageName = "yn"; @@ -4967,180 +5201,210 @@ let }; in { - elm-test = nodeEnv.buildNodePackage { - name = "elm-test"; - packageName = "elm-test"; - version = "0.19.1-revision2"; + elm-analyse = nodeEnv.buildNodePackage { + name = "elm-analyse"; + packageName = "elm-analyse"; + version = "0.16.5"; src = fetchurl { - url = "https://registry.npmjs.org/elm-test/-/elm-test-0.19.1-revision2.tgz"; - sha512 = "zVs2mVeyIE+K9y7/8b333h5xRMDWAoqbBDm7ThLDhyTi7ICxeL3t5uOS4KZCrRk9+4sP6+voSbcBlgr46Q+GiQ=="; + url = "https://registry.npmjs.org/elm-analyse/-/elm-analyse-0.16.5.tgz"; + sha512 = "I7dgGFOc+mYDcDuyo1/HcIn3E5MiMbocStNzivsPSjCUviuEieHdDKZmJJ9uM3IdCu0fdBmRNWQBSOXtXrgzKg=="; }; dependencies = [ - sources."@types/color-name-1.1.1" + sources."accepts-1.3.7" sources."ajv-6.12.0" - sources."ansi-styles-4.2.1" - sources."anymatch-3.1.1" + sources."array-flatten-1.1.1" sources."asn1-0.2.4" sources."assert-plus-1.0.0" + sources."async-limiter-1.0.1" sources."asynckit-0.4.0" sources."aws-sign2-0.7.0" sources."aws4-1.9.1" - sources."balanced-match-1.0.0" + sources."babel-runtime-6.18.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.2" - sources."brace-expansion-1.1.11" - sources."braces-3.0.2" - sources."buffers-0.1.1" + sources."body-parser-1.19.0" + sources."bytes-3.1.0" sources."caseless-0.12.0" - sources."chainsaw-0.1.0" - sources."chalk-3.0.0" - sources."chokidar-3.3.0" - sources."chownr-1.1.4" - 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."concat-stream-1.5.2" + sources."content-disposition-0.5.2" + sources."content-type-1.0.4" + sources."cookie-0.3.1" + sources."cookie-signature-1.0.6" + sources."core-js-2.6.11" sources."core-util-is-1.0.2" - sources."cross-spawn-7.0.1" sources."dashdash-1.14.1" + sources."debug-2.6.9" sources."delayed-stream-1.0.0" + sources."depd-1.1.2" + sources."destroy-1.0.4" sources."ecc-jsbn-0.1.2" - sources."elmi-to-json-1.3.0" + sources."ee-first-1.1.1" + sources."encodeurl-1.0.2" + sources."escape-html-1.0.3" + sources."etag-1.8.1" + (sources."express-4.16.3" // { + dependencies = [ + sources."body-parser-1.18.2" + sources."bytes-3.0.0" + sources."http-errors-1.6.3" + sources."iconv-lite-0.4.19" + sources."qs-6.5.1" + (sources."raw-body-2.3.2" // { + dependencies = [ + sources."depd-1.1.1" + sources."http-errors-1.6.2" + sources."setprototypeof-1.0.3" + ]; + }) + sources."setprototypeof-1.1.0" + sources."statuses-1.4.0" + ]; + }) + (sources."express-ws-2.0.0" // { + dependencies = [ + sources."ws-1.1.5" + ]; + }) sources."extend-3.0.2" sources."extsprintf-1.3.0" sources."fast-deep-equal-3.1.1" sources."fast-json-stable-stringify-2.1.0" - sources."fill-range-7.0.1" - (sources."find-elm-dependencies-2.0.2" // { + (sources."finalhandler-1.1.1" // { dependencies = [ - sources."firstline-1.2.0" + sources."statuses-1.4.0" ]; }) - sources."find-parent-dir-0.3.0" - sources."firstline-2.0.2" + sources."find-0.2.7" sources."forever-agent-0.6.1" sources."form-data-2.3.3" - sources."fs-extra-8.1.0" - sources."fs-minipass-1.2.7" - sources."fs.realpath-1.0.0" - sources."fsevents-2.1.2" + sources."forwarded-0.1.2" + sources."fresh-0.5.2" + sources."fs-extra-2.0.0" sources."getpass-0.1.7" - 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-4.0.0" + sources."http-errors-1.7.2" sources."http-signature-1.2.0" - sources."inflight-1.0.6" - sources."inherits-2.0.4" - sources."is-binary-path-2.1.0" - sources."is-extglob-2.1.1" - sources."is-glob-4.0.1" - sources."is-number-7.0.0" + sources."iconv-lite-0.4.24" + sources."inherits-2.0.3" + sources."ipaddr.js-1.9.1" + sources."is-stream-1.1.0" sources."is-typedarray-1.0.0" - sources."isexe-2.0.0" + sources."is-wsl-1.1.0" + sources."isarray-1.0.0" sources."isstream-0.1.2" sources."jsbn-0.1.1" sources."json-schema-0.2.3" sources."json-schema-traverse-0.4.1" sources."json-stringify-safe-5.0.1" - sources."jsonfile-4.0.0" + sources."jsonfile-2.4.0" sources."jsprim-1.4.1" sources."lodash-4.17.15" + sources."media-typer-0.3.0" + sources."merge-descriptors-1.0.1" + sources."methods-1.1.2" + sources."mime-1.4.1" sources."mime-db-1.43.0" sources."mime-types-2.1.26" - sources."minimatch-3.0.4" - sources."minimist-1.2.5" - sources."minipass-2.9.0" - sources."minizlib-1.3.3" - (sources."mkdirp-0.5.1" // { + sources."minimist-1.2.0" + sources."ms-2.0.0" + sources."negotiator-0.6.2" + sources."node-watch-0.5.5" + sources."oauth-sign-0.9.0" + sources."on-finished-2.3.0" + sources."opn-5.4.0" + sources."options-0.0.6" + sources."os-homedir-1.0.2" + sources."os-tmpdir-1.0.2" + sources."parseurl-1.3.3" + sources."path-to-regexp-0.1.7" + sources."performance-now-2.1.0" + sources."process-nextick-args-1.0.7" + sources."proxy-addr-2.0.6" + sources."psl-1.7.0" + sources."punycode-2.1.1" + sources."qs-6.7.0" + sources."range-parser-1.2.1" + sources."raw-body-2.4.0" + sources."readable-stream-2.0.6" + sources."regenerator-runtime-0.9.6" + (sources."request-2.88.0" // { dependencies = [ - sources."minimist-0.0.8" + sources."qs-6.5.2" + sources."safe-buffer-5.2.0" ]; }) - sources."murmur-hash-js-1.0.0" - sources."mustache-3.2.1" - sources."nice-try-1.0.5" - (sources."node-elm-compiler-5.0.4" // { + sources."safe-buffer-5.1.1" + sources."safer-buffer-2.1.2" + (sources."send-0.16.2" // { 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" + sources."http-errors-1.6.3" + sources."setprototypeof-1.1.0" + sources."statuses-1.4.0" ]; }) - sources."normalize-path-3.0.0" - sources."oauth-sign-0.9.0" - sources."once-1.4.0" - sources."path-is-absolute-1.0.1" - sources."path-key-3.1.1" - sources."performance-now-2.1.0" - sources."picomatch-2.2.1" - sources."psl-1.7.0" - sources."punycode-2.1.1" - sources."qs-6.5.2" - sources."readdirp-3.2.0" - sources."request-2.88.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-2.0.0" - sources."shebang-regex-3.0.0" - sources."split-1.0.1" + sources."serve-static-1.13.2" + sources."setprototypeof-1.1.1" sources."sshpk-1.16.1" - sources."stealthy-require-1.1.1" - sources."supports-color-7.1.0" - sources."tar-4.4.13" - sources."temp-0.9.1" - sources."through-2.3.8" - sources."to-regex-range-5.0.1" - sources."tough-cookie-2.5.0" - sources."traverse-0.3.9" + sources."statuses-1.5.0" + sources."string_decoder-0.10.31" + sources."sums-0.2.4" + sources."through2-2.0.1" + sources."tmp-0.0.31" + sources."toidentifier-1.0.0" + (sources."tough-cookie-2.4.3" // { + dependencies = [ + sources."punycode-1.4.1" + ]; + }) + sources."traverse-chain-0.1.0" sources."tunnel-agent-0.6.0" sources."tweetnacl-0.14.5" - sources."universalify-0.1.2" - sources."unzip-stream-0.3.0" + sources."type-is-1.6.18" + sources."typedarray-0.0.6" + sources."ultron-1.0.2" + sources."unpipe-1.0.0" sources."uri-js-4.2.2" + sources."util-deprecate-1.0.2" + sources."utils-merge-1.0.1" sources."uuid-3.4.0" + sources."vary-1.1.2" sources."verror-1.10.0" - sources."which-2.0.1" - sources."wrappy-1.0.2" - sources."xmlbuilder-13.0.2" - sources."yallist-3.1.1" + (sources."ws-3.3.1" // { + dependencies = [ + sources."ultron-1.1.1" + ]; + }) + sources."xtend-4.0.2" ]; buildInputs = globalBuildInputs; meta = { - description = "Run elm-test suites."; - homepage = "https://github.com/rtfeldman/node-test-runner#readme"; - license = "BSD-3-Clause"; + description = "A tool that allows you analyse your Elm code and identifies deficiencies and best practices."; + license = "MIT"; }; production = true; bypassCache = true; reconstructLock = true; }; - elm-verify-examples = nodeEnv.buildNodePackage { - name = "elm-verify-examples"; - packageName = "elm-verify-examples"; - version = "5.0.0"; + elm-coverage = nodeEnv.buildNodePackage { + name = "elm-coverage"; + packageName = "elm-coverage"; + version = "0.3.0"; src = fetchurl { - url = "https://registry.npmjs.org/elm-verify-examples/-/elm-verify-examples-5.0.0.tgz"; - sha512 = "dAOv+U9hXZ0IRGx19mkpCAdf5rUwoJWlzFmcR2gvOzE/QjZUSlPh3e0IIDAfGUuEF8DjfE5CTe31fNtIkkd2rQ=="; + url = "https://registry.npmjs.org/elm-coverage/-/elm-coverage-0.3.0.tgz"; + sha512 = "WHlO9LCu6DLzlIPR28GqcCgtyy6ZjRKBR+c6yYwy7m2o0D0buuLsr3wsZxJBjZYmwregmWRseUOM3DzHmoiIzg=="; }; dependencies = [ + sources."@types/color-name-1.1.1" + sources."abbrev-1.1.1" sources."ajv-6.12.0" sources."ansi-regex-4.1.0" sources."ansi-styles-3.2.1" sources."anymatch-3.1.1" sources."asn1-0.2.4" sources."assert-plus-1.0.0" + sources."astral-regex-1.0.0" sources."asynckit-0.4.0" sources."aws-sign2-0.7.0" sources."aws4-1.9.1" @@ -5156,29 +5420,43 @@ in sources."camelcase-5.3.1" sources."caseless-0.12.0" sources."chainsaw-0.1.0" - sources."chalk-2.4.2" + (sources."chalk-2.4.2" // { + dependencies = [ + sources."supports-color-5.5.0" + ]; + }) sources."chokidar-3.2.1" sources."chownr-1.1.4" - sources."cliui-5.0.0" + (sources."cliui-6.0.0" // { + dependencies = [ + sources."ansi-regex-5.0.0" + sources."emoji-regex-8.0.0" + sources."is-fullwidth-code-point-3.0.0" + sources."string-width-4.2.0" + sources."strip-ansi-6.0.0" + ]; + }) sources."color-convert-1.9.3" sources."color-name-1.1.3" 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-5.1.0" sources."dashdash-1.14.1" sources."decamelize-1.2.0" sources."delayed-stream-1.0.0" sources."ecc-jsbn-0.1.2" + sources."elm-0.19.1" (sources."elm-test-0.19.1" // { dependencies = [ + (sources."cross-spawn-7.0.0" // { + dependencies = [ + sources."which-1.3.1" + ]; + }) sources."fs-extra-8.1.0" - sources."has-flag-4.0.0" - sources."supports-color-7.1.0" + sources."minimist-1.2.5" + sources."which-2.0.1" ]; }) sources."elmi-to-json-1.2.0" @@ -5189,17 +5467,18 @@ in sources."fast-deep-equal-3.1.1" sources."fast-json-stable-stringify-2.1.0" sources."fill-range-7.0.1" + sources."find-0.2.9" (sources."find-elm-dependencies-2.0.2" // { dependencies = [ sources."firstline-1.2.0" ]; }) sources."find-parent-dir-0.3.0" - sources."find-up-3.0.0" + sources."find-up-4.1.0" sources."firstline-2.0.2" sources."forever-agent-0.6.1" sources."form-data-2.3.3" - sources."fs-extra-5.0.0" + sources."fs-extra-4.0.3" sources."fs-minipass-1.2.7" sources."fs.realpath-1.0.0" sources."fsevents-2.1.2" @@ -5220,6 +5499,7 @@ in sources."is-glob-4.0.1" sources."is-number-7.0.0" sources."is-typedarray-1.0.0" + sources."is-wsl-1.1.0" sources."isexe-2.0.0" sources."isstream-0.1.2" sources."jsbn-0.1.1" @@ -5228,19 +5508,21 @@ in sources."json-stringify-safe-5.0.1" sources."jsonfile-4.0.0" sources."jsprim-1.4.1" - sources."locate-path-3.0.0" + sources."locate-path-5.0.0" sources."lodash-4.17.15" + (sources."lru-cache-4.1.5" // { + dependencies = [ + sources."yallist-2.1.2" + ]; + }) sources."mime-db-1.43.0" sources."mime-types-2.1.26" sources."minimatch-3.0.4" - sources."minimist-1.2.5" + sources."minimist-0.0.8" sources."minipass-2.9.0" sources."minizlib-1.3.3" - (sources."mkdirp-0.5.1" // { - dependencies = [ - sources."minimist-0.0.8" - ]; - }) + sources."mkdirp-0.5.1" + sources."moment-2.24.0" sources."murmur-hash-js-1.0.0" sources."mustache-3.2.1" sources."nice-try-1.0.5" @@ -5248,20 +5530,23 @@ in dependencies = [ sources."cross-spawn-6.0.5" sources."path-key-2.0.1" - sources."which-1.3.1" ]; }) + sources."nopt-1.0.10" sources."normalize-path-3.0.0" sources."oauth-sign-0.9.0" sources."once-1.4.0" + sources."opn-5.5.0" + sources."os-tmpdir-1.0.2" sources."p-limit-2.2.2" - sources."p-locate-3.0.0" + sources."p-locate-4.1.0" sources."p-try-2.2.0" - sources."path-exists-3.0.0" + sources."path-exists-4.0.0" sources."path-is-absolute-1.0.1" sources."path-key-3.1.1" sources."performance-now-2.1.0" sources."picomatch-2.2.1" + sources."pseudomap-1.0.2" sources."psl-1.7.0" sources."punycode-2.1.1" sources."qs-6.5.2" @@ -5271,49 +5556,75 @@ in 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" + sources."rimraf-2.6.3" sources."safe-buffer-5.2.0" sources."safer-buffer-2.1.2" sources."semver-5.7.1" sources."set-blocking-2.0.0" sources."shebang-command-1.2.0" sources."shebang-regex-1.0.0" + sources."slice-ansi-2.1.0" sources."split-1.0.1" sources."sshpk-1.16.1" sources."stealthy-require-1.1.1" sources."string-width-3.1.0" sources."strip-ansi-5.2.0" - sources."supports-color-5.5.0" - sources."tar-4.4.13" - (sources."temp-0.9.0" // { + (sources."supports-color-7.1.0" // { dependencies = [ - sources."rimraf-2.6.3" + sources."has-flag-4.0.0" ]; }) + sources."table-5.4.6" + sources."tar-4.4.13" + sources."temp-0.9.0" sources."through-2.3.8" + sources."tmp-0.0.33" sources."to-regex-range-5.0.1" + sources."touch-3.1.0" sources."tough-cookie-2.5.0" sources."traverse-0.3.9" + sources."traverse-chain-0.1.0" sources."tunnel-agent-0.6.0" sources."tweetnacl-0.14.5" sources."universalify-0.1.2" sources."unzip-stream-0.3.0" + sources."upgrade-1.1.0" sources."uri-js-4.2.2" sources."uuid-3.4.0" sources."verror-1.10.0" - sources."which-2.0.1" + sources."which-1.3.1" sources."which-module-2.0.0" - sources."wrap-ansi-5.1.0" + (sources."wrap-ansi-6.2.0" // { + dependencies = [ + sources."ansi-regex-5.0.0" + sources."ansi-styles-4.2.1" + sources."color-convert-2.0.1" + sources."color-name-1.1.4" + sources."emoji-regex-8.0.0" + sources."is-fullwidth-code-point-3.0.0" + sources."string-width-4.2.0" + sources."strip-ansi-6.0.0" + ]; + }) sources."wrappy-1.0.2" sources."xmlbuilder-13.0.2" sources."y18n-4.0.0" sources."yallist-3.1.1" - sources."yargs-13.3.2" - sources."yargs-parser-13.1.2" + (sources."yargs-15.3.1" // { + dependencies = [ + sources."ansi-regex-5.0.0" + sources."emoji-regex-8.0.0" + sources."is-fullwidth-code-point-3.0.0" + sources."string-width-4.2.0" + sources."strip-ansi-6.0.0" + ]; + }) + sources."yargs-parser-18.1.1" ]; buildInputs = globalBuildInputs; meta = { - description = "Verify examples in Elm doc-comments"; + description = "> Work in progress - Code coverage tooling for Elm"; + homepage = "https://github.com/zwilias/elm-coverage#readme"; license = "BSD-3-Clause"; }; production = true; @@ -5736,97 +6047,22 @@ in bypassCache = true; reconstructLock = true; }; - elm-upgrade = nodeEnv.buildNodePackage { - name = "elm-upgrade"; - packageName = "elm-upgrade"; - version = "0.19.8"; - src = fetchurl { - url = "https://registry.npmjs.org/elm-upgrade/-/elm-upgrade-0.19.8.tgz"; - sha512 = "SwNzV40wu9IEe35TWR9b7F8WctIRUkpl6F3lzF0AqmYnCcKjbzrxbW6G7DYfA9ICUYjuSLcyYJKm5c86oMiH8w=="; - }; - dependencies = [ - sources."@sindresorhus/is-2.1.0" - sources."@szmarczak/http-timer-4.0.5" - sources."@types/cacheable-request-6.0.1" - sources."@types/http-cache-semantics-4.0.0" - sources."@types/keyv-3.1.1" - sources."@types/node-13.9.1" - sources."@types/responselike-1.0.0" - sources."cacheable-lookup-2.0.0" - sources."cacheable-request-7.0.1" - sources."caw-2.0.1" - (sources."clone-response-1.0.2" // { - dependencies = [ - sources."mimic-response-1.0.1" - ]; - }) - sources."config-chain-1.1.12" - sources."decompress-response-5.0.0" - sources."defer-to-connect-2.0.0" - sources."duplexer3-0.1.4" - sources."end-of-stream-1.4.4" - sources."fs-extra-8.1.0" - sources."get-proxy-2.1.0" - sources."get-stream-5.1.0" - sources."got-10.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."http-cache-semantics-4.1.0" - sources."ini-1.3.5" - sources."is-object-1.0.1" - sources."isexe-2.0.0" - sources."isurl-1.0.0" - sources."json-buffer-3.0.1" - sources."jsonfile-4.0.0" - sources."keyv-4.0.0" - sources."lowercase-keys-2.0.0" - sources."mimic-response-2.1.0" - sources."normalize-url-4.5.0" - sources."npm-conf-1.1.3" - sources."once-1.4.0" - sources."p-cancelable-2.0.0" - sources."p-event-4.1.0" - sources."p-finally-1.0.0" - sources."p-timeout-2.0.1" - sources."pify-3.0.0" - sources."proto-list-1.2.4" - sources."pump-3.0.0" - sources."responselike-2.0.0" - sources."safe-buffer-5.2.0" - sources."safename-1.0.2" - sources."semver-7.1.3" - sources."to-readable-stream-2.1.0" - sources."tunnel-agent-0.6.0" - sources."type-fest-0.10.0" - sources."universalify-0.1.2" - sources."url-to-options-1.0.1" - sources."which-2.0.2" - sources."wrappy-1.0.2" - sources."yn-4.0.0" - ]; - buildInputs = globalBuildInputs; - meta = { - description = "Upgrade Elm projects"; - homepage = "https://github.com/avh4/elm-upgrade#readme"; - license = "MIT"; - }; - production = true; - bypassCache = true; - reconstructLock = true; - }; - elm-analyse = nodeEnv.buildNodePackage { - name = "elm-analyse"; - packageName = "elm-analyse"; - version = "0.16.5"; + "@elm-tooling/elm-language-server" = nodeEnv.buildNodePackage { + name = "_at_elm-tooling_slash_elm-language-server"; + packageName = "@elm-tooling/elm-language-server"; + version = "1.6.3"; src = fetchurl { - url = "https://registry.npmjs.org/elm-analyse/-/elm-analyse-0.16.5.tgz"; - sha512 = "I7dgGFOc+mYDcDuyo1/HcIn3E5MiMbocStNzivsPSjCUviuEieHdDKZmJJ9uM3IdCu0fdBmRNWQBSOXtXrgzKg=="; + url = "https://registry.npmjs.org/@elm-tooling/elm-language-server/-/elm-language-server-1.6.3.tgz"; + sha512 = "8liKU5tfKrldgNtE8GNGEUlZM+o7Qfjycn3gnyzzKqWEBCjkxeuU6VwWaIozw5k/xfJqHcIDb5nFPsqEadO5Ig=="; }; dependencies = [ + sources."@nodelib/fs.scandir-2.1.3" + sources."@nodelib/fs.stat-2.0.3" + sources."@nodelib/fs.walk-1.2.4" sources."accepts-1.3.7" sources."ajv-6.12.0" sources."array-flatten-1.1.1" + sources."array-union-2.1.0" sources."asn1-0.2.4" sources."assert-plus-1.0.0" sources."async-limiter-1.0.1" @@ -5836,6 +6072,7 @@ in sources."babel-runtime-6.18.0" sources."bcrypt-pbkdf-1.0.2" sources."body-parser-1.19.0" + sources."braces-3.0.2" sources."bytes-3.1.0" sources."caseless-0.12.0" sources."combined-stream-1.0.8" @@ -5846,16 +6083,25 @@ in sources."cookie-signature-1.0.6" sources."core-js-2.6.11" sources."core-util-is-1.0.2" + sources."cross-spawn-7.0.1" sources."dashdash-1.14.1" sources."debug-2.6.9" sources."delayed-stream-1.0.0" sources."depd-1.1.2" sources."destroy-1.0.4" + sources."dir-glob-3.0.1" sources."ecc-jsbn-0.1.2" sources."ee-first-1.1.1" + sources."elm-analyse-git://github.com/elm-tooling/elm-analyse#1a665a6e540d7d11b29b3c5e3c52089704325d9c" sources."encodeurl-1.0.2" + sources."end-of-stream-1.4.4" sources."escape-html-1.0.3" sources."etag-1.8.1" + (sources."execa-4.0.0" // { + dependencies = [ + sources."is-stream-2.0.0" + ]; + }) (sources."express-4.16.3" // { dependencies = [ sources."body-parser-1.18.2" @@ -5882,7 +6128,11 @@ in sources."extend-3.0.2" sources."extsprintf-1.3.0" sources."fast-deep-equal-3.1.1" + sources."fast-diff-1.2.0" + sources."fast-glob-3.2.2" sources."fast-json-stable-stringify-2.1.0" + sources."fastq-1.6.1" + sources."fill-range-7.0.1" (sources."finalhandler-1.1.1" // { dependencies = [ sources."statuses-1.4.0" @@ -5894,19 +6144,28 @@ in sources."forwarded-0.1.2" sources."fresh-0.5.2" sources."fs-extra-2.0.0" + sources."get-stream-5.1.0" sources."getpass-0.1.7" + sources."glob-parent-5.1.0" + sources."globby-11.0.0" sources."graceful-fs-4.2.3" sources."har-schema-2.0.0" sources."har-validator-5.1.3" sources."http-errors-1.7.2" sources."http-signature-1.2.0" + sources."human-signals-1.1.1" sources."iconv-lite-0.4.24" + sources."ignore-5.1.4" sources."inherits-2.0.3" sources."ipaddr.js-1.9.1" + sources."is-extglob-2.1.1" + sources."is-glob-4.0.1" + sources."is-number-7.0.0" sources."is-stream-1.1.0" sources."is-typedarray-1.0.0" sources."is-wsl-1.1.0" sources."isarray-1.0.0" + sources."isexe-2.0.0" sources."isstream-0.1.2" sources."jsbn-0.1.1" sources."json-schema-0.2.3" @@ -5917,26 +6176,38 @@ in sources."lodash-4.17.15" sources."media-typer-0.3.0" sources."merge-descriptors-1.0.1" + sources."merge-stream-2.0.0" + sources."merge2-1.3.0" sources."methods-1.1.2" + sources."micromatch-4.0.2" sources."mime-1.4.1" sources."mime-db-1.43.0" sources."mime-types-2.1.26" + sources."mimic-fn-2.1.0" 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.1" sources."oauth-sign-0.9.0" sources."on-finished-2.3.0" + sources."once-1.4.0" + sources."onetime-5.1.0" sources."opn-5.4.0" sources."options-0.0.6" sources."os-homedir-1.0.2" sources."os-tmpdir-1.0.2" sources."parseurl-1.3.3" + 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.2.1" + sources."pjson-1.0.9" sources."process-nextick-args-1.0.7" sources."proxy-addr-2.0.6" sources."psl-1.7.0" + sources."pump-3.0.0" sources."punycode-2.1.1" sources."qs-6.7.0" sources."range-parser-1.2.1" @@ -5949,6 +6220,9 @@ in sources."safe-buffer-5.2.0" ]; }) + sources."reusify-1.0.4" + sources."run-parallel-1.1.9" + sources."rxjs-6.5.4" sources."safe-buffer-5.1.1" sources."safer-buffer-2.1.2" (sources."send-0.16.2" // { @@ -5960,12 +6234,18 @@ in }) sources."serve-static-1.13.2" sources."setprototypeof-1.1.1" + sources."shebang-command-2.0.0" + sources."shebang-regex-3.0.0" + sources."signal-exit-3.0.2" + sources."slash-3.0.0" sources."sshpk-1.16.1" sources."statuses-1.5.0" sources."string_decoder-0.10.31" + sources."strip-final-newline-2.0.0" sources."sums-0.2.4" sources."through2-2.0.1" sources."tmp-0.0.31" + sources."to-regex-range-5.0.1" sources."toidentifier-1.0.0" (sources."tough-cookie-2.4.3" // { dependencies = [ @@ -5973,6 +6253,7 @@ in ]; }) sources."traverse-chain-0.1.0" + sources."tslib-1.11.1" sources."tunnel-agent-0.6.0" sources."tweetnacl-0.14.5" sources."type-is-1.6.18" @@ -5985,6 +6266,15 @@ in sources."uuid-3.4.0" sources."vary-1.1.2" sources."verror-1.10.0" + sources."vscode-jsonrpc-5.0.1" + sources."vscode-languageserver-6.1.1" + sources."vscode-languageserver-protocol-3.15.3" + sources."vscode-languageserver-textdocument-1.0.1" + sources."vscode-languageserver-types-3.15.1" + sources."vscode-uri-2.1.1" + sources."web-tree-sitter-0.16.2" + sources."which-2.0.2" + sources."wrappy-1.0.2" (sources."ws-3.3.1" // { dependencies = [ sources."ultron-1.1.1" @@ -5994,7 +6284,8 @@ in ]; buildInputs = globalBuildInputs; meta = { - description = "A tool that allows you analyse your Elm code and identifies deficiencies and best practices."; + description = "Implementation of an elm language server in node."; + homepage = "https://github.com/elm-tooling/elm-language-server#readme"; license = "MIT"; }; production = true; @@ -6031,7 +6322,7 @@ in sources."elm-hot-1.1.4" sources."encodeurl-1.0.2" sources."end-of-stream-1.4.4" - sources."es6-promisify-6.0.2" + sources."es6-promisify-6.1.0" sources."escape-html-1.0.3" sources."escape-string-regexp-1.0.5" sources."etag-1.8.1" @@ -6123,291 +6414,478 @@ in bypassCache = true; reconstructLock = true; }; - elm-xref = nodeEnv.buildNodePackage { - name = "elm-xref"; - packageName = "elm-xref"; - version = "4.1.0"; + elm-test = nodeEnv.buildNodePackage { + name = "elm-test"; + packageName = "elm-test"; + version = "0.19.1-revision2"; src = fetchurl { - url = "https://registry.npmjs.org/elm-xref/-/elm-xref-4.1.0.tgz"; - sha512 = "23nVGYsArS2DZ0RnFq6cKYO49pCjuLULhM+fvBcfA7ZIbKSw5WkDyK9c5hlQEm+JZAPZ43PNcI0yLzTEqaajiA=="; + 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.12.0" + 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.9.1" + 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.2" - sources."compare-versions-3.6.0" + 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-3.0.0" + sources."chokidar-3.3.0" + sources."chownr-1.1.4" + 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."fs-extra-6.0.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.3.0" + sources."extend-3.0.2" + sources."extsprintf-1.3.0" + sources."fast-deep-equal-3.1.1" + sources."fast-json-stable-stringify-2.1.0" + sources."fill-range-7.0.1" + (sources."find-elm-dependencies-2.0.2" // { + dependencies = [ + sources."firstline-1.2.0" + ]; + }) + sources."find-parent-dir-0.3.0" + sources."firstline-2.0.2" + sources."forever-agent-0.6.1" + sources."form-data-2.3.3" + sources."fs-extra-8.1.0" + sources."fs-minipass-1.2.7" + sources."fs.realpath-1.0.0" + sources."fsevents-2.1.2" + sources."getpass-0.1.7" + 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-4.0.0" + sources."http-signature-1.2.0" + sources."inflight-1.0.6" sources."inherits-2.0.4" - sources."isarray-1.0.0" + sources."is-binary-path-2.1.0" + sources."is-extglob-2.1.1" + sources."is-glob-4.0.1" + sources."is-number-7.0.0" + sources."is-typedarray-1.0.0" + sources."isexe-2.0.0" + sources."isstream-0.1.2" + sources."jsbn-0.1.1" + sources."json-schema-0.2.3" + sources."json-schema-traverse-0.4.1" + sources."json-stringify-safe-5.0.1" sources."jsonfile-4.0.0" - sources."klaw-2.1.1" + sources."jsprim-1.4.1" + sources."lodash-4.17.15" + sources."mime-db-1.43.0" + sources."mime-types-2.1.26" + sources."minimatch-3.0.4" sources."minimist-1.2.5" - sources."process-nextick-args-2.0.1" - sources."readable-stream-2.3.7" - sources."safe-buffer-5.1.2" - sources."semver-6.3.0" - sources."semver-regex-1.0.0" - (sources."semver-sort-0.0.4" // { + sources."minipass-2.9.0" + sources."minizlib-1.3.3" + (sources."mkdirp-0.5.1" // { dependencies = [ - sources."semver-5.7.1" + sources."minimist-0.0.8" ]; }) - sources."string_decoder-1.1.1" - sources."through2-2.0.5" + sources."murmur-hash-js-1.0.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" + ]; + }) + sources."normalize-path-3.0.0" + sources."oauth-sign-0.9.0" + sources."once-1.4.0" + sources."path-is-absolute-1.0.1" + sources."path-key-3.1.1" + sources."performance-now-2.1.0" + sources."picomatch-2.2.1" + sources."psl-1.7.0" + sources."punycode-2.1.1" + sources."qs-6.5.2" + sources."readdirp-3.2.0" + sources."request-2.88.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-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" + sources."tar-4.4.13" + sources."temp-0.9.1" + sources."through-2.3.8" + sources."to-regex-range-5.0.1" + sources."tough-cookie-2.5.0" + sources."traverse-0.3.9" + sources."tunnel-agent-0.6.0" + sources."tweetnacl-0.14.5" sources."universalify-0.1.2" - sources."util-deprecate-1.0.2" - sources."xtend-4.0.2" + sources."unzip-stream-0.3.0" + sources."uri-js-4.2.2" + sources."uuid-3.4.0" + sources."verror-1.10.0" + sources."which-2.0.1" + sources."wrappy-1.0.2" + sources."xmlbuilder-13.0.2" + sources."yallist-3.1.1" ]; buildInputs = globalBuildInputs; meta = { - description = "Cross referencing tool for Elm - find usages and unused code"; - homepage = "https://github.com/zwilias/elm-xref#readme"; + description = "Run elm-test suites."; + homepage = "https://github.com/rtfeldman/node-test-runner#readme"; license = "BSD-3-Clause"; }; production = true; bypassCache = true; reconstructLock = true; }; - "@elm-tooling/elm-language-server" = nodeEnv.buildNodePackage { - name = "_at_elm-tooling_slash_elm-language-server"; - packageName = "@elm-tooling/elm-language-server"; - version = "1.6.3"; + elm-upgrade = nodeEnv.buildNodePackage { + name = "elm-upgrade"; + packageName = "elm-upgrade"; + version = "0.19.8"; src = fetchurl { - url = "https://registry.npmjs.org/@elm-tooling/elm-language-server/-/elm-language-server-1.6.3.tgz"; - sha512 = "8liKU5tfKrldgNtE8GNGEUlZM+o7Qfjycn3gnyzzKqWEBCjkxeuU6VwWaIozw5k/xfJqHcIDb5nFPsqEadO5Ig=="; + url = "https://registry.npmjs.org/elm-upgrade/-/elm-upgrade-0.19.8.tgz"; + sha512 = "SwNzV40wu9IEe35TWR9b7F8WctIRUkpl6F3lzF0AqmYnCcKjbzrxbW6G7DYfA9ICUYjuSLcyYJKm5c86oMiH8w=="; + }; + dependencies = [ + sources."@sindresorhus/is-2.1.0" + sources."@szmarczak/http-timer-4.0.5" + sources."@types/cacheable-request-6.0.1" + sources."@types/http-cache-semantics-4.0.0" + sources."@types/keyv-3.1.1" + sources."@types/node-13.9.1" + sources."@types/responselike-1.0.0" + sources."cacheable-lookup-2.0.0" + sources."cacheable-request-7.0.1" + sources."caw-2.0.1" + (sources."clone-response-1.0.2" // { + dependencies = [ + sources."mimic-response-1.0.1" + ]; + }) + sources."config-chain-1.1.12" + sources."decompress-response-5.0.0" + sources."defer-to-connect-2.0.0" + sources."duplexer3-0.1.4" + sources."end-of-stream-1.4.4" + sources."fs-extra-8.1.0" + sources."get-proxy-2.1.0" + sources."get-stream-5.1.0" + sources."got-10.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."http-cache-semantics-4.1.0" + sources."ini-1.3.5" + sources."is-object-1.0.1" + sources."isexe-2.0.0" + sources."isurl-1.0.0" + sources."json-buffer-3.0.1" + sources."jsonfile-4.0.0" + sources."keyv-4.0.0" + sources."lowercase-keys-2.0.0" + sources."mimic-response-2.1.0" + sources."normalize-url-4.5.0" + sources."npm-conf-1.1.3" + sources."once-1.4.0" + sources."p-cancelable-2.0.0" + sources."p-event-4.1.0" + sources."p-finally-1.0.0" + sources."p-timeout-2.0.1" + sources."pify-3.0.0" + sources."proto-list-1.2.4" + sources."pump-3.0.0" + sources."responselike-2.0.0" + sources."safe-buffer-5.2.0" + sources."safename-1.0.2" + sources."semver-7.1.3" + sources."to-readable-stream-2.1.0" + sources."tunnel-agent-0.6.0" + sources."type-fest-0.10.0" + sources."universalify-0.1.2" + sources."url-to-options-1.0.1" + sources."which-2.0.2" + sources."wrappy-1.0.2" + sources."yn-4.0.0" + ]; + buildInputs = globalBuildInputs; + meta = { + description = "Upgrade Elm projects"; + homepage = "https://github.com/avh4/elm-upgrade#readme"; + license = "MIT"; + }; + production = true; + bypassCache = true; + reconstructLock = true; + }; + elm-verify-examples = nodeEnv.buildNodePackage { + name = "elm-verify-examples"; + packageName = "elm-verify-examples"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/elm-verify-examples/-/elm-verify-examples-5.0.0.tgz"; + sha512 = "dAOv+U9hXZ0IRGx19mkpCAdf5rUwoJWlzFmcR2gvOzE/QjZUSlPh3e0IIDAfGUuEF8DjfE5CTe31fNtIkkd2rQ=="; }; dependencies = [ - sources."@nodelib/fs.scandir-2.1.3" - sources."@nodelib/fs.stat-2.0.3" - sources."@nodelib/fs.walk-1.2.4" - sources."accepts-1.3.7" sources."ajv-6.12.0" - sources."array-flatten-1.1.1" - sources."array-union-2.1.0" + sources."ansi-regex-4.1.0" + sources."ansi-styles-3.2.1" + sources."anymatch-3.1.1" sources."asn1-0.2.4" sources."assert-plus-1.0.0" - sources."async-limiter-1.0.1" sources."asynckit-0.4.0" sources."aws-sign2-0.7.0" sources."aws4-1.9.1" - sources."babel-runtime-6.18.0" + sources."balanced-match-1.0.0" sources."bcrypt-pbkdf-1.0.2" - sources."body-parser-1.19.0" + sources."binary-0.3.0" + sources."binary-extensions-2.0.0" + sources."binwrap-0.2.2" + sources."bluebird-3.7.2" + sources."brace-expansion-1.1.11" sources."braces-3.0.2" - sources."bytes-3.1.0" + sources."buffers-0.1.1" + sources."camelcase-5.3.1" sources."caseless-0.12.0" + sources."chainsaw-0.1.0" + sources."chalk-2.4.2" + sources."chokidar-3.2.1" + sources."chownr-1.1.4" + sources."cliui-5.0.0" + sources."color-convert-1.9.3" + sources."color-name-1.1.3" sources."combined-stream-1.0.8" - sources."concat-stream-1.5.2" - sources."content-disposition-0.5.2" - sources."content-type-1.0.4" - sources."cookie-0.3.1" - sources."cookie-signature-1.0.6" - sources."core-js-2.6.11" + sources."concat-map-0.0.1" sources."core-util-is-1.0.2" - sources."cross-spawn-7.0.1" - sources."dashdash-1.14.1" - sources."debug-2.6.9" - sources."delayed-stream-1.0.0" - sources."depd-1.1.2" - sources."destroy-1.0.4" - sources."dir-glob-3.0.1" - sources."ecc-jsbn-0.1.2" - sources."ee-first-1.1.1" - sources."elm-analyse-git://github.com/elm-tooling/elm-analyse#1a665a6e540d7d11b29b3c5e3c52089704325d9c" - sources."encodeurl-1.0.2" - sources."end-of-stream-1.4.4" - sources."escape-html-1.0.3" - sources."etag-1.8.1" - (sources."execa-4.0.0" // { - dependencies = [ - sources."is-stream-2.0.0" - ]; - }) - (sources."express-4.16.3" // { + (sources."cross-spawn-7.0.0" // { dependencies = [ - sources."body-parser-1.18.2" - sources."bytes-3.0.0" - sources."http-errors-1.6.3" - sources."iconv-lite-0.4.19" - sources."qs-6.5.1" - (sources."raw-body-2.3.2" // { - dependencies = [ - sources."depd-1.1.1" - sources."http-errors-1.6.2" - sources."setprototypeof-1.0.3" - ]; - }) - sources."setprototypeof-1.1.0" - sources."statuses-1.4.0" + sources."which-1.3.1" ]; }) - (sources."express-ws-2.0.0" // { + sources."dashdash-1.14.1" + sources."decamelize-1.2.0" + sources."delayed-stream-1.0.0" + sources."ecc-jsbn-0.1.2" + (sources."elm-test-0.19.1" // { dependencies = [ - sources."ws-1.1.5" + sources."fs-extra-8.1.0" + sources."has-flag-4.0.0" + sources."supports-color-7.1.0" ]; }) + sources."elmi-to-json-1.2.0" + sources."emoji-regex-7.0.3" + sources."escape-string-regexp-1.0.5" sources."extend-3.0.2" sources."extsprintf-1.3.0" sources."fast-deep-equal-3.1.1" - sources."fast-diff-1.2.0" - sources."fast-glob-3.2.2" sources."fast-json-stable-stringify-2.1.0" - sources."fastq-1.6.1" sources."fill-range-7.0.1" - (sources."finalhandler-1.1.1" // { + (sources."find-elm-dependencies-2.0.2" // { dependencies = [ - sources."statuses-1.4.0" + sources."firstline-1.2.0" ]; }) - sources."find-0.2.7" + sources."find-parent-dir-0.3.0" + sources."find-up-3.0.0" + sources."firstline-2.0.2" sources."forever-agent-0.6.1" sources."form-data-2.3.3" - sources."forwarded-0.1.2" - sources."fresh-0.5.2" - sources."fs-extra-2.0.0" - sources."get-stream-5.1.0" + sources."fs-extra-5.0.0" + sources."fs-minipass-1.2.7" + sources."fs.realpath-1.0.0" + sources."fsevents-2.1.2" + sources."get-caller-file-2.0.5" sources."getpass-0.1.7" + sources."glob-7.1.4" sources."glob-parent-5.1.0" - sources."globby-11.0.0" sources."graceful-fs-4.2.3" sources."har-schema-2.0.0" sources."har-validator-5.1.3" - sources."http-errors-1.7.2" + sources."has-flag-3.0.0" sources."http-signature-1.2.0" - sources."human-signals-1.1.1" - sources."iconv-lite-0.4.24" - sources."ignore-5.1.4" - sources."inherits-2.0.3" - sources."ipaddr.js-1.9.1" + sources."inflight-1.0.6" + sources."inherits-2.0.4" + sources."is-binary-path-2.1.0" sources."is-extglob-2.1.1" + sources."is-fullwidth-code-point-2.0.0" sources."is-glob-4.0.1" sources."is-number-7.0.0" - sources."is-stream-1.1.0" sources."is-typedarray-1.0.0" - sources."is-wsl-1.1.0" - sources."isarray-1.0.0" sources."isexe-2.0.0" sources."isstream-0.1.2" sources."jsbn-0.1.1" sources."json-schema-0.2.3" sources."json-schema-traverse-0.4.1" sources."json-stringify-safe-5.0.1" - sources."jsonfile-2.4.0" + sources."jsonfile-4.0.0" sources."jsprim-1.4.1" + sources."locate-path-3.0.0" sources."lodash-4.17.15" - sources."media-typer-0.3.0" - sources."merge-descriptors-1.0.1" - sources."merge-stream-2.0.0" - sources."merge2-1.3.0" - sources."methods-1.1.2" - sources."micromatch-4.0.2" - sources."mime-1.4.1" sources."mime-db-1.43.0" sources."mime-types-2.1.26" - sources."mimic-fn-2.1.0" - 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.1" + sources."minimatch-3.0.4" + sources."minimist-1.2.5" + sources."minipass-2.9.0" + sources."minizlib-1.3.3" + (sources."mkdirp-0.5.1" // { + dependencies = [ + sources."minimist-0.0.8" + ]; + }) + sources."murmur-hash-js-1.0.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."which-1.3.1" + ]; + }) + sources."normalize-path-3.0.0" sources."oauth-sign-0.9.0" - sources."on-finished-2.3.0" sources."once-1.4.0" - sources."onetime-5.1.0" - sources."opn-5.4.0" - sources."options-0.0.6" - sources."os-homedir-1.0.2" - sources."os-tmpdir-1.0.2" - sources."parseurl-1.3.3" + 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.1" - sources."path-to-regexp-0.1.7" - sources."path-type-4.0.0" sources."performance-now-2.1.0" sources."picomatch-2.2.1" - sources."pjson-1.0.9" - sources."process-nextick-args-1.0.7" - sources."proxy-addr-2.0.6" sources."psl-1.7.0" - sources."pump-3.0.0" sources."punycode-2.1.1" - sources."qs-6.7.0" - sources."range-parser-1.2.1" - sources."raw-body-2.4.0" - sources."readable-stream-2.0.6" - sources."regenerator-runtime-0.9.6" - (sources."request-2.88.0" // { - dependencies = [ - sources."qs-6.5.2" - sources."safe-buffer-5.2.0" - ]; - }) - sources."reusify-1.0.4" - sources."run-parallel-1.1.9" - sources."rxjs-6.5.4" - sources."safe-buffer-5.1.1" + sources."qs-6.5.2" + sources."readdirp-3.1.3" + sources."request-2.88.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" + sources."safe-buffer-5.2.0" sources."safer-buffer-2.1.2" - (sources."send-0.16.2" // { - dependencies = [ - sources."http-errors-1.6.3" - sources."setprototypeof-1.1.0" - sources."statuses-1.4.0" - ]; - }) - sources."serve-static-1.13.2" - sources."setprototypeof-1.1.1" - sources."shebang-command-2.0.0" - sources."shebang-regex-3.0.0" - sources."signal-exit-3.0.2" - sources."slash-3.0.0" + sources."semver-5.7.1" + sources."set-blocking-2.0.0" + sources."shebang-command-1.2.0" + sources."shebang-regex-1.0.0" + sources."split-1.0.1" sources."sshpk-1.16.1" - sources."statuses-1.5.0" - sources."string_decoder-0.10.31" - sources."strip-final-newline-2.0.0" - sources."sums-0.2.4" - sources."through2-2.0.1" - sources."tmp-0.0.31" - sources."to-regex-range-5.0.1" - sources."toidentifier-1.0.0" - (sources."tough-cookie-2.4.3" // { + sources."stealthy-require-1.1.1" + sources."string-width-3.1.0" + sources."strip-ansi-5.2.0" + sources."supports-color-5.5.0" + sources."tar-4.4.13" + (sources."temp-0.9.0" // { dependencies = [ - sources."punycode-1.4.1" + sources."rimraf-2.6.3" ]; }) - sources."traverse-chain-0.1.0" - sources."tslib-1.11.1" + sources."through-2.3.8" + sources."to-regex-range-5.0.1" + sources."tough-cookie-2.5.0" + sources."traverse-0.3.9" sources."tunnel-agent-0.6.0" sources."tweetnacl-0.14.5" - sources."type-is-1.6.18" - sources."typedarray-0.0.6" - sources."ultron-1.0.2" - sources."unpipe-1.0.0" + sources."universalify-0.1.2" + sources."unzip-stream-0.3.0" sources."uri-js-4.2.2" - sources."util-deprecate-1.0.2" - sources."utils-merge-1.0.1" sources."uuid-3.4.0" - sources."vary-1.1.2" sources."verror-1.10.0" - sources."vscode-jsonrpc-5.0.1" - sources."vscode-languageserver-6.1.1" - sources."vscode-languageserver-protocol-3.15.3" - sources."vscode-languageserver-textdocument-1.0.1" - sources."vscode-languageserver-types-3.15.1" - sources."vscode-uri-2.1.1" - sources."web-tree-sitter-0.16.2" - sources."which-2.0.2" + sources."which-2.0.1" + sources."which-module-2.0.0" + sources."wrap-ansi-5.1.0" sources."wrappy-1.0.2" - (sources."ws-3.3.1" // { + sources."xmlbuilder-13.0.2" + sources."y18n-4.0.0" + sources."yallist-3.1.1" + sources."yargs-13.3.2" + sources."yargs-parser-13.1.2" + ]; + buildInputs = globalBuildInputs; + meta = { + description = "Verify examples in Elm doc-comments"; + license = "BSD-3-Clause"; + }; + production = true; + bypassCache = true; + reconstructLock = true; + }; + elm-xref = nodeEnv.buildNodePackage { + name = "elm-xref"; + packageName = "elm-xref"; + version = "4.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/elm-xref/-/elm-xref-4.1.0.tgz"; + sha512 = "23nVGYsArS2DZ0RnFq6cKYO49pCjuLULhM+fvBcfA7ZIbKSw5WkDyK9c5hlQEm+JZAPZ43PNcI0yLzTEqaajiA=="; + }; + dependencies = [ + sources."bluebird-3.7.2" + sources."compare-versions-3.6.0" + sources."core-util-is-1.0.2" + sources."fs-extra-6.0.1" + sources."graceful-fs-4.2.3" + sources."inherits-2.0.4" + sources."isarray-1.0.0" + sources."jsonfile-4.0.0" + sources."klaw-2.1.1" + sources."minimist-1.2.5" + sources."process-nextick-args-2.0.1" + sources."readable-stream-2.3.7" + sources."safe-buffer-5.1.2" + sources."semver-6.3.0" + sources."semver-regex-1.0.0" + (sources."semver-sort-0.0.4" // { dependencies = [ - sources."ultron-1.1.1" + sources."semver-5.7.1" ]; }) + sources."string_decoder-1.1.1" + sources."through2-2.0.5" + sources."universalify-0.1.2" + sources."util-deprecate-1.0.2" sources."xtend-4.0.2" ]; buildInputs = globalBuildInputs; meta = { - description = "Implementation of an elm language server in node."; - homepage = "https://github.com/elm-tooling/elm-language-server#readme"; - license = "MIT"; + description = "Cross referencing tool for Elm - find usages and unused code"; + homepage = "https://github.com/zwilias/elm-xref#readme"; + license = "BSD-3-Clause"; }; production = true; bypassCache = true; diff --git a/pkgs/development/compilers/yosys/default.nix b/pkgs/development/compilers/yosys/default.nix index de90a0c0695a..5e26e37b4438 100644 --- a/pkgs/development/compilers/yosys/default.nix +++ b/pkgs/development/compilers/yosys/default.nix @@ -14,14 +14,14 @@ }: stdenv.mkDerivation rec { - pname = "yosys"; - version = "2020.02.25"; + pname = "yosys"; + version = "2020.03.16"; src = fetchFromGitHub { owner = "YosysHQ"; repo = "yosys"; - rev = "6edca05793197a846bbfb0329e836c87fa5aabb6"; - sha256 = "1cwps3nsld80bh2b66l8fx3fa2zsx174mw72kqxyihpfdm0m0z1s"; + rev = "ed4fa19ba2812c286562baf26bbbcb49afad83bc"; + sha256 = "1sza5ng0q8dy6p4hks9b2db129xjcid9n6l8aglf2cj5ks82k5nv"; }; enableParallelBuilding = true; @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { # we have to do this ourselves for some reason... (cd misc && ${protobuf}/bin/protoc --cpp_out ../backends/protobuf/ ./yosys.proto) - if ! grep -q "ABCREV = ${shortAbcRev}" Makefile;then + if ! grep -q "ABCREV = ${shortAbcRev}" Makefile; then echo "yosys isn't compatible with the provided abc (${shortAbcRev}), failing." exit 1 fi @@ -60,20 +60,21 @@ stdenv.mkDerivation rec { doCheck = true; checkInputs = [ verilog ]; - meta = { - description = "Framework for RTL synthesis tools"; - longDescription = '' - Yosys is a framework for RTL synthesis tools. It currently has - extensive Verilog-2005 support and provides a basic set of - synthesis algorithms for various application domains. - Yosys can be adapted to perform any synthesis job by combining - the existing passes (algorithms) using synthesis scripts and - adding additional passes as needed by extending the yosys C++ - code base. - ''; - homepage = http://www.clifford.at/yosys/; - license = stdenv.lib.licenses.isc; - maintainers = with stdenv.lib.maintainers; [ shell thoughtpolice emily ]; - platforms = stdenv.lib.platforms.all; + # Internally, yosys knows to use the specified hardcoded ABCEXTERNAL binary. + # But other tools (like mcy or symbiyosys) can't know how yosys was built, so + # they just assume that 'yosys-abc' is available -- but it's not installed + # when using ABCEXTERNAL + # + # add a symlink to fake things so that both variants work the same way. + postInstall = '' + ln -sfv ${abc-verifier}/bin/abc $out/bin/yosys-abc + ''; + + meta = with stdenv.lib; { + description = "Open RTL synthesis framework and tools"; + homepage = "http://www.clifford.at/yosys/"; + license = licenses.isc; + platforms = platforms.all; + maintainers = with maintainers; [ shell thoughtpolice emily ]; }; } diff --git a/pkgs/development/interpreters/groovy/default.nix b/pkgs/development/interpreters/groovy/default.nix index 67d9ecf9c61f..e1d404a6b15d 100644 --- a/pkgs/development/interpreters/groovy/default.nix +++ b/pkgs/development/interpreters/groovy/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "groovy"; - version = "2.5.9"; + version = "3.0.0"; src = fetchurl { url = "http://dl.bintray.com/groovy/maven/apache-groovy-binary-${version}.zip"; - sha256 = "16xq8mz7270kmiq4xb0g52y7ik1bbl2nb8aaz9zw8a9h38rdr9zy"; + sha256 = "10nn04hfky4x75nss33vvslw958pjvhw35lcfb3lxvaifqg23cpl"; }; buildInputs = [ unzip makeWrapper ]; diff --git a/pkgs/development/libraries/intel-media-driver/default.nix b/pkgs/development/libraries/intel-media-driver/default.nix index 176f28093048..ac4bdb4b14c9 100644 --- a/pkgs/development/libraries/intel-media-driver/default.nix +++ b/pkgs/development/libraries/intel-media-driver/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "intel-media-driver"; - version = "19.3.0"; + version = "19.4.0r"; src = fetchFromGitHub { owner = "intel"; repo = "media-driver"; rev = "intel-media-${version}"; - sha256 = "1vzh11qr7dwmi3d10nq46k754h3q1yya71nk2jgicaj2mm0ylzx6"; + sha256 = "0gnd82z0wgiw5my1hnqlk9hcjjqpsgasqq5xcdrbkfa40wpb132a"; }; cmakeFlags = [ @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { buildInputs = [ libva libpciaccess intel-gmmlib libX11 ]; meta = with stdenv.lib; { - homepage = https://github.com/intel/media-driver; + homepage = "https://github.com/intel/media-driver"; license = with licenses; [ bsd3 mit ]; description = "Intel Media Driver for VAAPI — Broadwell+ iGPUs"; platforms = platforms.linux; diff --git a/pkgs/development/libraries/libgpiod/default.nix b/pkgs/development/libraries/libgpiod/default.nix index 772027de0fb3..7bb2785dbcf2 100644 --- a/pkgs/development/libraries/libgpiod/default.nix +++ b/pkgs/development/libraries/libgpiod/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "libgpiod"; - version = "1.4.2"; + version = "1.5"; src = fetchurl { url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz"; - sha256 = "0r0hdindy6pi1va3mhk2lg5dis0qbi535k790w76dxfx1hyavk70"; + sha256 = "1r337ici2nvi9v2h33nf3b7nisirc4s8p31cpv1cg8jbzn3wi15g"; }; buildInputs = [ kmod ]; @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { the character device instead. This library encapsulates the ioctl calls and data structures behind a straightforward API. ''; - homepage = https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/about/; + homepage = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/about/"; license = licenses.lgpl2; maintainers = [ maintainers.expipiplus1 ]; platforms = platforms.linux; diff --git a/pkgs/development/libraries/libite/default.nix b/pkgs/development/libraries/libite/default.nix index 26d7e1e961d4..240636d518c3 100644 --- a/pkgs/development/libraries/libite/default.nix +++ b/pkgs/development/libraries/libite/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libite"; - version = "2.1.2"; + version = "2.2.0"; src = fetchFromGitHub { owner = "troglobit"; repo = "libite"; rev = "v${version}"; - sha256 = "0pvki6cm3ia27nsd6dljddjgz1bd6avf6c0ppj63fa3sz52lfmga"; + sha256 = "0kad501mrvn0s0sw9pz5spjq7ymk117hnff249z6026gswrxv1mh"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; diff --git a/pkgs/development/libraries/libkml/default.nix b/pkgs/development/libraries/libkml/default.nix new file mode 100644 index 000000000000..eca412fda6cb --- /dev/null +++ b/pkgs/development/libraries/libkml/default.nix @@ -0,0 +1,53 @@ +{ stdenv +, fetchFromGitHub +, cmake +, boost +, expat +, zlib +, uriparser +, minizip +, gtest +}: + +stdenv.mkDerivation rec { + pname = "libkml"; + version = "1.3.0"; + + src = fetchFromGitHub { + owner = "libkml"; + repo = pname; + rev = version; + sha256 = "0gl4cqfps9mzx6hzf3dc10hy5y8smpyf1s31sqm7w343hgsllv0z"; + }; + + nativeBuildInputs = [ + cmake + ]; + + cmakeFlags = [ + "-DBUILD_TESTING=ON" + ]; + + buildInputs = [ + gtest + boost + expat + zlib + uriparser + minizip + ]; + + preCheck = '' + export LD_LIBRARY_PATH=$PWD/lib + ''; + + doCheck = true; + + meta = with stdenv.lib; { + description = "Reference implementation of OGC KML 2.2"; + homepage = https://github.com/libkml/libkml; + license = licenses.bsd3; + maintainers = with maintainers; [ costrouc ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/development/libraries/science/math/brial/default.nix b/pkgs/development/libraries/science/math/brial/default.nix index 4ffe147b27f2..90d7357cc07e 100644 --- a/pkgs/development/libraries/science/math/brial/default.nix +++ b/pkgs/development/libraries/science/math/brial/default.nix @@ -8,14 +8,14 @@ }: stdenv.mkDerivation rec { - version = "1.2.7"; + version = "1.2.8"; pname = "brial"; src = fetchFromGitHub { owner = "BRiAl"; repo = "BRiAl"; rev = version; - sha256 = "1s0wmbb42sq6a5kxgzsz5srphclmfa4cvxdx2h9kzp0da2zcp3cm"; + sha256 = "0qhgckd4fvbs40jw14mvw89rccv94d3df27kipd27hxd4cx7y80y"; }; # FIXME package boost-test and enable checks @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { ]; meta = with stdenv.lib; { - homepage = https://github.com/BRiAl/BRiAl; + homepage = "https://github.com/BRiAl/BRiAl"; description = "Legacy version of PolyBoRi maintained by sagemath developers"; license = licenses.gpl2Plus; maintainers = with maintainers; [ timokau ]; diff --git a/pkgs/development/libraries/spice-protocol/default.nix b/pkgs/development/libraries/spice-protocol/default.nix index c32f336939cb..cae975b9a589 100644 --- a/pkgs/development/libraries/spice-protocol/default.nix +++ b/pkgs/development/libraries/spice-protocol/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "spice-protocol"; - version = "0.14.0"; + version = "0.14.1"; src = fetchurl { url = "https://www.spice-space.org/download/releases/${pname}-${version}.tar.bz2"; - sha256 = "1b3f44c13pqsp7aabmcinfbmgl79038bp5548l5pjs16lcfam95n"; + sha256 = "0ahk5hlanwhbc64r80xmchdav3ls156cvh9l68a0l22bhdhxmrkr"; }; postInstall = '' @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Protocol headers for the SPICE protocol"; - homepage = https://www.spice-space.org/; + homepage = "https://www.spice-space.org/"; license = licenses.bsd3; maintainers = with maintainers; [ bluescreen303 ]; platforms = platforms.linux; diff --git a/pkgs/development/mobile/androidenv/convertpackages.xsl b/pkgs/development/mobile/androidenv/convertpackages.xsl index 9623e01abcd7..5c36deb73c08 100644 --- a/pkgs/development/mobile/androidenv/convertpackages.xsl +++ b/pkgs/development/mobile/androidenv/convertpackages.xsl @@ -28,7 +28,7 @@ { <!-- Convert all remote packages --> - <xsl:for-each select="remotePackage"><xsl:sort select="@path" /> + <xsl:for-each select="remotePackage[not(contains(@path, ';') and substring-after(@path, ';') = 'latest')]"><xsl:sort select="@path" /> <!-- Extract the package name from the path --> <xsl:variable name="name"> diff --git a/pkgs/development/mobile/androidenv/convertsystemimages.xsl b/pkgs/development/mobile/androidenv/convertsystemimages.xsl index 42d19cb69651..de57041f1923 100644 --- a/pkgs/development/mobile/androidenv/convertsystemimages.xsl +++ b/pkgs/development/mobile/androidenv/convertsystemimages.xsl @@ -6,7 +6,7 @@ <xsl:param name="imageType" /> - <xsl:output omit-xml-declaration="yes" indent="no" /> + <xsl:output method="text" omit-xml-declaration="yes" indent="no" /> <xsl:template name="repository-url"> <xsl:variable name="raw-url" select="complete/url"/> @@ -15,33 +15,62 @@ <xsl:value-of select="$raw-url"/> </xsl:when> <xsl:otherwise> - https://dl.google.com/android/repository/sys-img/<xsl:value-of select="$imageType" />/<xsl:value-of select="$raw-url"/> + <xsl:text>https://dl.google.com/android/repository/sys-img/</xsl:text><xsl:value-of select="$imageType" /><xsl:text>/</xsl:text><xsl:value-of select="$raw-url"/> </xsl:otherwise> </xsl:choose> </xsl:template> + <xsl:template mode="revision" match="type-details[codename]"> + <xsl:value-of select="codename" />-<xsl:value-of select="tag/id" />-<xsl:value-of select="abi" /> + </xsl:template> + + <xsl:template mode="revision" match="type-details[not(codename)]"> + <xsl:value-of select="api-level" />-<xsl:value-of select="tag/id" />-<xsl:value-of select="abi" /> + </xsl:template> + + <xsl:template mode="attrkey" match="type-details[codename]"> + <xsl:text>"</xsl:text> + <xsl:value-of select="codename" /> + <xsl:text>".</xsl:text> + <xsl:value-of select="tag/id" /> + <xsl:text>."</xsl:text> + <xsl:value-of select="abi" /> + <xsl:text>"</xsl:text> + </xsl:template> + + <xsl:template mode="attrkey" match="type-details[not(codename)]"> + <xsl:text>"</xsl:text> + <xsl:value-of select="api-level" /> + <xsl:text>".</xsl:text> + <xsl:value-of select="tag/id" /> + <xsl:text>."</xsl:text> + <xsl:value-of select="abi" /> + <xsl:text>"</xsl:text> + </xsl:template> + <xsl:template match="/sys-img:sdk-sys-img"> -{fetchurl}: +<xsl:text>{fetchurl}: { - <xsl:for-each select="remotePackage[starts-with(@path, 'system-images;')]"> - <xsl:variable name="revision"> - <xsl:value-of select="type-details/api-level" />-<xsl:value-of select="type-details/tag/id" />-<xsl:value-of select="type-details/abi" /> - </xsl:variable> - - "<xsl:value-of select="type-details/api-level" />".<xsl:value-of select="type-details/tag/id" />."<xsl:value-of select="type-details/abi" />" = { - name = "system-image-<xsl:value-of select="$revision" />"; - path = "<xsl:value-of select="translate(@path, ';', '/')" />"; - revision = "<xsl:value-of select="$revision" />"; - displayName = "<xsl:value-of select="display-name" />"; - archives.all = fetchurl { - <xsl:for-each select="archives/archive"> - url = <xsl:call-template name="repository-url"/>; - sha1 = "<xsl:value-of select="complete/checksum" />"; - </xsl:for-each> - }; +</xsl:text><xsl:for-each select="remotePackage[starts-with(@path, 'system-images;')]"> + <xsl:variable name="revision"><xsl:apply-templates mode="revision" select="type-details" /></xsl:variable> + + <xsl:variable name="attrkey"><xsl:apply-templates mode="attrkey" select="type-details" /></xsl:variable> + + <xsl:text> </xsl:text><xsl:value-of select="$attrkey" /><xsl:text> = { + name = "system-image-</xsl:text><xsl:value-of select="$revision" /><xsl:text>"; + path = "</xsl:text><xsl:value-of select="translate(@path, ';', '/')" /><xsl:text>"; + revision = "</xsl:text><xsl:value-of select="$revision" /><xsl:text>"; + displayName = "</xsl:text><xsl:value-of select="display-name" /><xsl:text>"; + archives.all = fetchurl {</xsl:text> + <xsl:for-each select="archives/archive"><xsl:text> + url = </xsl:text><xsl:call-template name="repository-url"/><xsl:text>; + sha1 = "</xsl:text><xsl:value-of select="complete/checksum" /><xsl:text>";</xsl:text> + </xsl:for-each><xsl:text> + }; }; +</xsl:text> </xsl:for-each> -} +<xsl:text>}</xsl:text> </xsl:template> </xsl:stylesheet> diff --git a/pkgs/development/mobile/androidenv/generate.sh b/pkgs/development/mobile/androidenv/generate.sh index 1c55734f5f42..895a741adffe 100644..100755 --- a/pkgs/development/mobile/androidenv/generate.sh +++ b/pkgs/development/mobile/androidenv/generate.sh @@ -1,16 +1,36 @@ -#!/bin/sh -e +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl libxslt + +set -e + +die() { + echo "$1" >&2 + exit 1 +} + +fetch() { + local url="https://dl.google.com/android/repository/$1" + echo "$url -> $2" + curl -s "$url" -o "$2" || die "Failed to fetch $url" +} + +pushd "$(dirname "$0")" &>/dev/null || exit 1 + +mkdir -p xml # Convert base packages -curl https://dl.google.com/android/repository/repository2-1.xml -o xml/repository2-1.xml +fetch repository2-1.xml xml/repository2-1.xml xsltproc convertpackages.xsl xml/repository2-1.xml > generated/packages.nix # Convert system images for img in android android-tv android-wear android-wear-cn google_apis google_apis_playstore do - curl https://dl.google.com/android/repository/sys-img/$img/sys-img2-1.xml -o xml/$img-sys-img2-1.xml + fetch sys-img/$img/sys-img2-1.xml xml/$img-sys-img2-1.xml xsltproc --stringparam imageType $img convertsystemimages.xsl xml/$img-sys-img2-1.xml > generated/system-images-$img.nix done # Convert system addons -curl https://dl.google.com/android/repository/addon2-1.xml -o xml/addon2-1.xml +fetch addon2-1.xml xml/addon2-1.xml xsltproc convertaddons.xsl xml/addon2-1.xml > generated/addons.nix + +popd &>/dev/null diff --git a/pkgs/development/ocaml-modules/lacaml/default.nix b/pkgs/development/ocaml-modules/lacaml/default.nix index 4b35ce25fde4..e576fa998c2e 100644 --- a/pkgs/development/ocaml-modules/lacaml/default.nix +++ b/pkgs/development/ocaml-modules/lacaml/default.nix @@ -4,13 +4,13 @@ assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.05.0"; stdenv.mkDerivation rec { pname = "ocaml${ocaml.version}-lacaml"; - version = "11.0.3"; + version = "11.0.6"; src = fetchFromGitHub { owner = "mmottl"; repo = "lacaml"; rev = version; - sha256 = "1aflg07cc9ak9mg1cr0qr368c9s141glwlarl5nhalf6hhq7ibcb"; + sha256 = "1vn5441fg45d0ni9x87dhz2x4jrmvg3w7qk3vvcrd436snvh07g0"; }; buildInputs = [ ocaml findlib dune base stdio ]; diff --git a/pkgs/development/python-modules/buildout/default.nix b/pkgs/development/python-modules/buildout/default.nix index 419e8dce2126..20731e76c814 100644 --- a/pkgs/development/python-modules/buildout/default.nix +++ b/pkgs/development/python-modules/buildout/default.nix @@ -2,15 +2,15 @@ buildPythonPackage rec { pname = "zc.buildout"; - version = "2.13.2"; + version = "2.13.3"; src = fetchPypi { inherit pname version; - sha256 = "0a73s5q548l2vs2acqs3blkzd9sw6d7ci77fz1pc9156vn3dxm2x"; + sha256 = "1dyc5g3yv7wm3hf3fcsh6y1wivzjj1bspafr5qqb653z9a31lsfn"; }; meta = with stdenv.lib; { - homepage = http://www.buildout.org; + homepage = "http://www.buildout.org"; description = "A software build and configuration system"; license = licenses.zpl21; maintainers = with maintainers; [ ]; diff --git a/pkgs/development/python-modules/imapclient/default.nix b/pkgs/development/python-modules/imapclient/default.nix index e45cdb3eab8a..ea9bc4844fad 100644 --- a/pkgs/development/python-modules/imapclient/default.nix +++ b/pkgs/development/python-modules/imapclient/default.nix @@ -1,32 +1,35 @@ { stdenv , buildPythonPackage -, fetchurl -, isPy34 -, isPy35 +, fetchFromGitHub , mock +, six }: buildPythonPackage rec { pname = "IMAPClient"; - version = "0.13"; - disabled = isPy34 || isPy35; + version = "2.1.0"; - src = fetchurl { - url = "https://freshfoo.com/projects/IMAPClient/${pname}-${version}.tar.gz"; - sha256 = "0v7kd1crdbff0rmh4ddm5qszkis6hpk9084qh94al8h7g4y9l3is"; + src = fetchFromGitHub { + owner = "mjs"; + repo = "imapclient"; + rev = version; + sha256 = "1zc8qj8ify2zygbz255b6fcg7jhprswf008ccwjmbrnj08kh9l4x"; }; - buildInputs = [ mock ]; - - preConfigure = '' - sed -i '/distribute_setup/d' setup.py - substituteInPlace setup.py --replace "mock==0.8.0" "mock" + # fix test failing in python 36 + postPatch = '' + substituteInPlace tests/test_imapclient.py \ + --replace "if sys.version_info >= (3, 7):" "if sys.version_info >= (3, 6, 4):" ''; + propagatedBuildInputs = [ six ]; + + checkInputs = [ mock ]; + meta = with stdenv.lib; { - homepage = https://imapclient.readthedocs.io/en/2.1.0/; + homepage = "https://imapclient.readthedocs.io"; description = "Easy-to-use, Pythonic and complete IMAP client library"; license = licenses.bsd3; + maintainers = [ maintainers.almac ]; }; - } diff --git a/pkgs/development/python-modules/matrix-nio/default.nix b/pkgs/development/python-modules/matrix-nio/default.nix index f8c1222fb3ff..9320efc91a23 100644 --- a/pkgs/development/python-modules/matrix-nio/default.nix +++ b/pkgs/development/python-modules/matrix-nio/default.nix @@ -20,13 +20,13 @@ buildPythonPackage rec { pname = "nio"; - version = "0.8.0"; + version = "0.9.0"; src = fetchFromGitHub { owner = "poljar"; repo = "matrix-nio"; rev = version; - sha256 = "151c59a913y6kx99g7g3mhpgbgavwic1mh21nfrr9x0rm98ilay9"; + sha256 = "0gqhk9d06w1in6dj7aqy45skzyg8018nmclqd5r0m5nnw8yns6gz"; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/rpy2/default.nix b/pkgs/development/python-modules/rpy2/default.nix index 851a58584c66..613e7af7d3a1 100644 --- a/pkgs/development/python-modules/rpy2/default.nix +++ b/pkgs/development/python-modules/rpy2/default.nix @@ -1,6 +1,7 @@ { lib , python , buildPythonPackage +, fetchpatch , fetchPypi , isPyPy , R @@ -24,13 +25,13 @@ }: buildPythonPackage rec { - version = "3.2.5"; + version = "3.2.6"; pname = "rpy2"; disabled = isPyPy; src = fetchPypi { inherit version pname; - sha256 = "0pnk363klic4smb3jnkm4lnh984c2cpqzawrg2j52hgy8k1bgyrk"; + sha256 = "1p990cqx3p2pd1rc9wn66m56wahaq8dlr88frz49vb7nv4zw4a8q"; }; buildInputs = [ @@ -68,6 +69,14 @@ buildPythonPackage rec { # R_LIBS_SITE is used by the nix r package to point to the installed R libraries. # This patch sets R_LIBS_SITE when rpy2 is imported. ./rpy2-3.x-r-libs-site.patch + + # pandas 1.x compatibility, already merged upstream + # https://github.com/rpy2/rpy2/issues/636 + (fetchpatch { + name = "pandas-1.x.patch"; + url = "https://github.com/rpy2/rpy2/commit/fbd060e364b70012e8d26cc74df04ee53f769379.patch"; + sha256 = "19rdqydwjmqg25ibmsbx7lggrr9fsyjn283zgvz1wj4iyfjwp1za"; + }) ]; postPatch = '' substituteInPlace 'rpy2/rinterface_lib/embedded.py' --replace '@NIX_R_LIBS_SITE@' "$R_LIBS_SITE" diff --git a/pkgs/development/python-modules/rq/default.nix b/pkgs/development/python-modules/rq/default.nix index 0fe7a942245b..9f57fb486d91 100644 --- a/pkgs/development/python-modules/rq/default.nix +++ b/pkgs/development/python-modules/rq/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "rq"; - version = "1.2.2"; + version = "1.3.0"; src = fetchPypi { inherit pname version; - sha256 = "0dk664lzjhj0rk4ffpv29mbcr7vh41ph1sx7ngszk3744gh1nshp"; + sha256 = "0xr38j35iqmhx0f2l8ix34vjs9flpqv2y17k33crh7rhm6gi9ja9"; }; # test require a running redis rerver, which is something we can't do yet diff --git a/pkgs/development/python-modules/uamqp/default.nix b/pkgs/development/python-modules/uamqp/default.nix index 8e74c6460fe7..e11088048c34 100644 --- a/pkgs/development/python-modules/uamqp/default.nix +++ b/pkgs/development/python-modules/uamqp/default.nix @@ -11,11 +11,11 @@ buildPythonPackage rec { pname = "uamqp"; - version = "1.2.5"; + version = "1.2.6"; src = fetchPypi { inherit pname version; - sha256 = "02d78242fcd0a58489aaf275964a6cf7581d7a2334ee240d2d547f8aca8607c6"; + sha256 = "1pzgj85c6g8vr3dq215cd1y2pn8pxc6wa7mjd9m0zrglr1qwwhdz"; }; buildInputs = [ @@ -39,7 +39,7 @@ buildPythonPackage rec { meta = with lib; { description = "An AMQP 1.0 client library for Python"; - homepage = https://github.com/Azure/azure-uamqp-python; + homepage = "https://github.com/Azure/azure-uamqp-python"; license = licenses.mit; maintainers = with maintainers; [ mwilsoninsight ]; }; diff --git a/pkgs/development/python-modules/wsgitools/default.nix b/pkgs/development/python-modules/wsgitools/default.nix new file mode 100644 index 000000000000..ab6f06abac65 --- /dev/null +++ b/pkgs/development/python-modules/wsgitools/default.nix @@ -0,0 +1,28 @@ +{lib +,buildPythonPackage +,fetchPypi +}: + +buildPythonPackage rec { + pname = "wsgitools"; + version = "0.3.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "0q6kmrkqf02fgww7z1g9cw8f70fimdzs1bvv9inb7fsk0c3pcf1i"; + }; + + meta = with lib; { + maintainers = with maintainers; [ clkamp ]; + description = "A set of tools working with WSGI"; + longDescription = '' + wsgitools is a set of tools working with WSGI (see PEP 333). It + includes classes for filtering content, middlewares for caching, + logging and tracebacks as well as two backends for SCGI. Goals + in writing it were portability and simplicity. + ''; + homepage = "https://subdivi.de/~helmut/wsgitools/"; + license = licenses.gpl2Plus; + platforms = platforms.all; + }; +} diff --git a/pkgs/development/python-modules/z3c-checkversions/default.nix b/pkgs/development/python-modules/z3c-checkversions/default.nix index 41b7fb5c5206..cf4f6f7dd146 100644 --- a/pkgs/development/python-modules/z3c-checkversions/default.nix +++ b/pkgs/development/python-modules/z3c-checkversions/default.nix @@ -18,6 +18,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ zc_buildout ]; checkInputs = [ zope_testrunner ]; + doCheck = !python.pkgs.isPy27; checkPhase = '' ${python.interpreter} -m zope.testrunner --test-path=src [] ''; diff --git a/pkgs/development/tools/literate-programming/nuweb/default.nix b/pkgs/development/tools/literate-programming/nuweb/default.nix index 41c4b25c8b1b..30eb28fc698c 100644 --- a/pkgs/development/tools/literate-programming/nuweb/default.nix +++ b/pkgs/development/tools/literate-programming/nuweb/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec{ pname = "nuweb"; - version = "1.58"; + version = "1.60"; src = fetchurl { url = "mirror://sourceforge/project/nuweb/${pname}-${version}.tar.gz"; - sha256 = "0q51i3miy15fv4njjp82yws01qfjxvqx5ly3g3vh8z3h7iq9p47y"; + sha256 = "08xmwq48biy2c1fr8wnyknyvqs9jfsj42cb7fw638xqv35f0xxvl"; }; buildInputs = [ tex ]; @@ -32,7 +32,7 @@ stdenv.mkDerivation rec{ homepage = http://nuweb.sourceforge.net; license = licenses.free; maintainers = [ maintainers.AndersonTorres ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } # TODO: nuweb.el Emacs integration diff --git a/pkgs/development/tools/renderizer/default.nix b/pkgs/development/tools/renderizer/default.nix index f33cad8da7a2..93634f935d1d 100644 --- a/pkgs/development/tools/renderizer/default.nix +++ b/pkgs/development/tools/renderizer/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "renderizer"; - version = "2.0.5"; + version = "2.0.9"; src = fetchFromGitHub { owner = "gomatic"; repo = pname; rev = version; - sha256 = "186wcfzw60z6i59yl37rkppw8w88z5kikvsi65k4r9kwpll2z6z4"; + sha256 = "1bip12pcn8bqgph7vd7bzzadwbyqh80fx7gqciv9fchycwsj04rf"; }; - modSha256 = "1sxg9skd5hjpg2f4wyxh5hwjrplw3b3v32gn61a9yixfk3wvi05x"; + modSha256 = "0ss5l2n1sl1i2hvxsdzy6p61mnnxmm6h256jvv0p0ajynx8g538q"; meta = with stdenv.lib; { description = "CLI to render Go template text files"; diff --git a/pkgs/development/tools/rust/cbindgen/default.nix b/pkgs/development/tools/rust/cbindgen/default.nix index b97c9af088fd..34d744807463 100644 --- a/pkgs/development/tools/rust/cbindgen/default.nix +++ b/pkgs/development/tools/rust/cbindgen/default.nix @@ -11,10 +11,7 @@ rustPlatform.buildRustPackage rec { sha256 = "1x21g66gri6z9bnnfn7zmnf2lwdf5ing76pcmw0ilx4nzpvfhkg0"; }; - # Delete this on next update; see #79975 for details - legacyCargoFetcher = true; - - cargoSha256 = "13fb8cdg6r0g5jb3vaznvv5aaywrnsl2yp00h4k8028vl8jwwr79"; + cargoSha256 = "13fbahdih5whll09pfgyb1bjag1f0d0xfwgm2s342bs1krxsrbh3"; buildInputs = stdenv.lib.optional stdenv.isDarwin Security; diff --git a/pkgs/games/super-tux-kart/default.nix b/pkgs/games/super-tux-kart/default.nix index 2db49165c5fb..96444897cc94 100644 --- a/pkgs/games/super-tux-kart/default.nix +++ b/pkgs/games/super-tux-kart/default.nix @@ -1,20 +1,20 @@ { stdenv, fetchFromGitHub, fetchsvn, cmake, pkgconfig , openal, freealut, libGLU, libGL, libvorbis, libogg, gettext, curl, freetype -, fribidi, libtool, bluez, libjpeg, libpng, zlib, libX11, libXrandr, enet }: +, fribidi, libtool, bluez, libjpeg, libpng, zlib, libX11, libXrandr, enet, harfbuzz }: let dir = "stk-code"; in stdenv.mkDerivation rec { pname = "supertuxkart"; - version = "1.0"; + version = "1.1"; srcs = [ (fetchFromGitHub { owner = "supertuxkart"; repo = "stk-code"; rev = version; - sha256 = "03mrnzrvfdgjc687n718f5zsray6vbdlv4irzy2mfi78bz3bkjll"; + sha256 = "01vxxl94583ixswzmi4caz8dk64r56pn3zxh7v63zml60yfvxbvp"; name = dir; }) (fetchsvn { @@ -30,7 +30,7 @@ in stdenv.mkDerivation rec { buildInputs = [ libX11 libXrandr openal freealut libGLU libGL libvorbis libogg zlib freetype - curl fribidi bluez libjpeg libpng enet + curl fribidi bluez libjpeg libpng enet harfbuzz ]; enableParallelBuilding = true; diff --git a/pkgs/games/tintin/default.nix b/pkgs/games/tintin/default.nix index 62fda890e84c..fbf4b1beecfd 100644 --- a/pkgs/games/tintin/default.nix +++ b/pkgs/games/tintin/default.nix @@ -6,11 +6,11 @@ assert tlsSupport -> gnutls != null; stdenv.mkDerivation rec { - name = "tintin-2.02.01"; + name = "tintin-2.02.02"; src = fetchurl { url = "mirror://sourceforge/tintin/${name}.tar.gz"; - sha256 = "15ajs6d0rb3xchd46gyziciz9vv0ks75schk1s4hs7pr30yr7k6y"; + sha256 = "11ylbp8ip7dwmh4gzb53z147pcfxkl3lwhyy8ngyn2zc634vdn65"; }; nativeBuildInputs = lib.optional tlsSupport gnutls.dev; diff --git a/pkgs/misc/tpm2-pkcs11/default.nix b/pkgs/misc/tpm2-pkcs11/default.nix index d34619d5b52d..9e3be1101a63 100644 --- a/pkgs/misc/tpm2-pkcs11/default.nix +++ b/pkgs/misc/tpm2-pkcs11/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "tpm2-pkcs11"; - version = "1.0.1"; + version = "1.1.0"; src = fetchFromGitHub { owner = "tpm2-software"; repo = pname; rev = version; - sha256 = "sha256:06kpf730al50xv1q53ahycky3im23ysrqp40libls4k24zxs9ha2"; + sha256 = "0gqbbxh1y2vcznxw96xn1wpcvg613zzzrbbfrqbw3p7spbn65yfq"; }; patches = lib.singleton ( @@ -71,7 +71,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A PKCS#11 interface for TPM2 hardware"; - homepage = https://github.com/tpm2-software/tpm2-pkcs11; + homepage = "https://github.com/tpm2-software/tpm2-pkcs11"; license = licenses.bsd2; platforms = platforms.linux; maintainers = with maintainers; [ lschuermann ]; diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix index e4710e27193c..a8bf2f56b2af 100644 --- a/pkgs/misc/vim-plugins/overrides.nix +++ b/pkgs/misc/vim-plugins/overrides.nix @@ -112,6 +112,21 @@ self: super: { ''; }); + vim-pandoc = super.vim-pandoc.overrideAttrs(old: { + patches = (super.patches or []) ++ [ + # Fix a failure on startup, which breaks the rplugin manifest generation + # https://github.com/vim-pandoc/vim-pandoc/pull/363#issuecomment-599080366 + (fetchpatch { + name = "fix-fdetect.patch"; + url = "https://github.com/vim-pandoc/vim-pandoc/commit/da4c0b0325c1bfad20f7cfd15abb53943fe22fc4.patch"; + revert = true; + # For some reason that part was already reverted upstream. + excludes = ["ftdetect/pandoc.vim"]; + sha256 = "10nykgsqpxx5hlagk83khjl8p58zx7z3bcryzinv5vv52wlqkq5p"; + }) + ]; + }); + clighter8 = super.clighter8.overrideAttrs(old: { preFixup = '' sed "/^let g:clighter8_libclang_path/s|')$|${llvmPackages.clang.cc.lib}/lib/libclang.so')|" \ diff --git a/pkgs/servers/http/tomcat/default.nix b/pkgs/servers/http/tomcat/default.nix index 38b4974e1554..3908db5ea71c 100644 --- a/pkgs/servers/http/tomcat/default.nix +++ b/pkgs/servers/http/tomcat/default.nix @@ -32,25 +32,19 @@ let in { tomcat7 = common { versionMajor = "7"; - versionMinor = "0.92"; - sha256 = "0j015mf15drl92kvgyi1ppzjziw0k1rwvfnih8r20h92ylk8mznk"; + versionMinor = "0.100"; + sha256 = "0wjjnvxjz0xbnsfgyp0xc7nlij4z093v54hg59vww2nmkz5mg01v"; }; tomcat8 = common { versionMajor = "8"; - versionMinor = "0.53"; - sha256 = "1ymp5n6xjqzpqjjlwql195v8r5fsmry7nfax46bafkjw8b24g80r"; - }; - - tomcat85 = common { - versionMajor = "8"; - versionMinor = "5.42"; - sha256 = "1d90abwwvl0ghr0g0drk48j37wr2zgw74vws9z2rshyzrwgbvgp3"; + versionMinor = "5.51"; + sha256 = "1zmg0hi4nw4y5sknd0jgq9lb3bncjjscay5fdiiq3qh5cs0wsvl3"; }; tomcat9 = common { versionMajor = "9"; - versionMinor = "0.21"; - sha256 = "0nsylbqvky4pf3wpsx3a29b85lvwk91ay37mljk9636qffjj1vjh"; + versionMinor = "0.31"; + sha256 = "0hybcy280qhhp9if58xw0rmyyqz1m1bzby7qnwz3y2wc1y4is48v"; }; } diff --git a/pkgs/servers/monitoring/mtail/default.nix b/pkgs/servers/monitoring/mtail/default.nix index 31a6501ea3a5..64966e183fea 100644 --- a/pkgs/servers/monitoring/mtail/default.nix +++ b/pkgs/servers/monitoring/mtail/default.nix @@ -1,22 +1,26 @@ -{ lib, fetchFromGitHub, gotools, buildGoPackage }: +{ lib, fetchFromGitHub, buildGoModule }: -buildGoPackage rec { +buildGoModule rec { pname = "mtail"; - version = "3.0.0-rc4"; - goPackagePath = "github.com/google/mtail"; + version = "3.0.0-rc35"; src = fetchFromGitHub { owner = "google"; repo = "mtail"; rev = "v${version}"; - sha256 = "1n7pqvid48ayn15qfpgpbsx0iqg24x08wphzpc08mlfw47gq7jg3"; + sha256 = "04hzr0cw0dq7hmqvp1lhm5wl239yrxmcpsl25sqk74wy06cgrrqd"; }; - buildInputs = [ gotools ]; - goDeps = ./deps.nix; - patches = [ ./fix-gopath.patch ]; - preBuild = "go generate -x ./go/src/github.com/google/mtail/vm/"; + modSha256 = "0h3q1qd9a01wlfkk0yv74a4bk5nilpsppq522cv7kl8ysnrjh5yi"; + subPackages = [ "cmd/mtail" ]; + preBuild = '' + go generate -x ./internal/vm/ + ''; + + buildFlagsArray = [ + "-ldflags=-X main.Version=${version}" + ]; meta = with lib; { license = licenses.asl20; diff --git a/pkgs/servers/monitoring/mtail/deps.nix b/pkgs/servers/monitoring/mtail/deps.nix deleted file mode 100644 index 6de3c8b6e139..000000000000 --- a/pkgs/servers/monitoring/mtail/deps.nix +++ /dev/null @@ -1,56 +0,0 @@ -[ - rec { - goPackagePath = "github.com/golang/glog"; - fetch = { - type = "git"; - url = "https://${goPackagePath}.git"; - rev = "23def4e6c14b4da8ac2ed8007337bc5eb5007998"; - sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30"; - }; - } - rec { - goPackagePath = "github.com/spf13/afero"; - fetch = { - type = "git"; - url = "https://${goPackagePath}.git"; - rev = "5660eeed305fe5f69c8fc6cf899132a459a97064"; - sha256 = "0rpwvjp9xfmy2yvbmy810qamjhimr56zydvx7hb1gjn3b7jp4rhd"; - }; - } - rec { - goPackagePath = "github.com/fsnotify/fsnotify"; - fetch = { - type = "git"; - url = "https://${goPackagePath}.git"; - rev = "v1.4.2"; - sha256 = "06wfg1mmzjj04z7d0q1x2fai9k6hm957brngsaf02fa9a3qqanv3"; - }; - } - rec { - goPackagePath = "github.com/pkg/errors"; - fetch = { - type = "git"; - url = "https://${goPackagePath}.git"; - rev = "v0.8.0"; - sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5"; - }; - } - { - goPackagePath = "golang.org/x/sys"; - fetch = { - type = "git"; - url = "https://go.googlesource.com/sys"; - rev = "95c6576299259db960f6c5b9b69ea52422860fce"; - sha256 = "1fhq8bianb9a1iccpr92mi2hix9zvm10n0f7syx6vfbxdw32i316"; - }; - } - { - goPackagePath = "golang.org/x/text"; - fetch = { - type = "git"; - url = "https://go.googlesource.com/text"; - rev = "3ba1a4dc141f5236b19ccbf2f67cb63d1a688d46"; - sha256 = "07sbakmman41p5hmdbf4y2wak0gh7k1z88m0zb72acsypp4179h1"; - }; - } -] diff --git a/pkgs/servers/monitoring/mtail/fix-gopath.patch b/pkgs/servers/monitoring/mtail/fix-gopath.patch deleted file mode 100644 index 9421d194a9e5..000000000000 --- a/pkgs/servers/monitoring/mtail/fix-gopath.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/vm/compiler.go b/vm/compiler.go -index c55266b..a46417c 100644 ---- a/vm/compiler.go -+++ b/vm/compiler.go -@@ -2,7 +2,7 @@ - // This file is available under the Apache license. - - // Build the parser: --//go:generate $GOPATH/bin/goyacc -v y.output -o parser.go -p mtail parser.y -+//go:generate goyacc -v y.output -o parser.go -p mtail parser.y - - package vm - diff --git a/pkgs/servers/monitoring/sensu-go/default.nix b/pkgs/servers/monitoring/sensu-go/default.nix index a4e2b1eb313c..f109b08d1a6f 100644 --- a/pkgs/servers/monitoring/sensu-go/default.nix +++ b/pkgs/servers/monitoring/sensu-go/default.nix @@ -4,7 +4,7 @@ let generic = { subPackages, pname, postInstall ? "" }: buildGoModule rec { inherit pname; - version = "5.14.1"; + version = "5.18.1"; shortRev = "1f6d16b"; # for internal version info goPackagePath = "github.com/sensu/sensu-go"; @@ -13,12 +13,12 @@ let owner = "sensu"; repo = "sensu-go"; rev = "v${version}"; - sha256 = "1fhvw2hrn2zqpz3ypsx6i1zrn83pdifvsyzpbhzxmff6l9a290bq"; + sha256 = "1iwlkm7ac7brap45r6ly0blywgq6f28r1nws3yf0ybydv30brfj4"; }; inherit subPackages postInstall; - modSha256 = "0c0cj0ylhifyb7l9kjmgdlfzcz8528fzw8kr3c5y7j5h6pih06sy"; + modSha256 = "02h4cav6ivzs3z0qakwxzf5lfy6hzax5c0i2icp0qymqc2789npw"; buildFlagsArray = let versionPkg = "github.com/sensu/sensu-go/version"; @@ -29,7 +29,7 @@ let ''; meta = { - homepage = https://sensu.io; + homepage = "https://sensu.io"; description = "Open source monitoring tool for ephemeral infrastructure & distributed applications"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ thefloweringash ]; diff --git a/pkgs/servers/nosql/redis/default.nix b/pkgs/servers/nosql/redis/default.nix index 278ba8d13c57..8e75ee4fbde2 100644 --- a/pkgs/servers/nosql/redis/default.nix +++ b/pkgs/servers/nosql/redis/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, lua, jemalloc, nixosTests }: stdenv.mkDerivation rec { - version = "5.0.7"; + version = "5.0.8"; pname = "redis"; src = fetchurl { url = "http://download.redis.io/releases/${pname}-${version}.tar.gz"; - sha256 = "0ax8sf3vw0yadr41kzc04917scrg5wir1d94zmbz00b8pzm79nv1"; + sha256 = "1msfxr97aflk5zdgq8xvdbsgmzb906x0vdc1v6l2ccs35z2fmizk"; }; # Cross-compiling fixes @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { passthru.tests.redis = nixosTests.redis; meta = with stdenv.lib; { - homepage = https://redis.io; + homepage = "https://redis.io"; description = "An open source, advanced key-value store"; license = licenses.bsd3; platforms = platforms.unix; diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix new file mode 100644 index 000000000000..2fc08e754b18 --- /dev/null +++ b/pkgs/servers/tailscale/default.nix @@ -0,0 +1,35 @@ +{ lib, buildGoModule, fetchFromGitHub, makeWrapper, iptables, iproute }: + +buildGoModule rec { + pname = "tailscale"; + version = "0.97-0"; + + src = fetchFromGitHub { + owner = "tailscale"; + repo = "tailscale"; + rev = "dd14b658a2f42a3b4d78682e4f4f82f730262c5c"; + sha256 = "0ckjqhj99c25h8xgyfkrd19nw5w4a7972nvba9r5faw5micjs02n"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + CGO_ENABLED = 0; + + goPackagePath = "tailscale.com"; + modSha256 = "0anpakcqz4irwxnm0iwm7wqzh84kv3yxxdvyr38154pbd0ys5pa2"; + subPackages = [ "cmd/tailscale" "cmd/tailscaled" ]; + + postInstall = '' + wrapProgram $out/bin/tailscaled --prefix PATH : ${ + lib.makeBinPath [ iproute iptables ] + } + ''; + + meta = with lib; { + homepage = "https://tailscale.com"; + description = "The node agent for Tailscale, a mesh VPN built on WireGuard"; + platforms = platforms.linux; + license = licenses.bsd3; + maintainers = with maintainers; [ danderson mbaillie ]; + }; +} diff --git a/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix b/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix index c5426431b3ce..0ac818b9f223 100644 --- a/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix +++ b/pkgs/stdenv/linux/bootstrap-files/armv5tel.nix @@ -1,12 +1,18 @@ { + # Note: do not use Hydra as a source URL. Ask a member of the + # infrastructure team to mirror the job. busybox = import <nix/fetchurl.nix> { - url = https://hydra.nixos.org/build/112609163/download/2/busybox; - sha256 = "0dc5471dc6a5f69ad98eb7445f51a61e88aa5792d7a677025bf012bdb513b763"; + # from job: https://hydra.nixos.org/job/nixpkgs/cross-trunk/bootstrapTools.armv5tel.dist/latest + # from build: https://hydra.nixos.org/build/114203025 + url = "http://tarballs.nixos.org/stdenv-linux/armv5tel/0eb0ddc4dbe3cd5415c6b6e657538eb809fc3778/busybox"; + # note: the following hash is different than the above hash, due to executable = true + sha256 = "0qxp2fsvs4phbc17g9npj9bsm20ylr8myi5pivcrmxm5qqflgi8d"; executable = true; }; - bootstrapTools = import <nix/fetchurl.nix> { - url = https://hydra.nixos.org/build/112609163/download/1/bootstrap-tools.tar.xz; - sha256 = "ca0564eca4eb944649ce10ec70859640427bf2241243af62812b163176487e02"; + # from job: https://hydra.nixos.org/job/nixpkgs/cross-trunk/bootstrapTools.armv5tel.dist/latest + # from build: https://hydra.nixos.org/build/114203025 + url = "http://tarballs.nixos.org/stdenv-linux/armv5tel/0eb0ddc4dbe3cd5415c6b6e657538eb809fc3778/bootstrap-tools.tar.xz"; + sha256 = "28327343db5ecc7f7811449ec69280d5867fa5d1d377cab0426beb9d4e059ed6"; }; } diff --git a/pkgs/stdenv/linux/bootstrap-files/armv6l.nix b/pkgs/stdenv/linux/bootstrap-files/armv6l.nix index caf7df66cef6..8bc99c64c681 100644 --- a/pkgs/stdenv/linux/bootstrap-files/armv6l.nix +++ b/pkgs/stdenv/linux/bootstrap-files/armv6l.nix @@ -1,12 +1,18 @@ { + # Note: do not use Hydra as a source URL. Ask a member of the + # infrastructure team to mirror the job. busybox = import <nix/fetchurl.nix> { - url = https://hydra.nixos.org/build/112609441/download/2/busybox; - sha256 = "e6f6aecb675e924a96516f4379445dd2c0ba8b9c438fbfbaa2dc14ccce2802e0"; + # from job: https://hydra.nixos.org/job/nixpkgs/cross-trunk/bootstrapTools.armv6l.dist/latest + # from build: https://hydra.nixos.org/build/114202834 + url = "http://tarballs.nixos.org/stdenv-linux/armv6l/0eb0ddc4dbe3cd5415c6b6e657538eb809fc3778/busybox"; + # note: the following hash is different than the above hash, due to executable = true + sha256 = "1q02537cq56wlaxbz3s3kj5vmh6jbm27jhvga6b4m4jycz5sxxp6"; executable = true; }; - bootstrapTools = import <nix/fetchurl.nix> { - url = https://hydra.nixos.org/build/112609441/download/1/bootstrap-tools.tar.xz; - sha256 = "7a3f20def1a17ebf0edb5a92c403558429bcc2ac3d931b5e1bd88606cb217778"; + # from job: https://hydra.nixos.org/job/nixpkgs/cross-trunk/bootstrapTools.armv6l.dist/latest + # from build: https://hydra.nixos.org/build/114202834 + url = "http://tarballs.nixos.org/stdenv-linux/armv6l/0eb0ddc4dbe3cd5415c6b6e657538eb809fc3778/bootstrap-tools.tar.xz"; + sha256 = "0810fe74f8cd09831f177d075bd451a66b71278d3cc8db55b07c5e38ef3fbf3f"; }; } diff --git a/pkgs/stdenv/linux/bootstrap-files/armv7l.nix b/pkgs/stdenv/linux/bootstrap-files/armv7l.nix index 67bca39eaf68..74d158452231 100644 --- a/pkgs/stdenv/linux/bootstrap-files/armv7l.nix +++ b/pkgs/stdenv/linux/bootstrap-files/armv7l.nix @@ -1,12 +1,18 @@ { + # Note: do not use Hydra as a source URL. Ask a member of the + # infrastructure team to mirror the job. busybox = import <nix/fetchurl.nix> { - url = https://hydra.nixos.org/build/112609103/download/2/busybox; - sha256 = "566a469dac214b31e4abdb0a91d32550bab1be5858d329e1b6074eef05370ca3"; + # from job: https://hydra.nixos.org/job/nixpkgs/cross-trunk/bootstrapTools.armv7l.dist/latest + # from build: https://hydra.nixos.org/build/114203060 + url = "http://tarballs.nixos.org/stdenv-linux/armv7l/0eb0ddc4dbe3cd5415c6b6e657538eb809fc3778/busybox"; + # note: the following hash is different than the above hash, due to executable = true + sha256 = "18qc6w2yykh7nvhjklsqb2zb3fjh4p9r22nvmgj32jr1mjflcsjn"; executable = true; }; - bootstrapTools = import <nix/fetchurl.nix> { - url = https://hydra.nixos.org/build/112609103/download/1/bootstrap-tools.tar.xz; - sha256 = "79fa2d7722aeb856c7c9b62a3fd64b6d261fd6f6bcbac486f0a2a7d823210550"; + # from job: https://hydra.nixos.org/job/nixpkgs/cross-trunk/bootstrapTools.armv7l.dist/latest + # from build: https://hydra.nixos.org/build/114203060 + url = "http://tarballs.nixos.org/stdenv-linux/armv7l/0eb0ddc4dbe3cd5415c6b6e657538eb809fc3778/bootstrap-tools.tar.xz"; + sha256 = "cf2968e8085cd3e6b3e9359624060ad24d253800ede48c5338179f6e0082c443"; }; } diff --git a/pkgs/tools/admin/berglas/default.nix b/pkgs/tools/admin/berglas/default.nix index aaca67baa165..c1c46da41b75 100644 --- a/pkgs/tools/admin/berglas/default.nix +++ b/pkgs/tools/admin/berglas/default.nix @@ -1,22 +1,21 @@ { stdenv, buildGoModule, fetchFromGitHub }: buildGoModule rec { - - name = "berglas-${version}"; - version = "0.5.0"; + pname = "berglas"; + version = "0.5.1"; src = fetchFromGitHub { owner = "GoogleCloudPlatform"; - repo = "berglas"; - rev = "v0.5.0"; - sha256 = "1y5w2czipwj069w4zxnyb9xqv5mx0yjjramykf3vm3q478bk3rm7"; + repo = pname; + rev = "v${version}"; + sha256 = "0y393g36h35zzqyf5b10j6qq2jhvz83j17cmasnv6wbyrb3vnn0n"; }; - modSha256 = "0y4ajii3pv25s4gjazf6fl0b9wax17cmwhbmiybqhp61annca7kr"; + modSha256 = "0m2bqx102lf6nihdjbl8a08xcwi80rawvh91j1cav0njm9w5vmmm"; meta = with stdenv.lib; { description = "A tool for managing secrets on Google Cloud"; - homepage = https://github.com/GoogleCloudPlatform/berglas; + homepage = "https://github.com/GoogleCloudPlatform/berglas"; license = licenses.asl20; platforms = platforms.unix; }; diff --git a/pkgs/tools/admin/lego/default.nix b/pkgs/tools/admin/lego/default.nix index 3a0d9491d157..72c61ceecaf2 100644 --- a/pkgs/tools/admin/lego/default.nix +++ b/pkgs/tools/admin/lego/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "lego"; - version = "3.4.0"; + version = "3.5.0"; src = fetchFromGitHub { owner = "go-acme"; repo = pname; rev = "v${version}"; - sha256 = "198nc0rpkxyjms2lvv7g0rzy8cczzs662ncywzmcqsd1qs67zvif"; + sha256 = "08mh2q426gmhcaz578lw08jbxfqb7qm37cd00ap937dymi1zs9qw"; }; - modSha256 = "09w2lsn1zbn750m77084x886k4lx264dgl80d9g7kxjnsqgsmzig"; + modSha256 = "10n8pcbmzlnk63gzsjb1xnmjwxfhxsqx8ffpcbwdzq9fc5yvjiii"; subPackages = [ "cmd/lego" ]; buildFlagsArray = [ diff --git a/pkgs/tools/filesystems/fuse-overlayfs/default.nix b/pkgs/tools/filesystems/fuse-overlayfs/default.nix index 6debd333c41c..00f893139427 100644 --- a/pkgs/tools/filesystems/fuse-overlayfs/default.nix +++ b/pkgs/tools/filesystems/fuse-overlayfs/default.nix @@ -1,17 +1,17 @@ -{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig, fuse3 }: +{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkg-config, fuse3 }: stdenv.mkDerivation rec { pname = "fuse-overlayfs"; - version = "0.7.7"; + version = "0.7.8"; src = fetchFromGitHub { owner = "containers"; repo = pname; rev = "v${version}"; - sha256 = "0fifqa4f79lhklajsf1aiipc4cyykscqlns9pzbcq5hdphi9fbsb"; + sha256 = "10wsssf9mxgkgcqks3z02y9ya8xh4wd45lsb1jrvw31wmz9zpalc"; }; - nativeBuildInputs = [ autoreconfHook pkgconfig ]; + nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ fuse3 ]; diff --git a/pkgs/tools/filesystems/simg2img/default.nix b/pkgs/tools/filesystems/simg2img/default.nix index 78f80ecfa87a..6782987c027f 100644 --- a/pkgs/tools/filesystems/simg2img/default.nix +++ b/pkgs/tools/filesystems/simg2img/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "simg2img"; - version = "1.1.3"; + version = "1.1.4"; src = fetchFromGitHub { owner = "anestisb"; repo = "android-simg2img"; rev = version; - sha256 = "119gl9i61g2wr07hzv6mi1ihql6yd6pwq94ki2pgcpfbamv8f6si"; + sha256 = "1xm9kaqs2w8c7a4psv78gv66gild88mpgjn5lj087d7jh1jxy7bf"; }; buildInputs = [ zlib ]; diff --git a/pkgs/tools/misc/blsd/default.nix b/pkgs/tools/misc/blsd/default.nix index 23bd7ed172c4..1b860fc1b4d5 100644 --- a/pkgs/tools/misc/blsd/default.nix +++ b/pkgs/tools/misc/blsd/default.nix @@ -24,5 +24,6 @@ buildGoPackage { license = licenses.mit; maintainers = [ maintainers.magnetophon ]; platforms = platforms.unix; + broken = true; # since 2020-02-08, libgit2 is incompatible upstream is dead. }; } diff --git a/pkgs/tools/misc/peep/0001-Add-Cargo.lock-by-running-cargo-vendor.patch b/pkgs/tools/misc/peep/0001-Add-Cargo.lock-by-running-cargo-vendor.patch new file mode 100644 index 000000000000..f444d72c4648 --- /dev/null +++ b/pkgs/tools/misc/peep/0001-Add-Cargo.lock-by-running-cargo-vendor.patch @@ -0,0 +1,570 @@ +From 153e9acd6fb50c50db5ebdd03303a42f56ec05e0 Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch <maximilian@mbosch.me> +Date: Tue, 17 Mar 2020 23:14:36 +0100 +Subject: [PATCH] Add Cargo.lock by running `cargo vendor` + +--- + Cargo.lock | 551 +++++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 551 insertions(+) + create mode 100644 Cargo.lock + +diff --git a/Cargo.lock b/Cargo.lock +new file mode 100644 +index 0000000..91f9100 +--- /dev/null ++++ b/Cargo.lock +@@ -0,0 +1,551 @@ ++# This file is automatically @generated by Cargo. ++# It is not intended for manual editing. ++[[package]] ++name = "aho-corasick" ++version = "0.7.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada" ++dependencies = [ ++ "memchr", ++] ++ ++[[package]] ++name = "autocfg" ++version = "1.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" ++ ++[[package]] ++name = "bitflags" ++version = "1.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" ++ ++[[package]] ++name = "byteorder" ++version = "1.3.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de" ++ ++[[package]] ++name = "bytes" ++version = "0.4.12" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" ++dependencies = [ ++ "byteorder", ++ "iovec", ++] ++ ++[[package]] ++name = "cc" ++version = "1.0.50" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd" ++ ++[[package]] ++name = "cfg-if" ++version = "0.1.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" ++ ++[[package]] ++name = "cloudabi" ++version = "0.0.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" ++dependencies = [ ++ "bitflags", ++] ++ ++[[package]] ++name = "crossbeam-utils" ++version = "0.7.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" ++dependencies = [ ++ "autocfg", ++ "cfg-if", ++ "lazy_static", ++] ++ ++[[package]] ++name = "ctrlc" ++version = "3.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7a4ba686dff9fa4c1c9636ce1010b0cf98ceb421361b0bb3d6faeec43bd217a7" ++dependencies = [ ++ "nix 0.17.0", ++ "winapi 0.3.8", ++] ++ ++[[package]] ++name = "fnv" ++version = "1.0.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" ++ ++[[package]] ++name = "fuchsia-zircon" ++version = "0.3.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" ++dependencies = [ ++ "bitflags", ++ "fuchsia-zircon-sys", ++] ++ ++[[package]] ++name = "fuchsia-zircon-sys" ++version = "0.3.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" ++ ++[[package]] ++name = "futures" ++version = "0.1.29" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef" ++ ++[[package]] ++name = "getopts" ++version = "0.2.21" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5" ++dependencies = [ ++ "unicode-width", ++] ++ ++[[package]] ++name = "hermit-abi" ++version = "0.1.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1010591b26bbfe835e9faeabeb11866061cc7dcebffd56ad7d0942d0e61aefd8" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "inotify" ++version = "0.6.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "40b54539f3910d6f84fbf9a643efd6e3aa6e4f001426c0329576128255994718" ++dependencies = [ ++ "bitflags", ++ "futures", ++ "inotify-sys", ++ "libc", ++ "mio", ++ "tokio-io", ++ "tokio-reactor", ++] ++ ++[[package]] ++name = "inotify-sys" ++version = "0.1.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e74a1aa87c59aeff6ef2cc2fa62d41bc43f54952f55652656b18a02fd5e356c0" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "iovec" ++version = "0.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "kernel32-sys" ++version = "0.2.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" ++dependencies = [ ++ "winapi 0.2.8", ++ "winapi-build", ++] ++ ++[[package]] ++name = "lazy_static" ++version = "1.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" ++ ++[[package]] ++name = "libc" ++version = "0.2.68" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "dea0c0405123bba743ee3f91f49b1c7cfb684eef0da0a50110f758ccf24cdff0" ++ ++[[package]] ++name = "lock_api" ++version = "0.3.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "79b2de95ecb4691949fea4716ca53cdbcfccb2c612e19644a8bad05edcf9f47b" ++dependencies = [ ++ "scopeguard", ++] ++ ++[[package]] ++name = "log" ++version = "0.4.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7" ++dependencies = [ ++ "cfg-if", ++] ++ ++[[package]] ++name = "maybe-uninit" ++version = "2.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" ++ ++[[package]] ++name = "memchr" ++version = "2.3.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400" ++ ++[[package]] ++name = "mio" ++version = "0.6.21" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f" ++dependencies = [ ++ "cfg-if", ++ "fuchsia-zircon", ++ "fuchsia-zircon-sys", ++ "iovec", ++ "kernel32-sys", ++ "libc", ++ "log", ++ "miow", ++ "net2", ++ "slab", ++ "winapi 0.2.8", ++] ++ ++[[package]] ++name = "miow" ++version = "0.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" ++dependencies = [ ++ "kernel32-sys", ++ "net2", ++ "winapi 0.2.8", ++ "ws2_32-sys", ++] ++ ++[[package]] ++name = "net2" ++version = "0.2.33" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" ++dependencies = [ ++ "cfg-if", ++ "libc", ++ "winapi 0.3.8", ++] ++ ++[[package]] ++name = "nix" ++version = "0.11.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "becb657d662f1cd2ef38c7ad480ec6b8cf9e96b27adb543e594f9cf0f2e6065c" ++dependencies = [ ++ "bitflags", ++ "cc", ++ "cfg-if", ++ "libc", ++ "void", ++] ++ ++[[package]] ++name = "nix" ++version = "0.17.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "50e4785f2c3b7589a0d0c1dd60285e1188adac4006e8abd6dd578e1567027363" ++dependencies = [ ++ "bitflags", ++ "cc", ++ "cfg-if", ++ "libc", ++ "void", ++] ++ ++[[package]] ++name = "num_cpus" ++version = "1.12.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "46203554f085ff89c235cd12f7075f3233af9b11ed7c9e16dfe2560d03313ce6" ++dependencies = [ ++ "hermit-abi", ++ "libc", ++] ++ ++[[package]] ++name = "numtoa" ++version = "0.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef" ++ ++[[package]] ++name = "parking_lot" ++version = "0.9.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252" ++dependencies = [ ++ "lock_api", ++ "parking_lot_core", ++ "rustc_version", ++] ++ ++[[package]] ++name = "parking_lot_core" ++version = "0.6.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b" ++dependencies = [ ++ "cfg-if", ++ "cloudabi", ++ "libc", ++ "redox_syscall", ++ "rustc_version", ++ "smallvec", ++ "winapi 0.3.8", ++] ++ ++[[package]] ++name = "peep" ++version = "0.1.4" ++dependencies = [ ++ "ctrlc", ++ "getopts", ++ "inotify", ++ "libc", ++ "mio", ++ "nix 0.11.1", ++ "regex", ++ "termion", ++ "termios", ++ "unicode-width", ++] ++ ++[[package]] ++name = "redox_syscall" ++version = "0.1.56" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84" ++ ++[[package]] ++name = "redox_termios" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" ++dependencies = [ ++ "redox_syscall", ++] ++ ++[[package]] ++name = "regex" ++version = "1.3.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8900ebc1363efa7ea1c399ccc32daed870b4002651e0bed86e72d501ebbe0048" ++dependencies = [ ++ "aho-corasick", ++ "memchr", ++ "regex-syntax", ++ "thread_local", ++] ++ ++[[package]] ++name = "regex-syntax" ++version = "0.6.17" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7fe5bd57d1d7414c6b5ed48563a2c855d995ff777729dcd91c369ec7fea395ae" ++ ++[[package]] ++name = "rustc_version" ++version = "0.2.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" ++dependencies = [ ++ "semver", ++] ++ ++[[package]] ++name = "scopeguard" ++version = "1.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" ++ ++[[package]] ++name = "semver" ++version = "0.9.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" ++dependencies = [ ++ "semver-parser", ++] ++ ++[[package]] ++name = "semver-parser" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" ++ ++[[package]] ++name = "slab" ++version = "0.4.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" ++ ++[[package]] ++name = "smallvec" ++version = "0.6.13" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6" ++dependencies = [ ++ "maybe-uninit", ++] ++ ++[[package]] ++name = "termion" ++version = "1.5.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c22cec9d8978d906be5ac94bceb5a010d885c626c4c8855721a4dbd20e3ac905" ++dependencies = [ ++ "libc", ++ "numtoa", ++ "redox_syscall", ++ "redox_termios", ++] ++ ++[[package]] ++name = "termios" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "thread_local" ++version = "1.0.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14" ++dependencies = [ ++ "lazy_static", ++] ++ ++[[package]] ++name = "tokio-executor" ++version = "0.1.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671" ++dependencies = [ ++ "crossbeam-utils", ++ "futures", ++] ++ ++[[package]] ++name = "tokio-io" ++version = "0.1.13" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" ++dependencies = [ ++ "bytes", ++ "futures", ++ "log", ++] ++ ++[[package]] ++name = "tokio-reactor" ++version = "0.1.12" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351" ++dependencies = [ ++ "crossbeam-utils", ++ "futures", ++ "lazy_static", ++ "log", ++ "mio", ++ "num_cpus", ++ "parking_lot", ++ "slab", ++ "tokio-executor", ++ "tokio-io", ++ "tokio-sync", ++] ++ ++[[package]] ++name = "tokio-sync" ++version = "0.1.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee" ++dependencies = [ ++ "fnv", ++ "futures", ++] ++ ++[[package]] ++name = "unicode-width" ++version = "0.1.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479" ++ ++[[package]] ++name = "void" ++version = "1.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" ++ ++[[package]] ++name = "winapi" ++version = "0.2.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" ++ ++[[package]] ++name = "winapi" ++version = "0.3.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6" ++dependencies = [ ++ "winapi-i686-pc-windows-gnu", ++ "winapi-x86_64-pc-windows-gnu", ++] ++ ++[[package]] ++name = "winapi-build" ++version = "0.1.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" ++ ++[[package]] ++name = "winapi-i686-pc-windows-gnu" ++version = "0.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" ++ ++[[package]] ++name = "winapi-x86_64-pc-windows-gnu" ++version = "0.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" ++ ++[[package]] ++name = "ws2_32-sys" ++version = "0.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" ++dependencies = [ ++ "winapi 0.2.8", ++ "winapi-build", ++] +-- +2.25.0 + diff --git a/pkgs/tools/misc/peep/default.nix b/pkgs/tools/misc/peep/default.nix new file mode 100644 index 000000000000..161ea3f75e63 --- /dev/null +++ b/pkgs/tools/misc/peep/default.nix @@ -0,0 +1,23 @@ +{ lib, rustPlatform, fetchFromGitHub }: + +rustPlatform.buildRustPackage rec { + pname = "peep"; + version = "0.1.4"; + + src = fetchFromGitHub { + owner = "ryochack"; + repo = "peep"; + rev = "v${version}"; + sha256 = "0c0fphnhq9vg9jjnkl35k56jbcnyz2ballsnkbm2xrh8vbyvk1av"; + }; + + cargoPatches = [ ./0001-Add-Cargo.lock-by-running-cargo-vendor.patch ]; + cargoSha256 = "15qc9a4zpnq7lbcaji1mkik93qkx366misczbi1mipiq5w7sgn0l"; + + meta = with lib; { + description = "The CLI text viewer tool that works like less command on small pane within the terminal window"; + license = licenses.mit; + homepage = "https://github.com/ryochack/peep"; + maintainers = with maintainers; [ ma27 ]; + }; +} diff --git a/pkgs/tools/misc/zabbix-cli/default.nix b/pkgs/tools/misc/zabbix-cli/default.nix index d21573885123..74e7e7223d14 100644 --- a/pkgs/tools/misc/zabbix-cli/default.nix +++ b/pkgs/tools/misc/zabbix-cli/default.nix @@ -4,7 +4,7 @@ let in pythonPackages.buildPythonApplication rec { pname = "zabbix-cli"; - version = "2.1.1"; + version = "2.2.1"; propagatedBuildInputs = with pythonPackages; [ ipaddr requests ]; @@ -17,7 +17,7 @@ in pythonPackages.buildPythonApplication rec { owner = "usit-gd"; repo = "zabbix-cli"; rev = version; - sha256 = "10a1cvjqwlqqfz52ajv9i53h6v95w8y7xmgqr79q2c4v1nz5bfks"; + sha256 = "0wzmrn8p09ksqhhgawr179c4az7p2liqr0l4q2dra62bxliawyqz"; }; meta = with lib; { diff --git a/pkgs/tools/networking/frp/default.nix b/pkgs/tools/networking/frp/default.nix index 2ed70c9ef202..f44e2208646c 100644 --- a/pkgs/tools/networking/frp/default.nix +++ b/pkgs/tools/networking/frp/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "frp"; - version = "0.31.2"; + version = "0.32.0"; src = fetchFromGitHub { owner = "fatedier"; repo = pname; rev = "v${version}"; - sha256 = "0947psq6qcr175xsgwr5k6idphs3s4vdv130ms738bcqf0h9snky"; + sha256 = "1hj3xy7ihwl66hyxc1m8k3fwgz5jyx1bd32f80d7266klhjqf6nw"; }; - modSha256 = "1zbl0gfc99pbzdacxhfa1k3y6i7v13sb441wpbp9aygxhvwqrms9"; + modSha256 = "1v90w5grc0vjpcp0m56d73zi0qnbswgz1rcvcwrjfa3rwqhigbal"; subPackages = [ "cmd/frpc" "cmd/frps" ]; diff --git a/pkgs/tools/networking/http2tcp/default.nix b/pkgs/tools/networking/http2tcp/default.nix new file mode 100644 index 000000000000..b1f3c704b1fa --- /dev/null +++ b/pkgs/tools/networking/http2tcp/default.nix @@ -0,0 +1,47 @@ +{ lib +, python3 +, stdenv +, fetchurl +}: + +stdenv.mkDerivation rec { + pname = "http2tcp"; + version = "0.5"; + + src = fetchurl { + url = "https://www.linta.de/~aehlig/http2tcp/${pname}-${version}.tar.gz"; + sha256 = "34fb83c091689dee398ca80db76487e0c39abb17cef390d845ffd888009a5caa"; + }; + + buildInputs = [ + (python3.withPackages (ps: [ + ps.wsgitools + ])) + ]; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/{bin,share/${pname}} + cp http2tcp* $out/bin + cp Protocol $out/share/${pname}/ + ''; + + meta = with lib; { + maintainers = with maintainers; [ clkamp ]; + description = "A tool for tunneling TCP connections via HTTP GET requests"; + longDescription = '' + The http2tcp tools allow to tunnel tcp connections (presumably + ssh) via syntactically correct http requests. It is designed to + work in the presence of so-called "transparent" + store-and-forward proxies disallowing POST requests. + + It also turned out to be useful to stabilise connections where + the client's internet connection is unreliable (frequent long + network outages, rapidly changing IP address, etc). + ''; + homepage = "https://www.linta.de/~aehlig/http2tcp/"; + license = licenses.bsd3; + platforms = platforms.all; + }; +} diff --git a/pkgs/tools/networking/inadyn/default.nix b/pkgs/tools/networking/inadyn/default.nix index 20169121cd9a..9f7d79bdd88c 100644 --- a/pkgs/tools/networking/inadyn/default.nix +++ b/pkgs/tools/networking/inadyn/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "inadyn"; - version = "2.5"; + version = "2.6"; src = fetchFromGitHub { owner = "troglobit"; repo = "inadyn"; rev = "v${version}"; - sha256 = "0izhynqfj4xafsrc653wym8arwps0qim203w8l0g5z9vzfxfnvqw"; + sha256 = "013kxlglxliajv3lrsix4w88w40g709rvycajb6ad6gbh8giqv47"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; meta = with stdenv.lib; { - homepage = http://troglobit.com/project/inadyn/; + homepage = "http://troglobit.com/project/inadyn/"; description = "Free dynamic DNS client"; license = licenses.gpl2Plus; maintainers = with maintainers; [ ]; diff --git a/pkgs/tools/networking/iodine/default.nix b/pkgs/tools/networking/iodine/default.nix index 44bf52c9933f..c978a330ceeb 100644 --- a/pkgs/tools/networking/iodine/default.nix +++ b/pkgs/tools/networking/iodine/default.nix @@ -1,11 +1,14 @@ -{ stdenv, fetchurl, zlib, nettools }: +{ stdenv, fetchFromGitHub, zlib, nettools, nixosTests }: stdenv.mkDerivation rec { - name = "iodine-0.7.0"; + pname = "iodine"; + version = "unstable-2019-09-27"; - src = fetchurl { - url = "https://code.kryo.se/iodine/${name}.tar.gz"; - sha256 = "0gh17kcxxi37k65zm4gqsvbk3aw7yphcs3c02pn1c4s2y6n40axd"; + src = fetchFromGitHub { + owner = "yarrick"; + repo = "iodine"; + rev = "8e14f18"; + sha256 = "0k8m99qfjd5n6n56jnq85y7q8h2i2b8yw6ba0kxsz4jyx97lavg3"; }; buildInputs = [ zlib ]; @@ -16,6 +19,10 @@ stdenv.mkDerivation rec { installFlags = [ "prefix=\${out}" ]; + passthru.tests = { + inherit (nixosTests) iodine; + }; + meta = { homepage = http://code.kryo.se/iodine/; description = "Tool to tunnel IPv4 data through a DNS server"; diff --git a/pkgs/tools/networking/network-manager/iodine/default.nix b/pkgs/tools/networking/network-manager/iodine/default.nix index 29c0d550fe2f..9042605caf17 100644 --- a/pkgs/tools/networking/network-manager/iodine/default.nix +++ b/pkgs/tools/networking/network-manager/iodine/default.nix @@ -1,15 +1,18 @@ -{ stdenv, fetchurl, substituteAll, iodine, intltool, pkgconfig, networkmanager, libsecret, gtk3 +{ stdenv, fetchFromGitLab, substituteAll, autoreconfHook, iodine, intltool, pkgconfig, networkmanager, libsecret, gtk3 , withGnome ? true, gnome3, fetchpatch, networkmanagerapplet }: let pname = "NetworkManager-iodine"; - version = "1.2.0"; + version = "unstable-2019-11-05"; in stdenv.mkDerivation { name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; - src = fetchurl { - url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0njdigakidji6mfmbsp8lfi8wl88z1dk8cljbva2w0xazyddbwyh"; + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "GNOME"; + repo = "network-manager-iodine"; + rev = "2ef0abf089b00a0546f214dde0d45e63f2990b79"; + sha256 = "1ps26fr9b1yyafj7lrzf2kmaxb0ipl0mhagch5kzrjdsc5xkajz7"; }; patches = [ @@ -27,11 +30,12 @@ in stdenv.mkDerivation { buildInputs = [ iodine networkmanager ] ++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ]; - nativeBuildInputs = [ intltool pkgconfig ]; + nativeBuildInputs = [ intltool autoreconfHook pkgconfig ]; # glib-2.62 deprecations NIX_CFLAGS_COMPILE = "-DGLIB_DISABLE_DEPRECATION_WARNINGS"; + preConfigure = "intltoolize"; configureFlags = [ "--without-libnm-glib" "--with-gnome=${if withGnome then "yes" else "no"}" diff --git a/pkgs/tools/networking/openapi-generator-cli/unstable.nix b/pkgs/tools/networking/openapi-generator-cli/unstable.nix new file mode 100644 index 000000000000..01a0ef2242ed --- /dev/null +++ b/pkgs/tools/networking/openapi-generator-cli/unstable.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, jre, makeWrapper }: + +stdenv.mkDerivation rec { + version = "5.0.0-2020-02-04"; + pname = "openapi-generator-cli"; + + jarfilename = "${pname}-${version}.jar"; + + nativeBuildInputs = [ + makeWrapper + ]; + + src = fetchurl { + url = "https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/5.0.0-SNAPSHOT/openapi-generator-cli-5.0.0-20200204.091421-37.jar"; + sha256 = "0swv976fcr2z8g53avr0r706c31xacb2dlnl8b4c8mzmi49byy7k"; + }; + + phases = [ "installPhase" ]; + + installPhase = '' + install -D "$src" "$out/share/java/${jarfilename}" + + makeWrapper ${jre}/bin/java $out/bin/${pname} \ + --add-flags "-jar $out/share/java/${jarfilename}" + ''; + + meta = with stdenv.lib; { + description = "Allows generation of API client libraries (SDK generation), server stubs and documentation automatically given an OpenAPI Spec"; + homepage = https://github.com/OpenAPITools/openapi-generator; + license = licenses.asl20; + maintainers = [ maintainers.shou ]; + }; +} + diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix index da5b8837523d..2a3987f490ff 100644 --- a/pkgs/tools/networking/zerotierone/default.nix +++ b/pkgs/tools/networking/zerotierone/default.nix @@ -21,6 +21,9 @@ stdenv.mkDerivation rec { patchShebangs ./doc/build.sh substituteInPlace ./doc/build.sh \ --replace '/usr/bin/ronn' '${buildPackages.ronn}/bin/ronn' \ + + substituteInPlace ./make-linux.mk \ + --replace 'armv5' 'armv6' ''; @@ -29,6 +32,13 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + buildFlags = [ "all" "selftest" ]; + + doCheck = stdenv.hostPlatform == stdenv.buildPlatform; + checkPhase = '' + ./zerotier-selftest + ''; + installPhase = '' install -Dt "$out/bin/" zerotier-one ln -s $out/bin/zerotier-one $out/bin/zerotier-idtool @@ -47,6 +57,6 @@ stdenv.mkDerivation rec { homepage = https://www.zerotier.com; license = licenses.bsl11; maintainers = with maintainers; [ sjmackenzie zimbatm ehmry obadz danielfullmer ]; - platforms = with platforms; x86_64 ++ aarch64 ++ arm; + platforms = platforms.all; }; } diff --git a/pkgs/tools/security/bitwarden_rs/default.nix b/pkgs/tools/security/bitwarden_rs/default.nix index ac8091a91045..cd71ea99fecb 100644 --- a/pkgs/tools/security/bitwarden_rs/default.nix +++ b/pkgs/tools/security/bitwarden_rs/default.nix @@ -8,13 +8,13 @@ let in rustPlatform.buildRustPackage rec { pname = "bitwarden_rs"; - version = "1.13.1"; + version = "1.14"; src = fetchFromGitHub { owner = "dani-garcia"; repo = pname; rev = version; - sha256 = "0af8cnpx86a096m59wmszcfyrfgf7adlqr39phbg647mgjfzwcrk"; + sha256 = "1ck0l0167kw1i5fjn507g4d18x2krbpk2ks0lnw9vzg0bwnzzwwd"; }; nativeBuildInputs = [ pkgconfig ]; @@ -25,7 +25,7 @@ in rustPlatform.buildRustPackage rec { RUSTC_BOOTSTRAP = 1; - cargoSha256 = "1zzf71d2pr4mkc3xpm58z1apgskw2z8rklly7q23qxkzg5h4qasx"; + cargoSha256 = "0cgk61dmc057p82g0apd4sx6a8vhvcipxikrdb0hds4frhqsr6i8"; cargoBuildFlags = [ featuresFlag ]; checkPhase = '' diff --git a/pkgs/tools/security/jwt-cli/default.nix b/pkgs/tools/security/jwt-cli/default.nix index fc40129f6caa..f2314d7a0e87 100644 --- a/pkgs/tools/security/jwt-cli/default.nix +++ b/pkgs/tools/security/jwt-cli/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "jwt-cli"; - version = "2.5.2"; + version = "3.0.1"; src = fetchFromGitHub { owner = "mike-engel"; repo = pname; rev = version; - sha256 = "1q6dqh8z6mhiksjrhi602cvq31jgc18pfbwf6mlm9gi1grpgm5dl"; + sha256 = "108pwk0h6zcbfmp0k8rhjxaa9yk8rhb78aaql22x48n11fnjl27i"; }; - cargoSha256 = "1krsr4a1f5rdba4l0i90yr5s8k8hg1np9n85ingx37gar9ahr1y3"; + cargoSha256 = "1xh2ylx5fqblhlrs8yhl3zf8kvgrqnwdwmix6yzch9bi5mv5c11w"; buildInputs = stdenv.lib.optional stdenv.isDarwin Security; diff --git a/pkgs/tools/security/keybase/default.nix b/pkgs/tools/security/keybase/default.nix index 9a8a283d799d..da4b9c99e20b 100644 --- a/pkgs/tools/security/keybase/default.nix +++ b/pkgs/tools/security/keybase/default.nix @@ -6,7 +6,7 @@ buildGoPackage rec { pname = "keybase"; - version = "5.2.1"; + version = "5.3.0"; goPackagePath = "github.com/keybase/client"; subPackages = [ "go/kbnm" "go/keybase" ]; @@ -17,7 +17,7 @@ buildGoPackage rec { owner = "keybase"; repo = "client"; rev = "v${version}"; - sha256 = "1gq5s202zlf6z6fd4qwbgzmddrzj50js3kzyln63xh0svc3sgfvl"; + sha256 = "0xqqzjlvq9sgjx1jzv0w2ls0365xzfh4iapzqkrqka635xfggwcn"; }; patches = [ diff --git a/pkgs/tools/security/keybase/gui.nix b/pkgs/tools/security/keybase/gui.nix index e46da9ca9b6a..0573391139b8 100644 --- a/pkgs/tools/security/keybase/gui.nix +++ b/pkgs/tools/security/keybase/gui.nix @@ -4,16 +4,16 @@ , runtimeShell, gsettings-desktop-schemas }: let - versionSuffix = "20200225210944.9845113a89"; + versionSuffix = "20200310205642.4f2689009b"; in stdenv.mkDerivation rec { pname = "keybase-gui"; - version = "5.2.1"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages + version = "5.3.0"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages src = fetchurl { url = "https://s3.amazonaws.com/prerelease.keybase.io/linux_binaries/deb/keybase_${version + "-" + versionSuffix}_amd64.deb"; - sha256 = "183vkwm12frdy50z6gyb1mffn3w8jvxxj472868af813r0n1akl5"; + sha256 = "0zasw2dk33k6c6xqsjnyz3b3s1j27vza9alkp0hpvds88mnnmjv1"; }; nativeBuildInputs = [ diff --git a/pkgs/tools/system/inxi/default.nix b/pkgs/tools/system/inxi/default.nix index 7866bece0661..f5b5d4ef7a2a 100644 --- a/pkgs/tools/system/inxi/default.nix +++ b/pkgs/tools/system/inxi/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "inxi"; - version = "3.0.37-1"; + version = "3.0.38-1"; src = fetchFromGitHub { owner = "smxi"; repo = "inxi"; rev = version; - sha256 = "15wvj9w601ci3bavd1hk5qlm8dfm7a7cjglczk29yir5yw2jww3f"; + sha256 = "1qw3sxgd3ly916bzzl3873s3flngwd3vh57slw0shsj7ivz8bfnm"; }; buildInputs = [ perl makeWrapper ]; @@ -24,7 +24,8 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "A full featured CLI system information tool"; - homepage = https://smxi.org/docs/inxi.htm; + homepage = "https://smxi.org/docs/inxi.htm"; + changelog = "https://github.com/smxi/inxi/blob/${version}/inxi.changelog"; license = licenses.gpl3Plus; platforms = platforms.unix; maintainers = with maintainers; [ primeos ]; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 2f29f9cc0173..af8cbed10613 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -488,6 +488,7 @@ mapAliases ({ tex-gyre-schola-math = tex-gyre-math.schola; # added 2018-04-03 tex-gyre-termes-math = tex-gyre-math.termes; # added 2018-04-03 tftp_hpa = tftp-hpa; # added 2015-04-03 + tomcat85 = tomcat8; # added 2020-03-11 torbrowser = tor-browser-bundle-bin; # added 2017-04-05 transporter = throw "transporter has been removed. It was archived upstream, so it's considered abandoned."; trang = jing-trang; # added 2018-04-25 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5ea8fb5d7b62..da01b5135e90 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -960,6 +960,8 @@ in hpe-ltfs = callPackage ../tools/backup/hpe-ltfs { }; + http2tcp = callPackage ../tools/networking/http2tcp { }; + httperf = callPackage ../tools/networking/httperf { }; ili2c = callPackage ../tools/misc/ili2c { }; @@ -2472,6 +2474,8 @@ in cmst = libsForQt5.callPackage ../tools/networking/cmst { }; + cmt = callPackage ../applications/audio/cmt {}; + codimd = callPackage ../servers/web-apps/codimd { nodejs = nodejs-10_x; }; @@ -5533,6 +5537,7 @@ in onioncircuits = callPackage ../tools/security/onioncircuits { }; openapi-generator-cli = callPackage ../tools/networking/openapi-generator-cli { }; + openapi-generator-cli-unstable = callPackage ../tools/networking/openapi-generator-cli/unstable.nix { }; opencc = callPackage ../tools/text/opencc { }; @@ -5716,6 +5721,8 @@ in pazi = callPackage ../tools/misc/pazi { }; + peep = callPackage ../tools/misc/peep { }; + pell = callPackage ../applications/misc/pell { }; pepper = callPackage ../tools/admin/salt/pepper { }; @@ -8992,7 +8999,6 @@ in swift = callPackage ../development/compilers/swift { }; swiProlog = callPackage ../development/compilers/swi-prolog { - openssl = openssl_1_0_2; inherit (darwin.apple_sdk.frameworks) Security; }; swiPrologWithGui = swiProlog.override { withGui = true; }; @@ -10500,7 +10506,7 @@ in # NOTE: Override and set icon-lang = null to use Awk instead of Icon. noweb = callPackage ../development/tools/literate-programming/noweb { }; - nuweb = callPackage ../development/tools/literate-programming/nuweb { tex = texlive.combined.scheme-small; }; + nuweb = callPackage ../development/tools/literate-programming/nuweb { tex = texlive.combined.scheme-medium; }; nrfutil = callPackage ../development/tools/misc/nrfutil { }; @@ -12907,6 +12913,8 @@ in libkate = callPackage ../development/libraries/libkate { }; + libkml = callPackage ../development/libraries/libkml { }; + libksba = callPackage ../development/libraries/libksba { }; libksi = callPackage ../development/libraries/libksi { }; @@ -16018,12 +16026,13 @@ in syncserver = callPackage ../servers/syncserver { }; + tailscale = callPackage ../servers/tailscale { }; + thanos = callPackage ../servers/monitoring/thanos { }; inherit (callPackages ../servers/http/tomcat { }) tomcat7 tomcat8 - tomcat85 tomcat9; tomcat_mysql_jdbc = callPackage ../servers/http/tomcat/jdbc/mysql { }; @@ -17475,7 +17484,13 @@ in anonymousPro = callPackage ../data/fonts/anonymous-pro { }; - ant-theme = callPackage ../data/themes/ant-theme { }; + ant-theme = callPackage ../data/themes/ant-theme/ant.nix { }; + + ant-bloody-theme = callPackage ../data/themes/ant-theme/ant-bloody.nix { }; + + ant-dracula-theme = callPackage ../data/themes/ant-theme/ant-dracula.nix { }; + + ant-nebula-theme = callPackage ../data/themes/ant-theme/ant-nebula.nix { }; arc-icon-theme = callPackage ../data/icons/arc-icon-theme { }; @@ -18350,6 +18365,8 @@ in astroid = callPackage ../applications/networking/mailreaders/astroid { }; + aucatctl = callPackage ../applications/audio/aucatctl { }; + audacious = callPackage ../applications/audio/audacious { }; audaciousQt5 = libsForQt5.callPackage ../applications/audio/audacious/qt-5.nix { }; @@ -18830,6 +18847,7 @@ in docker-gc = callPackage ../applications/virtualization/docker/gc.nix { }; docker-machine = callPackage ../applications/networking/cluster/docker-machine { }; + docker-machine-hyperkit = callPackage ../applications/networking/cluster/docker-machine/hyperkit.nix { }; docker-machine-kvm = callPackage ../applications/networking/cluster/docker-machine/kvm.nix { }; docker-machine-kvm2 = callPackage ../applications/networking/cluster/docker-machine/kvm2.nix { }; docker-machine-xhyve = callPackage ../applications/networking/cluster/docker-machine/xhyve.nix { @@ -19999,8 +20017,6 @@ in josm = callPackage ../applications/misc/josm { }; - jbrout = callPackage ../applications/graphics/jbrout { }; - jwm = callPackage ../applications/window-managers/jwm { }; jwm-settings-manager = callPackage ../applications/window-managers/jwm/jwm-settings-manager.nix { }; @@ -20123,6 +20139,8 @@ in kubeval = callPackage ../applications/networking/cluster/kubeval { }; + kubeval-schema = callPackage ../applications/networking/cluster/kubeval/schema.nix { }; + kubernetes = callPackage ../applications/networking/cluster/kubernetes { go = buildPackages.go_1_13; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0773a1984ab5..40b42fbca78c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4619,7 +4619,7 @@ in { offtrac = callPackage ../development/python-modules/offtrac { }; - openpyxl = if isPy3k then + openpyxl = if pythonAtLeast "3.6" then callPackage ../development/python-modules/openpyxl { } else callPackage ../development/python-modules/openpyxl/2.nix { }; @@ -6245,6 +6245,8 @@ in { wsgiproxy2 = callPackage ../development/python-modules/wsgiproxy2 { }; + wsgitools = callPackage ../development/python-modules/wsgitools { }; + wurlitzer = callPackage ../development/python-modules/wurlitzer { }; xcaplib = callPackage ../development/python-modules/xcaplib { }; |