On 2023/04/16 09:48:25 +0300, Timo Myyrä <[email protected]> wrote:
> Hi,
>
> Here's an update for the pekwm. Briefly tested on amd64.
with this update it uses pangocairo if found at build time. Don't
have as strong opinion on whether it should be enabled, but being it a
major improvement of this 0.3.0 I propend to leave it enabled and add
pangocairo as LDEP.
Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/pekwm/Makefile,v
retrieving revision 1.40
diff -u -p -r1.40 Makefile
--- Makefile 11 Mar 2022 20:16:55 -0000 1.40
+++ Makefile 16 Apr 2023 07:11:05 -0000
@@ -1,7 +1,7 @@
COMMENT= aewm++ based pretty themable window manager
DISTNAME= pekwm-${V}
-V= 0.2.1
+V= 0.3.0
CATEGORIES= x11
HOMEPAGE= https://www.pekwm.se/
@@ -12,13 +12,16 @@ MAINTAINER= Timo Myyra <timo.myyra@bitti
PERMIT_PACKAGE= Yes
# uses pledge()
-WANTLIB += ICE SM X11 Xext Xft Xinerama Xpm Xrandr c freetype jpeg m png
-WANTLIB += ${COMPILER_LIBCXX}
+WANTLIB += ${COMPILER_LIBCXX} ICE SM X11 Xext Xft Xinerama Xpm
+WANTLIB += Xrandr c cairo fontconfig freetype glib-2.0 gobject-2.0
+WANTLIB += harfbuzz intl jpeg m pango-1.0 pangocairo-1.0 pangoft2-1.0
+WANTLIB += pangoxft-1.0 png
COMPILER = base-clang ports-gcc base-gcc
MASTER_SITES= https://github.com/pekdon/pekwm/releases/download/release-${V}/
-LIB_DEPENDS= graphics/jpeg \
+LIB_DEPENDS= devel/pango \
+ graphics/jpeg \
graphics/png
MODULES= devel/cmake
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/pekwm/distinfo,v
retrieving revision 1.14
diff -u -p -r1.14 distinfo
--- distinfo 10 Dec 2021 13:35:58 -0000 1.14
+++ distinfo 16 Apr 2023 07:11:05 -0000
@@ -1,2 +1,2 @@
-SHA256 (pekwm-0.2.1.tar.gz) = AV5uud/8gW+i1Km4yzRaUolPTcpaAdBhLzAkLbh+DlA=
-SIZE (pekwm-0.2.1.tar.gz) = 943072
+SHA256 (pekwm-0.3.0.tar.gz) = l+D101bki5Sj1mLzrwovtp7xvA84LqTF2LufTs5IFiQ=
+SIZE (pekwm-0.3.0.tar.gz) = 1210295
Index: patches/patch-CMakeLists_txt
===================================================================
RCS file: /cvs/ports/x11/pekwm/patches/patch-CMakeLists_txt,v
retrieving revision 1.3
diff -u -p -r1.3 patch-CMakeLists_txt
--- patches/patch-CMakeLists_txt 11 Mar 2022 20:16:55 -0000 1.3
+++ patches/patch-CMakeLists_txt 16 Apr 2023 07:11:05 -0000
@@ -1,7 +1,7 @@
Index: CMakeLists.txt
--- CMakeLists.txt.orig
+++ CMakeLists.txt
-@@ -67,6 +67,7 @@ int main() { std::stof(\"42.0\"); }
+@@ -81,6 +81,7 @@ int main() { std::stof(\"42.0\"); }
set(CMAKE_CXX_FLAGS ${orig_CMAKE_CXX_FLAGS})
# Look for platform specific methods
Index: patches/patch-src_CfgParserSource_cc
===================================================================
RCS file: patches/patch-src_CfgParserSource_cc
diff -N patches/patch-src_CfgParserSource_cc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_CfgParserSource_cc 16 Apr 2023 07:11:05 -0000
@@ -0,0 +1,14 @@
+backport commit fix dd7b96cdcc6e0430b8f737a6fc5287f476476a85
+
+Index: src/CfgParserSource.cc
+--- src/CfgParserSource.cc.orig
++++ src/CfgParserSource.cc
+@@ -144,7 +144,7 @@ CfgParserSourceCommand::open(void)
+ std::string path(Util::getEnv("PATH"));
+ path = _command_path + ":" + path;
+ env.override("PATH", path);
+- execle(PEKWM_SH, PEKWM_SH, "-c", _name.c_str(), nullptr,
++ execle(PEKWM_SH, PEKWM_SH, "-c", _name.c_str(), NULL,
+ env.getCEnv());
+
+ ::close (STDOUT_FILENO);
Index: patches/patch-src_Util_cc
===================================================================
RCS file: patches/patch-src_Util_cc
diff -N patches/patch-src_Util_cc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_Util_cc 16 Apr 2023 07:11:05 -0000
@@ -0,0 +1,14 @@
+backport commit fix dd7b96cdcc6e0430b8f737a6fc5287f476476a85
+
+Index: src/Util.cc
+--- src/Util.cc.orig
++++ src/Util.cc
+@@ -191,7 +191,7 @@ namespace Util {
+ case 0:
+ setsid();
+ execlp(PEKWM_SH, PEKWM_SH, "-c", command.c_str(),
+- static_cast<char*>(0));
++ NULL);
+ P_ERR("execlp failed: " << strerror(errno));
+ exit(1);
+ case -1:
Index: patches/patch-src_pekwm_cc
===================================================================
RCS file: patches/patch-src_pekwm_cc
diff -N patches/patch-src_pekwm_cc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_pekwm_cc 16 Apr 2023 07:11:05 -0000
@@ -0,0 +1,14 @@
+backport commit fix dd7b96cdcc6e0430b8f737a6fc5287f476476a85
+
+Index: src/pekwm.cc
+--- src/pekwm.cc.orig
++++ src/pekwm.cc
+@@ -100,7 +100,7 @@ handleOkResult(char *path, char **argv, int read_fd)
+ } else {
+ command = "exec " + command;
+ execl(PEKWM_SH, PEKWM_SH , "-c", command.c_str(),
+- static_cast<char*>(0));
++ NULL);
+ }
+
+ std::cerr << "failed to run restart command: "
Index: patches/patch-src_pekwm_wm_cc
===================================================================
RCS file: /cvs/ports/x11/pekwm/patches/patch-src_pekwm_wm_cc,v
retrieving revision 1.2
diff -u -p -r1.2 patch-src_pekwm_wm_cc
--- patches/patch-src_pekwm_wm_cc 11 Mar 2022 20:16:55 -0000 1.2
+++ patches/patch-src_pekwm_wm_cc 16 Apr 2023 07:11:05 -0000
@@ -1,27 +1,18 @@
Index: src/pekwm_wm.cc
--- src/pekwm_wm.cc.orig
+++ src/pekwm_wm.cc
-@@ -21,7 +21,7 @@
-
- extern "C" {
- #include <errno.h>
--#include <unistd.h> // execlp
-+#include <unistd.h> // execlp,pledge
- }
-
- /**
-@@ -141,6 +141,14 @@ main(int argc, char **argv)
- << "using configuration at " << config_file);
-
- WindowManager *wm = WindowManager::start(config_file, replace,
synchronous);
+@@ -181,6 +181,14 @@ main(int argc, char **argv)
+ WindowManager::start(config_file, replace, synchronous);
+ if (wm) {
+ try {
+
+#if PEKWM_HAVE_PLEDGE
-+ if (pledge("stdio rpath wpath cpath proc exec", NULL) == -1) {
-+ cerr << "failed to pledge" << endl;
-+ return 1;
-+ }
++ if (pledge("stdio rpath wpath cpath proc exec", NULL)
== -1) {
++ std::cerr << "failed to pledge" << std::endl;
++ return 1;
++ }
+#endif
+
- if (wm) {
- try {
P_TRACE("Enter event loop.");
+
+ wm->doEventLoop();
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/x11/pekwm/pkg/PLIST,v
retrieving revision 1.11
diff -u -p -r1.11 PLIST
--- pkg/PLIST 11 Mar 2022 20:16:55 -0000 1.11
+++ pkg/PLIST 16 Apr 2023 07:11:05 -0000
@@ -94,3 +94,29 @@ share/pekwm/themes/default/top-left_unfo
share/pekwm/themes/default/top-right-no-buttons.png
share/pekwm/themes/default/top-right.png
share/pekwm/themes/default/top-right_unfocus.png
+share/pekwm/themes/winter/
+share/pekwm/themes/winter/backgrounds/
+share/pekwm/themes/winter/backgrounds/background-2560x1440.jpg
+share/pekwm/themes/winter/bd-b-un.png
+share/pekwm/themes/winter/bd-b.png
+share/pekwm/themes/winter/bd-bl-un.png
+share/pekwm/themes/winter/bd-bl.png
+share/pekwm/themes/winter/bd-br-un.png
+share/pekwm/themes/winter/bd-br.png
+share/pekwm/themes/winter/bd-lr-un.png
+share/pekwm/themes/winter/bd-lr.png
+share/pekwm/themes/winter/bd-t-un.png
+share/pekwm/themes/winter/bd-t.png
+share/pekwm/themes/winter/bd-tl-un.png
+share/pekwm/themes/winter/bd-tl.png
+share/pekwm/themes/winter/bd-tr-un.png
+share/pekwm/themes/winter/bd-tr.png
+share/pekwm/themes/winter/panel-sep.png
+share/pekwm/themes/winter/panel.png
+share/pekwm/themes/winter/sep-un.png
+share/pekwm/themes/winter/sep.png
+share/pekwm/themes/winter/theme
+share/pekwm/themes/winter/title-fo.png
+share/pekwm/themes/winter/title-sel-un.png
+share/pekwm/themes/winter/title-sel.png
+share/pekwm/themes/winter/title-un.png