Live data from Hacker News

Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

github.com

21–30 of 206 posts

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#21

Earlier quoted context omitted.

You probably don't have a problem that this solves. I.e., some people still download random zipfiles from the internet and install each individual app from a wizard dialog onto their Windows 10 machine. They find software repositories and package managers confusing and overengineered. I guess that's okay.

> You probably don't have a problem that this solves. > They find software repositories and package managers confusing and overengineered. The screenshot is literally a mishmash of technical jargon with little to no relation to each other. sound.enable defined boolean asset resource enabled. What problem does it solve, exactly?

That's like asking "what problem does apt-get solve, exactly, with its technical jargon, when I can always download the software I want using Google Chrome?"

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#22
post #4
post #2

This will sound rude, but I'm more and more convinced that people immersed in nix have never seen a real person in real life. defined boolean expression reference true. wat. I'm a technical person, and I have no idea what this is. And for technical people? Literally everyone says that "nix is really hard to get started with". nix and nix-related developers, please, please find some real people and talk to them.

I'm a nix fan and have been using nixos for years now, packaging stuff and writing my own nix-based libraries, but I still find the language to be painful. The problem is, documentation is sparse to non-existant, error messages are poor and often far from the actual problem, and it makes use of concept that lots of people are not familiar with (like lazy evaluation) without ever explaining them, resulting in surprisi…

> The problem is, documentation is sparse to non-existant, error messages are poor and often far from the actual problem, and it makes use of concept that lots of people are not familiar with (like lazy evaluation) without ever explaining them, resulting in surprising semantics.

Absolutely, that is the major roadblock for Nix/OS in my opinion, with the new `nix` command, the documentation is way better but the language and OS documentation is still bad, if you search for something on a search engine, the top result will probably be the NixOS Wiki which is not even official! Manuals can come up but the title for the nix manual (not NixOS) is "NixOS - Nix 2.3.15 Manual" which is confusing by itself but even more so when you're trying to solve a specific problem and not just get the manual. Having the "NixOS" part at the end for example would already help. Having titles for different parts of the manuals would be best. However, manuals are single pages except for the new nix command manual. That is a truly horrible user experience in my opinion... NixOS is however very good in other areas so the experience is positive in general but if resolution of issues could be faster, it would help significantly. My guess is that they will push towards the new manual format, so this will get resolved eventually but it will probably take a long time.

They are also probably not aware of certain issues like the fact that having no roadmap is not great for end users or contributors and doesn't create this focused effort that is required to solve the issues mentioned. Nix devs seem to be a bit too technical which is becoming a problem. If you guix to nix, they are much more organized, if you go to their homepage and want to contribute, it is very clear where you can contribute and how. Another example would be flakes. They created quite a hard split in the community between people that are using them and people that are not. They have some problems sure, but I think they should become standard and then be iterated upon. To summarize, the Nix/OS project feels to me like it is still treated like a research project with no users and few contributors which is not the case.

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#23
post #9

What a coincidence. I was just asking about NixOS on Mastodon. Reposting (I'm on a mobile, little time to type): " a question on dev environment isolation. Is either #NixOS or #GUIX usable as an OS for day-to-day use (coding, browsing, occasional gaming)? Or is it better to just use their respective package managers on top of regular Linux? Also, anyone here doing desktop #virtualization? Is there a sense of running…

Don't know about Guix System but I've used NixOS as main OS for third year now just fine. Of course for coding you'll need to learn how to create (basically learn Nix, the language) an environment that has the libraries used in the specific project. The last question applies to any distro. Gaming is viable if you've GPU passthrough.

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#24
post #9

What a coincidence. I was just asking about NixOS on Mastodon. Reposting (I'm on a mobile, little time to type): " a question on dev environment isolation. Is either #NixOS or #GUIX usable as an OS for day-to-day use (coding, browsing, occasional gaming)? Or is it better to just use their respective package managers on top of regular Linux? Also, anyone here doing desktop #virtualization? Is there a sense of running…

re: vm per project- Hashicorp's Vagrant has been around for over a decade if you want to keep beating that horse.

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#25
A lot of odd Nix hate in here, or at least extreme dislike.

NixOS is so very usable. There are a lot of foot-guns but that's true of Linux systems.

It takes some time to get comfortable with all the different ways to configure stuff. There's a new language, a new build system, a new Linux distribution.

I've spent very little time relative to say, figuring out dpkg or systemd, or learning Bash or C or Perl, or learning the Linux FHS.

NixOS makes running deterministic systems driven from a single configuration incredibly easy.

Nix the language and tools allow you to build software deterministically and create environments where that software is available (e.g. on $PATH).

Nix Flakes is an experimental feature aimed at bringing reproducible and hermetic configurations of dependencies into the fold (i.e. lock files, ala Gem or Cargo or Go Modules).

Nix-the-tool's interactive "package manager" should be deprecated, as it's a huge pitfall for most developers. But it works and is frankly a good first step for folks coming from Apt or Homebrew.

Learning to write modules is probably the steepest learning curve, but compared to learning how to build RPMs or Dpkg or Brew recipes, it's really not bad at all. I actually find it easier and I've been at this for less than a year. Sure, if you're trying to get something working no one has figured out yet you may be in for a pickle, but that feels like it's always been true. The difference is a lot of software breaks and bends the rules and boundaries constructed to keep things and people sane. Nix does not allow that, generally, which is a very good thing. Fixing other people's garbage is the bane of any package system maintainer, it's no different here.

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#26

Earlier quoted context omitted.

> You probably don't have a problem that this solves. > They find software repositories and package managers confusing and overengineered. The screenshot is literally a mishmash of technical jargon with little to no relation to each other. sound.enable defined boolean asset resource enabled. What problem does it solve, exactly?

That's like asking "what problem does apt-get solve, exactly, with its technical jargon, when I can always download the software I want using Google Chrome?"

Yeah but here it's the level of jargon that is the problem, there is too much! This is a good project for sure but it is not ready for new users.

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#27
post #13

Earlier quoted context omitted.

All the official documentation is autogenerated daily. What documentation did you find outdated?

Autogenerated documentation !== up-to-date and/or good documentation. Autogenerated means "we take these particular strings and texts and dump them in a different format". It says nothing about whether they are even remotely up to date.

Sure, but in my experience the documentation from the source has always been correct. There is tons of stuff on other websites that is outdated, but the source documentation has not suffered the same atrophy.

More importantly, much of the documentation is auto generated not from arbitrary doc strings, but from the nix expressions themselves. IE: https://search.nixos.org/options?

So I believe there was another source of the misinformation then the official docs.

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#28
post #2

This will sound rude, but I'm more and more convinced that people immersed in nix have never seen a real person in real life. defined boolean expression reference true. wat. I'm a technical person, and I have no idea what this is. And for technical people? Literally everyone says that "nix is really hard to get started with". nix and nix-related developers, please, please find some real people and talk to them.

This GUI started few months ago so you shouldn't be surprised it's unpolished. Right now it's the Nix configuration with buttons rather text.

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#29
post #9

What a coincidence. I was just asking about NixOS on Mastodon. Reposting (I'm on a mobile, little time to type): " a question on dev environment isolation. Is either #NixOS or #GUIX usable as an OS for day-to-day use (coding, browsing, occasional gaming)? Or is it better to just use their respective package managers on top of regular Linux? Also, anyone here doing desktop #virtualization? Is there a sense of running…

Don't know about Guix System but I've used NixOS as main OS for third year now just fine. Of course for coding you'll need to learn how to create (basically learn Nix, the language) an environment that has the libraries used in the specific project. The last question applies to any distro. Gaming is viable if you've GPU passthrough.

For dev environment s I would recommend taking a look at devshell: https://github.com/numtide/devshell

Re: Nix-GUI: Make NixOS usable for non-technical users through settings / GUI

#30
post #9

What a coincidence. I was just asking about NixOS on Mastodon. Reposting (I'm on a mobile, little time to type): " a question on dev environment isolation. Is either #NixOS or #GUIX usable as an OS for day-to-day use (coding, browsing, occasional gaming)? Or is it better to just use their respective package managers on top of regular Linux? Also, anyone here doing desktop #virtualization? Is there a sense of running…

re: vm per project- Hashicorp's Vagrant has been around for over a decade if you want to keep beating that horse.

I don't mean isolating just the project, but also its development environment, tools for making assets, their dependencies, etc. Possibly persisting runtime state when switching over to a different project. Basically, as if each project had its own dedicated laptop.

IIRC, Vagrant was geared for just project isolation, and didn't offer the optimum VM management experience.

Post reply on HN