Commit 9256404e authored by Martin Weinelt's avatar Martin Weinelt
Browse files

Merge remote-tracking branch 'origin/staging-next' into staging

parents fe21b9cc f32cee9f
Loading
Loading
Loading
Loading
+2 −48
Original line number Diff line number Diff line
@@ -11,58 +11,12 @@ meta = with lib; {
  '';
  homepage = "https://www.gnu.org/software/hello/manual/";
  license = licenses.gpl3Plus;
  maintainers = [ maintainers.eelco ];
  maintainers = with maintainers; [ eelco ];
  platforms = platforms.all;
};
```

Meta-attributes are not passed to the builder of the package. Thus, a change to a meta-attribute doesn’t trigger a recompilation of the package. The value of a meta-attribute must be a string.

The meta-attributes of a package can be queried from the command-line using `nix-env`:

```ShellSession
$ nix-env -qa hello --json
{
    "hello": {
        "meta": {
            "description": "A program that produces a familiar, friendly greeting",
            "homepage": "https://www.gnu.org/software/hello/manual/",
            "license": {
                "fullName": "GNU General Public License version 3 or later",
                "shortName": "GPLv3+",
                "url": "http://www.fsf.org/licensing/licenses/gpl.html"
            },
            "longDescription": "GNU Hello is a program that prints \"Hello, world!\" when you run it.\nIt is fully customizable.\n",
            "maintainers": [
                "Ludovic Court\u00e8s <ludo@gnu.org>"
            ],
            "platforms": [
                "i686-linux",
                "x86_64-linux",
                "armv5tel-linux",
                "armv7l-linux",
                "mips32-linux",
                "x86_64-darwin",
                "i686-cygwin",
                "i686-freebsd13",
                "x86_64-freebsd13",
                "i686-openbsd",
                "x86_64-openbsd"
            ],
            "position": "/home/user/dev/nixpkgs/pkgs/applications/misc/hello/default.nix:14"
        },
        "name": "hello-2.9",
        "system": "x86_64-linux"
    }
}
```

`nix-env` knows about the `description` field specifically:

```ShellSession
$ nix-env -qa hello --description
hello-2.3  A program that produces a familiar, friendly greeting
```
Meta-attributes are not passed to the builder of the package. Thus, a change to a meta-attribute doesn’t trigger a recompilation of the package.

## Standard meta-attributes {#sec-standard-meta-attributes}

+10 −0
Original line number Diff line number Diff line
@@ -10887,6 +10887,16 @@
      fingerprint = "5D69 CF04 B7BC 2BC1 A567  9267 00BC F29B 3208 0700";
    }];
  };
  phdcybersec = {
    name = "Léo Lavaur";
    email = "phdcybersec@pm.me";

    github = "phdcybersec";
    githubId = 82591009;
    keys = [{
      fingerprint = "7756 E88F 3C6A 47A5 C5F0  CDFB AB54 6777 F93E 20BF";
    }];
  };
  phfroidmont = {
    name = "Paul-Henri Froidmont";
    email = "nix.contact-j9dw4d@froidmont.org";
+10 −10
Original line number Diff line number Diff line
@@ -1124,9 +1124,9 @@ services.github-runner.serviceOverrides.SupplementaryGroups = [
          <listitem>
            <para>
              Previously, the options
              <xref linkend="opt-services.grafana.provision.datasources" />
              <link linkend="opt-services.grafana.provision.datasources">services.grafana.provision.datasources</link>
              and
              <xref linkend="opt-services.grafana.provision.dashboards" />
              <link linkend="opt-services.grafana.provision.dashboards">services.grafana.provision.dashboards</link>
              expected lists of datasources or dashboards for the
              <link xlink:href="https://grafana.com/docs/grafana/latest/administration/provisioning/">declarative
              provisioning</link>.
@@ -1139,14 +1139,14 @@ services.github-runner.serviceOverrides.SupplementaryGroups = [
                <para>
                  <emphasis role="strong">datasources</emphasis>, please
                  rename your declarations to
                  <xref linkend="opt-services.grafana.provision.datasources.settings.datasources" />.
                  <link linkend="opt-services.grafana.provision.datasources.settings.datasources">services.grafana.provision.datasources.settings.datasources</link>.
                </para>
              </listitem>
              <listitem>
                <para>
                  <emphasis role="strong">dashboards</emphasis>, please
                  rename your declarations to
                  <xref linkend="opt-services.grafana.provision.dashboards.settings.providers" />.
                  <link linkend="opt-services.grafana.provision.dashboards.settings.providers">services.grafana.provision.dashboards.settings.providers</link>.
                </para>
              </listitem>
            </itemizedlist>
@@ -1159,9 +1159,9 @@ services.github-runner.serviceOverrides.SupplementaryGroups = [
                  It’s possible to declare the
                  <literal>apiVersion</literal> of your dashboards and
                  datasources by
                  <xref linkend="opt-services.grafana.provision.datasources.settings.apiVersion" />
                  <link linkend="opt-services.grafana.provision.datasources.settings.apiVersion">services.grafana.provision.datasources.settings.apiVersion</link>
                  (or
                  <xref linkend="opt-services.grafana.provision.dashboards.settings.apiVersion" />).
                  <link linkend="opt-services.grafana.provision.dashboards.settings.apiVersion">services.grafana.provision.dashboards.settings.apiVersion</link>).
                </para>
              </listitem>
              <listitem>
@@ -1169,9 +1169,9 @@ services.github-runner.serviceOverrides.SupplementaryGroups = [
                  Instead of declaring datasources and dashboards in
                  pure Nix, it’s also possible to specify configuration
                  files (or directories) with YAML instead using
                  <xref linkend="opt-services.grafana.provision.datasources.path" />
                  <link linkend="opt-services.grafana.provision.datasources.path">services.grafana.provision.datasources.path</link>
                  (or
                  <xref linkend="opt-services.grafana.provision.dashboards.path" />.
                  <link linkend="opt-services.grafana.provision.dashboards.path">services.grafana.provision.dashboards.path</link>.
                  This is useful when having provisioning files from
                  non-NixOS Grafana instances that you also want to
                  deploy to NixOS.
@@ -1186,9 +1186,9 @@ services.github-runner.serviceOverrides.SupplementaryGroups = [
              </listitem>
              <listitem>
                <para>
                  <xref linkend="opt-services.grafana.provision.notifiers" />
                  <link linkend="opt-services.grafana.provision.notifiers">services.grafana.provision.notifiers</link>
                  is not affected by this change because this feature is
                  deprecated by Grafana and will probably removed in
                  deprecated by Grafana and will probably be removed in
                  Grafana 10. It’s recommended to use
                  <literal>services.grafana.provision.alerting.contactPoints</literal>
                  instead.
+10 −10
Original line number Diff line number Diff line
@@ -340,32 +340,32 @@ In addition to numerous new and upgraded packages, this release includes the fol
    Alternatively you can also set all your values from `extraOptions` to
    `systemd.services.grafana.environment`, make sure you don't forget to add
    the `GF_` prefix though!
  - Previously, the options [](#opt-services.grafana.provision.datasources) and
    [](#opt-services.grafana.provision.dashboards) expected lists of datasources
  - Previously, the options [services.grafana.provision.datasources](#opt-services.grafana.provision.datasources) and
    [services.grafana.provision.dashboards](#opt-services.grafana.provision.dashboards) expected lists of datasources
    or dashboards for the [declarative provisioning](https://grafana.com/docs/grafana/latest/administration/provisioning/).

    To declare lists of
    - **datasources**, please rename your declarations to [](#opt-services.grafana.provision.datasources.settings.datasources).
    - **dashboards**, please rename your declarations to [](#opt-services.grafana.provision.dashboards.settings.providers).
    - **datasources**, please rename your declarations to [services.grafana.provision.datasources.settings.datasources](#opt-services.grafana.provision.datasources.settings.datasources).
    - **dashboards**, please rename your declarations to [services.grafana.provision.dashboards.settings.providers](#opt-services.grafana.provision.dashboards.settings.providers).

    This change was made to support more features for that:

    - It's possible to declare the `apiVersion` of your dashboards and datasources
      by [](#opt-services.grafana.provision.datasources.settings.apiVersion) (or
      [](#opt-services.grafana.provision.dashboards.settings.apiVersion)).
      by [services.grafana.provision.datasources.settings.apiVersion](#opt-services.grafana.provision.datasources.settings.apiVersion) (or
      [services.grafana.provision.dashboards.settings.apiVersion](#opt-services.grafana.provision.dashboards.settings.apiVersion)).

    - Instead of declaring datasources and dashboards in pure Nix, it's also possible
      to specify configuration files (or directories) with YAML instead using
      [](#opt-services.grafana.provision.datasources.path) (or
      [](#opt-services.grafana.provision.dashboards.path). This is useful when having
      [services.grafana.provision.datasources.path](#opt-services.grafana.provision.datasources.path) (or
      [services.grafana.provision.dashboards.path](#opt-services.grafana.provision.dashboards.path). This is useful when having
      provisioning files from non-NixOS Grafana instances that you also want to
      deploy to NixOS.

      __Note:__ secrets from these files will be leaked into the store unless you use a
      [**file**-provider or env-var](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#file-provider) for secrets!

    - [](#opt-services.grafana.provision.notifiers) is not affected by this change because
      this feature is deprecated by Grafana and will probably removed in Grafana 10.
    - [services.grafana.provision.notifiers](#opt-services.grafana.provision.notifiers) is not affected by this change because
      this feature is deprecated by Grafana and will probably be removed in Grafana 10.
      It's recommended to use `services.grafana.provision.alerting.contactPoints` instead.

- The `services.grafana.provision.alerting` option was added. It includes suboptions for every alerting-related objects (with the exception of `notifiers`), which means it's now possible to configure modern Grafana alerting declaratively.
+3 −0
Original line number Diff line number Diff line
@@ -33,6 +33,8 @@ with lib;
      ffmpeg_4 = super.ffmpeg_4-headless;
      ffmpeg_5 = super.ffmpeg_5-headless;
      gobject-introspection = super.gobject-introspection.override { x11Support = false; };
      imagemagick = super.imagemagick.override { libX11Support = false; libXtSupport = false; };
      imagemagickBig = super.imagemagickBig.override { libX11Support = false; libXtSupport = false; };
      libva = super.libva-minimal;
      networkmanager-fortisslvpn = super.networkmanager-fortisslvpn.override { withGnome = false; };
      networkmanager-iodine = super.networkmanager-iodine.override { withGnome = false; };
@@ -42,6 +44,7 @@ with lib;
      networkmanager-sstp = super.networkmanager-vpnc.override { withGnome = false; };
      networkmanager-vpnc = super.networkmanager-vpnc.override { withGnome = false; };
      qemu = super.qemu.override { gtkSupport = false; spiceSupport = false; sdlSupport = false; };
      zbar = super.zbar.override { enableVideo = false; withXorg = false; };
    }));
  };
}
Loading