gpo.zugaina.org

Search Portage & Overlays:

www-apps/hollama

Minimal LLM chat UI — SvelteKit + Node, browser-local state

Screenshots

ChangeLog

commit ec584f9ff3d12af35f5ae8e4b2681f8b3d3e146b
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Tue May 26 11:28:08 2026 +0200

www-apps/hollama: new package, 0.35.4

Minimal LLM chat UI — SvelteKit + Node bundle, browser-localStorage
state, no server-side persistence. Talks to Ollama natively and to
any OpenAI-compatible HTTP endpoint, so it pairs cleanly with this
overlay's local-LLM backends (sci-misc/llama-cpp, sci-misc/llama-swap,
sci-ml/lemonade, dev-python/vllm).

Source build via `PUBLIC_ADAPTER=docker-node npm run build` (the
adapter upstream's Dockerfile uses). The resulting build/ tree is
fully self-contained — RDEPEND only pulls net-libs/nodejs for the
interpreter, no node_modules at runtime. Build needs network access
for `npm ci` against the registry; vendoring the npm tree (~500 MB)
isn't realistic, so PROPERTIES=live + RESTRICT=network-sandbox per
the same shape sci-misc/llama-swap[ui] uses. Min nodejs pinned at
20 to match upstream's Dockerfile (node:20-alpine) — package.json's
engines field is empty, so the bound is ours.

Ships /usr/bin/hollama wrapper plus a systemd unit (DynamicUser=yes,
hardened) and an openrc init.d / conf.d pair. Defaults to loopback
only (HOLLAMA_HOST=127.0.0.1) because hollama has no built-in auth.
Wrapper resolves PORT/HOST with env > conf.d > hardcoded default
precedence so interactive `PORT=… hollama` overrides the service
defaults. Build-verified on ~amd64 and runtime-verified via full
emerge + curl against /usr/bin/hollama; installed tree ~23 MB
under /opt/hollama/build.