wakelist

command module
v0.0.0-...-3540472 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 2, 2024 License: MIT Imports: 8 Imported by: 0

README

Wakelist

Wakelist is a tui application designed to easily start devices using Wake-on-LAN (WoL). This project is my first foray into Go programming, and is mainly for educational purposes. I discovered Wishlist while searching for inspiration, and Wakelist is hugely inspired by it.

Goal

The primary goal of Wakelist is to provide a user-friendly terminal application that allows users to quickly and easily send Wake-on-LAN packets to start their devices. The interface aims to be intuitive, making it accessible even to users who may not be familiar with the intricacies of WoL.

Motivation

As a newcomer to the Go programming language, I wanted to try and build something that would not only help me learn the language but also result in a useful tool. While exploring potential projects, I came across Wishlist, a TUI application for managing SSH endpoints. Its clean design and practical functionality inspired me to create something similar for Wake-on-LAN. As I'm still learning and wanted to get something working in a short time span I relied on go-wol to do the heavy lifting and sending the magic packets.

Features

  • Device Management: Easily add and manage devices that support Wake-on-LAN.
  • Simple Interface: Navigate through your devices and send WoL packets with minimal effort.

Work in Progress

Wakelist is still a work in progress, and there are several features and improvements planned:

  • Feedback after Selection: Provide clear feedback to the user after a device is selected and a WoL packet is sent.
  • Visual Enhancements: Make the interface more visually appealing, drawing more inspiration from Wishlist's clean and modern look.
  • Improved Configuration Parsing: Enhance the configuration file parsing to support more complex setups and error handling.

How to Use

  1. Clone the Repository:

    git clone https://github.com/yourusername/wakelist.git
    cd wakelist
    
  2. Build the Application:

    go build -o wakelist
    
  3. Run the Application:

    ./wakelist
    
  4. Configuration:

    • The configuration file works similarly to an SSH config file.
    • By default, the app looks for a configuration file in .wol/config in the user's home directory.
    • You can change the default location of the configuration file by setting the WOL_CONFIG_PATH environment variable.
    • Example Configuration File:
      # Sample wakelist configuration
      
      Host my-desktop
        Mac AA:BB:CC:DD:EE:FF
      
      Host media-server
        Mac 11:22:33:44:55:66
      
      Host office-pc
        Mac 77:88:99:AA:BB:CC
      

Contributing

Contributions are welcome! If you have suggestions for new features or improvements, please open an issue or submit a pull request. Feedback and collaboration are greatly appreciated as I continue to develop and refine Wakelist.

License

Wakelist is licensed under the MIT License. See the LICENSE file for more information.


Thank you for checking out Wakelist! If you like this project please consider checking out Wishlist and go-wol.

If you like my work you can also buy me a coffee. Thank you!

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package sshconfig can parse a wol config file into a list of devices.
Package sshconfig can parse a wol config file into a list of devices.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL