It’s Christmas in FOSS-land!

largeGComprisLogoOr Hannuka or Kwanzaa or the solstice or… you get the picture. Whatever holiday you celebrate, it’s here!

And in the spirit of warmth and light and giving, Mageia is embarking on (what we hope will be) a yearly tradition where we donate to a project in the FOSS community. “What is this?” you might ask, or even “But I donated to Mageia, not some small project I’ve never even heard of!” and those are, of course, excellent questions.

See, Mageia is a community-driven Linux distribution. Everybody here volunteers and does the work because he or she can and because they want to contribute. The money that we collect in donations goes to paying for server costs, hardware repairs and upgrades, supporting booths and handing out merchandise at conventions (and in one case, flying in a repair person when everything broke).

But the Mageia community is part of a much larger community, the FOSS community (FOSS stands for Free and Open Source Software). Thanks to you (yes, you personally!) we’ve grown to become one of the biggest Linux distributions out there. When we first started we were quite small, but we’ve grown up very quickly. Now we are in a position to help the little guy. We’ll be using this gift to help out a project that we feel close to, so it will always be a project that we package.

This gift is (relatively speaking) rather small, but it’s the thought that counts. So we’d like to take this opportunity to spotlight a small but very useful open source software project.
Almost all of the applications that we use in a Mageia system are developed by other open source projects. Some of these are large and reasonably well funded, such as KDE, Gnome and Mozilla, but there are many others that depend on the support of very small groups of dedicated individuals. One such project is GCompris, which is presently engaged in a fund raising drive to enable it to modernize the appearance of its software.

So we have decided that this year we will be donating 250€ to GCompris. This year’s choice is built on that simple point: as a distribution, we are working hard to make Linux comfy for most users. Many children first see Linux through GCompris (which means “I understood” when pronounced in French).

GCompris is a software suite of educational activities for children from 2 to 10. Helping to introduce children to Linux helps the whole Linux world to grow :). Of course, our donation is only a small part of what GCompris is trying to raise, so if you have some money that you budgeted for a good cause and are looking for that good cause, we think that GCompris is it.

This time we picked GCompris ourselves, but next year, you can have a say in the matter. Towards the end of 2015 (we’re not sure exactly when) we’ll ask you what you think a worthy cause for our yearly gift will be. So if you happen to see one, make a note of it.
May you have a merry end-of-year festivities.

Mageia team

Moving to Stockholm

Stockholm

[This post is off-topic for some Planet readers, sorry for it. I just expect to get some help with free software communities.]

Exciting times are coming to me before the end of year. Next week (probably) I am going to Stockholm to live for 5 months. I am getting an visiting researcher position at  KTH – Royal Institute of Technology as part of my PhD course. I will work with PSMIX group – Power System Management with related Information Exchange, leaded by Prof. Lars Nordström.

The subject of my project is the modelling and simulation of smart grids (power system plus a layer of communication and decision making automation) features using multi-agent systems. I expect to work with the simulation platform developed by PSMIX based in Raspberry PI and SPADE framework. The platform is described in this paper.

Well, I am very anxious with this travel because two things: the communication in English and the Sweden winter. The second is my main concern. Gosh, going out from the all the days Brazilian summer to the Nordic winter! :'( But ♫ I will survive ♪ (I expect). ;)

If you know someone to help me with tips about apartment rent, I will be very glad. Rent accommodation in Stockholm is very hard and expensive.

Thanks and I will send news!

They make Mageia: David Walser

luigi1How should we call you ? Luigi or David and why using Luigi ?

David. Luigi is my favorite video game character from growing up. When I first started using the internet in the mid-90’s, one of my first destinations was nintendo.com. I created my first online account there, originally Davidwalser, which I soon realized wasn’t exactly what you wanted an online screenname to be, so I changed it to Luigiwalser. My first, and still current, e-mail account, luigiwalser@yahoo.com, was created a few months later.

I also learned about IRC in my early internet days, and didn’t use it much, but I learned that you don’t typically want to use your real name while on IRC. This was more true of generic IRC, like DALnet that I used back then occasionally. Obviously it doesn’t really apply on Freenode. Anyway, I created the IRC name Luigi12 way back then (12 being my favorite number), and have always used that on IRC ever since. People in Mageia sometimes call me Luigi primarily because of my IRC name. One fellow distance runner that I know IRL also calls me Luigi because of my e-mail address. I don’t really mind that, but I prefer people call me David, as that’s my real name :o)

Can you introduce yourself in a few words?

I am generally a man of few words, but I probably need a few more to introduce myself. I have been using Linux for 15.5 years, and Mandrake/Mandriva/Mageia for 15 years. I have been contributing since the summer of 2001 to some degree. I did a fair amount the first few years, not much for the next seven, and have done quite a bit since I joined Mageia at the end of 2011.

I am 33 years old, am a former high school math and computer science teacher, still am involved with high school track & field, and now teach Linux/Unix fundamentals to adults. I am a distance runner and I enjoy watching American football and listening to music.

So you are our cerberus for security update for some time now. Why did you choose to contribute on security side? This part of contribution is often seen as quite boring comparing to working on new functionnalities.

Security has always been important to me. It is something I always took seriously in setting up Linux systems for myself and my family in the early years, as well as Linux and Solaris systems that I administered for my college department in 2002. In fact, my very first contribution to Mandrake was a patch to a script in their CUPS package, whose purpose was to automatically generate cupsd.conf, to make it not listen on a network interface connected to your WAN, i.e. a security hardening :o).

I stumbled into my current role at Mageia completely by accident. I had upgraded my sister’s laptop from Mandriva 2010.2 to Mageia 1, and noticed one Mandriva package left on the system because it had a newer release tag than the Mageia package. The reason was because Mandriva had done a security update for the package, but when it was imported into Mageia, the release version was imported rather than the updates version. I was concerned about other security updates that might have been missed, and began investigating this. I started filing bugs for missing security updates and helping the QA team test updates that got packaged, to help the updates get released more expeditiously.

I also joined as a packager because there were a couple of packages that I wanted to import. Once I had packager access, I had the ability to help package some of the security updates. Over time this lead me to my current role, of keeping track of security issues and packaging some of the updates. I’m fortunate that I’m able to do some sysadmin work at my job as we’re a small team and support less than 50 students at a time, so I use Mageia on several of our servers as well as my desktop at work, so I’m able to spend some work time on Mageia stuff.

Could you explain us what your job is about in security team?

Managing security updates for the distribution. I use whatever sources of information I can to be informed about security issues that affect our distribution, file bugs for these, and try to help ensure that updates get packaged. I do much of the packaging myself, involve other packagers to help with this work, and work with the QA team to help the updates get tested and released.

So Mageia 3 is now EOL. What does that mean exactly? What would you advise to Mageia 3 users?

The EOL means that Mageia will no longer be releasing updates for Mageia 3. Any new security issues or bugs that come to light will not be fixed. Mageia 3 users should upgrade to Mageia 4 as soon as possible. Most Linux distributions are supported for a fixed amount of time after they are released. Mageia releases are supported for 18 months.

Beyond this amount of time, it becomes more difficult to obtain fixes for security issues for many packages. As a community run mostly by a small number of volunteers, our resources for providing support are rather limited too.

This last question is for you :). What would you say to recruit new contributors to help in security team (aside from promising coffee or beer ) ?

I suppose it’s good that coffee and beer weren’t offered in the beginning, as I don’t drink either of those (nor anything carbonated, caffeinated, or alcoholic :o). Anyone that uses Mageia should understand that the updates that seem to magically appear periodically don’t actually get there by magic. It’s a lot of work done by a small amount of people.

Anyone that is concerned about the security of the software that we ship and has the ability to contribute to this effort can help ensure that Mageia continues to have a good security posture by helping out. It isn’t the most exciting work, but it is very important and impacts all of our users, so it can be rewarding when you look at it that way. Contributing to this effort is a good way to have a positive impact on the distribution, and it gives you the opportunity to become more familiar with our overall package set.

The security team also acts as a kind of bridge between the packaging and QA teams, and it is fun interacting with these great groups of people.

You can join me on IRC or by mail.

Thanks David!

Let’s say goodbye to Mageia 3

It’s been a great run, but all good things must end. Or at least, upgrade to a greater thing.

Since Mageia 3 was released in May 2013 our packaging and security teams have provided hundreds of updates (actually 1136 source packages in the Core repository, that accounts for almost 9000 binary packages), all of them tested and validated by our QA team.

As we announced in our earlier blog post, Mageia 3 has now reached the end of its product life. This means that we will not be providing any more security or bugfix updates for Mageia 3.

In order to keep your systems secure and functioning properly, you should upgrade any Mageia 3 systems that you still have to Mageia 4 as soon as possible.

And just in case you need another incentive to upgrade, Mageia 5 is coming soon (the final release should be at the end of January 2015). Mageia 5 will be our best release yet, and we only support upgrading to it from Mageia 4, so upgrading now will mean you will be ready to go when Mageia 5 comes around.

So head on over to this wiki page and upgrade your system today.

Presenting a Season of KDE 2014 student – Minh Ngo

Season of KDE is an outreach program hosted by the KDE community. This year I am working as a mentor to a long time requested project related with Cantor – the development of Python 3 backend. You can read more about Cantor in my blog (texts in English and Portuguese). So, let’s say welcome and good luck to Minh Ngo, the student behind this project!

Hi,

My name is Minh,

Minh Ngo

I’m BSc graduated student. I’m Vietnamese, but unlike other Vietnamese students spent most of my life in Ukraine. Currently, I’m preparing myself to the Master degree that will start in the next semester.

Open source is my free time hobby, so I would like to make something that is useful for the community. Previously, I was participated in the GSoC 2013 program and in several open source projects. Some of my personal projects is available on my github page https://github.com/Ignotus, not so popular like other cool projects, but several are used by other people and this fact makes me very happy :) .

Cantor is one of opportunities to spend time to create an useful thing and win an exclusive KDE T-shirt :). I decided to start my contribution with the Python3 backend, because few months ago I studied several courses that are related with Machine Learning, so I was looking for a stable desktop backend for IPython. A notebook version IPython I do not entirely like and its qtconsole version doesn’t satisfy me in terms of functionality, therefore I decided to find some existent frontend for IPython that I can tune for myself. And the story with Cantor began after than :)

Happy hacking!

As Philae, Mageia 3 is running out of batteries…

success

(Source: xkcd)

As you all know, we can’t maintain Mageia releases forever. And it’s time to say goodbye to Mageia 3. After Wednesday the 26th of November, this release won’t benefit from any more security or bugfix updates. This will allow QA team to give more time for polishing our coming Mageia 5.

So you have only one week left to upgrade to Mageia 4 if you want to keep an up-to-date system. Do not hesitate to use our mailing-lists, forums or IRC channel to speak about it and ask for help if needed.

See www.mageia.org/support for more details.

The various ways of upgrading from Mageia 3 to Mageia 4 are described in this page.

HP MyRoom on a 64 bits Linux

Well, HP is now promoting a new solution for webinars called HP MyRoom. And even if they provide rpm (and deb) packages, these are not working out of the box on my Mageia 64 bits distro, of course. That was already the case with HP Virtual Room previsouly.

But nothing you can’t make work, as long as you have the source don’t you ? So here is the receipe:

First install all the required dependencies that are not correctly mentioned in the rpm:

urpmi lib64xtst6 libxtst6 lib64xscrnsaver1 libxscrnsaver1 jpeg-devel lcms-devel

Then add an additional library which was not even part of Mageia when I started this post ;-)
Get it from Cauldron where I uploaded it:

wget http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/cauldron/x86_64/media/core/release/libmng1-1.0.10-1.mga5.x86_64.rpm
wget http://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/cauldron/i586/media/core/release/libmng1-1.0.10-1.mga5.i586.rpm
urpmi libmng1-1.0.10-1.mga5.x86_64.rpm libmng1-1.0.10-1.mga5.i586.rpm

Then finally download HP MyRoom for a 64 bits RPM system and install it with:

rpm -ivh --nodeps hpmyroom-10.0.0.0210.amd64.rpm

and launch it !

/usr/bin/hpmyroom

And now enjoy exchanging from Linux as well as from Lynx but without the hassle to use Windows ;-)


Filed under: FLOSS Tagged: HP, HPLinux, Linux, Mageia, MyRoom

The Long and Winding Road

Well, it’s been a long road, longer than we anticipated, but we’re almost there! Mageia 5 Beta 1 is now validated!
What exactly does that mean? What took so long (a month and a half longer than originally planned)?

RPM 4.12 versus the Mageia buildsystem, a retrospective

The short explanation: Some stuff went wrong and other things got broken.

The long one: Back in September, we decided to update our package manager, RPM, to its latest upstream version 4.12. This was done shortly before our planned mass rebuild, a necessary step before the Beta where we rebuild all packages in the distribution to make sure that they are still compatible with the current state of our development stack. Usually, mass rebuilds show that a fair number of packages do not build anymore even if they did some months ago: the packagers’ task is then to patch them so that they can build against the new stack, or in some cases to patch the development tools to fix regressions.

But this time, the new RPM version introduced changes that were significant enough to break a lot of core packages during the mass rebuild, and lots of packages failed to build in a chain reaction. It took a couple of weeks to fix and we were already long past the planned deadline for Mageia 5 Beta 1 (originally scheduled for the end of September). So we decided to postpone it to mid October.

Still, while fixing our core tools during this first mass rebuild, some important changes were made to our RPM setup. As a consequence, half of the rebuilt packages (the ones built before our RPM setup changes) were lacking some important metadata. We then decided to do a second mass rebuild in October, which went quite fine apart from some issues with the Java stack. It was already late October when the first Beta 1 ISOs could be spun and delivered to the QA team for pre-release testing.

You may know that a Linux distribution release is basically an installer together with a set of packages. The latter were now starting to behave properly, but we were then faced with some issues in the installer regarding glibc (the GNU C library) and RPM. This delayed the beta for another week or so.

Then the QA team could finally get started with a fresh set of ISOs, and found the usual numbers of critical bugs (system doesn’t boot, stuff like that) that were fixed with the help of our developers. A big thanks to the QA team for their continued work on the ISOs while also testing update candidates for Mageia 3 and Mageia 4! This beta is far from perfect so don’t forget to check the errata, but you should be able to install it and to see the state of current cauldron. Please report any bugs, we will try to fix as many as we can for Mageia 5 Beta 2.

Consequence on the development roadmap

According to our original schedule, the second beta should have been released on October 31st… So we had to choose between skipping Beta 2 or postponing the Mageia 5 final release and the intermediate releases. Based on the input from the Beta 1 testing, we decided that we can’t afford to skip the second beta, since the current one still has some serious issues. As a consequence all planned dates for the future intermediate and finale releases have been postponed, and the new development roadmap reads as follows:

  • Beta 2: December 16th, 2014
  • Release Candidate: January 6th, 2015
  • Internal release: January 23rd, 2015
  • Final release: January 31st, 2015

Fine… Now, where is my Beta 1?

You all waited long enough for this release, so grab it with the first link, but don’t forget to check the following ones:

Test, enjoy, and report any bugs! Now is the time to polish this Mageia 5!

Halloween the curse or buggy software?

As explained in a previous post, lots of updates occured especially dealing with rpm. And here we go. We are facing at the moment some nasty issues in installer. The graphical part of the installer is just crashing due to a bug implying glibc and rpm. Both were recently updated.

Work is in progress and the issue was reported upstream. You can follow it here on the bug report. As soon as this bug is fixed, we will be able to release the Mageia 5 beta 1 isos. Stay tuned!

Official mageia docker images available

We now have official docker images for mageia !!

After some weeks working with the docker team we managed to get mageia as an official docker image (the ones that have the blue whale icon). You can find them at the docker hub, and if you want to contribute to them you can go to mageia's docker brew project.

There are three images available:

  • Mageia 3
  • Mageia 4 (latest)
  • cauldron

Currently the cauldron image is outdated (probably more than a month), but I plan to automate the docker image update process so we can have an updated version at least once a week.


How to use these images


You can pull them on the command line (as root):

          # docker pull mageia:latest
          Pulling repository mageia
          147b6e8a8cbd: Download complete 
          511136ea3c5a: Download complete 
          e65cc271e617: Download complete 
          
          # docker start -ti --name mymageia_4 mageia:latest


Or create a Dockerfile file to build your own custom mageia-based image:
FROM mageia:4
MAINTAINER  "Foo Bar" 
CMD [ "bash" ]
All mageia docker images install the following packages:
  • basesystem-minimal
  • urpmi
  • locales
  • locales-en

Please test these images, and if you find any issues or have suggestions don't forget to report them here. Also I'm thinking of adding some other custom images for specific applications and uses, like:

Ready to run server application-oriented containers


We could have several application oriented containers: mariaDB, nginx, wordpress, Apache+php/{cakephp,zend,codeigniter}, Apache+python/{django,codegears,flask}, tomcat preconfigured to use an apache container as front end, etc, the possibilities are endless. All these containers could be linked, packaged and orchestrated using fig for an easier application control and management.

Another example could be FPS game servers (Urban Terror,  OpenArena, Warsow, World of Padman, Smokin' Guns), with their server package, some license-redistributable maps, a web admin panel, mumblebigbrotherbot (already working on a package) and anything else needed to have a kinda of "one click" game server setup. This could be very useful for example, to quickly launch game servers at a LAN party, or to provision game servers at a game hosting company.

Docker for distribution development


At the very least I see a couple of uses for docker within mageia development. First, as a quick and easy way to use iurt for local package building. We could have a custom docker image for package development that comes with a preconfigured iurt binary, package build tools like bm, rpmbuild, rpmlint, mgarepo, etc, all preinstalled, this could be a build/packaging environment with one command:

          # docker pull mageia:devenv
          Pulling image...
          # docker run --rm -ti --name mageia_dev -v /home/juancho/iurt:/opt/iurt/ mageia:devenv iurt SRPMS/foo-1.0-1mga5.src.rpm

That command would launch a docker container using our custom development image, launch iurt to build a source package, leave the binary packages in /home/juancho/iurt/RPMS/{i586,x86_64,noarch} and delete it self when it finishes. This is a clean way to locally build packages in a fresh environment. Remove the --rm parameter if you want to use the container later, for example to work on package version updates:

          # docker run -ti --name mageia_dev -v /home/juancho/.ssh:/home/juancho/.ssh -v /home/juancho/iurt:/opt/iurt/ mageia:devenv bash
       
Also by mapping your .ssh directory to a docker volume, mgarepo can be used within the container.

The other important use for docker within mageia could be to help with QA testing. The reproducible nature of docker makes it very interesting from a QA point of view, the repeatability of tests could be of great help for application testing and bug triaging.

We could teach bug reporters how to create their own images or write their own Dockerfiles with the needed packages and configuration changes to reproduce a bug. The reporter would point QA back to an image that they can download and test (for example, from our own docker repository). The creation of those containers could ease and speed the testing process. As these custom images would be based on our official images, there wouldn't be the need for QA to setup the same test case to reproduce the bug in another environment, the reporter image should be enough for them to test and validate it. In some way, we could be making the bug reporters also contribute the test case.

Docker application containers


What about preconfigured docker containers for software development environments, like images that have Netbeans/Eclipse for python/java/php, git/mercurial/svn/bazaar, any development libs and tools needed depending on the platform, etc, all preinstalled and preconfigured. This could be a good idea as sometimes these tools are difficult to install and update, having these ready to use containers could be cool. Probably it also could be used to package nonfree applications or 32bits applications on x86_64.

I don't know, there are many ideas that come to my mind about stuff that can be done with docker in different areas, like these ones on linux distribution development and such.