Unverified Commit 9b085c43 authored by github-actions[bot]'s avatar github-actions[bot] Committed by GitHub
Browse files

Merge staging-next into staging

parents e2cb76e4 f018e44b
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -115,8 +115,8 @@ nixos/modules/installer/tools/nix-fallback-paths.nix @raitobezarius
/nixos/modules/system/boot/loader/systemd-boot      @JulienMalka

# Images and installer media
/nixos/modules/installer/cd-dvd/            @samueldr
/nixos/modules/installer/sd-card/           @samueldr
/nixos/modules/installer/cd-dvd/
/nixos/modules/installer/sd-card/

# Updaters
## update.nix
@@ -313,10 +313,10 @@ nixos/modules/services/misc/forgejo.nix @adamcstephens @bendlas @emilylange
pkgs/by-name/fo/forgejo/package.nix     @adamcstephens @bendlas @emilylange

# Dotnet
/pkgs/build-support/dotnet                  @IvarWithoutBones
/pkgs/development/compilers/dotnet          @IvarWithoutBones
/pkgs/test/dotnet                           @IvarWithoutBones
/doc/languages-frameworks/dotnet.section.md @IvarWithoutBones
/pkgs/build-support/dotnet                  @corngood
/pkgs/development/compilers/dotnet          @corngood
/pkgs/test/dotnet                           @corngood
/doc/languages-frameworks/dotnet.section.md @corngood

# Node.js
/pkgs/build-support/node/build-npm-package      @lilyinstarlight @winterqt
+71 −36
Original line number Diff line number Diff line
@@ -7,8 +7,6 @@ rec {
    This helps protect against malformed command lines and also to reduce
    boilerplate related to command-line construction for simple use cases.

    `toGNUCommandLine` returns a list of nix strings.

    `toGNUCommandLineShell` returns an escaped shell string.


@@ -16,11 +14,11 @@ rec {

    `options`

    : 1\. Function argument
    : How to format the arguments, see `toGNUCommandLine`

    `attrs`

    : 2\. Function argument
    : The attributes to transform into arguments.


    # Examples
@@ -28,7 +26,7 @@ rec {
    ## `lib.cli.toGNUCommandLineShell` usage example

    ```nix
    cli.toGNUCommandLine {} {
    cli.toGNUCommandLineShell {} {
      data = builtins.toJSON { id = 0; };
      X = "PUT";
      retry = 3;
@@ -37,16 +35,67 @@ rec {
      silent = false;
      verbose = true;
    }
    => [
      "-X" "PUT"
      "--data" "{\"id\":0}"
      "--retry" "3"
      "--url" "https://example.com/foo"
      "--url" "https://example.com/bar"
      "--verbose"
    ]
    => "'-X' 'PUT' '--data' '{\"id\":0}' '--retry' '3' '--url' 'https://example.com/foo' '--url' 'https://example.com/bar' '--verbose'";
    ```

    cli.toGNUCommandLineShell {} {
    :::
  */
  toGNUCommandLineShell =
    options: attrs: lib.escapeShellArgs (toGNUCommandLine options attrs);

  /**
    Automatically convert an attribute set to a list of command-line options.

    `toGNUCommandLine` returns a list of string arguments.


    # Inputs

    `options`

    : How to format the arguments, see below.

    `attrs`

    : The attributes to transform into arguments.

    # Options

    `mkOptionName`

    : How to string-format the option name;
    By default one character is a short option (`-`), more than one characters a long option (`--`).

    `mkBool`

    : How to format a boolean value to a command list;
    By default it’s a flag option (only the option name if true, left out completely if false).

    `mkList`

    : How to format a list value to a command list;
    By default the option name is repeated for each value and `mkOption` is applied to the values themselves.


    `mkOption`

    : How to format any remaining value to a command list;
    On the toplevel, booleans and lists are handled by `mkBool` and `mkList`, though they can still appear as values of a list.
    By default, everything is printed verbatim and complex types are forbidden (lists, attrsets, functions). `null` values are omitted.

    `optionValueSeparator`

    : How to separate an option from its flag;
    By default, there is no separator, so option `-c` and value `5` would become ["-c" "5"].
    This is useful if the command requires equals, for example, `-c=5`.


    # Examples
    :::{.example}
    ## `lib.cli.toGNUCommandLine` usage example

    ```nix
    cli.toGNUCommandLine {} {
      data = builtins.toJSON { id = 0; };
      X = "PUT";
      retry = 3;
@@ -55,38 +104,28 @@ rec {
      silent = false;
      verbose = true;
    }
    => "'-X' 'PUT' '--data' '{\"id\":0}' '--retry' '3' '--url' 'https://example.com/foo' '--url' 'https://example.com/bar' '--verbose'";
    => [
      "-X" "PUT"
      "--data" "{\"id\":0}"
      "--retry" "3"
      "--url" "https://example.com/foo"
      "--url" "https://example.com/bar"
      "--verbose"
    ]
    ```

    :::
  */
  toGNUCommandLineShell =
    options: attrs: lib.escapeShellArgs (toGNUCommandLine options attrs);

  toGNUCommandLine = {
    # how to string-format the option name;
    # by default one character is a short option (`-`),
    # more than one characters a long option (`--`).
    mkOptionName ?
      k: if builtins.stringLength k == 1
          then "-${k}"
          else "--${k}",

    # how to format a boolean value to a command list;
    # by default it’s a flag option
    # (only the option name if true, left out completely if false).
    mkBool ? k: v: lib.optional v (mkOptionName k),

    # how to format a list value to a command list;
    # by default the option name is repeated for each value
    # and `mkOption` is applied to the values themselves.
    mkList ? k: v: lib.concatMap (mkOption k) v,

    # how to format any remaining value to a command list;
    # on the toplevel, booleans and lists are handled by `mkBool` and `mkList`,
    # though they can still appear as values of a list.
    # By default, everything is printed verbatim and complex types
    # are forbidden (lists, attrsets, functions). `null` values are omitted.
    mkOption ?
      k: v: if v == null
            then []
@@ -95,10 +134,6 @@ rec {
            else
              [ "${mkOptionName k}${optionValueSeparator}${lib.generators.mkValueStringDefault {} v}" ],

    # how to separate an option from its flag;
    # by default, there is no separator, so option `-c` and value `5`
    # would become ["-c" "5"].
    # This is useful if the command requires equals, for example, `-c=5`.
    optionValueSeparator ? null
    }:
    options:
+18 −6
Original line number Diff line number Diff line
@@ -97,6 +97,12 @@
    githubId = 9675338;
    keys = [ { fingerprint = "F466 A548 AD3F C1F1 8C88  4576 8702 7528 B006 D66D"; } ];
  };
  _0x5a4 = {
    email = "bej86nug@hhu.de";
    name = "0x5a4";
    github = "0x5a4";
    githubId = 54070204;
  };
  _0xB10C = {
    email = "nixpkgs@b10c.me";
    name = "0xB10C";
@@ -2663,6 +2669,12 @@
    githubId = 37907;
    name = "Julian Stecklina";
  };
  bloeckchengrafik = {
    email = "christian.bergschneider@gmx.de";
    github = "Bloeckchengrafik";
    githubId = 37768199;
    name = "Christian Bergschneider";
  };
  bloveless = {
    email = "brennon.loveless@gmail.com";
    github = "bloveless";
@@ -8751,12 +8763,6 @@
    githubId = 650601;
    name = "Ivan Tkatchev";
  };
  ivar = {
    email = "ivar.scholten@protonmail.com";
    github = "IvarWithoutBones";
    githubId = 41924494;
    name = "Ivar";
  };
  ivarmedi = {
    email = "ivar@larsson.me";
    github = "ivarmedi";
@@ -13343,6 +13349,12 @@
    githubId = 5698461;
    name = "Maciej Kazulak";
  };
  mkez = {
    email = "matias.zwinger+nix@protonmail.com";
    github = "mk3z";
    githubId = 52108954;
    name = "Matias Zwinger";
  };
  mkf = {
    email = "m@mikf.pl";
    github = "mkf";
+0 −1
Original line number Diff line number Diff line
@@ -192,7 +192,6 @@ with lib.maintainers;

  dotnet = {
    members = [
      ivar
      mdarocha
      corngood
      ggg
+5 −5
Original line number Diff line number Diff line
@@ -12,13 +12,13 @@ let
      reconnect_to_dispatcher = true;
    };
    beacon_db = {
      connection = "/var/lib/scion-control/control.beacon.db";
      connection = "/run/scion-control/control.beacon.db";
    };
    path_db = {
      connection = "/var/lib/scion-control/control.path.db";
      connection = "/run/scion-control/control.path.db";
    };
    trust_db = {
      connection = "/var/lib/scion-control/control.trust.db";
      connection = "/run/scion-control/control.trust.db";
    };
    log.console = {
      level = "info";
@@ -35,7 +35,7 @@ in
      example = literalExpression ''
        {
          path_db = {
            connection = "/var/lib/scion-control/control.path.db";
            connection = "/run/scion-control/control.path.db";
          };
          log.console = {
            level = "info";
@@ -62,7 +62,7 @@ in
        DynamicUser = true;
        Restart = "on-failure";
        BindPaths = [ "/dev/shm:/run/shm" ];
        StateDirectory = "scion-control";
        RuntimeDirectory = "scion-control";
      };
    };
  };
Loading