Re: udev fork

Bruce Dubbs
2012-09-13T00:14:22Z

Allin Cottrell wrote:
> On Wed, 12 Sep 2012, Bruce Dubbs wrote:
>
>> Greg KH wrote:
>>> On Wed, Sep 12, 2012 at 03:56:33PM -0500, Bruce Dubbs wrote:
>>>> Greg KH wrote:
>>>>
>>>>> What dependencies? Run time? Build time? And why are dependencies
>>>>> bad? Do you have no ram in your system for them?
>>>>
>>>> The configure scripts require packages that are not in LFS.
>>>
>>> Like what? Can't you add them?
>>
>> intltool, glib, gperf, gobject-introspection.
>>
>> intl needs XML::Parser. glib needs libffi and python and can use
>> pcre, attr, d-bus, gamin, and gtk-doc. gobject-introspection also
>> needs glib and can use cairo and gtk-doc. cairo needs libpng, glib,
>> and pixman and can use fontconfig, gtk+, xorg libraries (and on and on).
>
> Pkg X "can use" pkg Y (where Y is something that one might or might not
> want to install) is not an argument against requiring pkg X.

It is for LFS. Every user builds every package from source. That's the
purpose of LFS.

> I'm one who thinks (on the basis of experience with home-rolled
> systems), that systemd really is a smarter, faster, more comprehensible,
> and more user-manageable way to get a Linux system up and running than
> sysvinit plus a big mess of shell scripts.

After dealing with LFS users for 10 years, my experience is different.
If we were building a binary distro to distribute to users, I might
agree with you, but we try to make things easy to understand. The base
LFS system has about 2000 lines of shell scripts. Compare to about 150K
of C code in systemd. If a script has a problem, there are typically
about 5 lines in a start or stop. Plowing through all the C code is a
lot more difficult.

> However, I take your point about some of the systemd dependencies,
> direct and indirect (even though systemd's configure script has a fair
> number of useful --disable-whatever options).

They have rejected patches that fix the problem.

> Why intltool, for instance? Systemd has a --disable-nls option in its
> configure script. But this is in fact just automake fraud; there's
> really no way to disable nls (and everything it brings in, including
> intltool), so far as I can tell.

That's why we have a hand crafted Makefile. I don't understand why
autotools are needed for a package that only has one target architecture.

Our Makefile (udev, gudev, keymap, and gir) is only 674 lines.
Systemd's configure.ac is 812 lines and is a lot more difficult to
understand if you are not an autotools wizard.

I'll also note that a complete LFS build and install for (base) udev
takes about 10 seconds. Boot time for a typical base LFS system is 8
seconds.

-- Bruce