Execute programs defined in XDG desktop entries directly from the command line.
Allows for substring pattern based searching.
desk-exec <PROGRAM_NAME_OR_SUBSTRING>
desk-exec --detach <PROGRAM_NAME_OR_SUBSTRING>
You may want to execute a program with extra arguments or behaviour.
To do this, you can create a .desktop file at the default $HOME/.local/share/applications
or a custom directory set in the configuration file.
Entries found in directories specified in the configuration file will take precedence over entries in the user applications folder, which takes precedence over the system applications folder.
# Executes the first match found
desk-exec --first-only <PROGRAM_NAME_OR_SUBSTRING>
Desk-exec provides a Rust API for executing desktop entries.
Documentation can be found here.
A default configuration file is generated at $HOME/.config/desk-exec/desk_exec.toml
.
[search]
# Toggles the searching of the default XDG data directories
xdg_default_dirs = true
# List of custom search directories in order of precedence
dirs = []
Currently, binaries for x86_64 are the only ones provided.
Desk-exec can be installed using your favorite AUR helper with any of the following packages.
paru -S (desk-exec, desk-exec-bin, desk-exec-git)
Binary tar-balls can be found on the releases page.
The dist
folder will contain any extra stuff like shell completions and man page entries.
Desk-exec can also be built from source or installed with cargo from crates.io.
# Binary
cargo install desk-exec-bin
# Library
cargo add desk-exec
If you have any suggestions or problems, please submit an issue. If you would like to contribute code, pull requests are welcome.
This project is licensed under the Unlicense license.