Move the functionality into two coarse modules.
There’s still the question about whether functions that change the
database tables should be in their own storage module, but let’s see
if it gets too confusing.
Change-Id: Ied1d47b353dd4597ffea35f111f440aad22e981d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11238
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: Profpatsch <mail@profpatsch.de>
Turns out there's some fancy extra features like syncing the shell and
the buffer directory, which ezemtsov discovered recently.
Change-Id: Ibb6f222d277e2cb3725387364d43e7b916b6df35
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11216
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Adding a VM integration test setup for tvix-daemon. This test acts as
our first milestone: implementing enough daemon operations to be able
to add a new store path to tvix-store.
The test is expected to fail for now. We don't want to run it on CI
yet.
Change-Id: I2bd8eb9a07c5de2ef91099e10fcac23c087b880b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11199
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
This daemon is a re-implementation of the Nix daemon except it uses
tvix-store as a remote store.
For now, it's very barebones, this is just a quick and dirty setup to
get started with the project. We bind to the unix socket provided by
systemd, wait for cpp Nix to send the magic hello bytes, respond with
the magic hello bytes and call it a day.
Storing this under my username for now, the project is mostly
irrelevant as it is. We'll move it to Tvix if it gets complete and
relevant at some point.
Change-Id: Ifc5dce2df37413504f9de1942c5b7d425eddf759
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11198
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
This allows testing the camera connection without pipewire in between:
```
LIBCAMERA_LOG_LEVELS=*:DEBUG qcam
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
[0:26:31.326112005] [51496] INFO IPAManager ipa_manager.cpp:143 libcamera is not installed. Adding '/nix/store/src/ipa' to the IPA search path
[0:26:31.326354338] [51496] DEBUG IPAModule ipa_module.cpp:334 ipa_ipu3.so: IPA module /nix/store/da6s46p3dk9x7fhh0qj0wrxrqrq7y8av-libcamera-0.2.0/lib/libcamera/ipa_ipu3.so is signed
[0:26:31.326417399] [51496] DEBUG IPAManager ipa_manager.cpp:245 Loaded IPA module '/nix/store/da6s46p3dk9x7fhh0qj0wrxrqrq7y8av-libcamera-0.2.0/lib/libcamera/ipa_ipu3.so'
[0:26:31.326484670] [51496] DEBUG IPAModule ipa_module.cpp:334 ipa_soft_simple.so: IPA module /nix/store/da6s46p3dk9x7fhh0qj0wrxrqrq7y8av-libcamera-0.2.0/lib/libcamera/ipa_soft_simple.so is signed
[0:26:31.326518633] [51496] DEBUG IPAManager ipa_manager.cpp:245 Loaded IPA module '/nix/store/da6s46p3dk9x7fhh0qj0wrxrqrq7y8av-libcamera-0.2.0/lib/libcamera/ipa_soft_simple.so'
[0:26:31.326559430] [51496] INFO Camera camera_manager.cpp:284 libcamera v0.2.0
[0:26:31.326728389] [51505] DEBUG Camera camera_manager.cpp:69 Starting camera manager
[0:26:31.345213320] [51505] DEBUG DeviceEnumerator device_enumerator.cpp:230 New media device "intel-ipu6" created from /dev/media1
[0:26:31.345249850] [51505] DEBUG DeviceEnumerator device_enumerator_udev.cpp:96 Defer media device /dev/media1 due to 36 missing dependencies
[0:26:31.350335759] [51505] DEBUG DeviceEnumerator device_enumerator_udev.cpp:322 All dependencies for media device /dev/media1 found
[0:26:31.350365700] [51505] DEBUG DeviceEnumerator device_enumerator.cpp:258 Added device /dev/media1: intel-ipu6
[0:26:31.350738881] [51505] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'SimplePipelineHandler'
[0:26:31.350765332] [51505] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerIPU3'
[0:26:31.350779457] [51505] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerUVC'
```
Change-Id: I30b4ede89f90e2455bf1313b3c7c4d638089e5db
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11180
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Refresh them with the patches from
https://patchwork.libcamera.org/cover/19663/.
This is still based off v0.2.0.
Change-Id: I875fd64e3bb71a95c92af1108a23d27c0f3494e0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11179
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: flokli <flokli@flokli.de>
This ensures we also test building pipewire.
Change-Id: I7527ca2e4259f26fecd453f5da5d91bbd3862bb3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11178
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
In hope that iwlwifi works again on this commit, and I don't actually
have to debug it.
Includes following changes:
* users/aspen: home-manager is shuffling around pinentry options again
* users/flokli: rebase ipu6-softisp patches to Linux 6.8
make cl/11097 a separate patch
* ops/modules: remove unused (and now broken) v4l2loopback module
Co-Authored-By: Florian Klink <flokli@flokli.de>
Change-Id: I763f1f075778f2ed8db7803f87248c9dabde4213
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11174
Reviewed-by: tazjin <tazjin@tvl.su>
Reviewed-by: aspen <root@gws.fyi>
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Some json+ld objects cannot be expanded any further, they are missing
the `@id` tag. Now we also render them as objects.
Change-Id: I1c8f26f3c34e69420c349e66a3ce5a36dc55a1ea
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11173
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Adds a little polling mechanism that compares against an ID that is
generated anew every time the server is restarted.
Works well together with shortcuttable.
Change-Id: Icc6745b599e43881c14349794feaf5794cfe6777
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11172
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Gives a story for running both jaeger and the reverse proxy, and the
program proper.
`postgres` is still run from the client.
Adds a little readme.
Change-Id: I11185028541c0214e152fd76c9c72b7e2eb11122
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11171
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Initial mockup for a tool which restarts its subprocess on SIGHUP, and
stops everything on SIGTERM and SIGINT.
Change-Id: Ie5260d73c2663d1821eb6623e2bc61d16f6c92cd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11168
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Small wrapper around `setsid(2)` that does not exist in the
execline-style tooling.
Is probably gonna fail iff our process is a session leader already,
but I haven’t tried that out yet.
Change-Id: I1a820f1c6d65ddc29c30995bfd56a760a9d6b341
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11167
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
This traces the target of a json+ld fetch.
We also simplify the telemetry stuff by using a pseudo-class
`MonadOtel` everywhere.
I wonder if we can get rid of passing the span to `assertM`, because
it’s kind of an antipattern to be honest.
Change-Id: I1448d643c909a29684fa1ae54037177ba2c20639
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11166
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
These functions are just general setup and html helpers, the main file
is getting a bit long otherwise.
Change-Id: I194e9f7f4caa4ce204d510c885dcf5af63d0e76e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11165
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
chore(users/Profpatsch/whatcd-resolver): use more from Label
New label version contains these helpers.
Change-Id: I3ef2ae9b92f2c798842ae001588b2c6d9f3ab971
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11162
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
This is like orderless but a million times better (no need for spaces!)
Change-Id: Id8d2382e1d83792959580bcbe807cdd9aebdde88
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11130
Reviewed-by: aspen <root@gws.fyi>
Autosubmit: aspen <root@gws.fyi>
Tested-by: BuildkiteCI
This function is inspired by BQN's [⍉] though it is much less elegant
since Nix lacks multi-dimensional arrays. I thought this would be useful
to to avoid multiple `map`s over a single list if we want to return
multiple, separate values from it:
transpose (builtins.map (x: [ (calcA x) (calcB x) ]) myList)
# => [ [ (calcA a) … ] [ (calcB a) … ] ]
While this is quite elegant, it turns out that it is faster to write out
multiple maps:
[ (builtins.map calcA myList) (builtins.map calcB myList) ]
[⍉]: https://mlochbaum.github.io/BQN/doc/transpose.html
Change-Id: Ic333c33af38ab03573b215c9696d75caf2ee18e7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11113
Reviewed-by: sterni <sternenseemann@systemli.org>
Autosubmit: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This introduces a NixOS configuration using config.nix as a NixOS
module, and also checks the firmware is present in the location it's
expected to.
Change-Id: I3ec4333d73fe1b28e10c589c1cf351c59372bb99
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11099
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
I haven’t thought about how to migrate this when the postgres version
changes, so for now we just pin to 14 and worry about it when we reach
EOL lol
Change-Id: Ib72ec7835c660db636a95fb5af8c9ce40897b1ce
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11085
Tested-by: BuildkiteCI
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
they switched to TOML & I had a typo in `scolling`
Change-Id: If68408162e7772fbd3b06944ffd9d51dd2134efa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11083
Autosubmit: Profpatsch <mail@profpatsch.de>
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
William is rarely active but sometimes has stuff we need to fix for
CI, so I'm removing the blocker on him.
Change-Id: I1de10c0fdf003de2896598519c53e66d29fd9d7e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11035
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
I'm still on doom, but without all the cruft I've accumulated over the
last ~6 years it's actually good and fast and nice. Also, the config is
literate now!
The old emacs is still in .emacs.d, since occasionally I want to
reference it, but eventually I'll just get rid of it
Change-Id: Icda840d798594f7e6b188dba044494597d5f6043
Reviewed-on: https://cl.tvl.fyi/c/depot/+/10999
Reviewed-by: aspen <root@gws.fyi>
Tested-by: BuildkiteCI
It seems linux, or my desktop environment don't support the
clipboard-related keycodes.
Replace them with Ctrl-C and Ctrl-V, which is good enough.
Change-Id: Ibac27b6e022157341ba6eb9f8f6ff62f9e97137b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11034
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
A recent change in nixpkgs introduced evaluation warnings if a systemd
service is configured to start after network-online.target, but does
not directly depend on it.
This is done because the existing dependency from multi-user.target to
network-online.target is being removed, leaving these services without
an actual dependency on the service.
This affected autosubmit (I added a weak dependency here, for now the
service is actually on the same host as Gerrit), and sterni's mirror
setup (I added a strong dependency here).
Change-Id: I88a4aa69f6788c489f59533d34be3c9cea681326
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11026
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This version is gonna be better for the Volga Sprint logo.
Change-Id: Ib33c9055e5171168c56634c0e4b3d0b0626014ff
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11025
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI