Have you ever thought of starting your own Linux distribution? Perhaps you’ve spotted a need in the Linux ecosystem, or perhaps you feel as if the years of tweaks and customizations you’ve put into your personal OS installation would be ideal for others.
Whatever the reason, you have a distribution or an idea for a distribution that you’d like people to know about and use.
Many Linux users have had these thoughts. And while many take the plunge and release a distro into the wild, most who do fail in such a competitive market. But is it better to fail than to never try at all? Or succeed at the risk of detracting from existing distros?
I’ve expanded these questions through a modified section of Hamlet’s famous soliloquy:
To distro, or not to distro: things to consider:
Whether ’tis nobler in the mind to suffer
The lag and design of outrageous desktops,
Or to take arms against a sea of systems,
And by opposing end them? To fork: to create.
Cheesy? Perhaps. But it makes for a catchy title.
Even if you’ve got your heart set on releasing a distro to the public, there are a few things you should consider before pursuing the venture.
Will It Create Value?
I’m writing this post with the assumption that you’re looking to ship a distro for mass adoption rather than being specific to a certain organization or facility.
With that in mind, there are already hundreds of actively maintained Linux distros out there serving hundreds of different needs. Where would your distro fit in? What is your product positioning?
Perhaps the need you are attempting to fill is already being filled by another team of developers? Perhaps it would make more sense to contribute upstream to an existing OS rather than compete for the same users seeking the same solution?
You want to think carefully about your value proposition and whether or not it can be accomplished by joining an already existing team.
Do You Have the Required Skillset?
Most Linux users can take on an existing and functional distro, add a few unmodified programs and themes or some very specific modifications, then package and market it using the generic adage, “A simple and easy to use distro for everyone.”
If your distro is really bringing something to the table then there’s going to be code involved.
If you can’t write code of the caliber to ship on an OS that’s okay. When I started VeltOS I wouldn’t have trusted my code to be run on a toaster, let alone something people used on a daily basis.
So instead of shipping sub-par code or not building a code base at all, I recruited a colleague who could actually write solid C language.
Programming skills are just the beginning, though (tip of the iceberg if you may). If your distro gains even a modicum of recognition and users then you’ll need to have skills in community management/development, marketing, and public relations. Once again, if you struggle with a skillset you should bring in others to fill in for what you lack.
Do You Have the Time?
One of the largest reasons distros fail is because the original founder finds that they no longer have the time to invest in what is often a side project. Just because you have the spare time now doesn’t mean you’ll have that time later.
If you’re a college student with time to kill over summer break that doesn’t mean you should execute on your Linux distro idea. When the next semester starts you might have to leave your user base hanging without updates and support.
If you know you’ll always have the time to stay on top of things, then have at it. If you aren’t certain then you’ll have to either put your distro idea on the back burner or accept the inevitability of having to delegate responsibility to another team member down the road.
All of this boils down to two questions:
- Are you creating open source innovation or open source noise?
- If it’s innovation, do you have the skills and time to execute on your idea? If not, can others?