Como criar e configurar o ambiente de desenvolvimento do estúdiolivre.org?
Resumo
É importante que mais pessoas desenvolvam o Estúdio Livre, seja com contribuições de temas ou de inovações no código.
Em linhas (bem) gerais, o estudiolivre.org é uma customização do CMS
Tikiwiki. Por isso, para configurar um ambiente de desenvolvimento, basicamente, você vai precisar de:
- 1. Instalar apache, php e mysql (e dependências)
- 2. Instalar o tikiwiki
- 3. Baixar o repositório do estudiolivre na encubadora
- 4. Instalar o Polvo
- 5. Rodar o Polvo (software utilizado para separar o código customizado do EL do código do Tiki, mais informações abaixo)
Essa documentação foi desenvolvida com base no Ubuntu 8.10, é perfeitamente possível instalar o EL em outras distribuições com pequenas adaptações aos comandos apresentados.
1 Apache + PHP + MySQL
Para instalar o Apache + PHP + MySQL instale os seguintes pacotes:
apache2
mysql-server
php5
php5-mysql
libapache2-mod-php5
Você pode instalá-los com o seguinte comando:
$ sudo aptitude install apache2 mysql-server php5 php5-mysql libapache2-mod-php5
Além desses também é necessário instalar algumas bibliotecas do PHP:
- php5-gd
- ffmpeg
- php5-ffmpeg
- libmagic1
ou
$ sudo aptitude install php5-gd ffmpeg php5-ffmpeg libmagic1
Opcional - Upload progress meeter
Download dos arquivos
Baixe a versão 1.9.10.1 do Tikiwiki no seguinte link:
http://sourceforge.net/project/showfiles.php?group_id=64258&package_id=112134
ou na linha de comando
Descompacte o arquivo:
$ tar jxvf tikiwiki-1.9.10.1.tar.bz2
(pode mudar, conforme for o tipo de compressão)
Mova para a pasta web:
$ sudo mv tikiwiki-1.9.10.1 /var/www/estudiolivre
(onde '/var/www' é o seu diretório raiz do Apache)
Faça a instalação do Tikiwiki:
$ cd /var/www/estudiolivre
$ chmod 755 setup.sh
$ sudo sh setup.sh www-data www-data (onde www-data é o usuário do Apache)
É uma boa idéia guardar um backup desse tikiwiki limpo, sem as modificações do estudiolivre. Faça uma cópia deste diretório como segurança:
$ cp -a /var/www/estudiolivre /var/www/estudiolivre_base
É necessário criar a pasta que o estudiolivre usa para subir os arquivos do acervo:
$ mkdir /var/www/estudiolivre/repo
Crie o banco de dados
Crie um banco de dados para o estudiolivre e um usuário que tenha permissões totais nesse banco.
Via linha de comando
$ mysql -u root; // se seu banco tiver uma senha será necessário também colocar o paramentro -p
> create database estudiolivre;
> GRANT ALL PRIVILEGES ON estudiolivre.* TO estudiolivre@localhost IDENTIFIED BY ''; // se quiser, coloque sua senha aqui
Via phpMyAdmin
- Acesse http://localhost/phpmyadmin
- entre em Privilégios > Adicionar novo usuário
- entre com os dados
- Nome de usuário - um nome para o usuário ex: estudiolivre
- Servidor - pode deixar "Qualquer servidor"
- Senha / Re-digite - uma senha para o usuário, pode até ser deixada em branco
- Na caixa abaixo "Banco de Dados para usuário", seleciona a opção Criar Banco de Dados com mesmo nome e conceder todos os privilégios.
- Clique em "Executar"
Finalizando a instalação
Acesse:
- http://localhost/estudiolivre/tiki-install.php
- preencha o banco, usuário e senha
- escolha a opção "Default installation profile" e clique em "create" para instalar a base de dados padrão do Tiki
- clique em "Click here to proceed into tiki without disabling the script."
- apague o arquivo tiki-install.php:
$ rm /var/www/estudiolivre/tiki-install.php
3 - Baixar o repositório do estudiolivre na encubadora
Caso não conheça CVS, existe um
tutorial de uso de CVS que é uma boa introdução.
O acesso de escrita no CVS é restrito para desenvolvedores. Para conseguir uma conta de desenvolvimento,
cadastre-se na
incubadora da fapesp e procure os desenvolvedores na
lista de desenvolvimento: é necessário informar o cadastro à equipe para poder se tornar desenvolvedor do EL.
A organização do CVS do estudiolivre pode ser encontrada
aqui; é
muito importante ler e entender essa documentação para facilitar a interação com os desenvolvedores do site.
Crie uma pasta para o repositório:
Você pode criar esta pasta em qualquer lugar, normalmente no diretório onde está seus arquivos de desenvolvimento. Para este exemplo vamos colocar tudo dentro da pasta "devel" na home do seu usuário.
$ cd ~/
$ mkdir devel
Faça checkout do repositório
Para baixar os arquivos do repositório
$ cd ~/devel
$ cvs -d:ext:seuusuario@incubadora.fapesp.br:/cvsroot/arca co estudiolivre
4. Instalar o polvo
O estudiolivre.org utiliza o
Polvo para ser instalado. O polvo é um programinha que pega conteúdo de pastas diferentes e mescla em outra. Caso o usuário dono da pasta onde se encontra o código do EL seja distinto do usuário dono da pasta webroot do Apache (geralmente /var/www) é importante rodar o polvo com sudo.
Instalação
1. Instale os seguintes pacotes:
- libxml-perl
- libmd5-perl
- libxml-simple-perl
- patch
$ sudo apt-get install libxml-perl libmd5-perl libxml-simple-perl patch
2. Baixe o polvo do repositório da encubadora:
$ cd ~/devel
$ cvs -d :ext:seuusuario@incubadora.fapesp.br:/cvsroot/arca co polvo
3. Instale o polvo
$ cd /home/fulano/devel/polvo
$ perl Makefile.PL
$ sudo make
$ sudo make install
$ sudo chmod a+x polvo
$ man Polvo
Para mais informações sobre o polvo e outras maneiras de instalá-lo:
página do polvo.
Configuração
- Entre na pasta do polvo
- abra o arquivo modelo.conf
- salve como estudiolivre.conf
- mude as configurações para o projeto do estudiolivre. No caso de nosso exemplo desta página, ficaria mais ou menos assim:
<polvoConfig>
<targetDir>/var/www/estudiolivre</targetDir>
<sourceDir>/home/seuusuario/devel/estudiolivre</sourceDir>
<connection>
<database>estudiolivre</database>
<user>estudiolivre</user>
<password/>
</connection>
</polvoConfig>
targerDir = pasta web do estudiolivre
sourceDir = pasta onde você baixou o código do estudiolivre da incubadora
database = nome do banco de dados
user = usuário do banco de dados
password = senha do usuário do banco de dados (se houver uma senha, coloque: <password>senha</password>
5. Rodar o polvo
Rode o Polvo para juntar o código do EL com o código do Tiki:
$ sudo /home/seuusario/devel/polvo/polvo /home/seuusuario/devel/polvo/estudiolivre.conf
ATENÇÃO: Verifique muito bem as configurações do arquivo do polvo antes de rodá-lo. Se você rodar o polvo com informações do banco de dados incorreta você poderá ter que refazer o banco de dados.
Não é necessário rodar o polvo como root, mas não faz mal nenhum e evita problemas caso você tenha alguma pasta com uma permissão errada.
Desenvolvendo em cima do EL
Edite sempre os arquivos na pasta do repositório CVS (no nosso caso: /home/usuario/devel/estudiolivre).
A cada alteração que fizer, rode o polvo para ver ela aparecer no site!
Apêndice