From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: [PATCH] gnu: Add libosinfo. Date: Tue, 16 Feb 2016 14:24:59 +0100 Message-ID: References: <6fad26579ed8d83868da31c85a816d1d@openmailbox.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:42929) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aVfct-0004UA-Oo for guix-devel@gnu.org; Tue, 16 Feb 2016 08:25:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aVfcq-000627-Hg for guix-devel@gnu.org; Tue, 16 Feb 2016 08:25:11 -0500 Received: from pegasus.bbbm.mdc-berlin.de ([141.80.25.20]:33002) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aVfcq-000611-5F for guix-devel@gnu.org; Tue, 16 Feb 2016 08:25:08 -0500 In-Reply-To: <6fad26579ed8d83868da31c85a816d1d@openmailbox.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: rennes@openmailbox.org Cc: guix-devel@gnu.org rennes@openmailbox.org writes: > i attached libosinfo patch required for GNOME Boxes. Thank you very much! Below I=E2=80=99ll add a couple of comments. I=E2=80= =99m not sure about a couple of things and I hope you can shed some light on these issues. > Considerations: > > a) In the source i used=20 > "https://fedorahosted.org/releases/l/i/libosinfo" instead=20 > "mirror://gnome/sources/". The project home page points to fedorahosted.org for downloading releases. I don=E2=80=99t even find the libosinfo sources on ftp.gnome.o= rg, so I think your choice is completely fine. > b) In native inputs, i used "vala" instead "glib:bin"; i follow the=20 > README. I don=E2=80=99t understand what you mean. Vala and glib:bin are not the = same thing. Following the README is a good idea. If we don=E2=80=99t need =E2=80=9Cglib:bin=E2=80=9D then it=E2=80=99s the right thing not to add i= t. > From 073a183499bd764b0b0efc246748638c6e4d3aeb Mon Sep 17 00:00:00 2001 > From: Rene Saavedra > Date: Sat, 13 Feb 2016 16:23:10 -0600 > Subject: [PATCH] gnu: Add libosinfo. > * gnu/packages/gnome.scm (libosinfo): New variable. OK. > + > +(define-public libosinfo > + (package > + (name "libosinfo") > + (version "0.3.0") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "https://fedorahosted.org/releases/l/i/libo= sinfo/" > + name "-" version ".tar.gz")) > + (sha256 > + (base32 > + "1g7g5hc4lhi4y0j3mbcj19hawlqkflni1zk4aggrx49fg5l392jk")))) The indentation of the =E2=80=9C(base32=E2=80=9D expression is wrong; the= opening parenthesis should be aligned with the =E2=80=98s=E2=80=99 of =E2=80=9C(s= ha256=E2=80=9D. (Don=E2=80=99t worry about this too much =E2=80=94 I can fix this before pushing if you don=E2= =80=99t get it right.) > + (build-system glib-or-gtk-build-system) Is this necessary or can we use the simpler =E2=80=9Cgnu-build-system=E2=80= =9D instead? > + (native-inputs > + `(("check" ,check) > + ("intltool" ,intltool) > + ("libsoup" ,libsoup) > + ("pkg-config" ,pkg-config) > + ("vala" ,vala) > + ("wget" ,wget))) Why are =E2=80=9Cwget=E2=80=9D and =E2=80=9Clibsoup=E2=80=9D native input= s? In the build environment there is no network access, so wget cannot be used to download anything. Is libosinfo linked with libsoup? If so, it should be a regular input, not among the native-inputs. > + (inputs > + `(("libxslt" ,libxslt))) Does it link with libxslt? Or is it used at build time only (e.g. for building manuals from XML sources)? > + (home-page "https://libosinfo.org") > + (synopsis "Library for managing information about operating system= s") > + (description > + "libosinfo is a GObject based library API for managing informatio= n about > +operating systems, hypervisors and the (virtual) hardware devices they= can > +support. It includes a database containing device metadata and provid= es APIs > +to match/identify optimal devices for deploying an operating system on= a > +hypervisor. Via the magic of GObject Introspection, the API is availa= ble in all > +common programming languages with demos for javascript (GJS/Seed) and = python > +(PyGObject). Also provided are Vala bindings.") I would cut =E2=80=9Cthe magic of=E2=80=9D. Please also replace =E2=80=9C= javascript=E2=80=9D with =E2=80=9CJavaScript=E2=80=9D and =E2=80=9Cpython=E2=80=9D with =E2=80=9CP= ython=E2=80=9D. Are the examples and the Vala bindings actually installed? I see that gobject-introspection is not among the inputs, so I wonder if=20 > + (license license:lgpl2.1+))) At least =E2=80=9Ctools/osinfo-query.c=E2=80=9D has a license header that= says it=E2=80=99s released under GPLv2+. It is better to make the license field hold a list of =E2=80=9C(license:gpl2+ license:lgpl2.1+)=E2=80=9D with a comment= above it that explains what files are under GPL (the tools) and what files are LGPL (the library). Could you please send an updated patch (after clarifying the points above if they are confusing/contentious)? Thanks again for the patch! ~~ Ricardo