Home

Awesome

<p align="center"> <img width="600" src="./docs/onagre.png" alt="Onagre logo" /> </p> <p align="center"> <a href="https://github.com/onagre-launcher/onagre/actions/workflows/CD.yml"><img src="https://github.com/onagre-launcher/onagre/actions/workflows/CD.yml/badge.svg" alt="GitHub Actions workflow status" /></a> <img src="https://github.com/onagre-launcher/onagre/actions/workflows/Release.yaml/badge.svg" alt="GitHub Actions workflow status" /></a> <br /> <a href="https://conventionalcommits.org" ><img src="https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg" alt="Conventional commits" /></a> <a href="https://github.com/onagre-launcher/onagre/actions/blob/main/LICENSE" ><img src="https://img.shields.io/github/license/onagre-launcher/onagre" alt="Repository license" /></a> </p> <p align="center"> <a href="https://docs.onagre.dev">Website</a> · <a href="https://docs.onagre.dev/get-started.html">Get Started</a> </p> <p align="center"> A general purpose application launcher for X and wayland inspired <br> by rofi/wofi and alfred,<br> build with <a href ="https://github.com/hecrj/iced/">iced</a> and <a href ="https://github.com/pop-os/launcher">pop-launcher</a>. </p>

https://user-images.githubusercontent.com/24563836/170211716-7822ec0b-94d1-414e-a131-cf91af540ca4.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

Install

Dependencies:

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:

KeyAction
Arrow up/downChange selection
TabAutocomplete (in files mode)
EscQuit without launching
EnterLaunch 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:

ModeDescriptionPrefixConfiguration
HistoryDisplay the most used desktop entries on start
PopLauncherSearch for desktop entries
PulseControl PulseAudio devices and volume
ScriptShell scripts as launcher options$HOME/.local/share/pop-launcher/scripts
TerminalTerminal or background commands'run '
WebWeb search'ddg ', 'g', ...$HOME/.local/share/pop-launcher/plugins/web/config.ron
FilesFind files using fd/find'find '
RecentRecently-opened document search'recent '
CalcCalculator with unit conversion (uses Qalculate! expressions)'= '
HelpList 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


<img src="docs/website/src/.vuepress/public/screenshots/default-theme.png" alt="default-theme-screenshot" style="display: block; margin-left: auto; margin-right: auto; width: 65%;"/>

Default theme


<img src="docs/website/src/.vuepress/public/screenshots/murz.png" alt="murz-theme-screenshot" style="display: block; margin-left: auto; margin-right: auto; width: 65%;"/>

Murz (credit to murz)


<img src="docs/website/src/.vuepress/public/screenshots/nord-rounded.png" alt="simple-theme-screenshot" style="display: block; margin-left: auto; margin-right: auto; width: 65%;"/>

Nord


<img src="docs/website/src/.vuepress/public/screenshots/not-adwaita.png" alt="not-adwaita-theme-screenshot" style="display: block; margin-left: auto; margin-right: auto; width: 65%;"/>

Not-Adwaita


<img src="docs/website/src/.vuepress/public/screenshots/solarized.png" alt="solarized-theme-screenshot" style="display: block; margin-left: auto; margin-right: auto; width: 65%;"/>

Solarized


<img src="docs/website/src/.vuepress/public/screenshots/darcula.png" alt="darcula-theme-screenshot" style="display: block; margin-left: auto; margin-right: auto; width: 65%;"/>

Darcula


<img src="docs/website/src/.vuepress/public/screenshots/hollow.png" alt="darcula-theme-screenshot" style="display: block; margin-left: auto; margin-right: auto; width: 65%;"/>

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!