Three bugs against the PBS encryption flow: 1. Create-scheduled-job with encryption failed with "Recovery setup failed: no PBS keyfile present" whenever the operator picked "Generate a new keyfile" but had no keyfile installed yet. The frontend called /pbs-recovery/setup before creating the job, but the keyfile was only materialised later during job creation. The endpoint now generates the keyfile atomically if missing before building the escrow blob — same prompt-first order the CLI wizard applies. Existing keyfiles are still trusted and never rotated. 2. Importing a valid PBS keyfile via the Web dialog returned a generic "did not recognise this file as a valid PBS keyfile" that hid the real reason (kdf mismatch, missing passphrase, corrupt JSON, ...). The endpoint now attaches the stderr of `proxmox-backup-client key info` as `tool_output` and the frontend renders it verbatim inside the red banner. Also strips a leading UTF-8 BOM before validating so an editor-inserted BOM stops being silently classified as "invalid keyfile". 3. Downloading an encrypted PBS snapshot failed with "missing key — manifest was created with key XX:XX:..." even when the correct keyfile was installed at /usr/local/share/proxmenux/pbs-key.conf, because the restore worker invoked `proxmox-backup-client restore` without `--keyfile`. The flag is now passed whenever a local keyfile exists (PBS ignores it for unencrypted archives). On a fingerprint mismatch the error now appends the installed key's fingerprint so it can be compared side-by-side with the manifest's expected value — same fingerprint also exposed via /pbs-recovery/status for the UI. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
ProxMenux is a management tool for Proxmox VE that simplifies system administration through an interactive menu, allowing you to execute commands and scripts with ease.
📌 Installation
To install ProxMenux, simply run the following command in your Proxmox server terminal:
bash -c "$(wget -qLO - https://raw.githubusercontent.com/MacRimi/ProxMenux/main/install_proxmenux.sh)"
⚠️ Be careful when copying scripts from the internet. Always remember to check the source!
📄 You can review the source code before execution.
🛡️ All executable links follow our Code of Conduct.
📌 How to Use
Once installed, launch ProxMenux by running:
menu
Then, follow the on-screen options to manage your Proxmox server efficiently.
🖥️ ProxMenux Monitor
ProxMenux Monitor is an integrated web dashboard that provides real-time visibility into your Proxmox infrastructure — accessible from any browser on your network, without needing a terminal.
What it offers:
- Real-time monitoring of CPU, RAM, disk usage and network traffic
- Overview of running VMs and LXC containers with status indicators
- Login authentication to protect access
- Two-Factor Authentication (2FA) with TOTP support
- Reverse proxy support (Nginx / Traefik)
- Designed to work across desktop and mobile devices
Access:
Once installed, the dashboard is available at:
http://<your-proxmox-ip>:8008
The Monitor is installed automatically as part of the standard ProxMenux installation and runs as a systemd service (proxmenux-monitor.service) that starts automatically on boot.
Useful commands:
# Check service status
systemctl status proxmenux-monitor
# View logs
journalctl -u proxmenux-monitor -n 50
# Restart the service
systemctl restart proxmenux-monitor
🧪 Beta Program
Want to try the latest features before the official release and help shape the final version?
The ProxMenux Beta Program gives early access to new functionality — including the newest builds of ProxMenux Monitor — directly from the develop branch. Beta builds may contain bugs or incomplete features. Your feedback is what helps fix them before the stable release.
Install the beta version:
bash -c "$(wget -qLO - https://raw.githubusercontent.com/MacRimi/ProxMenux/develop/install_proxmenux_beta.sh)"
What to expect:
- You'll get new features and Monitor builds before anyone else
- Some things may not work perfectly — that's expected and normal
- When a stable release is published, ProxMenux will notify you on the next
menulaunch and offer to switch automatically
How to report issues:
Open a GitHub Issue and include:
- What you did and what you expected to happen
- Any error messages shown on screen
- Logs from the Monitor if relevant:
journalctl -u proxmenux-monitor -n 50
💙 Thank you for being part of the beta program. Your help makes ProxMenux better for everyone.
🔧 Dependencies
The following Debian packages are installed automatically during setup:
| Package | Purpose |
|---|---|
dialog |
Interactive terminal menus |
curl |
Downloads and connectivity checks |
jq |
JSON processing |
git |
Repository cloning and updates |
python3 + python3-pip |
ProxMenux Monitor (Flask web dashboard) |
UI translations ship as pre-built JSON files per language (English, Spanish, French, German, Italian, Portuguese). There is no runtime translation dependency.
🤝 Contributing
ProxMenux is an open, collaborative project — contributions of every shape are very welcome, no matter your background. Every PR, bug report, idea, translation or kind word helps move the project forward.
📖 Before sending code, please read the Contributing Guide. It covers the project structure, the UI design policy (the two-phase
dialog/whiptailflow), message helpers, translation policy and submission conventions — what reviewers will look for in your PR.
Ways to help:
- 💻 Code — fix a bug, polish a script, add a feature. Read the Contributing Guide first, then open a pull request.
- 🐛 Bug reports — found something broken? Open an issue with steps to reproduce, and the Monitor logs if relevant (
journalctl -u proxmenux-monitor -n 50). - 💡 Ideas & feedback — share suggestions in GitHub Discussions. Every idea is welcome.
- 🌍 Translations — the documentation site already supports English and Spanish; help expand it to more languages following the translation guide (one page per PR).
- 🧪 Beta testing — run the beta build and let us know what you find.
- ⭐ Spread the word — a GitHub star or a mention in your homelab community helps others discover the project.
Before contributing, please take a moment to read our Code of Conduct.
Contributors
Thanks to everyone who has helped make ProxMenux what it is today.
Made with contrib.rocks.
⭐ Support the Project
If ProxMenux is useful to you, the simplest way to support it is a ⭐ on GitHub — it really helps others discover the project.
If you want to go a step further, a coffee on Ko-fi keeps development going:
