## START: Set by rpmautospec ## (rpmautospec version 0.8.3) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global common_description %{expand: A runner for Gitea based on act.} %global dockerd dockerd %global rootless rootless %global dockerd_rootless %{dockerd}-%{rootless} %global dockerd_rootless_service %{dockerd}-%{rootless}-user.service %global act_runner_bin act_runner %global runner_user act-runner %global runner_user_rootless %{runner_user}-%{rootless} %global debug_package %{nil} %global golicenses LICENSE %global godocs examples README.md %global goipath gitea.com/gitea/act_runner Name: gitea-act-runner Version: 0.3.0 Release: %autorelease Summary: A runner for Gitea based on act. %global act_runner_service %{name}.service %global act_runner_rootless_service %{name}-%{rootless}.service License: MIT URL: https://gitea.com/gitea/act_runner Source0: https://gitea.com/gitea/act_runner/archive/v%{version}.tar.gz Source1: %{act_runner_service} Source2: %{act_runner_rootless_service} Source3: %{dockerd_rootless_service} Source4: README-%{dockerd}.md Source5: README-%{rootless}-%{dockerd}.md Source6: rootless-act_runner-register.sh Source7: %{name}-sysusers.conf Source8: %{name}-tmpfiles.conf Source9: act_runner-register.sh BuildRequires: go >= 1.26 BuildRequires: go-rpm-macros BuildRequires: git-core %gometa -L -f %description %{common_description} # ############################################################# # act_runner with dockerd package %package %{dockerd} Summary: Enable running gitea actions in docker containers Requires: %{name} docker-ce Conflicts: %{name}-%{dockerd_rootless} BuildRequires: systemd-rpm-macros %{?%systemd_requires} %description %{dockerd} %{common_description} Run gitea actions in docker containers %pre %{dockerd} %sysusers_create_package %{name} %{SOURCE7} %tmpfiles_create_package %{name} %{SOURCE8} %post %{dockerd} %systemd_post %{act_runner_service} if [ $1 -eq 1 ] || [ ! -d %{_sharedstatedir}/%{runner_user}/act_runner ]; then echo ' INFO Please read README-%{dockerd}.md to finish the installation' fi %preun %{dockerd} %systemd_preun %{act_runner_service} %postun %{dockerd} %systemd_postun %{act_runner_service} # ############################################################# # ############################################################# # act_runner with rootless dockerd package %package %{dockerd_rootless} Summary: Enable running gitea actions in non-root docker containers Requires: %{name} docker-ce slirp4netns fuse-overlayfs iptables docker-ce-rootless-extras shadow-utils Conflicts: %{name}-%{dockerd} BuildRequires: systemd-rpm-macros %{?%systemd_requires} %description %{dockerd_rootless} %{common_description} Run gitea actions in non-root docker containers %pre %{dockerd_rootless} if [ $1 -eq 1 ]; then getent group '%{runner_user_rootless}' >/dev/null || groupadd -r '%{runner_user_rootless}' || : getent passwd '%{runner_user_rootless}' >/dev/null || \ CREATE_MAIL_SPOOL=false useradd -r -m -F -g '%{runner_user_rootless}' -d '/home/%{runner_user_rootless}' -s '/sbin/nologin' -c 'Rootless act_runner docker user' '%{runner_user_rootless}' || : fi %post %{dockerd_rootless} %systemd_user_post %{act_runner_rootless_service} %{dockerd_rootless_service} if [ $1 -eq 1 ] || [ ! -d /home/%{runner_user_rootless}/act_runner ]; then echo ' INFO Please read README-%{rootless}-%{dockerd}.md to finish the installation' fi loginctl enable-linger %{runner_user_rootless} %preun %{dockerd_rootless} %systemd_user_preun %{dockerd_rootless_service} %{act_runner_rootless_service} if [ $1 -eq 0 ]; then loginctl disable-linger %{runner_user_rootless} fi %postun %{dockerd_rootless} %systemd_user_postun %{dockerd_rootless_service} %{act_runner_rootless_service} if [ $1 -eq 0 ]; then CREATE_MAIL_SPOOL=false userdel -rf %{runner_user_rootless} fi # ############################################################# %prep %autosetup -p1 -C %{__cp} %{SOURCE4} %{SOURCE5} . %build go build %{gobuild_baseflags} -o bin/%{act_runner_bin} %{goipath} %install # The binary install -m 0755 -vd %{buildroot}%{_bindir} install -m 0755 -vp bin/* %{buildroot}%{_bindir} # dockerd install -m 0755 -vd %{buildroot}%{_unitdir} install -m 0755 -vd %{buildroot}%{_sysconfdir}/%{name} install -D -m 0644 -vp %{SOURCE1} %{buildroot}%{_unitdir}/%{act_runner_service} install -D %{SOURCE7} %{buildroot}%{_sysusersdir}/%{name}.conf install -D %{SOURCE8} %{buildroot}%{_tmpfilesdir}/%{name}.conf bin/act_runner generate-config > %{buildroot}%{_sysconfdir}/%{name}/config.yaml install -D -m 0755 -vp %{SOURCE9} %{buildroot}%{_datadir}/%{name}/act_runner-register.sh # dockerd-rootless install -m 0755 -vd %{buildroot}%{_userunitdir} install -m 0755 -vd %{buildroot}%{_datadir}/%{name} install -D -m 0644 -vp %{SOURCE2} %{buildroot}%{_userunitdir}/%{act_runner_rootless_service} install -D -m 0644 -vp %{SOURCE3} %{buildroot}%{_userunitdir}/%{dockerd_rootless_service} install -D -m 0755 -vp %{SOURCE6} %{buildroot}%{_datadir}/%{name}/rootless-act_runner-register.sh %files %license LICENSE %doc README.md %{_bindir}/* %dir %{_datadir}/%{name} %files %{dockerd} %license LICENSE %doc README-%{dockerd}.md %dir %{_sysconfdir}/%{name} %config %{_sysconfdir}/%{name}/config.yaml %{_unitdir}/* %{_sysusersdir}/%{name}.conf %{_tmpfilesdir}/%{name}.conf %{_datadir}/%{name}/act_runner-register.sh %files %{dockerd_rootless} %license LICENSE %doc README-%{rootless}-%{dockerd}.md %{_userunitdir}/* %{_datadir}/%{name}/rootless-act_runner-register.sh %changelog ## START: Generated by rpmautospec * Fri Feb 20 2026 Daniel Demus - 0.3.0-1 - Release 0.3.0 * Sat Nov 22 2025 Daniel Demus - 0.2.13-5 - Upgrade to 0.2.13 * Thu Feb 27 2025 Daniel Demus - 0.2.11-9 - Add more ordering and some start back-off to allow gitea to be ready * Wed Feb 12 2025 Daniel Demus - 0.2.11-4 - Depend on the correct docker unit * Sun Jan 26 2025 Daniel Demus - 0.2.11-5 - Simplify and fix dockerd parts * Sun Jan 26 2025 Daniel Demus - 0.2.11-2 - Use sysusers and tmpfiles in plain dockerd setup * Thu Jan 23 2025 Daniel Demus - 0.2.11-1 - Upgrade to 0.2.11 which requires go 1.23 (not available on f40)) * Thu Jan 23 2025 Daniel Demus - 0.2.10-25 - Fix systemd unit startup hanging * Thu Jan 23 2025 Daniel Demus - 0.2.10-22 - Don't create mail spool * Thu Jan 23 2025 Daniel Demus - 0.2.10-20 - Only run things on install/uninstall, not upgrade * Thu Jan 23 2025 Daniel Demus - 0.2.10-18 - Add a /etc directory for the root dockerd setup * Thu Jan 23 2025 Daniel Demus - 0.2.10-16 - Re-arrange services and fix paths * Thu Jan 23 2025 Daniel Demus - 0.2.10-13 - Hand-code user creation and deletion * Wed Jan 22 2025 Daniel Demus - 0.2.10-10 - Bump release * Wed Jan 22 2025 Daniel Demus - 0.2.10-8 - Add dockerd subpackage * Wed Jan 22 2025 Daniel Demus - 0.2.10-7 - Use constant for binary name to avoid oopsies * Wed Jan 22 2025 Daniel Demus - 0.2.10-6 - Use systemd-rpm-macros * Wed Jan 22 2025 Daniel Demus - 0.2.10-5 - %%autosetup on f40 doesn't support -C so use plain %%setup with -n * Wed Jan 22 2025 Daniel Demus - 0.2.10-4 - Add rootless docker subpackage * Wed Jan 22 2025 Daniel Demus - 0.2.10-3 - BuildRequire git * Thu Jan 02 2025 Daniel Demus - ## END: Generated by rpmautospec