25 lines
719 B
Python
25 lines
719 B
Python
import os
|
|
import secrets
|
|
|
|
import toml
|
|
|
|
CONFIG_FILE = "config.toml"
|
|
|
|
|
|
def load_or_create_config():
|
|
if not os.path.exists(CONFIG_FILE):
|
|
admin_password = secrets.token_urlsafe(16)
|
|
config = {
|
|
"admin": {"password": admin_password},
|
|
"directories": {"upload": "uploads", "thumbnail": "thumbnails"},
|
|
"appearance": {"accent_color": "#ff6600"},
|
|
"server": {"host": "0.0.0.0", "port": 5002},
|
|
}
|
|
with open(CONFIG_FILE, "w") as f:
|
|
toml.dump(config, f)
|
|
print(f"Generated new config file with admin password: {admin_password}")
|
|
else:
|
|
with open(CONFIG_FILE, "r") as f:
|
|
config = toml.load(f)
|
|
return config
|