Meliox/PVE-mods

Proxmox modifications

Shell

1,966

244 commits

updated Oct 11, 2026

See the code

README

Proxmox Virtual Environment mods and scripts

A small collection of scripts and mods for Proxmox Virtual Environment (PVE)

If you find this helpful, a small donation is appreciated, Donate.

VersionDescriptionStatus
v2 (current)Debian package (pve-mods) with interactive pve-mods-configure wizardRecommended
v1 (legacy)Standalone bash scripts, manual installArchived — see Legacy section

Version 2 (beta) — Debian package

Compatibility: PVE 9.0+

TBD PICTURE

pve-mods is a Debian package that installs UI patches and an interactive configuration wizard.

Mods

ModDescriptionDependencies
node_infoDisplays sensor readings in the node summary panel: CPU, NVMe/HDD/SSD temperatures (°C/°F), fan speeds, RAM temperatures, GPU stats (Intel/NVIDIA), UPS status, and system/motherboard info.
Can optionally run as background sensor daemon
- General sensors: lm-sensors
- HDD/SSD: Kernal module drivetemp
- UPS: upsc
- GPU: INTEL intel-gpu-tools and/or NVIDIA nvidia-driver-*
nag_screenRemoves the subscription nag screen from the PVE web UI.-

How it works

  1. The pve-mods package installs the mods installation, patch files under /usr/lib/pve-mods/.
  2. The mods main configuration file and mods can be found under /etc/pve-mods/.
  3. Running pve-mods-configure prompts for which modules to enable and configuration of mods.
  4. The wizard applies the selected patches to the PVE system files and restarts pveproxy.
  5. When upgrading pve-mods, the previous patches are reverted before package files are replaced, then the new version's patches are applied.

Install

Commands and mod configuration must be run as root.

curl -sL https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/install.sh | bash

Install respective mod dependencies - see Mod table.

Run pve-mods-configure to install/uninstall and configure mods.

Manual configuration changes

Configuration files are located in /etc/pve-mods/. After any manual edits, restart pveproxy to apply the changes:

systemctl restart pveproxy

Upgrade

pve-mods follows Semantic Versioning, using MAJOR.MINOR.PATCH version numbers. Major releases may include breaking changes. Before upgrading to a new major version, read its release notes and changelog so you can review those changes and any required migration steps. Minor releases add backward-compatible functionality, and patch releases contain backward-compatible fixes.

To upgrade to the latest release, run the installer as root. It downloads and verifies the release package, then installs it over the current version; you do not need to uninstall first.

curl -sL https://github.com/Meliox/PVE-mods/releases/latest/download/install.sh | bash

Uninstall

Commands and mod configuration must be run as root.

apt-get remove pve-mods

And remove dependencies needed by respective mods.

Notes

Multiple node support requires application to be installed on all nodes with identical configuration. (untested)

Reverse proxy / CDN caching

If mod details appear when accessing a node directly but not through a reverse proxy or CDN, it may be serving a cached, unpatched pvemanagerlib.js. Its URL version may not change when the file is patched, so purge the cache for Proxmox JavaScript assets (such as /pve2/js/), disable asset caching for the PVE host, and hard-refresh the browser. After a Proxmox update, reapply the mod and purge the proxy/CDN cache again.


Legacy / v1 (shell scripts)

These scripts are archived. For new installations, use the v2 Debian package above.

Node sensor readings view

Proxmox temp mod

Compatibility:

  • 9.0-9.2. Newer versions may often work
  • Older version (7.x-8.x), use git version from Apr 6th 2025

This bash script installs a modification to the Proxmox Virtual Environment (PVE) web user interface (UI) to display sensor readings in a flexible and readable manner. The following readings are possible:

  • CPU, NVMe/HDD/SSD temperatures (Celsius/Fahrenheit), fan speeds, ram temperatures via lm-sensors. Note: Hdds require kernel module drivetemp module installed.
  • UPS information via Network Monitoring Tool
  • Motherboard information or system information via dmidecode

How it works

The modification involves the following steps:

  1. Backup original files in the home directory/backup
    • /usr/share/pve-manager/js/pvemanagerlib.js
    • /usr/share/perl5/PVE/API2/Nodes.pm
  2. Patch Nodes.pm to enable readings.
  3. Modify pvemanagerlib.js to:
    • Expand the node status view to full browser width.
    • Add reading (depending on & selections).
    • Allow collapsing the panel vertically.
  4. Restart the pveproxy service to apply changes.

The script provides three options:

OptionDescription
installApply the modification.
uninstallRestore original files from backups.
save-sensors-dataSave a local copy of detected sensor data for reference or troubleshooting.

Notes:

  • UPS support in multi-node setups require identical login credentials across nodes. This has not been fully tested.
  • Proxmox upgrades may overwrite modified files; reinstallation of this mod could be required.

Install

Instructions be performed as 'root', as normal users do not have access to the files.

apt-get install lm-sensors
# lm-sensors must be configured, run below to configure your sensors, apply temperature offsets. Refer to lm-sensors manual for more information.
sensors-detect 
wget https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/legacy-scripts/pve-mods-gui-sensors.sh
bash pve-mods-gui-sensors.sh install
# Then clear the browser cache to ensure all changes are visualized.

Additionally, adjustments are available in the first part of the script, where paths can be edited, cpucore offset and display information.

Nag screen deactivation

(Tested compatibility: 7.x - 8.3.5) This bash script installs a modification to the Proxmox Virtual Environment (PVE) web user interface (UI) which deactivates the subscription nag screen.

The modification includes two main steps:

  1. Create backups of the original files in the backup directory relative to the script location.
  2. Modify code.

The script provides three options:

OptionDescription
installInstalls the modification by applying the necessary changes.
uninstallRemoves the modification by restoring the original files from backups.

Install

Instructions be performed as 'root', as normal users do not have access to the files.

wget https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/legacy-scripts/pve-mods-nag-screen.sh
bash pve-mods-nag-screen.sh install

Script to update all containers

(Tested compatibility: 7.x - 8.3.5)

This script updates all running Proxmox containers, skipping specified excluded containers, and generates a separate log file for each container. The script first updates the Proxmox host system, then iterates through each container, updates the container, and reboots it if necessary. Each container's log file is stored in $log_path and the main script log file is named container-upgrade-main.log.

Install

wget https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/legacy-scripts/updateallcontainers.sh

Or use git clone. Can be added to cron for e.g. monthly update: 0 6 1 * * /root/scripts/updateallcontainers.sh

Meliox/PVE-mods

Proxmox modifications

Shell

1,966

244 commits

updated Oct 11, 2026

See the code

README

Proxmox Virtual Environment mods and scripts

A small collection of scripts and mods for Proxmox Virtual Environment (PVE)

If you find this helpful, a small donation is appreciated, Donate.

VersionDescriptionStatus
v2 (current)Debian package (pve-mods) with interactive pve-mods-configure wizardRecommended
v1 (legacy)Standalone bash scripts, manual installArchived — see Legacy section

Version 2 (beta) — Debian package

Compatibility: PVE 9.0+

TBD PICTURE

pve-mods is a Debian package that installs UI patches and an interactive configuration wizard.

Mods

ModDescriptionDependencies
node_infoDisplays sensor readings in the node summary panel: CPU, NVMe/HDD/SSD temperatures (°C/°F), fan speeds, RAM temperatures, GPU stats (Intel/NVIDIA), UPS status, and system/motherboard info.
Can optionally run as background sensor daemon
- General sensors: lm-sensors
- HDD/SSD: Kernal module drivetemp
- UPS: upsc
- GPU: INTEL intel-gpu-tools and/or NVIDIA nvidia-driver-*
nag_screenRemoves the subscription nag screen from the PVE web UI.-

How it works

  1. The pve-mods package installs the mods installation, patch files under /usr/lib/pve-mods/.
  2. The mods main configuration file and mods can be found under /etc/pve-mods/.
  3. Running pve-mods-configure prompts for which modules to enable and configuration of mods.
  4. The wizard applies the selected patches to the PVE system files and restarts pveproxy.
  5. When upgrading pve-mods, the previous patches are reverted before package files are replaced, then the new version's patches are applied.

Install

Commands and mod configuration must be run as root.

curl -sL https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/install.sh | bash

Install respective mod dependencies - see Mod table.

Run pve-mods-configure to install/uninstall and configure mods.

Manual configuration changes

Configuration files are located in /etc/pve-mods/. After any manual edits, restart pveproxy to apply the changes:

systemctl restart pveproxy

Upgrade

pve-mods follows Semantic Versioning, using MAJOR.MINOR.PATCH version numbers. Major releases may include breaking changes. Before upgrading to a new major version, read its release notes and changelog so you can review those changes and any required migration steps. Minor releases add backward-compatible functionality, and patch releases contain backward-compatible fixes.

To upgrade to the latest release, run the installer as root. It downloads and verifies the release package, then installs it over the current version; you do not need to uninstall first.

curl -sL https://github.com/Meliox/PVE-mods/releases/latest/download/install.sh | bash

Uninstall

Commands and mod configuration must be run as root.

apt-get remove pve-mods

And remove dependencies needed by respective mods.

Notes

Multiple node support requires application to be installed on all nodes with identical configuration. (untested)

Reverse proxy / CDN caching

If mod details appear when accessing a node directly but not through a reverse proxy or CDN, it may be serving a cached, unpatched pvemanagerlib.js. Its URL version may not change when the file is patched, so purge the cache for Proxmox JavaScript assets (such as /pve2/js/), disable asset caching for the PVE host, and hard-refresh the browser. After a Proxmox update, reapply the mod and purge the proxy/CDN cache again.


Legacy / v1 (shell scripts)

These scripts are archived. For new installations, use the v2 Debian package above.

Node sensor readings view

Proxmox temp mod

Compatibility:

  • 9.0-9.2. Newer versions may often work
  • Older version (7.x-8.x), use git version from Apr 6th 2025

This bash script installs a modification to the Proxmox Virtual Environment (PVE) web user interface (UI) to display sensor readings in a flexible and readable manner. The following readings are possible:

  • CPU, NVMe/HDD/SSD temperatures (Celsius/Fahrenheit), fan speeds, ram temperatures via lm-sensors. Note: Hdds require kernel module drivetemp module installed.
  • UPS information via Network Monitoring Tool
  • Motherboard information or system information via dmidecode

How it works

The modification involves the following steps:

  1. Backup original files in the home directory/backup
    • /usr/share/pve-manager/js/pvemanagerlib.js
    • /usr/share/perl5/PVE/API2/Nodes.pm
  2. Patch Nodes.pm to enable readings.
  3. Modify pvemanagerlib.js to:
    • Expand the node status view to full browser width.
    • Add reading (depending on & selections).
    • Allow collapsing the panel vertically.
  4. Restart the pveproxy service to apply changes.

The script provides three options:

OptionDescription
installApply the modification.
uninstallRestore original files from backups.
save-sensors-dataSave a local copy of detected sensor data for reference or troubleshooting.

Notes:

  • UPS support in multi-node setups require identical login credentials across nodes. This has not been fully tested.
  • Proxmox upgrades may overwrite modified files; reinstallation of this mod could be required.

Install

Instructions be performed as 'root', as normal users do not have access to the files.

apt-get install lm-sensors
# lm-sensors must be configured, run below to configure your sensors, apply temperature offsets. Refer to lm-sensors manual for more information.
sensors-detect 
wget https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/legacy-scripts/pve-mods-gui-sensors.sh
bash pve-mods-gui-sensors.sh install
# Then clear the browser cache to ensure all changes are visualized.

Additionally, adjustments are available in the first part of the script, where paths can be edited, cpucore offset and display information.

Nag screen deactivation

(Tested compatibility: 7.x - 8.3.5) This bash script installs a modification to the Proxmox Virtual Environment (PVE) web user interface (UI) which deactivates the subscription nag screen.

The modification includes two main steps:

  1. Create backups of the original files in the backup directory relative to the script location.
  2. Modify code.

The script provides three options:

OptionDescription
installInstalls the modification by applying the necessary changes.
uninstallRemoves the modification by restoring the original files from backups.

Install

Instructions be performed as 'root', as normal users do not have access to the files.

wget https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/legacy-scripts/pve-mods-nag-screen.sh
bash pve-mods-nag-screen.sh install

Script to update all containers

(Tested compatibility: 7.x - 8.3.5)

This script updates all running Proxmox containers, skipping specified excluded containers, and generates a separate log file for each container. The script first updates the Proxmox host system, then iterates through each container, updates the container, and reboots it if necessary. Each container's log file is stored in $log_path and the main script log file is named container-upgrade-main.log.

Install

wget https://raw.githubusercontent.com/Meliox/PVE-mods/refs/heads/main/legacy-scripts/updateallcontainers.sh

Or use git clone. Can be added to cron for e.g. monthly update: 0 6 1 * * /root/scripts/updateallcontainers.sh

Significant stargazers

XhmikosR

3,475 followers · starred Jan 2026

Bruno Rocha

4,686 followers · starred Dec 2025

Alexander A.

41 followers · starred Sep 2024

Jason Nader

30 followers · starred Oct 2023