aboutsummaryrefslogtreecommitdiff
path: root/guix-qa-frontpage/view/home.scm
blob: a25e48659b4d79887f690c68d5dd65688e401945 (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
(define-module (guix-qa-frontpage view home)
  #:use-module (srfi srfi-1)
  #:use-module (ice-9 match)
  #:use-module (guix-qa-frontpage view util)
  #:export (home
            readme))

(define (home branches)
  (layout
   #:description "Guix Quality Assurance"
   #:head
   '((style "
dt:before {
    content: "";
    display: block;
}
dt, dd {
    display: inline;
}
dd {
    margin-left: 0.6em;
}
dt {
    margin-left: 2em;
}
"))
   #:body
   `((main
      (div
       (@ (class "row"))
       (section
        (a (@ (href "/branch/master"))
           (h2 "branch: master"))))

      (h2 ,(gettext "Patches" "guix-qa-frontpage"))
      (div
       (@ (class "row"))
       (section
        (a (@ (href "/patches")
              (style "font-size: 140%;"))
           "List of issues for patches")

        (div
         (h3 "Statistics")
         (p
          (a
           (@ (href "https://debbugs.gnu.org/rrd/guix-patches.html"))
           (img (@ (width "60%")
                   (src "https://debbugs.gnu.org/rrd/guix-patches_1m.png"))))

          (dl
           (@ (style "margin-top: 0;"))
           (dt "CR")
           (dd "serious,grave,critical")

           (dt "IM")
           (dd "important")

           (dt "NO")
           (dd "normal")

           (dt "MI")
           (dd "minor")

           (dt "WI")
           (dd "wishlist"))))))

      (h2 "Branches")
      (div
       (@ (class "row"))
       (section
        (table
         (@ (style "max-height: 20em; overflow-y: scroll;"))
         (thead
          (tr (th "Branch")
              (th "Request to merge")))
         (tbody
          ,@(append-map
             (match-lambda
               ((branch . details)
                (let ((issue-number
                       (assoc-ref details "issue_number")))
                  `((tr
                     (td (a (@ (href ,(string-append "/branch/" branch))
                               (style "font-family: monospace;"))
                            ,branch))
                     (td ,@(if issue-number
                               `((a (@ (href ,(string-append
                                               "https://issues.guix.gnu.org/"
                                               (number->string issue-number))))
                                    "#" ,issue-number))
                               '())))))))
             branches)))))
      (h2 "Topics")
      (div
       (@ (class "row"))
       (p
        (img (@ (src "/assets/img/reproducible_builds.svg")
                (alt "Reproducible Builds"))))

       (p
        (a (@ (href "/reproducible-builds"))
           "Find out more about Reproducible Builds in Guix")))

      (p
       (@ (style "width: unset; text-align: center;"))
       "qa.guix.gnu.org is powered by the Guix qa-frontpage."
       (br)
       "Find the code in "
       (a (@ (href "https://git.savannah.gnu.org/cgit/guix/qa-frontpage.git/"))
          "this git repository")
       " and send patches to "
       (a (@ (href "mailto:guix-devel@gnu.org"))
          "guix-devel@gnu.org")
       ".")))))

(define (readme contents)
  (layout
   #:description "Guix Quality Assurance"
   #:body
   `((main
      (raw ,contents)))))