diff --git a/i3blocks/cpu_gpu_monitor.sh b/i3blocks/cpu_gpu_monitor.sh
index b543e08..9cc1c5c 100755
--- a/i3blocks/cpu_gpu_monitor.sh
+++ b/i3blocks/cpu_gpu_monitor.sh
@@ -1,40 +1,15 @@
#!/bin/bash
-# CPU Temperature
-cpu_temp=$(sensors | awk '/^Tctl:/ {print $2}' | tr -d '+°C')
-if [ -z "$cpu_temp" ]; then
- cpu_temp="N/A"
-fi
+# CPU Metrics
+cpu_metrics=$(bash /home/kuchy/i3-configuration/i3blocks/cpu_monitor.sh)
+cpu_temp=$(echo "$cpu_metrics" | awk -F', ' '{print $1}' | awk -F': ' '{print $2}')
+cpu_load=$(echo "$cpu_metrics" | awk -F', ' '{print $2}' | awk -F': ' '{print $2}')
+cpu_color=$(echo "$cpu_metrics" | awk -F', ' '{print $3}' | awk -F': ' '{print $2}')
-# CPU Load (1-minute average)
-cpu_load=$(awk '{print $1}' /proc/loadavg)
-if [ -z "$cpu_load" ]; then
- cpu_load="N/A"
-fi
-
-# GPU Temperature
-gpu_temp=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits 2>/dev/null)
-if [ -z "$gpu_temp" ]; then
- gpu_temp="N/A"
-fi
-
-# GPU Load
-gpu_load=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits 2>/dev/null)
-if [ -z "$gpu_load" ]; then
- gpu_load="N/A"
-fi
-
-# Colors for CPU Load
-cpu_color="#FFFFFF" # Default color
-if [[ "$cpu_load" != "N/A" ]]; then
- if (( $(echo "$cpu_load < 1.0" | bc -l) )); then
- cpu_color="#50FA7B" # Green
- elif (( $(echo "$cpu_load < 2.0" | bc -l) )); then
- cpu_color="#F1FA8C" # Yellow
- else
- cpu_color="#FF5555" # Red
- fi
-fi
+# GPU Metrics
+gpu_metrics=$(bash /home/kuchy/i3-configuration/i3blocks/gpu_monitor.sh)
+gpu_temp=$(echo "$gpu_metrics" | awk -F', ' '{print $1}' | awk -F': ' '{print $2}')
+gpu_load=$(echo "$gpu_metrics" | awk -F', ' '{print $2}' | awk -F': ' '{print $2}')
# Colors for GPU Load
gpu_color="#FFFFFF" # Default color
@@ -49,7 +24,7 @@ if [[ "$gpu_load" != "N/A" ]]; then
fi
# Output
-echo -e " CPU: ${cpu_temp}°C, Load: ${cpu_load} | GPU: ${gpu_temp}°C, Load: ${gpu_load}%"
+echo -e " CPU: ${cpu_temp}, Load: ${cpu_load} | GPU: ${gpu_temp}, Load: ${gpu_load}"
echo
echo "#FFFFFF" # Default color for fallback (ignored if markup is enabled)
diff --git a/i3blocks/cpu_monitor.sh b/i3blocks/cpu_monitor.sh
new file mode 100755
index 0000000..0232dfa
--- /dev/null
+++ b/i3blocks/cpu_monitor.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+# CPU Temperature
+cpu_temp=$(sensors | awk '/^Tctl:/ {print $2}' | tr -d '+°C')
+if [ -z "$cpu_temp" ]; then
+ cpu_temp=$(sensors | awk '/^Package id 0:/ {print $3}' | tr -d '+°C')
+fi
+if [ -z "$cpu_temp" ]; then
+ cpu_temp="N/A"
+fi
+
+# CPU Load (1-minute average)
+cpu_load=$(awk '{print $1}' /proc/loadavg)
+if [ -z "$cpu_load" ]; then
+ cpu_load="N/A"
+fi
+
+# Colors for CPU Load
+cpu_color="#FFFFFF" # Default color
+if [[ "$cpu_load" != "N/A" ]]; then
+ # Add logic to change color based on load
+ :
+fi
+
+echo "CPU Temp: $cpu_temp°C, CPU Load: $cpu_load, Color: $cpu_color"
\ No newline at end of file
diff --git a/i3blocks/gpu_monitor.sh b/i3blocks/gpu_monitor.sh
new file mode 100755
index 0000000..f72c936
--- /dev/null
+++ b/i3blocks/gpu_monitor.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# Function to get NVIDIA GPU metrics
+get_nvidia_metrics() {
+ gpu_temp=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits 2>/dev/null)
+ if [ -z "$gpu_temp" ]; then
+ gpu_temp="N/A"
+ fi
+
+ gpu_load=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits 2>/dev/null)
+ if [ -z "$gpu_load" ]; then
+ gpu_load="N/A"
+ fi
+
+ echo "GPU Temp: $gpu_temp°C, GPU Load: $gpu_load%"
+}
+
+# Function to get Intel GPU metrics
+get_intel_metrics() {
+ gpu_load=$(cat /sys/class/drm/card0/device/gpu_busy_percent 2>/dev/null)
+ if [ -z "$gpu_load" ]; then
+ gpu_load="N/A"
+ fi
+
+ gpu_temp=$(sensors | awk '/^temp1:/ {print $2; exit}' | tr -d '+°C')
+ if [ -z "$gpu_temp" ]; then
+ gpu_temp="N/A"
+ fi
+
+ echo "GPU Temp: $gpu_temp°C, GPU Load: $gpu_load%"
+}
+
+# Detect GPU type and get metrics
+if lspci | grep -i nvidia > /dev/null; then
+ get_nvidia_metrics
+elif lspci | grep -i vga | grep -i intel > /dev/null; then
+ get_intel_metrics
+else
+ echo "No supported GPU found."
+fi
\ No newline at end of file
diff --git a/install.sh b/install.sh
index 7e918f6..1ab80be 100755
--- a/install.sh
+++ b/install.sh
@@ -1,5 +1,6 @@
#!/bin/sh
-sudo pacman -S --needed ttf-dejavu noto-fonts ttf-font-awesome bc
+yes | sudo pacman -S --needed ttf-dejavu noto-fonts ttf-font-awesome bc intel-gpu-tools jq
+sudo setcap cap_perfmon+ep /usr/bin/intel_gpu_top
cp -r i3blocks ~/.config/
cp -r i3 ~/.config/
i3-msg reload