Add migration logic to nix-darwin module #58
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This ensures that users of the existing nix-darwin module will get helpful migration instructions rather than evaluation errors once the nix-darwin Nix management changes are merged. It should also make #50 and #53 unnecessary, as it will be possible to use nix-darwin with Determinate without any additional module or any monkey‐patching, and the migration logic is implemented fully within the existing managed module.
The installation documentation on the site will need updating as appropriate to recommend the normal macOS installation path for nix-darwin users, and to inform them that the only thing they need to add to their nix-darwin configuration is
nix.enable = false;
– though nix-darwin will inform them of that on first activation as well. (Perhaps a flake template could be offered from this repository, though it’d have to stay up‐to‐date with nix-darwin changes likesystem.stateVersion
bumps.)Drafted until the relevant nix-darwin changes are merged and backported to 24.11.
Note: This work was funded by Determinate Systems.