diff --git a/Jellyfin.Server/Program.cs b/Jellyfin.Server/Program.cs index 03fdacb26..f1559e885 100644 --- a/Jellyfin.Server/Program.cs +++ b/Jellyfin.Server/Program.cs @@ -47,6 +47,8 @@ namespace Jellyfin.Server } ServerApplicationPaths appPaths = createApplicationPaths(options); + // $JELLYFIN_LOG_DIR needs to be set for the logger configuration manager + Environment.SetEnvironmentVariable("JELLYFIN_LOG_DIR", appPaths.LogDirectoryPath); await createLogger(appPaths); _loggerFactory = new SerilogLoggerFactory(); _logger = _loggerFactory.CreateLogger("Main"); @@ -140,23 +142,8 @@ namespace Jellyfin.Server } else { - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) - { - configDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); - } - else - { - // $XDG_CONFIG_HOME defines the base directory relative to which user specific configuration files should be stored. - configDir = Environment.GetEnvironmentVariable("XDG_CONFIG_HOME"); - // If $XDG_CONFIG_HOME is either not set or empty, $HOME/.config should be used. - if (string.IsNullOrEmpty(configDir)) - { - configDir = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), ".local", "share"); - } - } - configDir = Path.Combine(configDir, "jellyfin"); - // Ensure the dir exists - Directory.CreateDirectory(configDir); + // Let BaseApplicationPaths set up the default value + configDir = null; } } @@ -169,12 +156,9 @@ namespace Jellyfin.Server } else { - logDir = Path.Combine(programDataPath, "logs"); - // Ensure the dir exists - Directory.CreateDirectory(logDir); + // Let BaseApplicationPaths set up the default value + logDir = null; } - // $JELLYFIN_LOG_DIR needs to be set for the logger configuration manager - Environment.SetEnvironmentVariable("JELLYFIN_LOG_DIR", logDir); } string appPath = AppContext.BaseDirectory;