nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 stdenv,
3 lib,
4 fetchurl,
5 pkg-config,
6 libsoup_3,
7 libxml2,
8 meson,
9 ninja,
10 gnome,
11 udevCheckHook,
12}:
13
14stdenv.mkDerivation rec {
15 pname = "phodav";
16 version = "3.0";
17
18 outputs = [
19 "out"
20 "dev"
21 "lib"
22 ];
23
24 src = fetchurl {
25 url = "mirror://gnome/sources/phodav/${version}/phodav-${version}.tar.xz";
26 sha256 = "OS7C0G1QMA3P8e8mmiqYUwTim841IAAvyiny7cHRONE=";
27 };
28
29 nativeBuildInputs = [
30 pkg-config
31 meson
32 ninja
33 udevCheckHook
34 ];
35
36 buildInputs = [
37 libsoup_3
38 libxml2
39 ];
40
41 mesonFlags = [
42 "-Davahi=disabled"
43 "-Dsystemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
44 "-Dgtk_doc=disabled"
45 "-Dudevrulesdir=${placeholder "out"}/lib/udev/rules.d"
46 ];
47
48 NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-lintl";
49
50 doInstallCheck = true;
51
52 passthru = {
53 updateScript = gnome.updateScript {
54 packageName = pname;
55 };
56 };
57
58 # We need to do this in pre-configure before the data/ folder disappears.
59 preConfigure = ''
60 install -vDt $out/lib/udev/rules.d/ data/*-spice-webdavd.rules
61 '';
62
63 meta = {
64 description = "WebDav server implementation and library using libsoup";
65 homepage = "https://gitlab.gnome.org/GNOME/phodav";
66 license = lib.licenses.lgpl21Plus;
67 maintainers = with lib.maintainers; [ wegank ];
68 platforms = lib.platforms.unix;
69 };
70}