Ubuntu One file syncing code Open Sourced

Canonical

on 10 August 2015

dUntitled-1

Today, we’re happy to be open sourcing the biggest piece of our Ubuntu One file syncing service.

The code we’re releasing is the server side of what desktop clients connected to when syncing local or remote changes.

This is code where most of the innovation and hard work went throughout the years, where we faced most of the scaling challenges and the basis on which other components were built upon.

We have released it under a AGPLv3 license and hoping it’s useful for developers to read through, fork into their own projects or pick out useful bits and pieces.

You can get the source code here: https://launchpad.net/filesync-server

FAQ

Cool! How do I start?

We put together a readme file that explains how to start a server and client.

Why won’t the client from the archive work?

The client from the archive required both SSO and pointed to a specific URL. We have made small changes to the client so it’s easy to set up and running against the server. There are no substantial differences from the client in the archives.

Why did it take so long to release?

Our engineering team was tasked with supporting the release of the phone and then the now announced Snappy project. The team cared deeply about open sourcing this code and spent time wherever they could spare in moving it forward, cleaning up the code so it would work enough outside of the very specific production environment and untangle it of some commercial code that was used at some point.

What else is left to release?

The bulk of what’s left is the code related to the website, REST APIs, contacts and music streaming.

When will you release it?

We will continue to work on preparing the code to release, but don’t have dates at this time. We continue to be committed to releasing all the code for the file syncing service.

Why AGPLv3?

We typically choose GPL and associated licenses for code that Canonical writes because we think the GPL provides the most freedoms for its users.

Do I have to sign a contributor agreement to modify the code?

No. This is no longer an active project, we are providing the code for public to read and use on their own.

Will you take patches?

In general, no. We won’t have anybody assigned to reviewing and accepting code. We’d encourage interested maintainers to fork the code and build out a community around it.

Can I fork this and start my own project?

Absolutely.

Ubuntu desktop

Learn how the Ubuntu desktop operating system powers millions of PCs and laptops around the world.

Newsletter signup

Select topics you’re
interested in

In submitting this form, I confirm that I have read and agree to Canonical’s Privacy Notice and Privacy Policy.

Related posts

The 10 new rules of open source infrastructure

Recently, I gave a keynote at the Cloud Native / OpenStack Days in Tokyo titled “the ten new rules of open source infrastructure”. It was well received and...

Handy snapcraft features: Remote build

As you probably know, there are many ways you can build snaps: locally using snapcraft, with CI systems like Travis, through Launchpad, and also via the free...

The future of mobile connectivity

Mobile operators face a range of challenges today from saturation, competition and regulation – all of which are having a negative impact on revenues. The...