[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 7/7] gnu: Add r-bioccheck.
From: |
Roel Janssen |
Subject: |
Re: [PATCH 7/7] gnu: Add r-bioccheck. |
Date: |
Thu, 20 Oct 2016 00:06:29 +0200 |
User-agent: |
mu4e 0.9.17; emacs 25.1.1 |
Ricardo Wurmus writes:
> Roel Janssen <address@hidden> writes:
>>
>> Here's the new patch:
>>
>>>From 1d9248098fc507876d77cddc890ea906aef7b83d Mon Sep 17 00:00:00 2001
>> From: Roel Janssen <address@hidden>
>> Date: Wed, 19 Oct 2016 16:43:04 +0200
>> Subject: [PATCH] gnu: Add r-bioccheck.
>>
>> * gnu/packages/bioinformatics.scm (r-bioccheck): New variable.
>> ---
>> gnu/packages/bioinformatics.scm | 48
>> +++++++++++++++++++++++++++++++++++++++++
>> 1 file changed, 48 insertions(+)
>>
>> diff --git a/gnu/packages/bioinformatics.scm
>> b/gnu/packages/bioinformatics.scm
>> index 3fe7b5f..d21781f 100644
>> --- a/gnu/packages/bioinformatics.scm
>> +++ b/gnu/packages/bioinformatics.scm
>> @@ -5936,6 +5936,54 @@ Bioconductor PDF and HTML documents. Package
>> vignettes illustrate use and
>> functionality.")
>> (license license:artistic2.0)))
>>
>> +(define-public r-bioccheck
>> + (package
>> + (name "r-bioccheck")
>> + (version "1.10.0")
>> + (source (origin
>> + (method url-fetch)
>> + (uri (bioconductor-uri "BiocCheck" version))
>> + (sha256
>> + (base32
>> + "1rfy37xg1nc2cmgbclvzsi7sgmdcdjiahsx9crgx3yaw7kxgiack"))))
>> + (properties
>> + `((upstream-name . "BiocCheck")))
>> + (build-system r-build-system)
>> + (arguments
>> + '(#:phases
>> + (modify-phases %standard-phases
>> + ;; This package can be used by calling BiocCheck(<package>) from
>> + ;; within R, or by running R CMD BiocCheck <package>. This phase
>> + ;; makes sure the latter works. For this to work, the BiocCheck
>> + ;; script must be somewhere on the PATH (not the R bin directory).
>> + (add-after 'install 'install-bioccheck-subcommand
>> + (lambda _
>> + (let ((dest-dir (string-append %output "/bin"))
>> + (script-dir
>> + (string-append %output
>> "/site-library/BiocCheck/script/")))
>
> We usually prefer to do this
>
> (lambda* (#:key outputs #:allow-other-keys)
> (let* ((out (assoc-ref outputs "out"))
> … out …)))
>
> instead of using the magical “%output”.
Ofcourse! Sorry, I should've known this.
>> + (mkdir-p dest-dir)
>> + (zero? (system* "ln" "--symbolic"
>> + (string-append script-dir "/checkBadDeps.R")
>> + (string-append dest-dir "/checkBadDeps.R")))
>> + (zero? (system* "ln" "--symbolic"
>> + (string-append script-dir "/BiocCheck")
>> + (string-append dest-dir "/BiocCheck")))))))))
>
> Would it work to use “install-file” here (or to use Guile’s “symlink
> oldpath newpath”) instead of shelling out?
I prefer symlinking. Sorry for being a shell-out. I updated the patch
to use Guile's @code{symlink} instead (I wasn't aware of this function!).
Here's the new patch:
>From cce8a9580645011cf8f6b259296a4779633aa2af Mon Sep 17 00:00:00 2001
From: Roel Janssen <address@hidden>
Date: Thu, 20 Oct 2016 00:00:33 +0200
Subject: [PATCH] gnu: Add r-bioccheck.
* gnu/packages/bioinformatics.scm (r-bioccheck): New variable.
---
gnu/packages/bioinformatics.scm | 46 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 3fe7b5f..8e426d0 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -5936,6 +5936,52 @@ Bioconductor PDF and HTML documents. Package vignettes
illustrate use and
functionality.")
(license license:artistic2.0)))
+(define-public r-bioccheck
+ (package
+ (name "r-bioccheck")
+ (version "1.10.0")
+ (source (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "BiocCheck" version))
+ (sha256
+ (base32
+ "1rfy37xg1nc2cmgbclvzsi7sgmdcdjiahsx9crgx3yaw7kxgiack"))))
+ (properties
+ `((upstream-name . "BiocCheck")))
+ (build-system r-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ ;; This package can be used by calling BiocCheck(<package>) from
+ ;; within R, or by running R CMD BiocCheck <package>. This phase
+ ;; makes sure the latter works. For this to work, the BiocCheck
+ ;; script must be somewhere on the PATH (not the R bin directory).
+ (add-after 'install 'install-bioccheck-subcommand
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((dest-dir (string-append (assoc-ref outputs "out") "/bin"))
+ (script-dir
+ (string-append %output "/site-library/BiocCheck/script/")))
+ (mkdir-p dest-dir)
+ (symlink (string-append script-dir "/checkBadDeps.R")
+ (string-append dest-dir "/checkBadDeps.R"))
+ (symlink (string-append script-dir "/BiocCheck")
+ (string-append dest-dir "/BiocCheck"))))))))
+ (native-inputs
+ `(("which" ,which)))
+ (propagated-inputs
+ `(("r-graph" ,r-graph)
+ ("r-knitr" ,r-knitr)
+ ("r-httr" ,r-httr)
+ ("r-optparse" ,r-optparse)
+ ("r-devtools" ,r-devtools)
+ ("r-biocinstaller" ,r-biocinstaller)
+ ("r-biocviews" ,r-biocviews)))
+ (home-page "http://bioconductor.org/packages/BiocCheck")
+ (synopsis "Executes Bioconductor-specific package checks")
+ (description "This package contains tools to perform additional quality
+checks on R packages that are to be submitted to the Bioconductor repository.")
+ (license license:artistic2.0)))
+
(define-public r-getopt
(package
(name "r-getopt")
--
2.10.0
Kind regards,
Roel Janssen