Ludovic Courtès <l...@gnu.org> writes:
> Hello! > > For the record, this is a followup to Efraim’s proposal in > <https://issues.guix.gnu.org/51845>. > > Efraim Flashner <efr...@flashner.co.il> skribis: > >> Option 1: >> Track down the ~220 crates which form the dependency graph (of crates) >> for librsvg and pin them until the next core-updates cycle. Continue >> like with other packages and add newer versions (like cmake or meson) as >> packages need them.¹ > > The advantage of this approach is that we could do it incrementally: we > could merge ‘core-updates-frozen’ today and just add pinned variants of > these 200+ crates as needed as time passes. The downside is that it’s a > lot of crates to take care of, and we might still accidentally overlook > seemingly innocuous crate upgrades that end up causing major rebuilds. > >> Option 2: >> Use the bundled crates and treat it as just part of the librsvg source >> code.² >> >> Option 2b: >> Use the bundled crates for now to finish with core-updates-frozen and >> revisit this immediately on core-updates (not frozen). > > This option will involved a rebuild on x86_64, but the advantage is that > we’ll be safe going forward: we won’t accidentally cause world rebuilds > just because an obscure crate somewhere has been upgraded. > > [...] > >> I'm currently leaning option 2b, it'll get us past this hurdle for >> core-updates-frozen and let us make changes to the crates as we work to >> integrate them more fully into Guix. > > Same here; it’s not ideal, but it seems like the most reasonable > short-term option. > > If there are no objections, I’d suggest that you go ahead with this > plan. I agree that 2b is the most sensible option in our current situation. -- Ricardo