sigil/nixos-modules/eris/rom-fs.nix

36 lines
945 B
Nix

{ config, pkgs, lib, ... }:
{
config = lib.mkIf (config.genode.boot.storeBackend == "fs") {
genode.core.children.eris_vfs = let
vfsRump = lib.getEris' "lib" pkgs.genodePackages.rump "vfs_rump.lib.so";
in {
package = pkgs.genodePackages.vfs;
extraErisInputs = [ vfsRump ];
configFile = pkgs.writeText "rom-vfs.dhall" ''
let Genode = env:DHALL_GENODE
let VFS = Genode.VFS
in ${./rom-vfs.dhall}
${../partition-type}
Genode.Init.Resources::{ caps = 256, ram = Genode.units.MiB 16 }
( VFS.vfs
[ VFS.leafAttrs
"plugin"
(toMap { load = "${vfsRump.cap}", fs = "ext2fs", ram = "12M" })
]
)
'';
};
genode.core.children.eris_rom = {
package = pkgs.genodePackages.cached_fs_rom;
configFile = ./cached_fs_rom.dhall;
};
};
}