mirror of https://github.com/gogits/gogs.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
502 lines
16 KiB
502 lines
16 KiB
# !!! NEVER EVER MODIFY THIS FILE !!! |
|
# !!! PLEASE MAKE CHANGES ON CORRESPONDING CUSTOM CONFIG FILE !!! |
|
# !!! IF YOU ARE PACKAGING PROVIDER, PLEASE MAKE OWN COPY OF IT !!! |
|
|
|
; App name that shows on every page title |
|
APP_NAME = Gogs |
|
; The name of the system user that runs Gogs |
|
RUN_USER = git |
|
; Either "dev", "prod" or "test" |
|
RUN_MODE = dev |
|
|
|
[server] |
|
PROTOCOL = http |
|
DOMAIN = localhost |
|
ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/ |
|
HTTP_ADDR = 0.0.0.0 |
|
HTTP_PORT = 3000 |
|
; Permission for unix socket |
|
UNIX_SOCKET_PERMISSION = 666 |
|
; Local (DMZ) URL for Gogs workers (such as SSH update) accessing web service. |
|
; In most cases you do not need to change the default value. |
|
; Alter it only if your SSH server node is not the same as HTTP node. |
|
LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/ |
|
; Disable SSH feature when not available |
|
DISABLE_SSH = false |
|
; Whether use builtin SSH server or not. |
|
START_SSH_SERVER = false |
|
; Domain name to be exposed in SSH clone URL |
|
SSH_DOMAIN = %(DOMAIN)s |
|
; Port number to be exposed in SSH clone URL |
|
SSH_PORT = 22 |
|
; Network interface builtin SSH server listens on |
|
SSH_LISTEN_HOST = 0.0.0.0 |
|
; Port number builtin SSH server listens on |
|
SSH_LISTEN_PORT = %(SSH_PORT)s |
|
; Root path of SSH directory, default is '~/.ssh', but you have to use '/home/git/.ssh'. |
|
SSH_ROOT_PATH = |
|
; Indicate whether to rewrite authorized_keys at start, ignored when use builtin SSH server |
|
REWRITE_AUTHORIZED_KEYS_AT_START = false |
|
; Choose the ciphers to support for SSH connections |
|
SSH_SERVER_CIPHERS = aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, arcfour256, arcfour128 |
|
; Directory to create temporary files when test publick key using ssh-keygen, |
|
; default is system temporary directory. |
|
SSH_KEY_TEST_PATH = |
|
; Path to ssh-keygen, default is 'ssh-keygen' and let shell find out which one to call. |
|
SSH_KEYGEN_PATH = ssh-keygen |
|
; Indicate whether to check minimum key size with corresponding type |
|
MINIMUM_KEY_SIZE_CHECK = false |
|
; Disable CDN even in "prod" mode |
|
OFFLINE_MODE = false |
|
DISABLE_ROUTER_LOG = false |
|
; Generate steps: |
|
; $ ./gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com |
|
; |
|
; Or from a .pfx file exported from the Windows certificate store (do |
|
; not forget to export the private key): |
|
; $ openssl pkcs12 -in cert.pfx -out cert.pem -nokeys |
|
; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes |
|
CERT_FILE = custom/https/cert.pem |
|
KEY_FILE = custom/https/key.pem |
|
; Allowed TLS version values: SSL30, TLS10, TLS11, TLS12 |
|
TLS_MIN_VERSION = TLS10 |
|
|
|
; Upper level of template and static file path |
|
; default is the path where Gogs is executed |
|
STATIC_ROOT_PATH = |
|
; Default path for App data |
|
APP_DATA_PATH = data |
|
; Application level GZIP support |
|
ENABLE_GZIP = false |
|
; Landing page for non-logged users, can be "home" or "explore" |
|
LANDING_PAGE = home |
|
|
|
[repository] |
|
; Root path for storing repositories's data, default is "~/<username>/gogs-repositories" |
|
ROOT = |
|
; The script type server supports, sometimes could be "sh" |
|
SCRIPT_TYPE = bash |
|
; Default ANSI charset for an unrecognized charset |
|
ANSI_CHARSET = |
|
; Force every new repository to be private |
|
FORCE_PRIVATE = false |
|
; Global maximum creation limit of repository per user, -1 means no limit |
|
MAX_CREATION_LIMIT = -1 |
|
; Mirror sync queue length, increase if mirror syncing starts hanging |
|
MIRROR_QUEUE_LENGTH = 1000 |
|
; Patch test queue length, increase if pull request patch testing starts hanging |
|
PULL_REQUEST_QUEUE_LENGTH = 1000 |
|
; Preferred Licenses to place at the top of the list |
|
; Name must match file name in conf/license or custom/conf/license |
|
PREFERRED_LICENSES = Apache License 2.0,MIT License |
|
; Disable ability to interact with repositories by HTTP protocol |
|
DISABLE_HTTP_GIT = false |
|
; Enable ability to migrate repository by local path |
|
ENABLE_LOCAL_PATH_MIGRATION = false |
|
; Concurrency is used to retrieve commits information. This variable define |
|
; the maximum number of tasks that can be run at the same time. Usually, the |
|
; value depend of how many CPUs (cores) you have. If the value is set to zero |
|
; or under, GOGS will automatically detect the number of CPUs your system have |
|
COMMITS_FETCH_CONCURRENCY = 0 |
|
; Enable render mode for raw file |
|
ENABLE_RAW_FILE_RENDER_MODE = false |
|
|
|
[repository.editor] |
|
; List of file extensions that should have line wraps in the CodeMirror editor. |
|
; Separate extensions with a comma. To line wrap files without extension, just put a comma |
|
LINE_WRAP_EXTENSIONS = .txt,.md,.markdown,.mdown,.mkd, |
|
; Valid file modes that have a preview API associated with them, such as api/v1/markdown. |
|
; Separate values by commas. Preview tab in edit mode won't show if the file extension doesn't match |
|
PREVIEWABLE_FILE_MODES = markdown |
|
|
|
[repository.upload] |
|
; Enable repository file uploads. |
|
ENABLED = true |
|
; Path to temporarily store uploads (default path gets cleaned by Gogs in every start) |
|
TEMP_PATH = data/tmp/uploads |
|
; File types that are allowed to be uploaded, e.g. image/jpeg|image/png. Leave empty means allow any file type |
|
ALLOWED_TYPES = |
|
; Maximum size of each file in MB |
|
FILE_MAX_SIZE = 3 |
|
; Maximum number of files per upload |
|
MAX_FILES = 5 |
|
|
|
; Attachment settings for releases |
|
[release.attachment] |
|
; Whether attachments are enabled. Defaults to `true` |
|
ENABLED = true |
|
; Path for attachments. Defaults to `data/attachments` |
|
PATH = data/attachments |
|
; One or more allowed types, e.g. image/jpeg|image/png |
|
ALLOWED_TYPES = */* |
|
; Max size of each file. Defaults to 32MB |
|
MAX_SIZE = 32 |
|
; Max number of files per upload. Defaults to 10 |
|
MAX_FILES = 10 |
|
|
|
[markdown] |
|
; Enable hard line break extension |
|
ENABLE_HARD_LINE_BREAK = false |
|
; List of custom URL-Schemes that are allowed as links when rendering Markdown |
|
; for example git,magnet |
|
CUSTOM_URL_SCHEMES = |
|
; List of file extensions that should be rendered/edited as Markdown |
|
; Separate extensions with a comma. To render files w/o extension as markdown, just put a comma |
|
FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd |
|
|
|
[smartypants] |
|
ENABLED = false |
|
FRACTIONS = true |
|
DASHES = true |
|
LATEX_DASHES = true |
|
ANGLED_QUOTES = true |
|
|
|
[http] |
|
; Value for Access-Control-Allow-Origin header, default is not to present |
|
ACCESS_CONTROL_ALLOW_ORIGIN = |
|
|
|
; Define allowed algorithms and their minimum key length (use -1 to disable a type) |
|
[ssh.minimum_key_sizes] |
|
ED25519 = 256 |
|
ECDSA = 256 |
|
RSA = 2048 |
|
DSA = 1024 |
|
|
|
[database] |
|
; Either "mysql", "postgres" or "sqlite3", you can connect to TiDB with MySQL protocol |
|
DB_TYPE = mysql |
|
HOST = 127.0.0.1:3306 |
|
NAME = gogs |
|
USER = root |
|
PASSWD = |
|
; For "postgres" only, either "disable", "require" or "verify-full" |
|
SSL_MODE = disable |
|
; For "sqlite3" and "tidb", use absolute path when you start as service |
|
PATH = data/gogs.db |
|
|
|
[admin] |
|
; Disable regular (non-admin) users to create organizations |
|
DISABLE_REGULAR_ORG_CREATION = false |
|
|
|
[security] |
|
INSTALL_LOCK = false |
|
; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!! |
|
SECRET_KEY = !#@FDEWREWR&*( |
|
; Auto-login remember days |
|
LOGIN_REMEMBER_DAYS = 7 |
|
COOKIE_USERNAME = gogs_awesome |
|
COOKIE_REMEMBER_NAME = gogs_incredible |
|
COOKIE_SECURE = false |
|
; Reverse proxy authentication header name of user name |
|
REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER |
|
; Enable to set cookie to indicate user login status |
|
ENABLE_LOGIN_STATUS_COOKIE = false |
|
LOGIN_STATUS_COOKIE_NAME = login_status |
|
|
|
[service] |
|
ACTIVE_CODE_LIVE_MINUTES = 180 |
|
RESET_PASSWD_CODE_LIVE_MINUTES = 180 |
|
; User need to confirm e-mail for registration |
|
REGISTER_EMAIL_CONFIRM = false |
|
; Does not allow register and admin create account only |
|
DISABLE_REGISTRATION = false |
|
; User must sign in to view anything. |
|
REQUIRE_SIGNIN_VIEW = false |
|
; Mail notification |
|
ENABLE_NOTIFY_MAIL = false |
|
; More detail: https://github.com/gogits/gogs/issues/165 |
|
ENABLE_REVERSE_PROXY_AUTHENTICATION = false |
|
ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false |
|
; Enable captcha validation for registration |
|
ENABLE_CAPTCHA = true |
|
|
|
[webhook] |
|
; Types are enabled for users to use, can be "gogs", "slack", "discord", "dingtalk" |
|
TYPES = gogs, slack, discord, dingtalk |
|
; Hook task queue length, increase if webhook shooting starts hanging |
|
QUEUE_LENGTH = 1000 |
|
; Deliver timeout in seconds |
|
DELIVER_TIMEOUT = 15 |
|
; Allow insecure certification |
|
SKIP_TLS_VERIFY = false |
|
; Number of history information in each page |
|
PAGING_NUM = 10 |
|
|
|
[mailer] |
|
ENABLED = false |
|
; Buffer length of channel, keep it as it is if you don't know what it is. |
|
SEND_BUFFER_LEN = 100 |
|
; Prefix prepended to the subject line |
|
SUBJECT_PREFIX = `[%(APP_NAME)s] ` |
|
; Mail server |
|
; Gmail: smtp.gmail.com:587 |
|
; QQ: smtp.qq.com:465 |
|
; Note, if the port ends with "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409. If the server supports STARTTLS it will always be used. |
|
HOST = |
|
; Disable HELO operation when hostname are different. |
|
DISABLE_HELO = |
|
; Custom hostname for HELO operation, default is from system. |
|
HELO_HOSTNAME = |
|
; Do not verify the certificate of the server. Only use this for self-signed certificates |
|
SKIP_VERIFY = |
|
; Use client certificate |
|
USE_CERTIFICATE = false |
|
CERT_FILE = custom/mailer/cert.pem |
|
KEY_FILE = custom/mailer/key.pem |
|
; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format |
|
FROM = |
|
; Mailer user name and password |
|
USER = |
|
PASSWD = |
|
; Use text/plain as format of content |
|
USE_PLAIN_TEXT = false |
|
|
|
[cache] |
|
; Either "memory", "redis", or "memcache", default is "memory" |
|
ADAPTER = memory |
|
; For "memory" only, GC interval in seconds, default is 60 |
|
INTERVAL = 60 |
|
; For "redis" and "memcache", connection host address |
|
; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180 |
|
; memcache: `127.0.0.1:11211` |
|
HOST = |
|
|
|
[session] |
|
; Either "memory", "file", or "redis", default is "memory" |
|
PROVIDER = memory |
|
; Provider config options |
|
; memory: not have any config yet |
|
; file: session file path, e.g. `data/sessions` |
|
; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180 |
|
; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table` |
|
PROVIDER_CONFIG = data/sessions |
|
; Session cookie name |
|
COOKIE_NAME = i_like_gogits |
|
; If you use session in https only, default is false |
|
COOKIE_SECURE = false |
|
; Enable set cookie, default is true |
|
ENABLE_SET_COOKIE = true |
|
; Session GC time interval, default is 3600 |
|
GC_INTERVAL_TIME = 3600 |
|
; Session life time, default is 86400 |
|
SESSION_LIFE_TIME = 86400 |
|
; Cookie name for CSRF |
|
CSRF_COOKIE_NAME = _csrf |
|
|
|
[picture] |
|
; Path to store user uploaded avatars |
|
AVATAR_UPLOAD_PATH = data/avatars |
|
; Chinese users can choose "duoshuo" |
|
; or a custom avatar source, like: http://cn.gravatar.com/avatar/ |
|
GRAVATAR_SOURCE = gravatar |
|
; This value will be forced to be true in offline mode. |
|
DISABLE_GRAVATAR = false |
|
; Federated avatar lookup uses DNS to discover avatar associated |
|
; with emails, see https://www.libravatar.org |
|
; This value will be forced to be false in offline mode or Gravatar is disbaled. |
|
ENABLE_FEDERATED_AVATAR = false |
|
|
|
; Attachment settings for issues |
|
[attachment] |
|
; Whether attachments are enabled. Defaults to `true` |
|
ENABLED = true |
|
; Path for attachments. Defaults to `data/attachments` |
|
PATH = data/attachments |
|
; One or more allowed types, e.g. image/jpeg|image/png |
|
ALLOWED_TYPES = image/jpeg|image/png |
|
; Max size of each file. Defaults to 4MB |
|
MAX_SIZE = 4 |
|
; Max number of files per upload. Defaults to 5 |
|
MAX_FILES = 5 |
|
|
|
[time] |
|
; Specifies the format for fully outputed dates. Defaults to RFC1123 |
|
; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano |
|
; For more information about the format see http://golang.org/pkg/time/#pkg-constants |
|
FORMAT = |
|
|
|
; General settings of loggers |
|
[log] |
|
ROOT_PATH = |
|
; Can be "console" and "file", default is "console" |
|
; Use comma to separate multiple modes, e.g. "console, file" |
|
MODE = console |
|
; Buffer length of channel, keep it as it is if you don't know what it is. |
|
BUFFER_LEN = 100 |
|
; Either "Trace", "Info", "Warn", "Error", "Fatal", default is "Trace" |
|
LEVEL = Trace |
|
|
|
; For "console" mode only |
|
[log.console] |
|
; leave empty to inherit |
|
LEVEL = |
|
|
|
; For "file" mode only |
|
[log.file] |
|
; leave empty to inherit |
|
LEVEL = |
|
; This enables automated log rotate (switch of following options) |
|
LOG_ROTATE = true |
|
; Segment log daily |
|
DAILY_ROTATE = true |
|
; Max size shift of single file, default is 28 means 1 << 28, 256MB |
|
MAX_SIZE_SHIFT = 28 |
|
; Max line number of single file |
|
MAX_LINES = 1000000 |
|
; Expired days of log file (delete after max days) |
|
MAX_DAYS = 7 |
|
|
|
; For "slack" mode only |
|
[log.slack] |
|
; leave empty to inherit |
|
LEVEL = |
|
; Webhook URL |
|
URL = |
|
|
|
[log.xorm] |
|
; Enable file rotation |
|
ROTATE = true |
|
; Rotate every day |
|
ROTATE_DAILY = true |
|
; Rotate once file size excesses x MB |
|
MAX_SIZE = 100 |
|
; Maximum days to keep logger files |
|
MAX_DAYS = 3 |
|
|
|
[cron] |
|
; Enable running cron tasks periodically. |
|
ENABLED = true |
|
; Run cron tasks when Gogs starts. |
|
RUN_AT_START = false |
|
|
|
; Update mirrors |
|
[cron.update_mirrors] |
|
SCHEDULE = @every 10m |
|
|
|
; Repository health check |
|
[cron.repo_health_check] |
|
SCHEDULE = @every 24h |
|
TIMEOUT = 60s |
|
; Arguments for command 'git fsck', e.g. "--unreachable --tags" |
|
; see more on http://git-scm.com/docs/git-fsck/1.7.5 |
|
ARGS = |
|
|
|
; Check repository statistics |
|
[cron.check_repo_stats] |
|
RUN_AT_START = true |
|
SCHEDULE = @every 24h |
|
|
|
; Cleanup repository archives |
|
[cron.repo_archive_cleanup] |
|
RUN_AT_START = false |
|
SCHEDULE = @every 24h |
|
; Time duration to check if archive should be cleaned |
|
OLDER_THAN = 24h |
|
|
|
[git] |
|
; Disables highlight of added and removed changes |
|
DISABLE_DIFF_HIGHLIGHT = false |
|
; Max number of lines allowed of a single file in diff view |
|
MAX_GIT_DIFF_LINES = 1000 |
|
; Max number of characters of a line allowed in diff view |
|
MAX_GIT_DIFF_LINE_CHARACTERS = 500 |
|
; Max number of files shown in diff view |
|
MAX_GIT_DIFF_FILES = 100 |
|
; Arguments for command 'git gc', e.g. "--aggressive --auto" |
|
; see more on http://git-scm.com/docs/git-gc/1.7.5 |
|
GC_ARGS = |
|
|
|
; Operation timeout in seconds |
|
[git.timeout] |
|
MIGRATE = 600 |
|
MIRROR = 300 |
|
CLONE = 300 |
|
PULL = 300 |
|
GC = 60 |
|
|
|
[mirror] |
|
; Default interval in hours between each check |
|
DEFAULT_INTERVAL = 8 |
|
|
|
[api] |
|
; Max number of items will response in a page |
|
MAX_RESPONSE_ITEMS = 50 |
|
|
|
[ui] |
|
; Number of repositories that are showed in one explore page |
|
EXPLORE_PAGING_NUM = 20 |
|
; Number of issues that are showed in one page |
|
ISSUE_PAGING_NUM = 10 |
|
; Number of maximum commits showed in one activity feed |
|
FEED_MAX_COMMIT_NUM = 5 |
|
; Value of "theme-color" meta tag, used by Android >= 5.0 |
|
; An invalid color like "none" or "disable" will have the default style |
|
; More info: https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android |
|
THEME_COLOR_META_TAG = `#ff5343` |
|
; Max size in bytes of files to be displayed (default is 8MB) |
|
MAX_DISPLAY_FILE_SIZE = 8388608 |
|
|
|
[ui.admin] |
|
; Number of users that are showed in one page |
|
USER_PAGING_NUM = 50 |
|
; Number of repos that are showed in one page |
|
REPO_PAGING_NUM = 50 |
|
; Number of notices that are showed in one page |
|
NOTICE_PAGING_NUM = 25 |
|
; Number of organization that are showed in one page |
|
ORG_PAGING_NUM = 50 |
|
|
|
[ui.user] |
|
; Number of repos that are showed in one page |
|
REPO_PAGING_NUM = 15 |
|
; Number of news feeds that are showed in one page |
|
NEWS_FEED_PAGING_NUM = 20 |
|
; Number of commits that are showed in one page |
|
COMMITS_PAGING_NUM = 30 |
|
|
|
[i18n] |
|
LANGS = en-US,zh-CN,zh-HK,zh-TW,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT,fi-FI,tr-TR,cs-CZ,sr-SP,sv-SE,ko-KR,gl-ES,uk-UA,en-GB,hu-HU,sk-SK,id-ID,fa-IR,vi-VN |
|
NAMES = English,简体中文,繁體中文(香港),繁體中文(臺灣),Deutsch,français,Nederlands,latviešu,русский,日本語,español,português do Brasil,polski,български,italiano,suomi,Türkçe,čeština,српски,svenska,한국어,galego,українська,English (United Kingdom),Magyar,Slovenčina,Indonesian,Persian,Vietnamese |
|
|
|
; Used for datetimepicker |
|
[i18n.datelang] |
|
en-US = en |
|
zh-CN = zh |
|
zh-HK = zh-TW |
|
zh-TW = zh-TW |
|
de-DE = de |
|
fr-FR = fr |
|
nl-NL = nl |
|
lv-LV = lv |
|
ru-RU = ru |
|
ja-JP = ja |
|
es-ES = es |
|
pt-BR = pt-BR |
|
pl-PL = pl |
|
bg-BG = bg |
|
it-IT = it |
|
fi-FI = fi |
|
tr-TR = tr |
|
cs-CZ = cs-CZ |
|
sr-SP = sr |
|
sv-SE = sv |
|
ko-KR = ko |
|
gl-ES = gl |
|
uk-UA = uk |
|
en-GB = en-GB |
|
hu-HU = hu |
|
sk-SK = sk |
|
id-ID = id |
|
fa-IR = fa |
|
vi-VN = vi |
|
|
|
; Extension mapping to highlight class |
|
; e.g. .toml=ini |
|
[highlight.mapping] |
|
|
|
[other] |
|
SHOW_FOOTER_BRANDING = false |
|
; Show version information about Gogs and Go in the footer |
|
SHOW_FOOTER_VERSION = true |
|
; Show time of template execution in the footer |
|
SHOW_FOOTER_TEMPLATE_LOAD_TIME = true
|
|
|