diff options
author | pjotrp | 2016-12-11 05:28:40 +0000 |
---|---|---|
committer | pjotrp | 2016-12-11 05:28:40 +0000 |
commit | 0845b5345e84d0c3000cdeee3b4c42b17b85ddf0 (patch) | |
tree | 07e6b022b09c161f16c50c43fc061e47c7f41059 /gn | |
parent | ead155ea6347141ffb1279aefb35f5faccff5047 (diff) | |
parent | c3031134beda3f1951742a6d4ca05c85f034af49 (diff) | |
download | guix-bioinformatics-0845b5345e84d0c3000cdeee3b4c42b17b85ddf0.tar.gz |
Merge branch 'master' of github.com:genenetwork/guix-bioinformatics into gn-deploy
Diffstat (limited to 'gn')
-rw-r--r-- | gn/packages/ldc.scm | 322 | ||||
-rw-r--r-- | gn/packages/ruby.scm | 120 |
2 files changed, 442 insertions, 0 deletions
diff --git a/gn/packages/ldc.scm b/gn/packages/ldc.scm new file mode 100644 index 0000000..45ba1b4 --- /dev/null +++ b/gn/packages/ldc.scm @@ -0,0 +1,322 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2015, 2016 Roel Janssen <roel@gnu.org> +;;; Copyright © 2015 Pjotr Prins <pjotr.guix@thebird.nl> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix 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. +;;; +;;; GNU Guix 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. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages ldc) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system gnu) + #:use-module (guix build-system cmake) + #:use-module (gnu packages) + #:use-module (gnu packages base) + #:use-module (gnu packages compression) + #:use-module (gnu packages libedit) + #:use-module (gnu packages llvm) + #:use-module (gnu packages textutils) + #:use-module (gnu packages zip)) + +(define-public rdmd + (let ((commit "da0a2e0a379b08294015eec9d531f1e5dd4226f0")) + (package + (name "rdmd") + (version (string-append "v2.070.0-1." (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/D-Programming-Language/tools.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1pcx5lyqzrip86f4vv60x292rpvnwsq2hvl1znm9x9rn68f34m45")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check) ; There is no Makefile, so there's no 'make check'. + (replace + 'build + (lambda _ + (zero? (system* "ldc2" "rdmd.d")))) + (replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) + (install-file "rdmd" bin))))))) + (native-inputs + `(("ldc" ,ldc))) + (home-page "https://github.com/D-Programming-Language/tools/") + (synopsis "Specialized equivalent to 'make' for the D language") + (description + "rdmd is a companion to the dmd compiler that simplifies the typical +edit-compile-link-run or edit-make-run cycle to a rapid edit-run cycle. Like +make and other tools, rdmd uses the relative dates of the files involved to +minimize the amount of work necessary. Unlike make, rdmd tracks dependencies +and freshness without requiring additional information from the user.") + (license license:boost1.0)))) + +(define-public ldc-0.16.1 + (package + (name "ldc") + (version "0.16.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/ldc/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jvilxx0rpqmkbja4m69fhd5g09697xq7vyqp2hz4hvxmmmv4j40")))) + (build-system cmake-build-system) + ;; LDC currently only supports the x86_64 and i686 architectures. + (supported-systems '("x86_64-linux" "i686-linux")) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-submodule-sources + (lambda* (#:key inputs #:allow-other-keys) + (let ((unpack (lambda (source target) + (with-directory-excursion target + (zero? (system* "tar" "xvf" + (assoc-ref inputs source) + "--strip-components=1")))))) + (and (unpack "phobos-src" "runtime/phobos") + (unpack "druntime-src" "runtime/druntime") + (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite"))))) + (add-after 'unpack-submodule-sources 'patch-dmd2 + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "dmd2/root/port.c" + ((" ::isnan") " isnan") + ((" ::isinf") " isinf") + (("#undef isnan") "") + (("#undef isinf") "")) + #t)) + (add-after 'unpack-submodule-sources 'patch-phobos + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "runtime/phobos/std/process.d" + (("/bin/sh") (which "sh")) + (("echo") (which "echo"))) + (substitute* "runtime/phobos/std/datetime.d" + (("/usr/share/zoneinfo/") + (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) + (substitute* "tests/d2/dmd-testsuite/Makefile" + (("/bin/bash") (which "bash"))) + #t))))) + (inputs + `(("libconfig" ,libconfig) + ("libedit" ,libedit) + ("tzdata" ,tzdata) + ("zlib" ,zlib))) + (native-inputs + `(("llvm" ,llvm-3.7) + ("clang" ,clang-3.7) + ("unzip" ,unzip) + ("phobos-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/phobos/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "0sgdj0536c4nb118yiw1f8lqy5d3g3lpg9l99l165lk9xy45l9z4")) + (patches (search-patches "ldc-disable-tests.patch")))) + ("druntime-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/druntime/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "0z4mkyddx6c4sy1vqgqvavz55083dsxws681qkh93jh1rpby9yg6")))) + ("dmd-testsuite-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/dmd-testsuite/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "0yc6miidzgl9k33ygk7xcppmfd6kivqj02cvv4fmkbs3qz4yy3z1")))))) + (home-page "http://wiki.dlang.org/LDC") + (synopsis "LLVM compiler for the D programming language") + (description + "LDC is a compiler for the D programming language. It is based on the +latest DMD frontend and uses LLVM as backend.") + ;; Most of the code is released under BSD-3, except for code originally + ;; written for GDC, which is released under GPLv2+, and the DMD frontend, + ;; which is released under the "Boost Software License version 1.0". + (license (list license:bsd-3 + license:gpl2+ + license:boost1.0)))) + +(define-public ldc-0.17.2 + (package + (inherit ldc) + (name "ldc") + (version "0.17.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/ldc/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0iksl6cvhsiwnlh15b7s9v8f3grxk27jn0vja9n4sad7fvfwmmlc")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-submodule-sources + (lambda* (#:key inputs #:allow-other-keys) + (let ((unpack (lambda (source target) + (with-directory-excursion target + (zero? (system* "tar" "xvf" + (assoc-ref inputs source) + "--strip-components=1")))))) + (and (unpack "phobos-src" "runtime/phobos") + (unpack "druntime-src" "runtime/druntime") + (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite"))))) + (add-after 'unpack-submodule-sources 'patch-dmd2 + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "dmd2/root/port.c" + ((" ::isnan") " isnan") + ((" ::isinf") " isinf") + (("#undef isnan") "") + (("#undef isinf") "")) + #t)) + (add-after 'unpack-submodule-sources 'patch-phobos + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "runtime/phobos/std/process.d" + (("/bin/sh") (which "sh")) + (("echo") (which "echo"))) + (substitute* "runtime/phobos/std/datetime.d" + (("/usr/share/zoneinfo/") + (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) + (substitute* "tests/d2/dmd-testsuite/Makefile" + (("/bin/bash") (which "bash"))) + #t))) + #:tests? #f)) + (native-inputs + `(("llvm" ,llvm-3.7) + ("clang" ,clang-3.7) + ("unzip" ,unzip) + ("phobos-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/phobos/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "07hh3ic3r755mq9hn9gfr0wlc5y8cr91xz2ydb6gqy4zy8jgp5s9")))) + ("druntime-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/druntime/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "1m1dhday9dl3s04njmd29z7ism2xn2ksb9qlrwzykdgz27b3dk6x")))) + ("dmd-testsuite-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/dmd-testsuite/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "0n7gvalxwfmia4gag53r9qhcnk2cqrw3n4icj1yri0zkgc27pm60")))))))) + +(define-public ldc-1.1.0-beta4 + (package + (inherit ldc) + (name "ldc") + (version "1.1.0-beta4") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/ldc/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "04n6sbz6l658s32f7zilpbi9m8a1m4g5wrgl44igkvla30niy5yn")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-submodule-sources + (lambda* (#:key inputs #:allow-other-keys) + (let ((unpack (lambda (source target) + (with-directory-excursion target + (zero? (system* "tar" "xvf" + (assoc-ref inputs source) + "--strip-components=1")))))) + (and (unpack "phobos-src" "runtime/phobos") + (unpack "druntime-src" "runtime/druntime") + (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite"))))) + (add-after 'unpack-submodule-sources 'patch-phobos + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "runtime/phobos/std/process.d" + (("/bin/sh") (which "sh")) + (("echo") (which "echo"))) + (substitute* "runtime/phobos/std/datetime.d" + (("/usr/share/zoneinfo/") + (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) + (substitute* "tests/d2/dmd-testsuite/Makefile" + (("/bin/bash") (which "bash"))) + #t))) + #:tests? #f)) + (native-inputs + `(("llvm" ,llvm-3.7) + ("ldc" ,ldc-0.17.2) + ("phobos-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/phobos/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "1iwy5rs0rqkicj1zfsa5yqvk8ard99bfr8g69qmhlbzb98q0kpks")))) + ("druntime-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/druntime/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "1qsiw5lz1pr8ms9myjf8b94nqi7f1781k226jvxwnhkjg11d0s63")))) + ("dmd-testsuite-src" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/ldc-developers/dmd-testsuite/archive/ldc-v" + version ".tar.gz")) + (sha256 + (base32 + "0jp54hyi75i9g41rvgmm3zg21yzv57q8dghrhb432rb0n9j15mbp")))))))) + +(define-public ldc ldc-1.1.0-beta4) diff --git a/gn/packages/ruby.scm b/gn/packages/ruby.scm index 93f4628..41743d9 100644 --- a/gn/packages/ruby.scm +++ b/gn/packages/ruby.scm @@ -149,3 +149,123 @@ output") (home-page "http://github.com/pjotrp/bioruby-table") (license expat))) + +(define-public ruby-net-http-digest-auth + (package + (name "ruby-net-http-digest-auth") + (version "1.4") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "net-http-digest_auth" version)) + (sha256 + (base32 + "14801gr34g0rmqz9pv4rkfa3crfdbyfk6r48vpg5a5407v0sixqi")))) + (build-system ruby-build-system) + (arguments + `(#:tests? #f)) + (synopsis + "An implementation of RFC 2617 - Digest Access Authentication. At this time +the gem does not drop in to Net::HTTP and can be used for with other HTTP +clients. + +In order to use net-http-digest_auth you'll need to perform some request +wrangling on your own. See the class documentation at Net::HTTP::DigestAuth +for an example.") + (description + "An implementation of RFC 2617 - Digest Access Authentication. At this time +the gem does not drop in to Net::HTTP and can be used for with other HTTP +clients. + +In order to use net-http-digest_auth you'll need to perform some request +wrangling on your own. See the class documentation at Net::HTTP::DigestAuth +for an example.") + (home-page + "http://github.com/drbrain/net-http-digest_auth") + (license #f))) + +(define-public ruby-ntlm-http + (package + (name "ruby-ntlm-http") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "ntlm-http" version)) + (sha256 + (base32 + "0yx01ffrw87wya1syivqzf8hz02axk7jdpw6aw221xwvib767d36")))) + (build-system ruby-build-system) + (arguments + `(#:tests? #f)) + (synopsis + "Ruby/NTLM HTTP provides NTLM authentication over http.") + (description + "Ruby/NTLM HTTP provides NTLM authentication over http.") + (home-page "http://www.mindflowsolutions.net") + (license #f))) + +(define-public ruby-webrobots + (package + (name "ruby-webrobots") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "webrobots" version)) + (sha256 + (base32 + "19ndcbba8s8m62hhxxfwn83nax34rg2k5x066awa23wknhnamg7b")))) + (build-system ruby-build-system) + (arguments + `(#:tests? #f)) + (synopsis + "This library helps write robots.txt compliant web robots in Ruby. +") + (description + "This library helps write robots.txt compliant web robots in Ruby. +") + (home-page "https://github.com/knu/webrobots") + (license #f))) + +(define-public ruby-mechanize + (package + (name "ruby-mechanize") + (version "2.7.5") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "mechanize" version)) + (sha256 + (base32 + "1f861x62kmggy60krv229s5jl7afq9nblwcfih3kp9bm5c5jn16y")))) + (build-system ruby-build-system) + (arguments '(#:gem-flags '("--trace"))) + (inputs + `(("ruby" ,ruby))) + (propagated-inputs + `(("ruby-domain-name" ,ruby-domain-name) + ("ruby-http-cookie" ,ruby-http-cookie) + ("ruby-mime-types" ,ruby-mime-types) + ("ruby-net-http-digest-auth" + ,ruby-net-http-digest-auth) + ("ruby-net-http-persistent" + ,ruby-net-http-persistent) + ("ruby-nokogiri" ,ruby-nokogiri) + ("ruby-ntlm-http" ,ruby-ntlm-http) + ("ruby-webrobots" ,ruby-webrobots))) + (synopsis + "The Mechanize library is used for automating interaction with websites. +Mechanize automatically stores and sends cookies, follows redirects, +and can follow links and submit forms. Form fields can be populated and +submitted. Mechanize also keeps track of the sites that you have visited as +a history.") + (description + "The Mechanize library is used for automating interaction with websites. +Mechanize automatically stores and sends cookies, follows redirects, +and can follow links and submit forms. Form fields can be populated and +submitted. Mechanize also keeps track of the sites that you have visited as +a history.") + (home-page + "http://docs.seattlerb.org/mechanize/") + (license expat))) |