this post was submitted on 30 Jun 2023
19 points (100.0% liked)

Linux

1259 readers
44 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Okay, so hear me out...

My interest was piqued when I started knowing more and more about NixOS from the recent "I use NixOS btw" wave everywhere. The main selling point for me was the one config file to rule them all. I have always wanted something like that on Arch. And here it is with a dose of immutability, and extra stability in the form atomic updates and whatnot. You also had the option of turning it to a rolling release model; that's awesome! What's not to love then?

So, I kept reading even further about NixOS. I got to learn about how the Linux root structure is almost completely different. Building packages from the source follows a completely different procedure. Configuring anything in your system will rely on the main config file, instead of executing the standard terminal command, or editing their respective config file. The list goes on...

I understand that all of this is done by design. They are not flaws, per se. Rather the means to facilitate the philosophy that every NixOS user is after. However, that also does not mean it is inherently flawless in the grand scheme of the entire ecosystem. I personally love Linux, and would always want to grow with my knowledge in how I handle and get things done in it. Wouldn't me disconnecting away from that, in favour of the NixOS' arcane methods, just hurt my progression in my Linux learning journey?

This is a genuine question, of course. I have been thinking about this for a few days now, unsure of whether I should change course and get into it or not. I also do not have the time to use other distros aside from what I mainly install; I would be all in. So, what do you all think?

you are viewing a single comment's thread
view the rest of the comments
[–] Shareni@programming.dev 1 points 1 year ago

Doom to vanilla Emacs is closer to what Arco is to Arch. Gets you off the ground qucikly, has some opinionated configs, and lets you try out a bunch of stuff before moving to your own config. You still install and configure packages in almost the same way, but there's a macro layer in front of those functions. It's still the same editor with the same goals.

Nix/guix have different goals than other distros, and so they do things a lot differently. That difference is usually the complete opposite of what Doom is trying to do as it makes the average person's life harder and the expert's easier in specific scenarios. For example:

You want to use a programming language with up to date libraries?

Normal distro: use the language's package manager, install shit, get to work

Nix/Guix:

a) download the package from the repo, if it's a year out of date, it's time for you to learn how to write packages. Write a package for every library you need, and then maintain them

b) run your shell in a containerised environment that's simulating fhs, pray that it actually works, and then slap your ide on top

A) is amazing for software companies because of reproducibility and precision, and because companies have enough devs that writing and maintaining packages is a minor investment unless you're using Js. On the other hand, a random dude trying to code is going to have a much easier time using a one liner to install the newest version of the package directly from the language's pm.