Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ If AI is becoming critical infrastructure, it shouldn’t be rented. Self-hostin
>
> **Tested Linux distros:** Ubuntu 24.04/22.04, Debian 12, Fedora 41+, Arch Linux, CachyOS, openSUSE Tumbleweed. Other distros using apt, dnf, pacman, or zypper should also work — [open an issue](https://github.com/Light-Heart-Labs/DreamServer/issues) if yours doesn't.
>
> **Windows:** Requires Docker Desktop with WSL2 backend. NVIDIA GPUs use Docker GPU passthrough; AMD Strix Halo runs llama-server natively with Vulkan.
> **Windows:** Requires Docker Desktop with WSL2 backend. NVIDIA GPUs use Docker GPU passthrough; AMD Strix Halo runs natively with Lemonade (NPU + ROCm + Vulkan acceleration).
>
> **macOS:** Requires Apple Silicon (M1+) and Docker Desktop. llama-server runs natively with Metal GPU acceleration; all other services run in Docker.
>
Expand Down
30 changes: 30 additions & 0 deletions dream-server/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,36 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).

## [Unreleased]

## [2.4.0] - 2026-03-24

### Added
- Native AMD Lemonade inference backend with NPU + ROCm + Vulkan acceleration
- LiteLLM model aliasing for AMD (friendly model names resolve to Lemonade internal IDs)
- AMD/Lemonade contract test suite (17 tests in `tests/contracts/test-amd-lemonade-contracts.sh`)
- Lemonade Docker image pinned to v10.0.0 with libatomic1 fix (`Dockerfile.amd`)
- Host-systemd service support in dashboard health checks (OpenCode no longer grayed out)
- `DREAM_MODE=lemonade` for AMD installs — routes all services through LiteLLM proxy
- Bootstrap model aliasing — both tier and bootstrap model names resolve in LiteLLM
- NPU detection on Windows (Win32_PnPEntity) and Linux (sysfs/lspci)

### Changed
- AMD backend upgraded from generic Vulkan llama-server to native Lemonade Server
- LiteLLM runs as default inference proxy on AMD installs
- Lemonade image pinned to v10.0.0 (no longer `:latest`)
- LiteLLM auth disabled for localhost-only AMD installs (all ports bind 127.0.0.1)
- OpenCode config always synced on reinstall (stale API keys and URLs updated)

### Fixed
- APE healthcheck replaced curl (missing in slim image) with python3 urllib
- Windows installer surfaces docker compose config errors on failure instead of just exit code
- Windows installer passes `--env-file .env` to docker compose for reliable variable loading
- Dashboard no longer grays out host-systemd services unreachable from Docker
- `.env.schema.json` updated for `DREAM_MODE=lemonade`, `TARGET_API_KEY`, `LLM_BACKEND`, `LLM_API_BASE_PATH`
- Lemonade entrypoint uses absolute path (`/opt/lemonade/lemonade-server`)
- Service health endpoint override for Lemonade (`/api/v1/health` vs `/health`)
- Perplexica, Privacy Shield, OpenClaw, Open WebUI API paths corrected for Lemonade (`/api/v1`)
- OpenCode config filename (`config.json` copy), LiteLLM routing, and small_model fallback

## [2.0.0-strix-halo] - 2026-03-04

### Added
Expand Down
2 changes: 1 addition & 1 deletion dream-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Known-good version baselines: [`docs/KNOWN-GOOD-VERSIONS.md`](docs/KNOWN-GOOD-VE

```bash
# One-line install (Linux — NVIDIA or AMD)
curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.3.4/get-dream-server.sh | bash
curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.4.0/get-dream-server.sh | bash
```

Or manually:
Expand Down
2 changes: 1 addition & 1 deletion dream-server/get-dream-server.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash
# Dream Server Bootstrap Installer
# curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.3.4/get-dream-server.sh | bash
# curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/v2.4.0/get-dream-server.sh | bash
#
# Detects OS, clones repo, runs installer.

Expand Down
2 changes: 1 addition & 1 deletion dream-server/installers/lib/constants.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
# Change VERSION for custom builds. Add new color codes here.
# ============================================================================

VERSION="2.3.4"
VERSION="2.4.0"
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"

# Source path utilities for cross-platform path resolution
Expand Down
2 changes: 1 addition & 1 deletion dream-server/installers/macos/lib/constants.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
# Change DS_VERSION for custom builds. Must match constants.sh VERSION.
# ============================================================================

DS_VERSION="2.3.4"
DS_VERSION="2.4.0"

# Install location - use shared path resolution if available
MACOS_SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
Expand Down
2 changes: 1 addition & 1 deletion dream-server/installers/phases/06-directories.sh
Original file line number Diff line number Diff line change
Expand Up @@ -295,7 +295,7 @@ MODELS_EOF
# Tier: ${TIER} (${TIER_NAME})

#=== Dream Server Version (used by dream-cli update for version-compat checks) ===
DREAM_VERSION=${VERSION:-2.3.4}
DREAM_VERSION=${VERSION:-2.4.0}

#=== LLM Backend Mode ===
DREAM_MODE=$(if [[ "$GPU_BACKEND" == "amd" && "${DREAM_MODE:-local}" == "local" ]]; then echo "lemonade"; else echo "${DREAM_MODE:-local}"; fi)
Expand Down
2 changes: 1 addition & 1 deletion dream-server/installers/windows/lib/constants.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
# Change DS_VERSION for custom builds. Must match constants.sh VERSION.
# ============================================================================

$script:DS_VERSION = "2.3.4"
$script:DS_VERSION = "2.4.0"

# Install location (override via $env:DREAM_HOME)
# NOTE: $(if ...) syntax required for PS 5.1 compatibility (bare if-as-expression is PS 7+ only)
Expand Down
6 changes: 3 additions & 3 deletions dream-server/manifest.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
{
"schema_version": 2,
"dream_version": "2.2.0",
"dream_version": "2.4.0",
"min_compatible_dream_version": "1.0.0",
"manifestVersion": "1.0.0",
"release": {
"version": "2.2.0",
"version": "2.4.0",
"channel": "stable",
"date": "2026-03-20"
"date": "2026-03-24"
},
"compatibility": {
"os": {
Expand Down
Loading