Skip to main content

A cross-platform tool to manage wake and sleep states of network devices

Project description

Coaxial WakeSleepManager

A powerful cross-platform tool to manage wake and sleep states of network devices.

Features

  • Wake devices remotely using Wake-on-LAN
  • Sleep devices remotely via SSH
  • Check status of devices on your network with color-coded display
  • Manage device list with easy add/edit/remove operations
  • Interactive setup menu for device management
  • Cross-platform compatibility for macOS, Linux, and Windows
  • Automatic OS detection for proper sleep commands
  • Enhanced SSH key support with automatic detection
  • Smart uninstall that preserves user settings

Installation

pip install coaxial-wakesleepmanager

Uninstallation

Standard Uninstall

pip uninstall coaxial-wakesleepmanager

Smart Uninstall (Preserves Settings)

python uninstall.py

The smart uninstall script will:

  • Ask if you want to keep your device configurations
  • Preserve settings if you plan to reinstall later
  • Optionally delete all settings for a clean removal

Quick Start

# Wake up a device
wake mypc

# Put a device to sleep
sleep mypc

# Check status of all devices (with color-coded status)
wake check

# Add a new device
wake add device

# Interactive setup menu
wakesleepmanager -s
# or
wakesleepmanager --setup

Command Reference

Primary Commands

  • wake <subcommand> - Main command for all functionality
  • awake <subcommand> - Alternative to wake, functions identically
  • wsleep <device> - Direct command to put a device to sleep

Wake/Awake Subcommands

  • wake up <device> - Wake up a specific device
  • wake sleep <device> - Put a specific device to sleep
  • wake check - Check status of all devices (color-coded: green=awake, red=sleeping)
  • wake list - List all configured devices
  • wake add device - Add a new device
  • wake config - Show configuration file location and status

Examples

# Wake up a device
wake up mypc
# or
awake up mypc

# Put a device to sleep
wake sleep mypc
# or
awake sleep mypc
# or
wsleep mypc

# Check status of all devices (color-coded)
wake check
# or
awake check

Requirements

  • Python 3.6+
  • Network connectivity to target devices
  • Wake-on-LAN enabled on target devices for wake functionality
  • SSH access to target devices for sleep functionality

Configuration

On first run, the application will create a configuration file in your home directory at ~/.config/wakesleepmanager/devices.json.

Security & Privacy

Data Storage

  • Configuration: Stored locally in ~/.config/wakesleepmanager/devices.json
  • SSH Credentials: Stored locally in the same JSON file
  • SSH Keys: References to existing SSH keys in ~/.ssh/ (keys are not copied)
  • No Cloud Storage: All data remains on your local machine

SSH Key Support

The tool supports both password and SSH key authentication:

  • Automatic Detection: Scans ~/.ssh/ for existing keys matching the device
  • SSH Config Integration: Reads existing ~/.ssh/config entries
  • Manual Configuration: Option to specify custom key paths

Security Considerations

  • Local Storage Only: No data is sent to external servers
  • SSH Key References: Only stores paths to existing keys, never copies them
  • Password Storage: Passwords are stored in plain text in the local config file
  • File Permissions: The config directory is created with appropriate permissions

Safe for Public Distribution

Safe to upload to PyPI and GitHub because:

  • No sensitive data is included in the source code
  • All credentials are stored locally on user's machine
  • SSH keys are referenced, not embedded
  • Configuration files are in .gitignore by default
  • Smart uninstall script preserves user settings

License

MIT License

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

coaxial_wakesleepmanager-0.1.0.tar.gz (14.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

coaxial_wakesleepmanager-0.1.0-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file coaxial_wakesleepmanager-0.1.0.tar.gz.

File metadata

  • Download URL: coaxial_wakesleepmanager-0.1.0.tar.gz
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.5

File hashes

Hashes for coaxial_wakesleepmanager-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f0f41c642b983a5de413b79810dd26da9f2467f93f4e4c2eddc369683c2af667
MD5 aa4649a9c8d1ea09ecb2b77bb7d13eac
BLAKE2b-256 e50655d24b8aedf160a9fe80a9cd055cecda79eca6cf97694c2047b48d003a2a

See more details on using hashes here.

File details

Details for the file coaxial_wakesleepmanager-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for coaxial_wakesleepmanager-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d2a0400cb22f3995bd48b38d1bd34aa9c0e32c31a455a665726571dcb9ec0479
MD5 a4cec55c819473563269f173fc9991a9
BLAKE2b-256 604d492f8d30969014931efb99dda580c4b23b7607081c9a499df9f9c72a2f8b

See more details on using hashes here.

Supported by

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