summaryrefslogtreecommitdiff
path: root/html/software
diff options
context:
space:
mode:
Diffstat (limited to 'html/software')
-rw-r--r--html/software/default.nix28
1 files changed, 28 insertions, 0 deletions
diff --git a/html/software/default.nix b/html/software/default.nix
new file mode 100644
index 0000000..d0ed803
--- /dev/null
+++ b/html/software/default.nix
@@ -0,0 +1,28 @@
+{ html, data, lib, ... }:
+
+let
+ software = data.software;
+ format = softwarePiece:
+ with html;
+ with softwarePiece;
+ {
+ inherit id title abstract;
+ url = URL;
+ } // (let
+ authorsOther = lib.remove data.basics.name
+ (builtins.map (author: "${author.given} ${author.family}") author);
+ in lib.optionalAttrs (authorsOther != [ ]) {
+ authors = "With ${lib.concatStringsSep ", " authorsOther}";
+ });
+in {
+ title = "Software";
+ priority = 15;
+ body = with html;
+ dl (for (sort.byPath [ "title" ] software) (softwarePiece:
+ let formatted = format softwarePiece;
+ in with formatted;
+ lines [
+ (dt { id = "Software#${id}"; } (href { target = "_blank"; } url title))
+ (dd abstract)
+ ]));
+}