<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <TITLE> [Mageia-dev] RFC: Add versioned require in rpm on rpm-helper </TITLE> <LINK REL="Index" HREF="index.html" > <LINK REL="made" HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20RFC%3A%20Add%20versioned%20require%20in%20rpm%20on%20rpm-helper&In-Reply-To=%3C4F8C2287.5000104%40colin.guthr.ie%3E"> <META NAME="robots" CONTENT="index,nofollow"> <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> <LINK REL="Previous" HREF="014344.html"> <LINK REL="Next" HREF="014348.html"> </HEAD> <BODY BGCOLOR="#ffffff"> <H1>[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper</H1> <B>Colin Guthrie</B> <A HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20RFC%3A%20Add%20versioned%20require%20in%20rpm%20on%20rpm-helper&In-Reply-To=%3C4F8C2287.5000104%40colin.guthr.ie%3E" TITLE="[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper">mageia at colin.guthr.ie </A><BR> <I>Mon Apr 16 15:45:43 CEST 2012</I> <P><UL> <LI>Previous message: <A HREF="014344.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper </A></li> <LI>Next message: <A HREF="014348.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper </A></li> <LI> <B>Messages sorted by:</B> <a href="date.html#14346">[ date ]</a> <a href="thread.html#14346">[ thread ]</a> <a href="subject.html#14346">[ subject ]</a> <a href="author.html#14346">[ author ]</a> </LI> </UL> <HR> <!--beginarticle--> <PRE>'Twas brillig, and Pascal Terjan at 16/04/12 14:35 did gyre and gimble: ><i> On Mon, Apr 16, 2012 at 14:23, Colin Guthrie <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">mageia at colin.guthr.ie</A>> wrote: </I>>><i> 'Twas brillig, and Thierry Vignaud at 16/04/12 13:04 did gyre and gimble: </I>>>><i> On 16 April 2012 13:15, Colin Guthrie <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">mageia at colin.guthr.ie</A>> wrote: </I>>>>><i> <snip> </I>>>>><i> </I>>>>><i> So just to make sure I'm following this right: </I>>>>><i> 1. Versioned require will fix urpmi-based upgrades. </I>>>>><i> </I>>>>><i> 2. Installer (fresh-install) will be fine because basesystem-minimal </I>>>>><i> will pull in rpm which will pull in rpm-helper. WE can be confident </I>>>>><i> this will happen early. </I>>>><i> </I>>>><i> No you cannot on upgrade. </I>>>><i> Package ordering will depends on versioned requires. </I>>><i> </I>>><i> I don't understand... This is a fresh install, where did upgrade come </I>>><i> into it? </I>>><i> </I>>><i> Just to clarify, the *fresh install* case is fine, it's the *upgrade* </I>>><i> case (which I specifically outlined separately below to avoid confusion </I>>><i> - although that clearly failed) that has the problem. Correct? </I>>><i> </I>>>>><i> 3. Installer (upgrade) will still be broken as it does not treat the </I>>>>><i> rpm package inside the chroot as any kind of priority update that is </I>>>>><i> installed early in the upgrade process. </I>>>><i> </I>>>><i> installer upgrade will be OK if systemd unit packages require a recent </I>>>><i> enough rpm-helper </I>>><i> </I>>><i> I wasn't really looking for solutions, just trying to understand the </I>>><i> problem clearly. Proposed solutions often cloud the thinking about the </I>>><i> problem itself. </I>>><i> </I>>><i> </I>>><i> So putting "Requires(pre): systemd-units" in all packages providing a </I>>><i> systemd unit seems wrong (it doesn't require systemd-units at all, so </I>>><i> this is a fake requires). </I>>><i> </I>>><i> Putting "Requires(pre): rpm-helper >= $ver" also seems somewhat overkill </I>>><i> and hard to maintain (e.g. what if some other new thing goes into </I>>><i> rpm-helper? We have to rebuild all packages that use any of the macros </I>>><i> inside it to get the appropriate versioned require which seems awkward </I>>><i> and hard to maintain[1]). </I>><i> </I>><i> If a package requires a new script, it means there is a call to this </I>><i> script, so I would expect that it was built after this new script was </I>><i> added. </I> OK, but at present most of the packages that make use of %_post_service and friends do not actually require rpm-helper at all. They simply rely on it being there from basesystem-minimal. So I guess doing autorequires would work in most cases - this case i somewhat special as we're retro fitting the requirement, and thus need a mass-rebuild. I guess I can live with this if someone can do the necessary foo to add the appropriate requires automatically. I can't help but feel this would still be more appropriately dealt with in the installer by making it honour priority updates, even on a not-currently-running machine. Col -- Colin Guthrie colin(at)mageia.org <A HREF="http://colin.guthr.ie/">http://colin.guthr.ie/</A> Day Job: Tribalogic Limited <A HREF="http://www.tribalogic.net/">http://www.tribalogic.net/</A> Open Source: Mageia Contributor <A HREF="http://www.mageia.org/">http://www.mageia.org/</A> PulseAudio Hacker <A HREF="http://www.pulseaudio.org/">http://www.pulseaudio.org/</A> Trac Hacker <A HREF="http://trac.edgewall.org/">http://trac.edgewall.org/</A> </PRE> <!--endarticle--> <HR> <P><UL> <!--threads--> <LI>Previous message: <A HREF="014344.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper </A></li> <LI>Next message: <A HREF="014348.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper </A></li> <LI> <B>Messages sorted by:</B> <a href="date.html#14346">[ date ]</a> <a href="thread.html#14346">[ thread ]</a> <a href="subject.html#14346">[ subject ]</a> <a href="author.html#14346">[ author ]</a> </LI> </UL> <hr> <a href="https://www.mageia.org/mailman/listinfo/mageia-dev">More information about the Mageia-dev mailing list</a><br> </body></html>