From 2f05163369a166a164a2a015f8d2390d24c40115 Mon Sep 17 00:00:00 2001 From: rmm Date: Fri, 26 Apr 2024 09:13:47 +0200 Subject: [PATCH] Multiple changes: - Rename pve-mod-gui-temp.sh to pve-mod-gui-sensors.sh - Update readme and screenshot --- pve-mod-all.sh | 2 +- pve-mod-gui-temp.sh => pve-mod-gui-sensors.sh | 22 +++++++++--------- pve-mod-sensors.png | Bin 0 -> 26808 bytes pve-mod-temp.png | Bin 30452 -> 0 bytes readme.md | 22 +++++++++--------- 5 files changed, 23 insertions(+), 23 deletions(-) rename pve-mod-gui-temp.sh => pve-mod-gui-sensors.sh (99%) create mode 100644 pve-mod-sensors.png delete mode 100644 pve-mod-temp.png diff --git a/pve-mod-all.sh b/pve-mod-all.sh index 914b478..9229cca 100644 --- a/pve-mod-all.sh +++ b/pve-mod-all.sh @@ -3,7 +3,7 @@ # This script's working directory SCRIPT_CWD="$(dirname "$(readlink -f "$0")")" -MODS="pve-mod-gui-temp.sh pve-mod-nag-screen.sh" +MODS="pve-mod-gui-sensors.sh pve-mod-nag-screen.sh" ACTION=${1:-install} for m in $MODS; do diff --git a/pve-mod-gui-temp.sh b/pve-mod-gui-sensors.sh similarity index 99% rename from pve-mod-gui-temp.sh rename to pve-mod-gui-sensors.sh index 4597c53..81e7eb9 100644 --- a/pve-mod-gui-temp.sh +++ b/pve-mod-gui-sensors.sh @@ -7,6 +7,7 @@ # Display configuration for HDD, NVME, CPU # Set to 0 to disable line breaks +# Note: use these settings only if the displayed layout is broken CPU_ITEMS_PER_ROW=0; NVME_ITEMS_PER_ROW=0; HDD_ITEMS_PER_ROW=0; @@ -165,7 +166,7 @@ function configure { else warn "No fan speeds found." enableFanSpeed=false - fi + fi echo # add a new line } @@ -350,12 +351,12 @@ function install_mod { if [ $enableNvmeTemp = true -o $enableHddTemp = true ]; then sed -i "/^Ext.define('PVE.node.StatusView',/ { - :a; + :a; /items:/!{N;ba;} :b; /'thermal.*},/!{N;bb;} - a\ - \\ + a\ + \\ {\n\ xtype: 'box',\n\ colspan: 2,\n\ @@ -387,7 +388,6 @@ function install_mod { textField: 'sensorsOutput',\n\ renderer: function(value) {\n\ const objValue = JSON.parse(value);\n\ -\n\ let speeds = [];\n\ \n\ // Loop through the parent keys\n\ @@ -412,15 +412,15 @@ function install_mod { \n\ return '
' + (speeds.length > 0 ? speeds.join(' | ') : 'N/A') + '
';\n\ }\n\ - }, - }" "$pvemanagerlibjs" + }, + }" "$pvemanagerlibjs" fi # Add an empty line to separate modified items as a visual group # NOTE: Check for the presence of items in the reverse order of display local lastItemId="" if [ $enableHddTemp = true ]; then - lastItemId="thermalHdd" + lastItemId="thermalHdd" elif [ $enableNvmeTemp = true ]; then lastItemId="thermalNvme" elif [ $enableFanSpeed = true ]; then @@ -428,7 +428,7 @@ function install_mod { else lastItemId="thermalCpu" fi - + if [ -n "$lastItemId" ]; then sed -i "/^Ext.define('PVE.node.StatusView',/ { :a; @@ -442,7 +442,7 @@ function install_mod { }, }" "$pvemanagerlibjs" fi - + # Move the node summary box into its own container sed -i "/^\s*nodeStatus: nodeStatus,/ { :a @@ -464,7 +464,7 @@ function install_mod { ]\n\ }, }" "$pvemanagerlibjs" - + # Deactivate the original box instance sed -i "/^\s*nodeStatus: nodeStatus,/ { :a diff --git a/pve-mod-sensors.png b/pve-mod-sensors.png new file mode 100644 index 0000000000000000000000000000000000000000..e3f068fd436ba7a5506c7b570f64b8017ba6531c GIT binary patch literal 26808 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 E01(R2Q~&?~ literal 0 HcmV?d00001 diff --git a/pve-mod-temp.png b/pve-mod-temp.png deleted file mode 100644 index caaee2c09450b0383b37176380b7621481384ab1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30452 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 diff --git a/readme.md b/readme.md index 94ce2ac..03a64e5 100644 --- a/readme.md +++ b/readme.md @@ -1,18 +1,18 @@ -# Proxmox mods and scripts -A small collection of script and mods for Proxmox +# 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](https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=K8XPMSEBERH3W). -## Node temperature view -(Tested compatibility: 7.x, 8.0.x, 8.1.x, 8.2.x) +## Node sensor readings view +(Tested compatibility: 7.x - 8.2) -This bash script installs a modification to the Proxmox Virtual Environment (PVE) web user interface (UI) to display temperature information in a flexible manner for CPU, NVME and HDDs/SSDs. Fan speeds are also displayed, if available. +This bash script installs a modification to the Proxmox Virtual Environment (PVE) web user interface (UI) to display sensor readings in a flexible manner. Supported are CPU, NVMe/HDD/SSD temperatures and fan speeds. The modification includes three main steps: -1. Create backups of the original files located at `/usr/share/pve-manager/js/pvemanagerlib.js` and `/usr/share/perl5/PVE/API2/Nodes.pm` in the `/root/backup` directory. -2. Add a new line to the `Nodes.pm` file that reads the thermal state information of the host using the `sensors` command. -3. Modify the `pvemanagerlib.js` file to expand the space in the StatusView and add a new item to the items array that displays the temperature information in Celsius for CPU, NVME and HDDs/SSDs. +1. Create backups of the original files located at `/usr/share/pve-manager/js/pvemanagerlib.js` and `/usr/share/perl5/PVE/API2/Nodes.pm` in the `backup` directory relative to the script location. +2. Add a new line to the `Nodes.pm` file that enables host system sensor readings using the `sensors` command. +3. Modify the `pvemanagerlib.js` file to expand the space in the host summary view and add new items that displays the temperature information in Celsius for CPU, NVME and HDDs/SSDs, and fan speeds, if available. The script provides two options: `install` and `uninstall`. The `install` option installs the modification, while the `uninstall` option removes it by copying the backup files to their original location. The script also restarts the `pveproxy` service to apply the changes. @@ -21,16 +21,16 @@ For HDDs/SSDs readings to work, the kernal module drivetemp must be installed. ### Install ``` apt-get install lm-sensors -wget https://raw.githubusercontent.com/Meliox/PVE-mods/main/pve-mod-gui-temp.sh +wget https://raw.githubusercontent.com/Meliox/PVE-mods/main/pve-mod-gui-sensors.sh ``` Or use git clone. -![Promxox temp mod](https://github.com/Meliox/PVE-mods/blob/main/pve-mod-temp.png?raw=true) +![Promxox temp mod](https://github.com/Meliox/PVE-mods/blob/main/pve-mod-sensors.png?raw=true) 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.0.x, 8.1.x, 8.2.x) +(Tested compatibility: 7.x - 8.2) This bash script installs a modification to the Proxmox Virtual Environment (PVE) web user interface (UI) which deactivates the subscription nag screen. The script provides two options: `install` and `uninstall`. The `install` option installs the modification, while the `uninstall` option removes it by copying the backup files to their original location.