anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / tools / misc / remote-exec / default.nix
blobe9edaacd6a27ff906918820e524f625138205eb9
1 { lib
2 , stdenv
3 , fetchpatch
4 , fetchFromGitHub
5 , buildPythonApplication
6 , click
7 , pydantic
8 , toml
9 , watchdog
10 , pytestCheckHook
11 , pytest-cov-stub
12 , rsync
15 buildPythonApplication rec {
16   pname = "remote-exec";
17   version = "1.13.3";
19   src = fetchFromGitHub {
20     owner = "remote-cli";
21     repo = "remote";
22     rev = "refs/tags/v${version}";
23     hash = "sha256-rsboHJLOHXnpXtsVsvsfKsav8mSbloaq2lzZnU2pw6c=";
24   };
26   patches = [
27     # relax install requirements
28     # https://github.com/remote-cli/remote/pull/60.patch
29     (fetchpatch {
30       url = "https://github.com/remote-cli/remote/commit/a2073c30c7f576ad7ceb46e39f996de8d06bf186.patch";
31       hash = "sha256-As0j+yY6LamhOCGFzvjUQoXFv46BN/tRBpvIS7r6DaI=";
32     })
33   ];
35   # remove legacy endpoints, we use --multi now
36   postPatch = ''
37     substituteInPlace setup.py \
38       --replace-fail '"mremote' '#"mremote'
39   '';
41   dependencies = [
42     click
43     pydantic
44     toml
45     watchdog
46   ];
48   doCheck = true;
50   nativeCheckInputs = [
51     rsync
52   ];
54   checkInputs = [
55     pytestCheckHook
56     pytest-cov-stub
57   ];
59   disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [
60     # `watchdog` dependency does not correctly detect fsevents on darwin.
61     # this only affects `remote --stream-changes`
62     "test/test_file_changes.py"
63   ];
65   meta = with lib; {
66     description = "Work with remote hosts seamlessly via rsync and ssh";
67     homepage = "https://github.com/remote-cli/remote";
68     changelog = "https://github.com/remote-cli/remote/releases/tag/v${version}";
69     license = licenses.bsd2;
70     maintainers = with maintainers; [ pbsds ];
71   };