# Ulauncher — Fast Application Launcher for Linux > A Python-based application launcher for Linux desktops with fuzzy search, extensions, and customizable themes. ## Install Save in your project root: # Ulauncher — Fast Application Launcher for Linux ## Quick Use ```bash # Install on Ubuntu/Debian sudo add-apt-repository ppa:agornostal/ulauncher sudo apt update && sudo apt install ulauncher # Launch and trigger with Ctrl+Space (default hotkey) ulauncher ``` ## Introduction Ulauncher is a lightweight application launcher for Linux that provides quick access to apps, files, bookmarks, and custom actions through a keyboard-driven search interface. It fills the same role as Spotlight on macOS or PowerToys Run on Windows. ## What Ulauncher Does - Searches and launches installed desktop applications with fuzzy matching - Browses files and directories with real-time path completion - Runs custom web searches and calculator expressions - Extends functionality through a community extension ecosystem - Supports custom shortcut keywords for frequently used actions ## Architecture Overview Ulauncher is built with Python and GTK, running as a persistent background process that listens for a global hotkey. On activation, it presents an overlay search bar that queries an indexed list of desktop entries, files, and extension results. Extensions communicate via a WebSocket-based API, allowing both Python and script-based extensions to provide search results asynchronously. ## Self-Hosting & Configuration - Install via PPA (Ubuntu), AUR (Arch), RPM, or from the GitHub releases - Configure hotkey, theme, and behavior from the preferences window - Extensions are installed by pasting their GitHub URL into the extension panel - Custom user shortcuts can map keywords to URL patterns or shell commands - Autostart is configurable via the desktop environment autostart mechanism ## Key Features - Fuzzy search with smart ranking that learns from usage patterns - Extension API with 300+ community extensions for various services - Customizable themes with CSS-based styling - Custom shortcuts for parameterized commands and URL templates - Low memory footprint with fast startup time ## Comparison with Similar Tools - **Albert** — C++/Qt-based launcher with similar features but heavier resource usage - **Rofi** — powerful but primarily a window switcher/dmenu replacement with steeper configuration - **dmenu** — minimal and composable but requires scripting for app-launcher functionality - **GNOME Shell search** — built-in but limited extension support and not available on other desktop environments - **Flow Launcher (Windows)** — similar concept but Windows-only ## FAQ **Q:** Which Linux desktop environments does Ulauncher support? A: It works on GNOME, KDE, XFCE, i3, Sway, and most X11 or Wayland-based desktops. **Q:** Can I write my own extensions? A: Yes. Extensions are Python packages that implement the Ulauncher extension API. A project template is available in the documentation. **Q:** Does it support Wayland? A: Yes, with caveats. The global hotkey works on most Wayland compositors but may require compositor-specific configuration on some. **Q:** How much memory does it use? A: Ulauncher typically uses 30-60 MB of RAM while running in the background. ## Sources - https://github.com/Ulauncher/Ulauncher - https://ulauncher.io --- Source: https://tokrepo.com/en/workflows/asset-9ba75983 Author: AI Open Source