summaryrefslogtreecommitdiff
path: root/guix-web/controller.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-web/controller.scm')
-rw-r--r--guix-web/controller.scm8
1 files changed, 7 insertions, 1 deletions
diff --git a/guix-web/controller.scm b/guix-web/controller.scm
index f3858d3..bfa2f5e 100644
--- a/guix-web/controller.scm
+++ b/guix-web/controller.scm
@@ -22,6 +22,7 @@
#:use-module (gnu packages)
#:use-module (guix-web render)
#:use-module (guix-web view)
+ #:use-module (guix-web package)
#:export (controller))
(define (controller path)
@@ -32,7 +33,7 @@
(render-html (all-packages)))
((GET "packages.json")
(render-json (all-packages-json)))
- ((GET "package" name)
+ ((GET "packages" name)
(match (string-split name #\.)
((name ext)
(render-json
@@ -41,6 +42,11 @@
'())))
((name)
(render-html (view-package name)))))
+ ((POST "packages" name "install")
+ (let ((package (car (find-packages-by-name name))))
+ (if (package-install package)
+ (created)
+ (unprocessable-entity))))
((GET "librejs")
(render-html (librejs)))
(_ #f)))