Flash, boot, display — kiosk image installation guide

Zero configuration needed. Download an image, flash it, boot — the setup wizard handles everything else.

The xiboplayer kiosk images turn any hardware into a dedicated digital signage display. No Linux experience required — just flash, boot, and connect to your CMS.

Choose your image

ImageFileBest forSize
Everything ISO.isoPCs and laptops — offline install, no internet needed~2.5 GB
Netinstall ISO.isoPCs with internet — downloads packages during install~700 MB
Raw disk image.raw.xzRaspberry Pi, NUC — flash directly to SD/SSD~2 GB
QCOW2.qcow2Virtual machines (GNOME Boxes, virt-manager, QEMU)~2 GB
Atomic ISO.isoImmutable OS (fedora-bootc) — automatic updates with rollback~1.5 GB

Download from the Downloads page or directly from GitHub Releases.

Step 1: Flash the image

PC / Laptop (ISO)

Use any USB flashing tool:

# Linux — replace /dev/sdX with your USB device
sudo dd if=xiboplayer-kiosk-*.iso of=/dev/sdX bs=4M status=progress
sync

Or use Balena Etcher, or Fedora Media Writer.

Raspberry Pi (raw image)

# Decompress and flash to SD card
xzcat xiboplayer-kiosk-*.raw.xz | sudo dd of=/dev/mmcblk0 bs=4M status=progress
sync

Or use Raspberry Pi Imager — click "Choose OS → Use custom" and select the .raw.xz file.

Virtual machine (QCOW2)

# GNOME Boxes — just double-click the .qcow2 file
# Or with virt-manager:
virt-install --name xiboplayer --memory 2048 --vcpus 2 \
  --disk path=xiboplayer-kiosk-*.qcow2 --import --os-variant fedora43

Step 2: Boot and set up

Power on the device. The kiosk boots into a guided setup:

System setup (gnome-initial-setup)

The standard GNOME initial setup wizard runs first:

  1. Language — select your display language
  2. Keyboard — choose your keyboard layout
  3. Network — connect to Wi-Fi or verify Ethernet
  4. Timezone — auto-detected or manual selection
  5. Password — change the default password (recommended)

Player setup (xiboplayer-setup)

A native setup wizard then launches:

  1. Player selection — choose Electron (recommended), Chromium, or arexibo
  2. CMS configuration — for arexibo, enter the CMS URL and key directly. For Electron/Chromium, the player's web-based setup page handles this.

The wizard saves your choice and starts the player automatically.

Step 3: Connect to CMS

Electron / Chromium

After the kiosk wizard, the player opens its own setup page:

  1. Enter your CMS URL (e.g., https://cms.example.com)
  2. Enter the CMS Key (from CMS → Settings → Display Settings → CMS Secret Key)
  3. Click Connect

arexibo

CMS credentials were already entered in the kiosk wizard. The player connects immediately.

Authorize in CMS

  1. Log into your Xibo CMS
  2. Go to Displays — find the new pending display
  3. Click the row menu → Authorise
  4. Content appears on the next collection cycle (within 5 minutes)

Step 4: Done

Your display is now running. It will:

  • Auto-start on every boot — no login required
  • Self-heal — health monitoring restarts the player if it crashes
  • Update automatically — packages update via the system package manager
  • Play offline — continues showing cached content if the CMS goes down

Atomic images — immutable OS

The Atomic variant is built on fedora-bootc — a minimal immutable base (~1.0 GB compressed vs 2.5 GB for Silverblue). Only the components needed for signage are included:

  • Immutable base — the OS cannot be accidentally modified
  • Automatic updates via bootc switch with automatic rollback on failure
  • Container-native — built as an OCI image, converted to installable ISO via bootc-image-builder
  • Minimal footprint — no Firefox, no VLC, no unused GNOME apps. Just the player, codecs, and kiosk session
  • If an update breaks something, the previous version is available at the boot menu

Best for: unattended displays in public spaces where reliability and small image size matter.

Keyboard shortcuts

Once running, these shortcuts are available:

ShortcutAction
Ctrl+IShow IP address, CMS URL, and player status
Ctrl+RReconfigure CMS (stops player, restarts wizard)
DToggle download progress overlay
TToggle timeline/schedule overlay
SToggle setup overlay

Switching players

All three players are installed. Switch without reconfiguring CMS:

# Switch to Chromium (lighter)
doas alternatives --set xiboplayer /usr/bin/xiboplayer-chromium

# Switch to Electron (more features)
doas alternatives --set xiboplayer /usr/bin/xiboplayer-electron

# Switch to arexibo (native Rust)
doas alternatives --set xiboplayer /usr/bin/arexibo

Then restart: systemctl --user restart xibo-player.service

Troubleshooting

ProblemSolution
Black screen after bootPress Ctrl+I to check status. If nothing shows, check GDM: systemctl status gdm
No Wi-Fi networksThe image includes NetworkManager-wifi and linux-firmware. Check nmcli device wifi list
Can't change passwordDefault user is xibo, password xibo. Root is locked. Use passwd to change
Display not appearing in CMSCheck network (Ctrl+I), verify CMS URL and key, check firewall
Image won't boot on PiEnsure you used the .raw.xz image (not the ISO). Use Pi Imager with "Use custom"

Next steps