meat/lib/commands/fresh.ml
2026-05-19 23:38:14 +10:00

17 lines
697 B
OCaml

let run () =
print_string Common.header;
Common.meat_print "HUNTING FRESH MEATS..";
let argv_len = Array.length Sys.argv in
let root = Sys.getenv "MEATS" in
if argv_len >= 3 then
let open Array in
let flakes = sub Sys.argv 2 (argv_len - 2) in
flakes
|> iter (fun f ->
if Common.all_low f = "meat" then Common.meat_print "PROCESSING REAL MEAT.."
else Common.meat_print ("PROCESSING FRESH MEAT " ^ Common.all_caps f ^ "..");
Common.do_cmd ~args:false @@ "nix flake update " ^ f ^ " --flake " ^ root
|> ignore)
else Common.do_cmd @@ "nix flake update --flake " ^ root |> ignore;
print_string Common.footer;
print_newline ()