config

package
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 30, 2026 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Overview

Package config centralizes OpenDeezer's user configuration (env vars + ~/.config/opendeezer files) for the bits shared between the TUI and the GUI engine (corelib): the control API and Discord Rich Presence settings.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Dir

func Dir() (string, error)

Dir is ~/.config/opendeezer (platform UserConfigDir + "opendeezer").

func IsLoopbackAddr

func IsLoopbackAddr(addr string) bool

IsLoopbackAddr reports whether a host:port binds only the loopback interface.

func LoadDiscordAppID

func LoadDiscordAppID() string

LoadDiscordAppID returns the Discord application id for Rich Presence, from $OPENDEEZER_DISCORD_APP_ID or ~/.config/opendeezer/discord-app-id.txt. Empty disables the feature.

func LoadPeers

func LoadPeers() []string

LoadPeers returns manually-configured Connect peer addresses (host[:port]), from $OPENDEEZER_CONNECT_PEERS (comma-separated) and ~/.config/opendeezer/connect-peers.txt (one per line). These are merged into the device picker alongside LAN discovery, so Connect works over networks that carry no multicast/broadcast (e.g. Tailscale/VPN — unicast-only meshes).

func NormalizePeer

func NormalizePeer(addr string) (base, hostport string)

NormalizePeer turns user input ("host", "host:port", "http://host:port") into a base URL + host:port, defaulting the port to 7654. Returns ("","") if empty.

Types

type Control

type Control struct {
	Enabled     bool
	Addr        string // host:port; "" -> 127.0.0.1:7654
	Token       string // bearer token ("" = no auth, localhost only)
	SameAccount bool   // require a matching Deezer account when no token (LAN)
}

Control holds the control-API settings (remote control + MCP).

func LoadControl

func LoadControl() Control

LoadControl reads the control-API config from $OPENDEEZER_CONTROL ("1"/addr) + $OPENDEEZER_CONTROL_TOKEN, else ~/.config/opendeezer/{control.txt,control-token.txt}.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL