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.1a2.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.1a2.tar.gz.

File metadata

File hashes

Hashes for ovos_skill_application_launcher-0.6.1a2.tar.gz
Algorithm Hash digest
SHA256 3d68d2bdf209de3bef0caec8e0002f7457c0ddc9b3ddf7f3a9adbe3fe4f1f37d
MD5 79beb2cabae5a30bd8d0df7288e21c9e
BLAKE2b-256 5cbe99112b5625e960902842dc3d10c2a98c1eff575bfa66be809ec179343ef4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ovos_skill_application_launcher-0.6.1a2-py3-none-any.whl
Algorithm Hash digest
SHA256 f68a96a801e31925207918cb20fccff27d94fbd2855979cc6a2444e41af977ae
MD5 648b4bbbe555725ff01bb43b22483afc
BLAKE2b-256 6d72d6c9c8dea63dbd1dcace2a5ba90ff505917f1de12d1242ebd5b98240a312

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.6.1a2 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