*creates a clean environment without chrooting*

*creates a clean environment without chrooting*
*installs multiple versions of same package without conflicts*

Attached: images.png (323x156, 4K)

redpill me on nix. sounds good in theory but anything other than debian/ubuntu/fedora is bound to have 10 total packages which are outdated.

*gets pozzed by Lennart*

*has ShitstainedDick
*calls itself functionnla
no thanks

How about I install Windows? Then I don't have to worry about packages or environments. Linux fags BTFO

>each program uses installer which do their own magic on registry
>every time you update programs you need to download the installer of new version
>registry is a motherfucking mess
btw 2/10

I'm using it for a while on my Desktop computer.
Pros:
- All Configurations in a single file
- Easy rollbacks
- Clean environment for dev work (via nix-shell for example)
- Multiple profiles
- Fine grained control over packages
Cons:
- Everything is different and you need to take some time to get used to NixOs
- KDE breaking sometimes after update, because of some left over config files
- Things like python packages are a hack

So what we have had with portage and btrfs for a decade.

lol welcome to 2009

You do know windows applications are just binary packaged managed in the shittiest possible way right? Registry is a fucking nightmare and one of the main reasons why windows users are so used to having to reinstall every 6 months to a year because of registry rot and other shenanigans.

Last good windows was XP and last usable windows was 8.

I dropped the damn SO when 8.1 was forced upon everyone's asshole.

haskellPackages and nodePackages use a similar hack too, it's pretty unfun to deal with, especially since the script for updating from the .yaml for haskellPackages doesn't have nix integration and requires cabal (srs)

it does have similar features to portage, but portage doesn't do per-user stuff, overlays (in the nix sense of overriding parts of packages), build environments/nix-shell, and likely some other stuff i'm forgetting
not shitting on portage at all, it's an amazing package manager

managing software on windows is a nightmare, it's not easy at all. you don't have to worry about packages and environments, but that's why you're able to use windows, not the other way around.

it works pretty well on a foreign os (i've tested on gentoo) though you have to provide anything that uses gl and Xorg itself through the foreign OS not nix (i think because of versioning issues, in the case of gl).

if a package is out of date you can override the package definition by putting two lines in your profile's config.nix file to update the sha256 hash of the hash of the new release for the version you want and bump the version number, but usually nixos is fairly up to date anyway
came to nixos from being a full time fedora user because fedora can screw you over with package versions if the package gets updated mid-release, was also using nix (the package manager) on fedora anyway to get updated packages and to change some compile options for some packages

if you want to get a feel for nixos without installing a new os just grab nix (the package manager) and get a feel for that, it helps knowing how nix works before going to nixos because neither nixos or nix is documented all that well and it's so foreign to how any other distro manages things (other than guix) that you can't really rely on other distros documentation to get you out of a hole

>but portage doesn't do per-user stuff, overlays (in the nix sense of overriding parts of packages), build environments/nix-shell, and likely some other stuff i'm forgetting
>not shitting on portage at all, it's an amazing package manager

It absolutely does all of that and way way more.

ignore the tripfag he's one of the worst posters on this board

>systemd
>no option for OpenRC or init

that's interesting, can you explain how? google isn't giving me any relevant answers

Explain how portage doesn't work per user or support overlays or different build environments, because it does.

I'm using void right now, so wondering about how it would compare. How new are their packages in comparison to void?
Is it binary based? Is it easy to have a systemdless system with it? What about runit, Libressl?
Also can you elaborate a bit more on how the 'all configs in one file' works?

well if i want to install a package as a user without a suid program (per user installation), then emerge says "This action requires superuser access...
Would you like to add --pretend to options? [Yes/No]"
which isn't what i want to do, because --pretend will not actually emerge the package 'git'

if i define an overlay in gentoo, i have to use an ebuild, which doesn't support taking an existing ebuild from the official package repository, and changing something like it's version, or adding a patch, instead i have to redefine the entire thing, which is what nix allows.

and if i want to make a build environment with nix-shell, i can run `nix-shell -p nim-lang git patch`, additionally specifying things like versions to get a very specific set of packages to temporarily work with, that will not conflict with my installed packages, which portage is unable to do because it does not offer per-user packages, or automatically modifying my $PATH

You can finely control every stage of a build/install with the ebuild command and further with the .ebuild file

You also don't need to use an overlay if you really don't want to, but its cleaner to do so. As for patches, you literally only need to drop them into a directory, like /etc/portage/patches/www-client/chromium/vaapi.patch and portage will automatically patch the relevant packages.

Portage can absolutely give you temporary build environments with systemd-nspawn and btrfs snapshots, as can basically any Linux OS that has systemd.

>i have to use an ebuild, which doesn't support taking an existing ebuild from the official package repository

Also this is retarded, an .ebuild is a text file there is nothing preventing you from copying the entire fucking portage tree into a local overlay to do whatever you want with.

Tell someone who has been using Ubuntu since 2010 why he should suddenly switch to something, and how this is any different from any of the other meme OS that they said would be the new hottest shit to take over from debian/ubuntu like Arc and Mint?

Does it actually require systemd for its epic configuration system, or did they just slap it on because it's what's easiest? Hypothetically how hard would it be to make e.g. runit work in nixos, if they ever decide to try dropping systemd - any harder than on a "normal" distro?

>systemd
goes into trash

guixsd is better

Now stop replying to the retard tripfag and answer the last three questions asked.

>GNU GNU/guixsd GNU/----- GNU
the word "linux" is censored in the name

do use Docker

>Tell someone who has been using Ubuntu since 2010 why he should suddenly switch to something
as OP said, nix package manager and other programs surrounding nix makes system
and configuration management easier

>binary based?
The packages are actually build specifications written in the nix language. So I would argue, that it is source based. But by default you use the binary cache of the nixos repo, so you only compile your self if you override the package.
>all configs in one file
You're system is defined in the nix language. You specify which packages to use, which services to start, which configuration for each package to use. Sadly all these options need to be specified in the nix package to be used, which leads to you're last question.
>systemdless
A lot of effort and hacks are needed to make packages like systemd manageable through your nix system configuration. Sadly this hasn't been done for something like runit and probably won't happen anytime soon. If you need to avoid systemd, try GuixSD.

Ganoo's GuixSD uses guix (a nix clone) with Shepard, their own init system.

*makes it so that you have to install packages to change your sddm theme instead of just editing a config file*

So I could just exclude runit from it and use it as a replacement for xbps-src?
Alsoare they patching stuff? How new are the sources and binaries?
Any nixanons here that also used void?