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

Bug#683838: release-notes: transition: pdksh → mksh

Joost van Baal-Ilić dixit:

>I propose this text instead:
><section id="mksh">
>  <title>Pdksh to mksh transition</title>
I’d not capitalise here, as it’s a name/“trade”mark.

If you really must, I guess PDksh would make more sense.

>  <para>
>    The Public Domain Korn Shell (<systemitem role="package">pdksh</systemitem>)
>    package is being retired for the release after &releasename;, since
>    <command>pdksh</command> is no longer maintained (it has last seen active
>    development in 1999).
>  </para>
>  <para>
>    The MirBSD Korn Shell (<systemitem role="package">mksh</systemitem>)
>    package contains its successor; it has evolved from the Public Domain Korn Shell
>    and has been kept up to date with the POSIX standard on the shell.
>    In &debian; &releasename;,
>    <systemitem role="package">pdksh</systemitem> is a transitional package
>    using a variant of <systemitem role="package">mksh</systemitem> built with
>    special compatibility options to provide a <command>pdksh</command> binary
>    symlink.  This compatibility binary behaves a bit more like the traditional
>    Public Domain Korn Shell then current <command>mksh</command>, it however

Looking good so far.

>    contains bugfixes so differs a bit.  Therefore, it is not a pure drop-in
>    replacement, and you'll have to check your Korn Shell scripts before running
>    them with current <command>pdksh</command> (or <command>mksh</command>).

This lacks a suggestion to change the scripts to use #!/bin/mksh
or at least #!/bin/lksh (the “compatibility binary”), because the
transitional package will go away (and, if one invests effort into
scripts, changing to mksh is better anyway, as that’s the one more
closely aligned to POSIX).

>    The compatibility binary is not suitable for interactive
>    use, so as system administrator, adjust the login shell of your Korn Shell
>    users.  For minimal service interruption, do this before the upgrade of
>    the O.S: manually install the <systemitem role="package">mksh</systemitem>
>    package and change the login and/or interactive shells of users that use
>    <command>pdksh</command> to <command>mksh</command>.  Furthermore, in order
>    to continue functionality like tab completion, copy
>    <filename>/etc/skel/.mkshrc</filename> into their home directories.

Good, except tab completion always “just works”; the thing
which /etc/skel/.mkshrc provides are some shell functions
like pushd/popd/dirs and a nice PS1 (shell prompt). Neither
of these is a regression, so “in order to continue” is also

Thanks a lot for the effort!

“It is inappropriate to require that a time represented as
 seconds since the Epoch precisely represent the number of
 seconds between the referenced time and the Epoch.”
	-- IEEE Std 1003.1b-1993 (POSIX) Section B.2.2.2

Reply to: