What's the verdict? It seems to be gaining traction recently.
I used it once for a short while, was pretty kino. I am using Arch atm, but there are a few things about NixOS that are appealing:
>declarative config; let's me have a good overview of my system
>clean (basically reinstalling every time you update)
>can't break (no GRUB fiasco)
>package availability (I'm not touching the AUR)
>good for coders, filters normies
Thinking about going back to NixOS, should I?
NixOS
Falling into your wing while paragliding is called 'gift wrapping' and turns you into a dirt torpedo pic.twitter.com/oQFKsVISkI
— Mental Videos (@MentalVids) March 15, 2023
>What's the verdict?
It's a meme distro.
https://remy.grunblatt.org/nix-and-nixos-my-pain-points.html
Nice of them to include a drawing of their average user.
Six lambdas?
Six sigma lambdas? Whoa... Average nix users confirmed brain-endowed
Nice autism, snowflakes.
It's pretty good. I recommend using unstable. Also use flakes to build the system, worth it.
Remember to not reply to retards in this thread. You DO have LULZ-x with the ability to filter and hide post chains, right anon?
>you ARE willing to block out ideas that offend you, right?
So much for "I'm a big boy who don't need no censorship!"
redpill me on flakes. Why do I need it? Maybe I am a brainlet, but the NixOS article on flakes confuses me
It's a reference to the users of not just Nix, but Linux in general. See logo.
it's really just an abstraction for grouping together relevant software dependencies
at my last job, i would install multiple flakes into my default environment and update them independently to avoid breaking my dev environment as the rest of my system upgrades. it also let me share the majority of my config across my x86 desktop and le work mac
>it's really just an abstraction for grouping together relevant software dependencies
I'm NTA you replied to, but isn't that basically what nix-shell is for? Or would the benefit of flakes be you're installing the shell environment?
As for the OP Topic: been using nix for about 3+ months now and I'm probably never going back to another distro again. I'm not even a programmer, i just am in love with defining my system in configuration files & symlinking whatever can't be defined with home manager. Anyone who messes with a lot of dotfiles (and likes it) would benefit from trying nixos out.
>isn't that basically what nix-shell is for?
yes, but nix-shell is depreciated
>I'm probably never going back to another distro again
yea me too. nixos is too comfy to leave, which i thought i'd never say about an immutable root system
(two new troll posts, IP count stays the same. I see you retards.)
Honestly I think they really fucked up with flakes. As far as I can tell, the idea is not anything particularly ground-breaking, but they built a bunch of new, cleaner tooling around it and now a bunch of neat shit is tied up with flakes, including the new nix command. The setup is more pure and it is good for making incredibly fast devshells.
The actual idea with flakes is just an abstraction around what's already there, to replace channels.
Pretty sure they were just here to troll but for anyone actually looking to use Nix on macOS, the new Determinate Systems installer looks great.
https://determinate.systems/posts/determinate-nix-installer
Hope it can be come the default for macOS.
>two new troll posts, IP count stays the same
Bizarre, seeing that I only posted one.
Sorry, I said I'd stop trying to reason with retards.
sorry anons, i posted
and
please stop fighting and let us get along as pure-packaging UNIX frends...
>please stop fighting and let us get along
Pfft...
i mean LULZ has always been filled with unemployed inaggers. we dont have to feed them a line though
Like I said, do not reply to troll comments. They will mislead you into thinking they have something to say and they do not. Hide and move on. You can't reason someone out of being retarded.
>You can't reason someone out of being retarded
Thanks for the warning. I'll stop replying to you, now.
Flake chad reporting in. One question: is there an easier way to get an ad-hoc dev shell with flakes? You can use nix shell to get a shell with some packages in it, but only on $PATH. Pretty sure old nix-shell -p could give you a shell with native build inputs. Any way to do this with the new nix command without having to make a new flake each time?
(checked)
I don't think so. You can still have a configuration.nix and use nix-shell alongside flakes I think.
If there is a solution I'd love to hear about it.
nix develop can kinda get there with the right devShells setup, but it's a bit of an asspain
>good for coders, filters normies
Good for coders, but also bad for coders. Setting a development environment is often nontrivial and problematic.
Make a flake for each programming language you use, then copypaste it and change few things.
NixOS articles are full of meme buzzwords. You need flakes because what the official docs consider "stable" is obsolete and what it consider "unstable" (like flakes) is not obsolete. Use flakes and use home-manager.
>The documentation isn't always easy to read
The documentation is so terrible it's barely worth checking out. Just google whatever you need and try to figure what to do by grepping from nixpkgs. If you still need to design your system configuration then look at what other people do (search on github) and don't overengineer it.
Purity is overrated. Not the best selling point of NixOS imho.
Install non-guix then: https://github.com/SystemCrafters/guix-installer/releases/latest
Just use devenv.sh
These tools born and die so quickly I don't think they are really worth checking out.
dude at work introduced me to it, is good
been rocking the same install for ~2 years now with only 1 minor issue (fixed by pruning my nix store)
better than Arch, but don't expect the manjaro brainlets to tell you that
Jesus Christ. If people would get together to make a relevant distribution or collaborate with an existing one, the "Linux" world would be 10x better. This shit is just like Gentoo/Funtoo: it doesn't do anything better than other distributions, it's complicated because it is, and it serves only for mental masturbation. Go fuck yourself.
Nix is also availible for MacOS (spoiler alert: it works better than Homebrew and Macports)
>"nooo never try anything new"
>"just offer one boring experience with no creativity or innovation"
brilliant idea
Literally shut the fuck up retard. People like you are literally fucking stupider beyond belief. Ever heard the saying, "too many cooks in the kitchen?"
>What's the verdict?
Flavour of the month distro.
The best part of calling NixOS flavor of the month is that it isn't new at all. It's almost as old as Arch Linux, the project having started all the way back in 2003. I believe it was funded by research grants for a long time.
It is nice to see it finally bearing fruit though. When LULZ starts to dismiss something, that's literally the first sign it is officially relevant.
>What's the verdict?
Declarative system configuration is a great idea. You should be doing it, whether it's on a regular distro with Puppet, with NixOS, or with GuixSD.
Nix is a good idea too but it can still have some rough edges. The documentation isn't always easy to read and it's not always obvious what's the best way to do something. If you can handle Mint or Debian at most, you may want to stay away for now. If you can handle Arch or Gentoo, you should be OK.
Flakes is ok, but guix is much better from a purity test standpoint. A lot of shit in nixpkgs is binary dogshit that gets elf patched at packaging time.
Why don't you just install gentoo?
Debian + nix is comfy
Arch + nix is also good
You can also do Gentoo + nix
I like nixos as more of a server OS though I can see the appeal of the desktop. It's definitely a more elegant version of an immutable OS conpared to fedora's.
Why the fuck would I ever add Nix to my gentoo box?? What's next? Snaps?
Nix is also a source based package manager where you can customize the build options. The difference is it can build software declaratively, meaning it's got bit for bit reproducibility between systems. But if you don't want to build from source you have a binary package manager with the most number of packages and the most number a packages with the fewest known vulnerabilities. Not only that if you install home manager you have a nonroot binary/source package manager with a nice dotfiles manager on top of it. There's tons of possible benefits of nix, but it's compared to what you want to do.
Should also state to not be too much of shill, the whole nix system is hard to get into. You have a whole domain specific language you need to learn, it doesn't follow LFS, it can be more complex than other programs that individually do the things I've stated. It's definitely not for everyone. And may not be right for (you). It can however be a nice addition if you make and package software.
>it doesn't follow LFS
It can also make you retarded. It doesn't follow linux FHS. It also doesn't follow LFS but that's not important.
What would be the equivalent of the make.conf file?
In nix with nix flakes, you have a flake.nix file. It's a file that takes inputs(could be a prebuilt binary, or some github repo) and outputs. After running the build command it creates a flake.lock file that basically locks all inputs to specific versions down to the git hash of the commit history. In nixos there's a line of code you can add to your configuration.nix file that will build everything from source if you wantor you can create a variable and only do that for specific packages. You can also declaratively configure your systems kernel this way. The downside is you don't get the easy benefit of make-config like in Gentoo. Things need to be declaratively turned on or off, though i believe it defaults to whatever the binary is if it isn't declared.
Is there a breakdown on how to use this for idiots so I can just follow along and configure stuff, I'm trying to use nix on my steam deck and keep running into problems, which admittedly are probably on my kde's side. Otherwise I'm just gonna throw nixos on a laptop and play around a bit
There are, but you'll end up having to learn a fair bit as you go.
Any recommendations, anyone in specific?
Sorry, but I fumbled my way through most of it. Whatever you can find on google + beginning of nix pills + matrix channel is probably your best bet.
NixOS killed Gentoo.
Why did this happen?
nixos is the best (and at the moment worst to learn) distro, and it can handle gentoo's main advantage, compiling packages with flags, better than it does
See logo.
>#nixos-gm - a social channel for gender minorities in the NixOS community
One of the actual tranny distros right next to Debian and FreeBSD.
oh no no no gentoobros...
Guys... is it normal that a completely straight man who never doubted his sexuality suddenly feels attracted to femboys... Like, I've tried everything to stop it, I've tried using C and not Rust, I've tried throwing my thinkpads into the trash and replace them with a windows machine, I've sold my IBM Model M and bought a cheap office keyboard... but I just can't stop liking femboys...
You are GAY
It's your own fault for letting satanic pornography into your mind and committing the sin of lust. You can repent and become normal again, but only by accepting Jesus christ as your lord and savior and rejecting the antichrist and his temptations
Into the trash it goes
install guix
Meme distro, be a real man and install Gentoo.
It's the future
Maybe I'll use Nix in the future, but right now it seems to be too much in flux. I'm comfortable with my Ansible setup.
declarative system configuration with a move towards static binaries seems to be a far more sensible path than docker's "just pour another layer of abstraction on top of shaky foundations" approach.
Does Nix promote static binaries?
The REAL downside in respect of gentoo and other distro is that recompiling one single thing (e.g., zlib) with -march=native requires you to override the mkShell environment, so you find yourself having to recompile a huge amount of packages (including gcc) for no reasons. Even if your change is outside your system configuration, in a nix develop kind of thing. It's VERY annoying, a downside of all this "purity" shit.
>you find yourself having to recompile a huge amount of packages (including gcc) for no reasons.
lol
You can override the flags for just the program being compiled. I do that by just overriding an individual mkDerivation.
You can't. I tried and it doesn't work. A compiler inside a normal (pure) environment doesn't have -march=native: even if you enforce it, it doesn't recognize the capabilities of your cpu (no avx, for example). You have to make an impure environment and include packages in it. I do it with an overlay that overrides stdenv. If you include a package (e.g. zlib) using the impure environment you, obviously, need to recompile it (and that's what you want) but since you changed stdenv you also have to recompile the dependencies of that package (including gcc, glibc, perl and coreutils).
So if you want to compile a small package with -march=native find yourself having to recompile about ~100-150 packages for no reasons. If you really think you can do it in another way feel free to post the flake.nix, I'm curious to see and try. For what I know that's the only way... and it sucks!
How do I make my existing installation into a source based one? With all the cool compiler optimizations
If you want to customize the package it's usually with packageOverride or overrideAttrs modules when calling on specific packages. If you need to override the mkderivation it will build from source. The kernel section on the wiki has an overview of how to customize the kernel. Like said earlier it's more complex than doing things the Gentoo way but you can get some benefits.
there's also overlays nigga
i have been using nixos for a good while and i can say it mogs anything else. Downsides are that you'll need to learn how to package something for need in case you ever need something not yet packaged. Also make sure to have a good updating schedule be it automated thru nixos' own settings or u doing it manually to not get caught with the pants down in case u update and get a bug
How do you automate updates? Sounds nice to be able to do.
OP here btw, decided to install NixOS. Pretty nice so far still
system.autoUpgrade. search it up on search.nixos.org
bump
appreciate it, partner
Guix ftw.