#
  
  
    val color_tri_state : [> 
| `Always
| `Auto
| `Never
 ]
    
  
 
  
   
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  #
  
  
    val all_parens : bool 
Pervasives.
ref
    
      
        
      Tells the printer to write parens everywhere
      
        
       
    
   
  
   
  
  
  #
  
  
    val self_upgrade_bootstrapping_value : string
    
  
  
   
  
  
  #
  
  
    val is_self_upgrade : bool
    
  
  
   
  
  
  #
  
  
    val curl_command : string option
    
  
  
   
  
  
  
  
  
  
  #
  
  
    val download_retry : int
    
  
  
   
  
  
  
  
  #
  
  
    val solver_timeout : float
    
  
  
   
  
  
  #
  
  
    type solver_criteria = [ 
| `Default
| `Upgrade
| `Fixup
 ]
    
  
 
  
   
  
  
  
  
  
  
  
  
  #
  
  
    val get_solver_criteria : [ 
| `Default
| `Upgrade
| `Fixup
 ] 
-> string
    
      
        
      Get the currently configured solver criteria as a string
      
        
       
    
   
  
   
  
  
  #
  
  
    val default_external_solver : string
    
  
  
   
  
  
  
  
  #
  
  
    val get_external_solver : unit -> string
    
  
  
   
  
  
  #
  
  
    val default_repository_name : string
    
  
  
   
  
  
  #
  
  
    val default_repository_address : string
    
  
  
   
  
  
  
  
  #
  
  
    val global_config : string
    
  
  
   
  
  
  
  
  #
  
  
    val switch : [ 
| `Command_line of string
| `Env of string
| `Not_set
 ] 
Pervasives.
ref
    
   
  
   
  
  
  
  
  
  
  #
  
  
    val default_opam_dir : string
    
  
  
   
  
  
  
  
  #
  
  
    val root_dir_tmp : string
    
      
        
      The initial value of root_dir, set in the tmpdir before initialised
      
        
       
    
   
  
   
  
  
  #
  
  
    val timer : unit -> unit -> float
    
  
  
   
  
  
  #
  
  
    val global_start_time : float
    
  
  
   
  
  
  #
  
  
    type text_style = [ 
| `black
| `blue
| `bold
| `cyan
| `green
| `magenta
| `red
| `underline
| `white
| `yellow
 ]
    
  
 
  
   
  
  
  
  
  #
  
  
    val indent_left : string -> int -> string
    
  
  
   
  
  
  
  
  
  
  #
  
  
    val timestamp : unit -> string
    
  
  
   
  
  
  
  
  #
  
  
    val slog : ('a 
-> string) 
-> Pervasives.
out_channel -> 'a 
-> unit
    
      
        
      Helper to pass stringifiers to log (use log "%a" (slog to_string) x
rather than log "%s" (to_string x) to avoid costly unneeded
stringifications
      
        
       
    
   
  
   
  
  
  
  
  
  
  
  
  #
  
  
    exception Exit 
of int
    
      
        
      Raised to exit the program in a clean way. Parameter is the exit code.
      
        
       
    
   
  
   
  
  
  #
  
  
    exception Exec 
of string * string array * string array
    
      
        
      Raised to exec() another binary, after making sure finalisations have been
made properly. Parameters as per Unix.execvpe
      
        
       
    
   
  
   
  
  
  #
  
  
    exception Package_error of string
    
  
  
   
  
  
  
  
  
  
  
  
  
  
  #
  
  
    val confirm : ('a, unit, string, bool) 
Pervasives.
format4 -> 'a
    
      
        
      Ask the user to press Y/y/N/n to continue (returns a boolean)
      
      Read some input from the user (returns a string option)
      
        
       
    
   
  
   
  
  
  
  
  #
  
  
    val editor : string lazy_t
    
  
  
   
  
  
  
  
  
  
  #
  
  
    val os_string : unit -> string
    
  
  
   
  
  
  #
  
  
    val arch : unit -> string
    
  
  
   
  
  
  
  
  
  
  #
  
  
    val log_line_limit : int
    
  
  
   
  
  
  
  
  #
  
  
    val default_dl_jobs : int