git: fix the config output formatting

When setting values using the `git config --set` command, git formats
the file a bit differently. This changes the output so it maps to that
format.

Differences:

* each `key = value` in a section is prefixed by a tab character
* the `=` between the key and the value is surrounded by spaces

PR #1069
This commit is contained in:
zimbatm 2020-03-05 15:57:19 +01:00 committed by Robert Helgesson
parent 71c7aaee83
commit 9a1feb5b10
No known key found for this signature in database
GPG key ID: 36BDAA14C2797E89
6 changed files with 40 additions and 37 deletions

View file

@ -22,7 +22,7 @@ let
# generation for multiple ini values
mkKeyValue = k: v:
let mkKeyValue = generators.mkKeyValueDefault { } " = " k;
in concatStringsSep "\n" (map mkKeyValue (toList v));
in concatStringsSep "\n" (map (kv: " " + mkKeyValue kv) (toList v));
# converts { a.b.c = 5; } to { "a.b".c = 5; } for toINI
gitFlattenAttrs = let

View file

@ -0,0 +1,3 @@
[user]
email = user@example.org
name = John Doe

View file

@ -15,8 +15,8 @@ let
pkgs.substituteAll {
src = path;
git_include_path =
pkgs.writeText "contents" (generators.toINI { } gitInclude);
git_include_path = pkgs.writeText "contents"
(builtins.readFile ./git-expected-include.conf);
};
in {