ROOTTAIL(1)
β¨ NAME β¨
root-tail β print text directly to X11 root window π (yes bestie, your desktop wallpaper is about to become a live log viewer, no cap)
π¦ SYNOPSIS π¦
root-tail [-g|--geometry GEOMETRY] [-fn|--font FONTSPEC] [--color color]
[--reload SEC COMMAND] [--shade] [--outline] [--minspace] [--noflicker]
[-f|--fork] [--reverse] [--whole] [--partial] [--update] [--cont STRING]
[--wordwrap] [--justify] [--noinitial] [--frame] [--windowed} [-id ID]
[-i|--interval SECONDS] [-V] file1[,color[,desc]] [file2[,color[,desc]]]
ok so the}after--windowedis literally right there in the original synopsis, i am simply the messenger π
πΈ DESCRIPTION πΈ
It puts a file anywhere on your X11 root window. That's it, that's the vibe. It's basically tail -f for multiple files, except the output window is your desktop background. Main character energy fr fr. π
Every non-option argument on the command line is a file to be logged. And listen β a null desc (like "/var/log/messages,red,") stops the description from printing at all, along with the []'s. Sneaky but iconic. π
π General Options π
--color COLORβ use COLOR as the default. Like, the base color for everything that doesn't have its own, bestie.--font,-fn FONTSPECβ use font FONTSPEC. This can be a fixed width font like-fn fixed, or literally any font using-fn '-*-*-*-*-*-*-*-*-*-*-*-*-*-*'with the right fields filled out (go look atxfontsel, she's the plug). Pro tip: drop a different FONTSPEC before each filename and each file gets its own font. Different fonts for different files, obsessed. π-f,--forkβ forks to the background. Bye bestie, you're on your own now.--reverseβ displays the files in reverse order, so the newest lines are at the top. Chronologically chaotic, we love her.--wholeβ only display whole lines. If the last line of a file doesn't have a newline at the end yet, it just waits until it does before showing it. This is the default when more than one file is being displayed.--partialβ the exact opposite of--whole(scroll up, i know you skipped it). It shows lines even when they don't have a newline at the end yet. This is the default when only one file is being displayed.--updateβ updates partial lines in place if they're still on screen when they get updated in their files. Heads up: turning on--updateautomatically turns on--partialtoo. Package deal.--cont STRINGβ when partial lines get broken across two lines on screen, this prefixes the 2nd line with STRING. Defaults to"|| ". If you want partial lines to never show up at all, say--whole. If you'd rather try to "repair" broken lines in-place, say--update.--cont-color COLORβ use COLOR when displaying the continuation string (the one you optionally set with--contup there βοΈ).--wordwrapβ by default it crams as much as possible onto every line of output, even if that means splitting a word across lines.--wordwrapinstead breaks lines at spaces when it can. Politer, honestly.--justifyβ after wrapping long lines, it tries to justify the text for a smooth right-hand margin. Implies--wordwrap. Aesthetic.--reload SEC COMMANDβ re-displays the file(s) and runs COMMAND every SEC seconds. The default is to never re-display the file(s). Ever. Zero refresh, zero problems.--shadeβ adds black shading to the font. Depth, drama, dimension.--outlineβ adds a black outline to the font. Warning bestie: this makes redraws quite a bit slower. π--minspaceβ uses minimum linespace even when you're shading or outlining. Might leave leftover pixels behind (depending on font and logfile content). Leftover pixels are just β¨textureβ¨.--noflickerβ slower, but flicker-free update. Trade-off city.--noinitialβ doesn't display the end of the file(s) at the start. Surprise me later, i guess.--windowedβ creates a whole new window instead of reusing the root window. The new window covers the entire screen, puts itself behind all other windows, and does not accept events. Use this if you run a compositing manager such asxcompmgrorcompton, because the compositing extension was designed very badly and cannot handle root windows correctly. Not our fault, we're just working around it. π-id IDβ use the given window ID for output instead of the root window. Manual mode, iykyk.-i,--interval SECONDSβ use this sleeping interval between checks instead of the default2.4seconds. Fractional values are totally OK, she's precise like that. β±οΈ-Vβ print version information. Short king.--frameβ draws a frame around the selected area. Super useful when you're out here trying to find the perfect geometry. πΌοΈ
π EXAMPLE π
root-tail --windowed -g 800x250+100+50 -font 10x20
/var/log/messages,green -font 12x24 /var/log/secure,red,'ALERT'
Look at her go. Two files, two fonts, two colors, one iconic desktop. π«Ά
π BUGS π
Some desktop environments open a virtual root window and make it genuinely difficult to share it. So if you start root-tail and see absolutely nothing, try the --windowed option, or a setting like "allow programs on desktop" or something similar, or just manually specify a window id. We've all been there. π
And hey β if you happen to find any bugs, please fix them and send a diff. That's the energy we're going for, bestie.
NOTE: This program was modified by Marc Lehmann<schmorp@schmorp.de>, who couldn't reach the original author. Please direct bug-reports etc. toroot-tail@schmorp.de.
http://software.schmorp.de/pkg/root-tail.html
ok that's the whole page, you ate that fr fr π β¨
this lil manual was served up by the 4.2 Berkeley Distribution, dated 2019-06-14 β periodt, that's a wrap, go tail some logs bestie π¦π
π¦ where this page comes from
- debian bookworm: root-tail 1.3-3 Β· GPL-2.0-or-later
- debian trixie: root-tail 1.3-3 Β· GPL-2.0-or-later
- fedora 43: root-tail 1.3-16.fc43 Β· GPL-2.0-or-later
- fedora 44: root-tail 1.3-17.fc44 Β· GPL-2.0-or-later
- ubuntu jammy: root-tail 1.3-2 Β· GPL-2.0-or-later
- ubuntu noble: root-tail 1.3-3 Β· GPL-2.0-or-later
- ubuntu questing: root-tail 1.3-3
- ubuntu resolute: root-tail 1.3-3build1 Β· GPL-2.0-or-later
- ubuntu stonking: root-tail 1.3-3build1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms