diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/tautulli/default.nix')
-rw-r--r-- | nixpkgs/pkgs/servers/tautulli/default.nix | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/tautulli/default.nix b/nixpkgs/pkgs/servers/tautulli/default.nix new file mode 100644 index 000000000000..ff2f993ecc1c --- /dev/null +++ b/nixpkgs/pkgs/servers/tautulli/default.nix @@ -0,0 +1,54 @@ +{stdenv, fetchFromGitHub, python }: + +stdenv.mkDerivation rec { + version = "2.2.4"; + pname = "Tautulli"; + + pythonPath = [ python.pkgs.setuptools ]; + buildInputs = [ python.pkgs.setuptools ]; + nativeBuildInputs = [ python.pkgs.wrapPython ]; + + src = fetchFromGitHub { + owner = "Tautulli"; + repo = pname; + rev = "v${version}"; + sha256 = "0yg7r7yscx6jbs1lnl9nbax3v9r6ppvhr4igdm3gbvd2803j8fs7"; + }; + + buildPhase = ":"; + + installPhase = '' + mkdir -p $out + cp -R * $out/ + + # Remove the PlexPy.py compatibility file as it won't work after wrapping. + # We still have the plexpy executable in bin for compatibility. + rm $out/PlexPy.py + + # Remove superfluous Python checks from main script; + # prepend shebang + echo "#!${python.interpreter}" > $out/Tautulli.py + tail -n +7 Tautulli.py >> $out/Tautulli.py + + + mkdir $out/bin + # Can't just symlink to the main script, since it uses __file__ to + # import bundled packages and manage the service + echo "#!/bin/bash" > $out/bin/tautulli + echo "$out/Tautulli.py \$*" >> $out/bin/tautulli + chmod +x $out/bin/tautulli + + # Creat backwards compatibility symlink to bin/plexpy + ln -s $out/bin/tautulli $out/bin/plexpy + + wrapPythonProgramsIn "$out" "$out $pythonPath" + ''; + + meta = with stdenv.lib; { + description = "A Python based monitoring and tracking tool for Plex Media Server."; + homepage = "https://tautulli.com/"; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with stdenv.lib.maintainers; [ csingley ]; + }; +} |