treewide: move astro libraries into pkgs/development/libraries/science/astronomy
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
diff -ruN cfitsio/configure cfitsio-rpath-universal/configure
|
||||
--- cfitsio/configure 2018-05-09 21:16:00.000000000 +0200
|
||||
+++ cfitsio-rpath-universal/configure 2018-05-31 12:02:25.000000000 +0200
|
||||
@@ -4727,16 +4727,7 @@
|
||||
SHLIB_SUFFIX=".dylib"
|
||||
CFITSIO_SHLIB="lib\${PACKAGE}.\${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}\${SHLIB_SUFFIX}"
|
||||
CFITSIO_SHLIB_SONAME="lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX}"
|
||||
- case $host in
|
||||
- *darwin[56789]*)
|
||||
- SHLIB_LD="$CC -dynamiclib -install_name lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX} -compatibility_version \${CFITSIO_SONAME} -current_version \${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}"
|
||||
- ;;
|
||||
- *)
|
||||
- # Build 'Universal' binaries (i386 & x86_64 architectures) and
|
||||
- # use rpath token on Darwin 10.x or newer:
|
||||
- SHLIB_LD="$CC -dynamiclib $C_UNIV_SWITCH -headerpad_max_install_names -install_name @rpath/lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX} -compatibility_version \${CFITSIO_SONAME} -current_version \${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}"
|
||||
- ;;
|
||||
- esac
|
||||
+ SHLIB_LD="$CC -dynamiclib -install_name ${out}/lib/lib\${PACKAGE}.\${CFITSIO_SONAME}\${SHLIB_SUFFIX} -compatibility_version \${CFITSIO_SONAME} -current_version \${CFITSIO_SONAME}.\${CFITSIO_MAJOR}.\${CFITSIO_MINOR}"
|
||||
|
||||
lhea_shlib_cflags="-fPIC -fno-common"
|
||||
;;
|
||||
@@ -0,0 +1,40 @@
|
||||
{ fetchurl, lib, stdenv, bzip2 }:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cfitsio";
|
||||
version = "3.49";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio-${version}.tar.gz";
|
||||
sha256 = "1cyl1qksnkl3cq1fzl4dmjvkd6329b57y9iqyv44wjakbh6s4rav";
|
||||
};
|
||||
|
||||
buildInputs = [ bzip2 ];
|
||||
|
||||
patches = [ ./darwin-rpath-universal.patch ];
|
||||
|
||||
configureFlags = [ "--with-bzip2=${bzip2.out}" ];
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
# Shared-only build
|
||||
buildFlags = [ "shared" ];
|
||||
postPatch = '' sed -e '/^install:/s/libcfitsio.a //' -e 's@/bin/@@g' -i Makefile.in
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://heasarc.gsfc.nasa.gov/fitsio/";
|
||||
description = "Library for reading and writing FITS data files";
|
||||
longDescription =
|
||||
'' CFITSIO is a library of C and Fortran subroutines for reading and
|
||||
writing data files in FITS (Flexible Image Transport System) data
|
||||
format. CFITSIO provides simple high-level routines for reading and
|
||||
writing FITS files that insulate the programmer from the internal
|
||||
complexities of the FITS format. CFITSIO also provides many
|
||||
advanced features for manipulating and filtering the information in
|
||||
FITS files.
|
||||
'';
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.xbreak ];
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, cfitsio
|
||||
, libusb1
|
||||
, zlib
|
||||
, boost
|
||||
, libnova
|
||||
, curl
|
||||
, libjpeg
|
||||
, gsl
|
||||
, fftw
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "indilib";
|
||||
version = "1.8.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "indilib";
|
||||
repo = "indi";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-W6LfrKL56K1B6srEfbNcq1MZwg7Oj8qoJkQ83ZhYhFs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
curl
|
||||
cfitsio
|
||||
libusb1
|
||||
zlib
|
||||
boost
|
||||
libnova
|
||||
libjpeg
|
||||
gsl
|
||||
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";
|
||||
changelog = "https://github.com/indilib/indi/releases/tag/v${version}";
|
||||
license = licenses.lgpl2Plus;
|
||||
maintainers = with maintainers; [ hjones2199 ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
{ 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.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "indilib";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0klvknhp7l6y2ab4vyv4jq7znk1gjl5b3709kyplm7dsh4b8bppy";
|
||||
};
|
||||
|
||||
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";
|
||||
changelog = "https://github.com/indilib/indi-3rdparty/releases/tag/v${version}";
|
||||
license = licenses.lgpl2Plus;
|
||||
maintainers = with maintainers; [ hjones2199 ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
@@ -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
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{ buildEnv, indilib ? indilib, extraDrivers ? null , pkgName ? "indi-with-drivers" }:
|
||||
|
||||
buildEnv {
|
||||
name = pkgName;
|
||||
paths = [
|
||||
indilib
|
||||
]
|
||||
++ extraDrivers;
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{ lib, stdenv, fetchgit, autoreconfHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libnova";
|
||||
version = "0.16";
|
||||
|
||||
# pull from git repo because upstream stopped tarball releases after v0.15
|
||||
src = fetchgit {
|
||||
url = "https://git.code.sf.net/p/libnova/${pname}";
|
||||
rev = "v${version}";
|
||||
sha256 = "0icwylwkixihzni0kgl0j8dx3qhqvym6zv2hkw2dy6v9zvysrb1b";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Celestial Mechanics, Astrometry and Astrodynamics Library";
|
||||
homepage = "http://libnova.sf.net";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ hjones2199 ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
{ lib, mkDerivation, fetchFromGitHub, cmake,
|
||||
qtbase, cfitsio, gsl, wcslib, withTester ? false }:
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "stellarsolver";
|
||||
version = "1.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rlancaste";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "12j20j9qbkkx55ix4nm1iw7wd36hamkpidbwhcnmj4yk5fqlyq4y";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
buildInputs = [ qtbase cfitsio gsl wcslib ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DBUILD_TESTER=${if withTester then "on" else "off"}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/rlancaste/stellarsolver";
|
||||
description = "Astrometric plate solving library";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ hjones2199 ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
{ fetchurl, lib, stdenv, flex }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "7.3.1";
|
||||
pname = "wcslib";
|
||||
|
||||
buildInputs = [ flex ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.atnf.csiro.au/pub/software/wcslib/${pname}-${version}.tar.bz2";
|
||||
sha256 ="0p0bp3jll9v2094a8908vk82m7j7qkjqzkngm1r9qj1v6l6j5z6c";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace GNUmakefile --replace 2775 0775
|
||||
substituteInPlace C/GNUmakefile --replace 2775 0775
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
description = "World Coordinate System Library for Astronomy";
|
||||
homepage = "https://www.atnf.csiro.au/people/mcalabre/WCS/";
|
||||
|
||||
longDescription = ''Library for world coordinate systems for
|
||||
spherical geometries and their conversion to image coordinate
|
||||
systems. This is the standard library for this purpose in
|
||||
astronomy.'';
|
||||
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user