Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Application Launcher

An OVOS skill that launches and closes applications on the Linux desktop by voice.

NOTE: This skill works only on Linux desktop environments.

Install

pip install ovos-skill-application-launcher

About

The skill scans the standard directories for .desktop files. It reads application names and execution commands from these files.

Scanned folders:

  • /usr/share/applications/
  • /usr/local/share/applications/
  • ~/.local/share/applications/

Examples

  • "Open Volume Control"
  • "Launch Firefox"
  • "Close Firefox"

Multiple instances of the same application

On Wayland systems, window control is not available. The skill closes apps only by ending running processes.

On X systems, the launcher closes windows before ending processes, if wmctrl is on your system.

This gives more granular control. You can manage multiple instances of an application, such as several Firefox windows, individually, even if they share the same PID.

If several processes with different PIDs match an application, the skill closes only the most recent one by default. You can turn on the old behavior, which ends all matching processes instead.

Configuration via settings.json

To customize the behavior of the Application Launcher skill, you can modify the following options in the settings.json file:

Option Type Default Value Description
aliases Dict[str, List[str]] {"kcalc": ["calculator"]} Defines application aliases. Use application names from the .desktop file as keys and a list of speech-friendly names as values.
user_commands Dict[str, str] {} User-defined application commands. Map application names to their corresponding bash commands.
thresh float 0.85 The threshold for string matching. Lower values will allow more lenient matches for application names.
skip_categories List[str] ["Settings", "ConsoleOnly", "Building"] Categories in desktop files that exclude application from being considered.
skip_keywords List[str] [] Keywords in desktop files that exclude application from being considered.
target_categories List[str] [] Categories in desktop files required for application to be considered.
target_keywords List[str] [] Keywords in desktop files required for application to be considered.
blacklist List[str] [] List of applications to ignore during scanning (application names from the .desktop file).
require_icon bool True If set to True, only include applications that have an icon defined in their .desktop file.
require_categories bool True If set to True, only include applications that have at least one category defined in their .desktop file.
terminate_all bool False If True, will terminate all matching processes when closing applications.
shell bool False If True, allows commands to be executed in a shell environment.
disable_window_manager bool False If True, ignores wmctl and exclusively uses running processes for managing apps

eg.

{
  "aliases": {
    "kcalc": ["calculator"]
  },
  "thresh": 0.85,
  "skip_categories": ["Settings", "ConsoleOnly", "Building"],
  "terminate_all": true
}

Category

Productivity

Tags

#desktop #desktop-launch #desktop-launcher

License

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ovos_skill_application_launcher-0.6.1a1.tar.gz (23.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file ovos_skill_application_launcher-0.6.1a1.tar.gz.

File metadata

File hashes

Hashes for ovos_skill_application_launcher-0.6.1a1.tar.gz
Algorithm Hash digest
SHA256 0784066d6e5f32390e61f9a9c31b4d7c82d9b3516bff0c923c417a1a16f2b6ca
MD5 ae5fe40c0fd0ee923132f439fb17df22
BLAKE2b-256 cdac28937ebebe1062544c9ff1873eea0980bf8e8eaafcc41c5e53cdc8ef047c

See more details on using hashes here.

File details

Details for the file ovos_skill_application_launcher-0.6.1a1-py3-none-any.whl.

File metadata

File hashes

Hashes for ovos_skill_application_launcher-0.6.1a1-py3-none-any.whl
Algorithm Hash digest
SHA256 3e092b74564a7a1e0765ddb56a053a6c6725530fa4683d3a5ee3b5e8f7c1dddf
MD5 d440c8932105ed8838a2fd197e462b8b
BLAKE2b-256 6151dc6c51651eb42de4757ce35a389a88f6d0de5bf681999a412cba7486aa11

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.6.1a1 This release

2 files

0.5.14

2 files

0.5.13

2 files

0.5.12

2 files

0.5.11

2 files

0.5.10

2 files

0.5.9

2 files

0.5.8

2 files

0.5.7

2 files

0.5.6

2 files

0.5.5

2 files

0.5.4

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.0

2 files

0.3.4

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.1

2 files

0.1.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page