Improve first-time setup workflow
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 30/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- python
- Domain
- build-system, developer-experience
Research direction
Start with the make deps flow in Makefile, especially the command-output tasks at lines 211-225, and review the setup guidance in README.md. Compare the documented shell-rc approach with the proposed setup task, then define which approach should eliminate the repeated manual setup steps and how completion will be verified.
Written by the indexing model from the issue text.
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-homebrewto install Homebrew, then runmake depsagain
- User must manually
make deps, viadeps-brewwill install deps from Homebrew including pyenvmake deps, viainstall-pythonviadeps-py, will install Python from pyenv, which will error ifpyenvisn't found- User must manually add
pyenvloading code to shell rcfile, then runmake depsagain
- User must manually add
make deps, viainstall-poetryviadeps-py, will install Poetry using pyenv-installed Python or system Python, whichever it detects first, and only ifpoetryisn't available as of the start of the current run ofmake.make deps, viapoetry-installviadeps-py, will install Python deps using Poetry, which will error ifpoetryisn't found- User must manually add
~/.local/bin, Poetry's default installation path, to their PATH in shell rcfile, then runmake depsagain.
- 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.mdor at the end ofmake deps. - Create a task
make wreck-my-rcfileor maybe more nicelymake setup-rcfile-oncethat 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.
- Dominant language
- Makefile
- Stars
- 31
- Forks
- 6
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from target/make-python-devex
-
Difficulty 2/5 1-3 hours Newbie friendliness 48/100
target/make-python-devex#198 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 35/100
target/make-python-devex#182 ·
-
devcontainers setup Open
Difficulty 3/5 1-2 days Newbie friendliness 42/100
target/make-python-devex#181 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 50/100
target/make-python-devex#172 · 1 comment · 1 reaction ·
-
Use actionlint Open
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
target/make-python-devex#156 ·
All issues in target/make-python-devex
Similar issues
-
kind/bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
kubernetes-sigs/prow#953 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
zephyrproject-rtos/zephyr#119726 ·
-
out-of-date
Difficulty 1/5 Under an hour Newbie friendliness 82/100
CachyOS/CachyOS-PKGBUILDS#1894 ·
-
comp/dashboard P3 type/bug
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
NousResearch/hermes-agent#117722 ·
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 92/100
objectionary/jeo-maven-plugin#1760 ·