diff --git a/doc/languages-frameworks/javascript.section.md b/doc/languages-frameworks/javascript.section.md index 91d2ee0d551a..e327eb43ea40 100644 --- a/doc/languages-frameworks/javascript.section.md +++ b/doc/languages-frameworks/javascript.section.md @@ -879,399 +879,6 @@ stdenv.mkDerivation (finalAttrs: { }) ``` -### buildDenoPackage {#javascript-buildDenoPackage} - -`buildDenoPackage` allows you to package [Deno](https://deno.com/) projects in Nixpkgs without the use of an auto-generated dependencies file (as used in [node2nix](#javascript-node2nix)). -It works by utilizing Deno's cache functionality -- creating a reproducible cache that contains the dependencies of a project, and pointing Deno to it. - -#### buildDenoDeps {#javascript-buildDenoPackage-buildDenoDeps} - -For every `buildDenoPackage`, first, a [fixed output derivation](https://nix.dev/manual/nix/2.18/language/advanced-attributes.html#adv-attr-outputHash) is -created with all the dependencies mentioned in the `deno.lock`. -This works as follows: -1. They are installed using `deno install`. -1. All non-reproducible data is pruned. -1. The directories `.deno`, `node_modules` and `vendor` are copied to `$out`. -1. The output of the FOD is checked against the `denoDepsHash`. -1. The output is copied into the build of `buildDenoPackage`, which is not an FOD. -1. The dependencies are installed again using `deno install`, this time from the local cache only. - -The `buildDenoDeps` derivation is in `passthru`, so it can be accessed from a `buildDenoPackage` derivation with `.denoDeps` - -Related options: - -*`denoDepsHash`* (String) - -: The output hash of the `buildDenoDeps` fixed output derivation. - -*`denoInstallFlags`* (Array of strings; optional) - -: The Flags passed to `deno install`. - -: _Default:_ `[ "--allow-scripts" "--frozen" "--cached-only" ]` for `buildDenoPackage` -: _Default:_ `[ "--allow-scripts" "--frozen" ]` for `buildDenoDeps` (`"--cached-only"` is filtered out) - -::: {.tip} -If you receive errors like these: - -``` -error: The lockfile is out of date. Run `deno install --frozen=false`, or rerun with `--frozen=false` to update it. -``` - -or - -``` -error: Import '' failed. - 0: error sending request for url (): client error (Connect): dns error: failed to lookup address information: Temporary failure in name resolution: failed to lookup address information:Temporary failure in name resolution - 1: client error (Connect) - 2: dns error: failed to lookup address information: Temporary failure in name resolution - 3: failed to lookup address information: Temporary failure in name resolution - at file:///build/source/src/lib/helpers/verifyRequest.ts:2:21 -build for failed in buildPhase with exit code 1 -``` - -or - -``` -error: Specifier not found in cache: "", --cached-only is specified. - -ERROR: deno failed to install dependencies -``` - -This can happen due to the `deno install` command deducing different packages than what the actual package needs. - -To fix this, add the entrypoint to the install flags: - -```nix -{ buildDenoPackage, nix-gitignore }: -buildDenoPackage { - pname = "myPackage"; - version = "0.1.0"; - denoDepsHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - src = nix-gitignore.gitignoreSource [ ] ./.; - binaryEntrypointPath = "main.ts"; - denoInstallFlags = [ - "--allow-scripts" - "--frozen" - "--cached-only" - "--entrypoint" - "" - ]; -} -``` - -::: - -#### Private registries {#javascript-buildDenoPackage-private-registries} -There are currently 2 options, which enable the use of private registries in a `buildDenoPackage` derivation. - -*`denoDepsImpureEnvVars`* (Array of strings; optional) - -: Names of impure environment variables passed to the `buildDenoDeps` derivation. They are forwarded to `deno install`. - -: _Example:_ `[ "NPM_TOKEN" ]` - -: It can be used to set tokens for private NPM registries (in a `.npmrc` file). - -: In a single-user installation of Nix, you can put the variables into the environment, when running the nix build. - -: In multi-user installations of Nix, it's necessary to set the environment variables in the nix-daemon, probably with systemd. - -:::{.example} - -##### configure nix-daemon {#javascript-buildDenoPackage-private-registries-daemon-example} -In NixOS: - -```nix -# configuration.nix -{ - config, - lib, - pkgs, - ... -}: -{ - systemd.services.nix-daemon.environment.NPM_TOKEN = ""; -} -``` - -In other Linux distributions use - -``` -$ sudo systemctl edit nix-daemon -$ sudo systemctl cat nix-daemon -$ sudo systemctl restart nix-daemon -``` - -::: - -*`denoDepsInjectedEnvVars`* (Attrset; optional) - -: Environment variables as key value pairs. They are forwarded to `deno install`. - -: _Example:_ `{ "NPM_TOKEN" = ""; }` - -: It can be used to set tokens for private NPM registries (in a `.npmrc` file). -You could pass these tokens from the Nix CLI with `--arg`, -however this can hurt the reproducibility of your builds and such an injected -token will also need to be injected in every build that depends on this build. - -:::{.example} - -##### example `.npmrc` {#javascript-buildDenoPackage-private-registries-npmrc-example} - -```ini -@:registry=https:/// -///:_authToken=${NPM_TOKEN} -``` - -::: - -::: {.caution} - -Hardcoding a token into your NixOS configuration or some other nix build, will as a consequence write that token into `/nix/store`, which is considered world readable. - -::: - -::: {.note} -Neither approach is ideal. For `buildNpmPackage`, there exists a third -option called `sourceOverrides`, which allows the user to inject Nix packages into -the output `node_modules` folder. -Since a Nix build implicitly uses the SSH keys of the machine, -this offers a third option to access private packages. -But this creates the requirement, that the imported package is packaged with nix first, -and that the source code can be retrieved with SSH. -This is possible for Deno, too, albeit it not -completely analogous to `buildNpmPackage`'s solution. -However, it has not been implemented yet. -::: - -#### Compile to binary {#javascript-buildDenoPackage-compile-to-binary} - -It's possible to compile a Deno project to a single binary using `deno compile`. -The binary will be named like the `.name` property in `deno.json`, if available, -or the `name` attribute of the derivation. - -:::{.caution} -When using packages with a `npm:` specifier, the resulting binary will not be reproducible. -See [this issue](https://github.com/denoland/deno/issues/29619) for more information. -::: - -Related options: - -*`hostPlatform`* (String; optional) - -: The [host platform](#ssec-cross-platform-parameters) the binary is built for. - -: _Default:_ `builtins.currentSystem`. - -: _Supported values:_ - - `"x86_64-darwin"` - - `"aarch64-darwin"` - - `"x86_64-linux"` - - `"aarch64-linux"` - -*`denoCompileFlags`* (Array of string; optional) - -: Flags passed to `deno compile [denoTaskFlags] ${binaryEntrypointPath} [extraCompileFlags]`. - -*`extraCompileFlags`* (Array of string; optional) - -: Flags passed to `deno compile [denoTaskFlags] ${binaryEntrypointPath} [extraCompileFlags]`. - -*`binaryEntrypointPath`* (String or null; optional) - -: If not `null`, a binary is created using the specified path as the entry point. -The binary is copied to `$out/bin` in the `installPhase`. - -: _Default:_ `null` - -: It's prefixed by `denoWorkspacePath`. - -*`denortPackage`* (Derivation; optional) - -: The package used as the Deno runtime, which is bundled with the JavaScript code to create the binary. - -: _Default:_ `pkgs.denort` - -: Don't use `pkgs.deno` for this, since that is the full Deno CLI, with all the development tooling. - -: If you're cross compiling, this needs to be the `denort` of the `hostPlatform`. - -::: {.note} -The binary will be dynamically linked and not executable on NixOS without [nix-ld](https://github.com/nix-community/nix-ld) -or [other methods](https://unix.stackexchange.com/questions/522822/different-methods-to-run-a-non-nixos-executable-on-nixos). - -```nix -# configuration.nix -{ - config, - lib, - pkgs, - ... -}: -{ - programs.nix-ld.enable = true; - programs.nix-ld.libraries = with pkgs; [ - glibc - gcc-unwrapped - ]; -} -``` - -::: - -:::{.example} - -##### example binary build {#javascript-buildDenoPackage-compile-to-binary-example} - -```nix -{ buildDenoPackage, nix-gitignore }: -buildDenoPackage { - pname = "myPackage"; - version = "0.1.0"; - denoDepsHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - src = nix-gitignore.gitignoreSource [ ] ./.; - binaryEntrypointPath = "main.ts"; -} -``` - -::: - -#### Create artifacts in the build {#javascript-buildDenoPackage-artifacts-in-build} - -Instead of compiling to a binary, `deno task` can be executed inside the build -to produce some artifact, which can then be copied out in the `installPhase`. - -Related options: - -*`denoTaskScript`* (String; optional) - -: The task in `deno.json` that's executed with `deno task`. - -: _Default:_ `"build"` - -*`denoTaskFlags`* (Array of strings; optional) - -: The flags passed to `deno task [denoTaskFlags] ${denoTaskScript} [extraTaskFlags]`. - -*`extraTaskFlags`* (Array of strings; optional) - -: The flags passed to `deno task [denoTaskFlags] ${denoTaskScript} [extraTaskFlags]`. - -*`denoTaskPrefix`* (String; optional) - -: An unquoted string injected before `deno task`. - -*`denoTaskSuffix`* (String; optional) - -: An unquoted string injected after `deno task` and all its flags. For example to pipe stdout to a file. - -:::{.example} - -##### example artifact build {#javascript-buildDenoPackage-artifacts-in-build-example} - -`deno.json` - -```json -{ - "tasks": { - "build": "deno run --allow-all main.ts" - } -} -``` - -```nix -{ buildDenoPackage, nix-gitignore }: -buildDenoPackage { - pname = "myPackage"; - version = "0.1.0"; - denoDepsHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - src = nix-gitignore.gitignoreSource [ ] ./.; - denoTaskSuffix = ">out.txt"; - installPhase = '' - cp ./out.txt $out - ''; -} -``` - -::: - -#### Workspaces {#javascript-buildDenoPackage-workspaces} - -Deno's workspaces are supported. - -To make them work, the whole project needs to be added as source, since the `deno.lock` -is always in the root of the project and contains all dependencies. - -This means a build with only the required dependencies of a workspace is not possible. -Also, the `denoDepsHash` for all workspaces is the same, since they -all share the same dependencies. - -When [running a task inside the build](#javascript-buildDenoPackage-artifacts-in-build), -`denoWorkspacePath` can be used to let the task run inside a workspace. - -When [compiling to a binary](#javascript-buildDenoPackage-compile-to-binary), -`binaryEntrypointPath` is prefixed by `denoWorkspacePath`. - -Related options: - -*`denoWorkspacePath`* (String; optional) - -: The path to a workspace. - -:::{.example} - -##### example workspaces {#javascript-buildDenoPackage-workspaces-example} - -```nix -{ buildDenoPackage, nix-gitignore }: -rec { - sub1 = buildDenoPackage { - pname = "sub1"; - version = "0.1.0"; - denoDepsHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; - src = nix-gitignore.gitignoreSource [ ] ./.; - denoWorkspacePath = "./sub1"; - denoTaskFlags = [ - "--text" - "sub1" - ]; - denoTaskSuffix = ">out.txt"; - installPhase = '' - cp out.txt $out - ''; - }; - sub2 = buildDenoPackage { - # Note that we are reusing denoDeps and src, - # since they must be the same for both workspaces. - inherit (sub1) denoDeps src; - pname = "sub2"; - version = "0.1.0"; - denoWorkspacePath = "./sub2"; - binaryEntrypointPath = "./main.ts"; - }; -} -``` - -::: - -#### Other Options {#javascript-buildDenoPackage-other-options} - -*`denoDir`* (String; optional) - -: `DENO_DIR` will be set to this value for all `deno` commands. - -*`denoFlags`* (Array of string; optional) - -: The flags passed to all `deno` commands. - -*`denoPackage`* (Derivation; optional) - -: The Deno CLI used for all `deno` commands inside the build. - -: _Default:_ `pkgs.deno` - ## Outside Nixpkgs {#javascript-outside-nixpkgs} There are some other tools available, which are written in the Nix language. diff --git a/doc/redirects.json b/doc/redirects.json index 61756f44c902..7fb27ab4ced1 100644 --- a/doc/redirects.json +++ b/doc/redirects.json @@ -3390,42 +3390,6 @@ "javascript-nix-npm-buildpackage-pitfalls": [ "index.html#javascript-nix-npm-buildpackage-pitfalls" ], - "javascript-buildDenoPackage-workspaces-example": [ - "index.html#javascript-buildDenoPackage-workspaces-example" - ], - "javascript-buildDenoPackage-private-registries": [ - "index.html#javascript-buildDenoPackage-private-registries" - ], - "javascript-buildDenoPackage-buildDenoDeps": [ - "index.html#javascript-buildDenoPackage-buildDenoDeps" - ], - "javascript-buildDenoPackage-artifacts-in-build": [ - "index.html#javascript-buildDenoPackage-artifacts-in-build" - ], - "javascript-buildDenoPackage-artifacts-in-build-example": [ - "index.html#javascript-buildDenoPackage-artifacts-in-build-example" - ], - "javascript-buildDenoPackage-private-registries-daemon-example": [ - "index.html#javascript-buildDenoPackage-private-registries-daemon-example" - ], - "javascript-buildDenoPackage-private-registries-npmrc-example": [ - "index.html#javascript-buildDenoPackage-private-registries-npmrc-example" - ], - "javascript-buildDenoPackage-compile-to-binary-example": [ - "index.html#javascript-buildDenoPackage-compile-to-binary-example" - ], - "javascript-buildDenoPackage-workspaces": [ - "index.html#javascript-buildDenoPackage-workspaces" - ], - "javascript-buildDenoPackage": [ - "index.html#javascript-buildDenoPackage" - ], - "javascript-buildDenoPackage-other-options": [ - "index.html#javascript-buildDenoPackage-other-options" - ], - "javascript-buildDenoPackage-compile-to-binary": [ - "index.html#javascript-buildDenoPackage-compile-to-binary" - ], "language-julia": [ "index.html#language-julia" ], diff --git a/doc/release-notes/rl-2505.section.md b/doc/release-notes/rl-2505.section.md index 01d952655ad5..11d54b19159f 100644 --- a/doc/release-notes/rl-2505.section.md +++ b/doc/release-notes/rl-2505.section.md @@ -551,8 +551,6 @@ - `ddclient` was updated from 3.11.2 to 4.0.0 [Release notes](https://github.com/ddclient/ddclient/releases/tag/v4.0.0) -- `buildDenoPackage` was added [see docs](https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks/javascript.section.md#avascript-buildDenoPackage) for more details - ## Nixpkgs Library {#sec-nixpkgs-release-25.05-lib} ### Breaking changes {#sec-nixpkgs-release-25.05-lib-breaking} diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index a48b7d44626f..459af64996ca 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1648,6 +1648,12 @@ github = "angaz"; githubId = 10219618; }; + angelodlfrtr = { + name = "Angelo Delefortrie"; + email = "angelo.delefortrie@gmail.com"; + github = "angelodlfrtr"; + githubId = 5405598; + }; angristan = { email = "angristan@pm.me"; github = "angristan"; @@ -11626,6 +11632,13 @@ githubId = 110620; name = "Jevin Maltais"; }; + jezcope = { + email = "j.cope@erambler.co.uk"; + github = "jezcope"; + githubId = 457628; + name = "Jez Cope"; + keys = [ { fingerprint = "D9DA 3E47 E8BD 377D A317 B3D0 9E42 CE07 1C45 59D1"; } ]; + }; jfchevrette = { email = "jfchevrette@gmail.com"; github = "jfchevrette"; @@ -20068,6 +20081,12 @@ githubId = 24578572; name = "Blake North"; }; + powwu = { + name = "powwu"; + email = "hello@powwu.sh"; + github = "powwu"; + githubId = 20643401; + }; poz = { name = "Jacek Poziemski"; email = "poz@poz.pet"; diff --git a/nixos/tests/nixos-rebuild-target-host.nix b/nixos/tests/nixos-rebuild-target-host.nix index 4c3e894a6977..480963fa1bf1 100644 --- a/nixos/tests/nixos-rebuild-target-host.nix +++ b/nixos/tests/nixos-rebuild-target-host.nix @@ -57,7 +57,7 @@ users.users.alice.extraGroups = [ "wheel" ]; users.users.bob.extraGroups = [ "wheel" ]; - # Disable sudo for root to ensure sudo isn't called without `--use-remote-sudo` + # Disable sudo for root to ensure sudo isn't called without `--sudo` security.sudo.extraRules = lib.mkForce [ { groups = [ "wheel" ]; @@ -170,20 +170,20 @@ # Ensure sudo is disabled for root target.fail("sudo true") - # This test also ensures that sudo is not called without --use-remote-sudo + # This test also ensures that sudo is not called without --sudo with subtest("Deploy to root@target"): deployer.succeed("nixos-rebuild switch -I nixos-config=/root/configuration-1.nix --target-host root@target &>/dev/console") target_hostname = deployer.succeed("ssh alice@target cat /etc/hostname").rstrip() assert target_hostname == "config-1-deployed", f"{target_hostname=}" with subtest("Deploy to alice@target with passwordless sudo"): - deployer.succeed("nixos-rebuild switch -I nixos-config=/root/configuration-2.nix --target-host alice@target --use-remote-sudo &>/dev/console") + deployer.succeed("nixos-rebuild switch -I nixos-config=/root/configuration-2.nix --target-host alice@target --sudo &>/dev/console") target_hostname = deployer.succeed("ssh alice@target cat /etc/hostname").rstrip() assert target_hostname == "config-2-deployed", f"{target_hostname=}" with subtest("Deploy to bob@target with password based sudo"): # TODO: investigate why --ask-sudo-password from nixos-rebuild-ng is not working here - deployer.succeed(r'${lib.optionalString withNg "NIX_SSHOPTS=-t "}passh -c 3 -C -p ${nodes.target.users.users.bob.password} -P "\[sudo\] password" nixos-rebuild switch -I nixos-config=/root/configuration-3.nix --target-host bob@target --use-remote-sudo &>/dev/console') + deployer.succeed(r'${lib.optionalString withNg "NIX_SSHOPTS=-t "}passh -c 3 -C -p ${nodes.target.users.users.bob.password} -P "\[sudo\] password" nixos-rebuild switch -I nixos-config=/root/configuration-3.nix --target-host bob@target --sudo &>/dev/console') target_hostname = deployer.succeed("ssh alice@target cat /etc/hostname").rstrip() assert target_hostname == "config-3-deployed", f"{target_hostname=}" diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix index 56eab79bba4f..027aab52109d 100644 --- a/pkgs/applications/audio/mixxx/default.nix +++ b/pkgs/applications/audio/mixxx/default.nix @@ -56,13 +56,13 @@ stdenv.mkDerivation rec { pname = "mixxx"; - version = "2.5.1"; + version = "2.5.2"; src = fetchFromGitHub { owner = "mixxxdj"; repo = "mixxx"; rev = version; - hash = "sha256-s66XrcMGgA8KvBDxljg95nbKW1pIv8rJJ+DyxirHwDo="; + hash = "sha256-dKk3n3KDindnLbON52SW5h4cz96WVi0OPjwA27HqQCI="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix index bf1c439bbc3b..a00eb83a2a5e 100644 --- a/pkgs/applications/networking/mailreaders/notmuch/default.nix +++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix @@ -190,7 +190,7 @@ stdenv.mkDerivation (finalAttrs: { PLUG=$vim/share/vim-plugins/notmuch/plugin/notmuch.vim cat >> $PLUG << EOF let \$GEM_PATH=\$GEM_PATH . ":${finalAttrs.passthru.gemEnv}/${ruby.gemPath}" - let \$RUBYLIB=\$RUBYLIB . ":$vim/${ruby.libPath}/${ruby.system}" + let \$RUBYLIB=\$RUBYLIB . ":$out/${ruby.libPath}/${ruby.system}" if has('nvim') EOF for gem in ${finalAttrs.passthru.gemEnv}/${ruby.gemPath}/gems/*/lib; do diff --git a/pkgs/applications/networking/p2p/gnunet/default.nix b/pkgs/applications/networking/p2p/gnunet/default.nix index d50245b45021..bc9987dbf375 100644 --- a/pkgs/applications/networking/p2p/gnunet/default.nix +++ b/pkgs/applications/networking/p2p/gnunet/default.nix @@ -39,11 +39,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "gnunet"; - version = "0.24.1"; + version = "0.24.2"; src = fetchurl { url = "mirror://gnu/gnunet/gnunet-${finalAttrs.version}.tar.gz"; - hash = "sha256-xPj50l06APgHCVg7h6qDEtAUVAkLc6QTtD7H7HwHujk="; + hash = "sha256-Lk5KkH2UJ/DD3U1nlczq9yzPOX6dyWH2DtvvMAb2r0c="; }; enableParallelBuilding = true; diff --git a/pkgs/build-support/deno/build-deno-package/default.nix b/pkgs/build-support/deno/build-deno-package/default.nix deleted file mode 100644 index 4059843ac421..000000000000 --- a/pkgs/build-support/deno/build-deno-package/default.nix +++ /dev/null @@ -1,172 +0,0 @@ -# NOTE: much of this structure is inspired from https://github.com/NixOS/nixpkgs/tree/fff29a3e5f7991512e790617d1a693df5f3550f6/pkgs/build-support/node -{ - stdenvNoCC, - deno, - denort, - diffutils, - zip, - jq, - fetchDenoDeps, - buildPackages, - lib, -}: -{ - name ? "${args.pname}-${args.version}", - src ? null, - # The output hash of the dependencies for this project. - denoDepsHash ? lib.fakeHash, - # The host platform, the output binary is compiled for. - hostPlatform ? stdenvNoCC.hostPlatform.system, - # A list of strings, which are names of impure env vars passed to the deps build. - # Example: - # `[ "NPM_TOKEN" ]` - # They will be forwarded to `deno install`. - # It can be used to set tokens for private NPM registries (in an `.npmrc` file). - # In multi user installations of Nix, you need to set the env vars in the daemon (probably with systemd). - # In nixos: `systemd.services.nix-daemon.environment.NPM_TOKEN = "";` - denoDepsImpureEnvVars ? [ ], - # An attr set with env vars as key value pairs. - # Example: - # `{ "NPM_TOKEN" = ""; }` - # They will be forwarded to `deno install`. - # It can be used to set tokens for private NPM registries (in an `.npmrc` file). - # You could pass these tokens from the cli with `--arg` (this can make your builds painful). - denoDepsInjectedEnvVars ? { }, - # TODO: source overrides like in buildNpmPackage, i.e. injecting nix packages into the denoDeps - # this is more involved, since they can't directly be injected into the fixed output derivation - # of fetchDenoDeps. Instead we need to patch the lock file and remove the packages we intend to - # inject, then we need to build the rest of the packages like before and in a - # second step create normal derivation with the injected packages. - # then the two need to be merged into a single denoDeps derivation and finally the lock file needs - # to be reverted back to it's original form. - # It is possible to manipulate the registry.json files of the injected packages so that deno accepts them as is. - denoDeps ? fetchDenoDeps { - inherit - src - denoDepsInjectedEnvVars - denoDepsImpureEnvVars - denoFlags - denoDir - ; - denoInstallFlags = builtins.filter (e: e != "--cached-only") denoInstallFlags; - name = "${name}-deno-deps"; - hash = denoDepsHash; - }, - # The package used for every deno command in the build - denoPackage ? deno, - # The package used as the runtime that is bundled with the the src to create the binary. - denortPackage ? denort, - # The script to run to build the project. - # You still need to specify in the installPhase, what artifacts to copy to `$out`. - denoTaskScript ? "build", - # If not null, create a binary using the specified path as the entrypoint, - # copy it to `$out/bin` in installPhase and fix it in fixupPhase. - binaryEntrypointPath ? null, - # Flags to pass to all deno commands. - denoFlags ? [ ], - # Flags to pass to `deno task [denoTaskFlags] ${denoTaskScript}`. - denoTaskFlags ? [ ], - # Flags to pass to `deno compile [denoTaskFlags] ${binaryEntrypointPath}`. - denoCompileFlags ? [ ], - # Flags to pass to `deno install [denoInstallFlags]`. - denoInstallFlags ? [ - "--allow-scripts" - "--frozen" - "--cached-only" - ], - # Flags to pass to `deno task [denoTaskFlags] ${denoTaskScript} [extraTaskFlags]`. - extraTaskFlags ? [ ], - # Flags to pass to `deno compile [denoTaskFlags] ${binaryEntrypointPath} [extraCompileFlags]`. - extraCompileFlags ? [ ], - nativeBuildInputs ? [ ], - dontFixup ? true, - # Custom denoConfigHook - denoConfigHook ? null, - # Custom denoBuildHook - denoBuildHook ? null, - # Custom denoInstallHook - denoInstallHook ? null, - # Path to deno workspace, where the denoTaskScript should be run - denoWorkspacePath ? null, - # Unquoted string injected before `deno task` - denoTaskPrefix ? "", - # Unquoted string injected after `deno task` and all its flags - denoTaskSuffix ? "", - # Used as the name of the local DENO_DIR - denoDir ? "./.deno", - ... -}@args: -let - denoFlags_ = builtins.concatStringsSep " " denoFlags; - denoTaskFlags_ = builtins.concatStringsSep " " denoTaskFlags; - denoCompileFlags_ = builtins.concatStringsSep " " denoCompileFlags; - denoInstallFlags_ = builtins.concatStringsSep " " denoInstallFlags; - extraTaskFlags_ = builtins.concatStringsSep " " extraTaskFlags; - extraCompileFlags_ = builtins.concatStringsSep " " extraCompileFlags; - - args' = builtins.removeAttrs args [ "denoDepsInjectedEnvVars" ]; - - denoHooks = - (buildPackages.denoHooks.override { - denort = denortPackage; - }) - { - inherit denoTaskSuffix denoTaskPrefix binaryEntrypointPath; - }; - systemLookupTable = { - "x86_64-darwin" = "x86_64-apple-darwin"; - "arm64-darwin" = "aarch64-apple-darwin"; - "aarch64-darwin" = "aarch64-apple-darwin"; - "x86_64-linux" = "x86_64-unknown-linux-gnu"; - "arm64-linux" = "aarch64-unknown-linux-gnu"; - "aarch64-linux" = "aarch64-unknown-linux-gnu"; - }; - hostPlatform_ = - if builtins.hasAttr hostPlatform systemLookupTable then - systemLookupTable."${hostPlatform}" - else - (lib.systems.elaborate hostPlatform).config; -in -stdenvNoCC.mkDerivation ( - args' - // { - inherit - name - denoDeps - src - denoFlags_ - denoTaskFlags_ - denoCompileFlags_ - denoInstallFlags_ - extraTaskFlags_ - extraCompileFlags_ - binaryEntrypointPath - hostPlatform_ - denoWorkspacePath - denoTaskScript - ; - - nativeBuildInputs = nativeBuildInputs ++ [ - # Prefer passed hooks - (if denoConfigHook != null then denoConfigHook else denoHooks.denoConfigHook) - (if denoBuildHook != null then denoBuildHook else denoHooks.denoBuildHook) - (if denoInstallHook != null then denoInstallHook else denoHooks.denoInstallHook) - denoPackage - diffutils - zip - jq - ]; - - DENO_DIR = denoDir; - - dontFixup = if binaryEntrypointPath != null then false else dontFixup; - - passthru = { - inherit denoDeps; - }; - - meta = (args.meta or { }) // { - platforms = args.meta.platforms or denoPackage.meta.platforms; - }; - } -) diff --git a/pkgs/build-support/deno/build-deno-package/hooks/default.nix b/pkgs/build-support/deno/build-deno-package/hooks/default.nix deleted file mode 100644 index 7ece1943a3cf..000000000000 --- a/pkgs/build-support/deno/build-deno-package/hooks/default.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ - makeSetupHook, - denort, - lib, -}: -{ - denoTaskSuffix, - denoTaskPrefix, - binaryEntrypointPath, -}: -{ - denoConfigHook = makeSetupHook { - name = "deno-config-hook"; - substitutions = { - denortBinary = lib.optionalString (binaryEntrypointPath != null) (lib.getExe denort); - }; - } ./deno-config-hook.sh; - - denoBuildHook = makeSetupHook { - name = "deno-build-hook"; - substitutions = { - inherit denoTaskSuffix denoTaskPrefix; - }; - } ./deno-build-hook.sh; - - denoInstallHook = makeSetupHook { - name = "deno-install-hook"; - } ./deno-install-hook.sh; -} diff --git a/pkgs/build-support/deno/build-deno-package/hooks/deno-build-hook.sh b/pkgs/build-support/deno/build-deno-package/hooks/deno-build-hook.sh deleted file mode 100644 index 66ffb51d3efa..000000000000 --- a/pkgs/build-support/deno/build-deno-package/hooks/deno-build-hook.sh +++ /dev/null @@ -1,58 +0,0 @@ -# shellcheck shell=bash - -denoBuildHook() { - echo "Executing denoBuildHook" - - runHook preBuild - - if [ -n "${binaryEntrypointPath-}" ]; then - echo "Creating binary" - - package_name=$(jq -r '.name' deno.json) - if [ "$package_name" == "null" ]; then - package_name="$name" - fi - - deno compile \ - --output "$package_name" \ - --target "$hostPlatform_" \ - $denoCompileFlags \ - $denoFlags \ - "${denoWorkspacePath+$denoWorkspacePath/}$binaryEntrypointPath" - $extraCompileFlags \ - - elif [ -n "${denoTaskScript-}" ]; then - if ! @denoTaskPrefix@ \ - deno task \ - ${denoWorkspacePath+--cwd=$denoWorkspacePath} \ - $denoTaskFlags \ - $denoFlags \ - "$denoTaskScript" \ - $extraTaskFlags \ - @denoTaskSuffix@; then - echo - echo 'ERROR: `deno task` failed' - echo - echo "Here are a few things you can try, depending on the error:" - echo "1. Make sure your task script ($denoTaskScript) exists" - echo - - exit 1 - fi - else - echo - echo "ERROR: nothing to do in buildPhase" - echo "Specify either 'binaryEntrypointPath' or 'denoTaskScript' or override 'buildPhase'" - echo - - exit 1 - fi - - runHook postBuild - - echo "Finished denoBuildHook" -} - -if [ -z "${buildPhase-}" ]; then - buildPhase=denoBuildHook -fi diff --git a/pkgs/build-support/deno/build-deno-package/hooks/deno-config-hook.sh b/pkgs/build-support/deno/build-deno-package/hooks/deno-config-hook.sh deleted file mode 100644 index 28b6304c6ca4..000000000000 --- a/pkgs/build-support/deno/build-deno-package/hooks/deno-config-hook.sh +++ /dev/null @@ -1,108 +0,0 @@ -# shellcheck shell=bash - -denoConfigHook() { - echo "Executing denoConfigHook" - - if [ -z "${denoDeps-}" ]; then - echo - echo "ERROR: no dependencies were specified" - echo 'Hint: set `denoDeps` if using these hooks individually. If this is happening with `buildDenoPackage`, please open an issue.' - echo - - exit 1 - fi - - local -r cacheLockfile="$denoDeps/deno.lock" - local -r srcLockfile="$PWD/deno.lock" - - echo "Validating consistency between $srcLockfile and $cacheLockfile" - - if ! diff "$srcLockfile" "$cacheLockfile"; then - # If the diff failed, first double-check that the file exists, so we can - # give a friendlier error msg. - if ! [ -e "$srcLockfile" ]; then - echo - echo "ERROR: Missing deno.lock from src. Expected to find it at: $srcLockfile" - echo - - exit 1 - fi - - if ! [ -e "$cacheLockfile" ]; then - echo - echo "ERROR: Missing lockfile from cache. Expected to find it at: $cacheLockfile" - echo - - exit 1 - fi - - echo - echo "ERROR: denoDepsHash is out of date" - echo - echo "The deno.lock in src is not the same as the in $denoDeps." - echo - echo "To fix the issue:" - echo '1. Use `lib.fakeHash` as the denoDepsHash value' - echo "2. Build the derivation and wait for it to fail with a hash mismatch" - echo "3. Copy the 'got: sha256-' value back into the denoDepsHash field" - echo - - exit 1 - fi - - # NOTE: we need to use vendor in the build too, since we used it for the deps - useVendor() { - jq '.vendor = true' deno.json >temp.json && - rm -f deno.json && - mv temp.json deno.json - } - echo "Adding vendor to deno.json" - useVendor - - echo "Installing dependencies" - - export DENO_DIR="$(pwd)"/"$DENO_DIR" - - installDeps() { - if [[ -d "$denoDeps/.deno" ]]; then - cp -r --no-preserve=mode "$denoDeps/.deno" "$DENO_DIR" - fi - if [[ -d "$denoDeps/vendor" ]]; then - cp -r --no-preserve=mode "$denoDeps/vendor" ./vendor - fi - if [[ -d "$denoDeps/node_modules" ]]; then - cp -r --no-preserve=mode "$denoDeps/node_modules" ./node_modules - fi - } - installDeps - - if ! deno install $denoInstallFlags_ $denoFlags_; then - echo - echo "ERROR: deno failed to install dependencies" - echo - - exit 1 - fi - - installDenort() { - version="$(deno --version | head -1 | awk '{print $2}')" - zipfile=denort-"$hostPlatform_".zip - dir="$DENO_DIR"/dl/release/v"$version" - mkdir -p "$dir" - cp "@denortBinary@" ./denort - zip "$dir"/"$zipfile" ./denort - rm ./denort - } - if [ -n "${binaryEntrypointPath-}" ]; then - echo "Installing denort for binary build" - installDenort - fi - - patchShebangs .deno - patchShebangs node_modules - patchShebangs vendor - - echo "Finished denoConfigHook" -} - -postPatchHooks+=(denoConfigHook) diff --git a/pkgs/build-support/deno/build-deno-package/hooks/deno-install-hook.sh b/pkgs/build-support/deno/build-deno-package/hooks/deno-install-hook.sh deleted file mode 100644 index 969c59da5809..000000000000 --- a/pkgs/build-support/deno/build-deno-package/hooks/deno-install-hook.sh +++ /dev/null @@ -1,32 +0,0 @@ -# shellcheck shell=bash - -denoInstallHook() { - echo "Executing denoInstallHook" - - runHook preInstall - - if [ -n "${binaryEntrypointPath-}" ]; then - package_name=$(jq -r '.name' deno.json) - if [ "$package_name" == "null" ]; then - package_name="$name" - fi - - mkdir -p "$out/bin" - cp "$package_name"* "$out/bin" - else - echo - echo "ERROR: nothing to do in installPhase" - echo "Specify either 'binaryEntrypointPath' or override 'installPhase'" - echo - - exit 1 - fi - - runHook postInstall - - echo "Finished denoInstallHook" -} - -if [ -z "${dontDenoInstall-}" ] && [ -z "${installPhase-}" ]; then - installPhase=denoInstallHook -fi diff --git a/pkgs/build-support/deno/fetch-deno-deps/.gitignore b/pkgs/build-support/deno/fetch-deno-deps/.gitignore deleted file mode 100644 index 95aecda46ec1..000000000000 --- a/pkgs/build-support/deno/fetch-deno-deps/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -.deno/ -vendor/ -node_modules/ -.direnv diff --git a/pkgs/build-support/deno/fetch-deno-deps/default.nix b/pkgs/build-support/deno/fetch-deno-deps/default.nix deleted file mode 100644 index a676deeb6d92..000000000000 --- a/pkgs/build-support/deno/fetch-deno-deps/default.nix +++ /dev/null @@ -1,185 +0,0 @@ -# NOTE: much of this structure is inspired from https://github.com/NixOS/nixpkgs/tree/fff29a3e5f7991512e790617d1a693df5f3550f6/pkgs/build-support/node -{ - lib, - stdenvNoCC, - deno, - jq, - cacert, -}: -{ - fetchDenoDeps = - { - name ? "deno-deps", - src, - hash ? lib.fakeHash, - denoPackage ? deno, - denoFlags ? [ ], - denoInstallFlags ? [ - "--allow-scripts" - "--frozen" - ], - nativeBuildInputs ? [ ], - denoDepsImpureEnvVars ? [ ], - denoDepsInjectedEnvVars ? { }, - denoDir ? "./.deno", - ... - }@args: - let - hash_ = - if hash != "" then - { outputHash = hash; } - else - { - outputHash = ""; - outputHashAlgo = "sha256"; - }; - denoInstallFlags_ = builtins.concatStringsSep " " denoInstallFlags; - denoFlags_ = builtins.concatStringsSep " " denoFlags; - denoDepsInjectedEnvVarsString = - if denoDepsInjectedEnvVars != { } then - lib.attrsets.foldlAttrs ( - acc: name: value: - "${acc} ${name}=${value}" - ) "" denoDepsInjectedEnvVars - else - ""; - # need to remove denoDepsInjectedEnvVars, since it's an attrset and - # stdenv.mkDerivation would try to convert it to string - args' = builtins.removeAttrs args [ "denoDepsInjectedEnvVars" ]; - in - stdenvNoCC.mkDerivation ( - args' - // { - inherit name src; - - nativeBuildInputs = nativeBuildInputs ++ [ - denoPackage - jq - ]; - - DENO_DIR = denoDir; - - buildPhase = '' - runHook preBuild - - if [[ ! -e "deno.json" ]]; then - echo "" - echo "ERROR: deno.json required, but not found" - echo "" - exit 1 - fi - - if [[ ! -e "deno.lock" ]]; then - echo "" - echo "ERROR: deno.lock required, but not found" - echo "" - exit 1 - fi - - # NOTE: using vendor reduces the pruning effort a little - useVendor() { - jq '.vendor = true' deno.json >temp.json && \ - rm -f deno.json && \ - mv temp.json deno.json - } - useVendor - - # uses $DENO_DIR - ${denoDepsInjectedEnvVarsString} deno install ${denoInstallFlags_} ${denoFlags_} - - echo "pruning non reproducible files" - - # `node_modules` is used when there are install scripts in a dependencies' package.json. - # these install scripts can also require internet, so they should also be executed in this fetcher - pruneNonReproducibles() { - export tempDenoDir="$DENO_DIR" - - # `registry.json` files can't just be deleted, else deno install won't work, - # but they contain non reproducible data, - # which needs to be pruned, leaving only the necessary data behind. - # This pruning is done with a helper script written in typescript and executed with deno - DENO_DIR=./extra_deno_cache deno run \ - --lock="${./deno.lock}" \ - --config="${./deno.json}" \ - --allow-all \ - "${./prune-registries.ts}" \ - --lock-json="./deno.lock" \ - --cache-path="$tempDenoDir" \ - --vendor-path="./vendor" - - # Keys in `registry.json` files are not deterministically sorted, - # so we do it here. - for file in $(find -L "$DENO_DIR" -name registry.json -type f); do - jq --sort-keys '.' "$file" >temp.json && \ - rm -f "$file" && \ - mv temp.json "$file" - done - - # There are various small databases used by deno for caching that - # we can simply delete. - if [[ -d "./node_modules" ]]; then - find -L ./node_modules -name '*cache_v2-shm' -type f | xargs rm -f - find -L ./node_modules -name '*cache_v2-wal' -type f | xargs rm -f - find -L ./node_modules -name 'dep_analysis_cache_v2' -type f | xargs rm -f - find -L ./node_modules -name 'node_analysis_cache_v2' -type f | xargs rm -f - find -L ./node_modules -name v8_code_cache_v2 -type f | xargs rm -f - rm -f ./node_modules/.deno/.deno.lock.poll - - # sometimes a .deno dir is slipped into a node_modules package - # it's unclear why. but it can just be deleted - find -L ./node_modules -name ".deno" -type d | sort -r | head -n-1 | xargs rm -rf - fi - - rm -f "$DENO_DIR"/dep_analysis_cache_v2-shm - rm -f "$DENO_DIR"/dep_analysis_cache_v2-wal - rm -f "$DENO_DIR"/dep_analysis_cache_v2 - } - pruneNonReproducibles - - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - - if [[ -d "$DENO_DIR" ]]; then - mkdir -p $out/$DENO_DIR - cp -r --no-preserve=mode $DENO_DIR $out - fi - if [[ -d "./vendor" ]]; then - mkdir -p $out/vendor - cp -r --no-preserve=mode ./vendor $out - fi - if [[ -d "./node_modules" ]]; then - mkdir -p $out/node_modules - cp -r --no-preserve=mode ./node_modules $out - fi - - cp ./deno.lock $out - - runHook postInstall - ''; - - dontFixup = true; - - outputHashMode = "recursive"; - - impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ denoDepsImpureEnvVars; - - SSL_CERT_FILE = - if - ( - hash_.outputHash == "" - || hash_.outputHash == lib.fakeSha256 - || hash_.outputHash == lib.fakeSha512 - || hash_.outputHash == lib.fakeHash - ) - then - "${cacert}/etc/ssl/certs/ca-bundle.crt" - else - "/no-cert-file.crt"; - - } - // hash_ - ); -} diff --git a/pkgs/build-support/deno/fetch-deno-deps/deno.json b/pkgs/build-support/deno/fetch-deno-deps/deno.json deleted file mode 100644 index b658546e4b31..000000000000 --- a/pkgs/build-support/deno/fetch-deno-deps/deno.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "tasks": { "test": "deno test" }, - "imports": { - "@std/assert": "jsr:@std/assert@1.0.13", - "@std/cli": "jsr:@std/cli@1.0.16", - "@std/fs": "jsr:@std/fs@1.0.16" - } -} diff --git a/pkgs/build-support/deno/fetch-deno-deps/deno.lock b/pkgs/build-support/deno/fetch-deno-deps/deno.lock deleted file mode 100644 index 7791e3142212..000000000000 --- a/pkgs/build-support/deno/fetch-deno-deps/deno.lock +++ /dev/null @@ -1,53 +0,0 @@ -{ - "version": "5", - "specifiers": { - "jsr:@std/assert@1.0.13": "1.0.13", - "jsr:@std/cli@1.0.16": "1.0.16", - "jsr:@std/fs@1.0.16": "1.0.16", - "jsr:@std/internal@^1.0.6": "1.0.7", - "jsr:@std/path@1.0.9": "1.0.9", - "jsr:@std/path@^1.0.8": "1.0.9", - "npm:@types/node@*": "22.15.15" - }, - "jsr": { - "@std/assert@1.0.13": { - "integrity": "ae0d31e41919b12c656c742b22522c32fb26ed0cba32975cb0de2a273cb68b29", - "dependencies": [ - "jsr:@std/internal" - ] - }, - "@std/cli@1.0.16": { - "integrity": "02df293099c35b9e97d8ca05f57f54bd1ee08134f25d19a4756b3924695f4b00" - }, - "@std/fs@1.0.16": { - "integrity": "81878f62b6eeda0bf546197fc3daa5327c132fee1273f6113f940784a468b036", - "dependencies": [ - "jsr:@std/path@^1.0.8" - ] - }, - "@std/internal@1.0.7": { - "integrity": "39eeb5265190a7bc5d5591c9ff019490bd1f2c3907c044a11b0d545796158a0f" - }, - "@std/path@1.0.9": { - "integrity": "260a49f11edd3db93dd38350bf9cd1b4d1366afa98e81b86167b4e3dd750129e" - } - }, - "npm": { - "@types/node@22.15.15": { - "integrity": "sha512-R5muMcZob3/Jjchn5LcO8jdKwSCbzqmPB6ruBxMcf9kbxtniZHP327s6C37iOfuw8mbKK3cAQa7sEl7afLrQ8A==", - "dependencies": [ - "undici-types" - ] - }, - "undici-types@6.21.0": { - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==" - } - }, - "workspace": { - "dependencies": [ - "jsr:@std/assert@1.0.13", - "jsr:@std/cli@1.0.16", - "jsr:@std/fs@1.0.16" - ] - } -} diff --git a/pkgs/build-support/deno/fetch-deno-deps/prune-registries.test.ts b/pkgs/build-support/deno/fetch-deno-deps/prune-registries.test.ts deleted file mode 100644 index 42f7edac640b..000000000000 --- a/pkgs/build-support/deno/fetch-deno-deps/prune-registries.test.ts +++ /dev/null @@ -1,1054 +0,0 @@ -import { assertEquals } from "@std/assert"; -import type { - LockJson, - MetaJson, - PackageInfo, - PackagesByRegistry, - PackageSpecifiers, - RegistryJson, -} from "./prune-registries.ts"; -import { - getAllPackageRegistries, - getAllPackagesByPackageRegistry, - getScopedName, - parsePackageSpecifier, - pruneMetaJson, - pruneRegistryJson, -} from "./prune-registries.ts"; - -type Fixture = { - testValue: T; - expectedValue: R; -}; - -type Fixtures = Array>; - -function testFactory( - assertFunction: (actual: R, expected: R, msg?: string) => void, - testFunction: (args: T) => R, - fixtures: Fixtures -): () => void { - return () => { - fixtures.forEach((fixture) => { - assertFunction(testFunction(fixture.testValue), fixture.expectedValue); - }); - }; -} - -Deno.test("parsePackageSpecifier", () => { - type Args = string; - type ReturnValue = PackageInfo; - const fixtures: Array> = [ - { - testValue: "jsr:@std/assert@1.0.13", - expectedValue: { - full: "jsr:@std/assert@1.0.13", - registry: "jsr", - scope: "@std", - name: "assert", - version: "1.0.13", - suffix: undefined, - }, - }, - { - testValue: "npm:ini@5.0.0", - expectedValue: { - full: "npm:ini@5.0.0", - registry: "npm", - scope: undefined, - name: "ini", - version: "5.0.0", - suffix: undefined, - }, - }, - { - testValue: "npm:@amazn/style-dictionary@4.2.4_prettier@3.5.3", - expectedValue: { - full: "npm:@amazn/style-dictionary@4.2.4_prettier@3.5.3", - registry: "npm", - scope: "@amazn", - name: "style-dictionary", - version: "4.2.4", - suffix: "_prettier@3.5.3", - }, - }, - ]; - testFactory(assertEquals, parsePackageSpecifier, fixtures)(); -}); - -Deno.test("getScopedName", () => { - type Args = { name: string; scope?: string }; - type ReturnValue = string; - const fixtures: Array> = [ - { - testValue: { name: "assert", scope: undefined }, - expectedValue: "assert", - }, - { - testValue: { name: "assert", scope: "std" }, - expectedValue: "@std/assert", - }, - { - testValue: { name: "assert", scope: "@std" }, - expectedValue: "@std/assert", - }, - ]; - testFactory( - assertEquals, - (args: Args) => getScopedName(args.name, args.scope), - fixtures - )(); -}); - -Deno.test("getAllPackageRegistries", () => { - type Args = PackageSpecifiers; - type ReturnValue = Set; - const fixtures: Array> = [ - { - testValue: { - "jsr:@std/assert@1.0.13": "1.0.13", - "jsr:@std/cli@1.0.16": "1.0.16", - "jsr:@std/fs@1.0.16": "1.0.16", - "jsr:@std/internal@^1.0.6": "1.0.7", - "jsr:@std/path@1.0.9": "1.0.9", - "jsr:@std/path@^1.0.8": "1.0.9", - "npm:ini@5.0.0": "5.0.0", - }, - expectedValue: new Set(["jsr", "npm"]), - }, - ]; - testFactory(assertEquals, getAllPackageRegistries, fixtures)(); -}); - -Deno.test("getAllPackagesByPackageRegistry", () => { - type Args = { lockJson: LockJson; registries: Set }; - type ReturnValue = PackagesByRegistry; - const fixtures: Array> = [ - { - testValue: { - lockJson: JSON.parse(` -{ - "version": "4", - "specifiers": { - "jsr:@std/assert@1.0.13": "1.0.13", - "jsr:@std/cli@1.0.16": "1.0.16", - "jsr:@std/fs@1.0.16": "1.0.16", - "jsr:@std/internal@^1.0.6": "1.0.7", - "jsr:@std/path@1.0.9": "1.0.9", - "jsr:@std/path@^1.0.8": "1.0.9", - "npm:ini@5.0.0": "5.0.0" - }, - "jsr": { - "@std/assert@1.0.13": { - "integrity": "ae0d31e41919b12c656c742b22522c32fb26ed0cba32975cb0de2a273cb68b29", - "dependencies": [ - "jsr:@std/internal" - ] - }, - "@std/cli@1.0.16": { - "integrity": "02df293099c35b9e97d8ca05f57f54bd1ee08134f25d19a4756b3924695f4b00" - }, - "@std/fs@1.0.16": { - "integrity": "81878f62b6eeda0bf546197fc3daa5327c132fee1273f6113f940784a468b036", - "dependencies": [ - "jsr:@std/path@^1.0.8" - ] - }, - "@std/internal@1.0.7": { - "integrity": "39eeb5265190a7bc5d5591c9ff019490bd1f2c3907c044a11b0d545796158a0f" - }, - "@std/path@1.0.9": { - "integrity": "260a49f11edd3db93dd38350bf9cd1b4d1366afa98e81b86167b4e3dd750129e" - } - }, - "npm": { - "ini@5.0.0": { - "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==" - } - }, - "workspace": { - "dependencies": [ - "jsr:@std/assert@1.0.13", - "jsr:@std/cli@1.0.16", - "jsr:@std/fs@1.0.16", - "jsr:@std/path@1.0.9", - "npm:ini@5.0.0" - ] - } -} -`), - registries: new Set(["npm", "jsr"]), - }, - expectedValue: { - jsr: { - "@std/assert": { - "1.0.13": { - full: "@std/assert@1.0.13", - registry: undefined, - scope: "@std", - name: "assert", - version: "1.0.13", - suffix: undefined, - }, - }, - "@std/cli": { - "1.0.16": { - full: "@std/cli@1.0.16", - registry: undefined, - scope: "@std", - name: "cli", - version: "1.0.16", - suffix: undefined, - }, - }, - "@std/fs": { - "1.0.16": { - full: "@std/fs@1.0.16", - registry: undefined, - scope: "@std", - name: "fs", - version: "1.0.16", - suffix: undefined, - }, - }, - "@std/internal": { - "1.0.7": { - full: "@std/internal@1.0.7", - registry: undefined, - scope: "@std", - name: "internal", - version: "1.0.7", - suffix: undefined, - }, - }, - "@std/path": { - "1.0.9": { - full: "@std/path@1.0.9", - registry: undefined, - scope: "@std", - name: "path", - version: "1.0.9", - suffix: undefined, - }, - }, - }, - npm: { - ini: { - "5.0.0": { - full: "ini@5.0.0", - registry: undefined, - scope: undefined, - name: "ini", - version: "5.0.0", - suffix: undefined, - }, - }, - }, - }, - }, - ]; - testFactory( - assertEquals, - (args: Args) => - getAllPackagesByPackageRegistry(args.lockJson, args.registries), - fixtures - )(); -}); - -Deno.test("pruneMetaJson", () => { - type Args = { - metaJson: MetaJson; - jsrPackages: PackagesByRegistry; - registry: string; - }; - type ReturnValue = MetaJson; - const fixtures: Array> = [ - { - testValue: { - metaJson: { - scope: "std", - name: "cli", - latest: "1.0.17", - versions: { - "0.222.0": {}, - "1.0.16": {}, - "0.218.2": {}, - "0.218.0": {}, - "1.0.10": {}, - "0.224.6": {}, - "1.0.4": {}, - "1.0.8": {}, - "1.0.2": {}, - "0.211.0": {}, - "0.213.0": {}, - "1.0.0-rc.2": {}, - "1.0.3": {}, - "1.0.0-rc.5": {}, - "0.210.0": {}, - "0.209.0": {}, - "0.212.0": {}, - "0.208.0": {}, - "1.0.7": {}, - "1.0.0": {}, - "0.220.1": {}, - "0.224.2": {}, - "1.0.17": {}, - "1.0.1": {}, - "0.221.0": {}, - "0.224.5": {}, - "0.216.0": {}, - "0.207.0": {}, - "0.224.4": {}, - "1.0.0-rc.4": {}, - "0.214.0": {}, - "0.223.0": {}, - "1.0.6": {}, - "0.224.1": {}, - "0.224.0": {}, - "1.0.15": {}, - "1.0.0-rc.3": {}, - "0.224.3": {}, - "1.0.14": {}, - "1.0.9": {}, - "0.222.1": {}, - "1.0.13": {}, - "1.0.0-rc.1": {}, - "0.219.0": {}, - "1.0.5": {}, - "1.0.11": {}, - "0.224.7": {}, - "0.215.0": {}, - "1.0.12": {}, - "0.217.0": {}, - "0.213.1": {}, - "0.219.1": {}, - "0.218.1": {}, - }, - }, - jsrPackages: { - jsr: { - "@luca/cases": { - "1.0.0": { - full: "@luca/cases@1.0.0", - registry: undefined, - scope: "@luca", - name: "cases", - version: "1.0.0", - suffix: undefined, - }, - }, - "@std/cli": { - "1.0.17": { - full: "@std/cli@1.0.17", - registry: undefined, - scope: "@std", - name: "cli", - version: "1.0.17", - suffix: undefined, - }, - }, - }, - }, - registry: "jsr", - }, - expectedValue: { - scope: "std", - name: "cli", - latest: "", - versions: { "1.0.17": {} }, - }, - }, - { - testValue: { - metaJson: { - scope: "luca", - name: "cases", - latest: "1.0.0", - versions: { "1.0.0": {} }, - }, - jsrPackages: { - jsr: { - "@luca/cases": { - "1.0.0": { - full: "@luca/cases@1.0.0", - registry: undefined, - scope: "@luca", - name: "cases", - version: "1.0.0", - suffix: undefined, - }, - }, - "@std/cli": { - "1.0.17": { - full: "@std/cli@1.0.17", - registry: undefined, - scope: "@std", - name: "cli", - version: "1.0.17", - suffix: undefined, - }, - }, - }, - }, - registry: "jsr", - }, - expectedValue: { - scope: "luca", - name: "cases", - latest: "", - versions: { "1.0.0": {} }, - }, - }, - ]; - testFactory( - assertEquals, - (args: Args) => - pruneMetaJson(args.metaJson, args.jsrPackages, args.registry), - fixtures - )(); -}); - -Deno.test("pruneRegistryJson", () => { - type Args = { - registryJson: RegistryJson; - nonJsrPackages: PackagesByRegistry; - registry: string; - }; - type ReturnValue = RegistryJson; - const fixtures: Array> = [ - { - testValue: { - registryJson: { - name: "decamelize", - versions: { - "1.1.0": { - version: "1.1.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-1.1.0.tgz", - shasum: "fe90c002a0acec1435120ce83a6945641018d0c8", - integrity: - "sha512-n7ZK2Y9+g6neJhxuH+BejddHBOZXp9vh5KcKbedUHVjl1SCU3nnO8iWTqNxLi7OCYabTpypddtlylvtecwrW1w==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "node test.js" }, - deprecated: null, - }, - "3.1.1": { - version: "3.1.1", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-3.1.1.tgz", - shasum: "ebf473c6f8607bd70fd9ed6d892da27c5eb8539e", - integrity: - "sha512-pSJTQCBDZxv8siK5p/M42ZdhThhTtx3JU/OKli0yQSKebfM9q92op6zF7krYrWVKRtsE/RwTDiZLliMV3ECkXQ==", - }, - bin: null, - dependencies: { xregexp: "^4.2.4" }, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd" }, - deprecated: null, - }, - "3.1.0": { - version: "3.1.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-3.1.0.tgz", - shasum: "81cd3f2e9911b8874e290d249da2c366453641d4", - integrity: - "sha512-fgHaR077tSDdzV2ExQwtJ8Kx8LYOvnf1cm5JaQ1ESeGgO8CTH7wv3202zJEg1YND0Fx7WQDxeuDPdAPMERXBEg==", - }, - bin: null, - dependencies: { xregexp: "^4.2.4" }, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd" }, - deprecated: null, - }, - "1.1.1": { - version: "1.1.1", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-1.1.1.tgz", - shasum: "8871479a6c0487f5653d48a992f1d0381ca6f031", - integrity: - "sha512-l2nWbx7Uy2MCRQjEJQm6lep1GwWzl1DHr9wTcQzLQYOSes2RwALmR87OG91eNjoMbih7xrYhZX9cPWP3U7Kxmw==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "node test.js" }, - deprecated: null, - }, - "1.2.0": { - version: "1.2.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - shasum: "f6534d15148269b20352e7bee26f501f9a191290", - integrity: - "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava" }, - deprecated: null, - }, - "2.0.0": { - version: "2.0.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - shasum: "656d7bbc8094c4c788ea53c5840908c9c7d063c7", - integrity: - "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - }, - bin: null, - dependencies: { xregexp: "4.0.0" }, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava" }, - deprecated: null, - }, - "3.0.0": { - version: "3.0.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-3.0.0.tgz", - shasum: "5efdacb0ff1b6e4031ccd0da71257340c1b846b7", - integrity: - "sha512-NUW7GyGP5Al0a4QIr3qj/FVzPNjpixU/HWPMJ7kuFlMpVnLcNeUrKsvOOMlywL2QPr/JG3am40S5a2G9F0REcw==", - }, - bin: null, - dependencies: { xregexp: "^4.2.4" }, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd-check" }, - deprecated: null, - }, - "5.0.0": { - version: "5.0.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-5.0.0.tgz", - shasum: "88358157b010ef133febfd27c18994bd80c6215b", - integrity: - "sha512-U75DcT5hrio3KNtvdULAWnLiAPbFUC4191ldxMmj4FA/mRuBnmDwU0boNfPyFRhnan+Jm+haLeSn3P0afcBn4w==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd" }, - deprecated: null, - }, - "1.1.2": { - version: "1.1.2", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-1.1.2.tgz", - shasum: "dcc93727be209632e98b02718ef4cb79602322f2", - integrity: - "sha512-TzUj+sMdUozL/R01HUZfQNgHBclsYvlLLDoXpoVT//50AAuGNYj1jayRptx0gBgBWaViSim8YHnx0NgLmdx2KQ==", - }, - bin: null, - dependencies: { "escape-string-regexp": "^1.0.4" }, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava" }, - deprecated: null, - }, - "4.0.0": { - version: "4.0.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - shasum: "aa472d7bf660eb15f3494efd531cab7f2a709837", - integrity: - "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd" }, - deprecated: null, - }, - "5.0.1": { - version: "5.0.1", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", - shasum: "db11a92e58c741ef339fb0a2868d8a06a9a7b1e9", - integrity: - "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd" }, - deprecated: null, - }, - "1.0.0": { - version: "1.0.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-1.0.0.tgz", - shasum: "5287122f71691d4505b18ff2258dc400a5b23847", - integrity: - "sha512-6OlbjTSfBWyqM8oFO7TYc6DgCIiT6vgCiZ973GDA98xVf+DOXVZvYLzRyi0HEJy5J31/69lel4AeY78OaasBLQ==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "node test.js" }, - deprecated: null, - }, - "3.2.0": { - version: "3.2.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-3.2.0.tgz", - shasum: "84b8e8f4f8c579f938e35e2cc7024907e0090851", - integrity: - "sha512-4TgkVUsmmu7oCSyGBm5FvfMoACuoh9EOidm7V5/J2X2djAwwt57qb3F2KMP2ITqODTCSwb+YRV+0Zqrv18k/hw==", - }, - bin: null, - dependencies: { xregexp: "^4.2.4" }, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd" }, - deprecated: null, - }, - "6.0.0": { - version: "6.0.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-6.0.0.tgz", - shasum: "8cad4d916fde5c41a264a43d0ecc56fe3d31749e", - integrity: - "sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava && tsd" }, - deprecated: null, - }, - }, - "dist-tags": { latest: "6.0.0" }, - }, - nonJsrPackages: { - npm: { - "ansi-regex": { - "3.0.1": { - full: "ansi-regex@3.0.1", - registry: undefined, - scope: undefined, - name: "ansi-regex", - version: "3.0.1", - suffix: undefined, - }, - "5.0.1": { - full: "ansi-regex@5.0.1", - registry: undefined, - scope: undefined, - name: "ansi-regex", - version: "5.0.1", - suffix: undefined, - }, - }, - "ansi-styles": { - "4.3.0": { - full: "ansi-styles@4.3.0", - registry: undefined, - scope: undefined, - name: "ansi-styles", - version: "4.3.0", - suffix: undefined, - }, - }, - camelcase: { - "5.3.1": { - full: "camelcase@5.3.1", - registry: undefined, - scope: undefined, - name: "camelcase", - version: "5.3.1", - suffix: undefined, - }, - }, - cliui: { - "6.0.0": { - full: "cliui@6.0.0", - registry: undefined, - scope: undefined, - name: "cliui", - version: "6.0.0", - suffix: undefined, - }, - }, - "color-convert": { - "2.0.1": { - full: "color-convert@2.0.1", - registry: undefined, - scope: undefined, - name: "color-convert", - version: "2.0.1", - suffix: undefined, - }, - }, - "color-name": { - "1.1.4": { - full: "color-name@1.1.4", - registry: undefined, - scope: undefined, - name: "color-name", - version: "1.1.4", - suffix: undefined, - }, - }, - cowsay: { - "1.6.0": { - full: "cowsay@1.6.0", - registry: undefined, - scope: undefined, - name: "cowsay", - version: "1.6.0", - suffix: undefined, - }, - }, - decamelize: { - "1.2.0": { - full: "decamelize@1.2.0", - registry: undefined, - scope: undefined, - name: "decamelize", - version: "1.2.0", - suffix: undefined, - }, - }, - "emoji-regex": { - "8.0.0": { - full: "emoji-regex@8.0.0", - registry: undefined, - scope: undefined, - name: "emoji-regex", - version: "8.0.0", - suffix: undefined, - }, - }, - "find-up": { - "4.1.0": { - full: "find-up@4.1.0", - registry: undefined, - scope: undefined, - name: "find-up", - version: "4.1.0", - suffix: undefined, - }, - }, - "get-caller-file": { - "2.0.5": { - full: "get-caller-file@2.0.5", - registry: undefined, - scope: undefined, - name: "get-caller-file", - version: "2.0.5", - suffix: undefined, - }, - }, - "get-stdin": { - "8.0.0": { - full: "get-stdin@8.0.0", - registry: undefined, - scope: undefined, - name: "get-stdin", - version: "8.0.0", - suffix: undefined, - }, - }, - "is-fullwidth-code-point": { - "2.0.0": { - full: "is-fullwidth-code-point@2.0.0", - registry: undefined, - scope: undefined, - name: "is-fullwidth-code-point", - version: "2.0.0", - suffix: undefined, - }, - "3.0.0": { - full: "is-fullwidth-code-point@3.0.0", - registry: undefined, - scope: undefined, - name: "is-fullwidth-code-point", - version: "3.0.0", - suffix: undefined, - }, - }, - "locate-path": { - "5.0.0": { - full: "locate-path@5.0.0", - registry: undefined, - scope: undefined, - name: "locate-path", - version: "5.0.0", - suffix: undefined, - }, - }, - "p-limit": { - "2.3.0": { - full: "p-limit@2.3.0", - registry: undefined, - scope: undefined, - name: "p-limit", - version: "2.3.0", - suffix: undefined, - }, - }, - "p-locate": { - "4.1.0": { - full: "p-locate@4.1.0", - registry: undefined, - scope: undefined, - name: "p-locate", - version: "4.1.0", - suffix: undefined, - }, - }, - "p-try": { - "2.2.0": { - full: "p-try@2.2.0", - registry: undefined, - scope: undefined, - name: "p-try", - version: "2.2.0", - suffix: undefined, - }, - }, - "path-exists": { - "4.0.0": { - full: "path-exists@4.0.0", - registry: undefined, - scope: undefined, - name: "path-exists", - version: "4.0.0", - suffix: undefined, - }, - }, - "require-directory": { - "2.1.1": { - full: "require-directory@2.1.1", - registry: undefined, - scope: undefined, - name: "require-directory", - version: "2.1.1", - suffix: undefined, - }, - }, - "require-main-filename": { - "2.0.0": { - full: "require-main-filename@2.0.0", - registry: undefined, - scope: undefined, - name: "require-main-filename", - version: "2.0.0", - suffix: undefined, - }, - }, - "set-blocking": { - "2.0.0": { - full: "set-blocking@2.0.0", - registry: undefined, - scope: undefined, - name: "set-blocking", - version: "2.0.0", - suffix: undefined, - }, - }, - "string-width": { - "2.1.1": { - full: "string-width@2.1.1", - registry: undefined, - scope: undefined, - name: "string-width", - version: "2.1.1", - suffix: undefined, - }, - "4.2.3": { - full: "string-width@4.2.3", - registry: undefined, - scope: undefined, - name: "string-width", - version: "4.2.3", - suffix: undefined, - }, - }, - "strip-ansi": { - "4.0.0": { - full: "strip-ansi@4.0.0", - registry: undefined, - scope: undefined, - name: "strip-ansi", - version: "4.0.0", - suffix: undefined, - }, - "6.0.1": { - full: "strip-ansi@6.0.1", - registry: undefined, - scope: undefined, - name: "strip-ansi", - version: "6.0.1", - suffix: undefined, - }, - }, - "strip-final-newline": { - "2.0.0": { - full: "strip-final-newline@2.0.0", - registry: undefined, - scope: undefined, - name: "strip-final-newline", - version: "2.0.0", - suffix: undefined, - }, - }, - "which-module": { - "2.0.1": { - full: "which-module@2.0.1", - registry: undefined, - scope: undefined, - name: "which-module", - version: "2.0.1", - suffix: undefined, - }, - }, - "wrap-ansi": { - "6.2.0": { - full: "wrap-ansi@6.2.0", - registry: undefined, - scope: undefined, - name: "wrap-ansi", - version: "6.2.0", - suffix: undefined, - }, - }, - y18n: { - "4.0.3": { - full: "y18n@4.0.3", - registry: undefined, - scope: undefined, - name: "y18n", - version: "4.0.3", - suffix: undefined, - }, - }, - "yargs-parser": { - "18.1.3": { - full: "yargs-parser@18.1.3", - registry: undefined, - scope: undefined, - name: "yargs-parser", - version: "18.1.3", - suffix: undefined, - }, - }, - yargs: { - "15.4.1": { - full: "yargs@15.4.1", - registry: undefined, - scope: undefined, - name: "yargs", - version: "15.4.1", - suffix: undefined, - }, - }, - }, - }, - registry: "npm", - }, - expectedValue: { - name: "decamelize", - versions: { - "1.2.0": { - version: "1.2.0", - dist: { - tarball: - "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - shasum: "f6534d15148269b20352e7bee26f501f9a191290", - integrity: - "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - }, - bin: null, - dependencies: {}, - optionalDependencies: {}, - peerDependencies: {}, - peerDependenciesMeta: {}, - os: [], - cpu: [], - scripts: { test: "xo && ava" }, - deprecated: null, - }, - }, - "dist-tags": {}, - }, - }, - ]; - testFactory( - assertEquals, - (args: Args) => - pruneRegistryJson(args.registryJson, args.nonJsrPackages, args.registry), - fixtures - )(); -}); diff --git a/pkgs/build-support/deno/fetch-deno-deps/prune-registries.ts b/pkgs/build-support/deno/fetch-deno-deps/prune-registries.ts deleted file mode 100644 index 0a8b12d0a4a9..000000000000 --- a/pkgs/build-support/deno/fetch-deno-deps/prune-registries.ts +++ /dev/null @@ -1,346 +0,0 @@ -#!/usr/bin/env deno -import { parseArgs } from "@std/cli/parse-args"; -import { walkSync } from "@std/fs/walk"; - -/** - * NOTE: The problem this script solves, is that in every npm dependency in the deno cache - * is a registry.json file, which serves as a sort of local registry cache for the deno cli. - * Such a file looks like this (with deno v2.1.4): - * ```json - * { - * "name": "@floating-ui/core", - * "versions": { - * "0.7.0": { ... }, - * "1.6.0": { ... }, - * "0.1.2": { ... }, - * ... - * }, - * "dist-tags": { "latest": "1.7.0" } - * } - * ``` - * The deno cli will look into this file when called to look up if the required versions are there. - * The problem is that the available versions for a package change over time. The registry.json files - * need to be part of the fixed output derivation, which will eventually change the hash of the FOD, - * if all those unwanted versions aren't pruned. - * - * On top of that a similar thing happens for jsr packages in the vendor directory - * with `meta.json` files. These also need to be pruned. - * Such a file looks like this (with deno v2.1.4): - * ```json - * { - * "scope": "std", - * "name": "internal", - * "latest": "1.0.6", - * "versions": { - * "0.202.0": {}, - * "1.0.1": {}, - * "0.225.0": { - * "yanked": true - * }, - * } - * ``` - */ - -export type PackageSpecifiers = { - [packageIdent: string]: string; -}; - -export type LockJson = { - specifiers: PackageSpecifiers; - version: string; - workspace: any; - [registry: string]: any; -}; - -export type Config = { - lockJson: LockJson; - cachePath: string; - vendorPath: string; -}; - -export type PackageInfo = { - full: string; - registry: string | undefined; - scope: string | undefined; - name: string; - version: string; - suffix: string | undefined; -}; - -export type PackagesByRegistry = { - [registry: string]: { - [packageName: string]: { - [version: string]: PackageInfo; - }; - }; -}; - -export type PathsByRegistry = { - [packageRegistry: string]: string[]; -}; - -export type RegistryJson = { - "dist-tags": any; - "_deno.etag": string; - versions: { [version: string]: any }; - name: string; -}; - -export type MetaJson = { - scope: string; - name: string; - latest: string; - versions: { - [version: string]: any; - }; -}; - -export function getConfig(): Config { - const flags = parseArgs(Deno.args, { - string: ["lock-json", "cache-path", "vendor-path"], - }); - - if (!flags["lock-json"]) { - throw "--lock-json flag not set but required"; - } - if (!flags["cache-path"]) { - throw "--cache-path flag not set but required"; - } - if (!flags["vendor-path"]) { - throw "--vendor-path flag not set but required"; - } - - const lockJson = JSON.parse( - new TextDecoder("utf-8").decode(Deno.readFileSync(flags["lock-json"])) - ); - if (!lockJson) { - throw `could not parse lockJson at ${flags["lock-json"]}`; - } - - return { - lockJson, - cachePath: flags["cache-path"], - vendorPath: flags["vendor-path"], - }; -} - -export function getAllPackageRegistries( - specifiers: PackageSpecifiers -): Set { - return Object.keys(specifiers).reduce((acc: Set, v: string) => { - const s = v.split(":"); - if (s.length !== 2) { - throw "unexpected registry format"; - } - const registry = s[0]; - acc.add(registry); - return acc; - }, new Set()); -} - -export function parsePackageSpecifier(packageSpecifier: string): PackageInfo { - const match = - /^((?.*):)?((?@.*?)\/)?(?.*?)@(?.*?)(?_.*)?$/.exec( - packageSpecifier - ); - if ( - match !== null && - match.groups?.name !== undefined && - match.groups?.version !== undefined - ) { - return { - // npm:@amazn/style-dictionary@4.2.4_prettier@3.5.3 - full: match[0], - // npm - registry: match.groups?.registry, - // @amazn - scope: match.groups?.scope, - // style-dictionary - name: match.groups?.name, - // 4.2.4 - version: match.groups?.version, - // _prettier@3.5.3 - suffix: match.groups?.suffix, - }; - } - - throw "unexpected package specifier format"; -} - -export function getScopedName(name: string, scope?: string): string { - if (scope !== undefined) { - return `${scope[0] === "@" ? "" : "@"}${scope}/${name}`; - } - return name; -} - -export function getAllPackagesByPackageRegistry( - lockJson: LockJson, - registries: Set -): PackagesByRegistry { - const result: PackagesByRegistry = {}; - for (const registry of Array.from(registries)) { - const packageInfosOfRegistries = Object.keys(lockJson[registry]).map( - parsePackageSpecifier - ); - result[registry] = {}; - for (const packageInfo of packageInfosOfRegistries) { - const scopedName = getScopedName(packageInfo.name, packageInfo.scope); - if (result[registry][scopedName] === undefined) { - result[registry][scopedName] = {}; - } - result[registry][scopedName][packageInfo.version] = packageInfo; - } - } - return result; -} - -export function findRegistryJsonPaths( - cachePath: string, - nonJsrPackages: PackagesByRegistry -): PathsByRegistry { - const result: PathsByRegistry = {}; - for (const registry of Object.keys(nonJsrPackages)) { - const path = `${cachePath}/${registry}`; - const registryJsonPaths = Array.from(walkSync(path)) - .filter((v) => v.name === "registry.json") - .map((v) => v.path); - result[registry] = registryJsonPaths; - } - return result; -} - -export function pruneRegistryJson( - registryJson: RegistryJson, - nonJsrPackages: PackagesByRegistry, - registry: string -) { - const scopedName = registryJson.name; - const packageInfoByVersion = nonJsrPackages[registry][scopedName]; - if (!packageInfoByVersion) { - throw `could not find key "${scopedName}" in\n${Object.keys( - nonJsrPackages[registry] - )}`; - } - - const newRegistryJson: RegistryJson = { - ...registryJson, - "_deno.etag": "", - "dist-tags": {}, - versions: {}, - }; - - for (const version of Object.keys(packageInfoByVersion)) { - newRegistryJson.versions[version] = registryJson.versions[version]; - } - - return newRegistryJson; -} - -export function pruneRegistryJsonFiles( - nonJsrPackages: PackagesByRegistry, - registryJsonPathsByRegistry: PathsByRegistry -): void { - for (const [registry, paths] of Object.entries(registryJsonPathsByRegistry)) { - for (const path of paths) { - const registryJson: RegistryJson = JSON.parse( - new TextDecoder("utf-8").decode(Deno.readFileSync(path)) - ); - - const newRegistryJson = pruneRegistryJson( - registryJson, - nonJsrPackages, - registry - ); - - Deno.writeFileSync( - path, - new TextEncoder().encode(JSON.stringify(newRegistryJson)) - ); - } - } -} - -export function findMetaJsonPaths( - vendorPath: string, - jsrPackages: PackagesByRegistry -): PathsByRegistry { - const result: PathsByRegistry = {}; - for (const registry of Object.keys(jsrPackages)) { - const path = `${vendorPath}`; - const metaJsonPaths = Array.from(walkSync(path)) - .filter((v) => v.name === "meta.json") - .map((v) => v.path); - result[registry] = metaJsonPaths; - } - return result; -} - -export function pruneMetaJson( - metaJson: MetaJson, - jsrPackages: PackagesByRegistry, - registry: string -): MetaJson { - const scopedName = getScopedName(metaJson.name, metaJson.scope); - const packageInfoByVersion = jsrPackages[registry][scopedName]; - if (!packageInfoByVersion) { - throw `could not find key "${scopedName}" in\n${Object.keys( - jsrPackages[registry] - )}`; - } - const newMetaJson: MetaJson = { - ...metaJson, - latest: "", - versions: {}, - }; - - for (const version of Object.keys(packageInfoByVersion)) { - newMetaJson.versions[version] = metaJson.versions[version]; - } - return newMetaJson; -} - -export function pruneMetaJsonFiles( - jsrPackages: PackagesByRegistry, - metaJsonPathsByRegistry: PathsByRegistry -): void { - for (const [registry, paths] of Object.entries(metaJsonPathsByRegistry)) { - for (const path of paths) { - const metaJson: MetaJson = JSON.parse( - new TextDecoder("utf-8").decode(Deno.readFileSync(path)) - ); - - const newMetaJson = pruneMetaJson(metaJson, jsrPackages, registry); - - Deno.writeFileSync( - path, - new TextEncoder().encode(JSON.stringify(newMetaJson)) - ); - } - } -} - -function main() { - const config = getConfig(); - const registries = getAllPackageRegistries(config.lockJson.specifiers); - const packages = getAllPackagesByPackageRegistry(config.lockJson, registries); - - const jsrPackages = { - jsr: structuredClone(packages.jsr), - } satisfies PackagesByRegistry; - delete packages.jsr; - const nonJsrPackages = packages; - - const metaJsonpaths = findMetaJsonPaths(config.vendorPath, jsrPackages); - pruneMetaJsonFiles(jsrPackages, metaJsonpaths); - - const registryJsonPaths = findRegistryJsonPaths( - config.cachePath, - nonJsrPackages - ); - pruneRegistryJsonFiles(nonJsrPackages, registryJsonPaths); -} - -if (import.meta.main) { - main(); -} diff --git a/pkgs/build-support/deno/fetch-deno-deps/shell.nix b/pkgs/build-support/deno/fetch-deno-deps/shell.nix deleted file mode 100644 index c81e60e40d1e..000000000000 --- a/pkgs/build-support/deno/fetch-deno-deps/shell.nix +++ /dev/null @@ -1,7 +0,0 @@ -let - pkgs = import ../../../../default.nix { }; -in -pkgs.mkShell { - buildInputs = [ pkgs.deno ]; - DENO_DIR = "./.deno"; -} diff --git a/pkgs/build-support/trivial-builders/default.nix b/pkgs/build-support/trivial-builders/default.nix index ca2f33afa7b3..05c6cbecc6b5 100644 --- a/pkgs/build-support/trivial-builders/default.nix +++ b/pkgs/build-support/trivial-builders/default.nix @@ -1062,7 +1062,7 @@ rec { // (optionalAttrs (extraPassthru != { } || src ? passthru) { passthru = extraPassthru // src.passthru or { }; }) - # Forward any additional arguments to the derviation + # Forward any additional arguments to the derivation // (removeAttrs args [ "src" "name" diff --git a/pkgs/by-name/ab/abaddon/package.nix b/pkgs/by-name/ab/abaddon/package.nix index 93edf9ca9363..e8ae2679bcc1 100644 --- a/pkgs/by-name/ab/abaddon/package.nix +++ b/pkgs/by-name/ab/abaddon/package.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "abaddon"; - version = "0.2.1"; + version = "0.2.2"; src = fetchFromGitHub { owner = "uowuo"; repo = "abaddon"; rev = "v${version}"; - hash = "sha256-FPhHy+4BmaoGrHGsc5o79Au9JcH5C+iWTYQYwnTLaUY="; + hash = "sha256-48lR1rIWMwLaTv+nIdqmQ3mHOayrC1P5OQuUb+URYh0="; fetchSubmodules = true; }; diff --git a/pkgs/by-name/ai/airgeddon/package.nix b/pkgs/by-name/ai/airgeddon/package.nix index b67687d75178..fb742524fadd 100644 --- a/pkgs/by-name/ai/airgeddon/package.nix +++ b/pkgs/by-name/ai/airgeddon/package.nix @@ -115,13 +115,13 @@ let in stdenv.mkDerivation rec { pname = "airgeddon"; - version = "11.41"; + version = "11.50"; src = fetchFromGitHub { owner = "v1s1t0r1sh3r3"; repo = "airgeddon"; tag = "v${version}"; - hash = "sha256-+hJqaEjEy8woJKE+HKg3utNrZmGeAdd0YWi62HPLN/I="; + hash = "sha256-hy6q25hWGEFlih0IuwoqDRjbUk1/iShj6uY+mz6hlFU="; }; strictDeps = true; diff --git a/pkgs/by-name/al/alglib/package.nix b/pkgs/by-name/al/alglib/package.nix index 270e0195c306..f0044b3198db 100644 --- a/pkgs/by-name/al/alglib/package.nix +++ b/pkgs/by-name/al/alglib/package.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "alglib3"; - version = "4.04.0"; + version = "4.05.0"; src = fetchurl { url = "https://www.alglib.net/translator/re/alglib-${version}.cpp.gpl.tgz"; - sha256 = "sha256-nPHllbcr1Hi3RzyOqvkZtACLJT2Gutu8WlItFJpnIUQ="; + sha256 = "sha256-czgBhziKjAO17ZwXChsjOazIaNODRrGyswhc4j4/T9s="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/al/alioth/package.nix b/pkgs/by-name/al/alioth/package.nix index 8ddb7c933f52..1c06988f2bca 100644 --- a/pkgs/by-name/al/alioth/package.nix +++ b/pkgs/by-name/al/alioth/package.nix @@ -6,20 +6,20 @@ rustPlatform.buildRustPackage rec { pname = "alioth"; - version = "0.7.0"; + version = "0.8.0"; src = fetchFromGitHub { owner = "google"; repo = "alioth"; tag = "v${version}"; - hash = "sha256-xFNX2cxmaw2H8D21qs6mnTMuSidmJ0xJ/b4pxdLTvow="; + hash = "sha256-7mQmyWOMEHg374mmYGJL8xhVWlYk1zKplpjc74wLoKw="; }; # Checks use `debug_assert_eq!` checkType = "debug"; useFetchCargoVendor = true; - cargoHash = "sha256-x2Abw/RVKpPx0EWyF3w0kywtd23A+NSNaHRVZ4oB1jI="; + cargoHash = "sha256-rAq3Ghg7zpiycQ8hNzn4Jz7cUCfwQ4aqtWxoVCg8MrE="; separateDebugInfo = true; diff --git a/pkgs/by-name/ar/arq/package.nix b/pkgs/by-name/ar/arq/package.nix new file mode 100644 index 000000000000..ebb4d426fb06 --- /dev/null +++ b/pkgs/by-name/ar/arq/package.nix @@ -0,0 +1,51 @@ +{ + lib, + stdenvNoCC, + fetchurl, + cpio, + xar, +}: + +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "arq"; + version = "7.35.1"; + + src = fetchurl { + url = "https://www.arqbackup.com/download/arqbackup/Arq${finalAttrs.version}.pkg"; + hash = "sha256-xkrWH2r3DaxsBBdyu0Wj/qzjJaa9DTZCzEaB/nb2WyY="; + }; + + nativeBuildInputs = [ + cpio + xar + ]; + + unpackPhase = '' + runHook preUnpack + + xar -xf $src + zcat client.pkg/Payload | cpio -i + + runHook postUnpack + ''; + + installPhase = '' + mkdir -p $out + cp -R Applications $out + ''; + + dontBuild = true; + + # Arq is notarized + dontFixup = true; + + meta = { + changelog = "https://www.arqbackup.com/download/arqbackup/arq7_release_notes.html"; + description = "Multi-cloud backup software for your Macs"; + homepage = "https://www.arqbackup.com/"; + license = lib.licenses.unfree; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + maintainers = [ lib.maintainers.Enzime ]; + platforms = lib.platforms.darwin; + }; +}) diff --git a/pkgs/by-name/ba/bagr/package.nix b/pkgs/by-name/ba/bagr/package.nix new file mode 100644 index 000000000000..68eb4aede9e0 --- /dev/null +++ b/pkgs/by-name/ba/bagr/package.nix @@ -0,0 +1,37 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, + versionCheckHook, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "bagr"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "pwinckles"; + repo = "bagr"; + tag = "v${finalAttrs.version}"; + hash = "sha256-tvo9/ywPhYgqj4i+o6lYOmrVnLcyciM7HPdT2dKerO8="; + }; + + cargoHash = "sha256-r4tgDPyLxTjq/sxNLvlX/2MePUfOwNgranQSSbgDtu0="; + + nativeInstallCheckInputs = [ + versionCheckHook + ]; + doInstallCheck = true; + versionCheckProgramArg = "--version"; + + meta = { + description = "Command line utility for interacting with BagIt bags (RFC 8493)"; + homepage = "https://github.com/pwinckles/bagr"; + license = lib.licenses.asl20; + mainProgram = "bagr"; + maintainers = with lib.maintainers; [ + jezcope + ]; + platforms = with lib.platforms; unix ++ windows; + }; +}) diff --git a/pkgs/by-name/ch/chawan/package.nix b/pkgs/by-name/ch/chawan/package.nix index 46cfb239cd66..1611018bdb78 100644 --- a/pkgs/by-name/ch/chawan/package.nix +++ b/pkgs/by-name/ch/chawan/package.nix @@ -16,13 +16,13 @@ stdenv.mkDerivation { pname = "chawan"; - version = "0-unstable-2025-05-25"; + version = "0-unstable-2025-06-14"; src = fetchFromSourcehut { owner = "~bptato"; repo = "chawan"; - rev = "e571c8b1ede3a3c6dc4a5a4d0c6c8f48473076d2"; - hash = "sha256-OBXc4jnB5Y+KXO9J7P1Z2HXkNCS+xnG+IGWw8wb66J8="; + rev = "288896b6f3da9bb6e4e24190d4163e031f8a2751"; + hash = "sha256-/8pp1E4YAXXh8ORRHseIe48BIG14u8gNkmotA+CXPYY="; }; patches = [ ./mancha-augment-path.diff ]; diff --git a/pkgs/by-name/da/darkly/package.nix b/pkgs/by-name/da/darkly/package.nix index b13f488b8546..acb9ace1912c 100644 --- a/pkgs/by-name/da/darkly/package.nix +++ b/pkgs/by-name/da/darkly/package.nix @@ -13,13 +13,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "darkly-qt${qtMajorVersion}"; - version = "0.5.20"; + version = "0.5.21"; src = fetchFromGitHub { owner = "Bali10050"; repo = "Darkly"; tag = "v${finalAttrs.version}"; - hash = "sha256-3/oJbf7QHaFyBnrEnZFpWgXbRc5wAFj9RZ7iQEBSZNw="; + hash = "sha256-1WErpDYTlMW/889Efe3OUM3uwt5w+EttjOGoBolBZvE="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/da/dart-sass/package.nix b/pkgs/by-name/da/dart-sass/package.nix index d8862fd64f5f..9f861c4ee4f3 100644 --- a/pkgs/by-name/da/dart-sass/package.nix +++ b/pkgs/by-name/da/dart-sass/package.nix @@ -23,13 +23,13 @@ let in buildDartApplication rec { pname = "dart-sass"; - version = "1.89.1"; + version = "1.89.2"; src = fetchFromGitHub { owner = "sass"; repo = "dart-sass"; tag = version; - hash = "sha256-G9uiG7fTDTx9wVH0bV7BeY2TpTEtTHDd0+z/+kLZiwU="; + hash = "sha256-IDR00pxEKQ5DQM+q0P/iRnsH80ZUbokZhbnBoomy2oQ="; }; pubspecLock = lib.importJSON ./pubspec.lock.json; diff --git a/pkgs/by-name/da/dart-sass/pubspec.lock.json b/pkgs/by-name/da/dart-sass/pubspec.lock.json index f2093583f6d9..bb4aaea097e9 100644 --- a/pkgs/by-name/da/dart-sass/pubspec.lock.json +++ b/pkgs/by-name/da/dart-sass/pubspec.lock.json @@ -74,11 +74,11 @@ "dependency": "transitive", "description": { "name": "checked_yaml", - "sha256": "feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff", + "sha256": "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f", "url": "https://pub.dev" }, "source": "hosted", - "version": "2.0.3" + "version": "2.0.4" }, "cli_config": { "dependency": "transitive", @@ -144,11 +144,11 @@ "dependency": "transitive", "description": { "name": "coverage", - "sha256": "4b8701e48a58f7712492c9b1f7ba0bb9d525644dd66d023b62e1fc8cdb560c8a", + "sha256": "aa07dbe5f2294c827b7edb9a87bba44a9c15a3cc81bc8da2ca19b37322d30080", "url": "https://pub.dev" }, "source": "hosted", - "version": "1.14.0" + "version": "1.14.1" }, "crypto": { "dependency": "direct dev", @@ -324,11 +324,11 @@ "dependency": "direct dev", "description": { "name": "lints", - "sha256": "c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7", + "sha256": "a5e2b223cb7c9c8efdc663ef484fdd95bb243bff242ef5b13e26883547fce9a0", "url": "https://pub.dev" }, "source": "hosted", - "version": "5.1.1" + "version": "6.0.0" }, "logging": { "dependency": "transitive", @@ -454,11 +454,11 @@ "dependency": "transitive", "description": { "name": "petitparser", - "sha256": "07c8f0b1913bcde1ff0d26e57ace2f3012ccbf2b204e070290dad3bb22797646", + "sha256": "9436fe11f82d7cc1642a8671e5aa4149ffa9ae9116e6cf6dd665fc0653e3825c", "url": "https://pub.dev" }, "source": "hosted", - "version": "6.1.0" + "version": "7.0.0" }, "pool": { "dependency": "direct main", @@ -724,21 +724,21 @@ "dependency": "transitive", "description": { "name": "vm_service", - "sha256": "6f82e9ee8e7339f5d8b699317f6f3afc17c80a68ebef1bc0d6f52a678c14b1e6", + "sha256": "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60", "url": "https://pub.dev" }, "source": "hosted", - "version": "15.0.1" + "version": "15.0.2" }, "watcher": { "dependency": "direct main", "description": { "name": "watcher", - "sha256": "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104", + "sha256": "0b7fd4a0bbc4b92641dbf20adfd7e3fd1398fe17102d94b674234563e110088a", "url": "https://pub.dev" }, "source": "hosted", - "version": "1.1.1" + "version": "1.1.2" }, "web": { "dependency": "transitive", @@ -784,11 +784,11 @@ "dependency": "transitive", "description": { "name": "xml", - "sha256": "b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226", + "sha256": "3202a47961c1a0af6097c9f8c1b492d705248ba309e6f7a72410422c05046851", "url": "https://pub.dev" }, "source": "hosted", - "version": "6.5.0" + "version": "6.6.0" }, "yaml": { "dependency": "direct dev", @@ -802,6 +802,6 @@ } }, "sdks": { - "dart": ">=3.7.0 <4.0.0" + "dart": ">=3.8.0 <4.0.0" } } diff --git a/pkgs/by-name/de/decker/package.nix b/pkgs/by-name/de/decker/package.nix index 55aa9d8a918a..2bed0cd4bc68 100644 --- a/pkgs/by-name/de/decker/package.nix +++ b/pkgs/by-name/de/decker/package.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "decker"; - version = "1.54"; + version = "1.56"; src = fetchFromGitHub { owner = "JohnEarnest"; repo = "Decker"; rev = "v${version}"; - hash = "sha256-6rKfIMEWMig1LAaLk1eSUHnc2104FuN5wTVpf1SgCtg="; + hash = "sha256-b4Z+hQ7sQf8sdFXcX4+GA9Q8gJDUeb5LuVgrd3bY6vA="; }; buildInputs = [ diff --git a/pkgs/by-name/de/denort/package.nix b/pkgs/by-name/de/denort/package.nix deleted file mode 100644 index 45069e059d11..000000000000 --- a/pkgs/by-name/de/denort/package.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ - deno, - lib, -}: -deno.overrideAttrs ( - final: prev: { - pname = "denort"; - buildAndTestSubdir = "cli/rt"; - postInstall = ""; - installCheckPhase = ""; - passthru = { }; - meta = with lib; { - homepage = "https://deno.land/"; - changelog = "https://github.com/denoland/deno/releases/tag/v${final.version}"; - description = "Slim version of the deno runtime, usually bundled with deno projects into standalone binaries"; - license = licenses.mit; - mainProgram = "denort"; - maintainers = with maintainers; [ - jk - ofalvai - ]; - platforms = [ - "x86_64-linux" - "aarch64-linux" - "x86_64-darwin" - "aarch64-darwin" - ]; - }; - } -) diff --git a/pkgs/by-name/do/doh-proxy-rust/package.nix b/pkgs/by-name/do/doh-proxy-rust/package.nix index cec812fe5ea9..74ac0efbfe90 100644 --- a/pkgs/by-name/do/doh-proxy-rust/package.nix +++ b/pkgs/by-name/do/doh-proxy-rust/package.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage rec { pname = "doh-proxy-rust"; - version = "0.9.11"; + version = "0.9.12"; src = fetchCrate { inherit version; crateName = "doh-proxy"; - hash = "sha256-h2LwxqyyBPAXRr6XOmcLEmbet063kkM1ledULp3M2ek="; + hash = "sha256-Q+SjUB9XQlT+r1bjKJooqJ095yp5PMqMAQhoo+kp238="; }; useFetchCargoVendor = true; - cargoHash = "sha256-eYJoHFIC0NF3OAbZXDWB57IOFC9JDV4IXHQgzIWMT04="; + cargoHash = "sha256-XEHeGduKsIFW0tXto8DcghzNYMGE/zkWY2cTg8ZcPcU="; buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv diff --git a/pkgs/by-name/do/doulos-sil/package.nix b/pkgs/by-name/do/doulos-sil/package.nix index b275d6e0df25..1cf052c0cd75 100644 --- a/pkgs/by-name/do/doulos-sil/package.nix +++ b/pkgs/by-name/do/doulos-sil/package.nix @@ -6,11 +6,11 @@ stdenvNoCC.mkDerivation rec { pname = "doulos-sil"; - version = "6.200"; + version = "7.000"; src = fetchzip { url = "https://software.sil.org/downloads/r/doulos/DoulosSIL-${version}.zip"; - hash = "sha256-kpbXJVAEQLr5HMFaE+8OgAYrMGQoetgMi0CcPn4a3Xw="; + hash = "sha256-i2M7YVBiLWUZETAZEesHdyQypoO5fbWHqhpizqVLB5E="; }; installPhase = '' diff --git a/pkgs/by-name/en/ente-web/package.nix b/pkgs/by-name/en/ente-web/package.nix index 45f93496ccf3..ccc8f1652193 100644 --- a/pkgs/by-name/en/ente-web/package.nix +++ b/pkgs/by-name/en/ente-web/package.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation (finalAttrs: { pname = "ente-web"; - version = "1.0.10"; + version = "1.1.0"; src = fetchFromGitHub { owner = "ente-io"; @@ -20,13 +20,13 @@ stdenv.mkDerivation (finalAttrs: { sparseCheckout = [ "web" ]; tag = "photos-v${finalAttrs.version}"; fetchSubmodules = true; - hash = "sha256-WJz1Weh17DWH5qzMry1uacHBXY9ouIXWRzoiwzIsN0I="; + hash = "sha256-rHz/QlH3t+J2oz0s5LuWkgxGZmdiPFZXTuDI5yFajrA="; }; sourceRoot = "${finalAttrs.src.name}/web"; offlineCache = fetchYarnDeps { yarnLock = "${finalAttrs.src}/web/yarn.lock"; - hash = "sha256-9LC5WuS1CBj3vBacXUxJXyPgvZ/zfcihjZpCiH/8Aa0="; + hash = "sha256-9BumlPzvG6dmuoFGdCAALzKpJATA3ibb1SkLtofAasI="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/fa/fabric-ai/package.nix b/pkgs/by-name/fa/fabric-ai/package.nix index f438d6558e8b..c9e0b8f93e0d 100644 --- a/pkgs/by-name/fa/fabric-ai/package.nix +++ b/pkgs/by-name/fa/fabric-ai/package.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "fabric-ai"; - version = "1.4.196"; + version = "1.4.209"; src = fetchFromGitHub { owner = "danielmiessler"; repo = "fabric"; tag = "v${version}"; - hash = "sha256-g2f8xpS+KA1USt7lArodTo7m7OXnzew2LSFKeVclQOE="; + hash = "sha256-kRPFTs3w5MhlCax81GrZ82GWLMTDUiyXOI9lSp4Fwkc="; }; - vendorHash = "sha256-xfNvmhHNYpanhZKT9o8kImzw4gzigpgc8ri9O1iOqwc="; + vendorHash = "sha256-GkAehT2oFG8cGe+PkceZios3ZG9S0CZs4L7slX+Dkck="; # Fabric introduced plugin tests that fail in the nix build sandbox. doCheck = false; diff --git a/pkgs/by-name/fe/feishu/package.nix b/pkgs/by-name/fe/feishu/package.nix index aadc186af103..fbbe4ad8f67f 100644 --- a/pkgs/by-name/fe/feishu/package.nix +++ b/pkgs/by-name/fe/feishu/package.nix @@ -65,12 +65,12 @@ let sources = { x86_64-linux = fetchurl { - url = "https://sf3-cn.feishucdn.com/obj/ee-appcenter/9bcfe8ba/Feishu-linux_x64-7.36.11.deb"; - sha256 = "sha256-iqEcwfF6z2jJ0TmFzDu2gf6eapHcJPaLSVESgtC9WUg="; + url = "https://sf3-cn.feishucdn.com/obj/ee-appcenter/91e64286/Feishu-linux_x64-7.42.17.deb"; + sha256 = "sha256-Rsq+xQAyi7I1WcnkXzhPEgbUyfXU9XPVKIuv6Z9H5VA="; }; aarch64-linux = fetchurl { - url = "https://sf3-cn.feishucdn.com/obj/ee-appcenter/484fc204/Feishu-linux_arm64-7.36.11.deb"; - sha256 = "sha256-XTa5GOMBsiXI5IDhDQktSxdUfuvG7c2VWHuS76cFsqE="; + url = "https://sf3-cn.feishucdn.com/obj/ee-appcenter/49127814/Feishu-linux_arm64-7.42.17.deb"; + sha256 = "sha256-UykQk8R8EDsHmRGy9BfDXhEZFlYT16bAkRuLXFZJDHw="; }; }; @@ -133,7 +133,7 @@ let ]; in stdenv.mkDerivation { - version = "7.36.11"; + version = "7.42.17"; pname = "feishu"; src = diff --git a/pkgs/by-name/ga/garnet/package.nix b/pkgs/by-name/ga/garnet/package.nix index babed86be830..d79c2532dd09 100644 --- a/pkgs/by-name/ga/garnet/package.nix +++ b/pkgs/by-name/ga/garnet/package.nix @@ -8,13 +8,13 @@ buildDotnetModule rec { pname = "garnet"; - version = "1.0.69"; + version = "1.0.70"; src = fetchFromGitHub { owner = "microsoft"; repo = "garnet"; tag = "v${version}"; - hash = "sha256-U90y8VxGrRgXTdrusImNK2kRO+Tw9uiXoMiEb3YgaBM="; + hash = "sha256-E+fwtD0AcUCHhHrnR7OV2mnDtGUnkJkLBKl6DbXlooU="; }; projectFile = "main/GarnetServer/GarnetServer.csproj"; diff --git a/pkgs/by-name/gr/gretl/package.nix b/pkgs/by-name/gr/gretl/package.nix index 2f811e9e4e5d..17ce63306bd2 100644 --- a/pkgs/by-name/gr/gretl/package.nix +++ b/pkgs/by-name/gr/gretl/package.nix @@ -20,11 +20,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "gretl"; - version = "2025a"; + version = "2025b"; src = fetchurl { url = "mirror://sourceforge/gretl/gretl-${finalAttrs.version}.tar.xz"; - hash = "sha256-5B9V1Z12+Hu00x++u2ndUXWq91k/SXy723DoLOefhEQ="; + hash = "sha256-DW0QXWbx0nMWTfjxO15ZGR/DsvFM7eee0DDsqrm5vHM="; }; buildInputs = [ diff --git a/pkgs/by-name/ho/honk/package.nix b/pkgs/by-name/ho/honk/package.nix index 039ba24333f9..2d8ddf007e89 100644 --- a/pkgs/by-name/ho/honk/package.nix +++ b/pkgs/by-name/ho/honk/package.nix @@ -9,11 +9,11 @@ buildGoModule rec { pname = "honk"; - version = "1.4.2"; + version = "1.5.1"; src = fetchurl { url = "https://humungus.tedunangst.com/r/honk/d/honk-${version}.tgz"; - hash = "sha256-uswlReJzPjkVOazKmMHtetVukunroesqYc8XCJHiOxQ="; + hash = "sha256-VOeA2oQNmcEVfvWrKnWWUz6n+WjMuxYQnbqPfWaHGLM="; }; vendorHash = null; diff --git a/pkgs/by-name/i2/i2pd/package.nix b/pkgs/by-name/i2/i2pd/package.nix index 0f8399f9e4a5..84f2306c8437 100644 --- a/pkgs/by-name/i2/i2pd/package.nix +++ b/pkgs/by-name/i2/i2pd/package.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation rec { pname = "i2pd"; - version = "2.56.0"; + version = "2.57.0"; src = fetchFromGitHub { owner = "PurpleI2P"; repo = "i2pd"; tag = version; - hash = "sha256-URFLVMd1j/br+/isQytVjSVosMHn1SEwqg2VNxStD0A="; + hash = "sha256-+LywTG+AXOas6fXF1pXjBkqa+fUbaWNMA3EqCEZfc/A="; }; postPatch = lib.optionalString (!stdenv.hostPlatform.isx86) '' diff --git a/pkgs/by-name/jb/jbrowse/package.nix b/pkgs/by-name/jb/jbrowse/package.nix index fdc5c8e88d9d..89257e37f013 100644 --- a/pkgs/by-name/jb/jbrowse/package.nix +++ b/pkgs/by-name/jb/jbrowse/package.nix @@ -6,11 +6,11 @@ let pname = "jbrowse"; - version = "3.5.0"; + version = "3.5.1"; src = fetchurl { url = "https://github.com/GMOD/jbrowse-components/releases/download/v${version}/jbrowse-desktop-v${version}-linux.AppImage"; - sha256 = "sha256-UAuKbfvJuCDIaERFVYo6rdhBG2ycp87ZnCrVPLDDv9g="; + sha256 = "sha256-1swQIG9rCzk2wP7apYo4UjUE+enMK/ZrMu1q4/ahfjA="; }; appimageContents = appimageTools.extractType2 { diff --git a/pkgs/by-name/ke/keepalived/package.nix b/pkgs/by-name/ke/keepalived/package.nix index f7cc87b06e14..e105977a99ad 100644 --- a/pkgs/by-name/ke/keepalived/package.nix +++ b/pkgs/by-name/ke/keepalived/package.nix @@ -16,13 +16,13 @@ stdenv.mkDerivation rec { pname = "keepalived"; - version = "2.3.3"; + version = "2.3.4"; src = fetchFromGitHub { owner = "acassen"; repo = "keepalived"; rev = "v${version}"; - sha256 = "sha256-+IwV8ifQ8gWN4eR9Fgvw3HV3WJDmy3urEQDLngoMdm8="; + sha256 = "sha256-Xv/UGIeZhRHQO5lxkaWgHDUW+3qBi3wFU4+Us1A2uE0="; }; buildInputs = diff --git a/pkgs/by-name/kt/ktls-utils/package.nix b/pkgs/by-name/kt/ktls-utils/package.nix index 9d136dc46cb9..75d84d71f453 100644 --- a/pkgs/by-name/kt/ktls-utils/package.nix +++ b/pkgs/by-name/kt/ktls-utils/package.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "ktls-utils"; - version = "1.0.0"; + version = "1.1.0"; src = fetchFromGitHub { owner = "oracle"; repo = "ktls-utils"; rev = "ktls-utils-${version}"; - hash = "sha256-dIzff/NL/M3yHvxCmDELmDfCtO3UpxXWNGq+VeCH5Z0="; + hash = "sha256-UQMM4P2YZbdB8H+kTLPBKLces0HJHAO3f21VvI1yNmk="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ku/kubeshark/package.nix b/pkgs/by-name/ku/kubeshark/package.nix index cdc603164520..07a3e3728cf8 100644 --- a/pkgs/by-name/ku/kubeshark/package.nix +++ b/pkgs/by-name/ku/kubeshark/package.nix @@ -11,13 +11,13 @@ buildGoModule rec { pname = "kubeshark"; - version = "52.7.0"; + version = "52.7.7"; src = fetchFromGitHub { owner = "kubeshark"; repo = "kubeshark"; rev = "v${version}"; - hash = "sha256-D3mHLYN6OVk7f1MCCWqSg/3qeg83EHcpqvkm1UTOaaM="; + hash = "sha256-gF1Q0amsgKyog+98zeHMidU8vzlTynr69alC6BhGAqI="; }; vendorHash = "sha256-kzyQW4bVE7oMOlHVG7LKG1AMTRYa5GLiiEhdarIhMSo="; diff --git a/pkgs/by-name/ku/kubevirt/package.nix b/pkgs/by-name/ku/kubevirt/package.nix index 85d03960c28a..fb54bf98751e 100644 --- a/pkgs/by-name/ku/kubevirt/package.nix +++ b/pkgs/by-name/ku/kubevirt/package.nix @@ -9,13 +9,13 @@ buildGoModule rec { pname = "kubevirt"; - version = "1.5.1"; + version = "1.5.2"; src = fetchFromGitHub { owner = "kubevirt"; repo = "kubevirt"; rev = "v${version}"; - hash = "sha256-wREuRKfpyAL1SF1tnSNqCLqvWctVHHEpyrWLIY0nV3Y="; + hash = "sha256-R01kW6mS1Ce3oi3p6RFVXif/BybM9HlbL2WT9b5wJuE="; }; vendorHash = null; diff --git a/pkgs/by-name/la/lammps/package.nix b/pkgs/by-name/la/lammps/package.nix index 860f812c5272..bd0ee29a3d71 100644 --- a/pkgs/by-name/la/lammps/package.nix +++ b/pkgs/by-name/la/lammps/package.nix @@ -49,14 +49,14 @@ stdenv.mkDerivation (finalAttrs: { # LAMMPS has weird versioning convention. Updates should go smoothly with: # nix-update --commit lammps --version-regex 'stable_(.*)' - version = "29Aug2024_update2"; + version = "29Aug2024_update3"; pname = "lammps"; src = fetchFromGitHub { owner = "lammps"; repo = "lammps"; rev = "stable_${finalAttrs.version}"; - hash = "sha256-xhFLsK3CQFIfajdwkpz593KTUGwcIWX1bLIPClDe/V8="; + hash = "sha256-nvUkRkO58Hmrsieyd9ALRUA7Q80AcZffW85ipH4NF/U="; }; preConfigure = '' cd cmake diff --git a/pkgs/by-name/li/libzdb/package.nix b/pkgs/by-name/li/libzdb/package.nix index 212515cc49c6..7cfa3c4a47b0 100644 --- a/pkgs/by-name/li/libzdb/package.nix +++ b/pkgs/by-name/li/libzdb/package.nix @@ -6,12 +6,12 @@ }: stdenv.mkDerivation rec { - version = "3.4.0"; + version = "3.4.1"; pname = "libzdb"; src = fetchurl { url = "https://www.tildeslash.com/libzdb/dist/libzdb-${version}.tar.gz"; - sha256 = "sha256-q9Z1cZvL3eQwqk7hOXW5gNVdKry1zCKAgqMDIKa7nw8="; + sha256 = "sha256-W0Yz/CoWiA93YZf0BF9i7421Bi9jAw+iIQEdS4XXNss="; }; buildInputs = [ sqlite ]; diff --git a/pkgs/by-name/nj/njq/package.nix b/pkgs/by-name/nj/njq/package.nix new file mode 100644 index 000000000000..a7073e75b7e9 --- /dev/null +++ b/pkgs/by-name/nj/njq/package.nix @@ -0,0 +1,26 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, +}: +rustPlatform.buildRustPackage (finalAttrs: { + pname = "njq"; + version = "0.0.3.1"; + + src = fetchFromGitHub { + owner = "Rucadi"; + repo = "njq"; + tag = "v${finalAttrs.version}"; + hash = "sha256-evFKm5NYNqIIRVbtMlGFY0k+0sJnkTCTIbTH7w9jQtk="; + }; + + cargoHash = "sha256-tDz9+iQhutlo7petKmg6n/mg0tDntGRqwBALcATJwdM="; + + meta = { + description = "Command-line JSON processor using nix as query language"; + homepage = "https://github.com/Rucadi/njq"; + mainProgram = "njq"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ powwu ]; + }; +}) diff --git a/pkgs/by-name/nw/nwg-menu/package.nix b/pkgs/by-name/nw/nwg-menu/package.nix index 7942430a26db..b45d9312e318 100644 --- a/pkgs/by-name/nw/nwg-menu/package.nix +++ b/pkgs/by-name/nw/nwg-menu/package.nix @@ -14,16 +14,16 @@ buildGoModule rec { pname = "nwg-menu"; - version = "0.1.8"; + version = "0.1.9"; src = fetchFromGitHub { owner = "nwg-piotr"; repo = "nwg-menu"; rev = "v${version}"; - sha256 = "sha256-Ce8hxFVCj/No2Sb6avQ9ogMPTJXDcWxa3GFfsczq1+E="; + sha256 = "sha256-3fN89HPwobMiijlvGJ80HexCBdsPLsEvAz9VH8dO4qc="; }; - vendorHash = "sha256-53lRO4Ct20jYJY7JRElx9MWzb+TEm8KIIJZF3OfL1kQ="; + vendorHash = "sha256-5gazNUZdPZh21lcnVFKPSDc/JLi8d6tqfP4NKMzPa8U="; doCheck = false; diff --git a/pkgs/by-name/op/open-policy-agent/package.nix b/pkgs/by-name/op/open-policy-agent/package.nix index 01ff13010866..4fba049379bc 100644 --- a/pkgs/by-name/op/open-policy-agent/package.nix +++ b/pkgs/by-name/op/open-policy-agent/package.nix @@ -14,13 +14,13 @@ assert buildGoModule (finalAttrs: { pname = "open-policy-agent"; - version = "1.4.2"; + version = "1.5.1"; src = fetchFromGitHub { owner = "open-policy-agent"; repo = "opa"; tag = "v${finalAttrs.version}"; - hash = "sha256-4FRNTB24JWyF3Zuhx3T6LjNs83+wDh4gmE9rh3cu/Vk="; + hash = "sha256-gIwi+38oUBEVK5DiTU8Avt+lQtXaIf/udyVi4LLvTu8="; }; vendorHash = null; @@ -31,7 +31,6 @@ buildGoModule (finalAttrs: { ldflags = [ "-s" - "-w" "-X github.com/open-policy-agent/opa/version.Version=${finalAttrs.version}" ]; @@ -50,6 +49,7 @@ buildGoModule (finalAttrs: { # Skip tests that require network, not available in the nix sandbox "TestInterQueryCache_ClientError" "TestIntraQueryCache_ClientError" + "TestSSOCredentialService" ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ # Skip tests that require network, not available in the darwin sandbox diff --git a/pkgs/by-name/op/open-webui/package.nix b/pkgs/by-name/op/open-webui/package.nix index cc1022ac6f87..8db4f1952840 100644 --- a/pkgs/by-name/op/open-webui/package.nix +++ b/pkgs/by-name/op/open-webui/package.nix @@ -9,13 +9,13 @@ }: let pname = "open-webui"; - version = "0.6.14"; + version = "0.6.15"; src = fetchFromGitHub { owner = "open-webui"; repo = "open-webui"; tag = "v${version}"; - hash = "sha256-tq6npchWuEzgMOoCUvwHGbDjpJPOO1eSCS/88IzhWvQ="; + hash = "sha256-MD7d+5JuTzChqKLxXyZFLyPktXFta1EOe4Oj4uEGaho="; }; frontend = buildNpmPackage rec { diff --git a/pkgs/by-name/pd/pdi/package.nix b/pkgs/by-name/pd/pdi/package.nix index 356d469f6478..11bc62495fdd 100644 --- a/pkgs/by-name/pd/pdi/package.nix +++ b/pkgs/by-name/pd/pdi/package.nix @@ -32,13 +32,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "pdi"; - version = "1.9.1"; + version = "1.9.2"; src = fetchFromGitHub { owner = "pdidev"; repo = "pdi"; tag = finalAttrs.version; - hash = "sha256-Tmn4M+tcnNH6Bm4t5D/VgciOu4dDKKqYkbERKgpHX/Y="; + hash = "sha256-bbhsMbTVvG19vtkZyOiCRH168kCFk2ahSFc7davfXzo="; }; # Current hdf5 version in nixpkgs is 1.14.4.3 which is 4 numbers long and doesn't match the 3 number regex. :') diff --git a/pkgs/by-name/py/pyp/package.nix b/pkgs/by-name/py/pyp/package.nix index 7d0df04993d1..74fdc2f64af2 100644 --- a/pkgs/by-name/py/pyp/package.nix +++ b/pkgs/by-name/py/pyp/package.nix @@ -1,55 +1,49 @@ { lib, - bc, + python3Packages, fetchFromGitHub, + + # tests + addBinToPathHook, + bc, jq, - python3, + versionCheckHook, }: let - pythonPackages = python3.pkgs; finalAttrs = { pname = "pyp"; - version = "1.2.0"; + version = "1.3.0"; src = fetchFromGitHub { owner = "hauntsaninja"; repo = "pyp"; tag = "v${finalAttrs.version}"; - hash = "sha256-hnEgqWOIVj2ugOhd2aS9IulfkVnrlkhwOtrgH4qQqO8="; + hash = "sha256-u9yxjYNQrtYtFtUh5tTJ1mGmGB+Ry+FRupli8RzRu3c="; }; pyproject = true; - build-system = with pythonPackages; [ + build-system = with python3Packages; [ flit-core ]; nativeCheckInputs = - (with pythonPackages; [ + (with python3Packages; [ pytestCheckHook ]) ++ [ + addBinToPathHook bc jq + versionCheckHook ]; + versionCheckProgramArg = "--version"; pythonImportsCheck = [ "pyp" ]; - # without this, the tests fail because they are unable to find the pyp tool - # itself... - preCheck = '' - _OLD_PATH_=$PATH - PATH=$out/bin:$PATH - ''; - - # And a cleanup! - postCheck = '' - PATH=$_OLD_PATH_ - ''; - meta = { homepage = "https://github.com/hauntsaninja/pyp"; description = "Easily run Python at the shell"; @@ -62,4 +56,4 @@ let }; }; in -pythonPackages.buildPythonPackage finalAttrs +python3Packages.buildPythonPackage finalAttrs diff --git a/pkgs/by-name/qu/questdb/package.nix b/pkgs/by-name/qu/questdb/package.nix index bc9e895058f8..7d9e668f9626 100644 --- a/pkgs/by-name/qu/questdb/package.nix +++ b/pkgs/by-name/qu/questdb/package.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "questdb"; - version = "8.3.2"; + version = "8.3.3"; src = fetchurl { url = "https://github.com/questdb/questdb/releases/download/${finalAttrs.version}/questdb-${finalAttrs.version}-no-jre-bin.tar.gz"; - hash = "sha256-5yaV+ehcamXIVQZvte2+yUd0FoseR2kFuhvzZb3SZY8="; + hash = "sha256-C3lhEgg9erAYSV4qU+xqPM1YbqCIj7mqmVzu+6BY+pI="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ra/randoop/package.nix b/pkgs/by-name/ra/randoop/package.nix index f3e78214ef70..874494e71b6b 100644 --- a/pkgs/by-name/ra/randoop/package.nix +++ b/pkgs/by-name/ra/randoop/package.nix @@ -6,12 +6,12 @@ }: stdenv.mkDerivation rec { - version = "4.3.3"; + version = "4.3.4"; pname = "randoop"; src = fetchurl { url = "https://github.com/randoop/randoop/releases/download/v${version}/${pname}-${version}.zip"; - sha256 = "sha256-x9kAoVa4wvUp3gpg9GCodvjwql3CBtn5EqJIZYSSqVI="; + sha256 = "sha256-yzQw9l3uAq51SHXJ4rsZNRCiFdhOEoSrwv9iPvD2i9c="; }; nativeBuildInputs = [ unzip ]; diff --git a/pkgs/by-name/re/renovate/package.nix b/pkgs/by-name/re/renovate/package.nix index b9fff9999b90..ad348276e3ef 100644 --- a/pkgs/by-name/re/renovate/package.nix +++ b/pkgs/by-name/re/renovate/package.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "renovate"; - version = "40.48.0"; + version = "40.60.0"; src = fetchFromGitHub { owner = "renovatebot"; repo = "renovate"; tag = finalAttrs.version; - hash = "sha256-SZKa1jIK5FIh8t/aH2o3kgSfqgNR9+rk7GzMX0Fs2dk="; + hash = "sha256-eF9RY/KmiyFjGgEm1twxZliKMS5+7sXF5f2JpUYvJCM="; }; postPatch = '' @@ -39,7 +39,7 @@ stdenv.mkDerivation (finalAttrs: { pnpmDeps = pnpm_10.fetchDeps { inherit (finalAttrs) pname version src; - hash = "sha256-BjMJzITAeUspL0a/ZfhejmOdEVi6pBHD6BmQt2WIE1I="; + hash = "sha256-X9hwB4E78puo+1hkGoKwOSK3xhGOpcXciC2h6mElvWY="; }; env.COREPACK_ENABLE_STRICT = 0; diff --git a/pkgs/by-name/sa/sage/sage-env.nix b/pkgs/by-name/sa/sage/sage-env.nix index a480159d34c2..525b3a901722 100644 --- a/pkgs/by-name/sa/sage/sage-env.nix +++ b/pkgs/by-name/sa/sage/sage-env.nix @@ -102,6 +102,12 @@ in writeTextFile rec { name = "sage-env"; destination = "/${name}"; + + passthru = { + lib = sagelib; + docbuild = sage-docbuild; + }; + text = '' export PKG_CONFIG_PATH='${ @@ -205,8 +211,3 @@ writeTextFile rec { }''${DYLD_LIBRARY_PATH:+:}$DYLD_LIBRARY_PATH" ''; } -// { - # equivalent of `passthru`, which `writeTextFile` doesn't support - lib = sagelib; - docbuild = sage-docbuild; -} diff --git a/pkgs/by-name/sh/shadowenv/package.nix b/pkgs/by-name/sh/shadowenv/package.nix index f4eec683b660..ccde675348ab 100644 --- a/pkgs/by-name/sh/shadowenv/package.nix +++ b/pkgs/by-name/sh/shadowenv/package.nix @@ -7,17 +7,17 @@ rustPlatform.buildRustPackage rec { pname = "shadowenv"; - version = "3.0.3"; + version = "3.3.1"; src = fetchFromGitHub { owner = "Shopify"; repo = "shadowenv"; rev = version; - hash = "sha256-ZipFcwTpKKFnQWOPxXg07V71jitG0NSLpGLEzUSsUFA="; + hash = "sha256-s70tNeF0FnWYZ0xLGIL1lTM0LwJdhPPIHrNgrY1YNBs="; }; useFetchCargoVendor = true; - cargoHash = "sha256-KNCucBmYVmIQ/XY+UNV667iWLyiEJDnP/8gAmUHGY+0="; + cargoHash = "sha256-Cg01yM3FbrYpZrv2dhGJnezugNhcuwDcXIU47/AWrC4="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/si/sitespeed-io/package.nix b/pkgs/by-name/si/sitespeed-io/package.nix index 0f7a41cc1690..629c83878b9b 100644 --- a/pkgs/by-name/si/sitespeed-io/package.nix +++ b/pkgs/by-name/si/sitespeed-io/package.nix @@ -26,13 +26,13 @@ assert (!withFirefox && !withChromium) -> throw "Either `withFirefox` or `withChromium` must be enabled."; buildNpmPackage rec { pname = "sitespeed-io"; - version = "37.6.0"; + version = "37.8.0"; src = fetchFromGitHub { owner = "sitespeedio"; repo = "sitespeed.io"; tag = "v${version}"; - hash = "sha256-sR6vDLoMysdcbtaIrNUvzwhIPe0GbymHdKQkFDBaEiM="; + hash = "sha256-0bXkVqCen0kUHP8YeFkpdxTd+4Hx6YMZVTjwgWWg6nQ="; }; postPatch = '' @@ -50,7 +50,7 @@ buildNpmPackage rec { dontNpmBuild = true; npmInstallFlags = [ "--omit=dev" ]; - npmDepsHash = "sha256-6Q8ed8iIGVOUNIn7gMEgqK8fqF5dI2fO/j5u7hj3hGA="; + npmDepsHash = "sha256-ZWjlueRZkH5lsalUY/xoOO/22P9Ta5CnmK0UKjapyU8="; postInstall = '' mv $out/bin/sitespeed{.,-}io diff --git a/pkgs/by-name/st/steel/package.nix b/pkgs/by-name/st/steel/package.nix index 103eea30bb3b..b6c4f1f7c257 100644 --- a/pkgs/by-name/st/steel/package.nix +++ b/pkgs/by-name/st/steel/package.nix @@ -1,10 +1,12 @@ { lib, + stdenv, rustPlatform, fetchFromGitHub, curl, pkg-config, makeBinaryWrapper, + installShellFiles, libgit2, oniguruma, openssl, @@ -34,6 +36,7 @@ rustPlatform.buildRustPackage { makeBinaryWrapper pkg-config rustPlatform.bindgenHook + installShellFiles ]; buildInputs = [ @@ -68,19 +71,26 @@ rustPlatform.buildRustPackage { # Tests are disabled since they always fail when building with Nix doCheck = false; - postInstall = '' - mkdir -p $out/lib/steel + postInstall = + '' + mkdir -p $out/lib/steel - substituteInPlace cogs/installer/download.scm \ - --replace-fail '"cargo-steel-lib"' '"$out/bin/cargo-steel-lib"' + substituteInPlace cogs/installer/download.scm \ + --replace-fail '"cargo-steel-lib"' '"$out/bin/cargo-steel-lib"' - pushd cogs - $out/bin/steel install.scm - popd + pushd cogs + $out/bin/steel install.scm + popd - mv $out/lib/steel/bin/repl-connect $out/bin - rm -rf $out/lib/steel/bin - ''; + mv $out/lib/steel/bin/repl-connect $out/bin + rm -rf $out/lib/steel/bin + '' + + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd steel \ + --bash <($out/bin/steel completions bash) \ + --fish <($out/bin/steel completions fish) \ + --zsh <($out/bin/steel completions zsh) + ''; postFixup = '' wrapProgram $out/bin/steel --set-default STEEL_HOME "$out/lib/steel" diff --git a/pkgs/by-name/sw/swagger-typescript-api/missing-hashes.json b/pkgs/by-name/sw/swagger-typescript-api/missing-hashes.json new file mode 100644 index 000000000000..e172cf56bda6 --- /dev/null +++ b/pkgs/by-name/sw/swagger-typescript-api/missing-hashes.json @@ -0,0 +1,67 @@ +{ + "@biomejs/cli-darwin-arm64@npm:2.0.0-beta.6": "4f83fff14fe51d58cf58167a513cc1e513e08d6b820f5039be6b5508aefb953f0a960bf7f53623acaa3dea3d5b6383050c40401754683c0ebef5cfe00c7608f3", + "@biomejs/cli-darwin-x64@npm:2.0.0-beta.6": "7ca6a9cd1fb606174d4db6c4913c6fce576e5c858778c2e7248b3309be073aedb8a7411ce5fb3c361e364585e2c7ae118c5356187aa266a83b68dd9256c4f686", + "@biomejs/cli-linux-arm64-musl@npm:2.0.0-beta.6": "802e2835c20834032871b782fc082581dcb2921bd01abfe4faa2b8cd662b2be47b35be87250c21595ec21ab917fb00b13468ff53893b54400b7c883b5506a033", + "@biomejs/cli-linux-arm64@npm:2.0.0-beta.6": "e025f445655d1309204682aebcf77364c0c2687c257b6aa58cf803f14e8beb3a7065ad194cb517ce98d550c496ba6573915546906ed89abfa9e470369d8e0d2e", + "@biomejs/cli-linux-x64-musl@npm:2.0.0-beta.6": "680dfd54cf4aaeb6485e70bddcd2211cb559ccfbf902aebccdaa8418c6b2cbeb1a68afb20ecaae9a41385ba762da10f1fafc37ae853a3cd18478640cd0ccf44d", + "@biomejs/cli-linux-x64@npm:2.0.0-beta.6": "dfb7e72065d438f7112d90ad66b8638abffe2b1d107cc89a46b53b745c28acef8184a03cc458bd01c4525a15e900c4fefb70b627682bdfc62c1453270e986255", + "@biomejs/cli-win32-arm64@npm:2.0.0-beta.6": "68d6b4c8be07632acc201dee088866eecb3562f5b4fce64e49f3e5662626ffff2e1da8ddb369e2b4c76dbd95a98a86126991459f3c57447eacb7f0d30f984b2c", + "@biomejs/cli-win32-x64@npm:2.0.0-beta.6": "19363ba1670072a2dd238ca45c25f0ccc3174c840be20a85d08bfa14b83b07a490f4c9f6227bd005aaa71852e1654cd2342b2ebb2eef8adac98e44c71d2806af", + "@esbuild/aix-ppc64@npm:0.25.5": "fb872b34a2843293dc60e809968fedf93e0d8f7174b062decffae6ba861eb56aaea0cd0aba87ba99162ceb2a690f0cde4fc29c000b52c035e40c91ec7861d43e", + "@esbuild/android-arm64@npm:0.25.5": "c818e799b19b5587466bf68a27b578ccaaf866c1d144573fbde7659e3fd3f555422ec3e67f5bd186a87648957d1b6e74df4f847edea7219c16979c9916f36e91", + "@esbuild/android-arm@npm:0.25.5": "a5384933f9f2ffcadce2be49da6ff43249fe42f32a04071316434e9f633fc20c8d4029072e9a53555620c3531045786297607b852579eee30b6dbc3bc9d98cd9", + "@esbuild/android-x64@npm:0.25.5": "8ce115dc7e1e6735f23b4aadb2dfca29c0abd8577ce34802ea3d017a64e388928949134fe225dfe190babdc5ec01be5fc7794eca84738cdefc12c5e3789ce43b", + "@esbuild/darwin-arm64@npm:0.25.5": "a009eab62f2bd284a6f2001d5e08217059186ffc16907bbe873e1de40fe9b5ed92c0db2f4c4d0dc41545838850a430c8f2f35d7bdb9cd01a1a04293acd97afca", + "@esbuild/darwin-x64@npm:0.25.5": "cac8021a7a0c549263e076913346b35a5bb81f76ffbc1abfad5e7b67303f013ac0c76f111bf624ea8447b327ec86c18a60c6ff307d743a2269f5d47313f5b2de", + "@esbuild/freebsd-arm64@npm:0.25.5": "d248e7103b7094eb4288db7c9a78b2905a25b4a957f2b945531ca88d3394f45ceca2343a7c84954734534af6159bc741eb3d5c1ed9df990f7395337a1b14192c", + "@esbuild/freebsd-x64@npm:0.25.5": "8a7be0740f07f5dbb3e24bf782ca6ef518a8ce9b53e5d864221722045713586d41774cbd531df97dc868b291b3b303c12e50ca8611c3cb7b5fe09a30b38285eb", + "@esbuild/linux-arm64@npm:0.25.5": "ce3c8fca47cf0a92148fb288eb35a5c4a4dcf7a700730b3a48fdd63c13e17c719eb6b350378203fba773477eb5be637f47a6d52c5d4ce5bdc0075ee917156006", + "@esbuild/linux-arm@npm:0.25.5": "cc81ea76ab86ed2a837c9da329f7c63412d288dc0aa608c8dcdf51705dc93d5b7f966a429be4896babe611074e5898c7e6c8e07ad7f50123a05478975294fbb4", + "@esbuild/linux-ia32@npm:0.25.5": "bfed6750923afd56148f658f6ec8995479f5115116dc212ecb9e4c556064422e22eda855177e7c02cbc945494e4db1167101918c5fa932278115db2c7025a3f6", + "@esbuild/linux-loong64@npm:0.25.5": "e5c20140bbbdba53f0d86dd72961ed73e6255d2ada2d3a626f390b352170605644822ad7592f695b6e520edcefe0c5f6ba19d10694b5d11d725745d9792bde01", + "@esbuild/linux-mips64el@npm:0.25.5": "6b3559517efd0dd1301debc7af7e275b055859c26facdda2e229b1aaab6ebea4c480a1da151c46211ee4035d95bfa7f0cdacf735b57ee99d41b69c77357310b9", + "@esbuild/linux-ppc64@npm:0.25.5": "a1a1af99d758efce928335637924dcd8ddec4201af51014e1f831b012d53a0a673b1e0c31036ec9e8c5a0311439283419ec8abdfc67ecb245fa7f7b653006ed0", + "@esbuild/linux-riscv64@npm:0.25.5": "6cd8dce6723b73e0f89898ab6cd52e0d009afdacdfc0d5529134de7b832c92c2e0421fbb5cbfc0e0c0b2b00a9b1ff2c4cdb9695b2c535ebc174960e986c727a7", + "@esbuild/linux-s390x@npm:0.25.5": "31b86dbc93d19eb362bad3353e65d6da771118346e723582d06c05f1b6ffad1c3765001b5215ef1e8f0c2bb29130d98815359bbc88e5c08304354d5a92e6ea94", + "@esbuild/linux-x64@npm:0.25.5": "f878a3e40edfd8a50de94bf982a9eaf03e636a0332af163a6c905490063aae652384fb392d4765c4338fb6f991034949c92ec768ee65c3b2fceeb494b89fe8b3", + "@esbuild/netbsd-arm64@npm:0.25.5": "941c5e28a63a93f19122271b5490e196db12815702c2266c6d66401b6909a4364ab889611ba81c5359624e3ce61f0505a680a1179ed9a555d1415fa1c485d75d", + "@esbuild/netbsd-x64@npm:0.25.5": "edbefdd88ca24a373497a7c8d1fdab418827ff89c6eee1c574159dbb4d9174552aa87753f35525a894964b77c14b012164ec5582b9f19dd4d6c1f5d45df411c7", + "@esbuild/openbsd-arm64@npm:0.25.5": "d44633a374c109d2fb9c678882016e3ec3d79f0c5f21a6e6fb0114ea709bc539200b037a4e3ec52304eea2f8c5957bf16c6f0a7af5cfde41b652c4bac604bba6", + "@esbuild/openbsd-x64@npm:0.25.5": "efc4641ea653dedc9886f0603c2e7cfc6fbe94c34d4cdaee9b060a8b9d8143d1192c45da93b3e802af2c26f72ab1ad3a3fad0e0cb297d06de55814fe83ccd32c", + "@esbuild/sunos-x64@npm:0.25.5": "29860663381b6098c0fda6f69235407654dfad953e83b3f9f06a270950d5c37da4ca60a4b5915b8e2606d468b560be6179870f64a22d5b046e8a930c31a7b554", + "@esbuild/win32-arm64@npm:0.25.5": "a77d395251c8a62ab0cec07d5230222823fa02fbf3ef008d94b5213a335c9f949872c3f1c2f947abaa28098b669018e429af42f59616e049860a0072f3b006de", + "@esbuild/win32-ia32@npm:0.25.5": "ff1b6cbe835082aef5b93c3e2012d51be431d05c6ae5f90a5bc89687c687e8e2340c262dedddd124b27b511616bbc4088b5a4a949d3147f677084dc6ec572629", + "@esbuild/win32-x64@npm:0.25.5": "266e69e8d37bd4deb77443588e49472e4e9791178cb39e1692eabb67cf65d8e85a932ac468e7ebb2072c8a9ee23ad413c8f0f7d954c474f643cedbbf7aad952a", + "@rolldown/binding-darwin-arm64@npm:1.0.0-beta.11-commit.f051675": "21449eafb0fc91888fc9284702ad0c85921c4d4143ff3bbb2c8c020a919d34870d24710b25170da147178b30e5aff19bb343618ef52ccdf0066b59a7cb8db118", + "@rolldown/binding-darwin-x64@npm:1.0.0-beta.11-commit.f051675": "c2de323cb05852b4a514dde8e14bef22be087d188415201db9a805aee64f3facb6554ed04d2a92fce0ca5b4e91b067fe8e43e619df96dec7fc3a5e7a23873df1", + "@rolldown/binding-freebsd-x64@npm:1.0.0-beta.11-commit.f051675": "57b857af21de285efd573ca87b6529e50e77cc10979dcbae5fb1dd53ddbabcd3336b9e4b4d04df3c952c6bc38873ea78cb6d5344fdbc49267df1c25c71471082", + "@rolldown/binding-linux-arm-gnueabihf@npm:1.0.0-beta.11-commit.f051675": "0987f270ced3ff3e675a040b676fbd4a687080b124260e323e2c2aede7b59eb3b7d897064b5828031b91846ee5b483f10de85ed5b0468351780723ba0ecfc887", + "@rolldown/binding-linux-arm64-gnu@npm:1.0.0-beta.11-commit.f051675": "0fffddc899ea0c2dbec2b8b21f6f6ced4cc483bd111f3c9c2684f57af9fdfed0e4adad95b3b027018b2b0f8801210f2ab4acf0d37d3702beddd8cf204f95d28f", + "@rolldown/binding-linux-arm64-musl@npm:1.0.0-beta.11-commit.f051675": "0c2af36aca65e86b967f6d350176420fdd453c7dbb7796611c181aa87f2090edb577132edd1496964f7bae7346fc9ec15968ae39012f4e5fc347a82e867bd8aa", + "@rolldown/binding-linux-x64-gnu@npm:1.0.0-beta.11-commit.f051675": "1f843a7d2283ac4f6daff6239108e7fa2680bd3795f06923603f6d693844bc990a85b66fc67005fd03a2eec7c8097c4737b935e9e448853d4a60c208b979a5ca", + "@rolldown/binding-linux-x64-musl@npm:1.0.0-beta.11-commit.f051675": "f2be00d8c8cb67c216ae1f67b491bb1dfc7b5eaab66fc84a550ea45ff7f79080631b5748ca984a88a5806994aa2618933bba0d643cdc6b82f1268fc0025647f0", + "@rolldown/binding-wasm32-wasi@npm:1.0.0-beta.11-commit.f051675": "b8fffeb3ede11a93235713f864e25270be2e3e3ddf77ba9bb4e534743e3f859b6ffff5a33e5c22e9e19745371f4d30f9a324990411a07e7e00e6f94a6ceb6fde", + "@rolldown/binding-win32-arm64-msvc@npm:1.0.0-beta.11-commit.f051675": "2b7ea4e614a53acd3f9291b33d5e908d5f821354006610aaa53fea1a7f0cf6f8123e9f16424512a6c65e06a0c79ac324e9e067b3cddb10a434fc2470c2374b02", + "@rolldown/binding-win32-ia32-msvc@npm:1.0.0-beta.11-commit.f051675": "e147c9f648a0d95dcbaf963380968762dd6feabb9403897ba17c123e8b9bb4eb94bad5096d4fdfe8f37454195f8391e01759c1ce86d1f41f73908f0b23f8c0fa", + "@rolldown/binding-win32-x64-msvc@npm:1.0.0-beta.11-commit.f051675": "2ae46229ecfd2ed001f4a2e263bf7776896180c117d263526dc478ee30aff5569ee9f82b52fc1085d08f889aab6751c96e4988ac489f6b942ea7424e1fb8f43f", + "@rollup/rollup-android-arm-eabi@npm:4.43.0": "8e37e27b359200197cddf9c1aa5bb5f2d0d8e640fe30f0ccc4b77d9c730b2fdda6f3b6f97a0afc45c5113f23637f98c5c89abf982a222cc3f6b00192a2a998fa", + "@rollup/rollup-android-arm64@npm:4.43.0": "6e7ee0f496d30cfeca8d930c512f331053d87076b67f06303339ef19120dca5895bc2072ab3da7b99fb93f6c6c275d4d874a66bff08afeac4cea5447cdc709a3", + "@rollup/rollup-darwin-arm64@npm:4.43.0": "7b76fb8e7ccc40ff17f9584b0cdacce22e384ce1229860b0971417236884d100362a79a12cdcbd0254dcd0f68d7db6cfe11c60f38e7a672cf62b0b8abe6834e9", + "@rollup/rollup-darwin-x64@npm:4.43.0": "9209a1d1f97dad0810dc280485658b78cf597398da4ce2c2ccab04d4bbe0a05966325760d399209b67d746711bf204c4d8896941159ac5569e6a3a6738807e3a", + "@rollup/rollup-freebsd-arm64@npm:4.43.0": "d89e2a6234d2cd2f18c168a832f518864c2c66c93f230ada42014b631ea0d04cb790269cbe0bb67e0bfbdcdf8b5b5069de1382be15380f469c02a51570d60729", + "@rollup/rollup-freebsd-x64@npm:4.43.0": "0d4c3c6dc027a57e4ef1897acc58996e179f89130858f8849de9c6fbe4a9ffab5b226d0729c1bc8b15528271c0d0093e9c6df9831a01fa5baa870825306484a0", + "@rollup/rollup-linux-arm-gnueabihf@npm:4.43.0": "f7c29e494b75719b3efdf6958c81e95b9c79bd4e3b8fe775088676a35da4e49301175fe4d1b3dc176348817f3ee7645ed34381e4801655c62c8b7de5a079c8e3", + "@rollup/rollup-linux-arm-musleabihf@npm:4.43.0": "0ff5c0dfe63f3d4a5f3914555b6557f5d9a76af751ee4ae8fd4264ac8e2538108b20fb4049637bfee71f67e69b8cc5a4c38d1c0a029247e657a703594ec5733c", + "@rollup/rollup-linux-arm64-gnu@npm:4.43.0": "2138243743cd1c5ff59de2e56f7b40aefb0c8e7b54a028fa6f40407594cf82a8f71d7c25368d54e5470e12fe6565dde2ade26e7a2e303368a4c216f907407feb", + "@rollup/rollup-linux-arm64-musl@npm:4.43.0": "7b7ec641ff9b86e144971913ab40e6fdccbf9a45e501c6c5dc6e102ef28e1cad4a05ede0f4c9c1d21da9242033e221b491948e552acb5774cc033f97519da5dc", + "@rollup/rollup-linux-loongarch64-gnu@npm:4.43.0": "eca2d22690858529fee43bacb8e5c3da972d07d68a0418437af18294a6abe181e0d46aac597ce13dd5ff9b22b3a4eec88e958f526082ae116d140a3e04466801", + "@rollup/rollup-linux-powerpc64le-gnu@npm:4.43.0": "2b560dc6d6af7350fa7bd504c9e4357e677a56c4c62c27efa0162252482c8fffdbb1c77710a4f37325e8a8afd3ed9272b9998fb82472e72a2cacc5fa11cda633", + "@rollup/rollup-linux-riscv64-gnu@npm:4.43.0": "7eaf269704ed32475620e5e293bc7db7ca15c0556de3b487cb0e08619610a45a9bec8c1db5f4a3294f229bed95a6c099fea37f2d1a012cef0322a9b42a5bd27f", + "@rollup/rollup-linux-riscv64-musl@npm:4.43.0": "fe28cbe57646d2c78966119db6c91c42c0f48a9f1175fd4596697107a6f4a229484f45344fbd8656f6875fcc22fa565603688fd02a02c98007aa30aee34b066d", + "@rollup/rollup-linux-s390x-gnu@npm:4.43.0": "60691ae9cc5f68fb845c972e337c8c8230078fe9a204a249670de21c72d1e8ccac1f0d47347eb720e87068b0f1fb86af54edbcf5d20fe25b1d1cd5e76db7a0f1", + "@rollup/rollup-linux-x64-gnu@npm:4.43.0": "337a87aed8d5b07f8e5bd8e1b0fe6b7e03edaabc948076dd817d70badb5c5081e9c0faf36411e54fddc633e0a8eb4f1f348208678184794116cecbded2c5b288", + "@rollup/rollup-linux-x64-musl@npm:4.43.0": "e85942bd31ecf417f25220f1f376395e5a679f8d0c9e4fa7084d5d61265da00d2f483aef3a97884c94ed572e6d3b98ecc7707efbbf2dbdd4d8b9a5b9c4350a56", + "@rollup/rollup-win32-arm64-msvc@npm:4.43.0": "c6a793b1a16fdfe801018f2ff9d92290da6695e8041fc543a36daca859379f03fcb2d1d688891a9cfff0223962da38fd33f661a5c93d46a794c1eb4fa79ff119", + "@rollup/rollup-win32-ia32-msvc@npm:4.43.0": "305a82fdea7656d83efce73720c0d36c6da4734e9e05f3696d032272fd61de767991e04fa02b0abaf18c4aeaf17f7a61a2e7552d923d89d6a9abfba4a5e37657", + "@rollup/rollup-win32-x64-msvc@npm:4.43.0": "966e5f3d7996f41ea6cee2e0a20276cb314029bceee9b9e7512c47a3d139e1601231490229a66e8f5824b64d72c508e272f9f5f62d6b8b2a61722c17aa0ac3a1" +} diff --git a/pkgs/by-name/sw/swagger-typescript-api/package.nix b/pkgs/by-name/sw/swagger-typescript-api/package.nix new file mode 100644 index 000000000000..61d1950a11ac --- /dev/null +++ b/pkgs/by-name/sw/swagger-typescript-api/package.nix @@ -0,0 +1,67 @@ +{ + lib, + fetchFromGitHub, + yarn-berry_4, + stdenv, + nodejs, + makeWrapper, +}: +let + pname = "swagger-typescript-api"; + version = "13.2.2"; + yarn-berry = yarn-berry_4; +in +stdenv.mkDerivation (finalAttrs: { + inherit pname version; + + src = fetchFromGitHub { + owner = "acacode"; + repo = "swagger-typescript-api"; + rev = version; + hash = "sha256-dpziQNXLwo2W+zZdFujaNufVoGg8M11G79LVWTi9G/M="; + }; + + nativeBuildInputs = [ + makeWrapper + yarn-berry.yarnBerryConfigHook + yarn-berry + nodejs + ]; + + missingHashes = ./missing-hashes.json; + offlineCache = yarn-berry.fetchYarnBerryDeps { + inherit (finalAttrs) src missingHashes; + hash = "sha256-pD/yx1DyccEWczvDQM+gseravu8eIqumOBuG65htYr8="; + }; + + buildPhase = '' + runHook preBuild + + yarn run build + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib + cp -r {dist,templates,node_modules} $out/lib + + makeWrapper ${nodejs}/bin/node $out/bin/${pname} \ + --add-flags $out/lib/dist/cli.js \ + --set NODE_ENV production \ + --set NODE_PATH "$out/lib/node_modules" + + runHook postInstall + ''; + + meta = { + mainProgram = "swagger-typescript-api"; + description = "Generate TypeScript API client and definitions for fetch or axios from an OpenAPI specification"; + homepage = "https://github.com/acacode/swagger-typescript-api"; + license = lib.licenses.mit; + platforms = lib.platforms.all; + maintainers = with lib.maintainers; [ angelodlfrtr ]; + }; +}) diff --git a/pkgs/by-name/te/teams-for-linux/package.nix b/pkgs/by-name/te/teams-for-linux/package.nix index 5d2c282439ce..be118252e32d 100644 --- a/pkgs/by-name/te/teams-for-linux/package.nix +++ b/pkgs/by-name/te/teams-for-linux/package.nix @@ -16,16 +16,16 @@ buildNpmPackage rec { pname = "teams-for-linux"; - version = "2.0.16"; + version = "2.0.18"; src = fetchFromGitHub { owner = "IsmaelMartinez"; repo = "teams-for-linux"; tag = "v${version}"; - hash = "sha256-+0sVumtXEJQEP3vFQ7QU4zA4PuqCRDH5+fetD8PqtBg="; + hash = "sha256-44K76pNJ0SRKAF8QdHYSi5htQpbP6YNNg6vDkzaeqaI="; }; - npmDepsHash = "sha256-I9h/5sIOXJWm/+YJbXQ5QUfoMnTNiOz27LSEiVS4FXA="; + npmDepsHash = "sha256-ShEqO6nL2YK2wdHGEcKff0fJsd9N9LI0VfhFe6FQ2gw="; nativeBuildInputs = [ makeWrapper diff --git a/pkgs/by-name/ti/tile38/package.nix b/pkgs/by-name/ti/tile38/package.nix index dabf52b762f4..9615e7b6624d 100644 --- a/pkgs/by-name/ti/tile38/package.nix +++ b/pkgs/by-name/ti/tile38/package.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "tile38"; - version = "1.34.4"; + version = "1.35.0"; src = fetchFromGitHub { owner = "tidwall"; repo = "tile38"; tag = version; - hash = "sha256-TLVFFgT5lxOLhv1RBS09DCcZAozkcHzIBlJSWt1ztB4="; + hash = "sha256-n17W/JOtVV6Mjhp81xx25j6GUbR9WCd3JLh9voyMeC0="; }; - vendorHash = "sha256-geXYLeJf/u+8RD7Slr2x+J6zABkWSIfhxKLxZVF/icU="; + vendorHash = "sha256-/EgUacA9xTUw3e8208NWxhaeZ/KgHLSnxy/fIqC+gZE="; subPackages = [ "cmd/tile38-cli" diff --git a/pkgs/by-name/tu/tuist/package.nix b/pkgs/by-name/tu/tuist/package.nix index eb113828ccc4..44a9edf5f70c 100644 --- a/pkgs/by-name/tu/tuist/package.nix +++ b/pkgs/by-name/tu/tuist/package.nix @@ -8,11 +8,11 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "tuist"; - version = "4.38.2"; + version = "4.53.4"; src = fetchurl { url = "https://github.com/tuist/tuist/releases/download/${finalAttrs.version}/tuist.zip"; - hash = "sha256-FK9F0Y3p04NOoy1Mnlcvimm/LGA5Y+lQ9P679SNNOzA="; + hash = "sha256-4YQY94/uWh/H4cCzhdQ3KxIh19D8mmUCCDKMF8ZwA4E="; }; dontUnpack = true; diff --git a/pkgs/by-name/un/units-llnl/package.nix b/pkgs/by-name/un/units-llnl/package.nix new file mode 100644 index 000000000000..fcba27fb936c --- /dev/null +++ b/pkgs/by-name/un/units-llnl/package.nix @@ -0,0 +1,42 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + + # This is the baseType needed by scipp - the main package that depends on + # this package. + baseType ? "uint64_t", +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "units-llnl"; + version = "0.13.1"; + + src = fetchFromGitHub { + owner = "LLNL"; + repo = "units"; + tag = "v${finalAttrs.version}"; + hash = "sha256-thJnBT+wQPF9obzXk/T6H9lvPEAH5REx3YhBXEd7n7c="; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + cmake + ]; + cmakeFlags = [ + (lib.cmakeBool "BUILD_SHARED_LIBS" true) + (lib.cmakeFeature "UNITS_BASE_TYPE" baseType) + ]; + doCheck = true; + + meta = { + description = "Run-time C++ library for working with units of measurement and conversions between them and with string representations of units and measurements"; + homepage = "https://github.com/llnl/units"; + changelog = "https://github.com/llnl/units/blob/${finalAttrs.src.tag}/CHANGELOG.md"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + mainProgram = "units-llnl"; + platforms = lib.platforms.all; + }; +}) diff --git a/pkgs/by-name/us/usbkvm/package.nix b/pkgs/by-name/us/usbkvm/package.nix index a70b5773a975..76ec6030d3d7 100644 --- a/pkgs/by-name/us/usbkvm/package.nix +++ b/pkgs/by-name/us/usbkvm/package.nix @@ -1,51 +1,72 @@ { + lib, + stdenv, buildGoModule, fetchzip, gst_all_1, gtkmm3, hidapi, - lib, makeWrapper, meson, ninja, pkg-config, python3, - stdenv, udev, udevCheckHook, wrapGAppsHook3, }: let - version = "0.2.0"; + version = "0.3.0"; src = fetchzip { url = "https://github.com/carrotIndustries/usbkvm/releases/download/v${version}/usbkvm-v${version}.tar.gz"; - sha256 = "sha256-ng6YpaN7sKEBPJcJAm0kcYtT++orweWRx6uOZFnOGG8="; + hash = "sha256-urexPODXU69QfSRHtJVpoDx/6mbPcv6EQ3mR0VRHNiY="; }; ms-tools-lib = buildGoModule { pname = "usbkvm-ms-tools-lib"; - inherit version; + inherit version src; - inherit src; sourceRoot = "${src.name}/ms-tools"; + vendorHash = null; # dependencies are vendored in the release tarball - buildInputs = [ - hidapi - ]; + buildInputs = [ hidapi ]; buildPhase = '' + runHook preBuild + mkdir -p $out/ go build -C lib/ -o $out/ -buildmode=c-archive mslib.go + + runHook postBuild ''; + + meta = { + homepage = "https://github.com/carrotIndustries/ms-tools"; + description = "Program, library and reference designs to develop for MacroSilicon MS2106/MS2109/MS2130 chips"; + license = lib.licenses.mit; + }; }; in stdenv.mkDerivation { pname = "usbkvm"; inherit version src; + # The package includes instructions to build the "mslib.{a,h}" files using a + # Go compiler, but that doesn't work in the Nix sandbox. We patch out this + # build step to instead copy those files from the Nix store: + patches = [ + ./precompiled-mslib.patch + ]; + + postPatch = '' + substituteInPlace meson.build \ + --replace-fail "@MSLIB_A_PRECOMPILED@" "${ms-tools-lib}/mslib.a" \ + --replace-fail "@MSLIB_H_PRECOMPILED@" "${ms-tools-lib}/mslib.h" + ''; + nativeBuildInputs = [ pkg-config python3 @@ -63,18 +84,6 @@ stdenv.mkDerivation { hidapi ]; - # The package includes instructions to build the "mslib.{a,h}" files using a - # Go compiler, but that doesn't work in the Nix sandbox. We patch out this - # build step to instead copy those files from the Nix store: - patches = [ - ./precompiled-mslib.patch - ]; - postPatch = '' - substituteInPlace meson.build \ - --replace-fail "@MSLIB_A_PRECOMPILED@" "${ms-tools-lib}/mslib.a" \ - --replace-fail "@MSLIB_H_PRECOMPILED@" "${ms-tools-lib}/mslib.h" - ''; - # Install udev rules in this package's out path: mesonFlags = [ "-Dudevrulesdir=lib/udev/rules.d" @@ -98,7 +107,7 @@ stdenv.mkDerivation { homepage = "https://github.com/carrotIndustries/usbkvm"; description = "Open-source USB KVM (Keyboard, Video and Mouse) adapter"; changelog = "https://github.com/carrotIndustries/usbkvm/releases/tag/v${version}"; - license = lib.licenses.gpl3; + license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ lschuermann ]; mainProgram = "usbkvm"; }; diff --git a/pkgs/by-name/ya/yandex-cloud/sources.json b/pkgs/by-name/ya/yandex-cloud/sources.json index 4b2a80b9da4b..5886d634a592 100644 --- a/pkgs/by-name/ya/yandex-cloud/sources.json +++ b/pkgs/by-name/ya/yandex-cloud/sources.json @@ -1,25 +1,25 @@ { - "version": "0.149.0", + "version": "0.150.0", "binaries": { "aarch64-darwin": { - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.149.0/darwin/arm64/yc", - "hash": "sha256-9mxc0E0pZlX/kM6Lm9CZcVyR3ih8oNZwicaEYrGVLWY=" + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.150.0/darwin/arm64/yc", + "hash": "sha256-jIK8gCqzDZTp8pM7FSEmeNmdZUIEtD2KwUegkHm8VoY=" }, "aarch64-linux": { - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.149.0/linux/arm64/yc", - "hash": "sha256-oDcBQq3bqRfAKRltpMoxI/tXHOzdmcGOY8Du/VkvVYs=" + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.150.0/linux/arm64/yc", + "hash": "sha256-B639QeVd3d+lLnLNxmToAFFxUa+/9zBUhR749wVuZi0=" }, "i686-linux": { - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.149.0/linux/386/yc", - "hash": "sha256-09MR0gx3UBox4Ue1649WpdOxY+hTnchHD1v3PeFdMBs=" + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.150.0/linux/386/yc", + "hash": "sha256-4Rf9el3Qs9c9AKIWDH6lojIxBJthGsjK+qYYqRjcPvI=" }, "x86_64-darwin": { - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.149.0/darwin/amd64/yc", - "hash": "sha256-7AhcJKYeVxpJNEl8dEvjVcFR/6aJtqqKRCDv8inyKM8=" + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.150.0/darwin/amd64/yc", + "hash": "sha256-3V9s5kl/rZn2nN2/a3p3WYCdUeF/LA9ATCVNxYADg+U=" }, "x86_64-linux": { - "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.149.0/linux/amd64/yc", - "hash": "sha256-vsxxGgqpewpQhUt3eMs6zOWKXgO0nTDOBB0ODfGDWNM=" + "url": "https://storage.yandexcloud.net/yandexcloud-yc/release/0.150.0/linux/amd64/yc", + "hash": "sha256-vKENaNar/rHGqAoOPuo7b/tU29STk2ak6FqUxFqeOto=" } } } diff --git a/pkgs/desktops/lomiri/applications/lomiri-camera-app/1001-treewide-Fix-imports-in-tests-after-QML-files-were-moved.patch b/pkgs/desktops/lomiri/applications/lomiri-camera-app/1001-treewide-Fix-imports-in-tests-after-QML-files-were-moved.patch new file mode 100644 index 000000000000..8e6dea483727 --- /dev/null +++ b/pkgs/desktops/lomiri/applications/lomiri-camera-app/1001-treewide-Fix-imports-in-tests-after-QML-files-were-moved.patch @@ -0,0 +1,86 @@ +From 75a0baa32f434546c5d6cfaf8ae19d561aa8dddd Mon Sep 17 00:00:00 2001 +From: OPNA2608 +Date: Mon, 9 Jun 2025 20:00:40 +0200 +Subject: [PATCH] treewide: Fix imports in tests after QML files were moved out + of top-level dir + +--- + CMakeLists.txt | 2 ++ + tests/unittests/tst_BottomEdgeIndicators.qml | 3 +-- + tests/unittests/tst_PhotogridView.qml | 3 +-- + tests/unittests/tst_StopWatch.qml | 3 +-- + tests/unittests/tst_ViewFinderGeometry.qml | 3 +-- + 5 files changed, 6 insertions(+), 8 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index faa998c..9d54fbe 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -191,6 +191,8 @@ install(DIRECTORY ${QML_DIR} + DESTINATION ${CAMERA_APP_DIR} + ) + ++# For tests ++file(COPY ${QML_DIR} DESTINATION ${CMAKE_BINARY_DIR}) + + set(ASSETS_DIR assets) + +diff --git a/tests/unittests/tst_BottomEdgeIndicators.qml b/tests/unittests/tst_BottomEdgeIndicators.qml +index 129b840..3dd4c0c 100644 +--- a/tests/unittests/tst_BottomEdgeIndicators.qml ++++ b/tests/unittests/tst_BottomEdgeIndicators.qml +@@ -17,8 +17,7 @@ + + import QtQuick 2.12 + import QtTest 1.0 +-import "../../" +-import "../../.." //Needed for out of source build ++import "../../qml/components" + + TestCase { + name: "BottomEdgeIndicators" +diff --git a/tests/unittests/tst_PhotogridView.qml b/tests/unittests/tst_PhotogridView.qml +index 4c7404a..3f14840 100644 +--- a/tests/unittests/tst_PhotogridView.qml ++++ b/tests/unittests/tst_PhotogridView.qml +@@ -17,8 +17,7 @@ + + import QtQuick 2.12 + import QtTest 1.0 +-import "../../" +-import "../../.." //Needed for out of source build ++import "../../qml/components" + + TestCase { + name: "PhotogridView" +diff --git a/tests/unittests/tst_StopWatch.qml b/tests/unittests/tst_StopWatch.qml +index aac9c36..5ad29f8 100644 +--- a/tests/unittests/tst_StopWatch.qml ++++ b/tests/unittests/tst_StopWatch.qml +@@ -17,8 +17,7 @@ + + import QtQuick 2.12 + import QtTest 1.0 +-import "../../" +-import "../../.." //Needed for out of source build ++import "../../qml/components" + + TestCase { + name: "StopWatch" +diff --git a/tests/unittests/tst_ViewFinderGeometry.qml b/tests/unittests/tst_ViewFinderGeometry.qml +index 154437f..42aaacc 100644 +--- a/tests/unittests/tst_ViewFinderGeometry.qml ++++ b/tests/unittests/tst_ViewFinderGeometry.qml +@@ -17,8 +17,7 @@ + + import QtQuick 2.12 + import QtTest 1.0 +-import "../../" +-import "../../.." //Needed for out of source build ++import "../../qml/Viewfinder" + + TestCase { + name: "ViewFinderGeometry" +-- +2.49.0 + diff --git a/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix index 8238f1fcbdeb..6f48c161d62e 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix @@ -28,15 +28,20 @@ stdenv.mkDerivation (finalAttrs: { pname = "lomiri-camera-app"; - version = "4.0.8"; + version = "4.1.0"; src = fetchFromGitLab { owner = "ubports"; repo = "development/apps/lomiri-camera-app"; tag = "v${finalAttrs.version}"; - hash = "sha256-4Tkiv0f+1uZKkeyE60G/ThThMyNp+l8q6d4tiKipM3A="; + hash = "sha256-rGWIcaU3iFZIse69DUVjCebWH18yVrqWHcGoXItGX3k="; }; + patches = [ + # Remove when https://gitlab.com/ubports/development/apps/lomiri-camera-app/-/merge_requests/234 merged & in release + ./1001-treewide-Fix-imports-in-tests-after-QML-files-were-moved.patch + ]; + # We don't want absolute paths in desktop files postPatch = '' substituteInPlace CMakeLists.txt \ diff --git a/pkgs/development/libraries/java/saxon/default.nix b/pkgs/development/libraries/java/saxon/default.nix index 3e94d49772a0..337ca1e05a92 100644 --- a/pkgs/development/libraries/java/saxon/default.nix +++ b/pkgs/development/libraries/java/saxon/default.nix @@ -186,11 +186,11 @@ in saxon_12-he = common rec { pname = "saxon-he"; - version = "12.6"; + version = "12.7"; jar = "saxon-he-${version}"; src = fetchurl { url = github.downloadUrl version; - hash = "sha256-y7ZlfaBhwVVHatnkOjVkpMySjUlR6+7S6v5aCqdOKu4="; + hash = "sha256-+J4ghaw1fZtsuKIxcHrrxff20LTsOmJhRLqWVvdZLN4="; }; updateScript = github.updateScript version; description = "Processor for XSLT 3.0, XPath 3.1, and XQuery 3.1"; diff --git a/pkgs/development/libraries/libcef/default.nix b/pkgs/development/libraries/libcef/default.nix index f8ce4771f886..db3445a45604 100644 --- a/pkgs/development/libraries/libcef/default.nix +++ b/pkgs/development/libraries/libcef/default.nix @@ -92,14 +92,14 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "libcef"; - version = "136.1.6"; - gitRevision = "1ac1b14"; - chromiumVersion = "136.0.7103.114"; + version = "137.0.17"; + gitRevision = "f354b0e"; + chromiumVersion = "137.0.7151.104"; buildType = "Release"; srcHash = selectSystem { - aarch64-linux = "sha256-PC6vwjusN4GQJvwYEuBtXVkwhhdnEePcXR435pRnB6w="; - x86_64-linux = "sha256-Uq17X9psYzetSYQvXm62+9+XugCW3tGxnqGVsj6Hogs="; + aarch64-linux = "sha256-C9P4+TpzjyMD5z2qLbzubbrIr66usFjRx7QqiAxI2D8="; + x86_64-linux = "sha256-iDC3a/YN0NqjX/b2waKvUAZCaR0lkLmUPqBJphE037Q="; }; src = fetchurl { diff --git a/pkgs/development/python-modules/mpltoolbox/default.nix b/pkgs/development/python-modules/mpltoolbox/default.nix new file mode 100644 index 000000000000..ddada447daf3 --- /dev/null +++ b/pkgs/development/python-modules/mpltoolbox/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # tests + matplotlib, + ipympl, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "mpltoolbox"; + version = "25.04.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "scipp"; + repo = "mpltoolbox"; + tag = version; + hash = "sha256-+LqPTlVbSxuewWuPNUfGdgQjWFxo7s2i3e21WkNNK78="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + matplotlib + ]; + + nativeCheckInputs = [ + ipympl + pytestCheckHook + ]; + + pythonImportsCheck = [ + "mpltoolbox" + ]; + + meta = { + description = "Interactive tools for Matplotlib"; + homepage = "https://scipp.github.io/mpltoolbox/"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/development/python-modules/oelint-data/default.nix b/pkgs/development/python-modules/oelint-data/default.nix index 7c6ab2de4854..a42bc1f21173 100644 --- a/pkgs/development/python-modules/oelint-data/default.nix +++ b/pkgs/development/python-modules/oelint-data/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "oelint-data"; - version = "1.0.16"; + version = "1.0.17"; pyproject = true; src = fetchFromGitHub { owner = "priv-kweihmann"; repo = "oelint-data"; tag = version; - hash = "sha256-t6NGD1IHRHfB2kJT0LwSpCicaan3ptagNDE2JV+IkE4="; + hash = "sha256-ZZBgZX6nrcPGlWQeZekCO57rizpuSVBnfoLzjh3r0Fw="; }; build-system = [ diff --git a/pkgs/development/python-modules/plopp/default.nix b/pkgs/development/python-modules/plopp/default.nix new file mode 100644 index 000000000000..581dbb51e5d2 --- /dev/null +++ b/pkgs/development/python-modules/plopp/default.nix @@ -0,0 +1,117 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # dependencies + lazy-loader, + matplotlib, + + # tests + pytestCheckHook, + anywidget, + graphviz, + h5py, + ipympl, + ipywidgets, + mpltoolbox, + pandas, + plotly, + pooch, + pyarrow, + pythreejs, + scipp, + scipy, + xarray, + + # tests data + symlinkJoin, + fetchurl, +}: + +buildPythonPackage rec { + pname = "plopp"; + version = "25.06.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "scipp"; + repo = "plopp"; + tag = version; + hash = "sha256-SwF0bUU/DAAJ5+0WvZgwqEw6IoaqdbKj0GkCgffGclA="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + lazy-loader + matplotlib + ]; + + nativeCheckInputs = [ + pytestCheckHook + anywidget + graphviz + h5py + ipympl + ipywidgets + mpltoolbox + pandas + plotly + pooch + pyarrow + pythreejs + scipp + scipy + xarray + ]; + + env = { + # See: https://github.com/scipp/plopp/blob/25.05.0/src/plopp/data/examples.py + PLOPP_DATA_DIR = + let + # NOTE this might be changed by upstream in the future. + _version = "1"; + in + symlinkJoin { + name = "plopp-test-data"; + paths = + lib.mapAttrsToList + ( + file: hash: + fetchurl { + url = "https://public.esss.dk/groups/scipp/plopp/${_version}/${file}"; + inherit hash; + downloadToTemp = true; + recursiveHash = true; + postFetch = '' + mkdir -p $out/${_version} + mv $downloadedFile $out/${_version}/${file} + ''; + } + ) + { + "nyc_taxi_data.h5" = "sha256-hso8ESM+uLRf4y2CW/7dpAmm/kysAfJY3b+5vz78w4Q="; + "teapot.h5" = "sha256-i6hOw72ce1cBT6FMQTdCEKVe0WOMOjApKperGHoPW34="; + }; + }; + }; + + pythonImportsCheck = [ + "plopp" + ]; + + meta = { + description = "Visualization library for scipp"; + homepage = "https://scipp.github.io/plopp/"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/development/python-modules/scipp/default.nix b/pkgs/development/python-modules/scipp/default.nix new file mode 100644 index 000000000000..9cfb79fe914a --- /dev/null +++ b/pkgs/development/python-modules/scipp/default.nix @@ -0,0 +1,114 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + + # build-system + scikit-build-core, + setuptools, + setuptools-scm, + + # nativeBuildInputs + cmake, + ninja, + + # dependencies + numpy, + units-llnl, + + # buildInputs + boost, + eigen, + gtest, + pybind11, + tbb_2022_0, + + # tests + pytestCheckHook, + scipy, + beautifulsoup4, + ipython, + matplotlib, + pandas, + numba, + xarray, + h5py, + hypothesis, +}: + +buildPythonPackage rec { + pname = "scipp"; + version = "25.05.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "scipp"; + repo = "Scipp"; + # https://github.com/scipp/scipp/pull/3722 + tag = version; + hash = "sha256-AanXb+nF/YIZFuzG5UnoNPX97WScfPKuoSBY18uYt9k="; + }; + env = { + SKIP_CONAN = "true"; + }; + + build-system = [ + scikit-build-core + setuptools + setuptools-scm + ]; + + nativeBuildInputs = [ + cmake + ninja + ]; + dontUseCmakeConfigure = true; + + dependencies = [ + numpy + ]; + + buildInputs = [ + boost + eigen + gtest + pybind11 + units-llnl.passthru.top-level + tbb_2022_0 + ]; + + nativeCheckInputs = [ + pytestCheckHook + scipy + beautifulsoup4 + ipython + matplotlib + pandas + numba + xarray + h5py + hypothesis + ]; + pytestFlagsArray = [ + # See https://github.com/scipp/scipp/issues/3721 + "--hypothesis-profile=ci" + ]; + + pythonImportsCheck = [ + "scipp" + ]; + + meta = { + description = "Multi-dimensional data arrays with labeled dimensions"; + homepage = "https://scipp.github.io"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + # Got: + # + # error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw] + # + # Needs debugging along with upstream. + broken = stdenv.hostPlatform.isDarwin; + }; +} diff --git a/pkgs/development/python-modules/units-llnl/default.nix b/pkgs/development/python-modules/units-llnl/default.nix new file mode 100644 index 000000000000..03d0cfda1515 --- /dev/null +++ b/pkgs/development/python-modules/units-llnl/default.nix @@ -0,0 +1,56 @@ +{ + lib, + buildPythonPackage, + units-llnl, + + # build-system + nanobind, + scikit-build-core, + + # nativeBuildInputs + cmake, + # NOTE that if top-level units-llnl package uses cmakeFlags other then + # Nixpkgs' default, the build might fail, and you'd want to pick only the + # cmakeFlags that don't cause a failure. See also: + # https://github.com/scipp/scipp/issues/3705 + cmakeFlags ? units-llnl.cmakeFlags, + ninja, +}: + +buildPythonPackage { + inherit (units-llnl) + pname + version + src + meta + ; + pyproject = true; + + build-system = [ + nanobind + scikit-build-core + ]; + + nativeBuildInputs = [ + cmake + ninja + ]; + dontUseCmakeConfigure = true; + env = { + SKBUILD_CMAKE_ARGS = lib.strings.concatStringsSep ";" ( + cmakeFlags + ++ [ + (lib.cmakeBool "UNITS_BUILD_PYTHON_LIBRARY" true) + ] + ); + }; + + # Also upstream turns off testing for the python build so it seems, see: + # https://github.com/LLNL/units/blob/v0.13.1/pyproject.toml#L65-L66 However + # they do seem to use pytest for their CI, but in our case it fails due to + # missing googletest Python modules, which we don't know how to build. + doCheck = false; + passthru = { + top-level = units-llnl; + }; +} diff --git a/pkgs/games/cutechess/default.nix b/pkgs/games/cutechess/default.nix index 05a75351e9e2..6e8c3b2b4f5c 100644 --- a/pkgs/games/cutechess/default.nix +++ b/pkgs/games/cutechess/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cutechess"; - version = "1.3.1"; + version = "1.4.0"; src = fetchFromGitHub { owner = "cutechess"; repo = "cutechess"; rev = "v${finalAttrs.version}"; - hash = "sha256-P44Twbw2MGz+oTzPwMFCe73zPxAex6uYjSTtaUypfHw="; + hash = "sha256-vhS3Eenxcq7D8E5WVON5C5hCTytcEVbYUeuCkfB0apA="; }; nativeBuildInputs = [ diff --git a/pkgs/os-specific/linux/nixos-rebuild/_nixos-rebuild b/pkgs/os-specific/linux/nixos-rebuild/_nixos-rebuild index 31e23136528d..76be2c98a706 100644 --- a/pkgs/os-specific/linux/nixos-rebuild/_nixos-rebuild +++ b/pkgs/os-specific/linux/nixos-rebuild/_nixos-rebuild @@ -35,7 +35,7 @@ _nixos-rebuild() { --profile-name -p # name --rollback --specialisation -c # name - --use-remote-sudo + --use-sudo --no-ssh-tty --build-host # host --target-host # host diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8 b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8 index 3e9936d30129..2932a82e84f1 100644 --- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8 +++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8 @@ -38,7 +38,7 @@ .br .Op Fl -build-host Va host .Op Fl -target-host Va host -.Op Fl -use-remote-sudo +.Op Fl -sudo .Op Fl -no-ssh-tty .br .Op Fl -verbose | v @@ -404,7 +404,7 @@ or is also set. This is useful when the target-host connection to cache.nixos.org is faster than the connection between hosts. . -.It Fl -use-remote-sudo +.It Fl -sudo When set, nixos-rebuild prefixes activation commands that run on the .Fl -target-host system with diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh index 74ca23a8b6ca..7b1e99a2f819 100755 --- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh +++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh @@ -32,7 +32,7 @@ specialisation= imageVariant= buildHost= targetHost= -remoteSudo= +useSudo= noSSHTTY= verboseScript= noFlake= @@ -170,8 +170,8 @@ while [ "$#" -gt 0 ]; do targetHost="$1" shift 1 ;; - --use-remote-sudo) - remoteSudo=1 + --sudo | --use-remote-sudo) + useSudo=1 ;; --no-ssh-tty) noSSHTTY=1 @@ -237,7 +237,7 @@ buildHostCmd() { targetHostCmd() { local c - if [[ "${useSudo:-x}" = 1 ]]; then + if [[ "${withSudo:-x}" = 1 ]]; then c=("sudo") else c=() @@ -256,8 +256,8 @@ targetHostSudoCmd() { t="-t" fi - if [ -n "$remoteSudo" ]; then - useSudo=1 SSHOPTS="$SSHOPTS $t" targetHostCmd "$@" + if [[ -n "$useSudo" ]]; then + withSudo=1 SSHOPTS="$SSHOPTS $t" targetHostCmd "$@" else # While a tty might not be necessary, we apply it to be consistent with # sudo usage, and an experience that is more consistent with local deployment. diff --git a/pkgs/servers/mastodon/source.nix b/pkgs/servers/mastodon/source.nix index 4dcc524f01b3..63f408e1f81e 100644 --- a/pkgs/servers/mastodon/source.nix +++ b/pkgs/servers/mastodon/source.nix @@ -7,17 +7,18 @@ let version = "4.3.8"; in -(applyPatches { +applyPatches { src = fetchFromGitHub { owner = "mastodon"; repo = "mastodon"; rev = "v${version}"; hash = "sha256-08AApylDOz8oExZ0cRaZTgNAuP+1wiLkx0SDhkO2fMM="; + + passthru = { + inherit version; + yarnHash = "sha256-IC4d/skIHEzJPuKlq4rMAqV+ydqquA6toq4WWCfuDxo="; + yarnMissingHashes = null; + }; }; patches = patches ++ [ ]; -}) -// { - inherit version; - yarnHash = "sha256-IC4d/skIHEzJPuKlq4rMAqV+ydqquA6toq4WWCfuDxo="; - yarnMissingHashes = null; } diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index ef9cbc751256..266b895abd4b 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -256,115 +256,117 @@ let ''; } ); + in - server = stdenv.mkDerivation ( - common - // { - pname = "mariadb-server"; + stdenv.mkDerivation ( + finalAttrs: + common + // { + pname = "mariadb-server"; - nativeBuildInputs = common.nativeBuildInputs ++ [ - bison - boost.dev - flex + nativeBuildInputs = common.nativeBuildInputs ++ [ + bison + boost.dev + flex + ]; + + buildInputs = + common.buildInputs + ++ [ + bzip2 + lz4 + lzo + snappy + xz + zstd + cracklib + judy + libevent + libxml2 + ] + ++ lib.optional withNuma numactl + ++ lib.optionals stdenv.hostPlatform.isLinux [ linux-pam ] + ++ lib.optional (!stdenv.hostPlatform.isDarwin) mytopEnv + ++ lib.optionals withStorageMroonga [ + kytea + libsodium + msgpack + zeromq + ] + ++ lib.optionals (lib.versionAtLeast common.version "10.11") [ fmt_11 ]; + + propagatedBuildInputs = lib.optional withNuma numactl; + + postPatch = '' + substituteInPlace scripts/galera_new_cluster.sh \ + --replace ":-mariadb" ":-mysql" + ''; + + cmakeFlags = + common.cmakeFlags + ++ [ + "-DMYSQL_DATADIR=/var/lib/mysql" + "-DENABLED_LOCAL_INFILE=OFF" + "-DWITH_READLINE=ON" + "-DWITH_EXTRA_CHARSETS=all" + "-DWITH_EMBEDDED_SERVER=${if withEmbedded then "ON" else "OFF"}" + "-DWITH_UNIT_TESTS=OFF" + "-DWITH_WSREP=ON" + "-DWITH_INNODB_DISALLOW_WRITES=ON" + "-DWITHOUT_EXAMPLE=1" + "-DWITHOUT_FEDERATED=1" + "-DWITHOUT_TOKUDB=1" + ] + ++ lib.optionals withNuma [ + "-DWITH_NUMA=ON" + ] + ++ lib.optionals (!withStorageMroonga) [ + "-DWITHOUT_MROONGA=1" + ] + ++ lib.optionals (!withStorageRocks) [ + "-DWITHOUT_ROCKSDB=1" + ] + ++ lib.optionals (!stdenv.hostPlatform.isDarwin && withStorageRocks) [ + "-DWITH_ROCKSDB_JEMALLOC=ON" + ] + ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ + "-DWITH_JEMALLOC=yes" + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + "-DPLUGIN_AUTH_PAM=NO" + "-DPLUGIN_AUTH_PAM_V1=NO" + "-DWITHOUT_OQGRAPH=1" + "-DWITHOUT_PLUGIN_S3=1" ]; - buildInputs = - common.buildInputs - ++ [ - bzip2 - lz4 - lzo - snappy - xz - zstd - cracklib - judy - libevent - libxml2 - ] - ++ lib.optional withNuma numactl - ++ lib.optionals stdenv.hostPlatform.isLinux [ linux-pam ] - ++ lib.optional (!stdenv.hostPlatform.isDarwin) mytopEnv - ++ lib.optionals withStorageMroonga [ - kytea - libsodium - msgpack - zeromq - ] - ++ lib.optionals (lib.versionAtLeast common.version "10.11") [ fmt_11 ]; + preConfigure = lib.optionalString (!stdenv.hostPlatform.isDarwin) '' + patchShebangs scripts/mytop.sh + ''; - propagatedBuildInputs = lib.optional withNuma numactl; - - postPatch = '' - substituteInPlace scripts/galera_new_cluster.sh \ - --replace ":-mariadb" ":-mysql" + postInstall = + common.postInstall + + '' + rm -r "$out"/share/aclocal + chmod +x "$out"/bin/wsrep_sst_common + rm -f "$out"/bin/{mariadb-client-test,mariadb-test,mysql_client_test,mysqltest} + '' + + lib.optionalString withStorageMroonga '' + mv "$out"/share/{groonga,groonga-normalizer-mysql} "$out"/share/doc/mysql + '' + + lib.optionalString (!stdenv.hostPlatform.isDarwin && lib.versionAtLeast common.version "10.4") '' + mv "$out"/OFF/suite/plugins/pam/pam_mariadb_mtr.so "$out"/share/pam/lib/security + mv "$out"/OFF/suite/plugins/pam/mariadb_mtr "$out"/share/pam/etc/security + rm -r "$out"/OFF ''; - cmakeFlags = - common.cmakeFlags - ++ [ - "-DMYSQL_DATADIR=/var/lib/mysql" - "-DENABLED_LOCAL_INFILE=OFF" - "-DWITH_READLINE=ON" - "-DWITH_EXTRA_CHARSETS=all" - "-DWITH_EMBEDDED_SERVER=${if withEmbedded then "ON" else "OFF"}" - "-DWITH_UNIT_TESTS=OFF" - "-DWITH_WSREP=ON" - "-DWITH_INNODB_DISALLOW_WRITES=ON" - "-DWITHOUT_EXAMPLE=1" - "-DWITHOUT_FEDERATED=1" - "-DWITHOUT_TOKUDB=1" - ] - ++ lib.optionals withNuma [ - "-DWITH_NUMA=ON" - ] - ++ lib.optionals (!withStorageMroonga) [ - "-DWITHOUT_MROONGA=1" - ] - ++ lib.optionals (!withStorageRocks) [ - "-DWITHOUT_ROCKSDB=1" - ] - ++ lib.optionals (!stdenv.hostPlatform.isDarwin && withStorageRocks) [ - "-DWITH_ROCKSDB_JEMALLOC=ON" - ] - ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ - "-DWITH_JEMALLOC=yes" - ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - "-DPLUGIN_AUTH_PAM=NO" - "-DPLUGIN_AUTH_PAM_V1=NO" - "-DWITHOUT_OQGRAPH=1" - "-DWITHOUT_PLUGIN_S3=1" - ]; + CXXFLAGS = lib.optionalString stdenv.hostPlatform.isi686 "-fpermissive"; - preConfigure = lib.optionalString (!stdenv.hostPlatform.isDarwin) '' - patchShebangs scripts/mytop.sh - ''; - - postInstall = - common.postInstall - + '' - rm -r "$out"/share/aclocal - chmod +x "$out"/bin/wsrep_sst_common - rm -f "$out"/bin/{mariadb-client-test,mariadb-test,mysql_client_test,mysqltest} - '' - + lib.optionalString withStorageMroonga '' - mv "$out"/share/{groonga,groonga-normalizer-mysql} "$out"/share/doc/mysql - '' - + lib.optionalString (!stdenv.hostPlatform.isDarwin && lib.versionAtLeast common.version "10.4") '' - mv "$out"/OFF/suite/plugins/pam/pam_mariadb_mtr.so "$out"/share/pam/lib/security - mv "$out"/OFF/suite/plugins/pam/mariadb_mtr "$out"/share/pam/etc/security - rm -r "$out"/OFF - ''; - - CXXFLAGS = lib.optionalString stdenv.hostPlatform.isi686 "-fpermissive"; - } - ); - in - server - // { - inherit client server; - }; + passthru = { + inherit client; + server = finalAttrs.finalPackage; + }; + } + ); in self: { # see https://mariadb.org/about/#maintenance-policy for EOLs diff --git a/pkgs/test/build-deno-package/.gitignore b/pkgs/test/build-deno-package/.gitignore deleted file mode 100644 index cb92b2a7589f..000000000000 --- a/pkgs/test/build-deno-package/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -.deno/ -node_modules/ -vendor/ diff --git a/pkgs/test/build-deno-package/binaries/default.nix b/pkgs/test/build-deno-package/binaries/default.nix deleted file mode 100644 index 349bf1263dec..000000000000 --- a/pkgs/test/build-deno-package/binaries/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ nix-gitignore, buildDenoPackage }: -{ - with-npm-linux = buildDenoPackage rec { - pname = "test-deno-build-binaries-with-npm-${targetSystem}"; - version = "0.1.0"; - denoDepsHash = "sha256-k2js/8XsxGVu83rGMJed457orraue8WUZF+JUMMfhVQ="; - src = nix-gitignore.gitignoreSource [ ] ./with-npm; - binaryEntrypointPath = "./main.ts"; - targetSystem = "x86_64-linux"; - }; - without-npm-linux = buildDenoPackage rec { - pname = "test-deno-build-binaries-without-npm-${targetSystem}"; - version = "0.1.0"; - denoDepsHash = "sha256-keshKcgawVcuSGNYAIepUrRl7iqpp0ExRJag4aiV18c="; - src = nix-gitignore.gitignoreSource [ ] ./without-npm; - binaryEntrypointPath = "./main.ts"; - targetSystem = "x86_64-linux"; - }; - # mac = - # let - # targetSystem = "aarch64-darwin"; - # macpkgs = import ../../../../default.nix { crossSystem = { config = "arm64-apple-darwin"; };}; - # in - # buildDenoPackage { - # pname = "test-deno-build-binaries-${targetSystem}"; - # version = "0.1.0"; - # denoDepsHash = ""; - # src = nix-gitignore.gitignoreSource [ ] ./.; - # binaryEntrypointPath = "./main.ts"; - # denortPackage = macpkgs.denort; - # inherit targetSystem; - # }; -} diff --git a/pkgs/test/build-deno-package/binaries/with-npm/.gitignore b/pkgs/test/build-deno-package/binaries/with-npm/.gitignore deleted file mode 100644 index cb92b2a7589f..000000000000 --- a/pkgs/test/build-deno-package/binaries/with-npm/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -.deno/ -node_modules/ -vendor/ diff --git a/pkgs/test/build-deno-package/binaries/with-npm/deno.json b/pkgs/test/build-deno-package/binaries/with-npm/deno.json deleted file mode 100644 index 5e8a1c53d6a2..000000000000 --- a/pkgs/test/build-deno-package/binaries/with-npm/deno.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "binary build", - "tasks": { - "build": "deno run --allow-all main.ts" - }, - "imports": { - "@luca/cases": "jsr:@luca/cases@1.0.0", - "@std/cli": "jsr:@std/cli@1.0.17", - "cowsay": "npm:cowsay@1.6.0", - "cases": "https://deno.land/x/case@2.2.0/mod.ts" - }, - "vendor": true -} diff --git a/pkgs/test/build-deno-package/binaries/with-npm/deno.lock b/pkgs/test/build-deno-package/binaries/with-npm/deno.lock deleted file mode 100644 index 56656abe3767..000000000000 --- a/pkgs/test/build-deno-package/binaries/with-npm/deno.lock +++ /dev/null @@ -1,215 +0,0 @@ -{ - "version": "5", - "specifiers": { - "jsr:@luca/cases@1.0.0": "1.0.0", - "jsr:@std/cli@1.0.17": "1.0.17", - "npm:cowsay@1.6.0": "1.6.0" - }, - "jsr": { - "@luca/cases@1.0.0": { - "integrity": "b5f9471f1830595e63a2b7d62821ac822a19e16899e6584799be63f17a1fbc30" - }, - "@std/cli@1.0.17": { - "integrity": "e15b9abe629e17be90cc6216327f03a29eae613365f1353837fa749aad29ce7b" - } - }, - "npm": { - "ansi-regex@3.0.1": { - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==" - }, - "ansi-regex@5.0.1": { - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles@4.3.0": { - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": [ - "color-convert" - ] - }, - "camelcase@5.3.1": { - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" - }, - "cliui@6.0.0": { - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dependencies": [ - "string-width@4.2.3", - "strip-ansi@6.0.1", - "wrap-ansi" - ] - }, - "color-convert@2.0.1": { - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": [ - "color-name" - ] - }, - "color-name@1.1.4": { - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "cowsay@1.6.0": { - "integrity": "sha512-8C4H1jdrgNusTQr3Yu4SCm+ZKsAlDFbpa0KS0Z3im8ueag+9pGOf3CrioruvmeaW/A5oqg9L0ar6qeftAh03jw==", - "dependencies": [ - "get-stdin", - "string-width@2.1.1", - "strip-final-newline", - "yargs" - ], - "bin": true - }, - "decamelize@1.2.0": { - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==" - }, - "emoji-regex@8.0.0": { - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "find-up@4.1.0": { - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dependencies": [ - "locate-path", - "path-exists" - ] - }, - "get-caller-file@2.0.5": { - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "get-stdin@8.0.0": { - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==" - }, - "is-fullwidth-code-point@2.0.0": { - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==" - }, - "is-fullwidth-code-point@3.0.0": { - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "locate-path@5.0.0": { - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dependencies": [ - "p-locate" - ] - }, - "p-limit@2.3.0": { - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dependencies": [ - "p-try" - ] - }, - "p-locate@4.1.0": { - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dependencies": [ - "p-limit" - ] - }, - "p-try@2.2.0": { - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "path-exists@4.0.0": { - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, - "require-directory@2.1.1": { - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" - }, - "require-main-filename@2.0.0": { - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" - }, - "set-blocking@2.0.0": { - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" - }, - "string-width@2.1.1": { - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dependencies": [ - "is-fullwidth-code-point@2.0.0", - "strip-ansi@4.0.0" - ] - }, - "string-width@4.2.3": { - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": [ - "emoji-regex", - "is-fullwidth-code-point@3.0.0", - "strip-ansi@6.0.1" - ] - }, - "strip-ansi@4.0.0": { - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dependencies": [ - "ansi-regex@3.0.1" - ] - }, - "strip-ansi@6.0.1": { - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": [ - "ansi-regex@5.0.1" - ] - }, - "strip-final-newline@2.0.0": { - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==" - }, - "which-module@2.0.1": { - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==" - }, - "wrap-ansi@6.2.0": { - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dependencies": [ - "ansi-styles", - "string-width@4.2.3", - "strip-ansi@6.0.1" - ] - }, - "y18n@4.0.3": { - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" - }, - "yargs-parser@18.1.3": { - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dependencies": [ - "camelcase", - "decamelize" - ] - }, - "yargs@15.4.1": { - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dependencies": [ - "cliui", - "decamelize", - "find-up", - "get-caller-file", - "require-directory", - "require-main-filename", - "set-blocking", - "string-width@4.2.3", - "which-module", - "y18n", - "yargs-parser" - ] - } - }, - "remote": { - "https://deno.land/x/case@2.2.0/camelCase.ts": "b9a4cf361a7c9740ecb75e00b5e2c006bd4e5d40e442d26c5f2760286fa66796", - "https://deno.land/x/case@2.2.0/constantCase.ts": "c698fc32f00cd267c1684b1d413d784260d7e7798f2bf506803e418497d839b5", - "https://deno.land/x/case@2.2.0/dotCase.ts": "03ae55d5635e6a4ca894a003d9297cd9cd283af2e7d761dd3de13663849a9423", - "https://deno.land/x/case@2.2.0/headerCase.ts": "3f6c8ab2ab30a88147326bce28a00d1189ec98ab61c83ab72ce79e852afddc4a", - "https://deno.land/x/case@2.2.0/lowerCase.ts": "d75eb55cadfa589f9f2a973924a8a209054477d9574da669410f4d817ab25b41", - "https://deno.land/x/case@2.2.0/lowerFirstCase.ts": "b001efbf2d715b53d066b22cdbf8eda7f99aa7108e3d12fb02f80d499bae93d9", - "https://deno.land/x/case@2.2.0/mod.ts": "28b0b1329c7b18730799ac05627a433d9547c04b9bfb429116247c60edecd97b", - "https://deno.land/x/case@2.2.0/normalCase.ts": "085c8b6f9d69283c8b86f2e504d43278c2be8b7e56a3ed8d4a5f395e398bdc29", - "https://deno.land/x/case@2.2.0/paramCase.ts": "a234c9c17dfbaddee647b6571c2c90e8f6530123fed26c4546f4063d67c1609f", - "https://deno.land/x/case@2.2.0/pascalCase.ts": "4b3ef0a68173871a821d306d4067e8f72d42aeeef1eea6aeab30af6bfa3d7427", - "https://deno.land/x/case@2.2.0/pathCase.ts": "330a34b4df365b0291d8e36158235340131730aae6f6add66962ed2d0fbead4a", - "https://deno.land/x/case@2.2.0/sentenceCase.ts": "b312cef147a13b58ffdf3c36bf55b33aa8322c91f4aa9b32318f3911bb92327f", - "https://deno.land/x/case@2.2.0/snakeCase.ts": "e5ac1e08532ca397aa3150a0a3255d59f63a186d934e5094a8ffd24cbca7f955", - "https://deno.land/x/case@2.2.0/swapCase.ts": "bb03742fcf613f733890680ceca1b39b65ed290f36a317fcd47edd517c4e0e1e", - "https://deno.land/x/case@2.2.0/titleCase.ts": "c287131ea2c955e67cdd5cf604de96d31a8e2813305759922b9ed27e3be354e7", - "https://deno.land/x/case@2.2.0/types.ts": "8e2bd6edaa27c0d1972c0d5b76698564740f37b4d3787d58d1fb5f48de611e61", - "https://deno.land/x/case@2.2.0/upperCase.ts": "6cca267bb04d098bf4abf21e42e60c3e68ede89b12e525643c6b6eff3e10de34", - "https://deno.land/x/case@2.2.0/upperFirstCase.ts": "b964c2d8d3a85c78cd35f609135cbde99d84b9522a21470336b5af80a37facbd", - "https://deno.land/x/case@2.2.0/vendor/camelCaseRegexp.ts": "7d9ff02aad4ab6429eeab7c7353f7bcdd6cc5909a8bd3dda97918c8bbb7621ae", - "https://deno.land/x/case@2.2.0/vendor/camelCaseUpperRegexp.ts": "292de54a698370f90adcdf95727993d09888b7f33d17f72f8e54ba75f7791787", - "https://deno.land/x/case@2.2.0/vendor/nonWordRegexp.ts": "c1a052629a694144b48c66b0175a22a83f4d61cb40f4e45293fc5d6b123f927e" - }, - "workspace": { - "dependencies": [ - "jsr:@luca/cases@1.0.0", - "jsr:@std/cli@1.0.17", - "npm:cowsay@1.6.0" - ] - } -} diff --git a/pkgs/test/build-deno-package/binaries/with-npm/main.ts b/pkgs/test/build-deno-package/binaries/with-npm/main.ts deleted file mode 100644 index 0d8b922bac22..000000000000 --- a/pkgs/test/build-deno-package/binaries/with-npm/main.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { camelCase } from "@luca/cases"; -import { say } from "cowsay"; -import { pascalCase } from "cases"; -import { parseArgs } from "@std/cli"; - -const flags = parseArgs(Deno.args, { - string: ["text"], -}); - -if (!flags.text) { - throw "--text required but not specified"; -} - -console.log(camelCase(say({ text: flags.text }))); -console.log(pascalCase(say({ text: flags.text }))); diff --git a/pkgs/test/build-deno-package/binaries/without-npm/.gitignore b/pkgs/test/build-deno-package/binaries/without-npm/.gitignore deleted file mode 100644 index cb92b2a7589f..000000000000 --- a/pkgs/test/build-deno-package/binaries/without-npm/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -.deno/ -node_modules/ -vendor/ diff --git a/pkgs/test/build-deno-package/binaries/without-npm/deno.json b/pkgs/test/build-deno-package/binaries/without-npm/deno.json deleted file mode 100644 index c9a829c9c1ab..000000000000 --- a/pkgs/test/build-deno-package/binaries/without-npm/deno.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "binary build", - "tasks": { - "build": "deno run --allow-all main.ts" - }, - "imports": { - "@luca/cases": "jsr:@luca/cases@1.0.0", - "@std/cli": "jsr:@std/cli@1.0.17", - "cases": "https://deno.land/x/case@2.2.0/mod.ts" - }, - "vendor": true -} diff --git a/pkgs/test/build-deno-package/binaries/without-npm/deno.lock b/pkgs/test/build-deno-package/binaries/without-npm/deno.lock deleted file mode 100644 index 3f40f2593aa5..000000000000 --- a/pkgs/test/build-deno-package/binaries/without-npm/deno.lock +++ /dev/null @@ -1,44 +0,0 @@ -{ - "version": "5", - "specifiers": { - "jsr:@luca/cases@1.0.0": "1.0.0", - "jsr:@std/cli@1.0.17": "1.0.17" - }, - "jsr": { - "@luca/cases@1.0.0": { - "integrity": "b5f9471f1830595e63a2b7d62821ac822a19e16899e6584799be63f17a1fbc30" - }, - "@std/cli@1.0.17": { - "integrity": "e15b9abe629e17be90cc6216327f03a29eae613365f1353837fa749aad29ce7b" - } - }, - "remote": { - "https://deno.land/x/case@2.2.0/camelCase.ts": "b9a4cf361a7c9740ecb75e00b5e2c006bd4e5d40e442d26c5f2760286fa66796", - "https://deno.land/x/case@2.2.0/constantCase.ts": "c698fc32f00cd267c1684b1d413d784260d7e7798f2bf506803e418497d839b5", - "https://deno.land/x/case@2.2.0/dotCase.ts": "03ae55d5635e6a4ca894a003d9297cd9cd283af2e7d761dd3de13663849a9423", - "https://deno.land/x/case@2.2.0/headerCase.ts": "3f6c8ab2ab30a88147326bce28a00d1189ec98ab61c83ab72ce79e852afddc4a", - "https://deno.land/x/case@2.2.0/lowerCase.ts": "d75eb55cadfa589f9f2a973924a8a209054477d9574da669410f4d817ab25b41", - "https://deno.land/x/case@2.2.0/lowerFirstCase.ts": "b001efbf2d715b53d066b22cdbf8eda7f99aa7108e3d12fb02f80d499bae93d9", - "https://deno.land/x/case@2.2.0/mod.ts": "28b0b1329c7b18730799ac05627a433d9547c04b9bfb429116247c60edecd97b", - "https://deno.land/x/case@2.2.0/normalCase.ts": "085c8b6f9d69283c8b86f2e504d43278c2be8b7e56a3ed8d4a5f395e398bdc29", - "https://deno.land/x/case@2.2.0/paramCase.ts": "a234c9c17dfbaddee647b6571c2c90e8f6530123fed26c4546f4063d67c1609f", - "https://deno.land/x/case@2.2.0/pascalCase.ts": "4b3ef0a68173871a821d306d4067e8f72d42aeeef1eea6aeab30af6bfa3d7427", - "https://deno.land/x/case@2.2.0/pathCase.ts": "330a34b4df365b0291d8e36158235340131730aae6f6add66962ed2d0fbead4a", - "https://deno.land/x/case@2.2.0/sentenceCase.ts": "b312cef147a13b58ffdf3c36bf55b33aa8322c91f4aa9b32318f3911bb92327f", - "https://deno.land/x/case@2.2.0/snakeCase.ts": "e5ac1e08532ca397aa3150a0a3255d59f63a186d934e5094a8ffd24cbca7f955", - "https://deno.land/x/case@2.2.0/swapCase.ts": "bb03742fcf613f733890680ceca1b39b65ed290f36a317fcd47edd517c4e0e1e", - "https://deno.land/x/case@2.2.0/titleCase.ts": "c287131ea2c955e67cdd5cf604de96d31a8e2813305759922b9ed27e3be354e7", - "https://deno.land/x/case@2.2.0/types.ts": "8e2bd6edaa27c0d1972c0d5b76698564740f37b4d3787d58d1fb5f48de611e61", - "https://deno.land/x/case@2.2.0/upperCase.ts": "6cca267bb04d098bf4abf21e42e60c3e68ede89b12e525643c6b6eff3e10de34", - "https://deno.land/x/case@2.2.0/upperFirstCase.ts": "b964c2d8d3a85c78cd35f609135cbde99d84b9522a21470336b5af80a37facbd", - "https://deno.land/x/case@2.2.0/vendor/camelCaseRegexp.ts": "7d9ff02aad4ab6429eeab7c7353f7bcdd6cc5909a8bd3dda97918c8bbb7621ae", - "https://deno.land/x/case@2.2.0/vendor/camelCaseUpperRegexp.ts": "292de54a698370f90adcdf95727993d09888b7f33d17f72f8e54ba75f7791787", - "https://deno.land/x/case@2.2.0/vendor/nonWordRegexp.ts": "c1a052629a694144b48c66b0175a22a83f4d61cb40f4e45293fc5d6b123f927e" - }, - "workspace": { - "dependencies": [ - "jsr:@luca/cases@1.0.0", - "jsr:@std/cli@1.0.17" - ] - } -} diff --git a/pkgs/test/build-deno-package/binaries/without-npm/main.ts b/pkgs/test/build-deno-package/binaries/without-npm/main.ts deleted file mode 100644 index 2bfff532685c..000000000000 --- a/pkgs/test/build-deno-package/binaries/without-npm/main.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { camelCase } from "@luca/cases"; -import { pascalCase } from "cases"; -import { parseArgs } from "@std/cli"; - -const flags = parseArgs(Deno.args, { - string: ["text"], -}); - -if (!flags.text) { - throw "--text required but not specified"; -} - -console.log(camelCase(flags.text)); -console.log(pascalCase(flags.text)); diff --git a/pkgs/test/build-deno-package/default.nix b/pkgs/test/build-deno-package/default.nix deleted file mode 100644 index dd72e45292ce..000000000000 --- a/pkgs/test/build-deno-package/default.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ pkgs }: -(pkgs.callPackage ./workspaces { }) -// (pkgs.callPackage ./binaries { }) -// (pkgs.callPackage ./external { }) diff --git a/pkgs/test/build-deno-package/external/default.nix b/pkgs/test/build-deno-package/external/default.nix deleted file mode 100644 index b8691599e784..000000000000 --- a/pkgs/test/build-deno-package/external/default.nix +++ /dev/null @@ -1,67 +0,0 @@ -{ fetchFromGitHub, buildDenoPackage }: -{ - readma-cli-linux = buildDenoPackage rec { - pname = "readma-cli"; - version = "2.11.0"; - denoDepsHash = "sha256-ixet3k6OEWfxVnN/V7vk4qDvoXjA+6bU/JjXk76aThE="; - src = fetchFromGitHub { - owner = "elcoosp"; - repo = "readma"; - rev = "${version}"; - hash = "sha256-FVQTn+r7Ztj02vNvqFZIRIsokWeo1tPfFYffK2tvxjA="; - }; - denoInstallFlags = [ - "--allow-scripts" - "--frozen" - "--cached-only" - "--entrypoint" - "./cli/mod.ts" - ]; - binaryEntrypointPath = "./cli/mod.ts"; - targetSystem = "x86_64-linux"; - }; - fresh-init-cli-linux = buildDenoPackage { - pname = "fresh-init-cli"; - version = ""; - denoDepsHash = "sha256-WlMv431qTt3gw0w/V7lG8LnLkEt8VW1fNpyclzBwMcw="; - src = fetchFromGitHub { - owner = "denoland"; - repo = "fresh"; - rev = "c7c341b695bad8d0f3e3575e5fa9c82e0fa28bd4"; - hash = "sha256-bC4akr4Wt4sRqGkgjNuXztW8Q6YBLBsbuIOhsXH8NQU="; - }; - denoWorkspacePath = "./init"; - binaryEntrypointPath = "./src/mod.ts"; - targetSystem = "x86_64-linux"; - }; - invidious-companion-cli-linux = buildDenoPackage { - pname = "invidious-companion-cli"; - version = ""; - denoDepsHash = "sha256-sPcvVaVb4VsLI87kiYe3Z3eoXL1uDKwTQMck91cXVnM="; - src = fetchFromGitHub { - owner = "iv-org"; - repo = "invidious-companion"; - rev = "a34c27ff63e51f9e3adc0e8647cd12382f8f1ffe"; - hash = "sha256-/S8F7G8li12k0objsdFuh+mle6p2mk8zNUUCrG9hgns="; - }; - binaryEntrypointPath = "src/main.ts"; - denoCompileFlags = [ - "--include=./src/lib/helpers/youtubePlayerReq.ts" - "--include=./src/lib/helpers/getFetchClient.ts" - "--allow-import=github.com:443,jsr.io:443,cdn.jsdelivr.net:443,esm.sh:443,deno.land:443" - "--allow-net" - "--allow-env" - "--allow-read" - "--allow-sys=hostname" - "--allow-write=/var/tmp/youtubei.js" - ]; - denoInstallFlags = [ - "--allow-scripts" - "--frozen" - "--cached-only" - "--entrypoint" - "src/main.ts" - ]; - targetSystem = "x86_64-linux"; - }; -} diff --git a/pkgs/test/build-deno-package/shell.nix b/pkgs/test/build-deno-package/shell.nix deleted file mode 100644 index 4f34fa2db640..000000000000 --- a/pkgs/test/build-deno-package/shell.nix +++ /dev/null @@ -1,9 +0,0 @@ -let - pkgs = import ../../../default.nix { }; -in -pkgs.mkShell { - buildInputs = [ pkgs.deno ]; - DENO_DIR = "./.deno"; - - shellHook = ''''; -} diff --git a/pkgs/test/build-deno-package/workspaces/.gitignore b/pkgs/test/build-deno-package/workspaces/.gitignore deleted file mode 100644 index cb92b2a7589f..000000000000 --- a/pkgs/test/build-deno-package/workspaces/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -.deno/ -node_modules/ -vendor/ diff --git a/pkgs/test/build-deno-package/workspaces/default.nix b/pkgs/test/build-deno-package/workspaces/default.nix deleted file mode 100644 index 01fe1067ae7f..000000000000 --- a/pkgs/test/build-deno-package/workspaces/default.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ nix-gitignore, buildDenoPackage }: -rec { - sub1 = buildDenoPackage { - pname = "test-deno-build-workspaces-sub1"; - version = "0.1.0"; - denoDepsHash = "sha256-imraVvtIJqi31aaWv7U1ODVRmOuou1ZR++z7QqnTPr0="; - src = nix-gitignore.gitignoreSource [ ] ./.; - denoWorkspacePath = "./sub1"; - extraTaskFlags = [ - "--text" - "sub1" - ]; - denoTaskSuffix = ">out.txt"; - - installPhase = '' - cp out.txt $out - ''; - }; - sub2 = buildDenoPackage { - pname = "test-deno-build-workspaces-sub2"; - version = "0.1.0"; - inherit (sub1) denoDeps src; - denoWorkspacePath = "./sub2"; - extraTaskFlags = [ - "--text" - "sub2" - ]; - denoTaskSuffix = ">out.txt"; - installPhase = '' - cp out.txt $out - ''; - }; - sub1Binary = buildDenoPackage { - pname = "test-deno-build-workspaces-sub1-binary"; - version = "0.1.0"; - inherit (sub1) denoDeps src; - denoWorkspacePath = "./sub1"; - binaryEntrypointPath = "./main.ts"; - }; -} diff --git a/pkgs/test/build-deno-package/workspaces/deno.json b/pkgs/test/build-deno-package/workspaces/deno.json deleted file mode 100644 index 86437ea04197..000000000000 --- a/pkgs/test/build-deno-package/workspaces/deno.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "workspace":[ - "./sub1", - "./sub2" - ], - "vendor": true -} diff --git a/pkgs/test/build-deno-package/workspaces/deno.lock b/pkgs/test/build-deno-package/workspaces/deno.lock deleted file mode 100644 index e9007eb56670..000000000000 --- a/pkgs/test/build-deno-package/workspaces/deno.lock +++ /dev/null @@ -1,225 +0,0 @@ -{ - "version": "5", - "specifiers": { - "jsr:@luca/cases@1.0.0": "1.0.0", - "jsr:@std/cli@1.0.17": "1.0.17", - "npm:cowsay@1.6.0": "1.6.0" - }, - "jsr": { - "@luca/cases@1.0.0": { - "integrity": "b5f9471f1830595e63a2b7d62821ac822a19e16899e6584799be63f17a1fbc30" - }, - "@std/cli@1.0.17": { - "integrity": "e15b9abe629e17be90cc6216327f03a29eae613365f1353837fa749aad29ce7b" - } - }, - "npm": { - "ansi-regex@3.0.1": { - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==" - }, - "ansi-regex@5.0.1": { - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles@4.3.0": { - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": [ - "color-convert" - ] - }, - "camelcase@5.3.1": { - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" - }, - "cliui@6.0.0": { - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dependencies": [ - "string-width@4.2.3", - "strip-ansi@6.0.1", - "wrap-ansi" - ] - }, - "color-convert@2.0.1": { - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": [ - "color-name" - ] - }, - "color-name@1.1.4": { - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "cowsay@1.6.0": { - "integrity": "sha512-8C4H1jdrgNusTQr3Yu4SCm+ZKsAlDFbpa0KS0Z3im8ueag+9pGOf3CrioruvmeaW/A5oqg9L0ar6qeftAh03jw==", - "dependencies": [ - "get-stdin", - "string-width@2.1.1", - "strip-final-newline", - "yargs" - ], - "bin": true - }, - "decamelize@1.2.0": { - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==" - }, - "emoji-regex@8.0.0": { - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "find-up@4.1.0": { - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dependencies": [ - "locate-path", - "path-exists" - ] - }, - "get-caller-file@2.0.5": { - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "get-stdin@8.0.0": { - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==" - }, - "is-fullwidth-code-point@2.0.0": { - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==" - }, - "is-fullwidth-code-point@3.0.0": { - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "locate-path@5.0.0": { - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dependencies": [ - "p-locate" - ] - }, - "p-limit@2.3.0": { - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dependencies": [ - "p-try" - ] - }, - "p-locate@4.1.0": { - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dependencies": [ - "p-limit" - ] - }, - "p-try@2.2.0": { - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "path-exists@4.0.0": { - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, - "require-directory@2.1.1": { - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" - }, - "require-main-filename@2.0.0": { - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" - }, - "set-blocking@2.0.0": { - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" - }, - "string-width@2.1.1": { - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dependencies": [ - "is-fullwidth-code-point@2.0.0", - "strip-ansi@4.0.0" - ] - }, - "string-width@4.2.3": { - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": [ - "emoji-regex", - "is-fullwidth-code-point@3.0.0", - "strip-ansi@6.0.1" - ] - }, - "strip-ansi@4.0.0": { - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dependencies": [ - "ansi-regex@3.0.1" - ] - }, - "strip-ansi@6.0.1": { - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": [ - "ansi-regex@5.0.1" - ] - }, - "strip-final-newline@2.0.0": { - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==" - }, - "which-module@2.0.1": { - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==" - }, - "wrap-ansi@6.2.0": { - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dependencies": [ - "ansi-styles", - "string-width@4.2.3", - "strip-ansi@6.0.1" - ] - }, - "y18n@4.0.3": { - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" - }, - "yargs-parser@18.1.3": { - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dependencies": [ - "camelcase", - "decamelize" - ] - }, - "yargs@15.4.1": { - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dependencies": [ - "cliui", - "decamelize", - "find-up", - "get-caller-file", - "require-directory", - "require-main-filename", - "set-blocking", - "string-width@4.2.3", - "which-module", - "y18n", - "yargs-parser" - ] - } - }, - "remote": { - "https://deno.land/x/case@2.2.0/camelCase.ts": "b9a4cf361a7c9740ecb75e00b5e2c006bd4e5d40e442d26c5f2760286fa66796", - "https://deno.land/x/case@2.2.0/constantCase.ts": "c698fc32f00cd267c1684b1d413d784260d7e7798f2bf506803e418497d839b5", - "https://deno.land/x/case@2.2.0/dotCase.ts": "03ae55d5635e6a4ca894a003d9297cd9cd283af2e7d761dd3de13663849a9423", - "https://deno.land/x/case@2.2.0/headerCase.ts": "3f6c8ab2ab30a88147326bce28a00d1189ec98ab61c83ab72ce79e852afddc4a", - "https://deno.land/x/case@2.2.0/lowerCase.ts": "d75eb55cadfa589f9f2a973924a8a209054477d9574da669410f4d817ab25b41", - "https://deno.land/x/case@2.2.0/lowerFirstCase.ts": "b001efbf2d715b53d066b22cdbf8eda7f99aa7108e3d12fb02f80d499bae93d9", - "https://deno.land/x/case@2.2.0/mod.ts": "28b0b1329c7b18730799ac05627a433d9547c04b9bfb429116247c60edecd97b", - "https://deno.land/x/case@2.2.0/normalCase.ts": "085c8b6f9d69283c8b86f2e504d43278c2be8b7e56a3ed8d4a5f395e398bdc29", - "https://deno.land/x/case@2.2.0/paramCase.ts": "a234c9c17dfbaddee647b6571c2c90e8f6530123fed26c4546f4063d67c1609f", - "https://deno.land/x/case@2.2.0/pascalCase.ts": "4b3ef0a68173871a821d306d4067e8f72d42aeeef1eea6aeab30af6bfa3d7427", - "https://deno.land/x/case@2.2.0/pathCase.ts": "330a34b4df365b0291d8e36158235340131730aae6f6add66962ed2d0fbead4a", - "https://deno.land/x/case@2.2.0/sentenceCase.ts": "b312cef147a13b58ffdf3c36bf55b33aa8322c91f4aa9b32318f3911bb92327f", - "https://deno.land/x/case@2.2.0/snakeCase.ts": "e5ac1e08532ca397aa3150a0a3255d59f63a186d934e5094a8ffd24cbca7f955", - "https://deno.land/x/case@2.2.0/swapCase.ts": "bb03742fcf613f733890680ceca1b39b65ed290f36a317fcd47edd517c4e0e1e", - "https://deno.land/x/case@2.2.0/titleCase.ts": "c287131ea2c955e67cdd5cf604de96d31a8e2813305759922b9ed27e3be354e7", - "https://deno.land/x/case@2.2.0/types.ts": "8e2bd6edaa27c0d1972c0d5b76698564740f37b4d3787d58d1fb5f48de611e61", - "https://deno.land/x/case@2.2.0/upperCase.ts": "6cca267bb04d098bf4abf21e42e60c3e68ede89b12e525643c6b6eff3e10de34", - "https://deno.land/x/case@2.2.0/upperFirstCase.ts": "b964c2d8d3a85c78cd35f609135cbde99d84b9522a21470336b5af80a37facbd", - "https://deno.land/x/case@2.2.0/vendor/camelCaseRegexp.ts": "7d9ff02aad4ab6429eeab7c7353f7bcdd6cc5909a8bd3dda97918c8bbb7621ae", - "https://deno.land/x/case@2.2.0/vendor/camelCaseUpperRegexp.ts": "292de54a698370f90adcdf95727993d09888b7f33d17f72f8e54ba75f7791787", - "https://deno.land/x/case@2.2.0/vendor/nonWordRegexp.ts": "c1a052629a694144b48c66b0175a22a83f4d61cb40f4e45293fc5d6b123f927e" - }, - "workspace": { - "members": { - "sub1": { - "dependencies": [ - "jsr:@std/cli@1.0.17", - "npm:cowsay@1.6.0" - ] - }, - "sub2": { - "dependencies": [ - "jsr:@luca/cases@1.0.0", - "jsr:@std/cli@1.0.17", - "npm:cowsay@1.6.0" - ] - } - } - } -} diff --git a/pkgs/test/build-deno-package/workspaces/sub1/deno.json b/pkgs/test/build-deno-package/workspaces/sub1/deno.json deleted file mode 100644 index dc00086de60d..000000000000 --- a/pkgs/test/build-deno-package/workspaces/sub1/deno.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "tasks": { - "build": "deno run --allow-all main.ts" - }, - "imports": { - "@std/cli": "jsr:@std/cli@1.0.17", - "cowsay": "npm:cowsay@1.6.0", - "cases": "https://deno.land/x/case@2.2.0/mod.ts" - } -} diff --git a/pkgs/test/build-deno-package/workspaces/sub1/main.ts b/pkgs/test/build-deno-package/workspaces/sub1/main.ts deleted file mode 100644 index 7164d1aeecba..000000000000 --- a/pkgs/test/build-deno-package/workspaces/sub1/main.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { say } from "cowsay"; -import { pascalCase } from "cases"; -import { parseArgs } from "@std/cli"; - -const flags = parseArgs(Deno.args, { - string: ["text"], -}); - -if (!flags.text) { - throw "--text required but not specified"; -} - -console.log(pascalCase(say({ text: flags.text }))); diff --git a/pkgs/test/build-deno-package/workspaces/sub2/deno.json b/pkgs/test/build-deno-package/workspaces/sub2/deno.json deleted file mode 100644 index a7d350d391fc..000000000000 --- a/pkgs/test/build-deno-package/workspaces/sub2/deno.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "tasks": { - "build": "deno run --allow-all main.ts" - }, - "imports": { - "@luca/cases": "jsr:@luca/cases@1.0.0", - "@std/cli": "jsr:@std/cli@1.0.17", - "cowsay": "npm:cowsay@1.6.0" - } -} diff --git a/pkgs/test/build-deno-package/workspaces/sub2/main.ts b/pkgs/test/build-deno-package/workspaces/sub2/main.ts deleted file mode 100644 index cb1806f1bcd6..000000000000 --- a/pkgs/test/build-deno-package/workspaces/sub2/main.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { camelCase } from "@luca/cases"; -import { say } from "cowsay"; -import { parseArgs } from "@std/cli"; - -const flags = parseArgs(Deno.args, { - string: ["text"], -}); - -if (!flags.text) { - throw "--text required but not specified"; -} - -console.log(camelCase(say({ text: flags.text }))); diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix index b6bbf37ae562..a743d2277f9b 100644 --- a/pkgs/test/default.nix +++ b/pkgs/test/default.nix @@ -226,6 +226,4 @@ with pkgs; rust-hooks = recurseIntoAttrs (callPackages ../build-support/rust/hooks/test { }); setup-hooks = recurseIntoAttrs (callPackages ../build-support/setup-hooks/tests { }); - - build-deno-package = callPackage ./build-deno-package { }; } diff --git a/pkgs/tools/package-management/nix/modular/src/libexpr/package.nix b/pkgs/tools/package-management/nix/modular/src/libexpr/package.nix index 5ff60bbf9c1b..d4cc448a07f5 100644 --- a/pkgs/tools/package-management/nix/modular/src/libexpr/package.nix +++ b/pkgs/tools/package-management/nix/modular/src/libexpr/package.nix @@ -63,13 +63,6 @@ mkMesonLibrary (finalAttrs: { (lib.mesonEnable "gc" enableGC) ]; - env = { - # Needed for Meson to find Boost. - # https://github.com/NixOS/nixpkgs/issues/86131. - BOOST_INCLUDEDIR = "${lib.getDev boost}/include"; - BOOST_LIBRARYDIR = "${lib.getLib boost}/lib"; - }; - meta = { platforms = lib.platforms.unix ++ lib.platforms.windows; }; diff --git a/pkgs/tools/package-management/nix/modular/src/libstore/package.nix b/pkgs/tools/package-management/nix/modular/src/libstore/package.nix index e005000a737b..e08658a32761 100644 --- a/pkgs/tools/package-management/nix/modular/src/libstore/package.nix +++ b/pkgs/tools/package-management/nix/modular/src/libstore/package.nix @@ -56,13 +56,6 @@ mkMesonLibrary (finalAttrs: { (lib.mesonOption "sandbox-shell" "${busybox-sandbox-shell}/bin/busybox") ]; - env = lib.optionalAttrs (!lib.versionAtLeast version "2.27") { - # Needed for Meson to find Boost. - # https://github.com/NixOS/nixpkgs/issues/86131. - BOOST_INCLUDEDIR = "${lib.getDev boost}/include"; - BOOST_LIBRARYDIR = "${lib.getLib boost}/lib"; - }; - meta = { platforms = lib.platforms.unix ++ lib.platforms.windows; }; diff --git a/pkgs/tools/package-management/nix/modular/src/libutil/package.nix b/pkgs/tools/package-management/nix/modular/src/libutil/package.nix index 3e96aa0660c8..5b1723b8ac2d 100644 --- a/pkgs/tools/package-management/nix/modular/src/libutil/package.nix +++ b/pkgs/tools/package-management/nix/modular/src/libutil/package.nix @@ -46,13 +46,6 @@ mkMesonLibrary (finalAttrs: { (lib.mesonEnable "cpuid" stdenv.hostPlatform.isx86_64) ]; - env = lib.optionalAttrs (!lib.versionAtLeast version "2.27") { - # Needed for Meson to find Boost. - # https://github.com/NixOS/nixpkgs/issues/86131. - BOOST_INCLUDEDIR = "${lib.getDev boost}/include"; - BOOST_LIBRARYDIR = "${lib.getLib boost}/lib"; - }; - meta = { platforms = lib.platforms.unix ++ lib.platforms.windows; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index edba3a4e26af..95fa9d9369a1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3626,12 +3626,6 @@ with pkgs; node2nix = nodePackages.node2nix; - buildDenoPackage = callPackage ../build-support/deno/build-deno-package { }; - - inherit (callPackages ../build-support/deno/fetch-deno-deps { }) fetchDenoDeps; - - denoHooks = callPackage ../build-support/deno/build-deno-package/hooks { }; - kcollectd = libsForQt5.callPackage ../tools/misc/kcollectd { }; ktailctl = kdePackages.callPackage ../applications/networking/ktailctl { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3ae51009e4a1..6dc205a1333d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9379,6 +9379,8 @@ self: super: with self; { mplleaflet = callPackage ../development/python-modules/mplleaflet { }; + mpltoolbox = callPackage ../development/python-modules/mpltoolbox { }; + mpmath = callPackage ../development/python-modules/mpmath { }; mpris-server = callPackage ../development/python-modules/mpris-server { }; @@ -11528,6 +11530,8 @@ self: super: with self; { ploomber-extension = callPackage ../development/python-modules/ploomber-extension { }; + plopp = callPackage ../development/python-modules/plopp { }; + plotext = callPackage ../development/python-modules/plotext { }; plotille = callPackage ../development/python-modules/plotille { }; @@ -15841,6 +15845,8 @@ self: super: with self; { scim2-tester = callPackage ../development/python-modules/scim2-tester { }; + scipp = callPackage ../development/python-modules/scipp { }; + scipy = callPackage ../development/python-modules/scipy { }; scmrepo = callPackage ../development/python-modules/scmrepo { }; @@ -18763,6 +18769,10 @@ self: super: with self; { unique-log-filter = callPackage ../development/python-modules/unique-log-filter { }; + units-llnl = callPackage ../development/python-modules/units-llnl { + inherit (pkgs) units-llnl; + }; + unittest-data-provider = callPackage ../development/python-modules/unittest-data-provider { }; unittest-xml-reporting = callPackage ../development/python-modules/unittest-xml-reporting { };