Commit Graph
14 Commits
Author SHA1 Message Date
Claude 6991fdbbee Fix Ctrl+grave being sent without Ctrl due to --clearmodifiers
--clearmodifiers releases ALL modifiers including Ctrl, so xdotool
sends bare grave (types 'v'). Instead, explicitly release only Alt
before sending Ctrl+grave so OpenWhispr receives the correct combo.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 20:37:05 +00:00
Claude 9137bd2d80 Fix stop toggle not reaching OpenWhispr on key release
Add --clearmodifiers to xdotool so held Ctrl/Alt don't corrupt the
simulated Ctrl+` into Ctrl+Alt+`. Also add 50ms delay before stop
to let key release propagate to X11.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 20:33:03 +00:00
Claude 150485ee01 Switch PTT to evdev for reliable key state (no repeat spam)
pynput on X11 sees key repeats as real press/release pairs, causing
rapid-fire toggling. evdev gives event.value=2 for repeats which
we simply ignore. Only real press (1) and release (0) are handled.

Requires sudo or 'input' group membership.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 20:08:57 +00:00
Claude 723436dae9 Switch PTT hotkey from Ctrl+Super to Ctrl+Alt
Super key is intercepted by Cinnamon/window managers before reaching
the app. Ctrl+Alt is a better choice — works reliably on all DEs.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 20:01:10 +00:00
Claude aa8f40039a Fix PTT rapid-fire: track key state as booleans, ignore repeats
Super key generates rapid press/release events from key repeat.
Changed from set-based tracking to boolean flags (ctrl_held,
super_held) so repeated press events are ignored when the key
is already held. Removed min-hold cancel logic.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 20:00:19 +00:00
Claude e32dc5f690 Add push-to-talk wrapper for OpenWhispr
Python script that converts Ctrl+Super hold-to-talk into Ctrl+`
toggle pairs for OpenWhispr, working around the app's broken
Hold activation mode on Linux.

Uses pynput for key listening and xdotool to send hotkeys.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 19:56:43 +00:00
Claude cc847cff67 Wrap script in main() to prevent line-by-line execution bug
When run via `bash <(curl ...)`, bash reads the script incrementally
from a process substitution fd. If a `read < /dev/tty` call disrupts
the fd state, bash can lose its place and the remaining script lines
get fed to the interactive shell prompt as individual commands.

Wrapping everything in main() forces bash to parse the entire script
into memory before executing any of it — the standard fix for
curl-piped scripts.

Also changed README one-liner to download-then-execute pattern
(curl -o /tmp/... && bash /tmp/...) as a belt-and-suspenders approach.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 13:37:29 +00:00
Claude 1c7866bc0a Fix script breaking when run via bash <(curl ...) pipe
Replace `exec < /dev/tty` (which hijacks bash's script-reading fd and
causes the rest of the script to be interpreted as shell commands) with
per-call `< /dev/tty` redirection on every `read` and prompt `printf`.

This preserves bash's ability to continue reading the script from the
process substitution while still getting interactive input from the
real terminal.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 13:36:28 +00:00
Claude eb092825c2 Fix stdin when piped, improve binary detection, replace YOUR_USERNAME
- Add `exec < /dev/tty` so `read` works correctly when run via
  `bash <(curl ...)` — fixes script failing after pasting API keys
  or clicking terminal links
- Search /opt/, /usr/lib/, /snap/bin/ and `dpkg -L` for the
  open-whispr binary — fixes "Could not find openwhispr in PATH"
- Replace YOUR_USERNAME with outis1one in all files
- Show detected binary name in summary useful commands

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 13:29:17 +00:00
Claude da73b43b1d Add OpenWhispr easy setup installer and companion files
Single-file bash installer (setup-openwhispr.sh) with distro detection,
dependency installation, STT/AI cleanup provider selection, API key
management, and first-run launch. Includes README, LICENSE (MIT),
CHANGELOG, .gitignore, ShellCheck CI, issue templates, PR template,
and GitHub setup guide.

https://claude.ai/code/session_01XKYC1basxdwtHy71tky7xm
2026-03-25 12:57:53 +00:00
Outis abf5062779 Delete LICENSE 2026-03-25 08:46:43 -04:00
Outis 2ac2c47fe7 Delete setup-voxd-ptt.sh 2026-03-25 08:46:30 -04:00
Outis e1f0a0b014 Add files via upload 2026-03-24 20:16:03 -04:00
Outis 936ecc6a66 Initial commit 2026-03-24 20:15:32 -04:00