Stumbled over the site GitCasts which publishes regular screencasts about using Git. Should be worth a look for anyone who which to learn more about Git.
Share This56885 items (41954 unread) in 130 feeds
Linux
(9289 unread)
Gentoo
(367 unread)
Debian
(5219 unread)
Fedora
(4659 unread)
Kde
(2226 unread)
Gnome
(3020 unread)
Mandriva
(310 unread)
MySQL
(2623 unread)
Apache
(2833 unread)
Redhat
(90 unread)
Stumbled over the site GitCasts which publishes regular screencasts about using Git. Should be worth a look for anyone who which to learn more about Git.
Share This
Audio and slides of the maemo update at LinuxTag. Main talk points: Diablo, Fremantle, Harmattan, GTK+/Qt, maemo.org brainstorm & maemo summit on September 19, also in Berlin.
Questions
So I am trying the new blogging style I warned you about.
HackingParser for Xesam User Search Language and XML query language are coming together. Next up is adding a few small missing pieces, writing a ton of tests, and then fixing all bugs these tests turn up. The last part probably being the hardest.
FamilyMy daughter Liv just stopped using her dummies today. She used them all to “buy” a pink scooter at the local shopping mall. It all went fairly well, and she’s not complaining that much. She is trying to convince us that she could just use her little brother’s dummies… Why you little…
Liv also shocked us today at the dinner table when she could not have her little brother’s milk shake. She exclaimed “Liv bare pisse frustreret!” which translates into something like “Liv is just bloody frustrated!”. I have no idea where she picked up that phrase. She is 2½ years old. Go figure.
RandomI was skimming some mails on the nautilus mailing list on my gmail account when the mail editor suddenly popped up. I did not touch the mouse pad or anything I swear! I was mildly stunned at the surprise and was about to close the editor when it disappeared and greeted me with “Mail send”. This had me pretty freaked out. Apparently I just send an empty reply to the nautilus list with any action from my part.
Anybody else seen this on gmail? (browser was Firefox 2)
really do not sell you only one shoe. Not even if they only have the one shoe of the pair. For example, when they accidentally sold a mismatching pair.
No sir, the shoe goes back to the factory. Even if it’s last year’s model, out of sale, can’t be ordered. That one shoe will sit there in the other factory next to the other bigger shoe, and both of them will die of loneliness. They will not allow me to save one of those two.
Sucks, after 4 hours of shopping.
Linke every year we had a really good time at LinuxTag! It is always a great event talking to interested users, business people and other developers. For the projects sharing this booth such as MyStep, Jalimo, GPE and OpenEmbedded it was a great success. For me it was the first time representing OpenEmbedded at a fair like this - with good results: We had quite some people who knew OE and asked specific questions and many developers with interest in using it.
LinuxTag always gives a lot of inspiration for new things to do and projects to check out. I know about some interesting software we need in OE soon - things like the Sugar framework for the OLPC and x2go. Other important tasks are to publish a list of evices that are defined in OE metadata and pushing the mobile-linux project forward.
In the Maemo track I had a short talk about GPE applications for Maemo - the slides of my talk can be found here. Unluckily I was not able to attend more of the interesting talks in this track. But I found out that the Mamona people seem to like OpenEmbedded at least :-)

The Tarent and Mobile booth right after opening in the morning… it was way more crowded a short time later.

Many thanks to all the people organizing LinuxTag and Tarent for booth and the big red sofa for sitting down to write my blog.
I’ve often heard the mysterious and intentionally vague stories from David about his former employer - NDS. David just posted about an article in wired magazine that interviews one of the people at the heart of a great story. Worth reading. And watch the video - it’s damn cool.
In shaving, nothing quite beats the feeling of having a fresh blade glide over your face.
I keep forgetting this as I blunt my blade through the weeks, and then I get surprised all over again when I change.
The blog is moving!
Yes, it's like the 5th or 6th time, but this one's the last. Really.
New location: http://wfarr.org/
The feed can now be found at: http://wfarr.org/posts.atom
There isn't a theme there yet, so I'll probably take some time to make one this weekend, amid some Banshee and GSOC hacking.
Well the first week of summer of code has finished. This week I spend my time evaluating and testing the various options available to (semi)automatically wrap C code (libsyncml) so that it is accessible from Python. My priorities when evaluating the options go something like,
The following is a list of available options I looked at (see cython for more explanation)
Conclusions
The libsyncml library uses the Gobject mainloop, and custom error types. In order to integrate this with pygtk applications It would need to link to Pygobject/C, and propogate the error types to exceptions.
Somewhat unsurprisingly, the weak point in almost all of these approaches is there documentation. While I like the look of PyBindgen, it is a nightmare to build, and docs are sparse. The SWIG IDL is hairy, and one must also maintain pythonic wrappers to make a nice library. Pyrex and friends do not seem suited to the integration of libsyncml and pygobject without additional C glue
At this stage I am leaning towards SWIG, for community service value (others can come along after and make C# wrappers for instance), its availability of documentation, and even if the IDL is quirky, others are familiar with it.
Distributed Version Control Systems and visibility of development
My opinion on the ‘best’ DVCS is not relevant. What I am concerned about is that if GNOME does not pick one, and/or provide some sort of hosting or method to track other peoples development branches then the visible activity level, and subsequently health of the whole project will suffer.
The premise here is that centralized version control systems make it easy to follow what developers are working one, and the activity level of development, via the svn-commits mailing list for example.
I can only offer anecdotal evidence here, but I think that the visibility a projects development is just as important as the actual rate of development being done.
I consider the plethora of ways one can follow what developers are doing part of the problem, not part of the solution.
Who has time to follow planet, IRC, github, repo.or.cz, freedesktop git, launchpad.net bzr, mailing lists, twitter, $COMPANY gitweb, $PERSONAL gitweb, $DISTRO viewvc and gnome.org/$USER_HOME_DIR to see what people are working on.
This post is not meant to be Reductio ad absurdum, its just a slight generalization of why I read planet.gnome.org/svn-commits, etc, etc.
Conclusions, if any;
Change scares me. That is all.
Setting up python-lxml (2.0.5-1) ...
/var/lib/dpkg/info/python-lxml.postinst: /usr/bin/pycentral: /usr/bin/python: bad interpreter: No such file or directory
dpkg: error processing python-lxml (--configure):
subprocess post-installation script returned error exit status 126
...
Errors were encountered while processing:
epiphany-extensions
bzr
gnome-media-common
libgnome-media0
gnome-media
pidgin
python-lxml
E: Sub-process /usr/bin/dpkg returned an error code (1)
Was playing around a bit with the Twitter4R library the other day and realized that in order to make it to work on Mac OS X (Leopard) you need to also require ‘time’. Or you will get an error similar to lib/twitter/model.rb:268:in `init’: undefined method `parse’ for Time:Class (NoMethodError).
A small snippet to display my public tweets:
require 'rubygems'
gem('twitter4r', '0.3.0')
require 'twitter'
# Required on Mac OS X Leopard
require 'time'
twitter = Twitter::Client.new
hallski_timeline = twitter.timeline_for(:user, :id => 'hallski')
hallski_timeline.each do |status|
puts status.text
end
Share This
apparently, some people — and I’m looking at you, Pippin — said that the Tweet repository is hard to find: you actually have to search in my blog.
well, not anymore: Tweet on GNOME Live
complete with a screenshot of the new UI, as suggested by Matthew Allum:
Oh look! A rare Useful Marnanel Post.
People were saying Metacity’s themes were under-explained, so I’ve spent a few days now writing the start of an explanation. I didn’t post it here because it’s a Metacity thing and belongs on the Metacity blog, but I linked to it here in case people who read planet and don’t read the Metacity blog would like to read it. I’ll add to it later to describe the two parts I skimmed over. Please link and disseminate, and correct any errors which have crept in. Comments are always welcome!
Back to Helsinki, full of thoughts and ideas exchanged yesterday around the maemo track in LinuxTag @ Berlin. The slides of my presentation are available, but they are mostly a background for my speech, that was recorded and will be uploaded hopefully soonish.
Among other things, we kicked off 10 days of brainstorm about maemo.org, the online space of a community. Some ideas are starting to be structured around the 100 Days action plan and the Agenda 2010. I wonder though if all we are happy and on the same page about a basic question: what is and what should be the target audience of maemo.org? Who makes this community?
Open source development for Internet tablets, says the current homepage. Is this reflecting the reality today and the scope this community wants for the future?
What if…
What if maemo.org would evolve to a community of open collaboration? Software developers and open source insiders would still be a strong reference, like the Grand Prix pilots and mechanics, but the space would be also open to anybody excited just about doing any kind of maemo related stuff together.
Image: Flamingos - Phoenicopterus ruber, by Julio Caldas (some rights reserved)
Toolboxes are great for providing quick access to a variety of tools, but then sometimes they hang around longer than they're appreciated. Other times they simply get in the way and users end up closing and opening them regularly in order to preserve as much screen space as possible.
In Inkscape 0.46 we introduced the idea of docking toolboxes such that the canvas moves out of the way, and there is one area for toolboxes. This means that you loose screen space permanently, and you can only have one toolbox shown at a time, but you get a cleaner layout where you don't have to manage the toolboxes yourself. I'm not sure if this is an usability improvement or a compensation for window management that can't do what you want.
One of the things that I noticed got added in GTK+ 2.12 was the ability to set the window opacity. So I've hooked up some code in my working branch which makes the toolboxes in Inkscape transparent when they're not focused:
I'm not sure it solves the problem. It works pretty well with sloppy focus as you're constantly moving in and out which causes them to disappear quickly. And what it does give you is a broader view of your document even when you have lots of toolboxes shown on the screen. It doesn't solve the problem of removing them when you don't need them, but I'm not sure if that's already solved by being able to hide all toolboxes.
Try the branch, leave a comment, I'd be interested to see if others find this useful.
I decided that for algorithm testing, I would need a small set of songs that have some sort of similarity (in my mind). I created a list of four pairs of songs that I see as being similar - not much of a sample size, but the literature indicates that subjective evaluation of similarity doesn't vary too much person to person. The list is as follows:
These songs seem reasonably similar to me, with 1 sharing a similar vocal sound and acoustic guitar, 2 sharing a funk beat and instrumentation, and 3 sharing a faster-paced punk feel. The fourth pair is not particularly similar, except for being all instrumental, but I thought I'd throw it in as a test.
I tested this small set of songs with Mirage for Banshee, and the results were somewhat surprising. In 3/8 cases, the top match was what I expected: Horse With No Name, Lovely Day, and What is Hip? all came up with their respective match. However, it didn't work the other way around, indicating that it wasn't after all a very similar comparison. I'm having a hard time understanding how, say, The Guns of Brixton is more similar to Shining Star than anything else (which is what Mirage's MFCC based algorithm came up with), but I'm going to ask my more musically-knowledgeable friends. In any case, it's a little worrisome that the "industry standard" algorithm doesn't do what I expect it to do!
Three accessibility related ones.
(thanks Michele).
"Size, color, feel of paper bills could change."
Emphasis on could. I see the U.S. Treasury Department is fighting this all the way. Your government inaction in action.
Note that changing to money with different size, color and feel can benefit sighted people too.
For more details, and your chance to provide feedback, go to http://www.ourmoneytoo.org
(thanks Michele).
And yet again, sighted people can benefit from something like this.
(via MAKE Blog).
Ari Jaaksi talks about Linux on Phones and what’s going on at Nokia.
He mentions that he’s working with us at Mozilla - very true. And good fodder for another post on another day.
He also touches on an important topic for me, which is the difference between between being “open” and being “good.” Being open is easy. Being good is not. I’ll write more about that at a later date as well.
Atul Varma talks about how Weave works and some of the wider goals for the project.
Weave is a very interesting part of the Mozilla project. The underlying mechanisms are very simple (just a webdav store and a private and public key system, basically.) But the fact that we’ll be able to use it to share data between users on their terms and extension authors should be able to take advantage of the storage that’s there - well - it could be huge. Lots of great potential here.
He also touches on an important part of weave. That we want user data to be private and we want users to control what they are exposing to the world. Mozilla’s servers can’t read the data that you post and neither can anyone else. That’s an important piece of what Weave represents.
Google drops the Google from Gears and will be adding Firefox 3 support.
It’s clear that Google is trying to build a larger community around the Gears plugin and is willing to give up branding in order to try and make that a reality. Also good that they are porting to Firefox 3 given that a huge chunk of the world is about to update to it.
Jorge Castro talks about his views on Mozilla’s commitment and investment in Linux.
Jorge is a pretty fantastic guy and I’m happy that he’s willing to jump out there and say something about the hard work that our community put in for this release of Firefox on Linux support. Great native integration, memory and performance improvements, a great experience for users, etc. Good to see him focus on the big picture which is how much better Firefox 3 will be vs. Firefox 2.
Anyway, that’s it for Friday. Thanks for tuning in!
On May, 8th, my ibook fall from the table and hit the ground 40cm below. I saw it fall, saw it instantly poweroff :/
Disk reconstruction began. It's a 60GB disk, with a 58GB reiserfs /. It could still boot but i got read errors everywhere and reiserfsck reported 81 corruptions. I have a one month old backup, that's not good enough. I needed a live cd in order to copy the disk, run badblocks and eventually try to fix it if it's not totally destroyed. The best i could get was an Ubuntu 5.04 live cd. I pluged in my 250GB USB disk. I then started to run badblocks (with the wrong blocksize...). I then tried to dd it, but that was taking ages. I was looking for GNU ddrescue but it was not present. I wondered a bit, but then realized that the / was writable: spent 10 minutes looking for a valid ubuntu mirror, apt-get update g++, grabbed the ddrescue sources, compiled it. I would have extracted the disk if i could found the righ screwdriver (thank you Apple).
48H later: at first ddrescue found 130MB of dead blocks out of 58GB. The damaged blocks are located around 20GB, 40GB, and 60GB, so clearly, the heads hit the platters. After trimming errors, it's down to 30MB. reiserfsck has this very nice '--rebuild-tree' which scans the whole partition, rebuilds the filesystem and reports which entries are damaged, using real filenames. This is so great because you then know which files are damaged (and there's of course a lost+found).
...
After days of dd_rescue and badblocks, i recreated the fs and copied back all my data. I had the nice idea to double-check the copied data and found a lot of corruption. I took my laptop to the nearest apple center, and got it back 2 days later (May, 28). 220€ later, my laptop was back with a new 120GB harddrive and OS10.4 on it (although i asked for a clean drive). Booted ubuntu, partionned the disk, formated in ext3 (with 256B inode, ready for ext4), installed yaboot, copied my rescued /. Tada ! it booted OK. I eventually found that some /var files were damanged which made apt unhappy.
FIN
This morning I found a small bug in GCC, but the GCC hackers are always one step beyond us: they had already fixed it in 4.3.0.
Coming up to the end of the first week of official GSoC coding, and what do I have to show for myself? Honestly, not a whole lot, because I've spent most of my time downloading, compiling, and playing with toolkits. So far I've played with aubio, Marsyas, and CLAM. I'm a little surprised at how long it takes to determine whether or not a toolkit will work - I'd hate to spend a week building a program around something and then find out that it's too slow, too inaccurate, too old, whatever... so I'm kind of hopping between them to see if anything jumps out at me. My chosen flavour of the week is CLAM.
The first thing that made CLAM stand out was the extensive documentation, examples, active mailing list, and evidence of ongoing development. There's something to be said about using a well-supported and popular program - gives me that nice fuzzy it's-not-going-to-die feeling. The second thing was that CLAM appears to seamlessly support wav, mp3, and ogg. I'm sure there's some conversion going on behind-the-scenes, but I don't have to deal with it and that makes my job easier.
I'm going to spend a little more time on CLAM to see if I can whip up a program into testing shape. It's still possible that another toolkit would be better suited to my needs - Marsyas also seems promising, but I had some trouble getting to sample program to work so I put that aside for the time being. I'm hoping I can make a final decision on which toolkit to use by, say, next Friday
On a completely unrelated note, my conference paper from last year's co-op was accepted for NACOB, and I've been tentatively scheduled for a podium presentation. Yikes! Talks are way scarier than posters, but it's cool that they liked it.
In bn_IN locale, the System Monitor looks messed up if one notices the vertical axis:
In en_US locale, it looks alright:
And our resident evil genius has a comment
For a variety of reasons, I spent some time assembling my observations of the state of the art of desktop wallpapers.
I hope that others may find this useful. Please let me know if you have any suggestions, comments, or corrections.
Many people seem to be going at LinuxTag.
I’ll be giving a talk at the event this Saturday.
If you want to see more about Ekiga 3.00, feel free to join in Saal Paris.
I will present Ekiga in general, SIP, Ekiga 3.00 and what we can expect from the future. I also hope there will be no problem with the VPN connection at the office to do a short demo of Ekiga used with Asterisk.
CPU usage is currently expressed as the percentage of time spent running
during the entire lifetime of a process. This is not ideal, and it does not
conform to the standards that ps otherwise conforms to. CPU usage is unlikely
to add up to exactly 100%.
This explains why my nagios checks for processes with >90% CPU use doesn’t work.
It’s logical when you think it through, but the nagios check is very misleading because it doesn’t mention this at all, just talks about CPU.
Sigh, let’s try with sar instead.
The server behind svn.gnome.org still runs the previous Ubuntu LTS (Dapper / 6.06). I want to upgrade this to the latest Ubuntu LTS, this being Hardy / 8.04. The upgrade itself should not take more than 30min, but the downtime will be longer than that (rsync’ing everything to another machine). I’ll setup another machine to handle SVN in case the distro upgrade the distro upgrade fails in unexpected ways.
I’m currently thinking of Sat 7 or Sun 8 Jun 2008. I prefer Sunday mornings (CEST / UTC +2) as hopefully not too many people are online. Further, the most important users of svn.gnome.org are developers and I expect less usage in the weekend. The weekend is more popular for translators though. It also isn’t just before an important release.
Above date is not fixed, I still have to check if there is someone standing by with physical access.
Anyone think above is a bad idea? Better suggestions regarding when to schedule this? Note: During the week it has to be in the evening (UTC +2).
Note: After the upgrade, the repository format has to be changed, but I’ll do that later. It shouldn’t be more than a few minutes per repository (due to converting it twice, first the whole repository, then disallowing commits, then doing the commits that have been made when the conversion was running). The repository format should allow things like svnsync, plus repository size should be smaller. See [subversion.tigris.org].
So far, the maemo.org track has been great - very informative. Some highlights:
Gary Birkett (better known on IRC as lcuk) gave a short talk on how and why he got involved in memo.org - an interesting perspective on motivations of volunteers, and a classic “scratching your own itch” situation. He’s developed a text reader which works in full-screen, and has smooth scrolling with finger & stylus (like the iPhone).
Niels Breet is the maemo.org webmaster. He was an active community member doing great work, who has recently been funded by Nokia to work on project infrastructur. It’s an interesting model of community funding - Niels explained that his boss is the maemo.org community, even though it’s Nokia who’s paying his wages. He talked about some of the things that he’s working on improving, including the newly published maemo.org packaging policy (PDF), and fixing the repositories mess to make it easier to upload software to a central maemo extras repository.
The main presentation to close out the morning was Quim Gil talking about the maemo.org strategy of Nokia over the next couple of years. Without going into details, he talked about the next two versions of the platform, Fremantle and Harmattan. Fremantle will continue to be primarily GTK+/Hildon based, and QT will be integrated into the platform in the Harmattan release.
Quim then talked about the role of community in maemo.org and tablet development. He mentioned that Nokia have recently invested in 3 roles (webmaster, bugmaster, docmaster) where the people being funded answer primarily to the community. This represents a big investment in the community.
His major announcement was that he was launching 10 days of community brainstorming on two subjects: the 100 Days community plan and maemo.org 2010, defining short term goals for the community, and helping Nokia define the mid-term goals and strategy for the project. He also announced the maemo summit, to be held in Berlin on the 19th of September, after OSiM World, and finished with a call to arms. Nokia is looking for real community input and action, and wants help finding the right balance between the commercial constraints involved in producing mass-market devices and the community requirement for transparency and openness.
After lunch, we had some presentations of some of the cool apps which have been written by community members for the maemo platform.
Alberto Garcia of Igalia presented Vagalume , a beautiful and well-integrated Last.fm client for GNOME and maemo tablets.
Florian Boor presented the GPE application suite which includes a bunch of small applications targeting handheld form-factors.
Urho Konttori, who has since become a project manager in Nokia, talked about the UKMP media player, UKTube YouTube downloader & plater, and some other applications which he has written for the maemo platform.
Next up: maemo.org platform hacks, and “what’s next?”.
If anyone is attending LinuxTag, I will have a talk about the GNOME Development tools on Saturday 15:00 o’clock in Room “Paris”. It will be in German, a short description is available through the link below:
I won’t have much time to be there at other times so don’t really expect to meet me at the conference.
Update: The slides
Dear lazyweb,
Is there any icon for representing ‘read-only’ stuff, that indicates that the thing you are dealing with is read only?
In my case, I’m talking about VNC view-only connections. But the icon could be useful for text editors, for instance.
I’m now back home after a couple of weeks of lots of traveling. I first was 4 days in London, visiting my sister, then was 5 days at home, sick with a flu most of the family got while in London, then last weekend to beautiful Salamanca for a conference at the University. Back home on Sunday, still a bit sick, and on Monday flied back to Stansted for a 2 days visit to Michael, for some debugging and bug fixing fun.
So, in this 1.5 days of fun action at Michael’s, I’ve learnt a few useful bits:
), and he has some nice habits in his technique that should help me a lot, now that I’ve learnt them, in my bug hunting work.While visiting Michael and his wonderful wife and daughters, I had the opportunity to meet my sister and family on Tuesday for dinner, since they were visiting Cambridge that day, where they will be moving soon, so I will have the opportunity to visit both my family and Michael (for more debugging and technique learning fun) more often.