INSTALAÇÃO MIOLO - Versão 2.0 - RC 1
====================================

1 - Requisitos
 1.1 - PHP
  1.1.1 - Versão
  1.1.2 - Memória
  1.1.3 - Segurança
  1.1.4 - Extensões
  1.1.5 - Mac OS X

 1.2 - Apache
  1.2.1 - Configuração/acesso www

2 - Instalando apartir do SVN
 2.1 - Requisitos
 2.2 - Baixando
 2.3 - Instalando

3 - Instalação e Configuração utilizando arquivo
 3.1 - Baixando
 3.2 - Instalação
 3.3 - Base de Dados
 3.4 - Configurações
 3.5 - Apache
 3.6 - Apache Passo-a-Passo
  3.6.1 - Arquivos de Configuração
  3.6.2 - Exemplo 1
  3.6.3 - Exemplo 2
  3.6.4 - Exemplo 3
  3.6.5 - Reiniciando o Apache

4 - Por onde começar

5 - Ajudando no projeto

6 - Ajuda/Suporte
 6.1 - Listas

7 - Instalação de novos modulos
 7.1 - Pre-requisitos
 7.2 - Ver programas disponiveis
 7.3 - Instalação manual
 7.4 - Instalação On-line
 7.5 - 


1. Requisitos
==============

1.1 - PHP
---------

1.1.1
----- 
Versão: o MIOLO 2 foi desenvolvido para ser utilizado com o PHP 5.

1.1.2
-----
Memória: Em testes preliminares realizados, o limite de memória do PHP deve ser maior que os 8 MB padrão. Altere isso no php.ini

1.1.3
-----
Segurança: aconselhamos a seguir as normas do PHP quanto à segurança:
    - Register Globals = off
    - Magic Quotes = on
    - Safe Mode = on

1.1.4
-----
É imprescindível que a extensão do SQLite esteja habilitada no PHP.

1.1.5
-----
Para usuários do Sistema Operacional Mac OS X, é aconselhável que modifiquem a seguinte linha no arquivo php.init
variables_order = "GPCS"

Foi constatado que o instalador não funciona corretamente quando a opção estiver como "EGPCS"
Percebeu-se também que utilizando Mampstack (versão 5.5) funcionou prontamente, o que não aconteceu quando se estava utilizando Mamp (1.41-intel).

Contribuição: Henrique B. Gravina


1.2 - Apache
------------

1.2.1 - Configuração/acesso www
-------------------------------
Observe que apenas o diretório html do MIOLO deverá ser visível na web, ou seja, não instale todo o diretório miolo2 numa pasta visível via web.


2 - Instalando apartir do SVN
==============================
2.1 - Requisitos
-----------------
Para baixar o MIOLO diretamente apartir do SVN, o único requisito necessário é um cliente SVN.

Para windows, ocê pode utilizar um cliente como o TortoiseSVN (http://tortoisesvn.tigris.org)

Você pode obter mais informações em http://subversion.tigris.org


2.2 - Baixando
---------------
Por padrão, no Linux, o MIOLO 2 é instalado no diretório /usr/local/miolo2 enquanto que no 
windows é instalado em C:\miolo2
Abordaremos aqui a instalação no Linux e para windows basta fazer as devidas modificações

- mude para um diretório visível no via www no seu apache: cd /var/www (este diretório pode ser outro, dependendo da sua distribuição)

- agora, baixe os arquivos do miolo2:
  svn export http://200.180.156.28:8081/svn/miolo2/trunk miolo2

2.3 - Instalando
----------------
Proceda conforme indicado no item 3.2


3 - Instalação e Configuração utilizando arquivo
================================================

3.1 - Baixando
---------------
O MIOLO 2 pode ser baixado através do site (http://www.miolo.org.br) no link "Releases do MIOLO" localizado na caixa "Downloads".
Copie o arquivo baixado para uma pasta visível (via www) no seu Apache, por exemplo, /var/www. Observe que esse local dependerá muito do seu sistema operacional, distribuição Linux,...
Agora, descompacte o arquivo. Você perceberá que foi criado a pasta miolo2

3.2 - Instalação
-----------------
Abra o seu browser (navegador) e acesse o endereço que lhe dará acesso à pasta miolo2 criada acima. Geralmente, o endereço é http://localhost , mas observe que isso dependerá de sua instalação do Apache
Agora acesse o diretório onde está o diretório miolo2, por exemplo http://localhost/miolo2 e você verá o programa de instalação
Agora, basta seguir os passos para fazer a instalação do Miolo. 
No final do processo, o instalador criará automaticamente o arquivo de configuração (miolo.conf), refletindo suas opções de instalação.
Observe que concluída a instalação você deverá criar um VirtualHost para o Apache, conforme sugestão apresentada pelo instalador e também deverá atualizar a informação no arquivo hosts
Para alterar a configuração do seu sistema, efetue login e acesse a administração. Usuário e Senha: admin e admin

Importante
----------
- No processo de instalação, não escolha a pasta de destino como sendo a mesma da origem
- Instale o Miolo FORA da pasta visível via www do Apache (/var/www , por exemplo)
- Observe que o único diretório que será visível (via www) na nova instalação do Miolo será a pasta html.

3.3 - Base de Dados
--------------------
Diferente do que acontecia na versão 1, o MIOLO agora utiliza o sqlite como padrão para armazenar usuários e senhas.
Você encontrará o arquivo da base no diretório <MIOLO_DIR>/modules/admin/sql/admin.sqlite

O usuário padrão para acessar o MIOLO (login):
Usuário: admin
Senha: admin

3.4 - Configurações
---------------------
A partir desta versão, o arquivo de configuração do MIOLO está localizado em <MIOLO_DIR>/etc/miolo.conf e não mais em /etc/miolo/miolo.conf.
Observe que agora é utilizado xml.

3.5 - Apache
-------------
Um dos problemas mais comuns enfrentados por usuários novos do MIOLO é a configuração do Apache. O MIOLO não precisa de nenhuma configuração especial e usuários que já tiveram algum contato com esse servidor conseguirão configurar sem maiores problemas.
Segue um exemplo de Virtual Host no Apache:

<VirtualHost *>
    ServerAdmin webmaster@localhost
    DocumentRoot /usr/local/miolo2/html
    ServerName nome.servidor
    ErrorLog logs/nome.servidor.error_log
    CustomLog logs/nome.servidor.access_log common

    <Directory "/usr/local/miolo2/html">
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>


3.6 - Apache Passo-a-Passo
---------------------------
A maneira mais fácil e simples é alterar a opção DocumentRoot para <MIOLO_DIR>/html no arquivo de configuração apache (veja abaixo). Desta maneira, o domínio http://localhost já aponta para o diretório do MIOLO. (Não esqueça de reiniciar o apache, após as alterações.

Por questões práticas, é melhor criar um domínio próprio para o MIOLO. Não precisa ser miolo.seu_site.com.br, pode ser o que você quiser, como intranet.qualquercoisa.com.br 
Esteja sempre atento ao parâmetro "ServerName"


3.6.1 - Arquivos de Configuração
---------------------------------
Você vai alterar UM destes arquivos, conforme sua distribuição e versão do Apache:

a) APACHE 1.3.x => /etc/httpd/conf/httpd.conf 
b) APACHE 2.x => /etc/httpd/conf/httpd2.conf 
c) APACHE 2.x => /etc/httpd/conf/vhosts/Vhosts.conf (Mandrake 9.1) 


3.6.2 - Exemplo 1 - um domínio comum:
--------------------------------------
É necessário que miolo2.meudominio.com.br esteja cadastrado no seu servidor DNS (ou então, no arquivo /etc/hosts)


#----- início configuração ------

<VirtualHost *>

    ServerAdmin webmaster@localhost
    DocumentRoot /usr/local/miolo2/html
    ServerName miolo2.meudominio.com.br
    ErrorLog logs/miolo2.develop.error_log
    CustomLog logs/miolo2.develop.access_log common

    <Directory "/usr/local/miolo2/html">
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>

#----- final configuração ------


3.6.3 - Exemplo 2 - máquina de desenvolvimento, localhost é o MIOLO:
---------------------------------------------------------------------
Não é necessária nenhuma configuração de DNS


#----- início configuração ------

<VirtualHost *>

    ServerAdmin webmaster@localhost
    DocumentRoot /usr/local/miolo2/html
    ServerName localhost
    ErrorLog logs/miolo2.develop.error_log
    CustomLog logs/miolo2.develop.access_log common

    <Directory "/usr/local/miolo2/html">
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>

#----- final configuração ------

 
3.6.4 - Exemplo 3 - vários domínios sobre o mesmo IP
-----------------------------------------------------
É necessário que miolo.meudominio.com.br esteja cadastrado no seu servidor DNS 
Neste caso, vários domínios terão o mesmo IP mas com páginas diferentes 
Considere que 200.200.200.213 é o IP de seu servidor Apache


#----- início configuração ------

NameVirtualHost 200.200.200.213:80

<VirtualHost 200.200.200.213:80>

    ServerAdmin webmaster@localhost
    DocumentRoot /usr/local/miolo2/html
    ServerName miolo2.meudominio.com.br
    ErrorLog logs/miolo2.develop.error_log
    CustomLog logs/miolo2.develop.access_log common

    <Directory "/usr/local/miolo2/html">
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>

#----- final configuração ------


IMPORTANTE: o NameVirtualHost aparece uma vez só para o IP, não vá repetí-lo para cada domínio que tiver na máquina. 
Para maiores detalhes verifique a documentação do Apache 



3.6.5 - Reiniciar o Apache
---------------------------
Feitas as alterações no arquivo de configuração do Apache, será necessário reiniciá-lo, para que as alterações tenham efeito.

# service httpd restart 
ou 
#/etc/rc.d/init.d/httpd restart (dependendo de sua distribuição)


3.7 - Erros Comuns
-------------------

- Erro: Warning: pg_connect() [function.pg-connect]: Unable to connect to PostgreSQL server: FATAL: No pg_hba.conf entry for host 127.0.0.1, user postgres, database ....

=> PROBLEMA: Seu usuário ("user postgres", no caso), não possue permissão para acessar o banco
=> SOLUÇÃO: Altere o pg_hba.conf e lhe dê permissão


4 - Por onde começar
=====================
Feita a instalação e configuração do apache, abra o seu browser e digite o endereço conforme informado na configuração do apache, por exemplo: http://miolo2.localhost

Para logar no sistema, utilize:
Usuário: admin 
Senha: admin

E agora?
Agora é só "fuçar"... ;-)

Acesse, no "Menu Principal", as opções: Hello world, Tutorial, Hangman...
E é claro, não deixe de olhar os fontes dos arquivos, principalmente do módulo tutorial (<MIOLO_DIR/modules/tutorial). Dê uma atenção especial aos Controls, onde você encontra exemplos dos controles (widgets) do MIOLO 2.
Dê uma olhada também no diretório <MIOLO_DIR/docs

No mais, não se esqueça que esta ainda é uma versão beta e por isso algumas coisas poderão
não funcionar corretamente... :-)


5. Ajudando no projeto
=======================

Com o passar do tempo, novas características e funcionalidades são agregadas ao projeto. Assim, muitas são as frentes de trabalho e certamente em alguma delas sempre haverá a necessidade de mais pessoas para trabalhar. Certamente enquanto você lê este arquivo, estamos precisando de ajuda, por isso, se você estiver seriamente interessado em auxiliar, entre em contato!!! :-)


6 - Ajuda/Suporte
==================

6.1 - Listas
-------------
- Convidamos você a se inscrever na lista miolo-users, que é utilizada para auxiliar nas dúvidas, receber sugestões, dicas, contribuições, etc...
- Para quem estiver interessado em contribuir no desenvolvimento do MIOLO, pode se inscrever na lista miolo-devel
- Existe também a lista miolo-i18n que é voltada para os trabalhos de tradução.

As listas podem ser acessadas através do site, na opção "Listas de Discussão"


Vilson Cristiano Gärtner 
Coordenador Projeto MIOLO

vilson@miolo.org.br
http://www.miolo.org.br