#RISOTTO: https://codeberg.org/forgejo/forgejo/raw/branch/forgejo/custom/conf/app.example.ini %compiler-settings commentStartToken = ; %end compiler-settings ; This file lists the default values used by Gitea ;; Copy required sections to your own app.ini (default is custom/conf/app.ini) ;; and modify as needed. ;; Do not copy the whole file as-is, as it contains some invalid sections for illustrative purposes. ;; If you don't know what a setting is you should not set it. ;; ;; see https://docs.gitea.io/en-us/config-cheat-sheet/ for additional documentation. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Default Configuration (non-`app.ini` configuration) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; These values are environment-dependent but form the basis of a lot of values. They will be ;; reported as part of the default configuration when running `gitea --help` or on start-up. The order they are emitted there is slightly different but we will list them here in the order they are set-up. ;; ;; - _`AppPath`_: This is the absolute path of the running gitea binary. ;; - _`AppWorkPath`_: This refers to "working path" of the `gitea` binary. It is determined by using the first set thing in the following hierarchy: ;; - The `--work-path` flag passed to the binary ;; - The environment variable `$GITEA_WORK_DIR` ;; - A built-in value set at build time (see building from source) ;; - Otherwise it defaults to the directory of the _`AppPath`_ ;; - If any of the above are relative paths then they are made absolute against the ;; the directory of the _`AppPath`_ ;; - _`CustomPath`_: This is the base directory for custom templates and other options. ;; It is determined by using the first set thing in the following hierarchy: ;; - The `--custom-path` flag passed to the binary ;; - The environment variable `$GITEA_CUSTOM` ;; - A built-in value set at build time (see building from source) ;; - Otherwise it defaults to _`AppWorkPath`_`/custom` ;; - If any of the above are relative paths then they are made absolute against the ;; the directory of the _`AppWorkPath`_ ;; - _`CustomConf`_: This is the path to the `app.ini` file. ;; - The `--config` flag passed to the binary ;; - A built-in value set at build time (see building from source) ;; - Otherwise it defaults to _`CustomPath`_`/conf/app.ini` ;; - If any of the above are relative paths then they are made absolute against the ;; the directory of the _`CustomPath`_ ;; ;; In addition there is _`StaticRootPath`_ which can be set as a built-in at build time, but will otherwise default to _`AppWorkPath`_ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; General Settings ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; App name that shows in every page title ;>GNUNUX ;APP_NAME = ; Gitea: Git with a cup of tea APP_NAME = %%forgejo_title ;GNUNUX ;RUN_MODE = ; prod RUN_MODE = prod ;GNUNUX PROTOCOL = https ;GNUNUX DOMAIN = %%revprox_client_external_domainnames[0] ;GNUNUX ROOT_URL = https://%%revprox_client_external_domainnames[0]%%revprox_client_external_domainnames[0]revprox_client_location ;GNUNUX HTTP_PORT = 3000 ;GNUNUX LOCAL_ROOT_URL = https://%%domain_name_eth0:3000/ ;GNUNUX DISABLE_SSH = false ;GNUNUX START_SSH_SERVER = true ;GNUNUX ;BUILTIN_SSH_SERVER_USER = %(RUN_USER)s BUILTIN_SSH_SERVER_USER = "git" ;GNUNUX SSH_DOMAIN = %%revprox_client_external_domainnames[0] ;GNUNUX SSH_PORT = 2222 ;GNUNUX SSH_LISTEN_PORT = 2222 ; ". or "ssh- , ssh- ". ;; For more information see "TrustedUserCAKeys" in the sshd config manpages. ;SSH_TRUSTED_USER_CA_KEYS = ;; Absolute path of the `TrustedUserCaKeys` file gitea will manage. ;; Default this `RUN_USER`/.ssh/gitea-trusted-user-ca-keys.pem ;; If you're running your own ssh server and you want to use the gitea managed file you'll also need to modify your ;; sshd_config to point to this file. The official docker image will automatically work without further configuration. ;SSH_TRUSTED_USER_CA_KEYS_FILENAME = ;; ;; Enable exposure of SSH clone URL to anonymous visitors, default is false ;SSH_EXPOSE_ANONYMOUS = false ;; ;; Timeout for any write to ssh connections. (Set to -1 to disable all timeouts.) ;; Will default to the PER_WRITE_TIMEOUT. ;SSH_PER_WRITE_TIMEOUT = 30s ;; ;; Timeout per Kb written to ssh connections. ;; Will default to the PER_WRITE_PER_KB_TIMEOUT. ;SSH_PER_WRITE_PER_KB_TIMEOUT = 30s ;; ;; Indicate whether to check minimum key size with corresponding type ;MINIMUM_KEY_SIZE_CHECK = false ;; ;; Disable CDN even in "prod" mode ;OFFLINE_MODE = false ;>GNUNUX OFFLINE_MODE = true ;GNUNUX CERT_FILE = %%revprox_client_cert_file KEY_FILE = %%revprox_client_key_file ;_ ;ENABLE_PPROF = false ;; ;; PPROF_DATA_PATH, use an absolute path when you start gitea as service ;PPROF_DATA_PATH = data/tmp/pprof ; Path is relative to _`AppWorkPath`_ ;; ;; Landing page, can be "home", "explore", "organizations", "login", or any URL such as "/org/repo" or even "https://anotherwebsite.com" ;; The "login" choice is not a security measure but just a UI flow change, use REQUIRE_SIGNIN_VIEW to force users to log in. ;LANDING_PAGE = home ;; ;; Enables git-lfs support. true or false, default is false. ;LFS_START_SERVER = false ;>GNUNUX LFS_START_SERVER = true ;GNUNUX ;LFS_JWT_SECRET = LFS_JWT_SECRET = %%forgejo_lfs_jwt_secret ;GNUNUX ;DB_TYPE = mysql ;HOST = 127.0.0.1:3306 ; can use socket e.g. /var/run/mysqld/mysqld.sock ;NAME = gitea ;USER = root ; 5.6. Gitea is unable to check this. ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Postgres Configuration ;; ;DB_TYPE = postgres ;HOST = 127.0.0.1:5432 ; can use socket e.g. /var/run/postgresql/ ;NAME = gitea ;USER = root ;PASSWD = ;SCHEMA = ;SSL_MODE=disable ;either "disable" (default), "require", or "verify-full" ;>GNUNUX DB_TYPE = postgres HOST = %%pg_client_server_domainname:5432 NAME = %%pg_client_database USER = %%pg_client_username PASSWD = %%pg_client_password SCHEMA = SSL_MODE = verify-full CHARSET = utf8 ;GNUNUX ;INSTALL_LOCK = false INSTALL_LOCK = true ;GNUNUX ;SECRET_KEY = SECRET_KEY = %%forgejo_secret_key ;GNUNUX ;INTERNAL_TOKEN= INTERNAL_TOKEN = %%forgejo_internal_token ;GNUNUX PASSWORD_HASH_ALGO = pbkdf2 ;GNUNUX ROOT_PATH = /srv/forgejo/lib/log ;.router] LEVEL ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Access Logger (Creates log in NCSA common log format) ;; ;ENABLE_ACCESS_LOG = false ;; ;; Set the log "modes" for the access log (if file is set the log file will default to access.log) ;ACCESS = file ;; ;; Sets the template used to create the access log. ;ACCESS_LOG_TEMPLATE = {{.Ctx.RemoteAddr}} - {{.Identity}} {{.Start.Format "[02/Jan/2006:15:04:05 -0700]" }} "{{.Ctx.Req.Method}} {{.Ctx.Req.URL.RequestURI}} {{.Ctx.Req.Proto}}" {{.ResponseWriter.Status}} {{.ResponseWriter.Size}} "{{.Ctx.Req.Referer}}\" \"{{.Ctx.Req.UserAgent}}" ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; SSH log (Creates log from ssh git request) ;; ;ENABLE_SSH_LOG = false ;; ;; Other Settings ;; ;; Print Stacktraces with logs. (Rarely helpful.) Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "None" ;STACKTRACE_LEVEL = None ;; ;; Buffer length of the channel, keep it as it is if you don't know what it is. ;BUFFER_LEN = 10000 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Creating specific log configuration ;; ;; You can set specific configuration for individual modes and subloggers ;; ;; Configuration available to all log modes/subloggers ;LEVEL= ;FLAGS = stdflags ;EXPRESSION = ;PREFIX = ;COLORIZE = false ;; ;; For "console" mode only ;STDERR = false ;; ;; For "file" mode only ;LEVEL = ;; Set the file_name for the logger. If this is a relative path this ;; will be relative to ROOT_PATH ;FILE_NAME = ;; This enables automated log rotate(switch of following options), default is true ;LOG_ROTATE = true ;; Max size shift of a single file, default is 28 means 1 << 28, 256MB ;MAX_SIZE_SHIFT = 28 ;; Segment log daily, default is true ;DAILY_ROTATE = true ;; delete the log file after n days, default is 7 ;MAX_DAYS = 7 ;; compress logs with gzip ;COMPRESS = true ;; compression level see godoc for compress/gzip ;COMPRESSION_LEVEL = -1 ; ;; For "conn" mode only ;LEVEL = ;; Reconnect host for every single message, default is false ;RECONNECT_ON_MSG = false ;; Try to reconnect when connection is lost, default is false ;RECONNECT = false ;; Either "tcp", "unix" or "udp", default is "tcp" ;PROTOCOL = tcp ;; Host address ;ADDR = ; ;; For "smtp" mode only ;LEVEL = ;; Name displayed in mail title, default is "Diagnostic message from server" ;SUBJECT = Diagnostic message from server ;; Mail server ;HOST = ;; Mailer user name and password ;USER = ;; Use PASSWD = `your password` for quoting if you use special characters in the password. ;PASSWD = ;; Receivers, can be one or more, e.g. 1@example.com,2@example.com ;RECEIVERS = ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;GNUNUX [git] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; The path of git executable. If empty, Gitea searches through the PATH environment. ;PATH = ;; ;; The HOME directory for Git ;HOME_PATH = %(APP_DATA_PATH)s/home ;; ;; Disables highlight of added and removed changes ;DISABLE_DIFF_HIGHLIGHT = false ;; ;; Max number of lines allowed in a single file in diff view ;MAX_GIT_DIFF_LINES = 1000 ;; ;; Max number of allowed characters in a line in diff view ;MAX_GIT_DIFF_LINE_CHARACTERS = 5000 ;; ;; Max number of files shown in diff view ;MAX_GIT_DIFF_FILES = 100 ;; ;; Set the default commits range size ;COMMITS_RANGE_SIZE = 50 ;; ;; Set the default branches range size ;BRANCHES_RANGE_SIZE = 20 ;; ;; Arguments for command 'git gc', e.g. "--aggressive --auto" ;; see more on http://git-scm.com/docs/git-gc/ ;GC_ARGS = ;; ;; If use git wire protocol version 2 when git version >= 2.18, default is true, set to false when you always want git wire protocol version 1 ;; To enable this for Git over SSH when using a OpenSSH server, add `AcceptEnv GIT_PROTOCOL` to your sshd_config file. ;ENABLE_AUTO_GIT_WIRE_PROTOCOL = true ;; ;; Respond to pushes to a non-default branch with a URL for creating a Pull Request (if the repository has them enabled) ;PULL_REQUEST_PUSH_MESSAGE = true ;; ;; (Go-Git only) Don't cache objects greater than this in memory. (Set to 0 to disable.) ;LARGE_OBJECT_THRESHOLD = 1048576 ;; Set to true to forcibly set core.protectNTFS=false ;DISABLE_CORE_PROTECT_NTFS=false ;; Disable the usage of using partial clones for git. ;DISABLE_PARTIAL_CLONE = false ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; [service] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Time limit to confirm account/email registration ;ACTIVE_CODE_LIVE_MINUTES = 180 ;; ;; Time limit to perform the reset of a forgotten password ;RESET_PASSWD_CODE_LIVE_MINUTES = 180 ;; ;; Whether a new user needs to confirm their email when registering. ;REGISTER_EMAIL_CONFIRM = false ;>GNUNUX REGISTER_EMAIL_CONFIRM = false ;GNUNUX DISABLE_REGISTRATION = true ;GNUNUX ALLOW_ONLY_EXTERNAL_REGISTRATION = false ;GNUNUX REQUIRE_SIGNIN_VIEW = false ;GNUNUX DEFAULT_KEEP_EMAIL_PRIVATE = false ;GNUNUX ENABLE_NOTIFY_MAIL = false ;GNUNUX ENABLE_CAPTCHA = false ;GNUNUX DEFAULT_ALLOW_CREATE_ORGANIZATION = true ;GNUNUX DEFAULT_ENABLE_TIMETRACKING = true ; notation below ;NO_REPLY_ADDRESS = ; noreply. ;>GNUNUX NO_REPLY_ADDRESS = noreply.localhost ;GNUNUX [repository] ;GNUNUX ROOT = /srv/forgejo/lib/data/forgejo-repositories ;GNUNUX DEFAULT_BRANCH = main ;= 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 = `#6cc644` ;; ;; Max size of files to be displayed (default is 8MiB) ;MAX_DISPLAY_FILE_SIZE = 8388608 ;; ;; Whether the email of the user should be shown in the Explore Users page ;SHOW_USER_EMAIL = true ;; ;; Set the default theme for the Gitea install ;DEFAULT_THEME = auto ;; ;; All available themes. Allow users select personalized themes regardless of the value of `DEFAULT_THEME`. ;THEMES = auto,gitea,arc-green ;; ;; All available reactions users can choose on issues/prs and comments. ;; Values can be emoji alias (:smile:) or a unicode emoji. ;; For custom reactions, add a tightly cropped square image to public/img/emoji/reaction_name.png ;REACTIONS = +1, -1, laugh, hooray, confused, heart, rocket, eyes ;; ;; Additional Emojis not defined in the utf8 standard ;; By default we support gitea (:gitea:), to add more copy them to public/img/emoji/emoji_name.png and add it to this config. ;; Dont mistake it for Reactions. ;CUSTOM_EMOJIS = gitea, codeberg, gitlab, git, github, gogs ;; ;; Whether the full name of the users should be shown where possible. If the full name isn't set, the username will be used. ;DEFAULT_SHOW_FULL_NAME = false ;; ;; Whether to search within description at repository search on explore page. ;SEARCH_REPO_DESCRIPTION = true ;; ;; Whether to enable a Service Worker to cache frontend assets ;USE_SERVICE_WORKER = false ;; ;; Whether to only show relevant repos on the explore page when no keyword is specified and default sorting is used. ;; A repo is considered irrelevant if it's a fork or if it has no metadata (no description, no icon, no topic). ;ONLY_SHOW_RELEVANT_REPOS = false ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[ui.admin] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Number of users that are displayed on one page ;USER_PAGING_NUM = 50 ;; ;; Number of repos that are displayed on one page ;REPO_PAGING_NUM = 50 ;; ;; Number of notices that are displayed on one page ;NOTICE_PAGING_NUM = 25 ;; ;; Number of organizations that are displayed on one page ;ORG_PAGING_NUM = 50 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[ui.user] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Number of repos that are displayed on one page ;REPO_PAGING_NUM = 15 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[ui.meta] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;AUTHOR = Gitea - Git with a cup of tea ;DESCRIPTION = Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go ;KEYWORDS = go,git,self-hosted,gitea ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[ui.notification] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Control how often the notification endpoint is polled to update the notification ;; The timeout will increase to MAX_TIMEOUT in TIMEOUT_STEPs if the notification count is unchanged ;; Set MIN_TIMEOUT to -1 to turn off ;MIN_TIMEOUT = 10s ;MAX_TIMEOUT = 60s ;TIMEOUT_STEP = 10s ;; ;; This setting determines how often the db is queried to get the latest notification counts. ;; If the browser client supports EventSource and SharedWorker, a SharedWorker will be used in preference to polling notification. Set to -1 to disable the EventSource ;EVENT_SOURCE_UPDATE_TIME = 10s ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[ui.svg] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Whether to render SVG files as images. If SVG rendering is disabled, SVG files are displayed as text and cannot be embedded in markdown files as images. ;ENABLE_RENDER = true ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[ui.csv] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Maximum allowed file size in bytes to render CSV files as table. (Set to 0 for no limit). ;MAX_FILE_SIZE = 524288 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[markdown] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Render soft line breaks as hard line breaks, which means a single newline character between ;; paragraphs will cause a line break and adding trailing whitespace to paragraphs is not ;; necessary to force a line break. ;; Render soft line breaks as hard line breaks for comments ;ENABLE_HARD_LINE_BREAK_IN_COMMENTS = true ;; ;; Render soft line breaks as hard line breaks for markdown documents ;ENABLE_HARD_LINE_BREAK_IN_DOCUMENTS = false ;; ;; Comma separated list of custom URL-Schemes that are allowed as links when rendering Markdown ;; for example git,magnet,ftp (more at https://en.wikipedia.org/wiki/List_of_URI_schemes) ;; URLs starting with http and https are always displayed, whatever is put in this entry. ;CUSTOM_URL_SCHEMES = ;; ;; List of file extensions that should be rendered/edited as Markdown ;; Separate the extensions with a comma. To render files without any extension as markdown, just put a comma ;FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd ;; ;; Enables math inline and block detection ;ENABLE_MATH = true ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[ssh.minimum_key_sizes] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Define allowed algorithms and their minimum key length (use -1 to disable a type) ;ED25519 = 256 ;ECDSA = 256 ;RSA = 2047 ; we allow 2047 here because an otherwise valid 2048 bit RSA key can be reported as having 2047 bit length ;DSA = -1 ; set to 1024 to switch on ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[indexer] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Issue Indexer settings ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Issue indexer type, currently support: bleve, db or elasticsearch, default is bleve ;ISSUE_INDEXER_TYPE = bleve ;; ;; Issue indexer storage path, available when ISSUE_INDEXER_TYPE is bleve ;ISSUE_INDEXER_PATH = indexers/issues.bleve ; Relative paths will be made absolute against _`AppWorkPath`_. ;; ;; Issue indexer connection string, available when ISSUE_INDEXER_TYPE is elasticsearch ;ISSUE_INDEXER_CONN_STR = http://elastic:changeme@localhost:9200 ;; ;; Issue indexer name, available when ISSUE_INDEXER_TYPE is elasticsearch ;ISSUE_INDEXER_NAME = gitea_issues ;; ;; Timeout the indexer if it takes longer than this to start. ;; Set to -1 to disable timeout. ;STARTUP_TIMEOUT = 30s ;; ;; Issue indexer queue, currently support: channel, levelqueue or redis, default is levelqueue (deprecated - use [queue.issue_indexer]) ;ISSUE_INDEXER_QUEUE_TYPE = levelqueue; **DEPRECATED** use settings in `[queue.issue_indexer]`. ;; ;; When ISSUE_INDEXER_QUEUE_TYPE is levelqueue, this will be the path where the queue will be saved. ;; This can be overridden by `ISSUE_INDEXER_QUEUE_CONN_STR`. ;; default is queues/common ;ISSUE_INDEXER_QUEUE_DIR = queues/common; **DEPRECATED** use settings in `[queue.issue_indexer]`. Relative paths will be made absolute against `%(APP_DATA_PATH)s`. ;; ;; When `ISSUE_INDEXER_QUEUE_TYPE` is `redis`, this will store the redis connection string. ;; When `ISSUE_INDEXER_QUEUE_TYPE` is `levelqueue`, this is a directory or additional options of ;; the form `leveldb://path/to/db?option=value&....`, and overrides `ISSUE_INDEXER_QUEUE_DIR`. ;ISSUE_INDEXER_QUEUE_CONN_STR = "addrs=127.0.0.1:6379 db=0"; **DEPRECATED** use settings in `[queue.issue_indexer]`. ;; ;; Batch queue number, default is 20 ;ISSUE_INDEXER_QUEUE_BATCH_NUMBER = 20; **DEPRECATED** use settings in `[queue.issue_indexer]`. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Repository Indexer settings ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; repo indexer by default disabled, since it uses a lot of disk space ;REPO_INDEXER_ENABLED = false ;; ;; Code search engine type, could be `bleve` or `elasticsearch`. ;REPO_INDEXER_TYPE = bleve ;; ;; Index file used for code search. available when `REPO_INDEXER_TYPE` is bleve ;REPO_INDEXER_PATH = indexers/repos.bleve ;; ;; Code indexer connection string, available when `REPO_INDEXER_TYPE` is elasticsearch. i.e. http://elastic:changeme@localhost:9200 ;REPO_INDEXER_CONN_STR = ;; ;; Code indexer name, available when `REPO_INDEXER_TYPE` is elasticsearch ;REPO_INDEXER_NAME = gitea_codes ;; ;; A comma separated list of glob patterns (see https://github.com/gobwas/glob) to include ;; in the index; default is empty ;REPO_INDEXER_INCLUDE = ;; ;; A comma separated list of glob patterns to exclude from the index; ; default is empty ;REPO_INDEXER_EXCLUDE = ;; ;; ;UPDATE_BUFFER_LEN = 20; **DEPRECATED** use settings in `[queue.issue_indexer]`. ;MAX_FILE_SIZE = 1048576 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[queue] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Specific queues can be individually configured with [queue.name]. [queue] provides defaults ;; ([queue.issue_indexer] is special due to the old configuration described above) ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; General queue queue type, currently support: persistable-channel, channel, level, redis, dummy ;; default to persistable-channel ;TYPE = persistable-channel ;; ;; data-dir for storing persistable queues and level queues, individual queues will default to `queues/common` meaning the queue is shared. ;DATADIR = queues/ ; Relative paths will be made absolute against `%(APP_DATA_PATH)s`. ;; ;; Default queue length before a channel queue will block ;LENGTH = 20 ;; ;; Batch size to send for batched queues ;BATCH_LENGTH = 20 ;; ;; Connection string for redis queues this will store the redis connection string. ;; When `TYPE` is `persistable-channel`, this provides a directory for the underlying leveldb ;; or additional options of the form `leveldb://path/to/db?option=value&....`, and will override `DATADIR`. ;CONN_STR = "addrs=127.0.0.1:6379 db=0" ;; ;; Provides the suffix of the default redis/disk queue name - specific queues can be overridden within in their [queue.name] sections. ;QUEUE_NAME = "_queue" ;; ;; Provides the suffix of the default redis/disk unique queue set name - specific queues can be overridden within in their [queue.name] sections. ;SET_NAME = "_unique" ;; ;; If the queue cannot be created at startup - level queues may need a timeout at startup - wrap the queue: ;WRAP_IF_NECESSARY = true ;; ;; Attempt to create the wrapped queue at max ;MAX_ATTEMPTS = 10 ;; ;; Timeout queue creation ;TIMEOUT = 15m30s ;; ;; Create a pool with this many workers ;WORKERS = 0 ;; ;; Dynamically scale the worker pool to at this many workers ;MAX_WORKERS = 10 ;; ;; Add boost workers when the queue blocks for BLOCK_TIMEOUT ;BLOCK_TIMEOUT = 1s ;; ;; Remove the boost workers after BOOST_TIMEOUT ;BOOST_TIMEOUT = 5m ;; ;; During a boost add BOOST_WORKERS ;BOOST_WORKERS = 1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[admin] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Disallow regular (non-admin) users from creating organizations. ;DISABLE_REGULAR_ORG_CREATION = false ;; ;; Default configuration for email notifications for users (user configurable). Options: enabled, onmention, disabled ;DEFAULT_EMAIL_NOTIFICATIONS = enabled ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[openid] ;>GNUNUX [openid] ;.livejournal.com ;; ;; Whether to allow signin in via OpenID ;ENABLE_OPENID_SIGNIN = true ;>GNUNUX ENABLE_OPENID_SIGNIN = true ;GNUNUX ENABLE_OPENID_SIGNUP = true ;GNUNUX [oauth2_client] ;GNUNUX ENABLE_AUTO_REGISTRATION = true ;GNUNUX [mailer] ;GNUNUX ENABLED = true ;GNUNUX PROTOCOL = smtp+starttls ;GNUNUX SMTP_ADDR = %%smtp_relay_address ;GNUNUX SMTP_PORT = 25 ;` format ;FROM = ;>GNUNUX FROM = %%forgejo_mail_sender ;` to send an empty address. ;ENVELOPE_FROM = ;; ;; Mailer user name and password, if required by provider. ;USER = ;>GNUNUX USER = %%smtp_relay_user@%%ip_eth0 ;GNUNUX PASSWD = %%smtp_relay_password ;GNUNUX [cache] ;GNUNUX ENABLED = true ;GNUNUX ADAPTER = redis ;GNUNUX HOST = network=tcp,addr=%%redis_client_server_domainname:6379,username=%%redis_client_username,password=%%redis_client_password,db=0,pool_size=100,idle_timeout=180 ;GNUNUX [session] ;GNUNUX PROVIDER = redis ;GNUNUX PROVIDER_CONFIG = network=tcp,addr=%%redis_client_server_domainname:6379,password=%%redis_client_password,db=0,pool_size=100,idle_timeout=180 ;GNUNUX [picture] ;GNUNUX DISABLE_GRAVATAR = true ;GNUNUX ENABLE_FEDERATED_AVATAR = false ; GC_ARGS ;ARGS = ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Update the '.ssh/authorized_keys' file with Gitea SSH keys ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.resync_all_sshkeys] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = false ;RUN_AT_START = false ;NOTICE_ON_SUCCESS = false ;SCHEDULE = @every 72h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Resynchronize pre-receive, update and post-receive hooks of all repositories. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.resync_all_hooks] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = false ;RUN_AT_START = false ;NOTICE_ON_SUCCESS = false ;SCHEDULE = @every 72h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Reinitialize all missing Git repositories for which records exist ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.reinit_missing_repos] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = false ;RUN_AT_START = false ;NOTICE_ON_SUCCESS = false ;SCHEDULE = @every 72h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Delete all repositories missing their Git files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.delete_missing_repos] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = false ;RUN_AT_START = false ;NOTICE_ON_SUCCESS = false ;SCHEDULE = @every 72h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Delete generated repository avatars ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.delete_generated_repository_avatars] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = false ;RUN_AT_START = false ;NOTICE_ON_SUCCESS = false ;SCHEDULE = @every 72h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Delete all old actions from database ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.delete_old_actions] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = false ;RUN_AT_START = false ;NOTICE_ON_SUCCESS = false ;SCHEDULE = @every 168h ;OLDER_THAN = 8760h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Check for new Gitea versions ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.update_checker] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = true ;RUN_AT_START = false ;ENABLE_SUCCESS_NOTICE = false ;SCHEDULE = @every 168h ;HTTP_ENDPOINT = https://dl.gitea.io/gitea/version.json ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Delete all old system notices from database ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[cron.delete_old_system_notices] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;ENABLED = false ;RUN_AT_START = false ;NO_SUCCESS_NOTICE = false ;SCHEDULE = @every 168h ;OLDER_THAN = 8760h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Git Operation timeout in seconds ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[git.timeout] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;DEFAULT = 360 ;MIGRATE = 600 ;MIRROR = 300 ;CLONE = 300 ;PULL = 300 ;GC = 60 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[mirror] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Enables the mirror functionality. Set to **false** to disable all mirrors. Pre-existing mirrors remain valid but won't be updated; may be converted to regular repo. ;ENABLED = true ;; Disable the creation of **new** pull mirrors. Pre-existing mirrors remain valid. Will be ignored if `mirror.ENABLED` is `false`. ;DISABLE_NEW_PULL = false ;; Disable the creation of **new** push mirrors. Pre-existing mirrors remain valid. Will be ignored if `mirror.ENABLED` is `false`. ;DISABLE_NEW_PUSH = false ;; Default interval as a duration between each check ;DEFAULT_INTERVAL = 8h ;; Min interval as a duration must be > 1m ;MIN_INTERVAL = 10m ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[api] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Enables the API documentation endpoints (/api/swagger, /api/v1/swagger, …). True or false. ;ENABLE_SWAGGER = true ;; Max number of items in a page ;MAX_RESPONSE_ITEMS = 50 ;; Default paging number of api ;DEFAULT_PAGING_NUM = 30 ;; Default and maximum number of items per page for git trees api ;DEFAULT_GIT_TREES_PER_PAGE = 1000 ;; Default max size of a blob returned by the blobs API (default is 10MiB) ;DEFAULT_MAX_BLOB_SIZE = 10485760 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[i18n] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The first locale will be used as the default if user browser's language doesn't match any locale in the list. ;LANGS = en-US,zh-CN,zh-HK,zh-TW,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,uk-UA,ja-JP,es-ES,pt-BR,pt-PT,pl-PL,bg-BG,it-IT,fi-FI,tr-TR,cs-CZ,sv-SE,ko-KR,el-GR,fa-IR,hu-HU,id-ID,ml-IN ;NAMES = English,简体中文,繁體中文(香港),繁體中文(台灣),Deutsch,Français,Nederlands,Latviešu,Русский,Українська,日本語,Español,Português do Brasil,Português de Portugal,Polski,Български,Italiano,Suomi,Türkçe,Čeština,Српски,Svenska,한국어,Ελληνικά,فارسی,Magyar nyelv,Bahasa Indonesia,മലയാളം ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[highlight.mapping] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Extension mapping to highlight class ;; e.g. .toml=ini ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[other] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;SHOW_FOOTER_BRANDING = false ;; Show version information about Gitea and Go in the footer ;SHOW_FOOTER_VERSION = true ;; Show template execution time in the footer ;SHOW_FOOTER_TEMPLATE_LOAD_TIME = true ;; Generate sitemap. Defaults to `true`. ;ENABLE_SITEMAP = true ;; Enable/Disable RSS/Atom feed ;ENABLE_FEED = true ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[markup] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Set the maximum number of characters in a mermaid source. (Set to -1 to disable limits) ;MERMAID_MAX_SOURCE_CHARACTERS = 5000 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[markup.sanitizer.1] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; The following keys can appear once to define a sanitation policy rule. ;; This section can appear multiple times by adding a unique alphanumeric suffix to define multiple rules. ;; e.g., [markup.sanitizer.1] -> [markup.sanitizer.2] -> [markup.sanitizer.TeX] ;ELEMENT = span ;ALLOW_ATTR = class ;REGEXP = ^(info|warning|error)$ ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Other markup formats e.g. asciidoc ;; ;; uncomment and enable the below section. ;; (You can add other markup formats by copying the section and adjusting ;; the section name suffix "asciidoc" to something else.) ;[markup.asciidoc] ;ENABLED = false ;; List of file extensions that should be rendered by an external command ;FILE_EXTENSIONS = .adoc,.asciidoc ;; External command to render all matching extensions ;RENDER_COMMAND = "asciidoc --out-file=- -" ;; Don't pass the file on STDIN, pass the filename as argument instead. ;IS_INPUT_FILE = false ;; How the content will be rendered. ;; * sanitized: Sanitize the content and render it inside current page, default to only allow a few HTML tags and attributes. Customized sanitizer rules can be defined in [markup.sanitizer.*] . ;; * no-sanitizer: Disable the sanitizer and render the content inside current page. It's **insecure** and may lead to XSS attack if the content contains malicious code. ;; * iframe: Render the content in a separate standalone page and embed it into current page by iframe. The iframe is in sandbox mode with same-origin disabled, and the JS code are safely isolated from parent page. ;RENDER_CONTENT_MODE=sanitized ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[metrics] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Enables metrics endpoint. True or false; default is false. ;ENABLED = false ;; If you want to add authorization, specify a token here ;TOKEN = ;; Enable issue by label metrics; default is false ;ENABLED_ISSUE_BY_LABEL = false ;; Enable issue by repository metrics; default is false ;ENABLED_ISSUE_BY_REPOSITORY = false ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[task] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Task queue type, could be `channel` or `redis`. ;QUEUE_TYPE = channel ;; ;; Task queue length, available only when `QUEUE_TYPE` is `channel`. ;QUEUE_LENGTH = 1000 ;; ;; Task queue connection string, available only when `QUEUE_TYPE` is `redis`. ;; If there is a password of redis, use `addrs=127.0.0.1:6379 password=123 db=0`. ;QUEUE_CONN_STR = "addrs=127.0.0.1:6379 db=0" ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[migrations] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Max attempts per http/https request on migrations. ;MAX_ATTEMPTS = 3 ;; ;; Backoff time per http/https request retry (seconds) ;RETRY_BACKOFF = 3 ;; ;; Allowed domains for migrating, default is blank. Blank means everything will be allowed. ;; Multiple domains could be separated by commas. ;; Wildcard is supported: "github.com, *.github.com" ;ALLOWED_DOMAINS = ;; ;; Blocklist for migrating, default is blank. Multiple domains could be separated by commas. ;; When ALLOWED_DOMAINS is not blank, this option has a higher priority to deny domains. ;; Wildcard is supported. ;BLOCKED_DOMAINS = ;; ;; Allow private addresses defined by RFC 1918, RFC 1122, RFC 4632 and RFC 4291 (false by default) ;; If a domain is allowed by ALLOWED_DOMAINS, this option will be ignored. ;ALLOW_LOCALNETWORKS = false ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[federation] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Enable/Disable federation capabilities ;ENABLED = false ;; ;; Enable/Disable user statistics for nodeinfo if federation is enabled ;SHARE_USER_STATISTICS = true ;; ;; Maximum federation request and response size (MB) ;MAX_SIZE = 4 ;; ;; WARNING: Changing the settings below can break federation. ;; ;; HTTP signature algorithms ;ALGORITHMS = rsa-sha256, rsa-sha512, ed25519 ;; ;; HTTP signature digest algorithm ;DIGEST_ALGORITHM = SHA-256 ;; ;; GET headers for federation requests ;GET_HEADERS = (request-target), Date ;; ;; POST headers for federation requests ;POST_HEADERS = (request-target), Date, Digest ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[packages] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; Enable/Disable package registry capabilities ;ENABLED = true ;; ;; Path for chunked uploads. Defaults to APP_DATA_PATH + `tmp/package-upload` ;CHUNKED_UPLOAD_PATH = tmp/package-upload ;; ;; Maximum count of package versions a single owner can have (`-1` means no limits) ;LIMIT_TOTAL_OWNER_COUNT = -1 ;; Maximum size of packages a single owner can use (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_TOTAL_OWNER_SIZE = -1 ;; Maximum size of a Composer upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_COMPOSER = -1 ;; Maximum size of a Conan upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_CONAN = -1 ;; Maximum size of a Container upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_CONTAINER = -1 ;; Maximum size of a Generic upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_GENERIC = -1 ;; Maximum size of a Helm upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_HELM = -1 ;; Maximum size of a Maven upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_MAVEN = -1 ;; Maximum size of a npm upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_NPM = -1 ;; Maximum size of a NuGet upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_NUGET = -1 ;; Maximum size of a Pub upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_PUB = -1 ;; Maximum size of a PyPI upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_PYPI = -1 ;; Maximum size of a RubyGems upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_RUBYGEMS = -1 ;; Maximum size of a Vagrant upload (`-1` means no limits, format `1000`, `1 MB`, `1 GiB`) ;LIMIT_SIZE_VAGRANT = -1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; default storage for attachments, lfs and avatars ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[storage] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; storage type ;STORAGE_TYPE = local ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; settings for repository archives, will override storage setting ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;[storage.repo-archive] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; storage type ;STORAGE_TYPE = local ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; lfs storage will override storage ;; ;[lfs] ;>GNUNUX [lfs] ;GNUNUX PATH = /srv/forgejo/lib/data/lfs ;