`updateScript` lets us update packages automatically.
For packages that are hosted on the gnome mirror it's very easy to add
that. Inspired by https://github.com/NixOS/nixpkgs/issues/36150
Semi-automatic update. These checks were done:
- built on NixOS
- ran `/nix/store/6i54qzjbf3645yavr53qbvm12ddr9y7b-gtk-doc-1.27/bin/gtkdoc-depscan -h` got 0 exit code
- ran `/nix/store/6i54qzjbf3645yavr53qbvm12ddr9y7b-gtk-doc-1.27/bin/gtkdoc-depscan --help` got 0 exit code
- ran `/nix/store/6i54qzjbf3645yavr53qbvm12ddr9y7b-gtk-doc-1.27/bin/gtkdoc-depscan --version` and found version 1.27
- ran `/nix/store/6i54qzjbf3645yavr53qbvm12ddr9y7b-gtk-doc-1.27/bin/gtkdocize --help` got 0 exit code
- ran `/nix/store/6i54qzjbf3645yavr53qbvm12ddr9y7b-gtk-doc-1.27/bin/gtkdocize --version` and found version 1.27
- found 1.27 with grep in /nix/store/6i54qzjbf3645yavr53qbvm12ddr9y7b-gtk-doc-1.27
- found 1.27 in filename of file in /nix/store/6i54qzjbf3645yavr53qbvm12ddr9y7b-gtk-doc-1.27
We are patching the xmlcatalog calls in the JH_CHECK_XML_CATALOG
macro to use the XML_CATALOG_FILES environment variable instead
of a single central catalog file. Since consumers (libraries or
applications) are expected to copy the m4 files to their source
tree, we need to patch them separately. The files should be
identical, though, so we can reuse the patch for gtk_doc.
This commit makes the patch available in passthru so the consumer
expressions do not need to maintain the long relative path.
In the previous commit, we added a setup hook to docbook dtd and xsl
packages, that adds derivation’s catalog file to an environment variable.
That should, in theory, remove the need for declaring their catalogs manually.
Unfortunately, xmlcatalog utility expects exactly one catalog file, completely
disregarding the environment variable in non-interactive context. In the same
spirit, the design of gtk-doc m4 files only admits a single catalog file,
resulting in another ugly hack.
- fix in silencing some moveToOutput messages
- allow removing (developer) documentation even without defining outputs
(note: some paths are auto-removed by default, e.g. gtk-doc and man3)