diff --git a/pkgs/development/libraries/libshumate/default.nix b/pkgs/development/libraries/libshumate/default.nix new file mode 100644 index 0000000000000..db669e5b6730c --- /dev/null +++ b/pkgs/development/libraries/libshumate/default.nix @@ -0,0 +1,85 @@ +{ lib +, stdenv +, fetchFromGitLab +, gi-docgen +, meson +, ninja +, pkg-config +, vala +, gobject-introspection +, glib +, cairo +, sqlite +, libsoup +, gtk4 +, xvfb-run +, unstableGitUpdater +}: + +stdenv.mkDerivation rec { + pname = "libshumate"; + version = "unstable-2021-10-06"; + + outputs = [ "out" "dev" "devdoc" ]; + outputBin = "devdoc"; # demo app + + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "GNOME"; + repo = "libshumate"; + rev = "7a0a03f299881e8faaac7d904cc47b74795ae5dd"; + sha256 = "df8ZHn/wmkzaYH0L3E6ULUtqxqU71EqL0jSgKhWqlT8="; + }; + + nativeBuildInputs = [ + gi-docgen + meson + ninja + pkg-config + vala + gobject-introspection + ]; + + buildInputs = [ + glib + cairo + sqlite + libsoup + gtk4 + ]; + + checkInputs = [ + xvfb-run + ]; + + mesonFlags = [ + "-Ddemos=true" + ]; + + doCheck = true; + + checkPhase = '' + runHook preCheck + + HOME=$TMPDIR xvfb-run meson test + + runHook postCheck + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput share/doc/libshumate-0.0 "$devdoc" + ''; + + passthru.updateScript = unstableGitUpdater { + url = meta.homepage; + }; + + meta = with lib; { + description = "GTK toolkit providing widgets for embedded maps"; + homepage = "https://gitlab.gnome.org/GNOME/libshumate"; + license = licenses.lgpl21Plus; + maintainers = teams.gnome.members; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 74f6dfe30ce3b..86d3e014d716d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6668,6 +6668,8 @@ with pkgs; autoreconfHook = buildPackages.autoreconfHook269; }; + libshumate = callPackage ../development/libraries/libshumate { }; + libsmartcols = callPackage ../development/libraries/libsmartcols { }; libsmi = callPackage ../development/libraries/libsmi { };