How to use Debian’s reportbug with Evolution

This is mostly a note pad for myself with quick instructions about how to create a bug report for Debian and edit it and send it with Evolution.

reportbug is Debian’s tool for sending bug reports. Although it is a nice tool that automatizes most of this process, it only supports some email clients for the final steps of editing the message (and send it). Among these programs is not Evolution, my preferred mail application.

Fortunately, there is a way to work around this problem. The way of doing it is by placing the mbox file created by reportbug into Evolution’s local Drafts folder. As we can read on its manual, Evolution stores the user’s data files at $HOME/.local/share/evolution.

By doing a simple check around that path, we can conclude the following solution: first, we generate the bug report and place the output in the proper location, as in this command:

After finishing walking through reportbug‘s wizard, the only action left is launching Evolution and opening a new email that has appeared in the local Drafts folder, finish editing it (attaching files, etc.) and send it.

Switching between nouveau and the nVIDIA proprietary OpenGL driver in (Debian) GNU/Linux

So lately I’ve been devoting my time in Igalia around the GNU/Linux graphics stack focusing, more specifically, in Mesa, the most popular open-source implementation of the OpenGL specification.

When working in Mesa and piglit, its testing suite, quite often you would like to compare the results obtained when running a specific OpenGL code with one driver or another.

In the case of nVIDIA graphic cards we have the chance of comparing the default open source driver provided by Mesa, nouveau, or the proprietary driver provided by nVIDIA. For installing the nVIDIA driver you will have to run something like:

Changing from one driver to another involves several steps so I decided to create a dirty script for helping with this.

The actions done by this script are:

  1. Instruct your X Server to use the adequate X driver.
    These instructions apply to the server only.
    When using the default nouveau driver in Debian, the server is able to configure itself automatically. However, when using the nVIDIA driver you most probably will have to instruct the proper settings to
    nVIDIA provides the package nvidia-xconfig. This package provides a tool of the same name that will generate a configuration file suitable to work with the nVIDIA X driver:

    I have embedded this generated file into the provided custom script since it is suitable for my system:

    I would recommend you to substitute this with another configuration file generated with nvidia-xconfig on your system.

  2. Select the proper GLX library.
    Fortunately, Debian provides the alternatives mechanism to select between one or the other.

  3. Black list the module we don’t want the Linux kernel to load on start up.
    Again, in Debian, the nVIDIA driver package installs the file /etc/nvidia/nvidia-blacklists-nouveau.conf that is linked, then, from /etc/modprobe.d/nvidia-blacklists-nouveau.conf instructing that the open source nouveau kernel driver for the graphic card should be avoided.
    When selecting nouveau, this script removes the soft link creating a new file which, instead of black listing nouveau’s driver, does it for the nVIDIA proprietary one:

    When selecting nVIDIA, the previous file is removed and the soft link is restored.

  4. Re-generate the image used in the inital booting.
    This will ensure that we are using the proper kernel driver from the beginning of the booting of the system:

With these actions you will be already able to switch your running graphic driver.

You will switch to nouveau with:

And to the nVIDIA proprietary driver with:

It is recommended to reboot the system although theoretically you could unload the kernel driver and restart the server. The reason is that it has been reported that unloading the nVIDIA kernel driver and loading a different one is not always working correctly.

I hope this will be helpful for your hacking time!

NSLU2, Grilo and UPnP in Ubuntu’s GNOME

Going quickly to the “ham”, if you are running Ubuntu Precise on your machine and want to have Grilo support including its UPnP plugin in totem and rhythmbox just add Grilo Team‘s PPA:

Then, pull down the latest list of software including the PPA you just added:

Install the needed packages and upgrate any old one:

That’s it! Enjoy your Grilo powered totem and rhythmbox!

Now, the long boring story 😉

Last weekend I found some time to resurrect my dear NSLU2 which passed away some months ago when its attached USB hard drive started failing. I have reports from several USB hard drives dying while being attached to a NSLU2 so I may have to take a look to that at some point, but that would be in another moment.

Thanks to good Martin Michlmayr I only had to follow quickly his installation guide and I could have the Debian Squeeze firmware image he provides running smoothly in a matter of minutes.

Afterwards, I followed the counsels of Juan and Mario to tweak my Slug.

The customization to highlight was adding a MediaTomb server since one of the main features that I wanted to add to my Slug was the possibility of serving audio and video through UPnP.

Everything seemed in place but, when I checked in my desktop running Ubuntu Precise how to access my music from rhythmbox and my videos from totem I had a sad surprise. None of them have UPnP support and, what is worse, none of them have Grilo support out of the box in Precise. And I say worse because, among other plugins, Grilo already provides UPnP support and AFAIK, totem and rhythmbox have upstream Grilo plugins for quite some time already.

So, what was the problem? Why weren’t they in Precise?

Well, in the case of rhythmbox it seems just a small mistake in the debian packaging, as it is pointed in this report in Launchpad’s bug 973295. Astonishingly, it has not yet been fixed!

Hence, I downloaded the sources for the precise-proposed rhythmbox’s package and I did the proper changes and uploaded it to the Grilo Team PPA.

Rhythmbox and Grilo 0.1

“Rhythmbox and Grilo 0.1”

In the case of totem what happened was that Grilo’s plugin was removed as for the version that was packaged for Precise, in the road to add a new and better plugin for Grilo 0.2. Which is what it is in totem upstream nowadays.

Therefore, I re-took the old patch for totem’s Grilo 0.1 plugin in GNOME’s bug 628648, downloaded the sources for the precise-proposed totem’s package, patched and uploaded it to the Grilo Team PPA.

Totem and Grilo 0.1

“Totem and Grilo 0.1”

In the path for all these changes I joint the Grilo Team at gitorious and made also some changes to its packaging.

Now I can enjoy my UPnP served music and videos from my favorite applications in GNOME!!!

Hopefully, for the next Ubuntu’s release we will have Grilo 0.2 already integrated and totem will come with its plugin out of the box. By now, rhythmbox’s Grilo plugin has yet not been migrated.

Grilo 0.2 is a great library for accessing the media content from several resources. Juan, the Grilo master, has been working in Igalia writing a new, clean, easily extendable and powerful API that is ready for use and which keeps enhancing everyday. However, Grilo’s adoption is coming surprisingly slow. Out of GNOME other projects have shown quite some interest as it was the case of Media Explorer, but in GNOME I only know of its support by the 0.2 version in totem. Anyone willing to bring the power of Grilo to Music, rhythmbox, banshee and the like? 😀

Update: It seems I rushed too much since Jonathan Matthew migrated rhythmbox Grilo plugin to 0.2 pretty recently. Thanks Matthew!

Extending the life of your N8x0: Second update for Automatic Skype Launcher

Back again with a new release, the 0.0.3, of Applications Fullscreener and Automatic Skype Launcher.

Just download and install them in your N8x0 for making it become a good 24/7 Skype phone. For more information about the goals and features of this project you can check the previous post Extending the life of your N8x0: Automatic Skype Launcher.

Skype Tango Icon

I took the chance to update also the artwork used in these two applications. First thing, I created a Tango-ized version of the Skype logo.

Then, I used the previous magnificent art works from Andreas Nilsson and Jakub Steiner to create the new icons, and these are the result:

Applications Fullscreener Icon Applications Fullscreener Debian Package Icon Applications Fullscreener Icon Applications Fullscreener Settings Icon

Anyway, going to the actual changes.

The most important change for Applications Fullscreener is:

  • There was a second bash helper to launch a certain application and send the fullscreen key event some time afterwards. It was not fully featured but now it is.

You can, also, check the complete ChangeLog for Applications Fullscreener.

The most important changes for Automatic Skype Launcher are:

  • The Automatic Skype Launcher service was not stopping when uninstalled. Now this is corrected.
  • The init service was not starting correctly in some scenarios due to some uninitialized variables. This has been corrected.
  • In the previous version, I added an alarm triggered by the alarmd daemon to restart Skype (and the service). This was not working always. Now, killing Skype is forced.

You can, also, check the complete ChangeLog for Automatic Skype Launcher.

That’s it. Comments and patches are welcomed!

Extending the life of your N8x0: Update for Automatic Skype Launcher

I’ve just released the 0.0.2 version of Applications Fullscreener and Automatic Skype Launcher.

As I was already commenting in my previous post Extending the life of your N8x0: Automatic Skype Launcher, just download them and install them in your N8x0 for making it become a good 24/7 Skype phone.

The most important change for Applications Fullscreener is:

  • I’ve added a helper to launch a certain application and send the fullscreen key event some time afterwards.
    This is specially useful for launching an application through the DSME watchdog daemon in Maemo4.x. Using this helper as a wrapper, the application will receive the fullscreen event some time after being launched while the watchdog keeps track of the helper. In this case, if either the helper or the application dies, both die and, hence, the DSME will relaunch them both.

You can, also, check the complete ChangeLog for Applications Fullscreener.

The most important changes for Automatic Skype Launcher are:

  • I’ve added a Control Panel plugin for setting several behaviors of the application: starting an init service, using a watchdog for keeping it alive, trying to fullscreen Skype after launching it as a service and the time at which the service will be restarted, if so.

Automatic Skype Launcher Control Panel plugin snapshot

  • I’ve added a Home Desktop applet for making it easier to launch manually Skype, not having to get into the applications menu.

Automatic Skype Launcher Home Desktop applet snapshot

  • The Automatic Skype Launcher service was not stopping when the N8x0 was turned off while charging. Now this is corrected.
  • In the previous version, I added a cron.daily script to restart Skype (and the service). Actually, the N8x0 doesn’t have a cron daemon, by default. This is now corrected through the usage of an alarm triggered by the alarmd daemon.

You can, also, check the complete ChangeLog for Automatic Skype Launcher.

That’s it. Comments and patches are welcomed!

Taking back the old scrollbars in Ubuntu

Today I couldn’t take it any more and I had to do it …

I’m a Thinkpad Lenovo X61s owner with which I don’t use nor miss a mouse thanks to the awesome TrackPoint included. Because of that, the new Ubuntu’s scrollbars are, from the user interactivity point of view, just not usable.

Leading quickly to the “ham” 🙂 , disabling them is just a matter of writing in a console:

and reboot.

I’m not saying that the new scrollbars aren’t an enhancement. They allow a better usage of the display but, from the functional point of view, they only work as positioning indicator. They will tell you the progress in the scrollable window but, necessarily, you will need a wheel in your mouse or a way to emulate it. If you often have to grab the scrollbar, from a functional point of view, they are just a failure.

Hence, you will miss in Ubuntu a way to tune on or off its usage without having to use these kind of “hacks“.

Of course, another alternative would have been “to emulate” the mouse wheel through the middle button. I my case, this is not an option since last time I walked this path I decided to have a better “select and paste” experience with this button rather than use it as modifier for the vertical/horizontal scrolling.

Anyway, if you want to use the middle button this way, you had to do some changes to the “XOrg” config file before. Now, you just have to install the “gpointing-device-settings” package:

and select the proper options after launching its UI from “System -> Preferences -> Pointing devices“.

This and many other tricks can be found at ThinkWiki.

Who knows, maybe, in some time, I will change my mind and retake this functionality (and the new Ubuntu scrollbars) …

gnuLinEx flies on AirNostrum

gnuLinEx promotional LiveCD

As Quique, one of my colleagues from Igalia, had previously posted, gnuLinex was in the Spanish local Iberia’s flights last summer (I don’t know if there are copies of gnuLinex still in this kind of flights), as a present for every passenger.

I think this is a great idea in order to spread free software and I hope other initiatives, like inserting as the default office application for public worker appliances would be followed by other Spanish public administrations.

debian lists

Last months I’ve being doing some tasks in order to become a Debian Maintainer.

First, because of some requirements at work, I have being repackaging some pieces of software so I’ve learned about the Debian packages architecture. Once I was confident with what I was doing and I needed to know more about customizing a package (not just rebuilding one) I read the Debian New Maintainers’ Guide and the Debian Policy Manual, I made some new packages and subscribe myself to the Debian mailing lists I thought they would be profitable.

Some weeks after that I realized the amount of mails I was receiving was so huge that I hadn’t the time to even skim them in order to read the interesting ones so I desubscribe myself from the lists I knew I wasn’t going to read ever.

Indeed, some weeks ago, the amount of mails received from the lists I thought I could read was so big that now I’m starting to think of desubscribing myself from all the mailing lists but the mentors one.

In the end, I’ve not found the time needed to start the race to become a Debian Maintainer. I think the dedication needed is so high that I should spend a cople of hours everyday.

I hope I could find an orphaned package interesting enough to give me the energy to retry to be a Debian Maintainer ;-).