xdg-utils

Crates.ioxdg-utils
lib.rsxdg-utils
version0.4.0
sourcesrc
created_at2020-02-02 18:30:28.753984
updated_at2020-11-28 11:57:34.182828
descriptionQuery system for default apps using XDG MIME databases. Rust implementations of some common functions in the freedesktop project `xdg-utils`.
homepage
repositoryhttps://github.com/meli/xdg-utils
max_upload_size
id204267
size52,278
Manos Pitsidianakis (epilys)

documentation

README

xdg-utils

GitHub license Crates.io docs.rs

Query system for default apps using XDG MIME databases.

The xdg-utils library provides dependency-free (except for std) Rust implementations of some common functions in the freedesktop project xdg-utils.

What is implemented?

  • Function query_default_app performs like the xdg-utils function binary_to_desktop_file but returns the command string to be executed instead of the path of the desktop file.
  • Function query_mime_info launches the mimetype or else the file command.

Some of the utils may be implemented by combining these functions with other functions in the Rust standard library.

Name Function Implemented functionalities
xdg-desktop-menu Install desktop menu items no
xdg-desktop-icon Install icons to the desktop no
xdg-icon-resource Install icon resources no
xdg-mime Query information about file type handling and install descriptions for new file types queries only
xdg-open Open a file or URL in the user's preferred application all (combine crate functions with std::process::Command)
xdg-email Send mail using the user's preferred e-mail composer no
xdg-screensaver Control the screensaver no

Specification

https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-latest.html

Reference implementation

https://cgit.freedesktop.org/xdg/xdg-utils/tree/scripts/xdg-utils-common.in

Help / Feature requests/ Bugs

While this library was created for the meli project, it is intended for general use. Thus you can report bugs and/or request features in the crate's repository on github, git.meli.delivery or the meli mailing-list

Commit count: 15

cargo fmt