modules: add ergodox

This enables usage of ZSA tools, such as `wally` or their online
training tool for any users that are part of `plugdev`.
This commit is contained in:
Bruno BELANYI 2021-03-07 17:47:59 +00:00
parent 5b63b70958
commit 012163eb44
3 changed files with 18 additions and 0 deletions

View file

@ -3,6 +3,7 @@
{ {
imports = [ imports = [
./ergodox.nix
./language.nix ./language.nix
./networking.nix ./networking.nix
./nix.nix ./nix.nix

16
modules/ergodox.nix Normal file
View file

@ -0,0 +1,16 @@
# ZSA keyboard udev rules
{ config, lib, ... }:
let
cfg = config.my.modules.ergodox;
in
{
options.my.modules.ergodox = with lib; {
enable = mkEnableOption "ZSA udev rules and user group configuration";
};
config = lib.mkIf cfg.enable {
hardware.keyboard.zsa.enable = true;
users.extraGroups = [ "plugdev" ];
};
}

View file

@ -19,6 +19,7 @@ in
isNormalUser = true; isNormalUser = true;
shell = pkgs.zsh; shell = pkgs.zsh;
extraGroups = groupsIfExist [ extraGroups = groupsIfExist [
"plugdev" # usage of ZSA keyboard tools
"media" # access to media files "media" # access to media files
"wheel" # `sudo` for the user. "wheel" # `sudo` for the user.
]; ];