Building a modular Linux OS

with multiple versions of components on different lifecycles.

Read the Docs

Modularity is dead, long live Modularity

We have changed our plan and decided for a more iterative, hybrid approach. We are still finishing the details of the new hybrid architecture that will allow packagers to opt-in only when they want to while keeping all content available for users.

Learn more

Moving focus from packages to components

Modularity splits the Linux distribution into smaller pieces called modules.
Modules are provided in multiple streams and on independent lifecycles.

Giving users choice and packagers flexibility

Modules come in different streams with independent lifecycles.
Streams have different goals - specific version, stability, or following upstream.

Module as an ultimate build recipe

Packagers decide how to build - by defining components, build order, and buildroot.

Packagers decide what to ship - by filtering unnecessary binary packages.

Packagers decide how to use - by defining a supported API and install profiles.

Modules run almost everywhere

Each module can be built into multiple artifacts.
Containers for clouds and servers, flatpaks* for desktop, RPMs for tradition.

* Flatpaks are more future than the other two, but on the list!

Follow our progress

We post regular updates to our Fedora Modularity YouTube Channel.

Watch our videos

Get in touch!

Come to our regular meeting, ask us on the mailing list, or discuss on our IRC channel.

Modularity Working Group wiki page