+#
+# Conditional build:
+%bcond_with kde # KDE3 UI as the default one
+%bcond_without gtk # use GTK+2 UI instead
+%bcond_with gnome # use libgnome2 UI instead
+%bcond_with glut # use glut UI instead
+%bcond_without theora # without theora support
+
+%if %{with kde} || %{with gnome} || %{with glut}
+%undefine with_gtk
+%endif
Summary: A real-time visual space simulation
-Summary(pl): Symulacja przestrzeni kosmicznej w czasie rzeczywistym
+Summary(pl.UTF-8): Symulacja przestrzeni kosmicznej w czasie rzeczywistym
Name: celestia
-Version: 1.2.4
+Version: 1.6.4
Release: 1
License: GPL
Group: X11/Applications/Science
-Source0: http://prdownloads.sourceforge.net/celestia/%{name}-%{version}.tar.gz
-Source1: %{name}.desktop
-Patch0: %{name}-moon_eclipse.patch
-URL: http://www.shatters.net/celestia/
-BuildRequires: OpenGL-devel
+Source0: https://github.com/CelestiaProject/Celestia/archive/refs/tags/%{version}.tar.gz
+# Source0-md5: d4770ffe08cb8761a78bebabcb9067ef
+Patch0: %{name}-desktop.patch
+Patch1: %{name}-null.patch
+URL: https://celestia.space
+BuildRequires: OpenGL-GLU-devel
+%{?with_glut:BuildRequires: OpenGL-glut-devel >= 4.0}
BuildRequires: autoconf
BuildRequires: automake
-BuildRequires: glut-devel
-BuildRequires: gnome-libs-devel
-BuildRequires: gtk+-devel
-BuildRequires: gtkglarea-devel
+BuildRequires: gettext-tools
+%if %{with gtk} || %{with gnome}
+BuildRequires: cairo-devel
+BuildRequires: gtk+2-devel >= 2:2.6
+BuildRequires: gtkglext-devel
+%endif
+BuildRequires: gettext-tools
+%{?with_kde:BuildRequires: kdelibs-devel}
+%{?with_gnome:BuildRequires: libgnomeui-devel}
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libstdc++-devel
-Requires: OpenGL
-Requires: %{name}-asterisms
-Requires: %{name}-extrasolar
-Requires: %{name}-galaxies
-Requires: %{name}-stars
-Requires: %{name}-textures-stars
-Requires: %{name}-textures-mercury
-Requires: %{name}-textures-earth
-Requires: %{name}-textures-moon
-Requires: %{name}-textures-mars
-Requires: %{name}-textures-jupiter
-Requires: %{name}-textures-galileanmoons
-Requires: %{name}-textures-saturn
-Requires: %{name}-textures-triton
-Requires: %{name}-textures-pluto
+%{?with_theora:BuildRequires: libtheora-devel}
+BuildRequires: libtool
+BuildRequires: lua53-devel
+BuildRequires: pkgconfig
+BuildRequires: sed >= 4.0
+# celestia < 1.4 original packages
+Obsoletes: celestia-extrasolar
+Obsoletes: celestia-generator
+Obsoletes: celestia-stars
+Obsoletes: celestia-task-default
+# texture replacement addons, virtual provides
+Obsoletes: celestia-textures-earth
+Obsoletes: celestia-textures-earth-clouds
+Obsoletes: celestia-textures-earth-night
+Obsoletes: celestia-textures-galileanmoons
+Obsoletes: celestia-textures-mars
+Obsoletes: celestia-textures-mars-bumpmap
+Obsoletes: celestia-textures-mercury
+Obsoletes: celestia-textures-mercury-bumpmap
+Obsoletes: celestia-textures-moon
+Obsoletes: celestia-textures-moon-bumpmap
+# celestia addons
+Obsoletes: celestia-blackhole
+Obsoletes: celestia-galaxies_extended
+Obsoletes: celestia-galaxy_clusters
+Obsoletes: celestia-globular_clusters
+Obsoletes: celestia-im-starwars
+Obsoletes: celestia-pathfinder
+Obsoletes: celestia-voyager
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _noautoreqdep libGL.so.1 libGLU.so.1 libGLcore.so.1
-
-%define _prefix /usr/X11R6
-%define _mandir %{_prefix}/man
-
%description
Celestia is a free real-time space simulation that lets you experience
our universe in three dimensions. Unlike most planetarium software,
across. A 'point-and-goto' interface makes it simple to navigate
through the universe to the object you want to visit.
-%description -l pl
+%description -l pl.UTF-8
Celestia to wolny symulator przestrzeni komicznej w czasie
-rzeczywistym, który pozwala do¶wiadczaæ naszego Wszech¶wiata w trzech
-wymiarach. W odró¿nieniu od innych programów planetarnych Celestia nie
-przywi±zuje Ciê do powierzchni ziemi. Mo¿esz podró¿owaæ przez Uk³ad
-S³oneczny do ponad 100,000 gwiazd lub nawet poza galaktykê. Wszystkie
-podró¿e w Celestii s± niezauwa¿alne; funkcja wyk³adniczego
-przybli¿enia pozwala Ci odkrywaæ Kosmos w ró¿nych skalach - od
-spojrzenia na galaktyki do widoku kilkumetrowych statków kosmicznych.
-Interfejs typu 'poka¿-i-leæ' czyni nawigacjê przez Wszech¶wiat prost±.
-
-%package task-default
-Summary: Default packages for celestia
-Summary(pl): Domy¶lne pakiety dla celestii
-Group: X11/Applications/Science
-Requires: %{name}-asterisms-default
-Requires: %{name}-extrasolar-default
-Requires: %{name}-galaxies-default
-Requires: %{name}-stars-default
-Requires: %{name}-textures-stars-default
-Requires: %{name}-textures-mercury-default
-Requires: %{name}-textures-earth-default
-Requires: %{name}-textures-moon-default
-Requires: %{name}-textures-mars-default
-Requires: %{name}-textures-jupiter-default
-Requires: %{name}-textures-galileanmoons-default
-Requires: %{name}-textures-saturn-default
-Requires: %{name}-textures-triton-default
-Requires: %{name}-textures-pluto-default
-
-%description task-default
-Default packages for celestia. This metapackage contains no files
-and can be safely uninstalled after installation.
-
-%description task-default -l pl
-Domy¶lne pakiety dla celestii. Ten metapakiet nie zawiera ¿adnych
-plików i mo¿e zostaæ usuniêty po instalacji.
-
-%package asterisms-default
-Summary: 53 celestia asterisms
-Summary(pl): 53 konstelacje dla celestiii
-Group: X11/Applications/Science
-Requires: %{name}
-Provides: %{name}-asterisms
-Obsoletes: %{name}-asterisms
-
-%description asterisms-default
-53 asterisms for celestia.
-
-%description asterisms-default -l pl
-53 gwiazdozbiory dla celestii.
-
-%package extrasolar-default
-Summary: Catalog of known extrasolar planetary systems
-Summary(pl): Katalog znanych uk³adów planetarnych
-Group: X11/Applications/Science
-Requires: %{name}
-Provides: %{name}-extrasolar
-Obsoletes: %{name}-extrasolar
-
-%description extrasolar-default
-Catalog of known extrasolar planetary systems.
-
-%description extrasolar-default -l pl
-Katalog znanych uk³adów planetarnych.
-
-%package galaxies-default
-Summary: Galaxy catalog (8 galaxies)
-Summary(pl): Katalog o¶miu galaktyk
-Group: X11/Applications/Science
-Requires: %{name}
-Provides: %{name}-galaxies
-Obsoletes: %{name}-galaxies
-
-%description galaxies-default
-Galaxy catalog (8 galaxies).
-
-%description galaxies-default -l pl
-Katalog o¶miu galaktyk.
-
-%package stars-default
-Summary: Database with 100 000 stars
-Summary(pl): Baza danych 100 000 gwiazd
-Group: X11/Applications/Science
-Requires: %{name}
-Provides: %{name}-stars
-Obsoletes: %{name}-stars
-
-%description stars-default
-Initial Stars database (with about 100 000 Hipparcos stars).
-
-%description stars-default -l pl
-Podstawowa baza danych gwiazd (z oko³o 100 000 gwiazd zbadanych
-przez sondê kosmiczn± Hipparcos).
-
-%package textures-stars-default
-Summary: Standard stars textures
-Summary(pl): Standardowe tekstury gwiazd
-Group: X11/Applications/Science
-Requires: %{name}
-Provides: %{name}-textures-stars
-Obsoletes: %{name}-textures-stars
-
-%description textures-stars-default
-Standard stars textures.
-
-%description textures-stars-default -l pl
-Standardowe tekstury gwiazd.
-
-%package textures-mercury-default
-Summary: 1k Mercury textures
-Summary(pl): Tekstury Merkurego o wielko¶ci 1024 x 512
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-mercury
-Obsoletes: %{name}-textures-mercury
-
-%description textures-mercury-default
-1k Mercury textures.
-
-%description textures-mercury-default -l pl
-Tekstury Merkurego o wielko¶ci 1024 x 512.
-
-%package textures-earth-default
-Summary: 2k Earth textures
-Summary(pl): Tekstury Ziemi o wielko¶ci 2048 x 1024
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-earth
-Obsoletes: %{name}-textures-earth
-
-%description textures-earth-default
-2k Earth textures.
-
-%description textures-earth-default -l pl
-Tekstury Ziemi o wielko¶ci 2048 x 1024.
-
-%package textures-moon-default
-Summary: 1k Moon textures
-Summary(pl): Tekstury Ksiê¿yca o wielko¶ci 1024 x 512
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-moon
-Obsoletes: %{name}-textures-moon
-
-%description textures-moon-default
-1k Moon textures.
-
-%description textures-moon-default -l pl
-Tekstury Ksiê¿yca o wielko¶ci 1024 x 512.
-
-%package textures-mars-default
-Summary: 1k Mars textures
-Summary(pl): Tekstury Marsa o wielko¶ci 1024 x 512
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-mars
-Obsoletes: %{name}-textures-mars
-
-%description textures-mars-default
-1k Mars textures.
-
-%description textures-mars-default -l pl
-Tekstury Marsa o wielko¶ci 1024 x 512.
-
-%package textures-jupiter-default
-Summary: 1k Jupiter textures
-Summary(pl): Tekstury Jowisza o wielko¶ci 1024 x 512
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-jupiter
-Obsoletes: %{name}-textures-jupiter
-
-%description textures-jupiter-default
-1k Jupiter textures.
-
-%description textures-jupiter-default -l pl
-Tekstury Jowisza o wielko¶ci 1024 x 512.
-
-%package textures-galileanmoons-default
-Summary: 1k galilean moons textures
-Summary(pl): Tekstury ksiê¿yców odkrytych przez Galileusza o wielko¶ci 1024 x 512
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-galileanmoons
-Obsoletes: %{name}-textures-galileanmoons
-
-%description textures-galileanmoons-default
-1k galilean moons (Io, Europa, Ganymede, Calypso) textures.
-
-%description textures-galileanmoons-default -l pl
-Tekstury ksiê¿yców Jowisza odkrytych przez Galileusza (Io,
-Europa, Ganimedes, Calypso) o wielko¶ci 1024 x 512.
-
-%package textures-saturn-default
-Summary: 256 Saturn textures
-Summary(pl): Tekstury Saturna o wielko¶ci 256 x 128
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-saturn
-Obsoletes: %{name}-textures-saturn
-
-%description textures-saturn-default
-256 Saturn textures.
-
-%description textures-saturn-default -l pl
-Tekstury Jowisza o wielko¶ci 256 x 128.
-
-%package textures-triton-default
-Summary: 512 Triton textures
-Summary(pl): Tekstury Trytona o wielko¶ci 512 x 256
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-triton
-Obsoletes: %{name}-textures-triton
-
-%description textures-triton-default
-512 Triton textures.
-
-%description textures-triton-default -l pl
-Tekstury najwiêkszego ksiê¿yca Neptuna, Trytona
-o wielko¶ci 512 x 256.
-
-%package textures-pluto-default
-Summary: 1k Pluto textures
-Summary(pl): Tekstury Plutona o wielko¶ci 1024 x 512
-Group: X11/Applications/Science
-Prereq: %{name}
-Provides: %{name}-textures-pluto
-Obsoletes: %{name}-textures-pluto
-
-%description textures-pluto-default
-1k Pluto textures.
-
-%description textures-pluto-default -l pl
-Tekstury Plutona o wielko¶ci 1024 x 512.
+rzeczywistym, który pozwala doświadczać naszego Wszechświata w trzech
+wymiarach. W odróżnieniu od innych programów planetarnych Celestia nie
+przywiązuje Cię do powierzchni ziemi. Możesz podróżować przez Układ
+Słoneczny do ponad 100,000 gwiazd lub nawet poza galaktykę. Wszystkie
+podróże w Celestii są niezauważalne; funkcja wykładniczego
+przybliżenia pozwala Ci odkrywać Kosmos w różnych skalach - od
+spojrzenia na galaktyki do widoku kilkumetrowych statków kosmicznych.
+Interfejs typu 'pokaż-i-leć' czyni nawigację przez Wszechświat prostą.
%prep
-%setup -q
+%setup -q -n Celestia-%{version}
%patch0 -p1
-
-touch PLACEHOLDER-TASK-DEFAULT
+%patch1 -p1
%build
-rm -f missing
-%{__aclocal} -I macros
+%{__gettextize}
+cp -a po/Makefile* po2/
+%{__libtoolize}
+%{__aclocal}
%{__autoconf}
-automake -a -f
-CFLAGS="-I%{_includedir} %{rpmcflags}"
-CPPFLAGS="-I%{_includedir} %{rpmcflags}"
-CXXFLAGS="-I%{_includedir} %{rpmcflags} -fno-rtti -fno-exceptions"
-%configure
+%{__autoheader}
+%{__automake}
+
+%configure \
+ CFLAGS="%{rpmcflags} $(pkg-config --cflags libpng)" \
+ LIBS="-ldl" \
+ %{?with_kde:--with-kde} \
+ %{?with_gtk:--with-gtk} \
+ %{?with_gnome:--with-gnome} \
+ %{?with_glut:--with-glut} \
+ --disable-rpath \
+ %{!?with_theora:--disable-theora} \
+ --with-lua \
+ --with-qt-dir=%{_libdir}
+
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} -e DESTDIR=$RPM_BUILD_ROOT install
-install -d $RPM_BUILD_ROOT%{_applnkdir}/Scientific/Astronomy
-install %{SOURCE1} $RPM_BUILD_ROOT%{_applnkdir}/Scientific/Astronomy/%{name}.desktop
-
-cd $RPM_BUILD_ROOT%{_datadir}/celestia/textures/medres
-mv moonbump1k.jpg moonbump.jpg
-mv marsbump1k.jpg marsbump.jpg
-mv plutobump1k.jpg plutobump.jpg
-
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-%files
-%defattr(644,root,root,755)
-%doc README AUTHORS TODO controls.txt
-%doc %{_datadir}/celestia/manual
-%attr(755,root,root) %{_bindir}/*
-%dir %{_datadir}/celestia
-%dir %{_datadir}/celestia/data
-# problem: after upgrade it will be lost
-%verify(not md5 size mtime) %{_datadir}/celestia/data/solarsys.ssc
-%{_datadir}/celestia/data/hdnames.dat
-%{_datadir}/celestia/data/starnames.dat
-%{_datadir}/celestia/extras
-%{_datadir}/celestia/fonts
-%{_datadir}/celestia/models
-%{_datadir}/celestia/shaders
-%dir %{_datadir}/celestia/textures
-%{_datadir}/celestia/textures/lores
-%dir %{_datadir}/celestia/textures/medres
-%{_datadir}/celestia/textures/medres/iss*
-%{_datadir}/celestia/textures/medres/ariel.jpg
-%{_datadir}/celestia/textures/medres/asteroid.jpg
-%{_datadir}/celestia/textures/medres/deimos.jpg
-%{_datadir}/celestia/textures/medres/dione.jpg
-%{_datadir}/celestia/textures/medres/gasgiant.jpg
-%{_datadir}/celestia/textures/medres/iapetus.jpg
-%{_datadir}/celestia/textures/medres/jupiterlike.jpg
-%{_datadir}/celestia/textures/medres/mimas.jpg
-%{_datadir}/celestia/textures/medres/miranda.jpg
-%{_datadir}/celestia/textures/medres/oberon.jpg
-%{_datadir}/celestia/textures/medres/phobos.jpg
-%{_datadir}/celestia/textures/medres/rhea.jpg
-%{_datadir}/celestia/textures/medres/tethys.jpg
-%{_datadir}/celestia/textures/medres/titania.jpg
-%{_datadir}/celestia/textures/medres/umbriel.jpg
-%{_datadir}/celestia/textures/medres/venus.jpg
-%{_datadir}/celestia/textures/medres/venuslike.jpg
-%{_datadir}/celestia/textures/flare.jpg
-%{_datadir}/celestia/textures/logo.png
-%{_datadir}/celestia/celestia.cfg
-%{_datadir}/celestia/controls.txt
-%{_datadir}/celestia/*.cel
-%{_applnkdir}/Scientific/Astronomy/*
-
-%files task-default
-%defattr(644,root,root,755)
-%doc PLACEHOLDER-TASK-DEFAULT
-
-%files asterisms-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/data/asterisms.dat
-
-%files extrasolar-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/data/extrasolar.ssc
-
-%files galaxies-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/data/galaxies.dat
-
-%files stars-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/data/stars.dat
-
-%files textures-stars-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/astar.jpg
-%{_datadir}/celestia/textures/medres/bstar.jpg
-%{_datadir}/celestia/textures/medres/gstar.jpg
-%{_datadir}/celestia/textures/medres/mstar.jpg
-%{_datadir}/celestia/textures/medres/browndwarf.jpg
-
-%files textures-mercury-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/mercury.jpg
-%{_datadir}/celestia/textures/medres/mercurybump.jpg
-
-%files textures-earth-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/earth-clouds.png
-%{_datadir}/celestia/textures/medres/earth.png
-%{_datadir}/celestia/textures/medres/earthnight.jpg
-%files textures-moon-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/moon.jpg
-%{_datadir}/celestia/textures/medres/moonbump.jpg
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT \
+ kde_htmldir=%{_kdedocdir} \
+ kde_libs_htmldir=%{_kdedocdir} \
+ appsdir=%{_desktopdir}/kde
-%files textures-mars-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/mars.jpg
-%{_datadir}/celestia/textures/medres/marsbump.jpg
+# desktop/icon
+install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
+%{!?with_kde:install src/celestia/kde/data/celestia.desktop $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop}
+cp -p src/celestia/kde/data/hi48-app-celestia.png $RPM_BUILD_ROOT%{_pixmapsdir}/celestia.png
-%files textures-jupiter-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/jupiter.jpg
+%find_lang %{name} --all-name --with-kde
-%files textures-galileanmoons-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/callisto.jpg
-%{_datadir}/celestia/textures/medres/io.jpg
-%{_datadir}/celestia/textures/medres/europa.jpg
-%{_datadir}/celestia/textures/medres/ganymede.jpg
+%clean
+rm -rf $RPM_BUILD_ROOT
-%files textures-saturn-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/saturn.jpg
+%if %{with gnome}
+%post
+%gconf_schema_install celestia.schemas
-%files textures-triton-default
-%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/triton.jpg
+%preun
+%gconf_schema_uninstall celestia.schemas
+%endif
-%files textures-pluto-default
+%files -f %{name}.lang
%defattr(644,root,root,755)
-%{_datadir}/celestia/textures/medres/pluto.jpg
-%{_datadir}/celestia/textures/medres/plutobump.jpg
+%doc NEWS README AUTHORS controls.txt ChangeLog
+%attr(755,root,root) %{_bindir}/*
+%{_datadir}/celestia
+%{_pixmapsdir}/*
+%if %{with kde}
+%{_datadir}/apps/celestia
+%{_datadir}/config/*
+%{_datadir}/mimelnk/application/*
+%{_datadir}/services/*
+%{_iconsdir}/*/*/apps/%{name}.png
+%{_desktopdir}/kde/*.desktop
+%else
+%{_desktopdir}/*.desktop
+%endif
+%{?with_gnome:%{_sysconfdir}/gconf/schemas/celestia.schemas}