Ulauncher is a fast application launcher for Linux. It's is written in Python, using GTK+.
App Search | File Browser | Custom Themes |
---|---|---|
Download it at ulauncher.io
As of Ulauncher v3, you can create your own Ulauncher extensions Check out docs.ulauncher.io to find out how.
As of Ulauncher v4, you can create your own color themes Check out docs.ulauncher.io to find out how.
If your distribution packages ulauncher.service properly, then you can run ulauncher
on startup by running:
systemctl --user enable ulauncher.service
- If your DE doesn't use compositing, run ulauncher with
--no-window-shadow
to remove a black box around a window - [Solved] inotify watch limit reached
- [Workaround exists] Can't map the keys to ALT+SPACE
- [Workaround exists] Hotkey doesn't work in Wayland when is triggered from certain apps
- [Workaround exists] Border appears around ulauncher window in Sway DE
Project | Contributor-friendly Issues |
---|---|
Ulauncher App | |
Frontend for extensions website Uses ReactJS |
|
API for extensions website Uses Python and bottle library |
Any code contributions are welcomed as long as they are discussed in Github Issues with maintainers. Be aware that if you decide to change something and submit a PR on your own, it may not be accepted.
Checkout Code Contribution Guidelines for more info.
You must have the following things installed:
-
python3-distutils-extra
-
Application runtime dependencies. (You don't have to manually install these if you have already installed Ulauncher)
sudo apt-get install \ libkeybinder-3.0-0 \ libgtk-3-0 \ gir1.2-gtk-3.0 \ gir1.2-keybinder-3.0 \ gir1.2-webkit2-4.0 \ gir1.2-glib-2.0 \ gir1.2-notify-0.7 \ gir1.2-gdkpixbuf-2.0 \ gir1.2-ayatanaappindicator3-0.1 \ python3-dbus \ python3-levenshtein \ python3-pyinotify \ python3-websocket \ python3-xdg
$ ./ul init-dev-env
installs Ulauncher data to~/.local/share/ulauncher/
$ ./ul dev-container
will take you into a Docker container from which you can run build and test scripts. Usesudo -E ./ul dev-container
if your user is not in thedocker
group.root@container: # ./ul build-preferences
build preferences UI in JS/HTMLroot@container: # ./ul test
runs linter, type checker, and unit tests$ ./ul run
runs the app
Check out output of ./ul
to find more useful commands.
See the LICENSE file for license rights and limitations (GNU GPL v3.0).