Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / libraries / libshumate / default.nix
blobe449a9085bbef929639ab66ff1707afa51640066
1 { lib
2 , stdenv
3 , fetchFromGitLab
4 , gi-docgen
5 , meson
6 , ninja
7 , pkg-config
8 , vala
9 , gobject-introspection
10 , glib
11 , cairo
12 , sqlite
13 , libsoup_3
14 , gtk4
15 , xvfb-run
16 , gnome
19 stdenv.mkDerivation rec {
20   pname = "libshumate";
21   version = "1.0.5";
23   outputs = [ "out" "dev" "devdoc" ];
24   outputBin = "devdoc"; # demo app
26   src = fetchFromGitLab {
27     domain = "gitlab.gnome.org";
28     owner = "GNOME";
29     repo = "libshumate";
30     rev = version;
31     sha256 = "mHfhCKzLfP1BkqM+FiLUlo/I0TCe3G8C0lmO6007pMY=";
32   };
34   nativeBuildInputs = [
35     gi-docgen
36     meson
37     ninja
38     pkg-config
39     vala
40     gobject-introspection
41   ];
43   buildInputs = [
44     glib
45     cairo
46     sqlite
47     libsoup_3
48     gtk4
49   ];
51   nativeCheckInputs = [
52     xvfb-run
53   ];
55   mesonFlags = [
56     "-Ddemos=true"
57   ];
59   doCheck = !stdenv.isDarwin;
61   checkPhase = ''
62     runHook preCheck
64     env \
65       HOME="$TMPDIR" \
66       GTK_A11Y=none \
67       xvfb-run meson test --print-errorlogs
69     runHook postCheck
70   '';
72   postFixup = ''
73     # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
74     moveToOutput share/doc/libshumate-1.0 "$devdoc"
75   '';
77   passthru = {
78     updateScript = gnome.updateScript {
79       packageName = pname;
80       versionPolicy = "none";
81     };
82   };
84   meta = with lib; {
85     description = "GTK toolkit providing widgets for embedded maps";
86     homepage = "https://gitlab.gnome.org/GNOME/libshumate";
87     license = licenses.lgpl21Plus;
88     maintainers = teams.gnome.members;
89     platforms = platforms.unix;
90   };