logo

Using the Swiftor VNC Client

This guide covers the web-based VNC client used to access the graphical desktop of your Swiftor Virtual Machines (VMs).

System Requirements

  • Browser: Chromium-based browsers (Google Chrome, Microsoft Edge, Brave) are recommended for best performance and full feature support (like seamless clipboard).
    • Firefox is supported, but some features may be limited.
    • Safari is generally not supported for direct connections due to limitations with WebSocket authentication.
  • Local Compute: A minimum of 4 CPU cores and 4GB of RAM on your local machine is recommended for a smooth experience, though it may function on less powerful systems.

Connecting and Authentication

When you connect to a VM's desktop interface from the Swiftor dashboard, your browser uses HTTPS Basic Authentication. You'll be prompted to log in with the VM's credentials (typically username swiftor and the password you set during VM creation or retrieved from secrets).

VNC Login Prompt

Subsequent connections usually won't require login unless the session expires or credentials change.

Control Panel

The client control panel, typically accessed via a side tab or button, provides options to interact with your VM session.

VNC Control Panel

Stream Quality

Adjust settings to balance performance and visual quality.

VNC Stream Quality Settings

  • Preset Modes: Quickly switch between configurations:
    • Static: Fixed 720p resolution, scaled locally.
    • Low / Medium / High: Balance bandwidth and quality.
    • Extreme: Maximum quality with lossy compression.
    • Lossless: Highest quality, suitable only for very low-latency connections.

Keys

Provides on-screen buttons for special keys (Ctrl, Alt, Esc, Windows/Super key), useful on mobile or tablets.

VNC Keys Panel

Clipboard

Facilitates text transfer between your local machine and the VM.

VNC Clipboard Panel

  • Seamless Clipboard: Supported on Chromium browsers. Copy/paste should work naturally.
  • Manual Transfer: For other browsers (like Firefox), paste text into this panel to send it to the VM's clipboard, or copy text from the VM to see it appear here.

Settings

Configure various client-side behaviors.

VNC Settings Panel

  • Shared Mode: Allow other browser tabs/windows to connect to the same running session (if enabled server-side by Swiftor).
  • Clipboard Up/Down: Enable/disable clipboard transfer directions.
  • Clipboard Seamless: Toggle seamless clipboard integration (Chromium only).
  • Translate Keyboard Shortcuts: Maps local OS shortcuts (e.g., Cmd+C on Mac) to equivalent Linux shortcuts (Ctrl+C) inside the VM.
  • Enable WebRTC UDP Transit: May improve performance on high-latency networks (if enabled server-side).
  • Enable WebP Compression: Uses WebP for potentially lower bandwidth usage (~30%). Can be disabled on lower-end local machines if it impacts frame rate.
  • Enable Performance Stats: Displays FPS and bottleneck indicators (CPU/Network) in the top-right corner. VNC Performance Stats
  • Enable Pointer Lock: Confines the mouse cursor to the VNC window (useful for gaming or full-screen). Press Esc to release.
  • IME Input Mode: Support for complex input methods (e.g., Japanese, Hindi).
  • Scaling Mode:
    • Remote Resizing: Adjusts the VM's resolution to match your browser window.
    • Local Scaling: Scales the VM's fixed resolution image to fit your window.

For a generally smooth experience on Swiftor VMs:

  • Browser: Use a Chromium-based browser (Chrome, Edge, Brave).
  • Stream Quality: Start with High. If you experience lag, try Medium or Low. If bandwidth is not a concern and VM performance is high, try Extreme.
  • Scaling Mode: Remote Resizing is usually preferred as it makes the VM adapt to your window size dynamically.
  • Translate Keyboard Shortcuts: Enable this for a more natural feel if your local OS differs from the VM's Linux environment.
  • Clipboard Seamless: Ensure this is enabled for easy copy/paste.
  • WebP Compression: Keep enabled unless you notice performance issues on your local machine.

Multi-Monitor Workarounds

The web VNC client doesn't support true multi-monitor display in the way your host OS does (i.e., extending the VM desktop across multiple physical screens as one large space).

However, you can achieve a multi-window workflow:

  1. Large Resolution & Remote Resizing: Set the VM's internal resolution quite high (if the VM OS supports it) and use Remote Resizing. Then, resize your browser window across multiple monitors. The VM desktop will resize to fill this large window, allowing you to arrange application windows within that larger space.
  2. Multiple Connections (If Shared Mode is Enabled): If Swiftor configuration allows shared sessions, you could potentially open the same VM session in multiple browser windows or tabs and arrange them on different monitors. Note that this means you'll see the same desktop mirrored in each window, but you could position different application windows to be primarily visible in each VNC window.

Check Swiftor's specific VM and VNC configuration for shared session capabilities.