Live data from Hacker News

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

github.com

201–206 of 206 posts

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

#201

Earlier quoted context omitted.

> I have a Windows VM on a NixOS host for gaming, was really quite convenient to set it up, I set it up on a separate drive to be able to boot native too I've been planning on doing exactly this, but haven't had the time to figure out the best way of going about it. Is there a good guide/write up you'd recommend? (I already have a Windows 10 install on a separate SSD, but I rarely boot it because I can't stand the OS…

I use https://github.com/danielfullmer/nixos-nvidia-vgpu + https://looking-glass.io/ very successfully Can theoretically game on Linux and windows at same time with just a single gpu (2080 ti), mainly use it cause I only have single gpu and I don't want to loose hardware acceleration on Linux, the nixos module both applies a the vgpu unlocker for consumer graphic cards (so u can split a gpu in multiple virtual gpus)…

Hi I'm still a noob at NixOS and Linux in general. Would it be possible for you to help me set up something similar?

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

#202
post #201

Earlier quoted context omitted.

I use https://github.com/danielfullmer/nixos-nvidia-vgpu + https://looking-glass.io/ very successfully Can theoretically game on Linux and windows at same time with just a single gpu (2080 ti), mainly use it cause I only have single gpu and I don't want to loose hardware acceleration on Linux, the nixos module both applies a the vgpu unlocker for consumer graphic cards (so u can split a gpu in multiple virtual gpus)…

Hi I'm still a noob at NixOS and Linux in general. Would it be possible for you to help me set up something similar?

Possibly, can't be a 3xxx Nvidia gpu though afaik, and you'll need some way to get a vgpu license /activation which I can't help you with

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

#203
post #201

Earlier quoted context omitted.

Hi I'm still a noob at NixOS and Linux in general. Would it be possible for you to help me set up something similar?

Possibly, can't be a 3xxx Nvidia gpu though afaik, and you'll need some way to get a vgpu license /activation which I can't help you with

I've got a 1060. Where can I hit you up?

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

#204
post #203

Earlier quoted context omitted.

Possibly, can't be a 3xxx Nvidia gpu though afaik, and you'll need some way to get a vgpu license /activation which I can't help you with

I've got a 1060. Where can I hit you up?

Added email to hacker news profile, also got discord and other chats, just hit me up with ur Id/handles/invites via email

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

#205
post #184

Earlier quoted context omitted.

I think it's fair. It is, by far, the biggest hurdle to adoption and contributions. I'm a SWE and I don't grok it yet. Granted, I haven't spent a ton of time on it. But if you have to spend a ton of time on it, it has in some sense failed. It's harder to learn than literally any other language I can think of that isn't designed specifically to be esoteric. Most languages, after you have picked up a few, you can just…

> I'm a SWE and I don't grok it yet. I think the biggest difficulty most people have is that it's a pure functional language, and that is quite foreign to a lot of people, even many SWEs. It's something that's not going to change though because it's a fundamental part of why Nix works so well.

I mean, I am very used to pure functional programming and I still find Nix quite challenging. For a lot of reasons. The abstractions are all weird, there are so many pieces that are confusingly put together, etc. Lots of stuff.

Even the PL itself is really weird and unfamiliar. And not super well documented. I remember spending a while not too long ago trying to figure out how to interpolate a string. And then you have goofy stuff like with, etc.

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

#206
post #59

Earlier quoted context omitted.

> Crazy thing about NixOS is that it's so good, all the bad parts can be excused. I like to go on forums and complain about how the Nix configuration language is horrible, and there's not much documentation on how to get general things done. I don't think it is fair to say that Nix as a programming language is horrible, IMO, as a DSL it is pretty good and fits the domain well. It is a strange language at first and it…

I think it's fair. It is, by far, the biggest hurdle to adoption and contributions. I'm a SWE and I don't grok it yet. Granted, I haven't spent a ton of time on it. But if you have to spend a ton of time on it, it has in some sense failed. It's harder to learn than literally any other language I can think of that isn't designed specifically to be esoteric. Most languages, after you have picked up a few, you can just…

In my experience, the biggest problems for learning Nix (the language) are the lack of type annotations and the tendency to separate function calls from function arguments. The first time you look in `my-package.nix` you find... a dict of function arguments? I think? What the heck? What function takes these arguments? What function arguments are valid?

So you end up grepping the whole source tree for `"./my-package.nix"` just to see what functions are using it, and you find this construct:

    someFunction ./my-package.nix
Which in other languages would be the slightly bizarre

   some_function( eval_file( "./my-package.foolang" ) )
So you're pretty sure these are arguments to someFunction, but it's weird that the call to `someFunction` wasn't in the same file, because it makes it hard to know what's going on.

All of this this wouldn't be so unclear if the syntax wasn't visually similar yet semantically different from most languages. The map syntax in particular looks exactly like a block in curly brace imperative languages:

    {
        foo = "blah";
        bar = foo + "blahblah";
    }
----

Fortunately, there's work to separate Nix (the tool) from Nix (the language), so that any configuration language can be used to produce derivations. Nickel has been one of the drivers of this push:

https://discourse.nixos.org/t/nickel-the-nix-language-spin-o...

https://github.com/tweag/nickel/issues/93

Post reply on HN