Como definir grupos padrão para usuários na Debian GNU/Linux

Passei por um problema aqui em que eu precisava criar uma série de usuários que deveriam pertencer a determinados grupos. Isso porque, quando se cria um usuário novo na Debian (não sei se é assim nas outras distros), ele é incluído somente no seu próprio grupo. E isso é um problema, por exemplo, quando se quer ouvir música, pois o usuário, por padrão, não faz parte do grupo audio. Eu poderia fazer essa inclusão nos grupos individualmente (ou usando um script), mas estava considerando essa solução muito pouco funcional. Resolvi dar uma pesquisada e acabei descobrindo um recurso do próprio comando que resolveu o meu problema.

O pulo do gato está em um parâmetro e no arquivo de configurações do comando adduser. O nome do arquivo é adduser.conf e ele está localizado dentro do diretório /etc. Esse arquivo define todas as configurações padrão do adduser e apresenta vários parâmetros interessantes, como o shell padrão e o diretório dentro do qual deverão ser criados os diretórios dos usuários, entre (várias) outras coisas. Mas as configurações que interessam para este artigo está lá no finalzinho do arquivo. São elas EXTRA_GROUPS e ADD_EXTRA_GROUPS. É sempre bom lembrar que, por ser um arquivo do sistema, o adduser.conf só pode ser alterado com privilégios de superusuário, usando a conta root ou o comando sudo.

EXTRA_GROUPS define em quais grupos os usuários serão incluídos. Caso você queira usar os grupos padrão, que estão definidos na linha de configuração do parâmetro, você pode deixá-la exatamente como está. Agora, se você quiser alterar esses grupos, então é necessário descomentar a linha (eliminando o sinal #) e alterar o parâmetro para os grupos de seu interesse.

ADD_EXTRA_GROUPS define o comportamento padrão do comando adduser. Caso você queira que todos os usuários sejam incluídos nos grupos definidos em EXTRA_GROUPS, descomente a linha ADD_EXTRA_GROUPS e certifique-se de que o número ao final dela seja diferente de zero (por exemplo, ela deve ficar ADD_EXTRA_GROUPS=1). Caso você queira que somente alguns usuários entrem nos grupos definidos, deixe essa linha comentada (ou com o valor 0) e, quando for criar o usuário que deve pertencer aos grupos, acrescente o parâmetro –add_extra_groups ao comando adduser.

Exemplificando:

Situação 1: você quer que todos os usuários criados no seu sistema pertençam aos grupos audio, video, plugdev e users. Você deve então editar o arquivo adduser.conf e alterar a linha do parâmetro EXTRA_GROUPS para:

EXTRA_GROUPS="audio video plugdev users"

e a linha do ADD_EXTRA_GROUPS para:

ADD_EXTRA_GROUPS=1

(repare que, em ambas as linhas, não existe mais o sinal # no início delas) e, para criar novos usuários, execute o tradicional:

adduser nome_do_usuario

Todos os usuários criados dessa forma farão parte dos grupos audio, video, plugdev e users.

Situação 2: você quer que alguns os usuários pertençam aos grupos padrão do sistema (aqui na minha instalação eles são: dialout, cdrom, floppy, audio, video, plugdev e users). Nesse caso os parâmetros ficam com a configuração padrão do sistema, ou seja, as linhas permanecem como:

#EXTRA_GROUPS="dialout cdrom floppy audio video plugdev users"

e:

#ADD_EXTRA_GROUPS=1

(repare na marca de comentário no início de cada linha). Agora, toda vez que você quiser criar um usuário pertentecente aos grupos padrão, é necessário acrescentar o parâmetro –add_extra_groups ao comando, dessa forma:

adduser nome_do_usuario –add_extra_groups

Assim, somentes esses usuários farão parte desses grupos. Os outros, criados sem o parâmetro, continuarão somente com seus grupos pessoais.

“Filhos do [GNU/]Linux” ajudam no debate da mudança de paradigmas

Acabei de assistir a uma matéria no Olhar Digital em que eles colocaram duas crianças (de 7 e de 9 anos) que sempre utilizaram o GNU/Linux para usar o Windows (será que isso pode ser considerado abuso infantil?   :-) ). As falas das crianças ao longo do processo são ótimas:

“No Linux é fácil, mas eu não sei como o meu pai sabe mexer tanto assim no Windows. É mais difícil, tem várias coisas diferentes desse aqui para o outro (Linux)”

“O Linux não pergunta tantas coisas como este aqui (Windows)”

“Os jogos não são mais legais do que o do Linux. Se eu pudesse escolher, eu ia escolher o Linux”

E a matéria chega à conclusão que o melhor sistema operacional é aquele ao qual você está acostumado. Isso porque já haviam sido feitas duas matérias anteriores, em que usuários do Windows foram colocados pra trabalhar com o MacOS e com o GNU/Linux.

Tudo bem que não é nenhuma avaliação formal, mas essa pesquisa apresenta pelo menos dois problemas. O primeiro é que foram utilizados usuários de faixas etárias e conhecimentos diferentes. Por exemplo, para experimentar o MacOS, foram usados dois editores do Olhar Digital, para o GNU/Linux, dois usuários jovens e para o Windows, duas crianças. O segundo problema, mais sério na minha opinião, foram os critérios da avaliação. No caso do MacOS e do Windows eles experimentaram a operação da máquina. Já com o GNU/Linux, eles fizeram o processo inteiro, desde a instalação. Entretanto, apesar de terem avaliado mais aspectos, isso não ganha nenhum destaque na matéria, que ressalta apenas que eles tiveram dois problemas: o plugin do Flash e o uso do software aMSN. Ainda bem que, pelo menos, eles fizeram uma segunda matéria mostrando que o problema estava na forma que os usuários escolheram pra resolver os problemas e não no sistema em si. Mas bem que eles podiam ter destacado que o Flash é um software proprietário que não pode ser distribuído junto com o GNU/Linux (a não ser que se faça um contrato de distribuição junto à Adobe) e que a Microsoft vive mudando detalhes do protocolo da rede MSN justamente para dificultar que outros clientes conectem-se a ela.

Contudo, no frigir dos ovos, mesmo com todos os problemas de procedimentos e apresentação dos resultados, matérias desse tipo são importantes pelo menos para ajudar no debate de que qualquer mudança de paradigma é complicada, independente delas estarem em comportamentos pessoais ou no sistema operacional que utilizamos. Falta agora fazer uma avaliação mais séria de usabilidade e torná-la pública para que as pessoas percebam que um bom sistema operacional não é aquele ao qual elas estão acostumadas.

Como atualizar o KDE para a versão 4.3 no Debian Squeeze

DepoKonqui, o mascote do KDEis de me cansar de ver inúmeros comentários maravilhosos sobre o novo KDE no identi.ca, resolvi experimentá-lo em minha máquina. O problema é que uso a versão testing da Debian (atualmente chamada "Squeeze") e os pacotes da versão 4.3 do KDE só estão disponíveis no repositório do unstable. Assim, munido de muita coragem (e ansiedade por experimentar a nova versão) resolvi atualizar o KDE a partir desse repositório. Apresento abaixo uma descrição do que eu fiz para colocá-lo em minha máquina. Atenção!!! Esse processo é bem artesanal e irá acrescentar pacotes do repositório unstable na sua máquina. Isso significa que o seu ambiente gráfico pode se tornar instável após a instalação (tudo bem que isso pode ser revertido voltando à versão anterior do KDE). Funcionou bem comigo, mas isso não significa que irá funcionar bem com você, ok? Além disso, esse não é exatamente um "guia para iniciantes". Quem for executá-lo deve ter um conhecimento mínimo de edição de arquivos do sistema e de funcionamento do aptitude. Bom, feito o meu alerta terrorista, vamos ao que interessa. 

Todos os passos descritos de aqui em diante devem ser realizados como usuário root ou utilizando o comando "sudo" antes dos comandos descritos. Em primeiro lugar, se você instalou o KDE a partir do metapacote kde-full, a primeira coisa a fazer é desinstalá-lo, com o tradicional aptitude:

aptitude purge kde-full --purge-unused

(o parâmetro "–purge-unused" serve para excluir os arquivos de configuração de todas as dependências que serão desinstaladas)

Agora acrescente um repositório unstable ao seu arquivo  /etc/apt/sources.list. Eu gosto do repositório do Instituto de Física da USP, mas você pode usar o que lhe convir. Repare que você não vai substituir o seu repositório testing, mas sim acrescentar o unstable. Veja abaixo de como ficaria um sources.list simples, apenas com as referências aos dois repositórios padrão da Debian.

## Debian Testing
deb http://sft.if.usp.br/debian/ testing main

## Debian Unstable
deb http://sft.if.usp.br/debian/ unstable main

para instalar estritamente pacotes livres. Ou então:

## Debian Testing
deb http://sft.if.usp.br/debian/ testing main contrib non-free

## Debian Unstable
deb http://sft.if.usp.br/debian/ unstable main contrib non-free

caso você não se importe em usar pacotes não livres. Se você é como eu, deverá também ter vários outros repositórios além dos citados acima, mas é importante que pelo menos os citados acima estejam presentes na sua máquina.

Entretanto, se você fizer somente isso, o seu sistema inteiro será atualizado para unstable. E você não vai querer isso, não é? Para evitar esse problema, basta acrescentar algumas linhas no seu arquivo /etc/apt/preferences. É comum que esse arquivo não exista no seu computador. Nesse caso, basta criá-lo. O conteúdo a ser inserido no arquivo é o seguinte:

Package: *
Pin: release a=testing
Pin-Priority: 900

Package: *
Pin: release a=unstable
Pin-Priority: 800

Explicando grosseiramente, o que as linhas acima fazem é informar ao seu sistema que os pacotes do repositório testing tem prioridade sobre os do unstable. Isso garante que ele não irá substituir nenhum dos seus pacotes por um instável. Repare em um detalhe. Os parâmetros "a=testing" e "a=unstable" fazem referência direta ao nome dos repositórios. Assim, se ao invés desses nomes você usou "squeeze" e/ou "sid" no seu sources.list (ou seja, se o seu arquivo não está igual ao exemplo que dei lá no início do artigo), então deve substituir também o "a=" com o valor correspondente, ok?

Após o acréscimo, atualize a base de dados:

aptitude update

Agora vem a pegadinha. Pelo menos até a hora que eu instalei o KDE não existia nenhum metapacote do tipo kde ou kde-full no unstable. Por isso é necessário especificar os pacotes manualmente. A lista de pacotes que eu precisei de instalar/atualizar foi a seguinte:

kdeadmin kdebase kdebase-runtime kdebase-runtime-bin-kde4 kdebase-workspace-kgreet-plugins kdebase-workspace-libs4+5 kdeedu kdegames kdegraphics kdelibs5 kdelibs5-dev kdemultimedia kdenetwork kdenlive kdepim kdepimlibs5 kdetoys kdeutils kde-icons-oxygen kde-l10n-ptbr kde-window-manager kdm klipper kscreensaver ksysguard libkephal4 libkfontinst4 libkdecorations4 libkholidays4 libkscreensaver5 libksgrd4 libkworkspace4 libmaildir4 libnepomukquery4 libnepomukqueryclient4 libortp8 libplasma3 libplasmaclock4 libplasma-applet-system-monitor4 libplasma-geolocation-interface4 libprocesscore4 libprocessui4 libsolidcontrol4 libsolidcontrolifaces4 libsoprano4 libsoprano-dev libtaskmanager4 libweather-ion4 libzip1 plasma-widgets-addons plasma-widget-lancelot systemsettings

Pode ser que isso mude de acordo com a máquina do usuário, devido a forma como o seu Debian foi instalado. Eu também posso ter deixado passar algum pacote que ainda não dei falta. Eu gerei essa lista através de tentativa e erro, ou seja, fui tentando instalar os pacotes até não ter mais nenhum problema insolúvel de conflito. Portanto, mais uma vez, pode ser que funcione na sua máquina, pode ser que não. Comentários sobre isso são bem vindos, especialmente se você detectar algum pacote ausente. Dando continuidade, então, instale os pacotes com o comando:

sudo aptitude -t unstable install kdm kdeadmin kdebase kdebase-runtime kdebase-runtime-bin-kde4 kdebase-workspace-kgreet-plugins kdebase-workspace-libs4+5 kdeedu kdegames kdegraphics kdelibs5 kdelibs5-dev kdemultimedia kdenetwork kdenlive kdepim kdepimlibs5 kdetoys kdeutils kde-icons-oxygen kde-l10n-ptbr kde-window-manager klipper kscreensaver ksysguard libkephal4 libkfontinst4 libkdecorations4 libkholidays4 libkscreensaver5 libksgrd4 libkworkspace4 libmaildir4 libnepomukquery4 libnepomukqueryclient4 libortp8 libplasma3 libplasmaclock4 libplasma-applet-system-monitor4 libplasma-geolocation-interface4 libprocesscore4 libprocessui4 libsolidcontrol4 libsolidcontrolifaces4 libsoprano4 libsoprano-dev libtaskmanager4 libweather-ion4 libzip1 plasma-widgets-addons plasma-widget-lancelot systemsettings

Sim, tudo isso aí em cima é uma única linha de comando. Cuidado na hora de copiar e colar para que você não insira nenhum espaço extra ao final das linhas. E se você for observador(a), irá reparar que existe um parâmetro diferente no aptitude acima: "-t unstable". Lembram que acrescentamos umas linhas no arquivo preferences, pra impedir que o aptitude instale pacotes do unstable inadvertidamente? Pois bem, o parâmetro "-t" informa ao programa que ele tem que instalar os pacotes seguintes (e suas dependências) a partir do repositório especificado. Nesse caso, o unstable.

Ao executar o comando acima, o aptitude irá lhe informar que existem dependências a serem resolvidas. Não se assuste com isso. Aceite as sugestões propostas por ele. Serão exibidas então as informações de instalação. Mais uma vez autorize e o processo de download/instalação será iniciado. Ao final de tudo, seu novo KDE estará instalado e configurado e você poderá aproveitar todas as novas opções legais dele. Divirtam-se! Ah, e comentem se a explicação funcionou ou não pra vocês. 

Mais um feliz usuário do GNU/Linux

Sempre que posso, faço um trabalho de divulgação do software livre em geral e do GNU/Linux em particular, ressaltando suas qualidades e tentando desmistificar essa ideia de que é um sistema difícil. E de vez em quando consigo alguns resultados interessantes. O último deles foi com um antigo colega da lista de discussão Internews, o Mordred. Ele mandou uma mensagem tão animada para a lista, relatando sua migração para o pinguim, que eu pedi a ele para fazer um relato pra eu publicar aqui. Conforme prometido, aí está a mensagem dele. Fiz questão de deixá-la na íntegra, sem correções, para preservar o estilo e a emoção dele ao escrever o texto. Meus comentários ao final do texto.

Pois então chegou o dia em que me desfiz do preconceito e cansado de telas azuis da morte, inúmeras reinstalações, procura sem fim por drivers, incompatibilidade de dispositivos, chegou à minhas mãos e olhei com ar de ironia mais um artigo falando maravilhas da nova versão de um tal de Ubuntu e resolvi baixar. Afinal, pensei eu, essa coisa não pode ser tão complexa e por tudo que esta se falando, trabalhando desde 1987 com informática e oriundo de “find . –print |cpio –ovb >/dev/fita” eu não poderia me sair de forma tão vergonhosa.

Deixei o bicho baixando nem sei de onde e depois de alguns dias (já esquecido) encontrei perdido numa pasta um ISO de pouco mais de 700Mb do tal Ubuntu. Como mais uma vez a máquina de meu filho apresentava problemas, pensei…. Porque não? Sem nada de backup para fazer, nem outro aplicativos à instalar, pelo menos para ver a cara do dito cujo, eu precisava tentar.

Primeiro impacto negativo: logo após criar o cd no Nero na máquina Windows de minha esposa, ao executar o CD, um menu assustador em inglês sugeria que, como um outro SO estava instalado, eu poderia optar pela versão Live ( que para os leigos como eu, é um SO que funciona diretamente no CD, sem mexer em NADA de sua máquina!!!! – ainda não usei). Desapontado por estar com uma versão em inglês, e imaginando que as coisas seriam mais complexas do que eu gostaria com meu inglês de aeroporto de 3º mundo, mesmo assim parti para máquina de meu filho, alterei para boot pelo CD, cruzei os dedos e deixei correr… E aí….

Bom, logo de cara, me surpreendi com uma tela interativa que dava a opção de instalação em (sem exageros) pelo menos uns 20 idiomas. Surpresa mais uma vez, dado que a gente sabe como funciona no concorrente: Um CD para cada idioma e olhe lá! E aí…..eu sinceramente gostaria de falar mais da instalação, contudo…diferentemente do que ocorre com o “outro” você não faz NADA. Seleciona o horário de onde está, o idioma (como já mencionei) e define partição(ões) (se desejar e se quiser conservar o 2º SO) e um nome e senha de usuário. Depois de +/- 30 minutos ( aí vai de sua máquina e sua leitora de CD/DVD ) ponto final. Você está com sua máquina 100% configurada. E quando digo 100% é isso mesmo: internet ok (com o fantástico Firefox, que eu já vinha usando, depois de desistir dos travamentos e enorme peso do IE8), um editor de texto e uma planilha eletrônica (tão completos como os “do mercado”), alguns gráficos para começar, além de uma infinidade de joguinhos (para alegria de meu filho) e pode começar a usar.

Em resumo, perdi anos assustado com o Linux, talvez por minha origem Unix/Xênix, onde a tela preta reinava e comandos como que já citei, parecem uma verdade sopa de letras e fazem a maravilha dos empolados profissionais de TI, olhados pelos leigos como deuses (quando na verdade decoraram apena suma dúzia de comandos chave).

A interface deste que usei (Ubuntu 9.0.4) é amistosa, você tem alguma dificuldade no início, já que tudo mudou de lugar, mas.. com alguma boa vontade (e nem precisa ser muita) você reconfigura tudo, cria atalhos, reparticiona aos instalação, atualiza o SO de forma automática, customiza funcionalidades e se você, assim como eu, pretende, mais que pregar a honestidade com seu filho, mostrar que é possível sim, usar computador e internet sem precisar recorrer à pirataria, existe vida (boa e dentro da lei) além do Windows. E o melhor, de graça, com atualizações constantes e outros aplicativos tão bons quanto a “tendência de mercado”.

À você Fred, responsável por isso e me mostrando esse caminho à anos, obrigado e desculpe pela demora; à comunidade do pinguim, tô chegando com a faca nos dentes! E aqueles que ainda patinam no Windows, quem sabe até pelos mesmos motivos que eu, podem relaxar. Tudo que você precisa para passar do Windows é o que você obrigatoriamente precisa ter independentemente do SO que use: um backup!

Bom, não sobra muito o que dizer depois disso, né? Na verdade quem agradece sou eu, Mordred, pela sua iniciativa em tentar fazer diferente, em fugir da (como você mesmo diz) "tendência de mercado" e dar uma chance ao GNU/Linux. Com certeza você ainda tem muita diversão pela frente. Boa sorte em sua jornada!

São mensagens assim que reforçam a minha crença de que vale a pena lutar pela adoção do software livre. Pensem bem, quantas pessoas serão convencidas pelo Mordred a, pelo menos, tentar usar o GNU/Linux? E, dessas, quantas o adotarão definitivamente? A dominação mundial está apenas começando… 

Inscrições abertas para o FLISoL-BH 2009

Já está no ar a estrutura de inscrição para o Festival Latinoamericano de Instalação de Software Livre, que ocorrerá, entre outras cidades, em Belo Horizonte.

É um dia inteiro onde serão apresentadas uma série de palestras e minicursos, além de ter equipes preparadas para fazer a instalação de distribuições GNU/Linux e diversos outros softwares livres nas máquinas dos participantes. A participação é gratuita. Basta fazer a inscrição na página de cadastro. O evento ocorrerá no campus II do CEFET-MG, localizado à Av. Amazonas, 7675, bairro Nova Gameleira e conta com o apoio do Departamento de Computação do CEFET-MG, que providenciou a estrutura física para as palestras e minicursos. Maiores informações podem ser obtidas no blog do evento.

Uma boa oportunidade para conhecer mais sobre o software livre e trocar informações com pessoas da área e entusiastas. Quem sabe você não se anima a sair fora daquele (suposto) sistema operacional que vive dando pau e pegando vírus? 

Executando aplicações AIR sem instalar o Adobe AIR no GNU/Linux

A Adobe lançou, há algum tempo, uma nova tecnologia chamada Adobe AIR. Explicando rapidamente, é um ambiente de execução que permite o desenvolvimento de aplicações web, mas independentes do navegador. Ele funciona mais ou menos como o Java, da Sun. Ou seja, você desenvolve uma aplicação AIR e precisa da máquina virtual pra ela poder funcionar.

Como a idéia é ser multiplataforma (será que escrevi isso corretamente? essa alteração do português está me matando… ), eles lançaram versões da máquina virtual para o Windows, Macintosh e GNU/Linux. Até aí tudo bem. As pessoas podem até comemorar isso como um avanço, por uma empresa ter se lembrado do pinguim (essa eu sei que escrevi direito… ). Porém, o instalador do GNU/Linux possui uma peculiaridade: ele precisa de privilégios de root para instalar. Isso mesmo. Você não pode instalá-lo em seu espaço de usuário. Só no sistema como um todo. Incômodo a parte, isso não seria problemático se não tivesse mais um pequeno detalhe. As aplicações AIR também exigem privilégios de root para serem executadas! Ou seja, se você quiser instalar qualquer aplicação, mesmo pra testes, precisar dar a ela privilégios de superusuário. Isso, no GNU/Linux, é algo quase insano. Instalar ou não uma aplicação com privilégio de root deveria ser opcional e não obrigatório. Tal prática pode até ser comum em outros (chamados) sistemas operacionais. Mas aqui na terra do pinguim isso beira a heresia. Uma explicação (com demonstração) desse problema pode ser encontrada nesse artigo (em inglês) no blog splitbrain.org.

Mas aí eu descobri uma publicação no blog do Logan Buesching que ensina como executar aplicações AIR sem ter que instalar nem a máquina virtual nem a aplicação. Ou seja, funciona tudo no seu espaço de usuário, sem problema algum. O restante desse artigo é uma tradução livre do original (que está em inglês).

Segundo o Logan, para que os aplicativos AIR funcionem, basta seguir os seguintes passos:

  1. baixe o AIR SDK;
  2. crie um diretório no lugar que você quiser e descompacte o arquivo dentro desse diretório;
  3. baixe uma aplicação AIR (uma sugestão para testes é o Spaz, um excelente cliente de código aberto para o Twitter);
  4. mais uma vez, crie um diretório no lugar que você quiser e descompacte o arquivo .AIR (isso mesmo, apesar da terminação, esse é na verdade um arquivo zipado);
  5. digite o comando baseado no seguinte modelo:

<caminho_do_air_sdk>/adl -nodebug <caminho_da_aplicação_air>/META-INF/AIR/application.xml <caminho_da_aplicação_air>

(esse comando deverá ficar todo em uma linha só)

Por exemplo, imagine que você descompactou o AIR SDK em um diretório air_sdk, dentro da raiz seu diretório de usuário (home) e o Spaz dentro de um diretório spaz, também dentro do seu diretório de usuário. Dessa forma, o caminho para o AIR SDK será ~/air_sdk e para o Spaz, ~/spaz (~ é um atalho que significa a raiz do diretório de usuário atual). Assim, o comando acima ficaria da seguinte forma:

~/air_sdk/bin/adl -nodebug ~/spaz/META-INF/AIR/application.xml ~/spaz/

Eu fiz uns testes aqui e funcionou. A aplicação rodou meio lenta, mas estou atribuindo isso ao fato da necessidade da máquina virtual (aplicações Java também não são um primor de velocidade aqui). Mas façam o teste e vejam o que acham. Se alguém quiser colococar nos comentários o resultado obtido com essa e outras aplicações, será de grande valia…  

Prevenção de lesões por esforço repetitivo com um software livre

Um dos problemas que afligem os usuários de computador é a perda da noção de tempo de trabalho. Com isso, muitas vezes trabalhamos horas à fio sem nos darmos conta disso. O resultado final vai desde dores passageiras nas costas até questões mais sérias, como as chamadas Lesões por Esforço Repetitivo. Se você usa um monitor CRT então, acrescente à lista de problemas o cansaço visual.

E hoje eu vi um artigo escrito pela Joaninha no Ladybug Brasil justamente comentando sobre isso e indicando um software livre chamado HealthKeeper. Lembrei-me então de um programa que eu usei há algum tempo aqui no GNU/Linux. O problema é que eu não lembrava de jeito nenhum o nome da criatura (já o havia procurado há algumas semanas, quando fui acometido de dores nos braços). Mas estimulado pelo artigo, resolvi combinar uma série de palavras-chave no sítio de buscas e finalmente (re)encontrei o bicho. O nome dele é Workrave.

O funcionamento do programa é simples. Ele possui três contadores regressivos, um para micro-pausas, um para pausas longas e outro para limite diário de uso. Assim, de tempos em tempos o programa avisa quando é hora de dar uma paradinha nas atividades. Esses contadores são totalmente personalizáveis, ou seja, você define exatamente o intervalo entre as pausas e quanto tempo elas devem durar. Inclusive você pode desabilitar os contadores que não interessam (por exemplo, eu não uso as micro-pausas). Além disso as pausas podem ser adiadas temporariamente e você pode controlar a forma como elas atuam, que pode ser desde avisos na tela até o bloqueio da área de trabalho.

Se você trabalha em mais de um computador e eles estão conectados em rede, você pode definir que um deles funcione como servidor e controle o seu tempo. Assim, cada vez que você abrir o seu perfil em qualquer máquina, ela se conecta a esse servidor e recupera as suas estatísticas de uso. Pra quem está se recuperando de algum problema de LER, um controle rígido de uso é fundamental e esse recurso vem bem a calhar.

Por fim, o programa tem um recurso bem simpático. A cada pausa ele mostra uma janela com uma série de exercícios de alongamento que você pode fazer enquanto espera o seu tempo de voltar à atividade.

Além de ter o seu código-fonte disponível, o Workrave pode ser encontrado nos repositórios das principais distribuições GNU/Linux. Apesar de ser construído com a biblioteca de desenvolvimento GTK, que é mais integrada para uso no GNOME, o Workrave funciona muito bem no KDE (inclusive na versão 4). Inclusive existe um software para o KDE, chamado RSIBreak. Mas a versão atualmente disponível no Debian Lenny, não funciona no KDE 4. Até encontrei uma versão no repositório experimental, mas não consegui fazê-la funcionar direito aqui.

Ah, e tem também uma versão para Windows, o que é muito interessante. Afinal se o usuário já tem que sofrer para usar esse (suposto) sistema operacional, não é justo que sofra de LER também, né? 

Melhore a nitidez das fontes no GNU/Linux

Quer melhorar a qualidade das fontes exibidas pelo GNU/Linux? Experimente essa dica publicada no blog Viablog. Após fazer as alterações e reiniciar o servidor X (não precisa reiniciar a máquina, somente o X), as fontes ganham um aspecto mais "nítido" e facilitam um pouco a leitura. Testei em duas máquinas e o resultado foi perceptível (apesar de ter gente que comentou no blog que não fez muita diferença).

A dica original foi para o Ubuntu, mas também funciona no Debian. Acredito que funcione também em qualquer outra distro, basta descobrir onde ficam os arquivos de configuração alterados pelo pacote citado na dica. Ah, e os resultados, segundo o blog, são melhores em monitores LCD do que CRT.

Controle o consumo de IO da sua máquina com o iotop

Essa dica veio do sítio The Gay Bar (não se deixem enganar pelo título, lá tem ótimas dicas de tecnologia). Especificamente desse artigo.

Quem usa muito o console do GNU/Linux já conhece o aplicativo top. Esse pequeno programa mostra, em tempo real, a situação do consumo de CPU, memória e outros recursos do sistema. Eu particularmente prefiro a sua "versão anabolizada", o htop, que mostra as mesmas informações com alguns recursos extras.

Entretanto, algumas vezes a sua máquina pode estar lenta não pelo consumo de CPU ou memória, mas sim de IO, ou seja, as transferências de dados entre as aplicações e o disco (IO vem do inglês input/output). Na prática, esse problema ocorre quando existe uma grande transferência de dados entre um processo e o seu disco rígido. Se ele não for rápido o suficiente para processar a requisição, o sistema dá uma breve "congelada" enquanto ele termina sua tarefa.

Uma forma de verificar isso é através do programa iotop. Ele mostra a lista de processos em execução e como está a taxa de transferência deles para o HD. Junto com o htop, forma uma boa dupla para diagnóstico de "surtos de lentidão" no computador. Em tempo, o iotop faz parta da lista de pacotes de toda grande distribuição GNU/Linux.

Software livre e educação no podcast “Tux vai à escola”

No último FISL conheci pessoalmente uma da integrantes da lista de discussão Blogs Educativos, a Carla Betioli. Ela é mantenedora do blog Lua Internauta e estava lá muito interessada na relação entre softwares livres e educação. Tanto que decidiu montar um podcast chamado Tux vai à escola, cujo foco é justamente discutir a relação que existe entre esses dois temas. Era pra eu ter falado disso antes aqui na teia, mas as correrias e confusões do meu dia-a-dia me impediram. Peço desculpas à Carla pela demora… 

Para montar o podcast, ela tive a idéia de fazer algumas entrevistas com pessoas que atuam na área educacional usando o software livre. E eu tive a honra de ser um desses entrevistados. Nessa primeira edição, fomos entevistados (pela ordem de aparecimento), o Paulo Francisco Slomp, professor da Faculdade de Educação da UFRGS, eu e o Rainer Krüeger, que mantém a RKrüger, uma empresa de desenvolvimento e treinamento em GNU/Linux, e a distribuição educacional Pandorga.

Eu achei o podcast muito bacana, especialmente pelo seu caráter informal. E fiquei muito feliz pela oportunidade de participar de um projeto assim, algo ainda inédito pra mim. Gostei tanto que até estou pensando em produzir alguma coisa parecida… 

Portanto, parabéns à Carla pela sua iniciativa. Espero que surjam outras edições. Já estou aguardando ansioso…