l xerxes.r: support most of the hardware

This commit is contained in:
lassulus 2019-08-27 16:56:19 +02:00
parent b7daacf31e
commit c0e4269e6a
2 changed files with 78 additions and 16 deletions
lass/1systems/xerxes

View file

@ -35,10 +35,6 @@
displayManager.lightdm.autoLogin.user = "lass";
};
boot.blacklistedKernelModules = [
"xpad"
];
krebs.syncthing = {
folders = {
the_playlist = {
@ -54,4 +50,70 @@
umask = "0007";
};
};
boot.blacklistedKernelModules = [ "xpad" ];
systemd.services.xboxdrv = {
wantedBy = [ "multi-user.target" ];
script = ''
${pkgs.xboxdrv.overrideAttrs(o: {
patches = [ (pkgs.fetchurl {
url = "https://patch-diff.githubusercontent.com/raw/xboxdrv/xboxdrv/pull/251.patch";
sha256 = "17784y20mxqrlhgvwvszh8lprxrvgmb7ah9dknmbhj5jhkjl8wq5";
}) ];
})}/bin/xboxdrv --type xbox360 --dbus disabled -D
'';
};
programs.adb.enable = true;
services.logind.lidSwitch = "ignore";
services.acpid = {
enable = true;
lidEventCommands = ''
export DISPLAY=:${toString config.services.xserver.display}
case "$1" in
"button/lid LID close")
${pkgs.xorg.xinput}/bin/xinput disable 'pointer: Mouse for Windows'
${pkgs.xorg.xinput}/bin/xinput disable 'keyboard: Mouse for Windows'
${pkgs.acpilight}/bin/xbacklight -get > /tmp/pre_lid_brightness
${pkgs.acpilight}/bin/xbacklight -set 0
;;
"button/lid LID open")
${pkgs.xorg.xinput}/bin/xinput enable 'pointer: Mouse for Windows'
${pkgs.xorg.xinput}/bin/xinput enable 'keyboard: Mouse for Windows'
${pkgs.acpilight}/bin/xbacklight -set $(cat /tmp/pre_lid_brightness)
;;
esac
'';
};
systemd.services.suspend-again = {
after = [ "suspend.target" ];
requiredBy = [ "suspend.target" ];
# environment = {
# DISPLAY = ":${toString config.services.xserver.display}";
# };
serviceConfig = {
ExecStart = pkgs.writeDash "suspend-again" ''
${pkgs.gnugrep}/bin/grep -q closed /proc/acpi/button/lid/LID0/state
if [ "$?" -eq 0 ]; then
echo 'wakeup with closed lid'
${pkgs.systemd}/bin/systemctl suspend
fi
'';
Type = "simple";
};
};
hardware.bluetooth.enable = true;
hardware.pulseaudio.package = pkgs.pulseaudioFull;
# hardware.pulseaudio.configFile = pkgs.writeText "default.pa" ''
# load-module module-bluetooth-policy
# load-module module-bluetooth-discover
# ## module fails to load with
# ## module-bluez5-device.c: Failed to get device path from module arguments
# ## module.c: Failed to load module "module-bluez5-device" (argument: ""): initialization failed.
# # load-module module-bluez5-device
# # load-module module-bluez5-discover
# '';
}

View file

@ -17,6 +17,7 @@
boot.blacklistedKernelModules = [
"goodix"
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.initrd.luks.devices.crypted.device = "/dev/sda3";
@ -27,11 +28,6 @@
"boot.shell_on_fail"
];
services.xserver.displayManager.sessionCommands = ''
(sleep 2 && ${pkgs.xorg.xrandr}/bin/xrandr --output eDP-1 --rotate right)
(sleep 2 && ${pkgs.xorg.xinput}/bin/xinput set-prop 'Goodix Capacitive TouchScreen' 'Coordinate Transformation Matrix' 0 1 0 -1 0 1 0 0 1)
'';
fileSystems."/" = {
device = "rpool/root";
fsType = "zfs";
@ -76,11 +72,15 @@
IdleActionSec=300
'';
services.xserver.extraConfig = ''
Section "Device"
Identifier "Intel Graphics"
Driver "Intel"
Option "TearFree" "true"
EndSection
'';
services.xserver = {
videoDrivers = [ "intel" ];
deviceSection = ''
Option "TearFree" "true"
'';
displayManager.sessionCommands = ''
echo nonono > /tmp/xxyy
(sleep 2 && ${pkgs.xorg.xrandr}/bin/xrandr --output eDP1 --rotate right)
(sleep 2 && ${pkgs.xorg.xinput}/bin/xinput set-prop 'Goodix Capacitive TouchScreen' 'Coordinate Transformation Matrix' 0 1 0 -1 0 1 0 0 1)
'';
};
}