Как настроить Codeberg как провайдер входа Oauth2 для Nexcloud


Я не смог найти никакой информации об этом через поисковые системы, поэтому решил написать об этом здесь.
Пригодилось - https://forgejo.codeberg.page/docs/latest/user/oauth2-provider/

1. Создаём приложение в Codeberg и копируем куда-нибудь Client ID и Client secret.
2. Идём в параметры сервера Nextcloud, пункт Social Login, и создаём Custom Oauth2 на +.

Пункт Что вводить
Внутреннее имя Codeberg
Название Codeberg
API Base URL https://codeberg.org
Authorize url https://codeberg.org/login/oauth/authorize
Token url https://codeberg.org/login/oauth/access_token
Profile url https://codeberg.org/login/oauth/userinfo
Logout url Оставить пустым
Client ID и Client secret вставить из 1 пункта
Scope read:user
Остальные после Не трогайте, если не уверены

3. Ставим галку напротив пункта Позволять пользователям подключать социальные логины к своим аккаунтам и нажимаем Сохранить внизу страницы.
4. Идём в режим Инкогнито вашего браузера, затем на страничку входа в ваше облако и копируем путь провайдера Codeberg - правая кнопка мыши, копируем ссылку, сохраняем куда-нибудь.
Должно выглядеть примерно так - https://cloud.example.org(/index.php)/apps/sociallogin/custom_oauth2/Codeberg
5. Возвращаемся к ранее созданному приложению Codeberg, Нажимаем Изменить и вставляем ссылку из прошлого пункта в поле URI для перенаправления, нажимаем Сохранить.

Теперь попробуйте связать ваш аккаунт Codeberg и Nextcloud из пункта Social Login в настройках пользователя Nextcloud, должно работать. В теории, это также применимо к Gitea, потому что Forgejo это форк Gitea.

Давеча сделал по этому поводу Issue на Github: https://github.com/zorn-v/nextcloud-social-login/issues/440