Unify gsu_dir handling.
[gsu.git] / gui
diff --git a/gui b/gui
index eb9f29f..72717a1 100644 (file)
--- a/gui
+++ b/gui
@@ -1,8 +1,9 @@
 #!/bin/bash
 
-if [[ $(type -t gsu_is_a_number) != "function" ]]; then
-       GSU_DIR=${GSU_DIR:=${HOME:-}/.gsu}
-       . $GSU_DIR/common || exit 1
+if [[ "$(type -t _gsu_setup)" != "function" ]]; then
+       gsu_dir=${gsu_dir:-${BASH_SOURCE[0]%/*}}
+       . $gsu_dir/common || exit 1
+       _gsu_setup
 fi
 
 export GSU_NODE_NAME_PATTERN='[a-zA-Z_]'
@@ -200,7 +201,6 @@ gsu_gui()
 {
        local tree="$1" subtree
 
-       _gsu_setup
        type -t dialog &> /dev/null
        if (($? != 0)); then
                gsu_msg "dialog executable not found"