1d73966315
Build Arch package / build (push) Successful in 28s
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
63 lines
2.3 KiB
Markdown
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.
|