From e70d829bdb9f51d82e1ef54e444964e6dcf5ed3c Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 20 Feb 2022 12:05:21 +0100 Subject: [PATCH] libgovirt: clean up MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Split outputs to prevent closure contamination with propagated dependencies’ dev outputs. - Use mirror URL. - Add update script (also change source URL so it can be auto-updated). - Correct dependencies: - Even though glib is propagated by other dependencies, let’s add it here as well for completeness. - libsoup should not need to be propagated. - Add gobject-introspection (on by default with meson). - Use correct non-deprecated license. - Reduce scope of lib. Ideally, we would also switch to Meson but it currently specifies dependencies incorrectly: https://gitlab.gnome.org/GNOME/libgovirt/-/merge_requests/15 --- .../virtualization/libgovirt/default.nix | 36 +++++++++++++------ 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/virtualization/libgovirt/default.nix b/pkgs/applications/virtualization/libgovirt/default.nix index bd92f7666abf..9c9da54c3632 100644 --- a/pkgs/applications/virtualization/libgovirt/default.nix +++ b/pkgs/applications/virtualization/libgovirt/default.nix @@ -2,38 +2,52 @@ , stdenv , fetchurl , glib +, gnome , librest , libsoup , pkg-config +, gobject-introspection }: -with lib; - stdenv.mkDerivation rec { pname = "libgovirt"; version = "0.3.8"; - src = fetchurl { - url = "https://download.gnome.org/sources/libgovirt/0.3/${pname}-${version}.tar.xz"; - sha256 = "sha256-HckYYikXa9+p8l/Y+oLAoFi2pgwcyAfHUH7IqTwPHfg="; - }; + outputs = [ "out" "dev" ]; - enableParallelBuilding = true; + src = fetchurl { + url = "mirror://gnome/sources/libgovirt/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "HckYYikXa9+p8l/Y+oLAoFi2pgwcyAfHUH7IqTwPHfg="; + }; nativeBuildInputs = [ pkg-config + gobject-introspection ]; - propagatedBuildInputs = [ - librest + buildInputs = [ libsoup ]; - meta = { + propagatedBuildInputs = [ + glib + librest + ]; + + enableParallelBuilding = true; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + versionPolicy = "none"; + }; + }; + + meta = with lib; { homepage = "https://gitlab.gnome.org/GNOME/libgovirt"; description = "GObject wrapper for the oVirt REST API"; maintainers = [ maintainers.amarshall ]; platforms = platforms.linux; - license = licenses.lgpl21; + license = licenses.lgpl21Plus; }; }