Unverified Commit 059b71a9 authored by nixpkgs-ci[bot]'s avatar nixpkgs-ci[bot] Committed by GitHub
Browse files

Merge master into staging-nixos

parents ed2778e8 ef0df8fa
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -950,6 +950,9 @@
  "var-stdenv-enableParallelBuilding": [
    "index.html#var-stdenv-enableParallelBuilding"
  ],
  "var-stdenv-__structuredAttrs": [
    "index.html#var-stdenv-__structuredAttrs"
  ],
  "mkderivation-recursive-attributes": [
    "index.html#mkderivation-recursive-attributes"
  ],
+24 −0
Original line number Diff line number Diff line
@@ -511,6 +511,30 @@ If set to `true`, `stdenv` will pass specific flags to `make` and other build to

Unless set to `false`, some build systems with good support for parallel building including `cmake`, `meson`, and `qmake` will set it to `true`.

#### `__structuredAttrs` {#var-stdenv-__structuredAttrs}

`__structuredAttrs` defines how derivation attributes are passed to the builder.

If enabled, a shell script and a JSON representation of the derivation attributes are created.
The environment variables {env}`NIX_ATTRS_SH_FILE` and {env}`NIX_ATTRS_JSON_FILE` point to the exact location of these files.

Attributes intended to be _exported_ as environment variables must be defined in the `env` attribute.
Attributes that are _local_ to the buildscript should be defined outside of `env`, to benefit from structured shell variables.

::: {.important}
`__structuredAttrs` is a complete replacement for the way attributes are handled currently, and is the preferred default.

`passAsFile` is disabled when `__structuredAttrs` is enabled, since {env}`NIX_ATTRS_JSON_FILE` can be read from instead.

All new top level packages must enable `__structuredAttrs`.

:::

See the upstream nix documentation for more detail:
  - [Advanced Derivation Attributes](https://nix.dev/manual/nix/2.34/language/advanced-attributes.html#adv-attr-structuredAttrs)
  - [Builder Execution](https://nix.dev/manual/nix/2.34/store/building.html#builder-execution)
  - [Structured Attributes](https://nix.dev/manual/nix/2.34/store/derivation/#structured-attrs)

### Fixed-point arguments of `mkDerivation` {#mkderivation-recursive-attributes}

If you pass a function to `mkDerivation`, it will call the function with an argument that represents the final state of the package: the return value of the function itself, with any overrides applied, as the function is reinvoked by any `overrideAttrs` calls. For example:
+26 −0
Original line number Diff line number Diff line
@@ -8827,6 +8827,19 @@ final: prev: {
    meta.hydraPlatforms = [ ];
  };
  mellow-nvim = buildVimPlugin {
    pname = "mellow.nvim";
    version = "0-unstable-2026-03-30";
    src = fetchFromGitHub {
      owner = "mellow-theme";
      repo = "mellow.nvim";
      rev = "6273b7f0ddf6ac2b75021b3bc0bd8b3305cfeef1";
      hash = "sha256-0w4gPMXz3ZlSgt9Pffjy1D5aplog6MD1aKvqObAhqOI=";
    };
    meta.homepage = "https://github.com/mellow-theme/mellow.nvim/";
    meta.hydraPlatforms = [ ];
  };
  messenger-nvim = buildVimPlugin {
    pname = "messenger.nvim";
    version = "0-unstable-2024-07-18";
@@ -11350,6 +11363,19 @@ final: prev: {
    meta.hydraPlatforms = [ ];
  };
  nvim-dap-docker = buildVimPlugin {
    pname = "nvim-dap-docker";
    version = "0.2.0-unstable-2026-04-15";
    src = fetchFromGitHub {
      owner = "docker";
      repo = "nvim-dap-docker";
      rev = "a7a6d22b786bff09c382d721d2d065fdd64a58ee";
      hash = "sha256-5uHdDTVdfdJk6WLM6gvVDgEndFkP9SmqrqhHzaalH/k=";
    };
    meta.homepage = "https://github.com/docker/nvim-dap-docker/";
    meta.hydraPlatforms = [ ];
  };
  nvim-dap-go = buildVimPlugin {
    pname = "nvim-dap-go";
    version = "0-unstable-2025-07-11";
+2 −0
Original line number Diff line number Diff line
@@ -678,6 +678,7 @@ https://github.com/vim-scripts/mayansmoke/,,
https://github.com/ravitemer/mcphub.nvim/,HEAD,
https://github.com/chikamichi/mediawiki.vim/,HEAD,
https://github.com/savq/melange-nvim/,,
https://github.com/mellow-theme/mellow.nvim/,HEAD,
https://github.com/lsig/messenger.nvim/,HEAD,
https://github.com/xero/miasma.nvim/,,
https://github.com/dasupradyumna/midnight.nvim/,,
@@ -872,6 +873,7 @@ https://github.com/andythigpen/nvim-coverage/,HEAD,
https://github.com/ya2s/nvim-cursorline/,,
https://codeberg.org/mfussenegger/nvim-dap/,,
https://github.com/jedrzejboczar/nvim-dap-cortex-debug/,HEAD,
https://github.com/docker/nvim-dap-docker/,HEAD,
https://github.com/leoluz/nvim-dap-go/,HEAD,
https://github.com/julianolf/nvim-dap-lldb/,HEAD,
https://codeberg.org/mfussenegger/nvim-dap-python/,HEAD,
+4 −4
Original line number Diff line number Diff line
@@ -1492,8 +1492,8 @@ let
        mktplcRef = {
          publisher = "editorconfig";
          name = "editorconfig";
          version = "0.18.1";
          hash = "sha256-pFd1CTJL3xQ3HHzQs3f4R5f6xlCghNh8Kv+3AT/Qrqo=";
          version = "0.18.2";
          hash = "sha256-y8A3D/IEvBbYSj7mgwU2/AQ1WFb6DolasGThoDz8uEo=";
        };
        meta = {
          changelog = "https://marketplace.visualstudio.com/items/EditorConfig.EditorConfig/changelog";
@@ -2308,8 +2308,8 @@ let
        mktplcRef = {
          name = "vscode-vibrancy-continued";
          publisher = "illixion";
          version = "1.1.73";
          hash = "sha256-hQKkqZi8fQoxVzgpg/JE4zPFR+ldi5eBYpgiqbx7OXo=";
          version = "1.1.75";
          hash = "sha256-49svwafMoAErwX3K/37IJ8fKx+9FgSpOqj6QPc7jpKs=";
        };
        meta = {
          downloadPage = "https://marketplace.visualstudio.com/items?itemName=illixion.vscode-vibrancy-continued";
Loading