Live data from Hacker News

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

github.com

151–160 of 206 posts

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

#151
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.

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.

Honestly, that's so patronising I wonder if you are trolling?

I use Debian and Redhat happily, also do plenty of Docker. I really want to love Nix and have tried a few times (even submitting some package updates), but just kept bouncing off it and giving up.

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

#152

Earlier quoted context omitted.

Just note Guix is a GNU project so there’s no support at all for anything unfree.

There’s no official support for non-free but the GUIX community has created a number of channels for non-free packages. I believe this is the main one: https://gitlab.com/nonguix/nonguix More if you google “GUIX nonfree”.

Yes, but you won't likely find help for NonGNU software in the offical GNU Guix channels, IIRC they have a banner on their libera.chat that says you shouldnt be asking for help with non-free software here.

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

#153

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.

Honestly, that's so patronising I wonder if you are trolling? I use Debian and Redhat happily, also do plenty of Docker. I really want to love Nix and have tried a few times (even submitting some package updates), but just kept bouncing off it and giving up.

Good for you. That means you haven't encountered a problem that Nix is designed to solve.

(Nix is very much a "worse is better" tool in the tradition of hacking something together out of existing tools until you a minimal working product. It's designed to solve a particular class of problems quickly and painlessly, even if the end result isn't "clean" or "elegant". The "clean" and "elegant" solutions to these problems are vastly more complex and overengineered.)

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

#154
post #48

I think NixOS would benefit from easily accessible collection of opinionated modules/profiles/configurations with minimal set of options. Something like gnome-desktop / sway-desktop / etc. Gnome actually does pretty good job here. The point is: currently my NixOS and Home Manager configurations have over 2k LOC total. When you search for configurations on GitHub/Google you are likely to find complex ones. For example…

Home Manager always seems like a unnecessary layer though. Why is it needed if you already control everything with NixOS?

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

#155
post #144

Earlier quoted context omitted.

Again, misunderstandings seems to run rampant in this thread... No, Docker doesn't maintain systems, it handles applications. No one runs systems inside of Docker. People run applications with Docker, and Docker itself runs on systems. And no, Nix doesn't "do this differently and better", as what Docker does and Nix does is wildly different. Nix is for machines, not applications. Sure, a subset of features from Nix c…

I think what the parent is alluding to is: What is the practical point of using Nix when similar outcomes can be reached with more mainstream solutions? In other words, suppose I want to deploy a web app that depends on Nginx, PHP, and PostgreSQL. I could: (a) Run all as docker-compose type solution (b) Run all as scripted Nix solution (c) Install packages manually on general purpose OS Lets ignore "c" for the moment…

I don't understand how you can use docker-compose, docker, Kubernetes or anything else to achieve the same thing as NixOS. NixOS gives you a fully reproducible personal computing system, from boot config, window manager, partitioning to applications, home directories and everything in between.

What mainstream options are available for doing this? Guix could be one option, but it's not mainstream so I'm not sure what tools you are referring to.

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

#156
post #154
post #48

I think NixOS would benefit from easily accessible collection of opinionated modules/profiles/configurations with minimal set of options. Something like gnome-desktop / sway-desktop / etc. Gnome actually does pretty good job here. The point is: currently my NixOS and Home Manager configurations have over 2k LOC total. When you search for configurations on GitHub/Google you are likely to find complex ones. For example…

Home Manager always seems like a unnecessary layer though. Why is it needed if you already control everything with NixOS?

It's for the user packages. This way you can keep the system profile lean for fast updates of the kernel and such, and then update firefox and other things separately. With Guix they have had manifests for a while, which are integrated into Guix proper and are like the package half of Home Manager (not the config stuff). I only keep a handful of things installed as system packages, and then I have probably 100 or more things in my manifest.scm file. As my user I apply this manifest and it will install or remove things as needed. No root privileges needed.

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

#157

Earlier quoted context omitted.

Honestly, that's so patronising I wonder if you are trolling? I use Debian and Redhat happily, also do plenty of Docker. I really want to love Nix and have tried a few times (even submitting some package updates), but just kept bouncing off it and giving up.

Good for you. That means you haven't encountered a problem that Nix is designed to solve. (Nix is very much a "worse is better" tool in the tradition of hacking something together out of existing tools until you a minimal working product. It's designed to solve a particular class of problems quickly and painlessly, even if the end result isn't "clean" or "elegant". The "clean" and "elegant" solutions to these problem…

I believe I have a problem Nix is designed to solve (reproducible builds) all the time. However, one can work around it with enough pain and suffering on Ubuntu (I can write a shell script to download and build the specific GCC, GHC, rustc and other packages I need and build from source where required), and still find that much easier to distribute to my colleagues, rather than having to teach them to use Nix.

What else is Nix good for? I'd be interested to know.

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

#158
post #144

Earlier quoted context omitted.

Again, misunderstandings seems to run rampant in this thread... No, Docker doesn't maintain systems, it handles applications. No one runs systems inside of Docker. People run applications with Docker, and Docker itself runs on systems. And no, Nix doesn't "do this differently and better", as what Docker does and Nix does is wildly different. Nix is for machines, not applications. Sure, a subset of features from Nix c…

I think what the parent is alluding to is: What is the practical point of using Nix when similar outcomes can be reached with more mainstream solutions? In other words, suppose I want to deploy a web app that depends on Nginx, PHP, and PostgreSQL. I could: (a) Run all as docker-compose type solution (b) Run all as scripted Nix solution (c) Install packages manually on general purpose OS Lets ignore "c" for the moment…

Nix is (a) and (c), depending on how you want to use it. What differentiates it from docker-compose or `dnf install` isn't just the fact that you can ship something in containers or install some packages but also the various properties those containers or packages inherit from the build system.

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

#159
post #142

Earlier quoted context omitted.

What we dislike is everything talking about the costs, and not the benefits. Fine if it's not for you --- I personally care more about institution and upstream adoption than getting more random end users at this point --- but people passing off these one-sided cost-and-no-consideration-of-benefits analyses as engineering decisions is a bit grating. To me Nix is hard, but Nix is worth it. I acknowledge these people's…

> What we dislike is everything talking about the costs, and not the benefits. Exactly. I tried to push really hard our company to use Nix/NixOS (and maybe in our case nix-darwin too, since the majority of engineering uses macOS), but it never went anywhere (I did convert a few of my colleagues to use NixOS though). But why? Well, onboarding is a pain in my company. We have some Ansible scripts that always break in s…

Yeah I ended up working at a place that was already using NixOS -- as in developer laptops come with NixOS, and that was definitely a huge plus. Much nicer when the war is already won, and there is no class of macOS or Windows-using devs to appease!

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

#160
post #143

Earlier quoted context omitted.

> Fixing other people's garbage is the bane of any package system maintainer, it's no different here. I honestly think it's hard for "Nix to Nix" simply because by trying to make everything reproducible, it is dealing with more of upstream's garbage, and "reifying" the hoops that people jump through doing sysadmin things in code looks scary. I really want more upstream developers to use Nix, so they might loose their…

Reproducibility is not the only issue they're facing. I think the mentality extends to more than just fixing linker issues, e.g. this https://github.com/NixOS/nixpkgs/issues/9656 At the end of the day, I much prefer trusting upstream than having to trust packagers to do everything right.

Fair, but at the same time, "setuid" is a war where everyone looses, IMO :).

Since the issue was first closed, there are some solutions for NixOS that I hope for discoverable. For Nixpkgs alone, I really don't think see any solution that is both secure and ergonomic -- setuid is bad.

Post reply on HN