136 lines
2.9 KiB
Nix
136 lines
2.9 KiB
Nix
{
|
|
inputs,
|
|
pkgs,
|
|
lib,
|
|
perSystem,
|
|
...
|
|
}: {
|
|
imports = with inputs; [
|
|
nix-bwrapper.nixosModules.default
|
|
self.modules.nixosPrograms.libvirt
|
|
# self.modules.nixosPrograms.opentabletdriver
|
|
self.modules.nixosPrograms.podman
|
|
self.modules.nixosPrograms.qmk-vial
|
|
# self.modules.nixosPrograms.steam-bwrapped
|
|
self.nixosModules.desktop
|
|
self.nixosModules.shared
|
|
./disk.nix
|
|
./misc
|
|
# ./steam.nix
|
|
];
|
|
|
|
# overlays = [
|
|
# nix-bwrapper.overlays.default # provides `mkBwrapper`
|
|
# ];
|
|
|
|
# time.hardwareClockInLocalTime = true;
|
|
#
|
|
#
|
|
hardware.openrazer.enable = true;
|
|
hardware.openrazer.users = ["user"];
|
|
services.ratbagd.enable = true;
|
|
|
|
hardware.block.scheduler = {
|
|
"nvme[0-9]*" = "kyber";
|
|
};
|
|
|
|
networking.firewall = rec {
|
|
allowedTCPPorts = [8080];
|
|
allowedTCPPortRanges = [
|
|
{
|
|
from = 1714;
|
|
to = 1764;
|
|
}
|
|
];
|
|
allowedUDPPortRanges = allowedTCPPortRanges;
|
|
};
|
|
|
|
desktop.dms.enable = true;
|
|
|
|
programs.corectrl.enable = true;
|
|
|
|
# programs.ydotool.enable = true;
|
|
# users.users.user.extraGroups = ["ydotool"];
|
|
|
|
services.keyd = {
|
|
enable = true;
|
|
keyboards.win60he = {
|
|
ids = ["k:2e3c:c365"];
|
|
settings.main = let
|
|
# finger = mod;
|
|
pinky = "alt";
|
|
ring = "meta";
|
|
middle = "control";
|
|
index = "shift";
|
|
# timeouts
|
|
idle = "170";
|
|
hold = "120";
|
|
# function takes finger and letter
|
|
homeRowMod = f: l: "lettermod(${f}, ${l}, ${idle}, ${hold})";
|
|
in {
|
|
"a" = homeRowMod pinky "a";
|
|
"s" = homeRowMod ring "s";
|
|
"d" = homeRowMod middle "d";
|
|
"f" = homeRowMod index "f";
|
|
"j" = homeRowMod index "j";
|
|
"k" = homeRowMod middle "k";
|
|
"l" = homeRowMod ring "l";
|
|
";" = homeRowMod pinky ";";
|
|
"capslock" = "layer(layer1)";
|
|
"compose" = "capslock"; # menu key
|
|
};
|
|
settings.layer1 = {
|
|
"j" = "left";
|
|
"k" = "down";
|
|
"l" = "up";
|
|
";" = "right";
|
|
"u" = "home";
|
|
"i" = "pagedown";
|
|
"o" = "pageup";
|
|
"p" = "end";
|
|
"\\" = "`";
|
|
"backspace" = "delete";
|
|
"enter" = "toggle(game)";
|
|
};
|
|
settings.game = {
|
|
"a" = "a";
|
|
"s" = "s";
|
|
"d" = "d";
|
|
"f" = "f";
|
|
"j" = "j";
|
|
"k" = "k";
|
|
"l" = "l";
|
|
";" = ";";
|
|
"capslock" = "leftcontrol";
|
|
# "control" = "capslock";
|
|
"compose" = "layer(layer1)";
|
|
};
|
|
};
|
|
};
|
|
|
|
services.displayManager.autoLogin = {
|
|
enable = true;
|
|
user = "user";
|
|
};
|
|
|
|
services.power-profiles-daemon.enable = true;
|
|
|
|
services.mullvad-vpn = {
|
|
enable = true;
|
|
package = pkgs.mullvad-vpn;
|
|
};
|
|
|
|
unexplrd = (
|
|
lib.mkMerge [
|
|
(builtins.fromTOML (builtins.readFile ./host.toml))
|
|
{
|
|
stylix = {
|
|
enable = true;
|
|
theme = "tomorrow";
|
|
polarity = "dark";
|
|
};
|
|
}
|
|
]
|
|
);
|
|
}
|