I don’t do auto-login on my Windows box, but I wanted a way to load an OpenRGB profile as soon as possible after boot. (So I don’t have to look at the eyesore of a rainbow on my RAM as I log in, but that’s beside the point.) I couldn’t find a write-up anywhere, so here goes:
-
Get OpenRGB installed and working as you would normally on Windows. This includes setting up your devices, saving a profile, and setting it to run automatically after login.
-
Download nssm and put it somewhere easily accessible from your terminal of choice. I suggest your
USERPROFILE%
dir (C:\Users\username
). Or just install it via chocolatey. -
Open your terminal as administrator (Win key, type “cmd”, then click “Run as administrator”), then:
cd %USERPROFILE% nssm install
-
In the
Application
tab that pops up, set the following:- Path:
C:\Program Files\OpenRGB\OpenRGB.exe
- Startup directory:
C:\Users\username\AppData\Roaming\OpenRGB
- Arguments:
--noautoconnect --server --profile yourprofile
- Path:
Substitute the path, username
, and yourprofile
according to your local configuration, of course.
-
Switch to the
Log on
tab and set- Log on as:
This account
- This account:
username
- Password:
yourpassword
- Log on as:
-
Set the
Service name
toOpenRGB
-
Click
Install service
, then reboot.
That’s it! Your profile should be set before you log in. And after you log in, the OpenRGB instance you originally configured should connect automatically to the service that’s now running.
There’s only one gotcha: I haven’t yet found a way to have OpenRGB run plugins in server mode, so things such as Hardware Sync will only start after log in.
That may very well be true, but it doesn’t account for all use cases. Such as mine, where the computer actually serves more than one account, and as such doesn’t automatically log in on boot.
I was actually very happy to find OpenRGB supports the server/client scenario. It fit perfectly for the service/user scenario!