if you like this project, then the best way to express gratitude is to give it a star ⭐, it doesn't cost you anything, but I understand that I'm moving the project in the right direction.
Hyprshot-rs
0.1.9
A utility to easily take screenshots on Wayland (tested on Hyprland and Sway).
Features
- Screenshot Capture
- Capture the entire monitor (output)
- Capture the active monitor (output + active)
- Capturing the selected region
- Capturing the selected window
- Capture of the active window
- Save & Clipboard
- Save screenshots to a specified folder and copy to clipboard (use
--clipboard-onlyfor clipboard-only) - Screenshots saved in PNG format
- Save screenshots to a specified folder and copy to clipboard (use
- Configuration System
- TOML-based configuration (
~/.config/hyprshot-rs/config.toml) - Persistent settings for paths, hotkeys, notifications, and more
- CLI commands for config management (
--init-config,--show-config,--set)
- TOML-based configuration (
- Hyprland Integration
- Automatic keybinding generation (
--generate-hyprland-config) - One-command installation to hyprland.conf (
--install-binds) - Interactive hotkeys setup wizard (
--setup-hotkeys)
- Automatic keybinding generation (
- Documentation
Installation
Via Cargo:
Note: cargo install builds from source. Selector functionality is provided by slurp-rs directly, so no external slurp binary is required.
Via AUR (Arch Linux):
The AUR package is the primary distribution channel: the newest releases and experimental features land there first. Dependencies are pulled automatically (no extra manual steps required).
Runtime Dependencies
Required:
wl-clipboard- for clipboard operations- a Wayland compositor (Hyprland or Sway)
Optional:
- No extra tools required for
--freeze
On Arch Linux (example):
Note: selector functionality is fully provided by
slurp-rsAPI.
Usage
Make it available regardless of the shell
possible values: output, window, region, active, OUTPUT_NAME
Note: active is a modifier and must be combined with output or window.
Compatibility
regionandoutputwork on Wayland withouthyprctl(viaslurp-rsAPI backend).output -m DP-1works withouthyprctl(Wayland output enumeration).windowandactiveare supported on Hyprland and Sway only (viahyprctl/swaymsg).
Possible values:
- Capture a window:
- To take a screenshot of a specific area of the screen, use:
- If you have 2 or more monitors and want to take a screenshot of the workspace on a specific monitor:
- Quick capture (active monitor under the cursor):
- Capture the active window:
- Capture a specific monitor by name (example:
DP-1):
Use your compositor to list output names (Hyprland: hyprctl monitors).
- Take a screenshot of a selected area and save it in the current directory: ~/repository
redirects the output to output.png in your current working directory. So if you're currently in ~/repository when running this command, that's where the screenshot will be saved, not in the default ~/Pictures directory.
Run hyprshot-rs --help or hyprshot-rs -h for more options.
Configuration
Initialize configuration:
Configure settings:
View current configuration:
Hyprland Integration
Quick setup with interactive wizard:
Or manually generate and install keybindings:
# Generate keybindings
# Install to hyprland.conf (creates backup)
Manual configuration - add to hyprland.conf:
bind = SUPER, Print, exec, hyprshot-rs -m window
bind = SUPER SHIFT, Print, exec, hyprshot-rs -m region
bind = SUPER CTRL, Print, exec, hyprshot-rs -m output
bind = , Print, exec, hyprshot-rs -m output -m active
See HOTKEYS.md for more examples. Based on the implementation: Hypershot