Push2talk
Push-to-Talk: Seamless Integration with Wayland, X11, PulseAudio & PipeWire for linux 🎤
Install / Use
/learn @cyrinux/Push2talkREADME

Push-to-Talk: Seamless Integration with Wayland, X11, PulseAudio & PipeWire
🥅 Quick Start
Upon initialization, the application mutes all microphones. To unmute, press <kbd>Control_Left</kbd>+<kbd>Space</kbd>, and release to mute again.
- Suspend/resume functionality available via
SIGUSR1.
⚠️ Prerequisites
Membership in the input or plugdev group may be necessary. Check /dev/input/* for your specific distribution.
sudo usermod -a -G plugdev $USER
sudo usermod -a -G input $USER
📦 Installation Methods
- Arch Linux users: AUR package available
- Others: Use
cargo install push2talk
🎤 Usage
- Start
push2talkbinary. - Systemd unit provided:
systemctl --user start push2talk.service.
🎤 Advanced Configuration
- Trace mode for key and source device identification:
env RUST_LOG=trace push2talk. - Custom keybinds via environment variables:
env PUSH2TALK_KEYBIND="Control_L,Space" push2talk. - Debug logging:
RUST_LOG=debug push2talk. - Specify a particular audio source:
env PUSH2TALK_SOURCE="OpenComm by Shokz" push2talk. - Systemd unit provided:
systemctl --user start push2talk.service.
😅 Additional Information
- Excludes Easy Effects sources to prevent unintentional "push-to-listen" scenarios.
👥 How to Contribute
Contributions are highly welcome.
💑 Acknowledgments
Made with love by @cyrinux and @maximbaz.
Related Skills
node-connect
347.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
347.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
347.6kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
