I just wasted hours as a result of a “feature” of Edgy, the distro of Ubuntu I’ve installed on my new deck. The developers have replaced bash with dash as the shell that is invoked by scripts using #! /bin/sh
This has the effect of breaking scripts that rely on bash extensions. Apparently it is the script writers who are to blame – thing is I don’t care! What bugs me is that the process of installing my fortran compiler, so that I can get to work, was made more difficult. The developers who’ve stuck by this change have decided that trying to enforce a standard is more important than the usability of their software. One more truly annoying Ubuntu experience like this and I will start shopping for another distro.
There are several solutions to this – you can modify the scripts that fail such that they use bash (change #! /bin/sh to #! /bin/bash), or more simply you can change the symbolic link sh, found in the /bin directory, to point to /bin/bash. I went as far as uninstalling the dash shell on principle.
*Edit* Now that I’ve cooled down, I’ve reinstalled dash. The argument in favour of the change is a speedup of shell script execution, which it’s claimed leads to significantly faster startup times. Might as well make the most of it.