diff --git a/pkgs/development/libraries/indilib/default.nix b/pkgs/development/libraries/indilib/default.nix index 035356ac861a..4813e431a663 100644 --- a/pkgs/development/libraries/indilib/default.nix +++ b/pkgs/development/libraries/indilib/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchFromGitHub , cmake , cfitsio @@ -23,10 +24,6 @@ stdenv.mkDerivation rec { sha256 = "sha256-WTRfV6f764tDGKnQVd1jeYN/qXa/VRTFK0mMalc+9aU="; }; - patches = [ - ./udev-dir.patch - ]; - nativeBuildInputs = [ cmake ]; @@ -43,6 +40,11 @@ stdenv.mkDerivation rec { fftw ]; + cmakeFlags = [ + "-DCMAKE_INSTALL_LIBDIR=lib" + "-DUDEVRULES_INSTALL_DIR=lib/udev/rules.d" + ]; + meta = with lib; { homepage = "https://www.indilib.org/"; description = "Implementation of the INDI protocol for POSIX operating systems"; diff --git a/pkgs/development/libraries/indilib/indi-3rdparty.nix b/pkgs/development/libraries/indilib/indi-3rdparty.nix new file mode 100644 index 000000000000..02862820b3a3 --- /dev/null +++ b/pkgs/development/libraries/indilib/indi-3rdparty.nix @@ -0,0 +1,63 @@ +{ stdenv +, lib +, fetchFromGitHub +, cmake +, cfitsio +, libusb1 +, zlib +, boost +, libnova +, curl +, libjpeg +, gsl +, fftw +, indilib +, libgphoto2 +, libraw +, libftdi1 +, libdc1394 +, gpsd +, ffmpeg +}: + +stdenv.mkDerivation rec { + pname = "indi-3rdparty"; + version = "1.8.8"; + + src = fetchFromGitHub { + owner = "indilib"; + repo = pname; + rev = "v${version}"; + sha256 = "18ii9qsghrvj8y4y6c7bx6kjradybnmyq8i5phj7pv4r8w91rq7g"; + }; + + cmakeFlags = [ + "-DINDI_DATA_DIR=\${CMAKE_INSTALL_PREFIX}/share/indi" + "-DCMAKE_INSTALL_LIBDIR=lib" + "-DUDEVRULES_INSTALL_DIR=lib/udev/rules.d" + "-DRULES_INSTALL_DIR=lib/udev/rules.d" + "-DWITH_SX=off" + "-DWITH_SBIG=off" + "-DWITH_APOGEE=off" + "-DWITH_FISHCAMP=off" + "-DWITH_DSI=off" + "-DWITH_QHY=off" + "-DWITH_ARMADILLO=off" + "-DWITH_PENTAX=off" + ]; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ + indilib libnova curl cfitsio libusb1 zlib boost gsl gpsd + libjpeg libgphoto2 libraw libftdi1 libdc1394 ffmpeg fftw + ]; + + meta = with lib; { + homepage = "https://www.indilib.org/"; + description = "Third party drivers for the INDI astronomical software suite"; + license = licenses.lgpl2Plus; + maintainers = with maintainers; [ hjones2199 ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/development/libraries/indilib/indi-full.nix b/pkgs/development/libraries/indilib/indi-full.nix new file mode 100644 index 000000000000..e52da9f2eab1 --- /dev/null +++ b/pkgs/development/libraries/indilib/indi-full.nix @@ -0,0 +1,11 @@ +{ callPackage, indilib, indi-3rdparty }: + +let + indi-with-drivers = ./indi-with-drivers.nix; +in +callPackage indi-with-drivers { + pkgName = "indi-full"; + extraDrivers = [ + indi-3rdparty + ]; +} diff --git a/pkgs/development/libraries/indilib/indi-with-drivers.nix b/pkgs/development/libraries/indilib/indi-with-drivers.nix new file mode 100644 index 000000000000..b34abfd95c1f --- /dev/null +++ b/pkgs/development/libraries/indilib/indi-with-drivers.nix @@ -0,0 +1,9 @@ +{ buildEnv, indilib ? indilib, extraDrivers ? null , pkgName ? "indi-with-drivers" }: + +buildEnv { + name = pkgName; + paths = [ + indilib + ] + ++ extraDrivers; +} diff --git a/pkgs/development/libraries/indilib/udev-dir.patch b/pkgs/development/libraries/indilib/udev-dir.patch deleted file mode 100644 index 701680012914..000000000000 --- a/pkgs/development/libraries/indilib/udev-dir.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- indi-1.8.6/CMakeLists.txt 2020-08-21 05:56:59.000000000 -0500 -+++ CMakeLists.txt 2020-11-01 12:50:57.621293870 -0600 -@@ -77,7 +77,7 @@ - ## the following are directories where stuff will be installed to - set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include/") - set(PKGCONFIG_INSTALL_PREFIX "${CMAKE_INSTALL_LIBDIR}/pkgconfig/") --set(UDEVRULES_INSTALL_DIR "/lib/udev/rules.d" CACHE STRING "Base directory for udev rules") -+set(UDEVRULES_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib/udev/rules.d" CACHE STRING "Base directory for udev rules") - - set(PKG_CONFIG_LIBDIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}) - diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 55e10c5334a8..3a28a0f9e8ec 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14495,6 +14495,8 @@ in indicator-application-gtk3 = callPackage ../development/libraries/indicator-application/gtk3.nix { }; indilib = callPackage ../development/libraries/indilib { }; + indi-3rdparty = callPackage ../development/libraries/indilib/indi-3rdparty.nix { }; + indi-full = callPackage ../development/libraries/indilib/indi-full.nix { }; inih = callPackage ../development/libraries/inih { };