this post was submitted on 03 Jul 2025
178 points (96.4% liked)

Linux

56269 readers
831 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 6 years ago
MODERATORS
(page 2) 50 comments
sorted by: hot top controversial new old
[–] [email protected] 7 points 1 week ago (3 children)

NixOS sounds like ansible in OS form and that has never seemed appealing. Happy to hear why my impression is wrong though!

load more comments (3 replies)
[–] [email protected] 31 points 1 week ago* (last edited 5 days ago) (15 children)

I've been stuck on Nix for two weeks because I thought it would be a good idea to put a distro I had never used but that wouldn't break on my backup laptop in case my main one ever broke. I just couldn't force myself to install debian, not that I have anything against debian, it's just... kinda boring, while Nix seemed very interesting. IT SEEMED LIKE A GOOD IDEA AT THE TIME I SWEAR.

Guess what happened... I broke Arch. Then I reinstalled and the next day the laptop broke. Then the next day I tried to get my data back and the hard drive broke. So, backup laptop with Nix for two weeks...

  • I really really really like the declarative stuff. Installing packages through config files is so nice I'll never lose track of what I've installed ever again 🥰 🥰 🥰 I was already using a git repo for all my config files + GNU Stow to symlink everything to its proper place, so adding the .nix configs to that setup was very easy.
  • Having a clean system on rebuild is great. No more clutter left everywhere that I don't know about, no more half broken stuff left lying around.

But...

  • It's not Arch. Not Nix's fault, but I kept hearing that it would be "like Arch but declarative"... and it's really not 😑 Everything seems over-complicated vs as simple as possible.
  • I absolutely hate the language.
  • What's with those error messages from hell???
  • And speaking of hell, every language that can't just use indentations like YAML instead of cluttering the code with {} and [] and () should have been relegated to the darkest pit of hell 20 years ago. But points to Nix for being less awful than JSON (the comma on every line but not the last thingy make me want to build a time machine to go murder the grandparents of whoever thought it was a good idea)
  • Packages are out of date even in the unstable branch (I know it's unfair since it's not trying to be a rolling release... but... but...)
  • Where are the source packages? Is that an Arch only thing? I liked having packages that automatically use the latest git commit without needing to manually install from source and manually reinstall each time I want an update like a medieval peasant... 😭
  • Nix packages are weird. Even someone who's terrible at coding like me can read Arch PKGBUILDS... I miss you Arch 😢
  • Apps not working because of paths that don't exist on Nix... what do you mean I need to patch the package myself? 😭 But at least there's steam-run, great preserver of what's left of my sanity.
  • ~~Can't wrap my head around installing some stuff like VSCode extensions (the advice I got was "don't bother just do it imperatively...)~~ (Edit: Finally figured it out!!!)
  • Wiki is often sparse on info and not very helpful if you don't already know what you are doing (and I clearly don't 😅)
  • Hidden configs. Some stuff works on its own like pipewire even though I haven't installed or configured it (I went with a minimal install that just gave me a tty then build from there, no DE), and how it's already configured is not in the default config files. It's very confusing not knowing why some stuff works and how it's configured by default.

But it's kinda growing on me. Like mold. Or cancer. Brain cancer.

[–] [email protected] 2 points 1 week ago (3 children)

I absolutely hate the language

Check out Guix_System_Distribution, it's just like NixOS but uses a Scheme dialect which is a better language.

load more comments (3 replies)
[–] [email protected] 4 points 1 week ago* (last edited 1 week ago) (2 children)

I wonder what your thoughts on guix would be, especially considering your thoughts on the language

[–] [email protected] 2 points 1 week ago* (last edited 1 week ago)

I'm just seeing your comment after I recommended Guix, that I could read and understand Guile Scheme is what made me hop away from NixOS, the nixlang is an ungrokable mess

load more comments (1 replies)
[–] [email protected] 10 points 1 week ago (1 children)

I'm sure it'll get better once I'm more used to it, just venting a bit. Sorry for the rant

[–] [email protected] 6 points 1 week ago (1 children)

I found this very entertaining lol. And it also confirms I made the right choice not using Nix as my daily driver. This sounds like a headache.

load more comments (1 replies)
[–] [email protected] 0 points 1 week ago (1 children)
[–] [email protected] 12 points 1 week ago (1 children)

Yes emoji use is proportional to the decrease in my sanity after those two weeks

[–] [email protected] 7 points 1 week ago
load more comments (11 replies)
[–] [email protected] 2 points 1 week ago

For rollbacks, I've been using Timeshift in Mint, and it has worked brilliantly.

[–] [email protected] 1 points 1 week ago (2 children)

I wonder why nobody has created a simple gui for Nixconfig.

[–] [email protected] 1 points 1 week ago (1 children)

Someone has done just that: https://github.com/snowfallorg/nixos-conf-editor It is part of https://snowflakeos.org/, though I don't know about its developments atm.

load more comments (1 replies)
[–] [email protected] 1 points 1 week ago

Something like this is really hard to make a gui for. I suppose a GUI would only be useful for discovering config values?

Either way, a gui would likely look like YAST on OpenSuse.

[–] [email protected] 21 points 1 week ago (1 children)

Skipped to the "ugly" part of the article and I kind of agree with the language being hard?

I think a bigger problem is that it's hard to find "best practices" because information is just scattered everywhere and search engines are terrible.

Like, the language itself is fairly simple and the tutorial is good. But it's a struggle when it comes to doing things like "how do I change the source of a package", "how do I compose two modules together" and "how do I add a repo to a flake so it's visible in my config". Most of this information comes from random discourse threads where the responder assumes you have a working knowledge of the part of the codebase they're taking about.

[–] [email protected] 2 points 1 week ago

I always aim at packages and issued inside my nix config cuts all this hassle out atleast for me.. Ive got everything pretty meticulously commented and in order of boot process and in general running step by step order. I'm pretty sure I dumb monkey could figure out how it runs. I came from windows then mint then nix. To give you an idea of my PC knowledge. I think the whole point if nix is to keep the system contained and not scattered. I see many posters mentioning system scatter on nix as an issue and I have no idea how theu managed to complicate one if the simplest systems I've ever used as far as clean, tidy, goes.

[–] [email protected] 23 points 1 week ago* (last edited 1 week ago) (1 children)

Meanwhile me as a barbarian installing Debian and copying my ~/.bashrc file (and a few others) if not just remounting /home/ in the new installation every few years.

[–] [email protected] 6 points 1 week ago

One of my machines i've been just upgrading in place since debian 8. No need for new installation

Debian isn't barbaric at all.

load more comments
view more: ‹ prev next ›