Friday, February 23, 2007

Ubuntu Feisty + beryl + ati x200

Há alguns meses atrás tentei instalar o compiz e o xgl no meu laptop. Tive muita dor de cabeça e perdi muito tempo, acabou que não funcionou. Hoje gastei quase toda manhã tentado configurar o beryl, o xgl e a minha placa de video, não consegui configurar novamente, mas descobri uma série de fatos:

  1. AIGLX não funciona com drivers proprietários da ati;
  2. Drivers proprietários da ati não suportam o modo composite;
  3. O beryl está com um bug que causa segfault, quando utilizado no ubuntu feisty, que roda xorg 7.1
  4. Os drivers novos da ati fazem a x200 funcionar melhor ;-)

Como ainda não tenho conhecimento suficiente em C para tentar corrigir o bug, vou só ficar monitorando.

Saturday, February 17, 2007

Pyret - Um caçador de regressões

Estes tempos venho trabalhando em um projeto chamado pyret. Por conta disto venho aprendendo muito e tenho ganhado fluência em python e em seus módulos. Hoje terminei a primeira modificação, na parte servidora da aplicação, e enviei para o autor. Espero que ele aceite e me dê acesso ao cvs ;-)

Friday, February 9, 2007

pysvn - subversion python binding

Depois de muito penar para conseguir fazer um checkout em um servidor subversion com autenticação usando pysvn, hoje finalmente consegui. É um bocado difícil de entender como funciona esse negócio, deveria ser um pouco mais intuitivo. Pra facilitar a vida de quem venha utilizar o pysvn e não queira perder muito tempo pra entender tudo, aqui vai um codigo que fiz. Melhorias são bem vindas.

import os
import sys
import pysvn


class DownloadSubversion(object):

def __init__(self, source, dest, username, password):
self.source = source
self.dest = dest
self.username = username
self.password = password

def callback_ssl_server_trust_prompt(self, trust_data):
'''
trust_data: essa e' uma variavel, um dicionario, passado pelo pysvn
contendo informacoes sobre o certificado ssl do servidor.
Por exemplo: data de expiracao do certificado, empresa
certificadora, nome do responsavel, fingerprint e etc.

'''


#for key,value in trust_data.items():
# print '%s: %s' % (key, value)
#print
answer = 't'
#while answer.lower() not in ['p','t','r']:
# sys.stdout.write( '(P)ermanent accept, (T)emporary accept or (R)eject: ' )
# answer = sys.stdin.readline().strip()
if answer.lower() == 'p':
return True, trust_data['failures'], True
if answer.lower() == 't':
return True, trust_data['failures'], False
return False, 0, False


def callback_getLogin(self, realm, username, password, may_save):
'''
realm: essa variavel eh utilizado pelo pysvn pra informar o endereco do
servidor e o nome do servico, deixe ela ai'. Por exemplo:
"Subversion Repository" at http://111.222.333.444

username: usuario do subversion

password: senha do subversion

may_save: salvar ou nao o usuario e senha

'''


if len(username) == 0:
return False, '', '', False

return True, username, password, may_save


def downloadRepos(self):

client = pysvn.Client()
client.exception_style = 1
client.set_default_username(self.username)
client.set_default_password(self.password)
client.callback_get_login = self.callback_getLogin
client.callback_ssl_server_trust_prompt = self.callback_ssl_server_trust_prompt

if os.access(self.dest + '/.svn', os.F_OK):
client.update(self.dest)
else:
client.checkout(self.source, self.dest)


if __name__ == '__main__':


subversion = DownloadSubversion('https://www.com.br/svnroot/', '.', 'usuario', 'senha')
subversion.downloadRepos()

Comentarios liberados

Hoje a tarde um amigo disse que tentou deixar um comentário no blog, não conseguiu porque era necessário um registro. Logo pensei: "Por isso ninguém nunca comentou nada! :-/"

Para facilitar a vida dos visitantes, deixei os comentários liberados.


Valeu Henry!

Friday, February 2, 2007

Provas na faculdade

Não farei novas postagens até que as coisas estejam mais tranquilas pela faculdade.
 

Rodrigo Belem's journal. Powered By Blogger © 2009 Bombeli | Theme Design: ooruc