···3344A shell session shim that makes exploring from the terminal a little bit easier.
5566+## Up and running
77+88+To test shelter locally you feel need a ZFS pool, for now you must name it `shelter`.
99+1010+```
1111+$ truncate --size=10G /var/shelter.img
1212+$ sudo zpool create shelter /var/shelter.img
1313+$ sudo -E dune exec -- shelter
1414+```
1515+1616+Sometimes you want to just restart the world.
1717+1818+```
1919+$ sudo zpool destroy shelter && sudo zpool create shelter /var/shelter.img && sudo rm -rf ~/.cache/shelter
2020+```
+5-5
src/bin/main.ml
···1111let home = Unix.getenv "HOME"
12121313let state_dir fs type' =
1414- let path = Eio.Path.(fs / home / ".cache/cshell" / type') in
1414+ let path = Eio.Path.(fs / home / ".cache/shelter" / type') in
1515 Eio.Path.mkdirs ~exists_ok:true ~perm:0o755 path;
1616 path
1717···1919 Eio_posix.run @@ fun env ->
2020 Fmt_tty.setup_std_outputs ();
2121 match Sys.argv.(1) with
2222- | "shelter" ->
2323- let dir = state_dir env#fs "shelter" in
2424- Shelter.main env#fs env#clock env#process_mgr dir
2525- | _ | (exception Invalid_argument _) ->
2222+ | "passthrough" ->
2623 let dir = state_dir env#fs "passthrough" in
2724 Pass.main env#fs env#clock env#process_mgr dir
2525+ | _ | (exception Invalid_argument _) ->
2626+ let dir = state_dir env#fs "shelter" in
2727+ Shelter.main env#fs env#clock env#process_mgr dir