Danny Milosavljevic <dan...@scratchpost.org> skribis: > So what we would need next is something like modprobe written in guile. > > I think that ./gnu/build/linux-modules.scm load-linux-module* already does > that. > > The only part missing is to replace %modprobe-wrapper by a guile script > which imports ./gnu/build/linux-modules.scm load-linux-module*, interprets > some of the modprobe options and then masquerades as modprobe without invoking > modprobe. > > The reason is that the kernel calls us back when it needs a module (for > example when you mount something and it needs a charset converter or > something). > > (the name of the executable invoked is configured via > /proc/sys/kernel/modprobe) > > This can happen quite early in the boot process - and it took me some time > to get the order and also the environment variables right. We should be able > to reuse that for the pure Guile modprobe. > > After the patch we don't *manually* load any of the modules - and all the > tests work. I booted my system with it - that also works.
I see, that’s a workable plan, we should do that! > P.S. How come glibc is in the initrd? Shouldn't guile have statically linked > it? > glibc is like 50000 kiB. In that case saving 800 kiB is not really worth > it... One of the packages that ends up in the initrd must be dynamically linked. You need to find out which one it is. Thanks for the explanations! Ludo’.