Skip to content

Commit

Permalink
default root to C:\opamroot and ask for path
Browse files Browse the repository at this point in the history
  • Loading branch information
rjbou committed Jun 3, 2024
1 parent 16a3ff8 commit 0b25e87
Showing 1 changed file with 10 additions and 8 deletions.
18 changes: 10 additions & 8 deletions src/client/opamClient.ml
Original file line number Diff line number Diff line change
Expand Up @@ -1147,15 +1147,17 @@ let init
let root = OpamStateConfig.(!r.root_dir) in
if Sys.win32 &&
OpamStd.String.contains_char (OpamFilename.Dir.to_string root) ' ' then
(let new_root_f =
(* TODO: don't keep! *)
Filename.concat
(Filename.get_temp_dir_name ())
(Printf.sprintf "opam-root-%06x" (Random.int 0xffffff))
(let default = Filename.concat "C:" "opamroot" in
let new_root_f =
if OpamConsole.confirm ~default:false
"Your opam root path '%s' contains a space, we'll redirect to \
'%s'.\nDo you want to choose and enter another spaceless folder"
(OpamFilename.Dir.to_string root) default then
match OpamConsole.read "Opam root: " with
| Some r -> r
| None -> default
else default
in
OpamConsole.note
"Your opam root path '%s' contains a space, we'll redirect to '%s'"
(OpamFilename.Dir.to_string root) new_root_f;
let new_root = OpamFilename.Dir.of_string new_root_f in
OpamFilename.write (OpamPath.redirected root) new_root_f;
OpamStateConfig.update ~root_dir:new_root ();
Expand Down

0 comments on commit 0b25e87

Please sign in to comment.