Skip to content

ThatOtherAndrew/Hexecute

Hexecute

A gesture-based launcher for Wayland. Launch apps by casting spells! 🪄

Demo GIF

Installation

Nix / NixOS

If you're a lucky Nix user, you can:

Try it out without installing:

nix run github:ThatOtherAndrew/Hexecute

Install to your profile:

nix profile install github:ThatOtherAndrew/Hexecute

Add to your NixOS configuration:

# flake.nix
{
  inputs.hexecute.url = "github:ThatOtherAndrew/Hexecute";
}
# configuration.nix
{
  environment.systemPackages = with pkgs; [
    inputs.hexecute.packages.${pkgs.system}.default
  ];
}

Executable download

Download the latest version from the release page, and place it somewhere in your $PATH.

Don't forget to rename the downloaded binary to hexecute and make it executable:

mv hexecute-1.2.3-blah hexecute
chmod +x hexecute

Build from Source

Clone the repository:

git clone https://github.com/ThatOtherAndrew/Hexecute
cd Hexecute

If you have Nix installed, simply run nix build.

Otherwise, make sure you have Go (and all dependent Wayland (and X11!?) libs) installed, then run:

go build
./hexecute

Usage

Setting a Keybind

The recommended way to use Hexecute is to bind it to a keyboard shortcut in your compositor.

Listed below are some examples for popular compositors using the SUPER + SPACE keybind.

Hyprland

If you're using Hyprland, add the following line to your ~/.config/hypr/hyprland.conf:

bind = SUPER, SPACE, exec, hexecute

Sway

If you're using Sway, add the following line to your ~/.config/sway/config:

bindsym $mod+space exec hexecute

Learning a Gesture

To configure a gesture to launch an application, run hexecute --learn [command] in a terminal. Hexecute should launch - simply draw your chosen gesture 3 times and it will be mapped to the command.

Gesture learning demo

Managing Gestures

To view all your configured gestures, run hexecute --list in a terminal.

To delete a previously assigned gesture, use the hexecute --delete [gesture] command.

All gestures are saved in the ~/.config/hexecute/gestures.json file. This file can be manually shared, edited, backed up, or swapped.

About

Launch apps by casting spells! 🪄

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks