Skip to content

fix: self-host compose ownership, key import, owner onboarding - #2824

Open
Chessing234 wants to merge 3 commits into
block:mainfrom
Chessing234:fix/selfhost-onboarding-bugs
Open

fix: self-host compose ownership, key import, owner onboarding#2824
Chessing234 wants to merge 3 commits into
block:mainfrom
Chessing234:fix/selfhost-onboarding-bugs

Conversation

@Chessing234

@Chessing234 Chessing234 commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

Summary

Hex secret import for desktop lives in #4504 (dropped from this tip on rebase to avoid duplicating it).

Test plan

  • Fresh compose volume: relay starts without pack-cache permission loop
  • buzz-admin generate-key prints nsec1… / npub1…
  • Owner onboarding can enter a self-hosted relay URL

@BillChirico

Copy link
Copy Markdown

Can we have this merged to fix this issue?

@Chessing234

Copy link
Copy Markdown
Contributor Author

@tlongwell-block @wesbillman @wpfleger96 mind taking a look when you get a chance?

@Chessing234

Copy link
Copy Markdown
Contributor Author

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.

@Chessing234

Copy link
Copy Markdown
Contributor Author

hex import is split out as #4504 so it can land without the conflicting compose bundle.

@Chessing234

Copy link
Copy Markdown
Contributor Author

also closed #4244 in favor of #4348; hex import lives in #4504.

@Chessing234

Copy link
Copy Markdown
Contributor Author

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>
@Chessing234
Chessing234 force-pushed the fix/selfhost-onboarding-bugs branch from 21a46be to eb76289 Compare August 3, 2026 11:37
@Chessing234

Copy link
Copy Markdown
Contributor Author

rebased onto main and split hex import into #4504 — still waiting on maintainer review before it can merge.

@ryanmitchellneely ryanmitchellneely left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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
  • memberBackPage keeps 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: chown buzz-git-data to uid 1000 before relay start — correct fix for fresh named volumes + non-root USER buzz pack-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)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants