nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 cython,
6 pkg-config,
7 setuptools,
8 setuptools-scm,
9 fuse3,
10 trio,
11 python,
12 pytestCheckHook,
13 pytest-trio,
14 which,
15}:
16
17buildPythonPackage rec {
18 pname = "pyfuse3";
19 version = "3.4.2";
20 pyproject = true;
21
22 src = fetchFromGitHub {
23 owner = "libfuse";
24 repo = "pyfuse3";
25 tag = "v${version}";
26 hash = "sha256-3mhtpXhia2w9VtdFctN+cGrvOmhRE3656fEciseY2u4=";
27 };
28
29 build-system = [
30 cython
31 setuptools
32 setuptools-scm
33 ];
34
35 nativeBuildInputs = [ pkg-config ];
36
37 buildInputs = [ fuse3 ];
38
39 dependencies = [ trio ];
40
41 nativeCheckInputs = [
42 pytestCheckHook
43 pytest-trio
44 which
45 fuse3
46 ];
47
48 # Checks if a /usr/bin directory exists, can't work on NixOS
49 disabledTests = [ "test_listdir" ];
50
51 pythonImportsCheck = [
52 "pyfuse3"
53 "pyfuse3.asyncio"
54 ];
55
56 meta = {
57 description = "Python 3 bindings for libfuse 3 with async I/O support";
58 homepage = "https://github.com/libfuse/pyfuse3";
59 license = lib.licenses.lgpl2Plus;
60 maintainers = with lib.maintainers; [
61 nyanloutre
62 dotlambda
63 ];
64 changelog = "https://github.com/libfuse/pyfuse3/blob/${src.tag}/Changes.rst";
65 };
66}