this post was submitted on 14 May 2023
28 points (100.0% liked)
Linux
48141 readers
569 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
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Everything NixOS (https://nixos.org) does. I am 99% sure that if anyone tries it out and gets comfortable with it they will never change again.
I am probably missing other nice things, but those are awesome already. It's true that the learning curve it a bit steeper than usual, but there is no distro quite like it and even for non coders you can get a lot out of it.
Nix has been on my mind for a while, but I've been hesitant to go all in. Unfortunately, messing around a bit with VMs I still don't feel like I have a good handle on how it all works.
One question I'd ask you is how much upfront work it is to get, say, a stable setup for a laptop where all of the little things are working (opening/closing the lid, connecting to external screen, switching audio outputs, media keys. Laptop stuff!)
As context, a long time ago I ran Gentoo and later Arch, so I'm not technically clueless, but eventually decided to switch to easier distros that came with a reasonable system defaults that works out of the box. I'm super interested in NixOS for all the reasons you mentioned, but worried about how time I'll end up spending just getting that config file to where I want it!
The stable setup on the laptop you can get by using a DE like Gnome that comes with batteries included. If you go for more minimal setups like a window manager it will take quite a bit longer. NixOS as a distribution is pretty easy to get running, if you are familiar with the desktop environment that you install in your system getting it setup is much much simpler than doing so in other distros like Arch, since it usually consists of adding a line like
desktopEnvironment.gnome.enable = true
to your config and the system takes care of almost everything. I even think that gnome gets installed by default on the first run.Thanks! I ended up messing with Nixos a bunch in the past few weeks. My impression is generally positive, though while many of the things it does are very elegant (like the gnome example you mentioned), a lot of it also seems a bit hacky. Ultimately, figuring out how to declaratively configure specific things seems to take so much more time than my current approach of a written document detailing the steps of setting up my system.
I'm going to keep tinkering in a VM though, and maybe I'll have a breakthrough. Keeping configs working across two computers especially is tempting (read: an excuse to get a second computer).
One last question - one of the things I worked on was Firefox with home manager. How did you get it set up so bookmarks were included in the config?
When you set a FF profile there is a key called
bookmarks
. You can set them there:You can always look at the home manager reference, I usually look here.
undefined> Your configuration is written in code, it is therefore persistent. Do you know that annoying feeling of “oh shit, how did I configure x program that I want to install on this other machine”? Never again.
This is sick! thank you!
@lhotze @Owell1984 This singlehandedly makes me want to switch off Ubuntu.
It's quite reasonable to switch to Guix, as it too is "a functional distro".
I recently tried NixOS and was considering Guix as well, however what made me decide on NixOS was the fact that it doesn't restrict you to free packages by the distro default choice.
Does Guix have an equivalent to flakes or does it even need one? I never looked closer into the design.