Mailinglist Archive: opensuse-kernel (36 mails)
| < Previous | Next > |
Re: [opensuse-kernel] Has the kernel split into three packages?
- From: Andreas Gruenbacher <agruen@xxxxxxx>
- Date: Fri, 3 Oct 2008 10:19:20 +0200
- Message-id: <200810031019.20208.agruen@xxxxxxx>
On Friday, 3 October 2008 9:54:27 Petr Tesarik wrote:
In this case we want to ensure that installing packages from the rpm command
line will work just as well as installing them from the package manager. It
would be nice to have a clean way to "batch up" things like creating an
initrd, so that rpm or the package manager will "eventually" perform these
actions.
One way to achieve this would be to cause rpm to run some external script
after installing/updating packages, so that that script can check for such
additional actions. The package manager would have to disable this mechanism
and trigger those events itself.
Another way would be to somehow pass down to the %post script which other
packages are going to be installed in the same "transaction": the %post
script could then figure out for itself whether it is time to create an
initrd already, or whether to postpone that action to a following package. In
case of doubt, it would perform its action right away. Error recovery would
become harder, though: we would need to ensure that even when the user
changes his plans half-way through a transaction, the right actions are
performed.
There is more to it than a simple flag: you can install a number of different
kernels in parallel, requiring multiple initrds. SUSEconfig really doesn't
cut it.
Thanks,
Andreas
--
To unsubscribe, e-mail: opensuse-kernel+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-kernel+help@xxxxxxxxxxxx
On Thu, 2008-10-02 at 21:44 +0200, Andreas Jaeger wrote:
Andreas Gruenbacher <agruen@xxxxxxx> writes:
On Thursday, 2 October 2008 20:43:00 Markus Koßmann wrote:
Am Donnerstag, 2. Oktober 2008 schrieb Andreas Gruenbacher:
On Thursday, 2 October 2008 10:37:40 Dave Plater wrote:
Thanks very much for the explanation. I'll keep an open eye for
problems and open a bug.
Thanks! I hope things will be pretty painless.
Unfortunately there is at least one problem. The filesystem driver
support of the base package is also stripped down to ext3 and jbd.
Yes, the base package is supposed to be very minimal, so that you can
use it for building small virtual machine images.
If you are running a system with rootfilesystem not being one of these
filesystems, the installation of the kernel base package will throw an
error message, because mkinitrd cannot include the filesystem driver
for that filesystem into initrd.
Thanks, I didn't notice that mkinitrd handles different missing modules
differently. (It only warns for some other modules; I did not think of
testing this case as well.)
This is fixed later when installing the default package (
<https://bugzilla.novell.com/show_bug.cgi?id=431703> )
Yes, that's the expected result.
I know of no good way to tell when an initrd should be created and when
not: in some cases the -base package will be enough, in others the main
package, and in still others, the -extra package will be needed. In the
%post script we don't know if this is the last package, or if another
package will follow. So the best we can do, I believe, is to warn and
skip ahead if mkinitrd finds that modules are missing.
That's ugly. I see it's not a trivial task, so I suggest to ask the
packaging experts (e.g. on opensuse-packaging) on how to fix this in a
better way,
I think it's still the same recurring problem with system update after
package installation. On the one hand you don't want to run all
SUSEconfig scripts after each update, on the other hand there are some
actions which you don't want to run in %post.
In this case we want to ensure that installing packages from the rpm command
line will work just as well as installing them from the package manager. It
would be nice to have a clean way to "batch up" things like creating an
initrd, so that rpm or the package manager will "eventually" perform these
actions.
One way to achieve this would be to cause rpm to run some external script
after installing/updating packages, so that that script can check for such
additional actions. The package manager would have to disable this mechanism
and trigger those events itself.
Another way would be to somehow pass down to the %post script which other
packages are going to be installed in the same "transaction": the %post
script could then figure out for itself whether it is time to create an
initrd already, or whether to postpone that action to a following package. In
case of doubt, it would perform its action right away. Error recovery would
become harder, though: we would need to ensure that even when the user
changes his plans half-way through a transaction, the right actions are
performed.
I've already suggested that each SUSEconfig script should be controlled
by a flag.
There is more to it than a simple flag: you can install a number of different
kernels in parallel, requiring multiple initrds. SUSEconfig really doesn't
cut it.
Thanks,
Andreas
--
To unsubscribe, e-mail: opensuse-kernel+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-kernel+help@xxxxxxxxxxxx
| < Previous | Next > |