X410 can be used in various X11 usage scenarios that require an X-Window server. For example, you can use it for X11 forwarding in SSH sessions or directly starting Xfce desktop in Windows Subsystem for Linux.
X410 has two running modes, 'Windowed Apps' and 'Floating Desktop'. When you select the Windowed Apps mode, X410 only shows a tray icon. In this mode, when you execute a Linux GUI app, it will be shown in a typical Windows-style window that can be freely moved around just like a regular Windows program. However, you cannot run any Linux GUI window manager such as i3 in this mode since X410 is already acting as a window manager for Linux GUI apps.
In Floating Desktop mode, X410 will be shown as a blank window that can be resized. All your Linux GUI apps will be displayed and confined within this window. In order to properly manage Linux GUI apps displayed in this mode, you should also run a Linux GUI window manager such as i3. You can also run a full Linux GUI desktop such as Xfce in this mode. When you maximize the X410 window, X410 automatically hides its window title bar and provides more immersive Linux GUI desktop experience (you can exit from this maximized mode any time by pressing
When you enable 'DPI Scaling' option in X410, your Linux GUI apps are enlarged according to the scaling settings in Windows. You can control the quality of the scaling by selecting 'Default' or 'High Quality (Windowed Apps Only)'; the 'Default' option should give you similar performance and output as classic Windows programs that don't support native Windows HiDPI rendering.
If you want to crisply scale your Linux GUI apps, you should disable this 'DPI Scaling' option and use the natively supported scaling option (ex. GDK_SCALE) in your Linux GUI apps.
If you want to share clipboard data between Linux and Windows apps, you can enable 'Shared clipboard' option in X410. When this option is enabled and you copy plain text in a Windows app, you can seamlessly paste that text to any Linux app just by using its clipboard paste menu. It also works from Linux to Windows apps.
If you enable 'Auto copy to Windows after selection' option in X410, you don't need to explicitly select a copy menu in your Linux app; when you finish selecting text in a Linux app, X410 automatically transfers it to Windows clipboard.
Just like plain text, you can also share images (BMP/PNG) and HTML text between Windows and Linux apps when this option is enabled. X410 natively recognizes and transfers raw image data in BMP and PNG formats. However, Windows and Linux automatically convert many image formats for clipboard operations (ex. JPG to BMP format). Hence you should be able to freely copy and paste most images between the two OS's via X410.
Please keep in mind that the clipboard sharing in X410 is utilizing network communication functions instead of system memories. So, if your clipboard data is too big (ex. a high-resolution BMP image) or your Linux app is running over a slow X11 forwarding SSH session, you may not be able to copy and paste the data due to the delays and timeouts for synchronizing the two clipboards.
X410 supports various connection methods that can be used for setting up your DISPLAY environment variable. For TCP connections, X410 also has a built-in inbound connection blocking feature that only allows connections from WSL2 and/or Hyper-V virtual machines.
Starting from X410 version 3.0.0, an inbound rule for allowing public TCP connections is automatically added to Windows Defender Firewall when you install X410. Hence, unlike the previous versions, you'll not see any security alert message box or need to separately enable any 'public network' setting in Windows even when you select the 'Allow full public access' option in X410.
Set the DISPLAY environment variable!
Before you can run any X-Window client program (ex. GNU Octave) or desktop environment (ex. Xfce), you must first properly set up the DISPLAY environment variable within the server where your X-Window client programs are running. That variable is referenced from those client programs for opening connections to X410 and pushing out their graphical output.
If the DISPLAY environment variable is incorrectly configured, you'll get an error message similar to the one shown below:
$ xclock Error: Can't open display: 172.27.160.1:0.0
More detailed guides for configuring the DISPLAY environment variable
- Windows Subsystem for Linux (WSL)
- Hyper-V Virtual Machines
- Docker Desktop for Windows
- X11 forwarding over SSH
- Built-in SSH X11 forwarding in PowerShell or Windows Command Prompt
- Enabling SSH X11 forwarding in Visual Studio Code for remote development
- Transparently adding native support for VSOCK in X11 apps (patching libxcb)
X410 Setup Tips and Usage Examples
- Running X410 on HiDPI Screens
- Selecting a Keyboard Layout
- Automatically Start X410 on Login
- Command-Line Switches
- Add yourself to Hyper-V Administrators group and freely use Hyper-V related commands without becoming a full system administrator
- Using X410 with WSL2
- Where should I add my DISPLAY environment variable in WSL?
- Sharing D-Bus among WSL2 Consoles
- Directly opening Linux GUI apps from Windows batch files
- Pin a Linux GUI app to Start or Taskbar
- Why you should uninstall screen savers and lockers in WSL
- Protecting X410 Public Access for WSL2 via Windows Defender Firewall
- X410 vs. WSLg
- Disabling WSLg (or using it together with X410)
Windowed Apps Mode
- Running WSL2 Linux GUI apps like Windows apps in Ubuntu themes and colors
- Opening a genuine Linux terminal emulator directly from File Explorer
- Opening Firefox in WSL2 without Windows default title bar
- Setting the Theme for Linux GUI Apps (Windowed Apps Mode)
- Get your sidekick for easily managing and launching Linux GUI apps (WSL)
Floating Desktop Mode
- Running Ubuntu Desktop in WSL2
- Creating a Windows Shortcut for Linux GUI Desktop (WSL)
- Customizing Xfce Desktop for Ubuntu (WSL)
- Running Xfce Desktop on Kali Linux (WSL)
- Installing Pantheon Desktop on Ubuntu (WSL)