All Projects → Shinyzenith → swhkd

Shinyzenith / swhkd

Licence: BSD-2-Clause License
Sxhkd clone for Wayland (works on TTY and X11 too) | mirrored at https://git.sr.ht/~shinyzenith/swhkd

Programming Languages

rust
11053 projects
shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to swhkd

webplayer-hotkeys
A Chrome extension that assigns hotkeys to play/pause, and switch musics (next and previous). Works with Spotify, Deezer, SoundCloud and Youtube
Stars: ✭ 16 (-92.56%)
Mutual labels:  hotkeys, hotkey
Keymage
Yet Another JS Keybinding library
Stars: ✭ 325 (+51.16%)
Mutual labels:  hotkeys, hotkey
react-hotkey-tooltip
A global Hotkey provider with built in tooltip for React
Stars: ✭ 34 (-84.19%)
Mutual labels:  hotkeys, hotkey
Win Vind
Simple Vim Key Binder for Windows. You can operate Windows with keybindings like Vim.
Stars: ✭ 151 (-29.77%)
Mutual labels:  hotkeys, hotkey
react-shortcut
Convenient React component that detects if the given key combination is pressed, and triggers a callback
Stars: ✭ 16 (-92.56%)
Mutual labels:  hotkeys, hotkey
keybind
ClojureScript key bindings (shortcut) library
Stars: ✭ 85 (-60.47%)
Mutual labels:  hotkeys, hotkey
Hotkeys
➷ A robust Javascript library for capturing keyboard input. It has no dependencies.
Stars: ✭ 5,165 (+2302.33%)
Mutual labels:  hotkeys, hotkey
hotkey
⌨️ cross-platform hotkey package
Stars: ✭ 82 (-61.86%)
Mutual labels:  hotkeys, hotkey
g910-gkey-macro-support
GKey support for Logitech G910 Keyboard on Linux
Stars: ✭ 85 (-60.47%)
Mutual labels:  hotkeys, hotkey-functionality
LAMPP-Manager
A simple LAMPP manager designed to automate all the work.
Stars: ✭ 117 (-45.58%)
Mutual labels:  linux-app
FreeRADIUS-Server-Configuration-Tool
🎯 FreeRADIUS Server Configuration Tool 🖥️
Stars: ✭ 33 (-84.65%)
Mutual labels:  linux-app
dmenu-hotkeys
View for your hotkeys in rofi/dmenu style
Stars: ✭ 51 (-76.28%)
Mutual labels:  hotkeys
ESOLinuxAddonManager
[MIRROR] Elder Scrolls Online addon downloader, for Linux! Check the link below for the development repo which has the releases and issuetracker.
Stars: ✭ 25 (-88.37%)
Mutual labels:  linux-app
syntalos
Flow-based synchronized parallel DAQ from diverse sources and flexible control for neuroscience experiments
Stars: ✭ 13 (-93.95%)
Mutual labels:  linux-app
Volumey
Volume mixer that allows you to set up global hotkeys to control your Windows audio system.
Stars: ✭ 139 (-35.35%)
Mutual labels:  hotkeys
hotscript
HotScript - Revolutionizing how Windows works.
Stars: ✭ 29 (-86.51%)
Mutual labels:  hotkey
Lights-Up
Philips Hue controller for Linux [WIP]
Stars: ✭ 27 (-87.44%)
Mutual labels:  linux-app
hotstring
Trigger a Hotstring through dynamic means with Autohotkey
Stars: ✭ 37 (-82.79%)
Mutual labels:  hotkeys
dxhd
daky's X11 Hotkey Daemon
Stars: ✭ 80 (-62.79%)
Mutual labels:  hotkey
openvr widgets
SteamVR overlay widgets
Stars: ✭ 20 (-90.7%)
Mutual labels:  linux-app

SWHKD

A next-generation hotkey daemon for Wayland/X11 written in Rust.

SWHKD:

Simple Wayland HotKey Daemon

swhkd is a display protocol-independent hotkey daemon made in Rust. swhkd uses an easy-to-use configuration system inspired by sxhkd so you can easily add or remove hotkeys.

It also attempts to be a drop-in replacement for sxhkd, meaning, your sxhkd config file is also compatible with swhkd.

Because swhkd can be used anywhere, the same swhkd config can be used across Xorg or Wayland desktops, and you can even use swhkd in a tty.

Installation:

See INSTALL.md for installing swhkd.

Note: swhks is not a typo, it is the server process of the program.

Running:

swhks &
pkexec swhkd

Runtime signals:

After opening swhkd, you can control the program through signals:

  • sudo pkill -USR1 swhkd - Pause key checking
  • sudo pkill -USR2 swhkd - Resume key checking
  • sudo pkill -HUP swhkd - Reload config file

Configuration:

Swhkd closely follows sxhkd syntax, so most existing sxhkd configs should be functional with swhkd.

The default configuration directory is /etc/swhkd/swhkdrc. If you don't like having to edit the file as root every single time, you can create a symlink from ~/.config/swhkd/swhkdrc to /etc/swhkd/swhkdrc.

If you use Vim, you can get swhkd config syntax highlighting with the swhkd-vim plugin. Install it in vim-plug with Plug 'waycrate/swhkd-vim'.

Autostart:

To autostart swhkd you can do one of two things:

  1. Add the commands from the "Running" section to your window managers configuration file.
  2. Enable the service file for your respective init system. Currently only systemd service files exist and more will be added soon including Runit and OpenRC.

Security:

We use a server-client model to keep you safe. The daemon ( swhkd - privileged process ) communicates to the server ( swhks - running as non root user ) after checking for valid keybinds. Since the daemon is totally separate from the server, no other process can read your keystrokes. As for shell commands, you might be thinking that any program can send shell commands to the server and that's true! But the server runs the commands as the currently logged in user so no extra permissions are provided ( This is essentially the same as any app on your desktop calling shell commands ).

So yes, you're safe!

Support:

  1. https://matrix.to/#/#waycrate-tools:matrix.org
  2. https://discord.gg/KKZRDYrRYW

Contributors:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].