Commit graph

21807 commits

Author SHA1 Message Date
edef
3d95109328 refactor(eval/builtins/intersectAttrs): use kv iterator instead of unsafe get
We can just iterate key-value pairs for our merge sort, rather than
relying on unsafe to get us the value without costing us a presence
check.

Change-Id: I7145a1b2f33a8510de8d7fbd1a12804517a78042
Reviewed-on: https://cl.snix.dev/c/snix/+/30371
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-05-01 16:03:11 +00:00
edef
94ba112360 docs(snix/eval/intersectAttrs): simplify algorithm description
It's literally just an intersecting merge sort.

Change-Id: Icc59928091c48130a4616476fc103ef33aee21e4
Reviewed-on: https://cl.snix.dev/c/snix/+/30374
Reviewed-by: Florian Klink <flokli@flokli.de>
Tested-by: besadii
2025-05-01 16:03:11 +00:00
edef
0e32b4d72d feat(tvix/eval/benches): benchmark intersectAttrs
Change-Id: If5da2c4022758900a0d0167835ff7a61613e05a4
Reviewed-on: https://cl.snix.dev/c/snix/+/30373
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-05-01 16:03:11 +00:00
Florian Klink
853754d25f feat(ops/modules/www/git.snix.dev): block AI scrapers
This blocks a bunch of AI scrapers from Forgejo, which seems to be
particularly attractive.

Especially meta-externalagent has been scraping very excessively.

The list comes from https://github.com/ai-robots-txt/ai.robots.txt,
let's see how often this needs updating.

Change-Id: I55ae7c42c6a3eeff6f0457411a8b05d55cb24f65
Reviewed-on: https://cl.snix.dev/c/snix/+/30370
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: edef <edef@edef.eu>
2025-05-01 14:57:44 +00:00
Starnick4444
c501361412 chore(cli): upgrade cli to 2024 edition
Part of #114
cli doesn't contain any unsafe

Change-Id: I65b573be5f9ff5c93b813a930df908d6aea6c799
Reviewed-on: https://cl.snix.dev/c/snix/+/30365
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-05-01 08:01:11 +00:00
Starnick4444
ef53fbfe3f chore(build): upgrade to 2024 edition
Part of #114
doesn't contain any unsafe

Change-Id: Icd1c0609f9a51721bd9a5d717ce71537d0f49702
Reviewed-on: https://cl.snix.dev/c/snix/+/30366
Autosubmit: Bence Nemes <nemes.bence1@gmail.com>
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-05-01 07:39:38 +00:00
Florian Klink
dcadf3cb5b fix(3p/overlays): downgrade hugo
Without this, the website just shows a white page with a "This line is
from …" message. Downgrading hugo to 0.145.0 fixes it.

Change-Id: I5a4e2b5d00d3772580daf8d863375471979a5825
Reviewed-on: https://cl.snix.dev/c/snix/+/30368
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Bence Nemes <nemes.bence1@gmail.com>
Tested-by: besadii
2025-05-01 07:36:08 +00:00
Florian Klink
56c3a5d24d fix(ops/modules/o11y): remove anonymous auth org_name
This doesn't seem to do anything, and logs a warning on startup.

Change-Id: I4d883f2a95d5934bc3dc2998a497f3c2a8ff857d
Reviewed-on: https://cl.snix.dev/c/snix/+/30364
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Ryan Lahfa <masterancpp@gmail.com>
Tested-by: besadii
2025-04-30 20:22:13 +00:00
Florian Klink
5f3fd9385d fix(ops/modules/tempo): drop keepalive from extraConfig
It seems this now gets added automatically, and causes nginx to fail
with an emergency due to the directive being there two times.

Drop one of it, which gets nginx to boot up again.

Change-Id: I0df3c2f7c2cfbe23d717249570d5a4d1a7fe2f2b
Reviewed-on: https://cl.snix.dev/c/snix/+/30363
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Ryan Lahfa <masterancpp@gmail.com>
2025-04-30 20:21:42 +00:00
Florian Klink
ca23b17680 refactor(ops/machines): switch from grafana-agent to alloy
grafana-agent has been removed, but the failing eval was missed due
to #80.

Change-Id: I87cfc71c8c98e27e32f4e95e4d85901195cb5b75
Reviewed-on: https://cl.snix.dev/c/snix/+/30347
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Ryan Lahfa <masterancpp@gmail.com>
Tested-by: besadii
2025-04-30 20:21:42 +00:00
Florian Klink
b2fa87f344 fix(ops/machines/*): fix leftover usages of depot.automatic-gc
This was missed, due to #80.

Change-Id: I3b10fa615c09fdd9887c63c847cfd70f5a80d277
Reviewed-on: https://cl.snix.dev/c/snix/+/30346
Tested-by: besadii
Reviewed-by: Ryan Lahfa <masterancpp@gmail.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-30 20:20:12 +00:00
Florian Klink
088296c52c refactor(ops/modules/o11y/agent): drop bearerTokenFile option
This option is not used, we can reintroduce it when needed.

Change-Id: Ie0f90ea7fc84f493f0c73de29ddf200c1184cb40
Reviewed-on: https://cl.snix.dev/c/snix/+/30345
Tested-by: besadii
Reviewed-by: Ryan Lahfa <masterancpp@gmail.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-30 20:20:12 +00:00
edef
ca964623b1 docs(nix-compat): our keys are not all that musical
Change-Id: I93145d983ac897c91e15fded2b1810d0b755967c
Reviewed-on: https://cl.snix.dev/c/snix/+/30340
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-04-30 09:56:29 +00:00
Florian Klink
98703f7a41 chore(snix): configure rustfmt for edition 2024 crates
Add a rustfmt.toml to all the crates that are already migrated to
edition 2024.

Initially proposed in cl/30341.

Fixes #115.

Change-Id: I9f58cd45e38fec3acbb077492d5402e30560996b
Reviewed-on: https://cl.snix.dev/c/snix/+/30343
Tested-by: besadii
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Domen Kožar <domen@cachix.org>
2025-04-30 08:44:07 +00:00
Thomas Koch
b39d7abc5a fix(tools/depotfmt.nix): double specification of edition
There already is a rustfmt.toml in the depot root specifying the edition.
Removing the option enables projects in the depot to update to newer
editions independently.

Fixes: https://b.tvl.fyi/issues/442
Change-Id: I15d30f69040a4ec327fd099c508e5c11cec2aecc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13347
Reviewed-by: thk <thomas@koch.ro>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-on: https://cl.snix.dev/c/snix/+/30342
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Domen Kožar <domen@cachix.org>
2025-04-30 08:42:36 +00:00
Florian Klink
7ffd2ea502 feat(ops/machines/build01): enable automatic GC
Fixes #109.

Change-Id: I8bcf4f9900a34b6d07f1e70ada22de6e398f6203
Reviewed-on: https://cl.snix.dev/c/snix/+/30339
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2025-04-29 10:06:23 +00:00
Florian Klink
11b1f8b304 chore(ops/modules): drop unused NixOS modules
Change-Id: I043fea952df5498cd3e831b479220b1025a295fa
Reviewed-on: https://cl.snix.dev/c/snix/+/30338
Tested-by: besadii
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2025-04-29 10:05:23 +00:00
Florian Klink
71d7185dcd fix(snix/cli): don't print progress bars all the time
We only really want to report progress when something takes a meaningful
time, and that's only while eval.evaluate is called.

We also don't want to show progress bars when
--dump-bytecode or --trace-runtime is enabled.

Even with the changes in cl/30234 not clobbering progress bars, having
progress bars interleaved with other lines from these observers is not
helpful.

Fixes #84 and #113.

Change-Id: I853d7f69757250afaa38e0b172b0c0186bf655a0
Reviewed-on: https://cl.snix.dev/c/snix/+/30337
Reviewed-by: Florian Klink <flokli@flokli.de>
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Bence Nemes <nemes.bence1@gmail.com>
2025-04-27 12:18:14 +00:00
Florian Klink
09c1e3d25b feat(ops/keycloak): allow log in with Bornhack account
This adds bornhack.dk as an OIDC provider.

We currently do not yet map the `nickname` claim as a username field.

This means users logging in via Bornhack need to choose their username
manually, until https://github.com/bornhack/bornhack-website/issues/1837
is solved.

Change-Id: Ia91594107a0cd1d1e0a2ee7ca48d603a2ac681a5
Reviewed-on: https://cl.snix.dev/c/snix/+/30326
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-26 11:58:25 +00:00
Florian Klink
154f85d3e7 chore(snix/castore-go): use any instead of interface{}
Address a lint.

Change-Id: I72a740943327d50186e0a1d1b9c42a150aa21dd1
Reviewed-on: https://cl.snix.dev/c/snix/+/30336
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2025-04-24 08:43:13 +00:00
Florian Klink
f630ce9b93 chore(3p/nixpkgs): bump channels (2025-04-21)
* Update Snix' verify-lang-tests to 2.28, as 2.25 has been removed
   from nixpkgs
 * Update snix/cli integration tests, iso_gnome is called iso_graphical
   (again?)
 * Address clippy lints
 * Regenerate go bindings
 * Remove grpc-health-check from our overlay, it's long been merged

Change-Id: I9d33cabdd3e7065a1f28bcccf4f979f08a456f88
Reviewed-on: https://cl.snix.dev/c/snix/+/30333
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
2025-04-24 08:42:42 +00:00
Florian Klink
cade3d989d chore(snix/*-go): regenerate
build-go and store-go currently are skipped from CI until someone finds
time to work on https://git.snix.dev/snix/snix/issues/60.

We can however still regenerate the bindings at least, so do this.

Change-Id: I626da69f26bff24cdf3c01581931045a44635116
Reviewed-on: https://cl.snix.dev/c/snix/+/30335
Tested-by: besadii
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2025-04-24 08:39:42 +00:00
Florian Klink
e2ff3783c9 fix(web): opt out subtree from readTree
We don't want readTree to descent inside web/, especially not in the
node_modules directory that might be present in local checkouts.

Change-Id: Ia1c2147a76f22560947d367f4e94e4c91bb66512
Reviewed-on: https://cl.snix.dev/c/snix/+/30334
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2025-04-24 08:39:11 +00:00
Florian Klink
048e9da83d docs(castore/why-not-git): update BLAKE3 references
Use the all-caps version, like in other places of the docs.

Change-Id: I74a21f9015ba128456f6ee0b652ad12056b4e88b
Reviewed-on: https://cl.snix.dev/c/snix/+/30329
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2025-04-18 19:18:12 +00:00
Florian Klink
21b5c8a7b7 fix(web/components/castore/data-model): fix links
Fix the broken link to PathComponent.

Write `[BLAKE3][]` instead of just `[BLAKE3]` to be consistent with
other links.

Change-Id: If8651de9d2401a81e47281216707e442b5ff1932
Reviewed-on: https://cl.snix.dev/c/snix/+/30328
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-18 19:18:12 +00:00
Florian Klink
32ef10a23b docs(snix/castore/path): fix docstring
This returns as a [PathComponent], not as bytes.

Change-Id: Ia6df19be6f3060b28f8be6b74f3f3f443a536f8a
Reviewed-on: https://cl.snix.dev/c/snix/+/30327
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Domen Kožar <domen@cachix.org>
Tested-by: besadii
2025-04-18 18:25:04 +00:00
Florian Klink
c9082a586c docs(web/snix/castore): port "why not git" document
Change-Id: I4ac77f264d2704018cd33dbf80746e82d193686e
Reviewed-on: https://cl.snix.dev/c/snix/+/30315
Reviewed-by: Domen Kožar <domen@cachix.org>
Tested-by: besadii
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-18 18:05:31 +00:00
Florian Klink
b2d2d622e0 docs(web/snix/castore): port castore data model
Also restructure this, explaining the Rust data types, and then
explaining the differences with the proto implementation, which uses
"entry" since cl/30296.

Change-Id: Ie264ab60998f0d891b4a4ea680a2d9dbe1c5929e
Reviewed-on: https://cl.snix.dev/c/snix/+/30314
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Domen Kožar <domen@cachix.org>
Tested-by: besadii
2025-04-18 18:05:31 +00:00
Florian Klink
d1990c9a93 refactor(snix/castore-http/cli): ask for root directory digest
Restrict the CLI to only root directories, passing the blake3 digest of
the root directory.

Usually we want to serve a directory, and we now have a `snix-castore
ingest` sucommand, and copying the output from that command is much less
effort than constructing a proto message.

More advanced usecases can still use the get_root_node_contents library
function and pass in other nodes.

Change-Id: I66c2c0a15723b43b5b0cffc1c201391df57dd602
Reviewed-on: https://cl.snix.dev/c/snix/+/30321
Reviewed-by: Stefan Junker <mail@stefanjunker.de>
Tested-by: besadii
2025-04-16 12:04:30 +00:00
Florian Klink
fd5f316fb8 feat(snix/castore-http): pass extension to respond_file()
respond_file only uses requested_path to (only) calculate an extension
for mime type guessing, and getting to there is a bit messy.

Use PathComponent::extension to get the extension, and replace
`requested_path: Option<std::path::Path>` with
`extension: Option<&str>`.

Change-Id: I0582a1127f8b505fdf77406fafb3d3b206d694f2
Reviewed-on: https://cl.snix.dev/c/snix/+/30320
Tested-by: besadii
Reviewed-by: Stefan Junker <mail@stefanjunker.de>
2025-04-16 12:04:30 +00:00
Florian Klink
15b1415860 feat(snix/castore/Path): add extension() method
This returns the extension, similar to the method we already have for
PathComponent.

Change-Id: Ia1719951c453c196beb991686dbee23bae1049af
Reviewed-on: https://cl.snix.dev/c/snix/+/30322
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Stefan Junker <mail@stefanjunker.de>
Tested-by: besadii
2025-04-16 12:04:30 +00:00
Florian Klink
8c525dcc2d feat(snix/castore/PathComponent): add extension() method
This returns the file extension.

Change-Id: I488cbadbce027a37d53cee808bcf7a95283ed07d
Reviewed-on: https://cl.snix.dev/c/snix/+/30319
Tested-by: besadii
Reviewed-by: Domen Kožar <domen@cachix.org>
Reviewed-by: Stefan Junker <mail@stefanjunker.de>
2025-04-16 12:04:30 +00:00
Marijan Petričević
6b48bcc1bf feat(snix/castore-http): initial implementation
The castore-http crate provides both a binary and a library interface to
serve a single castore root node over HTTP.

The library function `get_root_node_contents` will return a
`axum::Response` for a requested path in the castore root node
depending on the requested paths type.

If the requested path in the root node is a directory, we return:
- a index file if there is a file matching one of the configurable
  `index_names`
- a directory listing, if no `index_names` were configured and
  `auto_index` was enabled
- the FORBIDDEN status code if no `index_names` were set nor
  `auto_index` was enabled

If the requested path in the root node is a file,
we return the file.

If the requested path in the root node is a symlink,
we figure out wether the target exists and return a REDIRECT.

If the requested path doesn't exist in the root node,
we respond with NOT_FOUND

The binary wraps this functionality and allows one to specify the
desired root node by providing its base-64 encoded representation as
well as the other configuration parameters affecting the behavior of
`get_root_node_contents`.

Change-Id: I737482299f788ec0244c54b52042f9eb655a05c2
Reviewed-on: https://cl.snix.dev/c/snix/+/30245
Autosubmit: Marijan Petričević <marijan.petricevic94@gmail.com>
Reviewed-by: Marijan Petričević <marijan.petricevic94@gmail.com>
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-04-14 14:43:25 +00:00
Ilan Joselevich
bed42b59df chore: add .direnv to gitignore
This is similiar to `result` and should not be added to the repo.

Change-Id: Id700af309baf002d1dfb4798a446a74011437e2d
Reviewed-on: https://cl.snix.dev/c/snix/+/30313
Reviewed-by: Florian Klink <flokli@flokli.de>
Autosubmit: Ilan Joselevich <personal@ilanjoselevich.com>
Tested-by: besadii
2025-04-12 18:12:35 +00:00
Florian Klink
e214357d47 feat(snix/rust-docs): fail build if there's broken references
Thanks to cl/30305, we don't have broken references in the rust docs anymore.

Enforce for it to stay this way, by making the //snix:rust-docs target
fail if there's broken references.

References to private items (which we still have) are logged as
warnings.

Change-Id: I06e6fe3bec3d0c4e6af910685f9cd0650e67dc5c
Reviewed-on: https://cl.snix.dev/c/snix/+/30312
Tested-by: besadii
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Bence Nemes <nemes.bence1@gmail.com>
2025-04-12 15:17:41 +00:00
Florian Klink
0b127183e1 fix(snix/default.nix): fix comment
Rust docs are deployed to snix.dev/rustdoc, not docs.snix.dev.

Change-Id: I5910457608fa9db05c7ecb5c4b7f3c4260c04b8e
Reviewed-on: https://cl.snix.dev/c/snix/+/30311
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Bence Nemes <nemes.bence1@gmail.com>
2025-04-12 14:58:39 +00:00
Vova Kryachko
934b52c136 feat(snix-glue): Propagate build inputs correctly.
We previously used to calculate the transitive input closure of builds
using eval state, i.e. based on known_paths from the drv that is being
built. This caused had 2 issues:

* The build included a lot of unnecessary build time dependencies of drv's that
  the build depends on in addition to runtime dependencies.
* Some runtime dependencies were missing causing the build to fail, see #106

This implementation uses only runtime dependencies of direct
dependencies and makes sure to include any transitive runtime dependencies,
this is achieved by querying path_info_service for "references".

fixed #106

Change-Id: Id734bed7b0cf50e2dac96501a9bc70655ed15054
Reviewed-on: https://cl.snix.dev/c/snix/+/30308
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-04-11 21:48:50 +00:00
Starnick4444
851cfc7278 refactor(eval): add keys_sorted() to NixAttrs
builtins.toXML relies on attr keys being sorted, which is an
implementation detail.
Cppnix creates sorted xml, and tests expect it too, so changed that
iter call site.
builtins.attrNames and attrValues should also returns sorted lists, so
changed that too.

Change-Id: Ic706afc6855d5d28932ade7482449c965b0ae94f
Reviewed-on: https://cl.snix.dev/c/snix/+/30307
Reviewed-by: Florian Klink <flokli@flokli.de>
Tested-by: besadii
2025-04-11 11:45:42 +00:00
Yvan Sraka
ff72278529 feat(cli): add snix-castore utility
This is a small utility that allows ingesting a given path or .tar
file content into the snix-castore and returns the B3Digest of the
root node. Another subcommand takes this hash to mount the content
back as a virtiofs or FUSE drive.

This works as-is, but I discovered issue #107 while working on it.

Change-Id: I11df73e39ab0db6f3868effab9bde4f090eadcb5
Reviewed-on: https://cl.snix.dev/c/snix/+/30293
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-04-10 13:09:50 +00:00
Vova Kryachko
6118142b21 feat(snix-build/oci): Use user's subordinate ids in oci builds.
subuid/subgids used to be hardcoded, which resulted in build failures
if those did not match the ones of the effective user.

fixes #86

Change-Id: I3b0c3e9ef710aa9e3de998891abe10fd1a893189
Reviewed-on: https://cl.snix.dev/c/snix/+/30301
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-04-10 02:56:02 +00:00
Domen Kožar
acf614e884 chore: fix unreleased direnv bug
Change-Id: Ia23bb1ce5121ec2224f7c3daa439a56917f064c5
Reviewed-on: https://cl.snix.dev/c/snix/+/30306
Tested-by: besadii
Reviewed-by: Florian Klink <flokli@flokli.de>
2025-04-09 22:39:01 +00:00
Starnick4444
628f91827d docs: fix broken references in rust docs
Fixes #100

Change-Id: I03e09ac3a9b964a046a7fe17d0f9c7c0bdac5c6d
Reviewed-on: https://cl.snix.dev/c/snix/+/30305
Reviewed-by: Florian Klink <flokli@flokli.de>
Tested-by: besadii
2025-04-09 21:08:52 +00:00
Yvan Sraka
f31ef707f8 feat(castore): implement FromStr for trait B3Digest
This provides a canonical way to parse a `B3Digest`, to be used in,
e.g., a CLI like `snix-castore`.

Change-Id: If6c7858c1fcd7645721002be7789f5ce2ff97a5c
Reviewed-on: https://cl.snix.dev/c/snix/+/30303
Reviewed-by: Florian Klink <flokli@flokli.de>
Tested-by: besadii
2025-04-09 17:34:39 +00:00
Domen Kožar
5b81892ddf chore: load snix shell using direnv
Change-Id: I6edd4aff7b46d8f3f75462d1576b3f4ffd7f16b8
Reviewed-on: https://cl.snix.dev/c/snix/+/30304
Reviewed-by: Florian Klink <flokli@flokli.de>
Tested-by: besadii
2025-04-09 12:03:59 +00:00
Florian Klink
2ed36b49b5 fix(docs/components/overview): prevent overlap in component diagram
This prevents the SVG from overflowing into the "On this page" sidebar
on the right. We apparently still need to set a height.

Change-Id: Iae4183f92115b3190195a5f524bff18b18ad4d39
Reviewed-on: https://cl.snix.dev/c/snix/+/30297
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-04 23:52:43 +00:00
Florian Klink
b9e002e5b7 docs(snix/docs): drop some parts of architecture
This is sufficiently covered in //web, or simply outdated.

Change-Id: Ic84c97ca88dc1351d564861c573dc80939442f1b
Reviewed-on: https://cl.snix.dev/c/snix/+/30300
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-04 23:52:13 +00:00
Florian Klink
bbe5a72aa6 docs(architecture/overview): describe CLI a bit more
Change-Id: Icab9cc26119fb7114794edf1f56494e41e5d63b2
Reviewed-on: https://cl.snix.dev/c/snix/+/30299
Tested-by: besadii
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-04 23:52:13 +00:00
Florian Klink
cfa186c6a8 docs: drop docs/ directory
This doesn't document any of Snix, but is a leftover from the TVL.

It probably should have been deleted as part of
df4500ea2b.

Change-Id: I1be5a743b66d786a1b6861d2f0d9e325b7be5f7c
Reviewed-on: https://cl.snix.dev/c/snix/+/30298
Tested-by: besadii
Autosubmit: Florian Klink <flokli@flokli.de>
Reviewed-by: Ilan Joselevich <personal@ilanjoselevich.com>
2025-04-04 23:52:13 +00:00
Florian Klink
06ffeec464 refactor(snix/castore): rename proto node to entry
In the castore Rust types, nodes don't have names, they only get names
my the mapping happening in a Directory struct.

However, in proto land, they do, as Directories are not maps, but three
(individually sorted) lists.

This has caused some confusion in the past. Let's fix this, by renaming
what used to be proto nodes to "Entry".

We also use this "entry" in a very similar fashion in the NAR reader,
describing something with a name, so this should be more consistent
and understandable. There's no change in the wire representation.

Change-Id: Ie6184d9a6e00c8114fc2a46bfd2bc90208a1d623
Reviewed-on: https://cl.snix.dev/c/snix/+/30296
Tested-by: besadii
Reviewed-by: Vova Kryachko <v.kryachko@gmail.com>
Autosubmit: Florian Klink <flokli@flokli.de>
2025-04-04 23:19:07 +00:00
edef
7b20d0dac1 feat(contrib/fetchroots): track git revisions
Change-Id: I3af0a4486a8685191adc28210162661fae6cfc3c
Reviewed-on: https://cl.snix.dev/c/snix/+/30290
Reviewed-by: Florian Klink <flokli@flokli.de>
Tested-by: besadii
2025-04-04 16:41:32 +00:00