about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/misc/qt-video-wlr/default.nix
blob: 4ebd059c9274cc5875ef9f152dd6a3c820a59321 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{ stdenv, lib, fetchFromGitHub, pkg-config, meson, cmake, ninja, gst_all_1, wrapQtAppsHook, qtbase, qtmultimedia, layer-shell-qt }:
let
 gstreamerPath = with gst_all_1; lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0" [
     gstreamer
     gst-plugins-base
     gst-plugins-good
     gst-plugins-bad
     gst-plugins-ugly
 ];
in stdenv.mkDerivation rec {
  pname = "qt-video-wlr";
  version = "2023-07-22";

  src = fetchFromGitHub {
    owner = "xdavidwu";
    repo = "qt-video-wlr";
    rev = "1373c8eeb0a5d867927ba30a9a9bb2d5b0057a87";
    hash = "sha256-mg0ROD9kV88I5uCm+niAI5tJuhkmYC7Z8dixxrNow4c=";
  };

  nativeBuildInputs = [
    pkg-config
    meson
    cmake # only used for find layer-shell-qt
    ninja
    wrapQtAppsHook
  ];

  buildInputs = [
    qtbase
    qtmultimedia
    layer-shell-qt
  ];

  qtWrapperArgs = [
    "--prefix PATH : $out/bin/qt-video-wlr"
    "--prefix GST_PLUGIN_PATH : ${gstreamerPath}"
  ];

  meta = with lib; {
    description = "Qt pip-mode-like video player for wlroots-based wayland compositors";
    mainProgram = "qt-video-wlr";
    homepage = "https://github.com/xdavidwu/qt-video-wlr";
    license = licenses.mit;
    maintainers = with maintainers; [ fionera rewine ];
    platforms = with platforms; linux;
  };
}