VUDEBUG(1)

πŸ’– VUDEBUG πŸ’–

okay so bestie, this is vudebug from the General Commands Manual β€” it's the debug utility for umvu, and it's lowkey iconic. let's get into it 🫢


✨ NAME ✨

vudebug – debug utility for umvu


πŸŽ€ SYNOPSIS πŸŽ€

vudebug --help

vudebug [debarg [debarg ...]] [ -- command [args]]

where debarg has the following syntax:

+[tag[tag ...]][:colorspec]

or

-[tag[tag ...]]

or

?[tag[tag ...]]

and colorspec is a combination of the following characters: nwrgbcmyNWRGBCMY+-_*#


🌸 DESCRIPTION 🌸

vudebug turns debug log messages on and off, bestie. the log messages are sorted into categories, and every category has its own tag β€” and a tag is literally just one alphanumeric character. the convention (iykyk) is that lowercase letters are for logging messages coming out of the hypervisor, while capital letters are for modules. cute, right?

now here's the tea: when the vudebug command line ends with -- followed by a command and its command line arguments, then logging gets enabled for the execution of that command β€” and for all the subprocesses it eventually creates too, no cap. otherwise? vudebug just changes the categories to log globally, for all the processes. periodt.


πŸ’… OPTIONS πŸ’…

  • --help β€” print a short help message and exit. that's it, that's the whole vibe πŸ’–
  • debarg β€” every debug argument starts with +, - or ?, and then comes zero, one or more debug tags. quick rundown:
    • + enables log messages ✨
    • - disables log messages πŸ’€
    • ? checks if the log messages are enabled πŸ‘€

when the debug argument has no tags at all, it gets applied to all the tags. and the fun part: log messages of different categories can be shown in different colors and font effects, because why would you debug in plain monochrome when you could be extra? πŸŽ€

when vudebug is used to enable/re-enable tags (+), each debarg can be followed by a semicolon (:) and a color specification. a color specification is a string composed by the following characters:

  • n w r g b c m y β€” set foreground color (black, white, red, green, blue, cyan, magenta or yellow)
  • N W R G B C M Y β€” set background color (black, white, red, green, blue, cyan, magenta or yellow)
  • + - _ * # β€” font effect (bright, dim, underlined, blinking, reverse video)

πŸ”₯ EXAMPLES πŸ”₯

get a list of available logging categories:

$ vudebug ?
D -   VUDEV
F -   VUFUSE
N -   VUNET
a -   ACTION
c -   CHOICE
f -   FILETABLE
m -   MODULE
n -   NESTED
p -   PATH
s -   SYSCALL
v -   VNODE
heads up bestie: the list may vary depending on the version of the hypervisor and the modules currently loaded. so don't come for me if yours looks different πŸ’…

enable path resolution logging:

$ vudebug +p

list some categories to see which ones are active:

$ vudebug ?ps
p +   PATH
s -   SYSCALL

PATH is active, SYSCALL is not active. noted. πŸ“

disable all the categories:

$ vudebug -

launch a bash and log syscall requests in red, path resolution in bold-blue, module choice in reverse green:

$ vudebug +s:r +p:b+ +c:g# -- bash

like… the aesthetic of that one command? obsessed. 🌈


πŸ¦‹ SEE ALSO πŸ¦‹

umvu(1)


πŸ‘‘ AUTHOR πŸ‘‘

VirtualSquare. Project leader: Renzo Davoli


and that's the whole page, bestie!! 🫢 this was VirtualSquare-VUOS, dated January 2024 β€” go forth and debug slayfully βœ¨πŸ’–

πŸ“¦ where this page comes from