diff --git a/client/internal/profilemanager/service.go b/client/internal/profilemanager/service.go index 56198c4cc..520eef2e9 100644 --- a/client/internal/profilemanager/service.go +++ b/client/internal/profilemanager/service.go @@ -34,14 +34,18 @@ func init() { DefaultConfigPathDir = "/var/lib/netbird/" oldDefaultConfigPathDir = "/etc/netbird/" - switch runtime.GOOS { - case "windows": - oldDefaultConfigPathDir = filepath.Join(os.Getenv("PROGRAMDATA"), "Netbird") - DefaultConfigPathDir = oldDefaultConfigPathDir + if stateDir := os.Getenv("NB_STATE_DIR"); stateDir != "" { + DefaultConfigPathDir = stateDir + } else { + switch runtime.GOOS { + case "windows": + oldDefaultConfigPathDir = filepath.Join(os.Getenv("PROGRAMDATA"), "Netbird") + DefaultConfigPathDir = oldDefaultConfigPathDir - case "freebsd": - oldDefaultConfigPathDir = "/var/db/netbird/" - DefaultConfigPathDir = oldDefaultConfigPathDir + case "freebsd": + oldDefaultConfigPathDir = "/var/db/netbird/" + DefaultConfigPathDir = oldDefaultConfigPathDir + } } oldDefaultConfigPath = filepath.Join(oldDefaultConfigPathDir, "config.json")