3
0
Fork 0
forked from mirrors/nixpkgs

nixos/hardware: clean up "with lib;" for keyboards

This commit is contained in:
Peter Hoeg 2023-02-15 11:34:22 +08:00
parent 2a97c0d985
commit 7dc0f77ecf
3 changed files with 15 additions and 17 deletions

View file

@ -1,16 +1,16 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.hardware.keyboard.teck;
inherit (lib) mdDoc mkEnableOption mkIf;
in
{
options.hardware.keyboard.teck = {
enable = mkEnableOption (lib.mdDoc "non-root access to the firmware of TECK keyboards");
enable = mkEnableOption (mdDoc "non-root access to the firmware of TECK keyboards");
};
config = mkIf cfg.enable {
services.udev.packages = [ pkgs.teck-udev-rules ];
};
}

View file

@ -1,13 +1,14 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.hardware.keyboard.uhk;
inherit (lib) mdDoc mkEnableOption mkIf;
in
{
options.hardware.keyboard.uhk = {
enable = mkEnableOption (lib.mdDoc ''
non-root access to the firmware of UHK keyboards.
enable = mkEnableOption (mdDoc ''
non-root access to the firmware of UHK keyboards.
You need it when you want to flash a new firmware on the keyboard.
Access to the keyboard is granted to users in the "input" group.
You may want to install the uhk-agent package.

View file

@ -1,21 +1,18 @@
{ config, lib, pkgs, ... }:
let
inherit (lib) mkOption mkIf types;
cfg = config.hardware.keyboard.zsa;
inherit (lib) mkEnableOption mkIf mdDoc;
in
{
options.hardware.keyboard.zsa = {
enable = mkOption {
type = types.bool;
default = false;
description = lib.mdDoc ''
Enables udev rules for keyboards from ZSA like the ErgoDox EZ, Planck EZ and Moonlander Mark I.
You need it when you want to flash a new configuration on the keyboard
or use their live training in the browser.
You may want to install the wally-cli package.
'';
};
enable = mkEnableOption (mdDoc ''
udev rules for keyboards from ZSA like the ErgoDox EZ, Planck EZ and Moonlander Mark I.
You need it when you want to flash a new configuration on the keyboard
or use their live training in the browser.
You may want to install the wally-cli package.
'');
};
config = mkIf cfg.enable {