What is a top-level configuration without flake-parts? #562
-
|
Hello, I've been running dendritic flakes using import-tree + flake-parts for several months, and it's very satisfying. I want to explore alternatives to flakes like unflake, but I think it means I'll lose flake-parts. @mightyiam points out several times that "a top-level configuration" doesn't have to be a flake-parts module; the idea just happened to get invented with this stack. I found the word "flakeless-parts" in some source code, but it doesn't appear to be a project in itself. I think the power of flake-parts is standardizing on a schema: I spent the most time looking at all these researchy dendritic patterns trying to understand what everyone is doing, since it all looks different. Refreshing, but time-consuming. So: Is there a flake-parts compatible top-level configuration spec that doesn't require the experimental flake runtime? Or does every non-flake dendritic Nix user rely on their own idea of a top-level configuration? |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments
-
|
From my understanding, unflake is an alternative CLI that allows using flakes and is powered by non-flake Nix things and maybe some Python if I remember correctly. So, unflake is an alternative flake implementation, not an alternative to flakes quite. Which means you'd still be able to use flake-parts, right? Now, I don't know what everyone is doing, but, what do you want to do? |
Beta Was this translation helpful? Give feedback.
-
|
I want to use flake-parts without enabling the experimental flake feature. I'll give it a shot with unflake. |
Beta Was this translation helpful? Give feedback.
-
|
Hey @sshine, you don't have to enable the flake experimental feature to use flake-parts. flake-parts has no hard dependency on nix-flakes per-se, flake-parts is just another module providing its own module-options and some helpers. So it is absolutely possible to use it without flakes. My own initial experiments on this are at https://github.com/denful/dendritic-unflake/tree/main/templates/flake-parts We do have an you might want also to take a look at the different templates shipped by |
Beta Was this translation helpful? Give feedback.
-
|
Additional note: You can also use flakes as normal without using the nix-experimental feature by using |
Beta Was this translation helpful? Give feedback.
Hey @sshine, you don't have to enable the flake experimental feature to use flake-parts.
flake-parts has no hard dependency on nix-flakes per-se, flake-parts is just another module providing its own module-options and some helpers. So it is absolutely possible to use it without flakes. My own initial experiments on this are at https://github.com/denful/dendritic-unflake/tree/main/templates/flake-parts
We do have an
unflakeexample in Den but that one uses lib.evalModules (to show using Den without flake-parts), my vic/vix repo uses flake-parts and I use npins + with-inputs, I previously used unflake, but decided to go simpler with npins.you might want also to take a look at the different…