4c78cf8c47
This will remove the dependency on the Elasticsearch database. The search query is passed currently as raw SQL. Proper implementation using SQLAlchemy will need custom ORM classed to be made. Additional config parameter "allow_broken_uploads" has been added.
152 lines
5.5 KiB
Text
152 lines
5.5 KiB
Text
# rather than editing this file, it is strongly suggested to create config.yaml
|
|
# and override only what you need.
|
|
|
|
# shown in the website title and on the front page
|
|
name: szurubooru
|
|
# full url to the homepage of this szurubooru site, with no trailing slash
|
|
domain: # example: http://example.com
|
|
# user agent name used to download files from the web on behalf of the api users
|
|
user_agent:
|
|
# used to salt the users' password hashes and generate filenames for static content
|
|
secret: change
|
|
|
|
# Delete thumbnails and source files on post delete
|
|
# Original functionality is no, to mitigate the impacts of admins going
|
|
# on unchecked post purges.
|
|
delete_source_files: no
|
|
|
|
thumbnails:
|
|
avatar_width: 300
|
|
avatar_height: 300
|
|
post_width: 300
|
|
post_height: 300
|
|
|
|
# automatically convert animated GIF uploads to video formats
|
|
convert:
|
|
gif:
|
|
to_webm: false
|
|
to_mp4: false
|
|
|
|
# allow posts to be uploaded even if some image processing errors occur
|
|
allow_broken_uploads: false
|
|
|
|
# used to send password reset e-mails
|
|
smtp:
|
|
host: # example: localhost
|
|
port: # example: 25
|
|
user: # example: bot
|
|
pass: # example: groovy123
|
|
from: # example: noreply@example.com
|
|
# if host is left empty the password reset feature will be disabled, in which case it is
|
|
# recommended to fill contactEmail so that users know who to contact when they want to reset their password
|
|
|
|
contact_email: # example: bob@example.com. Meant for manual password reset procedures
|
|
|
|
enable_safety: yes
|
|
|
|
tag_name_regex: ^\S+$
|
|
tag_category_name_regex: ^[^\s%+#/]+$
|
|
|
|
# don't make these more restrictive unless you want to annoy people; if you do
|
|
# customize them, make sure to update the instructions in the registration form
|
|
# template as well.
|
|
password_regex: '^.{5,}$'
|
|
user_name_regex: '^[a-zA-Z0-9_-]{1,32}$'
|
|
|
|
default_rank: regular
|
|
|
|
privileges:
|
|
'users:create:self': anonymous # Registration permission
|
|
'users:create:any': administrator
|
|
'users:list': regular
|
|
'users:view': regular
|
|
'users:edit:any:name': moderator
|
|
'users:edit:any:pass': moderator
|
|
'users:edit:any:email': moderator
|
|
'users:edit:any:avatar': moderator
|
|
'users:edit:any:rank': moderator
|
|
'users:edit:self:name': regular
|
|
'users:edit:self:pass': regular
|
|
'users:edit:self:email': regular
|
|
'users:edit:self:avatar': regular
|
|
'users:edit:self:rank': moderator # one can't promote themselves or anyone to upper rank than their own.
|
|
'users:delete:any': administrator
|
|
'users:delete:self': regular
|
|
|
|
'user_tokens:list:any': administrator
|
|
'user_tokens:list:self': regular
|
|
'user_tokens:create:any': administrator
|
|
'user_tokens:create:self': regular
|
|
'user_tokens:edit:any': administrator
|
|
'user_tokens:edit:self': regular
|
|
'user_tokens:delete:any': administrator
|
|
'user_tokens:delete:self': regular
|
|
|
|
'posts:create:anonymous': regular
|
|
'posts:create:identified': regular
|
|
'posts:list': anonymous
|
|
'posts:reverse_search': regular
|
|
'posts:view': anonymous
|
|
'posts:view:featured': anonymous
|
|
'posts:edit:content': power
|
|
'posts:edit:flags': regular
|
|
'posts:edit:notes': regular
|
|
'posts:edit:relations': regular
|
|
'posts:edit:safety': power
|
|
'posts:edit:source': regular
|
|
'posts:edit:tags': regular
|
|
'posts:edit:thumbnail': power
|
|
'posts:feature': moderator
|
|
'posts:delete': moderator
|
|
'posts:score': regular
|
|
'posts:merge': moderator
|
|
'posts:favorite': regular
|
|
'posts:bulk-edit:tags': power
|
|
'posts:bulk-edit:safety': power
|
|
|
|
'tags:create': regular
|
|
'tags:edit:names': power
|
|
'tags:edit:category': power
|
|
'tags:edit:description': power
|
|
'tags:edit:implications': power
|
|
'tags:edit:suggestions': power
|
|
'tags:list': regular
|
|
'tags:view': anonymous
|
|
'tags:merge': moderator
|
|
'tags:delete': moderator
|
|
|
|
'tag_categories:create': moderator
|
|
'tag_categories:edit:name': moderator
|
|
'tag_categories:edit:color': moderator
|
|
'tag_categories:list': anonymous
|
|
'tag_categories:view': anonymous
|
|
'tag_categories:delete': moderator
|
|
'tag_categories:set_default': moderator
|
|
|
|
'comments:create': regular
|
|
'comments:delete:any': moderator
|
|
'comments:delete:own': regular
|
|
'comments:edit:any': moderator
|
|
'comments:edit:own': regular
|
|
'comments:list': regular
|
|
'comments:view': regular
|
|
'comments:score': regular
|
|
|
|
'snapshots:list': power
|
|
|
|
'uploads:create': regular
|
|
|
|
## ONLY SET THESE IF DEPLOYING OUTSIDE OF DOCKER
|
|
#debug: 0 # generate server logs?
|
|
#show_sql: 0 # show sql in server logs?
|
|
#data_url: /data/
|
|
#data_dir: /var/www/data
|
|
## usage: schema://user:password@host:port/database_name
|
|
## example: postgres://szuru:dog@localhost:5432/szuru_test
|
|
#database:
|
|
#elasticsearch: # used for reverse image search
|
|
# host: localhost
|
|
# port: 9200
|
|
# index: szurubooru
|
|
# user: szurubooru
|
|
# pass:
|