debian makes life more realistic

It’s very simple really. Ubuntu uses dash as the default shell for executing init scripts as it is faster (there’s less overhead). dash is, of course the debian almquist shell, which is a bourne shell compatible shell. Not bourne again, but simply bourne, this means that features such as [[ are not present (see a previous blog entry for a complaint about that). We all like the fast boot, but it kinda breaks Makefiles that assume sh == bash (ieeee80211.sf.net, ipw3945.sf.net).
I’m too used to writing makefiles under Solaris to use features that are not present in the original bourne shell.