LinuxCommandLibrary

picom

Enable compositing effects for X window managers

TLDR

Enable picom during a session

$ picom &
copy

Start picom as a background process
$ picom [[-b|--daemon]]
copy

Use a custom configuration file
$ picom --config [path/to/config_file]
copy

SYNOPSIS

picom [OPTIONS]

PARAMETERS

--backend <backend>
    Specify the rendering backend to use. Common options include glx (hardware accelerated) and xrender (software rendering).

--config <path>
    Specify the path to the configuration file. Defaults to ~/.config/picom/picom.conf or /etc/xdg/picom.conf.

--shadow
    Enable drawing of shadows for windows.

--no-fading-openclose
    Disable fading in/out when windows are opened or closed.

--vsync
    Enable VSync support to prevent screen tearing.

--inactive-opacity <value>
    Set the opacity of inactive windows, a value between 0.0 and 1.0 (e.g., 0.8 for 80% opacity).

--opacity-rule <rule>
    Define rules for window opacity based on various window properties (e.g., class, title). Can be specified multiple times.

--log-level <level>
    Set the logging level. Possible values include trace, debug, info, warn, error.

--daemon
    Run picom in the background as a daemon.

--no-daemon
    Do not daemonize the process (useful for debugging or running in a terminal).

DESCRIPTION

picom is a lightweight and highly configurable standalone compositor for the X Window System. It enhances the visual appearance of your desktop by adding effects such as shadows, fading, and transparency to windows.

Originally forked from compton, picom aims to provide a more maintainable codebase and modern features, serving as a popular choice for users of tiling window managers like i3, bspwm, and AwesomeWM. Beyond aesthetics, it also plays a crucial role in preventing screen tearing by enabling VSync.

It processes window contents before they are displayed, applying various transformations based on user-defined rules. Its extensive configuration options, typically managed via a `picom.conf` file, allow users to fine-tune every aspect of its behavior, making it adaptable to diverse desktop setups and performance requirements.

CAVEATS

picom requires the X Window System to function and is not designed for Wayland-based desktop environments. Incorrect configuration can sometimes lead to visual glitches or performance issues, especially with certain applications that bypass the X server's compositing manager or with incompatible graphics drivers. Users should back up their configuration file before making significant changes.

CONFIGURATION FILE

picom is heavily configured through a configuration file, typically located at ~/.config/picom/picom.conf or /etc/xdg/picom.conf. This file allows for fine-grained control over shadows, fading, opacity rules, VSync settings, and more. It is highly recommended to customize this file to suit individual preferences and system performance.

BACKEND OPTIONS

picom supports different rendering backends, most commonly xrender (software rendering, widely compatible) and glx (hardware accelerated, often faster but may require specific OpenGL drivers). Users can select the preferred backend using the --backend option or in the configuration file, depending on their hardware and desired performance characteristics.

HISTORY

picom originated as a fork of compton, which itself evolved from earlier compositors like dcompmgr and xcompmgr-dana. The primary motivation for the picom fork was to address issues in compton's codebase, improve maintainability, and introduce new features and modern rendering capabilities. Over time, picom has largely superseded compton as the preferred standalone X compositor for many users due to its active development and robust feature set.

SEE ALSO

compton(1), xprop(1), xcompmgr(1)

Copied to clipboard