What the Spark is
"The Spark" is a compact arm64 Linux computer with a GPU, running an Ubuntu 24.04 based system. Filamama installs on it the same way as on any Linux box. If you have a different arm64 Ubuntu machine, these steps apply too.
Status: supported through the Linux installer. The first run on the Spark hardware itself is still to be measured, so tell us how it goes.
What you need
- The Spark on the same home network as the phones (wired is best).
- Node.js 26 or newer, ffmpeg and ffprobe, git and curl.
- Room for your library. A USB-C disk works well for the originals.
Give the Spark a fixed address in your router so the server's certificate stays valid for it.
Install the tools
sudo apt update
sudo apt install -y git curl ffmpeg
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.8/install.sh | bash
# open a new terminal, then:
nvm install 26
No compiler is needed: Filamama's two native modules ship ready-made builds for Linux arm64.
Get Filamama
Download: coming soon. There is no public release of Filamama yet. When it ships, the download will be right here. The steps below are from the current build and may change a little for the first release.
Install the server
In the Filamama folder:
packaging/install.sh --dry-run
packaging/install.sh
To keep the originals on an external disk, pass --originals-dir /media/$USER/Photos/filamama. A desktop automount under /media may only be there while you're logged in to the desktop; for a server, mount the disk with an /etc/fstab entry instead.
Keep it running
sudo loginctl enable-linger $USER
systemctl --user status diune-media-server
journalctl --user -u diune-media-server -f
If you also use the Spark for heavy work, Filamama keeps running alongside. It processes two new items at a time in the background, so a big first backup won't take over the machine.
Open the firewall
sudo ufw status
# if it says active:
sudo ufw allow 5400/tcp
sudo ufw allow 5353/udp
Don't forward 5400 on your router: Filamama is home-only by design.
First visit
Open https://<the machine's address>:5400 in a browser on your home network. The browser warns about the certificate: the server made it itself, because nothing on a home network can get a public one. Accept it for this address.
The first visit creates the administrator. Add the rest of the household under Accounts; each person gets a temporary password and picks their own on first sign-in.
Pair the first phone
- Install Piktures on the Android phone.
- In the web app, open Settings, Devices, Pair a phone. A QR code appears, good once for ten minutes.
- In Piktures, add your Filamama server as the backup destination and scan the code.
The phone pins the server's key from the QR code, so it talks to this server only. No camera? Type the address and the code, and check that the safety code Piktures shows matches the one in the dialog.
Where your data lives
Settings in ~/.config/diune-media-server/env; database, backups, key and previews in ~/.local/share/diune-media-server; photos and videos in <data>/originals. Back up the originals and the data folder, including <data>/tls/.
Folder and service names still use Filamama's working name, diune-media-server. They'll change before the first release.
Good to know
- Videos convert in software. Filamama makes playable copies of videos browsers can't play with ffmpeg's H.264 software encoder on Linux. It doesn't use the Spark's GPU encoder yet. Most phone videos play without conversion.
- Extra addresses in the QR code. Filamama lists every IPv4 address the machine has, so extra network ports, Docker or Tailscale add addresses to the QR code and the certificate. They're harmless but noisy, and a fix is planned.
- iPhone photos have no preview on Linux yet. The files are safe and downloadable.