Install Poka and troubleshoot a preview
This page installs the desktop app and its optional media support, and fixes the problems people meet most. For the web app there is nothing to install: open poka.sh.
Install the desktop app
- Get the package for your system. The installers are a
.deb(Linux), a.msiorpoka-setup.exe(Windows) and a.dmg(macOS). If you build from source, Build and run from source produces them. - Install it the usual way for that package. The
.debneedsdbus(a hard dependency) and recommendspython3-nautilus, whichaptinstalls by default; a non-GNOME desktop can leave it out. The.debalso installs the Nautilus Space-key extension for you. - On Windows, the app needs WebView2, which comes with Windows 10 21H2 and later and with Windows 11.
- Start Poka and preview a file (Preview your first file). Extensions for individual formats are installed on first use from the catalogue at poka.sh, after Poka checks each file's SHA-256 and size.
Install libmpv for audio and video
Poka does not ship libmpv. It loads the library at run time, so you can install or replace it yourself. Without it, media files still show their metadata card and play in the built-in webview player where its decoder supports the format.
- Windows: put
libmpv-2.dllnext topoka.exe, or in a folder onPATH. - Linux: install your distribution's libmpv (
apt install libmpv2,pacman -S mpv,dnf install mpv-libs). - macOS:
brew install mpv. - Anywhere: set
POKA_LIBMPVto the library's full path. When it is set, it is the only place Poka looks.
Restart Poka afterwards. Playback opens in a borderless mpv window.
Troubleshoot a preview
Start here: which of these did you see?
A card saying no extension is installed. The format has no extension on this machine yet. Click the install button. If the install fails, check your network connection and try again. Poka refuses to publish an extension unless every downloaded file matches its recorded SHA-256 and size.
"<id> timed out after <N>ms". The extension used more than its time budget
(max_time_ms in its manifest) and was stopped. This usually means a very large or
pathological file.
"SHA256 mismatch for ...". The .wasm on disk does not match the hash in its
plugin.json, so Poka refused to run it. Reinstall the extension. Manifests with an
empty sha256 skip the check; that is for local development builds only.
"Conflict: X and Y both claim .ext" in the log. Two installed extensions declare the same file extension. The first one scanned wins and the other is ignored. Remove one of them.
The Space key does nothing on Linux. The trigger works under GNOME with
Nautilus only. Check that python3-nautilus is installed and restart Nautilus with
nautilus -q. Other desktops (XFCE with Thunar, KDE and others) have no Space-key
trigger yet; use Open with or poka <file>.
The preview looks wrong. Read the information card: the viewer draws it with the
preview, and for a picture, a 3D model or a drawing it sits closed under the preview. It
lists facts from the file, notes where the file does not look like its extension says (a
PNG renamed .jpg, for example) or where the parser found trailing data, and a SHA-256
when you press Verify.
In the browser, a message names a failure kind. The web app says why a preview
failed: a module would not download or is not a valid module (load), it ran and
failed (run), it answered with something unreadable (output), it ran out of time
(timeout), the file is over the size cap (too-large), or the list of formats would
not load (routes). Reload the page; if it persists, report the message.
A pasted link does not preview. The link must end in a recognisable extension and point to a public file, and the site must allow cross-origin requests. Otherwise download the file and drop it on the page.
Still stuck, on a developer install. python3 scripts/poka-doctor.py diagnoses a
stale or broken local install: dangling symlinks, an install behind the current build,
conflicting manifests and modules that are built but not installed.
Clear the caches
Poka keeps thumbnails, generated previews, decoded previews, transcoded media and a compiled-module cache. Where they are is listed in Environment variables and file locations. The settings window can show their size and clear them.