| 17 Jul 2023 |
asymmetric | * It is indeed what we agreed upon at the moment, given that they're marked as experimental. We decided to only focus our (limited) energies on what's stable, and to defer to the wider community for when flakes are ready for prime time. There are obvious downsides to this, and different ways to look at the situation (one of them being "harm reduction", i.e. people are already using flakes, we should teach them how to do it safely), but given that the state of the conversation is what it is, the team opted for having a clearly defined line between what's supported and what isn't | 14:47:43 |
asymmetric | * It is indeed what we agreed upon at the moment, given that they're marked as experimental. We decided to only focus our (limited) energies on what's stable, and to defer to the wider community for when flakes are ready for prime time. There are obvious downsides to this, and different ways to look at the situation (one of them being "harm reduction", i.e. people are already using flakes, we should teach them how to do it safely), but given that the state of the conversation is what it is, the team opted for using stability as the demarcating line between what goes into nix.dev and what doesn't | 14:48:32 |
Domen Kožar | We could make it a sprint topic for nixcon :) | 14:53:00 |
asymmetric | In reply to @domenkozar:matrix.org We could make it a sprint topic for nixcon :) could be an idea 🙂 unfortunately tickets already sold out ☹️ | 14:55:23 |
fricklerhandwerk | I'll be there and I'd rather focus on docs infrastructure, such as setting up better linting and automated tests for examples | 15:04:27 |
fricklerhandwerk | * I'll be there and I'd rather focus on docs infrastructure, such as setting up better linting and automated tests for examples, as that will provide long-term value regardless | 15:04:44 |
infinisil | Domen Kožar: I really like the idea of "If you want Flakes to be officially documented, work towards its stabilisation" | 15:34:42 |
infinisil | It doesn't make sense to invest a lot of effort into documenting something experimental, but not investing effort into trying to stabilise it | 15:35:08 |
ronef | asymmetric: pinged you privately to get this resolved! :) | 16:55:02 |
Domen Kožar | In reply to @infinisil:matrix.org It doesn't make sense to invest a lot of effort into documenting something experimental, but not investing effort into trying to stabilise it Most of Nix users are using flakes and it's not documented, that's what I care about. The stabilization process is something I'm personally not interested to put in the time, I care that our users have docs to use Nix :) | 17:11:26 |
Domen Kožar | I'm fine saying it's experimental, etc. | 17:12:06 |
infinisil | It's experimental for a reason, Flakes still has a number of major problems left unaddressed | 17:12:25 |
infinisil | I do not want these to become immortalized | 17:12:38 |
Domen Kožar | That's really orthogonal, most users use flakes, that's the interface they expect. | 17:12:53 |
Domen Kožar | Either way, if we make changes it will be V2. | 17:13:07 |
infinisil | I'd rather have well-designed software than many users. The better something is designed, the longer it will last because it's harder for something better to replace it | 17:16:39 |
Domen Kožar | What I'm saying is that's not the reality we live in. We can talk about dreams, but there are a lot of Nix Flakes users that need documentation to be able to use it. | 17:17:07 |
Domen Kožar | There were many mistakes made on the path of flakes, but not having the docs is something we need to fix asap. | 17:18:04 |
infinisil | Yeah I get it, that's just not where my priorities are. There's more dire problems to solve than to document hacked-together experimentally-labeled features | 17:18:52 |
infinisil | * Yeah I get it, that's just not where my priorities are. I think there's more dire problems to solve than to document hacked-together experimentally-labeled features | 17:19:30 |
@brian:bmcgee.ie | I lean more Domen Kožar's direction on this one for the simple reason that the majority of my 2 years with Nix has been flake-oriented. The only time I write a shell.nix is to make a project compatible for non flake users. There are valid concerns about flakes and a need to stabilise them. Maybe I'm putting effort in the wrong place and should be helping to stabilise flakes like you said infinisil rather than putting effort into documenting a workflow I choose not to use on a daily basis (and I say this without any kind of snark or ill feeling). | 18:13:02 |
@brian:bmcgee.ie | Btw, I'll be at NixCon 🥳 | 18:13:38 |
infinisil | I guess I also really don't like how the documentation team is seemingly put into the responsibility to document Flakes. | 18:16:49 |
infinisil | The people adding a new feature should be responsible for documenting it and ensuring it's well-designed so it can be stabilised | 18:18:22 |
infinisil | This would also set a precedent that the docs team will document whatever ill-designed and barely-documented feature gets merged into Nix | 18:19:40 |
@brian:bmcgee.ie | Yeah that's a fair point. I wanted to know what the schema was for the json output when using `nix flake show` and had to look at the source ... no bueno | 18:19:47 |
@brian:bmcgee.ie | If you don't document something after you write it because it's experimental and subject to change then you can't really expect the docs team to do the same | 18:21:33 |
infinisil | Also, the more general precedent of how RFCs can just be canceled, merged as experimental if you have the right commit bit, encouraged to be used by everybody if you have an audience, and then require teams to adapt to it | 18:21:37 |
infinisil | Relevant is Alyssa Ross's comment here: https://github.com/NixOS/rfcs/pull/136#discussion_r987278726 | 18:22:22 |
@brian:bmcgee.ie | I agree with the comment, if it's experimental, break it as necessary. As a flakes user I accept the churn, and I'll update as necessary. I know there will be a lot of people unhappy about any kind of breakage but I think this would be a valuable lesson as to why you don't let experimental features sit for long enough to become de facto use cases for a large chunk of people rather than stabilising them | 18:26:31 |