Commit graph

287 commits

Author SHA1 Message Date
Vincent Ambo
236b2bcd74 fix(web/tvl/blog): Fix Tvix post publication date
Change-Id: I6f69507c75436e882f2248430eb894b1310bfca8
2021-12-01 20:57:53 +03:00
Vincent Ambo
1f98cea9b2 feat(web/tvl/blog): Publish introductory Tvix blog post
Change-Id: I16c565ac1194cec44382b77f1c65c5ff569fdcca
2021-12-01 17:38:32 +00:00
Vincent Ambo
8318178b5f feat(web/tvl): List blog posts on homepage
Change-Id: Ic0ee18466fbaca1a374e7489be640f49571eb9c5
2021-12-01 12:37:50 +03:00
Vincent Ambo
79681c9e21 fix(web/tvl/blog): Include only published posts in listings & feed
Change-Id: I76c9c2c5cc82c7d0f59f907b6f1abee92a92cbf7
2021-12-01 12:37:50 +03:00
Vincent Ambo
c725f89d8b refactor(web/tvl/blog): Update Tvix intro blog post
This incorporates feedback from sterni from cl/4052 and chipb on IRC.

Change-Id: I0547d130dcd578746d5183c563be4b1d042cb5f8
2021-12-01 01:50:57 +03:00
Vincent Ambo
f641378948 fix(web/tvl/blog): Fix link to embedded image
Change-Id: I8bec643267785c6d3523380a2a17ab5e9213b51c
2021-11-30 18:52:53 +03:00
Vincent Ambo
8133fed255 feat(web/tvl/blog): Write Tvix introduction blog post
This post is intended to just let people know about the existence of
Tvix, tell them a bit about the background and how to follow along.

Change-Id: Ib5194d3aa385a0e30b4768ba28cb063784f6e0a3
2021-11-30 18:45:44 +03:00
Vincent Ambo
e61b50baf9 chore(web): Correct URLs for assets & feeds on TVL blog
Change-Id: I8720d49f8f3f4010f57a53e763a4f246bf4eb3d8
2021-11-30 12:51:30 +03:00
Vincent Ambo
4f1249e46f refactor(readTree): Move 'drvTargets' into readTree
This function is also generally useful for readTree consumers that
have the concept of subtargets.

Change-Id: Ic7fc03380dec6953fb288763a28e50ab3624d233
2021-11-23 14:42:08 +00:00
sterni
3d4e992c6f feat(web/tvl/template): add title to derivation name
This should help when debugging template generated derivations.

Change-Id: I9958a7e67c8442c5ad97da2a9d3622a0556b6a1a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3861
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-11-13 13:28:06 +00:00
sterni
53ab5716aa fix(web/static): avoid drvHash unnecessarily inflating closures
The string context of drvPath apparently causes a derivation to
_directly_ reference the whole dependency closure of the derivation
drvPath belongs to. This not only is unnecessary in this case (since we
are using drvHash to construct HTTP URLs which are primarily contigent
on the deployed configuration and not the shape of the nix store), but
also creates a very confusing derivation (e. g. web.tvl's index.html
would *directly* reference pandoc).

Change-Id: I6e9900e9e35fbd639061e53322e4ccb3fbb7e7ec
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3862
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-11-13 13:27:59 +00:00
Vincent Ambo
1fbb960acf fix(tvl/logo): Fix rendering of PNG files
The previous format for entering the shape of the 'V' (as exported by
Inkscape) is incompatible with the PDF rendering process, somehow.

This reverts the letter back to the old path definition format with
the offending point manually removed.

Change-Id: I6ff3310afb5a757d657f2f0d8a761f355a8e50c9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3843
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2021-11-12 15:18:41 +00:00
Vincent Ambo
a3d0beceaf fix(tvl/logo): Fix shape of 'V'
There was an additional point in this letter's path, which led to a
small fragment of the "buttcrack" remaining.

Change-Id: I4aa25190c2f2d5fbae55d85c499939ec72a25add
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3842
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2021-11-12 08:39:13 +00:00
Vincent Ambo
875ef0a605 fix(web/blog): make base URL configurable for atom feeds
This was previously hardcoded to tazj.in, which is not going to work
of course.

Instead it now takes the blog config which has a new baseUrl
parameter. For ease of use, the configs of my and the TVL blog have
been moved into a location that is accessible in the tree for reuse.

Change-Id: I94e71aaa7859db4380eb7013740a17f6b6a02620
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3777
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-11-08 10:39:04 +00:00
Vincent Ambo
4f71638e49 docs(atward): Document availability of new query types
Change-Id: Ie96eae39722c0bd22f3801cc9e24c28148f0a0cd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3779
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-11-07 14:08:38 +00:00
Vincent Ambo
674603f6c8 feat(web/tvl): Render blog posts and atom feed for TVL
Includes the blog posts and feed in the $out directory, but without
linking them from the TVL homepage yet.

Change-Id: If9c094b29e43e9a81b0cc3d731261dc4b10557c1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3776
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-11-05 14:24:53 +00:00
Vincent Ambo
4482bc2c82 feat(web/tvl/blog): Add scaffolding for first blog post
No content yet, but I need this in place to chop up the other changes
nicely.

Change-Id: I4302e14ab513d6d4dd23e9e8ab5493223b9a80b4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3774
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-11-05 14:24:53 +00:00
Vincent Ambo
4baf633622 refactor(web/tvl/template): Move footer into a separate target
This makes it possible for the footer to be reused in other places,
e.g. when templating blog posts (which do not go through
//web/tvl/template (yet)).

Change-Id: Ia8ab0e1c6db4f76b4de49239e11a4474038f60ae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3773
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-11-05 12:51:36 +00:00
Vincent Ambo
10e279ac13 feat(atward): Support depot revision queries (r/...)
Redirects these to the cgit commit view. Only supports cgit because we
don't have a good way to coax Sourcegraph into fetching these refs.

Change-Id: I8c28ed015ba37c04eb4b7a667bde70ff6a92bf4c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3772
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-11-05 12:26:44 +00:00
Vincent Ambo
0e5730a26f fix(web/blog): Correctly wrap footer content
Name clash went undetected because I called this variable the same
thing, oops.

Change-Id: Iafa508f26887302b1c256088c50c68cd0ed7eea2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3771
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-11-05 10:39:14 +00:00
Vincent Ambo
f360bbdcf0 refactor(web/blog): Move atom feed creation logic to //web/blog
This was previously all inside of my personal homepage configuration,
but that's not really where it belongs.

This moves the blog post -> feed entry logic to //web/blog and moves
some other minor logic (like entry order) into the atom feed
implementation itself.

Change-Id: Idde0241c48e979580de73f2b9afd04e6ca7f4c9a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3770
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-11-04 15:57:56 +00:00
Vincent Ambo
bbf92dcdea refactor(web/blog): Configurable blog name and footer
Required for actually using this generically for the TVL blog.

Change-Id: I92d8d10341f9ab4f92c90f7976be261b3255a0f0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3768
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-11-03 15:43:57 +00:00
Vincent Ambo
08d46ad293 chore(web/blog): Move out of //users/tazjin
This will also be used for the TVL blog, with status updates of
projects like Tvix.

Note that while this commit evaluates, there are still some things
specific to my blog in this code which I'll untangle in a future commit.

Change-Id: If59431161b165d7249cbb856073a4cae84a1bfbf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3732
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-10-22 09:56:31 +00:00
Smitty
4ea7fc392a feat(web/panettone): support dark mode
When the system is set to dark mode, this is detected through
prefers-color-scheme and the color scheme is adjusted accordingly. This
fixes #18.

The colors are set using CSS variables on the body that are overrridden
based on the current color scheme.

Change-Id: Id2f95dee4d6968e1b62ce37534f623e489fabde4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3722
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-10-20 19:52:13 +00:00
Vincent Ambo
8301825124 chore(web/atom-feed): Move feed generator out of //users/tazjin
I intend to use this for updates on TVL projects, which will end up on
the homepage, which is outside of //users.

Change-Id: I03542d1bcef3d9fc4599294655caab5ed22ba5d9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3728
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-10-16 08:47:16 +00:00
sterni
e7c0d6eb12 refactor(web/bubblegum): avoid dumping depot into store
cleanSource needs to import the path into store which is quite slow at
this point. Since we are filtering the path later anyways, using the
original path is probably perfectly fine and speeds up builds (which is
nice when iterating on something).

Change-Id: I0628854d754b5903eb4ae93a3c3e2539b2c1c7e9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3705
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-10-10 10:03:03 +00:00
sterni
2397fd8d56 feat(nix/sparseTree): allow specifying subtrees as relative paths
Passed strings will be treated as a relative path below the given root,
which is quite convenient when using depot.path by eliminating a lot of
repetition.

Change-Id: I3da6058094484f4a6ffbb84f89ad4472b502a00c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3704
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-10-10 10:03:03 +00:00
Vincent Ambo
26f0ba5464 refactor(web): use static.tvl.{fyi|su} for static assets
Replaces all uses of relative static paths in TVL pages with the
static.tvl.fyi domain. Where possible, the drv hash is directly
embedded in the content.

Change-Id: Ia882dd37ceae9d047cd81cf1eb37a856b339643a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3682
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-10-07 14:21:18 +00:00
Vincent Ambo
348cf5ae73 refactor(web/tvl/template): default staticUrl to static.tvl.{fyi|su}
Change-Id: Ibccb690dc1371499e9800d4414002ce586490a91
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3681
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-10-05 13:18:48 +00:00
Vincent Ambo
69ed4984e3 feat(web/static): Add TVL logo to static files
Change-Id: Ie5ee4fe9d137cde9502ded1558fae3ad685b8863
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3661
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-10-01 15:59:38 +00:00
Vincent Ambo
b1f52b2617 feat(web/static): Expose drvHash attribute on derivation
This can be used for easy cachebusting of static assets, so that we
can serve them all with a really long cache-time easily.

Change-Id: I7c9f6beddec58e1caf02cda33bc587590217a939
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3660
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-10-01 15:33:47 +00:00
Vincent Ambo
5c9c4aa566 refactor(web/tvl/template): Make static asset URL configurable
Change-Id: I168924cd7b15103d64c9ad72172f72304e1d3a7d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3659
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-10-01 15:33:47 +00:00
Vincent Ambo
0ec6b4fad6 feat(web/tvl/template): Support extraFooter argument
Change-Id: If42bb8476cd513d7844ef3494e82563a5786c670
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3649
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-09-28 22:04:10 +00:00
Vincent Ambo
c0f2ec2f70 fix(web/tvl/logo): Make the logo slightly ... faster
grfn pointed out that the previous animation was so subtle that it
could be mistaken for a symptom of perceptual distortion, which is not
ideal.

This doubles the speed of the animation to make it more obvious that
animation is not taking place in the viewer's head.

Change-Id: Icd836e91677dfab44357932b53673d701ac6b9f3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3647
Reviewed-by: grfn <grfn@gws.fyi>
Tested-by: BuildkiteCI
2021-09-27 20:42:46 +00:00
Vincent Ambo
3e7ed05887 docs(web/tvl): Update copy on the TVL website
Pointing people at IRC and mentioning that there's technology
involved, etc.

Change-Id: I414c006952d60b1fff619edda5016bb2a8714dfb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3640
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
2021-09-27 20:11:21 +00:00
Vincent Ambo
c4b718538b chore(web/tvl): Prune urbint from TVL graph
This isn't really adding anything and I don't think anyone
particularly wants us to link to them.

Change-Id: I6c1c8949d8e64e8c50cc8220a911183b2a166232
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3632
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-09-27 15:42:25 +00:00
Vincent Ambo
e5c3b9d391 feat(web/cgit): Use new logo in cgit page
Change-Id: I5212b235aa2a72c90e4795dce4c9fccfa00ddec3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3629
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-09-27 15:41:29 +00:00
Vincent Ambo
6c2e157264 refactor(web/tvl/logo): Convert lambdas into <use> elements
Some mostly manual refactoring of the logo, assisted by inkscape to
determine some details.

Changes:

* grid-aligned lambda & virus body shape
* replaced all lambdas except the top-left one with <use> statements
  of that lambda, this ensures that they actually have the same shape
* flipped the feet ... I think it looks better like this?
* split the virus body and lambda into different groups, which also
  easily allows styling them separately

Change-Id: Idaf1e3fe273b8c5461f5e433c1b0124fc534d9c5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3634
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-09-26 10:33:24 +00:00
Vincent Ambo
ddb21647e4 style(web/tvl/logo): Add dark & light versions, dim background
Currently the pitch black colour of the logo outline looks a bit
strange on the homepage, dimming this to the same colour as the text
is nicer.

While poking around in that colouring segment I also made a way to
spit out light logos instead (to use on dark backgrounds).

Note: The light colours are just picked from our web CSS, but they
don't actually look good yet - it also needs a different palette. For
now nothing uses the light version.

Change-Id: Ibfe7fa252cd40b803ac96047d0627dad0d6d9ac2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3633
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-09-26 10:33:24 +00:00
Vincent Ambo
289de14fc4 feat(web/tvl): Use new TVL logo on the main homepage
Change-Id: I4b12b33bab54dbb099d97eaa4c14ca3072c4cd66
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3628
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-09-24 15:31:01 +00:00
Vincent Ambo
2229a32ae9 fix(web/tvl/logo): Fix bounding box of the SVG file
This trims the huge amount of whitespace on all sides of the logo.

Change-Id: Ic14247e002839db729131550f7c7528d080ab519
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3627
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-09-24 15:31:01 +00:00
Vincent Ambo
8d40c84408 feat(web/tvl): Check in first version of new TVL logo
The exported SVG was hand-edited to make it as understandable as
possible, the components within it are grouped sensibly.

We noticed that it looks best with different fill colours for the
armchair, so some included Nix code generates a colour animation (e.g.
for the homepage) and differently coloured export PNGs (for different
places).

Thanks Varia <3

Change-Id: Ifdb5f4ff7827caf10d193b99e81b7c8498b35ce4
2021-09-22 21:28:43 +03:00
Vincent Ambo
d0c0227a7b refactor(web/tvl/template): Don't forcefully embed title in page
This hands more layout control back to the page content instead of the
template. There are cases (currently experimenting with logo layout)
where it's visually nicer if there isn't a page title, but the rest of
the template still applies.

Change-Id: Ia3cd0c750beec5408e631760f1faeea8efec91db
2021-09-22 21:28:43 +03:00
sterni
9a89446478 fix(web/tvl): consistently uppercase Profpatsch
Him and me floating on our own is kinda cute, but breaks the graph.

Change-Id: I043b327172781447bd0ce923e78e72f34bbff41b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3573
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2021-09-18 14:25:18 +00:00
Vincent Ambo
ec38839c33 feat(git-serving): Configure josh to serve the depot over HTTP
Previously we served the dumb git HTTP protocol from code.tvl.fyi via
cgit. This CL disables this feature and instead runs josh in the same
location (by redirecting appropriately), but while also enabling
partial cloning of all subtrees of the depot.

For example, after this CL the following would result in an
independent clone of //nix/readTree:

    git clone https://code.tvl.fyi/depot.git:/nix/readTree.git

Note that there are no josh workspaces configured at all for now,
these references are only for static depot subpaths.

Please refer to the documentation for josh for more information on
available kinds of josh filters.

Josh state is kept in a systemd state directory in /var/lib/josh and
backed up to Restic. Backing this up is necessary, as josh uses
stateful information to do things like tracking merges and rewriting
history per subtree appropriately to avoid cloned repositories ending
up in peculiar states.

Change-Id: I156f0298c2aa42e3bdbf5a0e86109070d640c56e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3563
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
2021-09-16 20:34:05 +00:00
Vincent Ambo
f35afb0e4a chore(cgit-taz): Disable HTTP git serving
We don't need this anymore as josh will be doing it instead.

Change-Id: I04324324fefa2b44604a8a5fad4dd3c7b7fe97a3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3564
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
2021-09-16 20:34:05 +00:00
sterni
c0e4b863c7 refactor(web/tvl): translate to markdown
This is mostly equivalent, but we need to accomodate cheddar a bit:

* cheddar doesn't like markdown inside of HTML, so the <main> tag
  around the image needs to go.

* cheddar messes with a top-level SVG for some reason, so we need to
  wrap it in a <div> in order to prevent that.

Change-Id: If9ed516623e81e24f600ee9f1b6d4d611b5bcedd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3117
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-09-15 12:55:45 +00:00
Vincent Ambo
2c35244d16 feat(web/template): Link to CI in TVL page footers
Change-Id: I53229374605774f34d3cfda2b071f65b79227a24
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3555
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2021-09-15 12:32:50 +00:00
sterni
318d10e608 chore(nint): move from //users/sterni to //nix
Since //web/bubblegum depends on nint, we need to move it to a non user
directory to conform with the policy established via cl/3434.
Note that this likely doesn't mean greater stability (which isn't
really implied in depot anyways), since I still would like to use a more
elaborate calling convention to allow for additional useful features.

Change-Id: I616f905d8df13e3363674aab69a797b0d39fdd79
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3506
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-09-10 11:08:03 +00:00
sterni
3a8925239a refactor(web/bubblegum): only rebuild examples on dependency change
Using sparseTree we can make a (surprisingly long) list of things from
depot the examples depend on and create a stripped down depot version
which only contains them. As a result the examples are no longer rebuilt
on every commit.

Change-Id: I3693570ca4bdbbf9da795e552f278f3b1b1b77a9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3504
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2021-09-09 15:57:58 +00:00