NixOS

Has anyone used this Linux distro? Supposedly the declarative package management is super stable and prevents package conflicts. What's it like? What's the equivalent of sudo apt install?

Other urls found in this thread:

wingolog.org/
gnu.org/software/guix/manual/html_node/operating_002dsystem-Reference.html#operating_002dsystem-Reference
nixos.org/nixos/nix-pills/generic-builders.html

Why are you still using Linus' shitty copy of BSD

...

gno. i use guixsd

It's a step in the right direction compared to Fedora/Debian and such. Using the filesystem for package management is a great concept. But I'd still want to roll my own distro.

GuixSD is pretty much the same, but they execute this design in a different manner, using Guile for everything. Plus, no systemd.

I have, for several months
You can break it on purpose and then reboot to a previous version in grub menu, it has never broken on me
Literally cannot happen, each each package has a unique hashed and linked accordingly, you can have millions of different versions of the same package and their will be no conflict.
nix-env -i
But really you want to modify your nix config so your whole system is in a defined set of files.

What's it like?
Great, really great actually, I am convinced NixOS and GuixSD are the future of operating systems.
That being said there's a reason I am using Ubuntu with nix instead of NixOS.
You really have to think about everything you add and how that relates to your config file, it takes its toll when you come into issues that you don't have to think about like create custom nix shells for your games, because dwarf fortress and GOG games don't know where to look.

Also hacking around doesn't really work in a permanent, way this is by design but it's much easier to just fuck around with standard linux because it doesn't mess with any preconceptions, even if it is dirty.
Plus when I used it the documentation was seriously bad, you had to find out how a package should be declared by downloading the nix package tree and searching the relevant .nix file, this is greatly alleviated now by the NixOS website.

The IRC is active and very helpful, I am no longer in super mess around mode so I am looking to install it again.

Imagine this, you have two machines that you want to be exactly the same, how do you do this in other distros? Keep a log and apply the same commands to each OS? just wholesale copy the volume?
In NixOS you have one text file, if you sync this one few kb text file you will have the same system on multiple machines.
Got a new machine? Just copy over your nix file and have the same system.

You declare what you want, you have to think about it.

Ooh, this looks like it might be even better. Lisp and GPL is a big plus. Any downsides?

no systemd

He asked for *downsides*.

>wingolog.org/
This ultrafaggot is behind it.

Guile is old and very slow. It only exists because of "muh simplistic Scheme" meme was picked up by GNU in 90s.
They keep promising (it's been this way for years) a new compiler, a new VM and modern features, but for now you have to cope.

Guix itself is over complicated, you can't just build a custom package by editing a scheme file. If you need to add a new service you have to rebuild the whole system, it's by design but still annoying. And expect to have segmentation faults time to time. Also their autistic way of packaging does rape to the linker, you will have a lot of issues with that.

And the devs are faggot antifa queers, all of them.

Linux is a kernel.

I thought SJWs couldn't code for shit but apparently some of them at least can create a distro nobody uses.

SJW behaviour is a mental illness, but it doesn't cause retardation. Of course, many retarded people choose to be a SJW to compensate for their deficiency. In fact if you kept the conversation with this ultrafaggot about Holla Forums, it'd probably be rather pleasant.

I can't tell if I found the manual nauseating because it's so complicated or because I was listening to heavy metal music while trying to read it. Nevertheless, this "operating system for EVERY use case" trend is terrible and these systems are doomed to be used only by those with no use case at all.

You're just retarded for trying to fill your mind with caustic noise while concentrating on a task to learn.

What kind of nigger are you? The manual literally has a copy paste section if you're too stupid to understand the install procedure.

You just fdisk, mkfs, mount partitions to /mnt, generate a nix config and install.

Guile is plenty fast for this application.

HEY

I

REALLY

could use a nonfree version of GuixSD. I'm on a thinkpad x60t and want GuixSD instead of NixOS, but don't think it'd work with my wifi cards/chips.

According to the manual currently only Linux-libre is supported.
gnu.org/software/guix/manual/html_node/operating_002dsystem-Reference.html#operating_002dsystem-Reference
I think it's possible to just use the vanilla linux kernel.

I'm a super noob, so I'm not sure how I'd go about using the vanilla kernel over the libre.

I was the #guix irc channel and one of the users there heavily implied there being an existing nonfree version hidden somewhere.

I'm sure it exists, it's just nobody's willing to put it in the official Guix communications. You're going to have to write your own Linux config file.

Except that misses the point of these kinds of OSes entirely. Why would I copy paste from a wiki when installers exist?

If you don't know how to replace the wifi card in a machine specifically hailed for its ease of maintenance, what business do you have in using this vein of operating system?

I'm on Debian right now and it's ok. But I desperately want to install GUIXSD, but I've never been able to get open wifi configured from a tty.

I didn't realize GuixSD had one of these installers.

I'd just like to interject for a moment. What you're referring to as Linux, is in fact, GNU/Linux, or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.

Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called "Linux", and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.

There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called "Linux" distributions are really distributions of GNU/Linux.

I don't want to spend the money and wait for shipping, it's not the physical procedure that's stopping me..

The goal of GNU is to make a free operating system that respects the user's freedoms, so users aren't mistreated by the developers/owners of the software.
If GNU is "hard" to use for the average user, that means the developers failed on their mission. Fuck off with your elitist bullshit.

I've been trying to learn NixOS for weeks but I just can't. I want to like it, I like the idea behind it but even dead simple tasks like compiling a git repository fails because I just cannot figure out how to install zlib globally (or really what the right way of doing it would be). There's about 100 other things I just cannot figure out. I had Gentoo before and so far I have to say that gentoo was much easier to handle overall. Might also have something to do that just "copy pasting" shit from a wiki doesn't really work as well with NixOS as it did with Gentoo. Then there's the fact that it's rather new / niche and you can't search for shit on the internet because it's all just mailing lists or open Github issues which just simply doesn't help.

I guess I'm really just more dissapointed in myself for being such an impatient brainlet.
Will keep trying though.

It is irrelevant how difficult or easy it is to operate GNU. A user who has freedom should be responsible enough to find a skilled helper to consult with whenever they need technical help. If need be, they have the freedom to modify the software to be "easy to use".

If you want to install "unsupported" packages in Nix, you'll need to learn how to write your own package configuration. If you're serious about doing all your work in NixOS, then this skill is very much worth the effort.

GNU advocates political freedom, ie, they fight restrictions of liberty imposed by the government(restricted proprietary IP)
Thats unrelated to ease of use without learning.

That does have to do with freedom in a sort of way, but not in any kind of political way. You could say it has to do with personal freedom, which political freedom also does.
Viewing it in that way does not at all suggest that "computers should be easy for normies". That leaves said normies dependent upon some computer officer to solve their problems for them and package the solution up in a way that wont scare them off.
Personal freedom is being able to solve your own problems, rather than depending on some "tech person" to have already done it. Reading the bible yourself, not having to depend on a priest to read it to you.(not a christian, but its a nice comparison)
This is why there is something fundementally good about 'everyone should code xD' bullshit, in theory. Not so much in practice, but yeah.

for GNU, promoting technological literacy would fit in with their goals, but its not necesarially a part of them. They can make windows-lite "desktop" shit if they want, or stallman can do all his computing in emacs in the linux console. Its not an issue.

RMS has already stated that giving freedom to people is their goal. Not just "some" people, but most of them.
This goal cannot be achieved if the software is overly complicated to use, for the same reason it's unrealistic to expect every single car owner to know how to repair an engine should it break in the middle of the road.
The biggest failure of the FSF (besides pursuing the HURD and then adopting Linux as a de-facto kernel instead of using a *BSD kernel) is to not realize this and instead focus only on technical details.

I agree, but there are different sorts of freedom that need to be tackled in different ways. already pointed out political freedom, i.e. the freedom that even allows you to be free. People like to give shit to the guy who gave Blizzard the source code for Starcraft in exchange for some Overwatch shit, but realistically speaking he never had the right to do anything with the source code, so giving it back for some Overwatch skins in return was the best thing he could have hoped for.

Another issue is practical freedom. What good is it to be allowed to make changes to a software when I would have to dig through tens of thousands of lines of undocumented spaghetti code? This is why I like the idea of an extension language for programs
Users should have a domain-specific interface to tinker with. But getting to this point requires solving a non-trivial technical problem first.

The path to personal freedom is from political (you are allowed to), to techical freedom (you can), to practical freedom (you can in a maintainable way).

Nicely talking straight past the argument by reiterating your own I see.
"just some people" cant use powerful, general software that enables them to solve their own problem, everyone can, and being able to is not comparable to a knowledge of mechanical engineering. Only to the level of knowledge every car owner SHOULD have about how to maintain and repair their own vehicle.
creating very complex software in the form of pre-packaged solutions to every class of problems someone might have does not grant them freedom of any kind, other than the possiblity that it allows them political freedom where their previous choice did not. They're still totally dependent upon a literate elite to deliver their computing to them.
IT JUST WERKS design is inherently elitist, it is the enemy of real personal freedom.

I had a very similar experience to you, to be fair their documentation still sucks, I suspect it's because the main devs are all krauts.
Their IRC is helpful and used to dealing with people who haven't wrapped their head around things. It really is worth hanging out there.
Nothing is really "global" in nixos, every program is only aware of what it is specifically linked to in its .nix file. If you want a scratchpad then you should create a nix-shell with a bunch of shit in it, I used nix-shells for installing and running GOG games that demanded a standard FSH.

Ideally though you should read the nixos manual regarding creating packages, here's a quick example for gnu hello:
nixos.org/nixos/nix-pills/generic-builders.html

...

Same, user. Too real. I like to think we'll come out of it as real Nix Wizards though.

Btw, I'm probably moving to GuixSD instead (no systemd, libre and scheme), so c ya l8r buddy and good luck.>>813300