Last 5 Posts from 2007/January

N800 is a great improvement

So, I'm using my N800 daily, doing chat, browsing, playing media, as an alarm and I can say: it's a great improvement over 770.

Opera browser, the main application, is much faster and reliable. Just now I can use Gmail and other web applications without problems. Flash is still bad for youtube, but suck less for sure.

Thumb mode everywhere is cool, but could be better used, mainly on application menus, where it should be wider, possible taking the fullscreen (since you can't do much while menu is open), more GUI issues were pointed in a nice review by Sean Luke.

Media player is much improved and new possibilities are open due split of Gstreamer elements that were codecs and were outputing video using DSP and now are just codecs, allowing you to use Xv or X11, enabling On-Screen-Display, for example.

However, not everything is good: battery could last longer and video conference could be easier to setup with non-n800 peers and use Jabber/Gtalk instead of nokias own servers, that register your "screen name" with a weird number/hash at call.tableteer.nokia.com. Also bad is the (d)effect that you get from a faster processor and lack of sync between applications and X/video-driver: sometimes you redraw the screen while driver is updating it, then you may have half top on the previous animation frame, while the bottom on the next frame, giving an weird result. This happens in every application, more noticeable on horizontal moves, from SDL games to Opera browser (try drag and move pages). Most of issues are software-related and may go away with software upgrades.

Summary: upgrade ASAP.

Hurry up! Code, compile, test... Canola 1.0 beta2 almost there!

So, I'm quite incommunicable these days, no blog posts, no IRC, IM or mail... that's because we're heading to Canola beta2 and you know: do { code(); compile(); test () } while (1);

What should you expect in Canola 1.0 beta2:

Internationalization (i18n) support
Canola now provides i18n support and has been translated to many languages, from portuguese to russian. Just canola-conf (web-ui) will lack this, support is already there, but we still miss a final version of new HTML/JS to have translators to do the job, maybe this will go in beta3.
Many bugfixes
Over 30 bugs were reported to our tracker, just 6 are still open but most could not be fixed in our side. We removed some memory leaks, reduced CPU usage, fixed some bugs with player, improved UPnP and DMAP support and we'll ship with canola-conf binding to localhost by default.
Many improvements and features
Although we're in beta, we've implemented a lot of features, things that you've requested and things that we were missing. That's a huge list for sure, but you may expect, at least:
  • Non-fullscreen video player, with seek support
  • Internet Radio now updates song information
  • Scroll position indicator, really useful on huge folders
  • Smaller canola applet
  • Use adjacent JPEG if no album art embedded (cover.{jpg,png})
  • OPML support in configuration tool (IRadio, Podcast and Photocast)
  • Improved "Audio Library" layout, "Songs" is the first item
  • Random/Shuffle list of all songs, albums, artists and playlists
  • Dynamic playlists with all known playlists, both sequentially or joint/unique
  • Improved theme capabilities (font color/size/shadow)
  • Lots of configurable parameters using GConf (albeit no GUI for those yet)
Wow, just now, while looking at our closed bugs, SVN log and other resources I see how much we changed. It seems to be even more stable, but that's the test(); step, we need to do it even more to improve the situation and we count on you, testers, to help... stay tuned, it may happen soon!

As a final note, we'll release the 770 version now, but we will support both 770 and N800 for some time since the former is still good enough what we have now, but we may have unique features for N800 (camera, for example). Our N800 version is almost ready, but I'm still trying to solve the problem with Vertical Sync, causing shearing/tearing which is much more noticeable now due the faster processor we have.

PS: Since Thoughtfix post "Canola as an In-Car Media Player" I'm running Canola in my car and that just make me think about one thing how long will I wait to make Canola an interface for my 60Gb iPod and replace my old-fashioned cd-player? Using libgpod and this hack to use devices in usb-host mode, it may happen... just need to release the next beta and start this... what do you think? ;-)

Best buy this year: Bluetooth Mouse!

Some days ago I bought a Logitech® V270 Cordless Optical Notebook Mouse for Bluetooth® to use with my IBM T41 laptop. It's really great to be able to use a good mouse without any wires, connectors... nothing! And you can even turn it off to save battery. I can just recommend it!

Kubuntu Edgy works really well, no troubles so far, just need to set HIDD_ENABLED=1 at /etc/default/bluetooth and pair. Next time you'll just need to turn it on and it will work automatically.

Stupid decisions that makes Linux "difficult"

Three days ago I got some spare time and rebuilt my parent's "server" machine and moved away from Debian to Kubuntu.

The decision to move from Debian to Kubuntu was based on the fact that this "server" is also used as workstation, running KDE with Firefox and Amarok, among other KDE applications, and Kubuntu ships new KDE and other applications much faster than stock Debian.

I've downloaded Edgy, burned the CD and started the install on empty HDD, really easy and fast to install, it worked like a charm.

Then I started to install apache, mysql and php, they're required to run the web-apps I've developed. Also worked like a charm... just few minutes to get everything up and running, without problems.

Then I went to configure the printer (cups)... what was really easy before and never took more than minutes, turned to be my pain for the last 3 days! First I tried to just copy my old cupsd.conf/printers.conf over and restart, no go. Then I backed up to original files and tried KDE's (used to be) excellent printer management interface... which started to freeze, without any glue I did fallback to CUPs web interface (http://localhost:631/)... which is great and always work, my last resource... but then I found out that it also don't work.

After listening half hour of blaming GNU/Linux being difficult by my father and my girlfriend, I started to dig what happened to that used-to-be-easy area that is now failing and giving everybody a bad impression. I started running strace and trying to figure out why it was looping forever, consuming 100% CPU. Then I downloaded the source code ubuntu ships. After many hours hunting the problem, I've found that

/usr/lib/cups/daemon/cups-check-pam-auth
was owned by cupsys:shadow, but "cupsys" is not in the "shadow" group, thus the suid bit didn't work and pam was not allowing authentication. Just adding "cupsys" to "shadow" group solved it:
adduser cupsys shadow

I was about to report this on launchpad, then I found bug #47892 describing the same problem... first I did feel stupid, because it title contain the same error message my /var/log/cups/error_log "cupsdAuthorize: pam_authenticate() returned 7 (Authentication failure)", but then, reading the bug comments I see that ubuntu, the distro that hopes to make things easier, was making things much difficult without any acceptable reason, a really stupid decision IMHO, how can a distro think that users will read /usr/share/doc/cupsys/README.Debian.gz, possible many Ubuntu users don't even know what Debian is or why they should read a document with that name...

As I said in the bug comment, do it right, or just don't do it. Being incompatible without any good reason is not acceptable. They claim this is to make things more secure, but really, cups never did that bad in security and just changing CUPS to listen to localhost by default would suffice. I'm not the only one that had this problem, and I'll not be the last. I hope this blog entry get indexed by google, so next time one search for "cupsdAuthorize: pam_authenticate() returned 7 (Authentication failure)" he will find, because I didn't.

For those that wonder, it's quoted "server" because the machine is actually a low-end PC (900Mhz Duron, 256mb), but it used to run my http/mysql/cyrus/postfix/svn servers, aside from my parent's services and is also a workstation he uses for some web-applications I've developed, together with printing from firefox, and last but not least, he plays some music using Amarok... yeah, Linux can do so much stuff with so simple hardware!