.\" Copyright (c) 2021 Tobias Stoeckmann .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .Dd August 8, 2021 .Dt XWALLPAPER 1 .Os xwallpaper 0.7.3 .Sh NAME .Nm xwallpaper .Nd wallpaper setting utility for X .Sh SYNOPSIS .Nm xwallpaper .Op Fl Fl screen Ar screen .Op Fl Fl clear .Op Fl Fl daemon .Op Fl Fl debug .Op Fl Fl no-atoms .Op Fl Fl no-randr .Op Fl Fl no-root .Op Fl Fl trim Ar widthxheight[+x+y] .Op Fl Fl output Ar output .Op Fl Fl center Ar file .Op Fl Fl focus Ar file .Op Fl Fl maximize Ar file .Op Fl Fl stretch Ar file .Op Fl Fl tile Ar file .Op Fl Fl zoom Ar file .Op Fl Fl version .Sh DESCRIPTION The .Nm xwallpaper program allows you to set image files as your X wallpaper. PNG file format is supported by default and preferred, but optional JPEG support exists as well. .Pp The wallpaper is also advertised to programs which support semi-transparent backgrounds. .Sh OPTIONS The various options are as follows: .Bl -tag -width Ds .It Fl Fl center Ar file Centers the input file on the output. If the dimensions of the input file are smaller than the output dimensions, the remaining area is filled black. If the input file dimensions are too large, parts of the image will be cropped. .It Fl Fl clear Initializes screen with a black background. Without this option the current content of pseudo transparency atoms is retrieved and used as foundation. If atom contents do not exist or cannot be reused, e.g. due to resolution change of one of the outputs, then an initially black background is used as well. .It Fl Fl daemon Keeps .Nm xwallpaper running in background, listening for RandR events. In this mode, the wallpapers are redrawn when output sizes change. This option can only be used when RandR support is available and activated. .It Fl Fl debug Displays debug messages on the standard error output while .Nm xwallpaper is running. If used in conjunction with .Fl Fl daemon the process will not modify the standard input and outputs. .It Fl Fl focus Ar file In conjunction with .Fl Fl trim the specified trim box will be guaranteed to be visible on output, zooming out if needed. If black pixels would occur around the selection, the input image is zoomed in and moved to cover them as good as possible under the constraint of keeping the specified trim box (or whole image if no trim box has been specified) on output. .It Fl Fl maximize Ar file Maximizes input file to fit output without cropping. This could mean zooming in or out, depending on the dimensions of the input file and the output. This option guarantees that the whole image is seen. If the ratio does not fit the output, the remaining area is filled black. The image itself will be centered on output. .It Fl Fl no-atoms Atoms which are used for pseudo transparency are not updated. Mutually exclusive with .Fl Fl no-root option. Automatically enables .Fl Fl clear option. .It Fl Fl no-randr Ignores individual outputs and uses the whole output instead. This is the area that spans across all different outputs (monitors). .It Fl Fl no-root The background of the root window is not updated. Use this option if you want to update only atoms used for pseudo transparency. It is therefore mutually exclusive with .Fl Fl no-atoms option. .It Fl Fl trim Ar widthxheight+x+y Specifies area of interest in source file. If output mode tries to output more pixels than specified with trim box, then the adjacent pixels around the box will be added to output. Black pixels are only added if no further source pixels are left. .It Fl Fl output Ar output Specifies the output on which a subsequently supplied file shall be set as wallpaper. You can retrieve a list of outputs on your system by executing .Xr xrandr 1 . If no output is specified, all outputs will be modified individually. The special keyword .Cm all will repeat subsequent actions on all displays. If the output could not be found, its associated actions are ignored. .It Fl Fl screen Ar screen Specifies a screen by its screen number. Normally all screens of an X display are processed. Please note that a screen is not a single monitor. See .Fl Fl output for such a use case above. .It Fl Fl stretch Ar file Stretches input file to fully cover the output. If the aspect ratio of the input file does not match the output, then the ratio of the input file is adjusted. .It Fl Fl tile Ar file Uses tiling mode. Draws the input file at the upper left corner of the output and repeats the image until the remaining area of the output is covered. .It Fl Fl version Prints version and exits. .It Fl Fl zoom Ar file Zooms input file to fit output with cropping. This could mean zooming in or out, depending on the dimensions of the input file and the output. If the ratio does not fit the output, parts of the input file will not be shown. The image itself will be centered on output. Default behaviour if no option was selected. .El .Pp If multiple contradicting options were given, the last supplied option wins. It is also possible to repeat output arguments without any subsequent files. In that case, the last mode and file will be reused. .Sh EXAMPLES Centers a PNG file as a wallpaper on LVDS-1: .Dl $ xwallpaper --output LVDS-1 --center file.png .Pp Focuses on upper left corner of a JPEG file as a wallpaper on Virtual-1: .Dl $ xwallpaper --output Virtual-1 --trim 1x1+0+0 --focus file.jpg .Pp Tiles a PNG file as a wallpaper across all outputs: .Dl $ xwallpaper --no-randr --tile file.png .Pp Zooms into a JPEG file as a wallpaper on each output individually: .Dl $ xwallpaper --zoom file.jpg .Pp Centers and recenters a JPEG file after output updates on all outputs: .Dl $ xwallpaper --daemon --center file.jpg .Pp Tiles a JPEG file as a wallpaper on VGA-1 and zooms into a PNG file on LVDS-1: .Dl $ xwallpaper --output VGA-1 --tile file.jpg --output LVDS-1 --zoom file.png .Sh BUGS Use the GitHub issue tracker: .Lk https://github.com/stoeckmann/xwallpaper/issues .Sh AUTHOR .An Tobias Stockmann Aq Mt tobias@stoeckmann.org