Visitando o blog de Isaac Clerencia descobri o ip mais cool de toda a internet e ele é 69.69.69.69:
Olhem:
iuri@cego:~$ host 69.69.69.69
69.69.69.69.in-addr.arpa domain name pointer the-coolest-ip-on-the-net.com.
iuri@cego:~$
Não é legal?
Programação e Linux.
quarta-feira, 26 de novembro de 2008
sábado, 25 de outubro de 2008
Atualizando para o Ubuntu 8.10 RC1

Ontem atualizei o meu ubuntu do 8.04 para o 8.10 (Intrepid) RC 1 e não foi tão traumático, se alguém quiser fazer segue a receita (que também serve para atualizar para qualquer ubuntu devel).
Estas instruções servem para atualizar qualquer Ubuntu para a última (próxima) versão ou para a versão em desenvolvimento (utilizando opção -d, veja mais abaixo como).
IMPORTANTE: FAÇA ISTO VIA CONSOLE (CTRL+ALT+F1), pois durante a atualização, o X é reiniciado diversas vezes.
Vá para o console e logue-se como root:
sudo -s -H
Após isto instale:
aptitude install update-manager-core
Em seguida chame o instalador com a opção -d (atualizar para a versão devel):
do-release-upgrade -d
OBS: Se você está usando o ubuntu 8.04 e o ubuntu 8.10 já saiu, não utilize a opção -d, faça apenas:
do-release-upgrade
NOTA: Para saber a versão do seu ubuntu faça:
lsb_release -a
Agora é só esperar, no meu caso foram 1104 MB de download e 8 horas de processo (conexão de 300K).
No screenshot deste post, estou usando a nova função do ubuntu, o guest login.
Boa sorte e postem aqui suas experiências.
O que este ubuntu tem de novo?
quinta-feira, 21 de agosto de 2008
Slides palestra de 'Python no Celular' CeSOL
Ontem dia (20/08/2008) fiz minha palestra no CESOL, sobre python e Series 60, Mostrei como usar os recursos disponíveis no celulares Series 60 da Nokia usando Python como linguagem
No primeiro momento eu falei sobre python, nokia, symbian, a implemetação do python para o Series 60.
Após isto iniciei a parte dinâmica (slides 22 e 23) da palestra onde eu abria um console remoto (meu computador conectado no console python do celular) e fazia pequenos scripts para usar as funcionalidades do celular usando apenas python. O meu roteiro desta parte segue abaixo:
No primeiro momento eu falei sobre python, nokia, symbian, a implemetação do python para o Series 60.
Após isto iniciei a parte dinâmica (slides 22 e 23) da palestra onde eu abria um console remoto (meu computador conectado no console python do celular) e fazia pequenos scripts para usar as funcionalidades do celular usando apenas python. O meu roteiro desta parte segue abaixo:
############################
# Abrir tres terminais
# Ligar o rfcomm
sdptool add --channel=2 SP
sudo rfcomm listen rfcomm2 2
####
# ir no celular e ativar o console bluetooth
#####
# Abrir o minicom em outro terminal
minicom
#######################
# no terceiro terminal
# procurar dispositivos
sudo hcitool scan
######################################
# DENTRO DO MINICOM
######################################
# PYTHON
# Coisas basicas
import os
# nome do os
os.name
# diretorio atual
os.getcwd()
os.listdir(u"e:\\")
# mostrar a hora atual
import time
time.ctime()
################################3
# SMS
# enviar um sms
import messaging
messaging.sms_send('08584166618', u'Somente um teste')
# receber um sms
import inbox
i = inbox.Inbox()
# receber sms
def my(msgid):
print msgid
i.bind(my)
########
# Aqui vai aparecer uma mensagem com o numero (copiar para abaixo)
# entao mostrar a mensagem
i.content(1049305)
i.address(1049305)
i.time(1049305)
# formatar para o tempo correto
from e32db import format_time
format_time(i.time(1049305))
#########
# Ligar para alguem
import telephone
telephone.dial('88752334')
telephone.hang_up()
#########################
# Agenda
import contacts
# mostrar contatos:
db = contacts.open()
for i in db:
print db[i].title
# adicionar um contato
c = db.add_contact()
c.add_field(u"first_name", value=u"CESOL")
c.add_field(u"last_name", value=u"UFC")
c.add_field(type=u"mobile_number", value=u"2008")
c.commit()
# Mostrar os contatos
for i in db:
print db[i].title
# Mostrar meu contato
c
c.id
db[c.id]
for e in c:
print e.type, e.value
# exportar um vcard
vcards = db.export_vcards([c.id])
# gravar o arquivo
filename = u"e:\\test.vcf"
f = open(filename, "w")
f.write(vcards)
f.close()
# PEDIR PARA LIGAR O BLUETOOTH
# enviar para alguem da plateia
# sudo hcitool scan
from e32socket import *
cel1 = "00:17:E3:F9:D6:D3"
#cel1 = '00:09:DD:50:0C:C5'
phone = bt_obex_discover(cel1)
bt_obex_send_file(phone[0], phone[1].values()[0], filename)
# apagar o contato
del db[c.id]
# Mostrar os contatos
for i in db:
print db[i].title
# reimportar o contato
db.import_vcards(vcards)
###########################
# Parte grafica (fazer um aplicativo)
# mexer no celular
# fazer um hello world
from appuifw import *
# desenhar o hello world
t = Text()
t.set(u"Hello python")
app.body = t
# como ninguem ta vendo, vamos tirar um screenshot da tela e enviar para alguem
import graphics
pc = '00:09:DD:50:0C:C5'
phone = bt_obex_discover(pc)
image = graphics.screenshot()
filename =(u'e:\\pic001.jpg')
image.save(filename)
bt_obex_send_file(phone[0], phone[1].values()[0], filename)
# enviar para eu mesmo
# ligar o bluetooth obex server
# fazer funcao para realizar screenshot e enviar para alguem
def ss(to='00:09:DD:50:0C:C5'):
phone = bt_obex_discover(to)
image = graphics.screenshot()
file =(u'e:\\pic001.jpg')
image.save(file)
bt_obex_send_file(phone[0], phone[1].values()[0], file)
#ss()
###
# Desenhar um retangulo
# mexer no celular
from random import randrange
app.body = canvas = Canvas()
color = randrange(0xffffff)
canvas.rectangle((0, 0, 100, 100), fill=color)
# enviar para eu mesmo
ss()
# desenhar uma seta de mouse
x,y = 20,20
arrow = [(0,0), (0,10), (2,8), (4,12), (6,11), (4,7), (7,7)]
canvas.polygon([(x+dx,y+dy) for dx,dy in arrow], 0, 0xffffff)
# enviar para mim mesmo
ss()
###################
# Camera
import camera
image = camera.take_photo()
# enviar para alguem
filename =(u'e:\\pic001.jpg')
image.save(filename)
cel1 = '00:17:E3:F9:D6:D3'
# cel1 = '00:09:DD:50:0C:C5'
phone = bt_obex_discover(cel1)
bt_obex_send_file(phone[0], phone[1].values()[0], filename)
# fazer um sistema de monitoramento?
# usar gprs/internet
#################
# Arquivo de audio?
import audio
filename = u"e:\\audio.wav"
s = audio.Sound.open(filename)
# gravar
s.record()
# parar
s.stop()
# tocar
s.play()
# fechar
s.close()
enviar para alguem
cel1 = '00:17:E3:F9:D6:D3'
# cel1 = '00:09:DD:50:0C:C5'
phone = bt_obex_discover(cel1)
bt_obex_send_file(phone[0], phone[1].values()[0], filename)
# apagar o arquivo
os.unlink(filename)
# Fazer um Servico jornalistico?
quarta-feira, 20 de agosto de 2008
Mouse bluetooth no linux
Eu não sabia que era tão fácil, mas no ubuntu para conectar um mouse bluetooth a ele basta abrir um terminal e digitar:
sudo hidd --connect <bd-addr>
O BD-ADDR pode ser obtido via comando:
sudo hcitool scan
Lógico que só foi isto porque o bluez já está configurado na minha máquina.
Mais informações podem ser obtidas em: http://gentoo-wiki.com/HOWTO_use_a_bluetooth_mouse
e
http://ubuntuforums.org/showthread.php?t=87919
sudo hidd --connect <bd-addr>
O BD-ADDR pode ser obtido via comando:
sudo hcitool scan
Lógico que só foi isto porque o bluez já está configurado na minha máquina.
Mais informações podem ser obtidas em: http://gentoo-wiki.com/HOWTO_use_a_bluetooth_mouse
e
http://ubuntuforums.org/showthread.php?t=87919
quinta-feira, 14 de agosto de 2008
Redimensionando uma imagem do xen
É fácil redimensionar um disco usado pelo xen quando se usa LVM, agora se são arquivos de imagem (*.img)?
Pode-se fazer isto usando o dd.
Vou mostrar como exemplo como aumentar uma partição ext3 em 15 GB:
dd if=/dev/zero bs=1M count=15000 >> /var/xen/fedora.img
Agora é só rodar o programa de redimensionar o sistema de arquivos.
ef2fsck -f /var/xen/fedora.img
resize2fs -f /var/xen/fedora.img
OBS: Use blocos de 1M (parâmetro bs=1M), você pode enfrentar problemas com valores muito altos
OBS2: Tenha certeza de que a imagem a ser redimensionada está fora de uso.
Pode-se fazer isto usando o dd.
Tenha certeza de que a imagem a ser redimensionada está fora de uso.
dd if=/dev/zero bs=1M count=15000 >> /var/xen/fedora.img
Agora é só rodar o programa de redimensionar o sistema de arquivos.
ef2fsck -f /var/xen/fedora.img
resize2fs -f /var/xen/fedora.img
OBS: Use blocos de 1M (parâmetro bs=1M), você pode enfrentar problemas com valores muito altos
OBS2: Tenha certeza de que a imagem a ser redimensionada está fora de uso.
segunda-feira, 3 de setembro de 2007
Quake 2 num debian com processador intel 64 bits
Aqui eu mostro, entre outras coisas, como recompilar um pacote .deb , como compilar para 32 bits em uma máquina 64, como rodar quake 2 e resolver alguns problemas de audio e vídeo do jogo.
Primeiro uma palavrinha, esta incompatibilidade 32 bits/64 bits as vezes incomoda, ok, incomoda demais. A AMD fez a tecnologia 64 bits (x86_64/amd64) de forma que fosse possível rodar rodar aplicativos 32 bis em uma máquina 64 bits, esta parte até agora funcionou muito bem, o problema é justamente mas rodar (compilando primeiro) um aplicativo 64 bits em uma máquina 64 bits. Isto pode ser o fato que os programadores não se importaram muito em prever que um dia alguém iria recompilar seu aplicativo para pode rodá-lo em uma máquina 64 bits, alguem poderia dizer que é um problema de design de hardware, mas culpar isto considero um absurdo (apesar de ser a primeira vez em que a AMD inventa algo que a Intel copia e não o inverso, alguem aqui acompanhou a migração 16 bits para 32 bits?). Vivo no pacífico, se algo não funciona bem em 64 bits, compilo para 32 bits ou tento ver se dar para fazer um patch no código.
Compilando um pacote deb
Vamos ao quake2, já que não tinha no repositório do debian uma versão compilada do quake2 para 64 bits, eu baixei o pacote para do sarge para compila-lo (eu estou usando o etch, quake2 para 64, só existe no sarge e no sid). O pacote do sarge pode ser encontrado neste local: http://packages.debian.org/sarge/quake2
São três arquivos: quake2_0.3-1.1.dsc, quake2_0.3.orig.tar.gz, quake2_0.3-1.1.diff.gz
Para quem nunca recompilou um pacote do debian é necessário ter estes 3 arquivos (src, dsc e diff) de preferência numa mesma pasta e executar estes comandos:
dpkg-source -x quake2_0.3-1.1.dsc
cd quake2-0.3
dpkg-buildpackage -rfakeroot
Neste ponto, você pode precisar também neste ponto instalar mais pacotes que são necessários para compilar quake2, use a força do apt-get. Aqui você já enfrenta seu primeiro problema, este pacote é do sarge e exige uma dependência que não existe no etch(xlibs-pic). Para resolve o problema da xlibs-pic vá no arquivo debian/control e remova ela, após isto é só mandar compilar:
dpkg-buildpackage -rfakeroot
Mais um problema, o quake2 usa como diretiva de compilação -Werror, que significa que qualquer warning será tratado como erro e pasmem, existem warnings com o gcc-4.1.2.
A solução é adicionar o parâmetro -Wno-error ao compilador, é possível fazer isto abirndo o arquivo debian/rules (este arquivo contém as regras de como fazer o pacote) e colocar esta linha no início:
CFLAGS += -Wno-error
Outra solução é executar esta linha antes de chamar o dpkg-buildpackage:
export CFLAGS="-Wno-error"
Após isto, tente recompilar novamente:
dpkg-buildpackage -rfakeroot
Além deste pacote é necessário refazer o pacote quake2-data_13_all.deb, ele está disponível aqui nestes links:
http://ftp.de.debian.org/debian/pool/contrib/q/quake2-data/quake2-data_13.dsc http://ftp.de.debian.org/debian/pool/contrib/q/quake2-data/quake2-data_13.tar.gz
Faça o mesmo procedimento:
dpkg-source -x quake2-data_13.dsc
cd quake2-data-13/
dpkg-buildpackage -rfakeroot
Os pacotes prontos ficarão no diretório anterior ao do fonte de cada pacote, instale-os com:
dpkg -i quake2_0.3-1.1_amd64.deb quake2-data_13_all.deb
Instalando as fases e os modelos de jogo
Ao executar quake2, você pode receber a seguinte mensagem:
Error: Couldn't load pics/colormap.pcx
Isto se deve ao fato de você não ter o pacote de fases do jogo (*.pak) e os modelos de jogadores (players/*), pegue-os de uma versão shareware ou de sua versão completa se você tiver uma. Coloque estes arquivos em um dos seguintes diretórios:
/usr/lib/games/quake2/baseq2
$HOME/.quake2/baseq2/
Você terá uma estrutura mais ou menos assim:
quake2/baseq2/ quake2/baseq2/maps/ quake2/baseq2/save/ quake2/baseq2/pak0.pak quake2/baseq2/pak2.pak quake2/baseq2/players/ quake2/baseq2/players/male/ quake2/baseq2/players/male/w_hyperblaster.md2 quake2/baseq2/players/male/howitze2.pcx quake2/baseq2/players/crakhor/ quake2/baseq2/players/crakhor/w_hyperblaster.md2 quake2/baseq2/players/cyborg/ quake2/baseq2/players/cyborg/w_disrupt.md2 quake2/baseq2/players/female/ quake2/baseq2/players/female/w_hyperblaster.md2 quake2/baseq2/players/female/w_disrupt.md2
Problemas com o vídeo
Quake2 deve entrar, mas o driver padrão (softx11) não funcionou bem em 64 bits, se você tiver uma placa de vídeo com um driver descente para linux, tente usar o opengl assim:
quake2 +set vid_ref glx
quake2 +set vid_ref sdlgl
Infelizmente minha placa não é, mas o OpenGL me pareceu estável.
Existe um driver de vídeo com renderização por software via SDL que chega até a entrar no game, mas não foi possível jogar:
quake2 +set vid_ref softsdl
O driver padrão de áudio é o OSS, no meu caso que não funcionou e saiu com a seguinte mensagem:
loading oss sound output driver, ok
/dev/dsp: Input/output error
SNDDMA_Init: Could not mmap /dev/dsp.
Para usar OSS, eu precisei fazer este hack como root:
echo "quake2.real 0 0 direct" > /proc/asound/card0/pcm0p/oss
O driver de áudio alsa pode ser carregado usando:
quake2 +set snddriver alsa
Mas também apresentou um problema comigo:
loading alsa sound output driver, ok
ALSA lib pcm.c:2143:(snd_pcm_open_noupdate) Unknown PCM /dev/dsp
ALSA snd error, cannot open device /dev/dsp (No such file or directory)
O driver sdl e o driver ao funcionaram bem:
quake2 +set snddriver ao
quake2 +set snddriver sdl
A única solução que achei para usar renderização por software foi recompilar para para 32bits.
O problema de usar um software 32 bits em uma máquina 64 bits é que você precisa também de todas as bibliotecas necessárias ao software em sua versão 32bits, o debian vem com algumas prontas para instalar a partir do apt-get, o básico é ter a libc e a libstdc++. Eu tenho estes pacotes instalados:
libc6-i386 libc6-dev-i386 lib32bz2-1.0 lib32bz2-dev lib32gcc1 lib32ncurses5 lib32z1 lib32z1-dev ia32-libs
Para se compilar algo para 32 bits basta chamar o gcc como:
gcc -m32
No caso de quake eu fiz isto:
./configure \
CFLAGS=-Wno-error \
CC=gcc\ -m32 \
--without-alsa \
--without-ao \
--without-svgalib \
--without-opengl \
--disable-sdl \
--enable-shared=yes \
--enable-static=no \
--program-prefix=32bits- \
--prefix=/usr \
--bindir=/usr/games \
--libdir=/usr/lib32/games \
--datadir=/usr/share/games && \
make clean && \
make && \
sudo make install-exec
Assim eu mative as duas versões 64bits e 32bits. Se você não colocou os arquivos *.pak em seu $HOME/.quake2/baseq2 você precisará criar um link simbólico para eles em /usr/lib/games/quake2/baseq2
Nesta configuração habilitei somente o suporte a vídeo X11 e a áudio OSS, o OSS precisa que se faça este hack como root:
echo "32bits-quake2 0 0 direct" > /proc/asound/card0/pcm0p/oss
Para finalmente rodar quake2 execute:
32bits-quake2 +set snddriver oss +set vid_ref softx11
Nas próximas execuções use somente:
32bits-quake2
Bom jogo.
Primeiro uma palavrinha, esta incompatibilidade 32 bits/64 bits as vezes incomoda, ok, incomoda demais. A AMD fez a tecnologia 64 bits (x86_64/amd64) de forma que fosse possível rodar rodar aplicativos 32 bis em uma máquina 64 bits, esta parte até agora funcionou muito bem, o problema é justamente mas rodar (compilando primeiro) um aplicativo 64 bits em uma máquina 64 bits. Isto pode ser o fato que os programadores não se importaram muito em prever que um dia alguém iria recompilar seu aplicativo para pode rodá-lo em uma máquina 64 bits, alguem poderia dizer que é um problema de design de hardware, mas culpar isto considero um absurdo (apesar de ser a primeira vez em que a AMD inventa algo que a Intel copia e não o inverso, alguem aqui acompanhou a migração 16 bits para 32 bits?). Vivo no pacífico, se algo não funciona bem em 64 bits, compilo para 32 bits ou tento ver se dar para fazer um patch no código.
Compilando um pacote deb
Vamos ao quake2, já que não tinha no repositório do debian uma versão compilada do quake2 para 64 bits, eu baixei o pacote para do sarge para compila-lo (eu estou usando o etch, quake2 para 64, só existe no sarge e no sid). O pacote do sarge pode ser encontrado neste local: http://packages.debian.org/sarge/quake2
São três arquivos: quake2_0.3-1.1.dsc, quake2_0.3.orig.tar.gz, quake2_0.3-1.1.diff.gz
Para quem nunca recompilou um pacote do debian é necessário ter estes 3 arquivos (src, dsc e diff) de preferência numa mesma pasta e executar estes comandos:
dpkg-source -x quake2_0.3-1.1.dsc
cd quake2-0.3
dpkg-buildpackage -rfakeroot
Neste ponto, você pode precisar também neste ponto instalar mais pacotes que são necessários para compilar quake2, use a força do apt-get. Aqui você já enfrenta seu primeiro problema, este pacote é do sarge e exige uma dependência que não existe no etch(xlibs-pic). Para resolve o problema da xlibs-pic vá no arquivo debian/control e remova ela, após isto é só mandar compilar:
dpkg-buildpackage -rfakeroot
Mais um problema, o quake2 usa como diretiva de compilação -Werror, que significa que qualquer warning será tratado como erro e pasmem, existem warnings com o gcc-4.1.2.
A solução é adicionar o parâmetro -Wno-error ao compilador, é possível fazer isto abirndo o arquivo debian/rules (este arquivo contém as regras de como fazer o pacote) e colocar esta linha no início:
CFLAGS += -Wno-error
Outra solução é executar esta linha antes de chamar o dpkg-buildpackage:
export CFLAGS="-Wno-error"
Após isto, tente recompilar novamente:
dpkg-buildpackage -rfakeroot
Além deste pacote é necessário refazer o pacote quake2-data_13_all.deb, ele está disponível aqui nestes links:
http://ftp.de.debian.org/debian/pool/contrib/q/quake2-data/quake2-data_13.dsc http://ftp.de.debian.org/debian/pool/contrib/q/quake2-data/quake2-data_13.tar.gz
Faça o mesmo procedimento:
dpkg-source -x quake2-data_13.dsc
cd quake2-data-13/
dpkg-buildpackage -rfakeroot
Os pacotes prontos ficarão no diretório anterior ao do fonte de cada pacote, instale-os com:
dpkg -i quake2_0.3-1.1_amd64.deb quake2-data_13_all.deb
Instalando as fases e os modelos de jogo
Ao executar quake2, você pode receber a seguinte mensagem:
Error: Couldn't load pics/colormap.pcx
Isto se deve ao fato de você não ter o pacote de fases do jogo (*.pak) e os modelos de jogadores (players/*), pegue-os de uma versão shareware ou de sua versão completa se você tiver uma. Coloque estes arquivos em um dos seguintes diretórios:
/usr/lib/games/quake2/baseq2
$HOME/.quake2/baseq2/
Você terá uma estrutura mais ou menos assim:
quake2/baseq2/ quake2/baseq2/maps/ quake2/baseq2/save/ quake2/baseq2/pak0.pak quake2/baseq2/pak2.pak quake2/baseq2/players/ quake2/baseq2/players/male/ quake2/baseq2/players/male/w_hyperblaster.md2 quake2/baseq2/players/male/howitze2.pcx quake2/baseq2/players/crakhor/ quake2/baseq2/players/crakhor/w_hyperblaster.md2 quake2/baseq2/players/cyborg/ quake2/baseq2/players/cyborg/w_disrupt.md2 quake2/baseq2/players/female/ quake2/baseq2/players/female/w_hyperblaster.md2 quake2/baseq2/players/female/w_disrupt.md2
Problemas com o vídeo
Quake2 deve entrar, mas o driver padrão (softx11) não funcionou bem em 64 bits, se você tiver uma placa de vídeo com um driver descente para linux, tente usar o opengl assim:
quake2 +set vid_ref glx
quake2 +set vid_ref sdlgl
Infelizmente minha placa não é, mas o OpenGL me pareceu estável.
Existe um driver de vídeo com renderização por software via SDL que chega até a entrar no game, mas não foi possível jogar:
quake2 +set vid_ref softsdl
Para uma lista de drivers de vídeo, procure pelos arquivos ref_*.so em: /usr/lib/games/quake2/Problemas com o aúdio
O driver padrão de áudio é o OSS, no meu caso que não funcionou e saiu com a seguinte mensagem:
loading oss sound output driver, ok
/dev/dsp: Input/output error
SNDDMA_Init: Could not mmap /dev/dsp.
Para usar OSS, eu precisei fazer este hack como root:
echo "quake2.real 0 0 direct" > /proc/asound/card0/pcm0p/oss
O driver de áudio alsa pode ser carregado usando:
quake2 +set snddriver alsa
Mas também apresentou um problema comigo:
loading alsa sound output driver, ok
ALSA lib pcm.c:2143:(snd_pcm_open_noupdate) Unknown PCM /dev/dsp
ALSA snd error, cannot open device /dev/dsp (No such file or directory)
O driver sdl e o driver ao funcionaram bem:
quake2 +set snddriver ao
quake2 +set snddriver sdl
Para uma lista de drivers de audio, procure pelos arquivos snd_*.so em: /usr/lib/games/quake2/Compilando para 32bits
A única solução que achei para usar renderização por software foi recompilar para para 32bits.
O problema de usar um software 32 bits em uma máquina 64 bits é que você precisa também de todas as bibliotecas necessárias ao software em sua versão 32bits, o debian vem com algumas prontas para instalar a partir do apt-get, o básico é ter a libc e a libstdc++. Eu tenho estes pacotes instalados:
libc6-i386 libc6-dev-i386 lib32bz2-1.0 lib32bz2-dev lib32gcc1 lib32ncurses5 lib32z1 lib32z1-dev ia32-libs
Para se compilar algo para 32 bits basta chamar o gcc como:
gcc -m32
No caso de quake eu fiz isto:
./configure \
CFLAGS=-Wno-error \
CC=gcc\ -m32 \
--without-alsa \
--without-ao \
--without-svgalib \
--without-opengl \
--disable-sdl \
--enable-shared=yes \
--enable-static=no \
--program-prefix=32bits- \
--prefix=/usr \
--bindir=/usr/games \
--libdir=/usr/lib32/games \
--datadir=/usr/share/games && \
make clean && \
make && \
sudo make install-exec
Assim eu mative as duas versões 64bits e 32bits. Se você não colocou os arquivos *.pak em seu $HOME/.quake2/baseq2 você precisará criar um link simbólico para eles em /usr/lib/games/quake2/baseq2
Nesta configuração habilitei somente o suporte a vídeo X11 e a áudio OSS, o OSS precisa que se faça este hack como root:
echo "32bits-quake2 0 0 direct" > /proc/asound/card0/pcm0p/oss
Para finalmente rodar quake2 execute:
32bits-quake2 +set snddriver oss +set vid_ref softx11
Nas próximas execuções use somente:
32bits-quake2
Bom jogo.
segunda-feira, 27 de agosto de 2007
Firefox
Estas são algumas extensões que eu uso no meu firefox
- AdBlock Plus - https://addons.mozilla.org/firefox/1865/
- AdBlock - https://addons.mozilla.org/firefox/10/
- Aging Tabs - https://addons.mozilla.org/firefox/3542/
- Answers - https://addons.mozilla.org/firefox/735/
- CHM Reader - https://addons.mozilla.org/pt-BR/firefox/addon/3235
- ChromaTabs - https://addons.mozilla.org/en-US/firefox/addon/3810
- CTRL TAB VIEW - https://addons.mozilla.org/firefox/2134/
- Default Zoom Level - https://addons.mozilla.org/en-US/firefox/addon/6965
- del.icio.us - https://addons.mozilla.org/firefox/3615/
- Dictionary Tooltip - https://addons.mozilla.org/firefox/1171/
- DownThemAll! - https://addons.mozilla.org/firefox/201/
- Easy Youtube Video Downloader - https://addons.mozilla.org/en-US/firefox/addon/10137
- ForecastFox - https://addons.mozilla.org/firefox/398/
- FasterFox - https://addons.mozilla.org/firefox/1269/
- Firebug - https://addons.mozilla.org/firefox/1843/
- Firefox showcase - https://addons.mozilla.org/firefox/1810/
- Firefox Universal Uploader (fireuploader) - https://addons.mozilla.org/en-US/firefox/addon/4724
- Fission - https://addons.mozilla.org/en-US/firefox/addon/1951
- Flashblock - https://addons.mozilla.org/en-US/firefox/addon/433
- FoxyProxy - https://addons.mozilla.org/firefox/addon/2464
- Hide Tab Bar - https://addons.mozilla.org/firefox/1337/
- Hyperwords (tm) - https://addons.mozilla.org/firefox/1941/
- Link Alert - https://addons.mozilla.org/firefox/3199/
- Live HTTP Headers - https://addons.mozilla.org/firefox/3829/
- Mouse Gestures - https://addons.mozilla.org/firefox/39/
- NoSquint - https://addons.mozilla.org/firefox/addon/2592
- Permite setar o zoom default de uma página (útil no eee pc)
- Em uma tela 800x600, use 77% para simular 1024x768
- Uma alternativa é Default Zoom Level: https://addons.mozilla.org/pt-BR/firefox/addon/6965/
- Popup count - http://www.pikey.me.uk/mozilla/?addon=pc
- RSS Ticker - https://addons.mozilla.org/firefox/2325/
- Screen Graber - https://addons.mozilla.org/firefox/1146/
- SQlite Manager - https://addons.mozilla.org/en-US/firefox/addon/5817
- Stop-or-Reload Button - https://addons.mozilla.org/en-US/firefox/addon/313
- Tab counter - https://addons.mozilla.org/firefox/4346/
- Tab Scope - https://addons.mozilla.org/en-US/firefox/addon/4882
- Tiny Menu - https://addons.mozilla.org/firefox/1455/
- No firefox 2, este complemento junto ao tema minifox é ideal para quem quer aproveitar o todo o espaço vertical para páginas web.
- O minifox só funciona com Firefox 2, para firefox 3, use o classic compact.
- Um tema ainda menor é o Stratini e o Black Stratini
- TwitterFox - https://addons.mozilla.org/en-US/firefox/addon/5081
- URL Tooltip - https://addons.mozilla.org/en-US/firefox/addon/12015
- User Agent Switcher - https://addons.mozilla.org/en-US/firefox/addon/59
- Web Developer - https://addons.mozilla.org/firefox/60/
Vá na barra de endereços do firefox e digite:
about:configAltere estes valores:
browser.link.open_external -> 3
browser.link.open_newwindow -> 3
browser.link.open_newwindow.restriction -> 2
Assinar:
Postagens (Atom)