aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix-data-service/web/controller.scm6
-rw-r--r--guix-data-service/web/view/html.scm10
2 files changed, 15 insertions, 1 deletions
diff --git a/guix-data-service/web/controller.scm b/guix-data-service/web/controller.scm
index 79f2848..8482272 100644
--- a/guix-data-service/web/controller.scm
+++ b/guix-data-service/web/controller.scm
@@ -507,7 +507,11 @@
(let ((derivation (select-derivation-by-output-filename conn filename)))
(match derivation
(()
- #f)
+ (render-html
+ #:sxml (general-not-found
+ "Store item not found"
+ "No derivation found producing this output")
+ #:code 404))
(derivations
(render-html
#:sxml (view-store-item filename
diff --git a/guix-data-service/web/view/html.scm b/guix-data-service/web/view/html.scm
index 0a9aabb..cec4c19 100644
--- a/guix-data-service/web/view/html.scm
+++ b/guix-data-service/web/view/html.scm
@@ -29,6 +29,7 @@
#:use-module (texinfo html)
#:use-module (json)
#:export (index
+ general-not-found
unknown-revision
view-statistics
view-revision-package-and-version
@@ -1389,6 +1390,15 @@
(take data 2))
(vlist->list target-packages-vhash))))))))))))
+(define (general-not-found header-text body)
+ (layout
+ #:body
+ `(,(header)
+ (div
+ (@ (class "container"))
+ (h1 ,header-text)
+ (p ,body)))))
+
(define (unknown-revision commit-hash job)
(layout
#:body