# socktop-swipe configuration. # # Installed to /usr/local/etc/socktop-swipe.env. Every script reads that file if # it exists, so edit it there on the display host -- not this copy in the repo. # After editing, restart the gesture daemon and rebuild the session (see README). # # Values use ${VAR:-default} so an environment variable of the same name always # wins over this file. That keeps the file editable in the obvious way while # still allowing one-off overrides, e.g. SOCKTOP_SESSION=test socktop-rack # --------------------------------------------------------------------------- # What to monitor # --------------------------------------------------------------------------- # What to show, as GROUPS separated by ";". Each group is one screen of the # carousel: a tiled overview of its hosts, then each host zoomed full-screen in # turn, then on to the next group. Host names are socktop profile names from # ~/.config/socktop/profiles.json. # # overview(A) -> A1 -> A2 -> ... -> overview(B) -> B1 -> B2 -> ... # # An optional "@layout" token in a group sets its tmux overview layout # (tiled, even-horizontal, even-vertical, main-horizontal, main-vertical). # Default is tiled: 4 hosts become quarters, 2 become side-by-side. # "@even-vertical" stacks the panes one above the other instead. # # The example below is the rack display: the four Pis quartered and zoomable, # then the Orange Pi and the Debian box stacked and zoomable. SOCKTOP_GROUPS="${SOCKTOP_GROUPS:-rpi-master rpi-worker-1 rpi-worker-2 rpi-worker-3 ; orangepi trixie @even-vertical}" # Legacy single-group form. Used only when SOCKTOP_GROUPS is empty. SOCKTOP_HOSTS="${SOCKTOP_HOSTS:-}" # tmux session name. Change only if it collides with something else. SOCKTOP_SESSION="${SOCKTOP_SESSION:-socktop4}" # Absolute path to the socktop binary. i3 and non-login shells do not have # ~/.cargo/bin on PATH, so a full path is safer than relying on lookup. SOCKTOP_BIN="${SOCKTOP_BIN:-$HOME/.cargo/bin/socktop}" # --------------------------------------------------------------------------- # Touch panel # --------------------------------------------------------------------------- # The touchscreen event device. ALWAYS prefer a /dev/input/by-id/ symlink -- # /dev/input/eventN numbers get reshuffled on reboot or USB re-enumeration. # Find yours with: tools/find-device.sh TOUCH_DEV="${TOUCH_DEV:-/dev/input/by-id/usb-ILITEK_ILITEK-TOUCH-event-if00}" # The touch panel's own resolution -- NOT the X screen size. lisgd otherwise # asks X, which reports the full root window across all monitors (e.g. 2304x720 # with a second display attached) and skews its edge and distance maths. SCREEN_W="${SCREEN_W:-1024}" SCREEN_H="${SCREEN_H:-600}" # --------------------------------------------------------------------------- # Gesture tuning # --------------------------------------------------------------------------- # Pixels of travel before a drag counts as a swipe. Too low and stray contact # triggers it; too high and normal swipes are ignored. Measured on the ILITEK # panel: real swipes land at 150-260px, accidental ones under 70px. SWIPE_THRESHOLD="${SWIPE_THRESHOLD:-80}" # Degrees of leniency off the axis, max 45. Real finger swipes came in 1-25 # degrees off true horizontal, so 30 leaves comfortable margin. SWIPE_LENIENCY="${SWIPE_LENIENCY:-30}" # Contact counts to accept for one logical swipe. # # THIS IS THE SETTING THAT MOST OFTEN NEEDS CHANGING ON NEW HARDWARE. Many # multipoint panels report 2 or even 3 contacts for what is physically a # one-finger swipe (palm, or ghost contacts). If gestures are recognised but # never fire, run tools/diag.sh and compare Cfg(f=N) against Evt(f=N). FINGER_COUNTS="${FINGER_COUNTS:-1 2 3}" # Swipe directions. RL = right-to-left = zoom in; LR = left-to-right = zoom out. # Swap these two values to reverse the direction of travel. GESTURE_IN="${GESTURE_IN:-RL}" GESTURE_OUT="${GESTURE_OUT:-LR}"