Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tkapias/bemenu-desktop-menu
A simple bemenu desktop entries launcher.
https://github.com/tkapias/bemenu-desktop-menu
bash-script bemenu desktop xdg-menu
Last synced: 18 days ago
JSON representation
A simple bemenu desktop entries launcher.
- Host: GitHub
- URL: https://github.com/tkapias/bemenu-desktop-menu
- Owner: tkapias
- License: gpl-3.0
- Created: 2024-10-12T20:55:52.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-24T17:48:54.000Z (2 months ago)
- Last Synced: 2024-10-25T22:28:40.818Z (2 months ago)
- Topics: bash-script, bemenu, desktop, xdg-menu
- Language: Shell
- Homepage:
- Size: 1.96 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# bemenu-desktop-menu
A script for [bemenu](https://github.com/Cloudef/bemenu) to run your desktop applications using dex.
![preview](assets/preview.png)
The preview uses my wrapper for bemenu: [bemenu-orange-wrapper](https://github.com/tkapias/bemenu-orange-wrapper).
## Dependencies
- [bemenu >= 0.6](https://github.com/Cloudef/bemenu)
- [Nerd Fonts (Symbols Only)](https://github.com/ryanoasis/nerd-fonts/releases/latest)
- [dex](https://github.com/jceb/dex)
- Bash >= 5
- setsid
- GNU awk, sed, xargs### Optional
- [bemenu-orange-wrapper](https://github.com/tkapias/bemenu-orange-wrapper)
## Installation
### Dependencies
- Debian example with [bemenu-orange-wrapper](https://github.com/tkapias/bemenu-orange-wrapper):
1. Follow [bemenu-orange-wrapper instructions](https://github.com/tkapias/bemenu-orange-wrapper?tab=readme-ov-file#installation).
2. Next:
``` bash
# GNU awk, sed, xargs, setsid, dex
sudo apt install gawk sed findutils util-linux dex
```### bemenu-desktop-menu
```bash
git clone --depth 1 https://github.com/tkapias/bemenu-desktop-menu.git bemenu-desktop-menu
cd bemenu-desktop-menu
chmod +x bemenu-desktop-menu.bash
```- The script uses the default locations to find the desktop entries:
- `"$HOME/.local/share/applications"`
- `"/usr/local/share/applications"`
- `"/usr/share/applications"`
If your system has different locations, add/modify them in the `desktop_path` array.- Optional: Symlink to a directory in your user's path:
```bash
ln -s $PWD/bemenu-desktop-menu.bash $HOME/.local/bin/bemenu-desktop-menu
```## Features
- Entries sorted by Main Categories.
- Main Categories icon using Emojis.
- Display entry Name and Generic Name localized if available.
- Display the entry file location in brackets.
- Cache the list and generate only if the count or modification date of entries changed.
- Respect Hidden & NoDisplay features.
- Run the application forked using setsid.
- Run the application using also dex to respect XDG.## Usage
Just launch bemenu-desktop-menu, optionally filter the entries and select one to launch the application.
### Integrations
- Binding exemple for bemenu-desktop-menu in i3wm:
```i3wm
bindsym $mod+d exec --no-startup-id "bemenu-desktop-menu"
```