>From 80d296f9d3bc205eed06f98821bb5abd3ad8d40f Mon Sep 17 00:00:00 2001 From: Roel Janssen <r...@gnu.org> Date: Tue, 26 Apr 2016 19:35:10 +0200 Subject: [PATCH] gnu: Add multichoose.
* gnu/packages/bioinformatics.scm (multichoose): New variable. --- gnu/packages/bioinformatics.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 620439f..b3686b6 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5075,6 +5075,40 @@ the same group, and look for consistent differences between ChIP and control group or two ChIP groups run under different conditions.") (license license:gpl3+))) +(define-public multichoose + (package + (name "multichoose") + (version "1.0.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ekg/multichoose/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "0xy86vvr3qrs4l81qis7ia1q2hnqv0xcb4a1n60smxbhqqis5w3l")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; There are no tests to run. + #:phases + (modify-phases %standard-phases + (delete 'configure) ; There is no configure phase. + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) + (install-file "multichoose" bin) + (install-file "multipermute" bin))))))) + (native-inputs + `(("python" ,python-2) + ("node" ,node))) + (home-page "https://github.com/ekg/multichoose") + (synopsis "Library for loopless multiset combination generation") + (description "This package provides a library implementing an efficient +loopless multiset combination generation algorithm which is (approximately) +described in \"Loopless algorithms for generating permutations, combinations, +and other combinatorial configurations.\" G Ehrlich - Journal of the ACM (JACM), +1973. (Algorithm 7.)") + (license license:expat))) + (define-public filevercmp (let ((commit "1a9b779b93d0b244040274794d402106907b71b7")) (package -- 2.7.4
Ricardo Wurmus writes: > Roel Janssen <r...@gnu.org> writes: > >> Ricardo Wurmus writes: >> >>> Roel Janssen <r...@gnu.org> writes: >>> >>>> From edcf3132dca6c3e86439710892870285377adbb2 Mon Sep 17 00:00:00 2001 >>>> From: Roel Janssen <r...@gnu.org> >>>> Date: Tue, 22 Mar 2016 15:07:47 +0100 >>>> Subject: [PATCH 3/8] gnu: Add multichoose. >>> >>>> * gnu/packages/bioinformatics.scm (multichoose): New variable. >>>> --- >>>> gnu/packages/bioinformatics.scm | 35 +++++++++++++++++++++++++++++++++++ >>>> 1 file changed, 35 insertions(+) >>> >>>> diff --git a/gnu/packages/bioinformatics.scm >>>> b/gnu/packages/bioinformatics.scm >>>> index fa7ba24..9465d56 100644 >>>> --- a/gnu/packages/bioinformatics.scm >>>> +++ b/gnu/packages/bioinformatics.scm >>>> @@ -4861,3 +4861,38 @@ algorithm.") >>>> ;; this program is a submodule, is licensed MIT, which is the same >>>> as >>>> ;; the Expat license. >>>> (license (list license:gpl2 license:expat))))) >>>> + >>>> +(define-public multichoose >>>> + (package >>>> + (name "multichoose") >>>> + (version "1.0.3") >>>> + (source (origin >>>> + (method url-fetch) >>>> + (uri (string-append "https://github.com/ekg/multichoose/archive/v" >>>> + version ".tar.gz")) >>>> + (file-name (string-append name "-" version ".tar.gz")) >>>> + (sha256 >>>> + (base32 "0xy86vvr3qrs4l81qis7ia1q2hnqv0xcb4a1n60smxbhqqis5w3l")))) >>>> + (build-system gnu-build-system) >>>> + (native-inputs >>>> + `(("python" ,python-2) >>>> + ("node" ,node))) >>>> + (arguments >>>> + `(#:tests? #f ; There are no tests to run. >>>> + #:phases >>>> + (modify-phases %standard-phases >>>> + (delete 'configure) ; There is no configure phase. >>>> + (replace 'install >>>> + (lambda* (#:key outputs #:allow-other-keys) >>>> + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) >>>> + (install-file "multichoose" bin) >>>> + (install-file "multipermute" bin))))))) >>> >>> Nitpick: normally, we place the arguments right below the >>> “build-system”. The “native-inputs” then follow after “arguments”. >> >> Ok. I fixed this in the new patch. >> >>>> + (home-page "https://github.com/ekg/multichoose") >>>> + (synopsis "Library for efficient loopless multiset combination >>>> generation >>>> +algorithm") >>> >>> This synopsis is a bit long. Maybe drop “efficient”? (Most projects >>> include “efficient” or “fast” in their descriptions, so it isn’t very >>> useful in a synopsis.) >> >> I dropped efficient. A bit sad it doesn't keep the synopsis on a single >> line. I cannot think of a shorter way to describe this library. >> >>>> + (description "A library implements an efficient loopless multiset >>>> +combination generation algorithm which is (approximately) described in >>>> +\"Loopless algorithms for generating permutations, combinations, and other >>>> +combinatorial configurations.\" G Ehrlich - Journal of the ACM (JACM), >>>> +1973. (Algorithm 7.)") >>> >>> “A library”? How about “This package provides a library implementing...” >> >> Yes, that's better. That reminds me to double-check descriptions for >> complete sentences. Thanks for catching this. >> >> >> I attached a new patch. > > The patch looks good. I tried to apply this to master but failed. > Could you please try to rebase it onto master? Yes, here it is. Thanks! Kind regards, Roel Janssen