1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
<!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=%3CCA%2BCX%2Bbi0W_0Cq8NiY5xJpNZ2s6w2n9e06hFQUtwEHX0hgFQo8A%40mail.gmail.com%3E">
<META NAME="robots" CONTENT="index,nofollow">
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
<LINK REL="Previous" HREF="014346.html">
<LINK REL="Next" HREF="014351.html">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H1>[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper</H1>
<B>Pascal Terjan</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=%3CCA%2BCX%2Bbi0W_0Cq8NiY5xJpNZ2s6w2n9e06hFQUtwEHX0hgFQo8A%40mail.gmail.com%3E"
TITLE="[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper">pterjan at gmail.com
</A><BR>
<I>Mon Apr 16 16:00:06 CEST 2012</I>
<P><UL>
<LI>Previous message: <A HREF="014346.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper
</A></li>
<LI>Next message: <A HREF="014351.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper
</A></li>
<LI> <B>Messages sorted by:</B>
<a href="date.html#14348">[ date ]</a>
<a href="thread.html#14348">[ thread ]</a>
<a href="subject.html#14348">[ subject ]</a>
<a href="author.html#14348">[ author ]</a>
</LI>
</UL>
<HR>
<!--beginarticle-->
<PRE>On Mon, Apr 16, 2012 at 14:45, Colin Guthrie <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">mageia at colin.guthr.ie</A>> wrote:
><i> 'Twas brillig, and Pascal Terjan at 16/04/12 14:35 did gyre and gimble:
</I>>><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>><i>
</I>><i> OK, but at present most of the packages that make use of %_post_service
</I>><i> and friends do not actually require rpm-helper at all. They simply rely
</I>><i> on it being there from basesystem-minimal.
</I>><i>
</I>><i> So I guess doing autorequires would work in most cases - this case i
</I>><i> somewhat special as we're retro fitting the requirement, and thus need a
</I>><i> mass-rebuild.
</I>><i>
</I>><i> I guess I can live with this if someone can do the necessary foo to add
</I>><i> the appropriate requires automatically.
</I>
I don't think this is possible without patching rpm :(
The scripts adding dependencies are working on the list of files in the package.
The dependencies for scriptlets are added by rpm-build itself (and
only for the interpreter).
><i> I can't help but feel this would still be more appropriately dealt with
</I>><i> in the installer by making it honour priority updates, even on a
</I>><i> not-currently-running machine.
</I>
Well this does not guarantee anything, the packages may become part of
the priority upgrade (like any depending on perl) and be installed
before the new rpm-helper
</PRE>
<!--endarticle-->
<HR>
<P><UL>
<!--threads-->
<LI>Previous message: <A HREF="014346.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper
</A></li>
<LI>Next message: <A HREF="014351.html">[Mageia-dev] RFC: Add versioned require in rpm on rpm-helper
</A></li>
<LI> <B>Messages sorted by:</B>
<a href="date.html#14348">[ date ]</a>
<a href="thread.html#14348">[ thread ]</a>
<a href="subject.html#14348">[ subject ]</a>
<a href="author.html#14348">[ 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>
|