tvl-depot/tvix/website/default.nix
Vincent Ambo 19c452875e feat(tvix): add simple initial website
The website itself contains no useful information that we don't
already have published anywhere, but it's a decent landing place.

Mostly I want to have something on the root of tvix.dev, so that we
can start using it for other purposes.

Change-Id: Id2b4dabc7f6e4dd26b61484b86dbde2f39aa1719
Reviewed-on: https://cl.tvl.fyi/c/depot/+/8296
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
2023-03-14 21:59:40 +00:00

32 lines
925 B
Nix

{ depot, lib, pkgs, ... }:
let
# https://developers.google.com/search/docs/advanced/structured-data/logo
structuredData = {
"@context" = "https://schema.org";
"@type" = "Organisation";
url = "https://tvl.fyi";
logo = "https://static.tvl.fyi/latest/logo-animated.svg";
};
# All Tvix-related blog posts from the main TVL website
tvixPosts = builtins.filter
(post: !(post.draft or false) && (lib.hasInfix "Tvix" post.title))
depot.web.tvl.blog.posts;
postListEntries = map (p: "* [${p.title}](https://tvl.fyi/blog/${p.key})") tvixPosts;
landing = depot.web.tvl.template {
title = "Tvix - A new implementation of Nix";
content = ''
${builtins.readFile ./landing-en.md}
${builtins.concatStringsSep "\n" postListEntries}
'';
};
in
pkgs.runCommand "tvix-website" { } ''
mkdir $out
cp ${landing} $out/index.html
cp ${./tvix-logo.webp} $out/tvix-logo.webp
''