Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
xdg-desktop-portal-wlr(5)      File Formats Manual     xdg-desktop-portal-wlr(5)

NAME
     xdg-desktop-portal-wlr - an xdg-desktop-portal backend for wlroots

DESCRIPTION
     xdg-desktop-portal-wlr  (or  xdpw for short) allows applications to request
     screenshots and screencasts via xdg-desktop-portal in wlroots-based Wayland
     compositors.

     xdpw will try to load the configuration file from these locations:

     *	 $XDG_CONFIG_HOME/xdg-desktop-portal-wlr/$XDG_CURRENT_DESKTOP
     *	 $XDG_CONFIG_HOME/xdg-desktop-portal-wlr/config
     *	 /usr/local/etc/xdg/xdg-desktop-portal-wlr/$XDG_CURRENT_DESKTOP
     *	 /usr/local/etc/xdg/xdg-desktop-portal-wlr/config

     $XDG_CONFIG_HOME defaults to ~/.config. $XDG_CURRENT_DESKTOP can be a colon
     separated list. Each element of that list will be tried.

     The configuration files use the INI file format. Example:

	 [screencast]
	 output_name=HDMI-A-1
	 max_fps=30
	 exec_before=disable_notifications.sh
	 exec_after=enable_notifications.sh
	 chooser_type=simple
	 chooser_cmd=slurp -f 'Monitor: %o' -or

SCREENCAST OPTIONS
     These options need to be placed under the [screencast] section.

     output_name = name
	 Select which output will be screencast.

	 This option is used with chooser_type = none.	The  list  of  available
	 outputs  can  be obtained via wayland-info(1) (under the wl_output sec-
	 tion).

     max_fps = limit
	 Limit the number of frames per second to the provided rate.

	 This is useful to reduce CPU usage when capturing frames  at  the  out-
	 put's refresh rate is unnecessary.

     exec_before = command
	 Execute  command before starting a screencast. The command will be exe-
	 cuted within sh.

     exec_after = command
	 Execute command after ending all screencasts. The command will be  exe-
	 cuted within sh.

     chooser_cmd = command
	 Run this command to select an output.

	 For more details see OUTPUT CHOOSER.

     chooser_type = type
	 Specifies the input send to the chooser.

	 The supported types are:
	 *   default:  xdpw  will try to use the first chooser found in the list
	     of hardcoded choosers  (slurp,  wmenu,  wofi,  rofi,  bemenu,  mew,
	     fuzzel)  and  will fallback to an arbitrary output if none of those
	     were found.
	 *   none: xdpw will allow screencast either on the output given by out-
	     put_name, or if empty an arbitrary output without further	interac-
	     tion.
	 *   simple,  dmenu:  xdpw will launch the chooser given by chooser_cmd.
	     For more details see OUTPUT CHOOSER.

     force_mod_linear = bool
	 Force buffers with implicit modifiers to be linear (experimental)

	 Setting this option to 1 will force xdpw to allocate dma-bufs with  im-
	 plicit  modifier as linear. This option shouldn't be required on single
	 gpu setups, but can increase compatibility especially	on  setups  with
	 multiple gpus.

	 This  option  is  experimental and can be removed or replaced in future
	 versions.

   OUTPUT CHOOSER
     The chooser can be any program or script with the following behaviour:
     *	 It returns any error code except 127. The error code 127 is  internally
	 used  to  signal  that no command could be found and all output from it
	 will be ignored.
     *	 It returns a string on stdout, which is valid if it matches on  of  the
	 the following:
	  - For simple choosers:
	    -  The  prefix "Monitor: " followed by the name of a valid output as
	 given by wayland-info(1).
	    - The prefix "Window: " followed by the ext-foreign-toplevel-list-v1
	 identifier as given by lswt(1).
	  - For dmenu choosers: one of the lines provided via stdin.
	  Everything else will be handled as declined by the user.
     *	 To signal that the user has declined  screencast,  the  chooser  should
	 exit without anything on stdout.

     Supported types of choosers via the chooser_type option:
     *	 simple: the chooser is just called without anything further on stdin.
     *	 dmenu:  the  chooser receives a newline separated list (dmenu style) of
	 outputs on stdin.

SEE ALSO
     pipewire(1)

				   2026-08-30	       xdg-desktop-portal-wlr(5)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xdg-desktop-portal-wlr&sektion=5&manpath=FreeBSD+Ports+15.1.quarterly>

home | help