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

Dash diversion issue and workaround



Hello

I have some issues configuring dash and bash in a multistrap'ed ARM chroot.

I get the following error:

# dpkg --configure dash
Setting up dash (0.5.5.1-7.4em1) ...
No diversion 'diversion of /bin/sh by dash', none removed.
This should never be reached
dpkg: error processing dash (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 dash

Following this hint mentioned in [1], I first attempted to work around this 
issue by running:

# /var/lib/dpkg/info/dash.preinst 
Adding 'diversion of /bin/sh to /bin/sh.distrib by dash'
/bin/ln: creating symbolic link `/usr/share/man/man1/sh.1.gz.tmp': No such 
file or directory

Since dash package was stripped of its doc when moved into emdebian, this is 
not too much of a surprise. 

I've manually created /usr/share/man/man1, but the configuration was still a 
big mess.

I've started over and resolved this issue by creating the man directory 
*before* trying to run dpkg --configure -a. 

Then the configuration almost work:

# dpkg --configure -a
[...]
Configuring dash
----------------

The system shell is the default command interpreter for shell scripts.

Using dash as the system shell will improve the system's overall performance. 
It does not alter the shell presented to interactive users.

Use dash as the default system shell (/bin/sh)? y


No diversion 'diversion of /bin/sh by dash', none removed.
This should never be reached
dpkg: error processing dash (--configure):
 subprocess installed post-installation script returned error exit status 1
[...]
Errors were encountered while processing:
 dash
 bash
# /var/lib/dpkg/info/dash.preinst 
Adding 'diversion of /bin/sh to /bin/sh.distrib by dash'
Adding 'diversion of /usr/share/man/man1/sh.1.gz to 
/usr/share/man/man1/sh.distrib.1.gz by dash'
# dpkg --configure -a
Setting up dash (0.5.5.1-7.4em1) ...
Setting up bash (4.1-3em1) ...
update-alternatives: error: alternative path /usr/share/man/man7/bash-
builtins.7.gz doesn't exist.

I guess that not running postint scripts with multistrap is fine, but not 
running preinst scripts can still be an issue. 

HTH

[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=546528#21

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: