[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Comments on the "Changing the default system shell" talk



Hi,

in the talk you said you add a choice for /bin/sh and you add more
freedom.

The choice being that the admin may dpkg-divert /bin/sh to whatever
shell he wants and he then can fix whatever breaks. Great. We already
have exactly that now. There is nothing added. No mechanism and no
assurances that things won't break.


You say that dash is configurable as /bin/sh via debconf but in the
next sentence you say you want dash to ship a /bin/sh link to dash. So
the deconf thing is purely a temporary thing and goes away. There
won't be a choice left. Users will just get /bin/sh pointing to dash
period.


You say that the default /bin/sh must be an essential package as only
way to make sure it is always present. That is clearly wrong and we
have mawk/gawk as a real life example of having something always
installed (awk) while still keeping the choice open.



Overall I take 2 things from your talk:

1) You are removing bashisms from scripts using /bin/sh

That is a good thing and your work there is verry welcome. Thanks for
investing time there. This is actually where all the benefits really
come from. Kudos there. Everything else seems to be just window
dressing.

2) You are bloating the system and essential packages list

You are simply replacing A with B. You are not adding any choice
mechanism or garanties that a /bin/sh other than dash will work. If
admins dpkg-divert /bin/sh and use another shell they will be totaly
left out in the cold with fixing any problems. Some maintainer will
just close bugreports saying the only /bin/sh is dash.

You say you give admins a choice to divert /bin/sh to whatever (posix)
shell they like. But you only give them a choice of adding yet another
shell. Not a choice of replacing dash. Only a choice of adding even
more. After diverting /bin/sh instead of having one useless shell we
now have 2 useless shells on the system. At least until bash becomes
non essential.

Will it eventually be policy that essential/required/standard packages
must not depend on bash? Because as long as something in the core
packages depends on bash it will remain non removable.

MfG
        Goswin


Reply to: