storj-uplink: 1.119.15 -> 1.120.4 (#375732)
[NixPkgs.git] / pkgs / by-name / li / libosinfo / package.nix
blob93cb538b59093bff1b427729da6dfedb98a6768a
2   lib,
3   stdenv,
4   fetchurl,
5   fetchpatch,
6   pkg-config,
7   meson,
8   ninja,
9   gettext,
10   gobject-introspection,
11   gtk-doc,
12   docbook_xsl,
13   glib,
14   libsoup_3,
15   libxml2,
16   libxslt,
17   check,
18   curl,
19   perl,
20   hwdata,
21   osinfo-db,
22   substituteAll,
23   vala ? null,
26 stdenv.mkDerivation rec {
27   pname = "libosinfo";
28   version = "1.11.0";
30   src = fetchurl {
31     url = "https://releases.pagure.org/${pname}/${pname}-${version}.tar.xz";
32     sha256 = "sha256-G/lu7J4UYPPRpxMWPMof8NSAo0kLUImSkvFFSLOpa2A=";
33   };
35   outputs = [
36     "out"
37     "dev"
38   ] ++ lib.optional (stdenv.hostPlatform == stdenv.buildPlatform) "devdoc";
40   nativeBuildInputs = [
41     pkg-config
42     meson
43     ninja
44     vala
45     gettext
46     gobject-introspection
47     gtk-doc
48     docbook_xsl
49     perl # for pod2man
50   ];
51   buildInputs = [
52     glib
53     libsoup_3
54     libxml2
55     libxslt
56   ];
57   nativeCheckInputs = [
58     check
59     curl
60     perl
61   ];
63   patches = [
64     (substituteAll {
65       src = ./osinfo-db-data-dir.patch;
66       osinfo_db_data_dir = "${osinfo-db}/share";
67     })
69     # Fix build with libxml 2.12
70     (fetchpatch {
71       url = "https://gitlab.com/libosinfo/libosinfo/-/commit/5bbdd06503456784c5ffa22409e8bab50470d673.patch";
72       hash = "sha256-KqgHXI+lD5VYp2wtA58Drp15TgNK1O3xCaYBy4/B9wc=";
73     })
74   ];
76   mesonFlags = [
77     "-Dwith-usb-ids-path=${hwdata}/share/hwdata/usb.ids"
78     "-Dwith-pci-ids-path=${hwdata}/share/hwdata/pci.ids"
79     "-Denable-gtk-doc=true"
80   ];
82   preCheck = ''
83     patchShebangs ../osinfo/check-symfile.pl ../osinfo/check-symsorting.pl
84   '';
86   doCheck = true;
88   meta = with lib; {
89     description = "GObject based library API for managing information about operating systems, hypervisors and the (virtual) hardware devices they can support";
90     homepage = "https://libosinfo.org/";
91     changelog = "https://gitlab.com/libosinfo/libosinfo/-/blob/v${version}/NEWS";
92     license = licenses.lgpl2Plus;
93     platforms = platforms.unix;
94     maintainers = [ maintainers.bjornfor ];
95   };