All posts by Jasper Huijsmans

Xfce git modules

I needed to update my scripts to checkout everything in the Xfce git repositories. I used to run something like ssh ls /var/git on mocha (our old git server) to get the list of modules, but now I have this:


lynx -dump -listonly git.xfce.org \
| grep "git.xfce.org/[^?]" | grep -v "archive" \
| sed -e 's^.*http://git.xfce.org/^^' -e 's^/$^^'

Any better suggestions? This works very well for me, already.

Now, unfortunately, I have not found the time and energy to do something useful with all that fresh code. But it feels good to know it’s there if I do ;-)

Learning from GNOME

I just read an interview with Federico Mena-Quintero, which is a good read in its entirety, but one thing struck me as being a very important change to how GNOME is being developed.

Federico says (emphasis mine): “The latest thing is that now things have to go through the design team first, and I don’t think that is a good thing; there should not be a central body of control that decides how things are done, because that simply doesn’t scale. And it also doesn’t teach people in how to do design properly. I really would like to move to a model where, instead of having a central body of people who can veto things in or out, we can have a shared understanding of what constitutes good design and implementation.”

This has been very important in my personal development as a programmer. I remember the vivid discussions about usability on the gnome lists with well-known names like Havoc Pennington. And they helped me enormously to form my own opinions on these matters.

From a (safe ;-) distance it seems like GNOME is missing a big opportunity to teach the world, oh alright, other free software developers about good design and thereby giving chances to new developers to learn from their peers. Specifically, it is not as easy as it once was for a casual observer to gain an understanding of the concepts and their implementation that are the basis for gnome development and that’s a real pity, I believe.

Irrational behaviour

So, I want a new phone. I really don’t need one, but I want it anyway.

This is my current phone:

And it fits my needs perfectly: water/dust/sand(!)-proof — Leonie and Guido are 3 and 1 year old now, so this is not a useless feature at all ;-) Moreover, it lasts two weeks without recharging and I only use it to make phone calls, so I don’t need anything with more features.

Still, I want this phone:

Basically, I’ve fallen for the pretty pcitures and UI demos, but I tell myself it is because it runs “real” linux.

What’s wrong with me? ;-)

It’s a boy!

Last wednesday I became father for the second time. It’s a boy and his name is Guido. Me, his mom and his big sister Leonie are the happiest people in the world right now.

Here’s a screenshot, err, a picture of him just having found his own thumb:

Don’t expect anything Xfce-related from me any time soon…

I paid for Xfce

Yesterday I caved in and bought myself one of those cute little laptop devices: an Acer Aspire One.

Acer Aspire One vs Dell Latitude D620

Note that the giant machine on the left is my previously considered smallish 14.1″ laptop from Dell.

It comes with a Taiwanese distribution, Linpus Linux, based on Fedora 8. More specifically, it comes with the ‘Lite’ variant of the distribution which features Xfce as its desktop environment. Well, actually, it is part modified Xfce, part Easy(tm) interface created by Acer for this device (they call it xfdesktop2, a bit strange if you ask me).

Wow. A commercial offering available from a store for regular people, with software that I helped create. Awesome. Maybe I should have asked for a discount ;-)

I’ve just started playing with it and I think they did a pretty good job. The interface is really easy, but can only access a few predefined applications. I have wanted to write such a full screen launcher/control center interface for a long time, but never got around to actually doing anything about it. It would be perfect for my parents, who have a very hard time working with their Windows XP.

They use a modified Thunar (My Disk://, Removable://, indication of disk usage in the side bar) that seems to work fairly well.

They don’t provide easy access to changing the configuration, since they disabled the right mouse menu on the panel. However Alt-F2 brings up xfrun as in a regular Xfce installation and Terminal is installed.

There’s xfce-setting-show to bring up our own settings dialog. It doesn’t fit on the screen (1024×600), but this is partly due to the very big icon they added for screen settings, making all buttons in the dialog much bigger than they need to be. I got rid of the XP window decorations and used the Xfce theme instead of RedHat’s Nodoko. Now that looks better!

xfce4-panel -a gives you the add item menu, where you can add for instance the xfdesktop menu. Also in edit mode some right-click menus do become available (not all). I’ve added a menu and a pager to get a bit more functionality.

Since it’s based on fedora you can use yum to install more software. I’ve just installed gimp to be able to create a decently sized picture for this post.

It has an 8GB SSD for storage and two card reader slots for possible extensions. The one thing where the SSD really shows its advantage is boot time. It boots in about 15 seconds, maybe a bit less (although some daemons are still being started in the background), very nice indeed.

Oh, and it weighs slightly less than 1 kg.

So, now I’ll go back to playing with this thing ;-)

update:
Screenshot

Vala > C ?

Brian writes about ObjC being much nicer to work with than plain old C for GUI work. I just came across an interesting project that tries to improve the situation: Vala.

It’s a new language with C#-like syntax with a compiler that generates C code. Could be interesting. Although, generally speaking, code generators suck, you shouldn’t have to deal with the generated code at all in this case. The code is written in Vala, which is compiled to native code, but if you create a library it will have (or generate?) an API that is compatible with C.

I am going to have to try this some time (because, you know, I have lots of free time to spend on playing around with obscure programming languages, oh wait, I don’t ;-) So, has anyone else tried this?

Transparent future

Not being able to set my mind to doing anything useful, I played a little with rgba windows. For a future version of Xfce that can depend on cairo-based versions of Gtk, it should be possible to only make the panel background transparent, while keeping text and icons fully opaque.

Just changing the panel window and the base plugin classes, I got the following result:

Not too bad. All widgets that have their own X window, or that do some custome drawing are not transparent, but the others are. I had to choose a theme with white foreground text to make labels somewhat readable. That will require special attention to get right. Shadows or outlines maybe…