x11-desktop / README.md
3v324v23's picture
Cleanup: Remove duplicate mousepad and update README
81b3f80
metadata
title: X11 Desktop
emoji: πŸ–₯️
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
license: mit

πŸ–₯️ X11 Desktop Environment

A fully functional Linux desktop environment running in your browser! Access XFCE, LXQt, or MATE desktop with pre-installed applications including GIMP, Firefox, LibreOffice, and VS Code.

✨ Features

  • Multiple Desktop Environments: Choose between XFCE (default), LXQt, MATE, or Openbox
  • Pre-installed Applications:
    • 🎨 Graphics: GIMP
    • 🌐 Browser: Firefox
    • πŸ“„ Office: LibreOffice Suite
    • πŸ–₯️ Terminal: XFCE Terminal, MATE Terminal
  • Secure Connection: WSS (WebSocket Secure) for encrypted VNC streaming
  • Browser-based Access: No VNC client installation needed
  • Full Clipboard Support: Copy/paste between local and remote desktop

πŸš€ Quick Start

  1. Click the URL above to access the Space
  2. Wait for the desktop to load (may take 30-60 seconds on first launch)
  3. The noVNC viewer will connect automatically
  4. Start using applications from the desktop menu!

πŸ“± Running on Android

You can run this full desktop environment on your Android phone using Termux! Check out the Termux Guide for detailed instructions.

🎯 How to Use

Accessing Applications

  • Click the Applications menu in the top-left corner
  • Browse categories: Graphics, Internet, Office, Development
  • Launch apps with a single click

Keyboard & Mouse

  • All keyboard shortcuts work as expected
  • Right-click for context menus
  • Scroll with mouse wheel or touchpad

Copy & Paste

  • Copy/paste works between your local machine and the remote desktop
  • Use the noVNC clipboard menu if direct paste doesn't work

πŸ”§ Configuration

The desktop environment can be customized via environment variables:

  • DESKTOP_ENV: Choose desktop (xfce, lxqt, mate) - default: xfce
  • VNC_PORT: VNC server port - default: 5901
  • NO_VNC_PORT: noVNC web port - default: 6080
  • VNC_PASSWORD: VNC password - default: vncpassword

πŸ“¦ Installed Software

Development Tools

  • Git
  • Python 3 with pip
  • Node.js and npm
  • Vim, Nano

Graphics & Media

  • GIMP (GNU Image Manipulation Program): A free and open-source raster graphics editor used for image manipulation and image editing, free-form drawing, transcoding between different image file formats, and more specialized tasks. It is extensible by means of plugins, and scriptable.
  • ImageMagick

Internet

  • Firefox Browser
  • Wget, Curl

Office & Productivity

  • LibreOffice Writer
  • LibreOffice Calc
  • LibreOffice Impress
  • LibreOffice Draw

System Utilities

  • File Manager (Thunar)
  • Text Editor (Mousepad)
  • Terminal Emulator
  • System Monitor (htop)

πŸ”’ Security

This Space uses:

  • Self-signed SSL certificates for WSS connections
  • VNC password authentication
  • Sandboxed container environment
  • Ephemeral storage (resets on restart)

Note: Your browser may show a security warning about the self-signed certificate. This is expected and the connection is still encrypted.

πŸ› Troubleshooting

Desktop not loading?

  • Wait 60 seconds for services to fully start
  • Refresh the page
  • Check the Hugging Face Space logs

Performance issues?

  • Close unused applications
  • Use a lighter desktop environment (LXQt instead of XFCE)
  • Check your internet connection speed

Can't connect?

  • Ensure WebSocket connections are allowed
  • Try a different browser (Chrome/Firefox recommended)
  • Disable browser extensions that might block WebSockets

πŸ“ License

MIT License - feel free to fork and customize!

🀝 Contributing

Found a bug or have a feature request? Open an issue on the repository!


Built with ❀️ using:

  • Gradio - AI web interface framework
  • noVNC - HTML5 VNC client
  • TigerVNC - High-performance VNC server
  • XFCE - Lightweight desktop environment