pantry/README.md

101 lines
2.6 KiB
Markdown
Raw Normal View History

2022-08-01 22:43:40 +03:00
![tea](https://tea.xyz/banner.png)
2022-11-01 15:31:22 +03:00
This pantry† is the complement to [pantry.core].
2022-08-01 22:43:40 +03:00
2022-11-01 15:31:22 +03:00
Longer term it will be split out into more pantries, some of which we hope
will be maintained by their own communities.
2022-11-01 15:31:22 +03:00
> † see [pantry.zero] for “what is a pantry”
2023-02-11 14:06:35 +03:00
# Use with tea/cli
[tea/cli] clones/updates this pantry and [pantry.core] when installed with
the installer or when you run `tea --sync`. At this time pantries are not
versioned.
 
2022-11-01 15:31:22 +03:00
# Contributing
2023-02-15 14:16:02 +03:00
Assuming you have tea+magic installed:
2023-02-11 14:06:35 +03:00
```sh
$ git clone https://github.com/teaxyz/pantry.extra
$ cd pantry.extra
# all the following commands operate in `./tea.out`
# your tea installation remains untouched
2023-02-12 19:57:17 +03:00
$ pkg init
2023-02-11 14:06:35 +03:00
# ^^ creates a “wip” package.yml
2023-02-12 19:57:17 +03:00
# ^^ if you already know the name, you can pass it as an argument
2023-02-11 14:06:35 +03:00
2023-02-12 19:57:17 +03:00
$ pkg edit
2023-02-11 14:06:35 +03:00
# ^^ opens the new package.yml in your EDITOR
2023-02-12 19:57:17 +03:00
$ pkg build
2023-02-15 14:16:02 +03:00
# ^^ needs a zero permissions GITHUB_TOKEN to use the GitHub API
# either set `GITHUB_TOKEN` or run `gh auth login`
2023-02-11 14:06:35 +03:00
2023-02-12 19:57:17 +03:00
$ pkg test
2023-02-11 14:06:35 +03:00
# ^^ you need to write a test that verifies the package works
$ gh repo fork
$ git branch -m my-new-package
$ git push origin my-new-package
$ gh pr create
```
2023-02-18 17:16:35 +03:00
> `pkg` can be run without magic via `tea -E pkg` (this dev-env provides `+tea.xyz/brewkit`).
2023-02-15 14:16:02 +03:00
> `gh` can be run without magic via `tea gh`.
> `git` can be run without magic via `tea git`.
2023-02-11 14:06:35 +03:00
## Packaging Guide
Packaging can be cumbersome.
Our [wiki] is our packaging knowledge base.
For other assistance, start a [discussion].
## After Your Contribution
We build “bottles” (tard binaries) and upload them to both our centralized
bottle storage and decentralized [IPFS].
tea automatically builds new releases of packages *as soon as they are
released* (usually starting the builds within seconds). There is no need to
submit PRs for updates.
2023-02-26 17:35:02 +03:00
## Working on Other Peoples Pull Requests
Packaging can be fiddly so we all pitch in. If you want to help someone else
with their pull request then you can use GitHubs CLI:
```
$ gh pr checkout 123
# or you can copy paste the URL:
2023-02-26 17:35:02 +03:00
$ gh pr checkout https://github.com/teaxyz/pantry.extra/pull/123
# then open for editing:
$ pkg edit
2023-02-26 17:35:02 +03:00
```
2023-02-11 14:06:35 +03:00
 
2023-02-12 19:57:17 +03:00
# Dependencies
2023-02-12 19:57:17 +03:00
| Project | Version |
|-----------------|---------|
2023-02-18 17:16:35 +03:00
| tea.xyz/brewkit | ^0.3 |
2023-02-11 14:06:35 +03:00
[pantry.zero]: https://github.com/teaxyz/pantry.zero
2023-02-12 19:57:17 +03:00
[pantry.core]: https://github.com/teaxyz/pantry.core
2023-02-11 14:06:35 +03:00
[wiki]: https://github.com/teaxyz/pantry.zero/wiki
[tea/cli]: https://github.com/teaxyz/cli
[discussion]: https://github.com/orgs/teaxyz/discussions
[PAT]: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
[IPFS]: https://ipfs.tech