X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=utils.ml;h=9b6f3bd1b4710d1a5ec59a689aa2eba46cf28d7b;hb=73eef681e27803a1a7379be84ec74b17e02450fd;hp=a3eca86bc72b2a461b9825d3e1951c0b25bae9ab;hpb=b07102fda0034da5840a9f33bd6d404a195b8cc9;p=guestfs-browser.git diff --git a/utils.ml b/utils.ml index a3eca86..9b6f3bd 100644 --- a/utils.ml +++ b/utils.ml @@ -29,14 +29,12 @@ let verbose = ref false let set_verbose_flag () = verbose := true let verbose () = !verbose -let write_flag = ref false -let set_write_flag () = write_flag := true -let write_flag () = !write_flag - let debug fs = let f str = if verbose () then ( prerr_string Config.package; + prerr_string ": tid "; + prerr_string (string_of_int (Thread.id (Thread.self ()))); prerr_string ": "; prerr_string str; prerr_newline () @@ -60,3 +58,23 @@ let human_size_1k i = sprintf "%.1fM" (Int64.to_float i /. 1024.) else sprintf "%.1fG" (Int64.to_float i /. 1024. /. 1024.) + +let unique = let i = ref 0 in fun () -> incr i; !i + +let mklabel text = + (GMisc.label ~text () :> GObj.widget) + +let libguestfs_version_string () = + let g = new Guestfs.guestfs () in + let v = g#version () in + let s = + sprintf "%Ld.%Ld.%Ld%s" + v.Guestfs.major v.Guestfs.minor v.Guestfs.release v.Guestfs.extra in + g#close (); + s + +let libvirt_version_string () = + let v = fst (Libvirt.get_version ()) in + sprintf "%d.%d.%d" (v / 1_000_000) ((v / 1_000) mod 1_000) (v mod 1_000) + +let (//) = Filename.concat