A lightweight, powerful Windows utility to manage background applications, automate their startup behavior, monitor resource usage, and control a wallpaper-changer daemon — all from a clean, modern UI.
The Control combines process management, profiles, tray-icon control, autostart, drag-and-drop application ordering, and a fully featured wallpaper engine into a single elegant tool.
- Start/stop any application or script
- Detects running processes reliably
- Automatically restarts apps if they crash
- Shows CPU & Memory usage in real time
- Supports executables, Python scripts, and shell commands
A fully custom wallpaper changer with:
- Shuffle, interval, recursive folder scanning
- Pause / Resume / Next wallpaper controls
- Windows wallpaper style support (Fill, Fit, Stretch, Tile, Center, Span)
- Fast communication with Control via command file
- No drift thanks to a monotonic timer
- Mutex-based protection to prevent multiple launches
- Status reporting (Playing / Paused / Stopped)
Create profiles like:
- Work → Start some apps, stop others
- Chill → Launch only selected apps
- Non-destructive: apps not listed in the profile remain untouched
- Switch profiles instantly from the tray menu
- Dark mode via ttkbootstrap
- Drag-and-drop to reorder apps
- Scrollable list for large setups
- Inline wallpaper controls (toggle, next, settings)
- Smooth window placement near the bottom-right corner
- Fade-in animation
- Show / Hide the main window
- Toggle wallpaper play/pause
- Next wallpaper
- Apply profiles
- Enable/disable autostart
- Quit the app entirely
Uses Windows registry to optionally launch The Control at login.
Each app gets its own log file with automatic last-50-lines rotation.
git clone https://github.com/yourusername/the-control.git
cd the-controlpip install -r requirements.txtRequired packages:
psutilttkbootstrapPillowpystray
python control.pyor without command line option
python control.pywThe first launch will show the UI. After that, it runs in the system tray.
| File | Description |
|---|---|
| control.py | Main GUI app. Handles process management, profiles, tray, autostart, logging. |
| wallch.py | Wallpaper-changer daemon controlled by Control. |
| apps.json | User-defined apps to manage (auto-generated). |
| wallch_settings.json | Configuration for the wallpaper engine. |
| profiles.json | Saved user profiles. |
| control.state.json | Remembers ON/OFF state and autostart settings. |
| logs/ | Per-application rotating logs. |
When adding a new app:
| Type | What You Provide |
|---|---|
| Executable | Path to .exe and process name |
| Command | Shell command (e.g., rclone mount ...) |
| Python Script | Script name (e.g., wallch.py) + pythonw auto-launching |
| Custom | Combination of the above |
Accessible through the ⚙ button under the wallpaper engine entry.
Options include:
- Folder to use
- Interval in seconds
- Style
- Shuffle
- Recursive search
- “Once” mode (set one wallpaper and exit)
Python scripts are matched by exact cmdline arguments to avoid PID confusion.
Kills entire process trees to ensure shell-launched apps also shut down cleanly.
All tray actions are marshalled to the Tk main thread.
Previous control.py instances are terminated to prevent duplicates.
- Export/import app profiles
- Grouping apps (Work tools, Games, Media, Background services)
- Icon extraction from .exe files
- Linux/macOS variants
- Global hotkeys
- Plugin system for power users
- Notification popups for auto-restart events
You can add GPL, MIT, or a custom license depending on how you want the project shared.
Created by Lunedor — built with love, Python, and far too many background apps running simultaneously.