Added nix for developer setup (#1379) - Asking for feedback #1602
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 PR isn't to be merged, I'm posting it just to solicit feedback.
I've talked with Greg and done a demo, now making it more widely available for feedback before I carry out the rest of the work of consolidating/updating the docs, but this is an important change that should have general buy in before I proceed.
What I'm proposing is
docs/nix_based_setup.md
becomes theREADME.md
and the only install documentation we have. I may move content from other documentation to here as I consolidate. General information docs will remain separate. I'm thinking the readme should be setup + an index of other docs.For those who aren't aware, Nix is a package manager which you can consider as similar to brew, but can be declarative like having a
package.json
/requirements.txt
(seeflake.nix
) and can be limited to a single project, like it is here for website-v2. There's a video linked indocs/nix_based_setup.md
that covers Nix.What this will provide is a system that should be much easier to start with, it sets up all dependencies, asciidoctor and the boost gem etc., sets up a virtualenv, compiles all the json out of the gate, and should allow a developer to be up and running with a complete system (as far as I'm aware of it now) for the project quickly.
There are bootstrap scripts in docs/scripts already that could be useful but would need updating. Personally I'm wary of running scripts that make wide ranging changes to my system and am of the opinion it's easier/quicker to follow instructions than read the scripts to see if there might be issues or collisions with how I normally do things, or might not have been maintained, but I might be in the minority there, so I'd like feedback on that too.
Happy to do another demo if people want to know what it will look like or have questions.
Please add anyone else you think may be useful to provide feedback as a reviewer.