#GNUNUX https://codeberg.org/forgejo/forgejo/raw/branch/forgejo/contrib/systemd/forgejo.service [Unit] Description=Forgejo (Beyond coding. We forge.) After=syslog.target After=network.target #>GNUNUX After=risotto.target #<GNUNUX [Service] # Modify these two values and uncomment them if you have # repos with lots of files and get an HTTP error 500 because # of that ### #LimitMEMLOCK=infinity #LimitNOFILE=65535 RestartSec=2s Type=simple User=forgejo Group=forgejo WorkingDirectory=/srv/forgejo/lib/ ExecStart=/usr/bin/forgejo web --config /etc/forgejo/app.ini ExecStartPre=/bin/bash -c '%slurp /usr/bin/forgejo migrate --config /etc/forgejo/app.ini;%slurp if /usr/bin/forgejo admin auth list --config /etc/forgejo/app.ini | grep "OAuth2"; then %slurp echo "UPDATE";%slurp id=$(/usr/bin/forgejo --config /etc/forgejo/app.ini admin auth list |tail -n 1|awk "{ print \$1}");%slurp /usr/bin/forgejo admin auth update-oauth --id $id --name "%%domain_name_eth0" --provider "openidConnect" --key "%%oauth2_client_id" --secret "%%oauth2_client_secret" --scopes "profile email" --auto-discover-url "https://%%oauth2_client_server_domainname/.well-known/openid-configuration" --config /etc/forgejo/app.ini;%slurp else %slurp echo "CONFIGURE";%slurp /usr/bin/forgejo admin auth add-oauth --name "%%domain_name_eth0" --provider "openidConnect" --key "%%oauth2_client_id" --secret "%%oauth2_client_secret" --scopes "profile email" --auto-discover-url "https://%%oauth2_client_server_domainname/.well-known/openid-configuration" --config /etc/forgejo/app.ini;%slurp fi;%slurp sleep 2;%slurp echo "CONFIGURATION DONE"' Restart=always Environment=GITEA_WORK_DIR=/srv/forgejo/lib [Install] WantedBy=multi-user.target