Skip to content

docs: macOS build/run notes and launcher scripts (draft)#60

Draft
iamcheyan wants to merge 1 commit into
etorth:mainfrom
iamcheyan:docs/macos-howto
Draft

docs: macOS build/run notes and launcher scripts (draft)#60
iamcheyan wants to merge 1 commit into
etorth:mainfrom
iamcheyan:docs/macos-howto

Conversation

@iamcheyan

Copy link
Copy Markdown
Contributor

Marking as draft — happy to either polish or close based on
your preference.

Adds operator-facing material for running on macOS:

  • b/run-client.sh, b/run-server.sh — thin launcher wrappers.
    They derive paths from \$BASH_SOURCE so they work from any
    checkout location (no hardcoded user paths). Set --res-path
    / --client-port and create the runtime symlinks (map,
    script) before exec-ing the binary, so you can launch from
    anywhere without remembering the working-dir contract.
  • b/HOWTO.md — end-to-end notes for the macOS build path:
    client+server startup, port choices (AirPlay Receiver squats
    on 7000 → default to 7100), known issues (auto-login crashes
    on a missing font in current res/), install_name_tool
    dylib fixups, and why the server build needs brew LLVM
    instead of Apple Clang 17.
  • .gitignore — ignore the b/ build dir by default but
    allow only the three operator artifacts above.

Caveats / why this is a draft

If you'd rather not maintain platform-specific docs in-tree,
totally fine — feel free to close. I'll keep it on my fork.

Adds operator-facing material for running the Mac build:

  - b/HOWTO.md: end-to-end instructions for the macOS build path.
    Covers client / server startup, port choices (AirPlay
    Receiver squats on 7000, so default to 7100), known issues
    (auto-login crashes on a missing font in current res/),
    install_name_tool dylib fixups, and why the server build
    needs brew LLVM instead of Apple Clang 17.
  - b/run-client.sh / b/run-server.sh: thin wrappers that set
    --res-path / --client-port and create the runtime symlinks
    (map, script) before exec-ing the binary. Lets you launch
    from anywhere without remembering the working-dir contract.

.gitignore: ignore the macOS build dir (b/) by default but
allow only the three operator artifacts above to be tracked.
Build outputs / third-party sources under b/ stay untracked.
@etorth

etorth commented May 1, 2026

Copy link
Copy Markdown
Owner

man, you are using AI to working on this repo? really good!

@iamcheyan

iamcheyan commented May 2, 2026

Copy link
Copy Markdown
Contributor Author

man, you are using AI to working on this repo? really good!

我是你的B站粉丝

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.

2 participants