diff options
author | lassulus <git@lassul.us> | 2023-02-19 10:01:55 +0100 |
---|---|---|
committer | lassulus <git@lassul.us> | 2023-02-19 10:01:55 +0100 |
commit | 92cfeace5435e09b203a1e4f91eee28bd5d198ce (patch) | |
tree | eb27195e466452c783c3387802b6dff99649f72b | |
parent | 9e059195325e61e38a31a7905b1fe08656f49aba (diff) |
l aergia.r: add antimicrox for gamepad mouse mode
-rw-r--r-- | lass/1systems/aergia/physical.nix | 1 | ||||
-rw-r--r-- | lass/2configs/antimicrox/default.nix | 33 | ||||
-rw-r--r-- | lass/2configs/antimicrox/empty.amgp | 20 | ||||
-rw-r--r-- | lass/2configs/antimicrox/mouse.amgp | 272 | ||||
-rw-r--r-- | lass/2configs/xmonad.nix | 6 |
5 files changed, 329 insertions, 3 deletions
diff --git a/lass/1systems/aergia/physical.nix b/lass/1systems/aergia/physical.nix index 0e5a88aa1..0786acbe1 100644 --- a/lass/1systems/aergia/physical.nix +++ b/lass/1systems/aergia/physical.nix @@ -3,6 +3,7 @@ imports = [ ./config.nix (modulesPath + "/installer/scan/not-detected.nix") + <stockholm/lass/2configs/antimicrox> ]; disko.devices = import ./disk.nix; diff --git a/lass/2configs/antimicrox/default.nix b/lass/2configs/antimicrox/default.nix new file mode 100644 index 000000000..16f546ce6 --- /dev/null +++ b/lass/2configs/antimicrox/default.nix @@ -0,0 +1,33 @@ +{ config, lib, pkgs, ... }: +{ + systemd.services.antimicrox = { + wantedBy = [ "multi-user.target" ]; + environment = { + DISPLAY = ":0"; + }; + serviceConfig = { + User = config.users.users.mainUser.name; + ExecStartPre = lib.singleton (pkgs.writeDash "init_state" "echo 0 > /tmp/gamepad.state"); + ExecStart = "${pkgs.antimicrox}/bin/antimicrox --no-tray --hidden --profile ${./mouse.amgp}"; + }; + }; + + environment.systemPackages = [ + (pkgs.writers.writeDashBin "gamepad_mouse_disable" '' + echo 1 > /tmp/gamepad.state + ${pkgs.antimicrox}/bin/antimicrox --profile ${./empty.amgp} + '') + (pkgs.writers.writeDashBin "gamepad_mouse_enable" '' + echo 0 > /tmp/gamepad.state + ${pkgs.antimicrox}/bin/antimicrox --profile ${./mouse.amgp} + '') + (pkgs.writers.writeDashBin "gamepad_mouse_toggle" '' + state=$(${pkgs.coreutils}/bin/cat /tmp/gamepad.state) + if [ "$state" = 1 ]; then + /run/current-system/sw/bin/gamepad_mouse_enable + else + /run/current-system/sw/bin/gamepad_mouse_disable + fi + '') + ]; +} diff --git a/lass/2configs/antimicrox/empty.amgp b/lass/2configs/antimicrox/empty.amgp new file mode 100644 index 000000000..0257bfe71 --- /dev/null +++ b/lass/2configs/antimicrox/empty.amgp @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<gamecontroller configversion="19" appversion="3.3.2"> + <!--The SDL name for a joystick is included for informational purposes only.--> + <sdlname>XInput Controller</sdlname> + <!--The Unique ID for a joystick is included for informational purposes only.--> + <uniqueID>030000005e0400008e020000010100001118654</uniqueID> + <stickAxisAssociation index="2" xAxis="3" yAxis="4"/> + <stickAxisAssociation index="1" xAxis="1" yAxis="2"/> + <vdpadButtonAssociations index="1"> + <vdpadButtonAssociation axis="0" button="12" direction="1"/> + <vdpadButtonAssociation axis="0" button="13" direction="4"/> + <vdpadButtonAssociation axis="0" button="14" direction="8"/> + <vdpadButtonAssociation axis="0" button="15" direction="2"/> + </vdpadButtonAssociations> + <names> + <controlstickname index="2">R Stick</controlstickname> + <controlstickname index="1">L Stick</controlstickname> + </names> + <sets/> +</gamecontroller> diff --git a/lass/2configs/antimicrox/mouse.amgp b/lass/2configs/antimicrox/mouse.amgp new file mode 100644 index 000000000..313e598de --- /dev/null +++ b/lass/2configs/antimicrox/mouse.amgp @@ -0,0 +1,272 @@ +<?xml version="1.0" encoding="UTF-8"?> +<gamecontroller configversion="19" appversion="3.3.2"> + <!--The SDL name for a joystick is included for informational purposes only.--> + <sdlname>XInput Controller</sdlname> + <!--The Unique ID for a joystick is included for informational purposes only.--> + <uniqueID>030000005e0400008e020000010100001118654</uniqueID> + <stickAxisAssociation index="2" xAxis="3" yAxis="4"/> + <stickAxisAssociation index="1" xAxis="1" yAxis="2"/> + <vdpadButtonAssociations index="1"> + <vdpadButtonAssociation axis="0" button="12" direction="1"/> + <vdpadButtonAssociation axis="0" button="13" direction="4"/> + <vdpadButtonAssociation axis="0" button="14" direction="8"/> + <vdpadButtonAssociation axis="0" button="15" direction="2"/> + </vdpadButtonAssociations> + <names> + <controlstickname index="2">Stick 2</controlstickname> + <controlstickname index="1">Stick 1</controlstickname> + </names> + <sets> + <set index="1"> + <stick index="2"> + <deadZone>1</deadZone> + <maxZone>29501</maxZone> + <modifierZone>1412</modifierZone> + <diagonalRange>90</diagonalRange> + <stickbutton index="7"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + <accelerationmultiplier>4</accelerationmultiplier> + <startaccelmultiplier>20</startaccelmultiplier> + <minaccelthreshold>3</minaccelthreshold> + <extraaccelerationcurve>easeoutquad</extraaccelerationcurve> + <slots> + <slot> + <code>3</code> + <mode>mousemovement</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="6"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + </stickbutton> + <stickbutton index="5"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + <accelerationmultiplier>4</accelerationmultiplier> + <startaccelmultiplier>20</startaccelmultiplier> + <minaccelthreshold>3</minaccelthreshold> + <extraaccelerationcurve>easeoutquad</extraaccelerationcurve> + <slots> + <slot> + <code>2</code> + <mode>mousemovement</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="4"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + </stickbutton> + <stickbutton index="3"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + <accelerationmultiplier>4</accelerationmultiplier> + <startaccelmultiplier>20</startaccelmultiplier> + <minaccelthreshold>3</minaccelthreshold> + <extraaccelerationcurve>easeoutquad</extraaccelerationcurve> + <slots> + <slot> + <code>4</code> + <mode>mousemovement</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="2"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + </stickbutton> + <stickbutton index="1"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + <accelerationmultiplier>4</accelerationmultiplier> + <startaccelmultiplier>20</startaccelmultiplier> + <minaccelthreshold>3</minaccelthreshold> + <extraaccelerationcurve>easeoutquad</extraaccelerationcurve> + <slots> + <slot> + <code>1</code> + <mode>mousemovement</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="8"> + <mousespeedx>74</mousespeedx> + <mousespeedy>74</mousespeedy> + </stickbutton> + </stick> + <stick index="1"> + <deadZone>2578</deadZone> + <maxZone>30799</maxZone> + <stickbutton index="7"> + <mouseacceleration>linear</mouseacceleration> + <slots> + <slot> + <code>6</code> + <mode>mousebutton</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="6"> + <mouseacceleration>linear</mouseacceleration> + </stickbutton> + <stickbutton index="5"> + <mouseacceleration>linear</mouseacceleration> + <slots> + <slot> + <code>5</code> + <mode>mousebutton</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="4"> + <mouseacceleration>linear</mouseacceleration> + </stickbutton> + <stickbutton index="3"> + <mouseacceleration>linear</mouseacceleration> + <slots> + <slot> + <code>7</code> + <mode>mousebutton</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="2"> + <mouseacceleration>linear</mouseacceleration> + </stickbutton> + <stickbutton index="1"> + <mouseacceleration>linear</mouseacceleration> + <slots> + <slot> + <code>4</code> + <mode>mousebutton</mode> + </slot> + </slots> + </stickbutton> + <stickbutton index="8"> + <mouseacceleration>linear</mouseacceleration> + </stickbutton> + </stick> + <dpad index="1"> + <dpadbutton index="6"> + <wheelspeedx>2</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + </dpadbutton> + <dpadbutton index="4"> + <wheelspeedx>2</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + <slots> + <slot> + <code>0x1000017</code> + <mode>keyboard</mode> + </slot> + </slots> + </dpadbutton> + <dpadbutton index="3"> + <wheelspeedx>2</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + </dpadbutton> + <dpadbutton index="2"> + <wheelspeedx>2</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + <slots> + <slot> + <code>0x1000011</code> + <mode>keyboard</mode> + </slot> + </slots> + </dpadbutton> + <dpadbutton index="1"> + <wheelspeedx>10</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + <slots> + <slot> + <code>0x1000016</code> + <mode>keyboard</mode> + </slot> + </slots> + </dpadbutton> + <dpadbutton index="12"> + <wheelspeedx>2</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + </dpadbutton> + <dpadbutton index="9"> + <wheelspeedx>2</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + </dpadbutton> + <dpadbutton index="8"> + <wheelspeedx>2</wheelspeedx> + <wheelspeedy>10</wheelspeedy> + <slots> + <slot> + <code>0x1000010</code> + <mode>keyboard</mode> + </slot> + </slots> + </dpadbutton> + </dpad> + <trigger index="6"> + <deadZone>2000</deadZone> + <throttle>positivehalf</throttle> + <triggerbutton index="1"> + <mousespeedx>100</mousespeedx> + <mousespeedy>100</mousespeedy> + </triggerbutton> + <triggerbutton index="2"> + <mousespeedx>100</mousespeedx> + <mousespeedy>100</mousespeedy> + <slots> + <slot> + <code>250</code> + <mode>mousespeedmod</mode> + </slot> + </slots> + </triggerbutton> + </trigger> + <trigger index="5"> + <throttle>positivehalf</throttle> + </trigger> + <button index="11"> + <slots> + <slot> + <code>1</code> + <mode>mousebutton</mode> + </slot> + </slots> + </button> + <button index="5"> + <slots> + <slot> + <code>1</code> + <mode>mousebutton</mode> + </slot> + </slots> + </button> + <button index="3"> + <slots> + <slot> + <code>2</code> + <mode>mousebutton</mode> + </slot> + </slots> + </button> + <button index="2"> + <slots> + <slot> + <code>3</code> + <mode>mousebutton</mode> + </slot> + </slots> + </button> + <button index="1"> + <slots> + <slot> + <code>1</code> + <mode>mousebutton</mode> + </slot> + </slots> + </button> + </set> + </sets> +</gamecontroller> diff --git a/lass/2configs/xmonad.nix b/lass/2configs/xmonad.nix index b506e026d..1789725d1 100644 --- a/lass/2configs/xmonad.nix +++ b/lass/2configs/xmonad.nix @@ -159,14 +159,14 @@ myKeyMap = ${pkgs.clipmenu}/bin/clipmenu ''}") - , ("M4-<F2>", windows copyToAll) - - , ("M4-<F4>", spawn "${pkgs.nm-dmenu}/bin/nm-dmenu") , ("M4-<Insert>", spawn "${pkgs.writeDash "paste" '' ${pkgs.coreutils}/bin/sleep 0.4 ${pkgs.xclip}/bin/xclip -o | ${pkgs.xdotool}/bin/xdotool type -f - ''}") + , ("M4-<F1>", spawn "/run/current-system/sw/bin/gamepad_mouse_toggle") + , ("M4-<F2>", windows copyToAll) + , ("M4-<F4>", spawn "${pkgs.nm-dmenu}/bin/nm-dmenu") , ("M4-<F5>", spawn "${pkgs.acpilight}/bin/xbacklight -set 1") , ("M4-<F6>", spawn "${pkgs.acpilight}/bin/xbacklight -set 10") , ("M4-<F7>", spawn "${pkgs.acpilight}/bin/xbacklight -set 33") |