Skip to content

Steam#1763

Open
HannahPadd wants to merge 22 commits intollelievr/electronfrom
hannah/steam
Open

Steam#1763
HannahPadd wants to merge 22 commits intollelievr/electronfrom
hannah/steam

Conversation

@HannahPadd
Copy link

@HannahPadd HannahPadd commented Feb 27, 2026

This pr contains changes needed for the steam release to run.
Changes include:

  • Server can send to the gui if drivers or udev rules aren't installed.
  • Server can attempt to install drivers.

This PR relies on this PR from solarXR SlimeVR/SolarXR-Protocol#198

@github-actions github-actions bot added Area: GUI Related to the GUI Area: Translation Improvements or additions to translations Area: SteamVR Driver Related to the SteamVR Driver Area: Server Related to the server labels Feb 27, 2026
…on to get path to exe dir inside react. Moved the Error collecting consent modal to a page.
@github-actions github-actions bot added the Area: Application Protocol Related to communication with apps like the GUI, overlay, games label Feb 27, 2026
Added specific Nix and SteamOS configs.
Updated Feeder install function on Linux.
Update Feeder install function on Windows.
Lint.
Remove wrong return string from executeShellCommand in RPCInstallInfoHandler.kt
Skip Installation of drivers if user is not using the steam version.
@HannahPadd HannahPadd marked this pull request as ready for review March 3, 2026 10:11
Added system env variable to disable installer
Fixed mistake with disabling installer.
Update Windows usb driver install to read log from pnputil.
Updated the logic to detect if udev rules are installed skip the check when running on SteamOS or NixOS.
Remove the unused ErrorConsentModal.
PR Feedback
HannahPadd and others added 2 commits March 5, 2026 19:33
Co-authored-by: Sapphire <imsapphire0@gmail.com>
}

fun steamVRDriver() {
val steamVRLocation = executeShellCommand("powershell.exe", "-Command", "(Get-ItemProperty \'HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Steam App 250820\').InstallLocation")?.trim()
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we already have tooling to read from registry in the server. maybe we should use that?

LogManager.warning("Couldn't determine OS distribution: $e")
return
}
if (linuxFlavour.contains("ID=steamos") || linuxFlavour.contains("ID=nixos") || linuxFlavour.contains("ID_LIKE=nixos")) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i dont like the idea of checking for os like that. makes expension annoying imo
and it is duplicated in two locations in the code.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm thinking of making it so the InstalledInfoRequest packet has a table of requests it can do and have the gui specifically ask for udev rules when on Linux.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That kinda feels like moving the problem to a differerent spot instead of solving it though.


class Windows {

val path: String? = System.getProperty("user.dir")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is it nullable if it is set here?


class Linux {

val path: String? = System.getProperty("user.dir")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: Application Protocol Related to communication with apps like the GUI, overlay, games Area: GUI Related to the GUI Area: Server Related to the server Area: SteamVR Driver Related to the SteamVR Driver Area: Translation Improvements or additions to translations

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants