DEV Community

Yappaholic The Junior
Yappaholic The Junior

Posted on

1

The wicked path of independent Linux Distro

Preface

Some time ago I wrote a post about Helix editor and questioned it existence. Since then I learned a lot(at least what Kakoune is) and started to grasp more about linux and why it is awesome (i.e. started distrohopping).

Anyone with enough Linux experience will tell you that to be a real Linux user You need to pick the MOST niche distro possible, and the less actual features you get from it the better. That's why I, as a real embodiment of SoyDev GigaChad, decided to move to NixOS and Gentoo, last being more preferred.

But at some point I encouraged myself to look up the source code for Portage, the Gentoo package manager. And lo and behold, almost everything is Python code. The view of it filled me with the rage of thousand suns and from that point all I thought about is making me own distro. So ladies and gentelmen, I am showing you

The Cave Linux

Cave Linux logo

Imagine that the logo is finished... just as the other part of distro ;)

So, lets get it clear about what is what. The Cave Linux is going to be an independable meta Linux distribution powered by Zig with fast package manager called Grit. Grit is supposed to be blazingly fast, with minimal to zero headache on configuring and with nice CLI experience.

The big benefit of having Zig is that it ships with LLVM C and C++ compiler, which means that
a: No need to compile compiler, which takes eternity
b: Almost everything can be built using Zig only and not relying on GCC/Clang

Right now the path is hard, because to build the package manager from scratch one should use a lot of time and patience(and make a scripting language at some point).

But why not use Python/Nix/Bash/XYZ language?

The reasons for that are simple, really:

  1. I don't want to build another nix wrapper, because anyone can get fresh Linux From Scratch build, slap nix on top and voila, distro is ready!
  2. No python because I think there should be less need for system resources from the package manager itself, especially on slower hardware.
  3. As one great 10x developer said "If you get to the point of writing for loops in Bash, you are doing something wrong with your life".
  4. And not others because most of them are stinky for me (especially C/C++ or God forbid Rust).

But why make another distro?

Well, why not? At the end of the day, the amount of raw experience you get from making something like this is IMMENSE(making your own config language, parser, transpiler, database, installer, package manager and shipping it all within one tarball). Also because

F##K IT WE BALL

So what are the future goals?

Right now the most important things for this project are:

  1. Try and build whole Linux with just Zig.
  2. Write my own scripting language which will then build the package.
  3. Make a site for the documentation and quirks of the distro(probably going to use functional language for that).
  4. Pack everything in a tarball an let others try it out.
  5. ??? PROFIT!!!

Now, if you got somewhat interested or if your body is trembling in front of my personal Frankestein, I suggest you check my repository, when I try to make Grit a real thing to use. And thank you for your time reading this!

Billboard image

The fastest way to detect downtimes

Join Vercel, CrowdStrike, and thousands of other teams that trust Checkly to streamline monitoring.

Get started now

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay