15
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
this post was submitted on 30 Jun 2023
15 points (94.1% liked)
Linux
48008 readers
869 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
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
I don't know if you've used Emacs, but NixOS almost feels to Linux how Doom Emacs is to GNU/Emacs. Not including all the benefits like reproducability, it feels like a reliable framework placed on top of Linux in the same was Doom Emacs is a framework on top of Emacs.
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.