!UUqahLbShAYkkrXmKs:matrix.org

DevOS

36 Members
Seeking help and geeking out together on https://github.com/divnix/devos & https://github.com/divnix/digga10 Servers

Load older messages


SenderMessageTime
12 Aug 2021
@d4hines:matrix.org@d4hines:matrix.org
In reply to @timdeh:matrix.org
although I've been looking at https://github.com/jonringer/nix-template as a potential to bridge this gap
*

This seems less than ideal, Imperative shell commands to manage huge boilier plate seems worse than just having less boiler plate/relying on defaults.

The best looking interface into Nix I've seen so far is DevShell. TOML file where you list the packages you need. Amazing! When I figure out how to do overlays consistently, it's going to be awesome. But I have to decide how to do them - Niv or nvfetcher or manually or something else I haven't heard or what?

23:14:06
@timdeh:matrix.org@timdeh:matrix.orgyou will probably like https://github.com/tweag/nix-ux then23:14:44
@d4hines:matrix.org@d4hines:matrix.orgYou guessed correctly!23:16:00
@timdeh:matrix.org@timdeh:matrix.org Here's the part you may not fully see yet d4hines. You could easily call nix-template from a derivation builder, thus siezing all the reliability of a nix derivation with a bit more powerful templating abilities 23:16:16
@d4hines:matrix.org@d4hines:matrix.org Why is that better than a nix expression function to do it nrdxp ? 23:17:09
@d4hines:matrix.org@d4hines:matrix.orgOh, it's a library of those very functions.23:17:29
@d4hines:matrix.org@d4hines:matrix.orgAs well as a CLI interface.23:17:39
@timdeh:matrix.org@timdeh:matrix.orgI was about to add that, in order to truly be ideal, flakes would need some form of input. Although the override-flake args could already be used as a type of input if used cleverly23:18:23
@timdeh:matrix.org@timdeh:matrix.orgafor simple things like passing list of usernames on the cli and getting out a coherent template for all three at the end of the build23:20:34
@timdeh:matrix.org@timdeh:matrix.org * for simple things like passing list of usernames on the cli and getting out a coherent template for all three at the end of the build23:21:27
@timdeh:matrix.org@timdeh:matrix.orgI've thought about it enough to know that's it's all already technically feasible, but the implementation would end up being very arcane. A better interface would be nice. Which is why I also use and wonder how we could get upstream to approve https://github.com/dramforever/nix-dram23:22:28
@timdeh:matrix.org@timdeh:matrix.orgI would make it a DevOS default, but it's not unanimous among the DevOS core team yet23:22:45
@ultranix:matrix.orgultranixi dont understand why nix projects make use of TOML23:23:29
@timdeh:matrix.org@timdeh:matrix.org * I've thought about it enough to know that's it's all already technically feasible (in pure nix I mean), but the implementation would end up being very arcane. A better interface would be nice. Which is why I also use and wonder how we could get upstream to approve https://github.com/dramforever/nix-dram23:23:33
@timdeh:matrix.org@timdeh:matrix.orgbuiltins.fromTOML probably?23:24:14
@ultranix:matrix.orgultranixi would rather configs stay in programmable nix world23:24:15
@kraftnix:matrix.org@kraftnix:matrix.org
In reply to @ultranix:matrix.org
i think yeah you do need some experience with nix to use DevOS, cant just spin it up with a first time NixOS or whatever

i started using devos/nixflk after about 3-4months of nix, i first decided to use classic nix and after running into reproducibility problems because of different machines being at different nixpkgs commits because of channels (which was something I knew flakes fixed), i started with a basic flake and quickly looked for a template.

it wasn't the easiest to figure out at the beginning but i think the current state of devos should make it much easier for anyone getting into nix as i think a flake native setup is just easier (and devos/digga brings a lot of things together to make it easy from the onset). i'll get around to redpilling some friends with a devos + home-manager + arch/debian tutorial at some point, cause i think it's a really nice way to interact with nixos overall

23:24:32
@timdeh:matrix.org@timdeh:matrix.orgI actually agree, under the condition that the language improves, and or Nickel takes it's place23:24:39
@d4hines:matrix.org@d4hines:matrix.orgNickel would help a lot. But TOML files make me happy because I expect a finite number of options that I could read the docs for in a day or two, whereas a full programming language has no ceiling. Nix expressions aren't really declarative in that sense - they're kind of monadic, like using Haskell functions to build imperative IO programs.23:26:48
@d4hines:matrix.org@d4hines:matrix.org TOML options I can figure out. final: prev: {...}... that's a lot more arcane. 23:27:51
@timdeh:matrix.org@timdeh:matrix.orgI think toml is great for values that are static by their very nature23:28:19
@timdeh:matrix.org@timdeh:matrix.orgBut we shouldn't try to force everything Nix into it or we risk losing expressive power23:28:34
@d4hines:matrix.org@d4hines:matrix.orgRight. That's why I really like DevShell, because it wraps up the simple stuff in a TOML file with arbitrary nix expressions as an escape hatch.23:29:10
@timdeh:matrix.org@timdeh:matrix.org plus if there was no builtins.fromTOML there would only be builtins.fromJSON 😆 23:29:26
@timdeh:matrix.org@timdeh:matrix.orgIt's nice to have a human readable/writable format to quickly import from23:29:43
@d4hines:matrix.org@d4hines:matrix.org
In reply to @timdeh:matrix.org
It's nice to have a human readable/writable format to quickly import from
The implication being nix expressions are not some human read/writeable...
23:30:14
@d4hines:matrix.org@d4hines:matrix.org
In reply to @timdeh:matrix.org
It's nice to have a human readable/writable format to quickly import from
* The implication being nix expressions are not so human read/writeable...
23:30:21
@ultranix:matrix.orgultranixwrapping the stuff is what makes it more difficult for me, because then i got to go understand a bunch of abstraction code to understand nix. its better to just not tackle nix from nothing and RTFM, almost unavoidable23:30:56
@timdeh:matrix.org@timdeh:matrix.org
In reply to @d4hines:matrix.org
Right. That's why I really like DevShell, because it wraps up the simple stuff in a TOML file with arbitrary nix expressions as an escape hatch.
yes devshell is probably my favorite nix proect
23:30:58
@timdeh:matrix.org@timdeh:matrix.orgI feel like NixOS missed a juge opportunity by coupling the module system so closing with systemd 😥23:31:19

Show newer messages


Back to Room ListRoom Version: 6