summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author·𐑑𐑴𐑕𐑑𐑩𐑀2025-12-30 07:14:23 +0000
committer·𐑑𐑴𐑕𐑑𐑩𐑀2025-12-30 07:14:23 +0000
commit46e1cd38d5ff78b5d663b843883c82952d7e2e7b (patch)
tree03b276ebc8eba25ff8b9801900e8c2b3eeb29f7b
parent245952748751460fc3d0a35b03419959ec2c99b4 (diff)
downloadnixtaml-46e1cd38d5ff78b5d663b843883c82952d7e2e7b.tar
nixtaml-46e1cd38d5ff78b5d663b843883c82952d7e2e7b.tar.gz
nixtaml-46e1cd38d5ff78b5d663b843883c82952d7e2e7b.tar.bz2
nixtaml-46e1cd38d5ff78b5d663b843883c82952d7e2e7b.tar.lz
nixtaml-46e1cd38d5ff78b5d663b843883c82952d7e2e7b.tar.xz
nixtaml-46e1cd38d5ff78b5d663b843883c82952d7e2e7b.tar.zst
nixtaml-46e1cd38d5ff78b5d663b843883c82952d7e2e7b.zip
silo: onset
-rw-r--r--lib/working_directory.ml14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/working_directory.ml b/lib/working_directory.ml
index fec8934..21aa0cd 100644
--- a/lib/working_directory.ml
+++ b/lib/working_directory.ml
@@ -57,6 +57,19 @@ let set_up_ignore ~dir ~content =
Eio.Buf_write.with_flow flow @@ fun writer ->
Eio.Buf_write.string writer content
+let silo_dir = "silo"
+
+let set_up_silo () =
+ let dir = Eio.Path.(get () / silo_dir) in
+ match Eio.Path.kind ~follow: true dir with
+ | `Directory ->
+ ()
+ | `Not_found ->
+ Logs.info (fun m -> m "Making Nixtamal’s silo directory%a" pp_native_path dir);
+ Eio.Path.mkdirs ~perm: 0o755 dir;
+ | _ ->
+ failwith @@ Fmt.str "There is a Nixtamal path, but is not a directory%a" pp_native_path dir
+
let set_up_root () =
let dir = get () in
match Eio.Path.kind ~follow: true dir with
@@ -64,6 +77,7 @@ let set_up_root () =
Logs.info (fun m -> m "Making Nixtamal directory%a" pp_native_path dir);
Eio.Path.mkdirs ~perm: 0o755 dir;
set_up_editor_config ~dir ~content: root_editor_config_content;
+ set_up_silo ();
set_up_ignore ~dir ~content: root_ignore_content
| `Directory ->
Logs.warn (fun m -> m "Nixtamal directory already exists%a" pp_native_path dir)