diff --git a/debian/rules b/debian/rules
index 3103e35b07195d5edc8fd0d26f06e9f99005d348..402da7a7612a9ea6b01611a7457e00f93759016c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -55,6 +55,14 @@ endif
 
 override_dh_auto_install:
 	DESTDIR=$(CURDIR)/debian/tmp ninja -C builddir install
+	for x in debian/tmp/usr/libexec/installed-tests/steam-runtime-tools-0/*; do \
+		if [ -f "$$x" ] \
+		&& cmp -s "$$x" \
+			debian/tmp/usr/libexec/steam-runtime-tools-0/$(DEB_HOST_MULTIARCH)-true; \
+		then \
+			ln -fns ../../steam-runtime-tools-0/$(DEB_HOST_MULTIARCH)-true "$$x"; \
+		fi; \
+	done
 
 override_dh_missing:
 	dh_missing --fail-missing
diff --git a/helpers/check-vulkan.cpp b/helpers/check-vulkan.cpp
index 7282b00b62a2fa3e2a8ddd5d50092c1f0ed87a17..fa515e6853953bd9074bfa74c5ef3dad9f1ab71b 100644
--- a/helpers/check-vulkan.cpp
+++ b/helpers/check-vulkan.cpp
@@ -474,13 +474,13 @@ private:
               shadersPath = argv0;
               size_t lastSlash = shadersPath.rfind('/');
               if (lastSlash != std::string::npos)
-                {
-                  shadersPath.resize(lastSlash + 1);
-                }
+                shadersPath.resize(lastSlash);
+
+              shadersPath += "/shaders";
           }
 
-        auto vertShaderCode = readFile(shadersPath + "vert.spv");
-        auto fragShaderCode = readFile(shadersPath + "frag.spv");
+        auto vertShaderCode = readFile(shadersPath + "/vert.spv");
+        auto fragShaderCode = readFile(shadersPath + "/frag.spv");
 
         VkShaderModule vertShaderModule = createShaderModule(vertShaderCode);
         VkShaderModule fragShaderModule = createShaderModule(fragShaderCode);
diff --git a/steam-runtime-tools/graphics.c b/steam-runtime-tools/graphics.c
index e737424d4010f914a5a1280edcfef88f4a39a089..558c53e38a4ea41914ad8ff2b6ab556854cc33eb 100644
--- a/steam-runtime-tools/graphics.c
+++ b/steam-runtime-tools/graphics.c
@@ -567,15 +567,10 @@ _argv_for_check_vulkan (const char *helpers_path,
       g_ptr_array_add (argv, g_strdup ("10"));
     }
 
-  if (helpers_path != NULL)
-    {
-      g_ptr_array_add (argv, g_strdup_printf ("%s/%s-check-vulkan", helpers_path, multiarch_tuple));
-    }
-  else
-    {
-      g_ptr_array_add (argv, g_strdup_printf ("%s-check-vulkan", multiarch_tuple));
-    }
+  if (helpers_path == NULL)
+    helpers_path = _srt_get_helpers_path ();
 
+  g_ptr_array_add (argv, g_strdup_printf ("%s/%s-check-vulkan", helpers_path, multiarch_tuple));
   g_ptr_array_add (argv, NULL);
 
   return argv;