HELP.md missing step to pull lib.base
- Dominant language
- Shell
- Stars
- 5
- Forks
- 22
- PR merge metrics
- No merged PRs in 30d
Description
With a fresh install of the current version of UCM, it appears that the base library is not included. It is required to run `pull unison.public.base.latest lib.base` at the UCM prompt, or else basic types (`Text` for example) are not found and nothing works.
I've never installed Unison, so I'm bumbling around with no clue in a strange system. Fortunately a kind soul left [a comment on Exercism's Youtube video](https://www.youtube.com/watch?v=4UMaaiJnWGY&lc=UgwPMYd1dxQVqVOGosJ4AaABAg) to help out.
Another comment mentions needing `fork .base lib.base`. That command caused an error for me, but fortunately it seems it's not needed. I don't know what the right procedure for getting started is, but it would be great to have it spelled out a bit more in HELP.md for the current version of Unison. To be fair, the Unison Quickstart guide also does not mention anything about it, despite what appears to be a significant effort to make the docs and system friendly to new users.
## How to repeat
```
quickstart/main> cd .exercism.hello_world
☝️ The namespace .exercism.hello_world is empty.
.exercism.hello_world>
.exercism.hello_world> ls
nothing to show
.exercism.hello_world> add
😶
There's nothing for me to add right now.
Hint: I'm currently watching for definitions in .u files under the
~/g/exercism/unison/hello-world directory. Make sure you've updated something there
before using the `add` or `update` commands, or use `load` to load a file explicitly.
.exercism.hello_world> load hello.u
❓
I couldn't resolve any of these symbols:
2 | hello.hello : Text
Symbol Suggestions
Text No matches
.exercism.hello_world> fork .base lib.base
⚠️
The namespace .base doesn't exist.
.exercism.hello_world> pull unison.public.base.latest lib.base
Downloaded 779 entities.
✅
Successfully pulled into lib.base, which was empty.
.exercism.hello_world> fork .base lib.base
⚠️
The namespace .base doesn't exist.
.exercism.hello_world> fork lib.base
`fork src dest`creates the namespace `dest` as a copy of `src`.
.exercism.hello_world> load hello.u
I found and typechecked these definitions in hello.u. If you do an `add` or `update`, here's
how your codebase would change:
⍟ These new definitions are ok to `add`:
hello.hello : Text
.exercism.hello_world> add
⍟ I've added these definitions:
hello.hello : Text
.exercism.hello_world> load hello.test.u
I found and typechecked these definitions in hello.test.u. If you do an `add` or `update`,
here's how your codebase would change:
⍟ These new definitions are ok to `add`:
hello.test : Test
hello.tests : [Result]
Now evaluating any watch expressions (lines starting with `>`)... Ctrl+C cancels.
6 | test> hello.tests = runAll [hello.test]
✅ Passed : Passed 1 tests.
.exercism.hello_world>
```
## System information
Arch Linux
Latest (releases/M5g) ucm-linux.tar.gz downloaded from https://github.com/unisonweb/unison/releases/download/release%2FM5g/ucm-linux.tar.gz
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading HELP.md and the Unison Quickstart guide, then compare their setup steps with the fresh-install transcript in this issue. Clarify the procedure for obtaining the base library, including the command that makes basic types available, and ensure the documented steps take a new user through a working hello-world example.
Written by the indexing model from the issue text.
Assessment
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100