Novo gerenciador de usuários do BigLinux

Gerenciar usuários no BigLinux já era muito fácil na versão 4, mas agora ficou ainda mais fácil e com mais recursos.


Tela inicial.


Adicionar usuários agora conta com barra que exibe o grau de dificuldade da senha.


Aviso que o usuário foi adicionado.


Tela de seleção de usuário para alteração de permissão, cada cor representa um tipo de permissão que é exibida ao passar o mouse sobre o nome.


Após selecionar o usuário, selecione a nova permissão a ser utilizada.


Confirmação da alteração de permissão.


Tela de seleção de usuário para troca de senha.


Tela de alteração de senha, similar a de criação de usuários, porém com o campo usuário bloqueado.


Aviso que a senha foi alterada.


Tela para selecionar usuários que devem ter configurações fixas, ou seja, será feita uma copia da pasta pessoal que contêm todas as configurações do usuário que será recuperada a cada login, uma boa opção para lan houses, escolas e outros pontos de acesso públicos.


Aviso que o usuário terá a configuração restaurada a cada login.


Aqui você pode ativar ou desativar o TimeKPR, que torna simples a configuração de tempo que cada usuário pode utilizar o computador, recurso muito utilizado para pais evitarem o excesso de uso do computador pelos filhos.


Tela inicial do TimeKPR


Aba com opções do TimeKPR, onde pode se estipular minutos por dia, que somam o tempo que o usuaŕio ficou logado e bloqueia o uso após o tempo ser utilizado e o limite por hora, por exemplo disponibilizar o uso apenas de 12H até 14H.


Tela de configurações avançadas que abre outros programas para gerenciar usuários e permissões.


Para utilizar esse gerenciador de usuários aguarde a próxima versão do BigLinux ou adicione o repositório do BigLinux ao seu /etc/apt/sources.list e instale o pacote bigcontrolcenter-system-biguser que um link para gerenciar usuários será adicionado na categoria Sistema dentro do Centro de Controle Big.

BigControlCenter e os 64 bits

Agora o repositório do BigLinux também é compatível com sistemas de 64 bits, então você pode utilizar o BigBashView e BigControlCenter tanto em sistemas de 32 quanto em 64 bits.

BigControlCenter - biguser-autostart

A maioria dos sistemas com Kernel Linux utilizam as pastas /etc/rc* para executar scripts automaticamente no Boot, porém são scripts iniciados pelo usuário Root. Para executar scripts automaticamente através do usuário é necessário incluir no Autostart do Desktop escolhido.

Para facilitar isso caso você esteja utilizando o KDE4, o padrão do BigLinux após a versão 5, também pode utilizar a pasta /etc/biguser-autostart, os arquivos dessa pasta serão executados em ordem alfabética, para manter a similaridade com as pastas /etc/rc* inicie os scripts com a letra S e em caso de prioridade normal S35 dessa forma podemos utilizar um número menor caso o script tenha que ser iniciado antes.

Assim podemos incluir ou remover aberturas automáticas no Desktop do usuário com a atualização de pacotes no repositório, isso pode ser muito útil para a manutenção de uma distribuição.

Para incluir esse recurso ao seu sistema instale o pacote biguser-autostart do repositório do BigLinux.

BigSudo

Para que um usuário normal no Linux faça operações que necessitam de permissão do usuário administrador (root) é preciso utilizar o sudo. Existem opções como sudo em modo texto, kdesudo e gksudo.

Mas quando não soubemos se o script que estamos fazendo será utilizado em modo texto, no ambiente KDE ou Gnome uma forma prática é utilizar o bigsudo, que detecta onde o script está sendo utilizado e redireciona para a melhor ferramenta.

Por exemplo para abrir o aplicativo dolphin como administrador utilize:

bigsudo dolphin


Instalando o BigSudo

Adicione a seguinte linha no arquivo /etc/apt/sources.list

deb http://www.biglinux.net/packages jaunty main

Adicione a chave publica com o seguinte comando no terminal:

wget http://www.biglinux.net/packages/biglinux.key -O- | sudo apt-key add -

Recarregue o Synaptic e instale o bigsudo ou então no terminal os seguintes comandos:

sudo apt-get update
sudo apt-get install bigsudo


Uma alternativa para instalar é diretamente pelo código fonte do SVN: http://code.

BigSynaptic

O BigSynaptic é um script simples que possibilita utilizar a interface do Synaptic para instalar e remover programas utilizando comandos no terminal.

Exemplo para instalar:
bigsynaptic --install firefox

Exemplo para remover:
bigsynaptic --remove firefox


Exemplo para update:
bigsynaptic --update

O uso é similar ao apt-get, a vantagem é a apresentação gráfica feita ao usuário.


Instalando o BigSynaptic

Adicione a seguinte linha no arquivo /etc/apt/sources.list

deb http://www.biglinux.net/packages jaunty main

Adicione a chave publica com o seguinte comando no terminal:

wget http://www.biglinux.net/packages/biglinux.key -O- | sudo apt-key add -

Recarregue o Synaptic e instale o bigsynaptic ou então no terminal os seguintes comandos:

sudo apt-get update
sudo apt-get install bigsynaptic


Uma alternativa para instalar é diretamente pelo código fonte do SVN: http://code.

SED - Como adicionar uma linha após ou anterior a outra e resolvendo o problema da /

Ainda abordando a alteração de arquivos de configuração utilizando como exemplo um arquivo com o seguinte conteúdo:

Position=3
Size=4
SizePercentage=100
Name=BigLinux

Quando o texto a ser modificado possui o caractere / é necessário adicionar uma contra barra para que ela não seja identificada como o fim de uma operação, então fica assim \/, porém não é pratico quando são muitas barras ou quando se usa uma variável que é um endereço, como /home/biglinux

Nesses casos utilizamos outro caractere, é possível utilizar qualquer caractere ASCII, eu escolhi o | por ser muito raro de ser usado.

No exemplo a seguir irá adicionar a linha Idade=99 em baixo da linha iniciada com Name=

sed '\|^Name=|{p;s|.*|Idade=99|;}' /etc/biglinux

Note que antes do primeiro | existe uma \ mas após ele basta incluir o | no lugar do que antes era a /

Agora o mesmo exemplo, porém a linha irá ficar em cima da linha começada com Name:

sed '\|^Name=|{h;s|.*|Idade=99|;p;x}' /etc/biglinux

Como substituir uma linha em qualquer arquivo de texto

Uma tarefa que costuma ser bastante chata é modificar uma linha ou mais linhas de um arquivo de configuração usando Shell Script, porém existe uma solução fácil, veja o exemplo:

Vamos modificar o valor da variável Size de 4 para 10 do arquivo abaixo supondo que esse arquivo é o /etc/biglinux

Position=3
Size=4
SizePercentage=100
Name=BigLinux


Basta usar a seguinte linha na shell:

sed -i 's/^Size=.*/Size=15/' /etc/biglinux


O ^Size= Especifica que é para alterar apenas a linha que começar com Size= o .* especifica que é para apagar toda a linha e o Size=15 é o que deve ser escrito no lugar do que estava antes.

O primeiro /etc/biglinux diz ao sed qual o arquivo que ele deve ler, e o -i diz que é para alterar esse mesmo arquivo e não apenas exibir na tela.

O sed aceita adicionar várias modificações em série, sem precisar salvar varias vezes, veja no exemplo:

sed -i 's/^Size=.*/Size=50/;s/^Name=.*/Name=Bruno/;s/^Position=.*/Position=55/' /etc/biglinux


Espero que seja útil para vocês e se souberem de alguma forma mais simples que divulgue-a.

Agradeço ao Julio Neves que ajudou a melhorar esse script em sed que foi apresentado Smile

Livros e guias gratuitos sobre Shell Script

Um livro on line sobre shell script que também pode ser usado como guia de referência da linguagem, usando-se a caixa de texto no canto superior esquerdo para pesquisar comandos
http://www.julioneves.com

Muita informação sobre shell script
http://aurelio.net/shell/

Comandos para funções muito usadas
http://www.pixelbeat.org/cmdline_pt_BR.html

Canivete suiço de shell script
http://aurelio.net/shell/canivete.html

O melhor manual de dialog que já encontrei
http://aurelio.net/shell/dialog/

Um resumo simplificado de como fazer shell script
http://www.linuxhard.org/publicacoes.php?acessar=publicacao&id_texto=1747

Expressões regulares
http://aurelio.net/curso/conectiva/conectiva-er-prompt.html

Manual em português do SED
http://sed.sourceforge.net/sed1line_pt-BR.html

Mais sobre SED
http://br.geocities.com/cesarakg/sed-2.html

Criando Shell Script/BigBashView internacionalizável

A partir do Big Linux 5.0 todos os scripts que tiverem diálogo com o usuário devem ser internacionalizáveis.

Não utilize acentos nos diálogos originais, apenas nas traduções, acentos nos scripts devem ser utilizados apenas em comandos, por exemplo o ~ representando a home.

Utilize o interpretador bash e não o sh ou dash, portanto a primeira linha deve ser: #!/bin/bash

Logo no início do arquivo adicione o seguinte: #Locale
export TEXTDOMAINDIR="/usr/share/locale-langpack"
export TEXTDOMAIN=biglocale

Substituindo o biglocale pelo nome que deseja utilizar para o seu arquivo de tradução, sendo que vários scripts podem utilizar o mesmo arquivo de tradução.

Agora que basta adicionar $ antes de cada diálogo para que ele seja internacionalizável, veja melhor nos arquivos de exemplo que estão para download no fim do tópico.

Para criar o arquivo .pot de o seguinte comando lembrando de substituir o biglocale pelo seu script: bash --dump-po-strings biglocale > biglocale.pot

Após a criação do arquivo .pot utilize algum programa de tradução, recomendo o poedit que pode ser instalado no Big Linux com o comando sudo apt-get install poedit

No poedit vá em Novo, Novo catálogo de arquivo POT e então abra o arquivo .pot gerado nos passos acima, selecione linguagem e país, recomendo manter a tabela de caracteres em utf-8, preencha o restante apenas se desejar.

Clique em ok e dê nome ao seu arquivo, recomendo utilizar a sigla encontrada na pasta /usr/share/locale e que seja referente a língua e país que irá utilizar, no caso do Brasil pt_BR.po

Agora basta selecionar cada mensagem e na parte de cima irá aparecer a versão original, na parte de baixo escreva a versão traduzida.

Ao salvar será gerado automaticamente um arquivo pt_BR.mo, altere o seu nome para o do seu arquivo de tradução, no caso biglocale.mo e coloque-o na pasta referente a sua língua, no nosso exemplo: /usr/share/locale-langpack/pt_BR/LC_MESSAGES

Os passos acima facilitam na criação de traduções e evitam a maioria dos problemas de codificação.

Download dos arquivos de exemplo: http://biglinux.com.br/biglocale.tar.gz

BigBashView em busca da revolução

É inegável a capacidade do terminal no Linux, mas existem operações que são mais práticas feitas em modo gráfico, além de tornar facilmente utilizável por qualquer usuário, mesmo os com pouca experiência em informática.

No KDE3 tínhamos o Kommander que disponibilizava um sistema para criar interfaces gráficas que se comunicam diretamente com o terminal, porém no KDE4 estava em falta algo realmente eficiente.

Nós do BigLinux precisávamos de uma solução, opções como Kdialog e Zenity são simplistas demais para o que precisamos, por isso criamos o BigBashView que tem se mostrado muito eficiente, inclusive mais que o Kommander.

Estamos convidando a todos que têm interesse em desenvolver interfaces e programas gráficos para Linux a conhecer essa ferramenta, inclusive de outras distribuições.

Lembro também que os painéis desenvolvidos para o BigLinux podem ser instalados no Kubuntu e também no Ubuntu e seus outros derivados, porém irão instalar também a biblioteca QT4.

O BigBashView permite que o próprio usuário, com alguma experiência em Shell Script, desenvolver seus próprios painéis, recomendo que leiam os seguintes tópicos nessa ordem e vejam como é simples e prático:

Instalando o BigBashView

BigBashView visão geral

Características importantes do BigBashView

Crie seu primeiro painel para o BigControlCenter

Criando Shell Script/BigBashView internacionalizável

Veja também exemplos de painéis do BigControlCenter:

Painel de DNS

Painel de conexão discada

Painel Ndiswrapper, utilizando driver do Windows para ativar sua placa Wireless

Painel de servidor WEB


Saiba mais sobre ShellScript:

Livros e guias gratuitos sobre Shell Script

Como substituir uma linha em qualquer arquivo de texto

SED - Como adicionar uma linha após ou anterior a outra e resolvendo o problema da /

Caso você tenha interesse em conhecer mais sobre essa ferramenta será muito bem vindo ao nosso fórum www.biglinux.com.br/forum e se precisar estaremos prontos para ajuda-lo a criar melhores interfaces, gerar pacotes e disponibilizar no repositório.

Conto com a ajuda de vocês para que criemos uma grande quantidade de interfaces que melhorem a usabilidade do Linux, não apenas para o BigLinux, mas que mantenham compatibilidade com Ubuntu, Kubuntu, Debian e outras distribuições.

Painel de servidor WEB

Configure Apache, PHP e MySQL de forma simples e fácil.

Esse painel simplifica as funções básicas desses servidores e também disponibiliza links para abrir as configurações avançadas, agradando novatos e experientes.

Painel Ndiswrapper, utilizando driver do Windows para ativar sua placa Wireless

Em alguns casos encontramos placas Wireless sem drivers para Linux ou com drivers problemáticos, uma alternativa é utilizar o Ndiswrapper para reconhecer utilizar o driver do Windows no Linux, mas sua configuração pelo terminal pode ser difícil para muitos usuários, através do painel veja a simplicidade:


Marque para ativar o Ndiswrapper e clique em aplicar, será aberta uma janela para selecionar o arquivo .inf do driver do Windows, após isso a configuração é automática e irá aparecer a seguinte tela:

Pronto, instalação do driver concluída.

Painel de conexão discada

Esse tipo de conexão vem sido substituído por melhores alternativas, mas infelizmente em nosso país muitas pessoas ainda não tem escolha e necessitam utilizar conexão discada.

Se trata de um método obsoleto e que os próprios drivers para modens são precários e necessitam de alterações a cada atualização do sistema, sem contar a falta de suporte dos provedores para Linux, por isso foi criado o Painel de conexão discada do BigLinux, veja como é simples de utilizar:


Na primeira página selecione o modelo do modem utilizado ou tente descobrir utilizando a opção Detectar Driver, em geral é detectado o modelo, mas em alguns casos o modelo não está cadastrado em nosso sistema. Ao clicar em aplicar o módulo será compilado e passará para a tela a seguir:


Clique em selecionar provedor e passe para essa tela:


Selecione o estado, no caso foi selecionado DF que direcionou para:


Foi selecionado Brasilia - iBest, ao aplicar direcionou para a tela:


Ao confirmar o KPPP será configurado e basta clicar em conectar, toda a seleção de configuração fica salva caso o sistema esteja instalado no HD e em futuras conexões basta selecionar o discador KPPP no menu do sistema e clicar em Conectar:

Painel de DNS

O DNS é fundamental para navegar na internet, em geral é utilizado o servidor de DNS da empresa que fornece a conexão, porém é normal que esses servidores tornem-se lentos em horários de pico, ainda existem casos que ocorrem problemas que deixam o usuário sem conexão durante muitas horas, como ocorreu em São Paulo a pouco tempo.

Outro problema comum é em conexões 3G ou Wireless o sistema não conseguir identificar corretamente o endereço de DNS do provedor, dessa forma o sistema fica conectado, mas não navega, esse problema pode ocorrer em qualquer tipo de conexão, mas é mais comum nos citados.

Para resolver esse problema você pode tanto instalar um servidor DNS no seu computador, quanto informar manualmente o endereço de um servidor DNS, atualmente um muito elogiado e gratuito é o OpenDNS.

Eu sugiro que se seu computador possuir 512 MB ou mais de memória RAM a melhor alternativa será ter o servidor em seu próprio PC, o que da mais segurança, velocidade e estabilidade para a conexão.

E para solucionar isso de forma bastante simplificada foi feito o painel de DNS do BigLinux, basta marcar a opção desejada e clicar em aplicar, confira:


Crie seu primeiro painel para o BigControlCenter

O BigControlCenter é o Centro de Controle do BigLinux, esse post irá dar dicas de como criar uma nova opção para esse Centro de Controle.

As separações são feitas nas seguintes categorias: 3d hardware help internet others servers system themes

Todas estão na pasta: /usr/share/bigcontrolcenter/categories/


Exemplo de como criar seu painel de configuração compatível com o BigControlCenter

Nesse exemplo vamos analisar o painel de DNS, que está na categoria internet, portanto a sua pasta é: /usr/share/bigcontrolcenter/categories/internet/dns

Nessa pasta estão localizados os seguintes arquivos, clique sobre os nomes para ver o código fonte correspondente:

description.sh
Um arquivo padrão que deve estar em todos os painéis, seu conteúdo será utilizado para que ele seja exibido no BigControlCenter, portanto altere as variáveis apontando para o painel que está criando.

dns.sh
Esse arquivo pode ter qualquer outro nome que seja fácil de identificar, é o arquivo inicial do painel, o seu nome deve ser específicado no description.sh na variável exec_application

submit.sh
É o arquivo que recebe as instruções do dns.sh e aplica a configuração selecionada, exibindo também a tela de configuração aplicada ao usuário, seu nome pode variar, mas é bom manter esse nome por padrão, lembre também que ao alterar o nome desse arquivo é preciso também alterar o endereço do form action no arquivo dns.sh


Nos arquivos dns.sh e submit.sh já estão inclusos cabeçalho, rodapé e formatações padrões, portanto recomendo que ao desenvolver novos painéis compatíveis com o BigControlCenter utilize esse pacote como base, comece alterando os valores das variáveis apresentadas nos arquivos e depois crie o que achar necessário.


Dicas e curiosidades

A linha . /usr/share/bigcontrolcenter/default/theme-categories.sh importa toda a base do tema, mas ela não é estática, as cores de fundo, texto, link, tamanho e tipo de fonte são importados do tema do KDE4, tornando o painel sempre com uma interface bem integrada ao sistema.

Existem alguns arquivos já inclusos no BigControlCenter que estão disponíveis na pasta /usr/share/bigcontrolcenter/default, entre eles está o Jquery.


Características importantes do BigBashView

Ao desenvolver utilizando BigBashView lembre dessas características:

1 - Os arquivos interpretados devem utilizar extensão .sh e estarem marcados como executáveis.

2 - Executar um script sem que o usuário seja enviado para outra página, por exemplo um botão que abra o navegador firefox. Utilize arquivos com a extensão .run e também lembre de marca-los como executáveis, basta criar um link normal utilizando link com a extensão .run.

3 - A dica 2 utiliza um exemplo simples, mas deve ser utilizada apenas em casos mais complexos, nesses mais simples utilize o arquivo /usr/share/bigbashview/run.run, ele foi criado justamente para essas situações, veja um exemplo de uso: Abrir Firefox

4 - O BigBashView lê o resultado do terminal apenas ao final do script .sh, portanto se um comando no meio fizer parar o script, por exemplo executar o programa kppp, o painel ficará travado até que o kppp seja encerrado, para contornar isso é necessário fazer esse programa se comportar como um daemon, veja o exemplo com o kppp, pode ser adaptado a qualquer outro comando ou programa:
nohup kppp 2> /dev/null > /dev/null &

5 - Incluir ícone de identificação da janela, basta incluir um -i e o endereço do ícone, veja no exemplo:
bigbashview /usr/share/bigcontrolcenter/categories/internet/dns/dns.sh -i /usr/share/bigcontrolcenter/categories/internet/dns/icon.png

6 - Especificando o tamanho da janela ao abrir, por padrão a janela possui tamanho 640x480, porém você pode especificar o tamanho das seguintes formas:
bigbashview -s 800x600 alterando o 800x600 para o tamanho que preferir.
bigbashview -w maximized para a janela abrir maximizada
bigbashview -w fullscreen para abrir em tela cheia.

7 - O BigBashView possui problemas para trabalhar com frames, portanto utilize DIV quando necessário.

8 - O suporte a método POST não funciona, utilize o método GET.

Lançado o BigLinux 5 Alpha 2

Aviso para desenvolvedores

Essa versão ainda está em uma fase bastante prematura da versão 5, porém é recomendada para curiosos e interessados no desenvolvimento do sistema, principalmente os que têm afinidade com ShellScript, HTML, JavaScript ou PHP.

Está sendo criado um Centro de Controle que pretende incluir uma grande quantidade de ferramentas ade configuração, seus destaques principais são:

1 - Ser feito utilizando o BigBashview, o melhor sistema para criação de interfaces para ShellScript que conheço, veja mais sobre ele clicando aqui.

2 - Possuir compatibilidade também com o Kubuntu, ou seja também com o Ubuntu e suas variações, porém nesses casos irá também instalar a dependência libqt4-webkit.

3 - Alto nível de produtividade e de fácil aprendizado para desenvolver, pois é tudo escrito em ShellScript, HTML e JavaScript caso queira uma interface mais elaborada.



Informações gerais

Compatível com repositórios do Ubuntu Jaunty.

KDE 4.3 RC3., Amarok 2.1.1, Kernel 2.6.28-14-generic.

K3B e Kaffeine estão de volta.

Início do painel do BigLinux pronto, conta com suporte completo a conexão discada, configurador para Ndiswrapper, DNS e Apache.

Prelink ativo por padrão, isso faz com que instalar e atualizar programas pelo repositório fique um pouco mais demorado, pois serão feitas sempre otimizações que reduzem o uso de memória.

Readahead aprimorado, refiz a configuração do readahead, isso reduziu pela metade o tempo de abertura do Firefox no meu PC, porém esse tempo reduzido aparece apenas após o segundo boot do sistema instalado no HD.

Preload ativo por padrão, é feita uma analise dos logs da ultima semana e passa a deixar na memória os arquivos mais utilizados pelo sistema, tornando o uso do PC mais rápido.

Compcache, cria uma swap compacta na memória RAM, bastante útil em computadores com 512 MB ou menos de memória, aumenta um pouco o uso do processador, mas reduz consideravelmente a Swap feita no HD. Em meus testes em um computador com 512 MB o sistema tinha desempenho similar a 700 MB.

Novo tema do Usplash feito pelo lunimare, como comentário pessoal digo que é o tema mais bonito que já vi em Usplash, porém ainda faltam alguns ajustes no posicionamento.

Grub de volta no Live CD substituindo o Isolinux, o tema foi feito pelo Xdual.

Configuração de fontes do sistema um pouco alterada, conforme recomendação do Rafel Kafka, diminui um pouco o problema de sites que ultrapassam os limites de onde o texto deveria estar.

Como é alpha é de se esperar alguns probleminhas, entre eles: não está sendo possível ver o Youtube em tela cheia pelo Firefox, diversas partes do KDE estão ainda em inglês, Amsn com configuração padrão, Akonadi não está funcionando.



Escolha um dos mirrors e faça o download:

http://biglinux.c3sl.ufpr.br/iso/biglinux5alpha2.iso
http://mirror.pop-sc.rnp.br/mirror/biglinux/iso/biglinux5alpha2.iso
http://www.las.ic.unicamp.br/pub/biglinux/biglinux5alpha2.iso
http://www.biglinux.net/biglinux5alpha2.iso

Tamanho: 697,3 MB
Md5sum: bfd8b25bd37f19acc05c687215cf733f



Aviso a quem for efetuar testes no sistema

Os testes em geral tem pouca importância no momento, esse alpha2 é mais para que vocês do fórum acompanhem como está o desenvolvimento e também para atrair mais desenvolvedores para o sistema, irei criar um guia de desenvolvimento para o BigLinux no blog http://biglinux.blogspot.com

Os pontos que precisam de teste no momento são basicamente o desempenho do sistema e as funções do painel Big, pois Kernel, Xorg, KDE... ainda terão suas versões alteradas e os problemas em geral irão ser diferentes.

Imagens do sistema

Dicas para evitar problemas ao manter uma distribuição

O projeto BigLinux é basicamente uma distribuição Linux que possui alguns feitos interessantes em seu histórico, como a primeira distribuição no mundo a disponibilizar Desktop 3D e a primeira a disponibilizar Amsn com WebCam, porém seu reconhecimento maior veio devido a facilidade de uso, devido a automações e simplificações criadas a partir de painéis de configuração.

A versão 5 é a primeira a utilizar como desktop o KDE4 que é uma reformulação completa do KDE, aproveitando que muito do que estava feito iria se tornar incompatível. Todo o projeto BigLinux também foi reformulado, pois foram encontrados alguns problemas relacionados ao desenvolvimento e manutenção da distribuição, com isso deixo também a dica para que mantenedores de outras distribuições, nessa versão 5 todos os itens abaixo estão sendo cumpridos:

1 - Distribuições derivadas, como é o caso do BigLinux que deriva do Kubuntu, devem manter compatibilidade com a distribuição de onde derivou, ou seja, no caso do BigLinux que os Softwares desenvolvidos mantenham compatibilidade com o Kubuntu. Essa compatibilidade além de contribuir com quem contribui com você, retornando software compatível para a distribuição que o seu produto deriva, também torna necessário um melhor nível de padronização, evitando muitas vezes que se utilize o método POG (Programação Orientada a Gambiarra).

2 - Não inclua nada em uma distribuição que não esteja empacotado, sempre empacote tudo, não cole simplesmente arquivos no sistema, apesar de fácil no pŕimeiro momento irá tornar o sistema instável na primeira atualização.

3 - Utilização de um sistema de controle de versão, seja SVN, GIT ou qualquer outro, no caso do BigLinux está sendo utilizado o SVN, mesmo se o projeto for feito apenas por uma pessoa o uso desses sistemas ajuda bastante a manter o controle do desenvolvimento e recuperar arquivos antigos, o BigLinux está utilizando o seguinte sistema: http://code.google.com/p/biglinux/source/browse/

4 - Ao criar softwares já fazer com suporte a multilíngua, pois o projeto pode crescer e se tornar internacional.

Essas são algumas dicas que por algum tempo não respeitei e que vejo ocorrer na maioria das distribuições derivadas ou pequenas.

Instalando o BigBashView

Adicione a seguinte linha no arquivo /etc/apt/sources.list

deb http://www.biglinux.net/packages jaunty main

Adicione a chave publica com o seguinte comando no terminal:

wget http://www.biglinux.net/packages/biglinux.key -O- | sudo apt-key add -

Recarregue o Synaptic e instale o bigbashview ou então no terminal os seguintes comandos:

sudo apt-get update
sudo apt-get install bigbashview


Uma alternativa para instalar é diretamente pelo código fonte do SVN: http://code.

BigBashView visão geral

O BigBashView é uma interface para o terminal Bash que renderiza a saída do terminal utilizando QTwebkit.

Uma forma fácil e rápida para criar interfaces em sistemas Linux.

Para quem desenvolve sites em PHP irá notar diversas similaridades, veja um exemplo de Hello World para o BigBashView, faça um arquivo com a extensão .sh utilizando qualquer editor de texto e marque-o como executável:

#!/bin/bash

echo "Hello World"

Agora pelo terminal chame-o pelo BigBashView da seguinte forma: bigbashview /home/biglinux/teste.sh

Nesse caso estamos utilizando o arquivo teste.sh na pasta /home/biglinux, é importante lembrar que é preciso utilizar o endereço completo do arquivo para abrir no bigbashview, não basta entrar na pasta /home/biglinux e dar o comando bigbashview teste.sh

Então o resultado será:


Veja um exemplo de programa feito utilizando BigBashView:

Portanto tudo que vai para a saída do terminal, ou seja o que nós vemos ao executar um comando no terminal, será direcionado para o BigBashView que irá utilizar QTwebkit para renderizar esse código recebido como se fosse um site.

O que é Software Livre

Primeiro temos que lembrar que Software é o mesmo que programa de computador e necessariamente são criados como um livro, uma sequência de palavras que combinadas fazem sentido e tem um ou mais objetivos.

A maioria dos programas após serem escritos não funcionam, pois ele é escrito em uma língua que nós humanos conseguimos entender, mas os computadores não, então é necessário traduzir para língua de máquina, dessa forma o programa irá funcionar, porém não é humanamente possível entender ou alterar essa língua de máquina, o nome técnico dado a essa tradução é “compilação”,
ou seja é preciso compilar (traduzir) o código (texto) que escrevemos.

Para ficar mais claro é importante lembrar que o tão falado “código fonte” é um texto que é possível entender e modificar, sendo essa é a principal virtude do software livre, disponibilizar esse texto para que todos possam ler e adaptar para suas necessidades.

O programa que apenas o seu criador possui esse código é chamado de software proprietário, portanto você não pode modifica-lo, não pode ter certeza se ele faz apenas aquilo que o seu criador diz que faz e em geral esses programas utilizam licenças que não permitem que você possa distribui-lo, ou seja, se você tem um Software Livre e resolve copia-lo para um amigo estará dentro da lei, mas se o Software for Proprietário será necessário conferir sua licença de uso para verificar se é permitida a distribuição, que normalmente é proibida e se desrespeitada incide em um famoso crime, a pirataria.


Mas, se eu tenho o bendito código fonte, mas não entendo nada do que está escrito, o que ganho com isso?

Principalmente no caso de programas mundialmente famosos como o Linux, Firefox e Open Office, existem milhares de pessoas envolvidas nos projetos, todos estão sempre procurando encontrar formas de melhora-los e diminuir o número de problemas, um especialista em segurança que encontra falha em um sistema desses tem imediatamente seu nome exposto na mídia, é uma divulgação enorme do seu próprio nome, se além de informar a falha conseguir informar uma solução é um ganho enorme para o curriculum dessa pessoa, portanto é mais fácil confiar em uma única empresa detentora de um Software Proprietário ou em milhares de empresas e pessoas que estão todos
desenvolvendo o mesmo programa?


O que leva uma pessoa ou empresa a desenvolver Software Livre?

Existem muitos motivos para isso, irei listar alguns que considero os principais:

1 - Grande parte da licenças livres citam que para você aproveitar o código de um Software Livre é necessário que seu programa também seja livre, portanto se existe algo que atende 90% das suas necessidades, por que não aproveitar e criar apenas 10%?

2 - Empresas que realmente ganham muito com venda de licenças (Um ponto forte de lucros do Software Proprietário) são poucas, é quase restrito a empresas gigantes e que acabam formando um monopólio, além de outros problemas como a pirataria que dificulta mais ainda ter lucros com venda de licença.

3 - Muitos passam anos estudando, conseguindo diplomas, fazendo estágio, tudo para enriquecer seu curriculum, mas você ter um programa desenvolvido por você ou ter contribuído significativamente com algum pode ser o diferencial que vai determinar seu sucesso, como já desenvolvi software tanto no modelo proprietário quanto no livre posso afirmar que é muito mais fácil conseguir construir um bom nome desenvolvendo Software Livre.

4 - Áreas como treinamento, manutenção, suporte e adaptação estão crescendo cada vez mais, se você faz parte da equipe de desenvolvimento de um projeto, quando alguém precisar de um desses serviços não parece óbvio que você será um dos primeiros a ser chamado?

5 - O Software Livre não é um modelo de desenvolvimento conveniente para a criação de monopólios, porém é excelente para pequenas empresas e desenvolvedores isolados, será que é melhor ser um empregado de uma corporação que desenvolve Software Proprietário, onde você tem seu desenvolvimento limitado, ou tentar seguir seu próprio caminho livre tendo como limites apenas seu próprio potencial?

Existem diversos outros motivos para decidir utilizar o modelo de desenvolvimento livre, cada um tem os seus, eu optei por ele a alguns anos, estou satisfeito e não tenho intenção de voltar a desenvolver software proprietário nunca mais.


Por que falam tanto que Software Livre é bom para a inclusão digital?

Existem diversos pontos também que o tornam propício para a inclusão digital, porém irei citar apenas os dois que considero principais:

1 - A grande maioria dos Softwares Livres são gratuitos, portanto não exclui pessoas de menor poder aquisitivo.

2 - Quando vai se desenvolver o código de um programa é preciso utilizar outro programa para isso, existem muitos programas de desenvolvimento livres e de ótima qualidade, portanto isso possibilita que todos sejam desenvolvedores, enquanto no modelo proprietário é normal que para poder criar algo seja necessário pagar por um programa de desenvolvimento e com todas as desvantagens já citadas acima de ser secreto, não poder distribuir...


Então o Software Livre é bom apenas para quem não tem condição para comprar Software Proprietário?

De forma alguma, o Software Livre em si é um modelo de desenvolvimento que tem se destacado por conseguir atingir de forma mais rápida os objetivos, o fato é que programas desenvolvidos sob esse modelo tem se destacado cada vez mais com a popularização da Internet, a velocidade com que alguns Softwares Livres tem evoluído é fenomenal, se o programa conseguir chamar atenção de desenvolvedores do mundo todo ocorre algo que a pouco tempo não era imaginável, milhares de pessoas espalhadas pelo mundo com os objetivos mais diversos possíveis trabalhando em um mesmo programa e cada um atingindo seus próprios objetivos.

Synaptic, a melhor maneira de adicionar e remover programas.

Site: http://www.nongnu.org/synaptic/
Já vem instalado em todas as versões do Big Linux.

A teoria

Um dos pontos fortes que existem em Linux baseados em Debian é a forma de instalar e remover programas (Outros sistemas também possuem formas similares, mas a descrita aqui vale apenas para baseados em Debian).


Existe um mito que diz que instalar programas no Linux é complicado, porém isso não passa de um mito, a verdade é que a melhor forma de instalar programas não é como a maioria das pessoas está acostumada, entrar no site do programa, fazer o download e instalar.


Sistemas Debian e baseados utilizam REPOSITÓRIOS que ficam na SOURCES.LIST.


Repositórios são servidores que disponibilizam programas prontos para serem instalados e usados, além da vantagem de existirem locais que podem ter milhares de programas instaláveis com um clique, existem outras vantagens como segurança e facilidade de atualização.


Sources.List, é o arquivo um arquivo no seu computador que determina a lista de repositórios a ser usada (ele fica localizado em /etc/apt/sources.list).


O funcionamento é basicamente esse: os repositórios possuem os programas e uma lista dizendo quais são, uma pequena descrição, tamanho, versão e outros detalhes, um programa no seu PC procura na Sources.List os servidores a serem usados, então baixa as listas e disponibiliza no seu PC.


No momento estou utilizando apenas repositórios com alto nível de segurança e estabilidade, onde tenho disponível 16534 programas para instalar.


Esse gerenciamento é feito pelo programa apt-get em conjunto com o dpkg, porém são programas em modo texto, que não são práticos para a maioria dos usuários.


A prática

O Synaptic é um programa gráfico que facilita o uso do apt-get, pois não é necessário nenhum comando, apenas alguns cliques no mouse.



















Tela exibida na primeira vez que o Synaptic é aberto.














Primeira tela do Synaptic.

Veja na primeira tela do Synaptic os botões Recarregar, Procurar e Aplicar, pois é provável que você ainda os usará muito.


O botão Recarregar sincroniza a lista de programas do seu PC com a lista de programas disponíveis nos servidores, se você for instalar algum programa recomendo que antes recarregue a lista para checar se não foi inserida uma nova versão, mas não é necessário recarregar a cada programa que vai se instalar, lembre que isso serve apenas para checar se o programa que está no servidor não é uma versão mais nova, então usar esse botão uma vez a cada semana costuma ser suficiente.


Após recarregar basta encontrar o programa, você pode procurar na lista à esquerda por categoria ou usar o botão procurar, no caso vamos procurar o programa krita (programa de edição de imagens do KDE).























Agora basta dar 2 cliques sobre o programa ou clicar com o botão direito sobre ele e depois clicar em instalar.


















Ele detectou que para o krita funcionar vai ser necessário instalar mais 2 programas, koffice-data e koffice-libs, basta clicar em marcar, até o momento o krita foi selecionado e os programas que ele precisa para funcionar também, então clique em aplicar.




















Essa tela exibe o que precisa ser feito, antes de mandar aplicar é bom dar uma olhada no que será feito, pois alguns programas podem precisar remover outros para funcionar corretamente, isso é um pouco raro de acontecer, mas é melhor previnir do que remediar, após clicar em aplicar basta esperar.




































Programa instalado e pronto para usar, caso queira remove-lo basta procurar por ele novamente, clicar com o botão direito, clicar em marcar para remoção e mandar aplicar.