{ config, lib, ... }: let inherit (config) pages; in { imports = with lib.fileset; toList (difference (fileFilter ({ hasExt, ... }: hasExt "nix") ./.) ./default.nix); collections.news.type = config.content-types.article; pages.index = { link, ... }: { title = "Fediversity"; locations = [ "index.html" ]; 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.description} [Read more about ${partner.title}](${link partner}) '') (with pages; [ nlnet oid tweag nordunet ]))} # News ${ let sorted = with lib; reverseList (sortOn (entry: entry.date) config.collections.news.entry); in lib.join "\n" (map (article: '' - ${article.date} [${article.title}](${article}) '') sorted) } ''; }; }