With the prospect of college coming, I have been dreaming of big dreams and ambitions.
For now, I’m simply using a variety of Linux distributions for daily tasks(currently on EOS and Fedora), and I’m studying Python and slowly working my way to c, rust, etc.
There are many resources on how to develop software FOR Linux or for the Kernel itself. I want to become a distro maintainer and developer for existing distros or for my own one, which I assume is a bit different from the two above.
Sadly, there does not seem to be much information about becoming a maintainer/developer. I’m not sure where to start. From my experience, I learn quicker when I know what steps I should take, and right now, I might as well be shooting myself in the dark.
If there is any advice you guys can give me, I would greatly appreciate it.
“How to become a distro maintainer” is a big question and not one that is easy to answer. It normally starts with wanting to understand how the distro is put together, testing packages, maintaining packages, then developing your own particular vision and deciding whether to derive your packages from an existing distro, or bootstrap everything from scratch.
A hit to reality is really all I need. I just need something to work on. Or an indication to know that I’m doing something. After that, I can start branching out.
So for now, I’ll keep on with software engineering, some business, and design courses here and there, and just going ham on the individual packages(DE, GNU, Bootloader, PulseAudio etc) that make up a full Linux distro.
These are AUR packages that don’t have a maintainer but have been flagged out-of-date (which normally indicates someone is still using it). The search above is sorted by votes so gives an idea of the popularity of the package.
AUR package maintenance is a good view into the sort of thing involved in maintaining a distribution.
It depends on the distro. They all have a different process for contributors. In some cases like Fedora there is a formal documented process. In other cases, you can just look at their source repo and issue list and start submitting PRs/MRs. There are also some distros which have a core team and don’t welcome outside contributions.
A good place to start is by getting involved in the testing process. Almost every distro will welcome testers. Another option is packaging. Packaging is time consuming and can usually be done by anyone at some level.
It really depends what you want to do here. If you want to make a derivative distro, it really isn’t that hard to get started. There is probably not going to a manual for you but essentially all you have to do is spin a copy of the distro with your own branding. How hard or easy it will be to maintain is directly related to how far you diverge from the source distro.
If you want to build your own distro from the ground up, that is much more work. A good place to start might be Linux from Scratch. It will give you an idea of what all the components of Linux are and how to pull them together.
Different Distros doing the same thing over and over also…like starting to build a community, creating a design, installer … we need to work together in all matters, /me see some changes but /me would love to see working together on a way to create an open installer framework where you as the user can start creating your Desktop, instead of 100 Distros try to create the “everyone’s darling Desktop” experience… creating tools to make hardware configuration easy to handle is something every Distro needs but if all working together we could get a tool solid and tested by thousands of users, working on every arch-based Distro.
But yea it is hard to get us all together, and again I think this is what open source is about
I see also that currently a new generation of Distros starting to find themselves, and we already open to communicate and help interdistriplinary wordcreation
For what it is worth. Put this on hold, because about half way through your freshman year at college you will realize there just isn’t enough time to do justice to both your studies and this project you are planning. Your studies are far more important and have a much longer impact on your life than a side project.
Patience is a virtue, but sometimes hard to come by.
I think this is where there is a massive opportunity in the Arch ecosystem. There are several new Arch derivatives that have specific focus, so rather than “competing” they should be collaborating. Take the best parts from each and share them, but keep to their original focus rather than knowingly creating an overlap.
For example, Garuda doesn’t want to have a “vanilla” online installer, but EnOS does. EnOS focusses mainly on Xfce, Garuda mainly on KDE and GNOME.
Different projects with different focus, but they should be able to complement each other, and keep drawing more interest into the wider Arch ecosystem which can only strengthen Arch as a whole.
Cannot get closer to the truth
I was working on a simple android application. I built the core features and UI, after which I suspended the project for a while. Uni was supposed to be fun, but a months and half into my first semester, I realize I’m running behind the syllabus. I have my mid-sem exams in a week and zero chapters studied. The only subject I hope to pass (and top at) is Computer Programming. Other 4 subjects are totally uncertain.
For starters, you should install linux from scratch and beyond linux from scratch and come here and show us your bragging rights if you wish for us all to take that question seriously.
OR as a warm up before doing that
install obarun linux from the live usb then after completing that install, remove sddm as the login manager and replace it with lightdm and enable autologin and after you solved the problem of how to get lightdm working I might at least take your question seriously.