Thanks for your quick response. >Why's the @ being removed here? It interprets like an HTML code when I use the page-header like `,page-header, so I removed it. According to your comment, I reverted to the original version.
" 'GET repository..." which includes package/package-name in the URL has not the best titles since I couldn't test them because of the error that I've mentioned. I'm open to suggestions. Could you please re-review the patch that contains all the modifications you've mentioned in the previous message? On Sun, Apr 18, 2021 at 8:53 PM Christopher Baines <m...@cbaines.net> wrote: > > > Canan Talayhan <canan.t.talay...@gmail.com> writes: > > > I've updated the patch that contains all the suggestions. I think the patch > > is ready to merge. > > > > One thing that I would like to ask you about the package and package-name > > in web/repository/controller.scm. > > > > When I test the URL below I'm getting this error. ( > > https://pastebin.ubuntu.com/p/HdKShmKqH7/) > > > > - ('GET "repository" repository-id "branch" branch-name "package" > > package-name) -> > > http://localhost:8765/repository/1/branch/master/package/emacs > > > > What do you think? BTW it's accessible on the official server. > > > > - https://data.guix.gnu.org/repository/1/branch/master/package/emacs/ > > Hmm, this could possibly be due to an issue with the small dump of the > database. > > > Could you please review the patch attached? > > I'm very excited to make my first FOSS contribution. :) > > I've had a look though, and I have some more comments: > > diff --git a/guix-data-service/web/compare/html.scm > b/guix-data-service/web/compare/html.scm > index 5b5fe0a..170fb12 100644 > --- a/guix-data-service/web/compare/html.scm > +++ b/guix-data-service/web/compare/html.scm > @@ -96,7 +96,12 @@ > (unless invalid-query? > (query-parameters->string query-parameters))) > > + (define page-header "Comparing") > + > (layout > + #:title > + (string-append page-header " " (string-take base-commit 8) " and " > + (string-take target-commit 8)) > #:body > `(,(header) > (div > @@ -107,7 +112,7 @@ > (@ (class "col-sm-7")) > ,@(if invalid-query? > `((h1 "Compare")) > - `((h1 "Comparing " > + `((h1 ,page-header ," " > (a (@ (href ,(string-append "/revision/" base-commit))) > (samp ,(string-take base-commit 8) "…")) > " and " > > There's a couple of things here. I'd be tempted not to use a variable > for "Comparing", it's not really the page header, as that's more > complicated, so I think I'd just use the string in both places. > > Second thing, the (if invalid-query? bit when constructing the h1 > element is important. The query parameters being invalid could mean > anything from the form just hasn't been filled in, to the value isn't > actually a commit hash, but something else, maybe some HTML/JavaScript > that is malicious and shouldn't be included in the page. A similar > approach probably needs taking for the title. > > @@ -419,14 +424,18 @@ > '(span (@ (class "text-success glyphicon glyphicon-plus pull-left") > (style "font-size: 1.5em; padding-right: 0.4em;")))) > > + (define page-header "Comparing derivations") > + > (layout > + #:title > + page-header > #:body > `(,(header) > (div > (@ (class "container")) > (div > (@ (class "row")) > - (h1 ,@(let ((base-commit (assq-ref query-parameters 'base_commit)) > + (h1 ,(let ((base-commit (assq-ref query-parameters 'base_commit)) > > Why's the @ being removed here? > > @@ -435,7 +444,7 @@ > " and " > (a (@ (href ,(string-append "/revision/" > target-commit))) > (samp ,(string-take target-commit 8) "…"))) > - '("Comparing derivations"))))) > + `,page-header)))) > > The quote then immediate unquote here isn't necessary, also, I think > this should stick to being a list containing a string, as the other part > of the if returns a list. > > diff --git a/guix-data-service/web/dumps/html.scm > b/guix-data-service/web/dumps/html.scm > index 71e69c8..9645f7c 100644 > --- a/guix-data-service/web/dumps/html.scm > +++ b/guix-data-service/web/dumps/html.scm > @@ -21,8 +21,13 @@ > #:use-module (guix-data-service web view html) > #:export (view-dumps)) > > +(define page-header "Database dumps") > + > (define (view-dumps available-dumps) > + > (layout > + #:title > + page-header > #:body > `(,(header) > (div > @@ -31,7 +36,7 @@ > (@ (class "row")) > (div > (@ (class "col-sm-12")) > - (h1 "Database dumps"))) > + (h1 ,page-header))) > > Like the others, I'd probably put page-header inside the view-dumps > procedure. Same goes for other places where it's outside. > > @@ -267,7 +279,7 @@ > (@ (class "col-sm-12")) > (a (@ (href "/jobs")) > (h3 "Jobs")) > - (h1 "Queued jobs (" > + (h1 ,page-header"(" > ,(length jobs-and-events) > ")"))) > (div > > I'd suspect the title here would be "Queued jobs(", I'd also put a space > between ,page-header the bit after it in the code. > > @@ -329,8 +341,13 @@ > '()))))) > jobs-and-events))))))))) > > + > (define (view-job job-id query-parameters log) > + (define page-header (string-append "Job " job-id)) > + > (layout > + #:title > + page-header > #:body > `(,(header) > (div > > Most of the procedures are separated by one line, and I wouldn't change > that here. > > @@ -24,7 +24,11 @@ > #:export (view-package)) > > (define* (view-package name package-version-with-branches) > + (define page-header "Package") > + > (layout > + #:title > + (string-append page-header " " name) > #:body > `(,(header) > (div > @@ -33,7 +37,7 @@ > (@ (class "row")) > (div > (@ (class "col-md-12")) > - (h1 "Package: " ,name))) > + (h1 ,page-header ," " ,name))) > ,@(map > (match-lambda > ((('version . version) > > I'm not that fussed about the colon, but I'd probably keep it. > > I'd try to keep the page-header variable meaningful if you're going to > use it though. "Package" is named as the page-header, but it's not what > the title is, or the h1 element. They're both better as they include the > package name, I'd probably just make the page-header the actual string > used in both places. > > @@ -65,7 +69,11 @@ > (define* (view-git-repository git-repository-id > label url cgit-url-base > branches-with-most-recent-commits) > + (define page-header (string-append "Repository " (string-drop url 8))) > + > (layout > + #:title > + page-header > #:body > `(,(header) > (div > > This is really nice, it's good that the pages for different repositories > won't have the same title. > > @@ -197,7 +209,11 @@ > branch-name > package-name > versions-by-revision-range) > + (define page-header (string-append branch-name " " package-name)) > + > (layout > + #:title > + page-header > #:body > `(,(header) > (div > > I think you might need some more words for this title to make sense > though, even just having package-name " on " branch-name would probably > help people work out what's going on. > > @@ -386,6 +402,8 @@ > (map first derivations-by-revision-range)))) > > (layout > + #:title > + (string-append package-name " Package derivations") > #:body > `(,(header) > (div > @@ -636,6 +654,8 @@ > (map first outputs-by-revision-range)))) > > (layout > + #:title > + (string-append package-name " Package outputs") > #:body > `(,(header) > (div > @@ -849,6 +869,8 @@ > valid-systems > system-test-history) > (layout > + #:title > + (string-append system-test-name " History") > #:body > `(,(header) > (div > > Given there's something coming first in these titles, I wouldn't > capitalise the H in History or P in Package, since it's not at the start > of the title. > > @@ -48,7 +48,12 @@ > (define* (view-revision-news commit-hash > query-parameters > news-entries) > + (define page-header "Revision") > + > (layout > + #:title > + (string-append "Channel News Entries " page-header " " > + (string-take commit-hash 7)) > #:body > `(,(header) > (div > > @@ -48,7 +48,12 @@ > (define* (view-revision-news commit-hash > query-parameters > news-entries) > + (define page-header "Revision") > + > (layout > + #:title > + (string-append "Channel News Entries " page-header " " > + (string-take commit-hash 7)) > #:body > `(,(header) > (div > > Same thing here regarding defining a page-header which isn't actually > used as the header. > > I do think it's useful to include both the Channel News Entries bit and > the revision bit in the title, but I'd probably put a separator (like a > -) in between them. Same goes for the other changes in this file. > > @@ -2314,7 +2386,11 @@ figure { > > (define (unknown-revision commit-hash job git-repositories-and-branches > jobs-and-events) > + (define page-header "Uknown revision") > + > (layout > + #:title > + page-header > #:body > `(,(header) > (div > > A letter was lost here.
From a3c708627df0be4f3b530d2fcd074bb943705aa4 Mon Sep 17 00:00:00 2001 From: Canan Talayhan <canan.t.talay...@gmail.com> Date: Sun, 18 Apr 2021 23:27:07 +0300 Subject: [PATCH] Set a more informative page title for any page where the title is "Guix Data Service" --- guix-data-service/web/build-server/html.scm | 24 ++++++-- guix-data-service/web/build/html.scm | 6 +- guix-data-service/web/compare/html.scm | 25 ++++++-- guix-data-service/web/dumps/html.scm | 6 +- guix-data-service/web/jobs/html.scm | 27 +++++++-- guix-data-service/web/nar/html.scm | 5 +- guix-data-service/web/package/html.scm | 3 + guix-data-service/web/repository/html.scm | 30 +++++++++- guix-data-service/web/revision/html.scm | 65 +++++++++++++++++++-- guix-data-service/web/view/html.scm | 12 ++-- 10 files changed, 176 insertions(+), 27 deletions(-) diff --git a/guix-data-service/web/build-server/html.scm b/guix-data-service/web/build-server/html.scm index f16a570..541a960 100644 --- a/guix-data-service/web/build-server/html.scm +++ b/guix-data-service/web/build-server/html.scm @@ -27,7 +27,11 @@ (define (view-build query-parameters build required-failed-builds) + (define page-header "Build") + (layout + #:title + page-header #:body `(,(header) (div @@ -36,7 +40,7 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h1 "Build"))) + (h1 ,page-header))) (div (@ (class "row")) ,@(match build @@ -98,7 +102,11 @@ '()))))) (define (view-build-servers build-servers) + (define page-header "Build servers") + (layout + #:title + page-header #:body `(,(header) (div @@ -107,7 +115,7 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h2 "Build servers") + (h2 ,page-header) ,@(map (match-lambda ((id url lookup-all-derivations? lookup-builds?) @@ -127,7 +135,11 @@ build-servers))))))) (define (view-build-server build-server) + (define page-header "Build server") + (layout + #:title + page-header #:body `(,(header) (div @@ -136,7 +148,7 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h2 "Build server") + (h2 ,page-header) ,(match build-server ((url lookup-all-derivations?) `(dl @@ -150,7 +162,11 @@ "No"))))))))))) (define (view-signing-key sexp) + (define page-header "Signing key") + (layout + #:title + page-header #:body `(,(header) (div @@ -159,5 +175,5 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h2 "Signing key") + (h2 ,page-header) ,(sexp-div sexp))))))) diff --git a/guix-data-service/web/build/html.scm b/guix-data-service/web/build/html.scm index 18d045a..4b758bb 100644 --- a/guix-data-service/web/build/html.scm +++ b/guix-data-service/web/build/html.scm @@ -29,7 +29,11 @@ valid-targets stats builds) + (define page-header "Builds") + (layout + #:title + page-header #:body `(,(header) (div @@ -38,7 +42,7 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h1 "Builds") + (h1 ,page-header) (table (@ (class "table")) (thead diff --git a/guix-data-service/web/compare/html.scm b/guix-data-service/web/compare/html.scm index 5b5fe0a..42ef0ef 100644 --- a/guix-data-service/web/compare/html.scm +++ b/guix-data-service/web/compare/html.scm @@ -97,6 +97,8 @@ (query-parameters->string query-parameters))) (layout + #:title + "Compare" #:body `(,(header) (div @@ -420,13 +422,15 @@ (style "font-size: 1.5em; padding-right: 0.4em;")))) (layout + #:title + "Comparing derivations" #:body `(,(header) (div (@ (class "container")) (div (@ (class "row")) - (h1 ,@(let ((base-commit (assq-ref query-parameters 'base_commit)) + (h1 ,(let ((base-commit (assq-ref query-parameters 'base_commit)) (target-commit (assq-ref query-parameters 'target_commit))) (if (every string? (list base-commit target-commit)) `("Comparing " @@ -435,7 +439,7 @@ " and " (a (@ (href ,(string-append "/revision/" target-commit))) (samp ,(string-take target-commit 8) "…"))) - '("Comparing derivations"))))) + '("Comparing derivations"))))) (div (@ (class "row")) (div @@ -685,7 +689,11 @@ (define fields (assq-ref query-parameters 'field)) + (define page-header "Package derivation changes") + (layout + #:title + page-header #:body `(,(header) (div @@ -835,7 +843,7 @@ enough builds to determine a change"))) (@ (class "row")) (div (@ (class "col-sm-12")) - (h1 "Package derivation changes") + (h1 ,page-header) ,(if (null? derivation-changes) '(p "No derivation changes") @@ -950,7 +958,12 @@ enough builds to determine a change"))) (string-append "?base_commit=" base-commit "&target_commit=" target-commit)) + (define page-header (string-append "Comparing " + (string-take base-commit 8) " and " (string-take target-commit 8))) + (layout + #:title + page-header #:body `(,(header) (div @@ -1042,7 +1055,11 @@ enough builds to determine a change"))) #:optional base-revision-details target-revision-details) + (define page-header "System test derivation changes") + (layout + #:title + page-header #:body `(,(header) (div @@ -1141,7 +1158,7 @@ enough builds to determine a change"))) (@ (class "row")) (div (@ (class "col-sm-12")) - (h1 "System test derivation changes") + (h1 ,page-header) ,(if (null? changes) '(p "No system test derivation changes") diff --git a/guix-data-service/web/dumps/html.scm b/guix-data-service/web/dumps/html.scm index 71e69c8..d6d77f9 100644 --- a/guix-data-service/web/dumps/html.scm +++ b/guix-data-service/web/dumps/html.scm @@ -22,7 +22,11 @@ #:export (view-dumps)) (define (view-dumps available-dumps) + (define page-header "Database dumps") + (layout + #:title + page-header #:body `(,(header) (div @@ -31,7 +35,7 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h1 "Database dumps"))) + (h1 ,page-header))) ,@(map (match-lambda ((date-string . files) diff --git a/guix-data-service/web/jobs/html.scm b/guix-data-service/web/jobs/html.scm index 82734d6..373387d 100644 --- a/guix-data-service/web/jobs/html.scm +++ b/guix-data-service/web/jobs/html.scm @@ -30,7 +30,11 @@ jobs-and-events recent-events show-next-page?) + (define page-header "Jobs") + (layout + #:title + page-header #:body `(,(header) (div @@ -40,7 +44,7 @@ (div (@ (class "col-sm-12")) (h1 (@ (style "display: inline-block;")) - "Jobs") + ,page-header) (div (@ (class "btn-group pull-right") (style "margin-top: 1.3rem;") @@ -189,7 +193,11 @@ (define (view-job-events query-parameters recent-events) + (define page-header "Recent events") + (layout + #:title + page-header #:body `(,(header) (div @@ -200,7 +208,7 @@ (@ (class "col-sm-12")) (a (@ (href "/jobs")) (h3 "Jobs")) - (h1 "Recent events"))) + (h1 ,page-header))) (div (@ (class "row")) (div @@ -256,7 +264,12 @@ recent-events))))))))) (define (view-job-queue jobs-and-events) + (define page-header (string-append "Queued jobs (" + (number->string (length jobs-and-events)) ")")) + (layout + #:title + page-header #:body `(,(header) (div @@ -267,9 +280,7 @@ (@ (class "col-sm-12")) (a (@ (href "/jobs")) (h3 "Jobs")) - (h1 "Queued jobs (" - ,(length jobs-and-events) - ")"))) + (h1 ,page-header))) (div (@ (class "row")) (div @@ -330,7 +341,11 @@ jobs-and-events))))))))) (define (view-job job-id query-parameters log) + (define page-header (string-append "Job " job-id)) + (layout + #:title + page-header #:body `(,(header) (div @@ -339,7 +354,7 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h1 "Job " ,job-id))) + (h1 ,page-header))) (div (@ (class "row")) (div diff --git a/guix-data-service/web/nar/html.scm b/guix-data-service/web/nar/html.scm index 596d16b..063b091 100644 --- a/guix-data-service/web/nar/html.scm +++ b/guix-data-service/web/nar/html.scm @@ -22,7 +22,10 @@ #:export (view-substitutes)) (define (view-substitutes narinfo-signing-public-key) + (define page-header "Substitutes") (layout + #:title + page-header #:body `(,(header) (div @@ -31,7 +34,7 @@ (@ (class "row")) (div (@ (class "col-sm-12")) - (h1 "Substitutes") + (h1 ,page-header) ,@(if (canonical-sexp? narinfo-signing-public-key) `((h3 "Public key") (pre diff --git a/guix-data-service/web/package/html.scm b/guix-data-service/web/package/html.scm index 0d9b078..85b33e9 100644 --- a/guix-data-service/web/package/html.scm +++ b/guix-data-service/web/package/html.scm @@ -24,7 +24,10 @@ #:export (view-package)) (define* (view-package name package-version-with-branches) + (layout + #:title + (string-append "Package: " name) #:body `(,(header) (div diff --git a/guix-data-service/web/repository/html.scm b/guix-data-service/web/repository/html.scm index 88f2632..4bb50db 100644 --- a/guix-data-service/web/repository/html.scm +++ b/guix-data-service/web/repository/html.scm @@ -32,7 +32,11 @@ view-no-latest-revision)) (define* (view-git-repositories git-repositories) + (define page-header "Git repositories") + (layout + #:title + page-header #:body `(,(header) (div @@ -41,7 +45,7 @@ (@ (class "row")) (div (@ (class "col-md-12")) - (h1 "Git repositories"))) + (h1 ,page-header))) ,@(map (match-lambda ((id label url cgit-base-url) @@ -65,7 +69,11 @@ (define* (view-git-repository git-repository-id label url cgit-url-base branches-with-most-recent-commits) + (define page-header (string-append "Repository " (string-drop url 8))) + (layout + #:title + page-header #:body `(,(header) (div @@ -86,7 +94,11 @@ (define (view-branch git-repository-id branch-name query-parameters branch-commits) + (define page-header (string-append branch-name " branch")) + (layout + #:title + page-header #:body `(,(header) (div @@ -197,7 +209,11 @@ branch-name package-name versions-by-revision-range) + (define page-header (string-append package-name " on " branch-name)) + (layout + #:title + page-header #:body `(,(header) (div @@ -386,6 +402,8 @@ (map first derivations-by-revision-range)))) (layout + #:title + (string-append package-name " package derivations") #:body `(,(header) (div @@ -636,6 +654,8 @@ (map first outputs-by-revision-range)))) (layout + #:title + (string-append package-name " package outputs") #:body `(,(header) (div @@ -849,6 +869,8 @@ valid-systems system-test-history) (layout + #:title + (string-append system-test-name " history") #:body `(,(header) (div @@ -1016,12 +1038,16 @@ '(#f)))))))))))) (define (view-no-latest-revision branch-name) + (define page-header "No latest revision") + (layout + #:title + (string-append page-header " for " branch-name) #:body `(,(header) (div (@ (class "container")) - (h1 "No latest revision") + (h1 ,page-header) (p "No latest revision for " (strong (samp ,branch-name)) " branch"))))) diff --git a/guix-data-service/web/revision/html.scm b/guix-data-service/web/revision/html.scm index 25b79f4..514129b 100644 --- a/guix-data-service/web/revision/html.scm +++ b/guix-data-service/web/revision/html.scm @@ -48,7 +48,11 @@ (define* (view-revision-news commit-hash query-parameters news-entries) + (layout + #:title + (string-append "Channel News Entries - Revision " + (string-take commit-hash 7)) #:body `(,(header) (div @@ -107,7 +111,11 @@ #:key path-base header-text header-link) + (layout + #:title + (string-append "Package: " name " - Revision " + (string-take revision-commit-hash 7)) #:body `(,(header) (div @@ -135,7 +143,7 @@ branch-name)))) branches))) git-repositories-and-branches) - (h1 "Package " ,name))) + (h1 "Package: " ,name))) (div (@ (class "row")) (div @@ -169,7 +177,11 @@ #:key header-text header-link version-history-link) + (layout + #:title + (string-append "Package: " name " @ " version " - Revision " + (string-take revision-commit-hash 7)) #:body `(,(header) (div @@ -224,7 +236,7 @@ (role "button")) "Version history")) '()) - (h1 "Package " ,name " @ " ,version))) + (h1 "Package: " ,name " @ " ,version))) (div (@ (class "row")) (div @@ -471,7 +483,10 @@ lint-warning-counts #:key (path-base "/revision/") header-text) + (layout + #:title + (string-append "Revision " (string-take commit-hash 7)) #:body `(,(header) (div @@ -548,6 +563,9 @@ "Home page" "Location" "Licenses"))) (layout + #:title + (string-append "Packages - Revision " + (string-take revision-commit-hash 7)) #:body `(,(header) (div @@ -756,6 +774,9 @@ package-description-counts)) (layout + #:title + (string-append "Packages translation availability - Revision " + (string-take commit-hash 7)) #:body `(,(header) (div @@ -835,7 +856,10 @@ query-parameters #:key (path-base "/revision/") header-text header-link) + (layout + #:title + (string-append "System tests - Revision " (string-take commit-hash 7)) #:body `(,(header) (div @@ -936,7 +960,11 @@ channel-instances #:key (path-base "/revision/") header-text header-link) + (layout + #:title + (string-append "Channel instances - Revision " + (string-take commit-hash 7)) #:body `(,(header) (div @@ -1217,6 +1245,9 @@ figure { colours)))))) (layout + #:title + (string-append "Package substitute availability - Revision " + (string-take revision-commit-hash 7)) #:body `(,(header) (style ,chart-css) @@ -1254,7 +1285,11 @@ figure { #:key (path-base "/revision/") header-text header-link) + (layout + #:title + (string-append "Package reproducibility - Revision " + (string-take revision-commit-hash 7)) #:body `(,(header) (style " @@ -1522,6 +1557,9 @@ figure { (assq-ref query-parameters 'field)) (layout + #:title + (string-append "Package derivations - Revision " + (string-take commit-hash 7)) #:body `(,(header) (div @@ -1703,6 +1741,9 @@ figure { )) (layout + #:title + (string-append "Fixed output package derivations - Revision " + (string-take commit-hash 7)) #:body `(,(header) (div @@ -1843,6 +1884,9 @@ figure { build-server-urls)) (layout + #:title + (string-append "Package derivation outputs - Revision " + (string-take commit-hash 7)) #:body `(,(header) (div @@ -2021,7 +2065,10 @@ figure { build-server-options stats builds) + (layout + #:title + (string-append "Builds - Revision " (string-take commit-hash 7)) #:body `(,(header) (div @@ -2159,6 +2206,9 @@ figure { '("Linter" "Message" "Location"))) (layout + #:title + (string-append "Lint warnings - Revision " + (string-take revision-commit-hash 7)) #:body `(,(header) (div @@ -2314,7 +2364,11 @@ figure { (define (unknown-revision commit-hash job git-repositories-and-branches jobs-and-events) + (define page-header "Unknown revision") + (layout + #:title + page-header #:body `(,(header) (div @@ -2347,13 +2401,16 @@ figure { (strong (@ (class "text-center") (style "font-size: 2em; display: block;")) "Unknown")))) - `((h1 "Unknown revision") + `((h1 ,page-header) (p "No known revision with commit " (strong (samp ,commit-hash))))))))) (define (unprocessed-revision commit-hash job git-repositories-and-branches jobs-and-events) + (define page-header "Unknown revision") (layout + #:title + page-header #:body `(,(header) (div @@ -2375,6 +2432,6 @@ figure { git-repositories-and-branches commit-hash)) ,@(view-revision/jobs-and-events jobs-and-events)))) - `((h1 "Unknown revision") + `((h1 ,page-header) (p "No known revision with commit " (strong (samp ,commit-hash))))))))) diff --git a/guix-data-service/web/view/html.scm b/guix-data-service/web/view/html.scm index 8063e17..33535a9 100644 --- a/guix-data-service/web/view/html.scm +++ b/guix-data-service/web/view/html.scm @@ -65,13 +65,15 @@ (define* (layout #:key (head '()) (body '()) - (title "Guix Data Service") + title description) `((doctype "html") (html (@ (lang "en")) (head - (title ,title) + (title ,(if title + (string-append title " — Guix Data Service") + "Guix Data Service")) (meta (@ (http-equiv "Content-Type") (content "text/html; charset=UTF-8"))) (meta (@ (name "viewport") @@ -286,8 +288,7 @@ (define (index git-repositories-and-revisions) (layout #:description - "The Guix Data Service processes, stores and provides data about Guix over -time." + "The Guix Data Service processes, stores and provides data about Guix over time." #:body `(,(header) (div @@ -334,7 +335,10 @@ time." git-repositories-and-revisions))))) (define (view-statistics guix-revisions-count derivations-count) + (define page-header "Statistics") (layout + #:title + page-header #:body `(,(header) (div -- 2.17.1