cl.snix.fyi/q/$ID where $ID ≤ 30K will redirect (301) to
cl.tvl.fyi/q/$ID to keep the old links working.
Change-Id: I27b496a1c52a3de3d106292ba7a2931b0f15fa49
Signed-off-by: Ryan Lahfa <raito@lix.systems>
This adds a new Website/Docs for Snix, using Thulite / Doks, which is
mostly hugo and a bit of npm.
Change-Id: Iea10d4068fa783ec0ddd6bcaba5c8d92b1a1168f
This reverts commit 9c159d65ca.
We don't override Nix, so there's no need to create another instance of
nixpkgs to workaround that.
Change-Id: I8d8fd467b7fdd924d8c72d52775bebe19fa41e8e
castore using linux-specific fuse options that are not available on
darwin. Made those options to apply only on linux.
Change-Id: I75b3b6dae62b7bdda318ed99fdf6cf5353cb1ca9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13272
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
We want to be able to play the files directly from the web
browser (jukebox).
Luckily, transmission does not seem to change the filenames from the
ones given by the torrent file, so we can literally parse the torrent
file and construct a path to the media file, extraordinary.
Adjusts the caddy reverse proxy to serve the given transmission
directory (using my weird sshfs forwarding scheme in the shell.nix
preset lol), then redirect from a handler that maps from
torrentId/fileId to the actual file.
Change-Id: Iab5faf7cc06066f3253031af31e137c0e28f54e3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13270
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Gets rid of the giant bootstrap dependency and replaces it with a
little CSS file that formats our table nicely.
Change-Id: I3e0bb552481503679e7b229c4feaa4e9805f5eae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13269
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
We don't need to be as verbose with the types, we can use Ok::<_,Status>
inside the async block.
Change-Id: Ibc92a9f7bdbc5031806b7eca82a01e2c7cb48c0a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13264
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Tested-by: BuildkiteCI
We don't do any cloning of self in here.
Change-Id: Id6d4aed25244f5a18eb663ad8686fab4c6aaf20b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13263
Reviewed-by: edef <edef@edef.eu>
Tested-by: BuildkiteCI
Autosubmit: flokli <flokli@flokli.de>
Before uploading a blob, a client usually checks whether a blob exists
via the stat method. We return a NotFound if it's not present.
Our TraceLayer currently considers this an error, logging a message.
This gets very noisy. Exclude InvalidArgument and NotFound, this is
expected behaviour.
Change-Id: I7da22a41fc6f3b8d422521a01530fc9e638e33ba
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13257
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
Autosubmit: flokli <flokli@flokli.de>
This means we don't need to clone self in all implementations using
SimplePutter.
Change-Id: I11347028801c43c5cc9920c0a9edf47627096bce
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13262
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: edef <edef@edef.eu>
Tested-by: BuildkiteCI
We don't need an owned version of the database, a reference is
sufficient.
Change-Id: I84d10ad39c1db28f4f1dda26514c04418db48a27
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13261
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
We can share the base_path with the DirectoryService.
We cannot share self.object_store, as object_store::buffered::BufWriter
wants an Arc<dyn DirectoryService>.
Change-Id: Icfe9d256774de48bb3b4d8afd32620a8188ecfdb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13260
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
We can require DirectoryPutters to not outlive the DirectoryServices
they originated from.
This allows borrowing some data from there.
Change-Id: I82a4c17b06b3b0ae5cf84d35561f1aae049a2cdc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13259
Tested-by: BuildkiteCI
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: edef <edef@edef.eu>
This does import the contents into the store, so it should belong in there.
While moving, I also noticed the code copying to the BlobService can be
shared with the one used when importing a blob via import helper.
It was a bit hidden - due to the contents being available as a bytes, we
used a Cursor and wrote it with tokio::io::copy.
However, Cursor implements both AsyncRead and Read, so we can factor out
the copying code into a copy_to_blobservice helper function and use it
in both places.
The output name being wrong error kind arguably is still a bit misplaced
here, but that's left for later.
Change-Id: Iec3c422c12270ee111f864d2b78c0861f78edfa4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13254
Reviewed-by: Domen Kožar <domen@cachix.org>
Tested-by: BuildkiteCI
Reviewed-by: raitobezarius <tvl@lahfa.xyz>
We cannot just escape the square brackets as rustdoc suggests, because
clap outputs the docstring verbatim, without any escaping to the user.
Change-Id: I7ce7932e35ee1b01bccbc142a7bdc7af9ce7e51e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13256
Tested-by: BuildkiteCI
Reviewed-by: Marijan Petričević <marijan.petricevic94@gmail.com>
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: Domen Kožar <domen@cachix.org>
This modifies the EvaluationBuilder, not Evaluation.
Also add some missing builtins from the docstrings.
Change-Id: Ibf76b496874158fb85b21e52e7c3561e66cffaba
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13253
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Reviewed-by: Domen Kožar <domen@cachix.org>
builtins.filterSource and builtins.path itself are very short these
days, and use the same underlying (private) helper function.
Describing builtins.filterSource with builtins.path won't lead to less
code, so this TODO can be dropped.
Change-Id: I5457949136e19204b32c8182b6c89e66cc2183e2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13252
Reviewed-by: Domen Kožar <domen@cachix.org>
Tested-by: BuildkiteCI
Reviewed-by: Marijan Petričević <marijan.petricevic94@gmail.com>
Autosubmit: flokli <flokli@flokli.de>