The laptop model's hardware module and a memory-pressure module for any machine (hq research 027/03, 026/05, to-be 42 phase 3). The predecessor's polling auto-profile and mem-guard user scripts become each module's own Go code launched by the node runtime (ADR 0198): a profile switcher woken by the kernel's power-supply uevents, and a guard that warns on RAM, swap or PSI before systemd-oomd acts, on the desktop over the account's bus and always as an event. supergfxctl and triggerhappy are kept as found (research 027 Q1).
30 lines
1.3 KiB
Bash
Executable File
30 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# zephyrus-touchpad reset | toggle — apply the touchpad's settings again, or switch it on or off.
|
|
# Shipped by the mesh's asus-zephyrus-g14 module; edit the catalogue.
|
|
#
|
|
# The settings themselves are an X input class (/etc/X11/xorg.conf.d/30-asus-zephyrus-g14-touchpad.conf),
|
|
# which X applies every time the device appears — after a resume too, which is what the predecessor's
|
|
# sleep hook existed for. This is the manual form, bound to the touchpad key.
|
|
set -u
|
|
here=$(dirname "$0")
|
|
name=$("$here/zephyrus-session" xinput list --name-only 2>/dev/null | grep -m1 -i 'touchpad')
|
|
[ -n "$name" ] || { echo "zephyrus-touchpad: no touchpad in this session" >&2; exit 1; }
|
|
x() { "$here/zephyrus-session" xinput "$@"; }
|
|
case "${1:-reset}" in
|
|
reset)
|
|
x set-prop "$name" "libinput Tapping Enabled" 1
|
|
x set-prop "$name" "libinput Natural Scrolling Enabled" 1
|
|
x set-prop "$name" "libinput Accel Speed" 0.15
|
|
x enable "$name"
|
|
"$here/zephyrus-session" "$here/zephyrus-notify" 7779 "Touchpad: reset"
|
|
;;
|
|
toggle)
|
|
if x list-props "$name" | grep -q 'Device Enabled ([0-9]*):[[:space:]]*1'; then
|
|
x disable "$name"; "$here/zephyrus-session" "$here/zephyrus-notify" 7779 "Touchpad: off"
|
|
else
|
|
x enable "$name"; "$here/zephyrus-session" "$here/zephyrus-notify" 7779 "Touchpad: on"
|
|
fi
|
|
;;
|
|
*) echo "usage: zephyrus-touchpad reset | toggle" >&2; exit 2 ;;
|
|
esac
|