#============================================================================= # Overview of build options: # # End of build options #----------------------------------------------------------------------------- ##trace %global debug_package %{nil} %global build_ldflags %{nil} %global _smp_mflags -j1 %global FORGEJO_USR git %global FORGEJO_GRP forgejo Name: forgejo Version: 14.0.3 Release: 2%{?dist} Summary: Beyond coding, we forge License: GPL-3.0-or-later URL: https://codeberg.org/forgejo/forgejo Source0: %{URL}/releases/download/v%{version}/forgejo-src-%{version}.tar.gz Source1: forgejo_app.ini Source2: forgejo.tmpfiles Source3: forgejo.service Source5: forgejo_nginx_proxy.conf BuildRequires: golang >= 1.25.6 BuildRequires: nodejs BuildRequires: make BuildRequires: systemd-rpm-macros Requires: git Requires: git-lfs %{?systemd_requires} %description Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job. #============================================================================= # prep #----------------------------------------------------------------------------- %prep %setup -q -n forgejo-src-%{version} #============================================================================= # build #----------------------------------------------------------------------------- %build TAGS="bindata timetzdata sqlite sqlite_unlock_notify" make %{_smp_mflags} build #============================================================================= # install #----------------------------------------------------------------------------- %install # create directories install -d -m0750 %{buildroot}/{etc,run,var/log}/%{name} # instal gitea binary and rename to forgejo install -D -m0750 gitea %{buildroot}%{_bindir}/%{name} # activate config install -D -m0640 %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}/app.ini # install systemd files install -D -m0644 %{SOURCE2} %{buildroot}%{_tmpfilesdir}/%{name}.conf install -D -m0644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}.service # install nginx proxy config install -D -m0644 %{SOURCE5} . #============================================================================= # files #----------------------------------------------------------------------------- %files %license LICENSE %doc README.md forgejo_nginx_proxy.conf %{_bindir}/%{name} %config(noreplace) %{_sysconfdir}/%{name}/app.ini %{_localstatedir}/log/%{name} %{_tmpfilesdir}/%{name}.conf %{_unitdir}/%{name}.service #============================================================================= # pre #----------------------------------------------------------------------------- %pre getent group %{FORGEJO_GRP} > /dev/null || groupadd -r %{FORGEJO_GRP} getent passwd %{FORGEJO_USR} > /dev/null || \ useradd -m -g %{FORGEJO_GRP} -s /usr/bin/bash \ -c "Forgejo daemon user" -d /home/%{FORGEJO_USR} \ %{FORGEJO_USR} #============================================================================= # post #----------------------------------------------------------------------------- %post if [ ! -f %{_sysconfdir}/%{name}/app.ini ]; then install -D -m0640 %{_sharedstatedir}/%{name}/custom/conf/app.ini.working %{_sysconfdir}/%{name}/app.ini fi # create required directories mkdir -m0750 -p /home/%{FORGEJO_USR}/%{name}/conf mkdir -m0750 -p /home/%{FORGEJO_USR}/%{name}/repos # add config symlink to /home/git/conf/app.ini for easier backup if [ -f %{_sysconfdir}/%{name}/app.ini ] ; then if [ -e /home/%{FORGEJO_USR}/%{name}/conf/app.ini ] ; then rm -f /home/%{FORGEJO_USR}/%{name}/conf/app.ini fi ln -s %{_sysconfdir}/%{name}/app.ini /home/%{FORGEJO_USR}/%{name}/conf/app.ini fi chown -R %{FORGEJO_USR}:%{FORGEJO_GRP} %{_sysconfdir}/%{name} chown -R %{FORGEJO_USR}:%{FORGEJO_GRP} /home/%{FORGEJO_USR} > /dev/null chown %{FORGEJO_USR}:%{FORGEJO_GRP} %{_bindir}/%{name} restorecon -v -F -R /home/%{FORGEJO_USR} > /dev/null restorecon -v -F -R %{_sysconfdir}/%{name} > /dev/null # enable httpd_can_network_connect or nginx -> forgejo is blocked /usr/sbin/setsebool httpd_can_network_connect 1 systemctl daemon-reload %systemd_post forgejo.service #============================================================================= # preun #----------------------------------------------------------------------------- %preun %systemd_preun forgejo.service #============================================================================= # postun #----------------------------------------------------------------------------- %postun %systemd_postun_with_restart forgejo.service #============================================================================= # changelog #----------------------------------------------------------------------------- %changelog * Wed Mar 11 2026 Patrick Laimbock - 14.0.3-2 - remove apache config - move the nginx config from /etc/nginx/conf.d to %%doc * Mon Mar 09 2026 Patrick Laimbock - 14.0.3-1 - update to vesion 14.0.3 * Thu Jan 29 2026 Patrick Laimbock - 14.0.2-1 - update to version 14.0.2 * Tue Jan 20 2026 Patrick Laimbock - 14.0.1-1 - update to version 14.0.1 * Fri Jan 16 2026 Patrick Laimbock - 14.0.0-1 - update to version 14.0.0 * Fri Jan 09 2026 Patrick Laimbock - 13.0.4-1 - update to version 13.0.4 * Sat Sep 20 2025 Patrick Laimbock - 12.0.4-1 - update to version 12.0.4 * Sun Sep 07 2025 Patrick Laimbock - 12.0.3-1 - update to version 12.0.3 * Sun Aug 31 2025 Patrick Laimbock - 12.0.2-1 - update to version 12.0.2 * Thu Jul 31 2025 Patrick Laimbock - 12.0.1-1 - update to version 12.0.1 * Sat Jul 19 2025 Patrick Laimbock - 12.0.0-1 - update to version 12.0.0 * Fri Jul 11 2025 Patrick Laimbock - 11.0.3-1 - update to version 11.0.3 * Sun Jun 22 2025 Patrick Laimbock - 11.0.2-1 - update to version 11.0.2 * Sat May 03 2025 Patrick Laimbock - 11.0.1-1 - update to version 11.0.1 * Thu Apr 17 2025 Patrick Laimbock - 11.0.0-1 - update to version 11.0.0 * Sun Mar 23 2025 Patrick Laimbock - 10.0.3-1 - update to version 10.0.3 * Fri Mar 21 2025 Patrick Laimbock - 10.0.2-1 - update to version 10.0.2 * Sat Feb 08 2025 Patrick Laimbock - 10.0.1-1 - update to version 10.0.1 * Sun Feb 02 2025 Patrick Laimbock - 10.0.0-1 - update to version 10.0.0 * Fri Dec 13 2024 Patrick Laimbock - 9.0.3-1 - update to version 9.0.3 * Wed Oct 30 2024 Patrick Laimbock - 9.0.1-2 - update to version 9.0.1 * Wed Oct 16 2024 Forgejo Release Team See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#9-0-0