Gestures for your touch screen
Warning
Even though hyprgrass is mostly stable now, there used to be some bugs that render your touch device unusable until you unload the plugin/close Hyprland see issue #27, keep a keyboard in hand the first time you try this. This plugin is still in alpha, expect breaking changes!
Please open an issue if you find any bugs. Feel free to make a feature request if you have a suggestion.
- Workspace Swipe
- Custom commands
- Swipe From Edge
- Multi-finger swipe
Besides Hyprland (duh), this plugin has the following dependencies:
glm
# build dependencies
meson
ninja
# extra dependencies for hyprgrass-pulse
libpulseaudioFirst, install all dependencies. Then, run these commands:
hyprpm add https://github.com/horriblename/hyprgrass
hyprpm enable hyprgrass
# optional integration with pulse-audio, see examples/hyprgrass-pulse/README.md
hyprpm enable hyprgrass-pulseYou can add exec-once = hyprpm reload -n to your hyprland config to have
plugins loaded at startup. -n will make hyprpm send a notification if anything
goes wrong (e.g. update needed)
see hyprland wiki for more info
(hyprload is deprecated, please use hyprpm instead)
-
install all dependencies
-
install hyprload by following the instructions here
-
put this in
~/.config/hypr/hyprload.toml:plugins = [ "horriblename/hyprgrass", ]
-
run this command:
# install the plugins hyprctl dispatch hyprload install # load plugins hyprctl dispatch hyprload load
meson setup build
ninja -C buildOn the meson setup step you can pass these options:
-Dhyprgrass-pulse=trueto enable building hyprgrass-pulse
Flakes are highly recommended (because I don't know how to do anything without them)
Put this in your flake.nix file:
{
inputs = {
# ...
hyprland.url = "github:hyprwm/Hyprland";
hyprgrass = {
url = "github:horriblename/hyprgrass";
inputs.hyprland.follows = "hyprland"; # IMPORTANT
};
};
}and in your home-manager module:
wayland.windowManager.hyprland = {
plugins = [
inputs.hyprgrass.packages.${pkgs.system}.default
# optional integration with pulse-audio, see examples/hyprgrass-pulse/README.md
inputs.hyprgrass.packages.${pkgs.system}.hyprgrass-pulse
];
};See docs
Touch screen related tools I liked.
On-screen keyboards:
- squeekboard: has auto show/hide but doesn't work well with IME (fcitx/IBus etc.)
- wvkbd: relatively simple keyboard but still has most important features.
- fcitx-virtual-keyboard-adapter: NOT a keyboard but an fcitx addon that auto show/hides any on-screen keyboard.
Miscellanaeious:
- iio-hyprland: auto screen rotation
- Hyprspace: an overview plugin for hyprland
- nwg-drawer: app drawer. Surprisingly, there's not a lot of those
- Special thanks to wayfire for the awesome wf-touch library!
- Some parts are based on AOSP, licensed under Apache License 2.0
- Example plugins are heavily based on Waybar, licensed under MIT License