5c370c0b2a
GitOrigin-RevId: 33d1e753c82ffc557b4a585c77de43d4c922ebb5
86 lines
2.1 KiB
Nix
86 lines
2.1 KiB
Nix
{ stdenv
|
|
, lib
|
|
, fetchFromGitHub
|
|
, fetchpatch2
|
|
, pkg-config
|
|
, meson
|
|
, ninja
|
|
, gobject-introspection
|
|
, python3
|
|
, libyaml
|
|
, rpm
|
|
, file
|
|
, gtk-doc
|
|
, docbook-xsl-nons
|
|
, docbook_xml_dtd_412
|
|
, glib
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "libmodulemd";
|
|
version = "2.15.0";
|
|
|
|
outputs = [ "bin" "out" "dev" "devdoc" "man" "py" ];
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "fedora-modularity";
|
|
repo = pname;
|
|
rev = "${pname}-${version}";
|
|
sha256 = "sha256-mIyrdksyEk1AKV+vw4g8LUwlQRzwwMkPDuCbw2IiNcA=";
|
|
};
|
|
|
|
patches = [
|
|
# Adapt to GLib 2.79 documentation
|
|
# https://github.com/fedora-modularity/libmodulemd/pull/612
|
|
(fetchpatch2 {
|
|
url = "https://github.com/fedora-modularity/libmodulemd/commit/9d2809090cc0cccd7bab67453dc00cf43a289082.patch";
|
|
hash = "sha256-dMtc6GN6lIDjUReFUhEFJ/8wosASo3tLu4ve72BCXQ8=";
|
|
})
|
|
(fetchpatch2 {
|
|
url = "https://github.com/fedora-modularity/libmodulemd/commit/29c339a31b1c753dcdef041e5c2e0e600e48b59d.patch";
|
|
hash = "sha256-uniHrQdbcXlJk2hq106SgV/E330LfxDc07E4FbOMLr0=";
|
|
})
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
pkg-config
|
|
meson
|
|
ninja
|
|
gtk-doc
|
|
docbook-xsl-nons
|
|
docbook_xml_dtd_412
|
|
gobject-introspection
|
|
];
|
|
|
|
buildInputs = [
|
|
libyaml
|
|
rpm
|
|
file # for libmagic
|
|
glib
|
|
];
|
|
|
|
mesonFlags = [
|
|
"-Dgobject_overrides_dir_py3=${placeholder "py"}/${python3.sitePackages}/gi/overrides"
|
|
];
|
|
|
|
postPatch = ''
|
|
# Use proper glib devdoc path
|
|
substituteInPlace meson.build --replace-fail \
|
|
"glib_docpath = join_paths(glib_prefix," "glib_docpath = join_paths('${lib.getOutput "devdoc" glib}',"
|
|
'';
|
|
|
|
postFixup = ''
|
|
# Python overrides depend our own typelibs and other packages
|
|
mkdir -p "$py/nix-support"
|
|
echo "$out ${python3.pkgs.pygobject3} ${python3.pkgs.six}" > "$py/nix-support/propagated-build-inputs"
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "C Library for manipulating module metadata files";
|
|
mainProgram = "modulemd-validator";
|
|
homepage = "https://github.com/fedora-modularity/libmodulemd";
|
|
license = licenses.mit;
|
|
maintainers = with maintainers; [ ];
|
|
platforms = platforms.linux ++ platforms.darwin;
|
|
};
|
|
}
|