aboutsummaryrefslogtreecommitdiff
path: root/modules/workstation/hardware
diff options
context:
space:
mode:
Diffstat (limited to 'modules/workstation/hardware')
-rw-r--r--modules/workstation/hardware/ckb/default.nix10
-rw-r--r--modules/workstation/hardware/default.nix16
-rw-r--r--modules/workstation/hardware/xkblayout/default.nix16
-rw-r--r--modules/workstation/hardware/yubikey/default.nix14
4 files changed, 56 insertions, 0 deletions
diff --git a/modules/workstation/hardware/ckb/default.nix b/modules/workstation/hardware/ckb/default.nix
new file mode 100644
index 00000000000..88d8592d48a
--- /dev/null
+++ b/modules/workstation/hardware/ckb/default.nix
@@ -0,0 +1,10 @@
+/* CORSAIR KEYBOARD SUPPORT
+ *
+ * Setup the K65 corsair keyboard daemon
+ * with themes properly
+ */
+{ config, ... }:
+
+{
+ (builtins.abort "CKB module not implemented!")
+}
diff --git a/modules/workstation/hardware/default.nix b/modules/workstation/hardware/default.nix
new file mode 100644
index 00000000000..28f684b5906
--- /dev/null
+++ b/modules/workstation/hardware/default.nix
@@ -0,0 +1,16 @@
+/* HARDWARE SUPPORT MODULE
+ *
+ * This module doesn't include ALL submodules because
+ * some are only relevant for specific platforms. Still
+ * the general support should be provided by the
+ * WORKSTATION module, not be bound to be device specific
+ */
+
+{ ... }:
+
+{
+ imports = [
+ ./yubikey
+ ./xkblayout
+ ];
+}
diff --git a/modules/workstation/hardware/xkblayout/default.nix b/modules/workstation/hardware/xkblayout/default.nix
new file mode 100644
index 00000000000..1fa51cc0527
--- /dev/null
+++ b/modules/workstation/hardware/xkblayout/default.nix
@@ -0,0 +1,16 @@
+/* KEYBOARD LAYOUT MODULE
+ *
+ * (INCOMPLETE) Setup keyboard layout
+ * and overrides. Currently this is
+ * mostly handled by GRAPHICS/I3 but
+ * should maybe be moved here?
+ */
+{ pkgs, config, ... }:
+
+{
+ i18n.consoleUseXkbConfig = true;
+ services.xserver.layout = "us";
+
+ # environment.variables.XKB_DEFAULT_LAYOUT = xcfg.layout;
+ # environment.variables.XKB_DEFAULT_OPTIONS = xcfg.xkbOptions;
+}
diff --git a/modules/workstation/hardware/yubikey/default.nix b/modules/workstation/hardware/yubikey/default.nix
new file mode 100644
index 00000000000..851f9acea39
--- /dev/null
+++ b/modules/workstation/hardware/yubikey/default.nix
@@ -0,0 +1,14 @@
+{ pkgs, ... }:
+
+{
+ services.udev.packages = with pkgs; [ yubikey-personalization ];
+
+ # FIXME: Can I remove these?
+ # Previously these rules were required to make
+ # Yubikey support work on `uwu`, but maybe this
+ # is redundant with special udev rules?
+ environment.systemPackages = with pkgs; [
+ yubikey-manager
+ yubikey-personalization
+ ];
+}