{stdenv, fetchFromGitHub, python2, par2cmdline, unzip, unrar, p7zip, makeWrapper}: let pythonEnv = python2.withPackages(ps: with ps; [ cryptography cheetah yenc sabyenc ]); path = stdenv.lib.makeBinPath [ par2cmdline unrar unzip p7zip ]; in stdenv.mkDerivation rec { version = "2.3.3"; pname = "sabnzbd"; name = "${pname}-${version}"; src = fetchFromGitHub { owner = pname; repo = pname; rev = version; sha256 = "0za4xjc4x44f7i30r86bbza3zppid333ifwzp5h526w3zak1lal8"; }; buildInputs = [ pythonEnv makeWrapper ]; installPhase = '' mkdir -p $out cp -R * $out/ mkdir $out/bin echo "${pythonEnv}/bin/python $out/SABnzbd.py \$*" > $out/bin/sabnzbd chmod +x $out/bin/sabnzbd wrapProgram $out/bin/sabnzbd --set PATH ${path} ''; meta = with stdenv.lib; { description = "Usenet NZB downloader, par2 repairer and auto extracting server"; homepage = https://sabnzbd.org; license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = with stdenv.lib.maintainers; [ fridh ]; }; }