Skip to main content

Tool to run and restart commands, so they can be continuously executed. The application can be run from the console or using a tray icon.

Project description

Tray Runner

Tray Runner is a simple application that runs in the system tray and executes periodically the commands configured. This is util when you want to run command line scripts without having a terminal open ow worry to remember to execute them.

The application has been tested on Linux (Ubuntu) and Windows 10, but should run on any modern operating system, as the UI relies on QT.

Main configuration window

Command configuration

Check more screenshots here.

Installation

Python 3.10 or greater is required.

It is recommended to use pipx so you can install Tray Runner and its dependencies without affecting other applications installed with pip:

pipx install tray-runner

Check and upgrade with:

pipx upgrade tray-runner

In a near future, single file binaries will be provided.

Once installed, you can run the application running the command:

tray-runner-gui

Check the options running tray-runner-gui --help. The first time the program is executed, a shortcut in the applications menu and in the auto start directory will be created. Also, you will be asked to configure the application:

First run

Fedora/RHEL based

sudo dnf install -y gnome-shell-extension-appindicator
gnome-extensions enable appindicatorsupport@rgcjonas.gmail.com

Note: the indicator icon will be shown, but the notifications will remain in the notifications list.

Running

From the CLI:

tray-runner-cli --help

From the GUI:

tray-runner-gui --help

TODO

  • Translations (raw Python and QT)
  • One-file executables (and portables) for Linux and Windows

Development

Translations

Update the template:

poetry run pybabel extract -o tray_runner/locale/messages.pot

Generate a new language:

poetry run pybabel init -l de_DE -i tray_runner/locale/messages.pot -d tray_runner/locale

Update the languages with the new translations found:

poetry run pybabel update -i tray_runner/locale/messages.pot -d tray_runner/locale

Compile the translations:

poetry run pybabel compile -d tray_runner/locale

Code quality

Running directly the commands:

poetry run pylint tray_runner
poetry run black tray_runner
poetry run mypy tray_runner
poetry run isort tray_runner

Using pre-commit:

git add --intent-to-add .
poetry run pre-commit run --all-files

Credits

More screenshots

List of commands:

List of commands

General configuration:

General configuration

Commands common configuration:

Commands common configuration

Command configuration:

Command configuration

Command overrides:

Command overrides

Command environment variables:

Command environment variables

Command statistics:

Command statistics

Project details


Download files

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

Source Distribution

tray-runner-0.3.1.tar.gz (30.7 kB view details)

Uploaded Source

Built Distribution

tray_runner-0.3.1-py3-none-any.whl (36.7 kB view details)

Uploaded Python 3

File details

Details for the file tray-runner-0.3.1.tar.gz.

File metadata

  • Download URL: tray-runner-0.3.1.tar.gz
  • Upload date:
  • Size: 30.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.13.0-1023-azure

File hashes

Hashes for tray-runner-0.3.1.tar.gz
Algorithm Hash digest
SHA256 988b282b2be4d9b2b996c0ca7f4efdfa6dc0e327dd5597b399f2179505e244ea
MD5 1667cf1bc4bdf0d711dfa6cba29cb112
BLAKE2b-256 ecdd1af1d114757fdba78a849c046f81a07ed382e77d65716b336fa08000e146

See more details on using hashes here.

File details

Details for the file tray_runner-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: tray_runner-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 36.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.13.0-1023-azure

File hashes

Hashes for tray_runner-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 50bca3addc7b1341fa3b468522ae04fa0ed32b7b4ce17be92bfccb6e66ccac53
MD5 b291ec5dcf1cd7920b9adc33b8c68c7a
BLAKE2b-256 62cdebe7d15da20f3aadd35c61bb7f244c7b3802c29ec8d07d4f8e7d011fafd9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page