[PATCH 0/3] less: display ANSI colors with option -R

Denys Vlasenko vda.linux at googlemail.com
Fri Jan 24 06:16:13 UTC 2014


On Thu, Jan 23, 2014 at 9:32 PM, Laurent Bercot
<ska-dietlibc at skarnet.org> wrote:
> On 2014-01-23 19:28, Bernhard Reutner-Fischer wrote:
>>
>> Fix systemd then.
>
>
>  systemd is broken by design.

I did not look too deeply into its design.
Unless there are serious design flaws I am not aware of,
the idea per se looks sensible.

Admit it - "traditional" SysV init is neanderthal.
Not merely "simple" (that's not a bad thing!) - but
awkward too.

My objection to Pottering's onslaught on Linux is not on the basis
that he writes buggy code.

My objection is that he tends to write *monolithic* code.
systemd requires dbus. systemd includes logging daemon.
I see a pattern here: if you want to use daemon A
(or *have to use* it for whatever reason),
you must also use B, C, and D.

It goes farther than that. Some things don't merely live
in tools which systemd requires (e.g. dbus). A lot of crap is
_in systemd_!

# ldd `which systemd`
    linux-vdso.so.1 =>  (0x00007fff825fe000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fca4f97c000)
    libsystemd-daemon.so.0 => /lib64/libsystemd-daemon.so.0 (0x00007fca4f778000)
    libudev.so.1 => /lib64/libudev.so.1 (0x00007fca4f566000)
^^^^^^^^^^^^^
    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007fca4f35b000)
^^^^^^^^^^^^^
    libpam.so.0 => /lib64/libpam.so.0 (0x00007fca4f14d000)
    libaudit.so.1 => /lib64/libaudit.so.1 (0x00007fca4ef28000)
    libcap.so.2 => /lib64/libcap.so.2 (0x00007fca4ed23000)
    libkmod.so.2 => /lib64/libkmod.so.2 (0x00007fca4eb0e000)
    libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x00007fca4e8c8000)
    librt.so.1 => /lib64/librt.so.1 (0x00007fca4e6c0000)
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fca4e4aa000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fca4e28d000)
    libc.so.6 => /lib64/libc.so.6 (0x00007fca4decd000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fca4fec3000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fca4dc6f000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007fca4da6a000)
    libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fca4d851000)
    libattr.so.1 => /lib64/libattr.so.1 (0x00007fca4d64c000)
    liblzma.so.5 => /lib64/liblzma.so.5 (0x00007fca4d426000)
    libz.so.1 => /lib64/libz.so.1 (0x00007fca4d210000)

What the hell *TCP wrappers* or *udev* have to do with
*init binary*?????

He either does not understand why modularity is good,
or *likes* that his approach makes distributions use more
of the software developed by his team.

Another troubling aspect is gratuitous changes.
Like the one we see here: BAM! and he started feeding
**ANSI color escapes to a pager via pipe!**.
"Just because I can, if your pager doesn't understand it,
your problem".

I talked to him about it. He is not listening.
I'm telling you: this is not an oversight.
That's *his idea of how software should be developed*.


-- 
vda


More information about the busybox mailing list