A free macOS menu bar app that turns the left and right edges of a MacBook trackpad into brightness and volume sliders.
Indra55/bezel
A lightweight Rust daemon that maps trackpad edge gestures with 1-4 fingers to actions like volume and brightness on Wayland.
- Stars
- 160
- Forks
- 7
- Open issues
- 4
- Last commit
- 3 days ago
What is it?
Bezel turns the edges of a Linux trackpad into a configurable control surface. Each edge can carry its own bindings for one to four fingers, so a single-finger swipe on the left edge might adjust volume while a two-finger swipe adjusts brightness. Normal touches in the center of the pad keep working for the desktop.
Supported gestures include taps, double taps, holds, eight swipe directions, and repeating slides. Gesture Studio, a terminal wizard, previews gestures and offers 30 action presets as well as custom shell commands. Sensitivity can be shared across bindings or set per binding, and the config lives at ~/.config/bezel/config.toml.
Bezel requires Linux with Wayland and a trackpad that uses type-B multitouch slots. It is installed through a script, Cargo, or a NixOS and Home Manager module. Pinch-to-zoom and tap-then-swipe gestures are not implemented.
Key features
- 01Supports taps, double taps, holds, eight swipe directions, and repeating slides.
- 02Lets each screen edge and finger count (1-4) have its own binding.
- 03Includes Gesture Studio, a terminal wizard with gesture previews and 30 action presets.
- 04Accepts custom shell commands as actions.
- 05Provides NixOS and Home Manager configuration support.
Use cases
- Adjusting volume or brightness with a swipe on the trackpad edge on a Linux laptop.
- Triggering media playback controls or workspace switching from edge gestures.
- Running custom scripts from trackpad gestures in a Wayland desktop session.
Quick start
- 1
Run the official install script from the README
- 2
Or build and install from source with Cargo
cargo install --git https://github.com/indra55/bezel - 3
Add your user to the input group, then reboot
sudo usermod -aG input "$USER" - 4
Open Gesture Studio to configure your bindings
bezel --configure
Things to know
- Works only on Linux with Wayland.
- Requires a trackpad with type-B multitouch slots.
- Pinch/zoom and tap-then-swipe gestures are not implemented.
- Licensed under GPL-3.0, a copyleft license.
Topics
FAQ
- What is bezel?
- A lightweight Rust daemon that maps trackpad edge gestures with 1-4 fingers to actions like volume and brightness on Wayland. Bezel turns the edges of a Linux trackpad into a configurable control surface. Each edge can carry its own bindings for one to four fingers, so a single-finger swipe on the left edge might adjust volume while a two-finger swipe adjusts brightness. Normal touches in the center of the pad keep working for the desktop.
- Is bezel free to use? What license does it have?
- bezel is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is bezel still maintained?
- Actively maintained. The last commit to bezel was on Nov 5, 2026.
- What can I use bezel for?
- Adjusting volume or brightness with a swipe on the trackpad edge on a Linux laptop. Triggering media playback controls or workspace switching from edge gestures. Running custom scripts from trackpad gestures in a Wayland desktop session.
- How do I install bezel?
- Run the official install script from the README Or build and install from source with Cargo: cargo install --git https://github.com/indra55/bezel Add your user to the input group, then reboot: sudo usermod -aG input "$USER" Open Gesture Studio to configure your bindings: bezel --configure
- Where can I get bezel?
- The source code and installation instructions are on GitHub: https://github.com/Indra55/bezel
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A cross-platform pie menu for desktops that launches apps, simulates shortcuts and opens files via radial menus.
A GUI file manager for Linux Wayland desktops on Omarchy, offering list, column, grid and two-pane views with Quick Look previews.
A freedesktop notification daemon for Wayland compositors, drawing themed notification cards with the Rune Rust UI framework.
Hyprland is an independent, dynamic tiling Wayland compositor with extensive visual effects, customization, and a plugin system.
Hyprland desktop dotfiles centered on a Material-themed Quickshell shell with an overview, AI widgets and screen tools for Wayland.