mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-09-11 10:46:43 +03:00
Update CONTRIBUTING.md.
Removes references to the old Arvo repository and updates information about pills.
This commit is contained in:
parent
42d8313aa7
commit
f50f2e6c70
@ -92,16 +92,17 @@ source files that are denoted by comments and are actually indented one
|
|||||||
level.
|
level.
|
||||||
|
|
||||||
Hoon will be a less familiar language to many contributors. More details are
|
Hoon will be a less familiar language to many contributors. More details are
|
||||||
forthcoming; for now, the `%ford` vane (in [`sys/vane/ford.hoon`][ford]) is
|
forthcoming; for now, the `%ford` vane (in
|
||||||
some of the highest quality code in the kernel.
|
[`pkg/arvo/sys/vane/ford.hoon`][ford]) is some of the highest quality code in
|
||||||
|
the kernel.
|
||||||
|
|
||||||
[ford]: https://github.com/urbit/arvo/blob/master/sys/vane/ford.hoon
|
[ford]: https://github.com/urbit/urbit/blob/master/pkg/arvo/sys/vane/ford.hoon
|
||||||
|
|
||||||
## Kernel development
|
## Kernel development
|
||||||
|
|
||||||
Working on either C or non-kernel Hoon should not bring any surprises, but the
|
Working on either C or non-kernel Hoon should not bring any surprises, but the
|
||||||
Hoon kernel (anything under `sys/` in [urbit/arvo][arvo]) is bootstrapped from
|
Hoon kernel (anything under [`pkg/arvo/sys/`][sys]) is bootstrapped from a
|
||||||
a so-called *pill*, and must be recompiled if any changes are made. This should
|
so-called *pill*, and must be recompiled if any changes are made. This should
|
||||||
happen automatically when you make changes, but if it doesn't, the command to
|
happen automatically when you make changes, but if it doesn't, the command to
|
||||||
manually recompile and install the new kernel is `|reset` in `dojo`. This
|
manually recompile and install the new kernel is `|reset` in `dojo`. This
|
||||||
rebuilds from the `sys` directory in the `home` desk in `%clay`.
|
rebuilds from the `sys` directory in the `home` desk in `%clay`.
|
||||||
@ -110,14 +111,15 @@ Currently, `|reset` does not reload apps like `dojo` itself, which will still
|
|||||||
reference the old kernel. To force them to reload, make a trivial edit to their
|
reference the old kernel. To force them to reload, make a trivial edit to their
|
||||||
main source file (under the `app` directory) in `%clay`.
|
main source file (under the `app` directory) in `%clay`.
|
||||||
|
|
||||||
[arvo]: https://github.com/urbit/arvo
|
[arvo]: https://github.com/urbit/urbit/tree/master/pkg/arvo
|
||||||
|
[sys]: https://github.com/urbit/urbit/tree/master/pkg/arvo/sys
|
||||||
|
|
||||||
## The kernel and pills
|
## The kernel and pills
|
||||||
|
|
||||||
Urbit bootstraps itself using a binary blob called a pill (you can see it being
|
Urbit bootstraps itself using a binary blob called a pill (you can see it being
|
||||||
fetched from `bootstrap.urbit.org` on boot). This is the compiled version of
|
fetched from `bootstrap.urbit.org` on boot). This is the compiled version of
|
||||||
the kernel (which you can find in the `sys` directory of [urbit/arvo][arvo]),
|
the kernel (which you can find in the `sys` directory of [Arvo][arvo]), along
|
||||||
along with a complete copy of the `urbit/arvo` repository as source.
|
with a complete copy of the Arvo source.
|
||||||
|
|
||||||
The procedure for creating a pill is often called "soliding." It is somewhat
|
The procedure for creating a pill is often called "soliding." It is somewhat
|
||||||
similar to `|reset`, but instead of replacing your running kernel, it writes
|
similar to `|reset`, but instead of replacing your running kernel, it writes
|
||||||
@ -136,21 +138,31 @@ You can boot a new ship from your local pill with `-B`:
|
|||||||
$ urbit -F zod -B path/to/urbit.pill my-fake-zod
|
$ urbit -F zod -B path/to/urbit.pill my-fake-zod
|
||||||
```
|
```
|
||||||
|
|
||||||
Ordinarily, `https://bootstrap.urbit.org/latest.pill` will be updated
|
Pills are cached at `https://bootstrap.urbit.org` and are indexed by the first
|
||||||
to match whatever's on the HEAD of `master` in the `urbit/arvo` repository.
|
10 characters of the `git` SHA1 of the relevant commit, i.e. as
|
||||||
Older pills are indexed by the first 10 characters of the `git` SHA1 of the
|
`git-[sha1].pill`. The continuous integration build uploads these pills for
|
||||||
relevant commit, i.e. as `git-[sha1].pill`. The continuous integration build
|
any successful build of a commit or pull request that affects the
|
||||||
of the `urbit/arvo` repository uploads these pills for any successful build of
|
`pkg/arvo/sys/` directory.
|
||||||
a commit or pull request that affects the `sys/` directory.
|
|
||||||
|
|
||||||
You can boot from one of these pills by passing the path to an Arvo working
|
You can boot from one of these pills by passing the path to an Arvo working
|
||||||
copy with `-A` (and `-s` for *search*):
|
copy with `-A` (and `-s` for *search*):
|
||||||
|
|
||||||
```
|
```
|
||||||
$ git clone https://github.com/urbit/arvo
|
$ git clone https://github.com/urbit/urbit
|
||||||
$ urbit -F zod -A path/to/arvo -s my-fake-zod
|
$ urbit -F zod -sA urbit/pkg/arvo -s my-fake-zod
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Pills are also cached in version control via [git LFS][git-lfs]. You can find
|
||||||
|
the latest solid pill (as well as the latest so-called *brass* and *ivory*
|
||||||
|
pills) in the `bin/` directory at the repository root:
|
||||||
|
|
||||||
|
```
|
||||||
|
$ git lfs init
|
||||||
|
$ git lfs pull
|
||||||
|
```
|
||||||
|
|
||||||
|
[git-lfs]: https://git-lfs.github.com
|
||||||
|
|
||||||
## What to work on
|
## What to work on
|
||||||
|
|
||||||
If you are not thinking of contributing with a specific goal in mind, the
|
If you are not thinking of contributing with a specific goal in mind, the
|
||||||
|
Loading…
Reference in New Issue
Block a user