File celestia-data.spec of Package celestia-data
#
# spec file for package celestia-data
#
# copyright (c) 2025 munix9@googlemail.com
#
%define _desc Celestia is a free 3D astronomy program. Based on the Hipparcos\
Catalogue, it allows users to display objects ranging in scale from\
artificial satellites to entire galaxies in three dimensions using\
OpenGL. Unlike most planetarium software, the user is free to travel\
about the Universe.
Name: celestia-data
Version: 1.7.0
Release: 0
Summary: Data files for Celestia, a real-time visual space simulation
License: GPL-2.0-or-later AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-BY-NC-SA-3.0 AND CC-BY-SA-3.0 AND CC-BY-SA-4.0
URL: https://celestiaproject.space/
Source0: %{name}-%{version}.tar.gz
Source99: %{name}.rpmlintrc
BuildRequires: ImageMagick
BuildRequires: celestia-tools >= 1.7.0~
BuildRequires: cmake
Requires: %{name}-common = %{version}
Requires: celestia >= 1.7.0~
%description
%{_desc}
This package contains architecture dependent data files.
%package common
Summary: Data files for Celestia, a real-time visual space simulation
Requires: %{name} = %{version}
Requires: celestia-textures >= 1.7.0~
Recommends: celestia-textures-lores >= 1.7.0~
Recommends: celestia-textures-medres >= 1.7.0~
Suggests: celestia-textures-hires
BuildArch: noarch
%description common
%{_desc}
This package contains the data files for Celestia.
%package -n celestia-textures-hires
Summary: Data files for Celestia, a real-time visual space simulation
Requires: %{name}-common >= 1.7.0~
Provides: celestia-textures = %{version}
BuildArch: noarch
%description -n celestia-textures-hires
%{_desc}
This package contains the high resolution textures for Celestia.
%package -n celestia-textures-lores
Summary: Data files for Celestia, a real-time visual space simulation
Requires: %{name}-common >= 1.7.0~
Provides: celestia-textures = %{version}
BuildArch: noarch
%description -n celestia-textures-lores
%{_desc}
This package contains the low resolution textures for Celestia.
%package -n celestia-textures-medres
Summary: Data files for Celestia, a real-time visual space simulation
Requires: %{name}-common >= 1.7.0~
Provides: celestia-textures = %{version}
BuildArch: noarch
%description -n celestia-textures-medres
%{_desc}
This package contains the medium resolution textures for Celestia.
%prep
%autosetup -p1
# fix "CMake Deprecation Warning"
sed -e 's/VERSION 3\.[0-9]/VERSION 3.10/' -i CMakeLists.txt \
cmake/ResizeImage.cmake
# define asteroid.jpg for other image formats (avif,dds)
sed -e 's/asteroid\.jpg/asteroid.*/g' -i data/{asteroids,comets}.ssc
%build
%cmake
%cmake_build
%install
%cmake_install
# create missing directory
install -d -m 0755 %{buildroot}%{_datadir}/celestia/extras
# use xyzv2bin to create binary xyzv files and
# create file lists (include/exclude data/common stuff)
_pwd=$PWD
rm -f data.list data-common.list
pushd %{buildroot}%{_datadir}
for f in $(find celestia -type f -name "*.xyzv" | sort)
do
xyzv2bin "$f" "${f}bin"
touch -r "$f" "${f}bin"
echo "%{_datadir}/${f}bin" >> $_pwd/data.list
echo "%exclude %{_datadir}/${f}bin" >> $_pwd/data-common.list
done
popd
%find_lang %{name} data-common.list
%files -f data.list
%license LICENSE.md LICENSES/*
%doc README
%dir %{_datadir}/celestia
%files common -f data-common.list
%dir %{_datadir}/celestia
%{_datadir}/celestia/data
%{_datadir}/celestia/extras
%{_datadir}/celestia/extras-standard
%{_datadir}/celestia/models
%dir %{_datadir}/celestia/textures
%{_datadir}/celestia/textures/flare.jpg
%{_datadir}/celestia/warp
%files -n celestia-textures-hires
%{_datadir}/celestia/textures/hires
%files -n celestia-textures-lores
%{_datadir}/celestia/textures/lores
%files -n celestia-textures-medres
%{_datadir}/celestia/textures/medres
%changelog