gnu: Add eigensoft.
* gnu/packages/bioinformatics.scm (eigensoft): New variable.
This commit is contained in:
parent
42d6d0d0d6
commit
6619f9c769
|
@ -1603,6 +1603,76 @@ data and settings.")
|
||||||
(license (license:non-copyleft "file://src/COPYING"
|
(license (license:non-copyleft "file://src/COPYING"
|
||||||
"See src/COPYING in the distribution."))))
|
"See src/COPYING in the distribution."))))
|
||||||
|
|
||||||
|
(define-public eigensoft
|
||||||
|
(let ((revision "1")
|
||||||
|
(commit "b14d1e202e21e532536ff8004f0419cd5e259dc7"))
|
||||||
|
(package
|
||||||
|
(name "eigensoft")
|
||||||
|
(version (string-append "6.1.2-"
|
||||||
|
revision "."
|
||||||
|
(string-take commit 9)))
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/DReichLab/EIG.git")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (string-append "eigensoft-" commit "-checkout"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0f5m6k2j5c16xc3xbywcs989xyc26ncy1zfzp9j9n55n9r4xcaiq"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
;; Remove pre-built binaries.
|
||||||
|
(snippet '(begin
|
||||||
|
(delete-file-recursively "bin")
|
||||||
|
(mkdir "bin")
|
||||||
|
#t))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:tests? #f ; There are no tests.
|
||||||
|
#:make-flags '("CC=gcc")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; There is no configure phase, but the Makefile is in a
|
||||||
|
;; sub-directory.
|
||||||
|
(replace 'configure
|
||||||
|
(lambda _
|
||||||
|
(chdir "src")
|
||||||
|
;; The link flags are incomplete.
|
||||||
|
(substitute* "Makefile"
|
||||||
|
(("-lgsl") "-lgsl -lm -llapack -llapacke -lpthread"))
|
||||||
|
#t))
|
||||||
|
;; The provided install target only copies executables to
|
||||||
|
;; the "bin" directory in the build root.
|
||||||
|
(add-after 'install 'actually-install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bin (string-append out "/bin")))
|
||||||
|
(mkdir-p bin)
|
||||||
|
(for-each (lambda (file)
|
||||||
|
(install-file file bin))
|
||||||
|
(find-files "../bin" ".*"))
|
||||||
|
#t))))))
|
||||||
|
(inputs
|
||||||
|
`(("gsl" ,gsl)
|
||||||
|
("lapack" ,lapack)
|
||||||
|
("lapack" ,lapack "lapacke")
|
||||||
|
("openblas" ,openblas)
|
||||||
|
("perl" ,perl)
|
||||||
|
("gfortran" ,gfortran "lib")))
|
||||||
|
(home-page "https://github.com/DReichLab/EIG")
|
||||||
|
(synopsis "Tools for population genetics")
|
||||||
|
(description "The EIGENSOFT package provides tools for population
|
||||||
|
genetics and stratification correction. EIGENSOFT implements methods commonly
|
||||||
|
used in population genetics analyses such as PCA, computation of Tracy-Widom
|
||||||
|
statistics, and finding related individuals in structured populations. It
|
||||||
|
comes with a built-in plotting script and supports multiple file formats and
|
||||||
|
quantitative phenotypes.")
|
||||||
|
;; The license of the eigensoft tools is Expat, but since it's
|
||||||
|
;; linking with the GNU Scientific Library (GSL) the effective
|
||||||
|
;; license is the GPL.
|
||||||
|
(license license:gpl3+))))
|
||||||
|
|
||||||
(define-public edirect
|
(define-public edirect
|
||||||
(package
|
(package
|
||||||
(name "edirect")
|
(name "edirect")
|
||||||
|
|
Loading…
Reference in New Issue