Skip to content

A general purpose application launcher for X and wayland inspired by rofi/wofi and alfred

License

Notifications You must be signed in to change notification settings

onagre-launcher/onagre

Repository files navigation

Onagre logo

GitHub Actions workflow status GitHub Actions workflow status
Conventional commits Repository license

Website · Get Started

A general purpose application launcher for X and wayland inspired
by rofi/wofi and alfred,
build with iced and pop-launcher.


onagre.mp4

Onagre is build on top of pop-launcher which makes it very versatile. The pop-launcher plugin system allow you to extend Onagre with plugins from the community or even write your own using any programming language.

Features

  • Works on x11 and wayland.
  • Fully customizable theme.
  • Default plugins: calc, files, pop_shell, recent, terminal, desktop entries, find, pulse, scripts, web.
  • Can be extended with pop-launcher plugins.

Install

Dependencies:

  • ⚠️ pop-launcher > 1.2.4 Rust 1.8 introduced a breaking change in the way sorting is handled, onagre will unexpectedly crash with older version of pop launcher. Currently, for arch users, the only way to get the latest version of pop-launcher is to build it from source.
  • Qalculate (optional)

Packaging status

If there is no distro package available for Onagre in your preferred manager, you need Rust and cargo to build it.

From source:

git clone https://github.com/oknozor/onagre.git
cd onagre
cargo build --release --locked
sudo mv target/release/onagre /usr/bin/onagre

Latest release with cargo:

cargo install --git https://github.com/onagre-launcher/onagre --tag 1.0.0

Latest upstream with cargo:

cargo install --git https://github.com/onagre-launcher/onagre

Usage

1. Key bindings:

Key Action
Arrow up/down Change selection
Tab Autocomplete (in files mode)
Esc Quit without launching
Enter Launch selection

2. Plugins:

To use a plugin simply match its regex when typing your query.

For instance the file plugin will match ^(/|~).*, typing ~/ would enable the plugin and start the file navigation.

Plugin with no prefix are enabled by default, there entry will be mixed in the search results.

Default plugins:

Mode Description Prefix Configuration
History Display the most used desktop entries on start
PopLauncher Search for desktop entries
Pulse Control PulseAudio devices and volume
Script Shell scripts as launcher options $HOME/.local/share/pop-launcher/scripts
Terminal Terminal or background commands 'run '
Web Web search 'ddg ', 'g', ... $HOME/.local/share/pop-launcher/plugins/web/config.ron
Files Find files using fd/find 'find '
Recent Recently-opened document search 'recent '
Calc Calculator with unit conversion (uses Qalculate! expressions) '= '
Help List available pop-launcher modes '?'

Theming

Onagre will look for a theme file in $XDG_CONFIG_DIR/onagre/theme.scss and will fallback to the default theme if none is found or if your theme contains syntax errors. To ensure your theme is correctly formatted run onagre from the terminal.

For a detailed guide refer to wiki -> theming , or take a look at the theme examples directory.

Gallery


default-theme-screenshot

Default theme


murz-theme-screenshot

Murz (credit to murz)


simple-theme-screenshot

Nord


not-adwaita-theme-screenshot

Not-Adwaita


solarized-theme-screenshot

Solarized


darcula-theme-screenshot

Darcula


darcula-theme-screenshot

Hollow


Related projects

Code of conduct

This project is bound by a code of conduct based on the contributor covenant if you are not familiar with it, and want to contribute please, read it before going further.

Contributing

Having a question or suggestion for a new feature ? Feel free to open an issue or submit a PR. Currently, what we need the most is feedback from users using different window managers and hardware. If Onagre does not work out of the box for you please let us know, so we can fix it.

License

All the code in this repository is released under the MIT License, for more information take a look at the LICENSE file.

Thanks

Credit to @themou3ad for the logo!