After the first part of the odyssey, I just wanted gwibber to work, and started googling around for some desperate fix. So, I realized a lot of people were having the same issue, and the fix was simple: to install the Intrepid version of libwebkit, 1.0-1.

Trying to fix the previous issue, I started using the packages from the WebKit Team PPA, that contain a newer version of libwebgtk, 1.0-4. So, considering I don’t need the newest package versions that PPA provides, I just removed the PPA line from my sources.list.d/ppa.list and safely removed/reinstalled libwebkit.

Easy as that:

sudo aptitude update
sudo aptitude remove libwebkit-1.0.1-4

aptitude suggested me first removing gwibber and python-webkitgtk, and second, just downgrading libwebkit. I chose the first one, because removing everything to install again later was more guaranteed to put things to work, considering that this approach will likely get the correct versions needed. If you just downgraded the libwebkit package and it worked, let me know!

sudo aptitude install gwibber

And it reinstalled gwibber, python-webkitgtk and the libwebkit, now in the correct version.

Now gwibber works like a charm, and I’m again a happy user. :)
Gwibber now shows twitter direct messages on the Replies tab, and clicking on a users’ nick opens a tab on gwibber with the users’ timeline. Awesome!

I met Gwibber about 5 months ago, and was a happy user. For those who don’t know Gwibber, it’s a identi.ca/twitter/many more client for Gnome.

Well, the one feature I was missing on it was a tab only for replies, as TwitterFox does, and one day @jorge announced (and other people excited about it commented) on identi.ca that the newest version just released that time got that tab. So, I ran to find a console window, and then, after the update, thought: “Cool! Let’s check out the new feature!”. Closed gwibber, reopened and.. sigh. It suddenly stopped working.

I thought myself “WTH”, and kept trying to open it, without success. It was freezing, after a few seconds open.

Finding that thing weird, I started doing the good’ol debugging thing, and found out that the problem was when retrieving messages. With the possible bug in hands, went to my beloved Launchpad to see if there were any open bugs reporting the problem, and if not, open a new one providing all the info I’d gathered in all that debugging. For my luck (or not :)) I’ve found one possible bug, and then commented on it, giving the problem I was having:

Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner
self.run()
File "/usr/lib/python2.5/threading.py", line 446, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/lib/python2.5/site-packages/gwibber/client.py", line 685, in process
view.load_messages()
File "/usr/lib/python2.5/site-packages/gwibber/gwui.py", line 52, in load_messages
indent=4, default=str)
File "build/bdist.linux-i686/egg/simplejson/__init__.py", line 216, in dumps
TypeError: __init__() got an unexpected keyword argument 'default'

At that point I already had tried everything: reinstalling python-simplejson, gwibber and python-webkitgtk, also using –purge, and nothing.
One suggested that it could be my version of python-simplejson, considering that this error wasn’t supposed to happen with python-simplejson version 1.9.1. Unfortunately, that was exactly my version according to dpkg, and I got desolated. What would I do?

So I downloaded gwibber code and started messing to see how stuff works, and then realized that doing a import simplejson and calling the dumps function would give me the same error, so the problem wasn’t on gwibber or the way it could be calling the module. Given that, intrigued, opened ipython, did again the same import simplejson, simplejson.dumps(default=”bla”, {}) thing and noticed this time:

/usr/lib/python2.5/site-packages/simplejson-1.7.3-py2.5-linux-i686.egg/simplejson/__init__.pyc in dumps(obj, skipkeys, ensure_ascii, check_circular, allow_nan, cls, indent, separators, encoding, **kw)
TypeError: __init__() got an unexpected keyword argument 'default'

Yes, a simplejson.__version__ confirmed the crack: 1.7.3. But why oh why that thing was there if I uninstalled and installed it exaustively, and then checked and rechecked the package version with dpkg -L python-simplejson?

After a minute of frustration, I realized the python-simplejson package wasn’t placing any files on that folder. Maybe because of a packaging problem, removing python-simplejson package didn’t erased the file on site-packages. A rm -rf simplejson-1.7.3-py2.5-linux-i686.egg was enough to solve the problem. After that, just out of curiosity, I did the import simplejson and voila, version 1.9.1.

It stopped freezing, but the window it open was blank. So what now? More in the next post..

Hey folks! Long time no see.

If blogging was fast like microblogging (as twitter or identi.ca), it would be much easier to keep this blog updated, differently of the rusty dusty state it is now. :)

Well. :)

As some of you may know, I’m now working at Canonical - the Ubuntu commercial sponsor -, and I’m really happy and excited about it! I can finally use Ubuntu without my friends bugging me - haha! Just kidding guys. ;)

You may have noticed that I really like Gentoo, but I never hide that I’m indeed a Ubuntu enthusiast, since it brings people together in a huge community, and it’s so beautiful! I can’t let myself not be part of it.

Well, at Canonical I’m a QA Engineer in the Launchpad Releases team.

But what is Launchpad? - you ask me.

Let’s see: I bet you, as a Ubuntu user, found yourself a few times clicking on links Google give you to a bug or answer in Launchpad, regarding your Ubuntu problem/doubt. This often happens because Ubuntu project is hosted in Launchpad.

Launchpad is “a unique collaboration and hosting platform for free software. It brings communities together - regardless of their choice of tools - by making it easy to share code, bug reports, translations and ideas across projects.“, according to Launchpad tour - that I really recommend you to take a look.

In other words, Launchpad is a great environment where you can place your Free Software project and, collaboratively, among your project pals, watch it grow strong. :)

It gives you plenty of ways of doing that, such as bug tracking, specs tracking - called blueprints -, code hosting (using bazaar), or mirroring, and a lot more.

You can even have your own “Ubuntu repository”, the PPA (Personal Package Archives) - that is one of the features I like the most. Every Launchpad user has one place in Launchpad where he can upload their deb source packages, and then Soyuz - the LP package builder/handler - builds and hosts the debian built package into the user’s PPA. So you can create your own debian package for the free software you’re developing and tell your friends, when they ask you “Oh, how do I install the great software you’re developing at LP?”: just add the PPA line to your sources.list and use apt to install it! This is really awesome. :)

I’m going to write - soon, I promise! - a post talking more deeply about Launchpad, to try to show the advantages I see when using it. :)

Last of all, I *must* mention - before someone points me that - that Launchpad is intended to be released as Open Source software. It was already told and I strongly believe so.

By the way, next Wednesday, September 17th, it’s Release day! Launchpad 2.1.9 coming soon, stay tuned. ;)

Cheers!

Just to help people who face this problem: If you’re compiling your C code, and then the compiler says to you something like this:


./foo.c: In function `bar':
./foo.c:158: `structure_x' defined as wrong kind of tag

Don’t panic! Take a look at the bar function.

You’re probably declaring a variable of the structure_x kind but as a different type it really is.

For example, structure_x is an enum and you did something like this:

struct structure_x my_variable;

when the correct would be:

enum structure_x my_variable;.

This post is simple, but will surely help to avoid headaches :P

Hi folks!

Since my life is taking a turn, I’ve been out for some time. Now I’m sure it’s going to get way nicer :)

I promise to post more often from now on, since I think I’m going to learn a lot. Wait for the next posts, and you’ll understand why. ;)

See ya!

If you are like me, when you need to use a program in your console, the first thing is to run “bla –help”.

Well..

Having a Ubuntu box, typed apt-get --help. That’s what I saw, here shortened:

ursula@ursula-laptop:~$ apt-get --help
apt 0.7.9ubuntu17 for i386 compiled on Apr 22 2008 15:19:47
Usage: apt-get [options] command
apt-get [options] install|remove pkg1 [pkg2 ...]
apt-get [options] source pkg1 [pkg2 ...]


This APT has Super Cow Powers.

This APT has Super Cow Powers? Hm… Let’s try something that a cow would do, like mooing:

ursula@ursula-laptop:~$ apt-get moo
.........(__)
.........(oo)
..../------\/
../.|....||
.*../\---/\
....~~...~~
...."Have you mooed today?"...

:)

Now, let’s see what aptitude says:

ursula@ursula-laptop:~$ aptitude --help
aptitude 0.4.9
Usage: aptitude [-S fname] [-u|-i]
aptitude [options]


This aptitude does not have Super Cow Powers.

Does not have? So it doesn’t feel like mooing… Let’s see:

ursula@ursula-laptop:~$ aptitude moo
There are no Easter Eggs in this program.

Uuhh… It doesn’t want to play! Please aptitude, be more verbose about it!


ursula@ursula-laptop:~$ aptitude -v moo
There really are no Easter Eggs in this program.

hauhauha.. Let’s push harder! :)

ursula@ursula-laptop:~$ aptitude -vv moo
Didn't I already tell you that there are no Easter Eggs in this program?
ursula@ursula-laptop:~$ aptitude -vvv moo
Stop it!
ursula@ursula-laptop:~$ aptitude -vvvv moo
Okay, okay, if I give you an Easter Egg, will you go away?
ursula@ursula-laptop:~$ aptitude -vvvvv moo
All right, you win.

.............................../----\
.......................-------/......\
....................../...............\
...................../................|
...-----------------/..................--------\
...----------------------------------------------
ursula@ursula-laptop:~$ aptitude -vvvvvv moo
What is it? It's an elephant being eaten by a snake, of course.

Cool! :D

It is not easy to find, topeira@kde-brasil told me: Go to System Settings, Notifications, Player Settings, select “No audio output”. Click Apply, it’s done. :)

As a Gentoo girl, I have to share this quick tip: for searching ebuilds on Gentoo portage tree, online (since packages.gentoo.org doesn’t seem to have a search method): http://www.gentoo-portage.com.

Very useful! - while not on gentoo, since you can use on it emerge -s package, or esearch package.

Today I decided to give Twitter a chance. Started to see, try to find out how to use it, and then I suddenly felt that all that I wanted to blog, the short things, I could do with Twitter. Short jokes, comics, interesting links, stuff like that.

After that discover, I went on the journey of trying to use it from inside an IM, since I don’t want to access twitter.com every time I feel to twitt(er) something.

The steps for it are:

  1. Go to your preferences in twitter and enable the “Device Updates”. Then setup the IM user to which you want the updates to be sent;
  2. Add the user twitter@twitter.com to your IM account, as a buddy. In my case, a gtalk account.

I started to test it, and then the first issue came, that Otubo pointed me: twitter limits the posts up to 140 chars. How can I see that in pidgin?

So, thinking that someone (hopefully) had already thought about it, and relying on google, I found a plugin for pidgin that adds the number of typed chars on a chat window. Here it is, and it’s called pidgin-convcharcount-plugin. There you can get the patch, the source or the compiled libs as packages.

As I am using ubuntu right now, I’ve just installed the deb package available (found it on apt, later). To my friends, gentoo users (as otubo), sorry folks, but I didn’t find the package in the portage tree. :(

So, you’ll have to do it in a harder way. You can pick up the package source (tar.gz) on the site, untar it and perform make. It has a script (Makefile) that downloads pidgin source, patches it, and compiles the plugin libs.

I mean, this is the easiest way, but you can pick the patch instead, download pidgin source by yourself, patch it and yada yada. :)

After that, the libs should be placed on /usr/src/pidgin folder. It worked like a charm in here.. :)

Hope this helps. Any issues, let me know. :)

It seems very buggy :( I can’t choose the tags I want to use (because they suddenly disappeared), and if I want to edit a post, it duplicates it creating a new modified, leaving the older.

Powered by ScribeFire.

Next Page »