User Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
services:forgejo [2024/09/11 07:12] – created willyservices:forgejo [2025/03/13 14:41] (current) – [Forgejo] willy
Line 4: Line 4:
 Easy to install and low maintenance, it just does the job. It is a nice web gui for GIT. It is actually much more and allows for GIT fine tuning of remote repositories and access control. It can be used to version-control any kind of sources, including text documents and scripts. Easy to install and low maintenance, it just does the job. It is a nice web gui for GIT. It is actually much more and allows for GIT fine tuning of remote repositories and access control. It can be used to version-control any kind of sources, including text documents and scripts.
  
-Forgejo is the evolution of [[services:gitea|GITea]], from which it forked some time ago out of concerns for monetization strategies and ambiguous behaviour from GITEA parent company.+Forgejo is the evolution of [[services:obsolete:gitea|GITea]], from which it forked some time ago out of concerns for monetization strategies and ambiguous behaviour from GITEA parent company.
  
 ===== Installation ===== ===== Installation =====
Line 55: Line 55:
 DB_TYPE = sqlite3 DB_TYPE = sqlite3
 HOST = 127.0.0.1:3306 HOST = 127.0.0.1:3306
-NAME = gitea+NAME = forgejo
 USER = root USER = root
-PASSWD =  
-SCHEMA =  
-SSL_MODE = disable 
 PATH = /data/git-repos/forgejo.db PATH = /data/git-repos/forgejo.db
 LOG_SQL = false LOG_SQL = false
Line 65: Line 62:
 [log] [log]
 MODE = file MODE = file
-; ; Either "Trace", "Debug", "Info", "Warn", "Error" or "None", default is "Info" 
 LEVEL = info LEVEL = info
 ROOT_PATH = /var/log/forgejo ROOT_PATH = /var/log/forgejo
Line 74: Line 70:
 [lfs] [lfs]
 PATH = /data/git-repos/lfs PATH = /data/git-repos/lfs
-</flie>+</file>
  
 i have omitted most of the lines, those are only the ones you need to specifically edit. Forgejo itself will add the others after first run. Adapt paths and port to your needs! i have omitted most of the lines, those are only the ones you need to specifically edit. Forgejo itself will add the others after first run. Adapt paths and port to your needs!
Line 82: Line 78:
 ./forgejo ./forgejo
 </code> </code>
 +
 +One last step is to ensure your **app.ini** is safe if you reinstlal Forgejo. Since i do backup the git repos folder but not the daemons folder, i just move it there and link it back:
 +<code bash>
 +cd ~/custom/conf/ 
 +mv app.ini /data/git-repos
 +ln -s /data/git-repos/app.ini .
 +</code>
 +
 +Note that your **git** user //~/.ssh// must exist and the permission chain into it must be set properly!
 +The /data/daemons/git must be **750** and the /data/daemons/git/.ssh should be **700** (but 750 should do the trick as well).
  
 ==== Reverse Proxy setup ==== ==== Reverse Proxy setup ====
Line 114: Line 120:
 == Using Reverse Proxy authentication === == Using Reverse Proxy authentication ===
  
-GITea support reverse proxy authentication. The above NGINX config already set it up, but you need to open GITea settings and go to **Authentication Sources** and replace the existing one (or add a new one) ad **PAM_Auth**. The settings you need are:+Forgejo support reverse proxy authentication. The above NGINX config already set it up, but you need to open GITea settings and go to **Authentication Sources** and replace the existing one (or add a new one) ad **PAM_Auth**. The settings you need are:
   * pam_service_name: system-local-login   * pam_service_name: system-local-login
  
-that's it.+that's it. This will work with your SSO.
  
 ==== Autostart ==== ==== Autostart ====
Line 129: Line 135:
 description="ForgeJo, a self-hosted Git service" description="ForgeJo, a self-hosted Git service"
  
-command="/deposito/daemons/forgejo/forgejo"+command="/data/daemons/forgejo/forgejo"
 command_args="" command_args=""
 command_background="true" command_background="true"

This website uses technical cookies only. No information is shared with anybody or used in any way but provide the website in your browser.

More information