43 lines
No EOL
1.1 KiB
Nix
43 lines
No EOL
1.1 KiB
Nix
{ lib, pkgs, config, ...}: let
|
|
inherit (lib) mkIf mkEnableOption mkOption;
|
|
cfg = config.chuj.stuff.xserver;
|
|
in {
|
|
options.chuj.stuff.xserver = {
|
|
enable = mkEnableOption "xserver";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
services = {
|
|
xserver = {
|
|
enable = true;
|
|
xkb.layout = "pl";
|
|
# autoRepeatDelay = 180;
|
|
# autoRepeatInterval = 50;
|
|
# ^ this doesn't work
|
|
displayManager.sessionCommands = ''
|
|
${pkgs.xorg.xset}/bin/xset r rate 180 50
|
|
'';
|
|
};
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
xclip
|
|
xorg.xkill
|
|
xorg.xev
|
|
xdotool
|
|
];
|
|
|
|
# https://www.reddit.com/r/linux_gaming/comments/1dkbh5t/games_behaving_differently_on_xorg_than_on/
|
|
# FUCK YOU LIBINPUT
|
|
services.libinput.enable = lib.mkForce false;
|
|
# services.libinput = {
|
|
# enable = true;
|
|
# touchpad = {
|
|
# naturalScrolling = false; # it's reversed on my laptop for some reason
|
|
# tapping = true;
|
|
# tappingButtonMap = "lmr";
|
|
# scrollMethod = "edge";
|
|
# };
|
|
# };
|
|
};
|
|
} |