Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at litex 2.1 kB view raw
1{ lib 2, buildPythonPackage 3, fetchFromGitHub 4, makePythonPath 5, pythonOlder 6, python 7, click 8, dbus-python 9, desktop-notifier 10, dropbox 11, fasteners 12, importlib-metadata 13, keyring 14, keyrings-alt 15, packaging 16, pathspec 17, pyro5 18, requests 19, rich 20, setuptools 21, survey 22, typing-extensions 23, watchdog 24, pytestCheckHook 25, nixosTests 26}: 27 28buildPythonPackage rec { 29 pname = "maestral"; 30 version = "1.7.3"; 31 format = "pyproject"; 32 33 disabled = pythonOlder "3.7"; 34 35 src = fetchFromGitHub { 36 owner = "SamSchott"; 37 repo = "maestral"; 38 rev = "refs/tags/v${version}"; 39 hash = "sha256-HOM7BlrKpqm16plTMLFpC6VScEoMlxCJFhZ0mcIFIcE="; 40 }; 41 42 propagatedBuildInputs = [ 43 click 44 desktop-notifier 45 dbus-python 46 dropbox 47 fasteners 48 importlib-metadata 49 keyring 50 keyrings-alt 51 packaging 52 pathspec 53 pyro5 54 requests 55 rich 56 setuptools 57 survey 58 typing-extensions 59 watchdog 60 ]; 61 62 makeWrapperArgs = [ 63 # Add the installed directories to the python path so the daemon can find them 64 "--prefix PYTHONPATH : ${makePythonPath propagatedBuildInputs}" 65 "--prefix PYTHONPATH : $out/lib/${python.libPrefix}/site-packages" 66 ]; 67 68 nativeCheckInputs = [ 69 pytestCheckHook 70 ]; 71 72 preCheck = '' 73 export HOME=$(mktemp -d) 74 ''; 75 76 disabledTests = [ 77 # We don't want to benchmark 78 "test_performance" 79 # Requires systemd 80 "test_autostart" 81 # Requires network access 82 "test_check_for_updates" 83 # Tries to look at /usr 84 "test_filestatus" 85 "test_path_exists_case_insensitive" 86 "test_cased_path_candidates" 87 # AssertionError 88 "test_locking_multiprocess" 89 ]; 90 91 pythonImportsCheck = [ 92 "maestral" 93 ]; 94 95 passthru.tests.maestral = nixosTests.maestral; 96 97 meta = with lib; { 98 description = "Open-source Dropbox client for macOS and Linux"; 99 homepage = "https://maestral.app"; 100 changelog = "https://github.com/samschott/maestral/releases/tag/v${version}"; 101 license = licenses.mit; 102 maintainers = with maintainers; [ peterhoeg sfrijters ]; 103 platforms = platforms.unix; 104 }; 105}