1{ lib, fetchFromGitHub, python3Packages, sqlite, which }:
2
3python3Packages.buildPythonApplication rec {
4 pname = "s3ql";
5 version = "3.7.3";
6
7 src = fetchFromGitHub {
8 owner = pname;
9 repo = pname;
10 rev = "release-${version}";
11 sha256 = "042fvkvranfnv2xxxz9d92cgia14p1hwmpjgm0rr94pjd36n1sfs";
12 };
13
14 checkInputs = [ which ] ++ (with python3Packages; [ cython pytest pytest-trio ]);
15 propagatedBuildInputs = with python3Packages; [
16 sqlite apsw pycrypto requests defusedxml dugong
17 google-auth google-auth-oauthlib trio pyfuse3
18 ];
19
20 preBuild = ''
21 ${python3Packages.python.interpreter} ./setup.py build_cython build_ext --inplace
22 '';
23
24 checkPhase = ''
25 # Removing integration tests
26 rm tests/t{4,5,6}_*
27 pytest tests
28 '';
29
30 meta = with lib; {
31 description = "A full-featured file system for online data storage";
32 homepage = "https://github.com/s3ql/s3ql/";
33 license = licenses.gpl3;
34 maintainers = with maintainers; [ rushmorem ];
35 platforms = platforms.linux;
36 };
37}