diff --git a/pkgs/tools/backup/tarsnapper/default.nix b/pkgs/tools/backup/tarsnapper/default.nix index 447057448f87..b4d731984f71 100644 --- a/pkgs/tools/backup/tarsnapper/default.nix +++ b/pkgs/tools/backup/tarsnapper/default.nix @@ -1,20 +1,35 @@ { lib , python3Packages , fetchFromGitHub +, fetchpatch , tarsnap }: python3Packages.buildPythonApplication rec { pname = "tarsnapper"; - version = "0.4"; + version = "0.5"; + pyproject = true; src = fetchFromGitHub { owner = "miracle2k"; repo = pname; rev = version; - sha256 = "03db49188f4v1946c8mqqj30ah10x68hbg3a58js0syai32v12pm"; + hash = "sha256-5i9eum9hbh6VFhvEIDq5Uapy6JtIbf9jZHhRYZVoC1w="; }; + patches = [ + # Fix failing tests when default_deltas is None + (fetchpatch { + url = "https://github.com/miracle2k/tarsnapper/commit/2ee33ce748b9bb42d559cc2c0104115732cb4150.patch"; + hash = "sha256-fEXGhzlfB+J5lw1pcsC5Ne7I8UMnDzwyyCx/zm15+fU="; + }) + ]; + + nativeBuildInputs = with python3Packages; [ + pythonRelaxDepsHook + setuptools + ]; + propagatedBuildInputs = with python3Packages; [ pyyaml python-dateutil @@ -22,28 +37,22 @@ python3Packages.buildPythonApplication rec { ]; nativeCheckInputs = with python3Packages; [ + pytestCheckHook nose ]; - patches = [ - # Remove standard module argparse from requirements - ./remove-argparse.patch - ]; + # Remove standard module argparse from requirements + pythonRemoveDeps = [ "argparse" ]; makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ tarsnap ]}" ]; - checkPhase = '' - runHook preCheck - nosetests tests - runHook postCheck - ''; - pythonImportsCheck = [ "tarsnapper" ]; meta = with lib; { description = "Wrapper which expires backups using a gfs-scheme"; homepage = "https://github.com/miracle2k/tarsnapper"; license = licenses.bsd2; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ gmacon ]; + mainProgram = "tarsnapper"; }; } diff --git a/pkgs/tools/backup/tarsnapper/remove-argparse.patch b/pkgs/tools/backup/tarsnapper/remove-argparse.patch deleted file mode 100644 index 19c7f9f172e2..000000000000 --- a/pkgs/tools/backup/tarsnapper/remove-argparse.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- tarsnapper-0.4-src.org/setup.py 1980-01-02 00:00:00.000000000 +0000 -+++ tarsnapper-0.4-src/setup.py 2017-07-16 10:54:36.596499451 +0100 -@@ -45,6 +45,6 @@ - url='https://github.com/miracle2k/tarsnapper', - license='BSD', - packages=['tarsnapper'], -- install_requires = ['argparse>=1.1', 'pyyaml>=3.09', 'python-dateutil>=2.4.0', 'pexpect>=3.1'], -+ install_requires = ['pyyaml>=3.09', 'python-dateutil>=2.4.0', 'pexpect>=3.1'], - **kw - )