default

System for choosing default applications, programs, and utilities


TODO: generate executables for fast exec

Use Cases

Like update-alternatives, but local to user and more flexible. Requires a database of applications and their defaults at "${XDG_CONFIG_HOME:-$HOME/.config}/chooses/defaults"

  1. Launch with file

Control which applications are selected when opening a file. This works irrespective of the desktop environment. xdg-open falls flat because it doesn't work with directories. Furthermore, different applications can be configured to work in a different context (X, Terminal emulator, Linux console).

Since these are just shell scripts, arbitrary arguments should be supported, like --column and --row for example, if using a text editor.

  1. Launch without file

The current 'Browser' or 'Image Viewer' can be launched. Again, this is intended to work across distributions and user interfaces.

See more info in details.md

Roadmap

Application / Category Attributions

Installation

sh cargo install exa