Carbs Linux - a simple busybox linux distribution
Date: May 08 2020
Since I have forked KISS, I have received many questions that can be summarized as “Why?”. I have realized that I never truly answered this question. That’s the reason I am writing this post, to give some background on Carbs, and some differences between KISS Linux and Carbs Linux for anyone who may be wondering. Perhaps I could make this a “FAQ” page later on.
I had the idea of creating my own Linux distribution since the May of 2019. Back then, I had my own Linux from Scratch build, and I wanted to slim it down my own way and replace the software (with musl,sbase,etc.). The name Carbs Linux was in my mind since then. I wanted to write my own package manager, but I wasn’t satisfied with anything I had built.
I had written some incomplete package managers (all named
and I quickly threw them into the trash can, where they
honestly belonged. I would want to share them with you for
laughs, but my hard-drive got wiped and I have a problem
of not doing an “initial commit” until a program I write
is in a usable state.
I have obtained the ‘carbslinux.org’ domain name in September 2019, but then life got on the way, and I stopped for a long time.
One day on Reddit, I saw Dylan’s post on r/unixporn about KISS, and I really thought that it was interesting. Here is my comment to Dylan on that post. I checked out the package manager and the repository. The packaging system was extremely clean and well-thought. I decided to give it a go and fork KISS.
Now, I still baffle when people ask me this question. My intention was never to create a distribution with specific differences between KISS. My intention was being my own BDFL of a distribution I maintain. There are lots of differences between the main repositories, but they are subtle and not worth talking about. I personally never even installed KISS Linux on my system. So Carbs, isn’t something like a downstream fork of KISS, it is just a distribution that was initially based on KISS.
I try to contribute as much as I can to KISS Linux. I think that it is a brilliant distribution, and it was a great starting point for Carbs. I am really grateful to Dylan and all the other contributors.
Currently I have a few projects that I’m working on for Carbs. These are,
A BSD port for Carbs. For a while, I have been working on BSD compatibility on my fork of the package manager. I have tested, without any more issues, on OpenBSD and FreeBSD. The biggest issues remaining are choosing a vendor for BSD, packaging the BSD source, and providing a minimal base (like busybox for BSD). If you aren’t familiar with BSD, it has a single source code for all of the utilities (kernel, command line programs, etc.). Contributions (even chipping in ideas) are very welcome.
Adding binary package distribution support natively to the package manager. Biggest issue in small/old computers are compile times. This feature is for the bigger packages such as webkit, clang, llvm that take a considerable amount of time. Some computers with low memories cannot even compile firefox/webkit.
Adding rsync repository support to the package manager. This is not a current issue, but rather a futureproofing. As time passes, distribution repositories grow larger. KISS and Carbs are young distributions without this problem right now. But in something like 5 years, this size will presumably increase to hundreds of megabytes. At that point it will be pointless to have the repository sources unless you specifically need them.
If you have ever checked the repository, you may have noticed
that there are lots of init/service related packages. I have had
my fair share of time with all of them, and it is an area that I
am really interested in. I have even written my own init daemon
and service supervisor. I maintain all those packages on KISS
Community Repository as well with the exception of busybox. Those
sysmgr. I would
definitely recommend checking out
There are a couple of reasons I don’t publicize Carbs a lot.
KISS is the better alternative in terms of support and community. I work on maintaining this distribution just as hard as Dylan, but in the end, Carbs is based on his original hard work, and I believe that he deserves the recognition more than I do.
Since I cannot answer questions like “What is the difference?”, I prefer staying as the silent sibling project of KISS Linux. Plus, there is no point in dividing the newly-emerging community in half.
That’s not because I don’t have ideas for the future of Carbs, I do. I just think that I will deserve the recognition once those above lists are checked.
I think that’s about it, if you have questions you can send me a
mail, ping me on IRC (my handle is
merakor), and I will be happy
to answer. Maybe your question fits this post, and I can update it
to thoroughly give an explanation.
Cheers, CemView Page Source