Hello Mark and Léo, Am Mon, Mar 22, 2021 at 05:12:35PM -0400 schrieb Mark H Weaver: > However, I think it would be going too far to adopt your proposal as a > general rule for all grafts. In some cases, it can clearly be seen that > an upstream release includes little more than bug fixes. For example, > if the recent gvfs-1.40.2 security update had required grafting, I would > not have hesitated to do so, and that would have been much simpler and > IMO cleaner than importing the upstream patches into our tree.
Am Tue, Mar 23, 2021 at 02:34:52PM +0100 schrieb Léo Le Bouter: > In general my opinion is that backporting fixes is time-consuming and > that if we have to do it each time I wont be able to keep up with the > load. I'd rather update things to a version that already includes fixes > and is supported by upstream even at the cost of world rebuilds. I > can't deal with upstreams who either do not backport fixes, or don't > integrate fixes at all. these are very good arguments, which I understand and share. But moving to another version is problematic even when there is no soname bump, as I wrote in my bug report https://issues.guix.gnu.org/47315; grafts with different version numbers lead to a command line behaviour that is not understandable: $ guix package -A imagemagick imagemagick 6.9.12-2g out,doc gnu/packages/imagemagick.scm:132:2 imagemagick 6.9.11-48 out,doc gnu/packages/imagemagick.scm:48:2 $ guix build imagemagick@6.9.11 guix build: error: imagemagick: package not found for version 6.9.11 $ guix build imagemagick@6.9.11-48 /gnu/store/c30y49vg735g6b4hh590zrc9fmvcsy0w-imagemagick-6.9.12-2g-doc /gnu/store/l3hr0fimip6v7vmkgxbqygsglxaxasy0-imagemagick-6.9.12-2g >From a user's perspective, inkscape@6.9.11 is at the time there and not there; it is shown by "guix package", but then not accessible for install- ation, but silently "glossed over" in favour of a different version. I just noticed that I can do this: $ guix build imagemagick@6.9.11-48 --no-grafts /gnu/store/wlnciwhn6llwqwywf4hq739v5bbcrq3h-imagemagick-6.9.11-48-doc /gnu/store/vlix7fclb7ifjgmxgpwr1pvraff89w7b-imagemagick-6.9.11-48 But I can also do this: $ guix build imagemagick@6.9.12-2g --no-grafts /gnu/store/4s20df0zjmmys8zvlvynksrwz5xqk9ls-imagemagick-6.9.12-2g-doc /gnu/store/7iwx7rj1ipsbgb9wgimrrflniyxpilw3-imagemagick-6.9.12-2g where I do not know what I would have expected - the ungrafted version of 6.9.12 is 6.9.11, no? At the same time, for once it respects my wish for a specific version. Otherwise said, grafting to different versions breaks our semantic for designating packages, in which version numbers play an important role, and replaces it by a mess which even with the examples above I have a hard time understanding. Caeterum censeo: The real fix is probably to do less grafts and more rebuilds... Andreas