pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Add upgrade candidate for picom



Module Name:	pkgsrc-wip
Committed By:	pin <voidpin%protonmail.com@localhost>
Pushed By:	pin
Date:		Sun Oct 20 17:05:14 2024 +0200
Changeset:	a5616d8fa775b1df9c21f15f3a594894dddcf127

Modified Files:
	Makefile
Added Files:
	picom/COMMIT_MSG
	picom/DESCR
	picom/Makefile
	picom/PLIST
	picom/distinfo
	picom/hacks.mk
	picom/options.mk

Log Message:
Add upgrade candidate for picom

v12.3

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=a5616d8fa775b1df9c21f15f3a594894dddcf127

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile         |   1 +
 picom/COMMIT_MSG | 135 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 picom/DESCR      |   1 +
 picom/Makefile   |  49 ++++++++++++++++++++
 picom/PLIST      |  13 ++++++
 picom/distinfo   |   5 +++
 picom/hacks.mk   |  16 +++++++
 picom/options.mk |  28 ++++++++++++
 8 files changed, 248 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 021c254ad3..257c59c290 100644
--- a/Makefile
+++ b/Makefile
@@ -3091,6 +3091,7 @@ SUBDIR+=	php-xdiff
 SUBDIR+=	php-zmq
 SUBDIR+=	picolisp
 SUBDIR+=	picolisp64
+SUBDIR+=	picom
 SUBDIR+=	picosat
 SUBDIR+=	picprog
 SUBDIR+=	pidgin-evolution
diff --git a/picom/COMMIT_MSG b/picom/COMMIT_MSG
new file mode 100644
index 0000000000..72a37e9caf
--- /dev/null
+++ b/picom/COMMIT_MSG
@@ -0,0 +1,135 @@
+x11/picom: update to 12.3
+
+# 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](https://picom.app/#_animations). 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)](https://picom.app/#_window_rules) 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.
diff --git a/picom/DESCR b/picom/DESCR
new file mode 100644
index 0000000000..eeb7588186
--- /dev/null
+++ b/picom/DESCR
@@ -0,0 +1 @@
+A lightweight compositor for X11 (previously a compton fork)
diff --git a/picom/Makefile b/picom/Makefile
new file mode 100644
index 0000000000..db32d7ac63
--- /dev/null
+++ b/picom/Makefile
@@ -0,0 +1,49 @@
+# $NetBSD: Makefile,v 1.11 2024/08/06 13:39:40 nia Exp $
+
+DISTNAME=	picom-12.3
+CATEGORIES=	x11
+MASTER_SITES=	${MASTER_SITE_GITHUB:=yshui/}
+GITHUB_TAG=	v${PKGVERSION_NOREV}
+
+MAINTAINER=	nia%NetBSD.org@localhost
+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]*
+
+TOOL_DEPENDS+=	asciidoc-[0-9]*:../../textproc/asciidoc
+TOOL_DEPENDS+=	${RUBY_PKGPREFIX}-asciidoctor-[0-9]*:../../textproc/ruby-asciidoctor
+
+USE_TOOLS+=		pkg-config
+USE_LANGUAGES=		c c++
+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"
diff --git a/picom/PLIST b/picom/PLIST
new file mode 100644
index 0000000000..413fcf32e8
--- /dev/null
+++ b/picom/PLIST
@@ -0,0 +1,13 @@
+@comment $NetBSD: PLIST,v 1.4 2024/08/06 13:39:40 nia Exp $
+bin/compton
+bin/compton-trans
+bin/picom
+bin/picom-trans
+man/man1/picom-trans.1
+man/man1/picom.1
+share/applications/compton.desktop
+share/applications/picom.desktop
+share/examples/picom/picom.sample.conf
+share/examples/picom/xdg/autostart/picom.desktop
+share/icons/hicolor/48x48/apps/compton.png
+share/icons/hicolor/scalable/apps/compton.svg
diff --git a/picom/distinfo b/picom/distinfo
new file mode 100644
index 0000000000..4e9be3636c
--- /dev/null
+++ b/picom/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.10 2024/08/06 13:39:40 nia Exp $
+
+BLAKE2s (picom-12.3.tar.gz) = 2be6d072b77fed5c372b05ecbee4dcd9bd03aebf2f52a90c4590e2658d0f69ac
+SHA512 (picom-12.3.tar.gz) = f158a517ad6bb6125dc718286663560d7a2297252ecaccef9f7620a1180d19f1c12e9bf7d0d91dadae458a45bbe94756a00c639395fbb8097f408b530c7066f6
+Size (picom-12.3.tar.gz) = 673577 bytes
diff --git a/picom/hacks.mk b/picom/hacks.mk
new file mode 100644
index 0000000000..ad35552f83
--- /dev/null
+++ b/picom/hacks.mk
@@ -0,0 +1,16 @@
+# $NetBSD: hacks.mk,v 1.3 2022/07/29 21:16:32 tnn Exp $
+
+.if !defined(PICOM_HACKS_MK)
+PICOM_HACKS_MK=	defined
+
+### [Sat Jan 11 23:38:59 JST 2020 : pho]
+### The predefined CPP macro __STDC_NO_THREADS__ is expected to be
+### defined by *libc* which doesn't support C11 threads... What? Then
+### what about libc which doesn't even know what C11 threads are?
+###
+.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 090000
+PKG_HACKS+=	c11-no-threads
+CPPFLAGS+=	-D__STDC_NO_THREADS__
+.endif
+
+.endif  # PICOM_HACKS_MK
diff --git a/picom/options.mk b/picom/options.mk
new file mode 100644
index 0000000000..98cdbe84db
--- /dev/null
+++ b/picom/options.mk
@@ -0,0 +1,28 @@
+# $NetBSD: options.mk,v 1.2 2024/08/06 13:39:40 nia Exp $
+
+PKG_OPTIONS_VAR=		PKG_OPTIONS.picom
+PKG_SUPPORTED_OPTIONS=		dbus opengl
+PKG_SUGGESTED_OPTIONS=		dbus
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${X11_TYPE} == "modular" || \
+    (${OPSYS} == "NetBSD" && ${OPSYS_VERSION} >= 100000)
+PKG_SUGGESTED_OPTIONS+=		opengl
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mdbus)
+MESON_ARGS+=		-Ddbus=true
+.  include "../../sysutils/dbus/buildlink3.mk"
+.else
+MESON_ARGS+=		-Ddbus=false
+.endif
+
+.if !empty(PKG_OPTIONS:Mopengl)
+MESON_ARGS+=		-Dopengl=true
+.  include "../../graphics/libepoxy/buildlink3.mk"
+.else
+MESON_ARGS+=		-Dopengl=false
+.endif


Home | Main Index | Thread Index | Old Index