This commit was just to fix a few of the errors with the merging and to
[mediagoblin.git] / mediagoblin / config_spec.ini
CommitLineData
0fcfff5a 1[mediagoblin]
3c0411f5
PUS
2# HTML title of the pages
3html_title = string(default="GNU MediaGoblin")
4
ff6933fa
CAW
5# link to source for this MediaGoblin site
6source_link = string(default="https://gitorious.org/mediagoblin/mediagoblin")
7
8abeaf2f 8# database stuff
a45631e3 9sql_engine = string(default="sqlite:///%(here)s/mediagoblin.db")
6db23bd9
EL
10
11# This flag is used during testing to allow use of in-memory SQLite
12# databases. It is not recommended to be used on a running instance.
4a698535 13run_migrations = boolean(default=False)
6db23bd9 14
0fcfff5a 15# Where temporary files used in processing and etc are kept
3f5cf663 16workbench_path = string(default="%(here)s/user_dev/media/workbench")
0fcfff5a 17
5907154a
E
18# Where to store cryptographic sensible data
19crypto_path = string(default="%(here)s/user_dev/crypto")
20
0fcfff5a
CAW
21# Where mediagoblin-builtin static assets are kept
22direct_remote_path = string(default="/mgoblin_static/")
23
24# set to false to enable sending notices
25email_debug_mode = boolean(default=True)
2d7b6bde 26email_smtp_use_ssl = boolean(default=False)
0fcfff5a 27email_sender_address = string(default="notice@mediagoblin.example.org")
d71170ad 28email_smtp_host = string(default='')
2d7b6bde 29email_smtp_port = integer(default=0)
47364ead
JW
30email_smtp_user = string(default=None)
31email_smtp_pass = string(default=None)
0fcfff5a 32
13677ef9
RL
33# Set to false to disable registrations
34allow_registration = boolean(default=True)
35
10d7496d 36# tag parsing
86bd1f3c 37tags_max_length = integer(default=255)
10d7496d 38
20f8f50c
DT
39# Enable/disable comments
40allow_comments = boolean(default=True)
41
7c378f2c
CAW
42# Whether comments are ascending or descending
43comments_ascending = boolean(default=True)
44
3f5cf663
CAW
45# By default not set, but you might want something like:
46# "%(here)s/user_dev/templates/"
47local_templates = string()
0fcfff5a
CAW
48
49# Whether or not celery is set up via an environment variable or
50# something else (and thus mediagoblin should not attempt to set it up
51# itself)
52celery_setup_elsewhere = boolean(default=False)
53
2c437493
JW
54# Whether or not users are able to upload files of any filetype with
55# their media entries -- This is useful if you want to provide the
56# source files for a media file but can also be a HUGE security risk.
57allow_attachments = boolean(default=False)
58
f1226c98 59# Cookie stuff
2dc8d249 60csrf_cookie_name = string(default='mediagoblin_csrftoken')
894fa564 61
5b1a7bae 62# Push stuff
bb025ebd 63push_urls = string_list(default=list())
5907222c
JW
64
65exif_visible = boolean(default=False)
24d310e4 66original_date_visible = boolean(default=False)
8aeb6738 67
3b47da8e
CAW
68# Theming stuff
69theme_install_dir = string(default="%(here)s/user_dev/themes/")
9a422c1f 70theme_web_path = string(default="/theme_static/")
aed7474e 71theme_linked_assets_dir = string(default="%(here)s/user_dev/theme_static/")
3b47da8e
CAW
72theme = string()
73
5ccb16ca
CAW
74# plugin default assets directory
75plugin_web_path = string(default="/plugin_static/")
76plugin_linked_assets_dir = string(default="%(here)s/user_dev/plugin_static/")
77
155d234d
KD
78[jinja2]
79# Jinja2 supports more directives than the minimum required by mediagoblin.
80# This setting allows users creating custom templates to specify a list of
81# additional extensions they want to use. example value:
82# extensions = jinja2.ext.loopcontrols , jinja2.ext.with_
83extensions = string_list(default=list())
3b47da8e 84
ed797069 85[storage:publicstore]
a2468d18 86storage_class = string(default="mediagoblin.storage.filestorage:BasicFileStorage")
ed797069
E
87base_dir = string(default="%(here)s/user_dev/media/public")
88base_url = string(default="/mgoblin_media/")
89
90[storage:queuestore]
a2468d18 91storage_class = string(default="mediagoblin.storage.filestorage:BasicFileStorage")
ed797069
E
92base_dir = string(default="%(here)s/user_dev/media/queue")
93
10085b77 94[media:medium]
4f4f2531 95# Dimensions used when creating media display images.
10085b77
JW
96max_width = integer(default=640)
97max_height = integer(default=640)
98
99[media:thumb]
4f4f2531
JW
100# Dimensions used when creating media thumbnails
101# This is unfortunately not implemented in the media
102# types yet. You can help!
103# TODO: Make plugins follow the media size settings
10085b77
JW
104max_width = integer(default=180)
105max_height = integer(default=180)
894fa564 106
7cd7db5a 107[media_type:mediagoblin.media_types.image]
12408104
JW
108# One of BICUBIC, BILINEAR, NEAREST, ANTIALIAS
109resize_filter = string(default="ANTIALIAS")
35f6d6a7 110#level of compression used when resizing images
8aa18b66 111quality = integer(default=90)
7cd7db5a 112
23caf305 113[media_type:mediagoblin.media_types.video]
5a34a80d 114# Should we keep the original file?
23caf305
CAW
115keep_original = boolean(default=False)
116
196a5181
JW
117# 0 means autodetect, autodetect means number_of_CPUs - 1
118vp8_threads = integer(default=0)
119# Range: 0..10
120vp8_quality = integer(default=8)
121# Range: -0.1..1
122vorbis_quality = float(default=0.3)
123
6f6471aa 124# Autoplay the video when page is loaded?
316ede47 125auto_play = boolean(default=False)
6f6471aa 126
5c754fda
JW
127[[skip_transcode]]
128mime_types = string_list(default=list("video/webm"))
129container_formats = string_list(default=list("Matroska"))
130video_codecs = string_list(default=list("VP8 video"))
131audio_codecs = string_list(default=list("Vorbis"))
132dimensions_match = boolean(default=True)
196a5181 133
5a34a80d 134[media_type:mediagoblin.media_types.audio]
b781c3c9 135keep_original = boolean(default=True)
cd305837 136# vorbisenc quality
5a34a80d 137quality = float(default=0.3)
deea3f66 138create_spectrogram = boolean(default=True)
196a5181
JW
139spectrogram_fft_size = integer(default=4096)
140
196a5181
JW
141[media_type:mediagoblin.media_types.ascii]
142thumbnail_font = string(default=None)
23caf305 143
a80ebf3b 144[media_type:mediagoblin.media_types.pdf]
d28c5066 145pdf_js = boolean(default=True)
0533f117 146
35f6d6a7 147
0fcfff5a 148[celery]
e629cde0 149# default result stuff
6bcdd4dc
LS
150CELERY_RESULT_BACKEND = string(default="database")
151CELERY_RESULT_DBURI = string(default="sqlite:///%(here)s/celery.db")
e629cde0
CAW
152
153# default kombu stuff
6bcdd4dc 154BROKER_TRANSPORT = string(default="sqlalchemy")
41098dff 155BROKER_URL = string(default="sqlite:///%(here)s/kombu.db")
e629cde0 156
0fcfff5a 157# known booleans
6bcdd4dc
LS
158CELERY_RESULT_PERSISTENT = boolean()
159CELERY_CREATE_MISSING_QUEUES = boolean()
160BROKER_USE_SSL = boolean()
161BROKER_CONNECTION_RETRY = boolean()
162CELERY_ALWAYS_EAGER = boolean()
163CELERY_EAGER_PROPAGATES_EXCEPTIONS = boolean()
164CELERY_IGNORE_RESULT = boolean()
165CELERY_TRACK_STARTED = boolean()
166CELERY_DISABLE_RATE_LIMITS = boolean()
167CELERY_ACKS_LATE = boolean()
168CELERY_STORE_ERRORS_EVEN_IF_IGNORED = boolean()
169CELERY_SEND_TASK_ERROR_EMAILS = boolean()
170CELERY_SEND_EVENTS = boolean()
171CELERY_SEND_TASK_SENT_EVENT = boolean()
172CELERYD_LOG_COLOR = boolean()
173CELERY_REDIRECT_STDOUTS = boolean()
0fcfff5a
CAW
174
175# known ints
6bcdd4dc
LS
176CELERYD_CONCURRENCY = integer()
177CELERYD_PREFETCH_MULTIPLIER = integer()
178CELERY_AMQP_TASK_RESULT_EXPIRES = integer()
179CELERY_AMQP_TASK_RESULT_CONNECTION_MAX = integer()
180REDIS_PORT = integer()
181REDIS_DB = integer()
182BROKER_PORT = integer()
183BROKER_CONNECTION_TIMEOUT = integer()
184CELERY_BROKER_CONNECTION_MAX_RETRIES = integer()
185CELERY_TASK_RESULT_EXPIRES = integer()
186CELERY_MAX_CACHED_RESULTS = integer()
187CELERY_DEFAULT_RATE_LIMIT = integer()
188CELERYD_MAX_TASKS_PER_CHILD = integer()
189CELERYD_TASK_TIME_LIMIT = integer()
190CELERYD_TASK_SOFT_TIME_LIMIT = integer()
191MAIL_PORT = integer()
192CELERYBEAT_MAX_LOOP_INTERVAL = integer()
0fcfff5a
CAW
193
194# known floats
6bcdd4dc 195CELERYD_ETA_SCHEDULER_PRECISION = float()
0fcfff5a
CAW
196
197# known lists
6bcdd4dc
LS
198CELERY_ROUTES = string_list()
199CELERY_IMPORTS = string_list()