# HG changeset patch # User Nick # Date 1323749527 0 # Node ID 656b9133db2473bf50da250f5506e895e1ca0432 # Parent 8b12f44d3a379344c600bab7940fa763cb16e829 See commit b422ead31b077041cb030064008c6cd26ba058d0 for more info. /NNNC/somerandomnick> Why did you change configure to require bash? /relayhell/d3v11> you didn't see the commit message? /NNNC/somerandomnick> /relayhell/d3v11: not yet /NNNC/somerandomnick> /relayhell/d3v11: I was just looking at the diff. /NNNC/somerandomnick> /relayhell/d3v11: slackware doesn't even have a dash package available, so I'm not sure how pika managed to get himself that error. /relayhell/d3v11> if you want to change it back, go for it. /NNNC/somerandomnick> /relayhell/d3v11: I'd rather not start an edit war with you. /relayhell/d3v11> LOL if you change it back i won't rechange it /relayhell/d3v11> i made an executive decision because it gives a bunch of people shit. /NNNC/somerandomnick> The problem is caused by distributions that give people a bunch of shit. /NNNC/somerandomnick> "a bunch of shit" == sh pointing to a deliberately stripped down dash /relayhell/d3v11> right /NNNC/somerandomnick> sh should point to a useful default shell for users. /relayhell/d3v11> should but it doesn't always /NNNC/somerandomnick> really only in systems with upstart /NNNC/somerandomnick> and bash can do everything dash can do, so it's always safe to fix the distribution /NNNC/somerandomnick> "fix the distribution" == ln -s bash /bin/sh /relayhell/d3v11> if you think the change is problematic, then i welcome you rechanging it. /NNNC/somerandomnick> The change is problematic because it breaks any system that doesn't have bash. diff -r 8b12f44d3a37 -r 656b9133db24 configure --- a/configure Sat Dec 10 22:33:20 2011 +0000 +++ b/configure Tue Dec 13 04:12:07 2011 +0000 @@ -1,10 +1,20 @@ -#!/bin/bash +#!/bin/sh vars="gitd_ip gitd_basepath git_name git_email tinydns_config tinydns__rootsrvrname tinydns__rootsrvrip tinydns__tldsrvrname tinydns__tldsrvrip tinydns__srvrip tinydns__srvrname" echo "Welcome to the resdb configurator!" >&2 echo >&2 +if ! echo "$var=${!var}" >/dev/null 2>&1; then + echo "Your shell sucks. If you're using a stupid OS like Ubuntu that doesn't" >&2 + echo "give a damn about backwards compatibility, I'd suggest fixing your" >&2 + echo "default shell, which you can do by typing \"ln -s bash /bin/sh\" at a" >&2 + echo "root shell prompt." >&2 + echo "If you have some ancient Unix system, I'd suggest installing bash." >&2 + echo "If you have questions, you can always bother SRN :-)" >&2 + exit 1 +fi + for var in $vars ; do export "$var"="$(cat conf/$var 2>/dev/null)" done