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>
This commit is contained in:
parent
3370724062
commit
19c452875e
3 changed files with 68 additions and 0 deletions
32
tvix/website/default.nix
Normal file
32
tvix/website/default.nix
Normal file
|
@ -0,0 +1,32 @@
|
|||
{ 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
|
||||
''
|
36
tvix/website/landing-en.md
Normal file
36
tvix/website/landing-en.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
<img class="tvl-logo" src="./tvix-logo.webp"
|
||||
alt="A candy bar in different shades of blue that says 'Tvix by TVL' on it">
|
||||
|
||||
------------------
|
||||
|
||||
Tvix is a new implementation of Nix, a purely-functional package manager. It
|
||||
aims to have a modular implementation, in which different components can be
|
||||
reused or replaced based on the use-case.
|
||||
|
||||
Tvix is developed as a GPLv3-licensed open-source project by
|
||||
[TVL][], with source code available in the [TVL monorepo][].
|
||||
|
||||
There are several projects within Tvix, such as:
|
||||
|
||||
* `//tvix/eval` - an implementation of the Nix programming language
|
||||
* `//tvix/serde` - a Rust library for using the Nix language for config files
|
||||
* `//tvix/nix-compat` - a Rust library for compatbility with C++ Nix
|
||||
features like encodings and hashing schemes
|
||||
* ... and a handful others!
|
||||
|
||||
The language evaluator can be toyed with in [Tvixbolt][], and you can check out
|
||||
the [Tvix README][] ([GitHub mirror][gh]) for additional information on the
|
||||
project and development workflows.
|
||||
|
||||
Developer documentation for some parts of Tvix is [available online][docs].
|
||||
|
||||
[TVL]: https://tvl.fyi
|
||||
[TVL monorepo]: https://cs.tvl.fyi/depot/-/tree/tvix
|
||||
[Tvixbolt]: https://tvixbolt.tvl.su
|
||||
[Tvix README]: https://code.tvl.fyi/about/tvix
|
||||
[gh]: https://github.com/tvlfyi/tvix/
|
||||
[docs]: https://docs.tvix.dev
|
||||
|
||||
-------------------
|
||||
|
||||
Check out the latest Tvix-related blog posts from TVL's website:
|
BIN
tvix/website/tvix-logo.webp
Normal file
BIN
tvix/website/tvix-logo.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 80 KiB |
Loading…
Reference in a new issue