diff --git a/pkgs/tools/wayland/wl-screenrec/default.nix b/pkgs/tools/wayland/wl-screenrec/default.nix new file mode 100644 index 000000000000..8f09b806f6af --- /dev/null +++ b/pkgs/tools/wayland/wl-screenrec/default.nix @@ -0,0 +1,39 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, pkg-config +, wayland +, ffmpeg +}: + +rustPlatform.buildRustPackage rec { + pname = "wl-screenrec"; + version = "unstable-2023-05-31"; + + src = fetchFromGitHub { + owner = "russelltg"; + repo = pname; + rev = "fc918f7898900c1882c6f64c96ed2de8cb9a6300"; + hash = "sha256-P/JELiw0qGcwLFgNPccN/uetNy8CNCJdlCLhgq0h4sc="; + }; + + cargoHash = "sha256-r9zmAiLiAntHcb5W/WKmKbVP9c9+15ElIWtHkks0wig="; + + nativeBuildInputs = [ + pkg-config + rustPlatform.bindgenHook + ]; + + buildInputs = [ + wayland + ffmpeg + ]; + + meta = with lib; { + description = "High performance wlroots screen recording, featuring hardware encoding"; + homepage = "https://github.com/russelltg/wl-screenrec"; + license = licenses.asl20; + platforms = platforms.linux; + maintainers = with maintainers; [ colemickens ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fdeaa125e6f7..5a36fee55a76 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4498,6 +4498,8 @@ with pkgs; wl-mirror = callPackage ../tools/wayland/wl-mirror { }; + wl-screenrec = callPackage ../tools/wayland/wl-screenrec { }; + wlogout = callPackage ../tools/wayland/wlogout { }; wlopm = callPackage ../tools/wayland/wlopm { };