GNOME Foundation is looking for ARMv7 hardware

The GNOME Continuous effort is proving a great way for the project to achieve, however right now we’re only building and testing things on Intel based architectures. As ARM devices like the Raspberry Pis, Cubieboards, C.H.I.P.s and the just announced Endless Mini become more prominent we want to make sure GNOME software is ready for those platforms as well to the extent possible.
gnomelovesarmSo I have asked the board for permission to try to reach out to organizations willing to donate ARMv7 servers to the GNOME Foundation for our continuous infrastructure. If you know of any organization (company, foundation, university…) with access to such hardware that might be willing to lend or donate it to us please get in touch with me at aruiz at gnome dot org.

Note that we don’t really need physical access to the hardware as long as it’s connected 24/7 on a decent internet connection.

Thanks a lot!

Updates on GNOME Calculator

GtkBuilder templates

Last GUADEC Michael Catanzaro asked for help out loud trying to find a new maintainer and I decided to take the bullet. For a couple of months I felt a bit guilty since I was merely doing new tarballs containing pretty much just translations.

However at some point a couple of months ago I sat down and started reviewing patches people were submitting and got up to speed with the current state in bugzilla, the review process allowed me to get familiar enough with the codebase to start finding things I would enjoy doing.

The biggest task I’ve been trying to accomplish is to move all the UI code to GtkBuilder .ui files and rework the codebase to use them as reusable templates. Vala has great support for this, here’s an example on how to create a MathWindow class, with a widget as a private member and a callback:

This has allowed me to remove quite a few lines of code making the project a bit more maintainable. It has been also a good opportunity to get familiar with gresource

DX Hackfest & XDG App

During the DX hackfest I spent some time to package GNOME Calculator as an XDG App, the only problem the app had was that it was using gvfs to retrieve currency data from the network. I ported this to ye’olde libsoup and everything went on smoothly. On the third day I caught a bad case of food poisoning so on the last day of the hackfest I was rather useless.

I would like to thank Philip Withnall for organizing the hackfest, Javier Hernandez for hosting me in his couch, our friends from the Betacowork space in Brussels for coping yet another year with the GNOME and LibreOffice hackers, and the GNOME Foundation as well as many other companies for sponsoring people to attend.

Incoming! Fleet Commander 0.7

We’ve just released the 0.7 series which should be the first version that is somewhat stable to use (think of it as alpha) and as we speak is under review for inclusion with Fedora 24.

For the last year I have been massaging the prototype we had at GUADEC in Strasbourg into a reliable product, and recently Oliver Gutierrez has joined the team to help with the web development affairs, I would like to summarize some of my work here so that you guys know what’s all about and what are the future plans.

For those unfamiliar with the project, Fleet Commander intends to be a centralized configuration management interface for system administrators managing GNOME deployments. Think about schools, universities or an office (either small or big). The idea is to reduce the amount of work needed to centralize the customization of the user experience. These days most sysadmins use a bunch of scripts, packaging or manual configuration machine-after-machine to achieve this goal.

Screenshot from 2016-02-03 17-53-23.png

Fleet Commander in action

The screenshot above shows the main profile editor, those who remember the Sabayon tool might be familiar with this concept. What you see is a virtual session running on libvirt, and basically picking up a VM I created with Boxes as a template. The idea is that the sysadmin replicates the “base image” that the users have in the network inside a VM, and makes the configuration changes that he needs.

After that the profile is placed as a json file and you can control which users and groups it applies to from the admin UI. This files are served by an HTTP endpoint that is consumed by a host daemon that retrieves all the profile data, turns each profile into a dconf db, and creates a dconf profile that aggregates all those dbs at login-time.

Right now this will work on anything that uses dconf (except for some potential issues where people use relocatable schemas), Stephan Berg from LibreOffice fame has written dconf support upstream and will make things magically work.

We’re quite proud of the release but the setup is a bit more complicated that I’d like it to be (we need to exchange an SSH key to access the libvirt host), future plans include FreeIPA/SSSD integration and migrating the UI into a Cockpit plugin which will make our codebase a lot leaner to maintain.

We’re working on an updated wiki page to explain how to set it up once it hits Fedora 24, stay tuned!

Moved to wordpress

I’ve decided to move my blog to, originally I started using Typepad because it was where my brother was working at the time. These days the service feels quite dated and it doesn’t have the kind of community of users that wordpress does. I’ve come to realize that the thought of using Typepad’s editor has discouraged me to write a post more than a few times.

On top of that I rather use a platform that openly supports free software. I have to say, as I write this post, I’m quite impressed at how advance the WordPress editor is, it feels like driving a new car.

So that’s that, I’ve migrated all my history here in case people want to read old posts in the new site.