Skip to content

Releases: sw7ft/BerryCore

BerryCore v0.83.0 — networking & media packages

17 Jun 18:48

Choose a tag to compare

BerryCore v0.83.0

Core package update — networking, media, and Git tools.

New packages

Package Version Binaries
util-ping 1.0.0 ping
util-tcpdump 4.99.5 tcpdump
util-nixtla-audio 1.0.0 play-audio, demoPlayWav, demoCaptureEco

Upgrades

Package Was Now
ffmpeg 4.2.2 6.1.2 (ffmpeg, ffprobe)
tig 2.5.0 2.6.1 (includes etc/tigrc)

Usage

qpkg update                    # or manual install.sh --upgrade
ping 8.8.8.8
tcpdump -i bpe0 -c 10
tig                            # Git log browser
ffmpeg -i video.mp4 -vn out.wav
play-audio song.mp3            # BB10 speaker via nixtla + ffmpeg

Notes

  • play-audio decodes MP3/video with ffmpeg 6.1, plays WAV via OpenAL on Passport
  • TIGRC is exported in env.sh for tig 2.6.1 config
  • Upgrade installs new package zips; old ffmpeg-4.2.2 and tig-2.5.0 removed from bundle

Assets

  • berrycore.zip — BerryCore 0.83.0
  • install.sh

BerryCore v0.82.3 — fix qpkg update

17 Jun 05:02

Choose a tag to compare

Fixes qpkg update skipping patch releases (0.82 → 0.82.2). Version compare now handles x.y.z without python3. Use qpkg update --force to reinstall if VERSION already matches.

BerryCore v0.82.2 — fix qpkg install bcllm ai

17 Jun 04:53

Choose a tag to compare

Fixes ai not working after qpkg install bcllm. qpkg now always writes a real ai wrapper to berrycore/bin/ai (no symlinks). Run qpkg update then qpkg install bcllm.

BerryCore v0.82.1 — fix ai command

16 Jun 22:46

Choose a tag to compare

BerryCore v0.82.1

Fixes ai "prompt" not working after qpkg install bcllm.

What was wrong

  • The port zip accidentally shipped the full 25KB AI script instead of the small ai wrapper (macOS case-insensitive filesystem merged ai and AI during build).
  • Invoking ai via a symlink broke AI_HOME, so quick prompts failed even when bcllm was installed.

What's fixed

  • ports/ai-bcllm-1.2.1.zip — ships bin/ai as the wrapper script (571 bytes), bin/bcllm-ai as the real assistant.
  • qpkg install bcllm — always installs a real ai script into berrycore/bin/ and runs setup-ai.sh.
  • install.sh — no longer symlinks aibcllm-ai during relocation.

After upgrading

qpkg update          # gets fixed qpkg from berrycore.zip
qpkg install bcllm   # reinstall / refresh ai wrapper
. ~/.profile
ai "What is QNX?"

Or fresh install: download berrycore.zip + install.sh from this release.

Assets

  • berrycore.zip — BerryCore 0.82.1 with bundled bcllm + fixed qpkg
  • install.sh
  • berrycore-helper.apk — sideload installer (optional)
  • ports/ai-bcllm-1.2.1.zip — qpkg port (also via qpkg install bcllm)
  • bcllm-passport-1.2.1.tar.gz — upstream source tarball

BerryCore v0.82 — On-device AI bundled + Helper APK

16 Jun 17:27

Choose a tag to compare

BerryCore v0.82 bundles on-device AI (bcllm 1.2.1) in the main install and ships an updated BerryCore Helper APK for sideloading.


On-device AI — bcllm 1.2.1 (bundled)

BerryCore AI (llama.cpp) is included in berrycore.zip as core package ai-bcllm-1.2.1.zip. After install, binaries live at:

/accounts/1000/shared/misc/bcllm/

install.sh moves the bundled tree out of the berrycore directory and links ai into $NATIVE_TOOLS/bin.

ai download smollm2_135m      # ~101 MB, needs wget + Wi-Fi
ai                            # interactive menu
ai "What is the capital of France?"
ai web                        # http://127.0.0.1:8080/

Requires: wget (core package), Wi-Fi for first model download


BerryCore Helper APK

Sideload berrycore-helper.apk to install BerryCore from the BB10 Android runtime — no PC required.

  1. Download berrycore-helper.apk from this release
  2. Sideload (Sachesi, Chrome extension, etc.)
  3. Open BerryCore Helper → run installer
  4. Copy to Documents if prompted, then: sh install.sh --upgrade -y

Install on Passport

Option A — Helper APK: sideload berrycore-helper.apk → install from app

Option B — Manual:

# copy berrycore.zip + install.sh to device
sh install.sh --upgrade -y --dir $NATIVE_TOOLS
. $NATIVE_TOOLS/env.sh

Option C — qpkg port only (if already on BerryCore ≥0.81):

qpkg install bcllm
ai download smollm2_135m
ai

Or standalone tarball:

tar xzf bcllm-passport-1.2.1.tar.gz -C /accounts/1000/shared/misc/
sh /accounts/1000/shared/misc/bcllm/setup-ai.sh

Also included (core packages)

  • ncdu 1.22 — disk usage TUI
  • chafa 1.14.4 — terminal image viewer
  • dcron 4.5 — cron scheduler
  • wget 1.25.0 — HTTPS downloads

Upgrade: qpkg update or sh install.sh --upgrade -y --dir $NATIVE_TOOLS

Verify:

cat $NATIVE_TOOLS/VERSION    # 0.82
which ai
ls /accounts/1000/shared/misc/bcllm/bin/

Release assets

File Purpose
berrycore.zip BerryCore v0.82 (includes ai-bcllm)
berrycore-helper.apk Sideload installer
install.sh Upgrade script (relocates bcllm → misc/bcllm/)
bcllm-passport-1.2.1.tar.gz Standalone AI install
ports/ai-bcllm-1.2.1.zip qpkg port package

Rebuild: ./release/build-berrycore-0.82.sh


BerryCore v0.82 — June 2026

BerryCore v0.81.1 — bcllm LLM + BerryCore Helper APK

16 Jun 16:44

Choose a tag to compare

BerryCore v0.81.1 adds the bcllm on-device LLM port and ships the BerryCore Helper Android APK for easy sideloading. Also includes the v0.81 core packages (ncdu, chafa, dcron, wget) and the fixed qpkg update upgrade path.


bcllm 1.2.1 — on-device LLM (new port)

Run SmolLM / Gemma / Qwen models locally on BB10 via llama.cpp — no cloud API key required.

qpkg ports                    # lists bcllm
qpkg install bcllm

ai download smollm2_135m      # ~101 MB, needs wget + Wi-Fi
ai                            # interactive menu
ai "What is the capital of France?"
ai web                        # browser chat at http://127.0.0.1:8080/

Requires: wget (core package), Wi-Fi for first model download
Install path: /accounts/1000/shared/misc/bcllm/
Help: $NATIVE_TOOLS/../bcllm/share/bcllm/HELP.txt or cat /accounts/1000/shared/misc/bcllm/share/bcllm/HELP.txt

Optional profile setup:

sh /accounts/1000/shared/misc/bcllm/setup-ai.sh

BerryCore Helper APK

BerryCore Helper is an Android APK that bundles BerryCore for sideloading on BB10 (Android runtime). Install BerryCore without a PC — open the app and tap install.

  1. Download berrycore-helper.apk from this release
  2. Sideload with Sachesi, Chrome extension, or your usual tool
  3. Open BerryCore Helper on the device and run the installer
  4. After install, run qpkg update to pick up v0.81.1 (includes bcllm qpkg support)
  5. Then: qpkg install bcllm

Upgrade from v0.81

qpkg update
# or manually:
sh install.sh --upgrade -y --dir $NATIVE_TOOLS
. $NATIVE_TOOLS/env.sh

Verify:

cat $NATIVE_TOOLS/VERSION    # 0.81.1
grep bcllm $NATIVE_TOOLS/bin/qpkg
qpkg install bcllm

Also in this release line (v0.81)

Core packages (auto-install on upgrade):

  • ncdu 1.22 — disk usage TUI
  • chafa 1.14.4 — terminal image viewer
  • dcron 4.5 — cron scheduler
  • wget 1.25.0 — HTTPS downloads

qpkg update fix — non-interactive upgrade with per-package install stamps.


BerryCore v0.81.1 — June 2026

BerryCore v0.81 — ncdu, chafa, dcron, qpkg upgrade fix

11 Jun 23:37

Choose a tag to compare

BerryCore v0.81 adds ncdu 1.22 (disk usage TUI) and chafa 1.14.4 (terminal image viewer) as core packages — same install model as wget and dcron. Also includes dcron, wget 1.25.0, and qpkg fixes from earlier releases if you have not upgraded yet.


ncdu 1.22 (core package)

Interactive disk usage analyzer — find what's eating space, drill into folders, delete from the UI.

qpkg update
ncdu /accounts/1000/shared/misc
ncdu /accounts/1000/r              # SD card

Keys: ↑↓ move, Enter enter dir, d delete, n/s/C sort, q quit

Notes:

  • Needs a real TTY — use Term49 or ssh -t passport ncdu ~
  • Export scans: ncdu -o /var/tmp/scan.json /path then ncdu -f /var/tmp/scan.json

chafa 1.14.4 (core package)

View photos and images in the terminal — JPEG, PNG, GIF, and more.

chafa --version
chafa-show photo.jpg
chafa-show -w 48 ~/Pictures/image.png

Notes:

  • chafa-show is the easy wrapper; chafa is the low-level CLI
  • Works best with TERM=xterm-256color (set automatically)
  • SD card: /accounts/1000/removable/sdcard/...

dcron 4.5 (core package)

If upgrading from before v0.80:

cron-start
crontab -e
crontab -l

GNU Wget 1.25.0 (core package)

If upgrading from v0.78 or earlier:

wget --version
wget -O- https://example.com/ | head

Upgrade

qpkg update
# or manually:
sh install.sh --upgrade -y --dir $NATIVE_TOOLS
. $NATIVE_TOOLS/env.sh

Verify:

cat $NATIVE_TOOLS/VERSION    # 0.81
ncdu --version
chafa --version
cron-start && crontab -l

qpkg update fix

  • qpkg update now runs a non-interactive upgrade into your existing $NATIVE_TOOLS tree
  • install.sh --upgrade -y --dir $NATIVE_TOOLS for manual upgrades
  • Per-package install stamps (.berrycore_pkg_stamps/) so new core packages (ncdu, chafa, dcron) install correctly on upgrade

BerryCore v0.81 — June 2026

BerryCore **v0.79** upgrades **GNU Wget to 1.25.0*

05 Jun 07:54

Choose a tag to compare

BerryCore v0.79 upgrades GNU Wget to 1.25.0 with modern HTTPS (same OpenSSL generation as curl 8.12.1 / git 2.47.2), and fixes qpkg port installs when the shell environment was not loaded.


GNU Wget 1.25.0 (core package)

Wget ships inside BerryCore — no separate port install. Upgrades automatically with this release.

What's new vs wget 1.20.3:

  • GNU Wget 1.25.0 (Nov 2024 upstream)
  • Static OpenSSL 1.1.1w (modern TLS)
  • Wrapper sets SSL_CERT_FILE to BerryCore ssl/cert.pem (or bundled Mozilla CA fallback)

After upgrade:

wget --version
# GNU Wget 1.25.0 built on qnx.  +https +ssl/openssl

wget -O- https://example.com/ | head
wget -O file.zip https://example.com/file.zip

Run wget (the wrapper), not wget.bin directly, unless you set SSL_CERT_FILE yourself.


qpkg fixes

  • Auto-detect NATIVE_TOOLS from the qpkg script path when env.sh was not sourced — fixes port install failures (/.tmp/ permission errors) and command not found after upgrade
  • QNX-safe downloads — removed broken grep -o progress parsing on port installs

If port installs failed after a previous upgrade, try again after updating:

qpkg update
# open a new shell, or:
. $NATIVE_TOOLS/env.sh
qpkg install python3
qpkg install qnxdesktop

Ports (via qpkg — not in this zip)

These install separately with qpkg install <name> after upgrading BerryCore:

Port Notes
claude-code Claude Code AI agent — requires node-term49, run claude-setup
rocketchat RocketChat web app — requires python3, port 8026
node-term49 Node.js v22 (--jitless)
qpkg ports
qpkg install node-term49
qpkg install claude-code
claude-setup

Claude docs: GITHUB_RELEASE_ports-claude-code.md


Install / upgrade

Fresh install

cd /accounts/1000/shared/documents
curl -L -O https://github.com/sw7ft/BerryCore/releases/download/v0.79/berrycore.zip
curl -L -O https://github.com/sw7ft/BerryCore/releases/download/v0.79/install.sh
chmod +x install.sh
./install.sh

Upgrade from v0.78, v0.77, or earlier

qpkg update

Or re-run install.sh from the release assets (upgrade mode preserves existing packages).

Verify

cat $NATIVE_TOOLS/VERSION
# 0.79

wget --version

Release assets

File Size SHA256
berrycore.zip 177 MB 9bb3cf16e446a45f917cc45951ca47bf4fb401d4b1fcb25e8a7e1ad453d9844c
install.sh ~8 KB cc1bf28722bb447fd98d252ad0ef76e72690fcfad82cb4442dabcc630f2d51f9

Ports (claude-code, rocketchat, python3, etc.) are not attached to this release — install with qpkg install after upgrading.


Full changelog

CHANGELOG.md

BerryCore v0.78 Claude Code

05 Jun 06:46

Choose a tag to compare

BerryCore v0.78 adds Claude Code on BB10, plus RocketChat and Mutt setup. Ports install via qpkg — no extra zips needed for Claude or RocketChat.


Claude Code on BB10

Run Anthropic Claude Code in your terminal: edit files, run commands, ask about your codebase. Bring your own API key from console.anthropic.com.

1. Install Node.js (required)

qpkg install node-term49
node -e "console.log('Node OK')"

2. Install Claude Code

qpkg install claude-code
claude-setup

claude-setup saves your key to ~/claude.key (mode 600).

3. Use Claude

claude help                 # BerryCore install / key / env docs
claude --help               # Claude Code CLI options
claude -p "hello from BB10"
claude -p "explain the files in my home directory"
claude                      # interactive session

API key options

Method Command
Recommended claude-setup
Manual file echo 'sk-ant-...' > ~/claude.key && chmod 600 ~/claude.key
One session export ANTHROPIC_API_KEY=sk-ant-...

BB10 tips

  • Requires node-term49 first
  • Uses BerryCore bash for the Bash tool (QNX /bin/sh is ksh)
  • Temp files go to ~/tmp (not /tmp)
  • Tool use is auto-approved by default on personal devices; disable with CLAUDE_BB10_SKIP_PERMISSION_BYPASS=1

More detail: Claude Code port docs


RocketChat Navigator

Web app for RocketChat private groups and DMs. Port 8026.

qpkg install python3
qpkg install rocketchat
rocketchat
# Open http://localhost:8026 in your BB10 browser

rocketchat -f    # foreground (debugging)

First run: enter server URL, username, and password in the browser.


Mutt email setup

Interactive wizard for IMAP/SMTP — creates ~/.muttrc:

mutt-setup
mutt

Install / upgrade

Fresh install

cd /accounts/1000/shared/documents
curl -L -O https://github.com/sw7ft/BerryCore/releases/download/v0.78/berrycore.zip
curl -L -O https://github.com/sw7ft/BerryCore/releases/download/v0.78/install.sh
chmod +x install.sh
./install.sh

Upgrade from v0.77 or earlier

qpkg update

Verify

cat $NATIVE_TOOLS/VERSION
# 0.78

Release assets

File Size SHA256
berrycore.zip 176 MB 33e7e590c2f4279396a44e26962e3981b9b0cf5690913da7ad944e712508de7a
install.sh ~8 KB 8721a4a6d33a770f3a992d6c13223601cd2bc35f9aad30b9ec58232460bc291e

Ports (claude-code, rocketchat, etc.) are installed separately:

qpkg ports
qpkg install claude-code

Also in this release

Port Description
claude-code Claude Code AI agent (requires node-term49)
rocketchat RocketChat web navigator (requires python3)
node-term49 Node.js v22, npm 10.5.1 (--jitless)
content-shell-term49 Chromium 120 headless browser
wifi-chat P2P chat over WiFi
berrybot Command-line teaching assistant
bb-tools Web tools dashboard (port 8765)

Full changelog: CHANGELOG.md

BerryCore v0.77 Release Files

17 Mar 18:49

Choose a tag to compare

BerryCore v0.77 Release Files

Release Date: March 17, 2026
GitHub Tag: v0.77

REQUIRED FILES

  1. berrycore.zip

    • Description: Main BerryCore package with 77 core packages
    • SHA256: (run: shasum -a 256 berrycore.zip after creating)
    • Size: ~176 MB
  2. install.sh

    • Description: Installation script for BerryCore v0.77
    • SHA256: (run: shasum -a 256 install.sh)

CREATE PACKAGE

./utilities/package.sh

Verifies: berrycore.zip is created at repo root

VERIFY INSTALL

cat $NATIVE_TOOLS/VERSION

Should show: 0.77

WHAT'S NEW IN v0.77

New Ports:

  • content-shell-term49 - Chromium 120 headless browser (62 MB)
  • wifi-chat - P2P chat over WiFi (12 KB)
  • berrybot - Command-line teaching assistant (600 KB)

android-apps: term49-dashboard, term49-bridge (Bridge), RDP, Kiwi, Launcher, etc.
qpkg install android-apps -> misc/android-apps/

Node.js: node-term49 (v22, npm 10.5.1, --jitless)
bb-tools: dashboard, drawing-board, editors, compass, virtual-keyboard (port 8765)

Catalog: All port binaries now in qpkg catalog

Full release notes: GITHUB_RELEASE_v0.77.md
Changelog: CHANGELOG.md


BerryCore v0.77 - March 2026