1{
2 curl,
3 expat,
4 fetchFromGitHub,
5 fuse3,
6 gumbo,
7 help2man,
8 lib,
9 libuuid,
10 meson,
11 ninja,
12 nix-update-script,
13 pkg-config,
14 stdenv,
15 testers,
16}:
17
18stdenv.mkDerivation (finalAttrs: {
19 pname = "httpdirfs";
20 version = "1.2.7";
21
22 src = fetchFromGitHub {
23 owner = "fangfufu";
24 repo = "httpdirfs";
25 tag = finalAttrs.version;
26 hash = "sha256-6TGptKWX0hSNL3Z3ioP7puzozWLiMhCybN7hATQdD/k=";
27 };
28
29 nativeBuildInputs = [
30 help2man
31 meson
32 ninja
33 pkg-config
34 ];
35
36 buildInputs = [
37 curl
38 expat
39 fuse3
40 gumbo
41 libuuid
42 ];
43
44 env.NIX_CFLAGS_COMPILE = toString [
45 "-Wno-error=attribute-warning"
46 "-Wno-error=pedantic"
47 ];
48
49 passthru = {
50 tests.version = testers.testVersion {
51 command = "${lib.getExe finalAttrs.finalPackage} --version";
52 package = finalAttrs.finalPackage;
53 };
54 updateScript = nix-update-script { };
55 };
56
57 meta = {
58 changelog = "https://github.com/fangfufu/httpdirfs/releases/tag/${finalAttrs.version}";
59 description = "FUSE filesystem for HTTP directory listings";
60 homepage = "https://github.com/fangfufu/httpdirfs";
61 license = lib.licenses.gpl3Only;
62 mainProgram = "httpdirfs";
63 maintainers = with lib.maintainers; [
64 sbruder
65 schnusch
66 anthonyroussel
67 ];
68 platforms = lib.platforms.linux;
69 };
70})