source: trunk/INSTALL/expressoInstall.sh @ 5836

Revision 5836, 4.3 KB checked in by wmerlotto, 12 years ago (diff)

Ticket #2557 - Adcionado o suporte para Ubuntu Server 11.10

  • Property svn:executable set to *
Line 
1#!/bin/bash
2#
3# set tabstop=5
4#
5# Criado por William Fernando Merlotto <william@prognus.com.br>
6# Baseado no script original desenvolvido por João Alfredo Knopik Junior <jakjr@celepar.pr.gov.br>
7# com colaborações de:
8#       "William Fernando Merlotto" <william@prognus.com.br>, para Debian, Red Hat e CentOS
9#       "Alexandre Felipe Muller de Souza" <amuller@celepar.pr.gov.br>, para Debian
10#       "Cássio Luiz" <cassiolp@cnpq.br>, para Red Hat e CentOS
11#       "M. Rodrigo Monteiro" <mrodrigom@gmail.com>, para Red Hat e CentOS
12#
13#
14# Versões:
15# 12/03/2010 - v0.1
16# 27/02/2011 - v0.2
17# 22/03/2012 - v0.3
18#       Termino do instalador basico e inclusao do Debian Squeeze
19
20#################################################################################################
21#                                                                                               #
22#                                               MAIN                                            #
23#                                                                                               #
24#################################################################################################
25
26# TODO: Internacionalizar o script de instalação:
27# http://www.linuxquestions.org/questions/programming-9/bash-script-how-to-get-locale-translations-802726/
28# http://tldp.org/LDP/abs/html/localization.html
29# http://mywiki.wooledge.org/BashFAQ/098
30
31alias cp='cp -f'
32
33# Variaveis globais
34ARQS="arquivos"
35VERSAO="2.4.0"
36# Inclusao dos scripts de apoio
37. $ARQS/scripts/aux.sh
38. $ARQS/scripts/ini.sh
39. $ARQS/scripts/http.sh
40. $ARQS/scripts/ldap.sh
41. $ARQS/scripts/bd.sh
42. $ARQS/scripts/smtp.sh
43. $ARQS/scripts/imap.sh
44
45# Verifica o usuario que esta executando o script
46# DEBUG: Comente esta linha para testar o script sem utilizar o usuário root.
47#[ $UID != 0 ] && { echo "Este script deve ser executado como superusuario (root) ou com sudo"; exit 1; }
48
49# Como o SO ainda não foi escolhido, não dá para instalar automaticamente o dialogo
50`/usr/bin/which dialog | grep -q "^/usr/bin/dialog$"` || { echo "Dialog não está instalado!!\nPara continuar, por favor, instale o dialog!"; exit 1; }
51
52# Telas da instalacao
53BACKTITLE="Instalação do ExpressoLivre versão $VERSAO"
54
55INTRO='
56Bem-Vindo(a) a instalação do ExpressoLivre!
57
58O script de instalação lhe permitirá escolher entre instalar e configurar automaticamente todos os serviços necessário ao funcionamento do ExpressoLivre ou lhe permitirá escolher quais serviços serão instalados e configurados. Esta última alternativa é interessante para ambientes grandes, onde os serviços são instalados e configurados em máquinas distintas.
59
60As informações de senha, domínio e organização serão requisitadas de acordo com o(s) serviço(s) selecionado(s).
61
62A equipe ExpressoLivre não se responsabiliza por danos ocasionados pelo uso deste instalador ou mesmo pelo próprio ExpressoLivre.
63Você deseja prosseguir, por sua conta e risco, a instalação ExpressoLivre?'
64
65# Se o usuario escolher "nao", será retornado 1 e consequentemente o script será encerrado.
66dialog --backtitle "$BACKTITLE" --cr-wrap --yesno "$INTRO" 18 80 || exit 0
67
68# Menu de selecao do SO
69SO=$( dialog --backtitle "$BACKTITLE" --stdout --menu 'Em qual sistema operacional (SO) o ExpressoLivre será instalado?' 13 70 10 \
70        rhel6 'GNU/Linux Red Hat (v6.x) ou CentOS (v6.x)' \
71        debian-squeeze 'GNU/Linux Debian Squeeze (v6.x)'  \
72        ubuntu-11.10 'GNU/Linux Ubuntu Server (11.10)' )
73       
74       
75        # TODO: Precio de ajuda para implementar e testar nestas distros
76        #sles10 'GNU/Linux SuSe Enterprise Linux (v10.x)' \
77        #sles11 'GNU/Linux SuSe Enterprise Linux (v11.x)' \
78
79BACKTITLE="$BACKTITLE, para $SO"
80
81# Inicializacao basica de instalacao, como atualização de repositório e criação de variáveis de ambiente
82ini_$SO
83
84# Inicia a escolha/instalacao e configuracao dos servicos nessarios ao ExpressoLivre
85SERVICOS=$( dialog --backtitle "$BACKTITLE" --stdout --separate-output \
86        --checklist 'Por favor, selecione quais serviços serão instalados neste sistema operacional:' 14 75 14 \
87        http 'Servidor http (apache) juntamente com os módulos do PHP5' on \
88        ldap 'Servidor ldap (openldap)' on \
89        bd 'Servidor de banco de dados (postgresql)' on \
90        smtp 'Sevirdor smtp (postfix)' on \
91        imap 'Servidor imap (cyrus-imap)' on )
92
93# Executa funcao de instalacao/configuracao do servico no respectivo SO.
94for I in $SERVICOS
95do
96        $I\_$SO
97done
98
99#dialog --backtitle "$BACKTITLE" --cr-wrap --msgbox "A comunidade do Expresso Livre agradece a sua participação.\n\n\nEm caso de dúvidas, por favor, visite: http://www.expressolivre.org" 8 75
Note: See TracBrowser for help on using the repository browser.