~evilham/cdist-evilham

ad44c13e32cfcaa1209a534fe81382e8124d76c4 — Evilham 1 year, 1 month ago 442519c
forgejo: update conf file and improve UX

Update conf to match recent versions and perform some changes
regarding to UX:

- use the database as storage for sessions. While using memory is
  leaner on server resources, it has the drawback that a restart of
  the service (due, e.g. to a config change) loses all sessions.
- rename all cookies so they are actually meaningful
- increase the time cookies are valid from 1 day to 90 days
2 files changed, 27 insertions(+), 26 deletions(-)

M type/__evilham_forgejo/files/forgejo.conf.sh
M type/__evilham_forgejo/manifest
M type/__evilham_forgejo/files/forgejo.conf.sh => type/__evilham_forgejo/files/forgejo.conf.sh +24 -26
@@ 452,13 452,13 @@ SECRET_KEY_URI = file://${FORGEJO_SECRET_DIR}/secret_key
INTERNAL_TOKEN_URI = file://${FORGEJO_SECRET_DIR}/internal_token
;;
;; How long to remember that a user is logged in before requiring relogin (in days)
;LOGIN_REMEMBER_DAYS = 7
LOGIN_REMEMBER_DAYS = ${FORGEJO_LOGIN_DAYS}
;;
;; Name of the cookie used to store the current username.
;COOKIE_USERNAME = gitea_awesome
COOKIE_USERNAME = forgejo_username
;;
;; Name of cookie used to store authentication information.
;COOKIE_REMEMBER_NAME = gitea_incredible
COOKIE_REMEMBER_NAME = forgejo_remember_me
;;
;; Reverse proxy authentication header name of user name, email, and full name
;REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER


@@ 918,7 918,7 @@ VALID_SITE_URL_SCHEMES=http,https,gemini
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[repository]
[repository]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Root path for storing all repository data. By default, it is set to %(APP_DATA_PATH)s/gitea-repositories.
;; A relative path is interpreted as _\`AppWorkPath\`_/%(ROOT)s


@@ 1166,14 1166,14 @@ DEFAULT_BRANCH = main

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[cors]
[cors]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; More information about CORS can be found here: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#The_HTTP_response_headers
;; enable cors headers (disabled by default)
;;;; TODO: enable, this is disabled by default?!
;ENABLED = false
ENABLED = true
;;
;; scheme of allowed requests
SCHEME = https  ; http


@@ 1226,10 1226,9 @@ ALLOW_DOMAIN = ${FORGEJO_DOMAIN}  ; *
;; Number of line of codes shown for a code comment
;CODE_COMMENT_LINES = 4
;;
;; 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 = \`#6cc644\`
;; Value of \`theme-color\` meta tag, used by some mobile browers for chrome and
;; out-of-viewport areas. Default is unset which uses body color.
;THEME_COLOR_META_TAG =
;;
;; Max size of files to be displayed (default is 8MiB)
;MAX_DISPLAY_FILE_SIZE = 8388608


@@ 1792,13 1791,13 @@ ALLOW_DOMAIN = ${FORGEJO_DOMAIN}  ; *

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[session]
[session]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; Either "memory", "file", "redis", "db", "mysql", "couchbase", "memcache" or "postgres"
;; Default is "memory". "db" will reuse the configuration in [database]
PROVIDER      = file  ; memory
PROVIDER      = db  ; memory
;;
;; Provider config options
;; memory: doesn't have any config yet


@@ 1808,7 1807,7 @@ PROVIDER      = file  ; memory
;PROVIDER_CONFIG = ${FORGEJO_DIR}/data/sessions ; Relative paths will be made absolute against _\`AppWorkPath\`_.
;;
;; Session cookie name
;COOKIE_NAME = i_like_gitea
COOKIE_NAME = forgejo_cookie
;;
;; If you use session in https only, default is false
COOKIE_SECURE = true  ; false


@@ 1817,14 1816,14 @@ COOKIE_SECURE = true  ; false
;GC_INTERVAL_TIME = 86400
;;
;; Session life time in seconds, default is 86400 (1 day)
;SESSION_LIFE_TIME = 86400
SESSION_LIFE_TIME = ${FORGEJO_LOGIN_SECONDS}  ; 86400
;;
;; SameSite settings. Either "none", "lax", or "strict"
SAME_SITE = strict  ; lax

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[picture]
[picture]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;


@@ 1929,7 1928,7 @@ ENABLE_FEDERATED_AVATAR = true  ; false

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[cron]
[cron]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;


@@ 2174,11 2173,11 @@ ENABLE_FEDERATED_AVATAR = true  ; false
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Resynchronize pre-receive, update and post-receive hooks of all repositories.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[cron.resync_all_hooks]
[cron.resync_all_hooks]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ENABLED           = true  ; false
RUN_AT_START      = true  ; false
RUN_AT_START      = false ; false
NO_SUCCESS_NOTICE = true  ; false
;SCHEDULE = @every 72h



@@ 2222,7 2221,7 @@ NO_SUCCESS_NOTICE = true  ; false
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Delete all old actions from database
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[cron.delete_old_actions]
[cron.delete_old_actions]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ENABLED = true  ; false


@@ 2249,7 2248,7 @@ ENABLED = true  ; false
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Delete all old system notices from database
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[cron.delete_old_system_notices]
[cron.delete_old_system_notices]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ENABLED = true  ; false


@@ 2262,7 2261,7 @@ ENABLED = true  ; false
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Garbage collect LFS pointers in repositories
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[cron.gc_lfs]
[cron.gc_lfs]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ENABLED = true  ; false


@@ 2356,10 2355,9 @@ ENABLED = true  ; false

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;[other]
[other]
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;SHOW_FOOTER_BRANDING = false
;; Show version information about Gitea and Go in the footer
SHOW_FOOTER_VERSION = false  ; true
;; Show template execution time in the footer


@@ 2437,8 2435,8 @@ SHOW_FOOTER_TEMPLATE_LOAD_TIME = false  ; true
;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"
;; If there is a password of redis, use \`redis://127.0.0.1:6379/0?pool_size=100&idle_timeout=180s\`.
;QUEUE_CONN_STR = "redis://127.0.0.1:6379/0?pool_size=100&idle_timeout=180s"

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


@@ 2622,7 2620,7 @@ SHOW_FOOTER_TEMPLATE_LOAD_TIME = false  ; true
; [actions]
;; Enable/Disable actions capabilities
;ENABLED = false
;; Default address to get action plugins, e.g. the default value means downloading from "https://codeberg.org/actions/checkout" for "uses: actions/checkout@v3"
;; Default address to get action plugins, e.g. the default value means downloading from "https://code.forgejo.org/actions/checkout" for "uses: actions/checkout@v3"
;DEFAULT_ACTIONS_URL = https://code.forgejo.org

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

M type/__evilham_forgejo/manifest => type/__evilham_forgejo/manifest +3 -0
@@ 105,6 105,9 @@ for pkg in git bash; do
	__package "${pkg}"
done

# Default of 1 day has proven too short, let's change that
FORGEJO_LOGIN_DAYS=90
FORGEJO_LOGIN_SECONDS="$((60*60*24*FORGEJO_LOGIN_DAYS))"

# Install and enable the forgejo service
# shellcheck source=type/__evilham_forgejo/files/forgejo.conf.sh