diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/radicale')
-rw-r--r-- | nixpkgs/pkgs/servers/radicale/2.x.nix | 51 | ||||
-rw-r--r-- | nixpkgs/pkgs/servers/radicale/3.x.nix | 58 |
2 files changed, 109 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/radicale/2.x.nix b/nixpkgs/pkgs/servers/radicale/2.x.nix new file mode 100644 index 000000000000..c1e596669030 --- /dev/null +++ b/nixpkgs/pkgs/servers/radicale/2.x.nix @@ -0,0 +1,51 @@ +{ lib, fetchFromGitHub, python3 }: + +python3.pkgs.buildPythonApplication rec { + pname = "Radicale"; + version = "2.1.12"; + + # No tests in PyPI tarball + src = fetchFromGitHub { + owner = "Kozea"; + repo = "Radicale"; + rev = version; + sha256 = "14f9ql0fiwapaa4xaslwgk1ah9fzxxan2p1p2rxb4a5iqph1z0cl"; + }; + + # We only want functional tests + postPatch = '' + sed -i "s/pytest-cov\|pytest-flake8\|pytest-isort//g" setup.py + sed -i "/^addopts/d" setup.cfg + ''; + + propagatedBuildInputs = with python3.pkgs; [ + vobject + python-dateutil + passlib + setuptools + ]; + + nativeCheckInputs = with python3.pkgs; [ + pytestCheckHook + ]; + + disabledTests = [ + # uses unsupported crypt method + "test_htpasswd_crypt" + ]; + + meta = with lib; { + homepage = "https://radicale.org/v2.html"; + description = "CalDAV CardDAV server"; + mainProgram = "radicale"; + longDescription = '' + The Radicale Project is a complete CalDAV (calendar) and CardDAV + (contact) server solution. Calendars and address books are available for + both local and remote access, possibly limited through authentication + policies. They can be viewed and edited by calendar and contact clients + on mobile phones or computers. + ''; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ edwtjo pSub infinisil ]; + }; +} diff --git a/nixpkgs/pkgs/servers/radicale/3.x.nix b/nixpkgs/pkgs/servers/radicale/3.x.nix new file mode 100644 index 000000000000..92db274bf708 --- /dev/null +++ b/nixpkgs/pkgs/servers/radicale/3.x.nix @@ -0,0 +1,58 @@ +{ lib +, python3 +, fetchFromGitHub +, nixosTests +}: + +python3.pkgs.buildPythonApplication rec { + pname = "radicale"; + version = "3.1.9"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Kozea"; + repo = "Radicale"; + rev = "v${version}"; + hash = "sha256-i4NQ1+ltRE0g8AoyGKKVcgZgSmLeppnobu6bf2+XmWY="; + }; + + postPatch = '' + sed -i '/addopts/d' setup.cfg + ''; + + nativeBuildInputs = with python3.pkgs; [ + setuptools + ]; + + propagatedBuildInputs = with python3.pkgs; [ + defusedxml + passlib + vobject + python-dateutil + pytz # https://github.com/Kozea/Radicale/issues/816 + ] ++ passlib.optional-dependencies.bcrypt; + + __darwinAllowLocalNetworking = true; + + nativeCheckInputs = with python3.pkgs; [ + pytestCheckHook + waitress + ]; + + pytestFlagsArray = [ + # pytest.PytestRemovedIn8Warning: Support for nose tests is deprecated and will be removed in a future release. + "-W" "ignore::pytest.PytestRemovedIn8Warning" + ]; + + passthru.tests = { + inherit (nixosTests) radicale; + }; + + meta = with lib; { + homepage = "https://radicale.org/v3.html"; + changelog = "https://github.com/Kozea/Radicale/blob/${src.rev}/CHANGELOG.md"; + description = "CalDAV and CardDAV server"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ dotlambda erictapen ]; + }; +} |