diff --git a/doc/builders/trivial-builders.chapter.md b/doc/builders/trivial-builders.chapter.md index 32944567c053..bc1317cc49c0 100644 --- a/doc/builders/trivial-builders.chapter.md +++ b/doc/builders/trivial-builders.chapter.md @@ -50,3 +50,50 @@ Many more commands wrap `writeTextFile` including `writeText`, `writeTextDir`, ` ## `symlinkJoin` {#trivial-builder-symlinkJoin} This can be used to put many derivations into the same directory structure. It works by creating a new derivation and adding symlinks to each of the paths listed. It expects two arguments, `name`, and `paths`. `name` is the name used in the Nix store path for the created derivation. `paths` is a list of paths that will be symlinked. These paths can be to Nix store derivations or any other subdirectory contained within. + +## `writeReferencesToFile` {#trivial-builder-writeReferencesToFile} + +Writes the closure of transitive dependencies to a file. + +This produces the equivalent of `nix-store -q --requisites`. + +For example, + +```nix +writeReferencesToFile (writeScriptBin "hi" ''${hello}/bin/hello'') +``` + +produces an output path `/nix/store/-runtime-deps` containing + +```nix +/nix/store/-hello-2.10 +/nix/store/-hi +/nix/store/-libidn2-2.3.0 +/nix/store/-libunistring-0.9.10 +/nix/store/-glibc-2.32-40 +``` + +You can see that this includes `hi`, the original input path, +`hello`, which is a direct reference, but also +the other paths that are indirectly required to run `hello`. + +## `writeDirectReferencesToFile` {#trivial-builder-writeDirectReferencesToFile} + +Writes the set of references to the output file, that is, their immediate dependencies. + +This produces the equivalent of `nix-store -q --references`. + +For example, + +```nix +writeDirectReferencesToFile (writeScriptBin "hi" ''${hello}/bin/hello'') +``` + +produces an output path `/nix/store/-runtime-references` containing + +```nix +/nix/store/-hello-2.10 +``` + +but none of `hello`'s dependencies, because those are not referenced directly +by `hi`'s output. diff --git a/doc/languages-frameworks/dhall.section.md b/doc/languages-frameworks/dhall.section.md index 6ff397237a86..d1adcbf736bf 100644 --- a/doc/languages-frameworks/dhall.section.md +++ b/doc/languages-frameworks/dhall.section.md @@ -5,7 +5,7 @@ support for importing Dhall expressions, which is documented here: * [`dhall-lang.org` - Installing packages](https://docs.dhall-lang.org/tutorials/Language-Tour.html#installing-packages) -## Remote imports +## Remote imports {#ssec-dhall-remote-imports} Nixpkgs bypasses Dhall's support for remote imports using Dhall's semantic integrity checks. Specifically, any Dhall import can be protected by @@ -32,7 +32,7 @@ example, the Prelude Dhall package uses `pkgs.fetchFromGitHub` to fetch the to fetch Dhall code ensures that Dhall packages built using Nix remain pure and also behave well when built within a sandbox. -## Packaging a Dhall expression from scratch +## Packaging a Dhall expression from scratch {#ssec-dhall-packaging-expression} We can illustrate how Nixpkgs integrates Dhall by beginning from the following trivial Dhall expression with one dependency (the Prelude): @@ -117,7 +117,7 @@ in $ nix build --file ./example.nix dhallPackages.true ``` -## Contents of a Dhall package +## Contents of a Dhall package {#ssec-dhall-package-contents} The above package produces the following directory tree: @@ -224,7 +224,7 @@ $ cat ./result/source.dhall … ``` -## Packaging functions +## Packaging functions {#ssec-dhall-packaging-functions} We already saw an example of using `buildDhallPackage` to create a Dhall package from a single file, but most Dhall packages consist of more than one @@ -297,7 +297,7 @@ terms of `buildDhallPackage` that accepts the following arguments: Additionally, `buildDhallGitHubPackage` accepts the same arguments as `fetchFromGitHub`, such as `sha256` or `fetchSubmodules`. -## `dhall-to-nixpkgs` +## `dhall-to-nixpkgs` {#ssec-dhall-dhall-to-nixpkgs} You can use the `dhall-to-nixpkgs` command-line utility to automate packaging Dhall code. For example: @@ -342,7 +342,7 @@ $ dhall-to-nixpkgs directory ~/proj/dhall-semver } ``` -## Overriding dependency versions +## Overriding dependency versions {#ssec-dhall-overriding-dependency-versions} Suppose that we change our `true.dhall` example expression to depend on an older version of the Prelude (19.0.0): @@ -415,7 +415,7 @@ like this: }; ``` -## Overrides +## Overrides {#ssec-dhall-overrides} You can override any of the arguments to `buildDhallGitHubPackage` or `buildDhallDirectoryPackage` using the `overridePackage` attribute of a package. diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index c281a9dfc25e..dca8f9b96762 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2511,6 +2511,12 @@ githubId = 1316469; name = "Naomi Morse"; }; + dlesl = { + email = "dlesl@dlesl.com"; + github = "dlesl"; + githubId = 28980797; + name = "David Leslie"; + }; dmalikov = { email = "malikov.d.y@gmail.com"; github = "dmalikov"; @@ -4133,6 +4139,12 @@ githubId = 12491746; name = "Masato Yonekawa"; }; + hyzual = { + email = "hyzual@gmail.com"; + github = "Hyzual"; + githubId = 2051507; + name = "Joris Masson"; + }; hzeller = { email = "h.zeller@acm.org"; github = "hzeller"; @@ -5868,6 +5880,12 @@ githubId = 10626; name = "Andreas Wagner"; }; + lromor = { + email = "leonardo.romor@gmail.com"; + github = "lromor"; + githubId = 1597330; + name = "Leonardo Romor"; + }; lrworth = { email = "luke@worth.id.au"; name = "Luke Worth"; @@ -7311,6 +7329,12 @@ githubId = 1839979; name = "Niklas Thörne"; }; + nullx76 = { + email = "nix@xirion.net"; + github = "NULLx76"; + githubId = 1809198; + name = "Victor Roest"; + }; numinit = { email = "me@numin.it"; github = "numinit"; diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 9830a5f203e8..121696b17b81 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -895,6 +895,7 @@ ./services/system/kerberos/default.nix ./services/system/nscd.nix ./services/system/saslauthd.nix + ./services/system/self-deploy.nix ./services/system/uptimed.nix ./services/torrent/deluge.nix ./services/torrent/flexget.nix diff --git a/nixos/modules/programs/atop.nix b/nixos/modules/programs/atop.nix index 7ef8d687ca17..47597a0a4d4b 100644 --- a/nixos/modules/programs/atop.nix +++ b/nixos/modules/programs/atop.nix @@ -1,6 +1,6 @@ # Global configuration for atop. -{ config, lib, ... }: +{ config, lib, pkgs, ... }: with lib; @@ -12,11 +12,83 @@ in options = { - programs.atop = { + programs.atop = rec { + enable = mkEnableOption "Atop"; + + package = mkOption { + type = types.package; + default = pkgs.atop; + description = '' + Which package to use for Atop. + ''; + }; + + netatop = { + enable = mkOption { + type = types.bool; + default = false; + description = '' + Whether to install and enable the netatop kernel module. + Note: this sets the kernel taint flag "O" for loading out-of-tree modules. + ''; + }; + package = mkOption { + type = types.package; + default = config.boot.kernelPackages.netatop; + description = '' + Which package to use for netatop. + ''; + }; + }; + + atopgpu.enable = mkOption { + type = types.bool; + default = false; + description = '' + Whether to install and enable the atopgpud daemon to get information about + NVIDIA gpus. + ''; + }; + + setuidWrapper.enable = mkOption { + type = types.bool; + default = false; + description = '' + Whether to install a setuid wrapper for Atop. This is required to use some of + the features as non-root user (e.g.: ipc information, netatop, atopgpu). + Atop tries to drop the root privileges shortly after starting. + ''; + }; + + atopService.enable = mkOption { + type = types.bool; + default = true; + description = '' + Whether to enable the atop service responsible for storing statistics for + long-term analysis. + ''; + }; + atopRotateTimer.enable = mkOption { + type = types.bool; + default = true; + description = '' + Whether to enable the atop-rotate timer, which restarts the atop service + daily to make sure the data files are rotate. + ''; + }; + atopacctService.enable = mkOption { + type = types.bool; + default = true; + description = '' + Whether to enable the atopacct service which manages process accounting. + This allows Atop to gather data about processes that disappeared in between + two refresh intervals. + ''; + }; settings = mkOption { type = types.attrs; - default = {}; + default = { }; example = { flags = "a1f"; interval = 5; @@ -25,12 +97,50 @@ in Parameters to be written to /etc/atoprc. ''; }; - }; }; - config = mkIf (cfg.settings != {}) { - environment.etc.atoprc.text = - concatStrings (mapAttrsToList (n: v: "${n} ${toString v}\n") cfg.settings); - }; + config = mkIf cfg.enable ( + let + atop = + if cfg.atopgpu.enable then + (cfg.package.override { withAtopgpu = true; }) + else + cfg.package; + in + { + environment.etc = mkIf (cfg.settings != { }) { + atoprc.text = concatStrings + (mapAttrsToList + (n: v: '' + ${n} ${toString v} + '') + cfg.settings); + }; + environment.systemPackages = [ atop (lib.mkIf cfg.netatop.enable cfg.netatop.package) ]; + boot.extraModulePackages = [ (lib.mkIf cfg.netatop.enable cfg.netatop.package) ]; + systemd = + let + mkSystemd = type: cond: name: restartTriggers: { + ${name} = lib.mkIf cond { + inherit restartTriggers; + wantedBy = [ (if type == "services" then "multi-user.target" else if type == "timers" then "timers.target" else null) ]; + }; + }; + mkService = mkSystemd "services"; + mkTimer = mkSystemd "timers"; + in + { + packages = [ atop (lib.mkIf cfg.netatop.enable cfg.netatop.package) ]; + services = + mkService cfg.atopService.enable "atop" [ atop ] + // mkService cfg.atopacctService.enable "atopacct" [ atop ] + // mkService cfg.netatop.enable "netatop" [ cfg.netatop.package ] + // mkService cfg.atopgpu.enable "atopgpu" [ atop ]; + timers = mkTimer cfg.atopRotateTimer.enable "atop-rotate" [ atop ]; + }; + security.wrappers = + lib.mkIf cfg.setuidWrapper.enable { atop = { source = "${atop}/bin/atop"; }; }; + } + ); } diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix index ec85cb9d18c9..298abac8afa9 100644 --- a/nixos/modules/programs/dconf.nix +++ b/nixos/modules/programs/dconf.nix @@ -54,6 +54,8 @@ in services.dbus.packages = [ pkgs.dconf ]; + systemd.packages = [ pkgs.dconf ]; + # For dconf executable environment.systemPackages = [ pkgs.dconf ]; diff --git a/nixos/modules/programs/phosh.nix b/nixos/modules/programs/phosh.nix index 150874be6744..1f50065f7818 100644 --- a/nixos/modules/programs/phosh.nix +++ b/nixos/modules/programs/phosh.nix @@ -145,15 +145,7 @@ in { programs.feedbackd.enable = true; - # https://source.puri.sm/Librem5/phosh/-/issues/303 - security.pam.services.phosh = { - text = '' - auth requisite pam_nologin.so - auth required pam_succeed_if.so user != root quiet_success - auth required pam_securetty.so - auth requisite pam_nologin.so - ''; - }; + security.pam.services.phosh = {}; services.gnome.core-shell.enable = true; services.gnome.core-os-services.enable = true; diff --git a/nixos/modules/security/apparmor.nix b/nixos/modules/security/apparmor.nix index 9bd909aa50bc..be1b0362fc13 100644 --- a/nixos/modules/security/apparmor.nix +++ b/nixos/modules/security/apparmor.nix @@ -133,7 +133,7 @@ in parser = ${pkgs.apparmor-parser}/bin/apparmor_parser ldd = ${pkgs.glibc.bin}/bin/ldd - logger = ${pkgs.utillinux}/bin/logger + logger = ${pkgs.util-linux}/bin/logger # customize how file ownership permissions are presented # 0 - off diff --git a/nixos/modules/security/ca.nix b/nixos/modules/security/ca.nix index 1c4ee421fc56..7df86e71423f 100644 --- a/nixos/modules/security/ca.nix +++ b/nixos/modules/security/ca.nix @@ -10,15 +10,10 @@ let blacklist = cfg.caCertificateBlacklist; }; - caCertificates = pkgs.runCommand "ca-certificates.crt" - { files = - cfg.certificateFiles ++ - [ (builtins.toFile "extra.crt" (concatStringsSep "\n" cfg.certificates)) ]; - preferLocalBuild = true; - } - '' - cat $files > $out - ''; + caCertificates = pkgs.runCommand "ca-certificates.crt" { + files = cfg.certificateFiles ++ [ (builtins.toFile "extra.crt" (concatStringsSep "\n" cfg.certificates)) ]; + preferLocalBuild = true; + } "awk 1 $files > $out"; # awk ensures a newline between each pair of consecutive files in diff --git a/nixos/modules/services/computing/foldingathome/client.nix b/nixos/modules/services/computing/foldingathome/client.nix index 9f99af48c48a..fbef6a04b16d 100644 --- a/nixos/modules/services/computing/foldingathome/client.nix +++ b/nixos/modules/services/computing/foldingathome/client.nix @@ -49,6 +49,15 @@ in ''; }; + daemonNiceLevel = mkOption { + type = types.ints.between (-20) 19; + default = 0; + description = '' + Daemon process priority for FAHClient. + 0 is the default Unix process priority, 19 is the lowest. + ''; + }; + extraArgs = mkOption { type = types.listOf types.str; default = []; @@ -70,6 +79,7 @@ in serviceConfig = { DynamicUser = true; StateDirectory = "foldingathome"; + Nice = cfg.daemonNiceLevel; WorkingDirectory = "%S/foldingathome"; }; }; diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix index fdc05312ece0..effc9182472e 100644 --- a/nixos/modules/services/databases/postgresql.nix +++ b/nixos/modules/services/databases/postgresql.nix @@ -159,7 +159,7 @@ in For more information on how to specify the target and on which privileges exist, see the GRANT syntax. - The attributes are used as GRANT ''${attrName} ON ''${attrValue}. + The attributes are used as GRANT ''${attrValue} ON ''${attrName}. ''; example = literalExample '' { diff --git a/nixos/modules/services/databases/redis.nix b/nixos/modules/services/databases/redis.nix index 7ec10c0eb5ab..c4d51958e239 100644 --- a/nixos/modules/services/databases/redis.nix +++ b/nixos/modules/services/databases/redis.nix @@ -331,7 +331,7 @@ in { PrivateMounts = true; # System Call Filtering SystemCallArchitectures = "native"; - SystemCallFilter = "~@clock @cpu-emulation @debug @keyring @memlock @module @mount @obsolete @privileged @raw-io @reboot @resources @setuid @swap"; + SystemCallFilter = "~@cpu-emulation @debug @keyring @memlock @mount @obsolete @privileged @resources @setuid"; }; }; }; diff --git a/nixos/modules/services/development/jupyter/default.nix b/nixos/modules/services/development/jupyter/default.nix index 6a5fd6b2940e..21b84b3bcdaa 100644 --- a/nixos/modules/services/development/jupyter/default.nix +++ b/nixos/modules/services/development/jupyter/default.nix @@ -131,7 +131,7 @@ in { env = (pkgs.python3.withPackages (pythonPackages: with pythonPackages; [ ipykernel pandas - scikitlearn + scikit-learn ])); in { displayName = "Python 3 for machine learning"; diff --git a/nixos/modules/services/development/jupyterhub/default.nix b/nixos/modules/services/development/jupyterhub/default.nix index f1dcab68b000..a1df4468cfff 100644 --- a/nixos/modules/services/development/jupyterhub/default.nix +++ b/nixos/modules/services/development/jupyterhub/default.nix @@ -117,7 +117,7 @@ in { env = (pkgs.python3.withPackages (pythonPackages: with pythonPackages; [ ipykernel pandas - scikitlearn + scikit-learn ])); in { displayName = "Python 3 for machine learning"; diff --git a/nixos/modules/services/hardware/fancontrol.nix b/nixos/modules/services/hardware/fancontrol.nix index 3722db5bc512..5574c5a132e5 100644 --- a/nixos/modules/services/hardware/fancontrol.nix +++ b/nixos/modules/services/hardware/fancontrol.nix @@ -31,16 +31,6 @@ in config = mkIf cfg.enable { - users = { - groups.lm_sensors = {}; - - users.fancontrol = { - isSystemUser = true; - group = "lm_sensors"; - description = "fan speed controller"; - }; - }; - systemd.services.fancontrol = { documentation = [ "man:fancontrol(8)" ]; description = "software fan control"; @@ -49,8 +39,6 @@ in serviceConfig = { ExecStart = "${pkgs.lm_sensors}/sbin/fancontrol ${configFile}"; - Group = "lm_sensors"; - User = "fancontrol"; }; }; }; diff --git a/nixos/modules/services/misc/jellyfin.nix b/nixos/modules/services/misc/jellyfin.nix index c1b45864041b..6d64acc02910 100644 --- a/nixos/modules/services/misc/jellyfin.nix +++ b/nixos/modules/services/misc/jellyfin.nix @@ -92,9 +92,7 @@ in SystemCallErrorNumber = "EPERM"; SystemCallFilter = [ "@system-service" - - "~@chown" "~@cpu-emulation" "~@debug" "~@keyring" "~@memlock" "~@module" - "~@obsolete" "~@privileged" "~@setuid" + "~@cpu-emulation" "~@debug" "~@keyring" "~@memlock" "~@obsolete" "~@privileged" "~@setuid" ]; }; }; diff --git a/nixos/modules/services/network-filesystems/samba-wsdd.nix b/nixos/modules/services/network-filesystems/samba-wsdd.nix index c68039c79e2b..800ef448d376 100644 --- a/nixos/modules/services/network-filesystems/samba-wsdd.nix +++ b/nixos/modules/services/network-filesystems/samba-wsdd.nix @@ -117,7 +117,7 @@ in { PrivateMounts = true; # System Call Filtering SystemCallArchitectures = "native"; - SystemCallFilter = "~@clock @cpu-emulation @debug @module @mount @obsolete @privileged @raw-io @reboot @resources @swap"; + SystemCallFilter = "~@cpu-emulation @debug @mount @obsolete @privileged @resources"; }; }; }; diff --git a/nixos/modules/services/networking/cjdns.nix b/nixos/modules/services/networking/cjdns.nix index e9a0e5af1a47..f1a504b3e3f4 100644 --- a/nixos/modules/services/networking/cjdns.nix +++ b/nixos/modules/services/networking/cjdns.nix @@ -12,8 +12,18 @@ let { ... }: { options = { password = mkOption { - type = types.str; - description = "Authorized password to the opposite end of the tunnel."; + type = types.str; + description = "Authorized password to the opposite end of the tunnel."; + }; + login = mkOption { + default = ""; + type = types.str; + description = "(optional) name your peer has for you"; + }; + peerName = mkOption { + default = ""; + type = types.str; + description = "(optional) human-readable name for peer"; }; publicKey = mkOption { type = types.str; diff --git a/nixos/modules/services/networking/croc.nix b/nixos/modules/services/networking/croc.nix index b218fab2196d..9466adf71d8c 100644 --- a/nixos/modules/services/networking/croc.nix +++ b/nixos/modules/services/networking/croc.nix @@ -72,9 +72,7 @@ in RuntimeDirectoryMode = "700"; SystemCallFilter = [ "@system-service" - "~@aio" "~@chown" "~@keyring" "~@memlock" - "~@privileged" "~@resources" "~@setuid" - "~@sync" "~@timer" + "~@aio" "~@keyring" "~@memlock" "~@privileged" "~@resources" "~@setuid" "~@sync" "~@timer" ]; SystemCallArchitectures = "native"; SystemCallErrorNumber = "EPERM"; diff --git a/nixos/modules/services/networking/znc/default.nix b/nixos/modules/services/networking/znc/default.nix index a7315896c506..938d217c94d7 100644 --- a/nixos/modules/services/networking/znc/default.nix +++ b/nixos/modules/services/networking/znc/default.nix @@ -103,8 +103,8 @@ in }; dataDir = mkOption { - default = "/var/lib/znc/"; - example = "/home/john/.znc/"; + default = "/var/lib/znc"; + example = "/home/john/.znc"; type = types.path; description = '' The state directory for ZNC. The config and the modules will be linked @@ -258,6 +258,34 @@ in ExecStart = "${pkgs.znc}/bin/znc --foreground --datadir ${cfg.dataDir} ${escapeShellArgs cfg.extraFlags}"; ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; ExecStop = "${pkgs.coreutils}/bin/kill -INT $MAINPID"; + # Hardening + CapabilityBoundingSet = [ "" ]; + DevicePolicy = "closed"; + LockPersonality = true; + MemoryDenyWriteExecute = true; + NoNewPrivileges = true; + PrivateDevices = true; + PrivateTmp = true; + PrivateUsers = true; + ProcSubset = "pid"; + ProtectClock = true; + ProtectControlGroups = true; + ProtectHome = true; + ProtectHostname = true; + ProtectKernelLogs = true; + ProtectKernelModules = true; + ProtectKernelTunables = true; + ProtectProc = "invisible"; + ProtectSystem = "strict"; + ReadWritePaths = [ cfg.dataDir ]; + RemoveIPC = true; + RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; + RestrictNamespaces = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + SystemCallArchitectures = "native"; + SystemCallFilter = [ "@system-service" "~@privileged" "~@resources" ]; + UMask = "0027"; }; preStart = '' mkdir -p ${cfg.dataDir}/configs diff --git a/nixos/modules/services/networking/znc/options.nix b/nixos/modules/services/networking/znc/options.nix index 048dbd738630..7a43b45fabba 100644 --- a/nixos/modules/services/networking/znc/options.nix +++ b/nixos/modules/services/networking/znc/options.nix @@ -44,7 +44,7 @@ let modules = mkOption { type = types.listOf types.str; default = [ "simple_away" ]; - example = literalExample "[ simple_away sasl ]"; + example = literalExample ''[ "simple_away" "sasl" ]''; description = '' ZNC network modules to load. ''; diff --git a/nixos/modules/services/system/self-deploy.nix b/nixos/modules/services/system/self-deploy.nix new file mode 100644 index 000000000000..3c82ed4fc593 --- /dev/null +++ b/nixos/modules/services/system/self-deploy.nix @@ -0,0 +1,170 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.services.self-deploy; + + workingDirectory = "/var/lib/nixos-self-deploy"; + repositoryDirectory = "${workingDirectory}/repo"; + outPath = "${workingDirectory}/system"; + + gitWithRepo = "git -C ${repositoryDirectory}"; + + renderNixArgs = args: + let + toArg = key: value: + if builtins.isString value + then " --argstr ${lib.escapeShellArg key} ${lib.escapeShellArg value}" + else " --arg ${lib.escapeShellArg key} ${lib.escapeShellArg (toString value)}"; + in + lib.concatStrings (lib.mapAttrsToList toArg args); + + isPathType = x: lib.strings.isCoercibleToString x && builtins.substring 0 1 (toString x) == "/"; + +in +{ + options.services.self-deploy = { + enable = lib.mkEnableOption "self-deploy"; + + nixFile = lib.mkOption { + type = lib.types.path; + + default = "/default.nix"; + + description = '' + Path to nix file in repository. Leading '/' refers to root of + git repository. + ''; + }; + + nixAttribute = lib.mkOption { + type = lib.types.str; + + description = '' + Attribute of `nixFile` that builds the current system. + ''; + }; + + nixArgs = lib.mkOption { + type = lib.types.attrs; + + default = { }; + + description = '' + Arguments to `nix-build` passed as `--argstr` or `--arg` depending on + the type. + ''; + }; + + switchCommand = lib.mkOption { + type = lib.types.enum [ "boot" "switch" "dry-activate" "test" ]; + + default = "switch"; + + description = '' + The `switch-to-configuration` subcommand used. + ''; + }; + + repository = lib.mkOption { + type = with lib.types; oneOf [ path str ]; + + description = '' + The repository to fetch from. Must be properly formatted for git. + + If this value is set to a path (must begin with `/`) then it's + assumed that the repository is local and the resulting service + won't wait for the network to be up. + + If the repository will be fetched over SSH, you must add an + entry to `programs.ssh.knownHosts` for the SSH host for the fetch + to be successful. + ''; + }; + + sshKeyFile = lib.mkOption { + type = with lib.types; nullOr path; + + default = null; + + description = '' + Path to SSH private key used to fetch private repositories over + SSH. + ''; + }; + + branch = lib.mkOption { + type = lib.types.str; + + default = "master"; + + description = '' + Branch to track + + Technically speaking any ref can be specified here, as this is + passed directly to a `git fetch`, but for the use-case of + continuous deployment you're likely to want to specify a branch. + ''; + }; + + startAt = lib.mkOption { + type = with lib.types; either str (listOf str); + + default = "hourly"; + + description = '' + The schedule on which to run the `self-deploy` service. Format + specified by `systemd.time 7`. + + This value can also be a list of `systemd.time 7` formatted + strings, in which case the service will be started on multiple + schedules. + ''; + }; + }; + + config = lib.mkIf cfg.enable { + systemd.services.self-deploy = { + wantedBy = [ "multi-user.target" ]; + + requires = lib.mkIf (!(isPathType cfg.repository)) [ "network-online.target" ]; + + environment.GIT_SSH_COMMAND = lib.mkIf (!(isNull cfg.sshKeyFile)) + "${pkgs.openssh}/bin/ssh -i ${lib.escapeShellArg cfg.sshKeyFile}"; + + restartIfChanged = false; + + path = with pkgs; [ + git + nix + systemd + ]; + + script = '' + if [ ! -e ${repositoryDirectory} ]; then + mkdir --parents ${repositoryDirectory} + git init ${repositoryDirectory} + fi + + ${gitWithRepo} fetch ${lib.escapeShellArg cfg.repository} ${lib.escapeShellArg cfg.branch} + + ${gitWithRepo} checkout FETCH_HEAD + + nix-build${renderNixArgs cfg.nixArgs} ${lib.cli.toGNUCommandLineShell { } { + attr = cfg.nixAttribute; + out-link = outPath; + }} ${lib.escapeShellArg "${repositoryDirectory}${cfg.nixFile}"} + + ${lib.optionalString (cfg.switchCommand != "test") + "nix-env --profile /nix/var/nix/profiles/system --set ${outPath}"} + + ${outPath}/bin/switch-to-configuration ${cfg.switchCommand} + + rm ${outPath} + + ${gitWithRepo} gc --prune=all + + ${lib.optionalString (cfg.switchCommand == "boot") "systemctl reboot"} + ''; + }; + }; +} diff --git a/nixos/modules/services/web-apps/shiori.nix b/nixos/modules/services/web-apps/shiori.nix index 8f96dd9b5dd7..a15bb9744a9c 100644 --- a/nixos/modules/services/web-apps/shiori.nix +++ b/nixos/modules/services/web-apps/shiori.nix @@ -86,10 +86,7 @@ in { SystemCallErrorNumber = "EPERM"; SystemCallFilter = [ "@system-service" - - "~@chown" "~@cpu-emulation" "~@debug" "~@keyring" "~@memlock" - "~@module" "~@obsolete" "~@privileged" "~@raw-io" - "~@resources" "~@setuid" + "~@cpu-emulation" "~@debug" "~@keyring" "~@memlock" "~@obsolete" "~@privileged" "~@resources" "~@setuid" ]; }; }; diff --git a/nixos/modules/services/web-servers/molly-brown.nix b/nixos/modules/services/web-servers/molly-brown.nix index e0587f3b4716..58db9b9beda0 100644 --- a/nixos/modules/services/web-servers/molly-brown.nix +++ b/nixos/modules/services/web-servers/molly-brown.nix @@ -41,7 +41,6 @@ in { As an example: - security.acme.certs."example.com".allowKeysForGroup = true; systemd.services.molly-brown.serviceConfig.SupplementaryGroups = [ config.security.acme.certs."example.com".group ]; diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix index 1a078ea6bd5f..0e99aabcfc0c 100644 --- a/nixos/modules/services/web-servers/nginx/default.nix +++ b/nixos/modules/services/web-servers/nginx/default.nix @@ -859,7 +859,7 @@ in PrivateMounts = true; # System Call Filtering SystemCallArchitectures = "native"; - SystemCallFilter = "~@chown @cpu-emulation @debug @keyring @ipc @module @mount @obsolete @privileged @raw-io @reboot @setuid @swap"; + SystemCallFilter = "~@cpu-emulation @debug @keyring @ipc @mount @obsolete @privileged @setuid"; }; }; @@ -867,8 +867,9 @@ in source = configFile; }; - # postRun hooks on cert renew can't be used to restart Nginx since renewal - # runs as the unprivileged acme user. sslTargets are added to wantedBy + before + # This service waits for all certificates to be available + # before reloading nginx configuration. + # sslTargets are added to wantedBy + before # which allows the acme-finished-$cert.target to signify the successful updating # of certs end-to-end. systemd.services.nginx-config-reload = let diff --git a/nixos/modules/services/x11/desktop-managers/gnome.nix b/nixos/modules/services/x11/desktop-managers/gnome.nix index d61d6ce50da5..5964bd1a52c3 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome.nix @@ -64,6 +64,7 @@ in { meta = { + doc = ./gnome.xml; maintainers = teams.gnome.members; }; @@ -553,7 +554,7 @@ in /* gnome-boxes */ ] config.environment.gnome.excludePackages); - services.sysprof.enable = true; + services.sysprof.enable = notExcluded pkgs.sysprof; }) ]; diff --git a/nixos/modules/services/x11/desktop-managers/gnome.xml b/nixos/modules/services/x11/desktop-managers/gnome.xml new file mode 100644 index 000000000000..624d5c894e74 --- /dev/null +++ b/nixos/modules/services/x11/desktop-managers/gnome.xml @@ -0,0 +1,276 @@ + + GNOME Desktop + + GNOME provides a simple, yet full-featured desktop environment with a focus on productivity. Its Mutter compositor supports both Wayland and X server, and the GNOME Shell user interface is fully customizable by extensions. + + +
+ Enabling GNOME + + + All of the core apps, optional apps, games, and core developer tools from GNOME are available. + + + + To enable the GNOME desktop use: + + + + = true; + = true; + + + + + While it is not strictly necessary to use GDM as the display manager with GNOME, it is recommended, as some features such as screen lock might not work without it. + + + + + The default applications used in NixOS are very minimal, inspired by the defaults used in gnome-build-meta. + + +
+ GNOME without the apps + + + If you’d like to only use the GNOME desktop and not the apps, you can disable them with: + + + + = false; + + + + and none of them will be installed. + + + + If you’d only like to omit a subset of the core utilities, you can use . + Note that this mechanism can only exclude core utilities, games and core developer tools. + +
+ +
+ Disabling GNOME services + + + It is also possible to disable many of the core services. For example, if you do not need indexing files, you can disable Tracker with: + + + + = false; + = false; + + + + Note, however, that doing so is not supported and might break some applications. Notably, GNOME Music cannot work without Tracker. + +
+ +
+ GNOME games + + + You can install all of the GNOME games with: + + + + = true; + +
+ +
+ GNOME core developer tools + + + You can install GNOME core developer tools with: + + + + = true; + +
+
+ +
+ Enabling GNOME Flashback + + + GNOME Flashback provides a desktop environment based on the classic GNOME 2 architecture. You can enable the default GNOME Flashback session, which uses the Metacity window manager, with: + + + + = true; + + + + It is also possible to create custom sessions that replace Metacity with a different window manager using . + + + + The following example uses xmonad window manager: + + + + = [ + { + wmName = "xmonad"; + wmLabel = "XMonad"; + wmCommand = "${pkgs.haskellPackages.xmonad}/bin/xmonad"; + } +]; + + +
+
+ GDM + + + If you want to use GNOME Wayland session on Nvidia hardware, you need to enable: + + + + = true; + + + + as the default configuration will forbid this. + +
+ +
+ Icons and GTK Themes + + + Icon themes and GTK themes don’t require any special option to install in NixOS. + + + + You can add them to and switch to them with GNOME Tweaks. + If you’d like to do this manually in dconf, change the values of the following keys: + + + +/org/gnome/desktop/interface/gtk-theme +/org/gnome/desktop/interface/icon-theme + + + + in dconf-editor + +
+ +
+ Shell Extensions + + + Most Shell extensions are packaged under the gnomeExtensions attribute. + Some packages that include Shell extensions, like gnome.gpaste, don’t have their extension decoupled under this attribute. + + + + You can install them like any other package: + + + + = [ + gnomeExtensions.dash-to-dock + gnomeExtensions.gsconnect + gnomeExtensions.mpris-indicator-button +]; + + + + Unfortunately, we lack a way for these to be managed in a completely declarative way. + So you have to enable them manually with an Extensions application. + It is possible to use a GSettings override for this on org.gnome.shell.enabled-extensions, but that will only influence the default value. + +
+ +
+ GSettings Overrides + + + Majority of software building on the GNOME platform use GLib’s GSettings system to manage runtime configuration. For our purposes, the system consists of XML schemas describing the individual configuration options, stored in the package, and a settings backend, where the values of the settings are stored. On NixOS, like on most Linux distributions, dconf database is used as the backend. + + + + GSettings vendor overrides can be used to adjust the default values for settings of the GNOME desktop and apps by replacing the default values specified in the XML schemas. Using overrides will allow you to pre-seed user settings before you even start the session. + + + + + Overrides really only change the default values for GSettings keys so if you or an application changes the setting value, the value set by the override will be ignored. Until NixOS’s dconf module implements changing values, you will either need to keep that in mind and clear the setting from the backend using dconf reset command when that happens, or use the module from home-manager. + + + + + You can override the default GSettings values using the option. + + + + Take note that whatever packages you want to override GSettings for, you need to add them to + . + + + + You can use dconf-editor tool to explore which GSettings you can set. + + +
+ Example + + +services.xserver.desktopManager.gnome = { + extraGSettingsOverrides = '' + # Change default background + [org.gnome.desktop.background] + picture-uri='file://${pkgs.nixos-artwork.wallpapers.mosaic-blue.gnomeFilePath}' + + # Favorite apps in gnome-shell + [org.gnome.shell] + favorite-apps=['org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop'] + ''; + + extraGSettingsOverridePackages = [ + pkgs.gsettings-desktop-schemas # for org.gnome.desktop + pkgs.gnome.gnome-shell # for org.gnome.shell + ]; +}; + +
+
+ +
+ Frequently Asked Questions + +
+ Can I use LightDM with GNOME? + + + Yes you can, and any other display-manager in NixOS. + + + + However, it doesn’t work correctly for the Wayland session of GNOME Shell yet, and + won’t be able to lock your screen. + + + + See this issue. + +
+ +
+ Why does <literal>nixos-rebuild switch</literal> sometimes kill my session? + + + This is a known issue without any workarounds. + If you are doing a fairly large upgrade, it is probably safer to use nixos-rebuild boot. + +
+
+
diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix index bbdd5a407060..1de58b3d2c4a 100644 --- a/nixos/modules/system/boot/networkd.nix +++ b/nixos/modules/system/boot/networkd.nix @@ -716,10 +716,17 @@ let "NTP" "EmitSIP" "SIP" + "EmitPOP3" + "POP3" + "EmitSMTP" + "SMTP" + "EmitLPR" + "LPR" "EmitRouter" "EmitTimezone" "Timezone" "SendOption" + "SendVendorOption" ]) (assertInt "PoolOffset") (assertMinimum "PoolOffset" 0) @@ -728,6 +735,9 @@ let (assertValueOneOf "EmitDNS" boolValues) (assertValueOneOf "EmitNTP" boolValues) (assertValueOneOf "EmitSIP" boolValues) + (assertValueOneOf "EmitPOP3" boolValues) + (assertValueOneOf "EmitSMTP" boolValues) + (assertValueOneOf "EmitLPR" boolValues) (assertValueOneOf "EmitRouter" boolValues) (assertValueOneOf "EmitTimezone" boolValues) ]; diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix index 2aeb8598ada8..24f71d29427f 100644 --- a/nixos/modules/tasks/filesystems.nix +++ b/nixos/modules/tasks/filesystems.nix @@ -309,7 +309,7 @@ in "mount-pstore" = { serviceConfig = { Type = "oneshot"; - ExecStart = "${pkgs.utillinux}/bin/mount -t pstore -o nosuid,noexec,nodev pstore /sys/fs/pstore"; + ExecStart = "${pkgs.util-linux}/bin/mount -t pstore -o nosuid,noexec,nodev pstore /sys/fs/pstore"; ExecStartPost = pkgs.writeShellScript "wait-for-pstore.sh" '' set -eu TRIES=0 diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 9358d223c01f..34183c0ba9ff 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -90,7 +90,7 @@ in rec { (onFullSupported "nixos.tests.keymap.azerty") (onFullSupported "nixos.tests.keymap.colemak") (onFullSupported "nixos.tests.keymap.dvorak") - (onFullSupported "nixos.tests.keymap.dvp") + (onFullSupported "nixos.tests.keymap.dvorak-programmer") (onFullSupported "nixos.tests.keymap.neo") (onFullSupported "nixos.tests.keymap.qwertz") (onFullSupported "nixos.tests.latestKernel.login") diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 2c2ee95788db..f0b050829234 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -29,6 +29,7 @@ in ammonite = handleTest ./ammonite.nix {}; apparmor = handleTest ./apparmor.nix {}; atd = handleTest ./atd.nix {}; + atop = handleTest ./atop.nix {}; avahi = handleTest ./avahi.nix {}; avahi-with-resolved = handleTest ./avahi.nix { networkd = true; }; awscli = handleTest ./awscli.nix { }; diff --git a/nixos/tests/atop.nix b/nixos/tests/atop.nix new file mode 100644 index 000000000000..a2565e610ae1 --- /dev/null +++ b/nixos/tests/atop.nix @@ -0,0 +1,213 @@ +{ system ? builtins.currentSystem +, config ? { } +, pkgs ? import ../.. { inherit system config; } +}: + +with import ../lib/testing-python.nix { inherit system pkgs; }; +with pkgs.lib; + +let assertions = rec { + path = program: path: '' + with subtest("The path of ${program} should be ${path}"): + p = machine.succeed("type -p \"${program}\" | head -c -1") + assert p == "${path}", f"${program} is {p}, expected ${path}" + ''; + unit = name: state: '' + with subtest("Unit ${name} should be ${state}"): + machine.require_unit_state("${name}", "${state}") + ''; + version = '' + import re + + with subtest("binary should report the correct version"): + pkgver = "${pkgs.atop.version}" + ver = re.sub(r'(?s)^Version: (\d\.\d\.\d).*', r'\1', machine.succeed("atop -V")) + assert ver == pkgver, f"Version is `{ver}`, expected `{pkgver}`" + ''; + atoprc = contents: + if builtins.stringLength contents > 0 then '' + with subtest("/etc/atoprc should have the correct contents"): + f = machine.succeed("cat /etc/atoprc") + assert f == "${contents}", f"/etc/atoprc contents: '{f}', expected '${contents}'" + '' else '' + with subtest("/etc/atoprc should not be present"): + machine.succeed("test ! -e /etc/atoprc") + ''; + wrapper = present: + if present then path "atop" "/run/wrappers/bin/atop" + '' + with subtest("Wrapper should be setuid root"): + stat = machine.succeed("stat --printf '%a %u' /run/wrappers/bin/atop") + assert stat == "4511 0", f"Wrapper stat is {stat}, expected '4511 0'" + '' + else path "atop" "/run/current-system/sw/bin/atop"; + atopService = present: + if present then + unit "atop.service" "active" + + '' + with subtest("atop.service should have written some data to /var/log/atop"): + files = int(machine.succeed("ls -1 /var/log/atop | wc -l")) + assert files > 0, "Expected at least 1 data file" + '' else unit "atop.service" "inactive"; + atopRotateTimer = present: + unit "atop-rotate.timer" (if present then "active" else "inactive"); + atopacctService = present: + if present then + unit "atopacct.service" "active" + + '' + with subtest("atopacct.service should enable process accounting"): + machine.succeed("test -f /run/pacct_source") + + with subtest("atopacct.service should write data to /run/pacct_shadow.d"): + files = int(machine.succeed("ls -1 /run/pacct_shadow.d | wc -l")) + assert files >= 1, "Expected at least 1 pacct_shadow.d file" + '' else unit "atopacct.service" "inactive"; + netatop = present: + if present then + unit "netatop.service" "active" + + '' + with subtest("The netatop kernel module should be loaded"): + out = machine.succeed("modprobe -n -v netatop") + assert out == "", f"Module should be loaded already, but modprobe would have done {out}." + '' else '' + with subtest("The netatop kernel module should be absent"): + machine.fail("modprobe -n -v netatop") + ''; + atopgpu = present: + if present then + (unit "atopgpu.service" "active") + (path "atopgpud" "/run/current-system/sw/bin/atopgpud") + else (unit "atopgpu.service" "inactive") + '' + with subtest("atopgpud should not be present"): + machine.fail("type -p atopgpud") + ''; +}; +in +{ + name = "atop"; + + justThePackage = makeTest { + name = "atop-justThePackage"; + machine = { + environment.systemPackages = [ pkgs.atop ]; + }; + testScript = with assertions; builtins.concatStringsSep "\n" [ + version + (atoprc "") + (wrapper false) + (atopService false) + (atopRotateTimer false) + (atopacctService false) + (netatop false) + (atopgpu false) + ]; + }; + defaults = makeTest { + name = "atop-defaults"; + machine = { + programs.atop = { + enable = true; + }; + }; + testScript = with assertions; builtins.concatStringsSep "\n" [ + version + (atoprc "") + (wrapper false) + (atopService true) + (atopRotateTimer true) + (atopacctService true) + (netatop false) + (atopgpu false) + ]; + }; + minimal = makeTest { + name = "atop-minimal"; + machine = { + programs.atop = { + enable = true; + atopService.enable = false; + atopRotateTimer.enable = false; + atopacctService.enable = false; + }; + }; + testScript = with assertions; builtins.concatStringsSep "\n" [ + version + (atoprc "") + (wrapper false) + (atopService false) + (atopRotateTimer false) + (atopacctService false) + (netatop false) + (atopgpu false) + ]; + }; + netatop = makeTest { + name = "atop-netatop"; + machine = { + programs.atop = { + enable = true; + netatop.enable = true; + }; + }; + testScript = with assertions; builtins.concatStringsSep "\n" [ + version + (atoprc "") + (wrapper false) + (atopService true) + (atopRotateTimer true) + (atopacctService true) + (netatop true) + (atopgpu false) + ]; + }; + atopgpu = makeTest { + name = "atop-atopgpu"; + machine = { + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (getName pkg) [ + "cudatoolkit" + ]; + + programs.atop = { + enable = true; + atopgpu.enable = true; + }; + }; + testScript = with assertions; builtins.concatStringsSep "\n" [ + version + (atoprc "") + (wrapper false) + (atopService true) + (atopRotateTimer true) + (atopacctService true) + (netatop false) + (atopgpu true) + ]; + }; + everything = makeTest { + name = "atop-everthing"; + machine = { + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (getName pkg) [ + "cudatoolkit" + ]; + + programs.atop = { + enable = true; + settings = { + flags = "faf1"; + interval = 2; + }; + setuidWrapper.enable = true; + netatop.enable = true; + atopgpu.enable = true; + }; + }; + testScript = with assertions; builtins.concatStringsSep "\n" [ + version + (atoprc "flags faf1\\ninterval 2\\n") + (wrapper true) + (atopService true) + (atopRotateTimer true) + (atopacctService true) + (netatop true) + (atopgpu true) + ]; + }; +} diff --git a/nixos/tests/cagebreak.nix b/nixos/tests/cagebreak.nix index 87f43cc3c321..7b2c72bcafce 100644 --- a/nixos/tests/cagebreak.nix +++ b/nixos/tests/cagebreak.nix @@ -17,56 +17,27 @@ in let alice = config.users.users.alice; in { + # Automatically login on tty1 as a normal user: imports = [ ./common/user-account.nix ]; + services.getty.autologinUser = "alice"; + programs.bash.loginShellInit = '' + if [ "$(tty)" = "/dev/tty1" ]; then + set -e + mkdir -p ~/.config/cagebreak + cp -f ${cagebreakConfigfile} ~/.config/cagebreak/config + + cagebreak + fi + ''; + + hardware.opengl.enable = true; + programs.xwayland.enable = true; environment.systemPackages = [ pkgs.cagebreak pkgs.wallutils ]; - services.xserver = { - enable = true; - displayManager.autoLogin = { - enable = true; - user = alice.name; - }; - }; - services.xserver.windowManager.session = lib.singleton { - manage = "desktop"; - name = "cagebreak"; - start = '' - export XDG_RUNTIME_DIR="/run/user/${toString alice.uid}" - ${pkgs.cagebreak}/bin/cagebreak & - waitPID=$! - ''; - }; - - systemd.services.setupCagebreakConfig = { - wantedBy = [ "multi-user.target" ]; - before = [ "multi-user.target" ]; - environment = { - HOME = alice.home; - }; - unitConfig = { - type = "oneshot"; - RemainAfterExit = true; - user = alice.name; - }; - script = '' - cd $HOME - CONFFILE=$HOME/.config/cagebreak/config - mkdir -p $(dirname $CONFFILE) - cp ${cagebreakConfigfile} $CONFFILE - ''; - }; - - # Copied from cage: - # this needs a fairly recent kernel, otherwise: - # [backend/drm/util.c:215] Unable to add DRM framebuffer: No such file or directory - # [backend/drm/legacy.c:15] Virtual-1: Failed to set CRTC: No such file or directory - # [backend/drm/util.c:215] Unable to add DRM framebuffer: No such file or directory - # [backend/drm/legacy.c:15] Virtual-1: Failed to set CRTC: No such file or directory - # [backend/drm/drm.c:618] Failed to initialize renderer on connector 'Virtual-1': initial page-flip failed - # [backend/drm/drm.c:701] Failed to initialize renderer for plane - boot.kernelPackages = pkgs.linuxPackages_latest; virtualisation.memorySize = 1024; + # Need to switch to a different VGA card / GPU driver than the default one (std) so that Cagebreak can launch: + virtualisation.qemu.options = [ "-vga virtio" ]; }; enableOCR = true; @@ -80,14 +51,15 @@ in machine.wait_for_file("${XDG_RUNTIME_DIR}/wayland-0") with subtest("ensure wayland works with wayinfo from wallutils"): - machine.succeed("env XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR} wayinfo") + print(machine.succeed("env XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR} wayinfo")) - with subtest("ensure xwayland works with xterm"): - machine.send_key("ctrl-t") - machine.send_key("t") - machine.wait_until_succeeds("pgrep xterm") - machine.wait_for_text("${user.name}@machine") - machine.screenshot("screen") - machine.send_key("ctrl-d") + # TODO: Fix the XWayland test (log the cagebreak output to debug): + # with subtest("ensure xwayland works with xterm"): + # machine.send_key("ctrl-t") + # machine.send_key("t") + # machine.wait_until_succeeds("pgrep xterm") + # machine.wait_for_text("${user.name}@machine") + # machine.screenshot("screen") + # machine.send_key("ctrl-d") ''; }) diff --git a/nixos/tests/signal-desktop.nix b/nixos/tests/signal-desktop.nix index deddb9d0834f..42485cd0da7e 100644 --- a/nixos/tests/signal-desktop.nix +++ b/nixos/tests/signal-desktop.nix @@ -44,12 +44,11 @@ import ./make-test-python.nix ({ pkgs, ...} : # - https://github.com/NixOS/nixpkgs/issues/108772 # - https://github.com/NixOS/nixpkgs/pull/117555 print(machine.succeed("su - alice -c 'file ~/.config/Signal/sql/db.sqlite'")) - # TODO: The DB should be encrypted and the following should be machine.fail - # instead of machine.succeed but the DB is currently unencrypted and we - # want to notice if this isn't the case anymore as the transition to a - # encrypted DB can cause data loss!: machine.succeed( - "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep -i sqlite" + "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep 'db.sqlite: data'" + ) + machine.fail( + "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep -e SQLite -e database" ) ''; }) diff --git a/nixos/tests/v2ray.nix b/nixos/tests/v2ray.nix index f1b2570cc860..4808e149d31e 100644 --- a/nixos/tests/v2ray.nix +++ b/nixos/tests/v2ray.nix @@ -3,7 +3,7 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: let v2rayUser = { # A random UUID. id = "a6a46834-2150-45f8-8364-0f6f6ab32384"; - alterId = 4; + alterId = 0; # Non-zero support will be disabled in the future. }; # 1080 [http proxy] -> 1081 [vmess] -> direct diff --git a/pkgs/applications/accessibility/squeekboard/default.nix b/pkgs/applications/accessibility/squeekboard/default.nix index ec99666b6f42..71a0823f78d3 100644 --- a/pkgs/applications/accessibility/squeekboard/default.nix +++ b/pkgs/applications/accessibility/squeekboard/default.nix @@ -18,14 +18,14 @@ stdenv.mkDerivation rec { pname = "squeekboard"; - version = "unstable-2021-03-09"; + version = "1.13.0"; src = fetchFromGitLab { domain = "source.puri.sm"; owner = "Librem5"; repo = pname; - rev = "bffd212e102bf71a94c599aac0359a8d30d19008"; - sha256 = "1j10zhyb8wyrcbryfj6f3drn9b0l9x0l7hnhy2imnjbfbnwwm4w7"; + rev = "v${version}"; + sha256 = "0xyd6ickbaqvrr8a7ak6j1ziqjk05jlnganjrdv43p74nnjyqr8y"; }; cargoDeps = rustPlatform.fetchCargoTarball { @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { cat Cargo.toml.in Cargo.deps > Cargo.toml ''; name = "${pname}-${version}"; - sha256 = "1qaqiaxqc4x2x5bd31na4c49vbjwrmz5clmgli7733dv55rxxias"; + sha256 = "096skk7vmr93axcf0qj7kyr8hm1faj0nkmd349g8mnzwd68a9npz"; }; nativeBuildInputs = [ diff --git a/pkgs/applications/audio/cantata/default.nix b/pkgs/applications/audio/cantata/default.nix index 3d594a896cf5..45482c4de007 100644 --- a/pkgs/applications/audio/cantata/default.nix +++ b/pkgs/applications/audio/cantata/default.nix @@ -54,12 +54,26 @@ let fstat = x: fn: "-DENABLE_${fn}=${if x then "ON" else "OFF"}"; - fstats = x: - map (fstat x); - withUdisks = (withTaglib && withDevices); - perl' = perl.withPackages (ppkgs: with ppkgs; [ URI ]); + options = [ + { names = [ "CDDB" ]; enable = withCddb; pkgs = [ libcddb ]; } + { names = [ "CDPARANOIA" ]; enable = withCdda; pkgs = [ cdparanoia ]; } + { names = [ "DEVICES_SUPPORT" ]; enable = withDevices; pkgs = [ ]; } + { names = [ "DYNAMIC" ]; enable = withDynamic; pkgs = [ ]; } + { names = [ "FFMPEG" "MPG123" "SPEEXDSP" ]; enable = withReplaygain; pkgs = [ ffmpeg speex mpg123 ]; } + { names = [ "HTTPS_SUPPORT" ]; enable = true; pkgs = [ ]; } + { names = [ "HTTP_SERVER" ]; enable = withHttpServer; pkgs = [ ]; } + { names = [ "HTTP_STREAM_PLAYBACK" ]; enable = withHttpStream; pkgs = [ qtmultimedia ]; } + { names = [ "LAME" ]; enable = withLame; pkgs = [ lame ]; } + { names = [ "LIBVLC" ]; enable = withLibVlc; pkgs = [ libvlc ]; } + { names = [ "MTP" ]; enable = withMtp; pkgs = [ libmtp ]; } + { names = [ "MUSICBRAINZ" ]; enable = withMusicbrainz; pkgs = [ libmusicbrainz5 ]; } + { names = [ "ONLINE_SERVICES" ]; enable = withOnlineServices; pkgs = [ ]; } + { names = [ "STREAMS" ]; enable = withStreams; pkgs = [ ]; } + { names = [ "TAGLIB" "TAGLIB_EXTRAS" ]; enable = withTaglib; pkgs = [ taglib taglib_extras ]; } + { names = [ "UDISKS2" ]; enable = withUdisks; pkgs = [ udisks2 ]; } + ]; in mkDerivation rec { @@ -84,38 +98,16 @@ mkDerivation rec { patchShebangs playlists ''; - buildInputs = [ qtbase qtsvg perl' ] - ++ lib.optionals withTaglib [ taglib taglib_extras ] - ++ lib.optionals withReplaygain [ ffmpeg speex mpg123 ] - ++ lib.optional withHttpStream qtmultimedia - ++ lib.optional withCdda cdparanoia - ++ lib.optional withCddb libcddb - ++ lib.optional withLame lame - ++ lib.optional withMtp libmtp - ++ lib.optional withMusicbrainz libmusicbrainz5 - ++ lib.optional withUdisks udisks2 - ++ lib.optional withLibVlc libvlc; + buildInputs = [ + qtbase + qtsvg + (perl.withPackages (ppkgs: with ppkgs; [ URI ])) + ] + ++ lib.flatten (builtins.catAttrs "pkgs" (builtins.filter (e: e.enable) options)); nativeBuildInputs = [ cmake pkg-config qttools ]; - cmakeFlags = lib.flatten [ - (fstats withTaglib [ "TAGLIB" "TAGLIB_EXTRAS" ]) - (fstats withReplaygain [ "FFMPEG" "MPG123" "SPEEXDSP" ]) - (fstat withHttpStream "HTTP_STREAM_PLAYBACK") - (fstat withCdda "CDPARANOIA") - (fstat withCddb "CDDB") - (fstat withLame "LAME") - (fstat withMtp "MTP") - (fstat withMusicbrainz "MUSICBRAINZ") - (fstat withOnlineServices "ONLINE_SERVICES") - (fstat withDynamic "DYNAMIC") - (fstat withDevices "DEVICES_SUPPORT") - (fstat withHttpServer "HTTP_SERVER") - (fstat withLibVlc "LIBVLC") - (fstat withStreams "STREAMS") - (fstat withUdisks "UDISKS2") - "-DENABLE_HTTPS_SUPPORT=ON" - ]; + cmakeFlags = lib.flatten (map (e: map (f: fstat e.enable f) e.names) options); meta = with lib; { description = "A graphical client for MPD"; diff --git a/pkgs/applications/audio/deadbeef/default.nix b/pkgs/applications/audio/deadbeef/default.nix index 9eda63331128..10b4256a8581 100644 --- a/pkgs/applications/audio/deadbeef/default.nix +++ b/pkgs/applications/audio/deadbeef/default.nix @@ -17,7 +17,7 @@ , aacSupport ? true, faad2 ? null , opusSupport ? true, opusfile ? null , wavpackSupport ? false, wavpack ? null -, ffmpegSupport ? false, ffmpeg_3 ? null +, ffmpegSupport ? false, ffmpeg ? null , apeSupport ? true, yasm ? null # misc plugins , zipSupport ? true, libzip ? null @@ -45,7 +45,7 @@ assert cdaSupport -> (libcdio != null && libcddb != null); assert aacSupport -> faad2 != null; assert opusSupport -> opusfile != null; assert zipSupport -> libzip != null; -assert ffmpegSupport -> ffmpeg_3 != null; +assert ffmpegSupport -> ffmpeg != null; assert apeSupport -> yasm != null; assert artworkSupport -> imlib2 != null; assert hotkeysSupport -> libX11 != null; @@ -79,7 +79,7 @@ stdenv.mkDerivation rec { ++ optional aacSupport faad2 ++ optional opusSupport opusfile ++ optional zipSupport libzip - ++ optional ffmpegSupport ffmpeg_3 + ++ optional ffmpegSupport ffmpeg ++ optional apeSupport yasm ++ optional artworkSupport imlib2 ++ optional hotkeysSupport libX11 diff --git a/pkgs/applications/audio/gnome-podcasts/default.nix b/pkgs/applications/audio/gnome-podcasts/default.nix index 6524700ae156..710110c8172e 100644 --- a/pkgs/applications/audio/gnome-podcasts/default.nix +++ b/pkgs/applications/audio/gnome-podcasts/default.nix @@ -8,8 +8,11 @@ , python3 , pkg-config , glib -, libhandy_0 +, cmake +, libhandy , gtk3 +, appstream-glib +, desktop-file-utils , dbus , openssl , sqlite @@ -19,20 +22,20 @@ stdenv.mkDerivation rec { pname = "gnome-podcasts"; - version = "0.4.8"; + version = "0.4.9"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "World"; repo = "podcasts"; rev = version; - sha256 = "0y2332zjq7vf1v38wzwz98fs19vpzy9kl7y0xbdzqr303l59hjb1"; + sha256 = "1ah59ac3xm3sqai8zhil8ar30pviw83cm8in1n4id77rv24xkvgm"; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; - hash = "sha256-GInRA/V61r42spb/JYlM8+mATSkmOxdm2zHPRWaKcck="; + sha256 = "1iihpfvkli09ysn46cnif53xizkwzk0m91bljmlzsygp3ip5i5yw"; }; nativeBuildInputs = [ @@ -49,9 +52,12 @@ stdenv.mkDerivation rec { ]; buildInputs = [ + appstream-glib + cmake + desktop-file-utils glib gtk3 - libhandy_0 + libhandy dbus openssl sqlite diff --git a/pkgs/applications/audio/muso/default.nix b/pkgs/applications/audio/muso/default.nix index acc10e077ebc..15c61196d43e 100644 --- a/pkgs/applications/audio/muso/default.nix +++ b/pkgs/applications/audio/muso/default.nix @@ -1,5 +1,5 @@ -{ lib, fetchFromGitHub, rustPlatform -, pkg-config, wrapGAppsHook +{ lib, stdenv, fetchFromGitHub, rustPlatform +, pkg-config, wrapGAppsHook, CoreServices }: rustPlatform.buildRustPackage rec { @@ -14,6 +14,7 @@ rustPlatform.buildRustPackage rec { }; nativeBuildInputs = [ pkg-config wrapGAppsHook ]; + buildInputs = lib.optional stdenv.isDarwin CoreServices; preConfigure = '' substituteInPlace lib/utils.rs \ diff --git a/pkgs/applications/audio/openmpt123/default.nix b/pkgs/applications/audio/openmpt123/default.nix index 67b7bd241f36..a5ea91141c39 100644 --- a/pkgs/applications/audio/openmpt123/default.nix +++ b/pkgs/applications/audio/openmpt123/default.nix @@ -2,14 +2,14 @@ , usePulseAudio ? config.pulseaudio or false, libpulseaudio }: let - version = "0.5.6"; + version = "0.5.8"; in stdenv.mkDerivation { pname = "openmpt123"; inherit version; src = fetchurl { url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz"; - sha256 = "sha256-F96ngrM0wUb0rNlIx8Mf/dKvyJnrNH6+Ab4WBup59Lg="; + sha256 = "sha256-KeLCEXS3P2fyul7naAjWLxgrEw5PcE7i2a6Cg5gtis0="; }; enableParallelBuilding = true; diff --git a/pkgs/applications/audio/spotify-qt/default.nix b/pkgs/applications/audio/spotify-qt/default.nix index 211e45f7b177..629cc4bd1160 100644 --- a/pkgs/applications/audio/spotify-qt/default.nix +++ b/pkgs/applications/audio/spotify-qt/default.nix @@ -9,13 +9,13 @@ mkDerivation rec { pname = "spotify-qt"; - version = "3.5"; + version = "3.6"; src = fetchFromGitHub { owner = "kraxarn"; repo = pname; rev = "v${version}"; - sha256 = "1bgd0q4sbbww3lbrx2zwgaz0sl7qh195s4kvgsq16gv7ij82bskn"; + sha256 = "mKHyE6ZffMYYRLMpzMX53chyJyWxhTAaGvtBI3l6wkI="; }; buildInputs = [ libxcb qtbase qtsvg ]; diff --git a/pkgs/applications/blockchains/btcpayserver/default.nix b/pkgs/applications/blockchains/btcpayserver/default.nix index 6952d9c00729..7b6e3918da58 100644 --- a/pkgs/applications/blockchains/btcpayserver/default.nix +++ b/pkgs/applications/blockchains/btcpayserver/default.nix @@ -15,13 +15,13 @@ in stdenv.mkDerivation rec { pname = "btcpayserver"; - version = "1.0.7.2"; + version = "1.1.1"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "1hxpbzc4l1zxrcvmdm93vvphhksfwd0mw2dv6h8vi4451p77dhd9"; + sha256 = "sha256-cCm4CZdVtjO2nj69CgRCrcwO0lAbiQVD6KocOj4CSdY="; }; nativeBuildInputs = [ dotnetSdk dotnetPackages.Nuget makeWrapper ]; diff --git a/pkgs/applications/blockchains/btcpayserver/deps.nix b/pkgs/applications/blockchains/btcpayserver/deps.nix index b579fc8f7f89..20b97972107e 100644 --- a/pkgs/applications/blockchains/btcpayserver/deps.nix +++ b/pkgs/applications/blockchains/btcpayserver/deps.nix @@ -94,6 +94,21 @@ version = "0.6.3"; sha256 = "1vb7ahafcd3lcbiiz552aisilwm1yq3j600gkf1wik8vhvsk02fs"; }) + (fetchNuGet { + name = "Fido2.AspNet"; + version = "2.0.1"; + sha256 = "1d6bjyck3mlhb9b4c75xhzr2pcs47vdqg2ayi5wnjh1aszyam3nq"; + }) + (fetchNuGet { + name = "Fido2.Models"; + version = "2.0.1"; + sha256 = "0llpzkik82n5gpgjawx181j85d2lizimkbdkxj1wyrjvxb2xbg3q"; + }) + (fetchNuGet { + name = "Fido2"; + version = "2.0.1"; + sha256 = "1s829n970lxngbhac9lvarwa9n9hqxr79kwv8i12amnmg6ir8ny5"; + }) (fetchNuGet { name = "Google.Api.Gax.Rest"; version = "2.5.0"; @@ -149,6 +164,11 @@ version = "5.0.372"; sha256 = "1gllp58vdbql2ybwf05i2178x7p4g8zyyk64317d1pyss5217g7r"; }) + (fetchNuGet { + name = "libsodium"; + version = "1.0.18"; + sha256 = "15qzl5k31yaaapqlijr336lh4lzz1qqxlimgxy8fdyig8jdmgszn"; + }) (fetchNuGet { name = "McMaster.NETCore.Plugins.Mvc"; version = "1.3.1"; @@ -359,6 +379,11 @@ version = "3.1.4"; sha256 = "11w63yp7fk9qwmnq3lmpf1h30mlbzfx4zpm89vrs0lprj86g0742"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Caching.Abstractions"; + version = "2.2.0"; + sha256 = "0hhxc5dp52faha1bdqw0k426zicsv6x1kfqi30m9agr0b2hixj52"; + }) (fetchNuGet { name = "Microsoft.Extensions.Caching.Abstractions"; version = "3.1.4"; @@ -389,6 +414,11 @@ version = "3.1.4"; sha256 = "0r33m68y1vgpmqams4sgciizl0w6y97qkp93m0hyn0nlkxqf72l6"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Configuration.Abstractions"; + version = "3.1.5"; + sha256 = "03jwqjrfyx11ax19bq84c28qzaiyj4whrx7vayy4hr7sv0p28h8k"; + }) (fetchNuGet { name = "Microsoft.Extensions.Configuration.Binder"; version = "2.0.0"; @@ -399,6 +429,11 @@ version = "3.1.4"; sha256 = "1bnf213zlrh0m3sbhsv601yx21l5xp254jiy2g4hm7zpm8vsz1hz"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Configuration.Binder"; + version = "3.1.5"; + sha256 = "0310pvrwbbqak7k4s32syryqxlkwli8w8bwlpnqmz42svh2302wv"; + }) (fetchNuGet { name = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "2.1.0"; @@ -429,6 +464,11 @@ version = "3.1.4"; sha256 = "0npc18pjl86d06czb0fy6ln3prfpwfb16p6709xx2jrsl96dp9bp"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Configuration"; + version = "3.1.5"; + sha256 = "1i7zm8ghgxwp655anyfm910qm7rcpvrz48fxjyzw9w63hj4sv6bk"; + }) (fetchNuGet { name = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.0.0"; @@ -444,6 +484,11 @@ version = "3.1.4"; sha256 = "03ys96pqca93zwxvh0vprzms09i9y0lmq32w98m6klbizq01fc06"; }) + (fetchNuGet { + name = "Microsoft.Extensions.DependencyInjection.Abstractions"; + version = "3.1.5"; + sha256 = "1wkf8ajh4pj6g3wwd18g3hjc3lqqny8052rl373ddcardxrs2gvn"; + }) (fetchNuGet { name = "Microsoft.Extensions.DependencyInjection"; version = "2.0.0"; @@ -539,6 +584,11 @@ version = "3.1.4"; sha256 = "1rkl0yqmi5vfivn641866v2mdsgdy8amym546y6lzbab39g24b5n"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Logging.Abstractions"; + version = "3.1.5"; + sha256 = "0lr22hlf52csrna9ly2lbz3y1agfgdlg7rvsqjg7ik488dhkmhji"; + }) (fetchNuGet { name = "Microsoft.Extensions.Logging.Filter"; version = "1.1.2"; @@ -559,6 +609,11 @@ version = "2.0.0"; sha256 = "1isc3rjbzz60f7wbmgcwslx5d10hm5hisnk7v54vfi2bz7132gll"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Options.ConfigurationExtensions"; + version = "3.1.5"; + sha256 = "10w78fj2jpmghvprz6b046xcr68zzp6x550a7m1iivn0h7a3l7pi"; + }) (fetchNuGet { name = "Microsoft.Extensions.Options"; version = "2.0.0"; @@ -569,6 +624,11 @@ version = "3.1.4"; sha256 = "0jphncx82l7jm5xi49dfxhbh24wv86sy44022chd7bkizllsypp4"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Options"; + version = "3.1.5"; + sha256 = "0rhqyqa7vhlmz2g0250zhypaayvckx4dv89micdg521cpvr5arpr"; + }) (fetchNuGet { name = "Microsoft.Extensions.PlatformAbstractions"; version = "1.1.0"; @@ -589,11 +649,36 @@ version = "2.1.0"; sha256 = "1r9gzwdfmb8ysnc4nzmyz5cyar1lw0qmizsvrsh252nhlyg06nmb"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Primitives"; + version = "2.2.0"; + sha256 = "0znah6arbcqari49ymigg3wiy2hgdifz8zsq8vdc3ynnf45r7h0c"; + }) (fetchNuGet { name = "Microsoft.Extensions.Primitives"; version = "3.1.4"; sha256 = "12xvysk024aghrcwzv4525vznnk8lqmknl2vqqxhq4k5hjxpsysp"; }) + (fetchNuGet { + name = "Microsoft.Extensions.Primitives"; + version = "3.1.5"; + sha256 = "0n2pk1sy8ikd29282sx4ps9r1wnhzgg4nwmkka9ypjizd8lkkk2m"; + }) + (fetchNuGet { + name = "Microsoft.IdentityModel.JsonWebTokens"; + version = "6.6.0"; + sha256 = "06z5a1jpqpdd1pix85is7kkpn4v0l4an909skji2p8gm09p5sfyv"; + }) + (fetchNuGet { + name = "Microsoft.IdentityModel.Logging"; + version = "6.6.0"; + sha256 = "1mpkx544cbxws1a22zwxbp3lqqamcc3x915l23spsxqvgr02jjrq"; + }) + (fetchNuGet { + name = "Microsoft.IdentityModel.Tokens"; + version = "6.6.0"; + sha256 = "0h5vbsd5x9cf7nqyrwn7d7y1axhf1zz0jr9prvi4xpxawa3kajyj"; + }) (fetchNuGet { name = "Microsoft.NET.Test.Sdk"; version = "16.6.1"; @@ -671,8 +756,8 @@ }) (fetchNuGet { name = "NBitcoin.Altcoins"; - version = "2.0.28"; - sha256 = "1zfirfmhgigp733km9rqkgz560h5wg88bpba499x49h5j650cnn4"; + version = "2.0.31"; + sha256 = "13gcfsxpfq8slmsvgzf6iv581x7n535zq0p9c88bqs5p88r6lygm"; }) (fetchNuGet { name = "NBitcoin"; @@ -694,6 +779,11 @@ version = "5.0.73"; sha256 = "0vqgcb0ws5fnkrdzqfkyh78041c6q4l22b93rr0006dd4bmqrmg1"; }) + (fetchNuGet { + name = "NBitcoin"; + version = "5.0.77"; + sha256 = "0ykz4ii6lh6gdlz6z264wnib5pfnmq9q617qqbg0f04mq654jygb"; + }) (fetchNuGet { name = "NBitpayClient"; version = "1.0.0.39"; @@ -701,8 +791,8 @@ }) (fetchNuGet { name = "NBXplorer.Client"; - version = "3.0.20"; - sha256 = "1mwa6ncmg5r6q7yn6skm9dgqm631c7r7nadcg9mvbw81113h0xxy"; + version = "3.0.21"; + sha256 = "1asri2wsjq3ljf2p4r4x52ba9cirh8ccc5ysxpnv4cvladkdazbi"; }) (fetchNuGet { name = "NETStandard.Library"; @@ -784,6 +874,11 @@ version = "4.1.3.1"; sha256 = "0qk3hb8s521c2gy4k3m1i6fhpr133mnw9w85cwsy9j7ghxyca1nv"; }) + (fetchNuGet { + name = "NSec.Cryptography"; + version = "20.2.0"; + sha256 = "19slji51v8s8i4836nqqg7qb3i3p4ahqahz0fbb3gwpp67pn6izx"; + }) (fetchNuGet { name = "NuGet.Frameworks"; version = "5.0.0"; @@ -794,6 +889,21 @@ version = "1.5.12"; sha256 = "0f4gs31z8dwfvd246nrv3m0qkxzav37hxynx2maykza017khynyf"; }) + (fetchNuGet { + name = "PeterO.Cbor"; + version = "4.1.3"; + sha256 = "0882i3bhhx2yag2m4lbdsgngjwaj9ff4v0ab9zb839i4r77aq1yn"; + }) + (fetchNuGet { + name = "PeterO.Numbers"; + version = "1.6.0"; + sha256 = "04kfdkfr600h69g67g6izbn57bxqjamvaadyw3p9gjsc0wrivi98"; + }) + (fetchNuGet { + name = "PeterO.URIUtility"; + version = "1.0.0"; + sha256 = "04ihfbk2lf0smznwfb62h57qknls5jyxirdz72g5wn9h1dcgkdac"; + }) (fetchNuGet { name = "Pomelo.EntityFrameworkCore.MySql"; version = "3.1.1"; @@ -804,11 +914,6 @@ version = "2.2.1"; sha256 = "1w6s9wjbsyvq8cnqknkdzm9chnv0g5gcsrq5i94zp6br9vg7c627"; }) - (fetchNuGet { - name = "Portable.BouncyCastle"; - version = "1.8.1.3"; - sha256 = "1lv1ljaz8df835jgmp3ny1xgqqjf1s9f25baw7bf8d24qlf25i2g"; - }) (fetchNuGet { name = "QRCoder"; version = "1.4.1"; @@ -1164,6 +1269,11 @@ version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; }) + (fetchNuGet { + name = "System.IdentityModel.Tokens.Jwt"; + version = "6.6.0"; + sha256 = "17i6a43g1fksq9xy77dgsz54klz71pz062pb58lqx8h06p1818h1"; + }) (fetchNuGet { name = "System.Interactive.Async"; version = "3.1.1"; @@ -1239,11 +1349,21 @@ version = "4.5.0"; sha256 = "1layqpcx1q4l805fdnj2dfqp6ncx2z42ca06rgsr6ikq4jjgbv30"; }) + (fetchNuGet { + name = "System.Memory"; + version = "4.5.1"; + sha256 = "0f07d7hny38lq9w69wx4lxkn4wszrqf9m9js6fh9is645csm167c"; + }) (fetchNuGet { name = "System.Memory"; version = "4.5.3"; sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a"; }) + (fetchNuGet { + name = "System.Memory"; + version = "4.5.4"; + sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; + }) (fetchNuGet { name = "System.Net.Http"; version = "4.3.0"; @@ -1409,6 +1529,11 @@ version = "4.5.0"; sha256 = "17labczwqk3jng3kkky73m0jhi8wc21vbl7cz5c0hj2p1dswin43"; }) + (fetchNuGet { + name = "System.Runtime.CompilerServices.Unsafe"; + version = "4.5.1"; + sha256 = "1xcrjx5fwg284qdnxyi2d0lzdm5q4frlpkp0nf6vvkx1kdz2prrf"; + }) (fetchNuGet { name = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.2"; @@ -1529,6 +1654,11 @@ version = "4.3.0"; sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv"; }) + (fetchNuGet { + name = "System.Security.Cryptography.Cng"; + version = "4.7.0"; + sha256 = "00797sqbba8lys486ifxblz9j52m29kidclvmqpk531820k55x9j"; + }) (fetchNuGet { name = "System.Security.Cryptography.Csp"; version = "4.3.0"; @@ -1789,11 +1919,6 @@ version = "2.12.1"; sha256 = "0m41dxzc3hh0f4j1k4q915pvcq6zr0hv1pj6b3sayrn8vjhk64qb"; }) - (fetchNuGet { - name = "U2F.Core"; - version = "1.0.4"; - sha256 = "0mk32yyihigp9njs54z411fswgzr6x3kw134c7ylwy2d2wmq2n9b"; - }) (fetchNuGet { name = "WindowsAzure.Storage"; version = "9.3.3"; diff --git a/pkgs/applications/blockchains/btcpayserver/update.sh b/pkgs/applications/blockchains/btcpayserver/update.sh index 1f7dbedd0204..9debe6780f23 100755 --- a/pkgs/applications/blockchains/btcpayserver/update.sh +++ b/pkgs/applications/blockchains/btcpayserver/update.sh @@ -2,5 +2,10 @@ set -euo pipefail scriptDir=$(cd "${BASH_SOURCE[0]%/*}" && pwd) +cd "$scriptDir" -"$scriptDir"/../nbxplorer/util/update-common.sh btcpayserver "$scriptDir"/deps.nix +echo "Updating nbxplorer" +../nbxplorer/update.sh +echo +echo "Updating btcpayserver" +../nbxplorer/util/update-common.sh btcpayserver deps.nix diff --git a/pkgs/applications/blockchains/nbxplorer/default.nix b/pkgs/applications/blockchains/nbxplorer/default.nix index ffa061edc727..7e279b226961 100644 --- a/pkgs/applications/blockchains/nbxplorer/default.nix +++ b/pkgs/applications/blockchains/nbxplorer/default.nix @@ -15,13 +15,13 @@ in stdenv.mkDerivation rec { pname = "nbxplorer"; - version = "2.1.49"; + version = "2.1.51"; src = fetchFromGitHub { owner = "dgarage"; repo = "NBXplorer"; rev = "v${version}"; - sha256 = "0xg5gbq6rbzgsbgwf94qcy2b0m5kdspi6hc5a64smaj9i7i0136l"; + sha256 = "sha256-tvuuoDZCSDFa8gAVyH+EP1DLtdPfbkr+w5lSxZkzZXg="; }; nativeBuildInputs = [ dotnetSdk dotnetPackages.Nuget makeWrapper ]; diff --git a/pkgs/applications/blockchains/nbxplorer/deps.nix b/pkgs/applications/blockchains/nbxplorer/deps.nix index b0bf85f623f7..de75ad228d3a 100644 --- a/pkgs/applications/blockchains/nbxplorer/deps.nix +++ b/pkgs/applications/blockchains/nbxplorer/deps.nix @@ -181,18 +181,23 @@ }) (fetchNuGet { name = "NBitcoin.Altcoins"; - version = "2.0.28"; - sha256 = "1zfirfmhgigp733km9rqkgz560h5wg88bpba499x49h5j650cnn4"; + version = "2.0.31"; + sha256 = "13gcfsxpfq8slmsvgzf6iv581x7n535zq0p9c88bqs5p88r6lygm"; }) (fetchNuGet { name = "NBitcoin.TestFramework"; - version = "2.0.21"; - sha256 = "1k26fkss6d7x2yqlid31z5i04b5dmlbbbwijg9c8i3d996i1z7sq"; + version = "2.0.22"; + sha256 = "1zwhjy6xppl01jhkgl7lqjsmi8crny4qq22ml20cz8l437j1zi4n"; }) (fetchNuGet { name = "NBitcoin"; - version = "5.0.73"; - sha256 = "0vqgcb0ws5fnkrdzqfkyh78041c6q4l22b93rr0006dd4bmqrmg1"; + version = "5.0.76"; + sha256 = "0q3ilmsrw9ip1s38qmfs4qi02xvccmy1naafffn5yxj08q0n1p79"; + }) + (fetchNuGet { + name = "NBitcoin"; + version = "5.0.77"; + sha256 = "0ykz4ii6lh6gdlz6z264wnib5pfnmq9q617qqbg0f04mq654jygb"; }) (fetchNuGet { name = "NETStandard.Library"; diff --git a/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh b/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh index 1402d1cd1eb8..14b1687dffff 100755 --- a/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh +++ b/pkgs/applications/blockchains/nbxplorer/util/create-deps.sh @@ -6,7 +6,7 @@ set -euo pipefail # Expects $pkgSrc to contain a single .sln file. pkgSrc=$1 -depsFile=$2 +depsFile=$(realpath "$2") sln=$(cd "$pkgSrc"; find * -maxdepth 0 -name '*.sln' | head -1) [[ $sln ]] || { echo "No .sln file in $pkgSrc" ; exit 1; } diff --git a/pkgs/applications/blockchains/nbxplorer/util/update-common.sh b/pkgs/applications/blockchains/nbxplorer/util/update-common.sh index c69168ccbbb1..7a9262bf4833 100755 --- a/pkgs/applications/blockchains/nbxplorer/util/update-common.sh +++ b/pkgs/applications/blockchains/nbxplorer/util/update-common.sh @@ -1,16 +1,16 @@ #!/usr/bin/env nix-shell -#!nix-shell -i bash -p coreutils curl jq common-updater-scripts dotnet-sdk_3 +#!nix-shell -i bash -p coreutils curl jq common-updater-scripts dotnet-sdk_3 git gnupg set -euo pipefail # This script uses the following env vars: # getVersionFromTags -# onlyCreateDeps +# refetch pkgName=$1 depsFile=$2 : ${getVersionFromTags:=} -: ${onlyCreateDeps:=} +: ${refetch:=} scriptDir=$(cd "${BASH_SOURCE[0]%/*}" && pwd) nixpkgs=$(realpath "$scriptDir"/../../../../..) @@ -29,23 +29,46 @@ getLatestVersionTag() { | sort -V | tail -1 | sed 's|^v||' } -if [[ ! $onlyCreateDeps ]]; then - oldVersion=$(evalNixpkgs "$pkgName.version") - if [[ $getVersionFromTags ]]; then - newVersion=$(getLatestVersionTag) - else - newVersion=$(curl -s "https://api.github.com/repos/$(getRepo)/releases" | jq -r '.[0].name') - fi - - if [[ $newVersion == $oldVersion ]]; then - echo "nixpkgs already has the latest version $newVersion" - echo "Run this script with env var onlyCreateDeps=1 to recreate "$(basename "$depsFile") - exit 0 - else - echo "Updating $pkgName: $oldVersion -> $newVersion" - (cd "$nixpkgs" && update-source-version "$pkgName" "$newVersion") - fi +oldVersion=$(evalNixpkgs "$pkgName.version") +if [[ $getVersionFromTags ]]; then + newVersion=$(getLatestVersionTag) +else + newVersion=$(curl -s "https://api.github.com/repos/$(getRepo)/releases" | jq -r '.[0].name') fi +if [[ $newVersion == $oldVersion && ! $refetch ]]; then + echo "nixpkgs already has the latest version $newVersion" + echo "Run this script with env var refetch=1 to re-verify the content hash via GPG" + echo "and to recreate $(basename "$depsFile"). This is useful for reviewing a version update." + exit 0 +fi + +# Fetch release and GPG-verify the content hash +tmpdir=$(mktemp -d /tmp/$pkgName-verify-gpg.XXX) +repo=$tmpdir/repo +trap "rm -rf $tmpdir" EXIT +git clone --depth 1 --branch v${newVersion} -c advice.detachedHead=false https://github.com/$(getRepo) $repo +export GNUPGHOME=$tmpdir +# Fetch Nicolas Dorier's key (64-bit key ID: 6618763EF09186FE) +gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys AB4CFA9895ACA0DBE27F6B346618763EF09186FE 2> /dev/null +echo +echo "Verifying commit" +git -C $repo verify-commit HEAD +rm -rf $repo/.git +newHash=$(nix hash-path $repo) +rm -rf $tmpdir +echo + +# Update pkg version and hash +echo "Updating $pkgName: $oldVersion -> $newVersion" +if [[ $newVersion == $oldVersion ]]; then + # Temporarily set a source version that doesn't equal $newVersion so that $newHash + # is always updated in the next call to update-source-version. + (cd "$nixpkgs" && update-source-version "$pkgName" "0" "0000000000000000000000000000000000000000000000000000") +fi +(cd "$nixpkgs" && update-source-version "$pkgName" "$newVersion" "$newHash") +echo + +# Create deps file storeSrc="$(nix-build "$nixpkgs" -A $pkgName.src --no-out-link)" . "$scriptDir"/create-deps.sh "$storeSrc" "$depsFile" diff --git a/pkgs/applications/blockchains/turbo-geth.nix b/pkgs/applications/blockchains/turbo-geth.nix index 1c3b816750e5..b1548212a694 100644 --- a/pkgs/applications/blockchains/turbo-geth.nix +++ b/pkgs/applications/blockchains/turbo-geth.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "turbo-geth"; - version = "2021.05.01"; + version = "2021.05.02"; src = fetchFromGitHub { owner = "ledgerwatch"; repo = pname; rev = "v${version}"; - sha256 = "sha256-zvxtBK0/6fShxAZfU4gTV0XiP6TzhKFNsADSZA9gv0Y="; + sha256 = "sha256-7sTRAAlKZOdwi/LRbIEDKWpBe1ol8pZfEf2KIC4s0xk="; }; - vendorSha256 = "0c8p6djs0zcci8sh4zgzky89155mr4cfqlax025618x8vngrsxf2"; + vendorSha256 = "1d0ahdb2b5v8nxq3kdxw151phnyv6habb8kr8qjaq3kyhcnyk6ng"; runVend = true; subPackages = [ diff --git a/pkgs/applications/editors/android-studio/common.nix b/pkgs/applications/editors/android-studio/common.nix index 678d6a0a3532..6d9182b9d61a 100644 --- a/pkgs/applications/editors/android-studio/common.nix +++ b/pkgs/applications/editors/android-studio/common.nix @@ -145,7 +145,7 @@ let ]}" # AS launches LLDBFrontend with a custom LD_LIBRARY_PATH - wrapProgram $out/bin/lldb/bin/LLDBFrontend --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ + wrapProgram $(find $out -name LLDBFrontend) --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ ncurses5 zlib ]}" diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix index 466dfb2516e1..e68e95ba5421 100644 --- a/pkgs/applications/editors/android-studio/default.nix +++ b/pkgs/applications/editors/android-studio/default.nix @@ -9,18 +9,18 @@ let inherit buildFHSUserEnv; }; stableVersion = { - version = "4.1.3.0"; # "Android Studio 4.1.3" - build = "201.7199119"; - sha256Hash = "06xwgk7bwcmljka8xa56cfwwg858r0bl0xp2jb9hdnkwljf796gm"; + version = "4.2.1.0"; # "Android Studio 4.2.1" + build = "202.7351085"; + sha256Hash = "074y6i0h8zamjgvvs882im44clds3g6aq8rssl7sq1wx6hrn5q36"; }; betaVersion = { - version = "4.2.0.22"; # "Android Studio 4.2 Beta 6" - build = "202.7188722"; - sha256Hash = "0mzwkx1csx194wzg7dc1cii3c16wbmlbq1jdv9ly4nmdxlvc2rxb"; + version = "4.2.0.24"; # "Android Studio 4.2.0" + build = "202.7322048"; + sha256Hash = "1ii1zf8mv7xyql56wwkcdj5l4g3zaprdszv6r9md9r5zh78k4ccz"; }; latestVersion = { # canary & dev - version = "2020.3.1.10"; # "Android Studio Arctic Fox (2020.3.1) Canary 10" - sha256Hash = "15xxyjjjy5pnimc66dcwnqb7z4lq7ll4fl401a3br5ca4d1hpgsj"; + version = "2020.3.1.15"; # "Android Studio Arctic Fox (2020.3.1) Canary 15" + sha256Hash = "0k66ibflqwdlgapir5w2v1d4zjwn6464yk2hvlmif9lsfdvd0ivv"; }; in { # Attributes are named by their corresponding release channels diff --git a/pkgs/applications/editors/bless/default.nix b/pkgs/applications/editors/bless/default.nix index 24fc8440bbd7..e613747aeab1 100644 --- a/pkgs/applications/editors/bless/default.nix +++ b/pkgs/applications/editors/bless/default.nix @@ -1,73 +1,58 @@ { lib, stdenv , fetchFromGitHub -, autoreconfHook , pkg-config , mono +, meson +, ninja , gtk-sharp-2_0 , gettext , makeWrapper , glib , gtk2-x11 -, gnome2 +, libxslt +, docbook_xsl +, python3 }: stdenv.mkDerivation rec { pname = "bless"; - version = "0.6.2"; + version = "0.6.3"; src = fetchFromGitHub { owner = "afrantzis"; repo = pname; rev = "v${version}"; - sha256 = "04ra2mcx3pkhzbhcz0zwfmbpqj6cwisrypi6xbc2d6pxd4hdafn1"; + hash = "sha256-rS+vJX0y9v1TiPsRfABroHiTuENQKEOxNsyKwagRuHM="; }; + postPatch = '' + sed "s|get_option('tests')|false|g" -i meson.build + patchShebangs . + ''; + buildInputs = [ gtk-sharp-2_0 mono # runtime only deps glib gtk2-x11 - gnome2.libglade ]; nativeBuildInputs = [ pkg-config - autoreconfHook + meson + ninja gettext makeWrapper + libxslt + docbook_xsl + python3 ]; - configureFlags = [ - # scrollkeeper is a gnome2 package, so it must be old and we shouldn't really support it - # NOTE: that sadly doesn't turn off the compilation of the manual with scrollkeeper, so we have to fake the binaries below - "--without-scrollkeeper" - ]; - - autoreconfPhase = '' - mkdir _bin - - # this fakes the scrollkeeper commands, to keep the build happy - for f in scrollkeeper-preinstall scrollkeeper-update; do - echo "true" > ./_bin/$f - chmod +x ./_bin/$f - done - - export PATH="$PWD/_bin:$PATH" - - # and it also wants to install that file - touch ./doc/user/bless-manual.omf - - # patch mono path - sed "s|^mono|${mono}/bin/mono|g" -i src/bless-script.in - - ./autogen.sh - ''; - preFixup = '' - MPATH="${gtk-sharp-2_0}/lib/mono/gtk-sharp-2.0:${glib.out}/lib:${gtk2-x11}/lib:${gnome2.libglade}/lib:${gtk-sharp-2_0}/lib" - wrapProgram $out/bin/bless --prefix MONO_PATH : "$MPATH" --prefix LD_LIBRARY_PATH : "$MPATH" - ''; + MPATH="${gtk-sharp-2_0}/lib/mono/gtk-sharp-2.0:${glib.out}/lib:${gtk2-x11}/lib:${gtk-sharp-2_0}/lib" + wrapProgram $out/bin/bless --prefix MONO_PATH : "$MPATH" --prefix LD_LIBRARY_PATH : "$MPATH" --prefix PATH : ${lib.makeBinPath [ mono ]} + ''; meta = with lib; { homepage = "https://github.com/afrantzis/bless"; diff --git a/pkgs/applications/editors/ghostwriter/default.nix b/pkgs/applications/editors/ghostwriter/default.nix index 4d6eafaa0f0d..d23b42811b89 100644 --- a/pkgs/applications/editors/ghostwriter/default.nix +++ b/pkgs/applications/editors/ghostwriter/default.nix @@ -2,13 +2,13 @@ mkDerivation rec { pname = "ghostwriter"; - version = "2.0.0"; + version = "2.0.1"; src = fetchFromGitHub { owner = "wereturtle"; repo = pname; rev = version; - sha256 = "sha256-5O2W7ZQeDkNzwi6t9MfNbv4fmNvak1AcMnzJTE1F9L8="; + sha256 = "sha256-bNVhYwX60F3lrP9UmZSntfz83vbmHe9tu/4nUgzUWR4="; }; nativeBuildInputs = [ qmake pkg-config qttools ]; diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix index decd4b100420..da29daa63599 100644 --- a/pkgs/applications/editors/vscode/vscodium.nix +++ b/pkgs/applications/editors/vscode/vscodium.nix @@ -13,10 +13,10 @@ let archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz"; sha256 = { - x86_64-linux = "1p68fvlr2fwrwr61gfrna3hjzgyazacr373hldbc4fxca3fdij76"; - x86_64-darwin = "0wyihr2yfzjaypsa682zdklfxn3m7zca81brkzdvrndw24hdcl8m"; - aarch64-linux = "0iw471n1fl8m2x06n2rdbkiwzhlc7lhk99vyql3z4fi0zyjy3pbn"; - armv7l-linux = "0dx1icp245cfx3hkkpzzgfg9y8sv45llx35s03w1zzga2h2vhm3a"; + x86_64-linux = "1gw2273ab0gdyav6mz7wk7d6g6cwcdvx0xaghvm610m1pvkbvxkz"; + x86_64-darwin = "1zfzsr8gybmpmxc3jlfj6sx3m6ny6hc3dxvpgffni7k5zgv651df"; + aarch64-linux = "079bp48h0qfpsbyir2qg3w1f43dc68ngmxqdqb3jnkx721affjzs"; + armv7l-linux = "1d9243hk07xawv44909lk6y6bnvy0wjhy8xl13n3a11pg3djn5bm"; }.${system}; sourceRoot = { @@ -33,7 +33,7 @@ in # Please backport all compatible updates to the stable release. # This is important for the extension ecosystem. - version = "1.56.1"; + version = "1.56.2"; pname = "vscodium"; executableName = "codium"; diff --git a/pkgs/applications/graphics/avocode/default.nix b/pkgs/applications/graphics/avocode/default.nix index 02e5c7c0345a..2693f03972cf 100644 --- a/pkgs/applications/graphics/avocode/default.nix +++ b/pkgs/applications/graphics/avocode/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "avocode"; - version = "4.12.0"; + version = "4.14.0"; src = fetchurl { url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip"; - sha256 = "sha256-qbG0Ii3Xmj1UGGS+n+LdiNPAHBkpQZMGEzrDvOcaUNA="; + sha256 = "sha256-BDW87UVN1Jub0sJFvtkZr5ssz835Yf2CNn5kHCn70cE="; }; libPath = lib.makeLibraryPath (with xorg; [ diff --git a/pkgs/applications/graphics/emulsion/default.nix b/pkgs/applications/graphics/emulsion/default.nix index c09a1c31c617..3012250b9ce3 100644 --- a/pkgs/applications/graphics/emulsion/default.nix +++ b/pkgs/applications/graphics/emulsion/default.nix @@ -37,16 +37,16 @@ let in rustPlatform.buildRustPackage rec { pname = "emulsion"; - version = "8.0"; + version = "9.0"; src = fetchFromGitHub { owner = "ArturKovacs"; repo = pname; rev = "v${version}"; - sha256 = "sha256-xv3q59HobunrFyc+CPLztpsQd20Eu4+JI+iYhlGI0bc="; + sha256 = "sha256-Cdi+PQDHxMQG7t7iwDi6UWfDwQjjA2yiOf9p/ahBlOw="; }; - cargoSha256 = "sha256-+jJMi3uBpvKYegURFyAV3TfP8eX4xRxgL4WGew7WMws="; + cargoSha256 = "sha256-2wiLamnGqACx1r4WJbWPCN3tvhww/rRWz8fcvAbjYE0="; nativeBuildInputs = [ installShellFiles diff --git a/pkgs/applications/graphics/fondo/default.nix b/pkgs/applications/graphics/fondo/default.nix index 34dd4926a49f..c2cb4c92d47e 100644 --- a/pkgs/applications/graphics/fondo/default.nix +++ b/pkgs/applications/graphics/fondo/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ lib +, stdenv , fetchFromGitHub , nix-update-script , pantheon @@ -57,18 +58,15 @@ stdenv.mkDerivation rec { patchShebangs meson/post_install.py ''; - passthru = { - updateScript = nix-update-script { - attrPath = pname; - }; - }; - - meta = with lib; { - description = "Find the most beautiful wallpapers for your desktop"; homepage = "https://github.com/calo001/fondo"; + description = "Find the most beautiful wallpapers for your desktop"; license = licenses.agpl3Plus; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ AndersonTorres ]; platforms = platforms.linux; }; + + passthru.updateScript = nix-update-script { + attrPath = pname; + }; } diff --git a/pkgs/applications/graphics/gimp/plugins/default.nix b/pkgs/applications/graphics/gimp/plugins/default.nix index 307866c377ad..2b8dbbc4d28d 100644 --- a/pkgs/applications/graphics/gimp/plugins/default.nix +++ b/pkgs/applications/graphics/gimp/plugins/default.nix @@ -38,7 +38,7 @@ let } // attrs // { - name = "${gimp.name}-plugin-${name}"; + name = "${gimp.pname}-plugin-${name}"; buildInputs = [ gimp gimp.gtk diff --git a/pkgs/applications/misc/chrysalis/default.nix b/pkgs/applications/misc/chrysalis/default.nix index e79d989e22d8..4d6a6943cdeb 100644 --- a/pkgs/applications/misc/chrysalis/default.nix +++ b/pkgs/applications/misc/chrysalis/default.nix @@ -1,16 +1,20 @@ -{ lib, appimageTools, fetchurl }: +{ lib, appimageTools, fetchurl, gtk3, gsettings-desktop-schemas }: let pname = "chrysalis"; - version = "0.7.9"; + version = "0.8.4"; in appimageTools.wrapType2 rec { name = "${pname}-${version}-binary"; src = fetchurl { - url = "https://github.com/keyboardio/${pname}/releases/download/${pname}-${version}/${pname}-${version}.AppImage"; - sha256 = "12w4vv7dwfpvxpc8kpfas90y7yy8mb8dj2096z3vw1bli5lrn3zi"; + url = "https://github.com/keyboardio/${pname}/releases/download/v${version}/${pname}-${version}.AppImage"; + sha256 = "b41f3e23dac855b1588cff141e3d317f96baff929a0543c79fccee0c6f095bc7"; }; + profile = '' + export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS + ''; + multiPkgs = null; extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [ p.glib diff --git a/pkgs/applications/misc/curaengine/default.nix b/pkgs/applications/misc/curaengine/default.nix index 76947c1ed946..05f63c548035 100644 --- a/pkgs/applications/misc/curaengine/default.nix +++ b/pkgs/applications/misc/curaengine/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "curaengine"; - version = "4.9.0"; + version = "4.9.1"; src = fetchFromGitHub { owner = "Ultimaker"; repo = "CuraEngine"; rev = version; - sha256 = "0b82hwn7pb73h1azaandq93bkzlzskhgk71pwf4yws0j9bm6z084"; + sha256 = "sha256-1hCjtnI1EnfyQ0QfU8qZoSLIjE5pyDYpu8H4J91cWYM="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix index 33501d1c6673..3227598e8cf3 100644 --- a/pkgs/applications/misc/dbeaver/default.nix +++ b/pkgs/applications/misc/dbeaver/default.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation rec { pname = "dbeaver"; - version = "21.0.4"; # When updating also update fetchedMavenDeps.sha256 + version = "21.0.5"; # When updating also update fetchedMavenDeps.sha256 src = fetchFromGitHub { owner = "dbeaver"; repo = "dbeaver"; rev = version; - sha256 = "sha256-jV7Pe4MsLQnIrkDnlI2SrPzSjiDHM59GbMy4G7oeQK8="; + sha256 = "sha256-WMXhGXGHNjMJqob6A5S4+t9MDdJydAjdoY0u7T3ANbw="; }; fetchedMavenDeps = stdenv.mkDerivation { diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix index af259c199d89..fe09345349e5 100644 --- a/pkgs/applications/misc/keepassx/community.nix +++ b/pkgs/applications/misc/keepassx/community.nix @@ -23,6 +23,7 @@ , qtsvg , qtx11extras , quazip +, readline , wrapQtAppsHook , yubikey-personalization , zlib @@ -51,13 +52,13 @@ stdenv.mkDerivation rec { sha256 = "02ajfkw818cmalvkl0kqvza85rgdgs59kw2v7b3c4v8kv00c41j3"; }; - NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang [ + NIX_CFLAGS_COMPILE = optionalString stdenv.cc.isClang [ "-Wno-old-style-cast" "-Wno-error" "-D__BIG_ENDIAN__=${if stdenv.isBigEndian then "1" else "0"}" ]; - NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-rpath ${libargon2}/lib"; + NIX_LDFLAGS = optionalString stdenv.isDarwin "-rpath ${libargon2}/lib"; patches = [ ./darwin.patch @@ -108,12 +109,14 @@ stdenv.mkDerivation rec { qtbase qtsvg qtx11extras + readline yubikey-personalization zlib ] - ++ lib.optional withKeePassKeeShareSecure quazip - ++ lib.optional stdenv.isDarwin qtmacextras - ++ lib.optional (stdenv.isDarwin && withKeePassTouchID) darwin.apple_sdk.frameworks.LocalAuthentication; + ++ optional withKeePassKeeShareSecure quazip + ++ optional stdenv.isDarwin qtmacextras + ++ optional (stdenv.isDarwin && withKeePassTouchID) + darwin.apple_sdk.frameworks.LocalAuthentication; preFixup = optionalString stdenv.isDarwin '' # Make it work without Qt in PATH. @@ -123,8 +126,14 @@ stdenv.mkDerivation rec { passthru.tests = nixosTests.keepassxc; meta = { - description = "Password manager to store your passwords safely and auto-type them into your everyday websites and applications"; - longDescription = "A community fork of KeePassX, which is itself a port of KeePass Password Safe. The goal is to extend and improve KeePassX with new features and bugfixes to provide a feature-rich, fully cross-platform and modern open-source password manager. Accessible via native cross-platform GUI, CLI, and browser integration with the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser)."; + description = "Offline password manager with many features."; + longDescription = '' + A community fork of KeePassX, which is itself a port of KeePass Password Safe. + The goal is to extend and improve KeePassX with new features and bugfixes, + to provide a feature-rich, fully cross-platform and modern open-source password manager. + Accessible via native cross-platform GUI, CLI, has browser integration + using the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser) + ''; homepage = "https://keepassxc.org/"; license = licenses.gpl2Plus; maintainers = with maintainers; [ jonafato turion ]; diff --git a/pkgs/applications/misc/makeself/default.nix b/pkgs/applications/misc/makeself/default.nix index 205d526ed941..e60e110087f4 100644 --- a/pkgs/applications/misc/makeself/default.nix +++ b/pkgs/applications/misc/makeself/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, which }: +{ lib, stdenv, fetchFromGitHub, which, zstd, pbzip2 }: stdenv.mkDerivation rec { version = "2.4.2"; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { doCheck = true; checkTarget = "test"; - checkInputs = [ which ]; + checkInputs = [ which zstd pbzip2 ]; installPhase = '' mkdir -p $out/{bin,share/{${pname}-${version},man/man1}} diff --git a/pkgs/applications/misc/notejot/default.nix b/pkgs/applications/misc/notejot/default.nix index 724d9285ec2b..bd30fa2bb211 100644 --- a/pkgs/applications/misc/notejot/default.nix +++ b/pkgs/applications/misc/notejot/default.nix @@ -1,15 +1,30 @@ -{ lib, stdenv, fetchFromGitHub, nix-update-script, vala, pkg-config, meson, ninja, python3, pantheon -, gtk3, gtksourceview, json-glib, libgee, wrapGAppsHook }: +{ lib +, stdenv +, fetchFromGitHub +, gtk4 +, gtksourceview +, json-glib +, libadwaita +, libgee +, meson +, ninja +, nix-update-script +, pantheon +, pkg-config +, python3 +, vala +, wrapGAppsHook +}: stdenv.mkDerivation rec { pname = "notejot"; - version = "1.6.3"; + version = "3.0.4"; src = fetchFromGitHub { owner = "lainsce"; repo = pname; rev = version; - sha256 = "170dzgd6cnf2k3hfifjysmdggpskx6v1pjmblqgbwaj2d3snf3h8"; + hash = "sha256-p8rca3PsnT/3Lp6W30VvqR9aPr6EIuNrH5gsxL0lZ0Q="; }; nativeBuildInputs = [ @@ -20,31 +35,30 @@ stdenv.mkDerivation rec { python3 wrapGAppsHook ]; - buildInputs = [ - gtk3 + gtk4 gtksourceview json-glib + libadwaita libgee pantheon.elementary-icon-theme pantheon.granite ]; postPatch = '' - patchShebangs meson/post_install.py + chmod +x build-aux/post_install.py + patchShebangs build-aux/post_install.py ''; - passthru = { - updateScript = nix-update-script { - attrPath = pname; - }; - }; - meta = with lib; { - description = "Stupidly-simple sticky notes applet"; homepage = "https://github.com/lainsce/notejot"; - license = licenses.gpl2Plus; - maintainers = with maintainers; [ ]; + description = "Stupidly-simple sticky notes applet"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ AndersonTorres ]; platforms = platforms.linux; }; + + passthru.updateScript = nix-update-script { + attrPath = pname; + }; } diff --git a/pkgs/applications/misc/openbox-menu/default.nix b/pkgs/applications/misc/openbox-menu/default.nix index 71c7903dfe22..e9646b9c21d4 100644 --- a/pkgs/applications/misc/openbox-menu/default.nix +++ b/pkgs/applications/misc/openbox-menu/default.nix @@ -22,6 +22,13 @@ stdenv.mkDerivation rec { # Enables SVG support by uncommenting the Makefile patches = [ ./000-enable-svg.patch ]; + # The strip options are not recognized by Darwin. + postPatch = lib.optionalString stdenv.isDarwin '' + sed -i -e '/strip -s/d' Makefile + ''; + + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; + installFlags = [ "prefix=${placeholder "out"}" ]; meta = with lib; { diff --git a/pkgs/applications/misc/sc-im/default.nix b/pkgs/applications/misc/sc-im/default.nix index cc7d4c3771b4..e299ec2ac86b 100644 --- a/pkgs/applications/misc/sc-im/default.nix +++ b/pkgs/applications/misc/sc-im/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchFromGitHub -, fetchpatch , makeWrapper , pkg-config , which @@ -16,29 +15,17 @@ stdenv.mkDerivation rec { pname = "sc-im"; - version = "0.8.1"; + version = "0.8.2"; src = fetchFromGitHub { owner = "andmarti1424"; repo = "sc-im"; rev = "v${version}"; - sha256 = "sha256-AIYa3d1ml1f5GNLKijeFPX+UabgEqzdXiP60BGvBPsQ="; + sha256 = "sha256-H+GQUpouiXc/w6GWdkSVvTXZ/Dtb7sUmBLGcpxG3Mts="; }; sourceRoot = "${src.name}/src"; - patches = [ - # libxls and libxlsxwriter are not found without the patch - # https://github.com/andmarti1424/sc-im/pull/542 - (fetchpatch { - name = "use-pkg-config-for-libxls-and-libxlsxwriter.patch"; - url = "https://github.com/andmarti1424/sc-im/commit/b62dc25eb808e18a8ab7ee7d8eb290e34efeb075.patch"; - sha256 = "1yn32ps74ngzg3rbkqf8dn0g19jv4xhxrfgx9agnywf0x8gbwjh3"; - }) - ]; - - patchFlags = [ "-p2" ]; - nativeBuildInputs = [ makeWrapper pkg-config diff --git a/pkgs/applications/misc/slade/git.nix b/pkgs/applications/misc/slade/git.nix index dfbfbe556699..f263c4ee74dd 100644 --- a/pkgs/applications/misc/slade/git.nix +++ b/pkgs/applications/misc/slade/git.nix @@ -1,18 +1,36 @@ -{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, wxGTK, gtk2, sfml, fluidsynth, curl, freeimage, ftgl, glew, zip }: +{ lib, stdenv, fetchFromGitHub +, cmake +, pkg-config +, wxGTK +, sfml +, fluidsynth +, curl +, freeimage +, ftgl +, glew +, zip +, lua +, fmt +, mpg123 +}: stdenv.mkDerivation { - name = "slade-git-3.1.2.2018.01.29"; + name = "slade-git-3.2.0.2021.05.13"; src = fetchFromGitHub { owner = "sirjuddington"; repo = "SLADE"; - rev = "f7409c504b40c4962f419038db934c32688ddd2e"; - sha256 = "14icxiy0r9rlcc10skqs1ylnxm1f0f3irhzfmx4sazq0pjv5ivld"; + rev = "d2e249c89062a44c912a9b86951526edc8735ba0"; + sha256 = "08dsvx7m7c97jm8fxzivmi1fr47hj53y0lv57clqc35bh2gi62dg"; }; - cmakeFlags = ["-DNO_WEBVIEW=1"]; + cmakeFlags = [ + "-DwxWidgets_CONFIG_EXECUTABLE=${wxGTK}/bin/wx-config" + "-DWX_GTK3=OFF" + "-DNO_WEBVIEW=1" + ]; nativeBuildInputs = [ cmake pkg-config zip ]; - buildInputs = [ wxGTK gtk2 sfml fluidsynth curl freeimage ftgl glew ]; + buildInputs = [ wxGTK wxGTK.gtk sfml fluidsynth curl freeimage ftgl glew lua fmt mpg123 ]; meta = with lib; { description = "Doom editor"; diff --git a/pkgs/applications/misc/zettlr/default.nix b/pkgs/applications/misc/zettlr/default.nix index 3d7f56291233..77ff11b98622 100644 --- a/pkgs/applications/misc/zettlr/default.nix +++ b/pkgs/applications/misc/zettlr/default.nix @@ -10,11 +10,11 @@ # Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs. let pname = "zettlr"; - version = "1.8.7"; + version = "1.8.9"; name = "${pname}-${version}"; src = fetchurl { url = "https://github.com/Zettlr/Zettlr/releases/download/v${version}/Zettlr-${version}-x86_64.appimage"; - sha256 = "0zbmlk5qk92b3zycs0bmdwgc8fn4a4dv1yvq9q8q2wxz4ammx6c0"; + sha256 = "sha256-1cU9HdPXrJ4ibSjOitO8iJfMIaGub/jjlb2lssYFfcU="; }; appimageContents = appimageTools.extractType2 { inherit name src; diff --git a/pkgs/applications/networking/appgate-sdp/default.nix b/pkgs/applications/networking/appgate-sdp/default.nix index f6006468d85b..e9e22741c412 100644 --- a/pkgs/applications/networking/appgate-sdp/default.nix +++ b/pkgs/applications/networking/appgate-sdp/default.nix @@ -33,6 +33,7 @@ , libXrandr , libXrender , libXtst +, libxkbcommon , libsecret , libuuid , libxcb @@ -81,6 +82,7 @@ let libXrandr libXrender libXtst + libxkbcommon libsecret libuuid libxcb @@ -97,11 +99,11 @@ let in stdenv.mkDerivation rec { pname = "appgate-sdp"; - version = "5.3.3"; + version = "5.4.0"; src = fetchurl { url = "https://bin.appgate-sdp.com/${lib.versions.majorMinor version}/client/appgate-sdp_${version}_amd64.deb"; - sha256 = "1854m93mr2crg68zhh1pgwwis0dqdv0778wqrb8dz9sdz940rza8"; + sha256 = "sha256-2DzZ5JnFGBeaHtDf7CAXb/qv6kVI+sYMW5Nc25E3eNA="; }; dontConfigure = true; @@ -170,9 +172,14 @@ stdenv.mkDerivation rec { patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" --set-rpath "$ORIGIN:$out/opt/appgate/service/:$out/opt/appgate/:${rpath}" $binary done + # fail if there are missing dependencies + ldd $out/opt/appgate/appgate | grep -i 'not found' && exit 1 + ldd $out/opt/appgate/service/appgateservice.bin | grep -i 'not found' && exit 1 + ldd $out/opt/appgate/appgate-driver | grep -i 'not found' && exit 1 + wrapProgram $out/opt/appgate/appgate-driver --prefix PATH : ${lib.makeBinPath [ iproute2 networkmanager dnsmasq ]} wrapProgram $out/opt/appgate/linux/set_dns --set PYTHONPATH $PYTHONPATH - wrapProgram $out/bin/appgate --prefix PATH : ${xdg-utils}/bin + wrapProgram $out/bin/appgate --prefix PATH : ${lib.makeBinPath [ xdg-utils ]} ''; meta = with lib; { description = "Appgate SDP (Software Defined Perimeter) desktop client"; diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix index 2ff0d2d5df02..dabe0fd373ee 100644 --- a/pkgs/applications/networking/browsers/vivaldi/default.nix +++ b/pkgs/applications/networking/browsers/vivaldi/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, zlib, libX11, libXext, libSM, libICE, libxkbcommon, libxshmfence , libXfixes, libXt, libXi, libXcursor, libXScrnSaver, libXcomposite, libXdamage, libXtst, libXrandr -, alsaLib, dbus, cups, libexif, ffmpeg_3, systemd +, alsaLib, dbus, cups, libexif, ffmpeg, systemd , freetype, fontconfig, libXft, libXrender, libxcb, expat , libuuid , libxml2 @@ -35,7 +35,7 @@ in stdenv.mkDerivation rec { buildInputs = [ stdenv.cc.cc stdenv.cc.libc zlib libX11 libXt libXext libSM libICE libxcb libxkbcommon libxshmfence libXi libXft libXcursor libXfixes libXScrnSaver libXcomposite libXdamage libXtst libXrandr - atk at-spi2-atk at-spi2-core alsaLib dbus cups gtk3 gdk-pixbuf libexif ffmpeg_3 systemd + atk at-spi2-atk at-spi2-core alsaLib dbus cups gtk3 gdk-pixbuf libexif ffmpeg systemd freetype fontconfig libXrender libuuid expat glib nss nspr libxml2 pango cairo gnome2.GConf libdrm mesa diff --git a/pkgs/applications/networking/cluster/fluxcd/default.nix b/pkgs/applications/networking/cluster/fluxcd/default.nix index 0bb4c57e089d..d7cf0a933df7 100644 --- a/pkgs/applications/networking/cluster/fluxcd/default.nix +++ b/pkgs/applications/networking/cluster/fluxcd/default.nix @@ -1,7 +1,7 @@ { lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }: let - version = "0.13.3"; + version = "0.13.4"; manifests = fetchzip { url = "https://github.com/fluxcd/flux2/releases/download/v${version}/manifests.tar.gz"; @@ -19,10 +19,10 @@ buildGoModule rec { owner = "fluxcd"; repo = "flux2"; rev = "v${version}"; - sha256 = "sha256-RaQOefVqDPHvTF1qMtgAFNpA1Gx7Vo2JKiwteePsGyo="; + sha256 = "sha256-edyqxVl8oIwKp/eqFIbu+qn9zhYEnKJKwUbYZ7uxx0I="; }; - vendorSha256 = "sha256-GR40BgNMHi3TXVQVN1FaPNVi0HXYVm3vbg4NTXfYBes="; + vendorSha256 = "sha256-keIzuqaLppu6+XK3MFiU0en+SVxWVLpfkKEKOAVOz7k="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/applications/networking/cluster/hadoop/default.nix b/pkgs/applications/networking/cluster/hadoop/default.nix index 659e8ee41701..ef93b5cbdb07 100644 --- a/pkgs/applications/networking/cluster/hadoop/default.nix +++ b/pkgs/applications/networking/cluster/hadoop/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchurl, makeWrapper, pkg-config, which, maven, cmake, jre, jdk8, bash -, coreutils, glibc, protobuf2_5, fuse, snappy, zlib, bzip2, openssl, openssl_1_0_2 +, coreutils, glibc, protobuf2_5, fuse, snappy, zlib, bzip2, openssl, openssl_1_0_2, fetchpatch, libtirpc }: let @@ -38,8 +38,19 @@ let }; nativeBuildInputs = [ maven cmake pkg-config ]; - buildInputs = [ fuse snappy zlib bzip2 opensslPkg protobuf2_5 ]; + buildInputs = [ fuse snappy zlib bzip2 opensslPkg protobuf2_5 libtirpc ]; + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; + NIX_LDFLAGS = [ "-ltirpc" ]; + # most of the hardcoded pathes are fixed in 2.9.x and 3.0.0, this list of patched files might be reduced when 2.7.x and 2.8.x will be deprecated + + patches = [ + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/apache/hadoop/pull/2886.patch"; + sha256 = "1fim1d8va050za5i8a6slphmx015fzvhxkc2wi4rwg7kbj31sv0r"; + }) + ]; + postPatch = '' for file in hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HardLink.java \ hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/Shell.java \ diff --git a/pkgs/applications/networking/cluster/helmfile/default.nix b/pkgs/applications/networking/cluster/helmfile/default.nix index 53b041234386..4c6040c028ba 100644 --- a/pkgs/applications/networking/cluster/helmfile/default.nix +++ b/pkgs/applications/networking/cluster/helmfile/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "helmfile"; - version = "0.139.0"; + version = "0.139.3"; src = fetchFromGitHub { owner = "roboll"; repo = "helmfile"; rev = "v${version}"; - sha256 = "sha256-bwhiua+KQdt9fyvM4TeS6Mm7EQB9K2L04FPhGS380xI="; + sha256 = "sha256-Cg4FFTowrWMDfpaMJwrOSs3ykZxH378OMR+1+vJt5e8="; }; - vendorSha256 = "sha256-Qpou4e1My/obIHL/4/IEUml0F82atIwPGZX5+vpvk0k="; + vendorSha256 = "sha256-Hs09CT/KSwYL2AKLseOjWB5Xvvr5TvbzwDywsGQ9kMw="; doCheck = false; diff --git a/pkgs/applications/networking/cluster/helmsman/default.nix b/pkgs/applications/networking/cluster/helmsman/default.nix index dc777ad0298c..b223621d1342 100644 --- a/pkgs/applications/networking/cluster/helmsman/default.nix +++ b/pkgs/applications/networking/cluster/helmsman/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "helmsman"; - version = "3.6.7"; + version = "3.6.10"; src = fetchFromGitHub { owner = "Praqma"; repo = "helmsman"; rev = "v${version}"; - sha256 = "sha256-6w2CV6Uj1b8b3vwB933eNHPe1rK+TRyUL++Vy38cKqo="; + sha256 = "sha256-0Epff1NYfZXza27/5RBuICIj2455K31BGFr6PMLkNVE="; }; vendorSha256 = "sha256-icX8mOc8g+DhfAjD1pzneLWTXY17lXyAjdPOWAxkHwI="; diff --git a/pkgs/applications/networking/cluster/hetzner-kube/default.nix b/pkgs/applications/networking/cluster/hetzner-kube/default.nix index d0afe6d2e436..f66e5f88e729 100644 --- a/pkgs/applications/networking/cluster/hetzner-kube/default.nix +++ b/pkgs/applications/networking/cluster/hetzner-kube/default.nix @@ -11,6 +11,13 @@ buildGoModule rec { sha256 = "1iqgpmljqx6rhmvsir2675waj78amcfiw08knwvlmavjgpxx2ysw"; }; + patches = [ + # Use $HOME instead of the OS user database. + # Upstream PR: https://github.com/xetys/hetzner-kube/pull/346 + # Unfortunately, the PR patch does not apply against release. + ./fix-home.patch + ]; + vendorSha256 = "1jh2f66ys6rmrrwrf5zqfprgcvziyq6l4z8bfqwxgf1ysnxx525h"; doCheck = false; @@ -25,6 +32,8 @@ buildGoModule rec { ]; postInstall = '' + # Need a writable home, because it fails if unable to write config. + export HOME=$TMP $out/bin/hetzner-kube completion bash > hetzner-kube $out/bin/hetzner-kube completion zsh > _hetzner-kube installShellCompletion --zsh _hetzner-kube diff --git a/pkgs/applications/networking/cluster/hetzner-kube/fix-home.patch b/pkgs/applications/networking/cluster/hetzner-kube/fix-home.patch new file mode 100644 index 000000000000..1b3bbae65f43 --- /dev/null +++ b/pkgs/applications/networking/cluster/hetzner-kube/fix-home.patch @@ -0,0 +1,53 @@ +diff --git a/cmd/cluster_kubeconfig.go b/cmd/cluster_kubeconfig.go +index 54cc0c9..fab288a 100644 +--- a/cmd/cluster_kubeconfig.go ++++ b/cmd/cluster_kubeconfig.go +@@ -6,7 +6,7 @@ import ( + "io/ioutil" + "log" + "os" +- "os/user" ++ "path/filepath" + "strings" + + "github.com/spf13/cobra" +@@ -52,9 +52,8 @@ Example 4: hetzner-kube cluster kubeconfig -n my-cluster -p > my-conf.yaml # pri + } else { + fmt.Println("create file") + +- usr, _ := user.Current() +- dir := usr.HomeDir +- path := fmt.Sprintf("%s/.kube", dir) ++ dir, _ := os.UserHomeDir() ++ path := filepath.Join(dir, ".kube") + + if _, err := os.Stat(path); os.IsNotExist(err) { + os.MkdirAll(path, 0755) +diff --git a/cmd/config.go b/cmd/config.go +index ce0f3e5..a03c4ba 100644 +--- a/cmd/config.go ++++ b/cmd/config.go +@@ -8,7 +8,6 @@ import ( + "io/ioutil" + "log" + "os" +- "os/user" + "path/filepath" + + "github.com/hetznercloud/hcloud-go/hcloud" +@@ -28,13 +27,8 @@ type AppSSHClient struct { + // NewAppConfig creates a new AppConfig struct using the locally saved configuration file. If no local + // configuration file is found a new config will be created. + func NewAppConfig() AppConfig { +- usr, err := user.Current() +- if err != nil { +- return AppConfig{} +- } +- if usr.HomeDir != "" { +- DefaultConfigPath = filepath.Join(usr.HomeDir, ".hetzner-kube") +- } ++ dir, _ := os.UserHomeDir() ++ DefaultConfigPath = filepath.Join(dir, ".hetzner-kube") + + appConf := AppConfig{ + Context: context.Background(), diff --git a/pkgs/applications/networking/cluster/kubecfg/default.nix b/pkgs/applications/networking/cluster/kubecfg/default.nix index 16b7796dc641..7c04f6e9eb94 100644 --- a/pkgs/applications/networking/cluster/kubecfg/default.nix +++ b/pkgs/applications/networking/cluster/kubecfg/default.nix @@ -1,6 +1,6 @@ { lib, buildGoPackage, fetchFromGitHub, ... }: -let version = "0.19.1"; in +let version = "0.20.0"; in buildGoPackage { pname = "kubecfg"; @@ -10,7 +10,7 @@ buildGoPackage { owner = "bitnami"; repo = "kubecfg"; rev = "v${version}"; - sha256 = "sha256-makRYWBtOjvuv7dAY1vNh1Nxv+nETVlaFh1C3oiojUo="; + sha256 = "sha256-7lBIqaozVBoiYYOTqAxq9h2N+Y3JFwLaunCykILOmPU="; }; goPackagePath = "github.com/bitnami/kubecfg"; diff --git a/pkgs/applications/networking/cluster/kubetail/default.nix b/pkgs/applications/networking/cluster/kubetail/default.nix index 7e6a66eea506..e0ced9e2a8f8 100644 --- a/pkgs/applications/networking/cluster/kubetail/default.nix +++ b/pkgs/applications/networking/cluster/kubetail/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "kubetail"; - version = "1.6.12"; + version = "1.6.13"; src = fetchFromGitHub { owner = "johanhaleby"; repo = "kubetail"; rev = version; - sha256 = "0hayfd7yvdhd2klfmhvl04hfqk0nfsimjyg3kbq8c5dbgbpz05nd"; + sha256 = "sha256-EkOewNInzEEEgMOffYoRaKwhgYuBXgHaCkVgWg2mIDE="; }; installPhase = '' diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index f941b83eb702..2ff13a9a593f 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -436,6 +436,15 @@ "sha256": "0jhx9rap4128j8sfkvpp8lbdmvdba0rkd3nxvy38wr3n18m7v1xg", "version": "1.2.0" }, + "hydra": { + "owner": "DeterminateSystems", + "provider-source-address": "registry.terraform.io/DeterminateSystems/hydra", + "repo": "terraform-provider-hydra", + "rev": "v0.1.0", + "sha256": "18c9j54fy1f2sfz317rlv8z7fb18bpc1a0baw1bgl72x5sgil5kv", + "vendorSha256": null, + "version": "0.1.0" + }, "ibm": { "owner": "IBM-Cloud", "provider-source-address": "registry.terraform.io/IBM-Cloud/ibm", diff --git a/pkgs/applications/networking/cluster/waypoint/default.nix b/pkgs/applications/networking/cluster/waypoint/default.nix index d21219f4386d..2a534c2fb891 100644 --- a/pkgs/applications/networking/cluster/waypoint/default.nix +++ b/pkgs/applications/networking/cluster/waypoint/default.nix @@ -1,20 +1,20 @@ -{ lib, buildGoModule, fetchFromGitHub, go-bindata }: +{ lib, buildGoModule, fetchFromGitHub, go-bindata, installShellFiles }: buildGoModule rec { pname = "waypoint"; - version = "0.3.1"; + version = "0.3.2"; src = fetchFromGitHub { owner = "hashicorp"; repo = pname; rev = "v${version}"; - sha256 = "sha256-WzKUVfc7oGMh0TamL5b6gsm/BAfSCZ6EB3Hg4Tg/3Hw="; + sha256 = "sha256-57DHImPYVFK+MXWGeArvc5fwHmqa3zodLytfDoAxglo="; }; deleteVendor = true; - vendorSha256 = "sha256-VxKUYD92DssoSjWxR+1gZLq34vCVM/4U2ju5felLWzI="; + vendorSha256 = "sha256-HxrY35SqfUbT6VCCXkLUjAsxgtMzpOeoicAGLwD2OyA="; - nativeBuildInputs = [ go-bindata ]; + nativeBuildInputs = [ go-bindata installShellFiles ]; # GIT_{COMMIT,DIRTY} filled in blank to prevent trying to run git and ending up blank anyway buildPhase = '' @@ -23,9 +23,29 @@ buildGoModule rec { runHook postBuild ''; + doCheck = false; + installPhase = '' runHook preInstall + + local INSTALL="$out/bin/waypoint" install -D waypoint $out/bin/waypoint + + # Write to a file as it doesn't like EOF within <() + cat > waypoint.fish <>./references + done + else + for ((i = 0; i < nrRefs; i++)); do + read ref; + done + fi + done < graph + sort ./references >$out + ''; + /* Print an error message if the file with the specified name and * hash doesn't exist in the Nix store. This function should only diff --git a/pkgs/build-support/trivial-builders/test.nix b/pkgs/build-support/trivial-builders/test.nix new file mode 100644 index 000000000000..0902a5372221 --- /dev/null +++ b/pkgs/build-support/trivial-builders/test.nix @@ -0,0 +1,20 @@ +{ lib, nixosTest, path, writeText, hello, figlet, stdenvNoCC }: + +nixosTest { + name = "nixpkgs-trivial-builders"; + nodes.machine = { ... }: { + virtualisation.writableStore = true; + + # Test runs without network, so we don't substitute and prepare our deps + nix.binaryCaches = lib.mkForce []; + environment.etc."pre-built-paths".source = writeText "pre-built-paths" ( + builtins.toJSON [hello figlet stdenvNoCC] + ); + }; + testScript = '' + machine.succeed(""" + cd ${lib.cleanSource path} + ./pkgs/build-support/trivial-builders/test.sh 2>/dev/console + """) + ''; +} diff --git a/pkgs/build-support/trivial-builders/test.sh b/pkgs/build-support/trivial-builders/test.sh new file mode 100755 index 000000000000..3e21b0008155 --- /dev/null +++ b/pkgs/build-support/trivial-builders/test.sh @@ -0,0 +1,57 @@ +#!/usr/bin/env bash + +# -------------------------------------------------------------------------- # +# +# trivial-builders test +# +# -------------------------------------------------------------------------- # +# +# This file can be run independently (quick): +# +# $ pkgs/build-support/trivial-builders/test.sh +# +# or in the build sandbox with a ~20s VM overhead +# +# $ nix-build -A tests.trivial-builders +# +# -------------------------------------------------------------------------- # + +# strict bash +set -euo pipefail + +# debug +# set -x +# PS4='+(${BASH_SOURCE}:${LINENO}): ${FUNCNAME[0]:+${FUNCNAME[0]}(): }' + +cd "$(dirname ${BASH_SOURCE[0]})" # nixpkgs root + +testDirectReferences() { + expr="$1" + diff -U3 \ + <(sort <$(nix-build --no-out-link --expr "with import ../../.. {}; writeDirectReferencesToFile ($expr)")) \ + <(nix-store -q --references $(nix-build --no-out-link --expr "with import ../../.. {}; ($expr)") | sort) +} + +testDirectReferences 'hello' +testDirectReferences 'figlet' +testDirectReferences 'writeText "hi" "hello"' +testDirectReferences 'writeText "hi" "hello ${hello}"' +testDirectReferences 'writeText "hi" "hello ${hello} ${figlet}"' + + + +testClosure() { + expr="$1" + diff -U3 \ + <(sort <$(nix-build --no-out-link --expr "with import ../../.. {}; writeReferencesToFile ($expr)")) \ + <(nix-store -q --requisites $(nix-build --no-out-link --expr "with import ../../.. {}; ($expr)") | sort) +} + +testClosure 'hello' +testClosure 'figlet' +testClosure 'writeText "hi" "hello"' +testClosure 'writeText "hi" "hello ${hello}"' +testClosure 'writeText "hi" "hello ${hello} ${figlet}"' + + +echo 'OK!' diff --git a/pkgs/data/misc/ddccontrol-db/default.nix b/pkgs/data/misc/ddccontrol-db/default.nix index 2212b158c8ad..d79fc73d61bf 100644 --- a/pkgs/data/misc/ddccontrol-db/default.nix +++ b/pkgs/data/misc/ddccontrol-db/default.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "ddccontrol-db"; - version = "20201221"; + version = "20210505"; src = fetchFromGitHub { owner = "ddccontrol"; repo = "ddccontrol-db"; rev = version; - sha256 = "1sryyjjad835mwc7a2avbij6myln8b824kjdr78gc9hh3p16929b"; + sha256 = "sha256-k0Bcf1I/g2sFnX3y4qyWG7Z3W7K6YeZ9trUFSJ4NhSo="; }; preConfigure = '' diff --git a/pkgs/desktops/gnome/extensions/caffeine/default.nix b/pkgs/desktops/gnome/extensions/caffeine/default.nix index 3085a4461e71..8b2d538f4fea 100644 --- a/pkgs/desktops/gnome/extensions/caffeine/default.nix +++ b/pkgs/desktops/gnome/extensions/caffeine/default.nix @@ -1,14 +1,14 @@ -{ lib, stdenv, fetchFromGitHub, glib, gettext, bash, gnome }: +{ lib, stdenv, fetchFromGitHub, glib, gettext, bash }: stdenv.mkDerivation rec { pname = "gnome-shell-extension-caffeine"; - version = "37"; + version = "38"; src = fetchFromGitHub { owner = "eonpatapon"; repo = "gnome-shell-extension-caffeine"; rev = "v${version}"; - sha256 = "1mpa0fbpmv3pblb20dxj8iykn4ayvx89qffpcs67bzlq597zsbkb"; + sha256 = "0dyagnjmk91h96xr98mc177c473bqpxcv86qf6g3kyh3arwa9shs"; }; uuid = "caffeine@patapon.info"; @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Fill the cup to inhibit auto suspend and screensaver"; - license = licenses.gpl2; + license = licenses.gpl2Only; maintainers = with maintainers; [ eperuffo ]; homepage = "https://github.com/eonpatapon/gnome-shell-extension-caffeine"; }; diff --git a/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix b/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix index ee64fc5113d0..efdcab6a4634 100644 --- a/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix +++ b/pkgs/desktops/gnome/extensions/clipboard-indicator/default.nix @@ -1,24 +1,26 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenv, fetchFromGitHub, gettext, glib }: stdenv.mkDerivation rec { pname = "gnome-shell-extension-clipboard-indicator"; - version = "37"; + version = "38"; src = fetchFromGitHub { owner = "Tudmotu"; repo = "gnome-shell-extension-clipboard-indicator"; rev = "v${version}"; - sha256 = "0npxhaam2ra2b9zh2gk2q0n5snlhx6glz86m3jf8hz037w920k41"; + sha256 = "FNrh3b6la2BuWCsriYP5gG0/KNbkFPuq/YTXTj0aJAI="; }; uuid = "clipboard-indicator@tudmotu.com"; - installPhase = '' - runHook preInstall - mkdir -p $out/share/gnome-shell/extensions/${uuid} - cp -r * $out/share/gnome-shell/extensions/${uuid} - runHook postInstall - ''; + nativeBuildInputs = [ + gettext + glib + ]; + + makeFlags = [ + "INSTALLPATH=${placeholder "out"}/share/gnome-shell/extensions/${uuid}/" + ]; meta = with lib; { description = "Adds a clipboard indicator to the top panel and saves clipboard history"; diff --git a/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix b/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix index f31e170b975d..aee636d45346 100644 --- a/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix +++ b/pkgs/desktops/gnome/extensions/dynamic-panel-transparency/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "gnome-shell-extension-dynamic-panel-transparency"; - version = "35"; + version = "unstable-2021-03-04"; src = fetchFromGitHub { owner = "ewlsh"; repo = "dynamic-panel-transparency"; - rev = "0800c0a921bb25f51f6a5ca2e6981b1669a69aec"; - sha256 = "0200mx861mlsi9lf7h108yam02jfqqw55r521chkgmk4fy6z99pq"; + rev = "f9e720e98e40c7a2d87928d09a7313c9ef2e832c"; + sha256 = "0njykxjiwlcmk0q8bsgqaznsryaw43fspfs6rzsjjz5p0xaq04nw"; }; uuid = "dynamic-panel-transparency@rockon999.github.io"; diff --git a/pkgs/desktops/gnome/misc/pomodoro/default.nix b/pkgs/desktops/gnome/misc/pomodoro/default.nix index 830900ed8c92..2881cc7e50fb 100644 --- a/pkgs/desktops/gnome/misc/pomodoro/default.nix +++ b/pkgs/desktops/gnome/misc/pomodoro/default.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gnome-shell-pomodoro"; - version = "0.18.0"; + version = "0.19.1"; src = fetchFromGitHub { owner = "codito"; repo = "gnome-pomodoro"; rev = version; - sha256 = "0990m8ydryd77kv25nfqli1n209i0h5dkjg9gkyww8bfrjhw47mc"; + sha256 = "sha256-im66QUzz6PcX0vkf4cN57ttRLB4KKPFky1pwUa4V7kQ="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnustep/make/default.nix b/pkgs/desktops/gnustep/make/default.nix index f571a3c48629..f96eb7388b3d 100644 --- a/pkgs/desktops/gnustep/make/default.nix +++ b/pkgs/desktops/gnustep/make/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchurl, clang, which, libobjc }: let - version = "2.8.0"; + version = "2.9.0"; in stdenv.mkDerivation { @@ -10,7 +10,7 @@ stdenv.mkDerivation { src = fetchurl { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-make-${version}.tar.gz"; - sha256 = "0pfaylrr3xgn5026anmja4rv4l7nzzaqsrkxycyi0p4lvm12kklz"; + sha256 = "sha256-oLBmwRJXh5x8hTEd6mnGf23HQe8znbZRT4W2SZLEDSo="; }; configureFlags = [ diff --git a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix index 27fda636103e..fb2ed9e37d7b 100644 --- a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix +++ b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix @@ -1,4 +1,5 @@ { lib +, stdenv , mkDerivation , fetchFromGitHub , cmake @@ -21,6 +22,13 @@ mkDerivation rec { sha256 = "0zhcv6cbdn9fr5lpglz26gzssbxkpi824sgc0g7w3hh1z6nqqf8l"; }; + # Nix clang on darwin identifies as 'Clang', not 'AppleClang' + # Without this, dependants fail to link. + postPatch = '' + substituteInPlace cmake/modules/LXQtCompilerSettings.cmake \ + --replace AppleClang Clang + ''; + nativeBuildInputs = [ cmake pkg-config diff --git a/pkgs/desktops/pantheon/granite/default.nix b/pkgs/desktops/pantheon/granite/default.nix index defb6095a35a..3d4dc6bd84ab 100644 --- a/pkgs/desktops/pantheon/granite/default.nix +++ b/pkgs/desktops/pantheon/granite/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { pname = "granite"; - version = "5.5.0"; + version = "6.0.0"; outputs = [ "out" "dev" ]; @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { owner = "elementary"; repo = pname; rev = version; - sha256 = "sha256-ytbjuo9RnYyJ9+LqtWE117dGlNErLl+nmTM22xGGDo8="; + sha256 = "sha256-RGukXeFmtnyCfK8pKdvTHL0t8yhEYwAiiPelTy1Xcf0="; }; passthru = { diff --git a/pkgs/development/arduino/platformio/core.nix b/pkgs/development/arduino/platformio/core.nix index 17e87f2cb6c5..4f6f762bd743 100644 --- a/pkgs/development/arduino/platformio/core.nix +++ b/pkgs/development/arduino/platformio/core.nix @@ -1,9 +1,25 @@ -{ stdenv, lib, buildPythonApplication, bottle -, click, click-completion, colorama, semantic-version -, lockfile, pyserial, requests -, tabulate, pyelftools, marshmallow -, pytest, tox, jsondiff -, git, spdx-license-list-data +{ stdenv, lib, buildPythonApplication +, ajsonrpc +, bottle +, click +, click-completion +, colorama +, git +, jsondiff +, lockfile +, marshmallow +, pyelftools +, pyserial +, pytest +, requests +, semantic-version +, spdx-license-list-data +, starlette +, tabulate +, tox +, uvicorn +, wsproto +, zeroconf , version, src }: @@ -78,10 +94,24 @@ in buildPythonApplication rec { pname = "platformio"; inherit version src; - propagatedBuildInputs = [ - bottle click click-completion colorama git - lockfile pyserial requests semantic-version - tabulate pyelftools marshmallow + propagatedBuildInputs = [ + ajsonrpc + bottle + click + click-completion + colorama + git + lockfile + marshmallow + pyelftools + pyserial + requests + semantic-version + starlette + tabulate + uvicorn + wsproto + zeroconf ]; HOME = "/tmp"; diff --git a/pkgs/development/arduino/platformio/default.nix b/pkgs/development/arduino/platformio/default.nix index 194385e79529..312c2d1044be 100644 --- a/pkgs/development/arduino/platformio/default.nix +++ b/pkgs/development/arduino/platformio/default.nix @@ -4,14 +4,14 @@ let callPackage = newScope self; - version = "5.0.4"; + version = "5.1.1"; # pypi tarballs don't contain tests - https://github.com/platformio/platformio-core/issues/1964 src = fetchFromGitHub { owner = "platformio"; repo = "platformio-core"; rev = "v${version}"; - sha256 = "15jnhlhkk9z6cyzxw065r3080dqan951klwf65p152vfzg79wf84"; + sha256 = "1m9vq5r4g04n3ckmb3hrrc4ar5v31k6isc76bw4glrn2xb7r8c00"; }; self = { diff --git a/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch b/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch index 511d81c3b012..e0016adcf7df 100644 --- a/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch +++ b/pkgs/development/arduino/platformio/use-local-spdx-license-list.patch @@ -1,11 +1,15 @@ diff --git a/platformio/package/manifest/schema.py b/platformio/package/manifest/schema.py -index f293ba5a..a818271f 100644 +index addc4c5..514b0ad 100644 --- a/platformio/package/manifest/schema.py +++ b/platformio/package/manifest/schema.py -@@ -252,5 +252,4 @@ class ManifestSchema(BaseSchema): +@@ -253,9 +253,4 @@ class ManifestSchema(BaseSchema): @staticmethod @memoized(expire="1h") def load_spdx_licenses(): -- spdx_data_url = "https://dl.bintray.com/platformio/dl-misc/spdx-licenses-3.json" +- version = "3.12" +- spdx_data_url = ( +- "https://raw.githubusercontent.com/spdx/license-list-data/" +- "v%s/json/licenses.json" % version +- ) - return json.loads(fetch_remote_content(spdx_data_url)) + return json.load(open("@SPDX_LICENSE_LIST_DATA@/json/licenses.json")) diff --git a/pkgs/development/beam-modules/build-rebar3.nix b/pkgs/development/beam-modules/build-rebar3.nix index 651c024db095..dc882a133188 100644 --- a/pkgs/development/beam-modules/build-rebar3.nix +++ b/pkgs/development/beam-modules/build-rebar3.nix @@ -1,12 +1,10 @@ -{ stdenv, writeText, erlang, rebar3WithPlugins, openssl, libyaml, - pc, lib }: +{ stdenv, writeText, erlang, rebar3WithPlugins, openssl, libyaml, lib }: { name, version , src , setupHook ? null , buildInputs ? [], beamDeps ? [], buildPlugins ? [] , postPatch ? "" -, compilePorts ? false , installPhase ? null , buildPhase ? null , configurePhase ? null @@ -21,7 +19,6 @@ let rebar3 = rebar3WithPlugins { plugins = buildPlugins; - globalPlugins = (if compilePorts then [pc] else []); }; shell = drv: stdenv.mkDerivation { @@ -52,18 +49,9 @@ let rm -f rebar rebar3 '' + postPatch; - configurePhase = '' - runHook preConfigure - ${erlang}/bin/escript ${rebar3.bootstrapper} ${debugInfoFlag} - runHook postConfigure - ''; - buildPhase = '' runHook preBuild - HOME=. rebar3 compile - ${if compilePorts then '' - HOME=. rebar3 pc compile - '' else ""} + HOME=. rebar3 bare compile -path "" runHook postBuild ''; @@ -71,10 +59,9 @@ let runHook preInstall mkdir -p "$out/lib/erlang/lib/${name}-${version}" for reldir in src ebin priv include; do - fd="_build/default/lib/${name}/$reldir" - [ -d "$fd" ] || continue - cp -Hrt "$out/lib/erlang/lib/${name}-${version}" "$fd" - success=1 + [ -d "$reldir" ] || continue + # $out/lib/erlang/lib is a convention used in nixpkgs for compiled BEAM packages + cp -Hrt "$out/lib/erlang/lib/${name}-${version}" "$reldir" done runHook postInstall ''; diff --git a/pkgs/development/beam-modules/default.nix b/pkgs/development/beam-modules/default.nix index 3375fd612601..601505e1f488 100644 --- a/pkgs/development/beam-modules/default.nix +++ b/pkgs/development/beam-modules/default.nix @@ -23,6 +23,7 @@ let # rebar3 port compiler plugin is required by buildRebar3 pc = callPackage ./pc { }; + rebar3-nix = callPackage ./rebar3-nix { }; fetchHex = callPackage ./fetch-hex.nix { }; diff --git a/pkgs/development/beam-modules/pc/default.nix b/pkgs/development/beam-modules/pc/default.nix index a6d7c1c44de3..2896a325e0e1 100644 --- a/pkgs/development/beam-modules/pc/default.nix +++ b/pkgs/development/beam-modules/pc/default.nix @@ -2,8 +2,8 @@ buildHex { name = "pc"; - version = "1.6.0"; - sha256 = "0xq411ig5ny3iilkkkqa4vm3w3dgjc9cfzkqwk8pm13dw9mcm8h0"; + version = "1.12.0"; + sha256 = "1gdvixy4j560qjdiv5qjgnl5wl3rrn231dv1m4vdq4b9l4g4p27x"; meta = { description = "a rebar3 port compiler for native code"; diff --git a/pkgs/development/beam-modules/rebar3-nix/default.nix b/pkgs/development/beam-modules/rebar3-nix/default.nix new file mode 100644 index 000000000000..ff248700d783 --- /dev/null +++ b/pkgs/development/beam-modules/rebar3-nix/default.nix @@ -0,0 +1,18 @@ +{ lib, buildRebar3, fetchFromGitHub }: +buildRebar3 rec { + name = "rebar3_nix"; + version = "0.1.0"; + src = fetchFromGitHub { + owner = "erlang-nix"; + repo = name; + rev = "v${version}"; + sha256 = "17w8m4aqqgvhpx3xyc7x2qzsrd3ybzc83ay50zs1gyd1b8csh2wf"; + }; + + meta = { + description = "nix integration for rebar3"; + license = lib.licenses.bsd3; + homepage = "https://github.com/erlang-nix/rebar3_nix"; + maintainers = with lib.maintainers; [ dlesl gleber ]; + }; +} diff --git a/pkgs/development/compilers/gcc/10/default.nix b/pkgs/development/compilers/gcc/10/default.nix index 93f8f278dc30..1b4aa6b3214c 100644 --- a/pkgs/development/compilers/gcc/10/default.nix +++ b/pkgs/development/compilers/gcc/10/default.nix @@ -186,7 +186,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform gnatboot langAda langGo langJit; + inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/11/default.nix b/pkgs/development/compilers/gcc/11/default.nix index 8dcebfec8ae9..cff1abf72673 100644 --- a/pkgs/development/compilers/gcc/11/default.nix +++ b/pkgs/development/compilers/gcc/11/default.nix @@ -191,7 +191,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform gnatboot langAda langGo langJit; + inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 4ed41ba3ca1c..86dd9247f5a0 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -196,7 +196,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform langJava langGo; + inherit version targetPlatform hostPlatform langJava langGo; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index 0eb0a85eaff5..b7c9e5bcc0a5 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -209,7 +209,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform langJava langGo; + inherit version targetPlatform hostPlatform langJava langGo; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 4e2a7d5e15f1..b70d8a57b9d2 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -231,7 +231,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform gnatboot langJava langAda langGo; + inherit version targetPlatform hostPlatform gnatboot langJava langAda langGo; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix index 28984887a954..5ffe6aba90f1 100644 --- a/pkgs/development/compilers/gcc/7/default.nix +++ b/pkgs/development/compilers/gcc/7/default.nix @@ -197,7 +197,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform langGo; + inherit version targetPlatform hostPlatform langGo; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix index d811d1b3c73c..754f189d508f 100644 --- a/pkgs/development/compilers/gcc/8/default.nix +++ b/pkgs/development/compilers/gcc/8/default.nix @@ -183,7 +183,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform langGo; + inherit version targetPlatform hostPlatform langGo; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix index a0115b6f74e4..5be6dc5811ec 100644 --- a/pkgs/development/compilers/gcc/9/default.nix +++ b/pkgs/development/compilers/gcc/9/default.nix @@ -200,7 +200,7 @@ stdenv.mkDerivation ({ preConfigure = import ../common/pre-configure.nix { inherit lib; - inherit version hostPlatform gnatboot langAda langGo langJit; + inherit version targetPlatform hostPlatform gnatboot langAda langGo langJit; }; dontDisableStatic = true; diff --git a/pkgs/development/compilers/gcc/common/pre-configure.nix b/pkgs/development/compilers/gcc/common/pre-configure.nix index 1c65b4a8ba64..d9977e0ba2f9 100644 --- a/pkgs/development/compilers/gcc/common/pre-configure.nix +++ b/pkgs/development/compilers/gcc/common/pre-configure.nix @@ -1,4 +1,4 @@ -{ lib, version, hostPlatform +{ lib, version, hostPlatform, targetPlatform , gnatboot ? null , langAda ? false , langJava ? false @@ -58,3 +58,10 @@ lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) '' + lib.optionalString (hostPlatform.isDarwin && langJit) '' export STRIP='strip -x' '' + +# HACK: if host and target config are the same, but the platforms are +# actually different we need to convince the configure script that it +# is in fact building a cross compiler although it doesn't believe it. ++ lib.optionalString (targetPlatform.config == hostPlatform.config && targetPlatform != hostPlatform) '' + substituteInPlace configure --replace is_cross_compiler=no is_cross_compiler=yes +'' diff --git a/pkgs/development/compilers/julia/1.0-bin.nix b/pkgs/development/compilers/julia/1.0-bin.nix new file mode 100644 index 000000000000..dfda8da9e4de --- /dev/null +++ b/pkgs/development/compilers/julia/1.0-bin.nix @@ -0,0 +1,80 @@ +{ autoPatchelfHook, fetchurl, lib, makeWrapper, openssl, stdenv }: + +stdenv.mkDerivation rec { + pname = "julia-bin"; + version = "1.0.5"; + + src = { + x86_64-linux = fetchurl { + url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz"; + sha256 = "00vbszpjmz47nqy19v83xa463ajhzwanjyg5mvcfp9kvfw9xdvcx"; + }; + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); + + # Julia’s source files are in different locations for source and binary + # releases. Thus we temporarily create symlinks to allow us to share patches + # with source releases. + prePatch = '' + ln -s share/julia/stdlib/v${lib.versions.majorMinor version} stdlib + ln -s share/julia/test + ''; + patches = [ + # Source release Nix patch(es) relevant for binary releases as well. + ./patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch + ]; + postPatch = '' + # Revert symlink hack. + rm stdlib test + ''; + + buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ autoPatchelfHook ]; + + installPhase = '' + runHook preInstall + cp -r . $out + # Setting `LD_LIBRARY_PATH` resolves `Libdl` failures. Not sure why this is + # only necessary on v1.0.x and a cleaner solution is welcome, but after + # staring at `strace` for a few hours this is as clean as I could make it. + wrapProgram $out/bin/julia \ + --suffix LD_LIBRARY_PATH : $out/lib + runHook postInstall + ''; + + # Breaks backtraces, etc. + dontStrip = true; + + doInstallCheck = true; + installCheckInputs = [ openssl ]; + preInstallCheck = '' + # Some tests require read/write access to $HOME. + export HOME="$TMPDIR" + ''; + installCheckPhase = '' + runHook preInstallCheck + # Command lifted from `test/Makefile`. + $out/bin/julia \ + --check-bounds=yes \ + --startup-file=no \ + --depwarn=error \ + $out/share/julia/test/runtests.jl + runHook postInstallCheck + ''; + + meta = { + description = "High-level, high-performance dynamic language for technical computing"; + homepage = "https://julialang.org"; + # Bundled and linked with various GPL code, although Julia itself is MIT. + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [ ninjin raskin ]; + platforms = [ "x86_64-linux" ]; + knownVulnerabilities = [ + # Built with libgit2 v0.27.2: + # https://github.com/JuliaLang/julia/blob/e0837d1e64a9e4d17534a9f981e9a2a3f221356f/deps/libgit2.version + # https://nvd.nist.gov/vuln/detail/CVE-2020-12278 + "CVE-2020-12278" + # https://nvd.nist.gov/vuln/detail/CVE-2020-12279 + "CVE-2020-12279" + ]; + }; +} diff --git a/pkgs/development/compilers/julia/1.6-bin.nix b/pkgs/development/compilers/julia/1.6-bin.nix new file mode 100644 index 000000000000..19aab27ba748 --- /dev/null +++ b/pkgs/development/compilers/julia/1.6-bin.nix @@ -0,0 +1,73 @@ +{ autoPatchelfHook, fetchurl, lib, stdenv }: + +stdenv.mkDerivation rec { + pname = "julia-bin"; + version = "1.6.1"; + + src = { + x86_64-linux = fetchurl { + url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz"; + sha256 = "01i5sm4vqb0y5qznql571zap19b42775drrcxnzsyhpaqgg8m23w"; + }; + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); + + # Julia’s source files are in different locations for source and binary + # releases. Thus we temporarily create a symlink to allow us to share patches + # with source releases. + prePatch = '' + ln -s share/julia/test + ''; + patches = [ + # Source release Nix patch(es) relevant for binary releases as well. + ./patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch + ./patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch + ./patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch + ]; + postPatch = '' + # Revert symlink hack. + rm test + + # Julia fails to pick up our Certification Authority root certificates, but + # it provides its own so we can simply disable the test. Patching in the + # dynamic path to ours require us to rebuild the Julia system image. + substituteInPlace share/julia/stdlib/v${lib.versions.majorMinor version}/NetworkOptions/test/runtests.jl \ + --replace '@test ca_roots_path() != bundled_ca_roots()' \ + '@test_skip ca_roots_path() != bundled_ca_roots()' + ''; + + nativeBuildInputs = [ autoPatchelfHook ]; + + installPhase = '' + runHook preInstall + cp -r . $out + runHook postInstall + ''; + + # Breaks backtraces, etc. + dontStrip = true; + + doInstallCheck = true; + preInstallCheck = '' + # Some tests require read/write access to $HOME. + export HOME="$TMPDIR" + ''; + installCheckPhase = '' + runHook preInstallCheck + # Command lifted from `test/Makefile`. + $out/bin/julia \ + --check-bounds=yes \ + --startup-file=no \ + --depwarn=error \ + $out/share/julia/test/runtests.jl + runHook postInstallCheck + ''; + + meta = { + description = "High-level, high-performance dynamic language for technical computing."; + homepage = "https://julialang.org"; + # Bundled and linked with various GPL code, although Julia itself is MIT. + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [ ninjin raskin ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/development/compilers/julia/patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch b/pkgs/development/compilers/julia/patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch new file mode 100644 index 000000000000..0de1f7c010d3 --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.0-bin/0002-nix-Skip-tests-that-require-network-access.patch @@ -0,0 +1,87 @@ +From 4954b99efae367da49412edd31a7bd832ec62c69 Mon Sep 17 00:00:00 2001 +From: Pontus Stenetorp +Date: Mon, 15 Mar 2021 05:55:18 +0000 +Subject: [PATCH 2/3] nix: Skip tests that require network access + +Necessary as the Nix build sandbox does not permit network access. +--- + stdlib/Sockets/test/runtests.jl | 40 ++++++++++++++++----------------- + test/file.jl | 4 ++-- + 2 files changed, 22 insertions(+), 22 deletions(-) + +diff --git a/stdlib/Sockets/test/runtests.jl b/stdlib/Sockets/test/runtests.jl +index 6145f87616..9cc7a001e5 100644 +--- a/stdlib/Sockets/test/runtests.jl ++++ b/stdlib/Sockets/test/runtests.jl +@@ -151,33 +151,33 @@ defaultport = rand(2000:4000) + end + + @testset "getnameinfo on some unroutable IP addresses (RFC 5737)" begin +- @test getnameinfo(ip"192.0.2.1") == "192.0.2.1" +- @test getnameinfo(ip"198.51.100.1") == "198.51.100.1" +- @test getnameinfo(ip"203.0.113.1") == "203.0.113.1" +- @test getnameinfo(ip"0.1.1.1") == "0.1.1.1" +- @test getnameinfo(ip"::ffff:0.1.1.1") == "::ffff:0.1.1.1" +- @test getnameinfo(ip"::ffff:192.0.2.1") == "::ffff:192.0.2.1" +- @test getnameinfo(ip"2001:db8::1") == "2001:db8::1" ++ @test_skip getnameinfo(ip"192.0.2.1") == "192.0.2.1" ++ @test_skip getnameinfo(ip"198.51.100.1") == "198.51.100.1" ++ @test_skip getnameinfo(ip"203.0.113.1") == "203.0.113.1" ++ @test_skip getnameinfo(ip"0.1.1.1") == "0.1.1.1" ++ @test_skip getnameinfo(ip"::ffff:0.1.1.1") == "::ffff:0.1.1.1" ++ @test_skip getnameinfo(ip"::ffff:192.0.2.1") == "::ffff:192.0.2.1" ++ @test_skip getnameinfo(ip"2001:db8::1") == "2001:db8::1" + end + + @testset "getnameinfo on some valid IP addresses" begin + @test !isempty(getnameinfo(ip"::")::String) +- @test !isempty(getnameinfo(ip"0.0.0.0")::String) +- @test !isempty(getnameinfo(ip"10.1.0.0")::String) +- @test !isempty(getnameinfo(ip"10.1.0.255")::String) +- @test !isempty(getnameinfo(ip"10.1.255.1")::String) +- @test !isempty(getnameinfo(ip"255.255.255.255")::String) +- @test !isempty(getnameinfo(ip"255.255.255.0")::String) +- @test !isempty(getnameinfo(ip"192.168.0.1")::String) +- @test !isempty(getnameinfo(ip"::1")::String) ++ @test_skip !isempty(getnameinfo(ip"0.0.0.0")::String) ++ @test_skip !isempty(getnameinfo(ip"10.1.0.0")::String) ++ @test_skip !isempty(getnameinfo(ip"10.1.0.255")::String) ++ @test_skip !isempty(getnameinfo(ip"10.1.255.1")::String) ++ @test_skip !isempty(getnameinfo(ip"255.255.255.255")::String) ++ @test_skip !isempty(getnameinfo(ip"255.255.255.0")::String) ++ @test_skip !isempty(getnameinfo(ip"192.168.0.1")::String) ++ @test_skip !isempty(getnameinfo(ip"::1")::String) + end + + @testset "getaddrinfo" begin +- let localhost = getnameinfo(ip"127.0.0.1")::String +- @test !isempty(localhost) && localhost != "127.0.0.1" +- @test !isempty(getalladdrinfo(localhost)::Vector{IPAddr}) +- @test getaddrinfo(localhost, IPv4)::IPv4 != ip"0.0.0.0" +- @test try ++ let localhost = getnameinfo(ip"::")::String ++ @test_skip !isempty(localhost) && localhost != "127.0.0.1" ++ @test_skip !isempty(getalladdrinfo(localhost)::Vector{IPAddr}) ++ @test_skip getaddrinfo(localhost, IPv4)::IPv4 != ip"0.0.0.0" ++ @test_skip try + getaddrinfo(localhost, IPv6)::IPv6 != ip"::" + catch ex + isa(ex, Sockets.DNSError) && ex.code == Base.UV_EAI_NONAME && ex.host == localhost +diff --git a/test/file.jl b/test/file.jl +index e86476f975..579276f82c 100644 +--- a/test/file.jl ++++ b/test/file.jl +@@ -874,8 +874,8 @@ if !Sys.iswindows() || (Sys.windows_version() >= Sys.WINDOWS_VISTA_VER) + else + @test_throws ErrorException symlink(file, "ba\0d") + end +-@test_throws ArgumentError download("good", "ba\0d") +-@test_throws ArgumentError download("ba\0d", "good") ++@test_skip @test_throws ArgumentError download("good", "ba\0d") ++@test_skip @test_throws ArgumentError download("ba\0d", "good") + + ################### + # walkdir # +-- +2.29.3 + diff --git a/pkgs/development/compilers/julia/patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch b/pkgs/development/compilers/julia/patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch new file mode 100644 index 000000000000..d47efe25c5a0 --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.6-bin/0002-nix-Skip-tempname-test-broken-in-sandbox.patch @@ -0,0 +1,28 @@ +From ffe227676352a910754d96d92e9b06e475f28ff1 Mon Sep 17 00:00:00 2001 +From: Pontus Stenetorp +Date: Thu, 8 Apr 2021 04:25:19 +0000 +Subject: [PATCH 2/6] nix: Skip `tempname` test broken in sandbox + +Reported upstream: + + https://github.com/JuliaLang/julia/issues/38873 +--- + test/file.jl | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/file.jl b/test/file.jl +index 0f39bc7c14..bd4dd78f62 100644 +--- a/test/file.jl ++++ b/test/file.jl +@@ -95,7 +95,7 @@ end + @test dirname(t) == tempdir() + mktempdir() do d + t = tempname(d) +- @test dirname(t) == d ++ @test_skip dirname(t) == d + end + @test_throws ArgumentError tempname(randstring()) + end +-- +2.29.3 + diff --git a/pkgs/development/compilers/julia/patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch b/pkgs/development/compilers/julia/patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch new file mode 100644 index 000000000000..e63c88c8fe3b --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.6-bin/0003-nix-Skip-chown-tests-broken-in-sandbox.patch @@ -0,0 +1,27 @@ +From b20357fb1044d2c100172b1d5cbdf6c6d9bd3590 Mon Sep 17 00:00:00 2001 +From: Pontus Stenetorp +Date: Thu, 8 Apr 2021 05:10:39 +0000 +Subject: [PATCH 3/6] nix: Skip `chown` tests broken in sandbox + +--- + test/file.jl | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/test/file.jl b/test/file.jl +index bd4dd78f62..06fd4e49da 100644 +--- a/test/file.jl ++++ b/test/file.jl +@@ -503,8 +503,8 @@ if !Sys.iswindows() + @test stat(file).gid == 0 + @test stat(file).uid == 0 + else +- @test_throws Base._UVError("chown($(repr(file)), -2, -1)", Base.UV_EPERM) chown(file, -2, -1) # Non-root user cannot change ownership to another user +- @test_throws Base._UVError("chown($(repr(file)), -1, -2)", Base.UV_EPERM) chown(file, -1, -2) # Non-root user cannot change group to a group they are not a member of (eg: nogroup) ++ @test_skip @test_throws Base._UVError("chown($(repr(file)), -2, -1)", Base.UV_EPERM) chown(file, -2, -1) # Non-root user cannot change ownership to another user ++ @test_skip @test_throws Base._UVError("chown($(repr(file)), -1, -2)", Base.UV_EPERM) chown(file, -1, -2) # Non-root user cannot change group to a group they are not a member of (eg: nogroup) + end + else + # test that chown doesn't cause any errors for Windows +-- +2.29.3 + diff --git a/pkgs/development/compilers/julia/patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch b/pkgs/development/compilers/julia/patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch new file mode 100644 index 000000000000..243a9cfd76ae --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.6-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch @@ -0,0 +1,30 @@ +From 44c2c979c4f2222567ce65f506cf47fb87482348 Mon Sep 17 00:00:00 2001 +From: Pontus Stenetorp +Date: Thu, 8 Apr 2021 04:37:44 +0000 +Subject: [PATCH 5/6] nix: Enable parallel unit tests for sandbox + +Disabled by default due to lack of networking in the Nix sandbox. This +greatly speeds up the build process on a multi-core system. +--- + test/runtests.jl | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/test/runtests.jl b/test/runtests.jl +index 2f9cd058bb..2f8c19fa32 100644 +--- a/test/runtests.jl ++++ b/test/runtests.jl +@@ -83,8 +83,9 @@ prepend!(tests, linalg_tests) + import LinearAlgebra + cd(@__DIR__) do + n = 1 +- if net_on +- n = min(Sys.CPU_THREADS, length(tests)) ++ if net_on || haskey(ENV, "NIX_BUILD_CORES") ++ x = haskey(ENV, "NIX_BUILD_CORES") ? parse(Int, ENV["NIX_BUILD_CORES"]) : Sys.CPU_THREADS ++ n = min(x, Sys.CPU_THREADS, length(tests)) + n > 1 && addprocs_with_testenv(n) + LinearAlgebra.BLAS.set_num_threads(1) + end +-- +2.29.3 + diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix index 8a34c6166fa8..5fdf58e56f5d 100644 --- a/pkgs/development/compilers/kotlin/default.nix +++ b/pkgs/development/compilers/kotlin/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "kotlin"; - version = "1.4.32"; + version = "1.5.0"; src = fetchurl { url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip"; - hash = "sha256-3+8ju4a9XzYWbU7BJnyN5Ts4J8RG1U6CMixrbarTWUw="; + sha256 = "1dyiis96skflhlsmc8byp5j8j3vsicmlslwyrkn1pv4gc8gzqhq3"; }; propagatedBuildInputs = [ jre ] ; diff --git a/pkgs/development/coq-modules/aac-tactics/default.nix b/pkgs/development/coq-modules/aac-tactics/default.nix new file mode 100644 index 000000000000..445a0422446a --- /dev/null +++ b/pkgs/development/coq-modules/aac-tactics/default.nix @@ -0,0 +1,46 @@ +{ lib, mkCoqDerivation, coq, version ? null }: +with lib; + +mkCoqDerivation { + pname = "aac-tactics"; + + releaseRev = v: "v${v}"; + + release."8.13.0".sha256 = "sha256-MAnMc4KzC551JInrRcfKED4nz04FO0GyyyuDVRmnYTY="; + release."8.12.0".sha256 = "sha256-dPNA19kZo/2t3rbyX/R5yfGcaEfMhbm9bo71Uo4ZwoM="; + release."8.11.0".sha256 = "sha256-CKKMiJLltIb38u+ZKwfQh/NlxYawkafp+okY34cGCYU="; + release."8.10.0".sha256 = "sha256-Ny3AgfLAzrz3FnoUqejXLApW+krlkHBmYlo3gAG0JsM="; + release."8.9.0".sha256 = "sha256-6Pp0dgYEnVaSnkJR/2Cawt5qaxWDpBI4m0WAbQboeWY="; + release."8.8.0".sha256 = "sha256-mwIKp3kf/6i9IN3cyIWjoRtW8Yf8cc3MV744zzFM3u4="; + release."8.6.1".sha256 = "sha256-PfovQ9xJnzr0eh/tO66yJ3Yp7A5E1SQG46jLIrrbZFg="; + release."8.5.0".sha256 = "sha256-7yNxJn6CH5xS5w/zsXfcZYORa6e5/qS9v8PUq2o02h4="; + + inherit version; + defaultVersion = with versions; switch coq.coq-version [ + { case = "8.13"; out = "8.13.0"; } + { case = "8.12"; out = "8.12.0"; } + { case = "8.11"; out = "8.11.0"; } + { case = "8.10"; out = "8.10.0"; } + { case = "8.9"; out = "8.9.0"; } + { case = "8.8"; out = "8.8.0"; } + { case = "8.6"; out = "8.6.1"; } + { case = "8.5"; out = "8.5.0"; } + ] null; + + mlPlugin = true; + + meta = { + description = "Coq plugin providing tactics for rewriting universally quantified equations"; + longDescription = '' + This Coq plugin provides tactics for rewriting universally quantified + equations, modulo associativity and commutativity of some operator. + The tactics can be applied for custom operators by registering the + operators and their properties as type class instances. Many common + operator instances, such as for Z binary arithmetic and booleans, are + provided with the plugin. + ''; + maintainers = with maintainers; [ siraben ]; + license = licenses.gpl3Plus; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/coq-modules/relation-algebra/default.nix b/pkgs/development/coq-modules/relation-algebra/default.nix new file mode 100644 index 000000000000..da74215d537f --- /dev/null +++ b/pkgs/development/coq-modules/relation-algebra/default.nix @@ -0,0 +1,35 @@ +{ lib, mkCoqDerivation, coq, aac-tactics, mathcomp, version ? null }: +with lib; + +mkCoqDerivation { + pname = "relation-algebra"; + owner = "damien-pous"; + + releaseRev = v: "v${v}"; + + release."1.7.5".sha256 = "sha256-XdO8agoJmNXPv8Ho+KTlLCB4oRlQsb0w06aM9M16ZBU="; + release."1.7.4".sha256 = "sha256-o+v2CIAa2+9tJ/V8DneDTf4k31KMHycgMBLaQ+A4ufM="; + release."1.7.3".sha256 = "sha256-4feSNfi7h4Yhwn5L+9KP9K1S7HCPvsvaVWwoQSTFvos="; + release."1.7.2".sha256 = "sha256-f4oNjXspNMEz3AvhIeYO3avbUa1AThoC9DbcHMb5A2o="; + release."1.7.1".sha256 = "sha256-WWVMcR6z8rT4wzZPb8SlaVWGe7NC8gScPqawd7bltQA="; + + inherit version; + defaultVersion = with versions; switch coq.coq-version [ + { case = isGe "8.13"; out = "1.7.5"; } + { case = isGe "8.12"; out = "1.7.4"; } + { case = isGe "8.11"; out = "1.7.3"; } + { case = isGe "8.10"; out = "1.7.2"; } + { case = isGe "8.9"; out = "1.7.1"; } + ] null; + + mlPlugin = true; + + propagatedBuildInputs = [ aac-tactics mathcomp.ssreflect ]; + + meta = { + description = "Relation algebra library for Coq"; + maintainers = with maintainers; [ siraben ]; + license = licenses.gpl3Plus; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/interpreters/clojure/babashka.nix b/pkgs/development/interpreters/clojure/babashka.nix index 233a4282a5ab..543f443a796f 100644 --- a/pkgs/development/interpreters/clojure/babashka.nix +++ b/pkgs/development/interpreters/clojure/babashka.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "babashka"; - version = "0.4.0"; + version = "0.4.1"; reflectionJson = fetchurl { name = "reflection.json"; @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://github.com/babashka/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar"; - sha256 = "sha256-NY78gkKJd9ATdu7Ja1AvWkaPv0PuDIKWDZBeYGMJufU="; + sha256 = "sha256-tKMxi0umMmM99NusSSE9tT95TBcfXm1lfo95fQRUBrs="; }; dontUnpack = true; diff --git a/pkgs/development/interpreters/lfe/fix-rebar-config.patch b/pkgs/development/interpreters/lfe/fix-rebar-config.patch new file mode 100644 index 000000000000..ac385351b1cf --- /dev/null +++ b/pkgs/development/interpreters/lfe/fix-rebar-config.patch @@ -0,0 +1,29 @@ +diff --git a/rebar.config b/rebar.config +index 1d5a68e..a86ee39 100644 +--- a/rebar.config ++++ b/rebar.config +@@ -2,20 +2,20 @@ + + {erl_opts, [debug_info]}. + +-{profiles, [{test, [{deps, [proper]}]}]}. ++%%{profiles, [{test, [{deps, [proper]}]}]}. + + {pre_hooks, [{"(linux|darwin|solaris|freebsd|netbsd|openbsd)", ct, + "bin/lfe bin/lfec" +- " -o $REBAR_DEPS_DIR/lfe/test" ++ " -o test" + " test/*_SUITE.lfe"}, + {"(linux|darwin|solaris|freebsd|netbsd|openbsd)", eunit, + "bin/lfe bin/lfec" +- " -o $REBAR_DEPS_DIR/lfe/ebin" ++ " -o ebin" + " test/clj-tests.lfe"}, + %% TODO: Test this on a win32 box + %% {"win32", ct, + %% "bin/lfe bin/lfec -o $REBAR_DEPS_DIR/lfe/test test/*_SUITE.lfe"} + {"(linux|darwin|solaris|freebsd|netbsd|openbsd)", app_compile, +- "bin/lfe bin/lfec -o $REBAR_DEPS_DIR/lfe/ebin src/*.lfe"} ++ "bin/lfe bin/lfec -o ebin src/*.lfe"} + %% TODO: equivalent win32 hook + ]}. diff --git a/pkgs/development/interpreters/lfe/generic-builder.nix b/pkgs/development/interpreters/lfe/generic-builder.nix index 397be81e7c85..620568967452 100644 --- a/pkgs/development/interpreters/lfe/generic-builder.nix +++ b/pkgs/development/interpreters/lfe/generic-builder.nix @@ -39,7 +39,7 @@ buildRebar3 { buildInputs = [ erlang makeWrapper ]; beamDeps = [ proper ]; - patches = [ ./no-test-deps.patch ./dedup-ebins.patch ] ++ patches; + patches = [ ./fix-rebar-config.patch ./dedup-ebins.patch ] ++ patches; doCheck = true; checkTarget = "travis"; diff --git a/pkgs/development/interpreters/lfe/no-test-deps.patch b/pkgs/development/interpreters/lfe/no-test-deps.patch deleted file mode 100644 index 8c3faf1ff402..000000000000 --- a/pkgs/development/interpreters/lfe/no-test-deps.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/rebar.config b/rebar.config -index 1d5a68e..ca33be7 100644 ---- a/rebar.config -+++ b/rebar.config -@@ -2,7 +2,7 @@ - - {erl_opts, [debug_info]}. - --{profiles, [{test, [{deps, [proper]}]}]}. -+%% {profiles, [{test, [{deps, [proper]}]}]}. - - {pre_hooks, [{"(linux|darwin|solaris|freebsd|netbsd|openbsd)", ct, - "bin/lfe bin/lfec" diff --git a/pkgs/development/libraries/alembic/default.nix b/pkgs/development/libraries/alembic/default.nix index cbfec4dd46af..333dbb053f52 100644 --- a/pkgs/development/libraries/alembic/default.nix +++ b/pkgs/development/libraries/alembic/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "alembic"; - version = "1.8.0"; + version = "1.8.1"; src = fetchFromGitHub { owner = "alembic"; repo = "alembic"; rev = version; - sha256 = "sha256-c4SN3kNY8415+O/2AYuHNQFEmuTBtLaWj5fsj0yJ2vs="; + sha256 = "sha256-ObjpWreabeVzKYVgC62JaoGUf1BZCxP0STjox3akDvo="; }; outputs = [ "bin" "dev" "out" "lib" ]; diff --git a/pkgs/development/libraries/belle-sip/default.nix b/pkgs/development/libraries/belle-sip/default.nix index 76a3b96533cd..4032734416e4 100644 --- a/pkgs/development/libraries/belle-sip/default.nix +++ b/pkgs/development/libraries/belle-sip/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { pname = "belle-sip"; - version = "4.5.3"; + version = "4.5.14"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { group = "BC"; repo = pname; rev = version; - sha256 = "sha256-N5hcQUuqtngo5R6iUvq8X6KebfkvxUSy0WDRtCVwPDQ="; + sha256 = "sha256-L6dhgBJrzYgBuMNd2eMZJCqB/GIZjKipfn1SffxBFWw="; }; nativeBuildInputs = [ antlr3_4 cmake ]; diff --git a/pkgs/development/libraries/cpp-utilities/default.nix b/pkgs/development/libraries/cpp-utilities/default.nix index 1d666d4d9843..14e2c8878fd9 100644 --- a/pkgs/development/libraries/cpp-utilities/default.nix +++ b/pkgs/development/libraries/cpp-utilities/default.nix @@ -1,32 +1,35 @@ { stdenv , lib , fetchFromGitHub -, fetchpatch , cmake , cppunit }: stdenv.mkDerivation rec { pname = "cpp-utilities"; - version = "5.10.2"; + version = "5.10.3"; src = fetchFromGitHub { owner = "Martchus"; repo = pname; rev = "v${version}"; - sha256 = "sha256-hPcmO2nzXCuhU2GjE0B1Bz9OkJ4mY2txFr+cWGaw1bo="; + sha256 = "sha256-bEdDRvm5W12wJnW4xC+AcRLevZ0H7C625eknKzNrLLU="; }; nativeBuildInputs = [ cmake ]; checkInputs = [ cppunit ]; # Otherwise, tests fail since the resulting shared object libc++utilities.so is only available in PWD of the make files - checkFlagsArray = [ "LD_LIBRARY_PATH=$(PWD)" ]; + preCheck = '' + checkFlagsArray+=( + "LD_LIBRARY_PATH=$PWD" + ) + ''; doCheck = true; meta = with lib; { homepage = "https://github.com/Martchus/cpp-utilities"; description = "Common C++ classes and routines used by @Martchus' applications featuring argument parser, IO and conversion utilities"; - license = licenses.gpl2; + license = licenses.gpl2Plus; maintainers = with maintainers; [ doronbehar ]; platforms = platforms.linux; }; diff --git a/pkgs/development/libraries/embree/default.nix b/pkgs/development/libraries/embree/default.nix index b5baab5972aa..3350c046a51a 100644 --- a/pkgs/development/libraries/embree/default.nix +++ b/pkgs/development/libraries/embree/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "embree"; - version = "3.12.2"; + version = "3.13.0"; src = fetchFromGitHub { owner = "embree"; repo = "embree"; rev = "v${version}"; - sha256 = "sha256-aIZAkpAGvE332HxT4rR+rykww/ZLq2qKGLKiZTWyHCk="; + sha256 = "sha256-w93GYslQRg0rvguMKv/CuT3+JzIis2CRbY9jYUFKWOM="; }; postPatch = '' diff --git a/pkgs/development/libraries/fcl/default.nix b/pkgs/development/libraries/fcl/default.nix new file mode 100644 index 000000000000..33a600805846 --- /dev/null +++ b/pkgs/development/libraries/fcl/default.nix @@ -0,0 +1,45 @@ +{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, eigen, libccd, octomap }: + +stdenv.mkDerivation rec { + pname = "fcl"; + version = "0.6.1"; + + src = fetchFromGitHub { + owner = "flexible-collision-library"; + repo = pname; + rev = version; + sha256 = "1i1sd0fsvk5d529aw8aw29bsmymqgcmj3ci35sz58nzp2wjn0l5d"; + }; + + patches = [ + # Disable SSE on Emscripten (required for the next patch to apply cleanly) + # https://github.com/flexible-collision-library/fcl/pull/470 + (fetchpatch { + url = "https://github.com/flexible-collision-library/fcl/commit/83a1af61ba4efa81ec0b552b3121100044a8cf46.patch"; + sha256 = "0bbkv4xpkl3c0i8qdlkghj6qkybrrd491c8rd2cqnxfgspcd40p0"; + }) + # Detect SSE support to fix building on ARM + # https://github.com/flexible-collision-library/fcl/pull/506 + (fetchpatch { + url = "https://github.com/flexible-collision-library/fcl/commit/cbfe1e9405aa68138ed1a8f33736429b85500dea.patch"; + sha256 = "18qip8gwhm3fvbz1cvzf625rh5msq8m4669ld1m60fv6z50clr9h"; + }) + ]; + + nativeBuildInputs = [ cmake ]; + propagatedBuildInputs = [ eigen libccd octomap ]; + + outputs = [ "out" "dev" ]; + + meta = with lib; { + description = "Flexible Collision Library"; + longDescription = '' + FCL is a library for performing three types of proximity queries on a + pair of geometric models composed of triangles. + ''; + homepage = "https://github.com/flexible-collision-library/fcl"; + license = licenses.bsd3; + maintainers = with maintainers; [ lopsided98 ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/gtk-sharp/2.0.nix b/pkgs/development/libraries/gtk-sharp/2.0.nix index 1e7c86530658..f35f5e0552c4 100644 --- a/pkgs/development/libraries/gtk-sharp/2.0.nix +++ b/pkgs/development/libraries/gtk-sharp/2.0.nix @@ -20,6 +20,7 @@ , automake , libtool , which +, fetchpatch }: stdenv.mkDerivation rec { @@ -34,6 +35,13 @@ stdenv.mkDerivation rec { sha256 = "1vy6yfwkfv6bb45bzf4g6dayiqkvqqvlr02rsnhd10793hlpqlgg"; }; + patches = [ + (fetchpatch { + url = "https://projects.archlinux.de/svntogit/packages.git/plain/trunk/gtk-sharp2-2.12.12-gtkrange.patch?h=packages/gtk-sharp-2"; + sha256 = "bjx+OfgWnN8SO82p8G7pbGuxJ9EeQxMLeHnrtEm8RV8="; + }) + ]; + postInstall = '' pushd $out/bin for f in gapi2-* diff --git a/pkgs/development/libraries/hivex/default.nix b/pkgs/development/libraries/hivex/default.nix index fb77e08ca6b0..b151db07df3d 100644 --- a/pkgs/development/libraries/hivex/default.nix +++ b/pkgs/development/libraries/hivex/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "hivex"; - version = "1.3.19"; + version = "1.3.20"; src = fetchurl { url = "https://libguestfs.org/download/hivex/${pname}-${version}.tar.gz"; - sha256 = "0qppahpf7jq950nf8ial47h90nyqgnsffsj3zgdjjwkn958wq0ji"; + sha256 = "sha256-9SPDe7BkpLq321IkkCw07uT5+rLZuBz2FbMsC4UJ0y0="; }; patches = [ ./hivex-syms.patch ]; diff --git a/pkgs/development/libraries/l-smash/default.nix b/pkgs/development/libraries/l-smash/default.nix index b1b5fd012062..40eb4bd10d36 100644 --- a/pkgs/development/libraries/l-smash/default.nix +++ b/pkgs/development/libraries/l-smash/default.nix @@ -13,6 +13,11 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ which ]; + configureFlags = [ + "--cc=cc" + "--cross-prefix=${stdenv.cc.targetPrefix}" + ]; + meta = with lib; { homepage = "http://l-smash.github.io/l-smash/"; description = "MP4 container utilities"; diff --git a/pkgs/development/libraries/libamqpcpp/default.nix b/pkgs/development/libraries/libamqpcpp/default.nix index 67404f9e5cf9..ee34afad4f74 100644 --- a/pkgs/development/libraries/libamqpcpp/default.nix +++ b/pkgs/development/libraries/libamqpcpp/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libamqpcpp"; - version = "4.3.11"; + version = "4.3.12"; src = fetchFromGitHub { owner = "CopernicaMarketingSoftware"; repo = "AMQP-CPP"; rev = "v${version}"; - sha256 = "sha256-ZEvzZ++0f7Kf3iVbf3vQbyE8yd/dasU+dSxDDUu8Xug="; + sha256 = "sha256-veiD2RrJ08HYZ1Jy8EUe6ct2qh7a2xZCn3TTM+Hvu+0="; }; buildInputs = [ openssl ]; diff --git a/pkgs/development/libraries/libccd/default.nix b/pkgs/development/libraries/libccd/default.nix new file mode 100644 index 000000000000..a9e0c2b3feb0 --- /dev/null +++ b/pkgs/development/libraries/libccd/default.nix @@ -0,0 +1,23 @@ +{ lib, stdenv, fetchFromGitHub, cmake }: + +stdenv.mkDerivation rec { + pname = "libccd"; + version = "2.1"; + + src = fetchFromGitHub { + owner = "danfis"; + repo = pname; + rev = "v${version}"; + sha256 = "0sfmn5pd7k5kyhbxnd689xmsa5v843r7sska96dlysqpljd691jc"; + }; + + nativeBuildInputs = [ cmake ]; + + meta = with lib; { + description = "Library for collision detection between two convex shapes"; + homepage = "https://github.com/danfis/libccd"; + license = licenses.bsd3; + maintainers = with maintainers; [ lopsided98 ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/libchardet/default.nix b/pkgs/development/libraries/libchardet/default.nix index 260c332f7ef4..47ce911a6951 100644 --- a/pkgs/development/libraries/libchardet/default.nix +++ b/pkgs/development/libraries/libchardet/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libchardet"; - version = "1.0.5"; + version = "1.0.6"; src = fetchFromGitHub { owner = "Joungkyun"; repo = "libchardet"; rev = version; - sha256 = "0c1k5hf3ssh3cm72w2zpy5k73vhy1gyq5s9rqdawqqa4al8syyvn"; + sha256 = "sha256-JhEiWM3q8X+eEBHxv8k9yYOaTGoJOzI+/iFYC0gZJJs="; }; nativeBuildInputs = [ perl ]; diff --git a/pkgs/development/libraries/libdivecomputer/default.nix b/pkgs/development/libraries/libdivecomputer/default.nix index 0f65a5cee5ce..4a9a4b0980e3 100644 --- a/pkgs/development/libraries/libdivecomputer/default.nix +++ b/pkgs/development/libraries/libdivecomputer/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "libdivecomputer"; - version = "0.6.0"; + version = "0.7.0"; src = fetchurl { url = "https://www.libdivecomputer.org/releases/${pname}-${version}.tar.gz"; - sha256 = "0nm1mcscpxb9dv4p0lidd6rf5xg4vmcbigj6zqxvgn7pwnvpbzm0"; + sha256 = "sha256-gNnxlOokUCA535hZhILgr8aw4zPeeds0wpstaJNNJbk="; }; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/libgig/default.nix b/pkgs/development/libraries/libgig/default.nix index f78a51db5de6..26e3b46d5510 100644 --- a/pkgs/development/libraries/libgig/default.nix +++ b/pkgs/development/libraries/libgig/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "libgig"; - version = "4.2.0"; + version = "4.3.0"; src = fetchurl { url = "https://download.linuxsampler.org/packages/${pname}-${version}.tar.bz2"; - sha256 = "1zs5yy124bymfyapsnljr6rv2lnn5inwchm0xnwiw44b2d39l8hn"; + sha256 = "sha256-oG0Jh4eAxsGd2NucM1RNU6kzV/niexSpg6qrpo//p5Q="; }; nativeBuildInputs = [ autoconf automake libtool pkg-config ]; diff --git a/pkgs/development/libraries/libhdhomerun/default.nix b/pkgs/development/libraries/libhdhomerun/default.nix index ab0ad6fab23e..f8db7075ca76 100644 --- a/pkgs/development/libraries/libhdhomerun/default.nix +++ b/pkgs/development/libraries/libhdhomerun/default.nix @@ -6,11 +6,11 @@ stdenv.mkDerivation rec { pname = "libhdhomerun"; - version = "20200907"; + version = "20210224"; src = fetchurl { url = "https://download.silicondust.com/hdhomerun/libhdhomerun_${version}.tgz"; - sha256 = "1v80jk056ii2iv2w7sq24i3prjrbhxql5vqhafs7vq54qmwvgbnb"; + sha256 = "sha256:1y1kwv34qg8nayfkbrxkw8163l46krsfqx8yvkcsc97ilsd3i5mr"; }; patchPhase = lib.optionalString stdenv.isDarwin '' diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix index 92fb23f45275..909ee73e69a6 100644 --- a/pkgs/development/libraries/libical/default.nix +++ b/pkgs/development/libraries/libical/default.nix @@ -12,13 +12,12 @@ , libical , python3 , tzdata +, fixDarwinDylibNames , introspectionSupport ? stdenv.buildPlatform == stdenv.hostPlatform -, gobject-introspection ? null -, vala ? null +, gobject-introspection +, vala }: -assert introspectionSupport -> gobject-introspection != null && vala != null; - stdenv.mkDerivation rec { pname = "libical"; version = "3.0.10"; @@ -47,6 +46,8 @@ stdenv.mkDerivation rec { ] ++ lib.optionals introspectionSupport [ gobject-introspection vala + ] ++ lib.optionals stdenv.isDarwin [ + fixDarwinDylibNames ]; installCheckInputs = [ # running libical-glib tests @@ -80,6 +81,13 @@ stdenv.mkDerivation rec { # LD_LIBRARY_PATH and GI_TYPELIB_PATH variables doInstallCheck = true; enableParallelChecking = false; + preInstallCheck = if stdenv.isDarwin then '' + for testexe in $(find ./src/test -maxdepth 1 -type f -executable); do + for lib in $(cd lib && ls *.3.dylib); do + install_name_tool -change $lib $out/lib/$lib $testexe + done + done + '' else null; installCheckPhase = '' runHook preInstallCheck diff --git a/pkgs/development/libraries/libjcat/default.nix b/pkgs/development/libraries/libjcat/default.nix index 2e75894eb834..f027fbe3cb8b 100644 --- a/pkgs/development/libraries/libjcat/default.nix +++ b/pkgs/development/libraries/libjcat/default.nix @@ -8,7 +8,6 @@ , gpgme , gobject-introspection , vala -, help2man , gtk-doc , meson , ninja @@ -19,7 +18,7 @@ stdenv.mkDerivation rec { pname = "libjcat"; - version = "0.1.6"; + version = "0.1.7"; outputs = [ "bin" "out" "dev" "devdoc" "man" "installedTests" ]; @@ -27,7 +26,7 @@ stdenv.mkDerivation rec { owner = "hughsie"; repo = "libjcat"; rev = version; - sha256 = "sha256-X+mFl0YZpnt6zzvVTGZN7PROVUaQ8ZmU3T0EgyoZX6g="; + sha256 = "sha256-WYCYRFjjy9nr1p1SqzBGCBZ5vkhFybddXpHUcwdEDIQ="; }; patches = [ @@ -43,7 +42,6 @@ stdenv.mkDerivation rec { docbook-xsl-nons gobject-introspection vala - help2man gtk-doc (python3.withPackages (pkgs: with pkgs; [ setuptools diff --git a/pkgs/development/libraries/libow/default.nix b/pkgs/development/libraries/libow/default.nix index e4a8d95f4b0e..5340caeff0a8 100644 --- a/pkgs/development/libraries/libow/default.nix +++ b/pkgs/development/libraries/libow/default.nix @@ -11,7 +11,28 @@ stdenv.mkDerivation rec { sha256 = "0dln1ar7bxwhpi36sccmpwapy7iz4j097rbf02mgn42lw5vrcg3s"; }; - nativeBuildInputs = [ autoconf automake pkg-config ]; + nativeBuildInputs = [ autoconf automake libtool pkg-config ]; + + preConfigure = '' + # Tries to use glibtoolize on Darwin, but it shouldn't for Nix. + sed -i -e 's/glibtoolize/libtoolize/g' bootstrap + ./bootstrap + ''; + + configureFlags = [ + "--disable-owtcl" + "--disable-owphp" + "--disable-owpython" + "--disable-zero" + "--disable-owshell" + "--disable-owhttpd" + "--disable-owftpd" + "--disable-owserver" + "--disable-owperl" + "--disable-owtap" + "--disable-owmon" + "--disable-owexternal" + ]; meta = with lib; { description = "1-Wire File System full library"; @@ -20,24 +41,4 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ disserman ]; platforms = platforms.unix; }; - - buildInputs = [ libtool ]; - - preConfigure = "./bootstrap"; - - configureFlags = [ - "--disable-owtcl" - "--disable-owphp" - "--disable-owpython" - "--disable-zero" - "--disable-owshell" - "--disable-owhttpd" - "--disable-owftpd" - "--disable-owserver" - "--disable-owperl" - "--disable-owtcl" - "--disable-owtap" - "--disable-owmon" - "--disable-owexternal" - ]; } diff --git a/pkgs/development/libraries/libspnav/default.nix b/pkgs/development/libraries/libspnav/default.nix index fb2a2744d6ad..b7136144768b 100644 --- a/pkgs/development/libraries/libspnav/default.nix +++ b/pkgs/development/libraries/libspnav/default.nix @@ -14,6 +14,7 @@ stdenv.mkDerivation rec { buildInputs = [ libX11 ]; configureFlags = [ "--disable-debug"]; + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; preInstall = '' mkdir -p $out/{lib,include} diff --git a/pkgs/development/libraries/libtomcrypt/default.nix b/pkgs/development/libraries/libtomcrypt/default.nix index 7ed8fca3babd..936c92bf7c5d 100644 --- a/pkgs/development/libraries/libtomcrypt/default.nix +++ b/pkgs/development/libraries/libtomcrypt/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, fetchpatch, libtool }: +{ lib, stdenv, fetchurl, fetchpatch, libtool, libtommath }: stdenv.mkDerivation rec { pname = "libtomcrypt"; @@ -17,14 +17,16 @@ stdenv.mkDerivation rec { }) ]; - nativeBuildInputs = [ libtool ]; + nativeBuildInputs = [ libtool libtommath ]; postPatch = '' substituteInPlace makefile.shared --replace "LT:=glibtool" "LT:=libtool" ''; preBuild = '' - makeFlagsArray=(PREFIX=$out \ + makeFlagsArray+=(PREFIX=$out \ + CFLAGS="-DUSE_LTM -DLTM_DESC -DLTC_PTHREAD" \ + EXTRALIBS=\"-ltommath\" \ INSTALL_GROUP=$(id -g) \ INSTALL_USER=$(id -u)) ''; diff --git a/pkgs/development/libraries/libvncserver/default.nix b/pkgs/development/libraries/libvncserver/default.nix index 7c8d4a76fc95..01a079a20512 100644 --- a/pkgs/development/libraries/libvncserver/default.nix +++ b/pkgs/development/libraries/libvncserver/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchzip, fetchpatch, cmake , libjpeg, openssl, zlib, libgcrypt, libpng -, systemd +, systemd, Carbon }: let @@ -19,10 +19,11 @@ stdenv.mkDerivation { }; nativeBuildInputs = [ cmake ]; - buildInputs = [ - libjpeg openssl libgcrypt libpng - ] ++ lib.optional stdenv.isLinux systemd; + buildInputs = [ libjpeg openssl libgcrypt libpng ] + ++ lib.optional stdenv.isLinux systemd + ++ lib.optional stdenv.isDarwin Carbon; propagatedBuildInputs = [ zlib ]; + meta = { inherit (s) version; description = "VNC server library"; diff --git a/pkgs/development/libraries/libxlsxwriter/default.nix b/pkgs/development/libraries/libxlsxwriter/default.nix index 7f1b583284b0..d323c2d962e5 100644 --- a/pkgs/development/libraries/libxlsxwriter/default.nix +++ b/pkgs/development/libraries/libxlsxwriter/default.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "libxlsxwriter"; - version = "1.0.4"; + version = "1.0.5"; src = fetchFromGitHub { owner = "jmcnamara"; repo = "libxlsxwriter"; rev = "RELEASE_${version}"; - sha256 = "0k0km5d4xs6z98nqczvdkqwhhc5izqs82ciifx2l5wcbcdxb4r0k"; + sha256 = "1jjmwg1mk7pvf36q30rng42qphgz6qdjvn96agrym2q0hhwxc99v"; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/microsoft_gsl/default.nix b/pkgs/development/libraries/microsoft_gsl/default.nix index af1c1c91a94f..5a5257168eb4 100644 --- a/pkgs/development/libraries/microsoft_gsl/default.nix +++ b/pkgs/development/libraries/microsoft_gsl/default.nix @@ -21,7 +21,8 @@ stdenv.mkDerivation rec { buildPhase = if nativeBuild then "make" else "true"; # https://github.com/microsoft/GSL/issues/806 - cmakeFlags = [ "-DCMAKE_CXX_FLAGS=-Wno-catch-value" ]; + cmakeFlags = lib.optionals stdenv.cc.isGNU + [ "-DCMAKE_CXX_FLAGS=-Wno-catch-value" ]; installPhase = '' mkdir -p $out/include diff --git a/pkgs/development/libraries/nss_wrapper/default.nix b/pkgs/development/libraries/nss_wrapper/default.nix index 3cdeb93dc9b1..0e08083c4d82 100644 --- a/pkgs/development/libraries/nss_wrapper/default.nix +++ b/pkgs/development/libraries/nss_wrapper/default.nix @@ -14,6 +14,7 @@ stdenv.mkDerivation rec { description = "A wrapper for the user, group and hosts NSS API"; homepage = "https://git.samba.org/?p=nss_wrapper.git;a=summary;"; license = licenses.bsd3; - platforms = platforms.all; + platforms = platforms.unix; + broken = stdenv.isDarwin; }; } diff --git a/pkgs/development/libraries/octomap/default.nix b/pkgs/development/libraries/octomap/default.nix new file mode 100644 index 000000000000..7e82842c0b94 --- /dev/null +++ b/pkgs/development/libraries/octomap/default.nix @@ -0,0 +1,24 @@ +{ lib, stdenv, fetchFromGitHub, cmake }: + +stdenv.mkDerivation rec { + pname = "octomap"; + version = "1.9.6"; + + src = fetchFromGitHub { + owner = "OctoMap"; + repo = pname; + rev = "v${version}"; + sha256 = "03v341dffa0pfzmf2431xb5nq50zq9zlhgl6k2aa3fsza5xmbb70"; + }; + sourceRoot = "source/octomap"; + + nativeBuildInputs = [ cmake ]; + + meta = with lib; { + description = "A probabilistic, flexible, and compact 3D mapping library for robotic systems"; + homepage = "https://octomap.github.io/"; + license = licenses.bsd3; + maintainers = with maintainers; [ lopsided98 ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/openslide/default.nix b/pkgs/development/libraries/openslide/default.nix new file mode 100644 index 000000000000..71c2017f9e5a --- /dev/null +++ b/pkgs/development/libraries/openslide/default.nix @@ -0,0 +1,28 @@ +{ lib, stdenv, fetchFromGitHub, autoreconfHook +, pkg-config, cairo, glib, gdk-pixbuf, libjpeg +, libpng, libtiff, libxml2, openjpeg, sqlite, zlib +}: + +stdenv.mkDerivation rec { + pname = "openslide"; + version = "3.4.1"; + + src = fetchFromGitHub { + owner = "openslide"; + repo = "openslide"; + rev = "v${version}"; + sha256 = "1g4hhjr4cbx754cwi9wl84k33bkg232w8ajic7aqhzm8x182hszp"; + }; + + buildInputs = [ cairo glib gdk-pixbuf libjpeg libpng libtiff libxml2 openjpeg sqlite zlib ]; + + nativeBuildInputs = [ autoreconfHook pkg-config ]; + + meta = with lib; { + homepage = "https://openslide.org"; + description = "A C library that provides a simple interface to read whole-slide images."; + license = licenses.lgpl21; + platforms = platforms.unix; + maintainers = with maintainers; [ lromor ]; + }; +} diff --git a/pkgs/development/libraries/physfs/default.nix b/pkgs/development/libraries/physfs/default.nix index 3eb4077d9852..faa338c94fcf 100644 --- a/pkgs/development/libraries/physfs/default.nix +++ b/pkgs/development/libraries/physfs/default.nix @@ -1,5 +1,4 @@ -{ lib, stdenv, fetchurl, cmake, doxygen, darwin -, zlib }: +{ lib, stdenv, fetchurl, cmake, doxygen, zlib, Foundation, Carbon }: let generic = version: sha256: @@ -15,7 +14,7 @@ let nativeBuildInputs = [ cmake doxygen ]; buildInputs = [ zlib ] - ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Foundation ]; + ++ lib.optionals stdenv.isDarwin [ Foundation Carbon ]; patchPhase = '' sed s,-Werror,, -i CMakeLists.txt diff --git a/pkgs/development/libraries/pmdk/default.nix b/pkgs/development/libraries/pmdk/default.nix index 01392f232d9c..6e0b6ab6722b 100644 --- a/pkgs/development/libraries/pmdk/default.nix +++ b/pkgs/development/libraries/pmdk/default.nix @@ -1,19 +1,19 @@ { lib, stdenv, fetchFromGitHub -, autoconf, libndctl, pkg-config +, autoconf, libndctl, pkg-config, gnum4, pandoc }: stdenv.mkDerivation rec { pname = "pmdk"; - version = "1.7"; + version = "1.9.2"; src = fetchFromGitHub { owner = "pmem"; repo = "pmdk"; rev = "refs/tags/${version}"; - sha256 = "1833sq0f1msaqwn31dn1fp37a6d5zp995i9gkazanydmppi2qy0i"; + sha256 = "0awmkj6j9y2pbqqmp9ql00s7qa3mnpppa82dfy5324lindq0z8a1"; }; - nativeBuildInputs = [ autoconf pkg-config ]; + nativeBuildInputs = [ autoconf pkg-config gnum4 pandoc ]; buildInputs = [ libndctl ]; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/qca-qt5/default.nix b/pkgs/development/libraries/qca-qt5/default.nix index e53404557fba..f8159417378c 100644 --- a/pkgs/development/libraries/qca-qt5/default.nix +++ b/pkgs/development/libraries/qca-qt5/default.nix @@ -14,10 +14,6 @@ stdenv.mkDerivation rec { dontWrapQtApps = true; - # Without this patch cmake fails with a "No known features for CXX compiler" - # error on darwin - patches = lib.optional stdenv.isDarwin ./move-project.patch ; - # tells CMake to use this CA bundle file if it is accessible preConfigure = "export QC_CERTSTORE_PATH=/etc/ssl/certs/ca-certificates.crt"; diff --git a/pkgs/development/libraries/qca-qt5/move-project.patch b/pkgs/development/libraries/qca-qt5/move-project.patch deleted file mode 100644 index dcecb83d7db9..000000000000 --- a/pkgs/development/libraries/qca-qt5/move-project.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2f2b5d0..971dee3 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -6,10 +6,11 @@ if(NOT CMAKE_INSTALL_PREFIX) - unset(CMAKE_INSTALL_PREFIX CACHE) - endif(NOT CMAKE_INSTALL_PREFIX) - --project(qca) - - cmake_minimum_required(VERSION 3.4) - -+project(qca) -+ - set(QCA_LIB_MAJOR_VERSION "2") - set(QCA_LIB_MINOR_VERSION "2") - set(QCA_LIB_PATCH_VERSION "1") diff --git a/pkgs/development/libraries/usrsctp/default.nix b/pkgs/development/libraries/usrsctp/default.nix new file mode 100644 index 000000000000..64b1debc0ce5 --- /dev/null +++ b/pkgs/development/libraries/usrsctp/default.nix @@ -0,0 +1,23 @@ +{ stdenv, lib, fetchFromGitHub, cmake }: + +stdenv.mkDerivation rec { + pname = "usrsctp"; + version = "0.9.5.0"; + + src = fetchFromGitHub { + owner = "sctplab"; + repo = "usrsctp"; + rev = version; + sha256 = "10ndzkip8blgkw572n3dicl6mgjaa7kygwn3vls80liq92vf1sa9"; + }; + + nativeBuildInputs = [ cmake ]; + + meta = with lib; { + homepage = "https://github.com/sctplab/usrsctp"; + description = "A portable SCTP userland stack"; + maintainers = with maintainers; [ misuzu ]; + license = licenses.bsd3; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix index d513e01b7a35..7c463aa01228 100644 --- a/pkgs/development/libraries/v8/default.nix +++ b/pkgs/development/libraries/v8/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchgit, fetchFromGitHub -, gn, ninja, python, glib, pkg-config, icu +, gn, ninja, python, pythonPackages, glib, pkg-config, icu , xcbuild, darwin , fetchpatch }: @@ -55,6 +55,11 @@ stdenv.mkDerivation rec { doCheck = true; patches = [ + # Remove unrecognized clang debug flags + (fetchpatch { + url = "https://raw.githubusercontent.com/saiarcot895/chromium-ubuntu-build/663dbfc492fd2f8ba28d9af40fb3b1327e6aa56e/debian/patches/revert-Xclang-instcombine-lower-dbg-declare.patch"; + sha256 = "07qp4bjgbwbdrzqslvl2bgbzr3v97b9isbp0539x3lc8cy3h02g1"; + }) ./darwin.patch ./gcc_arm.patch # Fix building zlib with gcc on aarch64, from https://gist.github.com/Adenilson/d973b6fd96c7709d33ddf08cf1dcb149 ]; @@ -78,6 +83,13 @@ stdenv.mkDerivation rec { postPatch = lib.optionalString stdenv.isAarch64 '' substituteInPlace build/toolchain/linux/BUILD.gn \ --replace 'toolprefix = "aarch64-linux-gnu-"' 'toolprefix = ""' + '' + lib.optionalString stdenv.isDarwin '' + substituteInPlace build/config/compiler/compiler.gni \ + --replace 'strip_absolute_paths_from_debug_symbols = true' \ + 'strip_absolute_paths_from_debug_symbols = false' + substituteInPlace build/config/compiler/BUILD.gn \ + --replace 'current_toolchain == host_toolchain || !use_xcode_clang' \ + 'false' ''; gnFlags = [ @@ -85,6 +97,7 @@ stdenv.mkDerivation rec { "is_clang=${lib.boolToString stdenv.cc.isClang}" "use_sysroot=false" # "use_system_icu=true" + "clang_use_chrome_plugins=false" "is_component_build=false" "v8_use_external_startup_data=false" "v8_monolithic=true" @@ -93,16 +106,25 @@ stdenv.mkDerivation rec { "treat_warnings_as_errors=false" "v8_enable_i18n_support=true" "use_gold=false" - "use_system_xcode=true" + "init_stack_vars=false" # ''custom_toolchain="//build/toolchain/linux/unbundle:default"'' ''host_toolchain="//build/toolchain/linux/unbundle:default"'' ''v8_snapshot_toolchain="//build/toolchain/linux/unbundle:default"'' ] ++ lib.optional stdenv.cc.isClang ''clang_base_path="${stdenv.cc}"''; NIX_CFLAGS_COMPILE = "-O2"; + FORCE_MAC_SDK_MIN = stdenv.targetPlatform.sdkVer or "10.12"; - nativeBuildInputs = [ gn ninja pkg-config python ] - ++ lib.optionals stdenv.isDarwin [ xcbuild darwin.DarwinTools ]; + nativeBuildInputs = [ + gn + ninja + pkg-config + python + ] ++ lib.optionals stdenv.isDarwin [ + xcbuild + darwin.DarwinTools + pythonPackages.setuptools + ]; buildInputs = [ glib icu ]; ninjaFlags = [ ":d8" "v8_monolith" ]; diff --git a/pkgs/development/ocaml-modules/bap/default.nix b/pkgs/development/ocaml-modules/bap/default.nix index 94f254a2edfb..c1cb7de2d188 100644 --- a/pkgs/development/ocaml-modules/bap/default.nix +++ b/pkgs/development/ocaml-modules/bap/default.nix @@ -68,7 +68,7 @@ stdenv.mkDerivation rec { substituteInPlace oasis/elf-loader --replace bitstring.ppx ppx_bitstring ''; - configureFlags = [ "--enable-everything ${disableIda}" "--with-llvm-config=${llvm}/bin/llvm-config" ]; + configureFlags = [ "--enable-everything ${disableIda}" "--with-llvm-config=${llvm.dev}/bin/llvm-config" ]; meta = with lib; { description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages."; diff --git a/pkgs/development/ocaml-modules/containers/default.nix b/pkgs/development/ocaml-modules/containers/default.nix index c3847acb9594..b0df52061520 100644 --- a/pkgs/development/ocaml-modules/containers/default.nix +++ b/pkgs/development/ocaml-modules/containers/default.nix @@ -5,7 +5,7 @@ }: buildDunePackage rec { - version = "3.0.1"; + version = "3.4"; pname = "containers"; useDune2 = true; @@ -14,7 +14,7 @@ buildDunePackage rec { owner = "c-cube"; repo = "ocaml-containers"; rev = "v${version}"; - sha256 = "1m19cfcwks3xcj16nqldfb49dg0vdc7by1q1j8bpac3z2mjvks0l"; + sha256 = "0ixpy81p6rc3lq71djfndb2sg2hfj20j1jbzzrrmgqsysqdjsgzz"; }; buildInputs = [ dune-configurator ]; diff --git a/pkgs/development/pharo/vm/build-vm-legacy.nix b/pkgs/development/pharo/vm/build-vm-legacy.nix index bd5d1e91602d..c00c92a6c333 100644 --- a/pkgs/development/pharo/vm/build-vm-legacy.nix +++ b/pkgs/development/pharo/vm/build-vm-legacy.nix @@ -13,6 +13,7 @@ , alsaLib , cairo , libuuid +, libnsl , makeWrapper , ... }: @@ -29,7 +30,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ unzip cmake gcc makeWrapper ]; buildInputs = [ bash glibc openssl libGLU libGL freetype - xorg.libX11 xorg.libICE xorg.libSM alsaLib cairo pharo-share ]; + xorg.libX11 xorg.libICE xorg.libSM alsaLib cairo pharo-share libnsl ]; LD_LIBRARY_PATH = lib.makeLibraryPath [ cairo libGLU libGL freetype openssl libuuid alsaLib diff --git a/pkgs/development/pharo/vm/vms.nix b/pkgs/development/pharo/vm/vms.nix index 77bc5b0682fb..a8e3236a3a03 100644 --- a/pkgs/development/pharo/vm/vms.nix +++ b/pkgs/development/pharo/vm/vms.nix @@ -19,6 +19,7 @@ , fetchFromGitHub , makeWrapper , runtimeShell +, libnsl } @args: let diff --git a/pkgs/development/python-modules/aioymaps/default.nix b/pkgs/development/python-modules/aioymaps/default.nix new file mode 100644 index 000000000000..4a6d806dee1d --- /dev/null +++ b/pkgs/development/python-modules/aioymaps/default.nix @@ -0,0 +1,33 @@ +{ lib +, aiohttp +, buildPythonPackage +, fetchPypi +, pythonOlder +}: + +buildPythonPackage rec { + pname = "aioymaps"; + version = "1.1.0"; + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "1rvgf4flvnpjj0sm14xlnfmmnlmkz6xq5h5mfb14amkfy76za3jm"; + }; + + propagatedBuildInputs = [ + aiohttp + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "aioymaps" ]; + + meta = with lib; { + description = "Python package fetch data from Yandex maps"; + homepage = "https://github.com/devbis/aioymaps"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/apispec/default.nix b/pkgs/development/python-modules/apispec/default.nix index 13fb71d7f2f2..1262bb3338a3 100644 --- a/pkgs/development/python-modules/apispec/default.nix +++ b/pkgs/development/python-modules/apispec/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, pythonOlder , pyyaml , prance , marshmallow @@ -11,16 +12,20 @@ buildPythonPackage rec { pname = "apispec"; - version = "4.3.0"; + version = "4.4.1"; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "5ec0fe72f1422a1198973fcbb48d0eb5c7390f4b0fbe55474fce999ad6826a9b"; + sha256 = "sha256-qt7UrkUXUsWLcOV5kj2Nt9rwtx9i3vjI/noqUr18BqI="; }; - checkInputs = [ + propagatedBuildInputs = [ pyyaml prance + ]; + + checkInputs = [ openapi-spec-validator marshmallow mock diff --git a/pkgs/development/python-modules/aplpy/default.nix b/pkgs/development/python-modules/aplpy/default.nix index e253c610c214..682ef6e17fdf 100644 --- a/pkgs/development/python-modules/aplpy/default.nix +++ b/pkgs/development/python-modules/aplpy/default.nix @@ -27,13 +27,26 @@ buildPythonPackage rec { sha256 = "239f3d83635ca4251536aeb577df7c60df77fc4d658097b92094719739aec3f3"; }; - patches = [ (fetchpatch { - # Can be removed in next release after 2.0.3 + patches = [ + # Fixes compatibility with astropy-helpers. This patch has been merged into + # the master branch as of May 2020, and should be part of the next + # upstream release (v2.0.3 was tagged in Feb. 2019). + (fetchpatch { url = "https://github.com/aplpy/aplpy/pull/448.patch"; sha256 = "1pnzh7ykjc8hwahzbzyryrzv5a8fddgd1bmzbhagkrn6lmvhhpvq"; excludes = [ "tox.ini" "azure-pipelines.yml" ".circleci/config.yml" "MANIFEST.in" ".gitignore" "setup.cfg" "appveyor.yml" "readthedocs.yml" "CHANGES.rst" ".gitmodules" ".travis.yml" "astropy_helpers" ]; }) + # Fix for matplotlib >= 3.4 (https://github.com/aplpy/aplpy/pull/466) + # Note: because of a security thing, github will refuse to serve this patch from the + # "normal" location + # (https://github.com/aplpy/aplpy/commit/56c1cc694fdea69e7da8506d3212c4495adb0ca5.patch) + # due to the fact that it contains the PDF magic bytes, but it will serve it from + # this githubusercontent domain. + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/aplpy/aplpy/pull/466/commit/56c1cc694fdea69e7da8506d3212c4495adb0ca5.patch"; + sha256 = "0jna2n1cgfzr0a27m5z94wwph7qg25hs7lycrdb2dp3943rb35g4"; + }) ]; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/awscrt/default.nix b/pkgs/development/python-modules/awscrt/default.nix index 2c0180eb4a29..73679eca1e4d 100644 --- a/pkgs/development/python-modules/awscrt/default.nix +++ b/pkgs/development/python-modules/awscrt/default.nix @@ -5,7 +5,7 @@ buildPythonPackage rec { version = "0.11.13"; buildInputs = lib.optionals stdenv.isDarwin - (with darwin.apple_sdk.frameworks; [ Security ]); + (with darwin.apple_sdk.frameworks; [ CoreFoundation Security ]); # Required to suppress -Werror # https://github.com/NixOS/nixpkgs/issues/39687 diff --git a/pkgs/development/python-modules/batchgenerators/default.nix b/pkgs/development/python-modules/batchgenerators/default.nix index 8706a31d5711..336c6b2e5134 100644 --- a/pkgs/development/python-modules/batchgenerators/default.nix +++ b/pkgs/development/python-modules/batchgenerators/default.nix @@ -8,7 +8,7 @@ , numpy , pillow , scipy -, scikitlearn +, scikit-learn , scikitimage , threadpoolctl }: @@ -28,7 +28,7 @@ buildPythonPackage rec { }; propagatedBuildInputs = [ - future numpy pillow scipy scikitlearn scikitimage threadpoolctl + future numpy pillow scipy scikit-learn scikitimage threadpoolctl ]; checkInputs = [ pytestCheckHook unittest2 ]; diff --git a/pkgs/development/python-modules/bayesian-optimization/default.nix b/pkgs/development/python-modules/bayesian-optimization/default.nix index c41181ca7b04..1e896d82678a 100644 --- a/pkgs/development/python-modules/bayesian-optimization/default.nix +++ b/pkgs/development/python-modules/bayesian-optimization/default.nix @@ -2,7 +2,7 @@ , buildPythonPackage , fetchFromGitHub , python -, scikitlearn +, scikit-learn , scipy , pytest , isPy27 @@ -21,7 +21,7 @@ buildPythonPackage rec { }; propagatedBuildInputs = [ - scikitlearn + scikit-learn scipy ]; diff --git a/pkgs/development/python-modules/cnvkit/default.nix b/pkgs/development/python-modules/cnvkit/default.nix index 5baa28e4bd7f..6347c8552bf6 100644 --- a/pkgs/development/python-modules/cnvkit/default.nix +++ b/pkgs/development/python-modules/cnvkit/default.nix @@ -6,7 +6,7 @@ , biopython , numpy , scipy -, scikitlearn +, scikit-learn , pandas , matplotlib , reportlab @@ -42,7 +42,7 @@ buildPythonPackage rec { biopython numpy scipy - scikitlearn + scikit-learn pandas matplotlib reportlab diff --git a/pkgs/development/python-modules/cookiecutter/default.nix b/pkgs/development/python-modules/cookiecutter/default.nix index c5ee4d8617d0..b2a13cdbb654 100644 --- a/pkgs/development/python-modules/cookiecutter/default.nix +++ b/pkgs/development/python-modules/cookiecutter/default.nix @@ -5,14 +5,14 @@ buildPythonPackage rec { pname = "cookiecutter"; - version = "1.7.2"; + version = "1.7.3"; # not sure why this is broken disabled = isPyPy; src = fetchPypi { inherit pname version; - sha256 = "efb6b2d4780feda8908a873e38f0e61778c23f6a2ea58215723bcceb5b515dac"; + sha256 = "sha256-a5pNcoguJDvgd6c5fQ8fdv5mzz35HzEV27UzDiFPpFc="; }; checkInputs = [ pytest pytestcov pytest-mock freezegun ]; diff --git a/pkgs/development/python-modules/dask-glm/default.nix b/pkgs/development/python-modules/dask-glm/default.nix index d091785db112..9072a691c20a 100644 --- a/pkgs/development/python-modules/dask-glm/default.nix +++ b/pkgs/development/python-modules/dask-glm/default.nix @@ -7,7 +7,7 @@ , multipledispatch , setuptools-scm , scipy -, scikitlearn +, scikit-learn , pytestCheckHook }: @@ -22,7 +22,7 @@ buildPythonPackage rec { nativeBuildInputs = [ setuptools-scm ]; checkInputs = [ pytestCheckHook ]; - propagatedBuildInputs = [ cloudpickle dask numpy toolz multipledispatch scipy scikitlearn ]; + propagatedBuildInputs = [ cloudpickle dask numpy toolz multipledispatch scipy scikit-learn ]; meta = with lib; { homepage = "https://github.com/dask/dask-glm/"; diff --git a/pkgs/development/python-modules/dask-ml/default.nix b/pkgs/development/python-modules/dask-ml/default.nix index b02c9a71a6bd..ff1b145ee8a2 100644 --- a/pkgs/development/python-modules/dask-ml/default.nix +++ b/pkgs/development/python-modules/dask-ml/default.nix @@ -6,7 +6,7 @@ , numpy, toolz # dask[array] , numba , pandas -, scikitlearn +, scikit-learn , scipy , dask-glm , six @@ -39,7 +39,7 @@ buildPythonPackage rec { numpy packaging pandas - scikitlearn + scikit-learn scipy six toolz diff --git a/pkgs/development/python-modules/dawg-python/default.nix b/pkgs/development/python-modules/dawg-python/default.nix new file mode 100644 index 000000000000..ba9c298a2e82 --- /dev/null +++ b/pkgs/development/python-modules/dawg-python/default.nix @@ -0,0 +1,24 @@ +{ lib +, fetchPypi +, buildPythonPackage +}: + +buildPythonPackage rec { + pname = "dawg-python"; + version = "0.7.2"; + + src = fetchPypi { + inherit version; + pname = "DAWG-Python"; + hash = "sha256-Sl4yhuYmHMoC8gXP1VFqerEBkPowxRwo00WAj1leNCE="; + }; + + pythonImportsCheck = [ "dawg_python" ]; + + meta = with lib; { + description = "Pure Python reader for DAWGs created by dawgdic C++ library or DAWG Python extension"; + homepage = "https://github.com/pytries/DAWG-Python"; + license = licenses.mit; + maintainers = with maintainers; [ danieldk ]; + }; +} diff --git a/pkgs/development/python-modules/dftfit/default.nix b/pkgs/development/python-modules/dftfit/default.nix index 73791bdaa9a6..778b8c3d9843 100644 --- a/pkgs/development/python-modules/dftfit/default.nix +++ b/pkgs/development/python-modules/dftfit/default.nix @@ -8,7 +8,7 @@ , pandas , scipy , numpy -, scikitlearn +, scikit-learn , lammps-cython , pymatgen-lammps , pytestrunner @@ -34,7 +34,7 @@ buildPythonPackage rec { pandas scipy numpy - scikitlearn + scikit-learn lammps-cython pymatgen-lammps ]; diff --git a/pkgs/development/python-modules/gensim/default.nix b/pkgs/development/python-modules/gensim/default.nix index be6321f86ca7..b6b6f42b3c35 100644 --- a/pkgs/development/python-modules/gensim/default.nix +++ b/pkgs/development/python-modules/gensim/default.nix @@ -5,7 +5,7 @@ , six , scipy , smart_open -, scikitlearn, testfixtures, unittest2 +, scikit-learn, testfixtures, unittest2 , isPy3k }: @@ -21,7 +21,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ smart_open numpy six scipy ]; - checkInputs = [ scikitlearn testfixtures unittest2 ]; + checkInputs = [ scikit-learn testfixtures unittest2 ]; # Two tests fail. # diff --git a/pkgs/development/python-modules/graspologic/default.nix b/pkgs/development/python-modules/graspologic/default.nix index b4e8803784b5..758f988a2395 100644 --- a/pkgs/development/python-modules/graspologic/default.nix +++ b/pkgs/development/python-modules/graspologic/default.nix @@ -8,7 +8,7 @@ , matplotlib , networkx , numpy -, scikitlearn +, scikit-learn , scipy , seaborn }: @@ -31,7 +31,7 @@ buildPythonPackage rec { matplotlib networkx numpy - scikitlearn + scikit-learn scipy seaborn ]; diff --git a/pkgs/development/python-modules/ha-philipsjs/default.nix b/pkgs/development/python-modules/ha-philipsjs/default.nix new file mode 100644 index 000000000000..c6de997a1da7 --- /dev/null +++ b/pkgs/development/python-modules/ha-philipsjs/default.nix @@ -0,0 +1,45 @@ +{ lib +, buildPythonPackage +, cryptography +, fetchFromGitHub +, httpx +, pytest-aiohttp +, pytest-mock +, pytestCheckHook +, pythonOlder +, respx +}: + +buildPythonPackage rec { + pname = "ha-philipsjs"; + version = "2.7.4"; + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "danielperna84"; + repo = pname; + rev = version; + sha256 = "08fjdb1q02dwxq8s15ddd00gps64xplblkn8dx5yivldskiy8i1n"; + }; + + propagatedBuildInputs = [ + cryptography + httpx + ]; + + checkInputs = [ + pytest-aiohttp + pytest-mock + pytestCheckHook + respx + ]; + + pythonImportsCheck = [ "haphilipsjs" ]; + + meta = with lib; { + description = "Python library to interact with Philips TVs with jointSPACE API"; + homepage = "https://github.com/danielperna84/ha-philipsjs"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/hdbscan/default.nix b/pkgs/development/python-modules/hdbscan/default.nix index d2590d14955c..269062a1e71e 100644 --- a/pkgs/development/python-modules/hdbscan/default.nix +++ b/pkgs/development/python-modules/hdbscan/default.nix @@ -5,7 +5,7 @@ , numpy , pytestCheckHook , scipy -, scikitlearn +, scikit-learn , fetchPypi , joblib , six @@ -29,7 +29,7 @@ buildPythonPackage rec { ]; nativeBuildInputs = [ cython ]; - propagatedBuildInputs = [ numpy scipy scikitlearn joblib six ]; + propagatedBuildInputs = [ numpy scipy scikit-learn joblib six ]; preCheck = '' cd hdbscan/tests rm __init__.py diff --git a/pkgs/development/python-modules/hmmlearn/default.nix b/pkgs/development/python-modules/hmmlearn/default.nix index 8d2afcf5e722..eb7e05afff7a 100644 --- a/pkgs/development/python-modules/hmmlearn/default.nix +++ b/pkgs/development/python-modules/hmmlearn/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchurl, buildPythonPackage, numpy, scikitlearn, setuptools_scm, cython, pytest }: +{ lib, fetchurl, buildPythonPackage, numpy, scikit-learn, setuptools_scm, cython, pytest }: buildPythonPackage rec { pname = "hmmlearn"; @@ -10,7 +10,7 @@ buildPythonPackage rec { }; buildInputs = [ setuptools_scm cython ]; - propagatedBuildInputs = [ numpy scikitlearn ]; + propagatedBuildInputs = [ numpy scikit-learn ]; checkInputs = [ pytest ]; checkPhase = '' diff --git a/pkgs/development/python-modules/hyppo/default.nix b/pkgs/development/python-modules/hyppo/default.nix index cc0b569d9b23..9fdeca082b2f 100644 --- a/pkgs/development/python-modules/hyppo/default.nix +++ b/pkgs/development/python-modules/hyppo/default.nix @@ -4,7 +4,7 @@ , fetchFromGitHub , pytestCheckHook , pytestcov , numba , numpy -, scikitlearn +, scikit-learn , scipy , matplotlib , seaborn @@ -26,7 +26,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numba numpy - scikitlearn + scikit-learn scipy ]; diff --git a/pkgs/development/python-modules/ignite/default.nix b/pkgs/development/python-modules/ignite/default.nix index 71bed73f9d7b..f745b735f342 100644 --- a/pkgs/development/python-modules/ignite/default.nix +++ b/pkgs/development/python-modules/ignite/default.nix @@ -8,7 +8,7 @@ , mock , pytorch , pynvml -, scikitlearn +, scikit-learn , tqdm }: @@ -24,7 +24,7 @@ buildPythonPackage rec { }; checkInputs = [ pytestCheckHook matplotlib mock pytest_xdist ]; - propagatedBuildInputs = [ pytorch scikitlearn tqdm pynvml ]; + propagatedBuildInputs = [ pytorch scikit-learn tqdm pynvml ]; # runs succesfully in 3.9, however, async isn't correctly closed so it will fail after test suite. doCheck = pythonOlder "3.9"; diff --git a/pkgs/development/python-modules/imbalanced-learn/0.4.nix b/pkgs/development/python-modules/imbalanced-learn/0.4.nix index 96ba16b1cd1a..6709092ca955 100644 --- a/pkgs/development/python-modules/imbalanced-learn/0.4.nix +++ b/pkgs/development/python-modules/imbalanced-learn/0.4.nix @@ -1,4 +1,4 @@ -{ lib, buildPythonPackage, fetchPypi, scikitlearn, pandas, nose, pytest }: +{ lib, buildPythonPackage, fetchPypi, scikit-learn, pandas, nose, pytest }: buildPythonPackage rec { pname = "imbalanced-learn"; @@ -9,7 +9,7 @@ buildPythonPackage rec { sha256 = "5bd9e86e40ce4001a57426541d7c79b18143cbd181e3330c1a3e5c5c43287083"; }; - propagatedBuildInputs = [ scikitlearn ]; + propagatedBuildInputs = [ scikit-learn ]; checkInputs = [ nose pytest pandas ]; checkPhase = '' export HOME=$PWD diff --git a/pkgs/development/python-modules/imbalanced-learn/default.nix b/pkgs/development/python-modules/imbalanced-learn/default.nix index cf3fca9aa03c..aad2e3e07a45 100644 --- a/pkgs/development/python-modules/imbalanced-learn/default.nix +++ b/pkgs/development/python-modules/imbalanced-learn/default.nix @@ -4,7 +4,7 @@ , isPy27 , pandas , pytestCheckHook -, scikitlearn +, scikit-learn }: buildPythonPackage rec { @@ -17,7 +17,7 @@ buildPythonPackage rec { sha256 = "0a9xrw4qsh95g85pg2611hvj6xcfncw646si2icaz22haw1x410w"; }; - propagatedBuildInputs = [ scikitlearn ]; + propagatedBuildInputs = [ scikit-learn ]; checkInputs = [ pytestCheckHook pandas ]; preCheck = '' export HOME=$TMPDIR diff --git a/pkgs/development/python-modules/kmapper/default.nix b/pkgs/development/python-modules/kmapper/default.nix index abba8354399a..87f22172c495 100644 --- a/pkgs/development/python-modules/kmapper/default.nix +++ b/pkgs/development/python-modules/kmapper/default.nix @@ -1,7 +1,7 @@ { lib , buildPythonPackage , fetchFromGitHub -, scikitlearn +, scikit-learn , numpy , scipy , jinja2 @@ -25,7 +25,7 @@ buildPythonPackage rec { }; propagatedBuildInputs = [ - scikitlearn + scikit-learn numpy scipy jinja2 diff --git a/pkgs/development/python-modules/librosa/default.nix b/pkgs/development/python-modules/librosa/default.nix index ce8f2a73fa7f..45f6bffd661c 100644 --- a/pkgs/development/python-modules/librosa/default.nix +++ b/pkgs/development/python-modules/librosa/default.nix @@ -4,7 +4,7 @@ , joblib , matplotlib , six -, scikitlearn +, scikit-learn , decorator , audioread , resampy @@ -21,7 +21,7 @@ buildPythonPackage rec { sha256 = "af0b9f2ed4bbf6aecbc448a4cd27c16453c397cb6bef0f0cfba0e63afea2b839"; }; - propagatedBuildInputs = [ joblib matplotlib six scikitlearn decorator audioread resampy soundfile pooch ]; + propagatedBuildInputs = [ joblib matplotlib six scikit-learn decorator audioread resampy soundfile pooch ]; # No tests # 1. Internet connection is required diff --git a/pkgs/development/python-modules/lightgbm/default.nix b/pkgs/development/python-modules/lightgbm/default.nix index 1018ceaec4b2..a887c3ec8af2 100644 --- a/pkgs/development/python-modules/lightgbm/default.nix +++ b/pkgs/development/python-modules/lightgbm/default.nix @@ -4,7 +4,7 @@ , cmake , numpy , scipy -, scikitlearn +, scikit-learn , llvmPackages ? null }: @@ -39,7 +39,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy scipy - scikitlearn + scikit-learn ]; postConfigure = '' diff --git a/pkgs/development/python-modules/mlrose/default.nix b/pkgs/development/python-modules/mlrose/default.nix index b17b56b8f9ee..2187f2726801 100644 --- a/pkgs/development/python-modules/mlrose/default.nix +++ b/pkgs/development/python-modules/mlrose/default.nix @@ -3,7 +3,7 @@ , buildPythonPackage , fetchFromGitHub , fetchpatch -, scikitlearn +, scikit-learn , pytestCheckHook , pytest-randomly }: @@ -28,7 +28,7 @@ buildPythonPackage rec { }) ]; - propagatedBuildInputs = [ scikitlearn ]; + propagatedBuildInputs = [ scikit-learn ]; checkInputs = [ pytest-randomly pytestCheckHook ]; postPatch = '' diff --git a/pkgs/development/python-modules/mlxtend/default.nix b/pkgs/development/python-modules/mlxtend/default.nix index 44402b36ec08..4692dc61c229 100644 --- a/pkgs/development/python-modules/mlxtend/default.nix +++ b/pkgs/development/python-modules/mlxtend/default.nix @@ -5,7 +5,7 @@ , pytestCheckHook , scipy , numpy -, scikitlearn +, scikit-learn , pandas , matplotlib , joblib @@ -33,7 +33,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ scipy numpy - scikitlearn + scikit-learn pandas matplotlib joblib @@ -45,7 +45,7 @@ buildPythonPackage rec { license= licenses.bsd3; maintainers = with maintainers; [ evax ]; platforms = platforms.unix; - # incompatible with nixpkgs scikitlearn version + # incompatible with nixpkgs scikit-learn version broken = true; }; } diff --git a/pkgs/development/python-modules/mne-python/default.nix b/pkgs/development/python-modules/mne-python/default.nix index bed191c39e32..d8add2608b6a 100644 --- a/pkgs/development/python-modules/mne-python/default.nix +++ b/pkgs/development/python-modules/mne-python/default.nix @@ -11,7 +11,7 @@ , matplotlib , nibabel , pandas -, scikitlearn +, scikit-learn }: buildPythonPackage rec { @@ -40,7 +40,7 @@ buildPythonPackage rec { matplotlib nibabel pandas - scikitlearn + scikit-learn ]; preCheck = '' export HOME=$TMP diff --git a/pkgs/development/python-modules/moviepy/default.nix b/pkgs/development/python-modules/moviepy/default.nix index 4cd1fec3d8b2..c3acdbe71ec2 100644 --- a/pkgs/development/python-modules/moviepy/default.nix +++ b/pkgs/development/python-modules/moviepy/default.nix @@ -13,14 +13,14 @@ , advancedProcessing ? false , opencv3 ? null , scikitimage ? null -, scikitlearn ? null +, scikit-learn ? null , scipy ? null , matplotlib ? null , youtube-dl ? null }: assert advancedProcessing -> ( - opencv3 != null && scikitimage != null && scikitlearn != null + opencv3 != null && scikitimage != null && scikit-learn != null && scipy != null && matplotlib != null && youtube-dl != null); buildPythonPackage rec { @@ -40,7 +40,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy decorator imageio imageio-ffmpeg tqdm requests proglog ] ++ (lib.optionals advancedProcessing [ - opencv3 scikitimage scikitlearn scipy matplotlib youtube-dl + opencv3 scikitimage scikit-learn scipy matplotlib youtube-dl ]); meta = with lib; { diff --git a/pkgs/development/python-modules/nilearn/default.nix b/pkgs/development/python-modules/nilearn/default.nix index e3ce770398e4..39edd7e34da2 100644 --- a/pkgs/development/python-modules/nilearn/default.nix +++ b/pkgs/development/python-modules/nilearn/default.nix @@ -1,5 +1,5 @@ { lib, buildPythonPackage, fetchPypi, pytestCheckHook, matplotlib -, nibabel, numpy, pandas, scikitlearn, scipy, joblib, requests }: +, nibabel, numpy, pandas, scikit-learn, scipy, joblib, requests }: buildPythonPackage rec { pname = "nilearn"; @@ -20,7 +20,7 @@ buildPythonPackage rec { numpy pandas requests - scikitlearn + scikit-learn scipy ]; diff --git a/pkgs/development/python-modules/osmnx/default.nix b/pkgs/development/python-modules/osmnx/default.nix index 3cd420c7491f..a55d26d83c28 100755 --- a/pkgs/development/python-modules/osmnx/default.nix +++ b/pkgs/development/python-modules/osmnx/default.nix @@ -1,5 +1,5 @@ { lib, buildPythonPackage, fetchFromGitHub, geopandas, descartes, matplotlib, networkx, numpy -, pandas, requests, Rtree, shapely, folium, scikitlearn, scipy}: +, pandas, requests, Rtree, shapely, folium, scikit-learn, scipy}: buildPythonPackage rec { pname = "osmnx"; @@ -12,7 +12,7 @@ buildPythonPackage rec { sha256 = "1k3y5kl4k93vxaxyanc040x44s2fyyc3m1ndy2j3kg0037z8ad4z"; }; - propagatedBuildInputs = [ geopandas descartes matplotlib networkx numpy pandas requests Rtree shapely folium scikitlearn scipy ]; + propagatedBuildInputs = [ geopandas descartes matplotlib networkx numpy pandas requests Rtree shapely folium scikit-learn scipy ]; # requires network doCheck = false; diff --git a/pkgs/development/python-modules/ovoenergy/default.nix b/pkgs/development/python-modules/ovoenergy/default.nix new file mode 100644 index 000000000000..42615fa664dd --- /dev/null +++ b/pkgs/development/python-modules/ovoenergy/default.nix @@ -0,0 +1,37 @@ +{ lib +, aiohttp +, buildPythonPackage +, click +, fetchFromGitHub +, pythonOlder +}: + +buildPythonPackage rec { + pname = "ovoenergy"; + version = "1.1.12"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "timmo001"; + repo = pname; + rev = "v${version}"; + sha256 = "1430k699gblxwspsbgxnha8afk6npqharhz2jyjw5gir9pi6g9cz"; + }; + + propagatedBuildInputs = [ + aiohttp + click + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "ovoenergy" ]; + + meta = with lib; { + description = "Python client for getting data from OVO's API"; + homepage = "https://github.com/timmo001/ovoenergy"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/persim/default.nix b/pkgs/development/python-modules/persim/default.nix index 65f3529e60c6..2868cea4aea7 100644 --- a/pkgs/development/python-modules/persim/default.nix +++ b/pkgs/development/python-modules/persim/default.nix @@ -6,7 +6,7 @@ , joblib , matplotlib , numpy -, scikitlearn +, scikit-learn , scipy , pytestCheckHook }: @@ -26,7 +26,7 @@ buildPythonPackage rec { joblib matplotlib numpy - scikitlearn + scikit-learn scipy ]; diff --git a/pkgs/development/python-modules/ppscore/default.nix b/pkgs/development/python-modules/ppscore/default.nix index ad3a393a00d1..43dd1f249ed8 100644 --- a/pkgs/development/python-modules/ppscore/default.nix +++ b/pkgs/development/python-modules/ppscore/default.nix @@ -3,7 +3,7 @@ , fetchFromGitHub , isPy27 , pandas -, scikitlearn +, scikit-learn , pytestCheckHook }: @@ -23,7 +23,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ pandas - scikitlearn + scikit-learn ]; meta = with lib; { diff --git a/pkgs/development/python-modules/prayer-times-calculator/default.nix b/pkgs/development/python-modules/prayer-times-calculator/default.nix new file mode 100644 index 000000000000..758c52f1d4b5 --- /dev/null +++ b/pkgs/development/python-modules/prayer-times-calculator/default.nix @@ -0,0 +1,35 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, requests +}: + +buildPythonPackage rec { + pname = "prayer-times-calculator"; + version = "0.0.4"; + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "uchagani"; + repo = pname; + rev = version; + sha256 = "053wa0zzfflaxlllh6sxgnrqqx8qyv4jcj85fsiv6n608kw202d5"; + }; + + propagatedBuildInputs = [ + requests + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "prayer_times_calculator" ]; + + meta = with lib; { + description = "Python client for the Prayer Times API"; + homepage = "https://github.com/uchagani/prayer-times-calculator"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/pulsectl/default.nix b/pkgs/development/python-modules/pulsectl/default.nix index 378e37ec69df..8af58a2565eb 100644 --- a/pkgs/development/python-modules/pulsectl/default.nix +++ b/pkgs/development/python-modules/pulsectl/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "pulsectl"; - version = "21.5.0"; + version = "21.5.17"; src = fetchPypi { inherit pname version; - sha256 = "11dw8hij1vzqawlv5l1ax6i2zw6p4ccn4ww3v6q1kdmrwk46vi7r"; + sha256 = "1826wz4d7qnlwl5csnjds1xh9ainicj2s004hlwv54bdvwx2ny1z"; }; patches = [ @@ -24,7 +24,8 @@ buildPythonPackage rec { checkInputs = [ pulseaudio ]; checkPhase = '' - ${python.interpreter} -m unittest pulsectl.tests.all + export HOME=$TMPDIR + ${python.interpreter} -m unittest discover ''; meta = with lib; { diff --git a/pkgs/development/python-modules/py-canary/default.nix b/pkgs/development/python-modules/py-canary/default.nix new file mode 100644 index 000000000000..531624781b40 --- /dev/null +++ b/pkgs/development/python-modules/py-canary/default.nix @@ -0,0 +1,41 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, mock +, pytestCheckHook +, pythonOlder +, requests +, requests-mock +}: + +buildPythonPackage rec { + pname = "py-canary"; + version = "0.5.1"; + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "snjoetw"; + repo = pname; + rev = version; + sha256 = "0j743cc0wv7im3anx1vvdm79zyvw67swhc3zwwc1r8626dgnmxjr"; + }; + + propagatedBuildInputs = [ + requests + ]; + + checkInputs = [ + mock + pytestCheckHook + requests-mock + ]; + + pythonImportsCheck = [ "canary" ]; + + meta = with lib; { + description = "Python package for Canary Security Camera"; + homepage = "https://github.com/snjoetw/py-canary"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/pyatmo/default.nix b/pkgs/development/python-modules/pyatmo/default.nix index 6bea15df386f..ea6e85221776 100644 --- a/pkgs/development/python-modules/pyatmo/default.nix +++ b/pkgs/development/python-modules/pyatmo/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "pyatmo"; - version = "4.2.2"; + version = "4.2.3"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "jabesq"; repo = "pyatmo"; rev = "v${version}"; - sha256 = "sha256-3IxDDLa8KMHVkHAeTmdNVRPc5aKzF3VwL2kKnG8Fp7I="; + sha256 = "sha256-hbs+1x/pwv00dhm+1Yj1effddJZHDjs2K3oeBmdCY+k="; }; postPatch = '' diff --git a/pkgs/development/python-modules/pydelijn/default.nix b/pkgs/development/python-modules/pydelijn/default.nix new file mode 100644 index 000000000000..08a3bf823611 --- /dev/null +++ b/pkgs/development/python-modules/pydelijn/default.nix @@ -0,0 +1,37 @@ +{ lib +, aiohttp +, async-timeout +, buildPythonPackage +, fetchPypi +, pythonOlder +, pytz +}: + +buildPythonPackage rec { + pname = "pydelijn"; + version = "0.6.1"; + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "1lwd2f043hy7gf1ly9zpaq1yg947bqw2af8vhwssf48zpisfgc81"; + }; + + propagatedBuildInputs = [ + aiohttp + async-timeout + pytz + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "pydelijn" ]; + + meta = with lib; { + description = "Python package to retrieve realtime data of passages at stops of De Lijn"; + homepage = "https://github.com/bollewolle/pydelijn"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/pygbm/default.nix b/pkgs/development/python-modules/pygbm/default.nix index 0d2747c1cb46..5367f622e9b8 100644 --- a/pkgs/development/python-modules/pygbm/default.nix +++ b/pkgs/development/python-modules/pygbm/default.nix @@ -4,7 +4,7 @@ , scipy , numpy , numba -, scikitlearn +, scikit-learn , pytest , pythonOlder }: @@ -25,7 +25,7 @@ buildPythonPackage rec { scipy numpy numba - scikitlearn + scikit-learn ]; checkInputs = [ diff --git a/pkgs/development/python-modules/pymorphy2/default.nix b/pkgs/development/python-modules/pymorphy2/default.nix new file mode 100644 index 000000000000..8c00975d08bf --- /dev/null +++ b/pkgs/development/python-modules/pymorphy2/default.nix @@ -0,0 +1,35 @@ +{ lib +, fetchPypi +, buildPythonPackage +, isPy3k +, dawg-python +, docopt +, pymorphy2-dicts-ru +}: + +buildPythonPackage rec { + pname = "pymorphy2"; + version = "0.9.1"; + + disabled = !isPy3k; + + src = fetchPypi { + inherit pname version; + hash = "sha256-hsRHFX3uLrI0HvvkU44SgadUdWuhqjLad6iWFMWLVgw="; + }; + + propagatedBuildInputs = [ + dawg-python + docopt + pymorphy2-dicts-ru + ]; + + pythonImportsCheck = [ "pymorphy2" ]; + + meta = with lib; { + description = "Morphological analyzer/inflection engine for Russian and Ukrainian"; + homepage = "https://github.com/kmike/pymorphy2"; + license = licenses.mit; + maintainers = with maintainers; [ danieldk ]; + }; +} diff --git a/pkgs/development/python-modules/pymorphy2/dicts-ru.nix b/pkgs/development/python-modules/pymorphy2/dicts-ru.nix new file mode 100644 index 000000000000..bee9dd492479 --- /dev/null +++ b/pkgs/development/python-modules/pymorphy2/dicts-ru.nix @@ -0,0 +1,23 @@ +{ lib +, fetchPypi +, buildPythonPackage +}: + +buildPythonPackage rec { + pname = "pymorphy2-dicts-ru"; + version = "2.4.417127.4579844"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-eMrQOtymBQIavTh6Oy61FchRuG6UaCoe8jVKLHT8wZY="; + }; + + pythonImportsCheck = [ "pymorphy2_dicts_ru" ]; + + meta = with lib; { + description = "Russian dictionaries for pymorphy2"; + homepage = "https://github.com/kmike/pymorphy2-dicts/"; + license = licenses.mit; + maintainers = with maintainers; [ danieldk ]; + }; +} diff --git a/pkgs/development/python-modules/pynndescent/default.nix b/pkgs/development/python-modules/pynndescent/default.nix index 8cddeb8873fa..fa9db26b5e39 100644 --- a/pkgs/development/python-modules/pynndescent/default.nix +++ b/pkgs/development/python-modules/pynndescent/default.nix @@ -2,7 +2,7 @@ , buildPythonPackage , fetchPypi , nose -, scikitlearn +, scikit-learn , scipy , numba , llvmlite @@ -19,7 +19,7 @@ buildPythonPackage rec { }; propagatedBuildInputs = [ - scikitlearn + scikit-learn scipy numba llvmlite diff --git a/pkgs/development/python-modules/pyobihai/default.nix b/pkgs/development/python-modules/pyobihai/default.nix new file mode 100644 index 000000000000..79d8363372be --- /dev/null +++ b/pkgs/development/python-modules/pyobihai/default.nix @@ -0,0 +1,34 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, requests +}: + +buildPythonPackage rec { + pname = "pyobihai"; + version = "1.3.1"; + disabled = pythonOlder "3.6"; + + # GitHub release, https://github.com/dshokouhi/pyobihai/issues/10 + src = fetchPypi { + inherit pname version; + sha256 = "1vvf5if57dfd091a7fb5rvx63hvf0isrx28j72nj2aav1as460qp"; + }; + + propagatedBuildInputs = [ + requests + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "pyobihai" ]; + + meta = with lib; { + description = "Python package to interact with Obihai devices"; + homepage = "https://github.com/dshokouhi/pyobihai"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/pytorch-metric-learning/default.nix b/pkgs/development/python-modules/pytorch-metric-learning/default.nix index fd2c80af890c..e340d5eefada 100644 --- a/pkgs/development/python-modules/pytorch-metric-learning/default.nix +++ b/pkgs/development/python-modules/pytorch-metric-learning/default.nix @@ -3,7 +3,7 @@ , fetchFromGitHub , isPy27 , numpy -, scikitlearn +, scikit-learn , pytestCheckHook , pytorch , torchvision @@ -26,7 +26,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy pytorch - scikitlearn + scikit-learn torchvision tqdm ]; diff --git a/pkgs/development/python-modules/qiskit-aqua/default.nix b/pkgs/development/python-modules/qiskit-aqua/default.nix index b1cdd7f523cd..3233e435f071 100644 --- a/pkgs/development/python-modules/qiskit-aqua/default.nix +++ b/pkgs/development/python-modules/qiskit-aqua/default.nix @@ -14,7 +14,7 @@ , qiskit-ignis , qiskit-terra , quandl -, scikitlearn +, scikit-learn , yfinance # Optional inputs , withTorch ? false @@ -59,7 +59,7 @@ buildPythonPackage rec { qiskit-terra qiskit-ignis quandl - scikitlearn + scikit-learn yfinance ] ++ lib.optionals (withTorch) [ pytorch ] ++ lib.optionals (withPyscf) [ pyscf ] diff --git a/pkgs/development/python-modules/qiskit-ignis/default.nix b/pkgs/development/python-modules/qiskit-ignis/default.nix index 403fa0f05a9c..996259f683b4 100644 --- a/pkgs/development/python-modules/qiskit-ignis/default.nix +++ b/pkgs/development/python-modules/qiskit-ignis/default.nix @@ -5,7 +5,7 @@ , python , numpy , qiskit-terra -, scikitlearn +, scikit-learn , scipy # Optional package inputs , withVisualization ? false @@ -44,7 +44,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy qiskit-terra - scikitlearn + scikit-learn scipy ] ++ lib.optionals (withCvx) [ cvxpy ] ++ lib.optionals (withVisualization) [ matplotlib ] diff --git a/pkgs/development/python-modules/ripser/default.nix b/pkgs/development/python-modules/ripser/default.nix index acd017a7a2e8..7bc7df0b8fd5 100644 --- a/pkgs/development/python-modules/ripser/default.nix +++ b/pkgs/development/python-modules/ripser/default.nix @@ -5,7 +5,7 @@ , cython , numpy , scipy -, scikitlearn +, scikit-learn , persim , pytest }: @@ -28,7 +28,7 @@ buildPythonPackage rec { cython numpy scipy - scikitlearn + scikit-learn persim ]; diff --git a/pkgs/development/python-modules/scikit-bio/default.nix b/pkgs/development/python-modules/scikit-bio/default.nix index f13fecc08551..fe4cd4ea48dd 100644 --- a/pkgs/development/python-modules/scikit-bio/default.nix +++ b/pkgs/development/python-modules/scikit-bio/default.nix @@ -12,7 +12,7 @@ , pandas , scipy , hdmedians -, scikitlearn +, scikit-learn , coverage , python , isPy3k @@ -30,7 +30,7 @@ buildPythonPackage rec { buildInputs = [ cython ]; checkInputs = [ coverage ]; - propagatedBuildInputs = [ lockfile cachecontrol decorator ipython matplotlib natsort numpy pandas scipy hdmedians scikitlearn ]; + propagatedBuildInputs = [ lockfile cachecontrol decorator ipython matplotlib natsort numpy pandas scipy hdmedians scikit-learn ]; # cython package not included for tests doCheck = false; diff --git a/pkgs/development/python-modules/scikitlearn/0.20.nix b/pkgs/development/python-modules/scikit-learn/0.20.nix similarity index 100% rename from pkgs/development/python-modules/scikitlearn/0.20.nix rename to pkgs/development/python-modules/scikit-learn/0.20.nix diff --git a/pkgs/development/python-modules/scikitlearn/default.nix b/pkgs/development/python-modules/scikit-learn/default.nix similarity index 80% rename from pkgs/development/python-modules/scikitlearn/default.nix rename to pkgs/development/python-modules/scikit-learn/default.nix index 7e9e37831e0d..dfce61df6c6e 100644 --- a/pkgs/development/python-modules/scikitlearn/default.nix +++ b/pkgs/development/python-modules/scikit-learn/default.nix @@ -7,7 +7,8 @@ , glibcLocales , numpy , scipy -, pytest +, pytestCheckHook +, pytest-xdist , pillow , cython , joblib @@ -54,17 +55,30 @@ buildPythonPackage rec { joblib threadpoolctl ]; - checkInputs = [ pytest ]; + + checkInputs = [ pytestCheckHook pytest-xdist ]; LC_ALL="en_US.UTF-8"; - doCheck = !stdenv.isAarch64; - # Skip test_feature_importance_regression - does web fetch - checkPhase = '' - cd $TMPDIR - HOME=$TMPDIR OMP_NUM_THREADS=1 pytest -k "not test_feature_importance_regression" --pyargs sklearn + preBuild = '' + export SKLEARN_BUILD_PARALLEL=$NIX_BUILD_CORES ''; + doCheck = !stdenv.isAarch64; + + # Skip test_feature_importance_regression - does web fetch + disabledTests = [ "test_feature_importance_regression" ]; + + pytestFlagsArray = [ "-n" "$NIX_BUILD_CORES" "--pyargs" "sklearn" ]; + + preCheck = '' + cd $TMPDIR + export HOME=$TMPDIR + export OMP_NUM_THREADS=1 + ''; + + pythonImportsCheck = [ "sklearn" ]; + meta = with lib; { description = "A set of python modules for machine learning and data mining"; changelog = let diff --git a/pkgs/development/python-modules/scikit-optimize/default.nix b/pkgs/development/python-modules/scikit-optimize/default.nix index 0a5171f22fbf..3b7106ac4f2b 100644 --- a/pkgs/development/python-modules/scikit-optimize/default.nix +++ b/pkgs/development/python-modules/scikit-optimize/default.nix @@ -5,7 +5,7 @@ , matplotlib , numpy , scipy -, scikitlearn +, scikit-learn , pyaml , pytestCheckHook }: @@ -26,7 +26,7 @@ buildPythonPackage rec { matplotlib numpy scipy - scikitlearn + scikit-learn pyaml ]; diff --git a/pkgs/development/python-modules/scikit-tda/default.nix b/pkgs/development/python-modules/scikit-tda/default.nix index f6d573573b9c..bf3e1d1ef469 100644 --- a/pkgs/development/python-modules/scikit-tda/default.nix +++ b/pkgs/development/python-modules/scikit-tda/default.nix @@ -3,7 +3,7 @@ , fetchFromGitHub , numpy , scipy -, scikitlearn +, scikit-learn , matplotlib , numba , umap-learn @@ -32,7 +32,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy scipy - scikitlearn + scikit-learn matplotlib numba umap-learn diff --git a/pkgs/development/python-modules/seqeval/default.nix b/pkgs/development/python-modules/seqeval/default.nix index 15322632ad7d..9ed516e4d5c3 100644 --- a/pkgs/development/python-modules/seqeval/default.nix +++ b/pkgs/development/python-modules/seqeval/default.nix @@ -2,7 +2,7 @@ , buildPythonPackage , fetchFromGitHub , numpy -, scikitlearn +, scikit-learn , perl , pytestCheckHook }: @@ -27,7 +27,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy - scikitlearn + scikit-learn ]; checkInputs = [ diff --git a/pkgs/development/python-modules/shap/default.nix b/pkgs/development/python-modules/shap/default.nix index 5600f4a6aa0f..128dacfd55a8 100644 --- a/pkgs/development/python-modules/shap/default.nix +++ b/pkgs/development/python-modules/shap/default.nix @@ -5,7 +5,7 @@ , pytestCheckHook , numpy , scipy -, scikitlearn +, scikit-learn , pandas , tqdm , slicer @@ -30,7 +30,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy scipy - scikitlearn + scikit-learn pandas tqdm slicer diff --git a/pkgs/development/python-modules/sklearn-deap/default.nix b/pkgs/development/python-modules/sklearn-deap/default.nix index d973bc70bcdb..2530b9652032 100644 --- a/pkgs/development/python-modules/sklearn-deap/default.nix +++ b/pkgs/development/python-modules/sklearn-deap/default.nix @@ -1,4 +1,4 @@ -{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, numpy, scipy, deap, scikitlearn, python }: +{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, numpy, scipy, deap, scikit-learn, python }: buildPythonPackage rec { pname = "sklearn-deap"; @@ -20,7 +20,7 @@ buildPythonPackage rec { }) ]; - propagatedBuildInputs = [ numpy scipy deap scikitlearn ]; + propagatedBuildInputs = [ numpy scipy deap scikit-learn ]; checkPhase = '' ${python.interpreter} test.py diff --git a/pkgs/development/python-modules/skorch/default.nix b/pkgs/development/python-modules/skorch/default.nix index 3504557b5027..db3b8ed4312c 100644 --- a/pkgs/development/python-modules/skorch/default.nix +++ b/pkgs/development/python-modules/skorch/default.nix @@ -8,7 +8,7 @@ , numpy , pandas , pytorch -, scikitlearn +, scikit-learn , scipy , tabulate , tqdm @@ -23,7 +23,7 @@ buildPythonPackage rec { sha256 = "9910f97339e654c8d38e0075d87b735e69e5eb11db59c527fb36705b30c8d0a4"; }; - propagatedBuildInputs = [ numpy pytorch scikitlearn scipy tabulate tqdm ]; + propagatedBuildInputs = [ numpy pytorch scikit-learn scipy tabulate tqdm ]; checkInputs = [ pytest pytestcov flaky pandas pytestCheckHook ]; disabledTests = [ diff --git a/pkgs/development/python-modules/slimit/default.nix b/pkgs/development/python-modules/slimit/default.nix deleted file mode 100644 index 30654bd03f61..000000000000 --- a/pkgs/development/python-modules/slimit/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ lib, buildPythonPackage, fetchPypi, isPy3k, fetchpatch, python, ply }: - -buildPythonPackage rec { - pname = "slimit"; - version = "0.8.1"; - - src = fetchPypi { - inherit pname version; - extension = "zip"; - sha256 = "f433dcef899f166b207b67d91d3f7344659cb33b8259818f084167244e17720b"; - }; - - # Some patches from https://github.com/rspivak/slimit/pull/65 - patches = lib.optionals isPy3k [ - (fetchpatch { - url = "https://github.com/lelit/slimit/commit/a61e12d88cc123c4b7af2abef21d06fd182e561a.patch"; - sha256 = "0lbhvkgn4l8g9fwvb81rfwjx7hsaq2pid8a5gczdk1ba65wfvdq5"; - }) - (fetchpatch { - url = "https://github.com/lelit/slimit/commit/e8331659fb89e8a4613c5e4e338c877fead9c551.patch"; - sha256 = "1hv4ysn09c9bfd5bxhhrp51hsi81hdidmx0y7zcrjjiich9ayrni"; - }) - ]; - - propagatedBuildInputs = [ ply ]; - - checkPhase = '' - ${python.interpreter} -m unittest discover -s src/slimit - ''; - - meta = with lib; { - description = "JavaScript minifier"; - homepage = "https://slimit.readthedocs.org/"; - license = licenses.mit; - }; -} diff --git a/pkgs/development/python-modules/spacy-alignments/default.nix b/pkgs/development/python-modules/spacy-alignments/default.nix new file mode 100644 index 000000000000..0ac1edfd5034 --- /dev/null +++ b/pkgs/development/python-modules/spacy-alignments/default.nix @@ -0,0 +1,60 @@ +{ lib +, stdenv +, fetchPypi +, fetchpatch +, buildPythonPackage +, isPy3k +, rustPlatform +, setuptools-rust +, libiconv +}: + +buildPythonPackage rec { + pname = "spacy-alignments"; + version = "0.8.3"; + + disabled = !isPy3k; + + src = fetchPypi { + inherit pname version; + hash = "sha256-zrqBjaIjtF6bJMbmw7Zo+BeApN6sxxfLkrzsDjdvC78="; + }; + + cargoDeps = rustPlatform.fetchCargoTarball { + inherit patches src; + name = "${pname}-${version}"; + hash = "sha256-YRyG2yflEXKklNqXiDD9oK3J1lq4o704+Eeu2hyY3xI="; + }; + + patches = [ + # Add Cargo.lock, from upstream PR: + # https://github.com/explosion/spacy-alignments/pull/3 + (fetchpatch { + url = "https://github.com/explosion/spacy-alignments/commit/7b0ba13ff0d245bfbbe344a36fb7bbd311dd4906.diff"; + sha256 = "sha256-jx97SSC+3z+ByInNs8Uq58H50eCo4fDCwEi6VKxRs2k="; + excludes = [ ".gitignore" ]; + }) + ]; + + nativeBuildInputs = [ + setuptools-rust + ] ++ (with rustPlatform; [ + cargoSetupHook + rust.cargo + rust.rustc + ]); + + buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; + + # Fails because spacy_alignments module cannot be loaded correctly. + doCheck = false; + + pythonImportsCheck = [ "spacy_alignments" ]; + + meta = with lib; { + description = "Align tokenizations for spaCy and transformers"; + homepage = "https://github.com/explosion/spacy-alignments"; + license = licenses.mit; + maintainers = with maintainers; [ danieldk ]; + }; +} diff --git a/pkgs/development/python-modules/spacy-pkuseg/default.nix b/pkgs/development/python-modules/spacy-pkuseg/default.nix new file mode 100644 index 000000000000..670174a057e9 --- /dev/null +++ b/pkgs/development/python-modules/spacy-pkuseg/default.nix @@ -0,0 +1,38 @@ +{ lib +, buildPythonPackage +, fetchPypi +, isPy3k +, cython +, numpy +, srsly +}: + +buildPythonPackage rec { + pname = "spacy-pkuseg"; + version = "0.0.28"; + + disabled = !isPy3k; + + src = fetchPypi { + inherit version; + pname = "spacy_pkuseg"; + hash = "sha256-mmA/baY9ohvrM41ak5L+G8CUrSQeZCrzmMAoND4X/NI="; + }; + + # Does not seem to have actual tests, but unittest discover + # recognizes some non-tests as tests and fails. + doCheck = false; + + nativeBuildInputs = [ cython ]; + + propagatedBuildInputs = [ numpy srsly ]; + + pythonImportsCheck = [ "spacy_pkuseg" ]; + + meta = with lib; { + description = "Toolkit for multi-domain Chinese word segmentation (spaCy fork)"; + homepage = "https://github.com/explosion/spacy-pkuseg"; + license = licenses.mit; + maintainers = with maintainers; [ danieldk ]; + }; +} diff --git a/pkgs/development/python-modules/spacy-transformers/annotation-test/annotate.py b/pkgs/development/python-modules/spacy-transformers/annotation-test/annotate.py new file mode 100644 index 000000000000..d0be2d1c335a --- /dev/null +++ b/pkgs/development/python-modules/spacy-transformers/annotation-test/annotate.py @@ -0,0 +1,68 @@ +import pytest +import spacy + +en_text = ( + "When Sebastian Thrun started working on self-driving cars at " + "Google in 2007, few people outside of the company took him " + "seriously. “I can tell you very senior CEOs of major American " + "car companies would shake my hand and turn away because I wasn’t " + "worth talking to,” said Thrun, in an interview with Recode earlier " + "this week.") + + +@pytest.fixture +def en_core_web_trf(): + return spacy.load("en_core_web_trf") + + +@pytest.fixture +def doc_en_core_web_trf(en_core_web_trf): + return en_core_web_trf(en_text) + + +def test_entities(doc_en_core_web_trf): + entities = list(map(lambda e: (e.text, e.label_), + doc_en_core_web_trf.ents)) + + assert entities == [ + ('Sebastian Thrun', 'PERSON'), + ('Google', 'ORG'), + ('2007', 'DATE'), + ('American', 'NORP'), + ('Thrun', 'PERSON'), + ('Recode', 'ORG'), + ('earlier this week', 'DATE'), + ] + + +def test_nouns(doc_en_core_web_trf): + assert [ + chunk.text for chunk in doc_en_core_web_trf.noun_chunks] == [ + 'Sebastian Thrun', + 'self-driving cars', + 'Google', + 'few people', + 'the company', + 'him', + 'I', + 'you', + 'very senior CEOs', + 'major American car companies', + 'my hand', + 'I', + 'Thrun', + 'an interview', + 'Recode'] + + +def test_verbs(doc_en_core_web_trf): + assert [ + token.lemma_ for token in doc_en_core_web_trf if token.pos_ == "VERB"] == [ + 'start', + 'take', + 'tell', + 'shake', + 'turn', + 'be', + 'talk', + 'say'] diff --git a/pkgs/development/python-modules/spacy-transformers/annotation-test/default.nix b/pkgs/development/python-modules/spacy-transformers/annotation-test/default.nix new file mode 100644 index 000000000000..11a927a0a627 --- /dev/null +++ b/pkgs/development/python-modules/spacy-transformers/annotation-test/default.nix @@ -0,0 +1,23 @@ +{ stdenv, pytest, spacy_models }: + +stdenv.mkDerivation { + name = "spacy-transformers-annotation-test"; + + src = ./.; + + dontConfigure = true; + dontBuild = true; + doCheck = true; + + checkInputs = [ pytest spacy_models.en_core_web_trf ]; + + checkPhase = '' + pytest annotate.py + ''; + + installPhase = '' + touch $out + ''; + + meta.timeout = 60; +} diff --git a/pkgs/development/python-modules/spacy-transformers/default.nix b/pkgs/development/python-modules/spacy-transformers/default.nix new file mode 100644 index 000000000000..1d02460167bf --- /dev/null +++ b/pkgs/development/python-modules/spacy-transformers/default.nix @@ -0,0 +1,42 @@ +{ lib +, callPackage +, fetchPypi +, buildPythonPackage +, pytorch +, spacy +, spacy-alignments +, srsly +, transformers +}: + +buildPythonPackage rec { + pname = "spacy-transformers"; + version = "1.0.2"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-AYshH2trMTgeSkAPRb6wRWpm4gA5FaKV2NJd+PhzAy4="; + }; + + propagatedBuildInputs = [ + pytorch + spacy + spacy-alignments + srsly + transformers + ]; + + # Test fails due to missing arguments for trfs2arrays(). + doCheck = false; + + pythonImportsCheck = [ "spacy_transformers" ]; + + passthru.tests.annotation = callPackage ./annotation-test { }; + + meta = with lib; { + description = "spaCy pipelines for pretrained BERT, XLNet and GPT-2"; + homepage = "https://github.com/explosion/spacy-transformers"; + license = licenses.mit; + maintainers = with maintainers; [ danieldk ]; + }; +} diff --git a/pkgs/development/python-modules/spacy/annotation-test/annotate.py b/pkgs/development/python-modules/spacy/annotation-test/annotate.py index 822eb8ac0743..eb6288084883 100644 --- a/pkgs/development/python-modules/spacy/annotation-test/annotate.py +++ b/pkgs/development/python-modules/spacy/annotation-test/annotate.py @@ -26,10 +26,11 @@ def test_entities(doc_en_core_web_sm): assert entities == [ ('Sebastian Thrun', 'PERSON'), - ('Google', 'ORG'), ('2007', 'DATE'), + ('2007', 'DATE'), ('American', 'NORP'), - ('Thrun', 'ORG'), - ('earlier this week', 'DATE') + ('Thrun', 'PERSON'), + ('Recode', 'PERSON'), + ('earlier this week', 'DATE'), ] @@ -60,10 +61,9 @@ def test_verbs(doc_en_core_web_sm): 'work', 'drive', 'take', - 'can', 'tell', - 'would', 'shake', 'turn', + 'be', 'talk', 'say'] diff --git a/pkgs/development/python-modules/spacy/models.json b/pkgs/development/python-modules/spacy/models.json index 3a427f8932a5..a2989b6da502 100644 --- a/pkgs/development/python-modules/spacy/models.json +++ b/pkgs/development/python-modules/spacy/models.json @@ -1,264 +1,332 @@ -[{ - "pname": "da_core_news_lg", - "version": "2.3.0", - "sha256": "18y1jany1ha27jkwb9563haxsbylm0axkh5c8009lsfxc8y2w9hr", - "license": "cc-by-sa-40" -}, -{ - "pname": "da_core_news_md", - "version": "2.3.0", - "sha256": "06nm5grj5jdx0rja7vw1f91vvd69p6vhafrwpfr1npqk24j6cacb", - "license": "cc-by-sa-40" -}, -{ - "pname": "da_core_news_sm", - "version": "2.3.0", - "sha256": "00byhlrcbg4wxplr473g9b3126pvk4vwy0q34xg0zx4994qb6rgn", - "license": "cc-by-sa-40" -}, -{ - "pname": "de_core_news_lg", - "version": "2.3.0", - "sha256": "0rixhgdz4z7sq6f2b1w3n5cn1645cr37g40hbd9xzlvdzdf5cg6d", - "license": "mit" -}, -{ - "pname": "de_core_news_md", - "version": "2.3.0", - "sha256": "0kxir1w000r5fn1kpa38m7688xinkn2mk1m82aiwqlck3r72jdi6", - "license": "mit" -}, -{ - "pname": "de_core_news_sm", - "version": "2.3.0", - "sha256": "00cbmrf4njg28laysapdnp4rv4lw4yw03rxkynw1ain5fwb0izl7", - "license": "mit" -}, -{ - "pname": "el_core_news_lg", - "version": "2.3.0", - "sha256": "001c19dd1kirlvzbdv2i89zw8nf6c4icv2w0chm7rd6x9m3i13gd", - "license": "cc-by-nc-sa-30" -}, -{ - "pname": "el_core_news_md", - "version": "2.3.0", - "sha256": "170x8bzm5nf02mhkxyxjk58yk2639hsjb5b9prcc69500c0vmnp0", - "license": "cc-by-nc-sa-30" -}, -{ - "pname": "el_core_news_sm", - "version": "2.3.0", - "sha256": "10mh3za4jvr07rawzk8ps642rp11s3smraj9xvrxflik4fqkz18b", - "license": "cc-by-nc-sa-30" -}, -{ - "pname": "en_core_web_lg", - "version": "2.3.0", - "sha256": "0mfa5wz31ya295jhyj489gb4qy806zmpq1zc11bvv5alv2m35if2", - "license": "mit" -}, -{ - "pname": "en_core_web_md", - "version": "2.3.0", - "sha256": "1ys8sqkhiap1mq6mhbkbq8bc07lvl68xngbx725xkwvirzl5gabh", - "license": "mit" -}, -{ - "pname": "en_core_web_sm", - "version": "2.3.0", - "sha256": "04icv9qf4pj53ll8vqxcjl2a723q1k00i7lifk8wx5saif28g37a", - "license": "mit" -}, -{ - "pname": "en_vectors_web_lg", - "version": "2.3.0", - "sha256": "13g012rwh0bcxx3ii5mmygqzyryah1y3zd000zhidnacc1x1g743", - "license": "cc-by-sa-30" -}, -{ - "pname": "es_core_news_lg", - "version": "2.3.0", - "sha256": "1r0pr0lzs3j9w7rd5z9nw87iayjm36v7f7gamvaiiphs6bc5p7ls", - "license": "gpl3" -}, -{ - "pname": "es_core_news_md", - "version": "2.3.0", - "sha256": "0nz33bmpr3rxqbnv6vb1id8pkfsvh8ii8vqplwgb3b8772kmpzy2", - "license": "gpl3" -}, -{ - "pname": "es_core_news_sm", - "version": "2.3.0", - "sha256": "02xqhg4m0gg5r9yibvl02zixkll6w0nsmbdhp07y5yyaqjarc90d", - "license": "gpl3" -}, -{ - "pname": "fr_core_news_lg", - "version": "2.3.0", - "sha256": "1yliamws8nqqjhpk9gr2dzlk0dms2mr958zbj21biv8fimbq60ik", - "license": "lgpllr" -}, -{ - "pname": "fr_core_news_md", - "version": "2.3.0", - "sha256": "04fk212ksac3bp9dj7dmzsdcnbqmbsgymsic6ddcv9zbfdv5d0db", - "license": "lgpllr" -}, -{ - "pname": "fr_core_news_sm", - "version": "2.3.0", - "sha256": "0kldww855z67qfc9maa9z1lsvdf5vj5vc8gj0x3h68kv5n1xr4h0", - "license": "lgpllr" -}, -{ - "pname": "it_core_news_lg", - "version": "2.3.0", - "sha256": "192rdmqnwl3ajxzhnw4r1cqv5bkziv0yc2bbzckmzqss64wk7k70", - "license": "cc-by-nc-sa-30" -}, -{ - "pname": "it_core_news_md", - "version": "2.3.0", - "sha256": "019ih4vwq1w6j38j0wc8pyyg1an6yy37wxq2w4amwppynmmcnd5w", - "license": "cc-by-nc-sa-30" -}, -{ - "pname": "it_core_news_sm", - "version": "2.3.0", - "sha256": "1c3ywqa8li0j7cyvd1xqbb096y61978hd6qv7rc6cxxjdhmkrrds", - "license": "cc-by-nc-sa-40" -}, -{ - "pname": "lt_core_news_lg", - "version": "2.3.0", - "sha256": "0hn5w8n7mgv33i6gvnaxl1j44n9gz4j86gg1a9jjlgdw5z98n0p2", - "license": "cc-by-sa-40" -}, -{ - "pname": "lt_core_news_md", - "version": "2.3.0", - "sha256": "1xya79cz2xd5vgzg6qg0ww5j2bmv7kppdk3mdjf6zpwrlzwdbk5d", - "license": "cc-by-sa-40" -}, -{ - "pname": "lt_core_news_sm", - "version": "2.3.0", - "sha256": "0r3rbqgz4897wyhz5jli30lryb45039f4rlvn4q0364cg1pm92g9", - "license": "cc-by-sa-40" -}, -{ - "pname": "nb_core_news_lg", - "version": "2.3.0", - "sha256": "18mblypw3c82004qz5w1p3262iqwn99wl9b781dq7aqwxskr02d6", - "license": "mit" -}, -{ - "pname": "nb_core_news_md", - "version": "2.3.0", - "sha256": "0iw97k9glxbar8mrpvnmmcb1nffgdhb83akn99p53pwmqbzxy9p3", - "license": "mit" -}, -{ - "pname": "nb_core_news_sm", - "version": "2.3.0", - "sha256": "07b7xri2q3m7fvn9a2gjc1044a3f14231vr32hrw96h7k6vg95h7", - "license": "mit" -}, -{ - "pname": "nl_core_news_lg", - "version": "2.3.0", - "sha256": "016166kzpgi0p3m0x3k308a0r60a28yz7npagjvmpl1dfm9lzhnv", - "license": "cc-by-sa-40" -}, -{ - "pname": "nl_core_news_md", - "version": "2.3.0", - "sha256": "1anfhig531k9k14s0cbgsvmvifp3h50qi1h8dhx894kjmq10k2lg", - "license": "cc-by-sa-40" -}, -{ - "pname": "nl_core_news_sm", - "version": "2.3.0", - "sha256": "0alvz7pn7cj0yax8h5gp71vrdblh3mcsmyhzgiddsd44ry35nxnj", - "license": "cc-by-sa-40" -}, -{ - "pname": "pl_core_news_lg", - "version": "2.3.0", - "sha256": "1acchp8pv1h4c6cwvxz07lh4ychn6aw809zfg3mbbsxgsgd2ahjr", - "license": "gpl3" -}, -{ - "pname": "pl_core_news_md", - "version": "2.3.0", - "sha256": "19jjjjvbys3ayibkm3cx497b4bh63ll39hfq04wx116rj4ajpwwg", - "license": "gpl3" -}, -{ - "pname": "pl_core_news_sm", - "version": "2.3.0", - "sha256": "166mqlfkgiszcc6hwg2mr6sir9y88y22nd81a1nidq0fiif5lfji", - "license": "gpl3" -}, -{ - "pname": "pt_core_news_lg", - "version": "2.3.0", - "sha256": "18gvdmfwyy2sbq6206imglhghyagd6a4gb6wcfkwhm7lzbnq714d", - "license": "cc-by-sa-40" -}, -{ - "pname": "pt_core_news_md", - "version": "2.3.0", - "sha256": "1yxnpwby2aq6ydvd35lylc4fs141fisfnzlx8pl88pp2b2gxijvl", - "license": "cc-by-sa-40" -}, -{ - "pname": "pt_core_news_sm", - "version": "2.3.0", - "sha256": "1vcvzdg9f93x0vaafkk9l9xhpmaavfj0cf0l3p06c5kx2d76f9ph", - "license": "cc-by-sa-40" -}, -{ - "pname": "ro_core_news_sm", - "version": "2.3.0", - "sha256": "0lsmbdwsaczv37y5sa1vvgwszy2hs8jp24a0nvc5qm8vb71rxj8w", - "license": "cc-by-sa-40" -}, -{ - "pname": "ro_core_news_md", - "version": "2.3.0", - "sha256": "1igwkz3yd1117gi2g78yilh9ln8n5yrdimas4prfxjgzwid3q8bc", - "license": "cc-by-sa-40" -}, -{ - "pname": "ro_core_news_lg", - "version": "2.3.0", - "sha256": "0id1y32kjfans7llh1i55rgr4n2x6xn208y4qf6yl3pbc17i0n9z", - "license": "cc-by-sa-40" -}, -{ - "pname": "xx_ent_wiki_sm", - "version": "2.3.0", - "sha256": "0x3zmmybl5kh4dn5prkfmr4q5j9bh13p40qc3rhdfi0i3jxc11pn", - "license": "mit" -}, -{ - "pname": "zh_core_web_lg", - "version": "2.3.1", - "sha256": "17zxk7cz47k07yb3qaigc3sx4dj4zwilr1lsn2jq6w7jc8k2h1ll", - "license": "mit" -}, -{ - "pname": "zh_core_web_md", - "version": "2.3.1", - "sha256": "1n4iwxyam4ykn0f9jdzwkhczack8r9c3kkbyga3c4h6iwqsflzcj", - "license": "mit" -}, -{ - "pname": "zh_core_web_sm", - "version": "2.3.1", - "sha256": "1lj5nwhx38cpwnvajwxlfkf84dr1xx2h6wwbg3scycsh459i9fpc", - "license": "mit" -}] +[ + { + "pname": "da_core_news_lg", + "version": "3.0.0", + "sha256": "0l0wljc1lm9a72ngfd4aa90laz4zcc37ix9nsiaqlw004v01z7wj", + "license": "cc-by-sa-40" + }, + { + "pname": "da_core_news_md", + "version": "3.0.0", + "sha256": "14h3ym22224aimfk2kj88pmn83hkb57w402i0x6pd7ra86n372lh", + "license": "cc-by-sa-40" + }, + { + "pname": "da_core_news_sm", + "version": "3.0.0", + "sha256": "05893dpmx76waqnlysnkq8hz9271rkk30xf6hy98gka6244l9a1l", + "license": "cc-by-sa-40" + }, + { + "pname": "de_core_news_lg", + "version": "3.0.0", + "sha256": "0s7vfpr9gv22pvh697ffg35fppxkjhw23ynf4bpz73hl9jikdqvj", + "license": "mit" + }, + { + "pname": "de_core_news_md", + "version": "3.0.0", + "sha256": "09vvlm3rxmyiima81y4bvcyxhn9bjxrqlkbmglzmwhrhxm84nkmx", + "license": "mit" + }, + { + "pname": "de_core_news_sm", + "version": "3.0.0", + "sha256": "1w5aqfzknnnxpsi9i6kn6bki58j0mp24d4gr2203bf6g5kahiq03", + "license": "mit" + }, + { + "pname": "de_dep_news_trf", + "version": "3.0.0", + "sha256": "1snkm911jn73mqfz0y0anr12r6j3gdi6wd8qmd5alwm623x4s6hm", + "license": "mit" + }, + { + "pname": "el_core_news_lg", + "version": "3.0.0", + "sha256": "011lqmx3f3laf2vvqp0hxp5y105pn54kwdh1xzw4hs2pj6fac9p5", + "license": "cc-by-nc-sa-30" + }, + { + "pname": "el_core_news_md", + "version": "3.0.0", + "sha256": "0p75c18sg38j9dj79ykmm5kzcwjxccpgrcw4cjcscb6ad6wwvcjx", + "license": "cc-by-nc-sa-30" + }, + { + "pname": "el_core_news_sm", + "version": "3.0.0", + "sha256": "0gvisa7yg1w49hpfp79ahy50v64l3rmk56k0k7zkgc8ml1gn892r", + "license": "cc-by-nc-sa-30" + }, + { + "pname": "en_core_web_lg", + "version": "3.0.0", + "sha256": "0sdb85zvfb12d14k3wy23dfryy3xwc9ag79zq71qnxwpvvygmc8y", + "license": "mit" + }, + { + "pname": "en_core_web_md", + "version": "3.0.0", + "sha256": "0c669b1vsp3z28n52lfsijmkn9465r8zjjygjml5rlf9lf1paxa5", + "license": "mit" + }, + { + "pname": "en_core_web_sm", + "version": "3.0.0", + "sha256": "0risizvzkicffw7vgrj92z23dfb7zvvzihqgvjcrx8989b7b6wq6", + "license": "mit" + }, + { + "pname": "en_core_web_trf", + "version": "3.0.0", + "sha256": "0plmg77rv1spr0swn4jakci16mbqsxm32mz9nnwc9ylynbvgrhmn", + "license": "mit" + }, + { + "pname": "es_core_news_lg", + "version": "3.0.0", + "sha256": "0832w8qmg0fp2q8329ndlbbzpfkpbw9v38ny7106a45xaz0rn2xc", + "license": "gpl3" + }, + { + "pname": "es_core_news_md", + "version": "3.0.0", + "sha256": "01is980r63a5418jq917scapzkl9xydj56lrsxbr16fya0hh8qnn", + "license": "gpl3" + }, + { + "pname": "es_core_news_sm", + "version": "3.0.0", + "sha256": "1wgya0f25dgix57pb60fyl4hf2msma16d1f6cf617ypk6g3v80rb", + "license": "gpl3" + }, + { + "pname": "es_dep_news_trf", + "version": "3.0.0", + "sha256": "07lim35p0mxb75qiym79wcrak3j7wcan393260haxgwrj29rzpvv", + "license": "gpl3" + }, + { + "pname": "fr_core_news_lg", + "version": "3.0.0", + "sha256": "1frg734lb64gkm7pagqp1mj7lqpwsxxj5vyjm10yja0rkdi6kcca", + "license": "lgpllr" + }, + { + "pname": "fr_core_news_md", + "version": "3.0.0", + "sha256": "1xshr9r639hdb8vkj5nribk4lkm3a5fb7zrxj3y3p678dr53xalz", + "license": "lgpllr" + }, + { + "pname": "fr_core_news_sm", + "version": "3.0.0", + "sha256": "0n23c9rbg1b44c8yjlf6cc0g8ccj6x0rmfjg76ddmpkjaj83jwv1", + "license": "lgpllr" + }, + { + "pname": "fr_dep_news_trf", + "version": "3.0.0", + "sha256": "192l6n5yxn1ndc4fk8k759j2d5hryj9mfkpy2aminaxr4dmp2imr", + "license": "lgpllr" + }, + { + "pname": "it_core_news_lg", + "version": "3.0.0", + "sha256": "121nki732wrnfyzcflvsv54nvrz3l3hx55hkd72hlhrvjw0kvkv5", + "license": "cc-by-nc-sa-30" + }, + { + "pname": "it_core_news_md", + "version": "3.0.0", + "sha256": "0m168wrf1p6dz5kc4n5ga2h8c0d6jzxx876i3ndrg6b7z418hhi5", + "license": "cc-by-nc-sa-30" + }, + { + "pname": "it_core_news_sm", + "version": "3.0.0", + "sha256": "132v06cah8l7q4caxg6n4nw34v9jd8y8cqp20njryx4nirm9c36l", + "license": "cc-by-nc-sa-30" + }, + { + "pname": "lt_core_news_lg", + "version": "3.0.0", + "sha256": "034qycqpbdiyzhpzjz92kpnx6z2nai70dddz75r48hylzlw1d92h", + "license": "cc-by-sa-40" + }, + { + "pname": "lt_core_news_md", + "version": "3.0.0", + "sha256": "18mb2lmrjwnsc7s4yaq3yvdbh8p8p1k0xpm8cqn521hanpr0jqj3", + "license": "cc-by-sa-40" + }, + { + "pname": "lt_core_news_sm", + "version": "3.0.0", + "sha256": "1p998h9lnp16czj3gg8781gywg17dap2h9f8qc6f87daxyc9bdjs", + "license": "cc-by-sa-40" + }, + { + "pname": "mk_core_news_lg", + "version": "3.0.0", + "sha256": "1fmrpgq9plndid7402wkybidpi0phnybb3031jxppan99ihr3hfj", + "license": "cc-by-sa-40" + }, + { + "pname": "mk_core_news_md", + "version": "3.0.0", + "sha256": "1mnabkyjxph2xa4g2an5rqp24d4gbq969ln27zpjycyiwxlkz7vl", + "license": "cc-by-sa-40" + }, + { + "pname": "mk_core_news_sm", + "version": "3.0.0", + "sha256": "1ax6pl61n0p4qf4wcd6c7d42zqjrgh3vhlpl6xby57a78547asxr", + "license": "cc-by-sa-40" + }, + { + "pname": "nb_core_news_lg", + "version": "3.0.0", + "sha256": "07a8nsfswlpb2jc2afzf201bjkl2nlz40kqmjx3dbva8jphj3ljs", + "license": "mit" + }, + { + "pname": "nb_core_news_md", + "version": "3.0.0", + "sha256": "0y1vydhhgb6cifq7k4vc7dy4jl6wb1z6pklbv65v6nxl7rhn76fz", + "license": "mit" + }, + { + "pname": "nb_core_news_sm", + "version": "3.0.0", + "sha256": "1lk1869cb2176j6lvd8lraclfl706p12m1gvvf1ixm99ra8zkxhs", + "license": "mit" + }, + { + "pname": "nl_core_news_lg", + "version": "3.0.0", + "sha256": "0iq4ayzh9g9gil4l8kcl5qcm0l16hymavsqgiczf3ddvamciqaxs", + "license": "cc-by-sa-40" + }, + { + "pname": "nl_core_news_md", + "version": "3.0.0", + "sha256": "0g9dkzwxndcf05bnhkd9fzqj7n614naspyhalg6h9h1kb7v3m2ak", + "license": "cc-by-sa-40" + }, + { + "pname": "nl_core_news_sm", + "version": "3.0.0", + "sha256": "1l4mk3gs15yc5kssy4x4lyab9kmg9y199h4hvizwh8y1ifqbqy03", + "license": "cc-by-sa-40" + }, + { + "pname": "pl_core_news_lg", + "version": "3.0.0", + "sha256": "14ldch7rps1qxh3ldczh7f29ra3dq2kxaxpfbx7r6f1xpmk5s1rv", + "license": "gpl3" + }, + { + "pname": "pl_core_news_md", + "version": "3.0.0", + "sha256": "0fx6ipd8ll2d0w8qwn9cjw0q7w0r3l40467d6mizi4mx93q7m7iw", + "license": "gpl3" + }, + { + "pname": "pl_core_news_sm", + "version": "3.0.0", + "sha256": "0p1gcniyrn9qya4wg1qd6ijfchc7lhk0dh4iba8y71mss3n162fs", + "license": "gpl3" + }, + { + "pname": "pt_core_news_lg", + "version": "3.0.0", + "sha256": "1vsw1ng364466jz6ffyj9dj3jh4s68gk7csxylc1fj7wac8jxrbj", + "license": "cc-by-sa-40" + }, + { + "pname": "pt_core_news_md", + "version": "3.0.0", + "sha256": "11laikyd6m9zprk7bnfn0v2lixvkcgvpv95dp0zpc0q2izmky6q8", + "license": "cc-by-sa-40" + }, + { + "pname": "pt_core_news_sm", + "version": "3.0.0", + "sha256": "12d59q1gvpx8dj48iq17sindd6wid09hnjb4fw0rb00bb28rmqk1", + "license": "cc-by-sa-40" + }, + { + "pname": "ro_core_news_lg", + "version": "3.0.0", + "sha256": "11mkip5piy6g7rg51ljqjn61s4ydlafl6qp3v29zmm3lghc66h8c", + "license": "cc-by-sa-40" + }, + { + "pname": "ro_core_news_md", + "version": "3.0.0", + "sha256": "1jyf3khki7xqbp6ir0p4y2p7rdhs36zq2i1960ik4kr2mhnzrblg", + "license": "cc-by-sa-40" + }, + { + "pname": "ro_core_news_sm", + "version": "3.0.0", + "sha256": "0gc61gdfgji92mjdpznkf30nl1fz7378h9bz8dlhvnc401hjzsky", + "license": "cc-by-sa-40" + }, + { + "pname": "ru_core_news_lg", + "version": "3.0.0", + "sha256": "1x1hxvhki62ypj3x0s4syfhz3znlflp36qkp4l2g2sbxjj2qw7n3", + "license": "mit" + }, + { + "pname": "ru_core_news_md", + "version": "3.0.0", + "sha256": "0ks0qdyq6627cbg8fbbhvr83d3m8njs2aj8pri540gz9nrbj5479", + "license": "mit" + }, + { + "pname": "ru_core_news_sm", + "version": "3.0.0", + "sha256": "1x3bmd7f0fqf03wds01imwpbv4xng1qq9iq61m8rbqvskm5jlzbb", + "license": "mit" + }, + { + "pname": "xx_ent_wiki_sm", + "version": "3.0.0", + "sha256": "1115vap4c6snvkwq8bmc8dld1mw5ky0w9n112hadp85pv012ccds", + "license": "mit" + }, + { + "pname": "xx_sent_ud_sm", + "version": "3.0.0", + "sha256": "062g3xfb3fp33b56wa4fj84smr5rlc0dbja102khxnqm2aakk99k", + "license": "cc-by-sa-30" + }, + { + "pname": "zh_core_web_lg", + "version": "3.0.0", + "sha256": "1ai34fc2wfmb35f1zissddf6jjqpg51wqiyqqq35h03jyf4731jr", + "license": "mit" + }, + { + "pname": "zh_core_web_md", + "version": "3.0.0", + "sha256": "10npzl8nvyj4jdn2f9iai9inq5c4x3hxdk0ycgg9wcgqaj09gnxa", + "license": "mit" + }, + { + "pname": "zh_core_web_sm", + "version": "3.0.0", + "sha256": "1f9x5lr8vnvb1n8hc59vm2xi6kv2rj78x1vm916z6ic3vg7vwl1h", + "license": "mit" + }, + { + "pname": "zh_core_web_trf", + "version": "3.0.0", + "sha256": "178w8dfcvx4aabasid6r0pnwqd5k02cvlq35siqjgfn7j3zb56z0", + "license": "mit" + } +] diff --git a/pkgs/development/python-modules/spacy/models.nix b/pkgs/development/python-modules/spacy/models.nix index 8c57d2e0d262..c34bbdfb83d8 100644 --- a/pkgs/development/python-modules/spacy/models.nix +++ b/pkgs/development/python-modules/spacy/models.nix @@ -1,4 +1,12 @@ -{ lib, buildPythonPackage, fetchurl, jieba, pkuseg, spacy }: +{ lib +, buildPythonPackage +, fetchurl +, jieba +, pymorphy2 +, sentencepiece +, spacy +, spacy-pkuseg +, spacy-transformers }: let buildModelPackage = { pname, version, sha256, license }: let @@ -12,7 +20,15 @@ let }; propagatedBuildInputs = [ spacy ] - ++ lib.optionals (lang == "zh") [ jieba pkuseg ]; + ++ lib.optionals (lang == "zh") [ jieba spacy-pkuseg ] + ++ lib.optionals (lib.hasSuffix "_trf" pname) [ spacy-transformers ] + ++ lib.optionals (lang == "ru") [ pymorphy2 ] + ++ lib.optionals (pname == "fr_dep_news_trf") [ sentencepiece ]; + + postPatch = lib.optionals (pname == "fr_dep_news_trf") '' + substituteInPlace meta.json \ + --replace "sentencepiece==0.1.91" "sentencepiece>=0.1.91" + ''; pythonImportsCheck = [ pname ]; diff --git a/pkgs/development/python-modules/textacy/default.nix b/pkgs/development/python-modules/textacy/default.nix index 31b02e3f2641..9f9fe685c952 100644 --- a/pkgs/development/python-modules/textacy/default.nix +++ b/pkgs/development/python-modules/textacy/default.nix @@ -9,7 +9,7 @@ , pyphen , pytest , requests -, scikitlearn +, scikit-learn , scipy , spacy , srsly @@ -35,7 +35,7 @@ buildPythonPackage rec { pyemd pyphen requests - scikitlearn + scikit-learn scipy spacy srsly diff --git a/pkgs/development/python-modules/umap-learn/default.nix b/pkgs/development/python-modules/umap-learn/default.nix index f888704e6a8c..fcf96a715f15 100644 --- a/pkgs/development/python-modules/umap-learn/default.nix +++ b/pkgs/development/python-modules/umap-learn/default.nix @@ -3,7 +3,7 @@ , fetchFromGitHub , nose , numpy -, scikitlearn +, scikit-learn , scipy , numba , pynndescent @@ -24,7 +24,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy - scikitlearn + scikit-learn scipy numba pynndescent diff --git a/pkgs/development/python-modules/userpath/default.nix b/pkgs/development/python-modules/userpath/default.nix index 8366a56158dd..237293370aac 100644 --- a/pkgs/development/python-modules/userpath/default.nix +++ b/pkgs/development/python-modules/userpath/default.nix @@ -2,19 +2,18 @@ , buildPythonPackage , fetchPypi , click -, distro }: buildPythonPackage rec { pname = "userpath"; - version = "1.4.1"; + version = "1.5.0"; src = fetchPypi { inherit pname version; - sha256="0mfjmvx286z1dmnrc7bm65x8gj8qrmkcyagl0vf5ywfq0bm48591"; + sha256="0fj2lj9vcns5sxv72v3ggrszcl7j1jd9a6ycnsl00218nycliy31"; }; - propagatedBuildInputs = [ click distro ]; + propagatedBuildInputs = [ click ]; # test suite is difficult to emulate in sandbox due to shell manipulation doCheck = false; diff --git a/pkgs/development/python-modules/vowpalwabbit/default.nix b/pkgs/development/python-modules/vowpalwabbit/default.nix index da13ad21026d..c48221132043 100644 --- a/pkgs/development/python-modules/vowpalwabbit/default.nix +++ b/pkgs/development/python-modules/vowpalwabbit/default.nix @@ -11,7 +11,7 @@ , pygments , numpy , scipy -, scikitlearn }: +, scikit-learn }: buildPythonPackage rec { pname = "vowpalwabbit"; @@ -36,7 +36,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy - scikitlearn + scikit-learn scipy ]; diff --git a/pkgs/development/python-modules/watchdog/default.nix b/pkgs/development/python-modules/watchdog/default.nix index 7d7603d3eb0e..9d96977088b5 100644 --- a/pkgs/development/python-modules/watchdog/default.nix +++ b/pkgs/development/python-modules/watchdog/default.nix @@ -11,11 +11,11 @@ buildPythonPackage rec { pname = "watchdog"; - version = "2.1.0"; + version = "2.1.1"; src = fetchPypi { inherit pname version; - sha256 = "sha256-VTFu+rUvZZuLe1lzBoC/snrAA1IvJMRPa81gxONzbM0="; + sha256 = "sha256-KJREC06pWm70xdFS3u2+JwyuRgkmgnELcCigTWppgPY="; }; buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ]; diff --git a/pkgs/development/python-modules/webssh/default.nix b/pkgs/development/python-modules/webssh/default.nix new file mode 100644 index 000000000000..00aff794372d --- /dev/null +++ b/pkgs/development/python-modules/webssh/default.nix @@ -0,0 +1,22 @@ +{ lib, buildPythonPackage, fetchPypi, tornado, paramiko }: + +buildPythonPackage rec { + pname = "webssh"; + version = "1.5.3"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-Au6PE8jYm8LkEp0B1ymW//ZkrkcV0BauwufQmrHLEU4="; + }; + + propagatedBuildInputs = [ tornado paramiko ]; + + pythonImportsCheck = [ "webssh" ]; + + meta = with lib; { + homepage = "https://github.com/huashengdun/webssh/"; + description = "Web based ssh client"; + license = licenses.mit; + maintainers = with maintainers; [ davidtwco ]; + }; +} diff --git a/pkgs/development/python-modules/word2vec/default.nix b/pkgs/development/python-modules/word2vec/default.nix index 259566c8fc26..bda8f59d2ef4 100644 --- a/pkgs/development/python-modules/word2vec/default.nix +++ b/pkgs/development/python-modules/word2vec/default.nix @@ -4,7 +4,7 @@ , fetchzip , cython , numpy -, scikitlearn +, scikit-learn , six , setuptools_scm , gcc @@ -30,7 +30,7 @@ buildPythonPackage rec { nativeBuildInputs = [ setuptools_scm gcc ]; - propagatedBuildInputs = [ cython numpy scikitlearn six ]; + propagatedBuildInputs = [ cython numpy scikit-learn six ]; checkInputs = [ pytest pytestcov ]; diff --git a/pkgs/development/python-modules/xgboost/default.nix b/pkgs/development/python-modules/xgboost/default.nix index b113e2c37090..4f02d72c9a18 100644 --- a/pkgs/development/python-modules/xgboost/default.nix +++ b/pkgs/development/python-modules/xgboost/default.nix @@ -2,7 +2,7 @@ , pytestCheckHook , cmake , scipy -, scikitlearn +, scikit-learn , stdenv , xgboost , substituteAll @@ -22,7 +22,7 @@ buildPythonPackage { propagatedBuildInputs = [ scipy ]; checkInputs = [ pytestCheckHook - scikitlearn + scikit-learn pandas matplotlib graphviz diff --git a/pkgs/development/tools/analysis/codeql/default.nix b/pkgs/development/tools/analysis/codeql/default.nix index fb0cf4217abc..687d928fce3f 100644 --- a/pkgs/development/tools/analysis/codeql/default.nix +++ b/pkgs/development/tools/analysis/codeql/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { pname = "codeql"; - version = "2.5.3"; + version = "2.5.4"; dontConfigure = true; dontBuild = true; @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { src = fetchzip { url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip"; - sha256 = "sha256-+bVbl6cuWrG+75AN5a1SUI8AXJq8ThnOpITPf6S2uEI="; + sha256 = "sha256-UYiyF0Ij6zWjJUs7GZtUVTZbFQmN21/O/64X4JV5+O4="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix b/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix index 1dfe784ec254..711b971c2d88 100644 --- a/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix +++ b/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix @@ -1,85 +1,22 @@ -{ buildBazelPackage -, cacert +{ buildGoModule , fetchFromGitHub -, git -, go , lib -, stdenv }: -buildBazelPackage rec { +buildGoModule rec { pname = "bazel-remote"; - version = "1.0.0"; + version = "2.0.1"; src = fetchFromGitHub { owner = "buchgr"; - repo = "bazel-remote"; + repo = pname; rev = "v${version}"; - sha256 = "1fpdw139d5q1377qnqbgkahmdr4mdaa17d2m10wkyvyvijwm4r2m"; + sha256 = "193amcx4nk7mr51jcawym46gizqmfkvksjxm64pf7s3wraf00v01"; }; - nativeBuildInputs = [ go git ]; + vendorSha256 = "1sxv9mya8plkn3hpjgfpzgwlh4m3cbhpywqv86brj2h9i4ad0gl5"; - bazelTarget = "//:bazel-remote"; - - removeRulesCC = false; - - # this is to work around `test -f` failing when called by gazelle - # https://github.com/bazelbuild/bazel-gazelle/blob/v0.19.1/internal/go_repository.bzl#L135 - patches = [ ./disable_build_file_generation.patch ]; - - fetchAttrs = { - preBuild = '' - patchShebangs . - - # tell rules_go to use the Go binary found in the PATH - sed -e 's:go_register_toolchains():go_register_toolchains(go_version = "host"):g' -i WORKSPACE - - # tell rules_go to invoke GIT with custom CAINFO path - export GIT_SSL_CAINFO="${cacert}/etc/ssl/certs/ca-bundle.crt" - - # force gazelle to use the nix go cache rather than its own - # export GO_REPOSITORY_USE_HOST_CACHE=1 - ''; - - preInstall = '' - # Remove the go_sdk (it's just a copy of the go derivation) and all - # references to it from the marker files. Bazel does not need to download - # this sdk because we have patched the WORKSPACE file to point to the one - # currently present in PATH. Without removing the go_sdk from the marker - # file, the hash of it will change anytime the Go derivation changes and - # that would lead to impurities in the marker files which would result in - # a different sha256 for the fetch phase. - rm -rf $bazelOut/external/{go_sdk,\@go_sdk.marker} - sed -e '/^FILE:@go_sdk.*/d' -i $bazelOut/external/\@*.marker - - # Remove the gazelle repository cache as it contains built binaries - chmod -R u+w $bazelOut/external/bazel_gazelle_go_repository_cache - rm -rf $bazelOut/external/{bazel_gazelle_go_repository_cache,\@bazel_gazelle_go_repository_cache.marker} - sed -e '/^FILE:@bazel_gazelle_go_repository_cache.*/d' -i $bazelOut/external/\@*.marker - - # Remove the gazelle tools, they contain go binaries that are built - # non-deterministically. As long as the gazelle version matches the tools - # should be equivalent. - rm -rf $bazelOut/external/{bazel_gazelle_go_repository_tools,\@bazel_gazelle_go_repository_tools.marker} - sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker - ''; - - sha256 = "1vijh3nl30n8k6xlx6in92pzs70x15akbqiqalk8apgvphvdz8vy"; - }; - - buildAttrs = { - preBuild = '' - patchShebangs . - - # tell rules_go to use the Go binary found in the PATH - sed -e 's:go_register_toolchains():go_register_toolchains(go_version = "host"):g' -i WORKSPACE - ''; - - installPhase = '' - install -Dm755 bazel-bin/*_pure_stripped/bazel-remote $out/bin/bazel-remote - ''; - }; + doCheck = false; meta = with lib; { homepage = "https://github.com/buchgr/bazel-remote"; @@ -87,6 +24,5 @@ buildBazelPackage rec { license = licenses.asl20; maintainers = [ maintainers.uri-canva ]; platforms = platforms.darwin ++ platforms.linux; - broken = stdenv.isDarwin; }; } diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix index 51b97b242d5c..90b17ed9bba9 100644 --- a/pkgs/development/tools/build-managers/leiningen/default.nix +++ b/pkgs/development/tools/build-managers/leiningen/default.nix @@ -3,17 +3,17 @@ stdenv.mkDerivation rec { pname = "leiningen"; - version = "2.9.5"; + version = "2.9.6"; src = fetchurl { url = "https://raw.github.com/technomancy/leiningen/${version}/bin/lein-pkg"; - sha256 = "12kv3286a2vkm3qpm2msiks87mkspxddgl7bwiacdias9dfda09n"; + sha256 = "0a8lq0yalar8szw155cxa8kywnk6yvakwi3xmxm1ahivn7i5hjq9"; }; jarsrc = fetchurl { # NOTE: This is actually a .jar, Github has issues url = "https://github.com/technomancy/leiningen/releases/download/${version}/${pname}-${version}-standalone.zip"; - sha256 = "1shyvg1471sc3bv4h3ax51626xw8a8w05f43bny6gmp8pyc0qjfz"; + sha256 = "1f3hb57rqp9qkh5n2wf65dvxraf21y15s3g643f2fhzc7vvl7ia1"; }; JARNAME = "${pname}-${version}-standalone.jar"; diff --git a/pkgs/development/tools/build-managers/rebar3/default.nix b/pkgs/development/tools/build-managers/rebar3/default.nix index 16b630f36b9d..5867db0b573b 100644 --- a/pkgs/development/tools/build-managers/rebar3/default.nix +++ b/pkgs/development/tools/build-managers/rebar3/default.nix @@ -1,10 +1,11 @@ { lib, stdenv, fetchFromGitHub, - fetchHex, erlang, makeWrapper }: + fetchHex, erlang, makeWrapper, + writeScript, common-updater-scripts, coreutils, git, gnused, nix, rebar3-nix }: let version = "3.15.1"; owner = "erlang"; - deps = import ./rebar-deps.nix { inherit fetchHex; }; + deps = import ./rebar-deps.nix { inherit fetchFromGitHub fetchHex; }; rebar3 = stdenv.mkDerivation rec { pname = "rebar3"; inherit version erlang; @@ -18,8 +19,6 @@ let sha256 = "1pcy5m79g0l9l3d8lkbx6cq1w87z1g3sa6wwvgbgraj2v3wkyy5g"; }; - bootstrapper = ./rebar3-nix-bootstrap; - buildInputs = [ erlang ]; postPatch = '' @@ -63,6 +62,31 @@ let license = lib.licenses.asl20; }; + passthru.updateScript = writeScript "update.sh" '' + #!${stdenv.shell} + set -ox errexit + PATH=${ + lib.makeBinPath [ + common-updater-scripts + coreutils + git + gnused + nix + (rebar3WithPlugins { globalPlugins = [rebar3-nix]; }) + ] + } + latest=$(list-git-tags https://github.com/${owner}/${pname}.git | sed -n '/[\d\.]\+/p' | sort -V | tail -1) + if [ "$latest" != "${version}" ]; then + nixpkgs="$(git rev-parse --show-toplevel)" + nix_path="$nixpkgs/pkgs/development/tools/build-managers/rebar3" + update-source-version rebar3 "$latest" --version-key=version --print-changes --file="$nix_path/default.nix" + tmpdir=$(mktemp -d) + cp -R $(nix-build $nixpkgs --no-out-link -A rebar3.src)/* "$tmpdir" + (cd "$tmpdir" && rebar3 nix lock -o "$nix_path/rebar-deps.nix") + else + echo "rebar3 is already up-to-date" + fi + ''; }; rebar3WithPlugins = { plugins ? [ ], globalPlugins ? [ ] }: let @@ -80,7 +104,7 @@ let })); in stdenv.mkDerivation { pname = "rebar3-with-plugins"; - inherit (rebar3) version bootstrapper; + inherit (rebar3) version; nativeBuildInputs = [ erlang makeWrapper ]; unpackPhase = "true"; diff --git a/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix b/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix index 60dfc0b5b83f..3aa1d1c165d3 100644 --- a/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix +++ b/pkgs/development/tools/build-managers/rebar3/rebar-deps.nix @@ -1,4 +1,5 @@ -{ fetchHex }: +# Generated by rebar3_nix +{ fetchHex, fetchFromGitHub }: { ssl_verify_fun = fetchHex { pkg = "ssl_verify_fun"; diff --git a/pkgs/development/tools/build-managers/rebar3/rebar3-nix-bootstrap b/pkgs/development/tools/build-managers/rebar3/rebar3-nix-bootstrap deleted file mode 100755 index 8bfbb8fb6859..000000000000 --- a/pkgs/development/tools/build-managers/rebar3/rebar3-nix-bootstrap +++ /dev/null @@ -1,228 +0,0 @@ -#!/usr/bin/env escript -%% -*- erlang-indent-level: 4;indent-tabs-mode: nil -*- -%%! -smp enable -%%% --------------------------------------------------------------------------- -%%% @doc -%%% The purpose of this command is to prepare a rebar3 project so that -%%% rebar3 understands that the dependencies are all already -%%% installed. If you want a hygienic build on nix then you must run -%%% this command before running rebar3. I suggest that you add a -%%% `Makefile` to your project and have the bootstrap command be a -%%% dependency of the build commands. See the nix documentation for -%%% more information. -%%% -%%% This command designed to have as few dependencies as possible so -%%% that it can be a dependency of root level packages like rebar3. To -%%% that end it does many things in a fairly simplistic way. That is -%%% by design. -%%% -%%% ### Assumptions -%%% -%%% This command makes the following assumptions: -%%% -%%% * It is run in a nix-shell or nix-build environment -%%% * that all dependencies have been added to the ERL_LIBS -%%% Environment Variable - --record(data, {version - , debug_info = false - , erl_libs - , root - , name}). - --define(HEX_REGISTRY_PATH, ".cache/rebar3/hex/default/registry"). - -main(Args) -> - {ok, ArgData} = parse_args(Args), - {ok, RequiredData} = gather_required_data_from_the_environment(ArgData), - do_the_bootstrap(RequiredData). - --spec do_the_bootstrap(#data{}) -> ok. -do_the_bootstrap(RequiredData) -> - ok = bootstrap_configs(RequiredData), - ok = bootstrap_libs(RequiredData). - -%% @doc -%% Argument parsing is super simple only because we want to keep the -%% dependencies minimal. For now there can be one entry on the -%% command line: "debug-info" --spec parse_args([string()]) -> #data{}. -parse_args(Args0) -> - PossibleArgs = sets:from_list(["debug-info"]), - Args1 = sets:from_list(Args0), - Result = sets:subtract(Args1, PossibleArgs), - case sets:to_list(Result) of - [] -> - {ok, #data{debug_info = sets:is_element("debug-info", Args1)}}; - UnknownArgs -> - io:format("Unexpected command line arguments passed in: ~p~n", - [UnknownArgs]), - erlang:halt(120) - end. - - --spec bootstrap_configs(#data{}) -> ok. -bootstrap_configs(RequiredData)-> - io:format("Boostrapping app and rebar configurations~n"), - ok = if_single_app_project_update_app_src_version(RequiredData), - ok = if_debug_info_add(RequiredData). - --spec bootstrap_libs(#data{}) -> ok. -bootstrap_libs(#data{erl_libs = ErlLibs}) -> - io:format("Bootstrapping dependent libraries~n"), - Target = "_build/default/lib/", - Paths = string:tokens(ErlLibs, ":"), - CopiableFiles = - lists:foldl(fun(Path, Acc) -> - gather_directory_contents(Path) ++ Acc - end, [], Paths), - lists:foreach(fun (Path) -> - ok = link_app(Path, Target) - end, CopiableFiles). - --spec gather_dependency(string()) -> [{string(), string()}]. -gather_dependency(Path) -> - FullLibrary = filename:join(Path, "lib/erlang/lib/"), - case filelib:is_dir(FullLibrary) of - true -> - gather_directory_contents(FullLibrary); - false -> - [raw_hex(Path)] - end. - --spec raw_hex(string()) -> {string(), string()}. -raw_hex(Path) -> - [_, Name] = re:split(Path, "-hex-source-"), - {Path, erlang:binary_to_list(Name)}. - --spec gather_directory_contents(string()) -> [{string(), string()}]. -gather_directory_contents(Path) -> - {ok, Names} = file:list_dir(Path), - lists:map(fun(AppName) -> - {filename:join(Path, AppName), fixup_app_name(AppName)} - end, Names). - -%% @doc -%% Makes a symlink from the directory pointed at by Path to a -%% directory of the same name in Target. So if we had a Path of -%% {`foo/bar/baz/bash`, `baz`} and a Target of `faz/foo/foos`, the symlink -%% would be `faz/foo/foos/baz`. --spec link_app({string(), string()}, string()) -> ok. -link_app({Path, TargetFile}, TargetDir) -> - Target = filename:join(TargetDir, TargetFile), - make_symlink(Path, Target). - --spec make_symlink(string(), string()) -> ok. -make_symlink(Path, TargetFile) -> - file:delete(TargetFile), - ok = filelib:ensure_dir(TargetFile), - io:format("Making symlink from ~s to ~s~n", [Path, TargetFile]), - ok = file:make_symlink(Path, TargetFile). - -%% @doc -%% This takes an app name in the standard OTP - format -%% and returns just the app name. Why? Because rebar doesn't -%% respect OTP conventions in some cases. --spec fixup_app_name(string()) -> string(). -fixup_app_name(FileName) -> - case string:tokens(FileName, "-") of - [Name] -> Name; - [Name, _Version] -> Name; - [Name, _Version, _Tag] -> Name - end. - --spec gather_required_data_from_the_environment(#data{}) -> {ok, #data{}}. -gather_required_data_from_the_environment(ArgData) -> - {ok, ArgData#data{ version = guard_env("version") - , erl_libs = get_env("ERL_LIBS", []) - , root = code:root_dir() - , name = guard_env("name") - }}. - --spec nix2bool(any()) -> boolean(). -nix2bool("1") -> - true; -nix2bool("") -> - false. - -get_env(Name) -> - os:getenv(Name). -get_env(Name, Def) -> - case get_env(Name) of - false -> Def; - Val -> Val - end. - --spec guard_env(string()) -> string(). -guard_env(Name) -> - case get_env(Name) of - false -> - stderr("Expected Environment variable ~s! Are you sure you are " - "running in a Nix environment? Either a nix-build, " - "nix-shell, etc?~n", [Name]), - erlang:halt(1); - Variable -> - Variable - end. - -%% @doc -%% If debug info is set we need to add debug info to the list of compile options -%% --spec if_debug_info_add(#data{}) -> ok. -if_debug_info_add(#data{debug_info = true}) -> - ConfigTerms = add_debug_info(read_rebar_config()), - Text = lists:map(fun(Term) -> io_lib:format("~tp.~n", [Term]) end, - ConfigTerms), - file:write_file("rebar.config", Text); -if_debug_info_add(_) -> - ok. - --spec add_debug_info([term()]) -> [term()]. -add_debug_info(Config) -> - ExistingOpts = case lists:keysearch(erl_opts, 1, Config) of - {value, {erl_opts, ExistingOptsList}} -> ExistingOptsList; - _ -> [] - end, - case lists:member(debug_info, ExistingOpts) of - true -> - Config; - false -> - lists:keystore(erl_opts, 1, Config, - {erl_opts, [debug_info | ExistingOpts]}) - end. - --spec read_rebar_config() -> [term()]. -read_rebar_config() -> - case file:consult("rebar.config") of - {ok, Terms} -> - Terms; - _ -> - stderr("Unable to read rebar config!", []), - erlang:halt(1) - end. - - --spec if_single_app_project_update_app_src_version(#data{}) -> ok. -if_single_app_project_update_app_src_version(#data{name = Name, - version = Version}) -> - SrcFile = filename:join("src", - lists:concat([Name, ".app.src"])), - - case filelib:is_file(SrcFile) of - true -> - update_app_src_with_version(SrcFile, Version); - false -> - ok - end. - --spec update_app_src_with_version(string(), string()) -> ok. -update_app_src_with_version(SrcFile, Version) -> - {ok, [{application, Name, Details}]} = file:consult(SrcFile), - NewDetails = lists:keyreplace(vsn, 1, Details, {vsn, Version}), - ok = file:write_file(SrcFile, io_lib:fwrite("~p.\n", [{application, Name, NewDetails}])). - -%% @doc -%% Write the result of the format string out to stderr. --spec stderr(string(), [term()]) -> ok. -stderr(FormatStr, Args) -> - io:put_chars(standard_error, io_lib:format(FormatStr, Args)). diff --git a/pkgs/development/tools/build-managers/tup/default.nix b/pkgs/development/tools/build-managers/tup/default.nix index 85bf919f778f..403adaff89ed 100644 --- a/pkgs/development/tools/build-managers/tup/default.nix +++ b/pkgs/development/tools/build-managers/tup/default.nix @@ -4,37 +4,41 @@ let fuse = if stdenv.isDarwin then macfuse-stubs else fuse3; in stdenv.mkDerivation rec { pname = "tup"; - version = "0.7.10"; + version = "0.7.11"; outputs = [ "bin" "man" "out" ]; src = fetchFromGitHub { owner = "gittup"; repo = "tup"; rev = "v${version}"; - sha256 = "1qd07h4wi0743l7z2vybfvhwp61g2p2pc5qhl40672ryl24nvd1d"; + hash = "sha256-Q2Y5ErcfhLChi9Wezn8+7eNXYX2UXW1fBOqEclmgzOo="; }; nativeBuildInputs = [ pkg-config ]; buildInputs = [ fuse pcre ]; configurePhase = '' - sed -i 's/`git describe`/v${version}/g' src/tup/link.sh - sed -i 's/pcre-confg/pkg-config pcre/g' Tupfile Tuprules.tup + substituteInPlace src/tup/link.sh --replace '`git describe' '`echo ${version}' + substituteInPlace Tuprules.tup --replace 'pcre-config' 'pkg-config libpcre' ''; # Regular tup builds require fusermount to have suid, which nix cannot # currently provide in a build environment, so we bootstrap and use 'tup # generate' instead buildPhase = '' + runHook preBuild ./build.sh ./build/tup init ./build/tup generate script.sh ./script.sh + runHook postBuild ''; installPhase = '' + runHook preInstall install -D tup -t $bin/bin/ install -D tup.1 -t $man/share/man/man1/ + runHook postInstall ''; setupHook = ./setup-hook.sh; diff --git a/pkgs/development/tools/database/liquibase/default.nix b/pkgs/development/tools/database/liquibase/default.nix index ebd6064ee915..c4393821b7de 100644 --- a/pkgs/development/tools/database/liquibase/default.nix +++ b/pkgs/development/tools/database/liquibase/default.nix @@ -10,11 +10,11 @@ in stdenv.mkDerivation rec { pname = "liquibase"; - version = "4.3.4"; + version = "4.3.5"; src = fetchurl { url = "https://github.com/liquibase/liquibase/releases/download/v${version}/${pname}-${version}.tar.gz"; - sha256 = "sha256-tWk4AW2F1v+5C7Gj9I6c4JVfaQDXEVMdPoaKafa7OgE="; + sha256 = "sha256-XOYq+p76XFt7j4oxMClZox5wsaXuV5ovcB6kZJhMBlU="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix index 9b5c286ca088..d5007989bcbb 100644 --- a/pkgs/development/tools/electron/default.nix +++ b/pkgs/development/tools/electron/default.nix @@ -95,21 +95,21 @@ rec { headers = "1kfgww8wha86yw75k5yfq4mxvjlxgf1jmmzxy0p3hyr000kw26pk"; }; - electron_11 = mkElectron "11.4.5" { - x86_64-linux = "6019703cbd37787ba4f0953cb82415c3fac47c8dba3a3af925b00636792d0f89"; - x86_64-darwin = "0f28a1fb4fb6e05f3b602c7e5d8646084344257ba9db977fead9229111a8f599"; - i686-linux = "886a348e1e984b5ea3e4090168fff4ae9f262b1a158e49ff62c544add6d98bec"; - armv7l-linux = "009eeae8463a6e5ad8cdefd4ec645f38604881f7cbbcdd5e5dabb6955ef5d002"; - aarch64-linux = "3cc0f9abb03cd9b9de42a749b38748485d85ba511b205ce8de3e56a903c62211"; - headers = "10a0nf40crjq14p15g8s3ncj1w0dq1kqhfsm3aq5dppj2gx0k8dn"; + electron_11 = mkElectron "11.4.6" { + x86_64-linux = "03932a0b3328a00e7ed49947c70143b7b3455a3c1976defab2f74127cdae43e9"; + x86_64-darwin = "47de03b17ab20213c95d5817af3d7db2b942908989649202efdcd1d566dd24c3"; + i686-linux = "b76e69ad4b654384b4f1647f0cb362e78c1d99be7b814d7d32abc22294639ace"; + armv7l-linux = "cc4be8e0c348bc8db5002cf6c63c1d02fcb594f1f8bfc358168738c930098857"; + aarch64-linux = "75665dd5b2b9938bb4572344d459db65f46c5f7c637a32946c5a822cc23a77dc"; + headers = "0ip1wxgflifs86vk4xpz1555xa7yjy64ygqgd5a2g723148m52rk"; }; - electron_12 = mkElectron "12.0.6" { - x86_64-linux = "3c632a25ed6502de00d089ee493475b89dd24c2a85ffa00130a5f06001898f27"; - x86_64-darwin = "416348dad569d64d34396be6590ca15761dce91b77aab8219112464d55d00575"; - i686-linux = "2182f2a7e0564b615db3ef99204df8fd3dbd8b0da2fa2eccc960885d9360f018"; - armv7l-linux = "9482309c023a9c367a9403ad750d44a87d68510179fb767707c161672dcd6ffb"; - aarch64-linux = "3033c5dbfbdb5226f6dc528333d237fcb500c2301b1a547ba8a89e54ebc111ab"; - headers = "1la0bfigy2vq7jxrcddj4z5i2xk3cj974ymy0nmbhfnjbwqr7hg2"; + electron_12 = mkElectron "12.0.7" { + x86_64-linux = "335b77b35361fac4e2df1b7e8de5cf055e0a1a2065759cb2dd4508e8a77949fa"; + x86_64-darwin = "c3238c9962c5ad0f9de23c9314f07e03410d096d7e9f9d91016dab2856606a9e"; + i686-linux = "16023d86b88c7fccafd491c020d064caa2138d6a3493664739714555f72e5b06"; + armv7l-linux = "53cc1250ff62f2353d8dd37552cbd7bdcaaa756106faee8b809303bed00e040a"; + aarch64-linux = "3eddc0c507a43cce4e714bfe509d99218b5ab99f4660dd173aac2a895576dc71"; + headers = "1ji9aj7qr4b27m5kprsgsrl21rjphz5bbnmn6q0n2x84l429nyfb"; }; } diff --git a/pkgs/development/tools/golangci-lint/default.nix b/pkgs/development/tools/golangci-lint/default.nix index 647e8b58490e..2019c7cb3e22 100644 --- a/pkgs/development/tools/golangci-lint/default.nix +++ b/pkgs/development/tools/golangci-lint/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "golangci-lint"; - version = "1.40.0"; + version = "1.40.1"; src = fetchFromGitHub { owner = "golangci"; repo = "golangci-lint"; rev = "v${version}"; - sha256 = "sha256-/AKDwX4W9MCPXNy2izSGTugLV8DVX4A2djZla8bqDCs="; + sha256 = "sha256-5OtXfDPpdwVMnI5Pttr+XQPgJXI7YexPtBhIDeS1CXk="; }; - vendorSha256 = "sha256-HkVt0Nkq7+gvn5VNeROAmuhlCFGYx2niWb1NwJfLtRc="; + vendorSha256 = "sha256-8SPUOQ88RkU0dkyNccf+POKitXHlCRaxrIugV91gDZQ="; doCheck = false; diff --git a/pkgs/development/tools/misc/ccache/default.nix b/pkgs/development/tools/misc/ccache/default.nix index 4128118decf6..b905f5e8ed5e 100644 --- a/pkgs/development/tools/misc/ccache/default.nix +++ b/pkgs/development/tools/misc/ccache/default.nix @@ -7,26 +7,25 @@ , cmake , perl , zstd +, bashInteractive , xcodebuild , makeWrapper }: let ccache = stdenv.mkDerivation rec { pname = "ccache"; - version = "4.2.1"; + version = "4.3"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - hash = "sha256-AmgJpW7AGCSggbHp1fLO5yhXS9LIm7O77nQdDERJYAA="; + hash = "sha256-ZBxDTMUZiZJLIYbvACTFwvlss+IZiMjiL0khfM5hFCM="; }; - patches = [ - # test/run use compgen to get environment variable names, but - # compgen isn't available in non-interactive bash. - ./env-instead-of-compgen.patch + outputs = [ "out" "man" ]; + patches = [ # When building for Darwin, test/run uses dwarfdump, whereas on # Linux it uses objdump. We don't have dwarfdump packaged for # Darwin, so this patch updates the test to also use objdump on @@ -38,18 +37,22 @@ let ccache = stdenv.mkDerivation rec { ]; nativeBuildInputs = [ asciidoc cmake perl ]; - buildInputs = [ zstd ]; - outputs = [ "out" "man" ]; - doCheck = true; - checkInputs = lib.optional stdenv.isDarwin xcodebuild; + checkInputs = [ + # test/run requires the compgen function which is available in + # bashInteractive, but not bash. + bashInteractive + ] ++ lib.optional stdenv.isDarwin xcodebuild; + checkPhase = '' + runHook preCheck export HOME=$(mktemp -d) ctest --output-on-failure ${lib.optionalString stdenv.isDarwin '' -E '^(test.nocpp2|test.basedir|test.multi_arch)$' ''} + runHook postCheck ''; passthru = { diff --git a/pkgs/development/tools/misc/ccache/env-instead-of-compgen.patch b/pkgs/development/tools/misc/ccache/env-instead-of-compgen.patch deleted file mode 100644 index 313de0fa58c3..000000000000 --- a/pkgs/development/tools/misc/ccache/env-instead-of-compgen.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/test/run b/test/run -index cbdd98f0..bc930200 100755 ---- a/test/run -+++ b/test/run -@@ -346,11 +346,11 @@ expect_perm() { - } - - reset_environment() { -- while IFS= read -r name; do -+ while IFS='=' read -r name value; do - if [[ $name =~ ^CCACHE_[A-Z0-9_]*$ ]]; then - unset $name - fi -- done < <(compgen -e) -+ done < <(env) - - unset GCC_COLORS - unset TERM diff --git a/pkgs/development/tools/misc/texlab/default.nix b/pkgs/development/tools/misc/texlab/default.nix index b1e69c7c1437..39d64cb74c63 100644 --- a/pkgs/development/tools/misc/texlab/default.nix +++ b/pkgs/development/tools/misc/texlab/default.nix @@ -8,16 +8,18 @@ rustPlatform.buildRustPackage rec { pname = "texlab"; - version = "2.2.2"; + version = "3.0.0"; src = fetchFromGitHub { owner = "latex-lsp"; repo = pname; rev = "v${version}"; - sha256 = "06x7j4ppgw24xbsnyj1icaksngqbvq6mk8wfcqikzmvmifjspx9m"; + hash = "sha256-jOxneMqeyvMQWKPNha59H6qWSFmx+Z71SU2+M5VWMsA="; }; - cargoSha256 = "0mikz7lyf0csn4v1wzmcdaid3g8zm9a4mmr5f7l2s7rrlqz3jibn"; + cargoHash = "sha256-H6czxSTw93RNTaN0OJyv0RfwmGAiFkpDgUtXHCD+jrY="; + + outputs = [ "out" "man" ]; nativeBuildInputs = [ installShellFiles ]; @@ -25,7 +27,14 @@ rustPlatform.buildRustPackage rec { postInstall = '' installManPage texlab.1 - ''; + + # Remove generated dylib of html2md dependency. TexLab statically + # links to the generated rlib and doesn't reference the dylib. I + # couldn't find any way to prevent building this by passing cargo flags. + # See https://gitlab.com/Kanedias/html2md/-/blob/0.2.10/Cargo.toml#L20 + rm "$out/lib/libhtml2md.so" + rmdir "$out/lib" + ''; meta = with lib; { description = "An implementation of the Language Server Protocol for LaTeX"; diff --git a/pkgs/development/tools/omnisharp-roslyn/default.nix b/pkgs/development/tools/omnisharp-roslyn/default.nix index 51f731c9431f..e0710079b62a 100644 --- a/pkgs/development/tools/omnisharp-roslyn/default.nix +++ b/pkgs/development/tools/omnisharp-roslyn/default.nix @@ -1,6 +1,6 @@ { lib, stdenv , fetchurl -, mono6 +, mono , msbuild , dotnet-sdk , makeWrapper @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { chmod -R u+w $out/src mv $out/src/.msbuild/Current/{bin,Bin} - makeWrapper ${mono6}/bin/mono $out/bin/omnisharp \ + makeWrapper ${mono}/bin/mono $out/bin/omnisharp \ --add-flags "$out/src/OmniSharp.exe" ''; diff --git a/pkgs/development/tools/pactorio/default.nix b/pkgs/development/tools/pactorio/default.nix index ecc5ea8dc880..3790440f1b8b 100644 --- a/pkgs/development/tools/pactorio/default.nix +++ b/pkgs/development/tools/pactorio/default.nix @@ -1,4 +1,4 @@ -{ fetchFromGitHub, installShellFiles, lib, rustPlatform }: +{ fetchFromGitHub, installShellFiles, lib, stdenv, rustPlatform, Security }: rustPlatform.buildRustPackage rec { pname = "pactorio"; @@ -14,6 +14,7 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "1rac2s36j88vm231aji8d0ndfbaa2gzxwsrxrvsi0zp9cqisc6rh"; nativeBuildInputs = [ installShellFiles ]; + buildInputs = lib.optional stdenv.isDarwin Security; preFixup = '' completions=($releaseDir/build/pactorio-*/out/completions) diff --git a/pkgs/development/tools/protoc-gen-twirp/default.nix b/pkgs/development/tools/protoc-gen-twirp/default.nix index 6ca016f8e6bd..5db843e6f61f 100644 --- a/pkgs/development/tools/protoc-gen-twirp/default.nix +++ b/pkgs/development/tools/protoc-gen-twirp/default.nix @@ -2,13 +2,13 @@ buildGoPackage rec { pname = "protoc-gen-twirp"; - version = "7.2.0"; + version = "8.0.0"; src = fetchFromGitHub { owner = "twitchtv"; repo = "twirp"; rev = "v${version}"; - sha256 = "sha256-W7t36F1St0YLPowHaZSboVNnvX7E2Lg5tPWeyeUSabA="; + sha256 = "sha256-lwozRwH96nh4Zlf6ggOF+FuUEfxkN38wxygg5HXw/M0="; }; goPackagePath = "github.com/twitchtv/twirp"; diff --git a/pkgs/development/tools/rust/bindgen/default.nix b/pkgs/development/tools/rust/bindgen/default.nix index 7c5eca3cdf6d..598d01a8af5f 100644 --- a/pkgs/development/tools/rust/bindgen/default.nix +++ b/pkgs/development/tools/rust/bindgen/default.nix @@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec { sha256 = "sha256-0d8+Rkb4h1DoFUQ7u2/kPR/fUUz0YvI+hNT4iXL3mxY="; }; - cargoSha256 = "sha256-nI0Jr5vNldvo6K9GhnUXi1Lcruy6zKCDEimFTmHVwGQ="; + cargoSha256 = "0r60smhlx1992a1s1k5sxjpdqllb2xsqcimgx3ldp5fdkfphk3cw"; #for substituteAll libclang = llvmPackages.libclang.lib; diff --git a/pkgs/development/tools/rust/cargo-cache/default.nix b/pkgs/development/tools/rust/cargo-cache/default.nix index 37af0240f48c..092a0a10b1a0 100644 --- a/pkgs/development/tools/rust/cargo-cache/default.nix +++ b/pkgs/development/tools/rust/cargo-cache/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "cargo-cache"; - version = "0.6.1"; + version = "0.6.2"; src = fetchFromGitHub { owner = "matthiaskrgr"; repo = pname; rev = version; - sha256 = "sha256-qRwyNSAYuAnU17o/5zqKuvixQw7xfA6wNVzN6QRbZlY="; + sha256 = "sha256-/xP6TQcLyY1XC8r5SCkwej/I6fMaV5PqNNuvK1WbmeM="; }; - cargoSha256 = "sha256-qAq5B/BivQr8yuHtyFGTRigAa5dG2rboc0aD44/38FQ="; + cargoSha256 = "sha256-1ZNbqydRsXmMGLhqPrgNAE8bhpZCMAJO/YQbOvtiS/s="; buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ]; diff --git a/pkgs/development/tools/rust/cargo-crev/default.nix b/pkgs/development/tools/rust/cargo-crev/default.nix index 57866918f07e..9e95ee4430cc 100644 --- a/pkgs/development/tools/rust/cargo-crev/default.nix +++ b/pkgs/development/tools/rust/cargo-crev/default.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "cargo-crev"; - version = "0.19.2"; + version = "0.19.4"; src = fetchFromGitHub { owner = "crev-dev"; repo = "cargo-crev"; rev = "v${version}"; - sha256 = "sha256-aqvdAljAJsYtmxz/WtMrrnmJJRXDpqDjUn1LusoM8ns="; + sha256 = "sha256-XwwzMo06TdyOtGE9Z48mkEr6DnB/89wtMrW+UWr0G/Q="; }; - cargoSha256 = "sha256-KwnZmehh0vdR1eSPBrY6yHJR6r7mhIEgfN4soEBDTjU="; + cargoSha256 = "sha256-gA2Fg4CCi0W+GqJoNPZWw/OjNYh2U2UsC6eMZ9W1QN8="; nativeBuildInputs = [ perl pkg-config ]; diff --git a/pkgs/development/tools/rust/cargo-embed/default.nix b/pkgs/development/tools/rust/cargo-embed/default.nix index bfd346337eac..4fb994b3ee2e 100644 --- a/pkgs/development/tools/rust/cargo-embed/default.nix +++ b/pkgs/development/tools/rust/cargo-embed/default.nix @@ -1,22 +1,24 @@ { lib , rustPlatform, fetchFromGitHub -, libusb1, pkg-config, rustfmt }: +, libusb1, libftdi1, pkg-config, rustfmt }: rustPlatform.buildRustPackage rec { pname = "cargo-embed"; - version = "0.8.0"; + version = "0.10.1"; src = fetchFromGitHub { owner = "probe-rs"; repo = pname; rev = "v${version}"; - sha256 = "0klkgl7c42vhqxj6svw26lcr7rccq89bl17jn3p751x6281zvr35"; + sha256 = "1z8n883cb4jca3phi9x2kwl01xclyr00l8jxgiyd28l2jik78i5k"; }; - cargoSha256 = "1nqrij4j8787x7zqgdcscf8i436s19gwk08nyixhmf9sprcfb0ck"; + cargoSha256 = "1ir9qngxmja6cm42m40jqbga9mlfjllm23ca26wyigjv3025pi6i"; nativeBuildInputs = [ pkg-config rustfmt ]; - buildInputs = [ libusb1 ]; + buildInputs = [ libusb1 libftdi1 ]; + + cargoBuildFlags = [ "--features=ftdi" ]; meta = with lib; { description = "A cargo extension for working with microcontrollers"; diff --git a/pkgs/development/tools/rust/cargo-flash/default.nix b/pkgs/development/tools/rust/cargo-flash/default.nix index 4f0f3ea00e9a..a2679b53c4b0 100644 --- a/pkgs/development/tools/rust/cargo-flash/default.nix +++ b/pkgs/development/tools/rust/cargo-flash/default.nix @@ -23,9 +23,7 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "sha256-P7xyg9I1MhmiKlyAI9cvABcYKNxB6TSvTgMsMk5KxAQ="; nativeBuildInputs = [ pkg-config rustfmt ]; - buildInputs = [ libusb1 ] - ++ lib.optionals (!stdenv.isDarwin) [ openssl ] - ++ lib.optionals stdenv.isDarwin [ Security ]; + buildInputs = [ libusb1 openssl ] ++ lib.optionals stdenv.isDarwin [ Security ]; meta = with lib; { description = "A cargo extension for working with microcontrollers"; diff --git a/pkgs/development/tools/rust/cargo-udeps/default.nix b/pkgs/development/tools/rust/cargo-udeps/default.nix index 7e9679e9cc03..968a6ce457f1 100644 --- a/pkgs/development/tools/rust/cargo-udeps/default.nix +++ b/pkgs/development/tools/rust/cargo-udeps/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "cargo-udeps"; - version = "0.1.20"; + version = "0.1.21"; src = fetchFromGitHub { owner = "est31"; repo = pname; rev = "v${version}"; - sha256 = "sha256-1gAkc8x9rl80xkFWR2iKYOjkHplWUPWQZDbE8U5gkOM="; + sha256 = "sha256-Voei7j3WRDu70NkcJvjqPJ4ikOUupOhvFNEHHRyF6/Q="; }; - cargoSha256 = "sha256-M1UkfzNcBv00Ctl5zRNn6CMizunGC3EM8zsA6PgOaLw="; + cargoSha256 = "sha256-zMya7bEehNKIfwQtJ252sflg06P4Ra8/lgBjn4UUqRg="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/development/tools/rust/probe-run/default.nix b/pkgs/development/tools/rust/probe-run/default.nix index 7371e4bb9baf..262d8c4945eb 100644 --- a/pkgs/development/tools/rust/probe-run/default.nix +++ b/pkgs/development/tools/rust/probe-run/default.nix @@ -1,4 +1,5 @@ -{ lib, rustPlatform, fetchFromGitHub, pkg-config, libusb1 }: +{ lib, stdenv, rustPlatform, fetchFromGitHub, pkg-config, libusb1 +, libiconv, AppKit, IOKit }: rustPlatform.buildRustPackage rec { pname = "probe-run"; @@ -14,7 +15,8 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "HmDKfb8F6sGnaX64FR3No2GbBYm4bVopbjs8d35WiZQ="; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ libusb1 ]; + buildInputs = [ libusb1 ] + ++ lib.optionals stdenv.isDarwin [ libiconv AppKit IOKit ]; meta = with lib; { description = "Run embedded programs just like native ones."; diff --git a/pkgs/development/tools/rust/rust-analyzer/default.nix b/pkgs/development/tools/rust/rust-analyzer/default.nix index 8d4ae0ac369c..a038e9d65d25 100644 --- a/pkgs/development/tools/rust/rust-analyzer/default.nix +++ b/pkgs/development/tools/rust/rust-analyzer/default.nix @@ -6,14 +6,14 @@ rustPlatform.buildRustPackage rec { pname = "rust-analyzer-unwrapped"; - version = "2021-05-10"; - cargoSha256 = "sha256-PUecBFdYIJFZa5IwwNnuXOkuxtyrzWhxy3C+2jv/hvU="; + version = "2021-05-17"; + cargoSha256 = "sha256-uSBukInJ3FEMmMpG9DN3XeXm+hzUFqCrZORb4NIEJhw="; src = fetchFromGitHub { owner = "rust-analyzer"; repo = "rust-analyzer"; rev = version; - sha256 = "sha256-oz6FqRMEUUTS4X2XhpWjp2JIgl1A6wQv2OU8auwUoVM="; + sha256 = "sha256-BsabpY4LArfsDPAMsggxKu1+OQZmqRe//+a5uBcuFps="; }; patches = [ diff --git a/pkgs/development/tools/rust/rustup-toolchain-install-master/0001-dynamically-patchelf-binaries.patch b/pkgs/development/tools/rust/rustup-toolchain-install-master/0001-dynamically-patchelf-binaries.patch new file mode 100644 index 000000000000..1754ce11c4d3 --- /dev/null +++ b/pkgs/development/tools/rust/rustup-toolchain-install-master/0001-dynamically-patchelf-binaries.patch @@ -0,0 +1,61 @@ +diff --git a/src/main.rs b/src/main.rs +index 3cb6896..7f070e0 100644 +--- a/src/main.rs ++++ b/src/main.rs +@@ -275,7 +275,9 @@ fn install_single_toolchain( + + // install + if maybe_dry_client.is_some() { +- rename(&toolchain.dest, toolchain_path)?; ++ rename(&toolchain.dest, toolchain_path.clone())?; ++ nix_patchelf(toolchain_path) ++ .expect("failed to patch toolchain for NixOS"); + eprintln!( + "toolchain `{}` is successfully installed!", + toolchain.dest.display() +@@ -291,6 +293,45 @@ fn install_single_toolchain( + Ok(()) + } + ++fn nix_patchelf(mut toolchain_path: PathBuf) -> Result<(), Error> { ++ toolchain_path.push("bin"); ++ ++ for entry in toolchain_path.read_dir()? { ++ let entry = entry?; ++ if !entry.file_type()?.is_file() { ++ continue; ++ } ++ ++ eprintln!("info: you seem to be running NixOS. Attempting to patch {}", ++ entry.path().to_str().unwrap()); ++ let _ = ::std::process::Command::new("@patchelf@/bin/patchelf") ++ .arg("--set-interpreter") ++ .arg("@dynamicLinker@") ++ .arg(entry.path()) ++ .output(); ++ } ++ ++ toolchain_path.pop(); ++ toolchain_path.push("lib"); ++ ++ for entry in toolchain_path.read_dir()? { ++ let entry = entry?; ++ if !entry.file_type()?.is_file() { ++ continue; ++ } ++ ++ eprintln!("info: you seem to be running NixOS. Attempting to patch {}", ++ entry.path().to_str().unwrap()); ++ let _ = ::std::process::Command::new("@patchelf@/bin/patchelf") ++ .arg("--set-rpath") ++ .arg("@libPath@") ++ .arg(entry.path()) ++ .output(); ++ } ++ ++ Ok(()) ++} ++ + fn fetch_master_commit(client: &Client, github_token: Option<&str>) -> Result { + eprintln!("fetching master commit hash... "); + fetch_master_commit_via_git() diff --git a/pkgs/development/tools/rust/rustup-toolchain-install-master/default.nix b/pkgs/development/tools/rust/rustup-toolchain-install-master/default.nix new file mode 100644 index 000000000000..cae5453fa661 --- /dev/null +++ b/pkgs/development/tools/rust/rustup-toolchain-install-master/default.nix @@ -0,0 +1,56 @@ +{ stdenv +, lib +, fetchFromGitHub +, rustPlatform +, pkg-config +, openssl +, runCommand +, patchelf +, zlib +, Security +}: + +rustPlatform.buildRustPackage rec { + pname = "rustup-toolchain-install-master"; + version = "1.7.3"; + + src = fetchFromGitHub { + owner = "kennytm"; + repo = pname; + rev = "v${version}"; + hash = "sha256-J25ER/g8Kylw/oTIEl4Gl8i1xmhR+4JM5M5EHpl1ras="; + }; + + patches = + let + patchelfPatch = runCommand "0001-dynamically-patchelf-binaries.patch" { + CC = stdenv.cc; + patchelf = patchelf; + libPath = "$ORIGIN/../lib:${lib.makeLibraryPath [ zlib ]}"; + } + '' + export dynamicLinker=$(cat $CC/nix-support/dynamic-linker) + substitute ${./0001-dynamically-patchelf-binaries.patch} $out \ + --subst-var patchelf \ + --subst-var dynamicLinker \ + --subst-var libPath + ''; + in + lib.optionals stdenv.isLinux [ patchelfPatch ]; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ + openssl + ] ++ lib.optionals stdenv.isDarwin [ + Security + ]; + + cargoSha256 = "n7t8Ap9hdhrjmtKjfdyozf26J7yhu57pedm19CunLF4="; + + meta = with lib; { + description = "Install a rustc master toolchain usable from rustup"; + homepage = "https://github.com/kennytm/rustup-toolchain-install-master"; + license = licenses.mit; + maintainers = with maintainers; [ davidtwco ]; + }; +} diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix index d1632ebcf5d9..98fb32d8d6a2 100644 --- a/pkgs/development/web/deno/default.nix +++ b/pkgs/development/web/deno/default.nix @@ -16,15 +16,15 @@ rustPlatform.buildRustPackage rec { pname = "deno"; - version = "1.10.1"; + version = "1.10.2"; src = fetchFromGitHub { owner = "denoland"; repo = pname; rev = "v${version}"; - sha256 = "sha256-aNStR86biNHwyg3dSI+CGib3XFhL5ZJ55d29E2K9qd0="; + sha256 = "sha256-uePCEYcYahsxcgA+GDcloqqo+dr7Y2N/9nps6Y79D58="; }; - cargoSha256 = "sha256-JXjiI+fTB0YlnhKO6QfGl4YOEQNfpuWsza2TsM9fwIk="; + cargoSha256 = "sha256-6fm1RWuTVWCE6nKgkC/SRQYRXGf9SGv7kAXWNqsdQS8="; # Install completions post-install nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix index a8ae0c31ee8e..e1a519369d00 100644 --- a/pkgs/development/web/flyctl/default.nix +++ b/pkgs/development/web/flyctl/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "flyctl"; - version = "0.0.212"; + version = "0.0.217"; src = fetchFromGitHub { owner = "superfly"; repo = "flyctl"; rev = "v${version}"; - sha256 = "sha256-4BL+IhwmKiPN5G/5ut0RJcCXWy4IKPichx2dD3/TRic="; + sha256 = "sha256-7WfN+fNmr6lUvKKMwCM6QL0rClsb1uX3qk+ZQZna6kc="; }; preBuild = '' diff --git a/pkgs/development/web/insomnia/default.nix b/pkgs/development/web/insomnia/default.nix index 24b65e4e8af8..1c854368df73 100644 --- a/pkgs/development/web/insomnia/default.nix +++ b/pkgs/development/web/insomnia/default.nix @@ -16,12 +16,12 @@ let ]; in stdenv.mkDerivation rec { pname = "insomnia"; - version = "2021.1.1"; + version = "2021.3.0"; src = fetchurl { url = "https://github.com/Kong/insomnia/releases/download/core%40${version}/Insomnia.Core-${version}.deb"; - sha256 = "sha256-GPOeLSbKiaJR5ppzyJMllzM+2gSddZN7+P5ttkocuDg="; + sha256 = "sha256-RtEkWi0J3nYzT+IhdyBlGeUE2SCmhlnfw0L6sOvE4WI="; }; nativeBuildInputs = diff --git a/pkgs/development/web/twitter-bootstrap/default.nix b/pkgs/development/web/twitter-bootstrap/default.nix index b8a9f94a23f0..b8a7e6a4b8f8 100644 --- a/pkgs/development/web/twitter-bootstrap/default.nix +++ b/pkgs/development/web/twitter-bootstrap/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "bootstrap"; - version = "4.6.0"; + version = "5.0.0"; src = fetchurl { url = "https://github.com/twbs/bootstrap/releases/download/v${version}/${pname}-${version}-dist.zip"; - sha256 = "sha256-CiEUUa0mCrUSp+XCoWNs8plJxhWHZZD+K+UBJSDu1CM="; + sha256 = "sha256-CsPvq8exUL2k/b/QK9c2S68DIsDDR8qxho0WgDJ3/Vs="; }; nativeBuildInputs = [ unzip ]; diff --git a/pkgs/games/anki/bin.nix b/pkgs/games/anki/bin.nix index 54e1646fcae5..09f92b0f8481 100644 --- a/pkgs/games/anki/bin.nix +++ b/pkgs/games/anki/bin.nix @@ -3,14 +3,14 @@ let pname = "anki-bin"; # Update hashes for both Linux and Darwin! - version = "2.1.43"; + version = "2.1.44"; unpacked = stdenv.mkDerivation { inherit pname version; src = fetchurl { url = "https://github.com/ankitects/anki/releases/download/${version}/anki-${version}-linux.tar.bz2"; - sha256 = "0kadv3fxi76h7xxmb4lckkgcwiv0b7cn630l62dxa2abxibans29"; + sha256 = "01d5ll3vsd4v0ikxgamv47bkwmag15vnmsgpda5wivc3dyawc9j9"; }; installPhase = '' @@ -49,7 +49,7 @@ if stdenv.isLinux then buildFHSUserEnv (appimageTools.defaultFhsEnvArgs // { src = fetchurl { url = "https://github.com/ankitects/anki/releases/download/${version}/anki-${version}-mac.dmg"; - sha256 = "0vvgiybq1ygq7cly1r4ircgzg2cpprindr7nnlbnrmandjy2kw49"; + sha256 = "1zrdih4rjsq30480sf200pw59r42p3nq2md56kj2l641kbc7ljka"; }; nativeBuildInputs = [ undmg ]; diff --git a/pkgs/games/openxray/default.nix b/pkgs/games/openxray/default.nix index e4a742d821c0..58c82aec3659 100644 --- a/pkgs/games/openxray/default.nix +++ b/pkgs/games/openxray/default.nix @@ -3,14 +3,14 @@ , pcre, makeWrapper, fetchpatch }: let - version = "784-october-preview"; + version = "822-december-preview"; src = fetchFromGitHub { owner = "OpenXRay"; repo = "xray-16"; rev = version; - sha256 = "0q0h70gbpscdvn45wpxicljj4ji3cd2maijd5b7jhr1695h61q5y"; fetchSubmodules = true; + sha256 = "06f3zjnib7hipyl3hnc6mwcj9f50kbwn522wzdjydz8qgdg60h3m"; }; # https://github.com/OpenXRay/xray-16/issues/518 @@ -20,7 +20,7 @@ let inherit src; - postUnpack = "sourceRoot+=/Externals/cryptopp"; + sourceRoot = "source/Externals/cryptopp"; makeFlags = [ "PREFIX=${placeholder "out"}" ]; enableParallelBuilding = true; @@ -35,25 +35,30 @@ let }; }; in stdenv.mkDerivation rec { - pname = "OpenXRay"; + pname = "openxray"; inherit version src; - hardeningDisable = [ "format" ]; - cmakeFlags = [ "-DCMAKE_INCLUDE_PATH=${cryptopp}/include/cryptopp" ]; - + # TODO https://github.com/OpenXRay/GameSpy/pull/6, check if merged in version > 822 + # Fixes format hardening patches = [ (fetchpatch { - url = "https://github.com/OpenXRay/xray-16/commit/4532cba11e98808c92e56e246188863261ef9201.patch"; - sha256 = "1hrm4rkkg946ai95krzpf3isryzbb2vips63gxf481plv4vlcfc9"; + url = "https://github.com/OpenXRay/GameSpy/pull/6/commits/155af876281f5d94f0142886693314d97deb2d4c.patch"; + sha256 = "1l0vcgvzzx8n56shpblpfdhvpr6c12fcqf35r0mflaiql8q7wn88"; + stripLen = 1; + extraPrefix = "Externals/GameSpy/"; }) ]; + cmakeFlags = [ "-DCMAKE_INCLUDE_PATH=${cryptopp}/include/cryptopp" ]; + buildInputs = [ glew freeimage liblockfile openal cryptopp libtheora SDL2 lzo libjpeg libogg tbb pcre ]; + nativeBuildInputs = [ cmake makeWrapper ]; + # https://github.com/OpenXRay/xray-16/issues/786 preConfigure = '' substituteInPlace src/xrCore/xrCore.cpp \ --replace /usr/share $out/share @@ -71,7 +76,7 @@ in stdenv.mkDerivation rec { license = licenses.unfree // { url = "https://github.com/OpenXRay/xray-16/blob/xd_dev/License.txt"; }; - maintainers = [ ]; + maintainers = with maintainers; [ OPNA2608 ]; platforms = [ "x86_64-linux" "i686-linux" ]; }; } diff --git a/pkgs/games/privateer/0001-fix-VSFile-constructor.patch b/pkgs/games/privateer/0001-fix-VSFile-constructor.patch deleted file mode 100644 index 05b02fe5d73b..000000000000 --- a/pkgs/games/privateer/0001-fix-VSFile-constructor.patch +++ /dev/null @@ -1,25 +0,0 @@ -From e779a2b8d53e7e4721ce5ddb8e8b1caa753b66dd Mon Sep 17 00:00:00 2001 -From: Florian Friesdorf -Date: Wed, 4 Jan 2012 23:32:19 +0100 -Subject: [PATCH] fix VSFile constructor - ---- - src/vsfilesystem.h | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/src/vsfilesystem.h b/src/vsfilesystem.h -index 4bb7a66..71bf9b9 100644 ---- a/src/vsfilesystem.h -+++ b/src/vsfilesystem.h -@@ -291,7 +291,7 @@ namespace VSFileSystem - VSFile(); - VSFile( const char * buffer, long size, VSFileType type=ZoneBuffer, VSFileMode=ReadOnly); - VSFile( const char * filename, VSFileType type=UnknownFile, VSFileMode=ReadOnly); -- VSFile( const string &filename, VSFileType type=UnknownFile) { VSFile::VSFile( filename.c_str(), type); } -+ VSFile( const string &filename, VSFileType type=UnknownFile) { VSFile( filename.c_str(), type); } - ~VSFile(); - - FILE * GetFP() { return this->fp; } // This is still needed for special cases (when loading PNG files) --- -1.7.8 - diff --git a/pkgs/games/privateer/default.nix b/pkgs/games/privateer/default.nix deleted file mode 100644 index f3ea6dc8cb19..000000000000 --- a/pkgs/games/privateer/default.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ lib, stdenv, fetchsvn, boost, cmake, ffmpeg_3, freeglut, glib, - gtk2, libjpeg, libpng, libpthreadstubs, libvorbis, libXau, libXdmcp, - libXmu, libGLU, libGL, openal, pixman, pkg-config, python27, SDL }: - -stdenv.mkDerivation { - name = "privateer-1.03"; - - src = fetchsvn { - #url = "mirror://sourceforge/project/privateer/Wing%20Commander%20Privateer/Privateer%20Gemini%20Gold%201.03/PrivateerGold1.03.bz2.bin"; - url = "https://privateer.svn.sourceforge.net/svnroot/privateer/privgold/trunk/engine"; - rev = "294"; - sha256 = "e1759087d4565d3fc95e5c87d0f6ddf36b2cd5befec5695ec56ed5f3cd144c63"; - }; - - nativeBuildInputs = [ cmake pkg-config ]; - buildInputs = - [ boost ffmpeg_3 freeglut glib gtk2 libjpeg libpng - libpthreadstubs libvorbis libXau libXdmcp libXmu libGLU libGL openal - pixman python27 SDL ]; - - patches = [ ./0001-fix-VSFile-constructor.patch ]; - - preConfigure = '' - NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags gtk+-2.0)" - ''; - - installPhase = '' - mkdir -p $out/bin - cp vegastrike $out/bin - cp vegaserver $out/bin - ''; - - meta = with lib; { - homepage = "http://privateer.sourceforge.net/"; - description = "Adventure space flight simulation computer game"; - license = licenses.gpl2Plus; # and a special license for art data - # https://sourceforge.net/p/privateer/code/HEAD/tree/privgold/trunk/data/art-license.txt - - maintainers = with maintainers; [ ]; - platforms = with platforms; linux ++ darwin; - hydraPlatforms = []; - broken = true; # it won't build - }; -} diff --git a/pkgs/games/steam/fhsenv.nix b/pkgs/games/steam/fhsenv.nix index de2163d67844..44bee8ff11a1 100644 --- a/pkgs/games/steam/fhsenv.nix +++ b/pkgs/games/steam/fhsenv.nix @@ -105,6 +105,7 @@ in buildFHSUserEnv rec { gst_all_1.gstreamer gst_all_1.gst-plugins-ugly gst_all_1.gst-plugins-base + json-glib # paradox launcher (Stellaris) libdrm libxkbcommon # paradox launcher mono diff --git a/pkgs/games/ultrastardx/default.nix b/pkgs/games/ultrastardx/default.nix index a486b899bb46..7b3390d9fda5 100644 --- a/pkgs/games/ultrastardx/default.nix +++ b/pkgs/games/ultrastardx/default.nix @@ -31,28 +31,41 @@ let in stdenv.mkDerivation rec { pname = "ultrastardx"; - version = "2020.4.0"; + version = "2021-04-03"; src = fetchFromGitHub { owner = "UltraStar-Deluxe"; repo = "USDX"; - rev = "v${version}"; - sha256 = "0vmfv8zpyf8ymx3rjydpd7iqis080lni94vb316vfxkgvjmqbhym"; + rev = "d49e916705092f3d765d85d276b283b9e7e232a6"; + sha256 = "0sdcz2vc8i2z50nj7zbkdpxx2mvx0m0927lfsj7d7qr0p8vkm0wa"; }; nativeBuildInputs = [ pkg-config autoreconfHook ]; buildInputs = [ fpc libpng ] ++ sharedLibs; - patches = [ - (fetchpatch { - name = "fpc-3.2-support.patch"; - url = "https://github.com/UltraStar-Deluxe/USDX/commit/1b8e8714c1523ef49c2fd689a1545d097a3d76d7.patch"; - sha256 = "02zmjymj9w1mkpf7armdpf067byvml6lprs1ca4lhpkv45abddp4"; - }) - ]; - postPatch = '' substituteInPlace src/config.inc.in \ --subst-var-by libpcre_LIBNAME libpcre.so.1 + + # ultrastardx binds to libffmpeg (and sublibs), specifying a very restrictive + # upper bounds on the minor versions of .so files. + # We can assume ffmpeg won’t break any major ABI compatibility, since their + # patch version seems to always stay at 100, + # and their minor version changes quite frequently. + sed \ + -e 's/^ LIBAVCODEC_MAX_VERSION_MINOR.*$/ LIBAVCODEC_MAX_VERSION_MINOR = 1000;/' \ + -i src/lib/ffmpeg-4.0/avcodec.pas + sed \ + -e 's/^ LIBAVFORMAT_MAX_VERSION_MINOR.*$/ LIBAVFORMAT_MAX_VERSION_MINOR = 1000;/' \ + -i src/lib/ffmpeg-4.0/avformat.pas + sed \ + -e 's/^ LIBAVUTIL_MAX_VERSION_MINOR.*$/ LIBAVUTIL_MAX_VERSION_MINOR = 1000;/' \ + -i src/lib/ffmpeg-4.0/avutil.pas + sed \ + -e 's/^ LIBSWRESAMPLE_MAX_VERSION_MINOR.*$/ LIBSWRESAMPLE_MAX_VERSION_MINOR = 1000;/' \ + -i src/lib/ffmpeg-4.0/swresample.pas + sed \ + -e 's/^ LIBSWSCALE_MAX_VERSION_MINOR.*$/ LIBSWSCALE_MAX_VERSION_MINOR = 1000;/' \ + -i src/lib/ffmpeg-4.0/swscale.pas ''; preBuild = with lib; diff --git a/pkgs/misc/drivers/hplip/default.nix b/pkgs/misc/drivers/hplip/default.nix index 9fcdbd8c515e..98a67a75f0bc 100644 --- a/pkgs/misc/drivers/hplip/default.nix +++ b/pkgs/misc/drivers/hplip/default.nix @@ -36,13 +36,13 @@ let x86_64-linux = "x86_64"; armv6l-linux = "arm32"; armv7l-linux = "arm32"; - aarch64-linux = "aarch64"; + aarch64-linux = "arm64"; }; hplipArch = hplipPlatforms.${stdenv.hostPlatform.system} or (throw "HPLIP not supported on ${stdenv.hostPlatform.system}"); - pluginArches = [ "x86_32" "x86_64" "arm32" "aarch64" ]; + pluginArches = [ "x86_32" "x86_64" "arm32" "arm64" ]; in diff --git a/pkgs/misc/emulators/ruffle/default.nix b/pkgs/misc/emulators/ruffle/default.nix index 33709fe50148..11be67b6d9ea 100644 --- a/pkgs/misc/emulators/ruffle/default.nix +++ b/pkgs/misc/emulators/ruffle/default.nix @@ -13,13 +13,13 @@ rustPlatform.buildRustPackage rec { pname = "ruffle"; - version = "nightly-2021-04-02"; + version = "nightly-2021-05-14"; src = fetchFromGitHub { owner = "ruffle-rs"; repo = pname; rev = version; - sha256 = "1diz94y53hvii28894zz65aya12v8yw1864lqpkrdbj67yc6ykdj"; + sha256 = "15azv8y7a4sgxvvhl7z45jyxj91b4nn681vband5726c7znskhwl"; }; nativeBuildInputs = [ @@ -48,7 +48,7 @@ rustPlatform.buildRustPackage rec { wrapProgram $out/bin/ruffle_desktop --prefix LD_LIBRARY_PATH ':' ${vulkan-loader}/lib ''; - cargoSha256 = "1ad7xf9h3v5h8jv5y304vxy32k52b0x2wkc3yqqf23sxky2sj843"; + cargoSha256 = "0ihy4rgw9b4yqlqs87rx700h3a8wm02wpahhg7inic1lcag4bxif"; meta = with lib; { description = "An Adobe Flash Player emulator written in the Rust programming language."; diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix index 0ea2c26a322f..250213ac0e10 100644 --- a/pkgs/misc/vim-plugins/generated.nix +++ b/pkgs/misc/vim-plugins/generated.nix @@ -401,12 +401,12 @@ final: prev: chadtree = buildVimPluginFrom2Nix { pname = "chadtree"; - version = "2021-05-16"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "ms-jpq"; repo = "chadtree"; - rev = "544df784d1cba98a50e985f2c766b21321c9788c"; - sha256 = "027ss037if1p0a4s4x93p8ydkm77m1gsra38j2j0cgz0qmw6rpf0"; + rev = "3e74c75ddb096e8128d573439a779527288ac685"; + sha256 = "0mkmla4y6g53nil6296irpb4zxa807cxj2jdr0fr2d4hp0y4xjci"; }; meta.homepage = "https://github.com/ms-jpq/chadtree/"; }; @@ -545,12 +545,12 @@ final: prev: coc-nvim = buildVimPluginFrom2Nix { pname = "coc-nvim"; - version = "2021-05-14"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "neoclide"; repo = "coc.nvim"; - rev = "33f02db3161500185cd25734d6861605281bef06"; - sha256 = "1qv04l5hli7hq38sfdgx3pfiw38fgpw4my55vrs7bx7ipk7xk4w2"; + rev = "7cfbd335ceefc0103ff3cbd39b2b4abf353f70be"; + sha256 = "088ig7pc5z78zpc1l7siffdyvql9zbampx3fcxwch7xpjidas4ba"; }; meta.homepage = "https://github.com/neoclide/coc.nvim/"; }; @@ -942,12 +942,12 @@ final: prev: denite-nvim = buildVimPluginFrom2Nix { pname = "denite-nvim"; - version = "2021-05-16"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "Shougo"; repo = "denite.nvim"; - rev = "b78ff508cdb2427c396d66b5fbc24321148f53ab"; - sha256 = "1gbdbclc0kyfdqvy9rz15s0swcv07cpijriwnsbdjskiw7936qpp"; + rev = "fb8174a07c3a19091bfdbfc9439a15466d1649fa"; + sha256 = "041c8hhq76ih0s730zyfx16svfbzqfqyy6pl686aqikixldcz41l"; }; meta.homepage = "https://github.com/Shougo/denite.nvim/"; }; @@ -1184,12 +1184,12 @@ final: prev: deoplete-nvim = buildVimPluginFrom2Nix { pname = "deoplete-nvim"; - version = "2021-05-14"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "Shougo"; repo = "deoplete.nvim"; - rev = "c870a30b18e3250534699420bd770ca60c042d49"; - sha256 = "1kv785jl31hd3gmq8pz76l4w4pw0sndnhw9zpsg1bcz7bwsw2c3h"; + rev = "55e81a95a65ed896670abdb3340888db9a57e300"; + sha256 = "1666wqczwi2xg4ghzdq7jsfsdbb2zrnkdgbhq0xjb3k8rs8921d4"; }; meta.homepage = "https://github.com/Shougo/deoplete.nvim/"; }; @@ -1232,12 +1232,12 @@ final: prev: diffview-nvim = buildVimPluginFrom2Nix { pname = "diffview-nvim"; - version = "2021-05-10"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "sindrets"; repo = "diffview.nvim"; - rev = "272a474abf7d1b64d5dcaf21f80d6fdc7b623ead"; - sha256 = "14y9gj9054dr2jiz2d1w9y03jh1mp4r04vyabj6nsjk2fg84dz38"; + rev = "daa7929d1f40485b832461fa919bd734da680e24"; + sha256 = "082mym32hwfyig199pdxw64fzfc8z56f0xfnia472vvb1saspsly"; }; meta.homepage = "https://github.com/sindrets/diffview.nvim/"; }; @@ -1727,12 +1727,12 @@ final: prev: gitsigns-nvim = buildVimPluginFrom2Nix { pname = "gitsigns-nvim"; - version = "2021-05-14"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "lewis6991"; repo = "gitsigns.nvim"; - rev = "016ad5a5d7d3f2d824ffd6b5b27f63a382b251ea"; - sha256 = "10gzdvmrmsgf07y8n1b79b8vnr37ijdzxni67ff92wwlhvqz13qg"; + rev = "705d8376423bdf9aa3ef4f3237c25106ec4aa2e6"; + sha256 = "0fa1rw5zn0z6z106iy06wqnr0mksl3r7a3dl8fhwncmsil80dlg6"; }; meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/"; }; @@ -2292,12 +2292,12 @@ final: prev: LeaderF = buildVimPluginFrom2Nix { pname = "LeaderF"; - version = "2021-05-11"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "Yggdroot"; repo = "LeaderF"; - rev = "1078dcaff8bab986245b79b26891ef592aeb0cbe"; - sha256 = "032czx26x3118j2bqgcqa4c10nknidg4dzpsk43biw66z7l6x5jf"; + rev = "db069b35c802df228a811b0d0a53cdc2c48e246b"; + sha256 = "09hr453mwlrv1vkdxk62qd03s62c14jzrflc4276vpmmrz78p03m"; }; meta.homepage = "https://github.com/Yggdroot/LeaderF/"; }; @@ -2412,12 +2412,12 @@ final: prev: lightline-vim = buildVimPluginFrom2Nix { pname = "lightline-vim"; - version = "2021-03-21"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "itchyny"; repo = "lightline.vim"; - rev = "8a712365f9708044667589d9fffd87a4825d29f6"; - sha256 = "1622qd5lizfv65m5iy3r0bl3zy8phh4anyx93kj631p836s8y6cq"; + rev = "d70d69b3418957cdf7c4993e484f8b9d3eb1603c"; + sha256 = "1kd9qna82az80ixrwxx5c7cvjqly7ahi8b1l74fp7iaxbr0p5m8w"; }; meta.homepage = "https://github.com/itchyny/lightline.vim/"; }; @@ -2484,12 +2484,12 @@ final: prev: lsp_signature-nvim = buildVimPluginFrom2Nix { pname = "lsp_signature-nvim"; - version = "2021-05-07"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "ray-x"; repo = "lsp_signature.nvim"; - rev = "de68e0754019f7ff5822f3180b067d89f014943b"; - sha256 = "009lih2s5x9nccx2i2xqb377jkclpxbw25vmznngdq47qr89ws1r"; + rev = "eb08dfbce1b8623faff6bb9a2c5c7aa8ac710c80"; + sha256 = "0bhq25lv40832z80q1fvyqz6p6cxw47miffq6cxacd0hzahw4agx"; }; meta.homepage = "https://github.com/ray-x/lsp_signature.nvim/"; }; @@ -2928,12 +2928,12 @@ final: prev: neogit = buildVimPluginFrom2Nix { pname = "neogit"; - version = "2021-05-15"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "TimUntersberger"; repo = "neogit"; - rev = "5cabfceab77bdba16bcc81d2d8c05d76c8304a57"; - sha256 = "087zzlfvdc1462rdsn1i4x1lypsqcdfh78zgwcicvgbg4ja9zsd3"; + rev = "4fb55d07e6a890d17ef6387ef4a08df112aff1cf"; + sha256 = "1slr7rm94n29i36ny00qa8rnpzgxaswjmsmrkva09gnpsik2haqn"; }; meta.homepage = "https://github.com/TimUntersberger/neogit/"; }; @@ -3084,12 +3084,12 @@ final: prev: nerdtree-git-plugin = buildVimPluginFrom2Nix { pname = "nerdtree-git-plugin"; - version = "2021-04-02"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "Xuyuanp"; repo = "nerdtree-git-plugin"; - rev = "73da0283ead8fa2bbce83d219fcab3ba1e8cf0dd"; - sha256 = "17n79pmpnjnp6nirz4m4wwgfacrg26bdzjn4xj8i6ldkff5n20km"; + rev = "4524fb465b11881409482636ae716b4965011550"; + sha256 = "0cvb33drkv3rrgbniw9bz8xkxyr4cf0lyay9waw3lczpl2wmfwbm"; }; meta.homepage = "https://github.com/Xuyuanp/nerdtree-git-plugin/"; }; @@ -3144,12 +3144,12 @@ final: prev: nnn-vim = buildVimPluginFrom2Nix { pname = "nnn-vim"; - version = "2021-05-16"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "mcchrish"; repo = "nnn.vim"; - rev = "a997a8fc9739d1bf1900c66f056e1b11a9f61443"; - sha256 = "1rdcjnfgk1yi2ick7m7xh07daarfjvxgf3w656hzarbqshpamy2a"; + rev = "c678c7e4e7ec5656c984708ad8823453ec425fa7"; + sha256 = "0kcr51vq0z5c7fhs5pdbbba2qnfqk2hl2ksprdkjf6l8nln0g8nw"; }; meta.homepage = "https://github.com/mcchrish/nnn.vim/"; }; @@ -3348,12 +3348,12 @@ final: prev: nvim-hlslens = buildVimPluginFrom2Nix { pname = "nvim-hlslens"; - version = "2021-05-16"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "kevinhwang91"; repo = "nvim-hlslens"; - rev = "4a5268bff73e43792f2d216a52ae19507da5c866"; - sha256 = "1p6rryac1caw97smkvg4cskd8zr01m3kvrg3ir6zsa7gg1l0npx6"; + rev = "1f7904ed99fa94ad9009fa5ece431fb2416558ce"; + sha256 = "1wdg6cbjzvfgxp5cn2pb10bkf34fxi5682x3kbk6hmlmrcipqlnv"; }; meta.homepage = "https://github.com/kevinhwang91/nvim-hlslens/"; }; @@ -3492,12 +3492,12 @@ final: prev: nvim-treesitter = buildVimPluginFrom2Nix { pname = "nvim-treesitter"; - version = "2021-05-16"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "nvim-treesitter"; repo = "nvim-treesitter"; - rev = "71247a4a658a7678328fa6224ede103dcf1268fc"; - sha256 = "05f90s36nzk13s2rdyrzalwv4psz9pjccw89ihxbik1ndg8iwz18"; + rev = "4dcc3fb4b38d4a29d175fda69a0bf35b2aa675c5"; + sha256 = "08aigjgwlkxx8x4g6pr8mc04liax0mq0bw7b6781fsfsxgf17g6q"; }; meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/"; }; @@ -3540,12 +3540,12 @@ final: prev: nvim-ts-rainbow = buildVimPluginFrom2Nix { pname = "nvim-ts-rainbow"; - version = "2021-05-12"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "p00f"; repo = "nvim-ts-rainbow"; - rev = "6478cb17624d2509e4c3d78a7f8c50db634d7c0b"; - sha256 = "0lqxiy73jr340sl264acscc67dfcavmiz7d1abnijwjp9h1ms159"; + rev = "5ef9c414cef1419b8576c62f1079b22315c72a04"; + sha256 = "1lxg9prli5zvy5f9ld83y1fjbm7y4ifkyvq16naxjr3grhp0lg76"; }; meta.homepage = "https://github.com/p00f/nvim-ts-rainbow/"; }; @@ -4127,6 +4127,18 @@ final: prev: meta.homepage = "https://github.com/rust-lang/rust.vim/"; }; + sad-vim = buildVimPluginFrom2Nix { + pname = "sad-vim"; + version = "2019-02-18"; + src = fetchFromGitHub { + owner = "hauleth"; + repo = "sad.vim"; + rev = "2f5b33b239a566ffedaa81cee3051bb613482d1e"; + sha256 = "11kxnrp3b6qc2rcp5jdqjb7cxh6lqy09v3yh7dk4kd51jkgxqbn4"; + }; + meta.homepage = "https://github.com/hauleth/sad.vim/"; + }; + salt-vim = buildVimPluginFrom2Nix { pname = "salt-vim"; version = "2017-07-01"; @@ -4225,12 +4237,12 @@ final: prev: sideways-vim = buildVimPluginFrom2Nix { pname = "sideways-vim"; - version = "2021-05-03"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "AndrewRadev"; repo = "sideways.vim"; - rev = "925dcf5e9e91551d98323da98ae25d5aeaedf2c9"; - sha256 = "1ncx7qxvdi8cfqq41wg3sk99b4g5rihz1lzvj8fy0yv7p9dkri6k"; + rev = "8097848380b5aedb487bc20879bcb2ab3220a8bc"; + sha256 = "1cl25p3cpb5k36vpk11cr092i1hkhbd781xbfawvr42jfkx2170p"; }; meta.homepage = "https://github.com/AndrewRadev/sideways.vim/"; }; @@ -4574,12 +4586,12 @@ final: prev: tagbar = buildVimPluginFrom2Nix { pname = "tagbar"; - version = "2021-05-15"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "preservim"; repo = "tagbar"; - rev = "bafd7c51e0c921f403cb1c76835cd6652d1dd78a"; - sha256 = "176h1pz7kmyqyx91q36ynqncx6lx15f48i1d4jz8838wky1g2jpf"; + rev = "fd4bc0f0e4e3a3bb09d48e7176e992b0613a4c68"; + sha256 = "0p3cd9qywx5xgas7mvn0a7qvsnmmpf8gpn8yix8r3vyhcg7ah5y6"; }; meta.homepage = "https://github.com/preservim/tagbar/"; }; @@ -5346,12 +5358,12 @@ final: prev: pname = "vim-autoformat"; version = "2021-05-07"; src = fetchFromGitHub { - owner = "Chiel92"; + owner = "vim-autoformat"; repo = "vim-autoformat"; rev = "58bbc3c8751ba48d1c0ecba040ce43699272d800"; sha256 = "0ylb8jljin1g5big1lfjrfww576fcb1wakz5shial8xgpw9w1hx1"; }; - meta.homepage = "https://github.com/Chiel92/vim-autoformat/"; + meta.homepage = "https://github.com/vim-autoformat/vim-autoformat/"; }; vim-automkdir = buildVimPluginFrom2Nix { @@ -6400,12 +6412,12 @@ final: prev: vim-go = buildVimPluginFrom2Nix { pname = "vim-go"; - version = "2021-05-16"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "fatih"; repo = "vim-go"; - rev = "daf75a94f458a157c6649f21410a12b823a16ff9"; - sha256 = "16bzig83mx3ynn74py7l52qzs8ddmn0qrs5dvgl1mmw5p82mwgf0"; + rev = "8c883d7f30c220d572177e8ff1d3945f618b492a"; + sha256 = "1sjxrkbx4hba7nyysp3jpw3hlxz9vfkxj7bn0xzmgdr7s598mxxn"; }; meta.homepage = "https://github.com/fatih/vim-go/"; }; @@ -9225,12 +9237,12 @@ final: prev: which-key-nvim = buildVimPluginFrom2Nix { pname = "which-key-nvim"; - version = "2021-05-15"; + version = "2021-05-17"; src = fetchFromGitHub { owner = "folke"; repo = "which-key.nvim"; - rev = "d85ce3627f4060f622e4c0a9657f26c0151829de"; - sha256 = "06fpk200r3h7m3bk3yg1p6h14f19z037g8mw2775s38bhwp3g39a"; + rev = "ec1474bb0c373eb583962deff20860c2af54f932"; + sha256 = "1fp6p7yaws8c737zi9i7fc3vvv8lxkkn5lygfzyrmk6drkhis67h"; }; meta.homepage = "https://github.com/folke/which-key.nvim/"; }; diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names index e5d6ac328392..196b7c1e12fd 100644 --- a/pkgs/misc/vim-plugins/vim-plugin-names +++ b/pkgs/misc/vim-plugins/vim-plugin-names @@ -47,7 +47,6 @@ camspiers/lens.vim carlitux/deoplete-ternjs ccarpita/rtorrent-syntax-file cespare/vim-toml -Chiel92/vim-autoformat chikatoike/concealedyank.vim chikatoike/sourcemap.vim chkno/vim-haskell-module-name @@ -177,6 +176,7 @@ guns/xterm-color-table.vim hashivim/vim-packer hashivim/vim-terraform hashivim/vim-vagrant +hauleth/sad.vim haya14busa/incsearch-easymotion.vim haya14busa/incsearch.vim haya14busa/is.vim @@ -703,6 +703,7 @@ vhda/verilog_systemverilog.vim vigoux/LanguageTool.nvim vim-airline/vim-airline vim-airline/vim-airline-themes +vim-autoformat/vim-autoformat vim-erlang/vim-erlang-compiler vim-erlang/vim-erlang-omnicomplete vim-erlang/vim-erlang-runtime diff --git a/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix b/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix index a7b0e17ecbfb..6f4bbfb7e92e 100644 --- a/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix +++ b/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix @@ -7,14 +7,12 @@ , icu , stdenv , openssl -, mono6 +, mono }: let # Get as close as possible as the `package.json` required version. # This is what drives omnisharp. - mono = mono6; - rtDepsSrcsFromJson = builtins.fromJSON (builtins.readFile ./rt-deps-bin-srcs.json); rtDepsBinSrcs = builtins.mapAttrs (k: v: @@ -114,7 +112,7 @@ vscode-utils.buildVscodeMarketplaceExtension { declare omnisharp_dir="$PWD/${omnisharp.installPath}" unzip_to "${omnisharp.bin-src}" "$omnisharp_dir" rm "$omnisharp_dir/bin/mono" - ln -s -T "${mono6}/bin/mono" "$omnisharp_dir/bin/mono" + ln -s -T "${mono}/bin/mono" "$omnisharp_dir/bin/mono" chmod a+x "$omnisharp_dir/run" touch "$omnisharp_dir/install.Lock" @@ -136,6 +134,7 @@ vscode-utils.buildVscodeMarketplaceExtension { meta = with lib; { description = "C# for Visual Studio Code (powered by OmniSharp)"; + homepage = "https://github.com/OmniSharp/omnisharp-vscode"; license = licenses.mit; maintainers = [ maintainers.jraygauthier ]; platforms = [ "x86_64-linux" ]; diff --git a/pkgs/misc/vscode-extensions/remote-ssh/default.nix b/pkgs/misc/vscode-extensions/remote-ssh/default.nix index 746bb4608ab8..29ca973a0aae 100644 --- a/pkgs/misc/vscode-extensions/remote-ssh/default.nix +++ b/pkgs/misc/vscode-extensions/remote-ssh/default.nix @@ -2,7 +2,7 @@ , vscode-utils , useLocalExtensions ? false}: # Note that useLocalExtensions requires that vscode-server is not running -# on host. If it is, you'll need to remove ~/.vscode-server, +# on host. If it is, you'll need to remove $HOME/.vscode-server, # and redo the install by running "Connect to host" on client let @@ -11,7 +11,7 @@ let # patch runs on remote machine hence use of which # links to local node if version is 12 patch = '' - f="/home/''$USER/.vscode-server/bin/''$COMMIT_ID/node" + f="$HOME/.vscode-server/bin/$COMMIT_ID/node" localNodePath=''$(which node) if [ -x "''$localNodePath" ]; then localNodeVersion=''$(node -v) @@ -23,10 +23,10 @@ let fi ${lib.optionalString useLocalExtensions '' # Use local extensions - if [ -d ~/.vscode/extensions ]; then - if ! test -L "~/.vscode-server/extensions"; then - mkdir -p ~/.vscode-server - ln -s ~/.vscode/extensions ~/.vscode-server/ + if [ -d $HOME/.vscode/extensions ]; then + if ! test -L "$HOME/.vscode-server/extensions"; then + mkdir -p $HOME/.vscode-server + ln -s $HOME/.vscode/extensions $HOME/.vscode-server/ fi fi ''} diff --git a/pkgs/os-specific/linux/android-udev-rules/default.nix b/pkgs/os-specific/linux/android-udev-rules/default.nix index d41c3e2dc332..fbe02d69f1a8 100644 --- a/pkgs/os-specific/linux/android-udev-rules/default.nix +++ b/pkgs/os-specific/linux/android-udev-rules/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "android-udev-rules"; - version = "20210425"; + version = "20210501"; src = fetchFromGitHub { owner = "M0Rf30"; repo = "android-udev-rules"; rev = version; - sha256 = "sha256-crNK6mZCCqD/Lm3rNtfH/4F48RuQCqHWP+qsTNVLOGY="; + sha256 = "sha256-rlTulWclPqMl9LdHdcAtLARXGItiSeF3RX+neZrjgV4="; }; installPhase = '' diff --git a/pkgs/os-specific/linux/atop/atop.service.patch b/pkgs/os-specific/linux/atop/atop.service.patch new file mode 100644 index 000000000000..3ef59e60cbc0 --- /dev/null +++ b/pkgs/os-specific/linux/atop/atop.service.patch @@ -0,0 +1,10 @@ +--- a/atop.service ++++ b/atop.service +@@ -9,5 +9,6 @@ + Environment=LOGPATH=/var/log/atop +-EnvironmentFile=/etc/default/atop ++EnvironmentFile=-/etc/default/atop + ExecStartPre=/bin/sh -c 'test -n "$LOGINTERVAL" -a "$LOGINTERVAL" -eq "$LOGINTERVAL"' + ExecStartPre=/bin/sh -c 'test -n "$LOGGENERATIONS" -a "$LOGGENERATIONS" -eq "$LOGGENERATIONS"' ++ExecStartPre=/bin/sh -c 'mkdir -p "${LOGPATH}"' + ExecStart=/bin/sh -c 'exec @out@/bin/atop ${LOGOPTS} -w "${LOGPATH}/atop_$(date +%%Y%%m%%d)" ${LOGINTERVAL}' diff --git a/pkgs/os-specific/linux/atop/atopacct.service.patch b/pkgs/os-specific/linux/atop/atopacct.service.patch new file mode 100644 index 000000000000..9f2cd8f2e9ca --- /dev/null +++ b/pkgs/os-specific/linux/atop/atopacct.service.patch @@ -0,0 +1,7 @@ +--- a/atopacct.service ++++ b/atopacct.service +@@ -9,3 +9,3 @@ + Type=forking +-PIDFile=/var/run/atopacctd.pid ++PIDFile=/run/atopacctd.pid + ExecStart=@out@/bin/atopacctd diff --git a/pkgs/os-specific/linux/atop/default.nix b/pkgs/os-specific/linux/atop/default.nix index e1b64c0a4b5c..50a3e3e63168 100644 --- a/pkgs/os-specific/linux/atop/default.nix +++ b/pkgs/os-specific/linux/atop/default.nix @@ -1,4 +1,14 @@ -{lib, stdenv, fetchurl, zlib, ncurses}: +{ lib +, stdenv +, fetchurl +, zlib +, ncurses +, findutils +, systemd +, python3 +# makes the package unfree via pynvml +, withAtopgpu ? false +}: stdenv.mkDerivation rec { pname = "atop"; @@ -9,31 +19,52 @@ stdenv.mkDerivation rec { sha256 = "nsLKOlcWkvfvqglfmaUQZDK8txzCLNbElZfvBIEFj3I="; }; - buildInputs = [zlib ncurses]; + nativeBuildInputs = lib.optionals withAtopgpu [ python3.pkgs.wrapPython ]; + buildInputs = [ zlib ncurses ] ++ lib.optionals withAtopgpu [ python3 ]; + pythonPath = lib.optionals withAtopgpu [ python3.pkgs.pynvml ]; makeFlags = [ - "SCRPATH=$out/etc/atop" - "LOGPATH=/var/log/atop" - "INIPATH=$out/etc/rc.d/init.d" - "SYSDPATH=$out/lib/systemd/system" - "CRNPATH=$out/etc/cron.d" - "DEFPATH=$out/etc/default" - "ROTPATH=$out/etc/logrotate.d" + "DESTDIR=$(out)" + "BINPATH=/bin" + "SBINPATH=/bin" + "MAN1PATH=/share/man/man1" + "MAN5PATH=/share/man/man5" + "MAN8PATH=/share/man/man8" + "SYSDPATH=/lib/systemd/system" + "PMPATHD=/lib/systemd/system-sleep" + ]; + + patches = [ + # Fix paths in atop.service, atop-rotate.service, atopgpu.service, atopacct.service, + # and atop-pm.sh + ./fix-paths.patch + # Don't fail on missing /etc/default/atop, make sure /var/log/atop exists pre-start + ./atop.service.patch + # Specify PIDFile in /run, not /var/run to silence systemd warning + ./atopacct.service.patch ]; preConfigure = '' - sed -e "s@/usr/@$out/@g" -i $(find . -type f ) - sed -e "/mkdir.*LOGPATH/s@mkdir@echo missing dir @" -i Makefile - sed -e "/touch.*LOGPATH/s@touch@echo should have created @" -i Makefile - sed -e 's/chown/true/g' -i Makefile - sed -e '/chkconfig/d' -i Makefile - sed -e 's/chmod 04711/chmod 0711/g' -i Makefile + for f in *.{sh,service}; do + findutils=${findutils} systemd=${systemd} substituteAllInPlace "$f" + done + + substituteInPlace Makefile --replace 'chown' 'true' + substituteInPlace Makefile --replace 'chmod 04711' 'chmod 0711' ''; installTargets = [ "systemdinstall" ]; preInstall = '' - mkdir -p "$out"/{bin,sbin} + mkdir -p $out/bin ''; + postInstall = '' + # remove extra files we don't need + rm -r $out/{var,etc} $out/bin/atop{sar,}-${version} + '' + (if withAtopgpu then '' + wrapPythonPrograms + '' else '' + rm $out/lib/systemd/system/atopgpu.service $out/bin/atopgpud $out/share/man/man8/atopgpud.8 + ''); meta = with lib; { platforms = platforms.linux; diff --git a/pkgs/os-specific/linux/atop/fix-paths.patch b/pkgs/os-specific/linux/atop/fix-paths.patch new file mode 100644 index 000000000000..e6cd631d3c11 --- /dev/null +++ b/pkgs/os-specific/linux/atop/fix-paths.patch @@ -0,0 +1,48 @@ +--- a/atop.service ++++ b/atop.service +@@ -12,4 +12,4 @@ + ExecStartPre=/bin/sh -c 'test -n "$LOGGENERATIONS" -a "$LOGGENERATIONS" -eq "$LOGGENERATIONS"' +-ExecStart=/bin/sh -c 'exec /usr/bin/atop ${LOGOPTS} -w "${LOGPATH}/atop_$(date +%%Y%%m%%d)" ${LOGINTERVAL}' +-ExecStartPost=/usr/bin/find "${LOGPATH}" -name "atop_*" -mtime +${LOGGENERATIONS} -exec rm -v {} \; ++ExecStart=/bin/sh -c 'exec @out@/bin/atop ${LOGOPTS} -w "${LOGPATH}/atop_$(date +%%Y%%m%%d)" ${LOGINTERVAL}' ++ExecStartPost=@findutils@/bin/find "${LOGPATH}" -name "atop_*" -mtime +${LOGGENERATIONS} -exec rm -v {} \; + KillSignal=SIGUSR2 + +--- a/atop-rotate.service ++++ b/atop-rotate.service +@@ -4,3 +4,3 @@ + [Service] + Type=oneshot +-ExecStart=/usr/bin/systemctl try-restart atop.service ++ExecStart=@systemd@/bin/systemctl try-restart atop.service + +--- a/atopgpu.service ++++ b/atopgpu.service +@@ -6,5 +6,5 @@ + + [Service] +-ExecStart=/usr/sbin/atopgpud ++ExecStart=@out@/bin/atopgpud + Type=oneshot + RemainAfterExit=yes + +--- a/atopacct.service ++++ b/atopacct.service +@@ -10,3 +10,3 @@ + PIDFile=/var/run/atopacctd.pid +-ExecStart=/usr/sbin/atopacctd ++ExecStart=@out@/bin/atopacctd + +--- a/atop-pm.sh ++++ b/atop-pm.sh +@@ -2,8 +2,8 @@ + + case "$1" in +- pre) /usr/bin/systemctl stop atop ++ pre) @systemd@/bin/systemctl stop atop + exit 0 + ;; +- post) /usr/bin/systemctl start atop ++ post) @systemd@/bin/systemctl start atop + exit 0 + ;; diff --git a/pkgs/os-specific/linux/bpftrace/default.nix b/pkgs/os-specific/linux/bpftrace/default.nix index 3a18202c6c0e..650e85df517d 100644 --- a/pkgs/os-specific/linux/bpftrace/default.nix +++ b/pkgs/os-specific/linux/bpftrace/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { pname = "bpftrace"; - version = "0.12.0"; + version = "0.12.1"; src = fetchFromGitHub { owner = "iovisor"; repo = "bpftrace"; rev = "v${version}"; - sha256 = "0njbixkrpdl9gjnkzg0ybmqsva0ydfda5vms66v8ij7xida2qy07"; + sha256 = "sha256-DZO47AH506DBVH/AuvOF3JfpRxv/D/lmzVg8WOH9Dqo="; }; buildInputs = with llvmPackages; diff --git a/pkgs/os-specific/linux/gradm/default.nix b/pkgs/os-specific/linux/gradm/default.nix index 7d2660ad26e9..cd99dfa5db8d 100644 --- a/pkgs/os-specific/linux/gradm/default.nix +++ b/pkgs/os-specific/linux/gradm/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "gradm"; - version = "3.1-202012071814"; + version = "3.1-202102241600"; src = fetchurl { - url = "http://grsecurity.net/stable/${pname}-${version}.tar.gz"; - sha256 = "sha256-ghl9P2IYsSHcJsVxJbFwfFS1CTZ2xLxdvyhdk/1OZG4="; + url = "https://grsecurity.net/stable/${pname}-${version}.tar.gz"; + sha256 = "02ni34hpggv00140p9gvh0lqi173zdddd2qhfi96hyr1axd5pl50"; }; nativeBuildInputs = [ bison flex ]; @@ -44,7 +44,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "grsecurity RBAC administration and policy analysis utility"; homepage = "https://grsecurity.net"; - license = licenses.gpl2; + license = licenses.gpl2Only; platforms = platforms.linux; maintainers = with maintainers; [ thoughtpolice joachifm ]; }; diff --git a/pkgs/os-specific/linux/lsscsi/default.nix b/pkgs/os-specific/linux/lsscsi/default.nix index 90c0361bce35..6286735b758b 100644 --- a/pkgs/os-specific/linux/lsscsi/default.nix +++ b/pkgs/os-specific/linux/lsscsi/default.nix @@ -1,11 +1,11 @@ { lib, stdenv, fetchurl }: stdenv.mkDerivation { - name = "lsscsi-0.31"; + name = "lsscsi-0.32"; src = fetchurl { - url = "http://sg.danny.cz/scsi/lsscsi-0.31.tgz"; - sha256 = "1jpk15y9vqjb1lcj4pdzygpg0jf0lja7azjldpywc0s805rikgqj"; + url = "http://sg.danny.cz/scsi/lsscsi-0.32.tgz"; + sha256 = "sha256-CoAOnpTcoqtwLWXXJ3eujK4Hjj100Ly+1kughJ6AKaE="; }; preConfigure = '' diff --git a/pkgs/os-specific/linux/mmc-utils/default.nix b/pkgs/os-specific/linux/mmc-utils/default.nix index aff847c20ff6..7430182e5d2e 100644 --- a/pkgs/os-specific/linux/mmc-utils/default.nix +++ b/pkgs/os-specific/linux/mmc-utils/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation { pname = "mmc-utils"; - version = "2019-10-04"; + version = "2021-05-11"; src = fetchgit { url = "git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git"; - rev = "73d6c59af8d1bcedf5de4aa1f5d5b7f765f545f5"; - sha256 = "18a7qm86gavg15gv4h6xfnapgq24v4dyvhwfp53lkssxyhjbli0z"; + rev = "43282e80e174cc73b09b81a4d17cb3a7b4dc5cfc"; + sha256 = "0l06ahmprqshh75pkdpagb8fgnp2bwn8q8hwp1yl3laww2ghm8i5"; }; makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; diff --git a/pkgs/os-specific/linux/netatop/default.nix b/pkgs/os-specific/linux/netatop/default.nix index fb0a4eb71887..28f989929a4c 100644 --- a/pkgs/os-specific/linux/netatop/default.nix +++ b/pkgs/os-specific/linux/netatop/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, kernel, zlib }: +{ lib, stdenv, fetchurl, kernel, kmod, zlib }: let version = "3.1"; @@ -12,10 +12,16 @@ stdenv.mkDerivation { sha256 = "0qjw8glfdmngfvbn1w63q128vxdz2jlabw13y140ga9i5ibl6vvk"; }; - buildInputs = [ zlib ]; + buildInputs = [ kmod zlib ]; hardeningDisable = [ "pic" ]; + patches = [ + # fix paths in netatop.service + ./fix-paths.patch + # Specify PIDFile in /run, not /var/run to silence systemd warning + ./netatop.service.patch + ]; preConfigure = '' patchShebangs mkversion sed -i -e 's,^KERNDIR.*,KERNDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build,' \ @@ -24,12 +30,14 @@ stdenv.mkDerivation { -e s,/usr,$out, \ -e /init.d/d \ -e /depmod/d \ - -e /netatop.service/d \ + -e s,/lib/systemd,$out/lib/systemd, \ Makefile + + kmod=${kmod} substituteAllInPlace netatop.service ''; preInstall = '' - mkdir -p $out/bin $out/sbin $out/share/man/man{4,8} + mkdir -p $out/lib/systemd/system $out/bin $out/sbin $out/share/man/man{4,8} mkdir -p $out/lib/modules/${kernel.modDirVersion}/extra ''; @@ -38,6 +46,6 @@ stdenv.mkDerivation { homepage = "https://www.atoptool.nl/downloadnetatop.php"; license = lib.licenses.gpl2; platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [viric]; + maintainers = with lib.maintainers; [ viric ]; }; } diff --git a/pkgs/os-specific/linux/netatop/fix-paths.patch b/pkgs/os-specific/linux/netatop/fix-paths.patch new file mode 100644 index 000000000000..0e71c4efdd31 --- /dev/null +++ b/pkgs/os-specific/linux/netatop/fix-paths.patch @@ -0,0 +1,11 @@ +--- a/netatop.service ++++ b/netatop.service +@@ -8,5 +8,5 @@ + Type=oneshot +-ExecStartPre=/sbin/modprobe netatop +-ExecStart=/usr/sbin/netatopd +-ExecStopPost=/sbin/rmmod netatop ++ExecStartPre=@kmod@/bin/modprobe netatop ++ExecStart=@out@/bin/netatopd ++ExecStopPost=@kmod@/bin/rmmod netatop + PIDFile=/var/run/netatop.pid diff --git a/pkgs/os-specific/linux/netatop/netatop.service.patch b/pkgs/os-specific/linux/netatop/netatop.service.patch new file mode 100644 index 000000000000..c7c798ee06bc --- /dev/null +++ b/pkgs/os-specific/linux/netatop/netatop.service.patch @@ -0,0 +1,7 @@ +--- a/netatop.service ++++ b/netatop.service +@@ -11,3 +11,3 @@ + ExecStopPost=@kmod@/bin/rmmod netatop +-PIDFile=/var/run/netatop.pid ++PIDFile=/run/netatop.pid + RemainAfterExit=yes diff --git a/pkgs/servers/asterisk/sccp/default.nix b/pkgs/servers/asterisk/sccp/default.nix index 10b238f8877a..756699e5adb9 100644 --- a/pkgs/servers/asterisk/sccp/default.nix +++ b/pkgs/servers/asterisk/sccp/default.nix @@ -1,13 +1,13 @@ { lib, stdenv, fetchFromGitHub, binutils-unwrapped, patchelf, asterisk }: stdenv.mkDerivation rec { pname = "asterisk-module-sccp"; - version = "4.3.2-epsilon"; + version = "4.3.4"; src = fetchFromGitHub { owner = "chan-sccp"; repo = "chan-sccp"; rev = "v${version}"; - sha256 = "0sp74xvb35m32flsrib0983yn1dyz3qk69vp0gqbx620ycbz19gd"; + sha256 = "sha256-YGHK4A03Ba/tnVTnu9VuhIy/xQ5C/7ZX8h9mxqKsnZI="; }; nativeBuildInputs = [ patchelf ]; diff --git a/pkgs/servers/blockbook/default.nix b/pkgs/servers/blockbook/default.nix index 5ab10af18c03..8d75b89d0d8a 100644 --- a/pkgs/servers/blockbook/default.nix +++ b/pkgs/servers/blockbook/default.nix @@ -65,5 +65,8 @@ buildGoModule rec { license = licenses.agpl3; maintainers = with maintainers; [ mmahut _1000101 ]; platforms = platforms.unix; + # go dependency tecbot/gorocksdb requires rocksdb 5.x but nixpkgs has only rocksdb 6.x + # issue in upstream can be tracked here: https://github.com/trezor/blockbook/issues/617 + broken = true; }; } diff --git a/pkgs/servers/dns/dnsdist/default.nix b/pkgs/servers/dns/dnsdist/default.nix index a6a365c13da0..0424880c08e8 100644 --- a/pkgs/servers/dns/dnsdist/default.nix +++ b/pkgs/servers/dns/dnsdist/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { pname = "dnsdist"; - version = "1.5.1"; + version = "1.5.2"; src = fetchurl { url = "https://downloads.powerdns.com/releases/dnsdist-${version}.tar.bz2"; - sha256 = "1wgv19b6y4fp5x1z54psaaialji2rckl5vdh156kyw47k9r5krya"; + sha256 = "sha256-K9e1M9Lae7RWY8amLkftDS8Zigd/WNxzDEY7eXNjZ0k="; }; nativeBuildInputs = [ pkg-config protobuf ]; diff --git a/pkgs/servers/firebird/default.nix b/pkgs/servers/firebird/default.nix index 2d4e22ba2443..fa3a8d022983 100644 --- a/pkgs/servers/firebird/default.nix +++ b/pkgs/servers/firebird/default.nix @@ -1,91 +1,84 @@ -{lib, stdenv, fetchurl, libedit, automake, autoconf, libtool -, - # icu = null: use icu which comes with firebird +{ lib, stdenv, fetchFromGitHub, libedit, autoreconfHook, zlib, unzip, libtommath, libtomcrypt, icu, superServer ? false }: - # icu = pkgs.icu => you may have trouble sharing database files with windows - # users if "Collation unicode" columns are being used - # windows icu version is *30.dll, however neither the icu 3.0 nor the 3.6 - # sources look close to what ships with this package. - # Thus I think its best to trust firebird devs and use their version - - # icu version missmatch may cause such error when selecting from a table: - # "Collation unicode for character set utf8 is not installed" - - # icu 3.0 can still be built easily by nix (by dropping the #elif case and - # make | make) - icu ? null - -, superServer ? false -, port ? 3050 -, serviceName ? "gds_db" -}: - -/* - there are 3 ways to use firebird: - a) superserver - - one process, one thread for each connection - b) classic - - is built by default - - one process for each connection - - on linux direct io operations (?) - c) embedded. - - manual says that you usually don't notice the difference between a and b. - - I'm only interested in the embedder shared libary for now. - So everything isn't tested yet - -*/ - -stdenv.mkDerivation rec { - version = "2.5.7.27050-0"; +let base = { pname = "firebird"; - # enableParallelBuilding = false; build fails + meta = with lib; { + description = "SQL relational database management system"; + homepage = "https://firebirdsql.org/"; + changelog = "https://github.com/FirebirdSQL/firebird/blob/master/CHANGELOG.md"; + license = [ "IDPL" "Interbase-1.0" ]; + platforms = platforms.linux; + maintainers = with maintainers; [ marcweber ]; + }; - # http://tracker.firebirdsql.org/browse/CORE-3246 - preConfigure = '' - makeFlags="$makeFlags CPU=$NIX_BUILD_CORES" + nativeBuildInputs = [ autoreconfHook ]; + + buildInputs = [ libedit icu ]; + + LD_LIBRARY_PATH = lib.makeLibraryPath [ icu ]; + + configureFlags = [ + "--with-system-editline" + ] ++ (lib.optional superServer "--enable-superserver"); + + installPhase = '' + runHook preInstall + mkdir -p $out + cp -r gen/Release/firebird/* $out + runHook postInstall ''; - configureFlags = - [ "--with-serivec-port=${builtins.toString port}" - "--with-service-name=${serviceName}" - "--with-system-editline" - "--with-fblog=/var/log/firebird" - "--with-fbconf=/etc/firebird" - "--with-fbsecure-db=/var/db/firebird/system" - ] - ++ (lib.optional (icu != null) "--with-system-icu") - ++ (lib.optional superServer "--enable-superserver"); +}; in { - src = fetchurl { - url = "mirror://sourceforge/firebird/Firebird-${version}.tar.bz2"; - sha256 = "06hp6bq5irqvm3h03s79qjgcc3jsjpq150y9aq7anklx9v4nhfqa"; - }; + firebird_2_5 = stdenv.mkDerivation (base // rec { + version = "2.5.9"; - hardeningDisable = [ "format" ]; + src = fetchFromGitHub { + owner = "FirebirdSQL"; + repo = "firebird"; + rev = "R${builtins.replaceStrings [ "." ] [ "_" ] version}"; + sha256 = "sha256-YyvlMeBux80OpVhsCv+6IVxKXFRsgdr+1siupMR13JM="; + }; - # configurePhase = '' - # sed -i 's@cp /usr/share/automake-.*@@' autogen.sh - # sh autogen.sh $configureFlags --prefix=$out - # ''; - buildInputs = [libedit icu automake autoconf libtool]; + configureFlags = base.configureFlags ++ [ "--with-system-icu" ]; - # TODO: Probably this hase to be tidied up.. - # make install requires beeing. disabling the root checks - # dosen't work. Copying the files manually which can be found - # in ubuntu -dev -classic, -example packages: - # maybe some of those files can be removed again - installPhase = "cp -r gen/firebird $out"; + installPhase = '' + runHook preInstall + mkdir -p $out + cp -r gen/firebird/* $out + runHook postInstall + ''; - meta = { - description = "SQL relational database management system"; - homepage = "https://www.firebirdnews.org"; - license = ["IDPL" "Interbase-1.0"]; - maintainers = [lib.maintainers.marcweber]; - platforms = lib.platforms.linux; - broken = true; - }; + meta = base.meta // { platforms = [ "x86_64-linux" ]; }; + }); + + firebird_3 = stdenv.mkDerivation (base // rec { + version = "3.0.7"; + + src = fetchFromGitHub { + owner = "FirebirdSQL"; + repo = "firebird"; + rev = "R${builtins.replaceStrings [ "." ] [ "_" ] version}"; + sha256 = "sha256-8nGan10qjW8dFF89BL/tUWtwMGhahBiODbOqRrHSrbs="; + }; + + buildInputs = base.buildInputs ++ [ zlib libtommath ]; + + meta = base.meta // { platforms = [ "x86_64-linux" ]; }; + }); + + firebird_4 = stdenv.mkDerivation (base // rec { + version = "4.0.0-rc1"; + + src = fetchFromGitHub { + owner = "FirebirdSQL"; + repo = "firebird"; + rev = "T4_0_0_RC1"; + sha256 = "sha256-FLaRePosF5dtJ+fmrfvzkE6wawC9Z9YLhT/ZWkwWXb4="; + }; + + buildInputs = base.buildInputs ++ [ zlib unzip libtommath libtomcrypt ]; + }); } diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index e97bbae7f74a..a45981227776 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -109,7 +109,7 @@ "caldav" = ps: with ps; [ caldav ]; "calendar" = ps: with ps; [ aiohttp-cors ]; "camera" = ps: with ps; [ aiohttp-cors ]; - "canary" = ps: with ps; [ ha-ffmpeg ]; # missing inputs: py-canary + "canary" = ps: with ps; [ ha-ffmpeg py-canary ]; "cast" = ps: with ps; [ aiohttp-cors hass-nabucasa mutagen plexapi plexauth plexwebsocket PyChromecast pyroute2 zeroconf ]; "cert_expiry" = ps: with ps; [ ]; "channels" = ps: with ps; [ pychannels ]; @@ -157,7 +157,7 @@ "decora" = ps: with ps; [ bluepy ]; # missing inputs: decora "decora_wifi" = ps: with ps; [ ]; # missing inputs: decora_wifi "default_config" = ps: with ps; [ pynacl aiodiscover aiohttp-cors async-upnp-client defusedxml distro emoji hass-nabucasa netdisco pillow pyroute2 scapy sqlalchemy zeroconf ]; - "delijn" = ps: with ps; [ ]; # missing inputs: pydelijn + "delijn" = ps: with ps; [ pydelijn ]; "deluge" = ps: with ps; [ deluge-client ]; "demo" = ps: with ps; [ aiohttp-cors ]; "denon" = ps: with ps; [ ]; @@ -407,7 +407,7 @@ "ipp" = ps: with ps; [ pyipp ]; "iqvia" = ps: with ps; [ numpy pyiqvia ]; "irish_rail_transport" = ps: with ps; [ ]; # missing inputs: pyirishrail - "islamic_prayer_times" = ps: with ps; [ ]; # missing inputs: prayer_times_calculator + "islamic_prayer_times" = ps: with ps; [ prayer-times-calculator ]; "iss" = ps: with ps; [ ]; # missing inputs: pyiss "isy994" = ps: with ps; [ ]; # missing inputs: pyisy "itach" = ps: with ps; [ ]; # missing inputs: pyitachip2ir @@ -582,7 +582,7 @@ "nx584" = ps: with ps; [ pynx584 ]; "nzbget" = ps: with ps; [ ]; # missing inputs: pynzbgetapi "oasa_telematics" = ps: with ps; [ ]; # missing inputs: oasatelematics - "obihai" = ps: with ps; [ ]; # missing inputs: pyobihai + "obihai" = ps: with ps; [ pyobihai ]; "octoprint" = ps: with ps; [ aiohttp-cors netdisco pyroute2 zeroconf ]; "oem" = ps: with ps; [ ]; # missing inputs: oemthermostat "ohmconnect" = ps: with ps; [ defusedxml ]; @@ -614,7 +614,7 @@ "orvibo" = ps: with ps; [ orvibo ]; "osramlightify" = ps: with ps; [ ]; # missing inputs: lightify "otp" = ps: with ps; [ pyotp ]; - "ovo_energy" = ps: with ps; [ ]; # missing inputs: ovoenergy + "ovo_energy" = ps: with ps; [ ovoenergy ]; "owntracks" = ps: with ps; [ pynacl aiohttp-cors hass-nabucasa paho-mqtt ]; "ozw" = ps: with ps; [ aiohttp-cors paho-mqtt python-openzwave-mqtt ]; "panasonic_bluray" = ps: with ps; [ ]; # missing inputs: panacotta @@ -626,7 +626,7 @@ "pencom" = ps: with ps; [ ]; # missing inputs: pencompy "persistent_notification" = ps: with ps; [ ]; "person" = ps: with ps; [ aiohttp-cors pillow ]; - "philips_js" = ps: with ps; [ ]; # missing inputs: ha-philipsjs + "philips_js" = ps: with ps; [ ha-philipsjs ]; "pi4ioe5v9xxxx" = ps: with ps; [ ]; # missing inputs: pi4ioe5v9xxxx "pi_hole" = ps: with ps; [ hole ]; "picnic" = ps: with ps; [ python-picnic-api ]; @@ -972,7 +972,7 @@ "yale_smart_alarm" = ps: with ps; [ yalesmartalarmclient ]; "yamaha" = ps: with ps; [ rxv ]; "yamaha_musiccast" = ps: with ps; [ ]; # missing inputs: pymusiccast - "yandex_transport" = ps: with ps; [ ]; # missing inputs: aioymaps + "yandex_transport" = ps: with ps; [ aioymaps ]; "yandextts" = ps: with ps; [ ]; "yeelight" = ps: with ps; [ yeelight ]; "yeelightsunflower" = ps: with ps; [ ]; # missing inputs: yeelightsunflower diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 3a8948f8982a..52b049e4576f 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -214,6 +214,7 @@ in with py.pkgs; buildPythonApplication rec { "caldav" "calendar" "camera" + "canary" "cast" "climacell" "climate" @@ -286,6 +287,7 @@ in with py.pkgs; buildPythonApplication rec { "intent" "intent_script" "ipp" + "islamic_prayer_times" "jewish_calendar" "kmtronic" "knx" @@ -328,11 +330,13 @@ in with py.pkgs; buildPythonApplication rec { "ondilo_ico" "openerz" "opentherm_gw" + "ovo_energy" "ozw" "panel_custom" "panel_iframe" "persistent_notification" "person" + "philips_js" "plaato" "plugwise" "prometheus" @@ -407,6 +411,7 @@ in with py.pkgs; buildPythonApplication rec { "workday" "worldclock" "xiaomi_miio" + "yandex_transport" "yeelight" "zeroconf" "zha" diff --git a/pkgs/servers/monitoring/prometheus/unbound-exporter.nix b/pkgs/servers/monitoring/prometheus/unbound-exporter.nix index df53d30de716..c7c8f3e5963a 100644 --- a/pkgs/servers/monitoring/prometheus/unbound-exporter.nix +++ b/pkgs/servers/monitoring/prometheus/unbound-exporter.nix @@ -1,4 +1,4 @@ -{ lib, rustPlatform, fetchFromGitHub, openssl, pkg-config, nixosTests }: +{ lib, stdenv, rustPlatform, fetchFromGitHub, openssl, pkg-config, nixosTests, Security }: rustPlatform.buildRustPackage rec { pname = "unbound-telemetry"; @@ -15,7 +15,8 @@ rustPlatform.buildRustPackage rec { nativeBuildInputs = [ pkg-config ]; - buildInputs = [ openssl ]; + buildInputs = [ openssl ] + ++ lib.optional stdenv.isDarwin Security; passthru.tests = { inherit (nixosTests.prometheus-exporters) unbound; diff --git a/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix b/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix index c143c44704be..1dbb31796275 100644 --- a/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix +++ b/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix @@ -1,4 +1,4 @@ -{ stdenv, rustPlatform, fetchFromGitHub, lib, Security, nixosTests }: +{ stdenv, rustPlatform, fetchFromGitHub, lib, libiconv, Security, nixosTests }: rustPlatform.buildRustPackage rec { pname = "wireguard-exporter"; @@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "sha256-lNFsO7FSmH1+DLM7ID0vn6234qTdtUoaLSnqKcbHoXE="; - buildInputs = lib.optional stdenv.isDarwin Security; + buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ]; passthru.tests = { inherit (nixosTests.prometheus-exporters) wireguard; }; diff --git a/pkgs/servers/nosql/influxdb2/default.nix b/pkgs/servers/nosql/influxdb2/default.nix index d4f65abba031..1e65689444fe 100644 --- a/pkgs/servers/nosql/influxdb2/default.nix +++ b/pkgs/servers/nosql/influxdb2/default.nix @@ -7,21 +7,23 @@ , mkYarnPackage , pkg-config , rustPlatform +, stdenv +, libiconv }: # Note for maintainers: use ./update-influxdb2.sh to update the Yarn # dependencies nix expression. let - version = "2.0.2"; - shorthash = "84496e507a"; # git rev-parse HEAD with 2.0.2 checked out - libflux_version = "0.95.0"; + version = "2.0.6"; + shorthash = "4db98b4c9a"; # git rev-parse HEAD with 2.0.6 checked out + libflux_version = "0.115.0"; src = fetchFromGitHub { owner = "influxdata"; repo = "influxdb"; rev = "v${version}"; - sha256 = "05s09crqgbyfdck33zwax5l47jpc4wh04yd8zsm658iksdgzpmnn"; + sha256 = "1x74p87csx4m4cgijk57xs75nikv3bnh7skgnzk30ab1ar13iirw"; }; ui = mkYarnPackage { @@ -31,7 +33,7 @@ let yarnNix = ./influx-ui-yarndeps.nix; configurePhase = '' cp -r $node_modules ui/node_modules - rsync -r $node_modules/../deps/chronograf-ui/node_modules/ ui/node_modules + rsync -r $node_modules/../deps/influxdb-ui/node_modules/ ui/node_modules ''; INFLUXDB_SHA = shorthash; buildPhase = '' @@ -52,11 +54,12 @@ let owner = "influxdata"; repo = "flux"; rev = "v${libflux_version}"; - sha256 = "07jz2nw3zswg9f4p5sb5r4hpg3n4qibjcgs9sk9csns70h5rp9j3"; + sha256 = "0zplwsk9xidv8l9sqbxqivy6q20ryd31fhrzspn1mjn4i45kkwz1"; }; sourceRoot = "source/libflux"; - cargoSha256 = "15xrg7h2jkm0p2nvzza8r6v71w5f3vjilzdahqcd23n2pg5bxgg5"; + cargoSha256 = "06gh466q7qkid0vs5scic0qqlz3h81yb00nwn8nwq8ppr5z2ijyq"; nativeBuildInputs = [ llvmPackages.libclang ]; + buildInputs = lib.optional stdenv.isDarwin libiconv; LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib"; pkgcfg = '' Name: flux @@ -71,6 +74,8 @@ let cp -r $NIX_BUILD_TOP/source/libflux/include/influxdata $out/include substitute $pkgcfgPath $out/pkgconfig/flux.pc \ --replace /out $out + '' + lib.optionalString stdenv.isDarwin '' + install_name_tool -id $out/lib/libflux.dylib $out/lib/libflux.dylib ''; }; in buildGoModule { @@ -80,7 +85,7 @@ in buildGoModule { nativeBuildInputs = [ go-bindata pkg-config ]; - vendorSha256 = "0lviz7l5zbghyfkp0lvlv8ykpak5hhkfal8d7xwvpsm8q3sghc8a"; + vendorSha256 = "03pabm0h9q0v5dfdq9by2l2n32bz9imwalz0aw897vsrfhci0ldf"; subPackages = [ "cmd/influxd" "cmd/influx" ]; PKG_CONFIG_PATH = "${flux}/pkgconfig"; diff --git a/pkgs/servers/nosql/influxdb2/influx-ui-package.json b/pkgs/servers/nosql/influxdb2/influx-ui-package.json index d57813bf2a84..1a3840f15487 100644 --- a/pkgs/servers/nosql/influxdb2/influx-ui-package.json +++ b/pkgs/servers/nosql/influxdb2/influx-ui-package.json @@ -1,12 +1,12 @@ { - "name": "chronograf-ui", - "version": "2.0.2", + "name": "influxdb-ui", + "version": "2.0.5", "private": false, - "license": "AGPL-3.0", + "license": "MIT", "description": "", "repository": { "type": "git", - "url": "github:influxdata/chronograf" + "url": "github:influxdata/ui" }, "engines": { "node": ">=10.5.0", @@ -40,6 +40,7 @@ "eslint:circleci": "eslint", "eslint:fix": "eslint --fix '{src,cypress}/**/*.{ts,tsx}'", "prettier": "prettier --config .prettierrc.json --check '{src,cypress}/**/*.{ts,tsx}'", + "prettier:circleci": "prettier --config .prettierrc.json --check", "prettier:fix": "prettier --config .prettierrc.json --write '{src,cypress}/**/*.{ts,tsx}'", "tsc": "tsc -p ./tsconfig.json --noEmit --pretty --skipLibCheck", "tsc:cypress": "tsc -p ./cypress/tsconfig.json --noEmit --pretty --skipLibCheck", @@ -134,7 +135,7 @@ "dependencies": { "@influxdata/clockface": "2.3.4", "@influxdata/flux": "^0.5.1", - "@influxdata/flux-lsp-browser": "^0.5.23", + "@influxdata/flux-lsp-browser": "^0.5.41", "@influxdata/giraffe": "0.29.0", "@influxdata/influx": "0.5.5", "@influxdata/influxdb-templates": "0.9.0", diff --git a/pkgs/servers/nosql/influxdb2/influx-ui-yarndeps.nix b/pkgs/servers/nosql/influxdb2/influx-ui-yarndeps.nix index 1779d270cf1e..53795e76322e 100644 --- a/pkgs/servers/nosql/influxdb2/influx-ui-yarndeps.nix +++ b/pkgs/servers/nosql/influxdb2/influx-ui-yarndeps.nix @@ -666,11 +666,11 @@ }; } { - name = "_influxdata_flux_lsp_browser___flux_lsp_browser_0.5.23.tgz"; + name = "_influxdata_flux_lsp_browser___flux_lsp_browser_0.5.41.tgz"; path = fetchurl { - name = "_influxdata_flux_lsp_browser___flux_lsp_browser_0.5.23.tgz"; - url = "https://registry.yarnpkg.com/@influxdata/flux-lsp-browser/-/flux-lsp-browser-0.5.23.tgz"; - sha1 = "b3d1579e26ff21a11771003cbcaebe5fef82d73c"; + name = "_influxdata_flux_lsp_browser___flux_lsp_browser_0.5.41.tgz"; + url = "https://registry.yarnpkg.com/@influxdata/flux-lsp-browser/-/flux-lsp-browser-0.5.41.tgz"; + sha1 = "abf6c5ad253317f34a9217ecfd250d78fe625a83"; }; } { diff --git a/pkgs/servers/reproxy/default.nix b/pkgs/servers/reproxy/default.nix new file mode 100644 index 000000000000..29a2f485abd1 --- /dev/null +++ b/pkgs/servers/reproxy/default.nix @@ -0,0 +1,36 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "reproxy"; + version = "0.5.1"; + + src = fetchFromGitHub { + owner = "umputun"; + repo = pname; + rev = "v${version}"; + hash = "sha256-RB3+IU6halnk/2REh2CLDpQN7djn4Y1QuL8y8xppnQw="; + }; + + postPatch = '' + # Requires network access + substituteInPlace app/main_test.go \ + --replace "Test_Main" "Skip_Main" + ''; + + vendorSha256 = null; + + buildFlagsArray = [ + "-ldflags=-s -w -X main.revision=${version}" + ]; + + installPhase = '' + install -Dm755 $GOPATH/bin/app $out/bin/reproxy + ''; + + meta = with lib; { + description = "Simple edge server / reverse proxy"; + homepage = "https://reproxy.io/"; + license = licenses.mit; + maintainers = with maintainers; [ sikmir ]; + }; +} diff --git a/pkgs/servers/search/groonga/default.nix b/pkgs/servers/search/groonga/default.nix index 6ba221f8bafe..07ea1960a7b9 100644 --- a/pkgs/servers/search/groonga/default.nix +++ b/pkgs/servers/search/groonga/default.nix @@ -7,11 +7,11 @@ stdenv.mkDerivation rec { pname = "groonga"; - version = "11.0.1"; + version = "11.0.2"; src = fetchurl { url = "https://packages.groonga.org/source/groonga/${pname}-${version}.tar.gz"; - sha256 = "sha256-Ap5DdOf3PVctMAYCP0Xr4VjqO5yEWqrKX6FbId8/FMQ="; + sha256 = "sha256-3inLVkjjwphz00N0fWJqXvyzAjV9x72C3E33duLeVYw="; }; buildInputs = with lib; diff --git a/pkgs/servers/simple-http-server/default.nix b/pkgs/servers/simple-http-server/default.nix index d93b4664019e..1ecb44aed870 100644 --- a/pkgs/servers/simple-http-server/default.nix +++ b/pkgs/servers/simple-http-server/default.nix @@ -1,4 +1,4 @@ -{ lib, rustPlatform, fetchFromGitHub, pkg-config, openssl }: +{ lib, stdenv, rustPlatform, fetchFromGitHub, pkg-config, openssl, Security }: rustPlatform.buildRustPackage rec { pname = "simple-http-server"; @@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec { nativeBuildInputs = [ pkg-config ]; - buildInputs = [ openssl ]; + buildInputs = if stdenv.isDarwin then [ Security ] else [ openssl ]; # Currently no tests are implemented, so we avoid building the package twice doCheck = false; diff --git a/pkgs/servers/sql/postgresql/ext/pipelinedb.nix b/pkgs/servers/sql/postgresql/ext/pipelinedb.nix index d909761cb5ea..06c36a4ff6c3 100644 --- a/pkgs/servers/sql/postgresql/ext/pipelinedb.nix +++ b/pkgs/servers/sql/postgresql/ext/pipelinedb.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, postgresql, zeromq, openssl }: +{ lib, stdenv, fetchFromGitHub, postgresql, zeromq, openssl, libsodium, libkrb5 }: stdenv.mkDerivation rec { pname = "pipelinedb"; @@ -11,10 +11,12 @@ stdenv.mkDerivation rec { sha256 = "1mnqpvx6g1r2n4kjrrx01vbdx7kvndfsbmm7zbzizjnjlyixz75f"; }; - buildInputs = [ postgresql openssl zeromq ]; + buildInputs = [ postgresql openssl zeromq libsodium libkrb5 ]; makeFlags = [ "USE_PGXS=1" ]; + NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-lsodium"; + preConfigure = '' substituteInPlace Makefile \ --replace "/usr/lib/libzmq.a" "${zeromq}/lib/libzmq.a" diff --git a/pkgs/servers/sql/postgresql/ext/timescaledb.nix b/pkgs/servers/sql/postgresql/ext/timescaledb.nix index ccaf103adef7..7d90bdbcc72d 100644 --- a/pkgs/servers/sql/postgresql/ext/timescaledb.nix +++ b/pkgs/servers/sql/postgresql/ext/timescaledb.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, cmake, postgresql, openssl }: +{ lib, stdenv, fetchFromGitHub, cmake, postgresql, openssl, libkrb5 }: # # To enable on NixOS: # config.services.postgresql = { @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { version = "2.2.1"; nativeBuildInputs = [ cmake ]; - buildInputs = [ postgresql openssl ]; + buildInputs = [ postgresql openssl libkrb5 ]; src = fetchFromGitHub { owner = "timescale"; diff --git a/pkgs/servers/sql/postgresql/packages.nix b/pkgs/servers/sql/postgresql/packages.nix index e2d655bdb373..0c8f0e642a62 100644 --- a/pkgs/servers/sql/postgresql/packages.nix +++ b/pkgs/servers/sql/postgresql/packages.nix @@ -6,12 +6,7 @@ self: super: { periods = super.callPackage ./ext/periods.nix { }; - postgis = super.callPackage ./ext/postgis.nix { - gdal = self.gdal.override { - postgresql = self.postgresql; - poppler = self.poppler_0_61; - }; - }; + postgis = super.callPackage ./ext/postgis.nix { }; pg_auto_failover = super.callPackage ./ext/pg_auto_failover.nix { }; diff --git a/pkgs/servers/unpackerr/default.nix b/pkgs/servers/unpackerr/default.nix new file mode 100644 index 000000000000..2e024010d416 --- /dev/null +++ b/pkgs/servers/unpackerr/default.nix @@ -0,0 +1,24 @@ +{ lib, stdenv, fetchFromGitHub, buildGoModule, Cocoa, WebKit }: + +buildGoModule rec { + pname = "unpackerr"; + version = "0.9.4"; + + src = fetchFromGitHub { + owner = "davidnewhall"; + repo = "unpackerr"; + rev = "v${version}"; + sha256 = "0ss12i8bclz1q9jgr54shvs8zgcs6jrwdm1vj9gvycyd5sx4717s"; + }; + + vendorSha256 = "1j79vmf0mkwkqrg5j6fm2b8y3a23y039kbiqkiwb56724bmd27dd"; + + buildInputs = lib.optionals stdenv.isDarwin [ Cocoa WebKit ]; + + meta = with lib; { + description = "Extracts downloads for Radarr, Sonarr, Lidarr - Deletes extracted files after import"; + homepage = "https://github.com/davidnewhall/unpackerr"; + maintainers = with maintainers; [ nullx76 ]; + license = licenses.mit; + }; +} diff --git a/pkgs/servers/web-apps/bookstack/default.nix b/pkgs/servers/web-apps/bookstack/default.nix index 761738ca8545..14ccf4eb43fd 100644 --- a/pkgs/servers/web-apps/bookstack/default.nix +++ b/pkgs/servers/web-apps/bookstack/default.nix @@ -15,13 +15,13 @@ let in package.override rec { name = "bookstack"; - version = "21.04.3"; + version = "21.04.5"; src = fetchFromGitHub { owner = "bookstackapp"; repo = name; rev = "v${version}"; - sha256 = "1vkl0v3c5q0734xvvqinq4zikhy37wjys6nj1h9qdbbka0h39592"; + sha256 = "0gwpa4g2xna4s3lnd970wjpr32i9cwyaixfqxhb8zbz1i9gyxjaa"; }; meta = with lib; { diff --git a/pkgs/servers/web-apps/bookstack/php-packages.nix b/pkgs/servers/web-apps/bookstack/php-packages.nix index 8791a4293e83..b2ea52df8785 100644 --- a/pkgs/servers/web-apps/bookstack/php-packages.nix +++ b/pkgs/servers/web-apps/bookstack/php-packages.nix @@ -5,10 +5,10 @@ let "aws/aws-sdk-php" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "aws-aws-sdk-php-0aa83b522d5ffa794c02e7411af87a0e241a3082"; + name = "aws-aws-sdk-php-948a4defbe2a571cc4460725015b8e98b7060f2d"; src = fetchurl { - url = https://api.github.com/repos/aws/aws-sdk-php/zipball/0aa83b522d5ffa794c02e7411af87a0e241a3082; - sha256 = "03qahdj01bz76aar21limham7xnv5r0d61gfk1fph8ljf2gbg33i"; + url = https://api.github.com/repos/aws/aws-sdk-php/zipball/948a4defbe2a571cc4460725015b8e98b7060f2d; + sha256 = "06vv6h5j909gbn2d8ih1yr2vf19jnw2va1kghj9qykvll6jzx1cq"; }; }; }; @@ -35,10 +35,10 @@ let "doctrine/cache" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "doctrine-cache-13e3381b25847283a91948d04640543941309727"; + name = "doctrine-cache-a9c1b59eba5a08ca2770a76eddb88922f504e8e0"; src = fetchurl { - url = https://api.github.com/repos/doctrine/cache/zipball/13e3381b25847283a91948d04640543941309727; - sha256 = "088fxbpjssp8x95qr3ip2iynxrimimrby03xlsvp2254vcyx94c5"; + url = https://api.github.com/repos/doctrine/cache/zipball/a9c1b59eba5a08ca2770a76eddb88922f504e8e0; + sha256 = "0r1rdfs7k0zl6fqm35qjwbfiqmf3r3nbvfyxzig1379xsgvdd84y"; }; }; }; @@ -125,10 +125,10 @@ let "facade/flare-client-php" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "facade-flare-client-php-6bf380035890cb0a09b9628c491ae3866b858522"; + name = "facade-flare-client-php-69742118c037f34ee1ef86dc605be4a105d9e984"; src = fetchurl { - url = https://api.github.com/repos/facade/flare-client-php/zipball/6bf380035890cb0a09b9628c491ae3866b858522; - sha256 = "1y0rjlpd71jkl0zzl3q4flv5s9gbk87947xgfi8w62sg5g7jjgl2"; + url = https://api.github.com/repos/facade/flare-client-php/zipball/69742118c037f34ee1ef86dc605be4a105d9e984; + sha256 = "1if56r0g9ymwankz40l5xhw5vch1qkjjy9914lz1vgbkj7ln9pvz"; }; }; }; @@ -165,10 +165,10 @@ let "filp/whoops" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "filp-whoops-d501fd2658d55491a2295ff600ae5978eaad7403"; + name = "filp-whoops-c13c0be93cff50f88bbd70827d993026821914dd"; src = fetchurl { - url = https://api.github.com/repos/filp/whoops/zipball/d501fd2658d55491a2295ff600ae5978eaad7403; - sha256 = "1mpgkl7yzw9j4pxkw404fvykapr42347lyz7jgrl1ks61pk6s9v5"; + url = https://api.github.com/repos/filp/whoops/zipball/c13c0be93cff50f88bbd70827d993026821914dd; + sha256 = "0janbd93xvr5hy2bms05q1l31gmwbqrgjfvbzkmv3bfw4gcksq0i"; }; }; }; @@ -195,10 +195,10 @@ let "guzzlehttp/psr7" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "guzzlehttp-psr7-35ea11d335fd638b5882ff1725228b3d35496ab1"; + name = "guzzlehttp-psr7-dc960a912984efb74d0a90222870c72c87f10c91"; src = fetchurl { - url = https://api.github.com/repos/guzzle/psr7/zipball/35ea11d335fd638b5882ff1725228b3d35496ab1; - sha256 = "1nsd7sla2jpx9kzg0lzk4kvc66d30bnkf2yfzdp7gghb67wvajfa"; + url = https://api.github.com/repos/guzzle/psr7/zipball/dc960a912984efb74d0a90222870c72c87f10c91; + sha256 = "06nc60wf8k6kcl89kprk04khsrrik5lnis615mx4a0m0pjn8bliz"; }; }; }; @@ -225,10 +225,10 @@ let "laravel/framework" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "laravel-framework-d94c07d72c14f07e7d2027458e7f0a76f9ceb0d9"; + name = "laravel-framework-0117d797dc1ab64b1f88d4f6b966380ea7def091"; src = fetchurl { - url = https://api.github.com/repos/laravel/framework/zipball/d94c07d72c14f07e7d2027458e7f0a76f9ceb0d9; - sha256 = "02cml6rg3qxnr8gynnd8iqwdyzflqwnyivxw034dzbm60xpg6w93"; + url = https://api.github.com/repos/laravel/framework/zipball/0117d797dc1ab64b1f88d4f6b966380ea7def091; + sha256 = "11aw7smg042g8kyyhdzawmkwgbv5hkn6l6k2m27lc34v84r6kdqm"; }; }; }; @@ -245,10 +245,10 @@ let "league/commonmark" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "league-commonmark-08fa59b8e4e34ea8a773d55139ae9ac0e0aecbaf"; + name = "league-commonmark-2651c497f005de305c7ba3f232cbd87b8c00ee8c"; src = fetchurl { - url = https://api.github.com/repos/thephpleague/commonmark/zipball/08fa59b8e4e34ea8a773d55139ae9ac0e0aecbaf; - sha256 = "10bs8r0qiq9bybypnascvk7a7181699cnwl27yq4m108cj1i223h"; + url = https://api.github.com/repos/thephpleague/commonmark/zipball/2651c497f005de305c7ba3f232cbd87b8c00ee8c; + sha256 = "0mf2avlnn0c9p4fi1jz5m85k6y7xg2p0dm1n4r7cpg25vngswmfs"; }; }; }; @@ -315,10 +315,10 @@ let "nesbot/carbon" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "nesbot-carbon-2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4"; + name = "nesbot-carbon-606262fd8888b75317ba9461825a24fc34001e1e"; src = fetchurl { - url = https://api.github.com/repos/briannesbitt/Carbon/zipball/2fd2c4a77d58a4e95234c8a61c5df1f157a91bf4; - sha256 = "0riizvfqxvvbkhhfadcqr8717s0q12p00qmffv26664h5kckl58r"; + url = https://api.github.com/repos/briannesbitt/Carbon/zipball/606262fd8888b75317ba9461825a24fc34001e1e; + sha256 = "0iqhb3gfmray8jkwki19pwm15vmf96vfj4m12nk7lmn74470lf2x"; }; }; }; @@ -455,10 +455,10 @@ let "psr/log" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "psr-log-0f73288fd15629204f9d42b7055f72dacbe811fc"; + name = "psr-log-d49695b909c3b7628b6289db5479a1c204601f11"; src = fetchurl { - url = https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc; - sha256 = "1npi9ggl4qll4sdxz1xgp8779ia73gwlpjxbb1f1cpl1wn4s42r4"; + url = https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11; + sha256 = "0sb0mq30dvmzdgsnqvw3xh4fb4bqjncx72kf8n622f94dd48amln"; }; }; }; @@ -615,30 +615,30 @@ let "symfony/console" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-console-1ba4560dbbb9fcf5ae28b61f71f49c678086cf23"; + name = "symfony-console-36bbd079b69b94bcc9c9c9e1e37ca3b1e7971625"; src = fetchurl { - url = https://api.github.com/repos/symfony/console/zipball/1ba4560dbbb9fcf5ae28b61f71f49c678086cf23; - sha256 = "1zsmv0p0xxdp44301yd3n1w9j79g631bvvfp04zniqk4h5q6kvg9"; + url = https://api.github.com/repos/symfony/console/zipball/36bbd079b69b94bcc9c9c9e1e37ca3b1e7971625; + sha256 = "0n5caxf7vgx0x6izsxfkkjdl9jw96qi7h9h0k4s8fccqqmwb61cc"; }; }; }; "symfony/css-selector" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-css-selector-f907d3e53ecb2a5fad8609eb2f30525287a734c8"; + name = "symfony-css-selector-01c77324d1d47efbfd7891f62a7c256c69330115"; src = fetchurl { - url = https://api.github.com/repos/symfony/css-selector/zipball/f907d3e53ecb2a5fad8609eb2f30525287a734c8; - sha256 = "19yqy81psz2wh8gy2j3phywsgrw9sbcw83l8lbnxbk5khg8hw3nm"; + url = https://api.github.com/repos/symfony/css-selector/zipball/01c77324d1d47efbfd7891f62a7c256c69330115; + sha256 = "12hd9vga35w8g4bwmlkr87pxlwdx71sp2bkxs8j854hf28yam75w"; }; }; }; "symfony/debug" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-debug-157bbec4fd773bae53c5483c50951a5530a2cc16"; + name = "symfony-debug-45b2136377cca5f10af858968d6079a482bca473"; src = fetchurl { - url = https://api.github.com/repos/symfony/debug/zipball/157bbec4fd773bae53c5483c50951a5530a2cc16; - sha256 = "0v7l7081fw2wr96xv472nhi1d0xzw6lnl8hnjgi9g3gnksfagwq8"; + url = https://api.github.com/repos/symfony/debug/zipball/45b2136377cca5f10af858968d6079a482bca473; + sha256 = "0p7g2mwrvg8x264kl9kn7a23adnqxh66jy1kjczq5c5xlpw2rxdb"; }; }; }; @@ -655,10 +655,10 @@ let "symfony/error-handler" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-error-handler-48e81a375525872e788c2418430f54150d935810"; + name = "symfony-error-handler-76603a8df8e001436df80758eb03a8baa5324175"; src = fetchurl { - url = https://api.github.com/repos/symfony/error-handler/zipball/48e81a375525872e788c2418430f54150d935810; - sha256 = "17hpwx8arv3h4cw4fwzkm7a39lsa92vwxsinyqmx723v1nr5z1d2"; + url = https://api.github.com/repos/symfony/error-handler/zipball/76603a8df8e001436df80758eb03a8baa5324175; + sha256 = "15s46vjwzny821qq93qsnd9ig14d72rakbavgb3sd43gipyjld8g"; }; }; }; @@ -705,30 +705,30 @@ let "symfony/http-foundation" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-http-foundation-02d968647fe61b2f419a8dc70c468a9d30a48d3a"; + name = "symfony-http-foundation-1a6f87ef99d05b1bf5c865b4ef7992263e1cb081"; src = fetchurl { - url = https://api.github.com/repos/symfony/http-foundation/zipball/02d968647fe61b2f419a8dc70c468a9d30a48d3a; - sha256 = "1bq4why2v8p7wy8801bdml43xh7kb5fli16cv74bvqpwlp4cdv9f"; + url = https://api.github.com/repos/symfony/http-foundation/zipball/1a6f87ef99d05b1bf5c865b4ef7992263e1cb081; + sha256 = "0da13w35j7hrkv87p8rrfxdxpksbf1dvji0ag7chwzhfg63516l6"; }; }; }; "symfony/http-kernel" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-http-kernel-0248214120d00c5f44f1cd5d9ad65f0b38459333"; + name = "symfony-http-kernel-cd2e325fc34a4a5bbec91eecf69dda8ee8c5ea4f"; src = fetchurl { - url = https://api.github.com/repos/symfony/http-kernel/zipball/0248214120d00c5f44f1cd5d9ad65f0b38459333; - sha256 = "032ljl732x0bs3my26wjfmxrxplz8vlxs0xzlqsxrh18lnyv6z3h"; + url = https://api.github.com/repos/symfony/http-kernel/zipball/cd2e325fc34a4a5bbec91eecf69dda8ee8c5ea4f; + sha256 = "0wk4nivw1w4kl7gziazvvzxzjhs7lalc2gc1pnscxj6k3gkfq6fl"; }; }; }; "symfony/mime" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-mime-1b2092244374cbe48ae733673f2ca0818b37197b"; + name = "symfony-mime-7af452bf51c46f18da00feb32e1ad36db9426515"; src = fetchurl { - url = https://api.github.com/repos/symfony/mime/zipball/1b2092244374cbe48ae733673f2ca0818b37197b; - sha256 = "0d2vhmd25d7yvh9xzl2vazx2bfsb8qyvd2kgvl9cry1va4vrpkj3"; + url = https://api.github.com/repos/symfony/mime/zipball/7af452bf51c46f18da00feb32e1ad36db9426515; + sha256 = "1rkm66zr6sfp8jw80h4vjrbpx40sqhhlpbc126x990mbzzapjlay"; }; }; }; @@ -815,20 +815,20 @@ let "symfony/process" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-process-7e950b6366d4da90292c2e7fa820b3c1842b965a"; + name = "symfony-process-f5481b22729d465acb1cea3455fc04ce84b0148b"; src = fetchurl { - url = https://api.github.com/repos/symfony/process/zipball/7e950b6366d4da90292c2e7fa820b3c1842b965a; - sha256 = "07ykgz5bjd45izf5n6jm2n27wcaa7aih2wlsiln1ffj9vqd6l1s4"; + url = https://api.github.com/repos/symfony/process/zipball/f5481b22729d465acb1cea3455fc04ce84b0148b; + sha256 = "1cz0gd7lkp07dlylf8c32fjpfsm9z3d66iwx45i7b5wh5gc96ns0"; }; }; }; "symfony/routing" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-routing-69919991c845b34626664ddc9b3aef9d09d2a5df"; + name = "symfony-routing-049e7c5c41f98511959668791b4adc0898a821b3"; src = fetchurl { - url = https://api.github.com/repos/symfony/routing/zipball/69919991c845b34626664ddc9b3aef9d09d2a5df; - sha256 = "0ghynrw6d9dpskhgyf3ljlz4pfmi68r3bzhr45lygadx21yacddw"; + url = https://api.github.com/repos/symfony/routing/zipball/049e7c5c41f98511959668791b4adc0898a821b3; + sha256 = "1557bvcmxpa7hmcvwl9qf94l7n9x0y7xw2k3s8v85ys35fi54clw"; }; }; }; @@ -865,10 +865,10 @@ let "symfony/var-dumper" = { targetDir = ""; src = composerEnv.buildZipPackage { - name = "symfony-var-dumper-0da0e174f728996f5d5072d6a9f0a42259dbc806"; + name = "symfony-var-dumper-c194bcedde6295f3ec3e9eba1f5d484ea97c41a7"; src = fetchurl { - url = https://api.github.com/repos/symfony/var-dumper/zipball/0da0e174f728996f5d5072d6a9f0a42259dbc806; - sha256 = "1qmv99bvq10siy8bbszqmn488cjcm70vip4xs8vxwm6x6x5cw1ia"; + url = https://api.github.com/repos/symfony/var-dumper/zipball/c194bcedde6295f3ec3e9eba1f5d484ea97c41a7; + sha256 = "0wccbr4l03asdar89bss3fhy486wjjqgjsk5iypmxaiga12ac01b"; }; }; }; diff --git a/pkgs/servers/zoneminder/default.nix b/pkgs/servers/zoneminder/default.nix index c4e9e915381b..2ea162b0d60e 100644 --- a/pkgs/servers/zoneminder/default.nix +++ b/pkgs/servers/zoneminder/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchFromGitHub, fetchurl, fetchpatch, substituteAll, cmake, makeWrapper, pkg-config -, curl, ffmpeg_3, glib, libjpeg, libselinux, libsepol, mp4v2, libmysqlclient, mariadb, pcre, perl, perlPackages +, curl, ffmpeg, glib, libjpeg, libselinux, libsepol, mp4v2, libmysqlclient, mariadb, pcre, perl, perlPackages , polkit, util-linuxMinimal, x264, zlib , coreutils, procps, psmisc, nixosTests }: @@ -138,7 +138,7 @@ in stdenv.mkDerivation rec { for f in includes/Event.php views/image.php ; do substituteInPlace web/$f \ - --replace "'ffmpeg " "'${ffmpeg_3}/bin/ffmpeg " + --replace "'ffmpeg " "'${ffmpeg}/bin/ffmpeg " done substituteInPlace web/includes/functions.php \ @@ -147,7 +147,7 @@ in stdenv.mkDerivation rec { ''; buildInputs = [ - curl ffmpeg_3 glib libjpeg libselinux libsepol mp4v2 libmysqlclient mariadb.client pcre perl polkit x264 zlib + curl ffmpeg glib libjpeg libselinux libsepol mp4v2 libmysqlclient mariadb.client pcre perl polkit x264 zlib util-linuxMinimal # for libmount ] ++ (with perlPackages; [ # build-time dependencies diff --git a/pkgs/shells/powershell/default.nix b/pkgs/shells/powershell/default.nix index dfc4f94e12b6..cedf578d46ab 100644 --- a/pkgs/shells/powershell/default.nix +++ b/pkgs/shells/powershell/default.nix @@ -38,6 +38,9 @@ stdenv.mkDerivation rec { rm -f $pslibs/libcrypto${ext}.1.0.0 rm -f $pslibs/libssl${ext}.1.0.0 + # At least the 7.1.3-osx package does not have the executable bit set. + chmod a+x $pslibs/pwsh + ls $pslibs '' + lib.optionalString (!stdenv.isDarwin) '' patchelf --replace-needed libcrypto${ext}.1.0.0 libcrypto${ext}.1.1 $pslibs/libmi.so @@ -55,7 +58,8 @@ stdenv.mkDerivation rec { doInstallCheck = true; installCheckPhase = '' - $out/bin/pwsh --help > /dev/null + # May need a writable home, seen on Darwin. + HOME=$TMP $out/bin/pwsh --help > /dev/null ''; meta = with lib; { diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix index 89656dde2928..b9f05bdff8d0 100644 --- a/pkgs/test/default.nix +++ b/pkgs/test/default.nix @@ -50,5 +50,7 @@ with pkgs; cuda = callPackage ./cuda { }; + trivial = callPackage ../build-support/trivial-builders/test.nix {}; + writers = callPackage ../build-support/writers/test.nix {}; } diff --git a/pkgs/tools/X11/find-cursor/default.nix b/pkgs/tools/X11/find-cursor/default.nix index 9e3b779d686b..3f330c63b0f1 100644 --- a/pkgs/tools/X11/find-cursor/default.nix +++ b/pkgs/tools/X11/find-cursor/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "find-cursor"; - version = "1.6"; + version = "1.7"; src = fetchFromGitHub { owner = "arp242"; repo = "find-cursor"; rev = "v${version}"; - sha256 = "13lpcxklv9ayqapyk9pmwxkinhxah5hkr6n0jc2m5hm68nh220w1"; + sha256 = "sha256-cFvhoEPDFLw6rsPYUF9gqAFzINewnszJEzxRK064NEU="; }; nativeBuildInputs = [ installShellFiles git ]; diff --git a/pkgs/tools/X11/hsetroot/default.nix b/pkgs/tools/X11/hsetroot/default.nix index 69842a7bd59c..95ccd9586d9c 100644 --- a/pkgs/tools/X11/hsetroot/default.nix +++ b/pkgs/tools/X11/hsetroot/default.nix @@ -24,6 +24,10 @@ stdenv.mkDerivation rec { libXinerama ]; + postPatch = lib.optionalString (!stdenv.cc.isGNU) '' + sed -i -e '/--no-as-needed/d' Makefile + ''; + makeFlags = [ "PREFIX=$(out)" ]; preInstall = '' diff --git a/pkgs/tools/X11/opentabletdriver/default.nix b/pkgs/tools/X11/opentabletdriver/default.nix index 0ab7be8374cf..5128e4d30ca5 100644 --- a/pkgs/tools/X11/opentabletdriver/default.nix +++ b/pkgs/tools/X11/opentabletdriver/default.nix @@ -23,18 +23,18 @@ stdenv.mkDerivation rec { pname = "OpenTabletDriver"; - version = "0.5.1"; + version = "0.5.3.1"; src = fetchFromGitHub { owner = "InfinityGhost"; repo = "OpenTabletDriver"; rev = "v${version}"; - sha256 = "1if2mkj193yzf5si9pwaynrm6wkhqy7ihk4k1lklzcryk5675w36"; + sha256 = "OT8/c+6wNpZyq/q7uMxIqmyJKNAq0B4ynEAqFF0GWyo="; }; debPkg = fetchurl { url = "https://github.com/InfinityGhost/OpenTabletDriver/releases/download/v${version}/OpenTabletDriver.deb"; - sha256 = "16a1rr0yxra1dhwysbbfgsxpigh2jhjlsl7r28dgp8qcxncck7wg"; + sha256 = "0nm0v1xhphl6g6rz3li4rbdp7408g6sf9l4nh3mbbif5042xa0qh"; }; nativeBuildInputs = [ diff --git a/pkgs/tools/X11/opentabletdriver/deps.nix b/pkgs/tools/X11/opentabletdriver/deps.nix index ccb7097153bd..041795596b1f 100644 --- a/pkgs/tools/X11/opentabletdriver/deps.nix +++ b/pkgs/tools/X11/opentabletdriver/deps.nix @@ -41,8 +41,8 @@ }) (fetchNuGet { name = "HidSharpCore"; - version = "1.2.1"; - sha256 = "0vcw38skr9g691gxbzv3cf6y9rk11vh5pvcyjshdgii2z1z8a4g2"; + version = "1.2.1.1"; + sha256 = "1zkndglmz0s8rblfhnqcvv90rkq2i7lf4bc380g7z8h1avf2ikll"; }) (fetchNuGet { name = "MessagePack.Annotations"; @@ -121,8 +121,8 @@ }) (fetchNuGet { name = "Octokit"; - version = "0.48.0"; - sha256 = "17ria1shx04rb6knbaswpqndmwam6v3r3lsfsd486q584798ccn8"; + version = "0.50.0"; + sha256 = "1ignj5i6a1c19qqrw00wlr9fdjmwrxkxz7gdxj0x653w84gbv7qq"; }) (fetchNuGet { name = "PangoSharp"; diff --git a/pkgs/tools/X11/opentabletdriver/update.sh b/pkgs/tools/X11/opentabletdriver/update.sh index 715857cf8f46..9944bb0b6dea 100755 --- a/pkgs/tools/X11/opentabletdriver/update.sh +++ b/pkgs/tools/X11/opentabletdriver/update.sh @@ -7,7 +7,7 @@ cd "$(dirname "${BASH_SOURCE[0]}")" deps_file="$(realpath "./deps.nix")" -new_version="$(curl -s "https://api.github.com/repos/InfinityGhost/OpenTabletDriver/releases" | jq -r '.[0].tag_name' | sed 's|[^0-9.]||g')" +new_version="$(curl -s "https://api.github.com/repos/OpenTabletDriver/OpenTabletDriver/releases" | jq -r '.[0].tag_name' | sed 's|[^0-9.]||g')" old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)" if [[ "$new_version" == "$old_version" ]]; then echo "Up to date" @@ -15,8 +15,8 @@ if [[ "$new_version" == "$old_version" ]]; then fi # Updating the hash of deb package manually since there seems to be no way to do it automatically -oldDebPkgUrl="https://github.com/InfinityGhost/OpenTabletDriver/releases/download/v${old_version}/OpenTabletDriver.deb"; -newDebPkgUrl="https://github.com/InfinityGhost/OpenTabletDriver/releases/download/v${new_version}/OpenTabletDriver.deb"; +oldDebPkgUrl="https://github.com/OpenTabletDriver/OpenTabletDriver/releases/download/v${old_version}/OpenTabletDriver.deb"; +newDebPkgUrl="https://github.com/OpenTabletDriver/OpenTabletDriver/releases/download/v${new_version}/OpenTabletDriver.deb"; oldDebSha256=$(nix-prefetch-url "$oldDebPkgUrl") newDebSha256=$(nix-prefetch-url "$newDebPkgUrl") echo "oldDebSha256: $oldDebSha256 newDebSha256: $newDebSha256" diff --git a/pkgs/tools/admin/awscli2/default.nix b/pkgs/tools/admin/awscli2/default.nix index eeb511cd31c1..0824a26855dd 100644 --- a/pkgs/tools/admin/awscli2/default.nix +++ b/pkgs/tools/admin/awscli2/default.nix @@ -3,12 +3,12 @@ let py = python3.override { packageOverrides = self: super: { botocore = super.botocore.overridePythonAttrs (oldAttrs: rec { - version = "2.0.0dev109"; + version = "2.0.0dev112"; src = fetchFromGitHub { owner = "boto"; repo = "botocore"; - rev = "b006ff741d12608a9187b873e276abd1fd8eb707"; - sha256 = "sha256-uU3XVQiwtbBt7cdSwAeHkv6NUbL8kK2Ro44h1GYyA1A="; + rev = "221c0aa5dbad42f096e00fed45d2e2071561b1da"; + sha256 = "sha256-uJCP3bUK/xACQVG4kMBDIIP+zPjre+uWbqWEC/gBTD4="; }; }); prompt_toolkit = super.prompt_toolkit.overridePythonAttrs (oldAttrs: rec { @@ -31,13 +31,13 @@ let in with py.pkgs; buildPythonApplication rec { pname = "awscli2"; - version = "2.2.1"; # N.B: if you change this, change botocore to a matching version too + version = "2.2.4"; # N.B: if you change this, change botocore to a matching version too src = fetchFromGitHub { owner = "aws"; repo = "aws-cli"; rev = version; - sha256 = "sha256-TafYBkRlPCqewGBMgTfcX8kLtDhSCdiUYK1xXofKrLk="; + sha256 = "sha256-MctW31X012DXY16qS6AP6nLiaAt/cuA8iMwGm0oXi6M="; }; postPatch = '' diff --git a/pkgs/tools/admin/eksctl/default.nix b/pkgs/tools/admin/eksctl/default.nix index ecfa1675a4e3..57bc14ba900c 100644 --- a/pkgs/tools/admin/eksctl/default.nix +++ b/pkgs/tools/admin/eksctl/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "eksctl"; - version = "0.47.0"; + version = "0.48.0"; src = fetchFromGitHub { owner = "weaveworks"; repo = pname; rev = version; - sha256 = "sha256-fJL6Fs2rt3Q26cUww0Ca/FZnRN7/KHtp9mHUrpwTLuY="; + sha256 = "sha256-jhf+FIhKkROyNUYh96zFrzxE5hVFnxF6xrTwvivj9B8="; }; - vendorSha256 = "sha256-SeO5RNpGrA28xOKr7EoRtMtyOlAPFYEAFtodhIbe1Zk="; + vendorSha256 = "sha256-U5NAhhum+VsSlhB3pHMmnkaqjWvZJw4BDHVIo4YIkrY="; doCheck = false; diff --git a/pkgs/tools/admin/trivy/default.nix b/pkgs/tools/admin/trivy/default.nix index f9f343116539..cbb4b875d591 100644 --- a/pkgs/tools/admin/trivy/default.nix +++ b/pkgs/tools/admin/trivy/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "trivy"; - version = "0.18.0"; + version = "0.18.1"; src = fetchFromGitHub { owner = "aquasecurity"; repo = pname; rev = "v${version}"; - sha256 = "sha256-D4oqLyH5JU8AycRZuA0isQmE3UP/0WmBmKW3xvSzk2M="; + sha256 = "sha256-Ocoz+sYzbTQ31ZWSrW6UVHI7PGog0BrVhO0y0N8T1Zo="; }; vendorSha256 = "sha256-R50alGFyb2ZR7PT1jIsYWMIO45CPet+A5wq+clC1NIY="; diff --git a/pkgs/tools/backup/dar/default.nix b/pkgs/tools/backup/dar/default.nix index efb81a58adbc..067c01366077 100644 --- a/pkgs/tools/backup/dar/default.nix +++ b/pkgs/tools/backup/dar/default.nix @@ -8,12 +8,12 @@ with lib; stdenv.mkDerivation rec { - version = "2.7.0"; + version = "2.7.1"; pname = "dar"; src = fetchurl { url = "mirror://sourceforge/dar/${pname}-${version}.tar.gz"; - sha256 = "sha256-aJqNi2jZJgQmq0IObbAXZcmK2vvWePvHEUtw8O2nBwo="; + sha256 = "sha256-dtreitvrgX/8eL9ZLIIASHq1ZQI0z1OVOanLxdNGvu8="; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/tools/backup/monolith/default.nix b/pkgs/tools/backup/monolith/default.nix index ebaf5dbc9ff4..8c2be78af2a1 100644 --- a/pkgs/tools/backup/monolith/default.nix +++ b/pkgs/tools/backup/monolith/default.nix @@ -3,6 +3,7 @@ , fetchFromGitHub , pkg-config , openssl +, libiconv , Security }: @@ -21,7 +22,7 @@ rustPlatform.buildRustPackage rec { nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ]; buildInputs = lib.optionals stdenv.isLinux [ openssl ] - ++ lib.optionals stdenv.isDarwin [ Security ]; + ++ lib.optionals stdenv.isDarwin [ libiconv Security ]; checkFlagsArray = [ "--skip=tests::cli" ]; diff --git a/pkgs/tools/graphics/cfdg/default.nix b/pkgs/tools/graphics/cfdg/default.nix index 9295bbe28d56..44a1e0d1d2a1 100644 --- a/pkgs/tools/graphics/cfdg/default.nix +++ b/pkgs/tools/graphics/cfdg/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, libpng, bison, flex, ffmpeg_3, icu }: +{ lib, stdenv, fetchFromGitHub, libpng, bison, flex, ffmpeg, icu }: stdenv.mkDerivation rec { pname = "cfdg"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { sha256 = "13m8npccacmgxbs4il45zw53dskjh53ngv2nxahwqw8shjrws4mh"; }; - buildInputs = [ libpng bison flex ffmpeg_3 icu ]; + buildInputs = [ libpng bison flex ffmpeg icu ]; postPatch = '' sed -e "/YY_NO_UNISTD/a#include " -i src-common/cfdg.l diff --git a/pkgs/tools/graphics/pikchr/default.nix b/pkgs/tools/graphics/pikchr/default.nix index 9b06d0629138..432c70231d0d 100644 --- a/pkgs/tools/graphics/pikchr/default.nix +++ b/pkgs/tools/graphics/pikchr/default.nix @@ -17,6 +17,8 @@ stdenv.mkDerivation { substituteInPlace Makefile --replace open "test -f" ''; + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; + installPhase = '' install -Dm755 pikchr $out/bin/pikchr install -Dm755 pikchr.out $out/lib/pikchr.o diff --git a/pkgs/tools/graphics/snapdragon-profiler/default.nix b/pkgs/tools/graphics/snapdragon-profiler/default.nix index 96fada91093a..02a96184812e 100644 --- a/pkgs/tools/graphics/snapdragon-profiler/default.nix +++ b/pkgs/tools/graphics/snapdragon-profiler/default.nix @@ -4,7 +4,7 @@ , makeDesktopItem , copyDesktopItems , icoutils -, mono6 +, mono , jre , androidenv , gtk-sharp-2_0 @@ -38,7 +38,7 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - mono6 + mono gtk-sharp-2_0 gtk2 libcxx @@ -52,7 +52,7 @@ stdenv.mkDerivation rec { mv *.so $out/lib cp -r * $out/lib/snapdragon-profiler - makeWrapper "${mono6}/bin/mono" $out/bin/snapdragon-profiler \ + makeWrapper "${mono}/bin/mono" $out/bin/snapdragon-profiler \ --add-flags "$out/lib/snapdragon-profiler/SnapdragonProfiler.exe" \ --suffix PATH : ${lib.makeBinPath [ jre androidenv.androidPkgs_9_0.platform-tools coreutils ]} \ --prefix MONO_GAC_PREFIX : ${gtk-sharp-2_0} \ diff --git a/pkgs/tools/misc/chezmoi/default.nix b/pkgs/tools/misc/chezmoi/default.nix index b2916dab33c6..b4fa271ff589 100644 --- a/pkgs/tools/misc/chezmoi/default.nix +++ b/pkgs/tools/misc/chezmoi/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "chezmoi"; - version = "2.0.11"; + version = "2.0.12"; src = fetchFromGitHub { owner = "twpayne"; repo = "chezmoi"; rev = "v${version}"; - sha256 = "sha256-z9ALpoF2ZLigAG/uvoYVG1YTy+EM4bDQDDtxd3PgQW8="; + sha256 = "sha256-CF/Ers/w1ZGBSvRVxyNf1R4CwwidK9ItiFBCIjToYg0="; }; - vendorSha256 = "sha256-CYDFEVZ04csn4BjvwUvfOafEjucnDHyeYU7gNwO1xTQ="; + vendorSha256 = "sha256-tdd3uUxN+ZJ0hX4IqSM/xPZzcawtOa5xgjPhRrns5yM="; doCheck = false; diff --git a/pkgs/tools/misc/code-minimap/default.nix b/pkgs/tools/misc/code-minimap/default.nix index 350c417b2bbc..560ad4604713 100644 --- a/pkgs/tools/misc/code-minimap/default.nix +++ b/pkgs/tools/misc/code-minimap/default.nix @@ -7,16 +7,16 @@ rustPlatform.buildRustPackage rec { pname = "code-minimap"; - version = "0.5.1"; + version = "0.6.0"; src = fetchFromGitHub { owner = "wfxr"; repo = pname; rev = "v${version}"; - sha256 = "sha256-5YNY0MRlKKX6u32Id6J7bIPSHRi44TISoKqpAS9T8ow="; + sha256 = "sha256-nWfvRrKkUrr2owv9sLgORVPYp68/Ibdu/P1VddMb61s="; }; - cargoSha256 = "sha256-xp1ei41HdbSxq8hoQB4JFtYZLb4bIKSlwEwwxUcjojE="; + cargoSha256 = "sha256-OmWn6Z/r/gXMD4gp/TDo0Hokliq8Qgb354q8ZFpVG2s="; buildInputs = lib.optional stdenv.isDarwin libiconv; diff --git a/pkgs/tools/misc/discocss/default.nix b/pkgs/tools/misc/discocss/default.nix index 43214c866302..2e0506bf4209 100644 --- a/pkgs/tools/misc/discocss/default.nix +++ b/pkgs/tools/misc/discocss/default.nix @@ -2,13 +2,13 @@ stdenvNoCC.mkDerivation rec { pname = "discocss"; - version = "0.1.0"; + version = "0.1.1"; src = fetchFromGitHub { owner = "mlvzk"; repo = pname; rev = "v${version}"; - sha256 = "1818jca3sw2ngw1n488q82w5rakx4cxgknnkmsaa0sz4h8gldfy8"; + sha256 = "sha256-EdkcTVDFQppBeAoyM5hMMIK0d4B87JyVlmCW7zlGfDs="; }; dontBuild = true; @@ -21,7 +21,7 @@ stdenvNoCC.mkDerivation rec { description = "A tiny Discord css-injector"; homepage = "https://github.com/mlvzk/discocss"; license = licenses.mpl20; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = with maintainers; [ mlvzk ]; }; } diff --git a/pkgs/tools/misc/dpt-rp1-py/default.nix b/pkgs/tools/misc/dpt-rp1-py/default.nix index d4ad2dffd82e..52038c8efa9c 100644 --- a/pkgs/tools/misc/dpt-rp1-py/default.nix +++ b/pkgs/tools/misc/dpt-rp1-py/default.nix @@ -1,13 +1,13 @@ { lib, python3Packages, fetchFromGitHub }: python3Packages.buildPythonApplication rec { pname = "dpt-rp1-py"; - version = "0.1.12"; + version = "0.1.13"; src = fetchFromGitHub { owner = "janten"; repo = pname; rev = "v${version}"; - sha256 = "0xw853s5bx2lr57w6ldfjzi1ppc6px66zd7hzk8y2kg82q6bnasq"; + sha256 = "1jgkfn5kfnx98xs0dmym1h9mv1mrzlglk7x0fzs2jlc56c18w9dk"; }; doCheck = false; diff --git a/pkgs/tools/misc/etcher/default.nix b/pkgs/tools/misc/etcher/default.nix index a94dbae9a25a..9bda86db9bf2 100644 --- a/pkgs/tools/misc/etcher/default.nix +++ b/pkgs/tools/misc/etcher/default.nix @@ -10,7 +10,7 @@ let sha256 = { - "x86_64-linux" = "03nxcafg405vcs4sb5qhpm5aqaai87d9ksqkl37mmzf6g0n4qbih"; + "x86_64-linux" = "sha256-nGIUOS4LzfeXamcT0uigbQsVkULH2R3bli0DDEpg3ns="; "i686-linux" = "0z6y45sz086njpywg7f0jn6n02qynb1qbi889g2kcgwbfjvmcpm1"; }."${stdenv.system}"; @@ -25,7 +25,7 @@ in stdenv.mkDerivation rec { pname = "etcher"; - version = "1.5.117"; + version = "1.5.120"; src = fetchurl { url = "https://github.com/balena-io/etcher/releases/download/v${version}/balena-etcher-electron_${version}_${arch}.deb"; diff --git a/pkgs/tools/misc/fluent-bit/default.nix b/pkgs/tools/misc/fluent-bit/default.nix index d51676f4a5ab..89435e769896 100644 --- a/pkgs/tools/misc/fluent-bit/default.nix +++ b/pkgs/tools/misc/fluent-bit/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "fluent-bit"; - version = "1.7.4"; + version = "1.7.5"; src = fetchFromGitHub { owner = "fluent"; repo = "fluent-bit"; rev = "v${version}"; - sha256 = "sha256-xOrEPZ+AUihVVaxrqCCeO6n3XFkVahCzHOuX947LRFs="; + sha256 = "sha256-n7X6VlNZVsL+Tn9t3L4mTblVjPTKgTMmcRdkDGPXI8U="; }; nativeBuildInputs = [ cmake flex bison ]; diff --git a/pkgs/tools/misc/goss/default.nix b/pkgs/tools/misc/goss/default.nix new file mode 100644 index 000000000000..bbe947ecd120 --- /dev/null +++ b/pkgs/tools/misc/goss/default.nix @@ -0,0 +1,34 @@ +{ lib, fetchFromGitHub, buildGoModule }: + +buildGoModule rec { + pname = "goss"; + version = "0.3.16"; + + src = fetchFromGitHub { + owner = "aelsabbahy"; + repo = pname; + rev = "v${version}"; + sha256 = "1m5w5vwmc9knvaihk61848rlq7qgdyylzpcwi64z84rkw8qdnj6p"; + }; + + vendorSha256 = "1lyqjkwj8hybj5swyrv6357hs8sxmf4wim0c8yhfb9mv7fsxhrv7"; + + CGO_ENABLED = 0; + preBuild = '' + buildFlagsArray+=("-ldflags" "-s -w -X main.version=v${version}") + ''; + + meta = with lib; { + homepage = "https://github.com/aelsabbahy/goss/"; + changelog = "https://github.com/aelsabbahy/goss/releases/tag/v${version}"; + description = "Quick and easy server validation"; + longDescription = '' + Goss is a YAML based serverspec alternative tool for validating a server’s configuration. + It eases the process of writing tests by allowing the user to generate tests from the current system state. + Once the test suite is written they can be executed, waited-on, or served as a health endpoint. + ''; + license = licenses.asl20; + platforms = platforms.linux; + maintainers = with maintainers; [ hyzual jk ]; + }; +} diff --git a/pkgs/tools/misc/logtop/default.nix b/pkgs/tools/misc/logtop/default.nix index 855a85f53aac..2113da9976fb 100644 --- a/pkgs/tools/misc/logtop/default.nix +++ b/pkgs/tools/misc/logtop/default.nix @@ -13,6 +13,7 @@ stdenv.mkDerivation { nativeBuildInputs = [ pkg-config ]; buildInputs = [ ncurses uthash ]; + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ]; installFlags = [ "DESTDIR=$(out)" ]; postConfigure = '' diff --git a/pkgs/tools/misc/macchina/default.nix b/pkgs/tools/misc/macchina/default.nix index 42a83f91df6d..8d40200a9a70 100644 --- a/pkgs/tools/misc/macchina/default.nix +++ b/pkgs/tools/misc/macchina/default.nix @@ -1,4 +1,5 @@ -{ lib, rustPlatform, fetchFromGitHub, installShellFiles }: +{ lib, stdenv, rustPlatform, fetchFromGitHub, installShellFiles +, libiconv, Foundation }: rustPlatform.buildRustPackage rec { pname = "macchina"; @@ -14,6 +15,7 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "sha256-OfOh0YXeLT/kBuR9SOV7pHa8Z4b6+JvtVwqqwd1hCJY="; nativeBuildInputs = [ installShellFiles ]; + buildInputs = lib.optionals stdenv.isDarwin [ libiconv Foundation ]; postInstall = '' installShellCompletion target/completions/*.{bash,fish} diff --git a/pkgs/tools/misc/mdbtools/default.nix b/pkgs/tools/misc/mdbtools/default.nix index 1c3273659169..b25a850311e3 100644 --- a/pkgs/tools/misc/mdbtools/default.nix +++ b/pkgs/tools/misc/mdbtools/default.nix @@ -1,32 +1,26 @@ { stdenv, lib, fetchFromGitHub, glib, readline , bison, flex, pkg-config, autoreconfHook, libxslt, makeWrapper , txt2man, which -# withUi currently doesn't work. It compiles but fails to run. -, withUi ? false, gtk2, gnome2 }: -let - uiDeps = [ gtk2 ] ++ (with gnome2; [ GConf libglade libgnomeui gnome-doc-utils ]); - -in stdenv.mkDerivation rec { pname = "mdbtools"; - version = "0.8.2"; + version = "0.9.3"; src = fetchFromGitHub { - owner = "cyberemissary"; + owner = "mdbtools"; repo = "mdbtools"; - rev = version; - sha256 = "12rhf6rgnws6br5dn1l2j7i77q9p4l6ryga10jpax01vvzhr26qc"; + rev = "v${version}"; + sha256 = "11cv7hh8j8akpgm1a6pp7im6iacpgx6wzcg9n9rmb41j0fgxamdf"; }; configureFlags = [ "--disable-scrollkeeper" ]; nativeBuildInputs = [ pkg-config bison flex autoreconfHook txt2man which - ] ++ lib.optional withUi libxslt; + ]; - buildInputs = [ glib readline ] ++ lib.optionals withUi uiDeps; + buildInputs = [ glib readline ]; enableParallelBuilding = true; diff --git a/pkgs/tools/misc/microplane/default.nix b/pkgs/tools/misc/microplane/default.nix index 66717912599f..502188ae4d2f 100644 --- a/pkgs/tools/misc/microplane/default.nix +++ b/pkgs/tools/misc/microplane/default.nix @@ -2,19 +2,19 @@ buildGoModule rec { pname = "microplane"; - version = "0.0.28"; + version = "0.0.31"; src = fetchFromGitHub { owner = "Clever"; repo = "microplane"; rev = "v${version}"; - sha256 = "00ayci0a4lv67sg2bb4fw5wpdlps4pjqiiam595dar82lsjwj63j"; + sha256 = "sha256-PcojOFe3SHhnFy09kcxHhb5kd07TG7Uq+coPUNbJjx4="; }; - vendorSha256 = "0hn2gsm9bgmrm620fn2cx28l2gj1yfgvjix9ds50m7kwkx6q0dga"; + vendorSha256 = "sha256-5HHdxSXg3ZIUyFQALaYgvf4pQwNxG58cF4vnCnMgAuY="; buildFlagsArray = '' - -ldflags="-s -w -X main.version=v${version}" + -ldflags=-s -w -X main.version=${version} ''; postInstall = '' diff --git a/pkgs/tools/misc/rig/default.nix b/pkgs/tools/misc/rig/default.nix index 9fa28264eed9..5efa92ef1575 100644 --- a/pkgs/tools/misc/rig/default.nix +++ b/pkgs/tools/misc/rig/default.nix @@ -13,6 +13,8 @@ stdenv.mkDerivation rec { # http://deb.debian.org/debian/pool/main/r/rig/rig_1.11-1.diff.gz patches = [ ./rig_1.11-1.diff ]; + makeFlags = [ "CXX=${stdenv.cc.targetPrefix}c++" ]; + meta = { homepage = "http://rig.sourceforge.net/"; description = "Random identity generator"; diff --git a/pkgs/tools/misc/silicon/default.nix b/pkgs/tools/misc/silicon/default.nix index 123dc715546c..d115997498b3 100644 --- a/pkgs/tools/misc/silicon/default.nix +++ b/pkgs/tools/misc/silicon/default.nix @@ -9,6 +9,7 @@ , freetype , libxcb , python3 +, libiconv , AppKit , CoreText , Security @@ -29,7 +30,7 @@ rustPlatform.buildRustPackage rec { buildInputs = [ llvmPackages.libclang expat freetype ] ++ lib.optionals stdenv.isLinux [ libxcb ] - ++ lib.optionals stdenv.isDarwin [ AppKit CoreText Security ]; + ++ lib.optionals stdenv.isDarwin [ libiconv AppKit CoreText Security ]; nativeBuildInputs = [ cmake pkg-config ] ++ lib.optionals stdenv.isLinux [ python3 ]; diff --git a/pkgs/tools/misc/yafetch/default.nix b/pkgs/tools/misc/yafetch/default.nix new file mode 100644 index 000000000000..cfdc0219eef2 --- /dev/null +++ b/pkgs/tools/misc/yafetch/default.nix @@ -0,0 +1,29 @@ +{ lib, stdenv, fetchFromGitLab }: + +stdenv.mkDerivation rec { + pname = "yafetch"; + version = "unstable-2021-05-13"; + + src = fetchFromGitLab { + owner = "cyberkitty"; + repo = pname; + rev = "627465e6bf0192a9bc10f9c9385cde544766486f"; + sha256 = "1r8jnzfyjs5ardq697crwysclfm3k8aiqvfbsyhsl251a08yls5c"; + }; + + # Use the provided NixOS logo automatically + prePatch = '' + echo "#include \"ascii/nixos.h\"" > config.h + ''; + + # Fixes installation path + DESTDIR = placeholder "out"; + + meta = with lib; { + homepage = "https://gitlab.com/cyberkitty/yafetch"; + description = "Yet another fetch clone written in C++"; + license = licenses.gpl2Only; + maintainers = [ maintainers.ivar ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/misc/yle-dl/default.nix b/pkgs/tools/misc/yle-dl/default.nix index 68218592bbb9..cd04e2020b1c 100644 --- a/pkgs/tools/misc/yle-dl/default.nix +++ b/pkgs/tools/misc/yle-dl/default.nix @@ -2,13 +2,13 @@ python3Packages.buildPythonApplication rec { pname = "yle-dl"; - version = "20210212"; + version = "20210502"; src = fetchFromGitHub { owner = "aajanki"; repo = "yle-dl"; rev = version; - sha256 = "sha256-0JnigYmslQ/7KsQAFg3AaWPAU/tD1lS7lF6OCcv/ze4="; + sha256 = "sha256-HkhyxsiOMOfTHTj+qmY8l2z2sMtO4eMZmJUU/WvV4wY="; }; propagatedBuildInputs = with python3Packages; [ @@ -22,6 +22,7 @@ python3Packages.buildPythonApplication rec { meta = with lib; { description = "Downloads videos from Yle (Finnish Broadcasting Company) servers"; homepage = "https://aajanki.github.io/yle-dl/"; + changelog = "https://github.com/aajanki/yle-dl/blob/${version}/ChangeLog"; license = licenses.gpl3Plus; maintainers = with maintainers; [ dezgeg SuperSandro2000 ]; platforms = platforms.unix; diff --git a/pkgs/tools/networking/findomain/default.nix b/pkgs/tools/networking/findomain/default.nix index cdea68e56986..018a210e4aa2 100644 --- a/pkgs/tools/networking/findomain/default.nix +++ b/pkgs/tools/networking/findomain/default.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "findomain"; - version = "4.2.1"; + version = "4.3.0"; src = fetchFromGitHub { owner = "Edu4rdSHL"; repo = pname; rev = version; - sha256 = "sha256-yVjxwgReZhdArTXr1rUsU+pKIlxCVVf3NfR0znqzfxA="; + sha256 = "sha256-UC70XmhAVf2a2QO9bkIRE5vEsWyIA0DudZfKraNffGY="; }; - cargoSha256 = "sha256-t1/BQD8ostyMJh/HoZ7n3bKw5LfDZQeq03AO7JY0G8E="; + cargoSha256 = "sha256-Cdfh3smX6UjiG29L9hG22bOQQIjaNrv+okl153mIiso="; nativeBuildInputs = [ installShellFiles perl ]; buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ]; diff --git a/pkgs/tools/networking/ipinfo/default.nix b/pkgs/tools/networking/ipinfo/default.nix new file mode 100644 index 000000000000..84dc5707cfa6 --- /dev/null +++ b/pkgs/tools/networking/ipinfo/default.nix @@ -0,0 +1,25 @@ +{ lib +, buildGoModule +, fetchFromGitHub +}: + +buildGoModule rec { + pname = "ipinfo"; + version = "1.1.2"; + + src = fetchFromGitHub { + owner = pname; + repo = "cli"; + rev = "${pname}-${version}"; + sha256 = "0hcv0fyrrybasxk2j1la4jmpi161apkg6d4nlsjw6548li6c6a9n"; + }; + + vendorSha256 = null; + + meta = with lib; { + description = "Command Line Interface for the IPinfo API"; + homepage = "https://github.com/ipinfo/cli"; + license = with licenses; [ asl20 ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/tools/networking/lldpd/default.nix b/pkgs/tools/networking/lldpd/default.nix index f2641235a197..a4e5d565756b 100644 --- a/pkgs/tools/networking/lldpd/default.nix +++ b/pkgs/tools/networking/lldpd/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "lldpd"; - version = "1.0.10"; + version = "1.0.11"; src = fetchurl { url = "https://media.luffy.cx/files/lldpd/${pname}-${version}.tar.gz"; - sha256 = "sha256-RFstdgN+8+vQPUDh/B8p7wgQL6o6Cf6Ea5Unl8i8dyI="; + sha256 = "sha256-tR0VcA+678t/uFw1BrSdMxc6DxXXAPkz7wRAZ7QtRuQ="; }; configureFlags = [ diff --git a/pkgs/tools/networking/modem-manager/default.nix b/pkgs/tools/networking/modem-manager/default.nix index 06102ac2d903..71ea50ea1726 100644 --- a/pkgs/tools/networking/modem-manager/default.nix +++ b/pkgs/tools/networking/modem-manager/default.nix @@ -3,12 +3,12 @@ stdenv.mkDerivation rec { pname = "modem-manager"; - version = "1.14.10"; + version = "1.14.12"; package = "ModemManager"; src = fetchurl { url = "https://www.freedesktop.org/software/${package}/${package}-${version}.tar.xz"; - sha256 = "sha256-TqYLN1p2HhfnuwlbyolFee0OjjOyc9xpi1y+A5R/NX8="; + sha256 = "sha256-0QqXEZndwl3N8VbFasCOkWEsCVOdVlIueu1G1G5IO7E="; }; nativeBuildInputs = [ vala gobject-introspection gettext pkg-config ]; diff --git a/pkgs/tools/networking/telepresence2/default.nix b/pkgs/tools/networking/telepresence2/default.nix new file mode 100644 index 000000000000..97c758e19b4d --- /dev/null +++ b/pkgs/tools/networking/telepresence2/default.nix @@ -0,0 +1,28 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "telepresence2"; + version = "2.2.1"; + + src = fetchFromGitHub { + owner = "telepresenceio"; + repo = "telepresence"; + rev = "v${version}"; + sha256 = "0pr6vm68jr5ld7hy2b4dwmjziir59vg137c74rdn1wlhq3n8vr41"; + }; + + vendorSha256 = "0d0p879zchhrzrf6f5zc3vdcd5zi1ind7ibvb46y6wx6lp0f1nrp"; + + buildFlagsArray = '' + -ldflags=-s -w -X=github.com/telepresenceio/telepresence/v2/pkg/version.Version=${src.rev} + ''; + + subPackages = [ "cmd/telepresence" ]; + + meta = with lib; { + description = "Local development against a remote Kubernetes or OpenShift cluster"; + homepage = "https://www.getambassador.io/docs/telepresence/2.1/quick-start/"; + license = licenses.asl20; + maintainers = with maintainers; [ mausch ]; + }; +} diff --git a/pkgs/tools/networking/v2ray/default.nix b/pkgs/tools/networking/v2ray/default.nix index b525f78c4247..89e2f0f320df 100644 --- a/pkgs/tools/networking/v2ray/default.nix +++ b/pkgs/tools/networking/v2ray/default.nix @@ -3,22 +3,22 @@ }: let - version = "4.37.3"; + version = "4.38.3"; src = fetchFromGitHub { owner = "v2fly"; repo = "v2ray-core"; rev = "v${version}"; - sha256 = "0gbkjlrx4ddaxb5f21m3sxbb55ilvm5kqlrys6ckrx0xyz9hj38y"; + sha256 = "1vsq98h6zbm3wz1mgphl7dqlabgfg53fhkyn47vfbhhkbx6nwl7c"; }; - vendorSha256 = "sha256-hPzIAXImAEJux1VRqCgslgn8giTf9BgZBcEZyF4Ut9Y="; + vendorSha256 = "sha256-jXpGlJ30xBttysbUekMdw8fH0KVfPufWq0t7AXZrDEQ="; assets = { # MIT licensed "geoip.dat" = let - geoipRev = "202104150006"; - geoipSha256 = "0ppm5r4bycjm7q0vnxj62q8639kp06sfkkkrkk5gibyrwisr4vrp"; + geoipRev = "202104300531"; + geoipSha256 = "0srskpp0pmw4fzp4lgachjjvig4fy96523r7aj2bwig0ipfgr401"; in fetchurl { url = "https://github.com/v2fly/geoip/releases/download/${geoipRev}/geoip.dat"; sha256 = geoipSha256; @@ -26,8 +26,8 @@ let # MIT licensed "geosite.dat" = let - geositeRev = "20210415054336"; - geositeSha256 = "0vs9fjbw45ipi7minh0r8zgh3pbwxqlrhwahpwyc6s0hyxgdi40w"; + geositeRev = "20210430100800"; + geositeSha256 = "0wp111iip3lhkgpbrzzivl5flj44vj7slx9w7k307sls6hmjzlcb"; in fetchurl { url = "https://github.com/v2fly/domain-list-community/releases/download/${geositeRev}/dlc.dat"; sha256 = geositeSha256; diff --git a/pkgs/tools/package-management/cargo-release/default.nix b/pkgs/tools/package-management/cargo-release/default.nix index 7fb077344e4f..da57ae347143 100644 --- a/pkgs/tools/package-management/cargo-release/default.nix +++ b/pkgs/tools/package-management/cargo-release/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "cargo-release"; - version = "0.13.10"; + version = "0.13.11"; src = fetchFromGitHub { owner = "sunng87"; repo = "cargo-release"; rev = "v${version}"; - sha256 = "sha256-WWU+aNMNOOstHiGRE5nj2biWCL3uwyqJKgt0xCAfS0s="; + sha256 = "sha256-v0XKLwxUIxBt9hIUzprz+VsxCRifH1/SbNcI0sH2ENM="; }; - cargoSha256 = "sha256-W+/owW9Hl1cSBlfSN8Gea575tkjmZlwa5X6TCYyaLsM="; + cargoSha256 = "sha256-zbET6UsV29hAL83rw3XRgrcM5FABFNI3w3Kbd61FS7E="; nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ] diff --git a/pkgs/tools/package-management/createrepo_c/default.nix b/pkgs/tools/package-management/createrepo_c/default.nix index 92696a8d75f1..fc0628e09088 100644 --- a/pkgs/tools/package-management/createrepo_c/default.nix +++ b/pkgs/tools/package-management/createrepo_c/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "createrepo_c"; - version = "0.17.1"; + version = "0.17.2"; src = fetchFromGitHub { owner = "rpm-software-management"; repo = "createrepo_c"; rev = version; - sha256 = "G2xioH9XWntHFmUfTN2s2mdtIqgTTLKr5jZflwpaC8Q="; + sha256 = "sha256-rcrJjcWj+cTAE3k11Ynr7CQCOWD+rb60lcar0G2w06A="; }; patches = [ diff --git a/pkgs/tools/package-management/nvd/default.nix b/pkgs/tools/package-management/nvd/default.nix new file mode 100644 index 000000000000..1218ac01f9a6 --- /dev/null +++ b/pkgs/tools/package-management/nvd/default.nix @@ -0,0 +1,32 @@ +{ fetchFromGitLab, installShellFiles, lib, python3, stdenv }: + +stdenv.mkDerivation rec { + pname = "nvd"; + version = "0.1.1"; + + src = fetchFromGitLab { + owner = "khumba"; + repo = pname; + rev = "v${version}"; + sha256 = "0accq0cw6qsxin1fb2bp2ijgjf9akb9qlivkykpfsgnk5qjafv2n"; + }; + + buildInputs = [ python3 ]; + + nativeBuildInputs = [ installShellFiles ]; + + installPhase = '' + runHook preInstall + install -m555 -Dt $out/bin src/nvd + installManPage src/nvd.1 + runHook postInstall + ''; + + meta = with lib; { + description = "Nix/NixOS package version diff tool"; + homepage = "https://gitlab.com/khumba/nvd"; + license = licenses.asl20; + maintainers = with maintainers; [ khumba ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/tools/security/hcxtools/default.nix b/pkgs/tools/security/hcxtools/default.nix index 9478844055e1..d0fa57820795 100644 --- a/pkgs/tools/security/hcxtools/default.nix +++ b/pkgs/tools/security/hcxtools/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "hcxtools"; - version = "6.1.6"; + version = "6.2.0"; src = fetchFromGitHub { owner = "ZerBea"; repo = pname; rev = version; - sha256 = "sha256-x6sVFjM2GMGqpoAW7CtCLUoEAYLgulaUKXequQ7DmGQ="; + sha256 = "sha256-4/kqy0oIe2FdKWtVj11PAUbdWPcKmZ1aIxLx/Zw1E2w="; }; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/tools/security/sheesy-cli/default.nix b/pkgs/tools/security/sheesy-cli/default.nix new file mode 100644 index 000000000000..3929dbc8ad19 --- /dev/null +++ b/pkgs/tools/security/sheesy-cli/default.nix @@ -0,0 +1,37 @@ +{ lib, stdenv, rustPlatform, fetchCrate, installShellFiles +, libgpgerror, gpgme, gettext, openssl, Security +}: + +rustPlatform.buildRustPackage rec { + pname = "sheesy-cli"; + version = "4.0.11"; + + src = fetchCrate { + inherit version pname; + sha256 = "1l21ji9zqy8x1g2gvqwdhya505max07ibx1hh88s36k0jbvdb7xc"; + }; + + cargoSha256 = "159a5ph1gxwcgahyr8885lq3c1w76nxzfrfdpyqixqrr7jzx2rd3"; + cargoDepsName = pname; + + cargoBuildFlags = [ "--bin sy" "--features" "vault,extract,completions,substitute,process" ]; + + nativeBuildInputs = [ libgpgerror gpgme gettext installShellFiles ]; + + buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ]; + + postInstall = '' + installShellCompletion --cmd sy \ + --bash <($out/bin/sy completions bash) \ + --fish <($out/bin/sy completions fish) \ + --zsh <($out/bin/sy completions zsh) + ''; + + meta = with lib; { + description = "The 'share-secrets-safely' CLI to interact with GPG/pass-like vaults"; + homepage = "https://share-secrets-safely.github.io/cli/"; + changelog = "https://github.com/share-secrets-safely/cli/releases/tag/${version}"; + license = with licenses; [ lgpl21Only ]; + maintainers = with maintainers; [ devhell ]; + }; +} diff --git a/pkgs/tools/text/highlight/default.nix b/pkgs/tools/text/highlight/default.nix index 657dc548f86a..f44ddc9d0e91 100644 --- a/pkgs/tools/text/highlight/default.nix +++ b/pkgs/tools/text/highlight/default.nix @@ -5,13 +5,13 @@ with lib; let self = stdenv.mkDerivation rec { pname = "highlight"; - version = "4.0"; + version = "4.1"; src = fetchFromGitLab { owner = "saalen"; repo = "highlight"; rev = "v${version}"; - sha256 = "sha256-WWbT0CfrbHgpU5HQycRhU7Ymey1LKd/ruoF91F3mHdE="; + sha256 = "sha256-KktwbnL13Tcc2iWAjgqQSMSenUN6nYBEGbFrpB1kkr0="; }; enableParallelBuilding = true; diff --git a/pkgs/tools/text/jumanpp/default.nix b/pkgs/tools/text/jumanpp/default.nix index f002e228ac5d..b670bcaec28e 100644 --- a/pkgs/tools/text/jumanpp/default.nix +++ b/pkgs/tools/text/jumanpp/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "jumanpp"; - version = "2.0.0-rc2"; + version = "2.0.0-rc3"; src = fetchurl { url = "https://github.com/ku-nlp/${pname}/releases/download/v${version}/${pname}-${version}.tar.xz"; - sha256 = "17fzmd0f5m9ayfhsr0mg7hjp3pg1mhbgknhgyd8v87x46g8bg6qp"; + sha256 = "sha256-ASdr6qbkSe71M7QmuuwidCa4xQhDVoXBJ2XqvSY53pQ="; }; nativeBuildInputs = [ cmake ]; buildInputs = [ protobuf ]; diff --git a/pkgs/tools/text/shfmt/default.nix b/pkgs/tools/text/shfmt/default.nix index c6ab5ff9c734..29a5a157a678 100644 --- a/pkgs/tools/text/shfmt/default.nix +++ b/pkgs/tools/text/shfmt/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "shfmt"; - version = "3.2.4"; + version = "3.3.0"; src = fetchFromGitHub { owner = "mvdan"; repo = "sh"; rev = "v${version}"; - sha256 = "sha256-BkvsCIcm3qnfECNhY3DIPnBRih6D7rOHOQu9oc0YDZA="; + sha256 = "sha256-pD1nkbBw5NBCyuhn2DYop2AR+1T8p6/zTa6FeWiya7Q="; }; - vendorSha256 = "1ma7nvyn6ylbi8bd7x900i94pzs877kfy9xh0nf1bbify1vcpd29"; + vendorSha256 = "sha256-euJYStN21xFYosouWYXpHN3MWCKR4NT8z6OSonM0HW8="; subPackages = [ "cmd/shfmt" ]; diff --git a/pkgs/tools/text/xml/html-xml-utils/default.nix b/pkgs/tools/text/xml/html-xml-utils/default.nix index 5dab3d642a3b..96aa01abe6dd 100644 --- a/pkgs/tools/text/xml/html-xml-utils/default.nix +++ b/pkgs/tools/text/xml/html-xml-utils/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "html-xml-utils"; - version = "7.9"; + version = "8.0"; src = fetchurl { url = "https://www.w3.org/Tools/HTML-XML-utils/${pname}-${version}.tar.gz"; - sha256 = "0gs3xvdbzhk5k12i95p5d4fgkkaldnlv45sch7pnncb0lrpcjsnq"; + sha256 = "sha256-dJBZkGwzHCx/us7uAkZiRaI3uRvUCN/485bQc0oGCuI="; }; buildInputs = [curl libiconv]; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 83f14e5dd507..b7d73f1663dd 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -63,6 +63,7 @@ mapAliases ({ at_spi2_core = at-spi2-core; # added 2018-02-25 aucdtect = throw "aucdtect: Upstream no longer provides download urls."; # added 2020-12-26 avldrums-lv2 = x42-avldrums; # added 2020-03-29 + avxsynth = throw "avxsynth was removed because it was broken"; # added 2021-05-18 bar-xft = lemonbar-xft; # added 2015-01-16 bashCompletion = bash-completion; # Added 2016-09-28 batti = throw "batti has been removed from nixpkgs, as it was unmaintained"; # added 2019-12-10 @@ -607,6 +608,7 @@ mapAliases ({ postgis = postgresqlPackages.postgis; # end ppl-address-book = throw "ppl-address-book deprecated on 2019-05-02: abandoned by upstream."; + privateer = throw "privateer was removed because it was broken"; # added 2021-05-18 processing3 = processing; # added 2019-08-16 procps-ng = procps; # added 2018-06-08 proj_5 = throw "Proj-5 has been removed from nixpkgs, use proj instead."; # added 2021-04-12 @@ -620,6 +622,7 @@ mapAliases ({ phonon-backend-gstreamer = throw "phonon-backend-gstreamer: Please use libsForQt5.phonon-backend-gstreamer, as Qt4 support in this package has been removed."; # added 2019-11-22 phonon-backend-vlc = throw "phonon-backend-vlc: Please use libsForQt5.phonon-backend-vlc, as Qt4 support in this package has been removed."; # added 2019-11-22 phonon = throw "phonon: Please use libsForQt5.phonon, as Qt4 support in this package has been removed."; # added 2019-11-22 + pybind11 = throw "pybind11 was removed because pythonPackages.pybind11 for the appropriate version of Python should be used"; # added 2021-05-14 pynagsystemd = throw "pynagsystemd was removed as it was unmaintained and incompatible with recent systemd versions. Instead use its fork check_systemd."; # added 2020-10-24 python2nix = throw "python2nix has been removed as it is outdated. Use e.g. nixpkgs-pytools instead."; # added 2021-03-08 quagga = throw "quagga is no longer maintained upstream"; # added 2021-04-22 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f5dcba2edee2..d279d27052fb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -291,7 +291,9 @@ in html5validator = python3Packages.callPackage ../applications/misc/html5validator { }; - probe-run = callPackage ../development/tools/rust/probe-run {}; + probe-run = callPackage ../development/tools/rust/probe-run { + inherit (darwin.apple_sdk.frameworks) AppKit IOKit; + }; proto-contrib = callPackage ../development/tools/proto-contrib {}; @@ -862,6 +864,10 @@ in wine = wineWowPackages.staging; }; + yafetch = callPackage ../tools/misc/yafetch { + stdenv = clangStdenv; + }; + ### APPLICATIONS/TERMINAL-EMULATORS alacritty = callPackage ../applications/terminal-emulators/alacritty { @@ -2692,6 +2698,8 @@ in godu = callPackage ../tools/misc/godu { }; + goss = callPackage ../tools/misc/goss { }; + gosu = callPackage ../tools/misc/gosu { }; gotify-cli = callPackage ../tools/misc/gotify-cli { }; @@ -3067,6 +3075,10 @@ in shellhub-agent = callPackage ../applications/networking/shellhub-agent { }; + sheesy-cli = callPackage ../tools/security/sheesy-cli { + inherit (darwin.apple_sdk.frameworks) Security; + }; + simdjson = callPackage ../development/libraries/simdjson { }; shipyard = callPackage ../tools/virtualization/shipyard { }; @@ -5782,6 +5794,8 @@ in netifd = callPackage ../tools/networking/netifd {}; + ipinfo = callPackage ../tools/networking/ipinfo {}; + ipscan = callPackage ../tools/security/ipscan { }; ipv6calc = callPackage ../tools/networking/ipv6calc {}; @@ -6601,7 +6615,9 @@ in macchanger = callPackage ../os-specific/linux/macchanger { }; - macchina = callPackage ../tools/misc/macchina { }; + macchina = callPackage ../tools/misc/macchina { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; madlang = haskell.lib.justStaticExecutables haskellPackages.madlang; @@ -8891,6 +8907,8 @@ in pythonPackages = python3Packages; }; + telepresence2 = callPackage ../tools/networking/telepresence2 { }; + teler = callPackage ../tools/security/teler { }; termius = callPackage ../applications/networking/termius { }; @@ -10439,12 +10457,16 @@ in }; }) else ccWrapper; - gccStdenv = if stdenv.cc.isGNU then stdenv else stdenv.override { - allowedRequisites = null; - # Remove libcxx/libcxxabi, and add clang for AS if on darwin (it uses - # clang's internal assembler). - extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc; - }; + gccStdenv = + if stdenv.cc.isGNU + then stdenv + else stdenv.override { + cc = buildPackages.gcc; + allowedRequisites = null; + # Remove libcxx/libcxxabi, and add clang for AS if on darwin (it uses + # clang's internal assembler). + extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc; + }; gcc49Stdenv = overrideCC gccStdenv buildPackages.gcc49; gcc6Stdenv = overrideCC gccStdenv buildPackages.gcc6; @@ -10905,7 +10927,7 @@ in fsharp = callPackage ../development/compilers/fsharp { }; - fsharp41 = callPackage ../development/compilers/fsharp41 { mono = mono6; }; + fsharp41 = callPackage ../development/compilers/fsharp41 { }; fstar = callPackage ../development/compilers/fstar { ocamlPackages = ocaml-ng.ocamlPackages_4_07; @@ -11173,6 +11195,13 @@ in julia-stable = julia_15; julia = julia-lts; + julia_10-bin = callPackage ../development/compilers/julia/1.0-bin.nix { }; + julia_16-bin = callPackage ../development/compilers/julia/1.6-bin.nix { }; + + julia-lts-bin = julia_10-bin; + julia-stable-bin = julia_16-bin; + julia-bin = julia-lts-bin; + jwasm = callPackage ../development/compilers/jwasm { }; knightos-genkfs = callPackage ../development/tools/knightos/genkfs { }; @@ -11364,7 +11393,7 @@ in mlton = mlton20180207; - mono = mono5; + mono = mono6; mono4 = lowPrio (callPackage ../development/compilers/mono/4.nix { inherit (darwin) libobjc; @@ -11383,9 +11412,9 @@ in monoDLLFixer = callPackage ../build-support/mono-dll-fixer { }; - roslyn = callPackage ../development/compilers/roslyn { mono = mono6; }; + roslyn = callPackage ../development/compilers/roslyn { }; - msbuild = callPackage ../development/tools/build-managers/msbuild { mono = mono6; }; + msbuild = callPackage ../development/tools/build-managers/msbuild { }; mosml = callPackage ../development/compilers/mosml { }; @@ -11687,6 +11716,9 @@ in rustup = callPackage ../development/tools/rust/rustup { inherit (darwin.apple_sdk.frameworks) CoreServices Security; }; + rustup-toolchain-install-master = callPackage ../development/tools/rust/rustup-toolchain-install-master { + inherit (darwin.apple_sdk.frameworks) Security; + }; sagittarius-scheme = callPackage ../development/compilers/sagittarius-scheme {}; @@ -12807,12 +12839,12 @@ in inherit (stdenv) cc; }; - ccacheStdenv = lowPrio (makeOverridable ({ extraConfig, stdenv }: - overrideCC stdenv (buildPackages.ccacheWrapper.override { - inherit extraConfig; + ccacheStdenv = lowPrio (makeOverridable ({ stdenv, ... } @ extraArgs: + overrideCC stdenv (buildPackages.ccacheWrapper.override ({ inherit (stdenv) cc; - })) { - extraConfig = ""; + } // lib.optionalAttrs (builtins.hasAttr "extraConfig" extraArgs) { + extraConfig = extraArgs.extraConfig; + }))) { inherit stdenv; }); @@ -13502,7 +13534,9 @@ in libiberty_static = libiberty.override { staticBuild = true; }; }; - pactorio = callPackage ../development/tools/pactorio { }; + pactorio = callPackage ../development/tools/pactorio { + inherit (darwin.apple_sdk.frameworks) Security; + }; pahole = callPackage ../development/tools/misc/pahole {}; @@ -14553,6 +14587,8 @@ in fcgi = callPackage ../development/libraries/fcgi { }; + fcl = callPackage ../development/libraries/fcl { }; + ffcast = callPackage ../tools/X11/ffcast { }; fflas-ffpack = callPackage ../development/libraries/fflas-ffpack { }; @@ -15653,6 +15689,8 @@ in libcbor = callPackage ../development/libraries/libcbor { }; + libccd = callPackage ../development/libraries/libccd { }; + libcec = callPackage ../development/libraries/libcec { libraspberrypi = null; }; @@ -16662,7 +16700,9 @@ in libvmaf = callPackage ../development/libraries/libvmaf { }; - libvncserver = callPackage ../development/libraries/libvncserver {}; + libvncserver = callPackage ../development/libraries/libvncserver { + inherit (darwin.apple_sdk.frameworks) Carbon; + }; libviper = callPackage ../development/libraries/libviper { }; @@ -17199,6 +17239,8 @@ in inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Foundation; }; + openslide = callPackage ../development/libraries/openslide { }; + openslp = callPackage ../development/libraries/openslp {}; openvdb = callPackage ../development/libraries/openvdb {}; @@ -17271,7 +17313,9 @@ in pe-parse = callPackage ../development/libraries/pe-parse { }; - inherit (callPackage ../development/libraries/physfs { }) + inherit (callPackage ../development/libraries/physfs { + inherit (darwin.apple_sdk.frameworks) Foundation Carbon; + }) physfs_2 physfs; @@ -17382,8 +17426,6 @@ in pugixml = callPackage ../development/libraries/pugixml { }; - pybind11 = pythonPackages.pybind11; - pylode = callPackage ../misc/pylode {}; python-qt = callPackage ../development/libraries/python-qt { @@ -18120,6 +18162,8 @@ in ustr = callPackage ../development/libraries/ustr { }; + usrsctp = callPackage ../development/libraries/usrsctp { }; + usbredir = callPackage ../development/libraries/usbredir { }; uthash = callPackage ../development/libraries/uthash { }; @@ -18888,8 +18932,8 @@ in fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { }; - firebird = callPackage ../servers/firebird { icu = null; /*stdenv = gcc5Stdenv;*/ }; - firebirdSuper = firebird.override { icu = icu58; superServer = true; /*stdenv = gcc5Stdenv;*/ }; + inherit (callPackages ../servers/firebird { }) firebird_4 firebird_3 firebird_2_5; + firebird = firebird_3; freeradius = callPackage ../servers/freeradius { }; @@ -19489,7 +19533,9 @@ in prometheus-tor-exporter = callPackage ../servers/monitoring/prometheus/tor-exporter.nix { }; prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { }; prometheus-surfboard-exporter = callPackage ../servers/monitoring/prometheus/surfboard-exporter.nix { }; - prometheus-unbound-exporter = callPackage ../servers/monitoring/prometheus/unbound-exporter.nix { }; + prometheus-unbound-exporter = callPackage ../servers/monitoring/prometheus/unbound-exporter.nix { + inherit (darwin.apple_sdk.frameworks) Security; + }; prometheus-unifi-exporter = callPackage ../servers/monitoring/prometheus/unifi-exporter { }; prometheus-varnish-exporter = callPackage ../servers/monitoring/prometheus/varnish-exporter.nix { }; prometheus-jmx-httpserver = callPackage ../servers/monitoring/prometheus/jmx-httpserver.nix { }; @@ -19537,6 +19583,8 @@ in redstore = callPackage ../servers/http/redstore { }; + reproxy = callPackage ../servers/reproxy { }; + restic = callPackage ../tools/backup/restic { }; restic-rest-server = callPackage ../tools/backup/restic/rest-server.nix { }; @@ -19704,6 +19752,10 @@ in unifi6; unifi = unifi6; + unpackerr = callPackage ../servers/unpackerr { + inherit (darwin.apple_sdk.frameworks) Cocoa WebKit; + }; + urserver = callPackage ../servers/urserver { }; victoriametrics = callPackage ../servers/nosql/victoriametrics { }; @@ -20938,6 +20990,8 @@ in nss_ldap = callPackage ../os-specific/linux/nss_ldap { }; + octomap = callPackage ../development/libraries/octomap { }; + odp-dpdk = callPackage ../os-specific/linux/odp-dpdk { }; odroid-xu3-bootloader = callPackage ../tools/misc/odroid-xu3-bootloader { }; @@ -22455,10 +22509,6 @@ in avrdudess = callPackage ../applications/misc/avrdudess { }; - avxsynth = callPackage ../applications/video/avxsynth { - libjpeg = libjpeg_original; # error: 'JCOPYRIGHT_SHORT' was not declared in this scope - }; - awesome-4-0 = callPackage ../applications/window-managers/awesome { cairo = cairo.override { xcbSupport = true; }; inherit (texFunctions) fontsConf; @@ -24162,9 +24212,7 @@ in i3-wk-switch = callPackage ../applications/window-managers/i3/wk-switch.nix { }; - waybox = callPackage ../applications/window-managers/waybox { - wlroots = wlroots_0_12; - }; + waybox = callPackage ../applications/window-managers/waybox { }; workstyle = callPackage ../applications/window-managers/i3/workstyle.nix { }; @@ -25347,7 +25395,9 @@ in mupdf = callPackage ../applications/misc/mupdf { }; mupdf_1_17 = callPackage ../applications/misc/mupdf/1.17.nix { }; - muso = callPackage ../applications/audio/muso { }; + muso = callPackage ../applications/audio/muso { + inherit (darwin.apple_sdk.frameworks) CoreServices; + }; mystem = callPackage ../applications/misc/mystem { }; @@ -27097,6 +27147,8 @@ in webmacs = libsForQt5.callPackage ../applications/networking/browsers/webmacs {}; + webssh = with python3Packages; toPythonApplication webssh; + webtorrent_desktop = callPackage ../applications/video/webtorrent_desktop {}; wrapWeechat = callPackage ../applications/networking/irc/weechat/wrapper.nix { }; @@ -28411,8 +28463,6 @@ in prboom = callPackage ../games/prboom { }; - privateer = callPackage ../games/privateer { }; - pysolfc = python3Packages.callPackage ../games/pysolfc { }; qqwing = callPackage ../games/qqwing { }; @@ -29879,7 +29929,9 @@ in stdenv = if stdenv.cc.isClang then llvmPackages_5.stdenv else gcc8Stdenv; }); - rink = callPackage ../applications/science/misc/rink { }; + rink = callPackage ../applications/science/misc/rink { + inherit (darwin.apple_sdk.frameworks) Security; + }; simgrid = callPackage ../applications/science/misc/simgrid { }; @@ -30574,6 +30626,8 @@ in nut = callPackage ../applications/misc/nut { }; + nvd = callPackage ../tools/package-management/nvd { }; + solfege = python3Packages.callPackage ../misc/solfege { }; disnix = callPackage ../tools/package-management/disnix { }; @@ -31370,7 +31424,9 @@ in simplehttp2server = callPackage ../servers/simplehttp2server { }; - simple-http-server = callPackage ../servers/simple-http-server { }; + simple-http-server = callPackage ../servers/simple-http-server { + inherit (darwin.apple_sdk.frameworks) Security; + }; diceware = with python3Packages; toPythonApplication diceware; diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix index 6027cd92d444..e89f1a57c90e 100644 --- a/pkgs/top-level/coq-packages.nix +++ b/pkgs/top-level/coq-packages.nix @@ -13,6 +13,7 @@ let contribs = recurseIntoAttrs (callPackage ../development/coq-modules/contribs {}); + aac-tactics = callPackage ../development/coq-modules/aac-tactics {}; autosubst = callPackage ../development/coq-modules/autosubst {}; bignums = if lib.versionAtLeast coq.coq-version "8.6" then callPackage ../development/coq-modules/bignums {} @@ -68,6 +69,7 @@ let paramcoq = callPackage ../development/coq-modules/paramcoq {}; pocklington = callPackage ../development/coq-modules/pocklington {}; QuickChick = callPackage ../development/coq-modules/QuickChick {}; + relation-algebra = callPackage ../development/coq-modules/relation-algebra {}; simple-io = callPackage ../development/coq-modules/simple-io { }; stdpp = callPackage ../development/coq-modules/stdpp { }; StructTact = callPackage ../development/coq-modules/StructTact {}; diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index e6815abf43c1..b58fe1f4294e 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -53,7 +53,7 @@ let base64 = callPackage ../development/ocaml-modules/base64 { }; bap = callPackage ../development/ocaml-modules/bap { - llvm = pkgs.llvm_8; + inherit (pkgs.llvmPackages_8) llvm; }; batteries = callPackage ../development/ocaml-modules/batteries { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2e20de074f22..c1d83d7fe01f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -351,6 +351,8 @@ in { aiowinreg = callPackage ../development/python-modules/aiowinreg { }; + aioymaps = callPackage ../development/python-modules/aioymaps { }; + aiozeroconf = callPackage ../development/python-modules/aiozeroconf { }; airly = callPackage ../development/python-modules/airly { }; @@ -1725,6 +1727,8 @@ in { datrie = callPackage ../development/python-modules/datrie { }; + dawg-python = callPackage ../development/python-modules/dawg-python { }; + dbf = callPackage ../development/python-modules/dbf { }; dbfread = callPackage ../development/python-modules/dbfread { }; @@ -3021,6 +3025,8 @@ in { ha-ffmpeg = callPackage ../development/python-modules/ha-ffmpeg { }; + ha-philipsjs = callPackage ../development/python-modules/ha-philipsjs{ }; + halo = callPackage ../development/python-modules/halo { }; handout = callPackage ../development/python-modules/handout { }; @@ -4779,6 +4785,8 @@ in { ovh = callPackage ../development/python-modules/ovh { }; + ovoenergy = callPackage ../development/python-modules/ovoenergy { }; + owslib = callPackage ../development/python-modules/owslib { }; oyaml = callPackage ../development/python-modules/oyaml { }; @@ -5205,6 +5213,8 @@ in { praw = callPackage ../development/python-modules/praw { }; + prayer-times-calculator = callPackage ../development/python-modules/prayer-times-calculator { }; + precis-i18n = callPackage ../development/python-modules/precis-i18n { }; pre-commit = callPackage ../development/python-modules/pre-commit { }; @@ -5496,6 +5506,8 @@ in { pycparser = callPackage ../development/python-modules/pycparser { }; + py-canary = callPackage ../development/python-modules/py-canary { }; + py-cid = callPackage ../development/python-modules/py-cid { }; py-cpuinfo = callPackage ../development/python-modules/py-cpuinfo { }; @@ -5535,6 +5547,8 @@ in { pydeconz = callPackage ../development/python-modules/pydeconz { }; + pydelijn = callPackage ../development/python-modules/pydelijn { }; + pydenticon = callPackage ../development/python-modules/pydenticon { }; pydexcom = callPackage ../development/python-modules/pydexcom { }; @@ -5879,6 +5893,10 @@ in { pymongo = callPackage ../development/python-modules/pymongo { }; + pymorphy2 = callPackage ../development/python-modules/pymorphy2 { }; + + pymorphy2-dicts-ru = callPackage ../development/python-modules/pymorphy2/dicts-ru.nix { }; + pympler = callPackage ../development/python-modules/pympler { }; pymsgbox = callPackage ../development/python-modules/pymsgbox { }; @@ -5943,6 +5961,8 @@ in { pynzb = callPackage ../development/python-modules/pynzb { }; + pyobihai = callPackage ../development/python-modules/pyobihai { }; + pyocr = callPackage ../development/python-modules/pyocr { tesseract = pkgs.tesseract4; }; @@ -7382,10 +7402,12 @@ in { scikitimage = callPackage ../development/python-modules/scikit-image { }; - scikitlearn = callPackage ../development/python-modules/scikitlearn { + scikit-learn = callPackage ../development/python-modules/scikit-learn { inherit (pkgs) gfortran glibcLocales; }; + scikitlearn = self.scikit-learn; + scikit-optimize = callPackage ../development/python-modules/scikit-optimize { }; scikits-odes = callPackage ../development/python-modules/scikits-odes { }; @@ -7618,8 +7640,6 @@ in { slicerator = callPackage ../development/python-modules/slicerator { }; - slimit = callPackage ../development/python-modules/slimit { }; - slither-analyzer = callPackage ../development/python-modules/slither-analyzer { }; slixmpp = callPackage ../development/python-modules/slixmpp { @@ -7716,10 +7736,16 @@ in { spacy = callPackage ../development/python-modules/spacy { }; + spacy-alignments = callPackage ../development/python-modules/spacy-alignments { }; + spacy-legacy = callPackage ../development/python-modules/spacy/legacy.nix { }; spacy_models = callPackage ../development/python-modules/spacy/models.nix { }; + spacy-pkuseg = callPackage ../development/python-modules/spacy-pkuseg { }; + + spacy-transformers = callPackage ../development/python-modules/spacy-transformers { }; + spake2 = callPackage ../development/python-modules/spake2 { }; spark_parser = callPackage ../development/python-modules/spark_parser { }; @@ -8711,6 +8737,8 @@ in { websockify = callPackage ../development/python-modules/websockify { }; + webssh = callPackage ../development/python-modules/webssh { }; + webtest = callPackage ../development/python-modules/webtest { }; webthing = callPackage ../development/python-modules/webthing { }; diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix index 9eae7555ea45..221da6daa9aa 100644 --- a/pkgs/top-level/python2-packages.nix +++ b/pkgs/top-level/python2-packages.nix @@ -524,7 +524,7 @@ with self; with super; { scandir = callPackage ../development/python-modules/scandir { }; - scikitlearn = callPackage ../development/python-modules/scikitlearn/0.20.nix { + scikit-learn = callPackage ../development/python-modules/scikit-learn/0.20.nix { inherit (pkgs) gfortran glibcLocales; };