Subject: Proposal: “Open with Isolated VM” integration for GNOME Boxes & Nautilus
Hi GNOME Boxes team,
I’m a GNOME user and long-time admirer of your work on Boxes.
I’d like to propose a feature that could significantly improve everyday security workflows: a context-menu option to open files or URLs in an ephemeral, isolated VM directly from Nautilus.
Motivation
Current use cases that require isolation (banking, opening untrusted files, browsing suspicious URLs, running unverified code) involve manually creating/configuring VMs. This is slow and discourages non-technical users from using virtualization for security.
Proposed workflow
Nautilus integration:
Add “Open with Isolated VM” to the “Open With” menu for files and to the right-click menu for URLs/links.
VM boot:
Launch a pre-configured, minimal OS image (GNOME desktop + basic apps) in Boxes.
Boot should be as fast as possible (ideally using snapshots or qcow2 backing files).
Content injection:
The selected file or URL is passed securely into the VM.
Files: mounted as a temporary shared folder or copied into a volatile filesystem.
URLs: opened in the default browser inside the VM.
Ephemeral lifecycle:
Upon VM shutdown, all changes are discarded and the image reverts to a clean state (like --transient in QEMU or Windows Sandbox).
Implementation considerations
Performance:
Use lightweight base images and snapshotting for sub-5s launch times.
Security:
Strict separation — no permanent shared folders, clipboard optional.
Extensibility:
Allow multiple isolated profiles (e.g., “Browser VM”, “Document Viewer VM”).
Dependencies:
Likely needs deeper Nautilus–Boxes integration and enhancements in libvirt/QEMU command handling for transient VMs.
Benefits
Security:
Reduces attack surface by isolating risky operations.
Accessibility:
Brings sandboxed workflows to non-technical users via a one-click action.
Competitive advantage:
GNOME could offer a user-friendly alternative to Windows Sandbox or Qubes-style disposables in a desktop-integrated, open-source way.
Thanks for considering,