introduce localization for Music dir on Linux

This commit is contained in:
darkeox 2022-11-24 23:22:06 +01:00
parent 19cd9c4e0b
commit 8405692d6b

View File

@ -2,8 +2,11 @@ import musicbrainzngs
import logging import logging
import tempfile import tempfile
import os import os
import io
import configparser
from sys import platform as current_os
USER_XDG_DIR_FILE = os.path.expanduser("~/.config/user-dirs.dirs")
TEMP_FOLDER = "music-downloader" TEMP_FOLDER = "music-downloader"
LOG_FILE = "download_logs.log" LOG_FILE = "download_logs.log"
TEMP_DATABASE_FILE = "metadata.db" TEMP_DATABASE_FILE = "metadata.db"
@ -39,6 +42,21 @@ GENIUS_LOGGER = logging.getLogger("genius")
NOT_A_GENRE = ".", "..", "misc_scripts", "Music", "script", ".git", ".idea" NOT_A_GENRE = ".", "..", "misc_scripts", "Music", "script", ".git", ".idea"
MUSIC_DIR = os.path.join(os.path.expanduser("~"), "Music") MUSIC_DIR = os.path.join(os.path.expanduser("~"), "Music")
if current_os == "linux":
try:
with open(USER_XDG_DIR_FILE, 'r') as f:
data = io.StringIO("[XDG_USER_DIRS]\n" + f.read())
config = configparser.ConfigParser(allow_no_value=True)
config.read_file(data)
xdg_config = config['XDG_USER_DIRS']
MUSIC_DIR = os.path.expandvars(xdg_config['xdg_music_dir'].strip('"'))
except FileNotFoundError as N:
print(f'''
Missing XDG_USER_DIRS file at: '{USER_XDG_DIR_FILE}'.
Will fallback on default '$HOME/Music'.
----
''')
TOR = False TOR = False
proxies = { proxies = {
'http': 'socks5h://127.0.0.1:9150', 'http': 'socks5h://127.0.0.1:9150',