%global pname BYTEPATH

Name:           bytepath
Version:        1.0.1
Release:        3%{?dist}
Summary:        Arcade shooter with a focus on build theorycrafting
# TODO: verify asset licenses
License:        MIT AND CC-BY-3.0 AND CC0-1.0 AND OFL-1.1
URL:            https://github.com/RunningDroid/%{pname}

Source0:        https://github.com/RunningDroid/%{pname}/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
# Desktop file icon was added only after 1.0.1
Source1:        https://raw.githubusercontent.com/RunningDroid/BYTEPATH/256f5928b102e91299c877139f13d872978bcf2f/resources/graphics/icon.png
Patch0:         bytepath-0001-main-menu.patch

BuildArch:      noarch
# Build on same arches as love
# <https://src.fedoraproject.org/rpms/love/blob/rawhide/f/love.spec>
ExcludeArch:    ppc ppc64 s390x

BuildRequires:  /usr/bin/find
BuildRequires:  desktop-file-utils
Requires:       love >= 11.4

%description
BYTEPATH is a replayable arcade shooter with a focus on build theorycrafting.
Use a massive skill tree, many classes and ships to create your own builds and
defeat an ever increasing amount of enemies.


%prep
%autosetup -n %{pname}-%{version} -p1

mv resources/%{pname}.desktop %{name}.desktop

rm -rf tutorial
# Delete git/CI files in bundled libs
find libraries \( -path '*/.git*' -o -path '*/.travis*' \) -delete


%build
# Link duplicate lib
rm -rf libraries/windfield/mlib
ln -s ../mlib libraries/windfield/mlib

# Create shell script to run the game
cat <<'EOF' >run.sh
#!/usr/bin/bash
love %{_datadir}/%{name}
EOF


%install
mkdir -p %{buildroot}%{_datadir}/%{name}
cp -rp -t %{buildroot}%{_datadir}/%{name} \
	libraries objects resources rooms ./*.lua

# Install shell script (without extension)
install -Dpm 0755 run.sh %{buildroot}%{_bindir}/%{name}

# Install desktop file icon
install -Dpm 0644 %{SOURCE1} %{buildroot}%{_datadir}/pixmaps/%{name}.png

desktop-file-install \
	--dir=%{buildroot}%{_datadir}/applications \
	--set-comment='%{summary}' \
	--set-icon='%{name}' \
	--set-key='Exec' \
	--set-value='%{name}' \
	%{name}.desktop


%files
%license LICENSE
%doc README.md
%{_bindir}/%{name}
%{_datadir}/%{name}
%{_datadir}/pixmaps/%{name}.png
%{_datadir}/applications/%{name}.desktop


%changelog
* Fri Jul 21 2023 Justin Koh <j@ustink.org> - 1.0.1-3
- Fix main menu patch

* Fri Jul 21 2023 Justin Koh <j@ustink.org> - 1.0.1-2
- Add main menu patch

* Wed Jul 12 2023 Justin Koh <j@ustink.org> - 1.0.1-1
- Package bytepath