61 lines
1.9 KiB
Nix
61 lines
1.9 KiB
Nix
{ fetchurl, stdenv, fetchpatch, intltool, pkgconfig, gtk-doc, docbook_xsl, docbook_xml_dtd_412, glib, json-glib, libsoup, libnotify, gdk_pixbuf
|
|
, modemmanager, avahi, glib-networking, wrapGAppsHook, gobjectIntrospection
|
|
, withDemoAgent ? false
|
|
}:
|
|
|
|
with stdenv.lib;
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "geoclue-${version}";
|
|
version = "2.4.12";
|
|
|
|
src = fetchurl {
|
|
url = "https://www.freedesktop.org/software/geoclue/releases/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
|
sha256 = "1jnad1f3rf8h05sz1lc172jnqdhqdpz76ff6m7i5ss3s0znf5l05";
|
|
};
|
|
|
|
outputs = [ "out" "dev" "devdoc" ];
|
|
|
|
nativeBuildInputs = [
|
|
pkgconfig intltool wrapGAppsHook gobjectIntrospection
|
|
# devdoc
|
|
gtk-doc docbook_xsl docbook_xml_dtd_412
|
|
];
|
|
|
|
buildInputs = [
|
|
glib json-glib libsoup avahi
|
|
] ++ optionals withDemoAgent [
|
|
libnotify gdk_pixbuf
|
|
] ++ optionals (!stdenv.isDarwin) [ modemmanager ];
|
|
|
|
propagatedBuildInputs = [ glib glib-networking ];
|
|
|
|
# Whitelist elementary's agent
|
|
patches = [
|
|
(fetchpatch {
|
|
url = "https://gitlab.freedesktop.org/geoclue/geoclue/commit/2b0491e408be1ebcdbe8751bb2637c1acb78f71e.patch";
|
|
sha256 = "0pac94y55iksk340dlx3gkhb9lrci90mxqqy5fnh1zbjw9bqxfn4";
|
|
})
|
|
];
|
|
|
|
configureFlags = [
|
|
"--with-systemdsystemunitdir=$(out)/etc/systemd/system"
|
|
"--enable-introspection"
|
|
"--enable-gtk-doc"
|
|
"--enable-demo-agent=${if withDemoAgent then "yes" else "no"}"
|
|
] ++ optionals stdenv.isDarwin [
|
|
"--disable-silent-rules"
|
|
"--disable-3g-source"
|
|
"--disable-cdma-source"
|
|
"--disable-modem-gps-source"
|
|
"--disable-nmea-source"
|
|
];
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "Geolocation framework and some data providers";
|
|
homepage = https://gitlab.freedesktop.org/geoclue/geoclue/wikis/home;
|
|
maintainers = with maintainers; [ raskin garbas ];
|
|
platforms = with platforms; linux ++ darwin;
|
|
license = licenses.lgpl2;
|
|
};
|
|
}
|