Skip to content

Configuration Reference

The canonical reference for every configuration field. For guidance and examples, see the Configuration guide.

Resolved in order: the --config flag, the WALLPAPER_SERVER_CONFIG environment variable, then ~/.config/wallpaper-server/config.yaml. The file must exist; the server does not create a default.

YAML keyTypeDefaultDescription
server.hoststring0.0.0.0Address to bind
server.portinteger8519TCP port
logging.debugbooleanfalseEnable verbose logging
logging.filestringplatform defaultLog file path; empty uses the default
wallpaper_folderslist of strings— (required)Folders to scan for images
cache_dirstring~/.cache/wallpaper-serverCached copies and thumbnails
uploads_dirstring~/.local/share/wallpaper-server/uploadsWhere uploads are stored
supported_extensionslist of strings.jpg, .jpeg, .png, .webpIndexed and accepted file types
  • wallpaper_folders is required. With no folders the server exits with no wallpaper folders specified in configuration.
  • Paths beginning with ~ are expanded to the user’s home directory.
  • cache_dir, uploads_dir and the log directory are created automatically (mode 0755) if they do not exist.
  • Default log path on Linux is $XDG_STATE_HOME/wallpaper-server/server.log (falling back to ~/.local/state/…); on macOS it is ~/Library/Logs/wallpaper-server/server.log.

PUT /api/settings (and the browser settings page) can change server.host, server.port, uploads_dir and wallpaper_folders. cache_dir and supported_extensions are preserved unchanged. Host and port changes require a restart; folder changes require a rescan (POST /api/refresh) or a restart.

FlagEffect
--startStart the server (required to run)
--config <path>Use a specific configuration file
--debugEnable verbose logging
--autostartInstall and enable a systemd service (uses sudo)
--uninstall-serviceRemove the systemd service (uses sudo)
--restartRestart the systemd service (uses sudo)
--versionPrint the version
--helpPrint usage