Mageia at Fosdem 2011

Fosdem 2011This week FOSDEM started, one of the biggest European Free Software events. As announced previously, the Mageia team was present, gave 2 speeches, and held its first General Assembly, among other things.

FOSDEM started by an improvised dinner in a pizzeria ( and we were quite lucky to find one that accepted a 10 person group ), followed by an informal meeting in a Bruxelles pub near the Manneken Pis, where we discussed various technical subjects such as the different types of beer, how to run Meego on n900 or the lack of goverenment in Belgium, among others. Then we left to our respective hotels for a deserved rest before plunging in the various FOSDEM activities.

First Day

The first day was the occasion to discuss and to setup our booth. A special feature of FOSDEM is the location of the exhibition – it’s the atmosphere of subterranean hallways, a remarkable difference to the glamorous lighted fair grounds of Solutions Linux and other meeting places. Nevertheless these hallways were packed with all kinds of projects and with all kinds of interested visitors.

Mageia was no exception. Thanks to the generosity of the GNOME people we were able to have a booth among other free software projects, just next to the Fedora booth in the main corridor. Damien had brought the first boxes of Mageia T-shirts to be sold to the visitors at the Mageia booth. We offered a selection of black and white T-shirts (because we believe in choice) and wrote on the price tag “at least 10 €” for a T-shirt. We also gave away free stickers to spread Mageia. The sales in the two days at FOSDEM resulted in 625 € for Mageia’s donation fund.

The first day was also the time for first-time-introductions, of people who often experienced a long time of cooperating with each other but who never met in person before. There was time for face to face discussions, questions and answers.

After an exhausting day where everybody made contact and discussed with old friends or made some new ones we went to the Mageia dinner organized by Anne in Bruxelles downtown.

Second day

But FOSDEM is not only the occasion to have a booth and to answer questions about the project, it is also the perfect moment for giving informational talks to a technical audience composed of several free software enthusiasts.

We were lucky to have 2 slots for that purpose, the first one in the cross distribution developers room on Sunday morning, and the second one in the LibreOffice developers room on Sunday afternoon. Both talks followed the same skeleton (the one that Romain posted on the marketing mailing list) but we decided to have a different focus for each one.

The morning talk was more about presenting the project, followed by the lessons learned by forking on a technical level, like the issue of having hardcoded path and name everywhere, the difficulty to rebuild everything from scratch, and so on. The afternoon talk was aimed at presenting the governance model of the project and to share our work on this part. Both were well received. They led to some interesting contacts and clarified the situation regarding the project. You can see the first one on YouTube

FOSDEM was also the moment we chose for the first General Assembly of Mageia.Org. Despite some last minute changes due to a misunderstanding caused by our habit of using UTC for everything, we managed in time to find a 1-hour slot in a free room for the assembly.

First Anne (ennael) presented the moral report, summarizing everything that we did in the previous months. Then Damien Lallement (damsweb) followed, presenting the financial report, explaining the various expenditures of the association in the past months and gave a forecast. In simple figures Mageia received 8,833 € in donations and spent 3,310 € (mostly for servers and other hardware). Both documents will also be published on the Mageia website soon.

The next topic of the assembly was the announcement of the results of the first board election, which was held among the founders via Epoll, following a decision in a previous meeting of the founders. This way the results were published online at the same time. The first board consists of 6 persons:

  • Anne Nicolas (ennael)
  • Damien Lallement (damsweb)
  • Michael Scherer (misc)
  • Romain d’Alverny (rda)
  • Wolfgang Bornath (wobo)
  • Thomas Backlund (t_m_b)

The board creation was also the moment we chose for starting the creation of the cryptographic keys used to sign our software, our packages and our ISO’s. Nicolas Vigier (boklm) and Michael Scherer (misc) created and split the main key among the board members, using some state-of-the-art cryptographic system they will explain later in a blog post.

In a constitutional meeting of the new board Anne Nicolas was acknowledged as president of the association. Damien Lallement was acknowledged as the treasurer and Michael Scherer was appointed secretary of the association.

Conclusion

Like every year, FOSDEM was a great experience for all participants, a revitalizing moment in the year were we can fully feel the spirit of collaboration that makes free software so unique. For Mageia this event will surely become a fixed point in time every year to meet, recapitulate, look forward, and have our annual general assembly.

Posted in Uncategorized | Tagged , , , , | 7 Comments

Bootstrap? What bootstrap? I want Mageia ISO!

We announced that our first alpha ISO will be available by the end of January… and still no ISO. Damned! What is going on? Let me explain it.

Once upon a bootstrap…

As stated in previous blog posts, our build system has been in active operation for the past weeks and more than 4,000 packages have already been built. This set of packages is what we call a bootstrap.

Looking at Wikipedia, you will see that a bootstrap is a small bootloader used to boot a bigger system. In the case of Mageia: bootstrap is the current step where the base system and major dependencies are being built so that all applications can then be also built using Mageia own tools and packages. All Linux distributions use their own packages to build all packages available in their repositories.

Then comes the hardest piece of the story, kind of a chicken and egg dilemma. Some low-level packages, usually called toolchain, need themselves to compile: gcc, glibc… These packages already exist in a lot of distributions. So the bootstraping process simply start from one of these distributions.

On Mageia side, we decided to use Mandriva packages as the first release is based on Cooker. In order to use them, we need to have them cleaned:

  • removing Mandriva specific bits and pieces (RPM macros, copyrighted items like images, icons, deprecated stuff…)
  • removing unneeded conditions in build requirement definitions
  • sending patches upstream so that we don’t have to maintain them whereas they could be profitable for all if upstream accepts them
  • disabling temporary some high-level dependencies as they are not yet built and available for Mageia (Java, Mono).

When all this is done, each package is ready to be rebuilt on Mageia build system. Once the package is rebuilt as Mageia one, the packager will check and re-add, if needed, additional build dependencies as soon as they are available.

Let’s take an example

gcc is a C compiler, an important part of base system as it’s needed by a lot of applications to be built from source.

Mageia needs its own gcc package to generate all applications using C language (also called dogfooding). This is a crucial operation for Mageia as doing it properly will ensure that everything is working well and in the same time list potential problems and correct them. Mageia gcc is then generated.

When the toolchain is built then we can rebuild Mageia kernel, X drivers, X server, etc. and upper-level applications. A bootstrapped system doesn’t offer packagers much more than some libraries and a compiler. It will then need additional core system packages before being able to let the packagers team really start working in earnest. Many packages do require some build dependencies which in turn require some other build dependencies.

Finally thousands of packages are needed to build major components that will be needed for high level applications.

Of course this is the simple story, without all the fun things that can happen during rebuild process. But that’s the big picture.

Why is bootstrap so important?

As stated previously, bootstrap is a step where packagers and base system specialists can take time to check consistency of the very low-level parts of the distribution, clean requirements and make it fit with the distribution policy. So bootstrap is not dedicated only to people interested in forks 🙂

By the way, improving and writing proper documentation on bootstrap will also help a lot when new architectures are being added and supported. It will need a proper toolchain, base system… Same story.

ISOs!

So back to our first question: when can we expect a first test ISO? The bootstrap step started one month ago and should be finalized by tomorrow. It took about 1,500 hours to build available packages, taking into account successful builds but also failures, rebuilds, technical decisions to be taken, unexpected problems, discussions…

Now here we are :). Repository is ready for first build tests, our build machine for ISOs is properly configured and Alpha1 is expected on 15th of February; stay tuned, more news about future roadmap is coming soon!

Posted in Uncategorized | Tagged , , , , , , | 38 Comments

See you at FOSDEM

About 20 of us will join the fun and attend FOSDEM in Brussels this coming week-end (see our preparation notes).

Among other great and fun discussions, we will hold two talks on Sunday about Mageia:

  • at 10:30 in CrossDistro devroom (H.1302); this one will focus mostly on the technical side of the project;
  • at 16:30 in LibreOffice devroom (H.2214); this one will focus mostly on the organizational and governance bits.

And we will hold our first general assembly at 14:30 on Sunday (meeting place not determined yet).

We hope to see you there, feel free to get in touch with us if you have any type of question about the project and how it is going.

Belgium, here we come!

Update: note this figure: 5. We will speak about that on Sunday.

Posted in Uncategorized | Tagged , , , , , , | 12 Comments

Back from application installer meeting

One of the most important underlying values of Free Software in general, and specifically of Mageia is collaboration. Collaboration with users to fix problems, collaboration with developers to ship their software, but also collaboration with other distributions, by sharing booths, patches, code and everything.
And fuelled by this spirit of collaboration I went to Nuremberg with Stormi ( mageia app db project founder and packager ) and Nanar ( our mirror manager, the man behind Sophie and numerous others softwares ) after being invited to come by Vincent Untz of OpenSuse and GNOME fame. The goal was to participate in a 3 day long cross distribution meeting sponsored by Novell about application installer, and bring our expertise on the topic as well as give our point of view on the project. Many thanks to them for organising that event and sponsoring some of us.

We were joined by people from Fedora, OpenSuse, Debian, Ubuntu and KDE, as explained on the wiki page of the meeting.
The topic may seem to be quite ambitious, and it was, but we still managed to agree on a common set of standards, as better said in the numerous reports made by others participants like Enrico Zinni, Richard Hugues and others.
To summarize ( and thanks to Richard Hugues to have done this work before me so I can take his blog post ), we had presentations of various software, such as PackageKit, Ubuntu software center, Debtags, and OCS among others. We then worked on deciding what would be needed for sharing various metadata ( screenshots, comments, etc ), producing the start of a specification and various documents, as you can see on the final meeting presentation. The wiki page also holds a good documentation about it.

Now, the important question is what it would mean for us. First of all, while we think it will be an important innovation for free software and Mageia, I didn’t plan to have it adopted without discussing with other members, but I am quite confident that we can benefit from the work that will be done in the coming months. Among the various tasks, we have some python/php/perl programming ( either on Packagekit side, Mageia-app-db side or Ubuntu software center side ), some packaging, and maybe some system administration later. So if you are interested in helping with that or have questions, we will discuss this during the weekly packagers’ meeting on 26/01/11 on the #mageia-dev IRC channel on Freenode.

Posted in packager | 5 Comments

Mageia joins Open Invention Network

Mageia.org has just joined Open Invention Network as a licensee.

Software patents are a threat to Free Open Source Software development and to free innovation at large.

OIN‘s goal is to minimize/eliminate software patent threats within the Linux ecosystem. It helps by insuring confidence, free innovation and growth within the Linux stack by taking a collaborative and defensive stance against software patents.

OIN provides its members and licensees with the means to:

  • Cross-license to each other, at no cost, their patents relative to Linux;
  • Benefit from OIN-owned pool of patents,
  • Gather forces and defend against software patent threats.

While this doesn’t resolve the question of software patents, it is a great help to defend against those sorts of threats. Mageia.Org strives to understand, design, experiment and release software to empower people in their daily lives; software patents are not going to help in this regard. So we welcome OIN and any other initiative that may help reducing software patents impact and abuses.

OIN members include Sony, IBM, NEC, Red Hat, Philips, Novell. OIN licensees include Canonical, Fluendo, GNOME, Google, KDE, Mozilla, OpenMoko, Oracle, Tom Tom, and many others.

Note that OIN is not alone, only relates to the Linux system and is not the only way to silence software patents, where they are effectively valid; see:

Posted in Uncategorized | Tagged , , , | 6 Comments