about summary refs log tree commit diff
path: root/modules/workstation/hardware
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-07-07 18:57:34 +0000
committerAlyssa Ross <hi@alyssa.is>2019-08-13 21:59:11 +0000
commit4d4afdb420b71ab296be7e2d4b3d8109f2a27991 (patch)
tree960345c7e6c65f678bb5eed19ec53b35be3adfc3 /modules/workstation/hardware
parent457035d7a68d7a31c2630b59cb1d4b73792424eb (diff)
downloadnixlib-4d4afdb420b71ab296be7e2d4b3d8109f2a27991.tar
nixlib-4d4afdb420b71ab296be7e2d4b3d8109f2a27991.tar.gz
nixlib-4d4afdb420b71ab296be7e2d4b3d8109f2a27991.tar.bz2
nixlib-4d4afdb420b71ab296be7e2d4b3d8109f2a27991.tar.lz
nixlib-4d4afdb420b71ab296be7e2d4b3d8109f2a27991.tar.xz
nixlib-4d4afdb420b71ab296be7e2d4b3d8109f2a27991.tar.zst
nixlib-4d4afdb420b71ab296be7e2d4b3d8109f2a27991.zip
modules/hardware: reorganize
It made far more sense for Yubikey stuff to be in here. Also, there was
a lot of keyboard-related stuff, so made sense to give that its own
module.
Diffstat (limited to 'modules/workstation/hardware')
-rw-r--r--modules/workstation/hardware/default.nix21
-rw-r--r--modules/workstation/hardware/keyboard/MAPPINGS (renamed from modules/workstation/hardware/MAPPINGS)0
-rw-r--r--modules/workstation/hardware/keyboard/default.nix22
-rw-r--r--modules/workstation/hardware/keyboard/events.dyon (renamed from modules/workstation/hardware/events.dyon)0
-rw-r--r--modules/workstation/hardware/yubikey/default.nix7
5 files changed, 31 insertions, 19 deletions
diff --git a/modules/workstation/hardware/default.nix b/modules/workstation/hardware/default.nix
index 9f66bdba99c4..dfb9d6c1b7c5 100644
--- a/modules/workstation/hardware/default.nix
+++ b/modules/workstation/hardware/default.nix
@@ -1,24 +1,7 @@
-{ pkgs, config, ... }:
+{ ... }:
 
-let
-  xcfg = config.services.xserver;
-
-in
 {
-  i18n.consoleUseXkbConfig = true;
-  services.xserver.layout = "dvorak";
-  services.xserver.xkbOptions = "ctrl:nocaps,compose:menu";
-
-  environment.variables.XKB_DEFAULT_LAYOUT = xcfg.layout;
-  environment.variables.XKB_DEFAULT_OPTIONS = xcfg.xkbOptions;
-
-  services.evscript.enable = true;
-  services.evscript.script = ./events.dyon;
-
-  boot.postBootCommands = ''
-    # Remap tab to left super
-    /run/current-system/sw/bin/setkeycodes 0f 125
-  '';
+  imports = [ ./keyboard ./yubikey ];
 
   sound.enable = true;
 }
diff --git a/modules/workstation/hardware/MAPPINGS b/modules/workstation/hardware/keyboard/MAPPINGS
index 60ded39c8cf1..60ded39c8cf1 100644
--- a/modules/workstation/hardware/MAPPINGS
+++ b/modules/workstation/hardware/keyboard/MAPPINGS
diff --git a/modules/workstation/hardware/keyboard/default.nix b/modules/workstation/hardware/keyboard/default.nix
new file mode 100644
index 000000000000..d2b13640277c
--- /dev/null
+++ b/modules/workstation/hardware/keyboard/default.nix
@@ -0,0 +1,22 @@
+{ pkgs, config, ... }:
+
+let
+  xcfg = config.services.xserver;
+
+in
+{
+  i18n.consoleUseXkbConfig = true;
+  services.xserver.layout = "dvorak";
+  services.xserver.xkbOptions = "ctrl:nocaps,compose:menu";
+
+  environment.variables.XKB_DEFAULT_LAYOUT = xcfg.layout;
+  environment.variables.XKB_DEFAULT_OPTIONS = xcfg.xkbOptions;
+
+  services.evscript.enable = true;
+  services.evscript.script = ./events.dyon;
+
+  boot.postBootCommands = ''
+    # Remap tab to left super
+    /run/current-system/sw/bin/setkeycodes 0f 125
+  '';
+}
diff --git a/modules/workstation/hardware/events.dyon b/modules/workstation/hardware/keyboard/events.dyon
index 96cc15450e46..96cc15450e46 100644
--- a/modules/workstation/hardware/events.dyon
+++ b/modules/workstation/hardware/keyboard/events.dyon
diff --git a/modules/workstation/hardware/yubikey/default.nix b/modules/workstation/hardware/yubikey/default.nix
new file mode 100644
index 000000000000..7f314bd5cbee
--- /dev/null
+++ b/modules/workstation/hardware/yubikey/default.nix
@@ -0,0 +1,7 @@
+{ pkgs, ... }:
+
+{
+  services.pcscd.enable = true;
+
+  services.udev.packages = with pkgs; [ yubikey-personalization ];
+}