1 |
Ciaran McCreesh schrieb: |
2 |
> What all are blocks used for? |
3 |
> |
4 |
> a) Marking that two unrelated packages are mutually incompatible at |
5 |
> runtime because they happen to collide, for example on a commonly named |
6 |
> executable. |
7 |
> |
8 |
> b) Marking that two related implementations are mutually incompatible at |
9 |
> runtime because they both provide the same binary. |
10 |
> |
11 |
> c) Marking that a file that used to be provided by one package is now |
12 |
> provided by another package that is either depending upon or depended |
13 |
> upon by the original package. |
14 |
> |
15 |
> d) Marking that a package has been moved into another package. |
16 |
> |
17 |
> Are there any other uses? |
18 |
> |
19 |
> For future EAPIs, being able to tell the package manager that your |
20 |
> block is of one of the types above will help the package manager smooth |
21 |
> out the upgrade path for users. For example, for class d) blocks such |
22 |
> as the recent coreutils / mktemp mess, the package manager can suggest |
23 |
> to the user to install the new package and then uninstall the old |
24 |
> package, rather than forcing the user to uninstall the old package by |
25 |
> hand (possibly leaving their system without critical utilities) and then |
26 |
> install the new package. |
27 |
> |
28 |
> I strongly suspect that in many (but not all) cases the package manager |
29 |
> could be making users' lives a lot easier than it currently is... |
30 |
> |
31 |
There is another case. |
32 |
|
33 |
e) A package needs a newer version of another package, but doesn't depend on it. |
34 |
|
35 |
This was the case with KDE4. kdelibs-4.0.x block these packages: |
36 |
!<kde-base/kdebase-3.5.7-r6 |
37 |
!<kde-base/kdebase-startkde-3.5.7-r1 |
38 |
!=kde-base/kdebase-3.5.8 |
39 |
!=kde-base/kdebase-3.5.8-r1 |
40 |
!=kde-base/kdebase-3.5.8-r2 |
41 |
!=kde-base/kdebase-startkde-3.5.8 |
42 |
|
43 |
The reason is, that a newer revision has to be installed. (But of course |
44 |
kdelibs-4.0.x can't depend on a kde3 package.) |
45 |
So in this case the behaviour would be different ((keyword and) upgrade one |
46 |
package, then install the other package) and the given block reason would be |
47 |
different. |
48 |
-- |
49 |
gentoo-dev@l.g.o mailing list |