Whamcloud - gitweb
Many files:
[tools/e2fsprogs.git] / debian / e2fsprogs.README.Debian
1 e2fsprogs for Debian
2 ====================
3
4 e2fsprogs includes the uuidgen(1) program, although it is not directly
5 to e2fsprogs - it would belong to the libuuid package, but the uuid
6 shared lib is currently part of the e2fsprogs package.  See below for
7 more details.
8
9
10 Here's the documentation for the Conflicts/Provides fields:
11
12 * old dump and quota packages used to depend on old (libc5) e2fsprogs
13 itself, as it contained the shared libs. We must conflict with these
14 incompatible versions.
15
16
17 * All -g package names were a transient experiment during hamm
18 development.
19
20
21 * Here's the reasonning for not having the libs outside of the e2fsprogs package:
22
23 If we have:
24
25 e2fsprogs_1.10-2 is essential
26
27 e2fsprogs_1.10-11 is essential
28  predepends on comerr2g
29
30 comerr2g_2.0-1.10-11:
31  is not essential
32  conflicts with e2fsprogs_1.10-2
33
34 ...then e2fsprogs_1.10-11 can't be installed before comerr2g because
35 of the predependency, and comerr2g cannot be installed before
36 e2fsprogs_1.10-11 because of the conflict.
37
38 This totally comes from the fact that e2fsprogs was initially built as
39 an *essential package with shared libs*.
40
41 My initial solution, namely changing the predependency into a simple
42 dependency, turns out to be a system-integrity problem:
43
44 $ dpkg -i e2fsprogs_1.10-11*deb comerr2g_2.0-1.10-11*deb
45
46 ...will, if comerr2g fails to unpack or configure, let e2fsprogs in an
47 unusable state.
48
49
50 * This raises the problem that most of these libs are general-purpose
51 libs, and will be used by more and more packages.  The lib-dependency
52 mechanism requires for proper fonctionning that we keep track of these
53 libs changing version, as well as infos such as libc5/6 issues.
54
55 The standard way to do it is using standalone packages for those libs,
56 which is not possible here (see above).
57
58 My solution in this case is the use of the following virtual packages:
59
60         libss2, libcomerr2, libe2p2, libuuid1, libext2fs2
61
62 These are automatically referenced thanks to the shlibs file.  They
63 are currently provided by e2fsprogs.
64
65
66 * e2fsprogs still Provides/Conflicts with e2fslibsg to allow upgrading
67 from pre 1.10-13 releases (from unstable hamm).  This does not seem to
68 be possible for ss2g and comerr2g for some still-to-be-investigated
69 reason.
70
71 Yann Dirson <dirson@debian.org>