Timer no PyQT

Quem programa em Python provavelmente já precisou fazer alguma coisa com threads. Contudo quando estamos trabalhando com PyQT há alguns incovenientes em utilizar as threads da API do Python, principalmente quando temos interfaces gráficas. Recentemente tive problemas para fazer uma função que executasse determinada ação após um tempo pré-definido em segundos. Pois quando enquanto a thread não terminasse sua execução a janela gráfica não aparecia.  Encontrei duas maneiras para solucionar,  a primeira utilizando QThread e uma muito mais simples usando QTimer,  fica o registro das duas maneiras:

Continue lendo

Anúncios

Qual seu gerenciador de pacotes?

Basicamente o que distingue uma distribuição GNU/Linux é a maneira como os programas são instalados ou removidos. Eis alguns exemplos :

  • yum – gerencia e instala os pacotes no Fedora (extensão .rpm)
  • apt – cuida dos pacotes no Debian, Ubuntu, Knoppix, Kurumin etc (extensão .deb)
  • pacman – utilizado no Arch Linux
  • emerge –  do sistema Portage, que compila e instala os pacotes no Gentoo.

Continue lendo

Exemplos do uso syscalls (x86) do Linux

Hoje tive uma idéia ao ler um artigo intitulado How Compiling Works no qual o autor descreve em linhas gerais, mas de uma maneira interessante, o processo de compilação de um código escrito em C (abordando  o processo de linkagem com as bibliotecas) tomando como exemplo a função printf. Resolvi fazer uma brincadeira, mostrando como isso pode ser realmente implementado na prática, usando chamadas de sistema (syscalls) do Linux, de modo que não seja necessário usar a implementação disponível na glibc.

Continue lendo

Montando imagens JFFS2

Partições em JFFS2 são encontradas em um vasto número de sistemas embarcados. Esse post mostra como montar uma imagem JFFS2 na própria RAM. Muito útil para analisar seu conteúdo de firmwares.

Continue lendo

Lguest: um hypervisor didático

“If unsure, say N. If curious, say M. If masochistic, say Y “

(Linux kernel config for lguest module)

Um hypervisor é uma máquina virtual monitora (virtual machine monitor) que possibilita executar diversos sistemas operacionais em uma mesma máquina. Isso significa que você pode executar o Windows e o OpenBSD em máquinas virtuais executando em cima do Gentoo, Fedora, ou outra plataforma GNU/Linux.

Continue lendo

Slack: “Abrir com:” do Firefox não funciona!

Olá leitores! Quanto tempo!

Creio que esse seja um problema mais frequente no Slackware, pois nunca vi acontecer em outras distros, mas vi acontecer em todos os Slackwares que instalei [desde o 10.1] e mesmo no dos amigos que o usam.

O que acontece exatamente?

Simples! Ao clicarmos num arquivo para efetuar seu download o Firefox, normalmente, abriria uma janela onde estão disponíveis as opções “Abrir com: [Porgrama X aqui]” e com “Salvar arquivo”, além de alguma eventual extensão que você tenha instalado.

Pois é… aqui não acontecia isso =(

A janela que aparecia era levemente diferente:

"Abrir Com" não funcionando

Com as opções “Abrir com: [Browser]” e com “Salvar arquivo”.

Continue lendo

QModInfo – obtendo informações da /proc/modules

A instalação do Ubuntu no meu notebook carrega 115 módulos! Sinceramente acho um exagero. Resolvi dar uma olhada mais detalhada nesses módulos e para facilitar minha vida fiz um programa gráfico (Qt 4.3) para listá-los.
QModInfo

Listando informações sobre os módulos carregados

Para acessar rapidamente, via terminal, digite:

git clone git://github.com/maluta/qmodinfo.git

Caso não tenha o git instalado, acesse o endereço abaixo e clique em download para o tarball ou zip.

http://github.com/maluta/qmodinfo/tree/master