{ pkgs, lib, ... }: { # current issues: # 1. for pressing insert hold shift+fn+Fin # scroll by holding middle mouse services.xserver.displayManager.sessionCommands ='' xinput set-int-prop "ETPS/2 Elantech TrackPoint" "Evdev Wheel Emulation" 8 1 xinput set-int-prop "ETPS/2 Elantech TrackPoint" "Evdev Wheel Emulation Button" 8 2 xinput set-prop "ETPS/2 Elantech TrackPoint" "Evdev Wheel Emulation Axes" 6 7 4 5 # configure timeout of pressing and holding middle button # xinput set-int-prop "ETPS/2 Elantech TrackPoint" "Evdev Wheel Emulation Timeout" 8 200 xinput disable 'ETPS/2 Elantech Touchpad' ''; boot.kernelParams = [ #"psmouse.proto=imps" #"psmouse.proto=bare" #"psmouse.resetafter=0" "psmouse.synaptics_intertouch=1" # echo 1 > /sys/devices/platform/i8042/serio1/reg_07 ]; programs.light.enable = true; services.actkbd = { enable = true; bindings = [ { keys = [ 225 ]; events = [ "key" ]; command = "${pkgs.light}/bin/light -A 10"; } # fn - F5 { keys = [ 224 ]; events = [ "key" ]; command = "${pkgs.light}/bin/light -U 10"; } # fn - F6 # fn - 4 => suspend # fn - d => lcdshadow { keys = [ 227 ]; events = [ "key" ]; command = builtins.toString ( # fn - F7 pkgs.writers.writeDash "toggle_touchpad" '' PATH=${lib.makeBinPath [ pkgs.xorg.xinput pkgs.gnugrep ]} DISPLAY=:0 export DISPLAY PATH device=$(xinput list --name-only | grep Touchpad) if [ "$(xinput list-props "$device" | grep -P ".*Device Enabled.*\K.(?=$)" -o)" -eq 1 ];then xinput disable "$device" else xinput enable "$device" fi ''); } ]; }; }