Open
Description
The first-time setup workflow as of initial public release is effectively:
make deps
, which will error if Homebrew isn't found.- User must manually
make install-homebrew
to install Homebrew, then runmake deps
again
- User must manually
make deps
, viadeps-brew
will install deps from Homebrew including pyenvmake deps
, viainstall-python
viadeps-py
, will install Python from pyenv, which will error ifpyenv
isn't found- User must manually add
pyenv
loading code to shell rcfile, then runmake deps
again
- User must manually add
make deps
, viainstall-poetry
viadeps-py
, will install Poetry using pyenv-installed Python or system Python, whichever it detects first, and only ifpoetry
isn't available as of the start of the current run ofmake
.make deps
, viapoetry-install
viadeps-py
, will install Python deps using Poetry, which will error ifpoetry
isn't found- User must manually add
~/.local/bin
, Poetry's default installation path, to their PATH in shell rcfile, then runmake deps
again.
- User must manually add
- Complete 🎉
There are some steps I skipped in here related to telling Poetry which Python to use (it generally just works) and sync'ing Peru (also generally just works).
These one-time setup steps ("user must manually…") are annoying. While some tasks tell the user that they need to read command output, too many users just… don't.
Possible solutions:
- Document most generic thing to pre-add to a user's shellrc file in
README.md
or at the end ofmake deps
. - Create a task
make wreck-my-rcfile
or maybe more nicelymake setup-rcfile-once
that modifies the shellrc with what should be put there carefully manually. - No action: let the user suffer having ignored the nudge to read command output.
Metadata
Metadata
Assignees
Labels
No labels