diff --git a/allstarr/Controllers/AdminController.cs b/allstarr/Controllers/AdminController.cs index 3fb01f9..ea60104 100644 --- a/allstarr/Controllers/AdminController.cs +++ b/allstarr/Controllers/AdminController.cs @@ -1409,8 +1409,8 @@ public class AdminController : ControllerBase library = new { downloadPath = _subsonicSettings.StorageMode == StorageMode.Cache - ? Path.Combine("cache", "Music") - : (_configuration["Library:DownloadPath"] ?? "./downloads"), + ? Path.Combine(_configuration["Library:DownloadPath"] ?? "./downloads", "cache") + : Path.Combine(_configuration["Library:DownloadPath"] ?? "./downloads", "permanent"), keptPath = Path.Combine(_configuration["Library:DownloadPath"] ?? "./downloads", "kept"), storageMode = _subsonicSettings.StorageMode.ToString(), cacheDurationHours = _subsonicSettings.CacheDurationHours, diff --git a/allstarr/Program.cs b/allstarr/Program.cs index 1314dd0..1e97e68 100644 --- a/allstarr/Program.cs +++ b/allstarr/Program.cs @@ -36,7 +36,6 @@ static List DecodeSquidWtfUrls() "aHR0cHM6Ly91cy13ZXN0Lm1vbm9jaHJvbWUudGY=", // us-west.monochrome.tf "aHR0cHM6Ly9hcnJhbi5tb25vY2hyb21lLnRm", // arran.monochrome.tf "aHR0cHM6Ly9hcGkubW9ub2Nocm9tZS50Zg==", // api.monochrome.tf - "aHR0cHM6Ly9tb25vY2hyb21lLWFwaS5zYW1pZHkuY29t", // monochrome-api.samidy.com "aHR0cHM6Ly9odW5kLnFxZGwuc2l0ZQ==" // hund.qqdl.site (https) }; diff --git a/allstarr/Services/Deezer/DeezerDownloadService.cs b/allstarr/Services/Deezer/DeezerDownloadService.cs index 2ba3145..db9f6d2 100644 --- a/allstarr/Services/Deezer/DeezerDownloadService.cs +++ b/allstarr/Services/Deezer/DeezerDownloadService.cs @@ -107,10 +107,10 @@ public class DeezerDownloadService : BaseDownloadService // Build organized folder structure: Artist/Album/Track using AlbumArtist (fallback to Artist for singles) var artistForPath = song.AlbumArtist ?? song.Artist; - // Cache mode uses cache/Music folder (cleaned up after 24h), Permanent mode uses downloads folder + // Cache mode uses downloads/cache/ folder, Permanent mode uses downloads/permanent/ var basePath = SubsonicSettings.StorageMode == StorageMode.Cache - ? Path.Combine("cache", "Music") - : "downloads"; + ? Path.Combine("downloads", "cache") + : Path.Combine("downloads", "permanent"); var outputPath = PathHelper.BuildTrackPath(basePath, artistForPath, song.Album, song.Title, song.Track, extension); // Create directories if they don't exist diff --git a/allstarr/Services/Qobuz/QobuzDownloadService.cs b/allstarr/Services/Qobuz/QobuzDownloadService.cs index 866a829..d8aeab7 100644 --- a/allstarr/Services/Qobuz/QobuzDownloadService.cs +++ b/allstarr/Services/Qobuz/QobuzDownloadService.cs @@ -110,10 +110,10 @@ public class QobuzDownloadService : BaseDownloadService // Build organized folder structure using AlbumArtist (fallback to Artist for singles) var artistForPath = song.AlbumArtist ?? song.Artist; - // Cache mode uses cache/Music folder (cleaned up after 24h), Permanent mode uses downloads folder + // Cache mode uses downloads/cache/ folder, Permanent mode uses downloads/permanent/ var basePath = SubsonicSettings.StorageMode == StorageMode.Cache - ? Path.Combine("cache", "Music") - : "downloads"; + ? Path.Combine(DownloadPath, "cache") + : Path.Combine(DownloadPath, "permanent"); var outputPath = PathHelper.BuildTrackPath(basePath, artistForPath, song.Album, song.Title, song.Track, extension); var albumFolder = Path.GetDirectoryName(outputPath)!; diff --git a/allstarr/Services/SquidWTF/SquidWTFDownloadService.cs b/allstarr/Services/SquidWTF/SquidWTFDownloadService.cs index 4506ab7..a8c695c 100644 --- a/allstarr/Services/SquidWTF/SquidWTFDownloadService.cs +++ b/allstarr/Services/SquidWTF/SquidWTFDownloadService.cs @@ -125,10 +125,10 @@ public class SquidWTFDownloadService : BaseDownloadService // Build organized folder structure: Artist/Album/Track using AlbumArtist (fallback to Artist for singles) var artistForPath = song.AlbumArtist ?? song.Artist; - // Cache mode uses cache/Music folder (cleaned up after 24h), Permanent mode uses downloads folder + // Cache mode uses downloads/cache/ folder, Permanent mode uses downloads/permanent/ var basePath = SubsonicSettings.StorageMode == StorageMode.Cache - ? Path.Combine("cache", "Music") - : "downloads"; + ? Path.Combine("downloads", "cache") + : Path.Combine("downloads", "permanent"); var outputPath = PathHelper.BuildTrackPath(basePath, artistForPath, song.Album, song.Title, song.Track, extension); // Create directories if they don't exist