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

31 lines
836 B
Nix

{ config, pkgs, lib, ... }:
{
config = lib.mkIf (config.genode.core.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 Sigil = env:DHALL_SIGIL
let VFS = Sigil.VFS
in ${./rom-vfs.dhall}
"${config.block.partitions.store.guid}"
Sigil.Init.Resources::{ caps = 256, ram = Sigil.units.MiB 32 }
( VFS.vfs
[ VFS.leafAttrs
"plugin"
(toMap { load = "${vfsRump.cap}", fs = "cd9660", ram = "12M", writeable="no" })
]
)
'';
};
};
}