app.ini 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432
  1. # NEVER EVER MODIFY THIS FILE
  2. # PLEASE MAKE CHANGES ON CORRESPONDING CUSTOM CONFIG FILE
  3. ; App name that shows on every page title
  4. APP_NAME = Gogs: Go Git Service
  5. ; Change it if you run locally
  6. RUN_USER = git
  7. ; Either "dev", "prod" or "test", default is "dev"
  8. RUN_MODE = dev
  9. [repository]
  10. ROOT =
  11. SCRIPT_TYPE = bash
  12. ; Default ANSI charset
  13. ANSI_CHARSET =
  14. ; Force every new repository to be private
  15. FORCE_PRIVATE = false
  16. ; Global maximum creation limit of repository per user, -1 means no limit
  17. MAX_CREATION_LIMIT = -1
  18. ; Mirror sync queue length, increase if mirror syncing starts hanging
  19. MIRROR_QUEUE_LENGTH = 1000
  20. ; Patch test queue length, increase if pull request patch testing starts hanging
  21. PULL_REQUEST_QUEUE_LENGTH = 1000
  22. ; Preferred Licenses to place at the top of the List
  23. ; Name must match file name in conf/license or custom/conf/license
  24. PREFERRED_LICENSES = Apache License 2.0,MIT License
  25. [repository.editor]
  26. ; List of file extensions that should have line wraps in the CodeMirror editor
  27. ; Separate extensions with a comma. To line wrap files w/o extension, just put a comma
  28. LINE_WRAP_EXTENSIONS = .txt,.md,.markdown,.mdown,.mkd,
  29. ; Valid file modes that have a preview API associated with them, such as api/v1/markdown
  30. ; Separate values by commas. Preview tab in edit mode won't show if the file extension doesn't match
  31. PREVIEWABLE_FILE_MODES = markdown
  32. [repository.upload]
  33. ; Whether repository file uploads are enabled. Defaults to `true`
  34. ENABLED = true
  35. ; Path for uploads. Defaults to `data/tmp/uploads` (tmp gets deleted on gogs restart)
  36. TEMP_PATH = data/tmp/uploads
  37. ; One or more allowed types, e.g. image/jpeg|image/png. Nothing means any file type
  38. ALLOWED_TYPES =
  39. ; Max size of each file in MB. Defaults to 3MB
  40. FILE_MAX_SIZE = 3
  41. ; Max number of files per upload. Defaults to 5
  42. MAX_FILES = 5
  43. [ui]
  44. ; Number of repositories that are showed in one explore page
  45. EXPLORE_PAGING_NUM = 20
  46. ; Number of issues that are showed in one page
  47. ISSUE_PAGING_NUM = 10
  48. ; Number of maximum commits showed in one activity feed
  49. FEED_MAX_COMMIT_NUM = 5
  50. ; Value of `theme-color` meta tag, used by Android >= 5.0
  51. ; An invalid color like "none" or "disable" will have the default style
  52. ; More info: https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android
  53. THEME_COLOR_META_TAG = `#ff5343`
  54. ; Max size of files to be displayed (defaults is 8MiB)
  55. MAX_DISPLAY_FILE_SIZE = 8388608
  56. [ui.admin]
  57. ; Number of users that are showed in one page
  58. USER_PAGING_NUM = 50
  59. ; Number of repos that are showed in one page
  60. REPO_PAGING_NUM = 50
  61. ; Number of notices that are showed in one page
  62. NOTICE_PAGING_NUM = 25
  63. ; Number of organization that are showed in one page
  64. ORG_PAGING_NUM = 50
  65. [ui.user]
  66. ; Number of repos that are showed in one page
  67. REPO_PAGING_NUM = 15
  68. [markdown]
  69. ; Enable hard line break extension
  70. ENABLE_HARD_LINE_BREAK = false
  71. ; List of custom URL-Schemes that are allowed as links when rendering Markdown
  72. ; for example git,magnet
  73. CUSTOM_URL_SCHEMES =
  74. ; List of file extensions that should be rendered/edited as Markdown
  75. ; Separate extensions with a comma. To render files w/o extension as markdown, just put a comma
  76. FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd
  77. [server]
  78. PROTOCOL = http
  79. DOMAIN = localhost
  80. ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/
  81. HTTP_ADDR = 0.0.0.0
  82. HTTP_PORT = 3000
  83. ; Permission for unix socket
  84. UNIX_SOCKET_PERMISSION = 666
  85. ; Local (DMZ) URL for Gogs workers (such as SSH update) accessing web service.
  86. ; In most cases you do not need to change the default value.
  87. ; Alter it only if your SSH server node is not the same as HTTP node.
  88. LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/
  89. ; Disable SSH feature when not available
  90. DISABLE_SSH = false
  91. ; Whether use builtin SSH server or not.
  92. START_SSH_SERVER = false
  93. ; Domain name to be exposed in clone URL
  94. SSH_DOMAIN = %(DOMAIN)s
  95. ; Port number to be exposed in clone URL
  96. SSH_PORT = 22
  97. ; Port number builtin SSH server listens on
  98. SSH_LISTEN_PORT = %(SSH_PORT)s
  99. ; Root path of SSH directory, default is '~/.ssh', but you have to use '/home/git/.ssh'.
  100. SSH_ROOT_PATH =
  101. ; Directory to create temporary files when test publick key using ssh-keygen,
  102. ; default is system temporary directory.
  103. SSH_KEY_TEST_PATH =
  104. ; Path to ssh-keygen, default is 'ssh-keygen' and let shell find out which one to call.
  105. SSH_KEYGEN_PATH = ssh-keygen
  106. ; Indicate whether to check minimum key size with corresponding type
  107. MINIMUM_KEY_SIZE_CHECK = false
  108. ; Disable CDN even in "prod" mode
  109. OFFLINE_MODE = false
  110. DISABLE_ROUTER_LOG = false
  111. ; Generate steps:
  112. ; $ ./gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com
  113. ;
  114. ; Or from a .pfx file exported from the Windows certificate store (do
  115. ; not forget to export the private key):
  116. ; $ openssl pkcs12 -in cert.pfx -out cert.pem -nokeys
  117. ; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes
  118. CERT_FILE = custom/https/cert.pem
  119. KEY_FILE = custom/https/key.pem
  120. ; Upper level of template and static file path
  121. ; default is the path where Gogs is executed
  122. STATIC_ROOT_PATH =
  123. ; Default path for App data
  124. APP_DATA_PATH = data
  125. ; Application level GZIP support
  126. ENABLE_GZIP = false
  127. ; Landing page for non-logged users, can be "home" or "explore"
  128. LANDING_PAGE = home
  129. ; Define allowed algorithms and their minimum key length (use -1 to disable a type)
  130. [ssh.minimum_key_sizes]
  131. ED25519 = 256
  132. ECDSA = 256
  133. RSA = 2048
  134. DSA = 1024
  135. [database]
  136. ; Either "mysql", "postgres" or "sqlite3", it's your choice
  137. DB_TYPE = mysql
  138. HOST = 127.0.0.1:3306
  139. NAME = gogs
  140. USER = root
  141. PASSWD =
  142. ; For "postgres" only, either "disable", "require" or "verify-full"
  143. SSL_MODE = disable
  144. ; For "sqlite3" and "tidb", use absolute path when you start as service
  145. PATH = data/gogs.db
  146. [admin]
  147. [security]
  148. INSTALL_LOCK = false
  149. ; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
  150. SECRET_KEY = !#@FDEWREWR&*(
  151. ; Auto-login remember days
  152. LOGIN_REMEMBER_DAYS = 7
  153. COOKIE_USERNAME = gogs_awesome
  154. COOKIE_REMEMBER_NAME = gogs_incredible
  155. ; Reverse proxy authentication header name of user name
  156. REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
  157. [service]
  158. ACTIVE_CODE_LIVE_MINUTES = 180
  159. RESET_PASSWD_CODE_LIVE_MINUTES = 180
  160. ; User need to confirm e-mail for registration
  161. REGISTER_EMAIL_CONFIRM = false
  162. ; Does not allow register and admin create account only
  163. DISABLE_REGISTRATION = false
  164. ; User must sign in to view anything.
  165. REQUIRE_SIGNIN_VIEW = false
  166. ; Mail notification
  167. ENABLE_NOTIFY_MAIL = false
  168. ; More detail: https://github.com/gogits/gogs/issues/165
  169. ENABLE_REVERSE_PROXY_AUTHENTICATION = false
  170. ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
  171. ; Enable captcha validation for registration
  172. ENABLE_CAPTCHA = true
  173. [webhook]
  174. ; Hook task queue length, increase if webhook shooting starts hanging
  175. QUEUE_LENGTH = 1000
  176. ; Deliver timeout in seconds
  177. DELIVER_TIMEOUT = 5
  178. ; Allow insecure certification
  179. SKIP_TLS_VERIFY = false
  180. ; Number of history information in each page
  181. PAGING_NUM = 10
  182. [mailer]
  183. ENABLED = false
  184. ; Buffer length of channel, keep it as it is if you don't know what it is.
  185. SEND_BUFFER_LEN = 100
  186. ; Name displayed in mail title
  187. SUBJECT = %(APP_NAME)s
  188. ; Mail server
  189. ; Gmail: smtp.gmail.com:587
  190. ; QQ: smtp.qq.com:465
  191. ; 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.
  192. HOST =
  193. ; Disable HELO operation when hostname are different.
  194. DISABLE_HELO =
  195. ; Custom hostname for HELO operation, default is from system.
  196. HELO_HOSTNAME =
  197. ; Do not verify the certificate of the server. Only use this for self-signed certificates
  198. SKIP_VERIFY =
  199. ; Use client certificate
  200. USE_CERTIFICATE = false
  201. CERT_FILE = custom/mailer/cert.pem
  202. KEY_FILE = custom/mailer/key.pem
  203. ; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format
  204. FROM =
  205. ; Mailer user name and password
  206. USER =
  207. PASSWD =
  208. ; Use text/html as alternative format of content
  209. ENABLE_HTML_ALTERNATIVE = false
  210. [cache]
  211. ; Either "memory", "redis", or "memcache", default is "memory"
  212. ADAPTER = memory
  213. ; For "memory" only, GC interval in seconds, default is 60
  214. INTERVAL = 60
  215. ; For "redis" and "memcache", connection host address
  216. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  217. ; memcache: `127.0.0.1:11211`
  218. HOST =
  219. [session]
  220. ; Either "memory", "file", or "redis", default is "memory"
  221. PROVIDER = memory
  222. ; Provider config options
  223. ; memory: not have any config yet
  224. ; file: session file path, e.g. `data/sessions`
  225. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  226. ; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
  227. PROVIDER_CONFIG = data/sessions
  228. ; Session cookie name
  229. COOKIE_NAME = i_like_gogits
  230. ; If you use session in https only, default is false
  231. COOKIE_SECURE = false
  232. ; Enable set cookie, default is true
  233. ENABLE_SET_COOKIE = true
  234. ; Session GC time interval, default is 86400
  235. GC_INTERVAL_TIME = 86400
  236. ; Session life time, default is 86400
  237. SESSION_LIFE_TIME = 86400
  238. [picture]
  239. AVATAR_UPLOAD_PATH = data/avatars
  240. ; Chinese users can choose "duoshuo"
  241. ; or a custom avatar source, like: http://cn.gravatar.com/avatar/
  242. GRAVATAR_SOURCE = gravatar
  243. ; This value will be forced to be true in offline mode.
  244. DISABLE_GRAVATAR = false
  245. ; Federated avatar lookup uses DNS to discover avatar associated
  246. ; with emails, see https://www.libravatar.org
  247. ; This value will be forced to be false in offline mode or Gravatar is disbaled.
  248. ENABLE_FEDERATED_AVATAR = false
  249. [attachment]
  250. ; Whether attachments are enabled. Defaults to `true`
  251. ENABLE = true
  252. ; Path for attachments. Defaults to `data/attachments`
  253. PATH = data/attachments
  254. ; One or more allowed types, e.g. image/jpeg|image/png
  255. ALLOWED_TYPES = image/jpeg|image/png
  256. ; Max size of each file. Defaults to 32MB
  257. MAX_SIZE = 4
  258. ; Max number of files per upload. Defaults to 10
  259. MAX_FILES = 5
  260. [time]
  261. ; Specifies the format for fully outputed dates. Defaults to RFC1123
  262. ; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano
  263. ; For more information about the format see http://golang.org/pkg/time/#pkg-constants
  264. FORMAT =
  265. [log]
  266. ROOT_PATH =
  267. ; Either "console", "file", "conn", "smtp" or "database", default is "console"
  268. ; Use comma to separate multiple modes, e.g. "console, file"
  269. MODE = console
  270. ; Buffer length of channel, keep it as it is if you don't know what it is.
  271. BUFFER_LEN = 10000
  272. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
  273. LEVEL = Trace
  274. ; For "console" mode only
  275. [log.console]
  276. LEVEL =
  277. ; For "file" mode only
  278. [log.file]
  279. LEVEL =
  280. ; This enables automated log rotate(switch of following options), default is true
  281. LOG_ROTATE = true
  282. ; Max line number of single file, default is 1000000
  283. MAX_LINES = 1000000
  284. ; Max size shift of single file, default is 28 means 1 << 28, 256MB
  285. MAX_SIZE_SHIFT = 28
  286. ; Segment log daily, default is true
  287. DAILY_ROTATE = true
  288. ; Expired days of log file(delete after max days), default is 7
  289. MAX_DAYS = 7
  290. ; For "conn" mode only
  291. [log.conn]
  292. LEVEL =
  293. ; Reconnect host for every single message, default is false
  294. RECONNECT_ON_MSG = false
  295. ; Try to reconnect when connection is lost, default is false
  296. RECONNECT = false
  297. ; Either "tcp", "unix" or "udp", default is "tcp"
  298. PROTOCOL = tcp
  299. ; Host address
  300. ADDR =
  301. ; For "smtp" mode only
  302. [log.smtp]
  303. LEVEL =
  304. ; Name displayed in mail title, default is "Diagnostic message from server"
  305. SUBJECT = Diagnostic message from server
  306. ; Mail server
  307. HOST =
  308. ; Mailer user name and password
  309. USER =
  310. PASSWD =
  311. ; Receivers, can be one or more, e.g. ["1@example.com","2@example.com"]
  312. RECEIVERS =
  313. ; For "database" mode only
  314. [log.database]
  315. LEVEL =
  316. ; Either "mysql" or "postgres"
  317. DRIVER =
  318. ; Based on xorm, e.g.: root:root@localhost/gogs?charset=utf8
  319. CONN =
  320. [cron]
  321. ; Enable running cron tasks periodically.
  322. ENABLED = true
  323. ; Run cron tasks when Gogs starts.
  324. RUN_AT_START = false
  325. ; Update mirrors
  326. [cron.update_mirrors]
  327. SCHEDULE = @every 10m
  328. ; Repository health check
  329. [cron.repo_health_check]
  330. SCHEDULE = @every 24h
  331. TIMEOUT = 60s
  332. ; Arguments for command 'git fsck', e.g. "--unreachable --tags"
  333. ; see more on http://git-scm.com/docs/git-fsck/1.7.5
  334. ARGS =
  335. ; Check repository statistics
  336. [cron.check_repo_stats]
  337. RUN_AT_START = true
  338. SCHEDULE = @every 24h
  339. [git]
  340. ; Disables highlight of added and removed changes
  341. DISABLE_DIFF_HIGHLIGHT = false
  342. ; Max number of lines allowed of a single file in diff view
  343. MAX_GIT_DIFF_LINES = 1000
  344. ; Max number of characters of a line allowed in diff view
  345. MAX_GIT_DIFF_LINE_CHARACTERS = 500
  346. ; Max number of files shown in diff view
  347. MAX_GIT_DIFF_FILES = 100
  348. ; Arguments for command 'git gc', e.g. "--aggressive --auto"
  349. ; see more on http://git-scm.com/docs/git-gc/1.7.5
  350. GC_ARGS =
  351. ; Operation timeout in seconds
  352. [git.timeout]
  353. MIGRATE = 600
  354. MIRROR = 300
  355. CLONE = 300
  356. PULL = 300
  357. GC = 60
  358. [mirror]
  359. ; Default interval in hours between each check
  360. DEFAULT_INTERVAL = 8
  361. [api]
  362. ; Max number of items will response in a page
  363. MAX_RESPONSE_ITEMS = 50
  364. [i18n]
  365. 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
  366. NAMES = English,简体中文,繁體中文(香港),繁體中文(台湾),Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano,Suomalainen,Türkçe,čeština
  367. ; Used for datetimepicker
  368. [i18n.datelang]
  369. en-US = en
  370. zh-CN = zh
  371. zh-HK = zh-TW
  372. zh-TW = zh-TW
  373. de-DE = de
  374. fr-FR = fr
  375. nl-NL = nl
  376. lv-LV = lv
  377. ru-RU = ru
  378. ja-JP = ja
  379. es-ES = es
  380. pt-BR = pt-BR
  381. pl-PL = pl
  382. bg-BG = bg
  383. it-IT = it
  384. fi-FI = fi
  385. tr-TR = tr
  386. cs-CZ = cs-CZ
  387. ; Extension mapping to highlight class
  388. ; e.g. .toml=ini
  389. [highlight.mapping]
  390. [other]
  391. SHOW_FOOTER_BRANDING = false
  392. ; Show version information about gogs and go in the footer
  393. SHOW_FOOTER_VERSION = true