diff --git a/sci-astronomy/celestia/Manifest b/sci-astronomy/celestia/Manifest index 010c609089fb6..60a71e421a634 100644 --- a/sci-astronomy/celestia/Manifest +++ b/sci-astronomy/celestia/Manifest @@ -1,2 +1,4 @@ DIST celestia-1.7.0_pre20241231-data.tar.gz 295402479 BLAKE2B c6566f60435bb44c38cce0f01bbbda642a4f171e4c6425c48bfbf769fcce8cd4083ed5fa05783571b2adbba857c37c19ec44f0095bc1259f9abdcc2f7c015eef SHA512 58473a9c10a81740564f97666d991fc507e79c561b3a2388d7358e11ca664015ca81e52e65a4c96916dcd01313b5df8ee0a24337ac716ecf08bdd4208982b8d7 DIST celestia-1.7.0_pre20241231.tar.gz 4587843 BLAKE2B e6332306a7772a592ac4da6ea3c5713e47c454eb84a79ff2655be30602956e82d68a604c59290ed0b3adf9d4dd01d2dc4c1faf1d6baf7d45d0043242d6e1c440 SHA512 0782f0288388a7069d4a04afee9768be3a4c94779cec63b5b3886899b72c266539b553ae0050d22592f0d677d329873063ab20ef19a95cdf8a07671c79d33a4b +DIST celestia-1.7.0_pre20260630-data.tar.gz 303608335 BLAKE2B 90f8671df30bc7962aa99477d774315ecd5d1b5c6c5fbeb82cde47d83481c5488e2df52ae37ae26a9c2c7047aa68b5de5848908c5ab1760293fc43850981cad5 SHA512 951e15c1409ea3c558db648300c9822a0ce7a20b93f948403fc6e7d3335cf11232e574ac26da73b23f868a5b3593f854cd523c60e46003994dbe9ebe24fd3e0b +DIST celestia-1.7.0_pre20260630.tar.gz 4597883 BLAKE2B aefc713bbada17981d0466c987355b06a76beb56538dad54d6e620904d4478e519bc2e510b80ddaa78ea3493e229c1b139d2d65b890cfa53f8b9f4e60686f3cb SHA512 99fbeeaebc3b9b907234a7ee9308103188d879830683b4fd0819dcd4468da97b038f1e28cc8889ab1c9e20738c2c84549bd8a3af5ec5b535ac17db4f8659582c diff --git a/sci-astronomy/celestia/celestia-1.7.0_pre20260630.ebuild b/sci-astronomy/celestia/celestia-1.7.0_pre20260630.ebuild new file mode 100644 index 0000000000000..7c4be53a18bec --- /dev/null +++ b/sci-astronomy/celestia/celestia-1.7.0_pre20260630.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +CMAKE_IN_SOURCE_BUILD="yes" +LUA_COMPAT=( lua5-{1..3} luajit ) + +inherit desktop lua-single xdg cmake + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://github.com/CelestiaProject/Celestia.git" + inherit git-r3 +else + if [[ ${PV} == *_p* ]] ; then + COMMIT_ID="329e03ae8858e3c12386c603f0a034649cf17f8a" + COMMIT_ID_DATA="d156a8b5ed3f03add56c706880cc879b99ba26f9" + SRC_URI=" + https://github.com/${PN^}Project/${PN^}/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz + https://github.com/${PN^}Project/${PN^}Content/archive/${COMMIT_ID_DATA}.tar.gz -> ${P}-data.tar.gz + " + S="${WORKDIR}/${PN^}-${COMMIT_ID}" + KEYWORDS="~amd64 ~x86" + else + SRC_URI="https://github.com/${PN^}Project/${PN^}/archive/${PV/_/-}.tar.gz -> ${P}.tar.gz" + fi +fi + +DESCRIPTION="OpenGL 3D space simulator" +HOMEPAGE="https://celestiaproject.space/ https://github.com/CelestiaProject/Celestia" + +LICENSE="GPL-2+" +SLOT="0" + +# sdl backend needs imgui, which is not in the main tree yet. +# Default to qt6 support then +#IUSE="ffmpeg lto lua nls +qt6 sdl test" +IUSE="ffmpeg lto lua nls test" +RESTRICT="!test? ( test )" +#REQUIRED_USE="|| ( qt6 sdl ) +REQUIRED_USE=" + lua? ( ${LUA_REQUIRED_USE} ) +" + +BDEPEND=" + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" +# qt6? ( dev-qt/qtbase:6[gui,opengl,widgets] ) +# sdl? ( media-libs/libsdl2[X] media-libs/imgui ) +DEPEND=" + dev-cpp/eigen:= + >=dev-libs/boost-1.67:= + >=dev-libs/libfmt-8.1.0:= + media-libs/freetype + media-libs/libepoxy + media-libs/libjpeg-turbo:0= + media-libs/libpng:0= + virtual/zlib:= + virtual/glu + virtual/opengl + ffmpeg? ( media-video/ffmpeg:0= ) + lua? ( ${LUA_DEPS} ) + dev-qt/qtbase:6[gui,opengl,widgets] +" +RDEPEND="${DEPEND}" + +PATCHES=( + # allow forcing CMake to look for a specific Lua version instead of the newest branch installed + "${FILESDIR}"/${PN}-1.7.0-cmake_lua_version-r1.patch +) + +src_prepare() { + mv "${WORKDIR}"/CelestiaContent-${COMMIT_ID_DATA} content || die + cmake_src_prepare +} + +src_configure() { + CMAKE_USE_DIR="${CMAKE_USE_DIR}/content" BUILD_DIR="${BUILD_DIR}/content" \ + cmake_src_configure + + # -DENABLE_QT6="$(usex qt6)" + # -DENABLE_SDL="$(usex sdl)" + local mycmakeargs=( + -DCELCFG_EXTRAS_DIRS='"~/.celestia"' + -DENABLE_CELX="$(usex lua)" + -DENABLE_NLS="$(usex nls)" + -DENABLE_FFMPEG="$(usex ffmpeg)" + -DENABLE_LTO="$(usex lto)" + -DENABLE_QT6=ON + -DENABLE_WIN=OFF + -DENABLE_SDL=OFF + -DENABLE_TESTS="$(usex test)" + ) + # Upstream always looks for LuaJIT first unless stopped, and we only need + # the version specification when linking against PUC Lua + if use lua && ! use lua_single_target_luajit; then + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_LuaJIT=ON + -DLUA_VERSION=$(lua_get_version) + ) + fi + cmake_src_configure +} + +src_compile() { + cmake_src_compile + CMAKE_USE_DIR="${CMAKE_USE_DIR}/content" BUILD_DIR="${BUILD_DIR}/content" cmake_src_compile +} + +src_install() { + cmake_src_install + + # Icons with more resolutions + newicon ${PN}-logo.png ${PN}.png + + dodoc AUTHORS README TRANSLATORS *.txt + + CMAKE_USE_DIR="${CMAKE_USE_DIR}/content" BUILD_DIR="${BUILD_DIR}/content" cmake_src_install +}