<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Codeberg в НИЦ Эхо Сирин</title>
    <link>https://exosirin.ru/tags/codeberg/</link>
    <description>Недавний контент > Codeberg в НИЦ Эхо Сирин</description>
    <generator>Hugo</generator>
    <language>ru</language>
    <managingEditor>/tags/codeberg (Линк)</managingEditor>
    <webMaster>/tags/codeberg (Линк)</webMaster>
    <lastBuildDate>Sat, 03 Jan 2026 20:47:12 +0300</lastBuildDate>
    <atom:link href="https://exosirin.ru/tags/codeberg/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Вход в Nextcloud через Codeberg</title>
      <link>https://exosirin.ru/opus/codeberg_x_nextcloud/</link>
      <pubDate>Sun, 10 Dec 2023 00:00:00 +0000</pubDate>
      <author>/opt/hugo/blog/content/opus/codeberg_x_nextcloud.md (Линк)</author>
      <guid>https://exosirin.ru/opus/codeberg_x_nextcloud/</guid>
      <description>&lt;p&gt;Я не смог найти никакой информации об этом через поисковые системы, поэтому решил написать об этом здесь. &lt;br&gt;&#xA;Пригодилось - &lt;a href=&#34;https://forgejo.codeberg.page/docs/latest/user/oauth2-provider/&#34; target=&#34;_blank&#34; &gt;https://forgejo.codeberg.page/docs/latest/user/oauth2-provider/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;1.&lt;/code&gt; &lt;a href=&#34;https://codeberg.org/user/settings/applications&#34; target=&#34;_blank&#34; &gt;Создаём приложение в Codeberg&lt;/a&gt; и копируем куда-нибудь Client ID и Client secret. &lt;br&gt;&#xA;&lt;code&gt;2.&lt;/code&gt; Идём в параметры сервера Nextcloud, пункт &lt;code&gt;Social Login&lt;/code&gt;, и создаём Custom Oauth2 на &lt;code&gt;+&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;table&gt;&#xA;&#x9;&lt;thead&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th&gt;Пункт&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th&gt;Что вводить&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/thead&gt;&#xA;&#x9;&lt;tbody&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Внутреннее имя&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Codeberg&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Название&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Codeberg&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;API Base URL&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;a href=&#34;https://codeberg.org&#34; target=&#34;_blank&#34; &gt;https://codeberg.org&lt;/a&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Authorize url&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;a href=&#34;https://codeberg.org/login/oauth/authorize&#34; target=&#34;_blank&#34; &gt;https://codeberg.org/login/oauth/authorize&lt;/a&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Token url&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;a href=&#34;https://codeberg.org/login/oauth/access_token&#34; target=&#34;_blank&#34; &gt;https://codeberg.org/login/oauth/access_token&lt;/a&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Profile url&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;a href=&#34;https://codeberg.org/login/oauth/userinfo&#34; target=&#34;_blank&#34; &gt;https://codeberg.org/login/oauth/userinfo&lt;/a&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Logout url&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Оставить пустым&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Client ID и Client secret&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;вставить из 1 пункта&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Scope&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;read:user&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Остальные после&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Не трогайте, если не уверены&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;&lt;code&gt;3.&lt;/code&gt; Ставим галку напротив пункта &lt;code&gt;Позволять пользователям подключать социальные логины к своим аккаунтам&lt;/code&gt; и нажимаем &lt;code&gt;Сохранить&lt;/code&gt; внизу страницы. &lt;br&gt;&#xA;&lt;code&gt;4.&lt;/code&gt; Идём в режим Инкогнито вашего браузера, затем на страничку входа в ваше облако и копируем путь провайдера Codeberg - правая кнопка мыши, копируем ссылку, сохраняем куда-нибудь. &lt;br&gt;&#xA;Должно выглядеть примерно так - &lt;code&gt;https://cloud.example.org(/index.php)/apps/sociallogin/custom_oauth2/Codeberg&lt;/code&gt; &lt;br&gt;&#xA;&lt;code&gt;5.&lt;/code&gt; Возвращаемся к ранее созданному &lt;a href=&#34;https://codeberg.org/user/settings/applications&#34; target=&#34;_blank&#34; &gt;приложению Codeberg&lt;/a&gt;, Нажимаем &lt;code&gt;Изменить&lt;/code&gt; и вставляем ссылку из прошлого пункта в поле &lt;code&gt;URI для перенаправления&lt;/code&gt;, нажимаем &lt;code&gt;Сохранить&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Теперь попробуйте связать ваш аккаунт Codeberg и Nextcloud из пункта &lt;code&gt;Social Login&lt;/code&gt; в настройках пользователя Nextcloud, должно работать. В теории, это также применимо к &lt;code&gt;Gitea&lt;/code&gt;, потому что &lt;a href=&#34;https://forgejo.org&#34; target=&#34;_blank&#34; &gt;Forgejo&lt;/a&gt; это форк &lt;a href=&#34;https://gitea.com&#34; target=&#34;_blank&#34; &gt;Gitea&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Давеча сделал по этому поводу Issue на Github: &lt;a href=&#34;https://github.com/zorn-v/nextcloud-social-login/issues/440&#34; target=&#34;_blank&#34; &gt;https://github.com/zorn-v/nextcloud-social-login/issues/440&lt;/a&gt;&lt;/p&gt;&#xA;</description>
    </item>
  </channel>
</rss>

