fix: self-host compose ownership, key import, owner onboarding - #2824
fix: self-host compose ownership, key import, owner onboarding#2824Chessing234 wants to merge 3 commits into
Conversation
|
Can we have this merged to fix this issue? |
|
@tlongwell-block @wesbillman @wpfleger96 mind taking a look when you get a chance? |
|
hex import is split out as a focused pr: https://github.com/block/buzz/pull/new — wait, will link the number. this selfhost bundle stays conflicting; happy to rebase the compose bits separately if useful. |
|
hex import is split out as #4504 so it can land without the conflicting compose bundle. |
|
self-host compose ownership + key import path. @MajorTal you've been in the desktop/git weeds lately if this is useful overlap. |
Fresh named volumes are root-owned; the relay runs as uid 1000 and cannot create /data/git/.pack-cache without an init step. Closes block#2814 Signed-off-by: Taksh <takshkothari09@gmail.com>
Self-hosters paste the printed secret into desktop onboarding, which expects nsec1 — hex-only output left that path stuck. Closes block#2815 Signed-off-by: Taksh <takshkothari09@gmail.com>
"I own the community" previously only opened Builderlab. Self-hosters need a relay URL path; keep hosted sign-in as a second choice. Closes block#2816 Signed-off-by: Taksh <takshkothari09@gmail.com>
21a46be to
eb76289
Compare
|
rebased onto main and split hex import into #4504 — still waiting on maintainer review before it can merge. |
ryanmitchellneely
left a comment
There was a problem hiding this comment.
Review (issue author of #2816)
Thanks @Chessing234 — this unblocks the exact dead-end I hit.
#2816 owner onboarding — LGTM
WelcomeSetup.tsx does the right product split:
- I own the community no longer jumps straight to Builderlab
- New owner page offers:
- Connect a self-hosted relay → existing member/relay URL flow
- Sign in with Builderlab → hosted path
memberBackPagekeeps Back correct from both entry points (member and self-host owner)
That matches the expected behavior in #2816 and the provider-neutral framing others confirmed on current main (role ≠ hosting).
Related fixes in this PR — also good
buzz-admin generate-key: prints hex and npub/nsec so desktop paste works (#2815 half). Clear operator copy.- compose
git-data-init: chownbuzz-git-datato uid 1000 before relay start — correct fix for fresh named volumes + non-rootUSER buzzpack-cache loop (#2814).
Non-blocking notes
- Hex secret import for desktop is correctly deferred to #4504 per PR body — fine; just keep that linked so self-hosters don’t think this PR alone finishes key import.
- No Playwright/onboarding regression in the diff; morthenjensen-wq offered a focused test on #2816 — nice follow-up but not a merge blocker for this UX fix.
- Self-host Mac still needs the known CORS footgun (
BUZZ_CORS_ORIGINS=tauri://localhost) until that’s documented/defaulted elsewhere — out of scope here.
Verdict
Please merge. This is the first-five-minutes path for the OSS/self-host audience the repo targets. Happy to re-verify on a desktop build once it lands.
— Ryan (reporter of #2816)
Summary
buzz-git-datato uid 1000 so the non-root relay can write pack-cache (Freshdeploy/composestack: relay crash-loops on/data/git/.pack-cache(root-owned named volume vs non-root uid 1000) #2814).buzz-admin generate-key: print nsec/npub for desktop paste (buzz-admin generate-keyemits a hex secret that desktop onboarding rejects (expectsnsec1) #2815 admin half).Hex secret import for desktop lives in #4504 (dropped from this tip on rebase to avoid duplicating it).
Test plan
buzz-admin generate-keyprints nsec1… / npub1…