Skip to content

Talaxin/pwnagotchi-store

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛒 PwnStore - The Unofficial Pwnagotchi App Store

Stop downloading massive ZIP files. PwnStore is a lightweight, CLI-based package manager for Pwnagotchi. It allows you to browse, install, update, and manage plugins surgically—downloading only the files you need.

Version Python License

✨ Features

  • Lightweight Registry: Queries a remote JSON manifest; doesn't bloat your device.
  • Surgical Installs: Downloads single .py files or extracts specific plugins from large repository archives automatically.
  • Smart Config Hints: Scans plugin code upon installation and tells you exactly what lines (self.options) to add to your config.toml.
  • Auto-Config: Automatically appends enabled = true to your config file so the plugin loads on restart.
  • Self-Updating: The tool can update itself and bulk-upgrade your installed plugins.
  • Web Gallery: Includes a retro-themed HTML interface for browsing plugins visually.

🚀 Installation

SSH into your Pwnagotchi and run this single command to install the store:

sudo wget -O /usr/local/bin/pwnstore https://raw.githubusercontent.com/wpa-2/pwnagotchi-store/main/pwnstore.py && sudo chmod +x /usr/local/bin/pwnstore

📖 CLI Usage

1. List & Search

Browse available plugins. The list is auto-categorized (GPS, Social, Display, etc.).

pwnstore list
pwnstore search discord

2. Get Plugin Details

View the author, version, description, and source URL.

pwnstore info <plugin_name>

3. Install a Plugin

Downloads the plugin, enables it, and scans for required settings.

sudo pwnstore install <plugin_name>
  • Smart Hint: If the plugin requires specific settings (like API keys), PwnStore will print them after installation.

4. Manage Updates

Update the PwnStore tool itself, or check all installed plugins for new versions.

# Update the store tool
sudo pwnstore update

# Check for plugin updates
sudo pwnstore upgrade

5. Uninstall a Plugin

Removes the file and disables it in config.toml.

sudo pwnstore uninstall <plugin_name>

🌐 Web Interface

This repository includes a Pwnagotchi-themed Web Gallery (index.html). If you enable GitHub Pages for this repository, you can browse plugins, filter by category, and generate install commands directly from your browser.


⚙️ How it Works

PwnStore does not scan GitHub in real-time (too slow). Instead, it reads a plugins.json registry file hosted in this repository.

  1. The Builder: A script (builder.py) scans known plugin repositories (listed in repos.txt), categorizes them using keyword logic, and generates a sorted plugins.json.
  2. The Client: The pwnstore script on your Pwnagotchi reads this JSON to perform actions.

Adding New Plugins

Want to add a plugin to the store?

  1. Fork this repo.
  2. Add the GitHub URL of the plugin (or the repo zip archive) to repos.txt.
  3. Submit a Pull Request.
  4. Once merged, the registry will auto-update via GitHub Actions.

☕ Support the Development

If this tool saved you time or saved your SD card from clutter, consider buying me a coffee!

Buy me a coffee (wpa2)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 50.1%
  • Python 49.9%