summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Kudryavtsev2017-10-03 00:52:02 +0300
committerAnton Kudryavtsev2017-10-03 00:52:02 +0300
commit2bb088e4445be4219a1abb9673db88f148f39549 (patch)
tree06086c0718f4f9c8066fb5ee3f44f714745e9e41
parent74a8e61a29dd5513fb64965e9b8a6a6648545830 (diff)
downloadaur-2bb088e4445be4219a1abb9673db88f148f39549.tar.gz
Up-to-date with v1.2.0-rc3
-rw-r--r--.SRCINFO34
-rw-r--r--0001-Adjust-config-for-Arch-Linux-package.patch138
-rw-r--r--0002-Adjust-service-file-for-Arch-Linux-package.patch (renamed from gitea.service.patch)10
-rw-r--r--PKGBUILD90
-rw-r--r--app.ini456
-rw-r--r--gitea.install31
6 files changed, 234 insertions, 525 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 5656e306039a..e6cdc370e65f 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,37 +1,35 @@
pkgbase = gitea-git
pkgdesc = A painless self-hosted Git service.
- pkgver = r5108.888dee3b
+ pkgver = latest
pkgrel = 1
url = https://gitea.io/
install = gitea.install
- arch = x86_64
arch = i686
- arch = arm
+ arch = x86_64
arch = armv6h
arch = armv7h
license = MIT
- makedepends = patch
- makedepends = git
- makedepends = go-bindata
- depends = go
- optdepends = mariadb: MariaDB database support
- optdepends = postgresql: PostgreSQL database support
- optdepends = sqlite: SQLite database support
- optdepends = redis: Redis session support
- optdepends = memcached: MemCached session support
- optdepends = openssh: Git over SSH support
+ makedepends = go
+ depends = git
+ optdepends = sqlite: SQLite support
+ optdepends = mariadb: MariaDB support
+ optdepends = postgresql: PostgreSQL support
+ optdepends = mssql-server: MSSQL support
+ optdepends = redis: Redis support
+ optdepends = memcached: MemCached support
+ optdepends = openssh: GIT over SSH support
optdepends = pam: Authentication via PAM support
provides = gitea
conflicts = gitea
options = !strip
options = emptydirs
- backup = var/lib/gitea/custom/conf/app.ini
+ backup = etc/gitea/app.ini
source = git://github.com/go-gitea/gitea.git
- source = gitea.service.patch
- source = app.ini
+ source = 0001-Adjust-config-for-Arch-Linux-package.patch
+ source = 0002-Adjust-service-file-for-Arch-Linux-package.patch
sha256sums = SKIP
- sha256sums = f7b570315bd98a4e2d1c82ebdc2e78d76f6df49286ca4ac59cfb2b3f9985d1f9
- sha256sums = 6ec975577a54e68d05a9292230c1aee19358459366688819cec4445e8d3c5210
+ sha256sums = b50a9ef21216a1cd2183238f7baa2d37f9bca11706625a8ffb345ed8f838e540
+ sha256sums = 6cd1daa666659a68c98376f8bfae55402b5ffc39c1bf42b5ae0ee700249a3b73
pkgname = gitea-git
diff --git a/0001-Adjust-config-for-Arch-Linux-package.patch b/0001-Adjust-config-for-Arch-Linux-package.patch
new file mode 100644
index 000000000000..df3bbb88e7d9
--- /dev/null
+++ b/0001-Adjust-config-for-Arch-Linux-package.patch
@@ -0,0 +1,138 @@
+--- app.ini
++++ app.ini 2017-10-02 23:16:35.000000000 +0300
+@@ -1,12 +1,12 @@
+ ; App name that shows on every page title
+ APP_NAME = Gitea: Git with a cup of tea
+ ; Change it if you run locally
+-RUN_USER = git
++RUN_USER = gitea
+ ; Either "dev", "prod" or "test", default is "dev"
+-RUN_MODE = dev
++RUN_MODE = prod
+
+ [repository]
+-ROOT =
++ROOT = /var/lib/gitea/repos
+ SCRIPT_TYPE = bash
+ ; Default ANSI charset
+ ANSI_CHARSET =
+@@ -36,13 +36,13 @@
+
+ [repository.local]
+ ; Path for uploads. Defaults to `tmp/local-repo`
+-LOCAL_COPY_PATH = tmp/local-repo
++LOCAL_COPY_PATH = /var/cache/gitea/local-repo
+
+ [repository.upload]
+ ; Whether repository file uploads are enabled. Defaults to `true`
+ ENABLED = true
+ ; Path for uploads. Defaults to `data/tmp/uploads` (tmp gets deleted on gitea restart)
+-TEMP_PATH = data/tmp/uploads
++TEMP_PATH = /var/cache/gitea
+ ; One or more allowed types, e.g. image/jpeg|image/png. Nothing means any file type
+ ALLOWED_TYPES =
+ ; Max size of each file in MB. Defaults to 3MB
+@@ -122,7 +122,7 @@
+ ; 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 =
++SSH_ROOT_PATH = /var/lib/gitea/repos/.ssh
+ ; Directory to create temporary files when test public key using ssh-keygen,
+ ; default is system temporary directory.
+ SSH_KEY_TEST_PATH =
+@@ -144,13 +144,13 @@
+ ; 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
++CERT_FILE = /var/lib/gitea/custom/https/cert.pem
++KEY_FILE = /var/lib/gitea/custom/https/key.pem
+ ; Upper level of template and static file path
+ ; default is the path where Gitea is executed
+-STATIC_ROOT_PATH =
++STATIC_ROOT_PATH = /usr/share/gitea
+ ; Default path for App data
+-APP_DATA_PATH = data
++APP_DATA_PATH = /var/lib/gitea/data
+ ; Application level GZIP support
+ ENABLE_GZIP = false
+ ; Landing page for non-logged users, can be "home" or "explore"
+@@ -158,7 +158,7 @@
+ ; Enables git-lfs support. true or false, default is false.
+ LFS_START_SERVER = false
+ ; Where your lfs files put on, default is data/lfs.
+-LFS_CONTENT_PATH = data/lfs
++LFS_CONTENT_PATH = /var/lib/gitea/data/lfs
+ ; LFS authentication secret, changed this to yourself.
+ LFS_JWT_SECRET =
+
+@@ -174,17 +174,17 @@
+ DB_TYPE = mysql
+ HOST = 127.0.0.1:3306
+ NAME = gitea
+-USER = root
++USER = gitea
+ 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/gitea.db
++PATH = /var/lib/gitea/gitea.db
+ ; For "sqlite3" only. Query timeout
+ SQLITE_TIMEOUT = 500
+
+ [indexer]
+-ISSUE_INDEXER_PATH = indexers/issues.bleve
++ISSUE_INDEXER_PATH = /var/lib/gitea/indexers/issues.bleve
+ UPDATE_BUFFER_LEN = 20
+
+ [admin]
+@@ -307,8 +307,8 @@
+ SKIP_VERIFY =
+ ; Use client certificate
+ USE_CERTIFICATE = false
+-CERT_FILE = custom/mailer/cert.pem
+-KEY_FILE = custom/mailer/key.pem
++CERT_FILE = /var/lib/gitea/custom/mailer/cert.pem
++KEY_FILE = /var/lib/gitea/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
+@@ -339,7 +339,7 @@
+ ; 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
++PROVIDER_CONFIG = /var/lib/gitea/data/sessions
+ ; Session cookie name
+ COOKIE_NAME = i_like_gitea
+ ; If you use session in https only, default is false
+@@ -352,7 +352,7 @@
+ SESSION_LIFE_TIME = 86400
+
+ [picture]
+-AVATAR_UPLOAD_PATH = data/avatars
++AVATAR_UPLOAD_PATH = /var/lib/gitea/data/avatars
+ ; Chinese users can choose "duoshuo"
+ ; or a custom avatar source, like: http://cn.gravatar.com/avatar/
+ GRAVATAR_SOURCE = gravatar
+@@ -367,7 +367,7 @@
+ ; Whether attachments are enabled. Defaults to `true`
+ ENABLE = true
+ ; Path for attachments. Defaults to `data/attachments`
+-PATH = data/attachments
++PATH = /var/lib/gitea/data/attachments
+ ; One or more allowed types, e.g. image/jpeg|image/png
+ ALLOWED_TYPES = image/jpeg|image/png|application/zip|application/gzip
+ ; Max size of each file. Defaults to 32MB
+@@ -382,7 +382,7 @@
+ FORMAT =
+
+ [log]
+-ROOT_PATH =
++ROOT_PATH = /var/log/gitea
+ ; Either "console", "file", "conn", "smtp" or "database", default is "console"
+ ; Use comma to separate multiple modes, e.g. "console, file"
+ MODE = console
diff --git a/gitea.service.patch b/0002-Adjust-service-file-for-Arch-Linux-package.patch
index 878fceb75da6..8ebc6a43a9d4 100644
--- a/gitea.service.patch
+++ b/0002-Adjust-service-file-for-Arch-Linux-package.patch
@@ -1,5 +1,5 @@
---- gitea.service 2016-11-14 23:06:31.487951000 +0100
-+++ gitea.service 2016-11-14 23:10:28.549514228 +0100
+--- gitea.service
++++ gitea.service 2017-10-02 23:31:14.000000000 +0300
@@ -15,12 +15,12 @@
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
@@ -11,10 +11,10 @@
+User=gitea
+Group=gitea
+WorkingDirectory=/var/lib/gitea
-+ExecStart=/usr/bin/gitea web --config /var/lib/gitea/custom/conf/app.ini
++ExecStart=/usr/bin/gitea web --config /etc/gitea/app.ini
Restart=always
-Environment=USER=git HOME=/home/git
-+Environment=USER=gitea HOME=/var/lib/gitea GITEA_CUSTOM=/var/lib/gitea/custom
-
++Environment=USER=gitea HOME=/var/lib/gitea
+
[Install]
WantedBy=multi-user.target
diff --git a/PKGBUILD b/PKGBUILD
index e00b07e6226f..7dd830d9f7e6 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,38 +1,41 @@
# Maintainer: Francois Menning <f.menning@protonmail.com>
+# Contributor: Anton Kudryavtsev <anton@anidetrix.ru>
# Contributor: Frederik Schwan <frederik dot schwan at linux dot com>
# Contributor: Thomas Fanninger <thomas@fanninger.at>
# Contributor: Alexander F Rødseth <xyproto@archlinux.org>
# Contributor: Thomas Laroche <tho.laroche@gmail.com>
-_pkgname=gitea
+_pkgname="gitea"
_gourl="code.gitea.io"
-pkgname=gitea-git
-pkgver=r5108.888dee3b
+
+pkgname=$_pkgname-git
+pkgver=latest
pkgrel=1
-pkgdesc='A painless self-hosted Git service.'
-url='https://gitea.io/'
-license=('MIT')
-source=('git://github.com/go-gitea/gitea.git'
- 'gitea.service.patch'
- 'app.ini')
-sha256sums=('SKIP'
- 'f7b570315bd98a4e2d1c82ebdc2e78d76f6df49286ca4ac59cfb2b3f9985d1f9'
- '6ec975577a54e68d05a9292230c1aee19358459366688819cec4445e8d3c5210')
-arch=('x86_64' 'i686' 'arm' 'armv6h' 'armv7h')
-depends=('go')
-makedepends=('patch' 'git' 'go-bindata')
-optdepends=('mariadb: MariaDB database support'
- 'postgresql: PostgreSQL database support'
- 'sqlite: SQLite database support'
- 'redis: Redis session support'
- 'memcached: MemCached session support'
- 'openssh: Git over SSH support'
- 'pam: Authentication via PAM support')
-install=gitea.install
-backup=("var/lib/gitea/custom/conf/app.ini")
-conflicts=('gitea')
-options=('!strip' 'emptydirs')
-provides=('gitea')
+pkgdesc="A painless self-hosted Git service."
+url="https://gitea.io/"
+license=("MIT")
+arch=("i686" "x86_64" "armv6h" "armv7h")
+depends=("git")
+makedepends=("go")
+optdepends=("sqlite: SQLite support"
+ "mariadb: MariaDB support"
+ "postgresql: PostgreSQL support"
+ "mssql-server: MSSQL support"
+ "redis: Redis support"
+ "memcached: MemCached support"
+ "openssh: GIT over SSH support"
+ "pam: Authentication via PAM support")
+conflicts=("gitea")
+provides=("gitea")
+options=("!strip" "emptydirs")
+backup=("etc/gitea/app.ini")
+install=${_pkgname}.install
+source=("git://github.com/go-gitea/gitea.git"
+ "0001-Adjust-config-for-Arch-Linux-package.patch"
+ "0002-Adjust-service-file-for-Arch-Linux-package.patch")
+sha256sums=("SKIP"
+ "b50a9ef21216a1cd2183238f7baa2d37f9bca11706625a8ffb345ed8f838e540"
+ "6cd1daa666659a68c98376f8bfae55402b5ffc39c1bf42b5ae0ee700249a3b73")
pkgver() {
cd "${srcdir}/${_pkgname}"
@@ -41,25 +44,30 @@ pkgver() {
prepare() {
mkdir -p "${srcdir}/src/${_gourl}/${_pkgname}"
- cp -r "${srcdir}/gitea" "${srcdir}/src/${_gourl}"
+ cp -r "${srcdir}/${_pkgname}" "${srcdir}/src/${_gourl}"
- # patch
- msg2 "Patch gitea.service"
- patch -Np1 -i "${srcdir}/gitea.service.patch" "${srcdir}/src/${_gourl}/${_pkgname}/contrib/systemd/gitea.service"
+ msg2 "Patch config and service file"
+ patch -Np1 -i "${srcdir}/0001-Adjust-config-for-Arch-Linux-package.patch" "${srcdir}/src/${_gourl}/${_pkgname}/conf/app.ini"
+ patch -Np1 -i "${srcdir}/0002-Adjust-service-file-for-Arch-Linux-package.patch" "${srcdir}/src/${_gourl}/${_pkgname}/contrib/systemd/${_pkgname}.service"
}
build() {
- cd ${srcdir}/src/${_gourl}/${_pkgname}
- GOPATH="${srcdir}" make DESTDIR="$pkgdir/" TAGS="sqlite tidb pam" clean generate build
+ cd "${srcdir}/src/${_gourl}/${_pkgname}"
+ GOPATH="${srcdir}" make DESTDIR="${pkgdir}/" TAGS="sqlite tidb pam" clean generate build
}
package() {
- install -dm755 ${pkgdir}/var/lib/${_pkgname}/{custom/conf,conf,data/{attachments,avatars,sessions,tmp},options,repo}
- install -dm755 ${pkgdir}/var/log/gitea
- install -Dm755 "${srcdir}/src/${_gourl}/${_pkgname}/${_pkgname}" "${pkgdir}/usr/bin/${_pkgname}"
- install -Dm644 "${srcdir}/src/${_gourl}/${_pkgname}/LICENSE" "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE"
- install -Dm644 "${srcdir}/src/${_gourl}/${_pkgname}/contrib/systemd/gitea.service" "${pkgdir}/usr/lib/systemd/system/gitea.service"
- install -Dm644 "${srcdir}/app.ini" "${pkgdir}/var/lib/${_pkgname}/custom/conf/app.ini"
- cp -r ${srcdir}/src/${_gourl}/${_pkgname}/{conf,templates,options,public} ${pkgdir}/var/lib/${_pkgname}
- cp -r ${srcdir}/src/${_gourl}/${_pkgname}/options/locale ${pkgdir}/var/lib/${_pkgname}/conf
+ install -Dm0755 "${srcdir}/src/${_gourl}/${_pkgname}" "${pkgdir}/usr/bin/${_pkgname}"
+
+ mkdir -p "${pkgdir}/usr/share/${_pkgname}"
+ cp -r "${srcdir}/src/${_gourl}/${_pkgname}/conf" "${pkgdir}/usr/share/${_pkgname}"
+ cp -r "${srcdir}/src/${_gourl}/${_pkgname}/public" "${pkgdir}/usr/share/${_pkgname}"
+ cp -r "${srcdir}/src/${_gourl}/${_pkgname}/templates" "${pkgdir}/usr/share/${_pkgname}"
+
+ install -Dm0644 "${pkgdir}/usr/share/${_pkgname}/conf/app.ini" "${pkgdir}/etc/${_pkgname}/app.ini"
+ install -Dm0644 "${srcdir}/src/${_gourl}/${_pkgname}/scripts/systemd/${_pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${_pkgname}.service"
+ install -Dm0644 "${srcdir}/src/${_gourl}/${_pkgname}/LICENSE" "${pkgdir}/usr/share/licenses/${_pkgname}"
+
+ install -dm0700 "${pkgdir}/var/log/${_pkgname}"
+ install -dm0700 "${pkgdir}/var/lib/${_pkgname}"
}
diff --git a/app.ini b/app.ini
deleted file mode 100644
index 0bc5783357bd..000000000000
--- a/app.ini
+++ /dev/null
@@ -1,456 +0,0 @@
-; App name that shows on every page title
-APP_NAME = Gitea: Git with a cup of tea
-; Change it if you run locally
-RUN_USER = gitea
-; Either "dev", "prod" or "test", default is "dev"
-RUN_MODE = dev
-
-[repository]
-ROOT = /var/lib/gitea/repo
-SCRIPT_TYPE = bash
-; Default ANSI 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
-
-[repository.editor]
-; List of file extensions that should have line wraps in the CodeMirror editor
-; Separate extensions with a comma. To line wrap files w/o 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]
-; Whether repository file uploads are enabled. Defaults to `true`
-ENABLED = true
-; Path for uploads. Defaults to `data/tmp/uploads` (tmp gets deleted on gitea restart)
-TEMP_PATH = /var/lib/gitea/data/tmp/uploads
-; One or more allowed types, e.g. image/jpeg|image/png. Nothing means any file type
-ALLOWED_TYPES =
-; Max size of each file in MB. Defaults to 3MB
-FILE_MAX_SIZE = 3
-; Max number of files per upload. Defaults to 5
-MAX_FILES = 5
-
-[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 = `#6cc644`
-; Max size of files to be displayed (defaults is 8MiB)
-MAX_DISPLAY_FILE_SIZE = 8388608
-; Whether show the user email in the Explore Users page
-SHOW_USER_EMAIL = true
-
-[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
-
-[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
-
-[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 Gitea 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 clone URL
-SSH_DOMAIN = %(DOMAIN)s
-; Network interface builtin SSH server listens on
-SSH_LISTEN_HOST =
-; Port number to be exposed in clone URL
-SSH_PORT = 22
-; 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 = /home/gitea/.ssh
-; 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:
-; $ ./gitea 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 = /var/lib/gitea/custom/https/cert.pem
-KEY_FILE = /var/lib/gitea/custom/https/key.pem
-; Upper level of template and static file path
-; default is the path where Gitea is executed
-STATIC_ROOT_PATH = /var/lib/gitea
-; Default path for App data
-APP_DATA_PATH = /var/lib/gitea/data
-; Application level GZIP support
-ENABLE_GZIP = false
-; Landing page for non-logged users, can be "home" or "explore"
-LANDING_PAGE = home
-
-; 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", it's your choice
-DB_TYPE = mysql
-HOST = 127.0.0.1:3306
-NAME = gitea
-USER = gitea
-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 = /var/lib/gitea/data/gitea.db
-
-[admin]
-
-[security]
-; Whether the installer is disabled
-INSTALL_LOCK = false
-; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
-SECRET_KEY = !#@FDEWREWR&*(
-; Auto-login remember days
-LOGIN_REMEMBER_DAYS = 7
-COOKIE_USERNAME = gitea_awesome
-COOKIE_REMEMBER_NAME = gitea_incredible
-; Reverse proxy authentication header name of user name
-REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
-; Sets the minimum password length for new Users
-MIN_PASSWORD_LENGTH = 6
-; True when users are allowed to import local server paths
-IMPORT_LOCAL_PATHS = false
-
-[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/go-gitea/gitea/issues/165
-ENABLE_REVERSE_PROXY_AUTHENTICATION = false
-ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
-; Enable captcha validation for registration
-ENABLE_CAPTCHA = true
-; Default value for KeepEmailPrivate
-; New user will get the value of this setting copied into their profile
-DEFAULT_KEEP_EMAIL_PRIVATE = false
-; Default value for the domain part of the user's email address in the git log
-; if he has set KeepEmailPrivate true. The user's email replaced with a
-; concatenation of the user name in lower case, "@" and NO_REPLY_ADDRESS.
-NO_REPLY_ADDRESS = noreply.example.org
-
-[webhook]
-; Hook task queue length, increase if webhook shooting starts hanging
-QUEUE_LENGTH = 1000
-; Deliver timeout in seconds
-DELIVER_TIMEOUT = 5
-; 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
-; Name displayed in mail title
-SUBJECT = %(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 = /var/lib/gitea/custom/mailer/cert.pem
-KEY_FILE = /var/lib/gitea/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/html as alternative format of content
-ENABLE_HTML_ALTERNATIVE = false
-; Enable sendmail (override SMTP)
-USE_SENDMAIL = false
-; Specifiy an alternative sendmail binary
-SENDMAIL_PATH = sendmail
-
-[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 = /var/lib/gitea/data/sessions
-; Session cookie name
-COOKIE_NAME = i_like_gitea
-; 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 86400
-GC_INTERVAL_TIME = 86400
-; Session life time, default is 86400
-SESSION_LIFE_TIME = 86400
-
-[picture]
-AVATAR_UPLOAD_PATH = /var/lib/gitea/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]
-; Whether attachments are enabled. Defaults to `true`
-ENABLE = true
-; Path for attachments. Defaults to `data/attachments`
-PATH = /var/lib/gitea/data/attachments
-; One or more allowed types, e.g. image/jpeg|image/png
-ALLOWED_TYPES = image/jpeg|image/png|application/zip|application/gzip
-; Max size of each file. Defaults to 32MB
-MAX_SIZE = 4
-; Max number of files per upload. Defaults to 10
-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 =
-
-[log]
-ROOT_PATH = /var/log/gitea
-; Either "console", "file", "conn", "smtp" or "database", 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 = 10000
-; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
-LEVEL = Trace
-
-; For "console" mode only
-[log.console]
-LEVEL =
-
-; For "file" mode only
-[log.file]
-LEVEL =
-; This enables automated log rotate(switch of following options), default is true
-LOG_ROTATE = true
-; Max line number of single file, default is 1000000
-MAX_LINES = 1000000
-; Max size shift of single file, default is 28 means 1 << 28, 256MB
-MAX_SIZE_SHIFT = 28
-; Segment log daily, default is true
-DAILY_ROTATE = true
-; Expired days of log file(delete after max days), default is 7
-MAX_DAYS = 7
-
-; For "conn" mode only
-[log.conn]
-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
-[log.smtp]
-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 =
-PASSWD =
-; Receivers, can be one or more, e.g. 1@example.com,2@example.com
-RECEIVERS =
-
-; For "database" mode only
-[log.database]
-LEVEL =
-; Either "mysql" or "postgres"
-DRIVER =
-; Based on xorm, e.g.: root:root@localhost/gitea?charset=utf8
-CONN =
-
-[cron]
-; Enable running cron tasks periodically.
-ENABLED = true
-; Run cron tasks when Gitea 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
-
-[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
-
-[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
-NAMES = English,简体中文,繁體中文(香港),繁體中文(台灣),Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano,Suomalainen,Türkçe,čeština,Српски,Svenska,한국어
-
-; 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
-
-; Extension mapping to highlight class
-; e.g. .toml=ini
-[highlight.mapping]
-
-[other]
-SHOW_FOOTER_BRANDING = false
-; Show version information about Gitea and Go in the footer
-SHOW_FOOTER_VERSION = true
-; Show time of template execution in the footer
-SHOW_FOOTER_TEMPLATE_LOAD_TIME = true
diff --git a/gitea.install b/gitea.install
index a0dc0f8c03c4..97cc22e9d6aa 100644
--- a/gitea.install
+++ b/gitea.install
@@ -1,17 +1,38 @@
-post_install() {
+pre_install() {
if ! getent group gitea >/dev/null; then
groupadd --system gitea
fi
if ! getent passwd gitea >/dev/null; then
- useradd --system -c 'Gitea' -g gitea -m -d /home/gitea -s /bin/bash gitea
+ useradd -m --system -c 'gitea daemon users' -g gitea -s /bin/false gitea -d /var/lib/gitea
fi
+ chsh gitea -s /bin/bash
+}
+
+post_install(){
chown -R gitea:gitea /var/log/gitea
chown -R gitea:gitea /var/lib/gitea
+
systemctl daemon-reload
- echo ":: Configure gitea in /var/lib/gitea/custom/conf/app.ini"
}
-post_upgrade(){
+pre_upgrade(){
+ pre_install $1
+}
+
+post_upgrade() {
post_install $1
- echo ":: Consider restarting gitea.service"
+}
+
+pre_remove() {
+ systemctl stop gitea.service
+ systemctl disable gitea.service
+}
+
+post_remove() {
+ if getent passwd gitea >/dev/null; then
+ userdel -r gitea
+ fi
+ if getent group gitea >/dev/null; then
+ groupdel gitea
+ fi
}