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.2a1.tar.gz (24.4 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.2a1.tar.gz.

File metadata

File hashes

Hashes for ovos_skill_application_launcher-0.6.2a1.tar.gz
Algorithm Hash digest
SHA256 7fccfb6aeff2dc3a29b5279c570e5c4b6116dc6c957c64cde1d3f3f6f7151c67
MD5 db1c2ea01333ab2c6cdb134c85ed01b3
BLAKE2b-256 37044733a1a4298938bb212fb4393be7ab1ff79f1b8f08454e25e65038c5f3fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ovos_skill_application_launcher-0.6.2a1-py3-none-any.whl
Algorithm Hash digest
SHA256 b9aa350d7bff725ba9ec728dfadcf7b2e6052391d8d2bb2f9fd7278df98e6998
MD5 749b31742b8c63d5e3f01b52d77d0f99
BLAKE2b-256 0febe4ffb5bd02baebe2207520160bf76f8ea1dd8e2ab31edc1bcb414e679d25

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.6.2a1 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