diff --git a/scripts/update.sh b/scripts/update.sh
index b6c0565e7169edc15b62021ecbb0e5a1b66f1918..365e86c2e154659032e569c5f290d1ebfd3504fe 100755
--- a/scripts/update.sh
+++ b/scripts/update.sh
@@ -1,5 +1,4 @@
 #!/bin/bash
-# shellcheck disable=SC2154
 
 set -e
 
@@ -10,10 +9,14 @@ GLUONDIR="$(pwd)"
 
 for module in $GLUON_MODULES; do
 	echo "--- Updating module '$module' ---"
-	var=$(echo "$module" | tr '[:lower:]/' '[:upper:]_')
-	eval 'repo=${'"${var}"'_REPO}'
-	eval 'branch=${'"${var}"'_BRANCH}'
-	eval 'commit=${'"${var}"'_COMMIT}'
+	var=${module//\//_}
+	_remote_url=${var^^}_REPO
+	_remote_branch=${var^^}_BRANCH
+	_remote_commit=${var^^}_COMMIT
+
+	repo=${!_remote_url}
+	branch=${!_remote_branch}
+	commit=${!_remote_commit}
 
 	mkdir -p "$GLUONDIR/$module"
 	cd "$GLUONDIR/$module"