git: 3d05a81d150b - main - x11/wf-shell: Update 0.10.0 => 0.11.0
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 25 Aug 2026 16:42:06 UTC
The branch main has been updated by vvd:
URL: https://cgit.FreeBSD.org/ports/commit/?id=3d05a81d150b35e36189c104c17803a83e29cd4c
commit 3d05a81d150b35e36189c104c17803a83e29cd4c
Author: Vladimir Druzenko <vvd@FreeBSD.org>
AuthorDate: 2026-08-25 16:19:58 +0000
Commit: Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2026-08-25 16:41:59 +0000
x11/wf-shell: Update 0.10.0 => 0.11.0
Changelog:
https://github.com/WayfireWM/wf-shell/releases/tag/v0.11.0
- Add flavors nopipewire and lite = nopipewire + nopulse.
PR: 297716
Sponsored by: UNIS Labs
---
x11/wf-shell/Makefile | 54 +++++++++++++---------
x11/wf-shell/distinfo | 14 ++++--
x11/wf-shell/files/patch-meson.build | 12 +++++
x11/wf-shell/files/patch-src_locker_meson.build | 17 +++++++
.../files/patch-src_locker_plugin_password.cpp | 14 ++++++
.../files/patch-src_locker_timedrevealer.cpp | 11 +++++
...tch-src_panel_widgets_brightness_brightness.cpp | 9 ++++
x11/wf-shell/pkg-plist | 44 ++++++++++++++++--
8 files changed, 145 insertions(+), 30 deletions(-)
diff --git a/x11/wf-shell/Makefile b/x11/wf-shell/Makefile
index d81d93925194..41406143d855 100644
--- a/x11/wf-shell/Makefile
+++ b/x11/wf-shell/Makefile
@@ -1,6 +1,6 @@
PORTNAME= wf-shell
DISTVERSIONPREFIX= v
-DISTVERSION= 0.10.0
+DISTVERSION= 0.11.0
CATEGORIES= x11 wayland
MAINTAINER= ports@FreeBSD.org
@@ -13,38 +13,50 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= wayland-protocols>0:graphics/wayland-protocols \
wf-config>=0.7.0:devel/wf-config \
wayfire>0:x11-wm/wayfire
-LIB_DEPENDS= libdbusmenu-gtk3.so:devel/libdbusmenu \
+LIB_DEPENDS= libdbusmenu-glib.so:devel/libdbusmenu \
libinotify.so:devel/libinotify \
libwf-config.so:devel/wf-config \
libwayland-client.so:graphics/wayland \
- libgtk-layer-shell.so:x11-toolkits/gtk-layer-shell
+ libepoxy.so:graphics/libepoxy \
+ libxkbregistry.so:x11/libxkbcommon \
+ libyyjson.so:devel/yyjson \
+ libdrm.so:graphics/libdrm
RUN_DEPENDS= wayland-logout:x11/wayland-logout
-FLAVORS= default nopulse
-default_CONFLICTS_INSTALL= ${PORTNAME}-nopulse
-nopulse_CONFLICTS_INSTALL= ${PORTNAME}
-nopulse_PKGNAMESUFFIX= -nopulse
+FLAVORS= default nopipewire nopulse lite
+FLAVOR?= ${FLAVORS:[1]}
+${FLAVOR}_PKGNAMESUFFIX= ${FLAVOR:N${FLAVORS:[1]}:C|(.+)|-\1|}
-USES= compiler:c++17-lang gnome meson pkgconfig
+USES= compiler:c++17-lang gl gnome meson pkgconfig vala:build ssl
USE_GITHUB= yes
-USE_GNOME= gtkmm30
GH_ACCOUNT= WayfireWM
-GH_TUPLE= GNOME:libgnome-volume-control:468022b:gvc/subprojects/gvc
-MESON_ARGS= -Dgvc:alsa=false -Dwayland-logout=false
-DATADIR= ${PREFIX}/share/wayfire
-
-OPTIONS_DEFINE= PULSEAUDIO
-OPTIONS_DEFAULT=PULSEAUDIO
-.if ${FLAVOR:U} == nopulse
-OPTIONS_EXCLUDE=PULSEAUDIO
+GH_TUPLE= wmww:gtk4-layer-shell:v1.3.0:gtk4_layer_shell/subprojects/gtk4-layer-shell \
+ GNOME:libgnome-volume-control:5f9768a:gvc/subprojects/gvc \
+ WayfireWM:wf-json:70039e1:wf_json/subprojects/wf-json
+USE_GL= gbm
+USE_GNOME= gtkmm40
+MESON_ARGS= -Dgvc:alsa=false -Dwayland-logout=false -Dddcutil=disabled
+LDFLAGS+= -lpam -lpthread
+
+CONFLICTS_INSTALL= ${PORTNAME}*
+
+OPTIONS_DEFINE= PIPEWIRE PULSEAUDIO
+OPTIONS_DEFAULT= PIPEWIRE PULSEAUDIO
+.if ${FLAVOR:U} == nopipewire || ${FLAVOR:U} == lite
+OPTIONS_EXCLUDE+= PIPEWIRE
.endif
+.if ${FLAVOR:U} == nopulse || ${FLAVOR:U} == lite
+OPTIONS_EXCLUDE+= PULSEAUDIO
+.endif
+
+PIPEWIRE_LIB_DEPENDS= libwireplumber-0.5.so:multimedia/wireplumber
+PIPEWIRE_MESON_ENABLED= wp-mixer-widget
PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio
-PULSEAUDIO_MESON_ENABLED= pulse
+PULSEAUDIO_MESON_ENABLED= volume-widget
post-patch:
- @${REINPLACE_CMD} -e 's,/usr/local,${PREFIX},' \
- ${WRKSRC}/src/dock/toplevel-icon.cpp \
- ${WRKSRC}/src/panel/widgets/window-list/toplevel.cpp
+ ${LN} -s . ${WRKSRC}/subprojects/gtk4-layer-shell/include/gtk4-layer-shell
+ ${REINPLACE_CMD} 's|/etc/|${LOCALBASE}/etc/|' ${WRKSRC}/data/meson.build
.include <bsd.port.mk>
diff --git a/x11/wf-shell/distinfo b/x11/wf-shell/distinfo
index 49f73aff85fc..151a0fabb6da 100644
--- a/x11/wf-shell/distinfo
+++ b/x11/wf-shell/distinfo
@@ -1,5 +1,9 @@
-TIMESTAMP = 1736771286
-SHA256 (WayfireWM-wf-shell-v0.10.0_GH0.tar.gz) = f90bf34ead49d996c950ce52cb6aca62fbaaffcedbbf35165edb4d82f970a3ff
-SIZE (WayfireWM-wf-shell-v0.10.0_GH0.tar.gz) = 9045441
-SHA256 (GNOME-libgnome-volume-control-468022b_GH0.tar.gz) = 1c1d806ad1f57d7f644381b67ee87ef3e7e10f3a2da1432beef535ca50c0040f
-SIZE (GNOME-libgnome-volume-control-468022b_GH0.tar.gz) = 45503
+TIMESTAMP = 1787444444
+SHA256 (WayfireWM-wf-shell-v0.11.0_GH0.tar.gz) = 328b1a01c5fc63ebc6fa79152bafdcd2e1525c8bb3caf5b49361ff2792dd57f4
+SIZE (WayfireWM-wf-shell-v0.11.0_GH0.tar.gz) = 39167138
+SHA256 (wmww-gtk4-layer-shell-v1.3.0_GH0.tar.gz) = 1ebb01ab14e98afd1727f68f64981c37bd23305b1f131f5667c02b94cf593192
+SIZE (wmww-gtk4-layer-shell-v1.3.0_GH0.tar.gz) = 79405
+SHA256 (GNOME-libgnome-volume-control-5f9768a_GH0.tar.gz) = c5b11d3acc14c170bcf9f229a8ab858c7aa2f986a65d4acc4633823646a5c7c6
+SIZE (GNOME-libgnome-volume-control-5f9768a_GH0.tar.gz) = 46401
+SHA256 (WayfireWM-wf-json-70039e1_GH0.tar.gz) = db7548bcee0eb784a1813c9b29aca93568357ee9c224b07d0d7436aa21988689
+SIZE (WayfireWM-wf-json-70039e1_GH0.tar.gz) = 4923
diff --git a/x11/wf-shell/files/patch-meson.build b/x11/wf-shell/files/patch-meson.build
new file mode 100644
index 000000000000..843922cf2c9b
--- /dev/null
+++ b/x11/wf-shell/files/patch-meson.build
@@ -0,0 +1,12 @@
+--- meson.build.orig 2026-08-02 19:12:39 UTC
++++ meson.build
+@@ -14,7 +14,9 @@ wayfire = dependency('wayfire')
+ )
+
+ wayfire = dependency('wayfire')
++if build_machine.system() != 'freebsd'
+ pam = dependency('pam')
++endif
+ wayland_client = dependency('wayland-client')
+ wayland_protos = dependency('wayland-protocols')
+ gtkmm = dependency('gtkmm-4.0', version: '>=4.12')
diff --git a/x11/wf-shell/files/patch-src_locker_meson.build b/x11/wf-shell/files/patch-src_locker_meson.build
new file mode 100644
index 000000000000..66af9ea30556
--- /dev/null
+++ b/x11/wf-shell/files/patch-src_locker_meson.build
@@ -0,0 +1,17 @@
+--- src/locker/meson.build.orig 2026-08-02 19:12:39 UTC
++++ src/locker/meson.build
+@@ -18,10 +18,13 @@ deps = [
+ wfconfig,
+ xkbregistry,
+ json,
+- pam,
+ openssl,
+ epoxy,
+ ]
++
++if build_machine.system() != 'freebsd'
++ deps += [pam]
++endif
+
+ if libpulse.found()
+ widget_sources += 'plugin/volume.cpp'
diff --git a/x11/wf-shell/files/patch-src_locker_plugin_password.cpp b/x11/wf-shell/files/patch-src_locker_plugin_password.cpp
new file mode 100644
index 000000000000..231f7a56b522
--- /dev/null
+++ b/x11/wf-shell/files/patch-src_locker_plugin_password.cpp
@@ -0,0 +1,14 @@
+--- src/locker/plugin/password.cpp.orig 2026-08-02 19:12:39 UTC
++++ src/locker/plugin/password.cpp
+@@ -5,7 +5,11 @@
+ #include "gtkmm/enums.h"
+ #include "gtkmm/label.h"
+ #include <unistd.h>
++#ifdef __FreeBSD__
++#include <security/pam_types.h>
++#else
+ #include <security/_pam_types.h>
++#endif
+ #include <security/pam_appl.h>
+
+ #include "locker.hpp"
diff --git a/x11/wf-shell/files/patch-src_locker_timedrevealer.cpp b/x11/wf-shell/files/patch-src_locker_timedrevealer.cpp
new file mode 100644
index 000000000000..cb7d4cc01bef
--- /dev/null
+++ b/x11/wf-shell/files/patch-src_locker_timedrevealer.cpp
@@ -0,0 +1,11 @@
+--- src/locker/timedrevealer.cpp.orig 2026-08-02 19:12:39 UTC
++++ src/locker/timedrevealer.cpp
+@@ -18,7 +18,7 @@ WayfireLockerTimedRevealer::WayfireLockerTimedRevealer
+ auto hide_callback = [this] ()
+ {
+ Gtk::RevealerTransitionType type = Gtk::RevealerTransitionType::NONE;
+- switch (hide_animation)
++ switch (hide_animation.value())
+ {
+ case 1:
+ type = Gtk::RevealerTransitionType::CROSSFADE;
diff --git a/x11/wf-shell/files/patch-src_panel_widgets_brightness_brightness.cpp b/x11/wf-shell/files/patch-src_panel_widgets_brightness_brightness.cpp
new file mode 100644
index 000000000000..f20b207a3076
--- /dev/null
+++ b/x11/wf-shell/files/patch-src_panel_widgets_brightness_brightness.cpp
@@ -0,0 +1,9 @@
+--- src/panel/widgets/brightness/brightness.cpp.orig 2026-08-02 19:12:39 UTC
++++ src/panel/widgets/brightness/brightness.cpp
+@@ -1,6 +1,5 @@
+ #include <gdkmm/monitor.h>
+ #include <memory>
+-#include <pulse/proplist.h>
+ #include <wayland-client-core.h>
+ #include <wayland-client-protocol.h>
+
diff --git a/x11/wf-shell/pkg-plist b/x11/wf-shell/pkg-plist
index b07c39cf3200..fac5941a881f 100644
--- a/x11/wf-shell/pkg-plist
+++ b/x11/wf-shell/pkg-plist
@@ -1,7 +1,24 @@
bin/wf-background
bin/wf-dock
+bin/wf-locker
+bin/wf-locker-pin
bin/wf-panel
+bin/wf-stream-chooser
+etc/pam.d/wf-locker
+etc/xdg/xdg-desktop-portal-wlr/wayfire
+include/gtk4-layer-shell/gtk4-layer-shell.h
+include/gtk4-layer-shell/gtk4-session-lock.h
+lib/girepository-1.0/Gtk4LayerShell-1.0.typelib
+lib/girepository-1.0/Gtk4SessionLock-1.0.typelib
+lib/libgtk4-layer-shell.so
+lib/libgtk4-layer-shell.so.0
+lib/libgtk4-layer-shell.so.1.3.0
+lib/liblayer-shell-preload.so
+libdata/pkgconfig/gtk4-layer-shell-0.pc
libdata/pkgconfig/wf-shell.pc
+share/applications/wf-locker-pin.desktop
+share/gir-1.0/Gtk4LayerShell-1.0.gir
+share/gir-1.0/Gtk4SessionLock-1.0.gir
share/icons/hicolor/128x128/apps/wayfire.png
share/icons/hicolor/160x160/apps/wayfire.png
share/icons/hicolor/192x192/apps/wayfire.png
@@ -12,9 +29,28 @@ share/icons/hicolor/64x64/apps/wayfire.png
share/icons/hicolor/72x72/apps/wayfire.png
share/icons/hicolor/96x96/apps/wayfire.png
share/icons/hicolor/scalable/apps/wayfire.svg
+share/vala/vapi/gtk4-layer-shell-0.deps
+share/vala/vapi/gtk4-layer-shell-0.vapi
+%%DATADIR%%/backgrounds/calm-blue.png
+%%DATADIR%%/backgrounds/circuits.png
+%%DATADIR%%/backgrounds/secret-chest.png
+%%DATADIR%%/backgrounds/simple-2.png
+%%DATADIR%%/backgrounds/simple.png
+%%DATADIR%%/backgrounds/snow.png
+%%DATADIR%%/backgrounds/wallpaper.jpg
%%DATADIR%%/css/default.css
+%%DATADIR%%/css/panel-battery-zoom-hover.css
+%%DATADIR%%/css/panel-launchers-zoom-hover.css
+%%DATADIR%%/css/panel-menu-button-small.css
+%%DATADIR%%/css/panel-menu-zoom-hover.css
+%%DATADIR%%/css/panel-network-zoom-hover.css
+%%DATADIR%%/css/panel-selectors.css
+%%DATADIR%%/css/panel-tray-zoom-hover.css
+%%DATADIR%%/css/panel-volume-zoom-hover.css
+%%DATADIR%%/css/panel-window-list-zoom-hover.css
+%%DATADIR%%/css/user-font.css
%%DATADIR%%/icons/wayfire.png
-%%DATADIR%%/metadata/wf-shell/background.xml
-%%DATADIR%%/metadata/wf-shell/dock.xml
-%%DATADIR%%/metadata/wf-shell/panel.xml
-%%DATADIR%%/wallpaper.jpg
+%%DATADIR%%/metadata/background.xml
+%%DATADIR%%/metadata/dock.xml
+%%DATADIR%%/metadata/locker.xml
+%%DATADIR%%/metadata/panel.xml