diff -ur a/bin/gufw b/bin/gufw
--- a/bin/gufw	2025-06-07 03:35:14.000000000 -0400
+++ b/bin/gufw	2025-06-17 05:45:44.018989441 -0400
@@ -1,3 +1,6 @@
 #!/bin/bash
+if [ $(loginctl show-session $(loginctl|grep $(whoami) |awk '{print $1}') -p Type) = "Type=wayland" ]; then
+    xhost +si:localuser:root
+fi
 c_user=$(whoami)
 pkexec "$(which gufw-pkexec)" $c_user
diff -ur a/bin/gufw-pkexec b/bin/gufw-pkexec
--- a/bin/gufw-pkexec	2025-06-07 03:35:14.000000000 -0400
+++ b/bin/gufw-pkexec	2025-06-17 05:45:55.930667352 -0400
@@ -1,2 +1,11 @@
 #!/bin/bash
-python3 /usr/share/gufw/gufw/gufw.py $1
+LOCATIONS=`ls -ld /usr/lib*/python*/site-packages/gufw/gufw.py | awk '{print $9}'` # from source
+LOCATIONS=( "${LOCATIONS[@]}" "/usr/share/gufw/gufw/gufw.py" )                    # deb package
+
+for ((i = 0; i < ${#LOCATIONS[@]}; i++))
+do
+    if [[ -e "${LOCATIONS[${i}]}" ]]; then
+        python3 ${LOCATIONS[${i}]} $1
+    fi
+done
+
