| Crates.io | mural-server |
| lib.rs | mural-server |
| version | 1.2.1 |
| created_at | 2025-03-23 11:09:37.153794+00 |
| updated_at | 2025-03-24 15:47:32.766825+00 |
| description | Server software for the mural wallpaper service |
| homepage | |
| repository | https://github.com/mural-sync/mural-server |
| max_upload_size | |
| id | 1602562 |
| size | 78,113 |
This is the server software for mural.
Mural is a program that allows you to synchronize a wallpaper slideshow across your devices. It supports having multiple different slideshows (called pools). For example, you might have a pool called "Games" for wallpapers related to games and a pool called "Landscapes" for wallpapers of beautiful landscapes.
docker-compose.yml file:wget https://raw.githubusercontent.com/mural-sync/mural-server/refs/heads/main/docker-compose.yml
config and config/wallpapers directories:mkdir config
mkdir config/wallpapers
Put your wallpapers into config/wallpapers. For this guide, we will assume that there are
two wallpapers in the directory: wallpapers/picture1.png and wallpapers/picture2.jpg.
Setup your pools in config/config.toml:
[pools]
default = [
"picture1",
"picture2",
]
docker compose up -d
mural-server:git clone https://github.com/mural-sync/mural-server
cd mural-server
mkdir ~/.config/mural-server
mkdir ~/.config/mural-server/wallpapers
Put your wallpapers into ~/.config/mural-server/wallpapers. For this guide, we will assume that there are
two wallpapers in the directory: wallpapers/picture1.png and wallpapers/picture2.jpg.
Setup your pools in ~/.config/mural-server/config.toml:
[pools]
default = [
"picture1",
"picture2",
]
RUST_LOG=info cargo run
This is a full configuration file using all the default options (except the pools configuration; mural-server does not setup any pools by default):
port = 46666 # the port to bind the server to
interval = 600 # how long each wallpaper should be shown (in seconds)
[pool]
foo = [
"picture1",
"picture2",
]
bar = [
"picture2",
"picture3",
]