Archive for the ‘Debian’ Category

GNOME Shell for Debian

Saturday, October 24th, 2009

Over the last few days I have worked for some hours on packaging the last dependency of GNOME Shell that was missing in Debian: gjs. That work has been sponsored by Collabora, along with the work required to package GNOME Shell itself. I was very impressed by the time it took for FTP Masters and Assistants to deal with the new packages - it only took a couple days for each; kudos!

What this all means is that you can now easily test GNOME Shell, and even make it your default environment on a Debian unstable system, by just installing the ‘gnome-shell’ package. As I expected, some people have been having trouble with the new package, but the general feedback has been fairly positive. If the README.Debian package doesn’t help you with your specific issue, do take the time to file a bug report!

By the way, thanks go to Joss, for his work on dh_girepository, and for him, and Sebastian Dröge for their work on creating the new GObject Introspection policy.

Epiphany/WebKitGTK+ in Debian unstable

Tuesday, May 19th, 2009

I have prepared an epiphany-webkit source package some time ago, and it has finally got out of NEW, thanks to the work Ganeff did this weekend on processing the queue =).

The good thing about those packages is I have patched them heavily to allow for easy parallel installation with Epiphany/Gecko, so you don’t need to give up your current browser to experiment and test Epiphany with the WebKitGTK+ backend. The gconf tree used for this package is /apps/epiphany-webkit, separate from the normal /apps/epiphany, for extra safety, but notice that your ~/.gnome2/epiphany will be shared between the Gecko and WebKit versions, even though the files used by each of them are different most of the time.

Go ahead and install the epiphany-webkit package, and have fun. Notice that if you have an already running session of Epiphany/Gecko, running epiphany-webkit will not be enough to launch Epiphany/Webkit, since Epiphany will just request that a new window be opened through D-Bus. The easiest way to test, if you just want a quick peek, is to run epiphany-webkit -p; this will run a ‘private’ instance of Epiphany/WebKit, which doesn’t touch your history, bookmarks, and passwords.

If you are feeling adventurous and want to make Epiphany/WebKit your default Epiphany you can do so using the following command, and selecting epiphany-webkit:

# update-alternatives --config epiphany-browser

Bossa conference: I’m here!

Sunday, March 8th, 2009

So, I just checked in for attending Bossa Conference. If you want to talk about Debian, WebKit, WebKitGTK+, Gksu-PolicyKit, I’ll be quite interested =).

Mais uma (semi-)boa notícia

Monday, February 16th, 2009

Atualizado 3: eu testei o Linux Educacional versão 1.0; a instalação é a de um Debian normal, e o desktop normal é um KDE normal; o sistema conta com APT e tudo mais; por mais que eu ache a interface ruim, os menus desorganizados e as opções estranhas e complicadas, não me pareceu que os problemas que foram citados anteriormente vêm da customização do sistema, e sim da forma como ele foi instalado, nesse caso.

Pelo que li no Planet KDE hoje, escolas públicas ganharam de novo laboratórios de computadores, mas dessa vez com GNU/Linux. Uma ótima notícia, e uma ótima idéia, mas também me parece mais um caso de boas intenções com péssima qualidade técnica por trás. Citação do que foi dito pela entrevistada do post original:

about the machines: to be fair, this was not so nice… the machines are a modification of Debian linux, named Educacional Linux ( linux for education), running 2.6.18 kernel and KDE 3.5.5, the /etc/apt/sources.lst was empty, and the aptitude and apt commands removed. I don’t know why the government did that, since the hability to upgarde is good in any system. But it’s really great to see that the government is doing what they promissed: digital inclusion in every school.

Muito bacana, né? Tem toda a cara de ser uma distribuição capada, customizada de um jeito tosco e com a habilidade de ser mantida corrompida pela brilhante idéia que os criadores dela tiveram. Fazem sucesso por aqui idéias desse tipo. Parece que alguns dos desenvolvedores do KDE acharam muito bacana a notícia e estão tentando se aproximar para dar um apoio maior, e integrar novidades do KDE4. Quem sabe eles não ajudam a dar um mínimo de sanidade técnica ao projeto? Dou a maior força!

Atualizado: o Maurício apontou em um comentário que eu fui precipitado em dizer que a distribuição é customizada de um jeito tosco; como eu de fato não olhei a distribuição de perto ainda, preferi dizer somente que a informação me leva a crer que ela seja. Eu vou sinceramente adorar se alguém me provar que eu estou errado.

Atualizado 2: o projeto aparentemente não disponibiliza fontes; somente ISOs dos binários. Isso é cartão amarelo se houver algum software GPL no CD (já que tem Linux, pelo menos 1 tem =D).

Mais uma outra coisa que eu acho que merece destaque: diferentemente de outras ações de ‘computadores na escola’ que aconteceram no passado, essa iniciativa parece ser bem estruturada. Eles têm um fórum que parece bastante ativo, inclusive.

Um post prático e rápido

Monday, January 12th, 2009

Eu estou no processo de escrever um post longo e chato em celebração aos meus 10 anos de Software Livre, mas enquanto ele não fica pronto, uma dica debiânica que pode ser útil!

Se você é como eu que mantém um sistema com Debian unstable e alguns pacotes da Debian experimental e está sempre chateado porque tem que ficar atualizando os pacotes na mão, e às vezes se esquece, aqui está a solução:

* instale o pacote apt-show-versions
* rode o script abaixo
* profit!

O script, versão fish:


for package in (apt-show-versions | grep /experimental | cut -d / -f 1); echo -e "Package: $package\nPin: release a=experimental\nPin-Priority: 500\n" >> /etc/apt/preferences; end

O script, versão bash:


for package in $(apt-show-versions | grep /experimental | cut -d / -f 1); do echo -e "Package: $package\nPin: release a=experimental\nPin-Priority: 500\n" >> /etc/apt/preferences; done

Nota: o script só adiciona a nova configuração ao final do arquivo de configuração; adapte para fazer o que você quer, e lembre de apagar as entradas antigas se for rodar de novo =)

O repositório experimental tem uma prioridade menor que um repositório normal, por padrão, e é por isso (e não por tratamento especial) que o APT prefere não atualizar para os pacotes que estão lá automaticamente. O que esse script faz é criar um arquivo de configuração de políticas do APT para que os pacotes que você tem instalados da experimental tenham uma prioridade igual a de um repositório comum, levando à atualização automática. Verifique com o comando apt-cache policy:

kov@abacate ~> apt-cache policy xserver-xorg-video-intel
xserver-xorg-video-intel:
  Installed: 2:2.5.1-1
  Candidate: 2:2.5.1-1
  Package pin: 2:2.5.1-1
  Version table:
 *** 2:2.5.1-1 500
          1 http://http.us.debian.org experimental/main Packages
          1 http://ftp.br.debian.org experimental/main Packages
        100 /var/lib/dpkg/status
     2:2.3.2-2+lenny5 500
        500 http://http.us.debian.org lenny/main Packages
        500 http://http.us.debian.org sid/main Packages
        500 http://ftp.br.debian.org lenny/main Packages
        500 http://ftp.br.debian.org sid/main Packages

Mozilla Corp e suas idéias sem noção…

Monday, September 15th, 2008

Há algum tempo atrás a Mozilla Corp decidiu obrigar o Debian a parar de usar as brands Mozilla nos pacotes que distribui. O problema é que o Debian não quis aceitar o acordo de receber uma ‘licença’ especial para usar as marcas com a condição de que devia informar aos usuários que se modificassem o Firefox deveriam trocar o nome. O Debian normalmente não aceita tratamento especial, portanto acabou trocando o nome do Firefox pra Iceweasel.

Agora parece que a Mozilla Corp resolveu atrapalhar ainda mais as distribuições GNU/Linux. Ou elas mostram uma EULA ou tem de mudar o nome. Eu recomendo fortemente à Canonical mudar logo o nome e, como disse alguém, virar as costas pro Firefox. Ou, melhor ainda, trabalhar no Epiphany e no WebKit e esquecer a Mozilla Corp.

gksu-policykit progressing

Thursday, August 7th, 2008

So it is currently possible to use simple library calls in glib-based code to run something as root, by taking advantage of the gksu policykit mechanism:

GksuProcess* gksu_process_new(const gchar *working_directory, const gchar **arguments);
gboolean gksu_process_spawn_async(GksuProcess *process, GError **error);

The DBus service already works; it is able to setup the environment and X authorization correctly. There is still lots to do; startup notification is still not handled, and dealing with the application’s stdandard output and error messages, as well as providing a way for the caller to send stuff into the processe’s standard input. It is already possible to start an application and know that it has been finished, though.

As for the code:

$ git clone git://kov.eti.br/srv/git/gksu-polkit.git/

Criticism is welcome!

In other news… I’d like to ask our dear lazy web if anyone is using some nice way of providing only posts tagged in specific categories in a feed in wordpress. I’d like to use that to provide my posts to planet debian from my wordpress install.

Primeiro dia de debcamp!

Sunday, August 3rd, 2008

Cheguei aqui… algumas coisas deram errado, outras certo, já deu pra me divertir um pouquinho e gastei um tempo preparando minha agenda pessoal. Eu fiz um arquivo ical com o que já planejei assistir, se alguém quiser acompanhar: http://people.debian.org/~kov/kov_debconf8.ical. Na porcaria bugada do Evolution você precisa criar um calendário ‘Na web’ e colocar webcal://people.debian.org/~kov/kov_debconf8.ical como endereço.

Agora é me preparar pra hackear bastante o gksu policykit durante os próximos dias! See you at debconf!

Como todos sabem, o problema do mundo é I/O

Wednesday, July 9th, 2008

Todo mundo tem aquela aplicação que sempre quis ter (ou no mínimo se irritou muito por não ter); alguns talvez tenham escrito a aplicação, ou melhorado outra para resolver seu problema. Outros tiveram a felicidade de vê-la aparecendo em um ITP na debian-devel ;). A aplicação de que eu falo agora cai, no meu caso, nessa última, e o nome dela é iotop.

O iotop é basicamente um top para I/O. Ele consegue mostrar que processos estão lendo e escrevendo dados do disco, a que taxa de transferência, e quantos porcento do tempo do processo está sendo gasto esperando I/O. No screenshot abaixo você pode ver o iotop mostrando processos do Beagle, uma compilação do WebKit/GTK+, e por aí vai.

iotop

Mas resolvi falar dele por outra coisa. Eu estava copiando umas coisas de um DVD para o meu HD e suspendi o computador no meio do processo. Como a barra de progresso da cópia andava leeeentamente depois de ter trazido o computador de volta resolvi investigar e percebi que a cópia estava acontecendo a uma taxa de por volta de 11KB/s. Ridículo. Algumas coisas que eu fiz que ajudaram:


# hdparm -a 2048 /dev/hda
# hdparm -c 1 /dev/hda
# hdparm -E 56 /dev/hda

Explico: -a configura o read-ahead do dispositivo IDE; é o número de setores que o sistema de arquivos lerá quando uma leitura qualquer for feita, se adiantando aos pedidos que recebe; deve ser um múltiplo de 2, na maioria dos casos; isso aumenta o desempenho de leituras sequenciais. O -c configura se o I/O é feito em modo 32 bits. Finalmente o -E, que deu o maior resultado, configura a velocidade do drive. Eu não sei quantos X (do ponto de vista de CDROM, que é o que deve ser considerado aqui) meu DVD tem, mas colocar 56 fez funcionar muito bem.

Se alguém tiver alguma informação menos mágica do que as que eu postei aqui, ou uma forma de descobrir quantos X um leitor de CDs tem, posta nos comentários! =D Ah, o negócio passou a fazer leituras de 3 a 4 MB/s depois disso hehe.

Minha mãe é muito linda!

Tuesday, May 6th, 2008

Além de ter insistido fazer a declaração de imposto de renda no Debian, minha mãe estava me explicando hoje que prefere muito o Evolution ao Outlook, porque já se acostumou e porque o Outlook tem um costume muito chato de travar. Dá gosto de chegar em casa e ver o Evolution ou o Epiphany sendo usados pela dona Dalvanôra =D. Wee!