Files
grok-bot-bin/README.md
T
s1d3sw1ped_bot 1d73966315
Build Arch package / build (push) Successful in 28s
pkgbuild: Install auto-update launch shim
Replace the /usr/bin/grok-bot (and sand) plain symlink with a launch
shim that checks the latest Gitea release, pacman -U's a newer
.pkg.tar.zst when available, then execs the real binary under
/opt/Grok Bot/. Skip with GROK_BOT_NO_UPDATE=1; fail soft on
network/API errors. Bump pkgrel for the packaging change.

#2
2026-09-02 01:30:38 +00:00

63 lines
2.3 KiB
Markdown

# grok-bot-bin
Unofficial Arch / CachyOS package of the official [Grok Bot](https://cursor.com/download/bot) `.deb`. Temporary until upstream packages for Arch.
Not affiliated with Cursor / SpaceXAI. The app binary is unchanged; this only repacks it for `pacman`.
## Install (build locally)
```bash
git clone https://git.s1d3sw1ped.com/s1d3sw1ped/grok-bot-bin.git
cd grok-bot-bin
makepkg -si
```
With an AUR helper against this git URL:
```bash
paru -S grok-bot-bin --aururl https://git.s1d3sw1ped.com
# or:
yay -S grok-bot-bin # after cloning locally / using a custom AUR mirror
```
Simplest reliable path on CachyOS today:
```bash
makepkg -si
```
## Install from a release package
When CI has published a `.pkg.tar.zst` on the [Releases](https://git.s1d3sw1ped.com/s1d3sw1ped/grok-bot-bin/releases) page:
```bash
curl -LO 'https://git.s1d3sw1ped.com/s1d3sw1ped/grok-bot-bin/releases/download/v0.30.0/grok-bot-bin-0.30.0-1-x86_64.pkg.tar.zst'
sudo pacman -U grok-bot-bin-0.30.0-1-x86_64.pkg.tar.zst
```
Download first, then `pacman -U` the local file (`LocalFileSigLevel = Optional`). Do not pass the remote URL straight to pacman if signatures are required.
## Custom pacman repo (optional)
After CI publishes a repo database under Releases (or Packages), add to `/etc/pacman.conf`:
```ini
[grok-bot]
SigLevel = Optional TrustAll
Server = https://git.s1d3sw1ped.com/s1d3sw1ped/grok-bot-bin/releases/latest/download
```
Exact `Server=` URL may change once the first repo DB lands; `makepkg -si` works regardless.
## Updating
`./scripts/update.sh` reads Cursor's linux-x64 update feed, downloads the matching `.deb`, and bumps `pkgver` / `_commit` / `sha256sums` in `PKGBUILD` and `.SRCINFO`.
Scheduled Gitea Actions will do the same and build a release package.
## Notes
- `/usr/bin/grok-bot` (and `sand`) is a launch shim: unless `GROK_BOT_NO_UPDATE=1`, it checks the latest Gitea release and may `pacman -U` a newer `.pkg.tar.zst` before exec'ing `/opt/Grok Bot/…`. Network/API failures still launch the installed binary.
- Upstream Linux builds still have no in-app updater for the Electron app itself; `scripts/update.sh` bumps the PKGBUILD from Cursor's feed when packaging a new upstream version.
- `chrome-sandbox` is left non-setuid because the install path contains a space; user namespaces cover sandboxing on CachyOS.