nixos-dotfiles/modules/pkgs/jellyfin-media-player-git.nix

51 lines
1.3 KiB
Nix

{ lib
, pkgs
, stdenv
, fetchFromGitHub
, cmake
, python
, unzip
, qtbase
, wrapQtAppsHook
}:
let
stdenv = pkgs.clangStdenv;
distZip = builtins.fetchurl {
url = "https://github.com/iwalton3/jellyfin-web-jmp/releases/download/jwc-10.8.1/dist.zip";
sha256 = "sha256:1mn0l89li1cv3jmazrdbdhjldbm0daphv18193jd24vhwxd4sx9z";
};
in stdenv.mkDerivation rec {
version = "v1.7.1";
pname = "jellyfin-media-player";
src = fetchFromGitHub {
owner = "jellyfin";
repo = pname;
rev = version;
sha256 = "sha256-piMqI4qxcNUSNC+0JE2KZ/cvlNgtxUOnSfrcWnBVzC0=";
};
nativeBuildInputs = [ cmake wrapQtAppsHook unzip ];
buildInputs = [ qtbase python pkgs.SDL2 pkgs.zlib-ng pkgs.fribidi pkgs.gnutls pkgs.libsForQt5.qt5.qtwebengine
pkgs.libsForQt5.qt5.qtquickcontrols pkgs.libsForQt5.qt5.qtx11extras pkgs.libsForQt5.qt5.qtwebchannel
pkgs.libcec pkgs.mpv ];
configurePhase = ''
unzip -q ${pkgs.lib.strings.escapeShellArg distZip}
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$out
'';
meta = with lib; {
description = "Jellyfin Desktop Client based on Plex Media Player.";
homepage = "https://github.com/jellyfin/jellyfin-media-player";
license = licenses.gpl2;
platforms = platforms.unix;
maintainers = with maintainers; [ seanomik ];
};
}