Skip to content

m31-galaxy/Hexecute

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

67 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

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:

mkdir -p bin
go build -o bin ./...
./bin/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 --remove [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

Sponsor this project

Contributors