aboutsummaryrefslogtreecommitdiff
path: root/reproduce/software/config
diff options
context:
space:
mode:
authorMohammad Akhlaghi <mohammad@akhlaghi.org>2019-04-15 01:47:58 +0100
committerMohammad Akhlaghi <mohammad@akhlaghi.org>2019-04-15 02:24:09 +0100
commit313b936b502d22b6a2ff43f560dee0bb51fd01d0 (patch)
tree70f884b91b393be4d3c6b7cfaeaf3412900bd16f /reproduce/software/config
parent4722ea598edd6b630227404c48c1c09ac527e9b8 (diff)
New architecture to separate software-building and analysis steps
Until now, the software building and analysis steps of the pipeline were intertwined. However, these steps (of how to build a software, and how to use it) are logically completely independent. Therefore with this commit, the pipeline now has a new architecture (particularly in the `reproduce' directory) to emphasize this distinction: The `reproduce' directory now has the two `software' and `analysis' subdirectories and the respective parts of the previous architecture have been broken up between these two based on their function. There is also no more `src' directory. The `config' directory for software and analysis is now mixed with the language-specific directories. Also, some of the software versions were also updated after some checks with their webpages. This new architecture will allow much more focused work on each part of the pipeline (to install the software and to run them for an analysis).
Diffstat (limited to 'reproduce/software/config')
-rw-r--r--reproduce/software/config/gnuastro/astbuildprog.conf16
-rw-r--r--reproduce/software/config/gnuastro/astconvertt.conf33
-rw-r--r--reproduce/software/config/gnuastro/aststatistics.conf36
-rw-r--r--reproduce/software/config/gnuastro/gnuastro.conf37
-rw-r--r--reproduce/software/config/installation/LOCAL.mk.in16
-rw-r--r--reproduce/software/config/installation/numpy-scipy.cfg46
-rw-r--r--reproduce/software/config/installation/texlive.conf35
-rw-r--r--reproduce/software/config/installation/texlive.mk22
-rw-r--r--reproduce/software/config/installation/versions.mk123
9 files changed, 364 insertions, 0 deletions
diff --git a/reproduce/software/config/gnuastro/astbuildprog.conf b/reproduce/software/config/gnuastro/astbuildprog.conf
new file mode 100644
index 0000000..c15baf1
--- /dev/null
+++ b/reproduce/software/config/gnuastro/astbuildprog.conf
@@ -0,0 +1,16 @@
+# BuildProgram's configuration file depends on the build and is installed
+# along with the rest of Gnuastro. So we'll set any specific configuration
+# we want here, then import those.
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+# To keep the program's compiled excutable file, comment this line.
+deletecompiled 1
+
+# Import the built configuration file
+config .local/etc/astbuildprog.conf \ No newline at end of file
diff --git a/reproduce/software/config/gnuastro/astconvertt.conf b/reproduce/software/config/gnuastro/astconvertt.conf
new file mode 100644
index 0000000..6466455
--- /dev/null
+++ b/reproduce/software/config/gnuastro/astconvertt.conf
@@ -0,0 +1,33 @@
+# Default parameters (System) for ConvertType.
+# ConvertType is part of GNU Astronomy Utitlies.
+#
+# Use the long option name of each parameter followed by a value. The name
+# and value should be separated by atleast one white-space character (for
+# example ` '[space], or tab). Lines starting with `#' are ignored.
+#
+# For more information, please run these commands:
+#
+# $ astconvertt --help # Full list of options, short doc.
+# $ astconvertt -P # Print all options and used values.
+# $ info astconvertt # All options and input/output.
+# $ info gnuastro "Configuration files" # How to use configuration files.
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+# Input:
+
+# Output:
+ quality 100
+ widthincm 10.0
+ borderwidth 1
+ output jpg
+
+# Flux:
+ invert 0
+
+# Common options
diff --git a/reproduce/software/config/gnuastro/aststatistics.conf b/reproduce/software/config/gnuastro/aststatistics.conf
new file mode 100644
index 0000000..1d13e3f
--- /dev/null
+++ b/reproduce/software/config/gnuastro/aststatistics.conf
@@ -0,0 +1,36 @@
+# Default parameters (System) for Statistics.
+# Statistics is part of GNU Astronomy Utitlies.
+#
+# Use the long option name of each parameter followed by a value. The name
+# and value should be separated by atleast one white-space character (for
+# example ` '[space], or tab). Lines starting with `#' are ignored.
+#
+# For more information, please run these commands:
+#
+# $ aststatistics --help # Full list of options, short doc.
+# $ aststatistics -P # Print all options and used values.
+# $ info aststatistics # All options and input/output.
+# $ info gnuastro "Configuration files" # How to use configuration files.
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+# Input image:
+
+# Sky and its STD settings
+ khdu 1
+ meanmedqdiff 0.005
+ outliersigma 10
+ outliersclip 3,0.2
+ smoothwidth 3
+ sclipparams 3,0.1
+
+# Histogram and CFP settings
+ numasciibins 70
+ asciiheight 10
+ numbins 100
+ mirrordist 1.5
diff --git a/reproduce/software/config/gnuastro/gnuastro.conf b/reproduce/software/config/gnuastro/gnuastro.conf
new file mode 100644
index 0000000..57fcadc
--- /dev/null
+++ b/reproduce/software/config/gnuastro/gnuastro.conf
@@ -0,0 +1,37 @@
+# Default values for the common options to all the programs in GNU
+# Astronomy Utitlies.
+#
+# IMPORTANT NOTE: The `lastconfig' option is very important in a
+# reproducible environment. Because we don't want any of Gnuastro's
+# programs to go into an un-controlled environment (user or system wide
+# configuration files).
+#
+# The rest of this configuration file is taken from the default Gnuastro
+# configuration from its source (`bin/gnuastro.conf').
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+# Local project settings (`config' has to be before `lastconfig').
+ config .gnuastro/gnuastro-local.conf
+ lastconfig 1
+
+# Input:
+ hdu 1
+ ignorecase 1
+ searchin name
+
+# Tessellation
+ tilesize 50,50
+ numchannels 1,1
+ remainderfrac 0.1
+ workoverch 0
+ interpnumngb 9
+ interponlyblank 0
+
+# Output:
+ tableformat fits-binary \ No newline at end of file
diff --git a/reproduce/software/config/installation/LOCAL.mk.in b/reproduce/software/config/installation/LOCAL.mk.in
new file mode 100644
index 0000000..785bb6a
--- /dev/null
+++ b/reproduce/software/config/installation/LOCAL.mk.in
@@ -0,0 +1,16 @@
+# Local project configuration.
+#
+# This is just a template for the `./configure' script to fill in. Please
+# don't make any change to this file.
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+BDIR = @bdir@
+INDIR = @indir@
+DEPENDENCIES-DIR = @ddir@
+DOWNLOADER = @downloader@
+GROUP-NAME = @groupname@
diff --git a/reproduce/software/config/installation/numpy-scipy.cfg b/reproduce/software/config/installation/numpy-scipy.cfg
new file mode 100644
index 0000000..4b7a7b0
--- /dev/null
+++ b/reproduce/software/config/installation/numpy-scipy.cfg
@@ -0,0 +1,46 @@
+# THIS IS A COPY OF NUMPY'S site.cfg.example, CUSTOMIZED FOR THIS TEMPLATE
+# ------------------------------------------------------------------------
+
+# This file provides configuration information about non-Python
+# dependencies for numpy.distutils-using packages. Create a file like this
+# called "site.cfg" next to your package's setup.py file and fill in the
+# appropriate sections. Not all packages will use all sections so you
+# should leave out sections that your package does not use.
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+# IMPORTANT NOTE
+# --------------
+#
+# The `ALL' grouping does't apply to ATLAS!!!!!
+
+ [ALL]
+ library_dirs = @LIBDIR@
+ include_dirs = @INCDIR@
+
+
+# FFT libraries
+# -------------
+# There are two FFT libraries that we can configure here: FFTW (2 and 3) and djbfft.
+# Note that these libraries are not used by numpy or scipy.
+#
+# http://fftw.org/
+# https://cr.yp.to/djbfft.html
+#
+# Given only this section, numpy.distutils will try to figure out which version
+# of FFTW you are using.
+
+# Even with this section, Numpy apparently does not use fftw. But we will
+# keep it here for the future (if a solution is found).
+[fftw]
+libraries = fftw3
+#
+# For djbfft, numpy.distutils will look for either djbfft.a or libdjbfft.a .
+#[djbfft]
+#include_dirs = /usr/local/djbfft/include
+#library_dirs = /usr/local/djbfft/lib
diff --git a/reproduce/software/config/installation/texlive.conf b/reproduce/software/config/installation/texlive.conf
new file mode 100644
index 0000000..53054e1
--- /dev/null
+++ b/reproduce/software/config/installation/texlive.conf
@@ -0,0 +1,35 @@
+# Basic profile for build. Values to set:
+#
+# installdir: Install directory
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+selected_scheme scheme-basic
+TEXDIR @installdir@/texlive/2018
+TEXMFCONFIG @installdir@/texlive2018/texmf-config
+TEXMFLOCAL @installdir@/texlive/texmf-local
+TEXMFSYSCONFIG @installdir@/texlive/2018/texmf-config
+TEXMFSYSVAR @installdir@/texlive/2018/texmf-var
+TEXMFVAR @installdir@/texlive2018/texmf-var
+instopt_adjustpath 0
+instopt_adjustrepo 1
+instopt_letter 0
+instopt_portable 0
+instopt_write18_restricted 1
+tlpdbopt_autobackup 1
+tlpdbopt_backupdir @installdir@/texlive/2018/backups
+tlpdbopt_create_formats 1
+tlpdbopt_desktop_integration 1
+tlpdbopt_file_assocs 1
+tlpdbopt_generate_updmap 0
+tlpdbopt_install_docfiles 1
+tlpdbopt_install_srcfiles 1
+tlpdbopt_post_code 1
+tlpdbopt_sys_bin @installdir@/bin
+tlpdbopt_sys_info @installdir@/share/info
+tlpdbopt_sys_man @installdir@/share/man
+tlpdbopt_w32_multi_user 1
diff --git a/reproduce/software/config/installation/texlive.mk b/reproduce/software/config/installation/texlive.mk
new file mode 100644
index 0000000..0acf5ab
--- /dev/null
+++ b/reproduce/software/config/installation/texlive.mk
@@ -0,0 +1,22 @@
+# Necessary packages to install in TeX Live.
+#
+# If any extra TeX package is necessary to build your paper, just add its
+# name to this variable (you can check in `ctan.org' to find the official
+# name).
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice and
+# this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+
+# Note on `tex' and `fancyhdr': These two packages are installed along with
+# the basic installation scheme that we used to install tlmgr, they will be
+# ignored in the `tlmgr install' command, but will be used later when we
+# want their versions.
+texlive-packages = tex fancyhdr ec newtx fontaxes xkeyval etoolbox xcolor \
+ setspace caption footmisc datetime fmtcount titlesec \
+ preprint ulem biblatex biber logreq pgf pgfplots fp \
+ courier tex-gyre txfonts times
diff --git a/reproduce/software/config/installation/versions.mk b/reproduce/software/config/installation/versions.mk
new file mode 100644
index 0000000..149f9ae
--- /dev/null
+++ b/reproduce/software/config/installation/versions.mk
@@ -0,0 +1,123 @@
+# Versions of the various dependencies
+#
+# Copyright (C) 2018-2019 Mohammad Akhlaghi <mohammad@akhlaghi.org>
+# Copyright (C) 2019 Raul Infante-Sainz <infantesainz@gmail.com>
+#
+# This Makefile is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation, either version 3 of the License, or (at your
+# option) any later version.
+#
+# This Makefile is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+# Public License for more details.
+#
+# A copy of the GNU General Public License is available at
+# <http://www.gnu.org/licenses/>.
+
+# C/C++ programs and libraries.
+atlas-version = 3.10.3
+bash-version = 5.0
+binutils-version = 2.31.1
+cfitsio-version = 3.45
+cmake-version = 3.14.2
+coreutils-version = 8.31
+curl-version = 7.63.0
+diffutils-version = 3.7
+fftw-version = 3.3.8
+file-version = 5.36
+findutils-version = 4.6.0.199-e3fc
+flock-version = 0.2.3
+freetype-version = 2.9
+gawk-version = 5.0.0
+gcc-version = 8.3.0
+ghostscript-version = 9.26
+git-version = 2.21.0
+gmp-version = 6.1.2
+gnuastro-version = 0.8
+grep-version = 3.3
+gsl-version = 2.5
+gzip-version = 1.10
+hdf5-version = 1.10.5
+isl-version = 0.18
+libbsd-version = 0.9.1
+libffi-version = 3.2.1
+libjpeg-version = v9b
+libpng-version = 1.6.36
+libtiff-version = 4.0.10
+libtool-version = 2.4.6
+lzip-version = 1.20
+m4-version = 1.4.18
+make-version = 4.2.90
+metastore-version = 1.1.2-23-fa9170b
+mpfr-version = 4.0.2
+mpc-version = 1.1.0
+ncurses-version = 6.1
+openblas-version = 0.3.5
+openmpi-version = 4.0.1
+openssl-version = 1.1.1a
+patchelf-version = 0.9
+pkgconfig-version = 0.29.2
+python-version = 3.7.3
+readline-version = 8.0
+sed-version = 4.7
+tar-version = 1.32
+unzip-version = 6.0
+wget-version = 1.20.3
+which-version = 2.21
+xz-version = 5.2.4
+zip-version = 3.0
+zlib-version = 1.2.11
+
+# Special libraries
+# -----------------
+#
+# When updating the version of these libraries, please look into the build
+# rule first: In one way or another, the version string becomes necessary
+# during their build and must be accounted for.
+bzip2-version = 1.0.6
+lapack-version = 3.8.0
+libgit2-version = 0.26.0
+wcslib-version = 6.2
+
+# Python packages
+# ---------------
+#
+# IMPORTANT: Fix url in `reproduce/src/make/dependencies.mk'
+# if changing the version
+asn1crypto-version = 0.24.0
+astroquery-version = 0.3.9
+astropy-version = 3.1.1
+beautifulsoup4-version = 4.7.1
+certifi-version = 2018.11.29
+cffi-version = 1.12.2
+chardet-version = 3.0.4
+cryptography-version = 2.6.1
+cycler-version = 0.10.0
+cython-version = 0.29.6
+entrypoints-version = 0.3
+h5py-version = 2.9.0
+html5lib-version = 1.0.1
+idna-version = 2.8
+jeepney-version = 0.4
+kiwisolver-version = 1.0.1
+keyring-version = 18.0.0
+matplotlib-version = 3.0.2
+mpi4py-version = 3.0.1
+numpy-version = 1.16.2
+pip-version = 19.0.2
+pycparser-version = 2.19
+pyparsing-version = 2.3.1
+pypkgconfig-version = 1.5.1
+python-dateutil-version = 2.8.0
+requests-version = 2.21.0
+scipy-version = 1.2.1
+secretstorage-version = 3.1.1
+setuptools-version = 40.8.0
+setuptools_scm-version = 3.2.0
+six-version = 1.12.0
+soupsieve-version = 1.8
+urllib3-version = 1.24.1
+virtualenv-version = 16.4.0
+webencodings-version = 0.5.1