please remove debconf stuff from mksh in MOTU

Bug #348872 reported by Thorsten Glaser
2
Affects Status Importance Assigned to Milestone
dash
Invalid
Undecided
Unassigned
mksh (Ubuntu)
Fix Released
Undecided
Unassigned
Nominated for Hardy by Thorsten Glaser

Bug Description

Binary package hint: mksh

mksh provides debconf to be run as /bin/sh which works fine in Debian. My Hardy system at work
however fails to boot with it, because at least the checkroot.sh from initscripts does invalid assump-
tions about the shell:

                on_ac_power >/dev/null 2>&1
                if [ "$?" -eq 1 ]
                then
                        log_warning_msg "On battery power, so skipping file system check."
                        rootcheck=no
                fi

⇒ fails because this stuff seems to be run with “set -e”, even though I cannot find where it
is enabled.

Anyway, the safest course is probably to remove all the debconf stuff and the po-debconf
dependency. I’ve done so in my experimental repository:

https://www.freewrt.org/~tg/debs/dists/hardy/wtf/pkgs/mksh/ contains my current “experimental
packaging”; if you take it over, you will want to remove debian/diffs/dot.mkshrc.diff which is not
intended for DEB upstream but only for my wtf repo. Also, get mksh-current from AnonCVS, as
it’s currently in Release Candidate state for R37, and I had a bugfix yesterday.

Otherwise, at least rid the debconf stuff.

I don’t know if the initscripts bug still exists in intrepid/jaunty/koala, or if it’s worth reporting it,
but unless someone really uses it, I guess they merely have the possibility to hurt, despite
mksh as /bin/sh on Debian being fine.

Revision history for this message
Thorsten Glaser (mirabilos) wrote :

I uploaded 37.3-2 to Debian sid which you can take unmodified in Ubuntu (locales stuff has changed
now) iff the dash package hardcodes dash.sh to true. If it’s set, mksh will not allow mksh/sh to be set
to true.

The latter part has been so for a while already; combined with the former part it means you would
not need to patch the package any more.

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (8.4 KiB)

This bug was fixed in the package mksh - 38.1-1ubuntu1

---------------
mksh (38.1-1ubuntu1) karmic; urgency=low

  * debian/mksh.postinst: hardcode debconf question if mksh should
    be installed as /bin/sh to false (LP: #348872) but retain debconf
    stuff so that if this was set to true in previous packages, it
    will correctly be removed on upgrade
  * debian/rules: remove “-combine” option from Build.sh invocation
    (LP: #375604)

mksh (38.1-1) unstable; urgency=low

  * debian/control: depend on locales-all on m68k because its
    locales and glibc packages are not up to date / installable
  * debian/rules: ignore localedef failure (uncritical to build)
  * New upstream version R38; complete ChangeLog:
    - [tg] Improve regression test output debugging
    - [tg] Fix <libutil.h> prerequisites on MidnightBSD in mirtoconf
    - [tg] Mention that RedHat BZ#496791 cannot currently be fixed in
      the manpage by discouraging use of apostrophes in comments in
      comsubs; add appropriate (expected-fail) regression tests
    - [tg] Sync with OpenBSD ksh (mostly a no-op)
    - [James Butler] Add search-history-up and search-history-down
      keybindings (tcsh-like) to the Emacs command line editing mode
    - [tg] Bind new search-history-{up,down} to ANSI PgUp and PgDn keys
    - [tg] Document ANSI default keybindings (↑↓←→ Home End Del
      PgUp PgDn) in the mksh(1) manual page as well
    - [tg] Optimise internal UTF-8 handling code for size and reusability
    - [tg] Incompatible change: ${foo:1:2} and ${#foo} now operate on
      characters, not on bytes. Characters are octets (set +U) or
      (utf8-mode) MirOS OPTU-8 multibyte characters (set -U)
    - [tg] Improve regression tests relating to ${foo:1:2} and ${#foo} and
      let wc=1#x and utf8-mode
    - [tg] Use per-file copyright notices, move global text to manpage
    - [tg] Expose new MKSH_MIDNIGHTBSD01ASH_COMPAT ifdef; change it to only
      trigger if FPOSIX (or MKSH_BINSHREDUCED and /bin/sh)
    - [tg] Remove already-dead “#if 0” style debugging code
    - [tg] Change some code into a more portable fashion, optimise
    - [tg] Allow [[ $foo ]] (ksh93 extension) mentioned by pgas
    - [tg] Clean up mksh and the contributed arc4random.c for some
      conversion, enum and other warnings for gcc-snapshot trunk r147610
    - [tg] Ensure no function uses more than 768 bytes of stack either
    - [tg, wbx] Add extension to make “!string” lines work like in GNU bash
  * debian/rules, debian/copyright: adjust to upstream changes,
    provide separate copyright file for Debian
  * Remove package-uses-deprecated-debhelper-compat-version
    lintian override to show up in statistics, we want to
    retain the old debhelper version to facilitate backports

mksh (37.3-2) unstable; urgency=low

  * Provide a way to not use dietlibc for /bin/mksh-static
    on certain architectures; use it for s390 (Closes: #523088)
  * debian/control: run ispell over it

mksh (37.3-1) unstable; urgency=low

  * New upstream version R37c; complete ChangeLog:
    - [tg] Improve præprocessor detection/work in Build.sh
    - [tg] Decouple MKSH_CONSERVATIVE_FDS from MKSH_SMALL
    - [tg] Enable MKSH...

Read more...

Changed in mksh (Ubuntu):
status: New → Fix Released
Revision history for this message
Thorsten Glaser (mirabilos) wrote :

No longer needed, see:

https://bugs.launchpad.net/ubuntu/+bug/575154

When the initscripts are fixed, using mksh as /bin/sh works, even on Hardy.
I hope it’d work on more recent versions too, so no need to hardcode any more.

Changed in dash:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.