mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-01 11:22:58 +00:00
kstars: 3.4.3 -> 3.5.0
This commit is contained in:
parent
17646687c6
commit
7d42517d83
@ -9,20 +9,23 @@
|
|||||||
|
|
||||||
eigen, zlib,
|
eigen, zlib,
|
||||||
|
|
||||||
cfitsio, indilib, xplanet, libnova, libraw, gsl, wcslib
|
cfitsio, indilib, xplanet, libnova, libraw, gsl, wcslib, stellarsolver
|
||||||
}:
|
}:
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "kstars";
|
pname = "kstars";
|
||||||
version = "3.4.3";
|
version = "3.5.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://mirrors.mit.edu/kde/stable/kstars/kstars-${version}.tar.xz";
|
url = "mirror://kde/stable/kstars/kstars-${version}.tar.xz";
|
||||||
sha256 = "0j5yxg6ay6sic194skz6vjzg6yvrpb3gvypvs0frjrcjbsl1j4f8";
|
sha256 = "0fpkm75abn0hhdhfyvpfl6n0fr7gvw63xhb4hvwdrglhkf2nxam1";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
./indi-fix.patch
|
# Patches ksutils.cpp to use nix store prefixes to find program binaries of
|
||||||
|
# indilib and xplanet dependencies. Without the patch, Ekos is unable to spawn
|
||||||
|
# indi servers for local telescope/camera control.
|
||||||
|
./fs-fixes.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
|
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
|
||||||
@ -34,11 +37,12 @@ mkDerivation rec {
|
|||||||
|
|
||||||
eigen zlib
|
eigen zlib
|
||||||
|
|
||||||
cfitsio indilib xplanet libnova libraw gsl wcslib
|
cfitsio indilib xplanet libnova libraw gsl wcslib stellarsolver
|
||||||
];
|
];
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DINDI_NIX_ROOT=${indilib}"
|
"-DINDI_NIX_ROOT=${indilib}"
|
||||||
|
"-DXPLANET_NIX_ROOT=${xplanet}"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
@ -51,6 +55,6 @@ mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ timput ];
|
maintainers = with maintainers; [ timput hjones2199 ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
59
pkgs/applications/science/astronomy/kstars/fs-fixes.patch
Normal file
59
pkgs/applications/science/astronomy/kstars/fs-fixes.patch
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
--- kstars-3.5.0/CMakeLists.txt.old 2020-11-24 12:36:37.967433937 -0600
|
||||||
|
+++ kstars-3.5.0/CMakeLists.txt 2020-11-24 13:36:56.275263691 -0600
|
||||||
|
@@ -5,6 +5,9 @@
|
||||||
|
set (KSTARS_BUILD_RELEASE "Stable")
|
||||||
|
set (CMAKE_CXX_STANDARD 11)
|
||||||
|
|
||||||
|
+add_definitions(-DINDI_NIX_ROOT=${INDI_NIX_ROOT})
|
||||||
|
+add_definitions(-DXPLANET_NIX_ROOT=${XPLANET_NIX_ROOT})
|
||||||
|
+
|
||||||
|
# Build KStars Lite with -DBUILD_KSTARS_LITE=ON
|
||||||
|
option(BUILD_KSTARS_LITE "Build KStars Lite" OFF)
|
||||||
|
|
||||||
|
--- kstars-3.5.0/kstars/auxiliary/ksutils.old.cpp 2020-11-24 12:22:14.397319680 -0600
|
||||||
|
+++ kstars-3.5.0/kstars/auxiliary/ksutils.cpp 2020-11-24 13:32:22.946477798 -0600
|
||||||
|
@@ -1081,6 +1081,10 @@
|
||||||
|
// We support running within Snaps, Flatpaks, and AppImage
|
||||||
|
// The path should accomodate the differences between the different
|
||||||
|
// packaging solutions
|
||||||
|
+ #define STR_EXPAND(x) #x
|
||||||
|
+ #define STR(x) STR_EXPAND(x)
|
||||||
|
+ QString indi_prefix = QString(STR(INDI_NIX_ROOT));
|
||||||
|
+ QString xplanet_prefix = QString(STR(XPLANET_NIX_ROOT));
|
||||||
|
QString snap = QProcessEnvironment::systemEnvironment().value("SNAP");
|
||||||
|
QString flat = QProcessEnvironment::systemEnvironment().value("FLATPAK_DEST");
|
||||||
|
QString appimg = QProcessEnvironment::systemEnvironment().value("APPDIR");
|
||||||
|
@@ -1110,21 +1114,21 @@
|
||||||
|
#if defined(Q_OS_OSX)
|
||||||
|
return "/usr/local/bin/indiserver";
|
||||||
|
#endif
|
||||||
|
- return prefix + "/bin/indiserver";
|
||||||
|
+ return indi_prefix + "/bin/indiserver";
|
||||||
|
}
|
||||||
|
else if (option == "INDIHubAgent")
|
||||||
|
{
|
||||||
|
#if defined(Q_OS_OSX)
|
||||||
|
return "/usr/local/bin/indihub-agent";
|
||||||
|
#endif
|
||||||
|
- return prefix + "/bin/indihub-agent";
|
||||||
|
+ return indi_prefix + "/bin/indihub-agent";
|
||||||
|
}
|
||||||
|
else if (option == "indiDriversDir")
|
||||||
|
{
|
||||||
|
#if defined(Q_OS_OSX)
|
||||||
|
return "/usr/local/share/indi";
|
||||||
|
#elif defined(Q_OS_LINUX)
|
||||||
|
- return prefix + "/share/indi";
|
||||||
|
+ return indi_prefix + "/share/indi";
|
||||||
|
#else
|
||||||
|
return QStandardPaths::locate(QStandardPaths::GenericDataLocation, "indi", QStandardPaths::LocateDirectory);
|
||||||
|
#endif
|
||||||
|
@@ -1181,7 +1185,7 @@
|
||||||
|
#if defined(Q_OS_OSX)
|
||||||
|
return "/usr/local/bin/xplanet";
|
||||||
|
#endif
|
||||||
|
- return prefix + "/bin/xplanet";
|
||||||
|
+ return xplanet_prefix + "/bin/xplanet";
|
||||||
|
}
|
||||||
|
else if (option == "ASTAP")
|
||||||
|
{
|
@ -1,50 +0,0 @@
|
|||||||
--- CMakeLists.txt 2020-11-02 13:58:06.119743710 -0600
|
|
||||||
+++ kstars-3.4.3/CMakeLists.txt 2020-11-02 14:05:01.707799274 -0600
|
|
||||||
@@ -4,5 +4,7 @@
|
|
||||||
set (KStars_VERSION_REVISION 3)
|
|
||||||
set (CMAKE_CXX_STANDARD 11)
|
|
||||||
|
|
||||||
+add_definitions(-DINDI_NIX_ROOT=${INDI_NIX_ROOT})
|
|
||||||
+
|
|
||||||
# Build KStars Lite with -DBUILD_KSTARS_LITE=ON
|
|
||||||
option(BUILD_KSTARS_LITE "Build KStars Lite" OFF)
|
|
||||||
|
|
||||||
--- ksutils.cpp 2020-11-02 13:47:44.883596916 -0600
|
|
||||||
+++ kstars-3.4.3/kstars/auxiliary/ksutils.cpp 2020-11-02 17:41:44.961937090 -0600
|
|
||||||
@@ -1076,6 +1076,9 @@
|
|
||||||
{
|
|
||||||
QString snap = QProcessEnvironment::systemEnvironment().value("SNAP");
|
|
||||||
QString flat = QProcessEnvironment::systemEnvironment().value("FLATPAK_DEST");
|
|
||||||
+#define STR_EXPAND(x) #x
|
|
||||||
+#define STR(x) STR_EXPAND(x)
|
|
||||||
+ QString nix = QString(STR(INDI_NIX_ROOT));
|
|
||||||
|
|
||||||
if (option == "fitsDir")
|
|
||||||
{
|
|
||||||
@@ -1089,7 +1091,7 @@
|
|
||||||
if (flat.isEmpty() == false)
|
|
||||||
return flat + "/bin/indiserver";
|
|
||||||
else
|
|
||||||
- return snap + "/usr/bin/indiserver";
|
|
||||||
+ return nix + "/bin/indiserver";
|
|
||||||
}
|
|
||||||
else if (option == "INDIHubAgent")
|
|
||||||
{
|
|
||||||
@@ -1099,7 +1101,7 @@
|
|
||||||
if (flat.isEmpty() == false)
|
|
||||||
return flat + "/bin/indihub-agent";
|
|
||||||
else
|
|
||||||
- return snap + "/usr/bin/indihub-agent";
|
|
||||||
+ return nix + "/bin/indihub-agent";
|
|
||||||
}
|
|
||||||
else if (option == "indiDriversDir")
|
|
||||||
{
|
|
||||||
@@ -1109,7 +1111,7 @@
|
|
||||||
if (flat.isEmpty() == false)
|
|
||||||
return flat + "/share/indi";
|
|
||||||
else
|
|
||||||
- return snap + "/usr/share/indi";
|
|
||||||
+ return nix + "/share/indi";
|
|
||||||
#else
|
|
||||||
return QStandardPaths::locate(QStandardPaths::GenericDataLocation, "indi", QStandardPaths::LocateDirectory);
|
|
||||||
#endif
|
|
Loading…
Reference in New Issue
Block a user