diff --git a/pkgs/by-name/os/osm-gps-map/dont-require-libsoup.patch b/pkgs/by-name/os/osm-gps-map/dont-require-libsoup.patch new file mode 100644 index 000000000000..425fa95e508b --- /dev/null +++ b/pkgs/by-name/os/osm-gps-map/dont-require-libsoup.patch @@ -0,0 +1,13 @@ +diff --git a/osmgpsmap-1.0.pc.in b/osmgpsmap-1.0.pc.in +index 86efb3c..da6d1a9 100644 +--- a/osmgpsmap-1.0.pc.in ++++ b/osmgpsmap-1.0.pc.in +@@ -6,6 +6,7 @@ includedir=@includedir@ + Name: @PACKAGE_NAME@ + Description: Moving map widget using openstreet map data + Version: @PACKAGE_VERSION@ +-Requires: gtk+-3.0 libsoup-2.4 ++Requires: gtk+-3.0 ++Requires.private: libsoup-2.4 + Libs: -L${libdir} -losmgpsmap-1.0 + Cflags: -I${includedir}/osmgpsmap-1.0 diff --git a/pkgs/by-name/os/osm-gps-map/package.nix b/pkgs/by-name/os/osm-gps-map/package.nix index 4bae4c46fd45..5f480db6582e 100644 --- a/pkgs/by-name/os/osm-gps-map/package.nix +++ b/pkgs/by-name/os/osm-gps-map/package.nix @@ -11,15 +11,22 @@ stdenv, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "osm-gps-map"; version = "1.2.0"; src = fetchzip { - url = "https://github.com/nzjrs/osm-gps-map/releases/download/${version}/osm-gps-map-${version}.tar.gz"; + url = "https://github.com/nzjrs/osm-gps-map/releases/download/${finalAttrs.version}/osm-gps-map-${finalAttrs.version}.tar.gz"; sha256 = "sha256-ciw28YXhR+GC6B2VPC+ZxjyhadOk3zYGuOssSgqjwH0="; }; + patches = [ + # libsoup is only used internally + # it should only be listed as private requirement + # https://github.com/nzjrs/osm-gps-map/pull/108 + ./dont-require-libsoup.patch + ]; + outputs = [ "out" "dev" @@ -35,15 +42,18 @@ stdenv.mkDerivation rec { buildInputs = [ cairo glib - gtk3 libsoup_2_4 ]; - meta = with lib; { + propagatedBuildInputs = [ + gtk3 + ]; + + meta = { description = "GTK widget for displaying OpenStreetMap tiles"; homepage = "https://nzjrs.github.io/osm-gps-map"; - license = licenses.gpl2Plus; - maintainers = with maintainers; [ hrdinka ]; - platforms = platforms.linux ++ platforms.darwin; + license = lib.licenses.gpl2Plus; + maintainers = with lib.maintainers; [ hrdinka ]; + platforms = lib.platforms.linux ++ lib.platforms.darwin; }; -} +})