diff --git a/Software/build_libtslitex.sh b/Software/build_libtslitex.sh
index 5a43d72b..71e8267c 100755
--- a/Software/build_libtslitex.sh
+++ b/Software/build_libtslitex.sh
@@ -1,5 +1,9 @@
-git clone https://github.com/EEVengers/libtslitex.git
-cd libtslitex
+if cd libtslitex; then 
+	git pull
+else 
+    git clone https://github.com/EEVengers/libtslitex.git
+	cd libtslitex
+fi
 mkdir build
 cd build
 cmake ..
diff --git a/Software/build_ngscopeclient.sh b/Software/build_ngscopeclient.sh
index 466e055a..eddd5928 100755
--- a/Software/build_ngscopeclient.sh
+++ b/Software/build_ngscopeclient.sh
@@ -3,16 +3,29 @@ sudo apt install build-essential git cmake pkgconf libgtkmm-3.0-dev libcairomm-1
 sudo apt-get install libvulkan-dev glslang-dev glslang-tools spirv-tools glslc
 #On Ubuntu 22.10 and earlier, you will need to use the Vulkan SDK.
 #TODO: check to see if above line worked, else install SDK
-git clone https://github.com/anthonix/ffts.git 
-cd ffts 
+
+if cd ffts; then 
+	git pull
+else 
+    git clone https://github.com/anthonix/ffts.git 
+	cd ffts 
+fi
+
 mkdir build 
 cd build 
 cmake .. -DENABLE_SHARED=ON 
 make -j4 
 sudo make install 
 cd ../..
-git clone --recursive https://github.com/ngscopeclient/scopehal-apps.git 
-cd scopehal-apps 
+
+if cd scopehal-apps; then 
+	git pull
+    git submodule update --recursive
+else 
+    git clone --recursive https://github.com/ngscopeclient/scopehal-apps.git 
+	cd scopehal-apps 
+fi
+
 mkdir build 
 cd build 
 cmake .. -DCMAKE_BUILD_TYPE=Release 
diff --git a/Software/build_ts_net.sh b/Software/build_ts_net.sh
index 727f8d45..e83d97a6 100755
--- a/Software/build_ts_net.sh
+++ b/Software/build_ts_net.sh
@@ -1,6 +1,13 @@
 sudo apt-get install -y dotnet-sdk-8.0
-git clone https://github.com/EEVengers/TS.NET.git
-cd TS.NET/build-scripts/
+
+if cd TS.NET; then 
+	git pull
+else 
+    git clone https://github.com/EEVengers/TS.NET.git
+	cd TS.NET
+fi
+
+cd build-scripts/
 ./TS.NET.Engine\ \(linux-x64\).bash
 cd ../..
 cp libtslitex/build/artifacts/libtslitex/libtslitex.so TS.NET/builds/linux-x64/TS.NET.Engine/0.1.0/libtslitex.so
diff --git a/Software/install_ts_litex_driver.sh b/Software/install_ts_litex_driver.sh
index b3262230..1660015f 100755
--- a/Software/install_ts_litex_driver.sh
+++ b/Software/install_ts_litex_driver.sh
@@ -1,6 +1,11 @@
-git clone -b dev https://github.com/EEVengers/ts_litex_driver_linux.git
-cd ts_litex_driver_linux/kernel
+if cd ts_litex_driver_linux; then 
+	git pull
+else 
+	git clone -b dev https://github.com/EEVengers/ts_litex_driver_linux.git
+	cd ts_litex_driver_linux
+fi
+cd kernel
 make
 sudo ./init.sh
 # Hacky, will remove when I sort out udev rules
-sudo chmod 777 /dev/litepcie0
+sudo chmod 777 /dev/thunderscope*