64 lines
3.4 KiB
C#
64 lines
3.4 KiB
C#
namespace ErsatzTV.Core;
|
|
|
|
public static class FileSystemLayout
|
|
{
|
|
public static readonly string AppDataFolder = Path.Combine(
|
|
Environment.GetFolderPath(
|
|
Environment.SpecialFolder.LocalApplicationData,
|
|
Environment.SpecialFolderOption.Create),
|
|
"ersatztv");
|
|
|
|
// TODO: find a different spot for this; configurable?
|
|
public static readonly string TranscodeFolder = Path.Combine(
|
|
Environment.GetFolderPath(
|
|
Environment.SpecialFolder.LocalApplicationData,
|
|
Environment.SpecialFolderOption.Create),
|
|
"etv-transcode");
|
|
|
|
public static readonly string DataProtectionFolder = Path.Combine(AppDataFolder, "data-protection");
|
|
|
|
public static readonly string LogsFolder = Path.Combine(AppDataFolder, "logs");
|
|
|
|
public static readonly string DatabasePath = Path.Combine(AppDataFolder, "ersatztv.sqlite3");
|
|
|
|
public static readonly string LogFilePath = Path.Combine(LogsFolder, "ersatztv.log");
|
|
|
|
public static readonly string LegacyImageCacheFolder = Path.Combine(AppDataFolder, "cache", "images");
|
|
public static readonly string ResourcesCacheFolder = Path.Combine(AppDataFolder, "cache", "resources");
|
|
public static readonly string ChannelGuideCacheFolder = Path.Combine(AppDataFolder, "cache", "channel-guide");
|
|
|
|
public static readonly string PlexSecretsPath = Path.Combine(AppDataFolder, "plex-secrets.json");
|
|
public static readonly string JellyfinSecretsPath = Path.Combine(AppDataFolder, "jellyfin-secrets.json");
|
|
public static readonly string EmbySecretsPath = Path.Combine(AppDataFolder, "emby-secrets.json");
|
|
|
|
public static readonly string FFmpegReportsFolder = Path.Combine(AppDataFolder, "ffmpeg-reports");
|
|
public static readonly string SearchIndexFolder = Path.Combine(AppDataFolder, "search-index");
|
|
public static readonly string TempFilePoolFolder = Path.Combine(AppDataFolder, "temp-pool");
|
|
|
|
public static readonly string ArtworkCacheFolder = Path.Combine(AppDataFolder, "cache", "artwork");
|
|
|
|
public static readonly string PosterCacheFolder = Path.Combine(ArtworkCacheFolder, "posters");
|
|
public static readonly string ThumbnailCacheFolder = Path.Combine(ArtworkCacheFolder, "thumbnails");
|
|
public static readonly string LogoCacheFolder = Path.Combine(ArtworkCacheFolder, "logos");
|
|
public static readonly string FanArtCacheFolder = Path.Combine(ArtworkCacheFolder, "fanart");
|
|
public static readonly string WatermarkCacheFolder = Path.Combine(ArtworkCacheFolder, "watermarks");
|
|
|
|
public static readonly string StreamsCacheFolder = Path.Combine(AppDataFolder, "cache", "streams");
|
|
|
|
public static readonly string SubtitleCacheFolder = Path.Combine(StreamsCacheFolder, "subtitles");
|
|
public static readonly string FontsCacheFolder = Path.Combine(StreamsCacheFolder, "fonts");
|
|
|
|
public static readonly string TemplatesFolder = Path.Combine(AppDataFolder, "templates");
|
|
|
|
public static readonly string MusicVideoCreditsTemplatesFolder =
|
|
Path.Combine(TemplatesFolder, "music-video-credits");
|
|
|
|
public static readonly string ScriptsFolder = Path.Combine(AppDataFolder, "scripts");
|
|
|
|
public static readonly string MultiEpisodeShuffleTemplatesFolder =
|
|
Path.Combine(ScriptsFolder, "multi-episode-shuffle");
|
|
|
|
public static readonly string AudioStreamSelectorScriptsFolder =
|
|
Path.Combine(ScriptsFolder, "audio-stream-selector");
|
|
}
|