{ 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 = "180492850"; in stdenvNoCC.mkDerivation rec { pname = "multiviewer-for-f1"; version = "1.35.2"; src = fetchurl { url = "https://releases.multiviewer.dev/download/${id}/multiviewer-for-f1_${version}_amd64.deb"; sha256 = "sha256-V1+kMgfbgDS47YNIotmzrh2Hry5pvdQvrzWwuKJY1oM="; }; 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" ]; mainProgram = "multiviewer-for-f1"; }; }