July 4, 2016

Releasing our own source code, Free as in Freedom

Today we release all of our own source code as Free/Open Source Software.

As we’re posting this, our fellow engineer Nicolas “olasd” Dandrimont is addressing the DebConf16 attendees with the first technical talk about Software Heritage since we went public. You can find more information about the talk on the event page as well as watch it live. To accompany the talk today we also release all our own source code, i.e., the software we develop ourselves to pursue the Software Heritage mission, as Free/Open Source Software (FOSS).

Our team is full of long time Free Software activists and developers. As such it is very clear to us that we cannot succeed at our ambitious goals alone; we need to collaborate technically with all like-minded people and talent out there. Releasing all our work as FOSS is a requirement to do so. It is also clear to us that whenever greater goods are at stake, transparency is of paramount importance. We believe that preserving the Software Commons of humanity is one such greater good and therefore we want to operate in a way that is as technically transparent as possible. Releasing all our software as FOSS is a first required step to that end too.

We are deeply indebted to the Debian community — our infrastructure run on Debian, we are all Debian users, and many of us are Debian contributors, developers, or former leaders. We have timed our source code release with olasd’s talk at DebConf16 today as a small token of gratitude for the work of the Debian community, which we daily rely upon.

We are committed to software freedom and we would like to work with players of the FOSS ecosystem of all stripes. That’s why today we are also calling for your help to develop Software Heritage. You know the drill: we welcome your feedback, bug reports, and of course patches! Here are the practical information you’ll need to get started:

In terms of initial community ground rules:

  • We like copyleft; our licenses of choice are GPL3+ and AGPL3+. We make different choices only when that is needed to avoid drifting from the practices of specific software ecosystems (e.g., we release under Apache2 our Puppet modules)
  • We want to build a welcoming and diverse community, so whereas we do not have published a CoC (yet!) we will not tolerate misconduct of any kind

As a parting note: please bear with us in this initial phase. We are a small team and it might happen that in the beginning it will take a while for us to get back to your bug reports, comments, or patches. But we promise you that we will get there, and hopefully together we will grow a larger and productive Software Heritage development community.

What are you waiting for? Dive into the code!