about summary refs log tree commit diff
path: root/pkgs/applications/video/multiviewer-for-f1
diff options
context:
space:
mode:
authorBabeuh <60193302+babeuh@users.noreply.github.com>2023-07-13 17:06:43 +0200
committerBabeuh <babeuh@rlglr.fr>2023-07-21 20:56:46 +0200
commit5e496c9a72beb9619cca6bd45ca6bd52aed40dde (patch)
tree988868cb9786a608a39bd04767c086d73be418cf /pkgs/applications/video/multiviewer-for-f1
parenta28f9684e225b3a5b1a78b8ffe530f07ae4bdc11 (diff)
multiviewer-for-f1: init at 1.24.1
Diffstat (limited to 'pkgs/applications/video/multiviewer-for-f1')
-rw-r--r--pkgs/applications/video/multiviewer-for-f1/default.nix103
1 files changed, 103 insertions, 0 deletions
diff --git a/pkgs/applications/video/multiviewer-for-f1/default.nix b/pkgs/applications/video/multiviewer-for-f1/default.nix
new file mode 100644
index 0000000000000..d373a850e65ab
--- /dev/null
+++ b/pkgs/applications/video/multiviewer-for-f1/default.nix
@@ -0,0 +1,103 @@
+{ stdenvNoCC
+, fetchurl
+, lib
+, makeWrapper
+, autoPatchelfHook
+, dpkg
+, alsa-lib
+, at-spi2-atk
+, cairo
+, cups
+, dbus
+, expat
+, ffmpeg
+, glib
+, gtk3
+, libdrm
+, libudev0-shim
+, libxkbcommon
+, mesa
+, nspr
+, nss
+, pango
+, xorg
+}:
+
+let
+  id = "117980724";
+in
+stdenvNoCC.mkDerivation rec {
+  pname = "multiviewer-for-f1";
+  version = "1.24.1";
+
+  src = fetchurl {
+    url = "https://releases.multiviewer.dev/download/${id}/multiviewer-for-f1_${version}_amd64.deb";
+    sha256 = "sha256-uEcxDIWolouIUJ8Xuva3rtW51gfCddAwTGqOBnucmmY=";
+  };
+
+  nativeBuildInputs = [
+    dpkg
+    makeWrapper
+    autoPatchelfHook
+  ];
+
+  buildInputs = [
+    alsa-lib
+    at-spi2-atk
+    cairo
+    cups
+    dbus
+    expat
+    ffmpeg
+    glib
+    gtk3
+    libdrm
+    libxkbcommon
+    mesa
+    nspr
+    nss
+    pango
+    xorg.libX11
+    xorg.libXcomposite
+    xorg.libxcb
+    xorg.libXdamage
+    xorg.libXext
+    xorg.libXfixes
+    xorg.libXrandr
+  ];
+
+  dontBuild = true;
+  dontConfigure = true;
+
+  unpackPhase = ''
+    runHook preUnpack
+
+    # The deb file contains a setuid binary, so 'dpkg -x' doesn't work here
+    dpkg --fsys-tarfile $src | tar --extract
+
+    runHook postUnpack
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin $out/share
+    mv -t $out/share usr/share/* usr/lib/multiviewer-for-f1
+
+    makeWrapper "$out/share/multiviewer-for-f1/MultiViewer for F1" $out/bin/multiviewer-for-f1 \
+      --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-features=WaylandWindowDecorations}}" \
+      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libudev0-shim ]}:\"$out/share/Multiviewer for F1\""
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Unofficial desktop client for F1 TVĀ®";
+    homepage = "https://multiviewer.app";
+    downloadPage = "https://multiviewer.app/download";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ babeuh ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
+