1{ stdenv
2, lib
3, fetchurl
4, gi-docgen
5, gobject-introspection
6, meson
7, ninja
8, pkg-config
9, vala
10, glib
11, liburing
12, gnome
13}:
14
15stdenv.mkDerivation rec {
16 pname = "libdex";
17 version = "0.6.0";
18
19 outputs = [ "out" "dev" "devdoc" ];
20
21 src = fetchurl {
22 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
23 hash = "sha256-HojSsAYo5Ya3I7f7pRXM6XUvrxISLN5aPA1biDmYUio=";
24 };
25
26 nativeBuildInputs = [
27 gi-docgen
28 gobject-introspection
29 meson
30 ninja
31 pkg-config
32 vala
33 ];
34
35 buildInputs = [
36 glib
37 liburing
38 ];
39
40 mesonFlags = [
41 "-Ddocs=true"
42 ];
43
44 doCheck = true;
45
46 postFixup = ''
47 # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
48 moveToOutput "share/doc" "$devdoc"
49 '';
50
51 passthru.updateScript = gnome.updateScript {
52 packageName = "libdex";
53 versionPolicy = "odd-unstable";
54 };
55
56 meta = with lib; {
57 description = "Library supporting deferred execution for GNOME and GTK";
58 homepage = "https://gitlab.gnome.org/GNOME/libdex";
59 maintainers = teams.gnome.members;
60 platforms = platforms.linux;
61 license = licenses.lgpl21Plus;
62 };
63}