Wren TVDocs

Running a server

Updating and backups

Keep Wren TV up to date, back up its data, and upgrade from Haven.

Updating

Docker

Every change to Wren TV publishes a new ghcr.io/ltagroup/wrentv:latest image. To update:

bashdocker compose pull
docker compose up -d

Your data in /config is kept.

Native installs

Stop the service, replace the wrentv binary, and start it again:

bashsudo wrentv stop
sudo install -m 755 wrentv /usr/local/bin/wrentv
sudo wrentv start

On Windows, replace wrentv.exe between wrentv.exe stop and wrentv.exe start.

Database changes are applied automatically on start-up.

Backups

Everything Wren TV knows lives in its data directory:

PathContains
wrentv.yamlConfiguration, including the server's identity and secrets
wrentv.dbLibraries, items, metadata, watch history, users and collections
images/Cached posters and backdrops. Downloaded again if missing
certs/The remote access certificate (renewed automatically)
cache/Converted subtitles. No need to back up
transcode/Temporary transcode segments. No need to back up

To back up, stop the server and copy wrentv.yaml and every wrentv.db* file (and images/ if you want to avoid re-downloading artwork). Your media isn't in there: back that up separately.

Upgrading from Haven

Wren TV used to be called Haven. Upgrades keep your data:

  • On first start, the old default data directory (Application Support/Haven, /var/lib/haven, ~/.local/share/haven, C:\ProgramData\Haven) is moved to the new one, with a link left at the old path. If it can't be moved, it's used where it is. haven.yaml and haven.db are renamed to wrentv.yaml and wrentv.db.

  • HAVEN_* environment variables still work. WRENTV_* wins when both are set.

  • wrentv install stops and removes an old haven service first.

  • Sign-in tokens, hvn_ integration keys and X-Haven-* request headers keep working. Webhooks send both X-WrenTV-* and X-Haven-* headers.

  • Docker: the image and container are now called wrentv. Keep mounting the same /config volume.

  • Hand-installed systemd unit (haven.service, running as user haven): the new unit runs as wrentv, which can't move the old directory itself. Do it by hand:

    bashsudo systemctl disable --now haven
    sudo useradd --system wrentv
    sudo mv /var/lib/haven /var/lib/wrentv
    sudo chown -R wrentv:wrentv /var/lib/wrentv
    sudo systemctl enable --now wrentv

Back up the data directory before upgrading.

Wren TV is in early access. Something here wrong or missing? Tell us in the beta.