22 Mar 2024 |
adamcstephens | How can we improve the out of box experience for image users, without necessarily bundling the channels? | 22:13:53 |
23 Mar 2024 |
mkg20001 | task that runs on first boot that tries to fetch them? | 18:46:38 |
adamcstephens | I wonder if systemd first boot runs | 19:21:28 |
adamcstephens | Maybe not since it runs quite early | 19:29:56 |
adamcstephens | There’s `ConditionFirstBoot` though | 19:30:55 |
24 Mar 2024 |
mkg20001 | alternativly you could use condition if path exists and check if /nix/var/nix/profiles/per-user/root/channels exists | 15:18:29 |
mkg20001 | and if not download channels. (and make that part of the initial image configuration but not further rebuilds as it will become problematic when the user tries to remove channels entierly) | 15:19:05 |
mkg20001 | I'm not sure if ConditionFirstBoot exists as I've seen some code in the activation script where they fake the firtboot state so systemd doesn't try to populate etc | 15:20:26 |
mkg20001 | here: https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/system/boot/stage-2-init.sh#L133 | 15:22:55 |
28 Mar 2024 |
adamcstephens | i've been thinking about this https://discuss.linuxcontainers.org/t/incus-0-7-has-been-released/19485#image-server-management-tool-4 | 16:38:05 |
adamcstephens | i feel like we could use this to generate an imageserver of nixos builds | 16:39:15 |
adamcstephens | i can't quite put my finger on the integration to make it work though | 16:40:07 |
adamcstephens | if we record the simple streams hash in the release, then maybe a small http service that figures out all the hydra builds and maps to images? | 16:48:08 |
hexa | you mean provide an image server via our general release pipeline? | 16:49:45 |
adamcstephens | imagine being able to run incus launch nixos:unstable/<some hash or date> | 16:50:02 |
adamcstephens | In reply to@hexa:lossy.network you mean provide an image server via our general release pipeline? i'm not sure if the release pipeline needs to run the actual server, but use it to provide the necessary data that it could be assembled | 16:51:19 |
adamcstephens | though if we want to run an image server on nixos infra, that's cool too :) | 16:51:35 |
hexa | what kind of resources woudl that need? | 16:54:02 |
hexa | * what kind of resources would that need? | 16:54:12 |
adamcstephens | ideally we could redirect from this service to the image file itself | 16:54:29 |
hexa | ok, cool. | 16:54:41 |
adamcstephens | so it should be very lightweight, and preferably stateless. | 16:55:03 |
hexa | feel free to prototype something and migrate it into nix-community | 16:55:39 |
adamcstephens | cool. i need to play with the tool first | 16:56:02 |
hexa | I can help get it running on the nixos infra then | 16:56:12 |
adamcstephens | if it has to work with whole images, i'd probably consider making it a local service for users to install | 16:57:06 |
adamcstephens | sigh | 17:17:18 |
adamcstephens | ─❯ incus-simplestreams add /nix/store/q67np57dgd8dg8fi2d425raqw9gkcc22-tarball/tarball/nixos-system-x86_64-linux.tar.xz /nix/store/cwsxnmgkv45qyyyq37gkk71c8527b1zn-nixos-disk-image/nixos.qcow2
Error: chown images/c35a1d665991475fe5e8947a355272e7cd144db6b7290cb3812a1e14912ec3d7.incus.tar.xz: operation not permitted
| 17:17:21 |
adamcstephens | may just be easier to generate the simplestreams format ourselves | 17:20:54 |
hexa | hm, what does it do? copy with permissions? | 17:21:29 |