diff --git a/README.md b/README.md
index 85d8f07..9239465 100644
--- a/README.md
+++ b/README.md
@@ -25,86 +25,6 @@ Gitea is a fork of Gogs a self-hosted Git service written in Go. Alternative to
![Screenshot of Gitea](./doc/screenshots/screenshot.png)
-## Disclaimers / important information
-
-## Additional informations
-
-### Notes on SSH usage
-
-If you want to use Gitea with SSH and be able to pull/push with your SSH key, your SSH daemon must be properly configured to use private/public keys. Here is a sample configuration `/etc/ssh/sshd_config` that works with Gitea:
-
-```bash
-PubkeyAuthentication yes
-AuthorizedKeysFile /home/yunohost.app/%u/.ssh/authorized_keys
-ChallengeResponseAuthentication no
-PasswordAuthentication no
-UsePAM no
-```
-
-You must also add your public key to your Gitea profile.
-
-When using SSH on any port other than 22, you need to add these lines to your SSH configuration `~/.ssh/config`:
-
-```bash
-Host domain.tld
- port 2222 # change this with the port you use
-```
-
-### Upgrade
-
-By default, a backup is performed before upgrading. To avoid this, you have the following options:
-- Pass the `NO_BACKUP_UPGRADE` env variable with `1` at each upgrade. For example `NO_BACKUP_UPGRADE=1 yunohost app upgrade gitea`.
-- Set `disable_backup_before_upgrade` to `1`. You can set it with this command:
-
-`yunohost app setting gitea disable_backup_before_upgrade -v 1`
-
-After that, the settings will be applied for **all** the next updates.
-
-From command line:
-
-`yunohost app upgrade gitea`
-
-### Backup
-
-This application now uses the core-only feature of the backup. To keep the integrity of the data and to have a better guarantee of the restoration it is recommended to proceed as follows:
-
-- Stop Gitea service with this command:
-
-`systemctl stop gitea.service`
-
-- Launch Gitea backup with this command:
-
-`yunohost backup create --app gitea`
-
-- Backup your data with your specific strategy (could be with rsync, borg backup or just cp). The data is generally stored in `/home/yunohost.app/gitea`.
-- Restart Gitea service with theses command:
-
-`systemctl start gitea.service`
-
-### Remove
-
-Due of the backup core only feature the data directory in `/home/yunohost.app/gitea` **is not removed**. It must be manually deleted to purge user data from the app.
-
-### LFS setup
-To use a repository with an `LFS` setup, you need to activate it on `/opt/gitea/custom/conf/app.ini`
-
-```ini
-[server]
-LFS_START_SERVER = true
-LFS_HTTP_AUTH_EXPIRY = 20m
-```
-By default, NGINX is configured with a maximum value for uploading files at 200 MB. It's possible to change this value on `/etc/nginx/conf.d/my.domain.tld.d/gitea.conf`.
-```
-client_max_body_size 200M;
-```
-Don't forget to restart Gitea `sudo systemctl restart gitea.service`.
-
-> These settings are restored to the default configuration when updating Gitea. Remember to restore your configuration after all updates.
-
-### Git command access with HTTPS
-
-If you want to use the Git command (like `git clone`, `git pull`, `git push`), you need to set this app as **public**.
-
## Documentation and resources
* Official app website:
diff --git a/README_fr.md b/README_fr.md
index 5e0af66..7b9af28 100644
--- a/README_fr.md
+++ b/README_fr.md
@@ -25,86 +25,6 @@ Gitea is a fork of Gogs a self-hosted Git service written in Go. Alternative to
![Capture d’écran de Gitea](./doc/screenshots/screenshot.png)
-## Avertissements / informations importantes
-
-## Additional informations
-
-### Notes on SSH usage
-
-If you want to use Gitea with SSH and be able to pull/push with your SSH key, your SSH daemon must be properly configured to use private/public keys. Here is a sample configuration `/etc/ssh/sshd_config` that works with Gitea:
-
-```bash
-PubkeyAuthentication yes
-AuthorizedKeysFile /home/yunohost.app/%u/.ssh/authorized_keys
-ChallengeResponseAuthentication no
-PasswordAuthentication no
-UsePAM no
-```
-
-You must also add your public key to your Gitea profile.
-
-When using SSH on any port other than 22, you need to add these lines to your SSH configuration `~/.ssh/config`:
-
-```bash
-Host domain.tld
- port 2222 # change this with the port you use
-```
-
-### Upgrade
-
-By default, a backup is performed before upgrading. To avoid this, you have the following options:
-- Pass the `NO_BACKUP_UPGRADE` env variable with `1` at each upgrade. For example `NO_BACKUP_UPGRADE=1 yunohost app upgrade gitea`.
-- Set `disable_backup_before_upgrade` to `1`. You can set it with this command:
-
-`yunohost app setting gitea disable_backup_before_upgrade -v 1`
-
-After that, the settings will be applied for **all** the next updates.
-
-From command line:
-
-`yunohost app upgrade gitea`
-
-### Backup
-
-This application now uses the core-only feature of the backup. To keep the integrity of the data and to have a better guarantee of the restoration it is recommended to proceed as follows:
-
-- Stop Gitea service with this command:
-
-`systemctl stop gitea.service`
-
-- Launch Gitea backup with this command:
-
-`yunohost backup create --app gitea`
-
-- Backup your data with your specific strategy (could be with rsync, borg backup or just cp). The data is generally stored in `/home/yunohost.app/gitea`.
-- Restart Gitea service with theses command:
-
-`systemctl start gitea.service`
-
-### Remove
-
-Due of the backup core only feature the data directory in `/home/yunohost.app/gitea` **is not removed**. It must be manually deleted to purge user data from the app.
-
-### LFS setup
-To use a repository with an `LFS` setup, you need to activate it on `/opt/gitea/custom/conf/app.ini`
-
-```ini
-[server]
-LFS_START_SERVER = true
-LFS_HTTP_AUTH_EXPIRY = 20m
-```
-By default, NGINX is configured with a maximum value for uploading files at 200 MB. It's possible to change this value on `/etc/nginx/conf.d/my.domain.tld.d/gitea.conf`.
-```
-client_max_body_size 200M;
-```
-Don't forget to restart Gitea `sudo systemctl restart gitea.service`.
-
-> These settings are restored to the default configuration when updating Gitea. Remember to restore your configuration after all updates.
-
-### Git command access with HTTPS
-
-If you want to use the Git command (like `git clone`, `git pull`, `git push`), you need to set this app as **public**.
-
## Documentations et ressources
* Site officiel de l’app :
diff --git a/check_process b/check_process
deleted file mode 100644
index 308b465..0000000
--- a/check_process
+++ /dev/null
@@ -1,27 +0,0 @@
-;; General
- ; Manifest
- domain="domain.tld"
- path="/path"
- admin="john"
- is_public=1
- ; Checks
- pkg_linter=1
- setup_sub_dir=1
- setup_root=1
- setup_nourl=0
- setup_private=1
- setup_public=1
- upgrade=1
- #1.14.5
- upgrade=1 from_commit=7ea357724f2371aa1173f15ba5a7502609a0a131
- upgrade=1 from_commit=bd3fe9a8467864391ffaf96426036ab731833f99
- backup_restore=1
- multi_instance=1
- incorrect_path=0
- port_already_use=1 (6000)
- change_url=1
-;;; Upgrade options
- ; commit=7ea357724f2371aa1173f15ba5a7502609a0a131
- name=1.14.5
- ; commit=bd3fe9a8467864391ffaf96426036ab731833f99
- name=Just after group permission support
diff --git a/conf/app.ini b/conf/app.ini
index af59428..24a2065 100644
--- a/conf/app.ini
+++ b/conf/app.ini
@@ -1,87 +1,113 @@
-;https://github.com/gogits/gogs/blob/master/conf/app.ini
+;https://github.com/go-gitea/gitea/blob/release/v1.20/custom/conf/app.example.ini
APP_NAME = Gitea
RUN_USER = __APP__
RUN_MODE = prod
+WORK_PATH = __INSTALL_DIR__
[actions]
-ENABLED = true
+ENABLED = false
[database]
DB_TYPE = mysql
HOST = 127.0.0.1:3306
-NAME = __DB_USER__
+NAME = __DB_NAME__
USER = __DB_USER__
-PASSWD = __DB_PASSWORD__
+PASSWD = __DB_PWD__
SSL_MODE = disable
-PATH = data/gitea.db
-LOG_SQL = false
+LOG_SQL = false
[repository]
-ROOT = __REPOS_PATH__
+ROOT = __DATA_DIR__/repositories
FORCE_PRIVATE = false
[server]
-DOMAIN = __DOMAIN__
-HTTP_PORT = __PORT__
-HTTP_ADDR = 127.0.0.1
-ROOT_URL = https://__DOMAIN____PATH_URL__
-DISABLE_SSH = false
-SSH_PORT = __SSH_PORT__
+DOMAIN = __DOMAIN__
+HTTP_PORT = __PORT__
+HTTP_ADDR = 127.0.0.1
+ROOT_URL = https://__DOMAIN____PATH__
+DISABLE_SSH = false
+SSH_PORT = __SSH_PORT__
OFFLINE_MODE = false
-APP_DATA_PATH = __DATA_PATH__
+APP_DATA_PATH = __DATA_DIR__/data
LANDING_PAGE = explore
LFS_START_SERVER = true
-LFS_JWT_SECRET = __LFS_KEY__
+LFS_JWT_SECRET = __LFS_JWT_SECRET__
[mailer]
ENABLED = true
-SMTP_ADDR = 127.0.0.1
-SMTP_PORT = 25
-FROM = "Gitea"
+SMTP_ADDR = localhost
+SMTP_PORT = 587
+PROTOCOL = smtp+starttls
+FROM = "Gitea" <__APP__@__DOMAIN__>
+USER = __APP__
+PASSWD = __MAIL_PWD__
FORCE_TRUST_SERVER_CERT = true
+[email.incoming]
+ENABLED = true
+REPLY_TO_ADDRESS = __APP__+%{token}@__DOMAIN__
+HOST = localhost
+PORT = 993
+USE_TLS = true
+SKIP_TLS_VERIFY = true
+USERNAME = __APP__
+PASSWORD = __MAIL_PWD__
+
[service]
REGISTER_EMAIL_CONFIRM = false
-ENABLE_NOTIFY_MAIL = true
-DISABLE_REGISTRATION = true
-ENABLE_CAPTCHA = false
-REQUIRE_SIGNIN_VIEW = false
-ENABLE_REVERSE_PROXY_AUTHENTICATION = true
-ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = true
+ENABLE_NOTIFY_MAIL = true
+DISABLE_REGISTRATION = true
+ENABLE_CAPTCHA = false
+REQUIRE_SIGNIN_VIEW = false
+# reverse proxy authentication disabled until https://github.com/go-gitea/gitea/pull/18452 is merged
+# as it broke completely the LDAP sync
+ENABLE_REVERSE_PROXY_AUTHENTICATION = false
+ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
[picture]
-AVATAR_UPLOAD_PATH = __DATA_PATH__/avatars
+AVATAR_UPLOAD_PATH = __DATA_DIR__/data/avatars
[attachment]
-PATH = __DATA_PATH__/attachments
+PATH = __DATA_DIR__/data/attachments
[session]
PROVIDER = memory
[log]
-MODE = file
-LEVEL = Info
+MODE = file
+LEVEL = Info
ROOT_PATH = /var/log/__APP__
-logger.access.MODE =
+logger.access.MODE =
logger.router.MODE = router
logger.xorm.MODE = xorm
-REDIRECT_MACARON_LOG= true
-MACARON = file
+REDIRECT_MACARON_LOG = true
+MACARON = file
[log.file]
FILE_NAME = gitea.log
+LEVEL = Info
[log.router]
+MODE = file
FILE_NAME = router.log
LEVEL = Warn
[log.xorm]
+MODE = file
FILE_NAME = xorm.log
LEVEL = Warn
[security]
INSTALL_LOCK = true
-SECRET_KEY = __KEY__
+SECRET_KEY = __SECRET_KEY__
REVERSE_PROXY_AUTHENTICATION_USER = REMOTE-USER
-REVERSE_PROXY_TRUSTED_PROXIES = 127.0.0.0/8,::1/128
+REVERSE_PROXY_TRUSTED_PROXIES = 127.0.0.0/8,::1/128
+INTERNAL_TOKEN = __INTERNAL_TOKEN__
+
+[oauth2]
+JWT_SECRET = __JWT_SECRET__
+
+[cron.sync_external_users]
+ENABLED = true
+RUN_AT_START = false
diff --git a/conf/gogs_migrations b/conf/gogs_migrations
deleted file mode 100644
index 5e7a3c4..0000000
--- a/conf/gogs_migrations
+++ /dev/null
@@ -1,5 +0,0 @@
-/opt/$app
-/home/$app
-/var/log/$app
-/etc/systemd/system/$app.service
-/etc/nginx/conf.d/$domain.d/$app.conf
diff --git a/conf/gogs_post_migration.sh b/conf/gogs_post_migration.sh
deleted file mode 100644
index e4065ff..0000000
--- a/conf/gogs_post_migration.sh
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/bash
-
-# Ending the migration process from Gogs to Gitea
-
-set -u
-
-#=================================================
-# IMPORT GENERIC HELPERS
-#=================================================
-
-source /usr/share/yunohost/helpers
-
-#=================================================
-# SET VARIABLES
-#=================================================
-
-old_app="__OLD_APP__"
-new_app="__NEW_APP__"
-script_name="$0"
-
-#=================================================
-# DELETE OLD APP'S SETTINGS
-#=================================================
-
-ynh_secure_remove --file="/etc/yunohost/apps/$old_app"
-yunohost app ssowatconf
-
-#=================================================
-# DELETE THIS SCRIPT
-#=================================================
-
-echo "rm $script_name" | at now + 1 minutes
diff --git a/conf/login_source.sql b/conf/login_source.sql
deleted file mode 100644
index 72eb3b0..0000000
--- a/conf/login_source.sql
+++ /dev/null
@@ -1,6 +0,0 @@
-INSERT INTO `__APP__`.`login_source`
-(`id`, `type`, `name`, `is_active`, `cfg`, `created_unix`, `updated_unix`)
-VALUES
-('1', '2', 'YunoHost LDAP', '1', '{"Name":"Yunohost LDAP","Host":"localhost","Port":389,"UseSSL":false,"BindDN":"","BindPassword":"","UserBase":"ou=users,dc=yunohost,dc=org","AttributeName":"givenName","AttributeSurname":"sn","AttributeMail":"mail","Filter":"(&(uid=%s)(objectClass=posixAccount)(permission=cn=__APP__.main,ou=permission,dc=yunohost,dc=org))","AdminFilter":"(permission=cn=__APP__.admin,ou=permission,dc=yunohost,dc=org)","Enabled":true}', '1464014433', '1464015955')
-ON DUPLICATE KEY
-UPDATE cfg='{"Name":"YunoHost LDAP","Host":"localhost","Port":389,"UseSSL":false,"BindDN":"","BindPassword":"","UserBase":"ou=users,dc=yunohost,dc=org","AttributeName":"givenName","AttributeSurname":"sn","AttributeMail":"mail","Filter":"(&(uid=%s)(objectClass=posixAccount)(permission=cn=__APP__.main,ou=permission,dc=yunohost,dc=org))","AdminFilter":"(permission=cn=__APP__.admin,ou=permission,dc=yunohost,dc=org)","Enabled":true}';
diff --git a/conf/nginx.conf b/conf/nginx.conf
index acafbce..aa4ab8d 100644
--- a/conf/nginx.conf
+++ b/conf/nginx.conf
@@ -1,9 +1,9 @@
#sub_path_only rewrite ^__PATH__$ __PATH__/ permanent;
location __PATH__/ {
- proxy_pass http://localhost:__PORT__/;
+ proxy_pass http://127.0.0.1:__PORT__/;
proxy_set_header Host $host;
proxy_buffering off;
- client_max_body_size 200M;
+ client_max_body_size 0;
proxy_set_header X-Real-IP $remote_addr;
# Include SSOWAT user panel.
diff --git a/conf/source/arm.src b/conf/source/arm.src
deleted file mode 100644
index bd9315b..0000000
--- a/conf/source/arm.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-arm-6
-SOURCE_SUM=a531726f695aeb6bed4d69827e56e78e22fd0e4134b02b08edbc31c50c7e8735
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64.src b/conf/source/arm64.src
deleted file mode 100644
index cc8e479..0000000
--- a/conf/source/arm64.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-arm64
-SOURCE_SUM=55d132cfb7016984773029abc8d1d8e9d844138f5e4c8ff8df273b55aa2190f3
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.0.src b/conf/source/arm64_1.0.src
deleted file mode 100644
index 3117a5d..0000000
--- a/conf/source/arm64_1.0.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.0.2/gitea-1.0.2-linux-arm64
-SOURCE_SUM=b13562f19c41602d2b4f1601931e9d150de8273682969c081a4a5029622eb8b3
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.1.src b/conf/source/arm64_1.1.src
deleted file mode 100644
index dc6b942..0000000
--- a/conf/source/arm64_1.1.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.1.4/gitea-1.1.4-linux-arm64
-SOURCE_SUM=3f7a01669bbad671907942cece744f12390a37771fd8e1142afffeb9ee1f31f7
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.10.src b/conf/source/arm64_1.10.src
deleted file mode 100644
index f7f45e4..0000000
--- a/conf/source/arm64_1.10.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.10.3/gitea-1.10.3-linux-arm64
-SOURCE_SUM=3a0b6470a205c6b9f19a8b31469728f29818c58dd17e85a81ac4a928ab9f9512
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.11.src b/conf/source/arm64_1.11.src
deleted file mode 100644
index afc1f2f..0000000
--- a/conf/source/arm64_1.11.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.11.7/gitea-1.11.7-linux-arm64
-SOURCE_SUM=71bc3b41955461491ca3b1a1e4abeaf70dc0cbd15e43e59e2178514b8f1ef0f8
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.12.src b/conf/source/arm64_1.12.src
deleted file mode 100644
index ce264f0..0000000
--- a/conf/source/arm64_1.12.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.12.6/gitea-1.12.6-linux-arm64
-SOURCE_SUM=b1e4620191d817b6d6975358c35197bf659bce04a5690bea2d1e6511054d0866
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.13.src b/conf/source/arm64_1.13.src
deleted file mode 100644
index 2fbd874..0000000
--- a/conf/source/arm64_1.13.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.13.7/gitea-1.13.7-linux-arm64
-SOURCE_SUM=cae7529e75ccfb0e4f3270c197777f9dbdcf66a516d3b4e102d1e208ff9a0224
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.14.src b/conf/source/arm64_1.14.src
deleted file mode 100644
index 9bf2c89..0000000
--- a/conf/source/arm64_1.14.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.14.6/gitea-1.14.6-linux-arm64
-SOURCE_SUM=d0e177368445748dcbfc3a082e2f1c68317d1490e11574224fb12ca01e91e15e
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.15.src b/conf/source/arm64_1.15.src
deleted file mode 100644
index 13f65f7..0000000
--- a/conf/source/arm64_1.15.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.15.11/gitea-1.15.11-linux-arm64
-SOURCE_SUM=a41a702d24e463c44dbc57a30551938a5e4c9377995065aca07e9dfbb22d5afc
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.16.src b/conf/source/arm64_1.16.src
deleted file mode 100644
index f686bfd..0000000
--- a/conf/source/arm64_1.16.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.16.9/gitea-1.16.9-linux-arm64
-SOURCE_SUM=c468cb92fee1fc917923fd2728449fb9da97e5e9e4322d531716b3c6571ceb20
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.17.src b/conf/source/arm64_1.17.src
deleted file mode 100644
index d898a69..0000000
--- a/conf/source/arm64_1.17.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.17.4/gitea-1.17.4-linux-arm64
-SOURCE_SUM=f3d430855071ffe771fb2f28ddb47f25e99b5c2b6450d7c0225961a8d7baac71
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.18.src b/conf/source/arm64_1.18.src
deleted file mode 100644
index 5963cc4..0000000
--- a/conf/source/arm64_1.18.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.18.5/gitea-1.18.5-linux-arm64
-SOURCE_SUM=0792eec1005588d7ddb3fa0263bfd0dd90aeef1ba9ef9a93be6a3e763328fbaf
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.19.src b/conf/source/arm64_1.19.src
deleted file mode 100644
index 1bf1fdd..0000000
--- a/conf/source/arm64_1.19.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.19.4/gitea-1.19.4-linux-arm64
-SOURCE_SUM=db147f43fa523a1ff9c7ae3acee9cde48b1b04ef1ca415a6429c781078ce2568
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.2.src b/conf/source/arm64_1.2.src
deleted file mode 100644
index 553ba66..0000000
--- a/conf/source/arm64_1.2.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.2.3/gitea-1.2.3-linux-arm64
-SOURCE_SUM=e779d43f2050c43138509a40540bdd4d16a11e8b76a6f66b447623ead6466fca
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.20.src b/conf/source/arm64_1.20.src
deleted file mode 100644
index f71b680..0000000
--- a/conf/source/arm64_1.20.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.20.5/gitea-1.20.5-linux-arm64
-SOURCE_SUM=4ebd424505df2a88c9741e23408bd0329721b1d2539b589950de4f109196a43d
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.3.src b/conf/source/arm64_1.3.src
deleted file mode 100644
index a0f3524..0000000
--- a/conf/source/arm64_1.3.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.3.3/gitea-1.3.3-linux-arm64
-SOURCE_SUM=348993e5fd119b6708b96a29067ddc41d8fefe4c0d5abf540d1e89e9886202ce
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.4.src b/conf/source/arm64_1.4.src
deleted file mode 100644
index 9d9083e..0000000
--- a/conf/source/arm64_1.4.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.4.3/gitea-1.4.3-linux-arm64
-SOURCE_SUM=af6a55516b94f5bfb7a9744086bd92124e6cba8c3d610935e5fe4c8ba42427ef
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.5.src b/conf/source/arm64_1.5.src
deleted file mode 100644
index 5bed656..0000000
--- a/conf/source/arm64_1.5.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.5.3/gitea-1.5.3-linux-arm64
-SOURCE_SUM=cdddf46e1711c7964cfd18b4ae37109d4865996b26426d4badaa78da969cfbae
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.6.src b/conf/source/arm64_1.6.src
deleted file mode 100644
index 74a0d32..0000000
--- a/conf/source/arm64_1.6.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.6.4/gitea-1.6.4-linux-arm64
-SOURCE_SUM=30252ca0adf170e84f52499a502195ad762f4fdca941f40ded80292790eaa2d3
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.7.src b/conf/source/arm64_1.7.src
deleted file mode 100644
index 31e6f82..0000000
--- a/conf/source/arm64_1.7.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.7.3/gitea-1.7.3-linux-arm64
-SOURCE_SUM=dc34250ddbcdf3096a7355db419fff615d7fd488e0336bec9bc880091f549c23
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.8.src b/conf/source/arm64_1.8.src
deleted file mode 100644
index 2737a2e..0000000
--- a/conf/source/arm64_1.8.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.8.3/gitea-1.8.3-linux-arm64
-SOURCE_SUM=e3569745122a793dbf1e86940a00c8843c0c3022513a9d9004593823b9e6abe1
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm64_1.9.src b/conf/source/arm64_1.9.src
deleted file mode 100644
index 1563e22..0000000
--- a/conf/source/arm64_1.9.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.9.6/gitea-1.9.6-linux-arm64
-SOURCE_SUM=f11e46fdca921e81255c4b052969e5c6085f24245e6e0da726c9627aaec78252
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.0.src b/conf/source/arm_1.0.src
deleted file mode 100644
index fe6aee6..0000000
--- a/conf/source/arm_1.0.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.0.2/gitea-1.0.2-linux-arm-6
-SOURCE_SUM=d8cd551840b4b5620609eba92e810f4963b259d2809a34724e8fae7b1db00d91
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.1.src b/conf/source/arm_1.1.src
deleted file mode 100644
index 9b8691d..0000000
--- a/conf/source/arm_1.1.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.1.4/gitea-1.1.4-linux-arm-6
-SOURCE_SUM=f39bce7927b363402d37774484a5d0c893ee55595175e3a4d14a12126bccdd80
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.10.src b/conf/source/arm_1.10.src
deleted file mode 100644
index b0f51f2..0000000
--- a/conf/source/arm_1.10.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.10.3/gitea-1.10.3-linux-arm-6
-SOURCE_SUM=54ca0b8ca9f927c91c69c61da134738b66faf0be68e310f140e56c4f14fe7ecf
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.11.src b/conf/source/arm_1.11.src
deleted file mode 100644
index 1a7b02d..0000000
--- a/conf/source/arm_1.11.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.11.7/gitea-1.11.7-linux-arm-6
-SOURCE_SUM=f106d1a846da7abfd8a7dbf20a5d9c60502e1ed034a31f5503f460dea4d0c77d
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.12.src b/conf/source/arm_1.12.src
deleted file mode 100644
index 5e44f55..0000000
--- a/conf/source/arm_1.12.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.12.6/gitea-1.12.6-linux-arm-6
-SOURCE_SUM=116caba20b596886b03309df0e319a5885ee72e3740e62ac488e4e38f424ca88
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.13.src b/conf/source/arm_1.13.src
deleted file mode 100644
index 91fd474..0000000
--- a/conf/source/arm_1.13.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.13.7/gitea-1.13.7-linux-arm-6
-SOURCE_SUM=ed4a0c39e1d68592210d5be78ef90125760f24cf1448fb864081265c93823ef7
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.14.src b/conf/source/arm_1.14.src
deleted file mode 100644
index cb57028..0000000
--- a/conf/source/arm_1.14.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.14.6/gitea-1.14.6-linux-arm-6
-SOURCE_SUM=4c075c11ee6b89b6c436c94e47290cf7daeff2006bb7ca1fbe6f22db4482e16f
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.15.src b/conf/source/arm_1.15.src
deleted file mode 100644
index 25f4ee1..0000000
--- a/conf/source/arm_1.15.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.15.11/gitea-1.15.11-linux-arm-6
-SOURCE_SUM=c60d364d8cb7e25b341cb7d9988cbc7b3485ff5aa994e021980dc47996a870f9
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.16.src b/conf/source/arm_1.16.src
deleted file mode 100644
index 13945b8..0000000
--- a/conf/source/arm_1.16.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.16.9/gitea-1.16.9-linux-arm-6
-SOURCE_SUM=0f0af0169b17927db6e8fe8711ef40c139d366983653034d6601e27761c3aa2b
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.17.src b/conf/source/arm_1.17.src
deleted file mode 100644
index f891578..0000000
--- a/conf/source/arm_1.17.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.17.4/gitea-1.17.4-linux-arm-6
-SOURCE_SUM=771abb512809d8ddbc12381c58b42cc9b2e3569101d9a6e42fdf9195c584bfc1
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.18.src b/conf/source/arm_1.18.src
deleted file mode 100644
index 12cf10a..0000000
--- a/conf/source/arm_1.18.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.18.5/gitea-1.18.5-linux-arm-6
-SOURCE_SUM=1663a366a7ee2741bec0378c559df33643451d081882ed03ee6a6f0684d5766c
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.19.src b/conf/source/arm_1.19.src
deleted file mode 100644
index 92b5a6d..0000000
--- a/conf/source/arm_1.19.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.19.4/gitea-1.19.4-linux-arm-6
-SOURCE_SUM=befb106cf527244fdb2c40e2493d6831d4863bc2d3fe8304b6a96336f4c7e916
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.2.src b/conf/source/arm_1.2.src
deleted file mode 100644
index 6b5755d..0000000
--- a/conf/source/arm_1.2.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.2.3/gitea-1.2.3-linux-arm-6
-SOURCE_SUM=06023c75babee8c9d76cee2886890ae9fe82b84a0e723c11ef9fafe3c5ba9539
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.20.src b/conf/source/arm_1.20.src
deleted file mode 100644
index 5aeddfc..0000000
--- a/conf/source/arm_1.20.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.20.5/gitea-1.20.5-linux-arm-6
-SOURCE_SUM=9d2312367c8cc06f85dc29d7a5901d32ef2128f182a343a0c30a84a8292781ab
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.3.src b/conf/source/arm_1.3.src
deleted file mode 100644
index 22ad6a9..0000000
--- a/conf/source/arm_1.3.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.3.3/gitea-1.3.3-linux-arm-6
-SOURCE_SUM=b1b20d5905cd275b384da2a08d36ed0730801f23fb33df5c45302c9a6ec62dc6
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.4.src b/conf/source/arm_1.4.src
deleted file mode 100644
index 2b3c5bd..0000000
--- a/conf/source/arm_1.4.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.4.3/gitea-1.4.3-linux-arm-6
-SOURCE_SUM=d7341bd9536dbc7b1c3935efe3b0b6be953b0c3f0390b9b794e8fd54d58fee5b
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.5.src b/conf/source/arm_1.5.src
deleted file mode 100644
index 51d6bf6..0000000
--- a/conf/source/arm_1.5.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.5.3/gitea-1.5.3-linux-arm-6
-SOURCE_SUM=6d16b6bcc3cf804cc9b4e0e9ce3aa42e6699662f99998a06c25c7a43df64b0b6
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.6.src b/conf/source/arm_1.6.src
deleted file mode 100644
index 3b74aca..0000000
--- a/conf/source/arm_1.6.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.6.4/gitea-1.6.4-linux-arm-6
-SOURCE_SUM=30bb6220cde6b35522bdaf5ffca0d2daba8a0eebee56e3f11cd40d3e5f8f5669
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.7.src b/conf/source/arm_1.7.src
deleted file mode 100644
index 8f37252..0000000
--- a/conf/source/arm_1.7.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.7.3/gitea-1.7.3-linux-arm-6
-SOURCE_SUM=c38394be40634b0e1bd0fac0898474ff50e4535af610c12ee16ec3cabd2d4771
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.8.src b/conf/source/arm_1.8.src
deleted file mode 100644
index d5005b9..0000000
--- a/conf/source/arm_1.8.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.8.3/gitea-1.8.3-linux-arm-6
-SOURCE_SUM=920b74ec10be323e5dc684fe3b5c3b157bf6f1d6cca0ee1c4f9693f766d1574d
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/arm_1.9.src b/conf/source/arm_1.9.src
deleted file mode 100644
index d37b2e2..0000000
--- a/conf/source/arm_1.9.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.9.6/gitea-1.9.6-linux-arm-6
-SOURCE_SUM=b8f825d701d9205b529acfc9c311fd079af8f0b4ae9267b2dab5c12aee339c57
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7.src b/conf/source/armv7.src
deleted file mode 100644
index 81558c1..0000000
--- a/conf/source/armv7.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-arm-6
-SOURCE_SUM=a531726f695aeb6bed4d69827e56e78e22fd0e4134b02b08edbc31c50c7e8735
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.0.src b/conf/source/armv7_1.0.src
deleted file mode 100644
index 9d39570..0000000
--- a/conf/source/armv7_1.0.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.0.2/gitea-1.0.2-linux-arm-7
-SOURCE_SUM=1533c4b9142d89e3ac78ac9650a1f1507d24f9ac7afcdbe73c83ae5517c36165
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.1.src b/conf/source/armv7_1.1.src
deleted file mode 100644
index 6b83741..0000000
--- a/conf/source/armv7_1.1.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.1.4/gitea-1.1.4-linux-arm-7
-SOURCE_SUM=3b66cbca2f6ad10c8323c3d35280d63d17e192ab5e4aaa7415f5048710c00705
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.10.src b/conf/source/armv7_1.10.src
deleted file mode 100644
index 85e75ea..0000000
--- a/conf/source/armv7_1.10.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.10.3/gitea-1.10.3-linux-arm-6
-SOURCE_SUM=54ca0b8ca9f927c91c69c61da134738b66faf0be68e310f140e56c4f14fe7ecf
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.11.src b/conf/source/armv7_1.11.src
deleted file mode 100644
index 52fa6b7..0000000
--- a/conf/source/armv7_1.11.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.11.7/gitea-1.11.7-linux-arm-6
-SOURCE_SUM=f106d1a846da7abfd8a7dbf20a5d9c60502e1ed034a31f5503f460dea4d0c77d
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.12.src b/conf/source/armv7_1.12.src
deleted file mode 100644
index 00b1c14..0000000
--- a/conf/source/armv7_1.12.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.12.6/gitea-1.12.6-linux-arm-6
-SOURCE_SUM=116caba20b596886b03309df0e319a5885ee72e3740e62ac488e4e38f424ca88
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.13.src b/conf/source/armv7_1.13.src
deleted file mode 100644
index dea7e9f..0000000
--- a/conf/source/armv7_1.13.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.13.7/gitea-1.13.7-linux-arm-6
-SOURCE_SUM=ed4a0c39e1d68592210d5be78ef90125760f24cf1448fb864081265c93823ef7
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.14.src b/conf/source/armv7_1.14.src
deleted file mode 100644
index bd3cdc1..0000000
--- a/conf/source/armv7_1.14.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.14.6/gitea-1.14.6-linux-arm-6
-SOURCE_SUM=4c075c11ee6b89b6c436c94e47290cf7daeff2006bb7ca1fbe6f22db4482e16f
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.15.src b/conf/source/armv7_1.15.src
deleted file mode 100644
index 3c2672e..0000000
--- a/conf/source/armv7_1.15.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.15.11/gitea-1.15.11-linux-arm-6
-SOURCE_SUM=c60d364d8cb7e25b341cb7d9988cbc7b3485ff5aa994e021980dc47996a870f9
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.16.src b/conf/source/armv7_1.16.src
deleted file mode 100644
index 440a26a..0000000
--- a/conf/source/armv7_1.16.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.16.9/gitea-1.16.9-linux-arm-6
-SOURCE_SUM=0f0af0169b17927db6e8fe8711ef40c139d366983653034d6601e27761c3aa2b
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.17.src b/conf/source/armv7_1.17.src
deleted file mode 100644
index a2a0daa..0000000
--- a/conf/source/armv7_1.17.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.17.4/gitea-1.17.4-linux-arm-6
-SOURCE_SUM=771abb512809d8ddbc12381c58b42cc9b2e3569101d9a6e42fdf9195c584bfc1
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.18.src b/conf/source/armv7_1.18.src
deleted file mode 100644
index cfdf794..0000000
--- a/conf/source/armv7_1.18.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.18.5/gitea-1.18.5-linux-arm-6
-SOURCE_SUM=1663a366a7ee2741bec0378c559df33643451d081882ed03ee6a6f0684d5766c
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.19.src b/conf/source/armv7_1.19.src
deleted file mode 100644
index b61a10f..0000000
--- a/conf/source/armv7_1.19.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.19.4/gitea-1.19.4-linux-arm-6
-SOURCE_SUM=befb106cf527244fdb2c40e2493d6831d4863bc2d3fe8304b6a96336f4c7e916
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.2.src b/conf/source/armv7_1.2.src
deleted file mode 100644
index 63fe266..0000000
--- a/conf/source/armv7_1.2.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.2.3/gitea-1.2.3-linux-arm-7
-SOURCE_SUM=92a1a6fccae6d9382dccee90223457850124a8a9e9505401a04f507b8a90c1dd
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.20.src b/conf/source/armv7_1.20.src
deleted file mode 100644
index f107b3f..0000000
--- a/conf/source/armv7_1.20.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.20.5/gitea-1.20.5-linux-arm-6
-SOURCE_SUM=9d2312367c8cc06f85dc29d7a5901d32ef2128f182a343a0c30a84a8292781ab
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.3.src b/conf/source/armv7_1.3.src
deleted file mode 100644
index f5dd751..0000000
--- a/conf/source/armv7_1.3.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.3.3/gitea-1.3.3-linux-arm-7
-SOURCE_SUM=1f52cbaf97ca70cf6db5c152f6cff7921e9b066ffbe21ee4015616946c9d4251
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.4.src b/conf/source/armv7_1.4.src
deleted file mode 100644
index 7849e95..0000000
--- a/conf/source/armv7_1.4.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.4.3/gitea-1.4.3-linux-arm-7
-SOURCE_SUM=2a93d7a09f0f9b999651f156a4c0c65a1d4da0c75a68a13bdd0b920082d514de
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.5.src b/conf/source/armv7_1.5.src
deleted file mode 100644
index 7d7c476..0000000
--- a/conf/source/armv7_1.5.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.5.3/gitea-1.5.3-linux-arm-7
-SOURCE_SUM=eb939edb6cdc46702109410f38e358cc572564307e619c4798b6b8b99d6ec7e5
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.6.src b/conf/source/armv7_1.6.src
deleted file mode 100644
index 100a3b3..0000000
--- a/conf/source/armv7_1.6.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.6.4/gitea-1.6.4-linux-arm-7
-SOURCE_SUM=e78d31922e42ccaaf6566f32e249fb6ba4af2876102c6248b3ba32d051e69327
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.7.src b/conf/source/armv7_1.7.src
deleted file mode 100644
index 5eb2360..0000000
--- a/conf/source/armv7_1.7.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.7.3/gitea-1.7.3-linux-arm-7
-SOURCE_SUM=fd4ba028a30eb2fac1f8570fd3f6157f0c46c21992a2062dd7a6751cc8a47f2f
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.8.src b/conf/source/armv7_1.8.src
deleted file mode 100644
index 918684d..0000000
--- a/conf/source/armv7_1.8.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.8.3/gitea-1.8.3-linux-arm-6
-SOURCE_SUM=920b74ec10be323e5dc684fe3b5c3b157bf6f1d6cca0ee1c4f9693f766d1574d
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/armv7_1.9.src b/conf/source/armv7_1.9.src
deleted file mode 100644
index c9117cf..0000000
--- a/conf/source/armv7_1.9.src
+++ /dev/null
@@ -1,8 +0,0 @@
-# The armv7 build is brocken
-# See : https://github.com/go-gitea/gitea/issues/6700
-# Use temporary the armv6 binary
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.9.6/gitea-1.9.6-linux-arm-6
-SOURCE_SUM=b8f825d701d9205b529acfc9c311fd079af8f0b4ae9267b2dab5c12aee339c57
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386.src b/conf/source/i386.src
deleted file mode 100644
index a7276a3..0000000
--- a/conf/source/i386.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-386
-SOURCE_SUM=fbfde0506c100cc5e86a42c4eb73907d37be417df493a9b57400a0df55cafb14
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.0.src b/conf/source/i386_1.0.src
deleted file mode 100644
index 2ca0757..0000000
--- a/conf/source/i386_1.0.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.0.2/gitea-1.0.2-linux-386
-SOURCE_SUM=966840c7b815662332c3785a65685bed08c8eab508b8af0fe41307b5ebce8399
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.1.src b/conf/source/i386_1.1.src
deleted file mode 100644
index 80a2235..0000000
--- a/conf/source/i386_1.1.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.1.4/gitea-1.1.4-linux-386
-SOURCE_SUM=d3fc91e4da9282abc2785bb96d1d805c85ae0a253228c2277e21fb332946c0fe
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.10.src b/conf/source/i386_1.10.src
deleted file mode 100644
index 8bd8a32..0000000
--- a/conf/source/i386_1.10.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.10.3/gitea-1.10.3-linux-386
-SOURCE_SUM=829946f7ba6fced84d42718039db4be4371e10a3166f44ee22c9bfee35747954
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.11.src b/conf/source/i386_1.11.src
deleted file mode 100644
index 5c466c2..0000000
--- a/conf/source/i386_1.11.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.11.7/gitea-1.11.7-linux-386
-SOURCE_SUM=e176c650ab1dd9735014e5a2c29f15585b988ead9d800d02763e0f4adf283496
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.12.src b/conf/source/i386_1.12.src
deleted file mode 100644
index 97ff451..0000000
--- a/conf/source/i386_1.12.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.12.6/gitea-1.12.6-linux-386
-SOURCE_SUM=de287e912b32b0617e538f4c9c8d263fc16b5e2ba0b76ea9ab018011e9943316
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.13.src b/conf/source/i386_1.13.src
deleted file mode 100644
index a226815..0000000
--- a/conf/source/i386_1.13.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.13.7/gitea-1.13.7-linux-386
-SOURCE_SUM=927710a470af5f5ebab55bb3e4a0994f5832942c1c618e288226b57634232ec4
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.14.src b/conf/source/i386_1.14.src
deleted file mode 100644
index b9868bd..0000000
--- a/conf/source/i386_1.14.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.14.6/gitea-1.14.6-linux-386
-SOURCE_SUM=1a3382eb4faf60a5f5c590843f8e7cd1f7d0e78e99fe2511f86368340c0cfe2e
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.15.src b/conf/source/i386_1.15.src
deleted file mode 100644
index 53f0004..0000000
--- a/conf/source/i386_1.15.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.15.11/gitea-1.15.11-linux-386
-SOURCE_SUM=bad15648236e8da71de1a09b9fe0f21d955605c3aba92f6bcf7dc1f490791a8d
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.16.src b/conf/source/i386_1.16.src
deleted file mode 100644
index ac697d4..0000000
--- a/conf/source/i386_1.16.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.16.9/gitea-1.16.9-linux-386
-SOURCE_SUM=de40bf7cd20fe42f0d32bfc7401480cec7e1496297cb726acc94afd9d190bf9f
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.17.src b/conf/source/i386_1.17.src
deleted file mode 100644
index b768e97..0000000
--- a/conf/source/i386_1.17.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.17.4/gitea-1.17.4-linux-386
-SOURCE_SUM=f18ebd43e87de83b681149e1802e0650fa29b6e25c4f6e1625899c6709706db3
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.18.src b/conf/source/i386_1.18.src
deleted file mode 100644
index 2f7c738..0000000
--- a/conf/source/i386_1.18.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.18.5/gitea-1.18.5-linux-386
-SOURCE_SUM=0fab5fafa55370593ccaf1be2833cff95834ea006502112189973d229893b50c
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.19.src b/conf/source/i386_1.19.src
deleted file mode 100644
index 11a39fe..0000000
--- a/conf/source/i386_1.19.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.19.4/gitea-1.19.4-linux-386
-SOURCE_SUM=70fe6293587d467b8c31d8ab18d8b3abb603bb7a72b7cd90839e84a155cb89b5
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.2.src b/conf/source/i386_1.2.src
deleted file mode 100644
index d80179c..0000000
--- a/conf/source/i386_1.2.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.2.3/gitea-1.2.3-linux-386
-SOURCE_SUM=a8593c5e908c7e6c26620d45122d017e38441e915a4ea472543251772dc5a6d9
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.20.src b/conf/source/i386_1.20.src
deleted file mode 100644
index e167ee0..0000000
--- a/conf/source/i386_1.20.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.20.5/gitea-1.20.5-linux-386
-SOURCE_SUM=2a0dff4c14d7d08008feb009284cc10599a0c19090b0b6d82d57d8ca87e53f12
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.3.src b/conf/source/i386_1.3.src
deleted file mode 100644
index aa33a24..0000000
--- a/conf/source/i386_1.3.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.3.3/gitea-1.3.3-linux-386
-SOURCE_SUM=1b746cccffca446876ccc71efe328699f002622dab1d438e2142c8d7c23a22d7
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.4.src b/conf/source/i386_1.4.src
deleted file mode 100644
index 61dd883..0000000
--- a/conf/source/i386_1.4.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.4.3/gitea-1.4.3-linux-386
-SOURCE_SUM=760dda6f1cd76aa705915686a1d18837af3c4d912f731d1399048409a46ed2ea
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.5.src b/conf/source/i386_1.5.src
deleted file mode 100644
index a8b9d00..0000000
--- a/conf/source/i386_1.5.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.5.3/gitea-1.5.3-linux-386
-SOURCE_SUM=292ef977c46b15650a68782666710bc3379bb4b22a3ae2cae761724569ca5857
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.6.src b/conf/source/i386_1.6.src
deleted file mode 100644
index eabb1f5..0000000
--- a/conf/source/i386_1.6.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.6.4/gitea-1.6.4-linux-386
-SOURCE_SUM=1ccdca624582fbfb8c2b0a819b63b33e7b05a2d355bb4527cc55a6e367d5765d
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.7.src b/conf/source/i386_1.7.src
deleted file mode 100644
index 2fcf64e..0000000
--- a/conf/source/i386_1.7.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.7.3/gitea-1.7.3-linux-386
-SOURCE_SUM=a420bccb17e6e1c317c014475ce5a5bf8091da123cc55b0569660ae43ababf44
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.8.src b/conf/source/i386_1.8.src
deleted file mode 100644
index 256641b..0000000
--- a/conf/source/i386_1.8.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.8.3/gitea-1.8.3-linux-386
-SOURCE_SUM=e58f4a88b01a4880f97ae32a92e869d978a434a9a876c6a3f4e4a5721e8c4bd6
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/i386_1.9.src b/conf/source/i386_1.9.src
deleted file mode 100644
index 1be81ce..0000000
--- a/conf/source/i386_1.9.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.9.6/gitea-1.9.6-linux-386
-SOURCE_SUM=0cd6db19ea9268633ba17d5a6d7d4c6cc01b79b1dc4a39e16fda110b4f5f5569
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64.src b/conf/source/x86-64.src
deleted file mode 100644
index bb47465..0000000
--- a/conf/source/x86-64.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-amd64
-SOURCE_SUM=7a521914203b07c7a0613ae30d8ab229111b149a2fa219423e643cd9a039256e
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.0.src b/conf/source/x86-64_1.0.src
deleted file mode 100644
index 134b97f..0000000
--- a/conf/source/x86-64_1.0.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.0.2/gitea-1.0.2-linux-amd64
-SOURCE_SUM=02ed9a3bb7bcd1c8f3d8888e51a0887b3c0f44b2a80d50c99f9e407e457545ab
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.1.src b/conf/source/x86-64_1.1.src
deleted file mode 100644
index 00da3ab..0000000
--- a/conf/source/x86-64_1.1.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.1.4/gitea-1.1.4-linux-amd64
-SOURCE_SUM=1d8804ff7bed26464d61115b9d88ead8a7a7937ceed66fd0bfaceecd4be41274
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.10.src b/conf/source/x86-64_1.10.src
deleted file mode 100644
index 1594b3a..0000000
--- a/conf/source/x86-64_1.10.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.10.3/gitea-1.10.3-linux-amd64
-SOURCE_SUM=e4e393da9f3dbcc6b200a58c0ba8c19ef02346ca24d6b273748b8346313053d0
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.11.src b/conf/source/x86-64_1.11.src
deleted file mode 100644
index 6e5dee4..0000000
--- a/conf/source/x86-64_1.11.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.11.7/gitea-1.11.7-linux-amd64
-SOURCE_SUM=9261c23b0063132eba61f995561d3a1e76eabfadd7370f8dea2989180c36e2ff
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.12.src b/conf/source/x86-64_1.12.src
deleted file mode 100644
index 477a46a..0000000
--- a/conf/source/x86-64_1.12.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.12.6/gitea-1.12.6-linux-amd64
-SOURCE_SUM=74417bc8e950b685de79c3a39655029f28d27c99e94adbe83c0ec22325d8771f
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.13.src b/conf/source/x86-64_1.13.src
deleted file mode 100644
index eddcf5a..0000000
--- a/conf/source/x86-64_1.13.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.13.7/gitea-1.13.7-linux-amd64
-SOURCE_SUM=f1c0d3368d49f544183ec799005e7149fa566e3fd6eca1091d67d75b3f89f716
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.14.src b/conf/source/x86-64_1.14.src
deleted file mode 100644
index be76bd3..0000000
--- a/conf/source/x86-64_1.14.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.14.6/gitea-1.14.6-linux-amd64
-SOURCE_SUM=20cc0a89421695320b077c9fe4f16996f03aaf9d24f661f8d2255794551c849b
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.15.src b/conf/source/x86-64_1.15.src
deleted file mode 100644
index b647844..0000000
--- a/conf/source/x86-64_1.15.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.15.11/gitea-1.15.11-linux-amd64
-SOURCE_SUM=e2f62b67c311116fbf8e52b4c162dbd7684ce9c7f0370642c1d402fece43aa8f
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.16.src b/conf/source/x86-64_1.16.src
deleted file mode 100644
index ee599d3..0000000
--- a/conf/source/x86-64_1.16.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.16.9/gitea-1.16.9-linux-amd64
-SOURCE_SUM=821dd30afed9ae42b18e727174b078ea9118a6ccc5106d8246bebf8180fcbef3
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.17.src b/conf/source/x86-64_1.17.src
deleted file mode 100644
index 7a35e99..0000000
--- a/conf/source/x86-64_1.17.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.17.4/gitea-1.17.4-linux-amd64
-SOURCE_SUM=a720c1e87748e4fc5e37f4079ad0f8369d3c6d63e274856eb04201857c98ca2b
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.18.src b/conf/source/x86-64_1.18.src
deleted file mode 100644
index 682d51a..0000000
--- a/conf/source/x86-64_1.18.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.18.5/gitea-1.18.5-linux-amd64
-SOURCE_SUM=4766ad9310bd39d50676f8199563292ae0bab3a1922b461ece0feb4611e867f2
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.19.src b/conf/source/x86-64_1.19.src
deleted file mode 100644
index 21b743f..0000000
--- a/conf/source/x86-64_1.19.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.19.4/gitea-1.19.4-linux-amd64
-SOURCE_SUM=bf68e8e39c70dc54a7876527d463b517f8af51a2d2924511cd047f479cd8aefd
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.2.src b/conf/source/x86-64_1.2.src
deleted file mode 100644
index faba5e0..0000000
--- a/conf/source/x86-64_1.2.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.2.3/gitea-1.2.3-linux-amd64
-SOURCE_SUM=bc71b6005617700c9b5654ddf5649aa9ee28dc2344d84254ddeb2678f4d44809
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.20.src b/conf/source/x86-64_1.20.src
deleted file mode 100644
index 78b492d..0000000
--- a/conf/source/x86-64_1.20.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.20.5/gitea-1.20.5-linux-amd64
-SOURCE_SUM=ae8d21f36098a62272fcfa67ecbb567d0ba6cf5aecaaab29a6b98a407d435bdf
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.3.src b/conf/source/x86-64_1.3.src
deleted file mode 100644
index 3cfdf88..0000000
--- a/conf/source/x86-64_1.3.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.3.3/gitea-1.3.3-linux-amd64
-SOURCE_SUM=4f37b280eb9dcde7820e801e51ca07682faee703c220548da2f8aa9b6adb5231
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.4.src b/conf/source/x86-64_1.4.src
deleted file mode 100644
index b493a9e..0000000
--- a/conf/source/x86-64_1.4.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.4.3/gitea-1.4.3-linux-amd64
-SOURCE_SUM=fe60fca294baa24fe4862bbcfe29c92d5a8a883a48aadb80f3a1270cf5de9bd4
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.5.src b/conf/source/x86-64_1.5.src
deleted file mode 100644
index 9b20d7b..0000000
--- a/conf/source/x86-64_1.5.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.5.3/gitea-1.5.3-linux-amd64
-SOURCE_SUM=f84eb0b77b47d88b16b1de6ca443dab4a77e940835748d309956052887b9c507
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.6.src b/conf/source/x86-64_1.6.src
deleted file mode 100644
index 8ea4b91..0000000
--- a/conf/source/x86-64_1.6.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.6.4/gitea-1.6.4-linux-amd64
-SOURCE_SUM=e9508e04688e9840708c341125b47b43a2c12cad52185be4b7b6cf7a2fb8bb71
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.7.src b/conf/source/x86-64_1.7.src
deleted file mode 100644
index ce97cc3..0000000
--- a/conf/source/x86-64_1.7.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.7.3/gitea-1.7.3-linux-amd64
-SOURCE_SUM=49b733a3272dc49cb869c1ba9624a9880168f27b8112197d0c7fa32411dbf625
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.8.src b/conf/source/x86-64_1.8.src
deleted file mode 100644
index d5d2530..0000000
--- a/conf/source/x86-64_1.8.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.8.3/gitea-1.8.3-linux-amd64
-SOURCE_SUM=7bb28b21cce4bdf0a24e6f6b21c064afa56d84904052dd55afdf59c419d49988
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/source/x86-64_1.9.src b/conf/source/x86-64_1.9.src
deleted file mode 100644
index 18bfb1e..0000000
--- a/conf/source/x86-64_1.9.src
+++ /dev/null
@@ -1,5 +0,0 @@
-SOURCE_URL=https://github.com/go-gitea/gitea/releases/download/v1.9.6/gitea-1.9.6-linux-amd64
-SOURCE_SUM=8080c6469fb1dd7e24995bedf927185f6abb57215c043dc8d7fb0cba113c3735
-SOURCE_SUM_PRG=sha256sum
-SOURCE_FILENAME=gitea
-SOURCE_EXTRACT=false
diff --git a/conf/systemd.service b/conf/systemd.service
index 3dcae38..df40ea2 100644
--- a/conf/systemd.service
+++ b/conf/systemd.service
@@ -16,12 +16,12 @@ Type=simple
User=__APP__
Group=__APP__
WorkingDirectory=/home/yunohost.app/__APP__
-ExecStart=/opt/__APP__/gitea web
+ExecStart=__INSTALL_DIR__/gitea web
Restart=always
Environment=USER=__APP__ HOME=/home/yunohost.app/__APP__
# Sandboxing options to harden security
-# Depending on specificities of your service/app, you may need to tweak these
+# Depending on specificities of your service/app, you may need to tweak these
# .. but this should be a good baseline
# Details for these options: https://www.freedesktop.org/software/systemd/man/systemd.exec.html
NoNewPrivileges=yes
@@ -48,7 +48,7 @@ CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_WAKE_ALARM
CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG
CapabilityBoundingSet=~CAP_MAC_ADMIN CAP_MAC_OVERRIDE
CapabilityBoundingSet=~CAP_NET_ADMIN CAP_NET_BROADCAST CAP_NET_RAW
-CapabilityBoundingSet=~CAP_SYS_ADMIN CAP_SYS_PTRACE CAP_SYSLOG
+CapabilityBoundingSet=~CAP_SYS_ADMIN CAP_SYS_PTRACE CAP_SYSLOG
[Install]
WantedBy=multi-user.target
diff --git a/doc/ADMIN.md b/doc/ADMIN.md
new file mode 100644
index 0000000..13ad761
--- /dev/null
+++ b/doc/ADMIN.md
@@ -0,0 +1,107 @@
+## Git access
+
+### Via HTTPS
+
+If you want to use git repositories with `https` remotes, you need to set this app as **public**.
+
+### Via SSH
+
+If you want to use Gitea with SSH and be able to pull/push with your SSH key, your SSH daemon must be properly configured to use private/public keys.
+
+Here is a sample configuration `/etc/ssh/sshd_config` that works with Gitea:
+
+```bash
+PubkeyAuthentication yes
+AuthorizedKeysFile /home/yunohost.app/%u/.ssh/authorized_keys
+ChallengeResponseAuthentication no
+PasswordAuthentication no
+UsePAM no
+```
+
+You must also add your public key to your Gitea profile.
+
+When using SSH on any port other than 22, you need to add these lines to your SSH configuration `~/.ssh/config`:
+
+```bash
+Host __DOMAIN__
+ port 2222 # change this with the port you use
+```
+
+## LFS setup
+
+To use a repository with an `LFS` setup, you need to activate it on `__INSTALL_DIR__/custom/conf/app.ini`
+
+```ini
+[server]
+LFS_START_SERVER = true
+LFS_HTTP_AUTH_EXPIRY = 20m
+```
+
+By default, NGINX is configured with a maximum value for uploading files at 200 MB. It's possible to change this value on `/etc/nginx/conf.d/__DOMAIN__.d/__APP__.conf`.
+
+```nginx
+client_max_body_size 200M;
+```
+
+Don't forget to restart Gitea:
+
+```bash
+sudo systemctl restart __APP__.service.
+```
+
+> These settings are restored to the default configuration when updating Gitea. Remember to restore your configuration after all updates.
+
+## Upgrade
+
+From command line:
+
+```bash
+yunohost app upgrade __APP__
+```
+
+If you want to bypass the safety backup before upgrading, run:
+
+```bash
+yunohost app upgrade --no-safety-backup __APP__
+```
+
+## Group management
+
+Gitea support Yunohost group sync with Gitea Organisation Team.
+As the organisation link to the group depends of the instance this should be configured by the admin on the gitea configuration interface in `DOMAIN/GITEA_PATH/admin/auths/1`.
+Normally the admin just need to set the correct value of the `LDAP Group Team Map` parameter with something like this:
+```json
+{"cn=GROUPE_A_YNH,ou=groups,dc=yunohost,dc=org": {"gitea_organisation": ["gitea_team_A"]},
+ "cn=GROUPE_B_YNH,ou=groups,dc=yunohost,dc=org": {"gitea_organisation": ["gitea_team_B"]}}
+```
+
+By this all members of the Yunohost groupe `GROUPE_A_YNH` will be member of the gitea team `gitea_team_A` of the organisation `gitea_organisation`.
+
+**Note all others parameter are managed by the Yunohost package and should not be changed.**
+
+## Backup
+
+This application now uses the core-only feature of the backup. To keep the integrity of the data and to have a better guarantee of the restoration it is recommended to proceed as follows:
+
+- Stop Gitea service:
+
+```bash
+systemctl stop __APP__.service
+```
+
+- Launch Gitea backup:
+
+```bash
+yunohost backup create --app __APP__
+```
+
+- Backup your data with your specific strategy (could be with rsync, borg backup or just cp). The data is generally stored in `/home/yunohost.app/__APP__`.
+- Restart Gitea service:
+
+```bash
+systemctl stop __APP__.service
+```
+
+## Remove
+
+Due of the backup core only feature the data directory in `/home/yunohost.app/__APP__` **is not removed**. It must be manually deleted to purge user data from the app.
diff --git a/doc/DISCLAIMER.md b/doc/DISCLAIMER.md
deleted file mode 100644
index 018329f..0000000
--- a/doc/DISCLAIMER.md
+++ /dev/null
@@ -1,77 +0,0 @@
-## Additional informations
-
-### Notes on SSH usage
-
-If you want to use Gitea with SSH and be able to pull/push with your SSH key, your SSH daemon must be properly configured to use private/public keys. Here is a sample configuration `/etc/ssh/sshd_config` that works with Gitea:
-
-```bash
-PubkeyAuthentication yes
-AuthorizedKeysFile /home/yunohost.app/%u/.ssh/authorized_keys
-ChallengeResponseAuthentication no
-PasswordAuthentication no
-UsePAM no
-```
-
-You must also add your public key to your Gitea profile.
-
-When using SSH on any port other than 22, you need to add these lines to your SSH configuration `~/.ssh/config`:
-
-```bash
-Host domain.tld
- port 2222 # change this with the port you use
-```
-
-### Upgrade
-
-By default, a backup is performed before upgrading. To avoid this, you have the following options:
-- Pass the `NO_BACKUP_UPGRADE` env variable with `1` at each upgrade. For example `NO_BACKUP_UPGRADE=1 yunohost app upgrade gitea`.
-- Set `disable_backup_before_upgrade` to `1`. You can set it with this command:
-
-`yunohost app setting gitea disable_backup_before_upgrade -v 1`
-
-After that, the settings will be applied for **all** the next updates.
-
-From command line:
-
-`yunohost app upgrade gitea`
-
-### Backup
-
-This application now uses the core-only feature of the backup. To keep the integrity of the data and to have a better guarantee of the restoration it is recommended to proceed as follows:
-
-- Stop Gitea service with this command:
-
-`systemctl stop gitea.service`
-
-- Launch Gitea backup with this command:
-
-`yunohost backup create --app gitea`
-
-- Backup your data with your specific strategy (could be with rsync, borg backup or just cp). The data is generally stored in `/home/yunohost.app/gitea`.
-- Restart Gitea service with theses command:
-
-`systemctl start gitea.service`
-
-### Remove
-
-Due of the backup core only feature the data directory in `/home/yunohost.app/gitea` **is not removed**. It must be manually deleted to purge user data from the app.
-
-### LFS setup
-To use a repository with an `LFS` setup, you need to activate it on `/opt/gitea/custom/conf/app.ini`
-
-```ini
-[server]
-LFS_START_SERVER = true
-LFS_HTTP_AUTH_EXPIRY = 20m
-```
-By default, NGINX is configured with a maximum value for uploading files at 200 MB. It's possible to change this value on `/etc/nginx/conf.d/my.domain.tld.d/gitea.conf`.
-```
-client_max_body_size 200M;
-```
-Don't forget to restart Gitea `sudo systemctl restart gitea.service`.
-
-> These settings are restored to the default configuration when updating Gitea. Remember to restore your configuration after all updates.
-
-### Git command access with HTTPS
-
-If you want to use the Git command (like `git clone`, `git pull`, `git push`), you need to set this app as **public**.
diff --git a/manifest.json b/manifest.json
deleted file mode 100644
index 1de86a3..0000000
--- a/manifest.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "name": "Gitea",
- "id": "gitea",
- "packaging_format": 1,
- "description": {
- "en": "Lightweight Git forge",
- "fr": "Forge Git légère"
- },
- "upstream": {
- "license": "MIT",
- "website": "https://gitea.io/",
- "admindoc": "https://docs.gitea.io/",
- "code": "https://github.com/go-gitea/gitea"
- },
- "url": "http://gitea.io",
- "license": "MIT",
- "version": "1.21.5~ynh1",
- "maintainer": {
- "name": "Josué Tille",
- "email": "josue@tille.ch"
- },
- "previous_maintainers": {
- "name": "rafi59",
- "email": "rafi59_dev@srvmaison.fr.nf"
- },
- "multi_instance": true,
- "services": [
- "nginx",
- "mysql"
- ],
- "requirements": {
- "yunohost": ">= 11.2.0"
- },
- "arguments": {
- "install" : [
- {
- "name": "domain",
- "type": "domain"
- },
- {
- "name": "path",
- "type": "path",
- "default": "/gitea"
- },
- {
- "name": "admin",
- "type": "user"
- },
- {
- "name": "is_public",
- "type": "boolean",
- "help": {
- "en": "A public server means that everybody is able to access to the main page of the forge, on the public profile of the user and on the public repository. But you still can limit the access to each repository if you set it as private. Note that to be able to use the remote Git command (clone, pull, push) with HTTP and to use the API by (by example with a smartphone), you need to set this application as public.",
- "fr": "Un serveur public signifie que tout le monde peut accéder à la page principale de la forge, au profil public des utilisateurs et aux dépôts publics. Vous pouvez également définir les dépôts comme étant privés. Notez que pour pouvoir utiliser les commandes Git distantes (clone, pull, push) avec HTTP et pour pouvoir utiliser l'API (par exemple avec un smartphone), vous devez paramétrer cette application comme étant publique."
- },
- "default": true
- }
- ]
- }
-}
diff --git a/manifest.toml b/manifest.toml
new file mode 100644
index 0000000..d1bfccd
--- /dev/null
+++ b/manifest.toml
@@ -0,0 +1,104 @@
+#:schema https://raw.githubusercontent.com/YunoHost/apps/master/schemas/manifest.v2.schema.json
+
+packaging_format = 2
+
+id = "gitea"
+name = "Gitea"
+description.en = "Lightweight Git forge"
+description.fr = "Forge Git légère"
+
+version = "1.21.5~ynh1"
+
+maintainers = ["Josué Tille"]
+# previous_maintainers = [
+# "rafi59"
+# ]
+
+[upstream]
+license = "MIT"
+website = "https://gitea.io/"
+admindoc = "https://docs.gitea.io/"
+code = "https://github.com/go-gitea/gitea"
+cpe = "cpe:2.3:a:gitea:gitea"
+fund = "https://opencollective.com/gitea"
+
+[integration]
+yunohost = ">= 11.2"
+architectures = [
+ "amd64",
+ "i386",
+ "armhf",
+ "arm64"
+]
+multi_instance = true
+ldap = true
+sso = true
+disk = "120M"
+ram.build = "0M"
+ram.runtime = "100M"
+
+[install]
+ [install.domain]
+ type = "domain"
+
+ [install.path]
+ type = "path"
+ default = "/gitea"
+
+ [install.init_main_permission]
+ help.en = "Gitea should be visible by visitors to use git via HTTP and to use the API. You can still set repositories as private individually."
+ help.fr = "Gitea doit être visible par les visiteurs pour utiliser git via HTTP et utiliser l'API. Vous pouvez toujours rendre les dépôts privés individuellement."
+ type = "group"
+ default = "visitors"
+
+
+ [install.init_admin_permission]
+ ask.en = "Which group will have access to Gitea admin page"
+ ask.fr = "Quel groupe aura accès à l'administration de Gitea"
+ help.en = "Users of this group should have access to Gitea admin page"
+ help.fr = "Les utilisateurs de ce groupe devrait avoir accès à la page d'administration de Gitea"
+ type = "group"
+ default = "admins"
+
+[resources]
+
+ [resources.sources.main]
+ extract = false
+ rename = "gitea"
+
+ armhf.url = "https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-arm-6"
+ armhf.sha256 = "a531726f695aeb6bed4d69827e56e78e22fd0e4134b02b08edbc31c50c7e8735"
+ arm64.url = "https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-arm64"
+ arm64.sha256 = "55d132cfb7016984773029abc8d1d8e9d844138f5e4c8ff8df273b55aa2190f3"
+ i386.url = "https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-386"
+ i386.sha256 = "fbfde0506c100cc5e86a42c4eb73907d37be417df493a9b57400a0df55cafb14"
+ amd64.url = "https://github.com/go-gitea/gitea/releases/download/v1.21.5/gitea-1.21.5-linux-amd64"
+ amd64.sha256 = "7a521914203b07c7a0613ae30d8ab229111b149a2fa219423e643cd9a039256e"
+
+ [resources.system_user]
+ home = "/home/yunohost.app/__APP__"
+ allow_ssh = true
+ allow_email = true
+
+ [resources.install_dir]
+ dir = "/opt/yunohost/__APP__"
+
+ [resources.data_dir]
+
+ [resources.permissions]
+ main.url = "/"
+
+ admin.show_tile = false
+ admin.auth_header = false
+ admin.label = "Admins"
+
+ [resources.ports]
+ main.default = 6000
+
+ [resources.apt]
+ packages = [
+ "mariadb-server"
+ ]
+
+ [resources.database]
+ type = "mysql"
diff --git a/scripts/_common.sh b/scripts/_common.sh
index 45b115d..8702cf6 100644
--- a/scripts/_common.sh
+++ b/scripts/_common.sh
@@ -2,69 +2,26 @@
# SET ALL CONSTANTS
#=================================================
-app=$YNH_APP_INSTANCE_NAME
-dbname=$app
-db_user=$app
-final_path="/opt/$app"
-datadir="/home/yunohost.app/$app"
-repos_path="$datadir/repositories"
-data_path="$datadir/data"
-ssh_path="$datadir/.ssh"
-
-# Detect the system architecture to download the right tarball
-# NOTE: `uname -m` is more accurate and universal than `arch`
-# See https://en.wikipedia.org/wiki/Uname
-if [ -n "$(uname -m | grep arm64)" ] || [ -n "$(uname -m | grep aarch64)" ]; then
- architecture="arm64"
-elif [ -n "$(uname -m | grep 64)" ]; then
- architecture="x86-64"
-elif [ -n "$(uname -m | grep 86)" ]; then
- architecture="i386"
-elif [ -n "$(uname -m | grep armv7)" ]; then
- architecture="armv7"
-elif [ -n "$(uname -m | grep arm)" ]; then
- architecture="arm"
-else
- ynh_die --message "Unable to detect your achitecture, please open a bug describing \
- your hardware and the result of the command \"uname -m\"." 1
-fi
+systemd_match_start_line='Starting new Web server: tcp:127.0.0.1:'
+ssh_port=$(grep -P "Port\s+\d+" /etc/ssh/sshd_config | grep -P -o "\d+")
#=================================================
# DEFINE ALL COMMON FONCTIONS
#=================================================
-create_dir() {
- mkdir -p "$final_path/data"
- mkdir -p "$final_path/custom/conf"
- mkdir -p "$ssh_path"
- mkdir -p "$repos_path"
- mkdir -p "$data_path/avatars"
- mkdir -p "$data_path/attachments"
- mkdir -p "/var/log/$app"
-}
+_set_permissions() {
+ chown -R "$app:$app" "$install_dir"
+ chmod -R u=rwX,g=rX,o= "$install_dir"
+ chmod +x "$install_dir/gitea"
-config_nginx() {
- if [ "$path_url" != "/" ]
- then
- ynh_replace_string --match_string "^#sub_path_only" --replace_string "" --target_file "../conf/nginx.conf"
- fi
- ynh_add_nginx_config
-}
+ chown -R "$app:$app" "$data_dir"
+ find $data_dir \( \! -perm -o= \
+ -o \! -user $app \
+ -o \! -group $app \) \
+ -exec chown $app:$app {} \; \
+ -exec chmod u=rwX,g=rX,o= {} \;
+ chmod -R u=rwX,g=,o= "$data_dir/.ssh"
-config_gitea() {
- ssh_port=$(grep -P "Port\s+\d+" /etc/ssh/sshd_config | grep -P -o "\d+")
- ynh_add_config --template="app.ini" --destination="$final_path/custom/conf/app.ini"
-}
-
-set_permission() {
- chown -R $app:$app "$final_path"
- chown -R $app:$app "$datadir"
- chown -R $app:$app "/var/log/$app"
-
- chmod u=rwX,g=rX,o= "$final_path"
- chmod u=rwx,g=rx,o= "$final_path/gitea"
- chmod u=rwx,g=rx,o= "$final_path/custom/conf/app.ini"
- chmod u=rwX,g=rX,o= "$datadir"
- chmod u=rwX,g=rX,o= "/var/log/$app"
- chmod u=rwx,g=,o= "$ssh_path"
+ chown -R "$app:$app" "/var/log/$app"
+ chmod -R u=rwX,g=rX,o= "/var/log/$app"
}
diff --git a/scripts/backup b/scripts/backup
index a311d22..294d4ca 100644
--- a/scripts/backup
+++ b/scripts/backup
@@ -5,47 +5,44 @@
#=================================================
# Load common variables and helpers
-source ../settings/scripts/experimental_helper.sh
source ../settings/scripts/_common.sh
-
-# IMPORT GENERIC HELPERS
source /usr/share/yunohost/helpers
-# Exit if an error occurs during the execution of the script
-ynh_abort_if_errors
-# Retrieve app settings
-ynh_print_info --message="Loading installation settings..."
-domain=$(ynh_app_setting_get --app $app --key domain)
-
-if [[ ! "$(systemctl status $app.service)" =~ "Active: inactive (dead)" ]]; then
- ynh_print_warn --message="It's hightly recommended to make your backup when the service is stopped. Please stop $app service and with this command before to run the backup 'systemctl stop $app.service'"
+if [[ ! "$(systemctl status $app.service)" =~ 'Active: inactive (dead)' ]]; then
+ ynh_print_warn --message="It's hightly recommended to make your backup when the service is stopped. Please stop $app service with this command before to run the backup 'systemctl stop $app.service'"
fi
#=================================================
-# STANDARD BACKUP STEPS
+# DECLARE DATA AND CONF FILES TO BACKUP
#=================================================
+ynh_print_info --message='Declaring files to be backed up...'
# Copy the app source files
-ynh_print_info --message="Backing up code..."
-ynh_backup --src_path "$final_path"
+ynh_backup --src_path "$install_dir"
# Copy the data files
-ynh_print_info --message="Backing up user data..."
-ynh_backup --src_path "$datadir" --is_big=1
-
-ynh_print_info --message="Backing up configuration..."
+ynh_backup --src_path "$data_dir" --is_big=1
# Copy the conf files
-ynh_backup --src_path "/etc/nginx/conf.d/${domain}.d/${app}.conf"
-ynh_backup --src_path "/etc/systemd/system/${app}.service"
+ynh_backup --src_path "/etc/nginx/conf.d/$domain.d/$app.conf"
+
+ynh_backup --src_path="/etc/fail2ban/jail.d/$app.conf"
+ynh_backup --src_path="/etc/fail2ban/filter.d/$app.conf"
+
+ynh_backup --src_path="/etc/logrotate.d/$app"
+
+ynh_backup --src_path "/etc/systemd/system/$app.service"
# Backup logs
-ynh_print_info --message="Backing up logs..."
ynh_backup --src_path "/var/log/$app"
# Dump the database
-ynh_print_info --message="Backing up database"
-ynh_mysql_dump_db "$dbname" > ./db.sql
+ynh_print_info --message="Backing up the MySQL database"
+ynh_mysql_dump_db "$db_name" > ./db.sql
+
+#=================================================
+# END OF SCRIPT
+#=================================================
ynh_print_info --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)."
diff --git a/scripts/change_url b/scripts/change_url
index 46a03f3..ba0d493 100644
--- a/scripts/change_url
+++ b/scripts/change_url
@@ -1,66 +1,51 @@
#!/bin/bash
#=================================================
-# GENERIC START
+# GENERIC STARTING
+#=================================================
+# IMPORT GENERIC HELPERS
#=================================================
-# Import common cmd
-source ./experimental_helper.sh
-source ./_common.sh
-
-# IMPORT GENERIC HELPERS
+source _common.sh
source /usr/share/yunohost/helpers
-# Exit if an error occurs during the execution of the script
-ynh_abort_if_errors
-
-ynh_script_progression --message="Loading installation settings..."
-
-# RETRIEVE ARGUMENTS
-old_domain=$YNH_APP_OLD_DOMAIN
-domain=$YNH_APP_NEW_DOMAIN
-path_url=$(ynh_normalize_url_path --path_url ${YNH_APP_NEW_PATH:-'/'})
-app=$YNH_APP_INSTANCE_NAME
-
-db_password=$(ynh_app_setting_get --app $app --key mysqlpwd)
-admin=$(ynh_app_setting_get --app $app --key adminusername)
-key=$(ynh_app_setting_get --app $app --key secret_key)
-lfs_key=$(ynh_app_setting_get --app $app --key lfs_key)
-port=$(ynh_app_setting_get --app $app --key web_port)
-upstream_version=$(ynh_app_setting_get $app upstream_version)
-
#=================================================
# STANDARD MODIFICATIONS
#=================================================
+# STOP SYSTEMD SERVICE
+#=================================================
+ynh_script_progression --message="Stopping a systemd service..." --weight=1
-ynh_script_progression --message="Updating nginx configuration..."
+ynh_systemd_action --service_name="$app" --action=stop
+#=================================================
# MODIFY URL IN NGINX CONF
-nginx_conf_path=/etc/nginx/conf.d/$old_domain.d/$app.conf
+#=================================================
+ynh_script_progression --message="Updating NGINX web server configuration..." --weight=1
-# Change the domain for nginx
-# Change the domain for nginx
-if [[ "$old_domain" != "$domain" ]]; then
- # Delete file checksum for the old conf file location
- ynh_delete_file_checksum --file "$nginx_conf_path"
- mv $nginx_conf_path /etc/nginx/conf.d/$domain.d/$app.conf
- # Store file checksum for the new config file location
- ynh_store_file_checksum --file "/etc/nginx/conf.d/$domain.d/$app.conf"
-fi
+ynh_change_url_nginx_config
-config_nginx
-
-# Update gitea config
+#=================================================
+# SPECIFIC MODIFICATIONS
+#=================================================
+# Setup gitea.ini
+#=================================================
ynh_script_progression --message="Updating gitea configuration..."
-config_gitea
-# RELOAD services
-ynh_script_progression --message="Starting services..."
-ynh_systemd_action -l "Starting new Web server: tcp:127.0.0.1:" -p "/var/log/$app/gitea.log" -t 10 -a restart
-sleep 1
+ynh_add_config --template="app.ini" --destination="$install_dir/custom/conf/app.ini"
+_set_permissions
-# Store the checksum with the 'INTERNAL_TOKEN' value.
-# Should be removed when the issue https://github.com/go-gitea/gitea/issues/3246 is fixed
-ynh_store_file_checksum --file "$final_path/custom/conf/app.ini"
+#=================================================
+# GENERIC FINALISATION
+#=================================================
+# START SYSTEMD SERVICE
+#=================================================
+ynh_script_progression --message="Starting gitea services..." --weight=3
+
+ynh_systemd_action --service_name="$app" --action=start --log_path="/var/log/$app/gitea.log" --line_match="$systemd_match_start_line"
+
+#=================================================
+# END OF SCRIPT
+#=================================================
ynh_script_progression --message="Change of URL completed for $app" --last
diff --git a/scripts/experimental_helper.sh b/scripts/experimental_helper.sh
deleted file mode 100644
index 8757149..0000000
--- a/scripts/experimental_helper.sh
+++ /dev/null
@@ -1,257 +0,0 @@
-# Execute a command as another user
-# usage: exec_as USER COMMAND [ARG ...]
-exec_as() {
- local USER=$1
- shift 1
-
- if [[ $USER = $(whoami) ]]; then
- eval "$@"
- else
- sudo -u "$USER" "$@"
- fi
-}
-
-# Need also the helper https://github.com/YunoHost-Apps/Experimental_helpers/blob/master/ynh_handle_getopts_args/ynh_handle_getopts_args
-
-# Make the main steps to migrate an app to its fork.
-#
-# This helper has to be used for an app which needs to migrate to a new name or a new fork
-# (like owncloud to nextcloud or zerobin to privatebin).
-#
-# This helper will move the files of an app to its new name
-# or recreate the things it can't move.
-#
-# To specify which files it has to move, you have to create a "migration file", stored in ../conf
-# This file is a simple list of each file it has to move,
-# except that file names must reference the $app variable instead of the real name of the app,
-# and every instance-specific variables (like $domain).
-# $app is especially important because it's this variable which will be used to identify the old place and the new one for each file.
-#
-# If a database exists for this app, it will be dumped and then imported in a newly created database, with a new name and new user.
-# Don't forget you have to then apply these changes to application-specific settings (depends on the packaged application)
-#
-# Same things for an existing user, a new one will be created.
-# But the old one can't be removed unless it's not used. See below.
-#
-# If you have some dependencies for your app, it's possible to change the fake debian package which manages them.
-# You have to fill the $pkg_dependencies variable, and then a new fake package will be created and installed,
-# and the old one will be removed.
-# If you don't have a $pkg_dependencies variable, the helper can't know what the app dependencies are.
-#
-# The app settings.yml will be modified as follows:
-# - finalpath will be changed according to the new name (but only if the existing $final_path contains the old app name)
-# - The checksums of php-fpm and nginx config files will be updated too.
-# - If there is a $db_name value, it will be changed.
-# - And, of course, the ID will be changed to the new name too.
-#
-# Finally, the $app variable will take the value of the new name.
-# The helper will set the $migration_process variable to 1 if a migration has been successfully handled.
-#
-# You have to handle by yourself all the migrations not done by this helper, like configuration or special values in settings.yml
-# Also, at the end of the upgrade script, you have to add a post_migration script to handle all the things the helper can't do during YunoHost upgrade (mostly for permission reasons),
-# especially remove the old user, move some hooks and remove the old configuration directory
-# To launch this script, you have to move it elsewhere and start it after the upgrade script.
-# `cp ../conf/$script_post_migration /tmp`
-# `(cd /tmp; echo "/tmp/$script_post_migration" | at now + 2 minutes)`
-#
-# usage: ynh_handle_app_migration migration_id migration_list
-# | arg: -i, --migration_id= - ID from which to migrate
-# | arg: -l, --migration_list= - File specifying every file to move (one file per line)
-ynh_handle_app_migration () {
- # Need for end of install
- ynh_package_install at
-
- #=================================================
- # LOAD SETTINGS
- #=================================================
-
- old_app=$YNH_APP_INSTANCE_NAME
- local old_app_id=$YNH_APP_ID
- local old_app_number=$YNH_APP_INSTANCE_NUMBER
-
- # Declare an array to define the options of this helper.
- declare -Ar args_array=( [i]=migration_id= [l]=migration_list= )
- # Get the id from which to migrate
- local migration_id
- # And the file with the paths to move
- local migration_list
- # Manage arguments with getopts
- ynh_handle_getopts_args "$@"
-
- # Get the new app id in the manifest
- local new_app_id=$(grep \"id\": ../manifest.json | cut -d\" -f4)
- if [ $old_app_number -eq 1 ]; then
- local new_app=$new_app_id
- else
- local new_app=${new_app_id}__${old_app_number}
- fi
-
- #=================================================
- # CHECK IF IT HAS TO MIGRATE
- #=================================================
-
- migration_process=0
-
- if [ "$old_app_id" == "$new_app_id" ]
- then
- # If the 2 id are the same
- # No migration to do.
- echo 0
- return 0
- else
- if [ "$old_app_id" != "$migration_id" ]
- then
- # If the new app is not the authorized id, fail.
- ynh_die --message "Incompatible application for migration from $old_app_id to $new_app_id"
- fi
-
- echo "Migrate from $old_app_id to $new_app_id" >&2
-
- #=================================================
- # CHECK IF THE MIGRATION CAN BE DONE
- #=================================================
-
- # TODO Handle multi instance apps...
- # Check that there is not already an app installed for this id.
- (yunohost app list --installed -f "$new_app" | grep -q id) \
- && ynh_die "$new_app is already installed"
-
- #=================================================
- # CHECK THE LIST OF FILES TO MOVE
- #=================================================
-
- local temp_migration_list="$(tempfile)"
-
- # Build the list by removing blank lines and comment lines
- sed '/^#.*\|^$/d' "../conf/$migration_list" > "$temp_migration_list"
-
- # Check if there is no file in the destination
- local file_to_move=""
- while read file_to_move
- do
- # Replace all occurences of $app by $new_app in each file to move.
- local move_to_destination="${file_to_move//\$app/$new_app}"
- test -e "$move_to_destination" && ynh_die "A file named $move_to_destination already exists."
- done < "$temp_migration_list"
-
- #=================================================
- # COPY YUNOHOST SETTINGS FOR THIS APP
- #=================================================
-
- local settings_dir="/etc/yunohost/apps"
- cp -a "$settings_dir/$old_app" "$settings_dir/$new_app"
- cp -a ../{scripts,conf} "$settings_dir/$new_app"
-
- # Replace the old id by the new one
- ynh_replace_string "\(^id: .*\)$old_app" "\1$new_app" "$settings_dir/$new_app/settings.yml"
- # INFO: There a special behavior with yunohost app setting:
- # if the id given in argument does not match with the id
- # stored in the config file, the config file will be purged.
- # That's why we use sed instead of app setting here.
- # https://github.com/YunoHost/yunohost/blob/c6b5284be8da39cf2da4e1036a730eb5e0515096/src/yunohost/app.py#L1316-L1321
-
- # Change the label if it's simply the name of the app
- old_label=$(ynh_app_setting_get $new_app label)
- if [ "${old_label,,}" == "$old_app_id" ]
- then
- # Build the new label from the id of the app. With the first character as upper case
- new_label=$(echo $new_app_id | cut -c1 | tr [:lower:] [:upper:])$(echo $new_app_id | cut -c2-)
- ynh_app_setting_set $new_app label $new_label
- fi
-
- yunohost tools shell -c "from yunohost.permission import permission_delete; permission_delete('$old_app.main', force=True, sync_perm=False)"
- yunohost tools shell -c "from yunohost.permission import permission_create; permission_create('$new_app.main', url='/' , sync_perm=True)"
-
- #=================================================
- # MOVE FILES TO THE NEW DESTINATION
- #=================================================
-
- while read file_to_move
- do
- # Replace all occurence of $app by $new_app in each file to move.
- move_to_destination="$(eval echo "${file_to_move//\$app/$new_app}")"
- local real_file_to_move="$(eval echo "${file_to_move//\$app/$old_app}")"
- echo "Move file $real_file_to_move to $move_to_destination" >&2
- mv "$real_file_to_move" "$move_to_destination"
- done < "$temp_migration_list"
-
- #=================================================
- # UPDATE SETTINGS KNOWN ENTRIES
- #=================================================
-
- # Replace nginx checksum
- ynh_replace_string "\(^checksum__etc_nginx.*\)_$old_app" "\1_$new_app/" "$settings_dir/$new_app/settings.yml"
-
- # Replace php5-fpm checksums
- ynh_replace_string "\(^checksum__etc_php5.*[-_]\)$old_app" "\1$new_app/" "$settings_dir/$new_app/settings.yml"
-
- # Replace final_path
- ynh_replace_string "\(^final_path: .*\)$old_app" "\1$new_app" "$settings_dir/$new_app/settings.yml"
-
- #=================================================
- # MOVE THE DATABASE
- #=================================================
-
- db_pwd=$(ynh_app_setting_get $old_app mysqlpwd)
- db_name=$dbname
-
- # Check if a database exists before trying to move it
- local mysql_root_password=$(cat $MYSQL_ROOT_PWD_FILE)
- if [ -n "$db_name" ] && mysqlshow -u root -p$mysql_root_password | grep -q "^| $db_name"
- then
- new_db_name=$(ynh_sanitize_dbid $new_app)
- echo "Rename the database $db_name to $new_db_name" >&2
-
- local sql_dump="/tmp/${db_name}-$(date '+%s').sql"
-
- # Dump the old database
- ynh_mysql_dump_db "$db_name" > "$sql_dump"
-
- # Create a new database
- ynh_mysql_setup_db $new_db_name $new_db_name $db_pwd
- # Then restore the old one into the new one
- ynh_mysql_connect_as $new_db_name $db_pwd $new_db_name < "$sql_dump"
-
- # Remove the old database
- ynh_mysql_remove_db $db_name $db_name
- # And the dump
- ynh_secure_remove --file="$sql_dump"
-
- # Update the value of $db_name
- db_name=$new_db_name
- ynh_app_setting_set $new_app db_name $db_name
- fi
-
- #=================================================
- # CHANGE THE FAKE DEPENDENCIES PACKAGE
- #=================================================
-
- # Check if a variable $pkg_dependencies exists
- # If this variable doesn't exist, this part shall be managed in the upgrade script.
- if [ -n "${pkg_dependencies:-}" ]
- then
- # Define the name of the package
- local old_package_name="${old_app//_/-}-ynh-deps"
- local new_package_name="${new_app//_/-}-ynh-deps"
-
- if ynh_package_is_installed "$old_package_name"
- then
- # Install a new fake package
- app=$new_app
- ynh_install_app_dependencies $pkg_dependencies
- # Then remove the old one
- app=$old_app
- ynh_remove_app_dependencies
- fi
- fi
-
- #=================================================
- # UPDATE THE ID OF THE APP
- #=================================================
-
- app=$new_app
-
- # Set migration_process to 1 to inform that an upgrade has been made
- migration_process=1
- fi
-}
diff --git a/scripts/fix_user_db_for_local_users.sql b/scripts/fix_user_db_for_local_users.sql
new file mode 100644
index 0000000..4873846
--- /dev/null
+++ b/scripts/fix_user_db_for_local_users.sql
@@ -0,0 +1,3 @@
+UPDATE `__APP__`.`user`
+SET `login_type` = 2, `login_source` = 1, `login_name` = `name`
+WHERE `user`.`name` in __USER_LIST__ ;
diff --git a/scripts/install b/scripts/install
index bc590ae..8ed9a0d 100644
--- a/scripts/install
+++ b/scripts/install
@@ -3,149 +3,107 @@
#=================================================
# GENERIC START
#=================================================
-
-# Load common variables and helpers
-source ./experimental_helper.sh
-source ./_common.sh
-
# IMPORT GENERIC HELPERS
+#=================================================
+
+source _common.sh
source /usr/share/yunohost/helpers
-# Exit if an error occurs during the execution of the script
-ynh_abort_if_errors
+#=================================================
+# APP "BUILD" (DEPLOYING SOURCES, VENV, COMPILING ETC)
+#=================================================
+# DOWNLOAD, CHECK AND UNPACK SOURCE
+#=================================================
-ynh_script_progression --message="Validating installation parameters..."
+ynh_script_progression --message='Creating base directory...'
-# Retrieve arguments
-domain=$YNH_APP_ARG_DOMAIN
-path_url=$YNH_APP_ARG_PATH
-admin=$YNH_APP_ARG_ADMIN
-is_public=$YNH_APP_ARG_IS_PUBLIC
-upstream_version=$(ynh_app_upstream_version)
-
-# Register (book) web path
-ynh_webpath_register --app $app --domain $domain --path_url $path_url
-
-# Check user parameter
-ynh_user_exists "$admin" \
- || ynh_die --message "The chosen admin user does not exist."
-
-# Check Final Path availability
-test ! -e "$final_path" || ynh_die --message "This path already contains a folder"
-
-if [ -e "$datadir" ]; then
- old_data_dir_path="$datadir$(date '+%Y%m%d.%H%M%S')"
- ynh_print_warn "A data directory already exist. Data was renamed to $old_data_dir_path"
- mv "$datadir" "$old_data_dir_path"
+if [ -n "$(ls -A $data_dir)" ]; then
+ old_data_dir_path="${data_dir}_$(date '+%Y%m%d.%H%M%S')"
+ ynh_print_warn "Data directory was not empty. Data was moved to $old_data_dir_path"
+ mkdir -p $old_data_dir_path
+ mv -t "$old_data_dir_path" "$data_dir"/*
fi
-# Generate random password and key
-ynh_script_progression --message="Defining db password and key..."
-db_password=$(ynh_string_random)
-key=$(ynh_string_random)
-lfs_key=$(ynh_string_random)
+# base directories
+mkdir -p "$install_dir/data"
+mkdir -p "$install_dir/custom/conf"
+mkdir -p "/var/log/$app"
-# Find available ports
-port=$(ynh_find_port --port 6000)
+mkdir -p "$data_dir/.ssh"
+mkdir -p "$data_dir/repositories"
+mkdir -p "$data_dir/data/avatars"
+mkdir -p "$data_dir/data/attachments"
-# Store Settings
-ynh_script_progression --message="Storing installation settings..."
-ynh_app_setting_set --app $app --key mysqlpwd --value $db_password
-ynh_app_setting_set --app $app --key adminusername --value $admin
-ynh_app_setting_set --app $app --key secret_key --value $key
-ynh_app_setting_set --app $app --key lfs_key --value $lfs_key
-ynh_app_setting_set --app $app --key web_port --value $port
+ynh_script_progression --message='Installing sources files and data directories...' --weight=10
+
+# Setup source
+ynh_setup_source --dest_dir="$install_dir"
+_set_permissions
+
+ynh_script_progression --message="Configuring application, step 1/2..."
+
+internal_token=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret INTERNAL_TOKEN)
+secret_key=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret SECRET_KEY)
+lfs_jwt_secret=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret JWT_SECRET)
+jwt_secret=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret JWT_SECRET)
+
+ynh_app_setting_set --app="$app" --key=internal_token --value="$internal_token"
+ynh_app_setting_set --app="$app" --key=secret_key --value="$secret_key"
+ynh_app_setting_set --app="$app" --key=lfs_jwt_secret --value="$lfs_jwt_secret"
+ynh_app_setting_set --app "$app" --key jwt_secret --value="$jwt_secret"
+
+ynh_add_config --template='app.ini' --destination="$install_dir/custom/conf/app.ini"
#=================================================
-# STANDARD MODIFICATIONS
+# SYSTEM CONFIGURATION
#=================================================
+ynh_script_progression --message="Adding system configurations related to $app..." --weight=1
-# Initialize database and store mysql password for upgrade
-ynh_script_progression --message="Configuring MySQL database..."
-ynh_mysql_create_db "$dbname" "$db_user" "$db_password"
+# Create a dedicated NGINX config using the conf/nginx.conf template
+ynh_add_nginx_config
-# Add users
-ynh_script_progression --message="Configuring system user..."
-ynh_system_user_create --username=$app --home_dir=$datadir --use_shell
-# Add ssh permission for gitea user
-adduser $app ssh.app
-
-# create needed directories
-create_dir
-
-# Configure init script
-ynh_script_progression --message="Configuring a systemd service..." --weight=2
+# Create a dedicated systemd config
ynh_add_systemd_config
-# Modify Nginx configuration file and copy it to Nginx conf directory
-ynh_script_progression --message="Configuring nginx..." --weight=1
-config_nginx
+# Add gitea to YunoHost's monitored services
+yunohost service add "$app" --log="/var/log/$app/gitea.log"
-# Configure gitea with app.ini file
-ynh_script_progression --message="Configuring application, step 1/2..."
-config_gitea
+# Configure logrotate
+ynh_use_logrotate --logfile "/var/log/$app"
-ynh_script_progression --message="Installing sources files..." --weight=10
+# Create a dedicated Fail2Ban config
+ynh_add_fail2ban_config --logpath="/var/log/$app/gitea.log" --failregex='.*Failed authentication attempt for .* from ' --max_retry=5
-# Install gitea
-ynh_setup_source $final_path source/$architecture
+#=================================================
+# APP INITIAL CONFIGURATION
+#=================================================
+# ADD A CONFIGURATION
+#=================================================
-# Set permissions
-ynh_script_progression --message="Protecting directory"
-set_permission
-
-ynh_script_progression --message="Configuring application, step 2/2..."
+ynh_script_progression --message='Configuring application, step 2/2...'
+_set_permissions
# Start gitea for building mysql tables
-systemctl start "$app".service
-
-# Wait untill login_source mysql table is created
-while ! $(ynh_mysql_connect_as "$db_user" "$db_password" "$dbname" <<< "SELECT * FROM login_source;" &>/dev/null)
-do
- sleep 2
-done
+ynh_systemd_action --service_name="$app" --action=start --log_path="/var/log/$app/gitea.log" --line_match="$systemd_match_start_line"
# Add ldap config
-ynh_replace_string --match_string "__APP__" --replace_string "$app" --target_file ../conf/login_source.sql
-ynh_mysql_connect_as "$db_user" "$db_password" "$dbname" < ../conf/login_source.sql
+ynh_replace_string --match_string=__APP__ --replace_string="$app" --target_file=./login_source.sql
+ynh_replace_string --match_string=__GROUP_TEAM_MAP__ --replace_string='""' --target_file=./login_source.sql
+ynh_mysql_connect_as "$db_user" "$db_pwd" "$db_name" < ./login_source.sql
-# SETUP FAIL2BAN
-ynh_script_progression --message="Configuring fail2ban..."
-ynh_add_fail2ban_config --logpath "/var/log/$app/gitea.log" --failregex ".*Failed authentication attempt for .* from " --max_retry 5
+# Stop the service to restart it just afterwards
+ynh_systemd_action --service_name="$app" --action='stop' --log_path="/var/log/$app/gitea.log"
#=================================================
# GENERIC FINALIZATION
#=================================================
+# START SYSTEMD SERVICE
+#=================================================
+ynh_script_progression --message='Starting gitea services...' --weight=3
-# Unprotect root from SSO if public
-ynh_script_progression --message="Configuring permissions..."
-if [ "$is_public" == '1' ];
-then
- ynh_permission_update --permission "main" --add "visitors"
-fi
-
-# Create permission
-ynh_script_progression --message="Configuring permissions"
-ynh_permission_create --permission="admin" --allowed=$admin
-
-# Add gitea to YunoHost's monitored services
-ynh_script_progression --message="Register Gitea service..."
-yunohost service add "$app" --log="/var/log/$app/gitea.log"
-
-# Configure logrotate
-ynh_script_progression --message="Configuring log rotation..."
-ynh_use_logrotate --logfile "/var/log/$app"
-
-# Save Version
-ynh_app_setting_set --app $app --key upstream_version --value $(ynh_app_upstream_version)
-
-# Reload services
-ynh_script_progression --message="Starting gitea services..." --weight=3
-
-ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/gitea.log" --line_match="Starting new Web server: tcp:127.0.0.1:"
-
-# Store the checksum with the 'INTERNAL_TOKEN' value.
-# Should be removed when the issue https://github.com/go-gitea/gitea/issues/3246 is fixed
-ynh_store_file_checksum --file "$final_path/custom/conf/app.ini"
+ynh_systemd_action --service_name="$app" --action=start --log_path="/var/log/$app/gitea.log" --line_match="$systemd_match_start_line"
+#=================================================
+# END OF SCRIPT
+#=================================================
ynh_script_progression --message="Installation of $app completed" --last
diff --git a/scripts/login_source.sql b/scripts/login_source.sql
new file mode 100644
index 0000000..25c71eb
--- /dev/null
+++ b/scripts/login_source.sql
@@ -0,0 +1,80 @@
+INSERT INTO `__APP__`.`login_source`
+(`id`, `type`, `name`, `is_active`, `is_sync_enabled`, `cfg`, `created_unix`, `updated_unix`)
+VALUES
+(
+ 1,
+ 2,
+ 'YunoHost LDAP',
+ 1,
+ 1,
+ '{
+ "Name": "YunoHost LDAP",
+ "Host": "localhost",
+ "Port": 389,
+ "SecurityProtocol": 0,
+ "SkipVerify": false,
+ "BindDN": "",
+ "BindPassword": "",
+ "UserBase": "ou=users,dc=yunohost,dc=org",
+ "UserDN": "",
+ "AttributeUsername": "uid",
+ "AttributeName": "givenName",
+ "AttributeSurname": "sn",
+ "AttributeMail": "mail",
+ "AttributesInBind": false,
+ "AttributeSSHPublicKey": "",
+ "AttributeAvatar": "",
+ "SearchPageSize": 0,
+ "Filter": "(&(uid=%s)(objectClass=posixAccount)(permission=cn=__APP__.main,ou=permission,dc=yunohost,dc=org))",
+ "AdminFilter": "(permission=cn=__APP__.admin,ou=permission,dc=yunohost,dc=org)",
+ "RestrictedFilter": "",
+ "Enabled": true,
+ "AllowDeactivateAll": false,
+ "GroupsEnabled": true,
+ "GroupDN": "ou=groups,dc=yunohost,dc=org",
+ "GroupFilter": "",
+ "GroupMemberUID": "memberUid",
+ "GroupTeamMap": __GROUP_TEAM_MAP__,
+ "GroupTeamMapRemoval": true,
+ "UserUID": "uid"
+ }',
+ UNIX_TIMESTAMP(NOW()),
+ UNIX_TIMESTAMP(NOW()))
+ON DUPLICATE KEY
+UPDATE
+ type=2,
+ name='YunoHost LDAP',
+ is_active=1,
+ is_sync_enabled=1,
+ cfg='{
+ "Name": "YunoHost LDAP",
+ "Host": "localhost",
+ "Port": 389,
+ "SecurityProtocol": 0,
+ "SkipVerify": false,
+ "BindDN": "",
+ "BindPassword": "",
+ "UserBase": "ou=users,dc=yunohost,dc=org",
+ "UserDN": "",
+ "AttributeUsername": "uid",
+ "AttributeName": "givenName",
+ "AttributeSurname": "sn",
+ "AttributeMail": "mail",
+ "AttributesInBind": false,
+ "AttributeSSHPublicKey": "",
+ "AttributeAvatar": "",
+ "SearchPageSize": 0,
+ "Filter": "(&(uid=%s)(objectClass=posixAccount)(permission=cn=__APP__.main,ou=permission,dc=yunohost,dc=org))",
+ "AdminFilter": "(permission=cn=__APP__.admin,ou=permission,dc=yunohost,dc=org)",
+ "RestrictedFilter": "",
+ "Enabled": true,
+ "AllowDeactivateAll": false,
+ "GroupsEnabled": true,
+ "GroupDN": "ou=groups,dc=yunohost,dc=org",
+ "GroupFilter": "",
+ "GroupMemberUID": "memberUid",
+ "GroupTeamMap": __GROUP_TEAM_MAP__,
+ "GroupTeamMapRemoval": true,
+ "UserUID": "uid"
+ }',
+ updated_unix=UNIX_TIMESTAMP(NOW());
diff --git a/scripts/remove b/scripts/remove
index ebfab83..1d0608e 100644
--- a/scripts/remove
+++ b/scripts/remove
@@ -4,61 +4,33 @@
# GENERIC START
#=================================================
-# Load common variables and helpers
-source ./experimental_helper.sh
-source ./_common.sh
-
-# IMPORT GENERIC HELPERS
+source _common.sh
source /usr/share/yunohost/helpers
-ynh_script_progression --message="Loading installation settings..."
-
-# Retrieve domain from app settings
-domain=$(ynh_app_setting_get --app $app --key domain)
-
#=================================================
-# STANDARD REMOVE
+# REMOVE SYSTEM CONFIGURATIONS
#=================================================
+ynh_script_progression --message="Removing system configurations related to $app..." --weight=1
-# Stop gitea
-ynh_script_progression --message="Stoping services..."
-systemctl stop "$app".service
+if ynh_exec_warn_less yunohost service status "$app" >/dev/null
+then
+ ynh_script_progression --message="Removing $app service integration..." --weight=1
+ yunohost service remove "$app"
+fi
-# Drop MySQL database and user
-ynh_script_progression --message="Removing databases..."
-ynh_mysql_drop_db "$dbname" 2>/dev/null
-ynh_mysql_drop_user "$db_user" 2>/dev/null
-
-# Delete app directory and configurations
-ynh_script_progression --message="Removing code..."
-ynh_secure_remove --file="$final_path"
-ynh_script_progression --message="Removing logs..."
-ynh_secure_remove --file="/var/log/$app"
-
-# Remove the app-specific logrotate config
-ynh_remove_logrotate
-
-# Remove nginx config
-ynh_script_progression --message="Removing nginx configuration..."
-ynh_remove_nginx_config
-
-# Remove gitea user and data
-ynh_script_progression --message="Removing the dedicated system user..."
-ynh_system_user_delete $app
-
-# Remove init script
-ynh_script_progression --message="Removing systemd units..."
ynh_remove_systemd_config
-# Remove monitor
-ynh_script_progression --message="Removing gitea service..."
-yunohost service remove "$app"
+ynh_remove_nginx_config
+
+ynh_remove_logrotate
-# Remove fail2ban config
-ynh_script_progression --message="Removing fail2ban configuration..."
ynh_remove_fail2ban_config
-ynh_print_info --message="Due of the backup core only feature the data directory in '$datadir' was not removed. It need to be removed manually to purge app user data."
+ynh_script_progression --message='Removing logs...'
+ynh_secure_remove --file="/var/log/$app"
+
+#=================================================
+# END OF SCRIPT
+#=================================================
ynh_script_progression --message="Removal of $app completed" --last
-sleep 1
diff --git a/scripts/restore b/scripts/restore
index a7ae980..1fd0b31 100644
--- a/scripts/restore
+++ b/scripts/restore
@@ -5,53 +5,33 @@
#=================================================
# Load common variables and helpers
-source ../settings/scripts/experimental_helper.sh
source ../settings/scripts/_common.sh
-
-# IMPORT GENERIC HELPERS
source /usr/share/yunohost/helpers
-# Exit if an error occurs during the execution of the script
-ynh_abort_if_errors
-
-ynh_script_progression --message="Loading settings..."
-
-# Retrieve old app settings
-domain=$(ynh_app_setting_get --app $app --key domain)
-path_url=$(ynh_app_setting_get --app $app --key path)
-db_password=$(ynh_app_setting_get --app $app --key mysqlpwd)
-admin=$(ynh_app_setting_get --app $app --key adminusername)
-port=$(ynh_app_setting_get --app $app --key web_port)
-upstream_version=$(ynh_app_setting_get $app upstream_version)
-
-# Check user parameter
-ynh_user_exists "$admin" \
- || ynh_die --message "The chosen admin user does not exist."
-
-# Check Final Path availability
-test ! -e "$final_path" || ynh_die --message "This path already contains a folder"
-
#=================================================
-# STANDARD RESTORATION STEPS
+# RESTORE THE APP MAIN DIR
#=================================================
-
-# Add users
-ynh_script_progression --message="Configuring system user..."
-ynh_system_user_create --username=$app --home_dir=$datadir --use_shell
-
-# Restore all files
-ynh_script_progression --message="Restoring files..." --weight=10
+ynh_script_progression --message="Restoring the app files..." --weight=1
ynh_restore
+_set_permissions
-# Create and restore the database
-ynh_script_progression --message="Restoring database..." --weight=3
-ynh_mysql_create_db "$dbname" "$db_user" "$db_password"
-ynh_mysql_connect_as "$db_user" "$db_password" "$dbname" < ./db.sql
+#=================================================
+# RESTORE THE MYSQL DATABASE
+#=================================================
+ynh_script_progression --message="Restoring the MySQL database..." --weight=1
+
+ynh_mysql_connect_as --user="$db_user" --password="$db_pwd" --database="$db_name" < ./db.sql
+
+#=================================================
+# RESTORE SYSTEM CONFIGURATIONS
+#=================================================
+ynh_script_progression --message="Restoring system configurations related to $app..." --weight=1
-# Restore systemd files
systemctl daemon-reload
systemctl enable "$app".service --quiet
+yunohost service add "$app" --log="/var/log/$app/gitea.log"
+
# SETUP FAIL2BAN
ynh_script_progression --message="Configuring fail2ban..."
ynh_add_fail2ban_config --logpath "/var/log/$app/gitea.log" --failregex ".*Failed authentication attempt for .* from " --max_retry 5
@@ -59,23 +39,17 @@ ynh_add_fail2ban_config --logpath "/var/log/$app/gitea.log" --failregex ".*Faile
#=================================================
# GENERIC FINALIZATION
#=================================================
+# RELOAD NGINX AND PHP-FPM OR THE APP SERVICE
+#=================================================
+ynh_script_progression --message="Reloading NGINX web server and $app's service..." --weight=1
-# Set permissions
-ynh_script_progression --message="Protecting directory..."
-set_permission
+# Typically you only have either $app or php-fpm but not both at the same time...
+ynh_systemd_action --service_name="$app" --action=start --log_path="/var/log/$app/gitea.log" --line_match="$systemd_match_start_line"
-# Configure logrotate
-ynh_script_progression --message="Configuring log rotation..."
-ynh_use_logrotate --logfile "/var/log/$app"
+ynh_systemd_action --service_name=nginx --action=reload
-# Add gitea to YunoHost's monitored services
-ynh_script_progression --message="Register Gitea service..."
-yunohost service add "$app" --log=/var/log/$app/gitea.log
-
-# Reload services
-ynh_script_progression --message="Reloading services..."
-systemctl reload nginx.service
-ynh_systemd_action -l "Starting new Web server: tcp:127.0.0.1:" -p "/var/log/$app/gitea.log" -t 10
-sleep 1
+#=================================================
+# END OF SCRIPT
+#=================================================
ynh_script_progression --message="Restoration completed for $app" --last
diff --git a/scripts/upgrade b/scripts/upgrade
index bcd1d13..3200a9b 100644
--- a/scripts/upgrade
+++ b/scripts/upgrade
@@ -3,318 +3,153 @@
#=================================================
# GENERIC START
#=================================================
-
-# Load common variables and helpers
-source ./experimental_helper.sh
-source ./_common.sh
-
# IMPORT GENERIC HELPERS
+#=================================================
+
+source _common.sh
source /usr/share/yunohost/helpers
-#=================================================
-# LOAD SETTINGS
-#=================================================
-ynh_script_progression --message="Loading installation settings..."
-
-domain=$(ynh_app_setting_get --app=$app --key=domain)
-path_url=$(ynh_normalize_url_path --path_url $(ynh_app_setting_get --app $app --key path))
-db_password=$(ynh_app_setting_get --app=$app --key=mysqlpwd)
-admin=$(ynh_app_setting_get --app=$app --key=adminusername)
-key=$(ynh_app_setting_get --app=$app --key=secret_key)
-lfs_key=$(ynh_app_setting_get --app=$app --key=lfs_key)
-port=$(ynh_app_setting_get --app=$app --key=web_port)
-upstream_version=$(ynh_app_setting_get --app=$app --key=upstream_version)
-
-#=================================================
-# STOP SYSTEMD SERVICE
-#=================================================
-ynh_script_progression --message="Stopping a systemd service..." --weight=1
-
-# We stop the service before to set ynh_clean_setup
-ynh_systemd_action --service_name=$app --action="stop"
-
-#=================================================
-# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
-#=================================================
-ynh_script_progression --message="Backing up the app before upgrading (may take a while)..."
-
-if [ "0$(ynh_app_setting_get --app=$app --key=disable_backup_before_upgrade)" -ne 1 ]
-then
- ynh_backup_before_upgrade
- ynh_clean_setup () {
- # Clean installation remainings that are not handled by the remove script.
- ynh_clean_check_starting
- ynh_restore_upgradebackup
- }
-fi
-
-# Exit if an error occurs during the execution of the script
-ynh_abort_if_errors
-
-#=================================================
-# ENSURE DOWNWARD COMPATIBILITY
-#=================================================
-ynh_script_progression --message="Ensuring downward compatibility..." --weight=1
-
-# If lfs_key doesn't exist, create it
-if [ -z "$lfs_key" ]; then
- lfs_key=$(ynh_string_random)
- ynh_app_setting_set --app=$app --key=lfs_key --value=$lfs_key
-fi
-
-#=================================================
-# MIGRATION FROM GOGS
-#=================================================
-
-[[ $YNH_APP_ID == "gogs" ]] \
- && [[ "$(cat "/opt/$app/templates/.VERSION")" != 0.11.79.1211 ]] \
- && ynh_die --message "It look like that you have an old Gogs install. You need first upgrade Gogs instance (id: $gogs_migrate_id) and after migrate to Gitea."
-ynh_handle_app_migration --migration_id=gogs --migration_list=gogs_migrations
-
-if [[ $migration_process -eq 1 ]]; then
- # Reload variables
- dbname=$app
- db_user=$app
- final_path="/opt/$app"
- datadir="/home/""$app"
- repos_path="$datadir/repositories"
- data_path="$datadir/data"
-
- # Replace the user
- ynh_system_user_delete $old_app
- test getent passwd "$app" &>/dev/null || \
- useradd -d "$datadir" --system --user-group "$app" --shell /bin/bash || \
- ynh_die --message "Unable to create $app system account"
-
- # Clean old binary
- ynh_secure_remove --file=$final_path/gogs
- ynh_secure_remove --file=$final_path/custom/conf/auth.d
-
- # Restore authentication from SQL database
- ynh_replace_string --match_string __APP__ --replace_string "$app" --target_file ../conf/login_source.sql
- ynh_mysql_connect_as "$db_user" "$db_password" "$dbname" < ../conf/login_source.sql
-
- # Fix hooks
- if [[ -e $repos_path ]];then
- ls $repos_path/*/*.git/hooks/pre-receive | while read p; do
- ynh_secure_remove --file=$p
- done
- ls $repos_path/*/*.git/hooks/post-receive | while read p; do
- ynh_secure_remove --file=$p
- done
- fi
-
- upstream_version="0.0.1"
-fi
-
-# Move data directory
-if [ -e "/home/""$app" ] && [ ! -e $datadir ]; then
- mv "/home/""$app" "$datadir"
-fi
-
-# Ensuring the user has the right home dir
-if [ ~$app != "$datadir" ]; then
- usermod -d "$datadir" $app
-fi
+upgrade_type=$(ynh_check_app_version_changed)
#=================================================
# STANDARD UPGRADE STEPS
#=================================================
-ynh_script_progression --message="Configuring application..."
-
-# Clean template to fix issue : https://github.com/gogits/gogs/issues/4585
-ynh_secure_remove --file="/opt/$app/templates"
-
-# Configure gitea with app.ini file
-config_gitea
-
-# Configure init script
-ynh_script_progression --message="Updating systemd units..."
-ynh_add_systemd_config
-
-# Modify Nginx configuration file and copy it to NGINX conf directory
-ynh_script_progression --message="Configuring NGINX..." --weight=1
-config_nginx
-
+# ENSURE DOWNWARD COMPATIBILITY
#=================================================
-# DB migration
-#=================================================
-ynh_script_progression --message="Upgrading database and sources..." --weight=6
+ynh_script_progression --message='Ensuring downward compatibility...' --weight=1
-# Before the version 1.7 the upstream version was not stored
-# The way to find the version for the install < 1.7 is to parse the binary file to find which version is installed
-if [ -z ${upstream_version:-} ]; then
- for version in "0.0." "1.0." "1.1." "1.2." "1.3." "1.4." "1.5." "1.6." "1.7."; do
- if strings $final_path/gitea | grep -P "^${version//./\\.}\d"; then
- upstream_version="${version}0"
- break
- fi
- done
+if ynh_compare_current_package_version --comparison lt --version "1.6.4~ynh1"; then
+ message="Upgrade from $YNH_APP_CURRENT_VERSION was dropped. You need to run this, then upgrade to the latest version:
+sudo yunohost app upgrade $app -u https://github.com/YunoHost-Apps/gitea_ynh/commit/a9ceb157032ae2290e944c1d0a255451ff2d133d"
+ ynh_print_info "$message"
+ ynh_die --message="$message" --ret_code 1
fi
-restart_gitea() {
- # Set permissions
- set_permission
- ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/gitea.log" --line_match="Starting new Web server: tcp:127.0.0.1:"
- # Leave the time to update the database schema
- sleep 5
- systemctl stop $app
-}
+#=================================================
+# STOP SYSTEMD SERVICE
+#=================================================
+ynh_script_progression --message='Stopping a systemd service...' --weight=1
-case $upstream_version in
-"0.0."* )
- ynh_setup_source $final_path source/${architecture}_1.0
- set_permission
- systemctl start $app
- sleep 20
- systemctl stop $app
-;&
-"1.0."* )
- ynh_setup_source $final_path source/${architecture}_1.1
- restart_gitea
-;&
-"1.1."* )
- ynh_setup_source $final_path source/${architecture}_1.2
- restart_gitea
-;&
-"1.2."* )
- ynh_setup_source $final_path source/${architecture}_1.3
- restart_gitea
-;&
-"1.3."* )
- ynh_setup_source $final_path source/${architecture}_1.4
- restart_gitea
-;&
-"1.4."* )
- ynh_setup_source $final_path source/${architecture}_1.5
- restart_gitea
-;&
-"1.5."* )
- ynh_setup_source $final_path source/${architecture}_1.6
- restart_gitea
-;&
-"1.6."* )
- ynh_setup_source $final_path source/${architecture}_1.7
- restart_gitea
-;&
-"1.7."* )
- ynh_setup_source $final_path source/${architecture}_1.8
- restart_gitea
-;&
-"1.8."* )
- ynh_setup_source $final_path source/${architecture}_1.9
- restart_gitea
-;&
-"1.9."* )
- ynh_setup_source $final_path source/${architecture}_1.10
- restart_gitea
-;&
-"1.10."* )
- ynh_setup_source $final_path source/${architecture}_1.11
- restart_gitea
-;&
-"1.11."* )
- ynh_setup_source $final_path source/${architecture}_1.12
- restart_gitea
-;&
-"1.12."* )
- ynh_setup_source $final_path source/${architecture}_1.13
- restart_gitea
-;&
-"1.13."* )
- ynh_setup_source $final_path source/${architecture}_1.14
- restart_gitea
-;&
-"1.14."* )
- ynh_setup_source $final_path source/${architecture}_1.15
- restart_gitea
-;&
-"1.15."* )
- ynh_setup_source $final_path source/${architecture}_1.16
- restart_gitea
-;&
-"1.16."* )
- ynh_setup_source $final_path source/${architecture}_1.17
- restart_gitea
-;&
-"1.17."* )
- ynh_setup_source $final_path source/${architecture}_1.18
- restart_gitea
-;&
-"1.18."* )
- ynh_setup_source $final_path source/${architecture}_1.19
- restart_gitea
-;&
-"1.19."* )
- ynh_setup_source $final_path source/${architecture}_1.20
- restart_gitea
-;&
-esac
+ynh_systemd_action --service_name="$app" --action=stop
-# Install gitea source
-ynh_setup_source $final_path source/$architecture
-restart_gitea
+#=================================================
+# MIGRATION STEP 1 (migrate path from packagin v1)
+#=================================================
+
+# This is not handled by the core because the previous package did not define final_path...
+if [ -d "/opt/$app" ]; then
+ # This is the package version of the manifestv2
+ mv -t "$install_dir/" "/opt/$app/"*
+ ynh_secure_remove --file="/opt/$app"
+fi
+
+# Move data directory
+if [ -d /home"/$app" ]; then
+ mv /home"/$app/" "$data_dir"
+fi
+
+# Ensure the user has the correct home dir
+if [ ~"$app" != "$data_dir" ]; then
+ usermod --home "$data_dir" "$app"
+fi
+
+# Ensure secrets are defined
+ynh_setup_source --dest_dir="$install_dir" --source_id=main
+
+#=================================================
+# MIGRATION STEP 2 (Set undefined Vars)
+#=================================================
+
+ynh_script_progression --message='Migrating missing settings...'
+
+# Must set permission before to call gitea command
+chown -R "$app:$app" "$install_dir"
+chmod -R u=rwX,g=rX,o= "$install_dir"
+chmod +x "$install_dir/gitea"
+
+if [[ -z "${internal_token:-}" ]]; then
+ internal_token=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret INTERNAL_TOKEN)
+ ynh_app_setting_set --app "$app" --key internal_token --value="$internal_token"
+fi
+
+if [[ -z "${secret_key:-}" ]]; then
+ secret_key=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret SECRET_KEY)
+ ynh_app_setting_set --app "$app" --key secret_key --value="$secret_key"
+fi
+
+if [[ -n "${lfs_key:-}" ]]; then
+ lfs_jwt_secret="$lfs_key"
+ ynh_app_setting_delete --app "$app" --key lfs_key
+ ynh_app_setting_set --app "$app" --key lfs_jwt_secret --value="$lfs_jwt_secret"
+fi
+
+if [[ -z "${lfs_jwt_secret:-}" ]]; then
+ lfs_jwt_secret=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret JWT_SECRET)
+ ynh_app_setting_set --app "$app" --key lfs_jwt_secret --value="$lfs_jwt_secret"
+fi
+
+if [[ -z "${jwt_secret:-}" ]]; then
+ jwt_secret=$(ynh_exec_as "$app" "$install_dir/gitea" generate secret JWT_SECRET)
+ ynh_app_setting_set --app "$app" --key jwt_secret --value="$jwt_secret"
+fi
+
+#=================================================
+# MIGRATION STEP Fix regression linked to 77c3678 and #76
+#=================================================
+
+list_param_sql=$(yunohost user list --output-as json | jq -c '.users | keys' | sed 's|\[|\(|' | sed 's|\]|\)|')
+ynh_replace_string --match_string=__APP__ --replace_string="$app" --target_file=./fix_user_db_for_local_users.sql
+ynh_replace_string --match_string=__USER_LIST__ --replace_string="$list_param_sql" --target_file=./fix_user_db_for_local_users.sql
+ynh_mysql_connect_as "$db_user" "$db_pwd" "$db_name" < ./fix_user_db_for_local_users.sql
+
+#=================================================
+# UPDATE A CONFIG FILE
+#=================================================
+ynh_script_progression --message='Updating configuration files...' --weight=1
+
+# Clean template to fix issue : https://github.com/gogits/gogs/issues/4585
+ynh_secure_remove --file="$install_dir/templates"
+
+# Configure gitea with app.ini file
+ynh_add_config --template=app.ini --destination="$install_dir/custom/conf/app.ini"
+
+ynh_script_progression --message='Setting permissions...'
+_set_permissions
+
+# Update ldap config
+
+# Note that the 'GroupTeamMap' depends of the user need so we can't apply a generic values for all instances
+# So to avoid to override the value after each update we retrive and apply the user value
+group_team_map_config=$(mysql --user="$db_user" --password="$db_pwd" --batch --raw "$db_name" <<< 'SELECT `cfg` FROM `'$app'`.`login_source` WHERE `id`=1;' \
+ | tail -n+2 | jq '.GroupTeamMap')
+sed -i 's|__GROUP_TEAM_MAP__|'"${group_team_map_config//\\/\\\\\\\\}"'|g' ./login_source.sql
+ynh_replace_string --match_string=__APP__ --replace_string="$app" --target_file=./login_source.sql
+ynh_mysql_connect_as "$db_user" "$db_pwd" "$db_name" < ./login_source.sql
+
+#=================================================
+# REAPPLY SYSTEM CONFIGURATIONS
+#=================================================
+ynh_script_progression --message="Upgrading system configurations related to $app..." --weight=1
+
+ynh_add_nginx_config
+
+ynh_add_systemd_config
+
+yunohost service add "$app" --log="/var/log/$app/gitea.log"
+
+ynh_use_logrotate --non-append
-# SETUP FAIL2BAN
-ynh_script_progression --message="Configuring Fail2Ban..."
ynh_add_fail2ban_config --logpath="/var/log/$app/gitea.log" --failregex=".*Failed authentication attempt for .* from " --max_retry 5
#=================================================
-# GENERIC FINALIZATION
+# START SYSTEMD SERVICE
#=================================================
+ynh_script_progression --message='Starting a systemd service...' --weight=1
-# Set all permissions
-ynh_script_progression --message="Update permission..."
-if ! ynh_permission_exists --permission admin; then
- ynh_app_setting_delete --app $app --key unprotected_uris
- ynh_permission_create --permission="admin" --allowed="$admin"
- # Update ldap config
- ynh_replace_string --match_string="__APP__" --replace_string="$app" --target_file="../conf/login_source.sql"
- ynh_mysql_connect_as "$db_user" "$db_password" "$dbname" < ../conf/login_source.sql
-fi
-
-# Add gitea to YunoHost's monitored services
-ynh_script_progression --message="Register Gitea service..."
-yunohost service add "$app" --log="/var/log/$app/gitea.log"
-
-# Add ssh permission for gitea user
-adduser $app ssh.app
-
-# Set permissions
-ynh_script_progression --message="Protecting directory"
-set_permission
-
-# Save Version
-ynh_app_setting_set --app=$app --key=upstream_version --value=$(ynh_app_upstream_version)
-
-# Reload services
-ynh_script_progression --message="Starting Gitea services..." --weight=3
-#ynh_systemd_action -l "Starting new Web server: tcp:127.0.0.1:" -p "/var/log/$app/gitea.log" -t 10
-#sleep 1
-ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/gitea.log" --line_match="Starting new Web server: tcp:127.0.0.1:"
-
-# Store the checksum with the 'INTERNAL_TOKEN' value.
-# Should be removed when the issue https://github.com/go-gitea/gitea/issues/3246 is fixed
-ynh_store_file_checksum --file="$final_path/custom/conf/app.ini"
+ynh_systemd_action --service_name="$app" --action=start --log_path="/var/log/$app/gitea.log" --line_match="$systemd_match_start_line"
#=================================================
-# FINISH MIGRATION PROCESS
+# END OF SCRIPT
#=================================================
-if [[ $migration_process -eq 1 ]]; then
- echo "Gogs has been successfully migrated to Gitea! \
-A last scheduled operation will run in a couple of minutes to finish the \
-migration in YunoHost side. Do not proceed any application operation while \
-you don't see Gogs as installed." >&2
-
- # Execute a post migration script after the end of this upgrade.
- # Mainly for some cleaning
- script_post_migration=gogs_post_migration.sh
- ynh_replace_string --match_string __OLD_APP__ --replace_string "$old_app" --target_file ../conf/$script_post_migration
- ynh_replace_string --match_string __NEW_APP__ --replace_string "$app" --target_file ../conf/$script_post_migration
- cp ../conf/$script_post_migration /tmp
- chmod +x /tmp/$script_post_migration
- (cd /tmp; echo "/tmp/$script_post_migration > /tmp/$script_post_migration.log 2>&1" | at now + 2 minutes)
-fi
-
ynh_script_progression --message="Upgrade of $app completed" --last
diff --git a/tests.toml b/tests.toml
new file mode 100644
index 0000000..be8538d
--- /dev/null
+++ b/tests.toml
@@ -0,0 +1,20 @@
+#:schema https://raw.githubusercontent.com/YunoHost/apps/master/schemas/tests.v1.schema.json
+
+test_format = 1.0
+
+[default]
+
+ test_upgrade_from.6c7d27760137d27ea88c843390c4dbefd7fadb74.name = "1.17.0"
+ test_upgrade_from.6c7d27760137d27ea88c843390c4dbefd7fadb74.args.admin = "package_checker"
+ test_upgrade_from.6c7d27760137d27ea88c843390c4dbefd7fadb74.args.path = "/"
+ test_upgrade_from.6c7d27760137d27ea88c843390c4dbefd7fadb74.args.domain = "domain.tld"
+
+ test_upgrade_from.b327ccd30230ea963a5eef1a566faba76688ac84.name = "1.20.0"
+ test_upgrade_from.b327ccd30230ea963a5eef1a566faba76688ac84.args.admin = "package_checker"
+ test_upgrade_from.b327ccd30230ea963a5eef1a566faba76688ac84.args.path = "/"
+ test_upgrade_from.b327ccd30230ea963a5eef1a566faba76688ac84.args.domain = "domain.tld"
+
+ test_upgrade_from.67d5bc5dc57d8f8793551d7e07c10e8b9d4fe038.name = "1.21.5"
+ test_upgrade_from.67d5bc5dc57d8f8793551d7e07c10e8b9d4fe038.args.admin = "package_checker"
+ test_upgrade_from.67d5bc5dc57d8f8793551d7e07c10e8b9d4fe038.args.path = "/"
+ test_upgrade_from.67d5bc5dc57d8f8793551d7e07c10e8b9d4fe038.args.domain = "domain.tld"