head	1.18;
access;
symbols
	pkgsrc-2026Q3:1.15.0.2
	pkgsrc-2026Q3-base:1.15
	pkgsrc-2026Q2:1.14.0.6
	pkgsrc-2026Q2-base:1.14
	pkgsrc-2026Q1:1.14.0.4
	pkgsrc-2026Q1-base:1.14
	pkgsrc-2025Q4:1.14.0.2
	pkgsrc-2025Q4-base:1.14
	pkgsrc-2025Q3:1.13.0.6
	pkgsrc-2025Q3-base:1.13
	pkgsrc-2025Q2:1.13.0.4
	pkgsrc-2025Q2-base:1.13
	pkgsrc-2025Q1:1.13.0.2
	pkgsrc-2025Q1-base:1.13
	pkgsrc-2024Q4:1.12.0.2
	pkgsrc-2024Q4-base:1.12
	pkgsrc-2024Q3:1.11.0.2
	pkgsrc-2024Q3-base:1.11
	pkgsrc-2024Q2:1.10.0.8
	pkgsrc-2024Q2-base:1.10
	pkgsrc-2024Q1:1.10.0.6
	pkgsrc-2024Q1-base:1.10
	pkgsrc-2023Q4:1.10.0.4
	pkgsrc-2023Q4-base:1.10
	pkgsrc-2023Q3:1.10.0.2
	pkgsrc-2023Q3-base:1.10
	pkgsrc-2023Q2:1.9.0.2
	pkgsrc-2023Q2-base:1.9
	pkgsrc-2023Q1:1.8.0.6
	pkgsrc-2023Q1-base:1.8
	pkgsrc-2022Q4:1.8.0.4
	pkgsrc-2022Q4-base:1.8
	pkgsrc-2022Q3:1.8.0.2
	pkgsrc-2022Q3-base:1.8
	pkgsrc-2022Q2:1.6.0.10
	pkgsrc-2022Q2-base:1.6
	pkgsrc-2022Q1:1.6.0.8
	pkgsrc-2022Q1-base:1.6
	pkgsrc-2021Q4:1.6.0.6
	pkgsrc-2021Q4-base:1.6
	pkgsrc-2021Q3:1.6.0.4
	pkgsrc-2021Q3-base:1.6
	pkgsrc-2021Q2:1.6.0.2
	pkgsrc-2021Q2-base:1.6
	pkgsrc-2021Q1:1.5.0.4
	pkgsrc-2021Q1-base:1.5
	pkgsrc-2020Q4:1.5.0.2
	pkgsrc-2020Q4-base:1.5
	pkgsrc-2020Q3:1.3.0.4
	pkgsrc-2020Q3-base:1.3
	pkgsrc-2020Q2:1.3.0.2
	pkgsrc-2020Q2-base:1.3
	pkgsrc-2020Q1:1.1.0.2
	pkgsrc-2020Q1-base:1.1
	pkgsrc-2019Q4:1.1.0.4
	pkgsrc-2019Q4-base:1.1;
locks; strict;
comment	@# @;


1.18
date	2026.10.02.16.11.16;	author pin;	state Exp;
branches;
next	1.17;
commitid	1lWmZ0iquip36VXG;

1.17
date	2026.09.29.06.08.29;	author wiz;	state Exp;
branches;
next	1.16;
commitid	qal4xgy1mkCzPtXG;

1.16
date	2026.09.27.11.39.30;	author tnn;	state Exp;
branches;
next	1.15;
commitid	QJQtnAYom0oZIfXG;

1.15
date	2026.09.02.19.05.22;	author wiz;	state Exp;
branches;
next	1.14;
commitid	vXszxoxOqka005UG;

1.14
date	2025.10.23.20.40.10;	author wiz;	state Exp;
branches;
next	1.13;
commitid	1V2hBZn9ypXaCJfG;

1.13
date	2025.01.21.11.00.18;	author nia;	state Exp;
branches;
next	1.12;
commitid	ERZvanoGurVahlGF;

1.12
date	2024.12.07.10.03.50;	author nia;	state Exp;
branches;
next	1.11;
commitid	uq8LlYifM7ABpyAF;

1.11
date	2024.08.06.13.39.40;	author nia;	state Exp;
branches;
next	1.10;
commitid	RzjIjUdOqihzyLkF;

1.10
date	2023.08.14.05.25.35;	author wiz;	state Exp;
branches;
next	1.9;
commitid	LOSB79OLVxvXjIAE;

1.9
date	2023.06.21.08.12.25;	author nia;	state Exp;
branches;
next	1.8;
commitid	jUOTY8cEHBxAZMtE;

1.8
date	2022.09.04.12.12.01;	author tnn;	state Exp;
branches;
next	1.7;
commitid	svprmh37Z15CDxSD;

1.7
date	2022.07.29.21.16.32;	author tnn;	state Exp;
branches;
next	1.6;
commitid	d6wnlrPUdFHeQPND;

1.6
date	2021.04.12.11.01.56;	author nia;	state Exp;
branches;
next	1.5;
commitid	VpsCN8BTKO74EZOC;

1.5
date	2020.11.19.11.03.04;	author nia;	state Exp;
branches;
next	1.4;
commitid	veDeeCCifqNkhuwC;

1.4
date	2020.10.03.09.23.41;	author nia;	state Exp;
branches;
next	1.3;
commitid	KiaSUmp65CrOerqC;

1.3
date	2020.05.22.19.46.34;	author rillig;	state Exp;
branches;
next	1.2;
commitid	HlGacWzcCNiAZg9C;

1.2
date	2020.05.02.11.23.04;	author tnn;	state Exp;
branches;
next	1.1;
commitid	MYy4F5Plp8WMQE6C;

1.1
date	2019.12.15.14.05.47;	author nia;	state Exp;
branches;
next	;
commitid	BuPULX4LRBzudOOB;


desc
@@


1.18
log
@x11/picom: update to 13

pkgsrc: now that 9 was deprecated this can be imported.
IIRC it should build with 10 default gcc.

v13
(see also: v13-rc1)

v13-rc1 (2025-Dec-09)
New features

    Separate the "geometry" animation trigger into "size" and "position" to allow finer-grained control. "geometry" is kept as an alias for setting both "size" and "position".
    Add a "urgent" target that can be used in rules to match urgent (according to ICCCM) windows. (#1445)
    New "shadow-color" per-window option can now be used in rules to give each window a different shadow color. (#257)
    Added new animation trigger color, which can now be used to transition window shadow-color changes. (#257)
    Add support for using custom shaders when rendering the desktop background. (#1440)
    New variables "window-blur-opacity-before", and "window-blur-opacity" are now available in animation scripts. (#919)
    New per-window option blur-opacity can now be used in rules. (#919)
    Macro definitions can now be specified when setting shader in window rules. (#1066)

Deprecations

    --legacy-backends is now deprecated. Setting it no longer has an effect.
    resize-damage, glx-no-stencil and glx-no-rebind-pixmap are now deprecated, because they only works on legacy backends.
    Removed several options that have been deprecated for a long time, this includes:
        glx-fshader-win
        glx-swap-method
        glx-use-gpushader4
        menu-opacity
        vsync-aggressive
        respect-prop-shadow
        sw-opti
        clear-shadow

Behavior changes

    The desktop background image is no longer smeared to fill the screen. If it's too small, it will be too small. (#1464)

Bug fixes

    Fix sometimes window property changes aren't reflected in picom.
    Fix shadow-opacity being applied twice. You may need to adjust your shadow-opacity settings.
    Properly fix the longstanding "request too big" problem when uploading shadow images. (Previous workaround: 69b3eee76b6f3ec6be1d2402151d8882279a74a4) (#257)
    Fix window frames not being blended correctly when using frame-opacity with saved-image-blend.
    Fix shadow not being correctly masked when scaled. (#1389)
    Fix misaligned shadow and window when they are scaled. (#1389)
    Fix unexpected relative movement between shadow and window when they are scaled. (#1389)
    background blur does not cover the entire background if the window has rounded corner and is scaled.
    Fix shaders in window-shader-fg-rule being erroneously reported as failed to load.
    Fix --blur-background-fixed having no effect. (#1402)
    Fix assertion failure when running with some window managers (e.g. qtile) and no window is focused (#1384)

Other changes

    Hide picom from menus by default (#1155)

Internal changes

    Breaking change to backend API, to allow better image creation, and applying tints to windows.
    Refactor shadow rendering, preparing for dynamic shadow colors.
    Backend API 2.0 breaking change, backend_mask_image.origin is now a vec2.
    Backend API 2.0 breaking change, backend_blur_args now has source_mask_scale.
    Backend API 2.0 breaking change, backend_blit_args.shader is now shader_handle instead of void *.

12.4 (2024-Nov-09)
Improvements

    Better workaround for a NVIDIA qurik, fix high CPU usage when screen is off (#1265)
    Avoid using xrender convolution in all cases, should improve shadow performance for most users. (#1349)

Bug fixes

    Fix leak of saved window images.

Build fixes

    Fix build on arm32 (#1355)

12.3 (2024-Oct-14)
Improvements

    Extend workaround for missing hardware accelerated convolution to more drivers (#1349)

Bug fixes

    Fix memory corruption that can happen when handling window property changes (#1350)
    Fix force-win-blend having no effect (#1354)
    Fix shadow being rendered incorrectly in xrender backend (#1352)

12.2 (2024-Oct-10)
Improvements

    fly-out/slide-out animation presets no longer cause jumps in window opacity

Bug fixes

    Random delays before screen is updated (#1345 #1330)
    Fix building on 32-bit systems (#1346)
    Fix blank screen on 32-bit systems
    Fix fly-in/fly-out animation presets so they work with directions other than up and left

v12.1 (2024-Sep-29)
Bug fixes

    picom stops rendering correctly after monitor configuration changes (#1338, thanks to @@Suyooo)

v12 (2024-Sep-27)
Bug fixes

    Fix crash related to window leader updates (#1337 + extra).
    Remove an invalid assertion.

v12-rc4 (2024-Sep-08)
Bug fixes

    Windows become completely black when rules and inactive-dim are set at the same time
    Fix segmentation fault during unredirection if the geometry change animation is used (#1333, thanks to @@monsterovich)
    Fix many rare race conditions in the window management code (#1334)

v12-rc3 (2024-Aug-30)
Bug fixes

    transparent-clipping has no effect (#1317)
    unredir in window rules not being parsed correctly
    Changing window opacity with picom-trans does not take effect immediately (#1315)

Documentation

    Document behavior change around rounded corners and fullscreen windows (#1323)

v12-rc2 (2024-Aug-17)
Bug fixes

    Setting corner-radius to 0 cause all windows to not render (#1311)
    Setting corner-radius causes windows to have a 1-pixel transparent border
    Window shaders no longer work (#1312)

v12-rc1 (2024-Aug-12)
New features

    Animations! Yes, now picom officially supports animations. For examples, and information on how to configure it, please go to our documentation site. There are some video clips in #1253 as well. (#1220 #1253 #1303 #1305 #1308 #1310)

    Universal window rules (#1284). One option to rule them all! Added new configuration option rules to replace all existing rule options, and to provide more flexibility on top of that. See picom(1) for more details. This can be used to configure per-window animations.

    @@include directives in config file now also search in $XDG_CONFIG_HOME/picom/include and $XDG_CONFIG_DIRS/picom/include, in addition to relative to the config file's parent directory.

    Allow corner-radius-rules to override corner-radius = 0. Previously setting corner radius to 0 globally disables rounded corners. (#1170)

    New picom-inspect tool, which lets you test out your picom rules. man picom-inspect(1) for more details. Sample output:

    ...
    Checking rounded-corners-exclude:
        window_type = "dock" ... not matched
        window_type = "desktop" ... not matched
        window_type *= "menu" ... not matched
        fullscreen = 1 ... not matched
    Checking opacity-rule:
        _NET_WM_STATE@@[0] *= "_NET_WM_STATE_HIDDEN" ... not matched
    Checking corner-radius-rule:
        class_g = "Alacritty" ... matched/10

    Here are some rule(s) that match this window:
        name = '[0.2.1] ./picom-inspect: ~/p/picom(./picom-inspect: ~/p/picom)*'
        class_i = 'Alacritty'
        class_g = 'Alacritty'
        window_type = 'normal'
        ! fullscreen
        border_width = 0

    picom now has a rudimentary plugin system. At the moment, the only thing you can do with it is loading custom backends.

Notable changes

    override_redirect in rules now only matches top-level windows that doesn't have a client window. Some window managers (e.g. awesome) set override_redirect for all window manager frame windows, causing this rule to match against everything (#625).
    Marginally improve performance when resizing/opening/closing windows. (#1190)
    Type and format specifiers are no longer used in rules. These specifiers are what you put after the colon (':') in rules, e.g. the :32c in "_GTK_FRAME_EXTENTS@@:32c". Now this information is ignored and the property is matched regardless of format or type.
    backend is now a required option. picom will not start if one is not specified explicitly.
    New predefined target for conditions: group_focused. This target indicate whether the focused window is in the same window group as the window being matched.
    Meaning of window_type in conditions changed slightly, now it supports windows with multiple types. (However the behavior of wintypes remains unchanged.)

Deprecated features

    Setting --shadow-exclude-reg is now a hard error. It was deprecated almost since the start of picom. --clip-shadow-above is the better alternative. (#1254)
    Remove command line options -n, -a, and -s. They were removed more than 10 years ago, it's time to finally get rid of them entirely. (#1254)
    Remove error message for --glx-swap-method, it was deprecated in v6.
    Remove error message for passing argument to --vsync arguments, it was deprecated in v5.
    Option --opengl is now deprecated, use --backend=glx instead.

Bug fixes

    Fix ghosting artifacts that sometimes occur when window manager is restarted (#1081)
    Fix a bug where rounded corner is disabled after making a window fullscreen and back (#1216)
    Fix ugly looking rounded corners (#1261)

Build changes

    picom now uses some OpenGL 4.3 features.
    picom now optionally depends on rtkit at runtime to give itself realtime scheduling priority.
    libconfig is now a mandatory dependency, with a minimal supported version of 1.7.
    xcb-dpms is not needed anymore.
    libXext is not needed anymore.
    man pages are now built with asciidoctor, instead of asciidoc.

Behind the scene changes

    The X critical section is removed, picom no longer grabs the server to fetch updates. Hopefully, if everything works, this change is unnoticeable. Minor responsiveness improvements could be possible, but I won't bet on it. The main point of this change is this makes debugging much less painful. Previously if you breaks inside the X critical section, the whole X server will lock up, and you would have to connect to the computer remotely to recover. Now there is no longer such worries. This also avoids a bug inside Xorg that makes server grabbing unreliable.
@
text
@# $NetBSD: Makefile,v 1.11 2024/08/06 13:39:40 nia Exp $

DISTNAME=	picom-13
CATEGORIES=	x11
MASTER_SITES=	${MASTER_SITE_GITHUB:=yshui/}
GITHUB_TAG=	v${PKGVERSION_NOREV}

MAINTAINER=	pkgsrc-users@@NetBSD.org
HOMEPAGE=	https://github.com/yshui/picom
COMMENT=	Lightweight compositor for X11 (fork of Compton)
LICENSE=	mpl-2.0 AND mit

CONFLICTS+=	compton-[0-9]*
SUPERSEDES+=	compton-[0-9]*

.include "../../lang/ruby/rubyversion.mk"

TOOL_DEPENDS+=	${RUBY_PKGPREFIX}-asciidoctor-[0-9]*:../../textproc/ruby-asciidoctor

SUBST_CLASSES+=		rubyver
SUBST_SED.rubyver+=	-e "s/asciidoctor/asciidoctor${RUBY_SUFFIX}/"
SUBST_FILES.rubyver+=	man/meson.build
SUBST_STAGE.rubyver=	pre-configure
SUBST_MESSAGE.rubyver=	Fixing asciidoctor executable name.

USE_TOOLS+=		pkg-config
USE_LANGUAGES=		c c++
FORCE_C_STD=		gnu11
MESON_ARGS+=		-Dwith_docs=true
REPLACE_SH+=		bin/picom-trans
PYTHON_FOR_BUILD_ONLY=	tool
INSTALLATION_DIRS+=	share/examples/picom share/examples/picom/xdg/autostart

CONF_FILES+=	share/examples/picom/xdg/autostart/picom.desktop \
		${PKG_SYSCONFDIR}/xdg/autostart/picom.desktop
MAKE_DIRS+=	${PKG_SYSCONFDIR}/xdg/autostart

post-install:
	${INSTALL_DATA} ${WRKSRC}/picom.sample.conf ${DESTDIR}${PREFIX}/share/examples/picom/picom.sample.conf
	${MV} ${DESTDIR}${PKG_SYSCONFDIR}/xdg/autostart/picom.desktop ${DESTDIR}${PREFIX}/share/examples/picom/xdg/autostart

.include "options.mk"
.include "../../devel/meson/build.mk"
.include "../../devel/libconfig/buildlink3.mk"
.include "../../devel/libev/buildlink3.mk"
.include "../../devel/pcre2/buildlink3.mk"
.include "../../devel/uthash/buildlink3.mk"
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
.include "../../x11/libxcb/buildlink3.mk"
.include "../../x11/libX11/buildlink3.mk"
.include "../../x11/libXext/buildlink3.mk"
.include "../../x11/pixman/buildlink3.mk"
.include "../../x11/xcb-util/buildlink3.mk"
.include "../../x11/xcb-util-image/buildlink3.mk"
.include "../../x11/xcb-util-renderutil/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
@


1.17
log
@*: recursive bump for pcre2 10.49
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.16 2026/09/27 11:39:30 tnn Exp $
d3 1
a3 2
DISTNAME=	picom-11.2
PKGREVISION=	4
d16 9
a24 1
TOOL_DEPENDS+=	asciidoc-[0-9]*:../../textproc/asciidoc
d28 1
a56 1
.include "../../mk/atomic64.mk"
@


1.16
log
@*: revbump for pcre2 symbol versioning change
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.15 2026/09/02 19:05:22 wiz Exp $
d4 1
a4 1
PKGREVISION=	3
@


1.15
log
@*: recursive bump for pcre2 10.48
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2025/10/23 20:40:10 wiz Exp $
d4 1
a4 1
PKGREVISION=	2
@


1.14
log
@*: recursive bump for pcre2

Running an old binary against the new pcre doesn't work:
/usr/pkg/lib/libpcre2-8.so.0: version PCRE2_10.47 required by /usr/pkg/lib/libglib-2.0.so.0 not defined
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.13 2025/01/21 11:00:18 nia Exp $
d4 1
a4 1
PKGREVISION=	1
@


1.13
log
@*: Drop maintainership.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2024/12/07 10:03:50 nia Exp $
d4 1
@


1.12
log
@picom: Needs 64-bit wide atomics
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2024/08/06 13:39:40 nia Exp $
d8 1
a8 1
MAINTAINER=	nia@@NetBSD.org
@


1.11
log
@picom: Update to 11.2

Various performance improvements and bug fixes.

Note: this disables the OpenGL backend on NetBSD 9 due to
limitations in libGL on that platform.  The default backend
("xrender") is unaffected.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2022/09/04 12:12:01 tnn Exp $
d48 1
@


1.10
log
@*: recursive bump for Python 3.11 as new default
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2023/06/21 08:12:25 nia Exp $
d3 1
a3 2
DISTNAME=	picom-9.1
PKGREVISION=	1
d23 5
a27 1
INSTALLATION_DIRS+=	share/examples/picom
d31 1
d37 1
a37 1
.include "../../devel/pcre/buildlink3.mk"
a38 1
.include "../../graphics/MesaLib/buildlink3.mk"
d45 1
@


1.9
log
@picom: claim maintainer
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2022/09/04 12:12:01 tnn Exp $
d4 1
@


1.8
log
@picom: update to 9.1

Notable changes:
  New blur method for the experimental backends: dual-kawase
  Support for rounding the corners of windows
  Usability of picom-trans is improved
  It's now possible to match against all values of a window property
  Fix darkening of window edges when using blur
  Some long deprecated options are removed
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2022/07/29 21:16:32 tnn Exp $
d8 1
a8 1
MAINTAINER=	pkgsrc-users@@NetBSD.org
@


1.7
log
@picom: install the sample config
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2021/04/12 11:01:56 nia Exp $
d3 1
a3 2
DISTNAME=	picom-8.2
PKGREVISION=	1
a24 5
SUBST_CLASSES+=		mandir
SUBST_STAGE.mandir=	pre-configure
SUBST_FILES.mandir=	man/meson.build
SUBST_VARS.mandir=	PKGMANDIR

@


1.6
log
@picom: set PYTHON_FOR_BUILD_ONLY
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2020/11/19 11:03:04 nia Exp $
d4 1
a13 3
USE_TOOLS+=	pkg-config
USE_LANGUAGES=	c c++

d19 3
a21 2
MESON_ARGS+=	-Dwith_docs=true

d23 2
d26 4
a29 1
PYTHON_FOR_BUILD_ONLY=	tool
d32 1
a32 1
	${MV} ${DESTDIR}${PREFIX}/share/man ${DESTDIR}${PREFIX}/${PKGMANDIR} || ${TRUE}
@


1.5
log
@picom: Update to 8.2

This is a bug fix release of picom

    Fixes assertion failures related to WIN_FLAGS_SHADOW_STALE, see #479
    write-pid-path in configuration file now accepted, see #492
    Pid files are now deleted during shutdown, see #492
    Build fixes for certain platforms, see #501, #502

Thanks to @@tryone144, @@jialeens, and @@niacat
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2020/10/03 09:23:41 nia Exp $
d25 2
@


1.4
log
@picom: Update to 8.1

Changes:
    Fixed yshui/picom#470 yshui/picom#471 yshui/picom#474 yshui/picom#465
    Worked around yshui/picom#301
    Fixed specifying a window id with the picom-trans script
    Fixed minor memory leaks
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2020/05/22 19:46:34 rillig Exp $
d3 1
a3 1
DISTNAME=	picom-8.1
@


1.3
log
@x11/picom: remove nonexistent file from REPLACE_PYTHON
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2020/05/02 11:23:04 tnn Exp $
d3 1
a3 1
DISTNAME=	picom-8
@


1.2
log
@picom: update to version 8.

pkgsrc changes:
- Restore patch-src_backend_gl_gl__common.c from the previous "compton"
  package. It is smaller and better explains why the patch is needed.
- drop dependency on libxdg-basedir, dropped by upstream.

Upstream new feature & improvements
- You can now use the time variable in window shaders to get a timestamp.
- --max-brightness, which allows you to dim windows that are too bright.
- Automatic configuration file reloading after it's changed.
- A lot of the artifacts seen with blur and use-damage enabled are fixed.
- _NET_WM_BYPASS_COMPOSITOR property are now handled.
- Completely transparent windows won't have a blurred background anymore.
- Improved fullscreen window detection.
- Various improvments to the inverter.sh script
- wintype notify has been renamed to notification to match the EWMH names
- (also various bug fixes)
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2019/12/15 14:05:47 nia Exp $
a22 1
REPLACE_PYTHON+=	bin/compton-convgen.py
@


1.1
log
@x11: Add picom. Replaces compton.

A lightweight compositor for X11 (previously a compton fork)
@
text
@d1 1
a1 1
# $NetBSD$
d3 1
a3 1
DISTNAME=	picom-7.5
d21 1
a21 1
MESON_ARGS+=	-Dbuild_docs=true
a38 1
.include "../../x11/libxdg-basedir/buildlink3.mk"
@

