Unverified Commit 1e49b301 authored by Alexander Bantyev's avatar Alexander Bantyev Committed by GitHub
Browse files

Merge pull request #164068 from cab404/master

os-release: preserve fields from being excessively quoted
parents e543cbb7 0c68e23f
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -8,8 +8,12 @@ let
    concatStringsSep mapAttrsToList toLower
    literalExpression mkRenamedOptionModule mkDefault mkOption trivial types;

  needsEscaping = s: null != builtins.match "[a-zA-Z0-9]+" s;
  escapeIfNeccessary = s: if needsEscaping s then s else ''"${lib.escape [ "\$" "\"" "\\" "\`" ] s}"'';
  attrsToText = attrs:
    concatStringsSep "\n" (mapAttrsToList (n: v: ''${n}="${toString v}"'') attrs);
    concatStringsSep "\n" (
      mapAttrsToList (n: v: ''${n}=${escapeIfNeccessary (toString v)}'') attrs
    );

in
{