Centro de Computação Científica e Software Livre Pág. 1/18
Sumário 3 Introdução... 3 4 Instruções para instalação...3 5 Pacotes e documentação...4 5.1 Visão Geral...4 5.2 Detalhamento dos pacotes...5 5.2.1 Le-all... 5 5.2.2 Le-autoupgrade...5 5.2.3 le-base...6 5.2.4 Le-browser...7...7 5.2.5 Le-edubar...8 5.2.6 le-edubar-fixed-position...8 5.2.7 le-help... 8 5.2.8 Le-interface...9 5.2.8.1 Le-icon-theme...10 5.2.8.2 le-kubuntu-theme...11 5.2.8.3 le-wallpaper...11 5.2.8.4 Le-splash...12 5.2.8.5 le-kdm-theme...12 5.2.9 Plymouth-theme-le...13 5.2.10 Ubiquity-slideshow-le...13 5.2.11 Ubiquity-desktop-icon...13 5.2.12 le-recovery (a ser implementado no próximo release)...14 5.2.13 Detalhamento le-firewall...15...15 5.2.14 Le-firewall (a ser implementado no próximo release)...16 5.3 Alterações previstas para o próximo release...17 Centro de Computação Científica e Software Livre Pág. 2/18
1 Introdução Através de um convênio estabelecido entre o MEC e o C3SL Centro de Computação Científica e Software Livre (UFPR), o projeto visa implementar e manter a versão 4.0 do Linux Educacional. O objetivo principal é a pesquisa multidisciplinar nas áreas de software livre e informática na educação apresentando como resultados: (1) um protótipo de sistema operacional livre que maximize o desempenho de computadores escolares; e (2) um ambiente de aplicativos com interface adequada para o público escolar. As atividades do projeto são desenvolvidas por equipes coordenadas por professores do C3SL/UFPR especialistas no tema. Cada equipe é composta por um grupo de profissionais responsáveis pela prospecção de soluções e implementação de novos pacotes. Todo produto gerado neste projeto será licenciado sob licença GPL (software livre) e será desenvolvido nas mais modernas técnicas para este tipo de software. Para isto são utilizadas ferramentas de controle de versão (GIT), técnicas de internacionalização e localização (I18N e L10N), sistemas de controle de projeto (TRAC) e demais técnicas padrão na área. Reuniões presenciais ou videoconferências são realizadas com a SEED/MEC para acompanhamento do projeto, validação das soluções propostas e eventuais correções no direcionamento do projeto, utilizando infraestrutura para tal já disponível para o C3SL. 2 Instruções para instalação É possível instalar a versão 4.0 do LE utilizando-se o DVD de instalação ou fazendo download da imagem ISO, disponível em: http://colombard.c3sl.ufpr.br/le. Ao executar o processo, um conjunto restrito de conteúdos educacionais é instalado localmente. Para se ter acesso à totalidade dos conteúdos educacionais disponibilizados pelo MEC, é necessário que o usuário solicite a instalação através da opção Instalar Conteúdos da barra de atalhos (EDUBAR). Centro de Computação Científica e Software Livre Pág. 3/18
3 Pacotes e documentação 3.1 Visão Geral Centro de Computação Científica e Software Livre Pág. 4/18
3.2 Detalhamento dos pacotes 3.2.1 Le-all Objetivo: Instalar os demais pacotes do linux educacional. Dependências: le-base, le-office, le-autoupgrade, le-browser, le-interface, le-search, plymouth-theme-le, le-help Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/le-all.git Observações: O le-all é um meta pacote que possui como dependência todos os pacotes do projeto Linux Educacional, de forma que, quando instalado através do apt(1) ou aptitude(8), forçará a instalação do demais pacotes do projeto. 3.2.2 Le-autoupgrade Objetivo: Atualizar pacotes automaticamente dos repositórios do LE. Dependências: cron anacron, apt, debianutils Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/le-autoupgrade.git;a=summary Regras de Negócio: Configurar o sistema de forma que atualizações nos repositórios sejam automaticamente instaladas. Não depender de intervenção do usuário. Não assumir que a máquina estará ligada em determinado horário. Evitar que todas as máquinas executem a atualização concorrentemente, para não congestionar o link da escola. Permitir atualizações automáticas apenas dos repositórios do LE (C3SL), MEC (mirror C3SL) e oficiais do Ubuntu (security e updates), como definido na reunião de 07/10. Centro de Computação Científica e Software Livre Pág. 5/18
Implementação Atual: A implementação segue o padrão utilizado no projeto Paraná Digital (www.c3sl.ufpr.br/prd). A cada hora o cron(8) executa um script (le-autoupgrade.sh) que é responsável por verificar se existem novas atualizações de pacotes. Caso algum erro ocorra durante o download ou instalação dos pacotes dentro de uma hora o script tenta refazer o processo. Obtendo sucesso ele armazena, em um arquivo de controle, a informação de que a máquina já sofreu a atualização diária, evitando que a tentativa de atualização ocorra novamente dentro de uma hora, quando o script será novamente disparado pelo cron(8). O pacote também permite a execução de scripts a cada hora. Para que isso seja feito basta adicionar o script desejado no diretório /etc/le-autoupgrade/exec. Lembrando que os scripts colocados nesse diretório serão executados de hora em hora e, caso a intenção seja executá-lo apenas uma vez, deve-se colocar um comando dentro do script para auto removê-lo após sua execução ("rm $0"). 3.2.3 le-base Objetivo: Instalar os pacotes requeridos e remover os pacotes desnecessários. Dependências: Todas os pacotes a instalar. Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/le-base.git;a=summary Definições: Depender de todos os pacotes que são necessários para o LE. Contém também um script que remove os pacotes desnecessários para o sistema. Alguns pacotes requeridos podem não estar nos repositórios atuais. Centro de Computação Científica e Software Livre Pág. 6/18
3.2.4 Le-browser Objetivo: Instalar o Firefox com todos os plugins e configurações necessárias. Dependências: X - wine (Windows FF + Shockwave), mozplugger - X, flash, java, moonlight e downloadhelper Link para repositório: le-browser.git Definições Contém os seguintes plugins: X - Shockwave - X - Flash - Java - Moonlight Configurado para: - Ter como página inicial "about:blank" - Opção de atualização automática do Firefox está desativada (a atualização deve ser feita via pacotes do LE). X - O wine e o mozplugger são necessários para conseguir rodar o Shockwave no Linux, pois não há nenhum pacote correspondente para ele. - X Observação: por enquanto, não estão sendo tratados o Shockwave e softwares relacionados (wine e mozplugger). Centro de Computação Científica e Software Livre Pág. 7/18
3.2.5 Le-edubar Objetivo: Prover uma forma simples de acesso aos conteúdos educacionais disponibilizados pelo MEC Dependências: plasma-desktop, python, synaptic, le-search, kdesudo Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/le-edubar.git Definições: O le-edubar cria um painel centralizado na parte superior da área de trabalho com alguns ícones que permitem acesso aos conteúdos educacionais. Destes, quatro ícones são links para conteúdos online, abrindo o navegador padrão para acesso, um ícone abre o le-search, ferramenta de busca de conteúdos e um último ícone a esquerda permite o download dos conteúdos educacionais, caso não estejam completamente instalados na máquina. 3.2.6 le-edubar-fixed-position Objetivo: A cada login que o usuário faz, garantir que a edubar esteja ao topo da tela centralizado. Dependências: le-edubar Link para repositório: le-edubar-fixed-position.git Definições: - Configurar a edubar para que ela esteja sempre no topo da área de trabalho. 3.2.7 le-help Objetivo: Instalar a documentação desenvolvida para o LE 4.0. Dependências: khelpcenter Link para repositório: le-help.git Definições: Centro de Computação Científica e Software Livre Pág. 8/18
Contém a documentação criada pela equipe responsável pela interface, transformada para o formato docbook. Configura o carregamento padrão do programa de Ajuda para mostrar o help do LE 4.0 por padrão. Por enquanto só consta uma estrutura básica e informações sobre como usar a Edubar e instalar o conteúdo educacional na máquina. 3.2.8 Le-interface Objetivo: Configurar a área de trabalho do usuário. Dependências: * le-icon-theme * le-kubuntu-theme * le-wallpaper * le-kdm-theme * le-splash * le-search * le-edubar-fixed-position * firefox * kwin-style-crystal * kde-style-qtcurve * slay * synaptic * plasma-widget-networkmanagement * plasma-widget-cashew-off Centro de Computação Científica e Software Livre Pág. 9/18
Link para repositório: le-interface.git Definições: - Restaurar as configurações padrões após inicialização da sessão - Abrir a edubar no ínicio da sessão no topo da área de trabalho - Aplicar os temas: ícones papel de parede tema da área de trabalho splash tela de login - Configurar o menu iniciar - Matar processos dos usuários ao encerrar sessão - Retirar o ícone de cashew - Configurar o firefox como navegador padrão O plasma-widget-networkmanagement substitui o knetworkmanager por utilizar menos memória e ter mesma funcionalidade. 3.2.8.1 Le-icon-theme Objetivo: Disponibilizar o tema de ícones do Linux Educacional Dependências: Não se aplica Link para repositório: le-icon-theme.git Definições: Alterar o tema de ícones utilizando as especificações de interface. Centro de Computação Científica e Software Livre Pág. 10/18
Dois pacotes de ícones foram utilizados para formar este tema de ícones: - Frugal - icomity 3.2.8.2 le-kubuntu-theme Objetivo: Criar tema da área de trabalho Dependências: Não se aplica Link para repositório: le-kubuntu-theme.git Definições: Este pacote contém arquivos e configurações que substituem: cor dos painéis cor da bandeja de notificação (systray) cor de fundo das dicas (tooltips) cor do krunner tema do aviso de encerramento de sessão Existem configurações que funcionam somente em sistemas que onde os efeitos de composição ligados. 3.2.8.3 le-wallpaper Objetivo: Disponibilizar o papel de parede do Linux Educacional Dependências: Link para repositório: le-wallpaper.git Definições: Contém a imagem do papel de parede do Linux Educacional 4.0 em diferentes resoluções. Imagens atuais com resoluções: - 1024x768 (Fullscreen 4:3) - 1280x1024 (Fullscreen 5:4) - 1280x800 (Widescreen 16:10) - 1600x1200 (Fullscreen 4:3) - 1680x1050 (Widescreen 16:10) - 1920x1200 (Widescreen 16:10) Centro de Computação Científica e Software Livre Pág. 11/18
- 1600x900 (Widescreen 16:9) O KDE tenta utilizar a imagem que mais se aproxima da resolução configurada pelo usuário. 3.2.8.4 Le-splash Objetivo: Customizar o splash screen para o Linux Educacional. Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/le-splash.git;a=summary Regras de Negócio: Customizar o splash screen. Implementação Atual: O pacote cria um novo tema para o ksplash, chamado le, na pasta /usr/share/kde4/apps/ksplash/themes/. Este pacote apenas cria o novo tema; o pacote responsável por efetivamente configurar a utilização deste tema é o leinterface. 3.2.8.5 le-kdm-theme Objetivo: Customizar a tela de login do KDM para o LE. Dependências: kdm Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/le-kdm-theme.git;a=summary Regras de Negócio: Customizar a tela do KDM Implementação Atual: O pacote cria um novo tema para o KDM, chamado le, na pasta /usr/share/kde4/apps/kdm/themes/. Neste diretório são armazenados todos os arquivos de configuração do tema (XML) e imagens necessárias para a correta apresentação da tela de login customizada. Este tema implementa a proposta inicial, enviada pela equipe de interface. Note que este pacote apenas cria um novo tema; o pacote responsável por efetivamente configurar a utilização deste tema é o le-interface. Centro de Computação Científica e Software Livre Pág. 12/18
3.2.9 Plymouth-theme-le Objetivo: Provê um tema plymouth para a distribuição do LE Dependências: pacotes relacionados ao plymouth Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/plymouth-theme-le.git;a=summary Definições: Durante a instalação deve ativar o uso do tema no sistema. Basicamente temos uma imagem de fundo e uma pequena animação estilo ubuntu. Ainda podem ser feitas algumas melhorias, e precisa-se organizar melhor os códigos! 3.2.10 Ubiquity-slideshow-le Objetivo: Exibir uma apresentação do que há de novo no LE 4.0. Dependências: ubiquity-frontend-kde Conflitos: ubiquity-slideshow-kubuntu Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/ubiquity-slideshow-le.git;a=summary Definições: O pacote faz uma pequena apresentação sobre o LE 4.0 mostrando os grandes diferencias desta versão. Essa apresentação é executada no momento da cópia dos arquivos na instalação do live CD. 3.2.11 Ubiquity-desktop-icon Objetivo: Adicionar um ícone lançador, do instalador do live CD, na Área de trabalho do live CD. Este pacote só é necessário se o le-interface estiver instalado. Dependências: ubiquity-frontend-kde, le-interface Definições: Após o le-interface ser instalado, o plasmoid de ícones na Área de trabalho (padrão no Kubuntu), é removido. Para adicionar o ícone do instalador foi necessário Centro de Computação Científica e Software Livre Pág. 13/18
desenvolver um pacote que cria um plasmoid especifíco do instalador. 3.2.12 le-recovery (a ser implementado no próximo release) Objetivo: Fornecer opção de recuperação do sistema. Dependências: crypt Link para repositório: http://git.c3sl.ufpr.br/gitweb?p=le/le-recovery.git;a=summary Regras de Negócio: Existe uma partição com uma imagem estável do Linux Educacional. Criar uma opção no menu de boot para recuperação do sistema. Na recuperação, o pacote deve instalar uma versão estável e funcional. As configurações e dados do usuário não devem ser perdidos. O pacote criará uma nova opção no menu do gerenciador de boot (grub), com a opção de recuperação do sistema. Quando selecionada, esta opção carregará o kernel com a opção init modificada, especificando um script customizado. Tal script, ao invés de carregar o sistema, iniciará o processo de recuperação. Através do comando dd, a partição a ser recuperada será sobrescrita pela imagem estável armazenada na partição de recuperação. Algum tipo de confirmação ou autenticação será necessária para que a recuperação ocorra. Centro de Computação Científica e Software Livre Pág. 14/18
3.2.13 Le-firewall (a ser implementado no próximo release) Objetivo: Limitar a utilização da banda no download de atualizações. Dependências: iptables, tc Definições: O pacote deve diminuir a prioridade de todo e qualquer pacote criado pelo usuário root. Desta forma, as atualizações terão um impacto menor caso um usuário normal esteja competindo por este recurso. O iptables deve ser utilizado para inserir marcas nos pacotes criado pelo usuário root. Utilizando o tc, será feita uma priorização nos pacotes baseada na presença ou não destas marcas. Utilizar módulo owner do iptables com a opção --uid-owner para classificar pacotes. Na recuperação, o pacote deve instalar uma versão estável e funcional. As configurações e dados do usuário não devem ser perdidos. O pacote criará uma nova opção no menu do gerenciador de boot (grub), com a opção de recuperação do sistema. Quando selecionada, esta opção carregará o kernel com a opção init modificada, especificando um script customizado. Tal script, ao invés de carregar o sistema, iniciará o processo de recuperação. Através do comando dd, a partição a ser recuperada será sobrescrita pela imagem estável armazenada na partição de recuperação. Algum tipo de confirmação ou autenticação será necessária para que a recuperação ocorra. Centro de Computação Científica e Software Livre Pág. 15/18
3.2.14 Le-firewall (a ser implementado no próximo release) Objetivo: Limitar a utilização da banda no download de atualizações. Dependências: iptables, tc Definições: O pacote deve diminuir a prioridade de todo e qualquer pacote criado pelo usuário root. Desta forma, as atualizações terão um impacto menor caso um usuário normal esteja competindo por este recurso. O iptables deve ser utilizado para inserir marcas nos pacotes criado pelo usuário root. Utilizando o tc, será feita uma priorização nos pacotes baseada na presença ou não destas marcas. - Utilizar módulo owner do iptables com a opção --uid-owner para classificar pacotes. Centro de Computação Científica e Software Livre Pág. 16/18
3.3 Alterações previstas para o próximo release FUNCIONALIDADE Edubar Descrição pacotes domínio público Cadastro INEP Network Manager CD de instalação Ubuntu CD de instalação Menu principal Inclusão Proinfodata Firewall Busca Samba Configuração padrão Squeak MELHORIA Atualização dinâmica botões. Quando o usuário instala algum conteúdo, o botão de busca deve aparecer automaticamente (sem necessidade de refazer login). A descrição de um pacote do DP que aparece no Synaptic é mesma para todos os pacotes - não há uma descrição específica para cada pacote. Disponiblizar uma janela pedindo o número INEP no primeiro boot. Fazer tradução do network manager Arrumar barra de percentual de instalação Mudar mensagem inicial - Referências Ubuntu Verificar botão de Desligar, separar desligar e reiniciar Mover o Executar Comando para Sistema, retirando do menu principal. Incluir o proinfodata no LE4 Desenvolver pacote le-firewall 1) Verificar conteúdo educacional instalado. 2) Disponibilizar opção para baixar conteúdo não instalado. Avaliar possibilidade de executar o samba somente quando solicitado pelo usuário. Em algum lugar do LE teria coisas como: habilitar compartilhamento window, habilitar bluetooth. Para a próxima versão pode ser o caso de criar um usuário template, que o administrador possa modificar coisas. Por exemplo, eu instalei errado o teclado na máquina. Agora toda vez preciso reconfigurar. Não adianta deixar entre uma sessão e outra, porque de fato o usuário não deveria modificar este tipo de configuração. Versão em português Centro de Computação Científica e Software Livre Pág. 17/18
FUNCIONALIDADE Repositório MEC Le-recovery MELHORIA Transferir repositório MEC para UFPR Desenvolver pacote le-recovery Centro de Computação Científica e Software Livre Pág. 18/18