diff --git a/articles/Is Gentoo a waste of time.md b/articles/Is Gentoo a waste of time.md new file mode 100644 index 0000000..ffeabfd --- /dev/null +++ b/articles/Is Gentoo a waste of time.md @@ -0,0 +1,99 @@ +I can't believe I've had a blog for as long as I have, and still haven't +talked about Gentoo. So here goes. + +A few days ago I uploaded a video where I showed off Geometry Dash running +on Gentoo Linux with a tiling window manager. The result of course is that +a window that you normally cannot freely resize can be resized to any size +you want. On that video I got a few comments asking me about Gentoo though, +and whether it's worth it or not, so today I want to talk about it. + +## What is a source based distribution? + +First of all, most GNU/Linux distros are binary based, meaning they have a +package manager that connects to a server hosting prebuilt binaries of +the requested software. Arch, Debian, Fedora, Void are all examples of +distros that distribute their packages primarily using prebuilt binaries. + +On the other hand, source based distros have a package manager that (usually) +connects to a server, downloads the source code directly from the developer +and compiles it on the user's machine automatically. As you might imagine, +this approach means installing programs will take a lot longer, but it +comes with several benefits + +## Why use a source based distro then? + +The most obvious benefit is that when you compile it yourself, you can +alter the way the package is compiled to fit specifically your computer. +Package maintainers don't have the time to compile packages for every +possible computer out there, that's just unreasonable. But when you compile +your own packages, you only need to support *your* computer, or the +computer you're building packages for. This comes with benefits such as: + +- Faster and smaller binaries +- Better battery life + +In the case of Gentoo for instance, you can set USE flags for packages which +essentially means you can disable features you do not use. This contributes +to what I mentioned above. + +Using a source based distro like Gentoo also makes you a better GNU/Linux +user. Some distros like Arch Linux don't ship a lot of packages by default, +but do have wrapper scripts and MANY meta packages, so in the end you don't +learn as much as you would if you manually installed everything. + +For instance, If you install Gentoo, and you use a custom kernel configuration, +learn USE flags and compiler optimization, you're going to learn more +about the kernel, you're going to learn how a GNU/Linux system works +and how one is built, how compilers and compiler flags work, and so on. +Learning is never a bad thing, so why wouldn't you want to learn about your +distro while you're using it? + +I should also note that Gentoo in particular has BOTH Debian like stable +packaging and the bleeding-edge Arch packages. In fact, Gentoo has even +newer packages than Arch because you can compile straight from Git. If +you are a developer, I'm sure you can see how this is incredibly useful. +The best part though, is how you can install any specific version (provided +the ebuild is available) so if you want to have stable packaging but the latest +version of a specific program, you can do that. + +## Alright, but what about compile times? + +Many new Gentoo users get scared away by people on the Gentoo forums or +other places telling them that compile times are long and it's going to take +several days to get up and running. This is not true for most people. + +A decade ago when we had much older hardware compile times could be a problem +and installing a simple program could take hours if not days. Most people +have modern multithreaded processors now and a lot of RAM, so compiling +programs really will not take that long. I'd say, if you have an 8 thread +processor and 16 gigabytes of RAM or more, you should have no problems +running Gentoo and compiling programs quickly. You can always do it with +less, but the more threads and RAM you have the quicker you're going to +compile programs. + +When you're using Gentoo, you're natually going to move from bloated software +to more minimal software, because of the aforementioned compile times. +So it changes you in a good way and keeps your minimalism in check. +Even if you're using GNOME and bloated programs, it's not going to be that +bad. It's also worth noting that although I'm not a fan of Flatpaks, they're +certainly an option on Gentoo, and may prove useful if some packages are +broken or you don't want to compile some packages. + +There are some packages that will take a long time to compile even on +high-end hardware. Programs such as Clang, Chromium, Electron, Rust, +among others. But for these there are often binaries available, and +when there aren't any, you can often find binary packages on overlays +(repositories operated by Gentoo users). + +## Should you use Gentoo? + +It depends, but Gentoo can work for (almost) everyone, provided the compile +times are tolerable. Gentoo is great if you want to optimize your system +and get every last performance out of it. Gentoo is also great if you want +the absolute latest packages. Gentoo is great if you want the most stable +system, in fact KickassTorrents was run on Gentoo Linux servers. Gentoo is +great for minimalists, because of all its USE flags and options. Gentoo is +great as a learning tool, too. In my opinion, it is as close as you can +get to a perfect GNU/Linux distro, if you overlook the compile times. + +That's it for today, have a good day! diff --git a/articles/Is Gentoo a waste of time.md.date b/articles/Is Gentoo a waste of time.md.date new file mode 100644 index 0000000..3b7eefb --- /dev/null +++ b/articles/Is Gentoo a waste of time.md.date @@ -0,0 +1 @@ +2023-09-11 diff --git a/articles/Is Gentoo a waste of time.md.title b/articles/Is Gentoo a waste of time.md.title new file mode 100644 index 0000000..a292aa5 --- /dev/null +++ b/articles/Is Gentoo a waste of time.md.title @@ -0,0 +1 @@ +Is Gentoo a waste of time?