1 |
* Kent Fredric <kentfredric@×××××.com> wrote: |
2 |
|
3 |
Hi, |
4 |
|
5 |
> So, your suggesting the following would have been a better |
6 |
> option in this case |
7 |
> |
8 |
> dev-lang/php4/php4-4.4.3.ebuild |
9 |
> dev-lang/php4/php4-4.4.4.ebuild |
10 |
> dev-lang/php5/php5-5.1.1.ebuild |
11 |
> dev-lang/php5/php5-5.2.0.ebuild |
12 |
|
13 |
Yes. |
14 |
|
15 |
> virtual/php/php-5.ebuild -> dev-lang/php5/php5-5.2.0.ebuild |
16 |
> virtual/php/php-4.ebuild -> dev-lang/php4/php4-4.4.4.ebuild |
17 |
> |
18 |
> ... and ... to have .. slotted virtuals like jdk does =P |
19 |
|
20 |
No. Not slotted ! |
21 |
|
22 |
Maybe some virtual for dependencies on an subset of php which |
23 |
works with both variants. Packages which are proven to run on |
24 |
both variants can use this virtual, just to get the || dep |
25 |
out there. |
26 |
|
27 |
> >What "folders" are you tallking about ? |
28 |
> |
29 |
> sys-devel/automake/automake-1.10.ebuild |
30 |
> sys-devel/automake/automake-1.4_p6.ebuild |
31 |
> sys-devel/automake/automake-1.5.ebuild |
32 |
> sys-devel/automake/automake-1.6.3.ebuild |
33 |
> sys-devel/automake/automake-1.7.9-r1.ebuild |
34 |
> sys-devel/automake/automake-1.8.5-r3.ebuild |
35 |
> sys-devel/automake/automake-1.9.6-r2.ebuild |
36 |
|
37 |
Ah, you're talking about the per-package subdirs. |
38 |
What's bad w/ having a few more of them ? |
39 |
|
40 |
> as theres 1 slot here /per/ ebuild, it would cause a bit of |
41 |
> namespace pollution were you to "upslot" them, ie: |
42 |
|
43 |
Is this really such a problem ? |
44 |
Maybe we could add another step in the hierachy, |
45 |
ie. called "variant" or "evolution" or whatever ... |
46 |
|
47 |
> instead of just one nice sys-devel/automake , you would need to have |
48 |
> |
49 |
> sys-devel/automake-1.10/automake-1.10-1.10.ebuild |
50 |
> sys-devel/automake-1.4/automake-1.4-1.4_p6.ebuild |
51 |
> sys-devel/automake-1.5/automake-1.5-1.5.ebuild |
52 |
> sys-devel/automake-1.6/automake-1.6-1.6.3.ebuild |
53 |
> sys-devel/automake-1.7/automake-1.7-1.7.9-r1.ebuild |
54 |
> sys-devel/automake-1.8/automake-1.8-1.8.5-r3.ebuild |
55 |
> sys-devel/automake-1.9/automake-1.9-1.9.6-r2.ebuild |
56 |
|
57 |
Maybe it looks "nice" for you, but this looks like these |
58 |
were (exchangable) versions. Obviously they're NOT. |
59 |
These "evolution steps" are NOT compatible, neither upwards, |
60 |
nor backwards. It's really a luck if some packages work with |
61 |
more than exactly one automake version. |
62 |
|
63 |
The problem is that packages depending on those slotted ones |
64 |
have to depend on specific version numbers. Maybe its not that |
65 |
bad if the interface breaks only happen between major releases |
66 |
(so you can say things like "=automake-1.7*"), but it gets |
67 |
really tricky with breaks between minor versions. Some time |
68 |
ago I already had such situations w/ the autotools stuff. |
69 |
|
70 |
> >> The same occurs in many of the web-applications, where multiple versions |
71 |
> >> are handy, but multiple ebuild names would cause headaches. |
72 |
> > |
73 |
> >hmm, they're an special things, since we can have many instances |
74 |
> >of the same application here. but I never had the need to have |
75 |
> >multiple versions of one webapp (source) installed. |
76 |
> |
77 |
> The reason for this, I believe, is that webapps regularly need to be |
78 |
> hand-adjusted to suit the users needs, and needs hand tuning for each |
79 |
> upgrade. Often this automated upgrade can break stuff ( can, but if |
80 |
> you've not changed from default, it usually runs fine ), so I guess |
81 |
> the reason is similar to the kernels, "less stuff breaking" i guess. ( |
82 |
> Although ATM, its unobvious how to switch between webapp slots :S ) |
83 |
|
84 |
Yes, webapps are still an story of their own. |
85 |
I don't see an better solution than the current webapp-config approach |
86 |
for now. But I don't think slotting is really necessary here. |
87 |
|
88 |
> >Well, if the slot number would be an part of the package atom name, |
89 |
> >it would be half as bad. |
90 |
> |
91 |
> I definately aggree, which would help many apps out in following |
92 |
> problem slotting currently has : "It is not possible to DEPEND upon a |
93 |
> package in a specific slot." [1] |
94 |
|
95 |
Yep. If would make things much, much easier. It would IMHO also solve |
96 |
your concerns about namespace pollution, etc. In fact different slots |
97 |
then would be different (sub-)packages. |
98 |
|
99 |
> For some things, such as things which require automake, & friends, it |
100 |
> would permit them to use some sort of syntax such as |
101 |
> |
102 |
> %=sys-devel/automake-1.9 |
103 |
> %<=sys-devel/automake-1.9 |
104 |
> %>=sys-devel/automake-1.9 |
105 |
|
106 |
What shall that mean ? |
107 |
Use some specific range within some slot ? |
108 |
|
109 |
I could imagine some syntax like: |
110 |
|
111 |
sys-devel/automake/1_9 |
112 |
|
113 |
or |
114 |
sys-devel/automake+1_9 |
115 |
|
116 |
of |
117 |
sys-devel/automake%1_9 |
118 |
|
119 |
"1_9" then is the slot/branch/subpackage name. |
120 |
You probably reconize the missing "=". That'd be correct, since the |
121 |
slot is not part of the version, but the package name. |
122 |
|
123 |
> Why that syntax ? |
124 |
> |
125 |
> Well , we have a dilemour, if we were to change the way package atoms |
126 |
> were named, it would break /craploads/ of the stuff already available |
127 |
> expecting the 'old way' |
128 |
|
129 |
The new syntax should be an extension of the old one. An missing slot |
130 |
name just means "choose best matchting slot". |
131 |
|
132 |
> sys-devel/automake/automake-1.9.slot <-- note the suffix. |
133 |
> |
134 |
> This file would contain none-other than a list of packages which |
135 |
> comprise that slot. |
136 |
> packages emerged without -1 would be injected into world as a 'user |
137 |
> asked for this slot' ie: %sys-devel/automake-1.9 |
138 |
> thus preventing the erronious cleaning of slots, and permitting |
139 |
> packages to directly depend on a given slot. |
140 |
|
141 |
Ah, now I begin understand :) |
142 |
If someone requests somethink like "%..." it means requesting an |
143 |
slot "..." instead of an package. |
144 |
|
145 |
hmm. I see now fundamental difference to virtuals. |
146 |
If you want to get it separated from virtuals, why not just putting |
147 |
them into some "slots" herd/subdir ? |
148 |
|
149 |
> In essence, this does what we did with virtuals. Virtuals I believe, |
150 |
> either used to be defined in some global text file, or as a string |
151 |
> inside each packages ebuild, but my memorys a bit rusty as to exactly |
152 |
> how it used to work. |
153 |
> This suggestion, is a de-ebuilding of slotting control somewhat. |
154 |
|
155 |
_IMHO_, ebuilds are just ebuilds without own files, just to control |
156 |
dependencies. They're emerge'd as usual. At least seems so ;-O |
157 |
|
158 |
|
159 |
cu |
160 |
-- |
161 |
--------------------------------------------------------------------- |
162 |
Enrico Weigelt == metux IT service - http://www.metux.de/ |
163 |
--------------------------------------------------------------------- |
164 |
Please visit the OpenSource QM Taskforce: |
165 |
http://wiki.metux.de/public/OpenSource_QM_Taskforce |
166 |
Patches / Fixes for a lot dozens of packages in dozens of versions: |
167 |
http://patches.metux.de/ |
168 |
--------------------------------------------------------------------- |
169 |
-- |
170 |
gentoo-user@g.o mailing list |