Version 114 (modified by raimue (Rainer Müller), 12 years ago) (diff)

List projects

Google Summer of Code 2009

This is the main tracking page for MacPorts' Google Summer of Code.

No image "gsoc-2009-logo.png" attached to SummerOfCode

Information about the past years can be found at SummerOfCodeArchive.

Projects 2009

The following students have been accepted for this year:

Applications for SoC

General Info

Applications must be done online, on the Google SoC website. You will find more information on their page on Advice for Students. Student applications must be submitted by April 3, 19:00 UTC. The official timeline should be consulted for the other dates.

There are several things to consider. We are willing to support and mentor students who want to gain an experience by working on The MacPorts Project. We have many ideas for potential internship subjects, yet we are open to anything that is both interesting and relevant to MacPorts. Motivated students do not necessarily need to know Tcl language beforehand, especially if they already know several script languages such as Python, Ruby, PHP or Perl.

For the MacPorts project

The best way to apply is to first make contact with us, either by sending a mail to the MacPorts developer mailing list, to the potential mentors listed below, or to IRC members on #macports on FreeNode.

What we expect from students for their applications:

  • Write your own abstract and proposal, copying text from this idea page is not enough
  • Get familiar with the MacPorts project resources. Especially check out the code and read the guide.
  • Read the Tcl Tutorial
  • Subscribe to the mailing lists macports-dev and macports-users if you do not already read them. Don't be too shy to post.
  • Get in contact! Discuss your contribution ideas with potential mentors by e-mail, on the MacPorts development list or the IRC channel before applying.


The following committers have agreed to be mentors for SoC 2009 (append for e-mail)

Name Area Email
George Armah GUI, Framework armahg
James Berry MPWA jberry
Bryan Blackburn Logging, self-management, general blb
Jeremy Lavergne Helping hand snc
Perry Lee? Co-mentoring perry
Rainer Mueller Administrator, config files, rev-upgrade, depcheck raimue


This is a list of some potential tasks that student SoC members could undertake. These are just ideas, and while they express our current concerns, we are open to blue-sky projects related to MacPorts.

Please note that this list is absolutely not exclusive! If you have any idea about what you want to see improved in MacPorts, you are free to propose this as your own project. In any case, we recommend to talk to mentors before writing your application.

Core Tasks


This task consists of implementing a new dependencies engine for MacPorts. The current dependency engine properly deals with installing packages, but it does not deal satisfactorily with dependencies on variants (and versions), uninstalling and upgrading. This very challenging task requires a complete formalization of the use cases (installation, upgrade, uninstallation) and of the user needs before any implementation, as well as a deep understanding of the dependency relations (required for f