grim(1)
๐ฆ grim(1) โ the screenshot bestie ๐ฆ
ok so real talk, this is the manual for grim, and it lives in the General Commands Manual section (section 1, iykyk). she takes pictures of your Wayland screen and she's honestly iconic for it. let's get into it ๐
โจ NAME โจ
grim โ grab images from a Wayland compositor ๐ธ
โจ SYNOPSIS โจ
grim [options...] [output-file]
โจ DESCRIPTION โจ
okay so grim is a command-line utility that takes screenshots of your Wayland desktop. literally her whole thing. ๐ซถ
fr fr though, right now she requires support for the screencopy protocol to work โ no screencopy, no screenshot, no exceptions. support for the xdg-output protocol is optional, but it improves fractional scaling support, so likeโฆ enable it if you can? it's giving "optional but slay". โจ
here's where the image goes: grim writes it to output-file, or if you didn't give one, she makes up a timestamped file name in $GRIM_DEFAULT_DIR. and if $GRIM_DEFAULT_DIR isn't set? she falls back first to $XDG_PICTURES_DIR, and then to the current working directory. the search goes: $GRIM_DEFAULT_DIR โ $XDG_PICTURES_DIR โ cwd. ๐
oh and if output-file is -, grim writes the image to the standard output instead. very pipe-friendly of her. ๐
๐ธ OPTIONS ๐ธ
-hโ show the help message and quit. short and sweet, we love a queen who knows when to exit ๐-s<factor> โ sets the output image's scale factor to factor. by default, the scale factor is set to the highest of all outputs. ๐ฆ-g"<x>,<y> <width>x<height>" โ sets the region to capture, in layout coordinates. very "i only want this part of the screen" of you.
if you set it to -, she reads the region from the standard input instead. cute little stdin moment ๐
-t<type> โ sets the output image's file format to type. by default the filetype ispng, and the valid values arepng,jpegorppm. pick your fighter โญ-q<quality> โ sets the output jpeg's filetype compression rate to quality. by default the jpeg quality is80, and valid values are between0-100. yes these are the real numbers, no cap. ๐ฅ-l<level> โ sets the output PNG's filetype compression level to level. by default the PNG compression level is6on a scale from0to9. let me break it down for you:- level
9gives the highest compression ratio, but may be slow ๐ญ - level
1gives a lower compression ratio, but is faster โก - level
0does no compression at all, and produces very large files โ but it can be useful whengrimis used in a pipeline with other commands. so like, big file energy, but valid ๐ซถ
- level
-o<output> โ sets the output name to capture. tell her which monitor, bestie ๐-cโ include cursors in the screenshot. yes your little arrow gets to be in the picture too, main character energy ๐ฑ๏ธโจ-T<identifier> โ sets the identifier of a foreign toplevel handle to capture. fancy ๐
๐ AUTHORS ๐
maintained by Simon Ser <contact@emersion.fr>, who is assisted by other open-source contributors. iconic behaviour, honestly. ๐
for more information about grim development, see <https://gitlab.freedesktop.org/emersion/grim> โ go poke around, she's open source fr fr ๐
ok that's the whole page bestie, go take some screenshots ๐ โจ
this little doc is dated 2025-07-08, it's grim(1) again (yes she said her own name twice, she contains multitudes), and it came from the General Commands Manual โ mwah, slay, periodt ๐๐
๐ฆ where this page comes from
- alpine 3.24: grim-doc 1.5.0-r0 ยท MIT
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms