MyNixOS website logo
option

services.moonshine.settings

Moonshine configuration, generated as a TOML file in the Nix store. See for the available settings and <https://github.com/hgaiser/moonshine#configuration for some examples.

Do not leave this option empty: Moonshine's upstream defaults configure Steam at /usr/bin/steam, which does not exist on NixOS. Define at least application with an executable in the Nix store, as shown in the example. Setting application explicitly is sufficient; application_scanners may be omitted.

Moonshine stores cert.pem and key.pem in ~/.config/moonshine/, and paired-client state in ~/.local/share/moonshine/state.toml for the configured user.

Since the service runs without a desktop session, its notification action cannot reliably open the pairing page. Pair clients by visiting http://<host>:47989/pin in a browser instead.

Declarations
Type
TOML value
Default
{ }
Example
{
  name = "my-desktop";
  address = "0.0.0.0";
  application = [
    {
      title = "Steam";
      command = [ "steam" "steam://open/bigpicture" ];
    }
  ];
  application_scanner = [
    {
      type = "steam";
      library = "$HOME/.local/share/Steam";
      command = [ "steam" "-bigpicture" "steam://rungameid/{game_id}" ];
    }
  ];
}