Free Launch
A fuzzy launcher written in Rust to replace Ulauncher.
Because there is no such thing as a free launch.
Why Build This
NixOS warned me of multiple security issues in libsoup-2.74.3 which was a dependency for Ulauncher.
Other Rust-based launchers don't meet my requirements:
- They are not being actively developed.
- They don't run on my setup.
Launchers in C and Other Languages
This is far from an exhaustive list. I'm mostly focusing on Rust based launchers for Linux.
- Ulauncher: The best option I had found, but unfortunately it depends on
libsoup-2.74.3which is marked as insecure in nixpkgs. - albert: I was actually using this first but it had a few issues. Can't remember what they were at the moment but I left it for Ulauncher.
- rofi: Not a big fan of the interface on this one, even though it's very popular.
- Krunner: This looks decent, worth trying for those on KDE. Actually, it should be usable on NixOS even without running KDE as the window manager.
Rust Based Launchers
- Loungy: This looks really excellent but: "Loungy is currently not in active development. As a new dad, my development resources have dwindled."
- gauntlet: Recommended by Matthias Grandl, creator of Loungy but: "Web-first cross-platform application launcher with React-based plugins". No thank you.
- kickoff: Looks great but panics with:
layer shell is not available: NotPresent - elbey: Incomplete, but worth keeping an eye on.
- raffi: Fully config based. Does not auto-discover apps.
- jolly: Looks good but panics with:
Failed to initialize any backend! Wayland status: NoWaylandLib - dlauncher: Based on Ulauncher which sounds good. Just need to get it to compile...
- sklauncher: Not bad, but I don't love the interface, even though it reminds me of fzf/skim/picleo which is kinda awesome.
- fuzzle: Looks good but is not on crates.io.
More Rust based launchers can be found here for those that want to keep digging: ‘fuzzy launcher’ search on Lib.rs.
Features
- Written entirely in Rust
- Show all
*.desktopfiles and allow launching them - Show all executables in path and allow launching them
- Allow launching of shell aliases and functions?
- Fast launch, but could always be faster...
- Load items in separate thread
- Daemon mode with visibility switch command like Ulauncher for instantaneous invocation
- System commands: lock screen, sleep, hibernate, reboot, shutdown
- Interactive help screen
- Run or raise functionality
- Custom commands via a config file
- Browser search templates according to config
- Synonyms/keywords from config
- Frecency based sorting
- Show running apps
- Show running windows
- Browser tabs
- Path navigation with autocomplete
- Actions besides launch via Tab
- Integration with Symplasma