[Apt-Rpm] Problem with kmp-packages on the openSUSE buildservice

Johannes Kastl ojkastl at gmx.de
Tue Jan 8 04:24:43 PST 2008


Hello,

Panu Matilainen wrote:

> Kernel packages are special, and kernel module packages are even worse - 
> there's no way to generically handle them from a package manager with the 
> rpm dependencies currently available. Handling them always requires some 
> extra logic (whether built into depsolver or via plugin-type mechanism) to 
> have a prayer of a chance of getting it right. Zypper has at least some 
> knowledge about them (based on a quick look at the source), while apt 
> certainly has not.

OK.

> What happens here is as follows (a very typical situation with kernel 
> module packages, no matter how they're packaged except for dkms):
> - you ask apt to install truecrypt
> - truecrypt depends on "truecrypt-kmp" virtual provide
> - there are several packages providing "truecrypt-kmp", ie
>    truecrypt-kmp-default, truecrypt-kmp-bigsmp and whatnot
> - apt sees no difference in the packages providing "truecrypt-kmp" so
>    it picks up whatever it happens to encounter firsts
> - in this case, it happened to be truecrypt-kmp-bigsmp, that in turn
>    requires kernel-bigsmp so apt thinks it needs to pull it in

Why does apt not install the kmp-package that fits in with the running
kernel? Is there no way to check which package would need the smallest
amount of extra packages?

> To fully automate it, one would have to write a Lua-extension that knows 
> about SuSE kernel and kmp packaging. 

Why not just a script checking which kernel is installed? Which of
course sounds easier than it will be, I guess.

> Other options require more or less manual work: stuffing all non-relevant 
> kmp packages to RPM::Ignore is one possibility, but since RPM::Ignore 
> requires full package names instead of accepting regex's, it's somewhat 
> cumbersome. Simplest workaround just to provide the kernel module name 
> manually in install (eg "apt-get install truecrypt truecrypt-kmp-default") 
> but that's not exactly optimal either :-/

Would pinning work in this case? Pinning kmp-bigsmp-packages (or simply
anything with *bigsmp* in it) to not getting installed?

Something like:

Package: *bigsmp*
Pin: *
Pin-Priority: 50

(I guess the Pin: line needs more info, but just an example).

OJ
-- 
Ok, I'm just uploading the new version of the kernel, v1.3.33, also
known as "the buggiest kernel ever".
(Linus Torvalds)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 257 bytes
Desc: OpenPGP digital signature
URL: <http://lists.laiskiainen.org/pipermail/apt-rpm-laiskiainen.org/attachments/20080108/d97cf82b/attachment-0003.pgp>


More information about the Apt-Rpm mailing list