Commit graph

20985 commits

Author SHA1 Message Date
Yureka
caf597db81 refactor(tvix): move refscan module to castore
This is required to add the optional refscanner parameter to the
ingest functions.

Change-Id: Ib40a7287cf857eb55e31e0df309a79474fefb518
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12527
Autosubmit: yuka <yuka@yuka.dev>
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
2024-09-27 20:39:58 +00:00
Vincent Ambo
ed2bd88850 style(tazjin/dotfiles): more authentic win95 waybar styling
Brings this a LOT closer to the Windows95 style theming that I'm trying to
achieve with the whole thing.

Change-Id: Ifb457a682cb83a78e4a8e2ba2bb4a5b96f3eaf1f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12525
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-26 23:27:46 +00:00
Vincent Ambo
d0344a0e27 chore(3p/sources): bump channels & overlays (2024-09-25)
Change-Id: I605ca6befee5444901e5a396d626e7b5a9b9a4df
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12505
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2024-09-26 23:27:29 +00:00
Vincent Ambo
143f35e003 feat(whitby): switch from nix-serve to harmonia for the cache
Harmonia is, ostensibly, faster and better and, most importantly, not a giant
pile of wonky Perl.

I've tested locally that Harmonia works with Nix 2.3 (on both ends), so I think
we should be good to go here.

We have a vendored copy of the upstream module for now. We need to fix Nix 2.3
compatibility in upstream for the module, but the service itself works fine.

Change-Id: I3897bb02b83bd466b6fe7077c05728ac49ea4406
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12517
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: sterni <sternenseemann@systemli.org>
2024-09-26 23:27:29 +00:00
Vincent Ambo
2c2a6c9060 feat(tazjin/home): put niri config in place automatically
This is now stable enough that I can put it under home-manager management.

Change-Id: Ifd92ca8951e0adfddf962a4cd845c3e4fe80cc21
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12516
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-26 16:34:50 +00:00
Vincent Ambo
7f9ad826af fix(tazjin/home): fix swayidle launch order
Change-Id: I2744ae2cef7fc59705b910f48e25289fdea4494d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12515
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-26 16:34:50 +00:00
Vincent Ambo
bd5d07c49e style(tazjin/dotfiles): theme dunst to not look like crap
The previous config was copy&pasted from somewhere, this config makes it look
like an actual thing instead. Much nicer!

Change-Id: I8eb68149964376d6dbe4cef53e86030b5357d17d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12514
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-26 16:34:50 +00:00
Florian Klink
2180e6b820 fix(tvix/castore): don't return object_store::has with INFO level
This otherwise spams the logs quite a bit, for example when uploading
to nar-bridge with the new check from cl/12497.

Change-Id: Idc2bcc513caea6fae38ae04489e4e3ee7be64bce
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12510
Reviewed-by: yuka <yuka@yuka.dev>
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
2024-09-26 15:03:40 +00:00
sinavir
9f36632509 feat(tvix/store): Add a signing PathInfoService
- Add a new PathInfoService implementation that wraps transparently
around another except that it dynamically signs all the incoming
path-infos with the provided signer.

- Add a ServiceBuilder for this PathInfoService that provides a
SigningPathInfoService with a keyfile signer

Change-Id: I845ddfdf01d14c503c796b2b80c720dab98be091
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12032
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: sinavir <tvix@sinavir.fr>
Tested-by: BuildkiteCI
2024-09-26 12:29:03 +00:00
Yureka
e4378f0143 feat(tvix/store): seekable nar renderer
Co-authored-by: edef <edef@edef.eu>
Change-Id: I233206e8aae35504ca0519ac88178dfc5596bedb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12439
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: yuka <yuka@yuka.dev>
Tested-by: BuildkiteCI
2024-09-25 19:23:45 +00:00
Yureka
6deff4d8e9 refactor(tvix/store/tests): combine tests into one parametrized function
Change-Id: I9ff43b29be68b9840c58286da96fa52927691804
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12507
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
2024-09-25 19:07:54 +00:00
Ilan Joselevich
c1e69e260d feat(tvix/eval): Use thiserror for ErrorKind and CatchableErrorKind
thiserror is much more easier to maintain than manually implementing Error and Display.

Change-Id: Ibf13e2d8a96fba69c8acb362b7515274a593dfd6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12452
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: Ilan Joselevich <personal@ilanjoselevich.com>
Tested-by: BuildkiteCI
2024-09-25 18:18:37 +00:00
Vincent Ambo
1bdf5c0c11 chore(tazjin/cursed): don't build this in CI
Change-Id: Id98daf11a4325ecc077a7c30518066aecfad8182
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12508
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-25 12:04:45 +00:00
sinavir
0f92400112 fix(tvix/nar-bridge): Remove name check for root node in nar generation
Nar-bridge tried to parse the name of the protobuf node encoded in the
URL into a PathComponent but this name was empty, leading to an error
when the user tried to retrieve the nar file.

This was an oversight from the conversion to stricter types (some of the
CLs in the serious containing cl/12217).

We need a version converting a protobuf without a name to our stricter
types, but an empty PathComponent cannot be constructed.

So we need a into_name_and_node() version that returns the name as
Bytes, not PathComponent.

Change-Id: I2996cdd2e0107133e502748947298f512f1cc521
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12504
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
2024-09-24 09:45:33 +00:00
Yureka
cd0c3a96ab feat(tvix/nix-compat/nar/writer/sync): add file_manual_write
This is useful for building other NAR writers which use custom (async or optimized) I/O to write the blob parts of the NAR.

Change-Id: I447c09914fb0c99044e2fa910d4213660dc51c64
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12437
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
2024-09-23 12:13:00 +00:00
Vincent Ambo
6f028165f2 chore(tazjin/koptevo): allow other device's public keys
Change-Id: I4955c2cde3cb1ec4d7b72eaaf7f6acc80150dd73
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12503
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-23 07:20:19 +00:00
Vincent Ambo
07e5d6b138 fix(tazjin/koptevo): bind quassel on IPv6, too
This should make it possible to use Quassel over Yggdrasil.

Change-Id: Iad81af7c85771928fd50860393d58a14d7878a40
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12502
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-23 07:15:16 +00:00
Aspen Smith
a15760671d feat(aspen/system): Move metrics to ogopogo, refresh
Change-Id: I93ddc961b473e15febe22a16879875dbd926236a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12501
Autosubmit: aspen <root@gws.fyi>
Tested-by: BuildkiteCI
Reviewed-by: aspen <root@gws.fyi>
2024-09-22 20:39:17 +00:00
Aspen Smith
bf4f1a43e5 feat(aspen/system): Reinstate ddclient, migrate to ogopogo
ddclient is back in nixpkgs and nixos[0], so let's just use that, and
remove the backported package from third_party.

[0] 8a8ec36615

Change-Id: Ib14ab68158a6799c78d71e3bea63869ec9fc1a48
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12500
Tested-by: BuildkiteCI
Reviewed-by: aspen <root@gws.fyi>
Autosubmit: aspen <root@gws.fyi>
2024-09-22 20:38:46 +00:00
Vincent Ambo
0320d778d9 chore(ops): remove volgasprint cache machine
Change-Id: I1030393d843f03af3617487fc70829fcca792839
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12499
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: aspen <root@gws.fyi>
2024-09-21 15:10:03 +00:00
Florian Klink
21e5fc024d fix(tvix/castore/import): check small blobs first
ConcurrentBlobUploader buffers small blobs in memory, and then uploads
them to the BlobService in the background.

In these cases, we know the hash of the whole blob, so we could check if
it exists first before, uploading it.

We were however not, and this caused rate limiting issues in GCS, as it
has an update limit of one write per second on the same key, which we
ran into especially frequently with the empty blob.

This reduces the amount of writes of the same blob considerably.

In the future, we might be able to drop this, as our chunked blob
uploading protocol gets smarter and covers these cases.

Change-Id: Icf482df815812f80a0b65cec0426f8e686308abb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12497
Tested-by: BuildkiteCI
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: Connor Brewster <cbrewster@hey.com>
2024-09-19 12:51:09 +00:00
Vincent Ambo
1f5a20736a chore(3p/sources): bump channels & overlays (2024-09-17)
* users/aspen: disable readyset overlay

  sysbench + postgresql is broken, which breaks the overlay, but I suspect the
  overlay is no longer needed

Change-Id: I1845370c88f5fab35fd700535e6fb0972a4ca556
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12494
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: flokli <flokli@flokli.de>
Reviewed-by: aspen <root@gws.fyi>
2024-09-17 21:16:21 +00:00
Vincent Ambo
e2aa81c0b2 chore(tazjin/dotfiles): reduce gaps
Change-Id: Ia73627328c8ebb6e3e4decf9236f4c155f1c4669
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12496
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-17 16:23:50 +00:00
Vincent Ambo
29f160963e chore(tazjin/niri-reap): bump to niri 0.1.9
This is a stable release that has the IPC features this crate depends on.

Change-Id: I4aaba076a53d7a95a00dd2d59a02c69af6c4d63a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12495
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-17 16:23:50 +00:00
Vincent Ambo
e04bbe92a0 fix(tazjin/koptevo): fix yggdrasil listening configuration
Change-Id: Ic7b89fc61f7d5b74e420ae633b2ced26c20909c3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12492
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-16 08:20:45 +00:00
Vincent Ambo
684a06ac3c fix(tazjin/dotfiles): ensure EDITOR=emacsclient is set
Change-Id: I5ab162545493367c0e92c7737800c0c5e23f221e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12491
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-15 00:42:12 +00:00
Vincent Ambo
9b6ebb947b fix(3p/radicle-explorer): remove dependency on plausible
This is some sort of calling home analytics thing. Lets not have that.

Change-Id: I59fcf747c8269052dd3d346bb0873adc38834803
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12490
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-15 00:25:02 +00:00
Vincent Ambo
10c2866ccd fix(tazjin/nixos): set rad.tazj.in as preferred seed in explorer
This requires overriding build-time configuration, so I've added a little fixed
point that takes care of that.

Change-Id: Ie990e362c6e00aa6e3be66b04af4b62034b03515
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12489
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
2024-09-15 00:18:28 +00:00
Vincent Ambo
767bc726ef feat(tazjin/nixos): serve radicle explorer UI on koptevo
Change-Id: Ie5075ee8d2663bfffb3f90388a46f9bc19f6e462
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12488
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-14 23:47:29 +00:00
Vincent Ambo
e737488d92 feat(3p/radicle-explorer): package radicle web interface
For some reason this is not included. The build is based on their experimental
Nix code upstream which I copy&pasted and modified a bit.

Change-Id: I523f9e90a3f5feca0deb317eec1d5283e2a3ca98
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12487
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-14 23:47:29 +00:00
Vincent Ambo
af6dc48971 feat(tazjin/nixos): run Radicle seed node & httpd on koptevo
Change-Id: Icd433f433c0abe8f54735ab45a636b4561fe8d3e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12486
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-14 23:47:29 +00:00
Vincent Ambo
0022285600 feat(tazjin/nixos): set up yggdrasil on all physical machines
Change-Id: I1d722c6d2e6192c445e77cb9b186a5320c2a60ec
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12485
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Vincent Ambo
c9eeb7da70 feat(tazjin/nixos): serve homepage on yggdrasil
First test of running an Yggdrasil service, lets see how that goes!

Change-Id: Iac10b72f7314a45df13ea539c5c1cef6c994154f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12484
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Vincent Ambo
7593592241 chore(users/tazjin): move my homepage module into //users
This was in //ops for legacy reasons, but this is really not necessary.

Change-Id: I758b257838993ef0f7d55809c137118826e2ba85
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12483
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
2024-09-14 23:47:29 +00:00
Vincent Ambo
7f5956b2be feat(tazjin/koptevo): configure yggdrasil network
I'm looking to replace tailscale with this for some use-cases.

Change-Id: I00f765a403879ef048e635a6fedcfdde3f685159
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12482
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Vincent Ambo
adf8a7da87 feat(tazjin/nixos): issue wildcard cert for yggdrasil services
Issue a wildcard certificate using the Yandex Cloud DNS plugin (which is where
DNS for tazj.in is hosted).

Change-Id: I44fa48add660f4f4324ec4b056a81d78c45ff4f4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12481
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2024-09-14 23:47:29 +00:00
Profpatsch
e5edb3b192 feat(users/Profpatsch/lyrics): fall back to plain lyrics
if there are not synced lyrics.

Change-Id: I3e8d452fc63847505886ea0bb01d29dd5dcb56d1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12477
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-09-13 13:44:03 +00:00
Profpatsch
e826ffb19c feat(users/Profpatsch): add lyric
Change-Id: I3171d19f1cd550ef22a3a7e851f9d27d3bf34949
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12476
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 13:44:03 +00:00
Profpatsch
5c57529675 feat(users/Profpatsch): add xdg-cache-home
Change-Id: I0f4efa16426f590cee9332d11c13dd07569b4acb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12475
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 13:44:03 +00:00
Profpatsch
af5ce5489f chore(users/Profpatsch): remove git-db & rust deps
This never went anywhere.

We had problems with `git2` breaking, so let’s remove everything that
this pulled in.

Change-Id: Ia29d827cd6fc7b97aedca36a37f8418384579c38
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12474
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-09-13 12:06:12 +00:00
Profpatsch
fcd4bfccdf fix(users/Profpatsch/README): typo
Change-Id: I7176289cd7884e795cfe283fc1ec3fcc674acae6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12473
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 11:13:59 +00:00
Profpatsch
1bddd9a001 fix(users/Profpatsch/.gitignore): add nix results
Change-Id: I44322b61b0653220173c3b5008ffa0ff727cfd35
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12472
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 11:13:59 +00:00
Profpatsch
9d02fc4ff1 feat(users/Profpatsch/MonadPostgres): add unzipPGArray fns
Change-Id: I47ae3520998c1da7a8ad34231fd5af39240a771d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12471
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-09-13 11:13:59 +00:00
Profpatsch
f49e047588 fix(users/Profpatsch/whatcd-resolver): refresh table on delete
Instead of serving a stale table when a torrent gets deleted, fetch
the whole view again. This is a little wasteful, but torrents
shouldn’t get deleted very often, so it’s fine.

Change-Id: If33d517270421881852158f27dbc3e7d24880d3b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12333
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 11:13:59 +00:00
Profpatsch
f6dc1f1819 fix(users/Profpatsch/whatcd-resolver): also delete db torrent file
If transmission does not know about a torrent file anymore, we should
not only delete our local transmission torrent hash, but also the
torrent file.

Before, it would always display the old weighted torrent, even after
removing it from transmission. Now, it will automatically clear and
switch to the new top-weighted mp3 version.

Small bug: since we only clean the torrents after already fetching the
table data, we get a stale result right after clean-up. Maybe we
should re-do the fetch instead.

Also logs what gets deleted and only ever deletes if there is
something to delete, leading to more obvious traces.

Change-Id: I0f6c1dc3669d0f549efaba2c46c34b77c1eb7e33
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12332
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 11:13:59 +00:00
Profpatsch
861b7caa06 feat(users/Profpatsch/whatcd-resolver): add format to table
Change-Id: I6ca18ad9f73a8e75e4bfb77156d19604ab27b284
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12331
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-09-13 11:13:59 +00:00
Profpatsch
95640e7be4 fix(users/Profpatsch/whatcd-resolver): prefer downloaded torrents
I changed the seeding weight, so now it would not show already
downloaded torrents, prompting me to fetch stuff that I already have
in new qualities. Obviously, that’s not the best idea.

Kinda surprised it’s this easy to fix heh.

Change-Id: I6bbf325672a91d794d144c006ccf3d702a581bce
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12330
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-09-13 11:13:59 +00:00
Profpatsch
9e2ecf9101 chore(users/Profpatsch/whatcd-resolver): ignore .ninja
Change-Id: I1b89161c9b4b763abcf74bd19f03275f987924ca
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12329
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 11:13:59 +00:00
Profpatsch
2edafd0a5a fix(users/Profpatsch/whatcd-resolver): set empty favicon
Change-Id: Id1fbcb39579f2d3c68989e4395cdadaa04790cec
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12328
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 11:13:59 +00:00
Profpatsch
b800bf2bd4 fix(users/Profpatsch/whatcd-resolver): pretty AppException
AppException would be a console-pretty-printed version for http
errors, which would print all the escape codes in the jaeger traces of
the exception, making it more-or-less unreadable.

So instead, let’s make AppException two cases, an ErrorTree case which
is printed as-is (no color), and a “Pretty” case which is printed
using the pretty module (colors on console, no colors in otel).

Somewhat involved, I guess this is temporary until I figure out what
is really needed.

Change-Id: Iff4a8651c5f5368a5b798541efc19cc7ab9de34b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12232
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
2024-09-13 11:13:59 +00:00