pkgs.writeErofsLayers,profiles/ch-runner: MVE
$ nix-build -A examples.dummy.config.debug.closure.erofs.list | xargs cat | xargs du -h 749M /nix/store/bzfv5x6lycq6hzhjv6d6vlk1q8fdg9di-base0.erofs 24M /nix/store/hp41jfq36y0mmjrzqilyh3jfsvqic3kb-nixos.erofs $ nix run -f . examples.dummy.config.uvms.cloud-hypervisor.runner ... <<< Welcome to NixOS 25.11pre-git (x86_64) - ttyS0 >>> nixos login: The definition of the `pkgs` fixpoint was moved to pkgs/default.nix. For that, dirToAttrs was moved to lib/, imported ad hoc
This commit is contained in:
parent
1828835a1d
commit
28d3f89ad4
12 changed files with 428 additions and 77 deletions
|
@ -1,47 +1,42 @@
|
|||
{
|
||||
options,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
mkIfGuest = import ../lib/mkIfMicrovmGuest.nix { inherit options config lib; };
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./vsock-connect-guest.nix
|
||||
./uvms-users.nix
|
||||
];
|
||||
config = lib.optionalAttrs (options ? microvm) {
|
||||
microvm = {
|
||||
hypervisor = "cloud-hypervisor";
|
||||
volumes = [
|
||||
config = lib.mkMerge [
|
||||
(mkIfGuest {
|
||||
microvm = {
|
||||
hypervisor = "cloud-hypervisor";
|
||||
volumes = [
|
||||
{
|
||||
image = "swapfile.img";
|
||||
mountPoint = "/var/swapfiles";
|
||||
size = 1024;
|
||||
}
|
||||
];
|
||||
};
|
||||
swapDevices = [
|
||||
{
|
||||
image = "swapfile.img";
|
||||
mountPoint = "/var/swapfiles";
|
||||
size = 1024;
|
||||
device = "/var/swapfiles/swap0";
|
||||
size = 768;
|
||||
}
|
||||
];
|
||||
cloud-hypervisor.extraArgs = [
|
||||
"--api-socket=ch.sock"
|
||||
];
|
||||
};
|
||||
swapDevices = [
|
||||
{
|
||||
device = "/var/swapfiles/swap0";
|
||||
size = 768;
|
||||
}
|
||||
];
|
||||
})
|
||||
{
|
||||
|
||||
boot.kernelParams = [ "zswap.enabled=1" ];
|
||||
zramSwap.enable = false;
|
||||
boot.kernelParams = [ "zswap.enabled=1" ];
|
||||
zramSwap.enable = false;
|
||||
|
||||
systemd.services."microvm@".serviceConfig.ExecStartPost =
|
||||
pkgs.writeShellScript "microvm-fix-umask" ''
|
||||
if [[ -e CONNECT.vsock ]] ; then
|
||||
chmod g+r CONNECT.vsock
|
||||
fi
|
||||
'';
|
||||
|
||||
systemd.tmpfiles.settings."10-muvm" = {
|
||||
"/var/lib/microvms/*/CONNECT.sock".z.mode = "660";
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue