hardware/form: add form module with common forms

This commit is contained in:
Infinidoge 2021-11-21 00:24:57 -05:00
parent fb6e71dadc
commit 9082dd0de4
7 changed files with 50 additions and 17 deletions

View file

@ -30,7 +30,7 @@
modules = {
hardware = {
audio.enable = true;
form.desktop = true;
};
};

View file

@ -8,7 +8,6 @@
networking.wireless
(with hardware; [
laptop
gpu.intel
wireless
])
@ -47,7 +46,7 @@
modules = {
hardware = {
audio.enable = true;
form.laptop = true;
};
};

View file

@ -8,4 +8,6 @@
hardware.gpu.nvidia
];
};
modules.hardware.form.server = true;
}

View file

@ -29,5 +29,7 @@
# networking.interfaces.wlp170s0.useDHCP = true;
networking.interfaces.enp39s0.useDHCP = true;
modules.hardware.form.portable = true;
system.stateVersion = "21.11";
}

View file

@ -10,7 +10,6 @@
(with hardware; [
gpu.amdgpu
laptop
wireless
])
@ -27,7 +26,7 @@
modules = {
hardware = {
audio.enable = true;
form.laptop = true;
};
};

View file

@ -0,0 +1,43 @@
{ config, lib, ... }:
with lib;
with lib.hlissner;
let
cfg = config.modules.hardware.form;
in
{
options.modules.hardware.form = with types; {
desktop = mkBoolOpt false;
laptop = mkBoolOpt false;
portable = mkBoolOpt false;
raspi = mkBoolOpt false;
server = mkBoolOpt false;
};
config = mkMerge [
(mkIf cfg.desktop {
modules.hardware.audio.enable = true;
})
(mkIf cfg.laptop {
modules.hardware.audio.enable = true;
services = {
xserver.libinput = {
enable = true;
touchpad.naturalScrolling = true;
};
logind.lidSwitch = "ignore";
};
environment = {
variables.LAPTOP = "True";
systemPackages = with pkgs; [ acpi ];
};
})
(mkIf cfg.portable { })
(mkIf cfg.raspi { })
(mkIf cfg.server { })
];
}

View file

@ -1,12 +0,0 @@
{ pkgs, ... }: {
services.xserver.libinput = {
enable = true;
touchpad.naturalScrolling = true;
};
environment.variables.LAPTOP = "True";
services.logind.lidSwitch = "ignore";
environment.systemPackages = with pkgs; [ acpi ];
}