aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2022-04-08 08:31:15 -0700
committerFranck Cuny <franck@fcuny.net>2022-04-08 08:31:15 -0700
commitab204364dfeefc4069a37e1070ee8009f34ecf4d (patch)
tree304ee131838ab62f545e524c1d954e693ef6687a
parentmodules: add a few more (diff)
downloadinfra-ab204364dfeefc4069a37e1070ee8009f34ecf4d.tar.gz
profiles: create a few new profiles
Diffstat (limited to '')
-rw-r--r--profiles/default.nix2
-rw-r--r--profiles/desktop/default.nix19
-rw-r--r--profiles/gtk/default.nix13
-rw-r--r--profiles/trusted/default.nix16
-rw-r--r--profiles/wm/default.nix18
5 files changed, 67 insertions, 1 deletions
diff --git a/profiles/default.nix b/profiles/default.nix
index 0e5d948..8cf62de 100644
--- a/profiles/default.nix
+++ b/profiles/default.nix
@@ -1 +1 @@
-{ ... }: { imports = [ ./laptop ]; }
+{ ... }: { imports = [ ./laptop ./gtk ./trusted ./wm ./desktop ]; }
diff --git a/profiles/desktop/default.nix b/profiles/desktop/default.nix
new file mode 100644
index 0000000..0ad6e12
--- /dev/null
+++ b/profiles/desktop/default.nix
@@ -0,0 +1,19 @@
+{ config, lib, ... }:
+let cfg = config.my.profiles.desktop;
+in {
+ options.my.profiles.desktop = with lib; {
+ enable = mkEnableOption "desktop profile";
+ };
+ config = lib.mkIf cfg.enable {
+ my.systems.fonts.enable = true;
+ my.services.gnome.enable = true;
+ my.programs.sway.enable = true;
+ my.home.emacs.enable = true;
+ my.home.firefox.enable = true;
+ my.home.terminal.program = "alacritty";
+ my.home.xdg.enable = true;
+ my.profiles.gtk.enable = true;
+ my.profiles.trusted.enable = true;
+ my.profiles.wm.windowManager = "sway";
+ };
+}
diff --git a/profiles/gtk/default.nix b/profiles/gtk/default.nix
new file mode 100644
index 0000000..c84832b
--- /dev/null
+++ b/profiles/gtk/default.nix
@@ -0,0 +1,13 @@
+{ config, lib, ... }:
+let cfg = config.my.profiles.gtk;
+in {
+ options.my.profiles.gtk = with lib; {
+ enable = mkEnableOption "gtk profile";
+ };
+ config = lib.mkIf cfg.enable {
+ # Allow setting GTK configuration using home-manager
+ programs.dconf.enable = true;
+ # GTK theme configuration
+ my.home.gtk.enable = true;
+ };
+}
diff --git a/profiles/trusted/default.nix b/profiles/trusted/default.nix
new file mode 100644
index 0000000..9567ddb
--- /dev/null
+++ b/profiles/trusted/default.nix
@@ -0,0 +1,16 @@
+{ config, lib, ... }:
+let cfg = config.my.profiles.trusted;
+in {
+ options.my.profiles.trusted = with lib; {
+ enable = mkEnableOption "trusted profile";
+ };
+ config = lib.mkIf cfg.enable {
+ my.home.gpg = {
+ enable = true;
+ pinentry = "gnome3";
+ defaultKey = "23348B57F01D4234B5CFBA0923208AC01EB6EEA1";
+ };
+ my.home.mail.enable = true;
+ my.home.pass.enable = true;
+ };
+}
diff --git a/profiles/wm/default.nix b/profiles/wm/default.nix
new file mode 100644
index 0000000..7b1fe39
--- /dev/null
+++ b/profiles/wm/default.nix
@@ -0,0 +1,18 @@
+{ config, lib, ... }:
+let cfg = config.my.profiles.wm;
+in {
+ options.my.profiles.wm = with lib; {
+ windowManager = mkOption {
+ type = with types; nullOr (enum [ "sway" ]);
+ default = null;
+ example = "sway";
+ description = "Which window manager to use";
+ };
+ };
+ config = lib.mkMerge [
+ (lib.mkIf (cfg.windowManager == "sway") {
+ # Enable sway
+ my.home.wm.windowManager = "sway";
+ })
+ ];
+}