summaryrefslogtreecommitdiff
path: root/darwinConfigurations
diff options
context:
space:
mode:
authorAzat Bahawi <azat@bahawi.net>2022-12-17 16:39:09 +0300
committerAzat Bahawi <azat@bahawi.net>2022-12-17 16:39:09 +0300
commit8f137c28230623259a964484adcf31fe00756594 (patch)
tree82bce6a13fda125087cf6d9dc80aa91d9230d6c4 /darwinConfigurations
parent3229e56e0d3620ddc735edcfbbefb167efa3b23f (diff)
2022-12-17
Diffstat (limited to 'darwinConfigurations')
-rw-r--r--darwinConfigurations/default.nix35
-rw-r--r--darwinConfigurations/mairon/default.nix22
2 files changed, 57 insertions, 0 deletions
diff --git a/darwinConfigurations/default.nix b/darwinConfigurations/default.nix
new file mode 100644
index 0000000..612c8b0
--- /dev/null
+++ b/darwinConfigurations/default.nix
@@ -0,0 +1,35 @@
+{
+ inputs,
+ lib,
+}:
+with lib; let
+ mkConfiguration = name: {
+ modules ? [],
+ configuration ? ./${name},
+ this ? my.configurations.${name},
+ extraSpecialArgs ? {
+ localUsername = my.username;
+ localHostname = this.hostname;
+ },
+ }:
+ nameValuePair name (inputs.darwin.lib.darwinSystem {
+ inherit (this) system;
+ modules =
+ modules
+ ++ attrValues inputs.self.modules
+ ++ attrValues inputs.self.darwinModules
+ ++ optional (configuration != null) (import configuration);
+ specialArgs =
+ {
+ inherit inputs lib this;
+ }
+ // extraSpecialArgs;
+ });
+in
+ mapAttrs' mkConfiguration {
+ mairon.extraSpecialArgs = {
+ # These values are managed by my employer.
+ localUsername = "username";
+ localHostname = "hostname";
+ };
+ }
diff --git a/darwinConfigurations/mairon/default.nix b/darwinConfigurations/mairon/default.nix
new file mode 100644
index 0000000..d574a08
--- /dev/null
+++ b/darwinConfigurations/mairon/default.nix
@@ -0,0 +1,22 @@
+{
+ config,
+ lib,
+ this,
+ ...
+}:
+with lib; {
+ nixfiles.modules.vscode.enable = true;
+
+ # TODO Make this per-directory/per-remote.
+ hm.programs.git = {
+ userName = mkForce "Firstname Lastname";
+ userEmail = mkForce "username@work.com";
+ signing.key = mkForce "@PGP_KEY@";
+ extraConfig."url \"git@gitlab.services.work.com:\"".insteadOf = "work:";
+ };
+
+ networking = {
+ computerName = mkForce this.hostname;
+ hostName = mkForce null;
+ };
+}