aboutsummaryrefslogtreecommitdiff
path: root/gn/packages/quality-control.scm
blob: 884a7b9a8e3c137efa6cd907ec581ed009a1a9ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
(define-module (gn packages quality-control)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (guix packages)
  #:use-module (guix utils)
  #:use-module (guix download)
  #:use-module (guix git-download)
  #:use-module (guix build-system gnu)
  #:use-module (guix build-system asdf)
  #:use-module (gnu packages lisp-check)
  #:use-module (gnu packages lisp-xyz)
  #:use-module (gnu packages))

(define-public libcsv
  (let ((commit "b1d5212831842ee5869d99bc208a21837e4037d5")
        (revision "0"))
    (package
      (name "libcsv")
      (version commit)
      (source
       (origin
         (method git-fetch)
         (uri
          (git-reference
           (url "https://github.com/rgamble/libcsv")
           (commit commit)))
         (file-name (git-file-name name commit))
         (sha256
          (base32 "0nni9y0prz8lh3dywbha52yfg8qcf3dn0nb7iinfwlrmmamfyzg2"))))
      (build-system gnu-build-system)
      (arguments
        `(#:make-flags
          (list (string-append "CC=" ,(cc-for-target)))))
      (home-page "https://github.com/rgamble/libcsv")
      (synopsis "CSV library written in pure ANSI C")
      (description
"CSV library written in pure ANSI C that can read and write CSV data.")
      (license license:lgpl2.1+))))

(define-public sbcl-qc
  (let ((commit "ed4254445b7dc247fa27d9189fd03841ad74f568")
        (revision "3"))
    (package
      (name "sbcl-qc")
      (version (git-version "20220331" revision commit))
      (source
        (origin
          (method git-fetch)
          (uri (git-reference
                (url "https://git.genenetwork.org/jgart/qc")
                (commit commit)))
          (sha256
           (base32 "12i9s1ipqarvq6gsjqycfm8d3ym7dv7vn3nxb5c6214xrd4mmzjj"))
          (file-name (git-file-name name commit))))
      (build-system asdf-build-system/sbcl)
      (arguments
        `(#:tests? #f ; Need to fix tests.
          #:asd-files '("qc.asd")))
      (native-inputs
        (list sbcl-1am))
      (inputs
        (list sbcl-alexandria
              sbcl-split-sequence))
      (home-page "https://git.genenetwork.org/jgart/qc/")
      (synopsis "Quality control of delimited files")
      (description
"@code{cl-qc} is a Common Lisp library for linting the following in
delimited text files:
@itemize
@item Whitespace
@item Floating-point number well-formedness
@item GeneChip Platform ID checks for Affymetrix, Illumina, and others
@end itemize\n")
      (license license:llgpl))))

(define-public cl-qc
  (sbcl-package->cl-source-package sbcl-qc))

(define-public ecl-qc
  (sbcl-package->ecl-package sbcl-qc))


;;  The file
;;  #P"/tmp/guix-build-sbcl-qc-uploads-20220301-0.76f870e.drv-0/source/strains.csv"
;;  does not exist:
;;    No such file or directory
#;(define-public sbcl-qc-uploads
  (let ((commit "76f870efad964bf680bf633e272094082008e69c")
        (revision "0"))
    (package
      (name "sbcl-qc-uploads")
      (version (git-version "20220301" revision commit))
      (source
        (origin
          (method git-fetch)
          (uri (git-reference
                (url "https://git.genenetwork.org/jgart/qc-uploads")
                (commit commit)))
          (sha256
           (base32 "1nzcdqjwh1xpr92d01fvlmdysxizyklaid10zrxbi12jmdydapil"))
          (file-name (git-file-name name commit))))
      (build-system asdf-build-system/sbcl)
      ;; needs install-file for strains.tsv. This require more testing.
      ;; todo: see for an example: https://github.com/interactive-ssr/issr-server/blob/master/guix.scm#L46
      (arguments
       `(#:tests? #f ; There are no tests yet.
         #:asd-files '("qc-uploads.asd")))
      (inputs
        (list sbcl-alexandria
              sbcl-ningle
              sbcl-clack
              sbcl-cl-css
              sbcl-cl-who
              sbcl-cl-fad
              sbcl-qc ; packaged in guix-bioinformatics
              sbcl-woo))
      (home-page "https://git.genenetwork.org/jgart/qc-uploads/")
      (synopsis "Web UI for qc")
      (description 
"@code{qc-uploads} provides a web UI for @code{qc}.")
      (license license:expat))))

#;(define-public cl-qc-uploads
  (sbcl-package->cl-source-package sbcl-qc-uploads))

#;(define-public ecl-qc-uploads
  (sbcl-package->ecl-package sbcl-qc-uploads))