guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#47484] [PATCH]: Use 'gtk-doc/stable' instead of 'gtk-doc' in native


From: Maxime Devos
Subject: [bug#47484] [PATCH]: Use 'gtk-doc/stable' instead of 'gtk-doc' in native-inputs
Date: Mon, 29 Mar 2021 21:20:35 +0200
User-agent: Evolution 3.34.2

Hi Guix,

See: <https://lists.gnu.org/archive/html/guix-devel/2021-03/msg00538.html>

* Patch #1: Use 'gtk-doc/stable' instead of 'gtk-doc' in native-inputs

To test packages can still be built:

<start snip>
PACKAGES="thermald glimpse glib mate-desktop atril caja-extensions"
PACKAGES+=" mate-utils eom engrampa pluma mate-polkit"
PACKAGES+=" libgnt loudmouth denemo gsequencer libu2f-host libu2f-server"
PACKAGES+=" keybinder keybinder-3.0"

./pre-inst-env guix build $PACKAGES -M

# Output:
The following derivation will be built:
   /gnu/store/n84fwcigw3djfxv12iqv76bwp2gx9mnf-denemo-2.5.0.drv
The following files will be downloaded:
[...]

./pre-inst-env guix build denemo
[Bla bla.]
# Success!

<end snip>

To test no references to imagemagick or gtk-doc are retained:

./pre-inst-env guix graph --type=references $PACKAGES
# ^ search for imagemagick in output
# ^ TODO it should not be required to substitute $PACKAGES
#   first, as the 'references' information is in the narinfo.

* Patch #2: Export canonicalize-reference
* Patch #3: Add a '#:disallowed-references' argument to 'python-build'.

Used in later patches.

* Patch #4: Let 'python-sphinx' use 'imagemagick/stable'.

python-sphinx depends on imagemagick.  As (before this patch series),
many packages depend on 'python-sphinx' ...

<start snip>
guix refresh --list-dependent python-sphinx
Building the following 199 packages would ensure 427 dependent packages are 
rebuilt: [...]
<end snip>

... it may be worthwile to depend a /stable variant of python-sphinx,
and use it when sphinx is used only for generating the documentation.
However, defining a variant of python-sphinx is not required,
as python-sphinx does not retain its reference to imagemagick.

Thus, I simply replaced 'imagemagick' with 'imagemagick/stable' in the
inputs.  To make sure python-sphinx does not retain references to 
imagemagick/stable,
I added #:disallowed-references `(,imagemagick/stable) to #:arguments.

It is commented out in the patch to avoid rebuilds:

$ ./pre-inst-env guix build python-sphinx
> substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
> 1.6 MB will be downloaded:
>    /gnu/store/sf2kdppaf8z2ri40rlp27l7ffkd8kvyf-python-sphinx-3.3.1
> substituting 
> /gnu/store/sf2kdppaf8z2ri40rlp27l7ffkd8kvyf-python-sphinx-3.3.1...
> downloading from 
> https://ci.guix.gnu.org/nar/lzip/sf2kdppaf8z2ri40rlp27l7ffkd8kvyf-python-sphinx-3.3.1
>  ...
>  python-sphinx-3.3.1  1.5MiB                                    121KiB/s 
> 00:13 [##################] 100.0%
> [...]

When uncommented, 'python-sphinx' still builds.


* Patch #5 .. #10: I replaced imagemagick with imagemagick/stable in some 
packages

* After this patch series: how many packages would be rebuild if imagemagick
  is updated?

$ ./pre-inst-env guix refresh --list-dependent imagemagick@6.9.12-4
> Building the following 47 packages would ensure 73 dependent packages are 
> rebuilt: [..]

Also, I verified ./pre-inst-env guix build guix still succeeds.

Greetings,
Maxime.

Attachment: 0001-gnu-Use-gtk-doc-stable-in-native-inputs-instead-of-g.patch
Description: Text Data

Attachment: 0002-guix-build-system-gnu-Export-canonicalize-reference.patch
Description: Text Data

Attachment: 0003-build-system-python-Add-disallowed-references.patch
Description: Text Data

Attachment: 0004-gnu-sphinx-Use-imagemagick-stable-variant.patch
Description: Text Data

Attachment: 0005-gnu-wpa-supplicant-gui-Use-imagemagick-stable-varian.patch
Description: Text Data

Attachment: 0006-gnu-wpa-supplicant-gui-Don-t-return-t-from-phases.patch
Description: Text Data

Attachment: 0007-guix-build-system-qt-Support-disallowed-references.patch
Description: Text Data

Attachment: 0008-gnu-bandage-Do-not-yet-use-the-imagemagick-stable-va.patch
Description: Text Data

Attachment: 0009-guix-build-system-cmake-Support-disallowed-reference.patch
Description: Text Data

Attachment: 0010-gnu-inkscape-1.0-Do-not-yet-use-imagemagick-stable.patch
Description: Text Data

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]