From 3c945946e766cf140cc41b7f936c2ba99c255907 Mon Sep 17 00:00:00 2001 From: HannahPadd Date: Fri, 13 Mar 2026 13:51:00 +0100 Subject: [PATCH] Update unix socket directory to be /tmp/ instead of user home. --- .../core/src/main/java/io/eiren/util/OperatingSystem.kt | 4 ++-- server/desktop/src/main/java/dev/slimevr/desktop/Main.kt | 5 +++-- .../java/dev/slimevr/desktop/install/drivers/Linux.kt | 8 ++++++++ 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/server/core/src/main/java/io/eiren/util/OperatingSystem.kt b/server/core/src/main/java/io/eiren/util/OperatingSystem.kt index 8a651e95e..4cfb0d446 100644 --- a/server/core/src/main/java/io/eiren/util/OperatingSystem.kt +++ b/server/core/src/main/java/io/eiren/util/OperatingSystem.kt @@ -38,8 +38,8 @@ enum class OperatingSystem( var dir = System.getenv("SLIMEVR_SOCKET_DIR") if (dir != null) return dir if (currentPlatform == LINUX) { - dir = System.getenv("XDG_RUNTIME_DIR") - if (dir != null) return dir + dir = "/tmp/" + return dir } return System.getProperty("java.io.tmpdir") } diff --git a/server/desktop/src/main/java/dev/slimevr/desktop/Main.kt b/server/desktop/src/main/java/dev/slimevr/desktop/Main.kt index 29e2b606d..121217f3b 100644 --- a/server/desktop/src/main/java/dev/slimevr/desktop/Main.kt +++ b/server/desktop/src/main/java/dev/slimevr/desktop/Main.kt @@ -45,6 +45,8 @@ val VERSION = (GIT_VERSION_TAG.ifEmpty { GIT_COMMIT_HASH }) + if (GIT_CLEAN) "" else "-dirty" +val featureFlags = FeatureFlags() + fun main(args: Array) { System.setProperty("awt.useSystemAAFontSettings", "on") System.setProperty("swing.aatext", "true") @@ -53,7 +55,6 @@ fun main(args: Array) { val formatter = HelpFormatter() val options = Options() val isLinux = System.getProperty("os.name").lowercase().contains("linux") - val featureFlags = FeatureFlags() options.addOption("h", "help", false, "Show help") options.addOption("V", "version", false, "Show version") options.addOption("i", "install", true, "Run the driver install") @@ -243,7 +244,7 @@ fun provideBridges( ) yield(linuxBridge) } - + LogManager.info("Socket Dir ${OperatingSystem.socketDirectory}") yield( UnixSocketBridge( server, diff --git a/server/desktop/src/main/java/dev/slimevr/desktop/install/drivers/Linux.kt b/server/desktop/src/main/java/dev/slimevr/desktop/install/drivers/Linux.kt index 9e05676ab..767ded1b1 100644 --- a/server/desktop/src/main/java/dev/slimevr/desktop/install/drivers/Linux.kt +++ b/server/desktop/src/main/java/dev/slimevr/desktop/install/drivers/Linux.kt @@ -1,5 +1,6 @@ package dev.slimevr.desktop.install.drivers +import dev.slimevr.desktop.featureFlags import io.eiren.util.logging.LogManager class Linux { @@ -33,6 +34,13 @@ class Linux { fun feeder() { executeShellCommand("chmod", "+x", "$path/$LINUX_FEEDER_DIRECTORY/SlimeVR-Feeder-App") + + val command = if (featureFlags.steam) { + arrayOf("steam-runtime-launch-client", "--alongside-steam", "--", "udevadm", "cat") + } else { + arrayOf("udevadm", "cat") + } + val udevResponse = executeShellCommand(*command) val feederOutput = executeShellCommand("$path/$LINUX_FEEDER_DIRECTORY/SlimeVR-Feeder-App", "--install") if (feederOutput == null) { LogManager.warning("Error installing feeder")