diff --git a/scripts/repo_packages.sh b/scripts/repo_packages.sh
index 541cb52aad1012dc3a0eba190cdf84041350576a..9b06b9a492de15def4dc5ddcdc3fdfef47bce5b7 100755
--- a/scripts/repo_packages.sh
+++ b/scripts/repo_packages.sh
@@ -40,7 +40,8 @@ if [ ! -d "$SCRIPT_DIR" ]; then
         exit 2
 fi
 
-PKG_LIST=$(get_packages_from_file "$CONTRIB_DIR/offline_repo_packages")
+#all packages that do not have an urls field (and thus, should be resolved using apt)
+PKG_LIST=$("$SCRIPT_DIR/read_packages.py" "$CONTRIB_DIR/offline_repo.json" | grep -E "^[^[:space:]]+$" | tr "\n" " ")
 
 PKG_DESTINATION=$DESTINATION/archives
 
@@ -61,7 +62,7 @@ PKG_URLS=$(apt-get install --reinstall --print-uris -qq $PKG_LIST | cut -d"'" -f
 
 echo "package urls:"
 echo "$PKG_URLS"
-PKG_URLS="$PKG_URLS $(get_packages_from_file "$CONTRIB_DIR/offline_repo_packages.manualurls")"
+PKG_URLS="$PKG_URLS $("$SCRIPT_DIR/read_packages.py" "$CONTRIB_DIR/offline_repo.json" | cut -f2- -s -d" " | tr "\n" " ")"
 
 echo "downloading archives. this may take some time..."
 wget -nc -P $PKG_DESTINATION $PKG_URLS