mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-10-10 03:30:59 +00:00
docs: add Homebrew as a first-class install method
Add Homebrew tab to the Quick Start install tabs and simplify the agent-driven install.md to detect Homebrew and fall back to the install script, dropping the gh/tar manual path. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
dae8b635fc
commit
6c57e17bb3
2 changed files with 14 additions and 69 deletions
|
|
@ -2,90 +2,30 @@
|
|||
|
||||
> AI-powered workflow orchestration platform. Workflows are defined as Graphviz graphs and executed by the Fabro engine.
|
||||
|
||||
I want you to install Fabro for me. Execute all the steps below autonomously.
|
||||
I want you to install Fabro for me. Execute the steps below autonomously.
|
||||
|
||||
OBJECTIVE: Install the Fabro CLI binary and verify it works.
|
||||
|
||||
DONE WHEN: `fabro --version` prints a version string.
|
||||
|
||||
## TODO
|
||||
## Choose install method
|
||||
|
||||
- [ ] Ensure the `gh` CLI is installed and authenticated
|
||||
- [ ] Detect the platform and download the correct release asset
|
||||
- [ ] Extract the binary and install it to `~/.fabro/bin`
|
||||
- [ ] Add `~/.fabro/bin` to PATH in the user's shell config
|
||||
- [ ] Verify `fabro --version` works
|
||||
|
||||
## Ensure `gh` CLI is available
|
||||
|
||||
You need the GitHub CLI (`gh`) installed and authenticated. Check with:
|
||||
Check whether Homebrew is available:
|
||||
|
||||
```bash
|
||||
gh auth status
|
||||
command -v brew
|
||||
```
|
||||
|
||||
If `gh` is not installed, install it:
|
||||
|
||||
- **macOS:** `brew install gh`
|
||||
- **Linux:** See https://github.com/cli/cli/blob/trunk/docs/install_linux.md
|
||||
|
||||
Then authenticate with `gh auth login` if needed.
|
||||
|
||||
## Detect platform and download
|
||||
|
||||
Determine the correct release asset based on the platform:
|
||||
|
||||
| OS | Architecture | Asset name |
|
||||
|---|---|---|
|
||||
| macOS | arm64 (Apple Silicon) | `fabro-aarch64-apple-darwin.tar.gz` |
|
||||
| Linux | x86_64 | `fabro-x86_64-unknown-linux-gnu.tar.gz` |
|
||||
|
||||
On macOS, if `uname -m` reports `x86_64`, check for Rosetta translation with `sysctl -n sysctl.proc_translated`. If it returns `1`, the actual architecture is arm64.
|
||||
|
||||
Download the asset using `gh`:
|
||||
If `brew` is present, install via Homebrew (preferred — brew manages updates automatically):
|
||||
|
||||
```bash
|
||||
gh release download --repo fabro-sh/fabro --pattern "fabro-<TARGET>.tar.gz" --dir /tmp/fabro-install --clobber
|
||||
brew install fabro-sh/tap/fabro-nightly
|
||||
```
|
||||
|
||||
Replace `<TARGET>` with the correct target triple from the table above.
|
||||
|
||||
## Extract and install
|
||||
Otherwise, use the install script:
|
||||
|
||||
```bash
|
||||
tar xzf /tmp/fabro-install/fabro-<TARGET>.tar.gz -C /tmp/fabro-install
|
||||
mkdir -p ~/.fabro/bin
|
||||
mv /tmp/fabro-install/fabro-<TARGET>/fabro ~/.fabro/bin/fabro
|
||||
chmod +x ~/.fabro/bin/fabro
|
||||
rm -rf /tmp/fabro-install
|
||||
```
|
||||
|
||||
## Add to PATH
|
||||
|
||||
If `~/.fabro/bin` is not already on PATH, you must add it to the user's shell configuration file so it persists across sessions.
|
||||
|
||||
**zsh** — append to `~/.zshrc` (or `$ZDOTDIR/.zshrc` if `ZDOTDIR` is set):
|
||||
|
||||
```bash
|
||||
printf '\n# fabro\nexport PATH="$HOME/.fabro/bin:$PATH"\n' >> ~/.zshrc
|
||||
```
|
||||
|
||||
**bash** — append to `~/.bash_profile` if it exists, otherwise `~/.bashrc`:
|
||||
|
||||
```bash
|
||||
printf '\n# fabro\nexport PATH="$HOME/.fabro/bin:$PATH"\n' >> ~/.bash_profile
|
||||
```
|
||||
|
||||
**fish** — append to `~/.config/fish/config.fish`:
|
||||
|
||||
```bash
|
||||
printf '\n# fabro\nfish_add_path $HOME/.fabro/bin\n' >> ~/.config/fish/config.fish
|
||||
```
|
||||
|
||||
After updating the config file, export PATH for the current session too:
|
||||
|
||||
```bash
|
||||
export PATH="$HOME/.fabro/bin:$PATH"
|
||||
curl -fsSL https://fabro.sh/install.sh | bash
|
||||
```
|
||||
|
||||
## Verify
|
||||
|
|
@ -98,4 +38,4 @@ This must print a version string like `fabro 0.x.y`. If it does, installation is
|
|||
|
||||
Tell the user to run `fabro install` in their terminal to complete setup.
|
||||
|
||||
EXECUTE NOW: Complete the above TODO list to achieve: `fabro --version` prints a version string.
|
||||
EXECUTE NOW: Complete the above steps to achieve: `fabro --version` prints a version string.
|
||||
|
|
|
|||
|
|
@ -23,6 +23,11 @@ Fabro has two modes:
|
|||
codex "$(curl -fsSL https://fabro.sh/install.md)"
|
||||
```
|
||||
</Tab>
|
||||
<Tab title="Homebrew">
|
||||
```bash
|
||||
brew install fabro-sh/tap/fabro-nightly
|
||||
```
|
||||
</Tab>
|
||||
<Tab title="Bash">
|
||||
```bash
|
||||
curl -fsSL https://fabro.sh/install.sh | bash
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue