{ config, lib, ... }: let inherit (config) pages; in { imports = lib.nixFiles ./.; collections.news.type = config.content-types.article; pages.index = { link, ... }: { title = "Fediversity"; description = "Fediversity web site"; summary = '' This web site hosts up-to-date information about the the NGI Zero Fediversity project. ''; body = '' # Welcome to the Fediversity project ${pages.fediversity.summary} [Learn more about Fediversity](${link pages.fediversity}) # Fediversity grants ${pages.grants.summary} [Learn more about Fediversity grants](${link pages.grants}) # Consortium The Consortium behind the Fediversity project is a cooperation between NLnet, Open Internet Discourse Foundation, NORDUnet and Tweag. ${toString (map (partner: '' ## ${partner.title} ${partner.summary} [Read more about ${partner.title}](${link partner}) '') (with pages; [ nlnet oid tweag nordunet ]))} # Fediverse explained ${toString (map (role: '' ## ${role.title} ${role.summary} [Read more about ${role.title}](${link role}) '') (with pages; [ individuals developers european-commission ]))} # News ${ let sorted = with lib; reverseList (sortOn (entry: entry.date) config.collections.news.entry); in lib.join "\n" (map (article: '' - ${article.date} [${article.title}](${link article}) '') sorted) } ''; }; }