~ knotless Search/
↑↓ move↵ open⇧↵ all results

johnandersen777.bsky.social/atlibs

0
0
main
54 lines · 1.8 KB Raw History

Publish a module

Publishing writes to your PDS: the wasm, a com.fedfork.exec.wasm.module record and the source it was built from. The build runs in a rust:<your rustc version> container (podman, docker or Apple's container), so atlibs verify reproduces it anywhere.

In the repo from Write a module, built once (cargo wasm writes Cargo.lock):

cd my-module
git init -q && git add -A && git commit -qm my-module
git remote add origin https://example.com/you/my-module   # the source manifest records it
atlibs login you.bsky.social
atlibs publish --dry-run --as you.bsky.social
atlibs publish --as you.bsky.social
…
would-publish  my-module  <pin>  -
0 published, 0 unchanged, 1 would publish, 0 skipped:dirty, 0 drift, 0 failed (cache …)
…
published      my-module  <pin>  <cid>  you.bsky.social/my-module
1 published, 0 unchanged, 0 would publish, 0 skipped:dirty, 0 drift, 0 failed (cache …)

Publishing refuses uncommitted sources. Later runs publish only what changed. Without OAuth: --app-password you.bsky.social --password-env APP_PASSWORD in place of --as.

Verify, add, run

Anyone can rebuild it and compare, then use it:

atlibs verify you.bsky.social/my-module
cd "$(mktemp -d)"
atlibs add you.bsky.social/my-module
atlibs run my-module describe '{"did":"did:plc:ocnuqjlzgohypj3zoznermms"}'
…"reproducible": true…
added my-module (you.bsky.social/my-module) pin …

Remove it

atlibs publish delete com.fedfork.exec.wasm.module/my-module --as you.bsky.social

Signed-in modules (a session record), pins, what is uploaded: Publish a module.

Previous: Write a module | Next: Compose