Open Media Library
This commit is contained in:
commit
2ee2bc178a
228 changed files with 85988 additions and 0 deletions
71
oml/settings.py
Normal file
71
oml/settings.py
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vi:si:et:sw=4:sts=4:ts=4
|
||||
|
||||
from flask.ext.sqlalchemy import SQLAlchemy
|
||||
import json
|
||||
import os
|
||||
import ed25519
|
||||
|
||||
from pdict import pdict
|
||||
|
||||
base_dir = os.path.normpath(os.path.join(os.path.abspath(os.path.dirname(__file__)), '..'))
|
||||
static_path = os.path.join(base_dir, 'static')
|
||||
updates_path = os.path.join(base_dir, 'updates')
|
||||
|
||||
oml_config_path = os.path.join(base_dir, 'config.json')
|
||||
|
||||
config_dir = os.path.normpath(os.path.join(base_dir, '..', 'config'))
|
||||
if not os.path.exists(config_dir):
|
||||
os.makedirs(config_dir)
|
||||
|
||||
db_path = os.path.join(config_dir, 'openmedialibrary.db')
|
||||
covers_db_path = os.path.join(config_dir, 'covers.db')
|
||||
key_path = os.path.join(config_dir, 'node.key')
|
||||
|
||||
db = SQLAlchemy()
|
||||
|
||||
if os.path.exists(oml_config_path):
|
||||
with open(oml_config_path) as fd:
|
||||
config = json.load(fd)
|
||||
else:
|
||||
config = {}
|
||||
|
||||
preferences = pdict(os.path.join(config_dir, 'preferences.json'), config['user']['preferences'])
|
||||
ui = pdict(os.path.join(config_dir, 'ui.json'), config['user']['ui'])
|
||||
|
||||
server = pdict(os.path.join(config_dir, 'server.json'))
|
||||
server_defaults = {
|
||||
'port': 9842,
|
||||
'address': '127.0.0.1',
|
||||
'node_port': 9851,
|
||||
'node_address': '::',
|
||||
'extract_text': True,
|
||||
'directory_service': 'http://[2a01:4f8:120:3201::3]:25519',
|
||||
'lookup_service': 'http://data.openmedialibrary.com',
|
||||
}
|
||||
|
||||
for key in server_defaults:
|
||||
if key not in server:
|
||||
server[key] = server_defaults[key]
|
||||
|
||||
release = pdict(os.path.join(config_dir, 'release.json'))
|
||||
|
||||
if os.path.exists(key_path):
|
||||
with open(key_path) as fd:
|
||||
sk = ed25519.SigningKey(fd.read())
|
||||
vk = sk.get_verifying_key()
|
||||
else:
|
||||
sk, vk = ed25519.create_keypair()
|
||||
with open(key_path, 'w') as fd:
|
||||
os.chmod(key_path, 0600)
|
||||
fd.write(sk.to_bytes())
|
||||
os.chmod(key_path, 0400)
|
||||
|
||||
USER_ID = vk.to_ascii(encoding='base64')
|
||||
|
||||
if 'modules' in release and 'openmedialibrary' in release['modules']:
|
||||
VERSION = release['modules']['openmedialibrary']['version']
|
||||
else:
|
||||
VERSION = 'git'
|
||||
|
||||
USER_AGENT = 'OpenMediaLibrary/%s' % VERSION
|
||||
Loading…
Add table
Add a link
Reference in a new issue