givetray
givetray runs terminal commands from the Linux system tray using named profiles.
Each profile can run one command, show live logs, and manage desktop entries.
![]()
Dependencies (Linux)
This app uses GTK for windows and AppIndicator for tray integration.
Debian/Ubuntu:
Arch/Manjaro:
Install and Run
From source with Cargo:
From crates.io (after publishing):
Build manually:
On first run, givetray creates ~/.config/givetray/configs/<profile>.toml.
Then open Configuration from the tray menu and set your command/script.
CLI Usage
-c/--config PROFILE is required for app mode and desktop-file mode.
Examples:
Desktop Entries
- Desktop filename format:
givetray_<profile>.desktop - Applications location:
~/.local/share/applications - Autostart location:
~/.config/autostart desktop-filewrites to Applications by default--autostartswitches default target to autostart- Configuration toggles can create/remove entries in both locations
GUI Features
Tray Menu
Start/Stop: run or stop the configured commandLogs: open live log windowConfiguration: edit profile command and togglesAbout: show app info and linksExit: stop current process and quit this instance
Logs Window
- Live stdout/stderr streaming
- Rolling in-memory buffer with line count
Copy AllandClearactions- Optional file logging per profile
Configuration Window
- Command/script editor for the active profile
- Run command on launch toggle
- Write logs to file toggle
- Applications entry toggle
- Session autostart toggle
- Saved/unsaved status with close confirmation
About Window
- App icon, version, author, and license details
- GitHub link and Buy Me a Coffee link
Sudo Behavior
If the configured command starts with sudo, givetray prompts for password on each Start.
The password is passed to sudo via stdin (sudo -S) and is not stored in config.
Contributing
Contributions are welcome.
- Open an issue first for significant changes so scope and approach can be aligned.
- Keep pull requests focused and include clear reproduction or verification notes.
By submitting a contribution, you agree that your work is licensed under
MIT OR Apache-2.0.
License
Licensed under either of:
- MIT license (
LICENSE-MIT) - Apache License, Version 2.0 (
LICENSE-APACHE)
at your option.
Support
If givetray helps your workflow, you can support development: