Incus Project Affected by LXD’s Shift to AGPLv3 License

Incus, a fork of LXD affected by Canonical's licensing shift, stops including changes from LXD to avoid mixed license issues.

Incus project, a fork of LXD container and virtual machine manager, emerged this year in August as a response to Canonical’s takeover of LXD. Beyond new features, the latest LXD 5.20 release also introduced a significant transition: it shifted from the existing Apache2 license to AGPLv3.

Canonical has decided to change the default contributions to the LXD project to AGPLv3 to align with our standard license for server-side code. All Canonical contributions have been relicensed and are now under AGPLv3. Going forward, any contribution to LXD will be made under AGPLv3 by default. 

However, this move presents significant challenges for the Incus project. But before proceeding further, since they are both open-source licenses, it’s essential to clarify their main differences for our audience.

The AGPLv3 is a strong copyleft license. If you modify and then distribute a program or run a modified version on a server, you must release the entire source code under the AGPLv3. This is designed to ensure that all users can benefit from modifications, even when the software is run as a service over a network.

At the same time, Apache2 is a more permissive open-source license in that you can use, modify, and distribute the licensed software without the requirement to release your modifications under the same license. So, it’s favored for its ability to integrate into proprietary and open-source projects without the strong copyleft requirements.

Impact of the Revised LXD License Policy

The shift in LXD’s license policy from Apache2 to AGPLv3 for the end user has little to no impact. The software remains open-source and freely available to everyone. However, this doesn’t apply if you develop and distribute software that incorporates LXD to others.

As we already mentioned, the AGPLv3 license has stricter requirements compared to Apache2, especially in terms of sharing modifications and derivative works. Companies and developers unwilling to comply with these requirements may need to reconsider using LXD or look for alternatives.

At the same time, the shift of LXD to AGPLv3 raises several uncertainties regarding the future of the Incus project. Primarily, the prior cooperation and mutual contributions between LXD and Incus seem over.

Incus intends to stick firmly to its current licensing policy relying on Apache2, making it virtually impossible to use source code from a project protected and licensed under AGPLv3.

On the other hand, the LXD project cannot continue to rely on fixes brought in by Incus, as the mix of different license policies creates significant legal challenges. As a result, the differences and incompatibilities between the two projects will only grow from here.

Last but not least, introducing the Canonical CLA (Contributor License Agreement) further adds a layer of complexity to contributing to the LXD project. Contributors will now have to agree to the terms of this CLA, which typically includes provisions that grant the project maintainer certain rights to the contributed code.

Overall, the circumstances are complex and without an obvious resolution. Viewed by some as an intentional move by Canonical against the Incus project, the switch in LXD’s licensing policy was surprising and unexpected. So, we will keep a close eye on how this situation unfolds.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Think You're an Ubuntu Expert? Let's Find Out!

Put your knowledge to the test in our lightning-fast Ubuntu quiz!
Ten questions to challenge yourself to see if you're a Linux legend or just a penguin in the making.

1 / 10

Ubuntu is an ancient African word that means:

2 / 10

Who is the Ubuntu's founder?

3 / 10

What year was the first official Ubuntu release?

4 / 10

What does the Ubuntu logo symbolize?

5 / 10

What package format does Ubuntu use for installing software?

6 / 10

When are Ubuntu's LTS versions released?

7 / 10

What is Unity?

8 / 10

What are Ubuntu versions named after?

9 / 10

What's Ubuntu Core?

10 / 10

Which Ubuntu version is Snap introduced?

The average score is 68%