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:
| Path | Contains |
|---|---|
wrentv.yaml | Configuration, including the server's identity and secrets |
wrentv.db | Libraries, 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.yamlandhaven.dbare renamed towrentv.yamlandwrentv.db.HAVEN_*environment variables still work.WRENTV_*wins when both are set.wrentv installstops and removes an oldhavenservice first.Sign-in tokens,
hvn_integration keys andX-Haven-*request headers keep working. Webhooks send bothX-WrenTV-*andX-Haven-*headers.Docker: the image and container are now called
wrentv. Keep mounting the same/configvolume.Hand-installed systemd unit (
haven.service, running as userhaven): the new unit runs aswrentv, which can't move the old directory itself. Do it by hand:bash
sudo 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.