source: trunk/INSTALL/expressoInstall.sh @ 6075

Revision 6075, 4.2 KB checked in by wmerlotto, 12 years ago (diff)

Ticket #2557 - Adicionado a instalacao automatica do pacote dialog, conforme o SO escolhido

  • 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, Ubuntu, Red Hat e CentOS
9#       "Gustavo Nakahara" <gustavonk@prognus.com.br>, para Debian, Ubuntu, Red Hat e CentOS
10#       "Rafael Cristaldo" <rafael@prognus.com.br>, para Debian, Ubuntu, Red Hat e CentOS
11#       "Alexandre Felipe Muller de Souza" <amuller@celepar.pr.gov.br>, para Debian
12#       "Cássio Luiz" <cassiolp@cnpq.br>, para Red Hat e CentOS
13#       "M. Rodrigo Monteiro" <mrodrigom@gmail.com>, para Red Hat e CentOS
14#
15#
16# Versões:
17# 27/03/2012 - v1.0
18#       Termino do instalador basico, para Debian Squeeze, CentOS 6 e Ubuntu Server 11.10
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# Telas da instalacao
50BACKTITLE="Instalação do ExpressoLivre versão $VERSAO"
51
52INTRO='
53Bem-Vindo(a) a instalação do ExpressoLivre!
54
55O 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.
56
57As informações de senha, domínio e organização serão requisitadas de acordo com o(s) serviço(s) selecionado(s).
58
59A equipe ExpressoLivre não se responsabiliza por danos ocasionados pelo uso deste instalador ou mesmo pelo próprio ExpressoLivre.
60Você deseja prosseguir, por sua conta e risco, a instalação ExpressoLivre?'
61
62# Se o usuario escolher "nao", será retornado 1 e consequentemente o script será encerrado.
63dialog --backtitle "$BACKTITLE" --cr-wrap --yesno "$INTRO" 18 80 || exit 0
64
65# Menu de selecao do SO
66SO=$( dialog --backtitle "$BACKTITLE" --stdout --menu 'Em qual sistema operacional (SO) o ExpressoLivre será instalado?' 13 70 10 \
67        rhel6 'GNU/Linux Red Hat (v6.x) ou CentOS (v6.x)' \
68        debian-squeeze 'GNU/Linux Debian Squeeze (v6.x)'  \
69        ubuntu-11.10 'GNU/Linux Ubuntu Server (11.10)' )
70       
71        # TODO: Precio de ajuda para implementar e testar nestas distros
72        #sles10 'GNU/Linux SuSe Enterprise Linux (v10.x)' \
73        #sles11 'GNU/Linux SuSe Enterprise Linux (v11.x)' \
74
75BACKTITLE="$BACKTITLE, para $SO"
76
77# Inicializacao basica de instalacao, como atualização de repositório e criação de variáveis de ambiente
78ini_$SO
79
80# Inicia a escolha/instalacao e configuracao dos servicos nessarios ao ExpressoLivre
81SERVICOS=$( dialog --backtitle "$BACKTITLE" --stdout --separate-output \
82        --checklist 'Por favor, selecione quais serviços serão instalados neste sistema operacional:' 14 75 14 \
83        http 'Servidor http (apache) juntamente com os módulos do PHP5' on \
84        ldap 'Servidor ldap (openldap)' on \
85        bd 'Servidor de banco de dados (postgresql)' on \
86        smtp 'Sevirdor smtp (postfix)' on \
87        imap 'Servidor imap (cyrus-imap)' on )
88
89# Executa funcao de instalacao/configuracao do servico no respectivo SO.
90for I in $SERVICOS
91do
92        $I\_$SO
93done
94
95dialog --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.