Omahub
← All plugins
A

Quick Look

by André Conde

macOS-style file preview: select a file in Files, press Space, and see it rendered — images, PDF pages, media stills, code, markdown, folders and archives.

Security review

No obvious issues detected

Deterministic scan — not a security guarantee

None
Risk level
None
Analyzed commit
0222974
Scanned
1 month ago

No potentially dangerous behavior detected in the analyzed commit.

Automated analysis only — not a security guarantee.

AI advisory review

Review recommended

Language-model assessment · ~deepseek/deepseek-v4-flash-latest — advisory only

Low
AI risk level
Low
Recommendation
review
Model
~deepseek/deepseek-v4-flash-latest
Analyzed commit
0222974
Reviewed
1 month ago

The plugin is a file previewer that runs external helpers on user-selected files; no malicious, obfuscated, or credential-harvesting code was found. The main issue is a recursion bug in Overlay.qml that can crash the shell when a new preview is requested while a probe is still running, and the full probe script was not completely sampled.

  • Overlay.qml startProbe() recurses infinitely when probe.running is false, which can crash the shell if a second preview request arrives during an in-flight probe.
  • The plugin intentionally owns the org.gnome.NautilusPreviewer D-Bus name; this is documented and reversible, but could conflict with GNOME's sushi previewer.
  • The probe script invokes ImageMagick, ffmpeg, poppler, and other helpers on untrusted files; resource limits are present, but the complete script was not fully reviewed.
How this check works

This review combines the deterministic scan (the rule-based results above) with an independent look at the plugin's code by a language model. The model reads a trimmed sample of the repository's files, the manifest, and the README, then gives a plain-language risk level and a recommendation: install (no notable danger), review (look closer first), or avoid (clearly dangerous).

It runs on the same analyzed commit as the deterministic scan and is strictly advisory — it is not a security guarantee and never blocks a plugin by itself. A human moderator still reviews plugins before they are listed.

AI advisory only — automated analysis, not a security guarantee.

Install
$ omarchy plugin add https://github.com/andreconde21/omarchy-quick-look --enable
Productivity #quickshell #media

Quick Look

macOS-style file preview for Omarchy. Select a file in Files, press Space, and it appears — rendered, not described. Press Space again to dismiss.

Preview

What it does

Renders a themed full-screen preview of whatever is selected:

Kind What you see
Images The image, scaled to fit, with dimensions and format
PDF The actual pages, rendered (first 8), with page count and size
Video A still frame, duration, resolution and codec
Audio Embedded cover art, title/artist/album, duration
Text and code The file contents, up to 400 lines
Markdown The source, shown literally (see Notes)
Folders The contents, folders first
Archives The entry list
Anything else Type, size and what file makes of it

How Space works

Nautilus does not let extensions bind keys. What it does is D-Bus activate the well-known name org.gnome.NautilusPreviewer when Space is pressed on a selection. This plugin ships a small bridge that owns that name and forwards to the Omarchy overlay, which is the supported way to put your own previewer behind the Space key.

Ways in:

  • Space on a selected file in Files
  • Right-click → Quick Look (a Nautilus extension, for discoverability)
  • omarchy-shell andreconde.quick-look show /path/to/file

Inside the preview: Space, Esc or Q dismiss, Enter opens the file in its default application.

Requirements

  • Omarchy 4 / Quickshell plugin support
  • python3 with PyGObject (python-gobject) — required for the Space-key bridge
  • file — required; without it nothing is classified and every file falls back to "no preview"
  • imagemagick — required for image previews. It is what measures an image before decoding it, so without it images are refused rather than shown
  • poppler (PDF pages), ffmpeg and ffmpegthumbnailer (video stills, cover art), bsdtar/libarchive (archive listings) — optional, each affects only its own file type
  • xdg-open for the Open button, nautilus-python for the right-click entry — both optional

Install

omarchy plugin add https://github.com/andreconde21/omarchy-quick-look.git --enable --yes

Then register the Space-key bridge:

mkdir -p ~/.local/share/dbus-1/services
cat > ~/.local/share/dbus-1/services/org.gnome.NautilusPreviewer.service <<EOF
[D-BUS Service]
Name=org.gnome.NautilusPreviewer
Exec=$HOME/.config/omarchy/plugins/andreconde.quick-look/bin/quick-look-previewer
EOF
nautilus -q

Optionally add the right-click entry as well:

mkdir -p ~/.local/share/nautilus-python/extensions
cp ~/.config/omarchy/plugins/andreconde.quick-look/nautilus/quick_look.py \
   ~/.local/share/nautilus-python/extensions/
nautilus -q

To hand Space back to GNOME's own previewer (sushi), delete the .service file and run nautilus -q.

Notes

  • Previews render as plain text, including Markdown. A preview shows files this shell did not author, and Qt's rich-text formats resolve image and raw-HTML references themselves inside a long-lived process; plain text cannot reference an external resource at all. That is a deliberate trade of formatting for a property that holds by construction.
  • Rendered pages, stills and cover art are cached under ~/.cache/omarchy/quick-look, keyed by path and modification time, and pruned after 7 days. Reopening a file is instant; changing it re-renders.
  • Video is previewed as a still frame rather than played. Press Enter to open it in a real player.
  • All format handling lives in bin/quick-look-probe, which prints JSON. Run it against a file to see exactly what the overlay will draw.

Remove

omarchy plugin remove andreconde.quick-look --yes

Then hand the Space key back to GNOME's own previewer (sushi) and drop the render cache:

rm -f ~/.local/share/dbus-1/services/org.gnome.NautilusPreviewer.service
rm -f ~/.local/share/nautilus-python/extensions/quick_look.py
rm -rf ~/.cache/omarchy/quick-look
nautilus -q

License

MIT — see LICENSE.