!! this is still maintained, i just need issues to work on. if you face issues or have feature requests, don't hesitate to open issues and ping me !!
waytator is a one stop shot for screenshotting and recording on supported wlroots based compositor. It is also a lightweight image and video editor.
Using niri or GNOME? See Desktop-specific notes.
Get it from the AUR:
yay -S waytator
Waytator is in nixpkgs, though it can lag a release or two behind:
nix run nixpkgs#waytator
To get new releases the day they're out, use this repo's flake:
nix run github:faetalize/waytator/stable
To follow master instead:
nix run github:faetalize/waytator
On NixOS, add it as a flake input:
# flake.nix
inputs.waytator = {
url = "github:faetalize/waytator/stable";
inputs.nixpkgs.follows = "nixpkgs";
};
Then add the package to your system:
# configuration.nix
environment.systemPackages = [
inputs.waytator.packages.${pkgs.stdenv.hostPlatform.system}.default
];
OCR is included. For a smaller install without it, use .default.override { withOcr = false; } instead of .default.
meson - ninja - pkg-config - gtk4 - libadwaita-1 - gtk4-layer-shell - wayland - wayland-protocols - gcc/clang/any C compiler
wl-clipboard for clipboard support
tesseract for OCR support
~/.local:meson setup build --buildtype=release --prefix="$HOME/.local" # Override the prefix if needed
meson compile -C build
meson install -C build
DONE! Waytator is now installed and is usually detected by launchers instantly.
Result:
waytator binary: ${HOME}/.local/bin/waytator${HOME}/.local/share/applications/dev.faetalize.waytator.desktop${HOME}/.local/share/icons/hicolor/scalable/apps/dev.faetalize.waytator.svgThe app's identifier is dev.faetalize.waytator. If you have an older version of the app installed with a different identifier (e.g. dev.waytator.Waytator), make sure to remove it first to avoid conflicts.
If ~/.local/bin is not already on your PATH, add it in your shell profile. For example, add the following line to ~/.bashrc:
export PATH="$HOME/.local/bin:$PATH"
If launchers fail to start waytator after installing from source, make sure your graphical session includes ~/.local/bin in PATH, not just your shell configuration.
Open a screenshot or any other image to mark it up, then copy or save it:
waytator path/to/image.png # open an image
grim -g "$(slurp)" - | waytator # open an image piped in
waytator # open the app empty
Add --name "Screenshot.png" to name a piped image.
Tools have single-key shortcuts, shown on their buttons, and [ and ] change the size. They can all be changed in Preferences → Shortcuts.
waytator can take the screenshot itself and open it for annotating straight away:
waytator --screenshot # select an area of the screen
waytator --screenshot screen # capture a whole screen
waytator --screenshot --notify # save and copy it without opening the editor
While you pick what to capture, the bar on screen switches between area and screen, waits a few seconds before capturing, and turns on a magnifier for pixel-exact selections. Hold Shift to slow the cursor down. Esc or a right click cancels. The same captures are also in the app itself.
Screenshots are saved to your Screenshots folder and copied to the clipboard. Both can be changed in Preferences.
A few more options:
waytator --screenshot --delay 3 # wait 3 seconds before capturing
waytator --screenshot --screen DP-1 # capture that screen straight away
Bind these to keys in your compositor to capture and annotate in one step. On some desktops, the first screenshot asks for permission.
Run waytator --help for every option, including overriding shortcuts for one launch.
To keep Waytator running in the background as a GLib application service ("daemon"), run:
waytator --gapplication-service
This will keep Waytator loaded in memory, allowing it to load faster in subsequent command invocations.
Screenshots are tested on niri and GNOME.
Keybinds that capture and annotate in one step:
// in your config.kdl, in the binds section
Print { spawn "waytator" "--screenshot"; }
Shift+Print { spawn "waytator" "--screenshot" "screen"; }
Ctrl+Print { spawn "waytator" "--screenshot" "--notify"; }
To keep niri's own screenshot UI instead, bind your screenshot key to scripts/screenshot-to-waytator.sh. Screenshots you save or copy there then open in waytator:
// in your config.kdl, in the binds section
Print { spawn <path-to-screenshot-to-waytator.sh>; }
Floating waytator windows work best:
// in your config.kdl
window-rule {
match app-id=r#"^dev\.faetalize\.waytator$"#
open-floating true
}
Taking a screenshot opens GNOME's own screenshot tool, and waytator edits the result. --screen doesn't work there.
GPL-3.0-or-later.
470 followers · starred Apr 2026
46 followers · starred Jul 2026
!! this is still maintained, i just need issues to work on. if you face issues or have feature requests, don't hesitate to open issues and ping me !!
waytator is a one stop shot for screenshotting and recording on supported wlroots based compositor. It is also a lightweight image and video editor.
Using niri or GNOME? See Desktop-specific notes.
Get it from the AUR:
yay -S waytator
Waytator is in nixpkgs, though it can lag a release or two behind:
nix run nixpkgs#waytator
To get new releases the day they're out, use this repo's flake:
nix run github:faetalize/waytator/stable
To follow master instead:
nix run github:faetalize/waytator
On NixOS, add it as a flake input:
# flake.nix
inputs.waytator = {
url = "github:faetalize/waytator/stable";
inputs.nixpkgs.follows = "nixpkgs";
};
Then add the package to your system:
# configuration.nix
environment.systemPackages = [
inputs.waytator.packages.${pkgs.stdenv.hostPlatform.system}.default
];
OCR is included. For a smaller install without it, use .default.override { withOcr = false; } instead of .default.
meson - ninja - pkg-config - gtk4 - libadwaita-1 - gtk4-layer-shell - wayland - wayland-protocols - gcc/clang/any C compiler
wl-clipboard for clipboard support
tesseract for OCR support
~/.local:meson setup build --buildtype=release --prefix="$HOME/.local" # Override the prefix if needed
meson compile -C build
meson install -C build
DONE! Waytator is now installed and is usually detected by launchers instantly.
Result:
waytator binary: ${HOME}/.local/bin/waytator${HOME}/.local/share/applications/dev.faetalize.waytator.desktop${HOME}/.local/share/icons/hicolor/scalable/apps/dev.faetalize.waytator.svgThe app's identifier is dev.faetalize.waytator. If you have an older version of the app installed with a different identifier (e.g. dev.waytator.Waytator), make sure to remove it first to avoid conflicts.
If ~/.local/bin is not already on your PATH, add it in your shell profile. For example, add the following line to ~/.bashrc:
export PATH="$HOME/.local/bin:$PATH"
If launchers fail to start waytator after installing from source, make sure your graphical session includes ~/.local/bin in PATH, not just your shell configuration.
Open a screenshot or any other image to mark it up, then copy or save it:
waytator path/to/image.png # open an image
grim -g "$(slurp)" - | waytator # open an image piped in
waytator # open the app empty
Add --name "Screenshot.png" to name a piped image.
Tools have single-key shortcuts, shown on their buttons, and [ and ] change the size. They can all be changed in Preferences → Shortcuts.
waytator can take the screenshot itself and open it for annotating straight away:
waytator --screenshot # select an area of the screen
waytator --screenshot screen # capture a whole screen
waytator --screenshot --notify # save and copy it without opening the editor
While you pick what to capture, the bar on screen switches between area and screen, waits a few seconds before capturing, and turns on a magnifier for pixel-exact selections. Hold Shift to slow the cursor down. Esc or a right click cancels. The same captures are also in the app itself.
Screenshots are saved to your Screenshots folder and copied to the clipboard. Both can be changed in Preferences.
A few more options:
waytator --screenshot --delay 3 # wait 3 seconds before capturing
waytator --screenshot --screen DP-1 # capture that screen straight away
Bind these to keys in your compositor to capture and annotate in one step. On some desktops, the first screenshot asks for permission.
Run waytator --help for every option, including overriding shortcuts for one launch.
To keep Waytator running in the background as a GLib application service ("daemon"), run:
waytator --gapplication-service
This will keep Waytator loaded in memory, allowing it to load faster in subsequent command invocations.
Screenshots are tested on niri and GNOME.
Keybinds that capture and annotate in one step:
// in your config.kdl, in the binds section
Print { spawn "waytator" "--screenshot"; }
Shift+Print { spawn "waytator" "--screenshot" "screen"; }
Ctrl+Print { spawn "waytator" "--screenshot" "--notify"; }
To keep niri's own screenshot UI instead, bind your screenshot key to scripts/screenshot-to-waytator.sh. Screenshots you save or copy there then open in waytator:
// in your config.kdl, in the binds section
Print { spawn <path-to-screenshot-to-waytator.sh>; }
Floating waytator windows work best:
// in your config.kdl
window-rule {
match app-id=r#"^dev\.faetalize\.waytator$"#
open-floating true
}
Taking a screenshot opens GNOME's own screenshot tool, and waytator edits the result. --screen doesn't work there.
GPL-3.0-or-later.
470 followers · starred Apr 2026
46 followers · starred Jul 2026