Commit 149b1d38feb3a46e49479a47b90983a2fec2f27f

Authored by Antonio Terceiro
1 parent 26d49af9

Enhanced quick-script while boostrapping an empty system

script/install-dependencies/debian-squeeze.sh
1 1 # needed to run noosfero
2 2 runtime_dependencies=$(sed -e '1,/^Depends:/d; /^Recommends:/,$ d; s/([^)]*)//g; s/,\s*/\n/g' debian/control | grep -v 'memcached\|debconf\|dbconfig-common\|postgresql\|misc:Depends\|adduser\|mail-transport-agent')
3 3 run sudo apt-get -y install $runtime_dependencies
  4 +sudo apt-get -y install iceweasel || sudo apt-get -y install firefox
4 5  
5 6 # needed for development
6 7 run sudo apt-get -y install libtidy-ruby libhpricot-ruby libmocha-ruby imagemagick po4a xvfb libxml2-dev libxslt-dev
7   -gem which bundler >/dev/null 2>&1 || run gem install bundler
8   -which bundle >/dev/null 2>&1 || export PATH="$(ruby -rubygems -e 'puts Gem.bindir'):$PATH"
  8 +gem which bundler >/dev/null 2>&1 || gem_install bundler
  9 +setup_rubygems_path
9 10 run bundle install
... ...
script/quick-start
... ... @@ -21,6 +21,22 @@ run() {
21 21 fi
22 22 }
23 23  
  24 +gem_install() {
  25 + if [ -w "$(ruby -rubygems -e 'puts Gem.dir')" ]; then
  26 + run gem install $@
  27 + else
  28 + run gem install --user-install $@
  29 + fi
  30 +}
  31 +
  32 +setup_rubygems_path() {
  33 + local dir="$(ruby -rubygems -e 'puts Gem.user_dir')/bin"
  34 + if [ -d "$dir" ]; then
  35 + export PATH="$dir:$PATH"
  36 + fi
  37 +}
  38 +
  39 +
24 40 force_install=false
25 41 if test "$1" = '--force-install'; then
26 42 force_install=true
... ... @@ -28,9 +44,15 @@ fi
28 44 if gem which system_timer >/dev/null 2>&1 && which xvfb-run >/dev/null 2>&1 && test "$force_install" = 'false'; then
29 45 say "Assuming dependencies are already installed. Pass --force-install to force their installation"
30 46 else
31   - if !which lsb_release >/dev/null 2>&1; then
32   - complain "E: lsb_release not available! (Try installing the lsb-release package)"
33   - exit 1
  47 + if ! which lsb_release >/dev/null 2>&1; then
  48 + # special case Debian-based systems; in others people will have to install
  49 + # lsb-release by themselves
  50 + if which apt-get >/dev/null 2>&1; then
  51 + sudo apt-get -y install lsb-release
  52 + else
  53 + complain "E: lsb_release not available! (Try installing the lsb-release package)"
  54 + exit 1
  55 + fi
34 56 fi
35 57 system=$(echo $(lsb_release -sic) | awk '{print(tolower($1) "-" tolower($2))}')
36 58 install_script="$(dirname $0)/install-dependencies/${system}.sh"
... ...