feat(opentabletdriver): add otd + config

hope this works lol

Changed files
+85
home
emily
gui
+1
home/emily/gui/default.nix
··· 46 46 ./kitty.nix 47 47 ./mpd.nix 48 48 ./nsxiv.nix 49 + ./opentabletdriver 49 50 ]; 50 51 home = { 51 52 packages = guiPackages;
+15
home/emily/gui/opentabletdriver/default.nix
··· 1 + { config, pkgs, ... }: 2 + let 3 + otdConfigDirectory = "OpenTabletDriver"; 4 + settingsFilename = "settings.json"; 5 + otdConfigFilename = "${otdConfigDirectory}/${settingsFilename}"; 6 + in 7 + { 8 + xdg.configFile = { 9 + ${otdConfigFilename} = { 10 + # why does emacs insist on indenting this like this lol 11 + enable = true; 12 + source = ./settings.json; 13 + }; 14 + }; 15 + }
+69
home/emily/gui/opentabletdriver/settings.json
··· 1 + { 2 + "Profiles": [ 3 + { 4 + "Tablet": "Wacom CTL-480", 5 + "OutputMode": { 6 + "Path": "OpenTabletDriver.Desktop.Output.LinuxArtistMode", 7 + "Settings": [], 8 + "Enable": true 9 + }, 10 + "Filters": [], 11 + "AbsoluteModeSettings": { 12 + "Display": { 13 + "Width": 1280.0, 14 + "Height": 720.0, 15 + "X": 640.0, 16 + "Y": 360.0, 17 + "Rotation": 0.0 18 + }, 19 + "Tablet": { 20 + "Width": 76.0, 21 + "Height": 42.75, 22 + "X": 38.0, 23 + "Y": 21.375, 24 + "Rotation": 0.0 25 + }, 26 + "EnableClipping": true, 27 + "EnableAreaLimiting": false, 28 + "LockAspectRatio": true 29 + }, 30 + "RelativeModeSettings": { 31 + "XSensitivity": 10.0, 32 + "YSensitivity": 10.0, 33 + "RelativeRotation": 0.0, 34 + "RelativeResetDelay": "00:00:00.1000000" 35 + }, 36 + "Bindings": { 37 + "TipActivationThreshold": 1.0, 38 + "TipButton": { 39 + "Path": "OpenTabletDriver.Desktop.Binding.MouseBinding", 40 + "Settings": [ 41 + { 42 + "Property": "Button", 43 + "Value": "Left" 44 + } 45 + ], 46 + "Enable": true 47 + }, 48 + "EraserActivationThreshold": 1.0, 49 + "EraserButton": null, 50 + "PenButtons": [ 51 + null, 52 + null 53 + ], 54 + "AuxButtons": [ 55 + null, 56 + null, 57 + null, 58 + null 59 + ], 60 + "MouseButtons": [], 61 + "MouseScrollUp": null, 62 + "MouseScrollDown": null 63 + } 64 + } 65 + ], 66 + "LockUsableAreaDisplay": true, 67 + "LockUsableAreaTablet": true, 68 + "Tools": [] 69 + }