| 12 Aug 2021 |
@timdeh:matrix.org | I'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-dram | 23:22:28 |
@timdeh:matrix.org | I would make it a DevOS default, but it's not unanimous among the DevOS core team yet | 23:22:45 |
ultranix | i dont understand why nix projects make use of TOML | 23:23:29 |
@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-dram | 23:23:33 |
@timdeh:matrix.org | builtins.fromTOML probably? | 23:24:14 |
ultranix | i would rather configs stay in programmable nix world | 23:24:15 |
@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 | I actually agree, under the condition that the language improves, and or Nickel takes it's place | 23:24:39 |
@d4hines:matrix.org | Nickel 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 | TOML options I can figure out. final: prev: {...}... that's a lot more arcane. | 23:27:51 |
@timdeh:matrix.org | I think toml is great for values that are static by their very nature | 23:28:19 |
@timdeh:matrix.org | But we shouldn't try to force everything Nix into it or we risk losing expressive power | 23:28:34 |
@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. | 23:29:10 |
@timdeh:matrix.org | plus if there was no builtins.fromTOML there would only be builtins.fromJSON 😆 | 23:29:26 |
@timdeh:matrix.org | It's nice to have a human readable/writable format to quickly import from | 23:29:43 |
@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 | 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 | wrapping 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 unavoidable | 23:30:56 |
@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 | I feel like NixOS missed a juge opportunity by coupling the module system so closing with systemd 😥 | 23:31:19 |
@timdeh:matrix.org | for compliant containerization I mean | 23:31:27 |
@timdeh:matrix.org | then devshell could be a container | 23:31:31 |
ultranix | In reply to @timdeh:matrix.org I feel like NixOS missed a juge opportunity by coupling the module system so closing with systemd 😥 oh yeah, for sure | 23:31:40 |
ultranix | but its also easier to support the one | 23:31:55 |
@timdeh:matrix.org | * I feel like NixOS missed a huge opportunity by coupling the module system so closing with systemd 😥 | 23:31:59 |
@timdeh:matrix.org | yeah but a man can dream 😅 | 23:32:14 |
@kraftnix:matrix.org | i have had to learn way too much about systemd in the last year, and i'm not the biggest fan overall (the docs are awful), but it gives you a lot. | 23:32:33 |
@d4hines:matrix.org | I kind of wonder if one could build a Nix derivation monad (I'm assuming it's a monad but I'm not schooled in it yet) in Typescript - instant, unparalleled developer tools. | 23:32:42 |
@d4hines:matrix.org | Gradual typing, language server, huge ecosystem of libraries. | 23:33:08 |
@d4hines:matrix.org | I wonder why edolstra is working on Nickel from scratch and not in another lang with gradual types. | 23:34:01 |