Enhancing the flow of Caixa Mágica package creation process & ContribWare

Project details


GPL V2 (the current license used for all Caixa Mágica's internal projects)

Purpose of this project

Improve the current flow of Caixa Mágica's package creation and ContribWare, working on top of the following 2009 summer internships (only available in Portuguese):

Project description

Create an infrastructure that merges Mandriva Cooker packages with Caixa Mágica's packages, changing necessary packages to create a Linux Caixa Mágica distribution. Cooker packages that should be changed will be fed to CMify (a script to patch packages to fit Caixa Mágica) and errors should be reported.

Ultimately, a web front-end should be developed to interact with the above infrastructure and the same sort of system should be applied to regular Mandriva updates also.


  • Automation of Mandriva Cooker syncing and package "CMification".
  • Automate integration of regular updates.
  • Automatically run buildbot on each package.
  • Create a front-end to monitor regular Mandriva updates.

Risk Mitigation, Monitoring and Management Plan

Risks Identified

  1. Difficulties with Linux Caixa Mágica since it's based on Mandriva and I'm used to Ubuntu;
  2. Difficulties understanding already created scripts if they're not written in sh or bash;
  3. Difficulties dealing with Mandriva updates;
  4. Difficulties with PHP to create the front-end to monitor updates.

Risk Mitigation

  1. Install Caixa Mágica in Virtual Box to start getting used to it;
  2. Learn a new scripting language if necessary;
  3. Search Google or speak to people in IRC for help on how to get updates notifications;
  4. Get a PHP book or PHP tutorials.

Risk Monitoring

For all identified risks, daily check if progress was made on each task.

Risk Management

  1. Start working daily in a Caixa Mágica box;
  2. Ask for help on that language from one of the colleagues;
  3. Get help from one of my colleagues;
  4. Get help from a colleague.

Mentor information


Caixa Mágica Software

Company description

Caixa Mágica is one of the open source projects with most historical background in Portugal.

Born in a college environment at ISCTE in 2000, has been growing steadily for the last eight years, supported by a set of visions, mission and values and a strategy the help maintaining the focus on open source technologies.

In 2004, a spin-off company started, being held a strong relationship with ADETTI through a contract of shared development. The company Caixa Mágica Software had positive results in 2004 and has been growing 30% each year.

Today, Caixa Mágica has 15 to 20 collaborators distributed along three main areas:

  • Product: engineering team that develops the Linux Caixa Mágica distribution.

Currently, about 900 units are sold each month, spread along online sales, store and special programs.

  • Outsourcing: projects that highly demand open source technologies and where our professionals are an added value.
  • Research: European and National projects that feed technology and competence to other business units. At the moment we have a cycle of three years from the initial research to product availability.

Added to the three main areas, Caixa Mágica has three more areas of smaller dimensions but growing: Training, Professional Services and Appliances.


Flávio Moringa

Flávio Moringa is a Technical Consultant at Caixa Mágica. At the moment he is responsible for maintaining stable versions of the Linux Caixa Mágica distribution and also develop new versions of this distribution. He is also a senior researcher at O2H lab in ADETTI, researching operating systems and security.

Trainee details


Henrique Rocha

Past experience

Has worked as a system administrator for almost three years at the Department of Computer Science at the Faculty of Sciences of the University of Lisbon.
Also worked at Nokia Siemens Networks developing the installer for the IPTV solution of this company which consisted of a Solaris 10 JumpStart based DVD customized with shell and Perl scripts.
Worked as a junior researcher at his faculty developing a compiler for a functional and an imperative language for a multi-threaded assembly language.
For half a year worked as a consultant for Novabase Consulting developing .NET 1.0 and 2.0 applications using C# and both in Visual Studio 2003 and 2005.

Current situation

Working as a mentor for one year at the Faculty of Sciences of the University of Lisbon, teaching introdutory C programming and data structures and algorithms, also in C.
Also finishing his degree in Informatics Engineering at FCUL.

Development process used

Hopefully, the following processes will be used to develop this project:

Motivation for the project

Since Linux Caixa Mágica is based on Mandriva Linux, the easier it is for us to make the necessary changes to turn a Mandriva system into Caixa Mágica the better. The more we can automate the process of being current with Mandriva updates on our distribution will be a benefit to our users.

As with all Linux distributions, a lot of the work is done by the community. The ability for someone to submit improvements to Caixa Mágica is of major value to us, so, improving this workflow will hopefully help us to improve our distribution faster.

Project documentation

Deployment instructions.


Last modified 10 years ago Last modified on Sep 24, 2010, 10:13:48 AM