Screen recorder for wlroots-based compositors like Sway and Hyperland. For other compositors, it falls back to using wlr-randr to get outputs.
More specifically, this project is merely a graphical Qt wrapper for wf-recorder, leveraging slurp for selecting screen regions.
Do note that you will need to have wf-recorder and slurp accessible via $PATH =)
pip install cute-sway-recorderYou might prefer using pipx:
pipx install cute-sway-recorderFor Arch Linux users, you can install the cute-sway-recorder-git package from the AUR using an AUR helper like paru:
paru -S cute-sway-recorder-git- In your
flake.nix, add the following input:
inputs = {
cute-sway-recorder.url = "github:it-is-wednesday/cute-sway-recorder";
};- Add the package to your Home Manager configuration:
{ inputs, pkgs, ... }:
{
home.packages = [ inputs.cute-sway-recorder.packages.${pkgs.system}.default ];
}Default configuration is stored in the file $HOME/.config/cute-sway-recorder/config.ini
in ini format.
Here is an example configuration which saves recordings as gifs:
[wf-recorder-defaults]
# Default file save location (location must exist)
# Type: string, default: "~/Videos/cute-{id}.mp4"
file_dest = ~/Gifs/gif.gif
# Whether to include audio in recording
# Type: bool, default: off
include_audio = off
# Delay before recording starts
# Type: integer, default: 0
delay = 0
# Additional flags to pass to wf-recorder
# Type: string, default: ""
flags = -c gif -r 10PRs are welcome!
- After forking this repository, make sure to install the project dependencies locally:
poetry installThis will create a virtual environment and install all the required dependencies.
- Make sure
cute-sway-recorderruns locally:
poetry run python -m cute_sway_recorder.main- green-recorder is a recent fork of the project abandoned in 2019. It doesn't use
wf-recorderunder the hood. It currently has more features than this project; you might want to try it first, and come back here if it gives you a hard time.

