Restart a Linux server made of a potato laptop after power outages
GitHub RepoImpressions507

Restart a Linux server made of a potato laptop after power outages

@githubprojectsPost Author

Project Description

View on GitHub

Wake My Potato: The Low-Power Server That Refuses to Die

You know the scenario. You’ve got an old laptop gathering dust, so you turn it into a Linux server. It’s perfect for a homelab, a small side project, or a personal Git server. Then the power flickers. Your "server" is now a silent, offline brick until you physically walk over and press the power button. Not exactly reliable.

That’s the exact problem WakeMyPotato solves. It’s a clever, minimal service that ensures your low-power, potato-grade hardware can automatically wake itself up after an unexpected shutdown. No more late-night trips to the basement or frantic unplugging after a storm.

What It Does

In short, WakeMyPotato is a watchdog service for systems that can’t handle a standard watchdog timer. It’s designed for old laptops or tiny machines (think Raspberry Pi) where a power loss means they stay off. The service periodically writes a timestamp to a file. A separate, always-on device (like a router, another Pi, or a cloud VM) checks that timestamp over the network. If the timestamp stops updating, the watchdog knows the "potato" is down and can send a Wake-on-LAN (WoL) magic packet to boot it back up.

It turns your fragile, power-outage-prone setup into something that can recover automatically, mimicking the resilience of a proper server.

Why It’s Cool

The cleverness here is in its simplicity and practicality. It doesn’t try to over-engineer a solution for hardware that lacks out-of-band management. Instead, it uses the network and a separate, stable device to fill that gap. This is homelab ingenuity at its best.

The use case is super specific and relatable. It’s for developers and tinkerers who are repurposing hardware on a budget. You’re not buying a UPS or a server with IPMI; you’re using what you have. WakeMyPotato embraces that constraint and provides an elegant, scriptable fix. It’s the kind of tool that feels like a secret weapon for keeping pet projects alive with zero budget.

How to Try It

The project is on GitHub, and getting started is straightforward. You’ll need two machines: the "potato" (the server you want to protect) and a "watchdog" (a always-on device that will monitor it).

  1. On the Potato: Clone the repo and set up the client script. This script will run as a service, writing its heartbeat to a file.

    git clone https://github.com/pablogila/WakeMyPotato.git
    

    Follow the setup instructions in the README.md to configure the heartbeat service.

  2. On the Watchdog: Set up the monitor script. This could be on a Raspberry Pi, your OpenWrt router, or even a free-tier cloud VM. This script will periodically fetch the heartbeat file (via SSH or HTTP) and send a WoL packet if the potato is unresponsive.

  3. Configure: Ensure Wake-on-LAN is enabled in the BIOS/UEFI of your potato laptop. You’ll need to set up network credentials and IP addresses in the provided configuration files.

The repository has the necessary scripts and clear guidance to wire it all up.

Final Thoughts

WakeMyPotato is a perfect example of a developer solving their own annoying problem and sharing the solution. It’s not a commercial product; it’s a practical script that makes life a bit easier. If you’ve ever used an old laptop as a server, you’ll immediately see the value. It removes a single point of failure in a way that’s both clever and accessible.

It might not be for production-critical workloads, but for personal projects, learning environments, or that low-traffic service you run for friends, it’s a game-changer. It lets you focus on your code, not on whether your server survived the last thunderstorm.

Check out the project, maybe star it, and give your potato a second chance at life.


@githubprojects

Back to Projects
Project ID: f17d7f7f-a863-4fd6-8e46-6c97ef68660eLast updated: December 21, 2025 at 01:05 PM