4 ms·
Thank you for this! I have exactly the same problem and was waiting for the solution to present itself, which it now has. Aside: I use NixOS with home-manager
by guthriej 2y ago
Thank you for this! I have exactly the same problem and was waiting for the solution to present itself, which it now has.
Aside: I use NixOS with home-manager (on linux and mac), which makes this trivial [1]. Added the following lines to my home-manager config:
programs.git = {
enable = true;
...
includes = [
{
condition = "hasconfig:remote.*.url:git@github.com:<work>/**";
contents = {
user.email = "<work email>";
};
}
];
}
[1]: https://nix-community.github.io/home-manager/options.xhtml#opt-programs.git.includes https://nix-community.github.io/home-manager/options.xhtml#o...
- SpaceNugget 2y agoThat certainly looks less trivial than writing it directly in your .gitconfig file. It's the same condition and setting as what's in the article, but now with a build/templating stage and a new programming language to learn with unusual syntax.
- guthriej 2y agoAgree on your comment re build/templating and new language. Nix is weird and NixOS is complicated. Nonetheless I have convinced myself that I like it. In TFA the author must set up two configurations: the .gitconfig, and the file which is included in the .gitconfig. Home-manager does this automatically through one config parameter. That is what I was pleased with and wanted to share.
- necovek 2y agoWhile I don't use NixOS or home-manager, I would imagine this provides some extra value: i.e. config is versioned or easy to move between machines. Curiosity got the better of me so I looked it up at https://nix-community.github.io/home-manager/ https://nix-community.github.io/home-manager/ and it indeed does purport to provide benefits I guessed at and then some. Whether that's better than just manually managing things yourself is altogether a different matter.